Promotic

GetDateOf - metoda obiektu Pm

Opis:
Zwraca różne daty pochodnych od określonej daty.
Składnia:
Date GetDateOf(Long nOper, [Date tDate], [Long nPar1], [Long nPar2])
Parametry:
nOper(Long) Operacja nad określonym czasem:
 
1 - Konwersja czasu do czas zimowy, czas letni lub JavaScript czas. Patrz Przykład1.
Parametr nPar1 określa typ czasu wejściowego (tDate) oraz parametr nPar2 określa typ czasu wyjściowego.
0 = Czas bieżący. Czas automatyczny zostanie wybrany według tego, do jakiego okresu czasu należy.
Jeżeli czas (tDate) jest w przedziale czasu letniego, wtedy zostanie wybrany "czas letni".
Jeżeli czas (tDate) jest w przedziale czasu standardowego, wtedy zostanie wybrany "czas zimowy".
1 = czas zimowy (nie działa dla Webu).
2 = czas letni (nie działa dla Webu).
4 = Czas JavaScript w postaci ilości milisekund (patrz JavaScript-Date).
11 - Czas uruchomienia aplikacji. Parametr tDate nie jest wprowadzany.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
21 - Początek czasu letniego w roku wprowadzonego czasu. Patrz Przykład2.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
22 - Początek czasu zimowego w roku wprowadzonego czasu.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
23 - Początek czasu letniego po wprowadzonym czasie.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
24 - Początek czasu zimowego po wprowadzonym czasie.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
25 - Początek czasu letniego przed wprowadzonym czasem.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
26 - Początek czasu zimowego przed wprowadzonym czasem.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
27 - Najbliższe przejście po wprowadzonym czasie.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
28 - Najbliższe przejście przed wprowadzonym czasem.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
41 (61,81) - Początek (minionego, przyszłego) roku.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
42 (62,82) - Początek (minionego, przyszłego) kwartału. Można to rozwiązać również przy pomocy operacji 43 (63,83) - patrz Przykład4.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
43 (63,83) - Początek (minionego, przyszłego) miesiąca. Patrz Przykład3 oraz Przykład4.
Parametr nPar1 określa wielkość przedziału czasu (patrz Znaczenie parametru nPar1 dla operacji z przedziałami czasu).
Parametr nPar2 nie jest wykorzystywany.
44 (64,84) - Początek (minionego, przyszłego) tygodnia (pierwszy dzień w tygodniu to Poniedziałek).
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
45 (65,85) - Początek (minionego, przyszłego) dnia.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
46 (66,86) - Początek (przeszłej, przyszłej) godziny. Patrz Przykład6 oraz Przykład7.
Parametr nPar1 określa wielkość przedziału czasu (patrz Znaczenie parametru nPar1 dla operacji z przedziałami czasu).
Parametr nPar2 nie jest wykorzystywany.
47 (67,87) - Początek (przeszłej, przyszłej) minuty.
Parametr nPar1 określa wielkość przedziału czasu (patrz Znaczenie parametru nPar1 dla operacji z przedziałami czasu).
Parametr nPar2 nie jest wykorzystywany.
48 (68,88) - Początek (przeszłej, przyszłej) sekundy.
Parametr nPar1 określa wielkość przedziału czasu (patrz Znaczenie parametru nPar1 dla operacji z przedziałami czasu).
Parametr nPar2 nie jest wykorzystywany.
101 (121,141) - Ostatni dzień (minionego, przyszłego) roku.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
102 (122,142) - Ostatni dzień (minionego, przyszłego) kwartału.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
103 (123,143) - Ostatni dzień (minionego, przyszłego) miesiąca.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
104 (124,144) - Ostatni dzień (minionego, przyszłego) tygodnia (ostatni dzień w tygodniu to Niedziela).
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
105 (125,145) - Ostatnia godzina (minionego, przyszłego) dnia.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
106 (126,146) - Ostatnia minuta (minionej, przyszłej) godziny.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
107 (127,147) - Ostatnia sekunda (minionej, przyszłej) minuty.
Parametry nPar1 oraz nPar2 nie są wykorzystywane.
tDate[opcjonalne] (Date) Określony czas.
Jeżeli parametr jest pominięty (lub została wprowadzona wartość 0), wtedy domyślnie zostanie ustawiony czas bieżący.
nPar1[opcjonalne] (Long) Znaczenie jest zależne od operacji (od parametru nOper).
Dla operacji, które nie korzystają z tego parametra, parametr zostanie pominięty lub należy wprowadzić wartość 0.
nPar2[opcjonalne] (Long) Znaczenie jest zależne od operacji (od parametru nOper).
Dla operacji, które nie korzystają z tego parametra, parametr zostanie pominięty lub należy wprowadzić wartość 0.
Notatka:
Metoda ta działa również w Makro wyrażenie $.expr oraz w zdarzeniu onDraw obiektu PmgCanvas.
 
Metoda ta działa także w Web panelach. Dla Webu aktualnie poprawnie działają operacje 1, 41-88.

Znaczenie parametru nPar1 dla operacji z przedziałami czasu:
Dla operacji 43,63,83 (początek miesiąca), 46,66,86 (początek godziny), 47,67,87 (początek minuty) oraz 48,68,88 (początek sekundy) można przy pomocy parametru nPar1 definiować przedział czasu tak, że nie będzie stwierdzany początek jednego miesiąca (godziny, minuty, sekundy) ale przedziału czasu nPar1 miesięcy (godzin, minut, sekund).
- Przykład dla miesiąca: Jeżeli nPar1 = 3, wtedy będzie stwierdzany początek przedziału czasu trzech miesięcy (tzn. początek kwartału) - patrz Przykład4.
- Przykład dla godziny: Jeżeli nPar1 = 8, wtedy będzie stwierdzany początek przedziału czasu 8 godzin (tzn. początek zmiany) - patrz Przykład7. Na przykład zmiana rozpoczyna się o 6:00 rano, wtedy dla właściwego obliczenia jest konieczne od wejściowego czasu odjąć 6 godzin a następnie do wyniku dodać 6 godzin (6 godzin to wartość 6/24).
Przykład1:
Stwierdzi bieżący czas jako "czas zimowy" (nawet jeżeli może być aktualnie aktywny "czas letni"):
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var d = Pm.GetDateOf(1, 0, 0, 1);
Przykład2:
Stwierdzi czas przejścia na "czas letni" w 2023 roku:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var d = Pm.GetDateOf(21, Pm.CreateDate(2023, 1, 1, 0, 0, 0, 0));
Przykład3:
Stwierdzi początek aktualnego miesiąca:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var d = Pm.GetDateOf(43, 0);
Przykład4:
Stwierdzi początek aktualnego kwartału (tzn. przedziału 3 miesięcy).
Patrz Znaczenie parametru nPar1 dla operacji z przedziałami czasu.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var d = Pm.GetDateOf(43, 0, 3);
Przykład5:
Wartość czasu bez daty:
JavaScriptWybierz oraz skopiuj do schowka

var tTime = Pm.Time - Pm.GetDateOf(45, 0);
Przykład6:
Stwierdzi początek aktualnej godziny:
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var d = Pm.GetDateOf(46, 0);
Przykład7:
Stwierdzi początku danej zmiany. Zmiana to przedział 8 godzin, który rozpoczyna się o godz. 6:00. Dlatego w przykładzie odlicza się 6 godzin (tzn. wartość 6/24) od czasu wejściowego a następnie dolicza do czasu wyjściowego.
Patrz Znaczenie parametru nPar1 dla operacji z przedziałami czasu.
JavaScriptVBScriptWybierz oraz skopiuj do schowka

var d = Pm.GetDateOf(46, Pm.Time - 6 / 24, 8) + 6 / 24;

Historia:
Pm9.00.16: Dla operacji 1 jest teraz wspierany parametr nPar1=4, przy pomocy którego można uzyskać czas JavaScript (jako ilość milisekund).
Pm9.00.09: Usunięty błąd: Metoda nie działała w Web panelu jeżeli parametr tDate miał wartość 0.
Pm8.02.16: Dostępne dla Web paneli.
Nawigacja:
 
- Pm
 
- Abs
- Cos
- E
- Exp
- GetDateOf
 
 
- LN2
- PI
- Pow
- Sin
- Tan
© MICROSYS, spol. s r.o.