| 27 | Po stronie systemu zewnętrznego występują widoki/tabele o odpowiednich nazwach np. |
| 28 | * bs_contacts_view - widok wszystkich kontrahentów |
| 29 | * bs_contact_persons_view - widok wszystkich osób kontaktowych kontrahenta |
| 30 | * bs_depository_view - widok wszystkich produktów |
| 31 | * bs_documents_view - widok wszystkich dokumentów |
| 32 | * bs_fk_elements_view - widok pozycji dokumentów |
| 33 | |
| 34 | Powyższa lista nie wyczerpuje wszystkich obiektów. |
| 35 | Na potrzeby kolejkowania wpisów nowych i zaktualizowanych wykorzystuje się tabelę: |
| 36 | ''' be_export_queue''' |
| 37 | |
| 38 | Której struktura przedstawia się następująco: |
| 39 | ||Kolumna||Typ danych||Ograniczenia||Opis|| |
| 40 | ||exp_id||bigint||NOT NULL, PRIMARY KEY, AUTO_INCREMENT/IDENTITY(1,1)||Klucz główny tabeli kolejki, automatycznie inkrementowany|| |
| 41 | ||keyval||bigint||NOT NULL||Identyfikator wpisu np. kontrahenta, produktu, dokumentu|| |
| 42 | ||clsnam||varchar(32)||NOT NULL||Klasa obiektu, której dotyczy identyfikator|| |
| 43 | ||chadat||timestamp/datetime/varchar(19)||NOT NULL DEFAULT GETDATE()/current_timestamp||Znacznik czasowy dodania wpisu|| |
| 44 | |
| 45 | |
| 46 | Wyróżniamy nastepujace klasy dla clsnam: |
| 47 | * CONTACT - kontakt |
| 48 | * CONTACT_PERSON - osoba kontaktowa |
| 49 | * PRODUCT - produkt |
| 50 | * DOCUMENT - dokument |
| 51 | |
| 52 | Użytkownik, który łączy się z systemu eDokumenty musi posiadać uprawnienia do odczytu z widoków, jak odczytu, zapisu oraz usuwania wpisów z tabeli kolejki. |
| 53 | |
| 54 | Widoki z dopiskiem '''modified''' (np. bs_modified_contacts_view) są złączeniem wewnętrznym odpowiedniego widoku (w tym przypadku bs_contacts_view) oraz tabeli bs_export_queue. W związku z tym widok ten oprócz wszystkich kolumn widoku (bs_contacts_view) zawiera wszystkie kolumny tabeli bs_export_queue. |
| 55 | Przykład złączenia to: |
| 56 | {{{ |
| 57 | #!sql |
| 58 | |
| 59 | SELECT |
| 60 | ... |
| 61 | FROM bs_contacts_view |
| 62 | INNER JOIN bs_export_queue ON (bs_export_queue.keyval = bs_contacts_view.bs_contact_id AND bs_export_queue.clsnam = 'CONTACT'); |
| 63 | |
| 64 | }}} |
| 65 | |
| 66 | |