Wprowadzenie
Dziennik zmian może być przeszukiwany przy użyciu tabel wirtualnych z ODBC, a tym samym wyświetlany w raportach. W niniejszym dokumencie opisano strukturę tabel wirtualnych na potrzeby zapytań do dziennika zmian.
Grupa docelowa
- Programiści
Opis
Jeśli dziennik zmian jest aktywny dla Jednostki Biznesowej (Business Entity), wszystkie zmiany w instancjach tej Jednostki Biznesowej są rejestrowane. Zarejestrowane zmiany można odpytywać za pomocą tabel wirtualnych poprzez ODBC i wyświetlać w raportach.
Wynik wirtualnej tabeli Dziennik Zmian można ograniczyć za pomocą zmienionej Jednostki Biznesowej oraz czasu zmiany. Wynik zawiera jeden wiersz dla każdej zmiany atrybutu o prymitywnym typie danych. W przypadku atrybutów o złożonych typach danych (Parts), wynik zawiera jeden wiersz dla wszystkich zmienionych atrybutów danego Partu o prymitywnym typie danych.
Następujące Parts (złożone typy danych) są zawsze wyprowadzane w całości:
- Waluta krajowa (DomesticAmount)
- Czas trwania (Duration)
- Waluta obca (ForgeinAmount)
- Ilość (Quantity)
Jeśli zmienia się atrybut prymitywny tych Partów (złożonych atrybutów, takich jak Waluta lokalna, Czas trwania, Waluta obca, Ilość), wszystkie atrybuty tych Partów są zapisywane do Dziennika Zmian i wyprowadzane.
Parts (Waluta lokalna, …) istnieją tylko na bazach danych OLTP; na wszystkich innych bazach danych nie mogą być wykorzystywane. W związku z tym, na bazach danych OLTP Dziennik Zmian jest odpytywany za pomocą wirtualnej tabeli app_system_odbc_ModificatonJournal, która zawiera te Party. Na wszystkich innych bazach danych Dziennik Zmian jest odpytywany za pomocą wirtualnej tabeli pgm_ModificationJournal.
Można odpytywać starą i nową wartość zmienionego atrybutu jako ciąg znaków w czytelnej reprezentacji dla każdego typu danych, korzystając z kolumn oldValueString i newValueString . Dodatkowo, dla każdego typu danych dostępna jest osobna kolumna, aby odpytać wartość bezpośrednio, np. oldValueDecimal dla starej wartości atrybutu o typie danych DECIMAL.
Atrybuty wielojęzyczne są wyprowadzane jako tekst HTML z typem danych CLOB_HTML w tabeli wirtualnej.
| app_system_odbc_ModificatonJournalpgm_ModificationJournal | |
| Nazwa Kolumny | Wyjaśnienie |
| in_changeTimeSelection | Pole zapytania dotyczące czasu zmiany. Można wykorzystać ten parametr wejściowy do odpytywania o zmiany z określonych przedziałów czasowych. Przekazuje się w tym polu znormalizowany ciąg wyboru (Selection-String) dla czasów. |
| in_changeUserGuid | GUID użytkownika, który dokonał zmiany. |
| in_changeUserName | Nazwa użytkownika, który dokonał zmiany. |
| in_entityInstanceStringSelection | Pole zapytania dotyczące ciągu instancji (Instance-String) zmienionych instancji jednostki biznesowej (Business Entity). Można wykorzystać ten parametr wejściowy do wydrukowania dziennika zmian dla jednej lub większej liczby instancji jednostki biznesowej. Przekazuje się w tym polu znormalizowany ciąg wyboru (Selection-String) dla ciągów tekstowych. |
| in_entityName | Nazwa jednostki biznesowej. |
| in_entityPrimaryKey | Klucz podstawowy instancji jednostki biznesowej. |
| attributePath | Nazwa zmienionego atrybutu (Ścieżka atrybutu). Jeśli zmieniono Obiekt Biznesowy (Business Object), kolumna zawiera ścieżkę atrybutu zmienionej kolumny albo nazwę zmienionej relacji, uzupełnioną o „_text”. Jeśli zmieniono dynamiczny Obiekt Biznesowy, kolumna zawiera nazwę zmienionego atrybutu. |
| changeTime | Czas, w którym zmieniono Jednostkę Biznesową. |
| changeTime_gmt | Czas, w którym zmieniono Jednostkę Biznesową, w strefie czasowej GMT. |
| changeTimeMs | Czas, w którym zmieniono Jednostkę Biznesową, w milisekundach. Wykorzystuje się tę kolumnę do grupowania według czasów zmiany. |
| datatype | Typ danych zmienionego atrybutu:
|
| datatype_text | Opis typu danych. |
| entityDescription | Opis Jednostki Biznesowej. |
| entityInstanceString | Ciąg instancji (Instance-String) zmienionej instancji Jednostki Biznesowej. |
| label | Etykieta zmienionego atrybutu. |
| updateType | Typ zmiany Obiektu Biznesowego:
|
| updateType_text | Opis typu zmiany Obiektu Biznesowego. |
| oldValueBinary | Stara wartość zmienionego atrybutu o typie danych BINARY. |
| oldValueBoolean | Stara wartość zmienionego atrybutu o typie danych BOOLEAN. |
| oldValueByte | Stara wartość zmienionego atrybutu o typie danych BYTE. |
| oldValueChar | Stara wartość zmienionego atrybutu o typie danych CHAR. |
| oldValueCisDate | Stara wartość zmienionego atrybutu o typie danych CIS_DATE. |
| oldValueCLOB | Stara wartość zmienionego atrybutu o typie danych CLOB. |
| oldValueDecimal | Stara wartość zmienionego atrybutu o typie danych DECIMAL. |
| oldValueDomesticAmount | Stara wartość zmienionego atrybutu o typie danych DOMESTIC_AMOUNT. Ten atrybut istnieje tylko w bazach danych OLTP. |
| oldValueDouble | Stara wartość zmienionego atrybutu o typie danych DOUBLE. |
| oldValueDuration | Stara wartość zmienionego atrybutu o typie danych DURATION. Ten atrybut istnieje tylko w bazach danych OLTP. |
| oldValueFloat | Stara wartość zmienionego atrybutu o typie danych FLOAT. |
| oldValueForeignAmount | Stara wartość zmienionego atrybutu o typie danych FOREIGN_AMOUNT. Ten atrybut istnieje tylko w bazach danych OLTP. |
| oldValueHtml | Stara wartość zmienionego atrybutu o typie danych BLOB, CLOB lub STRING wielojęzycznych. Zawartość tego atrybutu ma być wyświetlana w raporcie jako HTML. |
| oldValueGuid_ | Stara wartość zmienionego atrybutu o typie danych GUID. |
| oldValueInt | Stara wartość zmienionego atrybutu o typie danych INT. |
| oldValueLong | Stara wartość zmienionego atrybutu o typie danych LONG. |
| oldValueQuantity | Stara wartość zmienionego atrybutu o typie danych QUANTITY. Ten atrybut istnieje tylko w bazach danych OLTP. |
| oldValueShort | Stara wartość zmienionego atrybutu o typie danych SHORT. |
| oldValueString | Stara wartość zmienionego atrybutu w czytelnej reprezentacji niezależnie od typu danych. |
| oldValueTimestamp | Stara wartość zmienionego atrybutu o typach danych TIMESTAMP lub SQL_DATE. |
| newValueBinary | Nowa wartość zmienionego atrybutu o typie danych BINARY. |
| newValueBoolean | Nowa wartość zmienionego atrybutu o typie danych BOOLEAN. |
| newValueByte | Nowa wartość zmienionego atrybutu o typie danych BYTE. |
| newValueChar | Nowa wartość zmienionego atrybutu o typie danych CHAR. |
| newValueCisDate | Nowa wartość zmienionego atrybutu o typie danych CIS_DATE. |
| newValueCLOB | Nowa wartość zmienionego atrybutu o typie danych CLOB. |
| newValueDecimal | Nowa wartość zmienionego atrybutu o typie danych DECIMAL. |
| newValueDomesticAmount | Nowa wartość zmienionego atrybutu o typie danych DOMESTIC_AMOUNT. Ten atrybut istnieje tylko w bazach danych OLTP. |
| newValueDouble | Nowa wartość zmienionego atrybutu o typie danych DOUBLE. |
| newValueDuration | Nowa wartość zmienionego atrybutu o typie danych DURATION. Ten atrybut istnieje tylko w bazach danych OLTP. |
| newValueFloat | Nowa wartość zmienionego atrybutu o typie danych FLOAT. |
| newValueForeignAmount | Nowa wartość zmienionego atrybutu o typie danych FOREIGN_AMOUNT. Ten atrybut istnieje tylko w bazach danych OLTP. |
| newValueHtml | Nowa wartość zmienionego atrybutu o typie danych BLOB, CLOB lub STRING wielojęzycznych. Zawartość tego atrybutu ma być wyświetlana w raporcie jako HTML. |
| newValueGuid_ | Nowa wartość zmienionego atrybutu o typie danych GUID. |
| newValueInt | Nowa wartość zmienionego atrybutu o typie danych INT. |
| newValueLong | Nowa wartość zmienionego atrybutu o typie danych LONG. |
| newValueQuantity | Nowa wartość zmienionego atrybutu o typie danych QUANTITY. Ten atrybut istnieje tylko w bazach danych OLTP. |
| newValueShort | Nowa wartość zmienionego atrybutu o typie danych SHORT. |
| newValueString | Nowa wartość zmienionego atrybutu w czytelnej reprezentacji niezależnie od typu danych. |
| newValueTimestamp | Nowa wartość zmienionego atrybutu o typach danych TIMESTAMP lub SQL_DATE. |



