Version 23 (modified by JP, 14 years ago) |
---|
Przewodnik wdrożeniowca > Integracja z systemem Symfonia Handel
Połączenie w systemem Symfonia Handel wymaga następujących kroków:
Wykonanie polecenie createDDfs({NAZWA_FIRMY}) w celu wygenerowania specjalnych plików umożliwiających połączenie się z bazą Pervasive poprzez sterownik ODBC.
Po wykonaniu tego polecenia w systemowych źródłach danych
Panel sterowania -> Narzędzia administracyjne -> Źródła danych (ODBC) -> Systemowe DSN
należy dodać połączenie do bazy Symfonii.
Klikamy "Dodaj" i z listy wybieramy "Pervasive ODBC Engine Interface".
Po zatwierdzeniu należy skonfigurować źródło danych jak zaprezentowano na screenie.
Następny krok to umieszczenie specjalnego programiku (FKSync - poniżej na liście załączników) na serwerze gdzie znajduje się system Symfonia oraz utworzone przed chwilą źródło danych. Programi wymaga PHP. Jeśli nie ma należy go doinstalować.
Program FKSync jest odpowiedzialny za synchronizację danych pomiędzy Symfonią w aplikacją eDokumenty. Synchronizacja te dodaje kontrahentów oraz dokumenty do specjalnej schemy w bazie Postgresa. Schema na nazywa się "symfonia_handel" (jeśli jej nie ma to w kolejnych punktach konfiguracji połączenia zostanie dodana).
Programik FKSync wymaga konfiguracji.
Przechodzimy do folderu
FKSync\conf\tpl\symfonia_handel
i kopiujemy zawartość do katalogu
FKSync\conf
Pliki all_contacts.sql oraz all_documents.sql są definicjami komend SQL jakie będą wykonywane na bazie pervasive w celu pobrania odpowiednio kontaktów oraz dokumentów. Pliki te mogą być edytowane w celu pobrania dodatkowych informacji.
FKSync config.inc TODO OPEN_BALANCE_DATE
Plik connection.ini jest konfiguracją połączenia pomiędzy zdefiniowanym źródłem danych a bazą eDokumenty. Przykład poniżej:
[fk] dsn = "encoding=windows-1250;dsn=SYMFONIA_HANDEL" driver = "ODBCManager" [edokumenty] dsn = "dbname=edokumenty user=edokumenty password=" ent_id = 2 fkSchema = "symfonia_handel"
Aby dane były synchronizowane automatycznie należy dodać zadanie do
Start -> Wszystkie programy -> Akcesoria -> Narzędzia systemowe -> Zaplanowane zadania
Przykład konfiguracji zadania.
W przypadku innej konfiguracji źródła danych lub systemu eDokumenty należy odpowiednio zmodyfikować wartości pod kluczami dsn w [fk] oraz [edokumenty]. Klucz dns pod [edokumenty] to wartość z pliku config.inc pod kluczem DB_NAME systemu eDokumenty. Plik config.inc znajduje się w {EDOKUMENTY_INSTALL_DIR}/apps/edokumenty Pozostałych kluczy nie należy modyfikować.
Kolejny krok to konfiguracja systemu eDokumenty. Przechodzimy do
Ustawienia -> Panel sterowania -> Pozostałe ustawienia -> Źródła danych
Dodajemy źródło danych podobnie jak zaprezentowano w screenie
Nazwa źródła oraz ciąg połączenia mogą być inne. Ciąg połączenia znajduje się pod kluczem DB_NAME w pliku config.inc. Szczególnie na systemach Linux domyślne połączenie do bazy nie wymaga podania ani portu ani hosta, gdyż interpreter PHP działający na tym samym hoście łączy się z bazą przez gniazdo (socket).
Po wprowadzeniu danych zapisujemy formularz.
Następnie przechodzimy do katalogu
apps\edokumenty\classes\BsConnect\install\sql\symfonia_handel
kopiujemy zawartość pliku
01_install_relations_crt.sql
i wykonujemy ją za pomocą PgAdmina. W przypadku instalacji linuxowej bez graficznej nakładki należy plik 01_install_relations_crt.sql wykonać z linii poleceń komendą
psql -f "01_install_relations_crt.sql" edokumenty
Po wykonaniu w bazie pojawi się dodatkowa schema "symfonia_handel". Można to sprawdzić wykonując polecenie
edokumenty-# \dn
Następny plik który należy wykonać w podobny sposób to
02_install_triggers_crt.sql
Po wykonaniu powinny dodać się 2 triggery
- bs_add_contact_to_queue
- bs_add_document_to_queue
Można to sprawdzić wpisując
edokumenty-# SET search_path TO symfonia_handel; edokumenty-# \dft
Kolejny krok konfiguracji to skopiowanie plików
- SYMFONIA_HANDEL_columns_map.ini
- SYMFONIA_HANDEL_documents_conf.ini
z katalogu
apps\edokumenty\var\tpl_default\sync
do
apps\edokumenty\etc\sync
Ostatni krok to wykonanie skrytu sql symfonia_handel_wsdl_ins.sql z katalogu
apps\edokumenty\classes\BsConnect\install\data
Przed wykonaniem należy jednak podmienić w tym pliku wartości
- {ent_id} na id jednostki z jaką jest wykonywana synchronizacja (przeważnie 2)
- {host} na adres hosta gdzie zainstalowano eDokumenty (przeważnie localhost)
Po wykonaniu należy jeszcze w linii poleceń wykonać
edokumenty-# UPDATE wsdl_config_table SET dtscnm = 'SYMFONIA_HANDEL';
Wartość "SYMFONIA_HANDEL" jest tą samą, która została podana przy konfiguracji źródła danych w systemie eDokumenty.
Nie należy wpisywać polskich znaków.
Aby sprawdzić czy usługa działa kopiujemy wynik zapytania
edokumenty-# SELECT wsdl__ FROM wsdl_config_table WHERE dtscnm = 'SYMFONIA_HANDEL' LIMIT 1;
do przeglądarki. Po przejściu na stronkę powinien pojawić się błąd parsowania (to oznacza że usługa została zainstalowana).
Przed wykonaniem synchronizacji należy uruchomić programik FKSync (Zaplanowane zadania -> prawy przycisk myszy -> Uruchom)
Po wykonaniu w bazie eDokumenty powinny pojawić się wpisy
edokumenty-# SELECT * FROM symfonia_handel.bs_kontrahenci;
Synchronizacja kontrahentów odbywa się z modułu Klienci.
Przycisk Importuj -> SYMFONIA_HANDEL -> Importuj wszystkie kontakty
Powodzenia :)