ME_KAR_VxT
ME_KAR_VxT
Uniwersalna całka wyrażenia w czasie (moduł Media)
Składnia
ME_KAR_VxT(parKAR,parTM,parDataOd,parDataDo,parEV,parFlt,parParametry)
Parametry
parKAR |
ID karty czynszowej lub zasobu (patrz parametr ZAS). Jeżeli nie podano, to funkcja działa w sposób uniwersalny dla zadanego wyrażenia. Jeżeli podano, to okres dat od-do jest ograniczany datami aktywności karty oraz możliwe jest stosowanie parametrów związanych z ryczałtem, tj. RYCZ i TYP. |
parTM |
Skala czasu (domyślnie M): D - dziennie T - tygodniowo M - miesięcznie K - kwartalnie R - rocznie (liczba dni) - w skali zadanej liczby dni |
parDataOd, parDataDo |
Data początkowa i końcowa, przedział domknięty. |
parEV |
Wyrażenie do ewaluacji. _DATA - data, na którą wyliczana jest wartość wyrażenia. _ZAS - identyfikator zasobu. _KAR - identyfikator karty. |
parFlt |
Filtr wyrażeniowy. Jeżeli nie jest spełniony, data zostaje pominięta. Tu również dostępne są argumenty _DATA, _ZAS i _KAR. |
parParametry |
paramString opisany niżej |
zwraca |
Wyliczona wartość. |
parParametry
ZAS |
Oznacza, że w parKAR podano ID zasobu, a nie karty. W takim przypadku dostępne są opcje ryczałtowe, ale okres nie jest zawężany. |
REAL |
Domyślnie wartości wyliczane są na typie stałoprzecinkowym DECIMAL wysokiej precyzji. W przypadku, gdy wyliczane wartości są przekłamane lub nieprawidłowe, można skorzystać z trybu liczenia na typie zmiennoprzecinkowym REAL. |
RYCZ |
Domyślnie 0. 0 - nie sprawdzaj ryczałtu 1 - tylko dni ryczałtowe 2 - tylko dni pozaryczałtowe |
TYP |
Typ mediów. Parametr ten musi być określony, jeżeli RYCZ=1 lub 2. ZW/CW/CO/GAZ/EEL |
SMPL |
Częstość próbkowania wyrażenia. Domyślnie D. D - codziennie T - raz na tydzień M - raz na miesiąc K - raz na kwartał R - raz na rok (liczba dni) - co zadaną liczbę dni |
SNUM |
Znaczenie zależne od wartości parametru SMPL. Domyślnie 1. D - nie dotyczy T - dzień tygodnia (0 niedziela, 6 sobota) M - dzień miesiąca (jeżeli liczba większa, niż liczba dni miesiąca, to ostatni dzień miesiąca) K - dzień kwartału (jeżeli liczba większa, niż liczba dni kwartału, to ostatni dzień kwartału) R - dzień roku (jeżeli liczba większa, niż liczba dni roku, to ostatni dzień roku) (liczba dni) - dzień n-ty z kolei poczynając od 1 |
UP |
Jeżeli ten parametr jest obecny, to podczas obliczeń funkcja wyświetla okno z paskiem postępu. |
Opis
Funkcja w zamierzeniu zastępuje serię funkcji dostępnych we wzorach medialnych indywidualnych dotyczącą ilości miesięcy, osobo-miesięcy etc. Można tę funkcję stosować zarówno we wzorach medialnych, jak i w dowolnym innym miejscu.
Funkcja służy do wyliczania dyskretnej całki o kształcie WARTOŚĆ * CZAS, np. liczba osób miesięcznie w zakresie dat od-do.
Algorytm wyliczenia:
1. Wyznaczany jest okres - zakres dat ograniczony ewentualnie datami karty od-do.
2. Dla każdego dnia wyznaczana jest wartość zadanego wyrażenia, przy czym częstość próbkowania zależy od parametrów SMPL/SNUM. Parametrów SMPL/SNUM należy używać tylko w specyficznych przypadkach - albo wtedy, gdy zastosowane wyrażenie wymaga zbyt dużej mocy obliczeniowej, aby być wykonywane dla każdego dnia indywidualnie, albo wtedy, gdy celowo chcemy pomijać zmiany wewnątrz zadanej skali czasu parTM, tj. np. jeżeli chcemy wyliczać z dokładnością do miesiąca bez podziału proporcjonalnego miesiąca na krótsze okresy wynikające ze zmian stawek etc.
3. Wyliczana jest suma wartości w skali zadanego czasu parTM, gdzie skala czasu wyznaczana jest dla każdego dnia indywidualnie, np. w przypadku liczenia miesiecznego wartość skali wynosi 1/(liczba dni w danym miesiącu). Takie podejście do skali czasowej eliminuje zaokrąglenia wynikające z różnej długości miesięcy.
Przykłady
ME_KAR_VxT(KAR:ID_KART,'M',DATE(1,1,2018),DATE(12,31,2018),'DajDK(_KAR,1,_DATA)','','')
=> <Dana karty nr 1 miesięcznie w roku 2018. Jeżeli karta jest aktywna w całym zadanym okresie, zaś wartość danej w całym okresie jest niezmienna i wynosi 1, to wynikiem będzie liczba 12.>
ME_KAR_VxT(KAR:ID_KART,'K',DATE(1,1,2018),DATE(12,31,2018),'1','','SMPL=M|SNUM=1|RYCZ=1|TYP=ZW')
=> <Liczba kwartałów ryczałtowych karty dla typu mediów ZW z dokładnością do miesiąca próbkowana na każdy pierwszy dzień miesiąca.>
Zobacz również: