Versja 1
o---------------------o o-----------------------o
| | | |
| Trawers ERP | | Trawers7 ERP Cloud |
| | | | Autentykacja
| o-----------------o | | o------------------o | Autoryzacja o-----------------o
| | | | | | | | Wyszukiwanie | |
| | Server SOA/REST | | | | Aplikacja Django | | (przeglądanie, | Przeglądarka |
| | | | | | | | filtrowanie, | internetowa |
| | o------------o | |Replikacja| | o------------o | | sortowanie) | |
| | | |o------>--->------->| |o--------->--->--->------->| lub |
| | | Baza danych| | | | | | PostgreSQL | | | | |
| | | DBF | | | | | | | | | | |
| | | | | | | | o------------o | | | Aplikacja |
| | | | | | | |------------------| | | mobilna |
| | | | | | | | | | Zapis danych | |
| | | |<------<---<--------(Przekazywanie)<---------<---<---<------o| |
| | o------------o | | | | | | | |
| o-----------------o | | o------------------o | o-----------------o
o---------------------o o-----------------------o
Versja 2
o--------------------------------------------------------o
| Trawers ERP |
| |
| | Autentykacja
| o-----------------o o------------------o | Autoryzacja o-----------------o
| | Trawers TUI | | Trawers7 | | Wyszukiwanie | |
| | Server SOA/REST | | Aplikacja Django | | (przeglądanie, | Przeglądarka |
| | | | | | filtrowanie, | internetowa |
| | o------------o | Replikacja | o------------o | | sortowanie) | |
| | | |o------>--->------->| |o--------->--->--->------->| |
| | | Baza danych| | | | PostgreSQL | | | | lub |
| | | DBF | | | | | | | | |
| | | | | | o------------o | | | |
| | | | | |------------------| | | Aplikacja |
| | | | | | | | Zapis danych | mobilna |
| | | |<------<---<--------(Przekazywanie)<---------<---<---<------o| |
| | o------------o | | | | | |
| o-----------------o o------------------o | o-----------------o
o--------------------------------------------------------o
Baza danych PostgreSQL, z której korzysta Django jest wykorzystywana
tylko jako zbiór tymczasowy dla potrzeb wyszukiwania i przeglądania danych.
Wszelkie modyfikacje danych są najpierw zapisywane w bazie Trawersa
a potem replikowane w PostgreSql.
Dotyczy to zarówno danych dziedzinowych (faktury, indeksy, odbiorcy, ...)
jak i sterujących (operatorzy, uprawnienia, ...)
Bazę danych w PostgreSQL można w każdej chwili usunąć i ponownie
utworzyć i zaimportować dane.
Jedynym wyjątkiem są hasła operatorów. Mechanizm zapisu skrótów haseł
jest inny w Tr i w Django.
Po imporcie danych z Tr konieczne jest ustalenie haseł operatorów.
Może to zrobić administrator, korzystając z wbudowanego panelu
administracyjnego (opcja Admin w menu).
FS: JJ wskazuje mechanizm OpenID jako możliwość wydzielenia
autentykacji użytkownika do osobnego modułu.
Po początkowym imporcie wszystkich danych, w procesie automatycznym
sterowanym przez mechanizm kolejkowania Celery, importowane są tylko
te dane, które uległy modyfikacji od daty ostatniego importu.
Czas ostatniego importu z Tr jest zapisywany dla każdego modelu
danych w:
trimport/models.ModelSyncData
pole
modified_since
Mechanizm REST programu Trawers zwraca także dane usunięte (deleted),
gdy podano taką opcję. Jest to wykorzystywane do usunięcia danych
w bazie PostgreSQL w sytuacji, gdy zostaną one usunięte w bazie
danych Trawersa.
Oprócz importu danych jest także opcja re-indeksowania danych.
W sytuacji, gdy w programie Trawers zostanie przeprowadzane
indeksowanie danych z usunięciem z bazy rekordów oznaczonych jako
usunięte, konieczne jest wykonanie re-indeksowania danych
w aplikacji Django.
Słowa kluczowe#TrawersERP-Architektura#TrawersERP-Chmura#Admin-Instalowanie