Aktywne sesje - wycinanie wszystkich
Moderator: mikey
Aktywne sesje - wycinanie wszystkich
Witam,
Chciałbym wycinać sesje (System -> Aktywne sesje) za jednym zamachem, zaznaczając je wszystkie na raz.
Czy jest na to jakiś skrót klawiaturowy ? Może inny sposób ?
Dzięki
Chciałbym wycinać sesje (System -> Aktywne sesje) za jednym zamachem, zaznaczając je wszystkie na raz.
Czy jest na to jakiś skrót klawiaturowy ? Może inny sposób ?
Dzięki
-
- Posty: 248
- Rejestracja: 16 sty 2012, 23:21
- Rola: Konsultant CDN XL
- Lokalizacja: Łódź/Częstochowa
- Kontakt:
Re: Aktywne sesje - wycinanie wszystkich
Witam,
Można dorobić procedurę uruchamianą z poziomu Wykresów, która wykona takie wycięcie sesji użytkowników.
Pozdrawiam.
Sebek
Można dorobić procedurę uruchamianą z poziomu Wykresów, która wykona takie wycięcie sesji użytkowników.
Pozdrawiam.
Sebek
Re: Aktywne sesje - wycinanie wszystkich
Można prosić jakiś przykład takiej procedury ?
Dzięki
Dzięki
Re: Aktywne sesje - wycinanie wszystkich
Cześć,
może ktoś pomóc?
Dzięki
może ktoś pomóc?
Dzięki
- viesiek1
- Posty: 416
- Rejestracja: 03 maja 2011, 18:40
- Rola: Administrator CDN XL
- Wersja: 2023
- Lokalizacja: Bielsko-Biała
- Kontakt:
Re: Aktywne sesje - wycinanie wszystkich
Ja mam to tak zrobione. Najpierw wyświetlam listę sesji:
A potem wycinam:
Aktualny czas pobieram tak:
Kod: Zaznacz cały
SELECT
SES_SesjaID
, SES_OpeIdent AS OpeIdent
, SES_Modul AS Modul
, SES_Komputer AS Komputer
, SES_NrWersji
, DATEADD(SS, SES_Start, '19900101') AS Poczatek
FROM CDN.Sesje
WHERE
SES_Aktywna = 0
-- AND SES_OpeIdent = 'WS'
ORDER BY SES_Start
Kod: Zaznacz cały
UPDATE CDN.Sesje SET
SES_Aktywna = 1
, SES_Stop = " + Global.GetCurrentClarionTime());
WHERE SES_SesjaID = 1234567
Kod: Zaznacz cały
public static string GetCurrentClarionTime()
{
string lResult = string.empy;
try
{
DateTime lBeginTime = new DateTime(1990, 1, 1, 0, 0, 0);
DateTime lTimeNow = DateTime.Now;
TimeSpan lResultTime = lTimeNow - lBeginTime;
lResult = lResultTime.TotalSeconds.ToString().Replace(",", ".");
}
catch (Exception ex)
{
MessageBox.Show("Błąd: GetCurrentClarionTime" + ex.Message, "Błąd", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
return lResult;
}
Wiesław Świergała
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
tel: +48 33 829 54 50
e-mail: wieslaw.swiergala@hydro.com.pl
http://www.hydro.com.pl
Re: Aktywne sesje - wycinanie wszystkich
Tylko chodzi mi o wszystkie sesje za jednym razem. Tutaj podejrzewam że muszę odnosić się do każdej sesji z osobna. Zapomniałem nadmienić że ma to działać z datą wstecz o 1 dzień (z dnia poprzedniego). Czyli wycinamy wszystkie wiszące sesje z dnia poprzedniego.viesiek1 pisze: ↑15 lis 2021, 12:50Ja mam to tak zrobione. Najpierw wyświetlam listę sesji:
A potem wycinam:Kod: Zaznacz cały
SELECT SES_SesjaID , SES_OpeIdent AS OpeIdent , SES_Modul AS Modul , SES_Komputer AS Komputer , SES_NrWersji , DATEADD(SS, SES_Start, '19900101') AS Poczatek FROM CDN.Sesje WHERE SES_Aktywna = 0 -- AND SES_OpeIdent = 'WS' ORDER BY SES_Start
Aktualny czas pobieram tak:Kod: Zaznacz cały
UPDATE CDN.Sesje SET SES_Aktywna = 1 , SES_Stop = " + Global.GetCurrentClarionTime()); WHERE SES_SesjaID = 1234567
Kod: Zaznacz cały
public static string GetCurrentClarionTime() { string lResult = string.empy; try { DateTime lBeginTime = new DateTime(1990, 1, 1, 0, 0, 0); DateTime lTimeNow = DateTime.Now; TimeSpan lResultTime = lTimeNow - lBeginTime; lResult = lResultTime.TotalSeconds.ToString().Replace(",", "."); } catch (Exception ex) { MessageBox.Show("Błąd: GetCurrentClarionTime" + ex.Message, "Błąd", MessageBoxButtons.OK, MessageBoxIcon.Error); } return lResult; }
Re: Aktywne sesje - wycinanie wszystkich
No to chyba najprościej będzie tak:
Kod: Zaznacz cały
select SES_Aktywna,ses_sesjaid,ses_opeident,ses_modul, ses_komputer, CONVERT(Date,CDN.TSToDate(SES_Start,1)), convert(date,GETDATE()),convert(date,GETDATE()-1) from CDN.sesje
where SES_Aktywna=0 and CDN.TSToDate(SES_Start,1)<GETDATE()-1