Funkcje modułu history
Moduł posiada niewielką liczbę funkcji, są one jednak mocno przeciążone. Poniższa tabela pozwoli łatwo zorientować się w zestawie dostępnych funkcji.
zwracany argument |
metoda |
zapis do historii |
modyfikacja pola |
nazwa i typ argumentu |
connectorName |
historyTableName |
resourceName |
fieldName |
rowId |
oldValue |
newValue (pozostałe zmiany) |
newValue (zmiany pól z datą) |
dateFormat |
userId |
extraId |
saveAlways |
String |
String |
String |
String |
Long |
String |
String |
String |
String |
Long |
Long |
String |
Long |
recordChange |
X |
|
|
|
X |
X |
X |
|
X |
|
|
|
|
|
X |
|
|
|
X |
X |
X |
|
X |
|
|
X |
|
|
X |
|
|
|
X |
X |
X |
X |
X |
|
|
|
|
|
X |
|
|
|
X |
X |
X |
X |
X |
|
|
X |
|
|
X |
|
|
|
X |
X |
X |
X |
X |
|
|
X |
X |
|
X |
|
|
|
X |
X |
X |
X |
X |
|
|
X |
X |
X |
X |
|
|
X |
X |
X |
X |
|
X |
|
|
|
|
|
X |
|
|
X |
X |
X |
X |
|
X |
|
|
X |
|
|
X |
|
|
X |
X |
X |
X |
X |
X |
|
|
|
|
|
X |
|
|
X |
X |
X |
X |
X |
X |
|
|
X |
|
|
X |
|
|
X |
X |
X |
X |
X |
X |
|
|
X |
X |
|
X |
|
|
X |
X |
X |
X |
X |
X |
|
|
X |
X |
X |
X |
|
X |
X |
X |
X |
X |
X |
X |
|
|
X |
X |
X |
Long |
recordDateChange |
X |
|
|
|
X |
X |
X |
|
|
X |
X |
|
|
|
X |
|
|
|
X |
X |
X |
|
|
X |
X |
X |
|
|
X |
|
|
X |
X |
X |
X |
|
|
X |
X |
|
|
|
X |
|
|
X |
X |
X |
X |
|
|
X |
X |
X |
|
|
void |
modify |
|
X |
|
|
X |
X |
X |
|
X |
|
|
|
|
|
void |
modifyAndTrim |
|
X |
|
|
X |
X |
X |
|
X |
|
|
|
|
|
void |
modifyDate |
|
X |
|
|
X |
X |
X |
|
|
X |
X |
|
|
|
void |
modifyH |
X |
X |
|
|
X |
X |
X |
|
X |
|
|
|
|
|
X |
X |
|
|
X |
X |
X |
|
X |
|
|
X |
|
|
X |
X |
|
X |
X |
X |
X |
|
X |
|
|
|
|
|
X |
X |
|
X |
X |
X |
X |
|
X |
|
|
X |
|
|
void |
modifyAndTrimH |
X |
X |
|
|
X |
X |
X |
|
X |
|
|
|
|
|
X |
X |
|
|
X |
X |
X |
|
X |
|
|
X |
|
|
X |
X |
|
X |
X |
X |
X |
|
X |
|
|
|
|
|
X |
X |
|
X |
X |
X |
X |
|
X |
|
|
X |
|
|
void |
modifyDateH |
X |
X |
|
|
X |
X |
X |
|
|
X |
X |
|
|
|
X |
X |
|
|
X |
X |
X |
|
|
X |
X |
X |
|
|
X |
X |
|
X |
X |
X |
X |
|
|
X |
X |
|
|
|
X |
X |
|
X |
X |
X |
X |
|
|
X |
X |
X |
|
|
Większość argumentów przekazywanych do funkcji modułu jest wspólna. Znaczenie tych argumentów jest opisane poniżej.
- connectorName - nazwa konektora do bazy danych, w której znajduje się tabela historii,
- historyTableName - nazwa tabeli historii, w której zostanie zarejestrowana zmiana,
- resourceName - nazwa zasobu (tabeli bazodanowej), której dotyczy rejestrowana zmiana,
- fieldName - nazwa kolumny w tabeli resourceName, której dotyczy rejestrowana zmiana,
- rowId - numeryczne id wiersza w tabeli resourceName, którego dotyczy rejestrowana zmiana,
- oldValue - wartość kolumny fieldName w wierszu rowId w tabeli resourceName przed zmianą,
- newValue - wartość kolumny fieldName w wierszu rowId w tabeli resourceName po zmianie, dla rejestracji zmian w polach typu date wartość w tym polu powinna mieć format zgodny z formatem daty podanym w polu dateFormat,
- dateFormat - argument używany tylko w funkcjach dotyczących zmian w polach typu date. Należy w nim przekazać bazodanowy format daty, jaki zostanie użyty do przekształcenia wartości daty z kolumny fieldName z wiersza rowId w tabeli resourceName na ciąg tekstowy przed porównaniem z wartością podaną w argumencie newValue (wynik porównania decyduje o tym, czy zmiana jest rejestrowana),
- userId - id użytkownika jPALIO, z którym zostanie skojarzona zarejestrowana zmiana,
- extraId - id wiersza, w którym nastąpiła zmiana w tabeli złączeniowej powiązanej z tabelą historyTableName, zobacz opis w rozdziale Historia dla tabel złączeniowych,
- saveAlways - wartość not null oznacza, że zmiana jest zapisywana zawsze, nawet gdy wartość stara i nowa nie różnią się.
Wartości domyślne argumentów są następujące:
- connectorName - "data",
- historyTableName - "p_history",
- resourceName - brak wartości domyślnej, pole wymagane,
- fieldName - brak wartości domyślnej, pole wymagane,
- rowId - brak wartości domyślnej, pole wymagane,
- oldValue - jeśli nie podano, to moduł sam odczytuje wartość kolumny fieldName w wierszu rowId w tabeli resourceName, co oznacza, że najpierw powinna nastąpić rejestracja zmian w historii, a dopiero potem zmiana wartości kolumny fieldName w wierszu rowId w tabeli resourceName
- newValue - brak wartości domyślnej, pole wymagane,
- dateFormat - brak wartości domyślnej, pole wymagane w funkcjach dotyczących zmian w polach typu date,
- userId - id bieżącego użytkownika jPALIO - $user.userID(),
- extraId - null,
- saveAlways - null.
Funkcje recordChange oraz recordDateChange zwracają wartość Long, która jest identyfikatorem wpisu dokonanego w tabeli historii.