Moduł: Integracja z systemem ERP lub handlowym

Powrót do spisu treści

Instrukcja

Konfiguracja synchronizacji

W tej sekcji znajdują się następujące opcje:





Synchronizacja

W tej sekcji konfiguruje się bazę danych do synchronizacji (Baza ODBC) oraz znajduje się tu zestawienie procesów wykorzystywanych w czasie przeprowadzania synchronizacji:



Synchronizacja danych - opcje zaawansowane (modyfikacja niezalecana)

W tej sekcji znajdują się opcje umożliwiające pobranie danych z systemu zewnętrznego (używanie tego modułu nie jest zalecane, ponieważ wszystkie wymienione poniżej metody można wykonać również używając opcji dostępnych powyżej):





Tworzenie nowego procesu

Nowy proces tworzymy klikając na przycisk dodaj nowy w opcjach zaawansowanych synchronizacji danych.





Poniżej znajduje się tabela z nazwami procesów, sugerowanym rozmiarem pakietu oraz priorytetem, jaki należy ustawić tworząc nowy proces.

Rozmiar pakietu - ile rekordów ma zostać pobranych z systemu zewnętrznego
Priorytet - w jakiej kolejności dane mają się pobierać 0 - najwyższy, 9999 - najniższy

Nazwa procesu Rozmiar pakietu Priorytet
import_prepare 50 1
import_selected 100 2
on_timer 3
table_measure_unit 150 10
table_vat 150 15
table_payment_type 50 17
table_product_category 150 25
table_storehouse 150 50
table_company 50 80
table_discount 50 85
table_price_individual 50 90
table_price_company_group 150 95
table_price_product_group 150 100
table_exchange 50 120
table_product 25 200
table_invoice 50 225
table_document_store 30 250
table_document_supply_details_in 150 255
table_document_payment 50 275
table_product_reservation 150 999
table_product_quantity 100 1000
table_storehouse_content 50 1001
after_all 150 9999


Synchronizacja CSV


Sekcja odpowiedzialna za synchronizację danych z pliku CSV. Wymaga określenia:




Jak wygląda prawidłowy format pliku CSV, patrz Import CSV lub Drukowanie etykiet z CSV

OnTimer - cykliczne wykonywanie synchronizacji

Proces OnTimer pozwala na automatyzację procesu synchronizacji poprzez uruchamianie synchronizacji wybranych elementów o określonych godzinach,
które konfiguje się z poziomu bazy danych (tabela setting pozycjaon_timer_execute_time - wiele godzin rozdzielamy przecinkiem). Należy pamiętać, aby czas wykonywania nie był ustawiony zbyt często (najelepiej 1-2 razy dziennie, ponieważ w innym przypadku procesy mogą się na siebie nałożyć i wywołać zakleszczenie na bazie danych, patrz - Deadlock).

Jeżeli integrujesz również dodatkowe synchronizacje, np. XML, zwróć uwagę, przy procesie update tych samych tabel, żeby integracje nie nakładały się na siebie.
Plik konfiguracyjny OnTimer pozwala na włączenie (wartość true) lub wyłączenie (wartość false) następujących opcji:





Instalacja synchronizacji


  1. W zależności od tego z jakim programem ma działać synchronizacja, pobieramy z ftp pliki z odpowiedniego katalogu, które znajdują się w katalogu głównym „synchronizacja” (dane otrzymasz kontaktując się z Questy).

    1. Comarch – pliki do synchronizacji z programem CDN XL (import danych);
    2. Comarch_export – pliki do synchronizacji z programem CDN XL (export danych);
    3. Symf_prem – pliki do synchronizacji z programem Symfonia Handel Premium;
    4. Graffiti – pliki do synchronizacji z programem Graffiti;
    5. Subiekt – pliki do synchronizacji z programem Subiekt;
    6. Sym_forte – pliki do synchronizacji z programem Symfonia Handel Forte;
    7. Wapro – pliki do synchronizacji z programem Wapro.

  2. W katalogu (domyślnie D:/system/) tworzymy folder o nazwie „synchronizacja”, a następnie umieszczamy w nim pobrane pliki (punkt 1).

  3. Jeżeli instalujemy synchronizację z programem Comarch lub Symfonia, należy przejść do kolejnego punktu. Natomiast gdy synchronizacja dotyczy pozostałych programów, należy przejść do punktu 5.
  4. Pobieramy pliki z katalogu Comarch_export dla synchronizacji z CDN XL lub pliki z katalogu smf dla synchronizacji z Symfonią. Następnie w folderze (domyślnie D:/system/) tworzymy katalog o nazwie „export”. Przenosimy pobrane pliki exportu do stworzonego katalogu.
  5. W pliku D:/system/system/config/config.php (scieżka domyślna) należy podać:

  6. w przypadku, gdy folder exportu znajduje się na maszynie wraz z plikami systemu:

    ‘action’ => ‘save’,
    ‘dir’ => ‘D:/export/’,

    w przypadku, gdy folder znajduje się na innej maszynie niż pliki systemu:

    ‘action’ => ‘ftp’,
    ‘host’ => ‘adres IP maszyny, na którym znajduje się folder „export”’,
    ‘port’ => ‘numer portu ustawionego dla stworzonego serwera ftp’,
    ‘user’ => ‘login użytkownika z dostępem do serwera ftp’,
    ‘pass’ => ‘hasło do serwera ftp’,
    ‘dir’ => ‘/export/’,

    Przed skonfigurowaniem tych danych należy stworzyć serwer ftp z udostępnionym katalogiem „export” oraz odpowiednimi danymi dostępowymi. Do tej akcji można użyć programu CesarFTP.
  7. Wchodzimy w „Panel sterowania” ->> „Narzędzia administracyjne” ->> „Źródła danych (ODBC)”. W zakładce „Systemowe DSN” dodajemy źródło danych poprzez przycisk „dodaj”. Następnie wybieramy z listy sterownik, dla którego chcemy ustawić źródło danych. Kolejnym krokiem jest podanie nazwy, która będzie odwoływać się do tworzonego źródła danych. Następnie wybieramy serwer oraz w dalszym kroku podajemy nazwę bazy danych.


  8. W przypadku Symfonii Premium baza danych powinna sama się pojawić w ODBC po dodaniu raportów z punktu 9, wykonaniu raporu „Konwersja” i dodaniu bazy Symfonii do motoru bazy danych Pervasive.
  9. W programie pgAdmin III wchodzimy do tabeli „synchronization_config” w bazie danych. Mając wgląd do tabeli ustawiamy następujące pola:

    • odbc_dbname – nazwa bazy danych jaką ustawiliśmy w ODBC (punkt 5);
    • odbc_host – adres umożliwiający dostęp do ODBC:
      • w przypdaku, gdy ODBC jest na tej samej maszynie co baza danych, ustawiamy „localhost”;
      • w przypadku, gdy ODBC jest na innej maszynie niż baza danych, należy ustawić adres ip maszyny ODBC;
    • odbc_user – nazwa użytkownika, jeżeli nie jest wymagana pozostawiamy puste pole;
    • odbc_password – hasło, jeżeli nie jest wymagane pozostawiamy puste pole;
  10. Przechodzimy do katalogu „synchronizacja” i zmieniamy nazwę pliku config.pgsql.org na config.pgsql.php. Następnie w pliku wprowadzamy następujące wpisy:

    $pgHOST = 'localhost';
    pgUSER = 'postgres';
    $pgPASS = 'haslo' ; // podane hasło do bazy danych
    $pgPORT = '5432' ;
    $pgDB = 'b2b'; // podana nazwa bazy danych

  11. W systemie przechodzimy do menu “Ustawienia” >> “Synchronizacja”, a następnie z listy wybieramy program zewnętrzny, z którym będzie uruchomiona synchronizacja. Kolejnym krokiem jest przejście do Synchronizacja danych. Na stronie z zestawieniem procesów uruchamianych podczas synchronizacji należy, odpowiednio do danego programu zewnętrznego, ustawić aktywność i priorytety procesów. Wzór aktywnych procesów znajduje się w drugim rozdziale instrukcji.


  12. Jeżeli instalujemy synchronizację z programam Symfonia, należy przejść do kolejnych punktów. Natomiast gdy synchronizacja dotyczy pozostałych programów należy przejść do punktu 16.


  13. W programie Symfonia, logując się jako Admin, wchodzimy w menu „Kartoteki” >> „Raporty”. W lewej części okna katalogu raportów należy stworzyć nowy katalog o nazwie „b2b”. Następnie wchodzimy do stworzonego katalogu i w prawej części okna tworzymy nowe raporty. Następnie wchodzimy do stworzonego katalogu i w prawej części okna tworzymy nowy raport o nazwie „konwersja”, który posiadać będzie następującą treść:

    createddfs(katalogfirmy())
    Message (KATALOGFIRMY())

  14. Po zapisaniu raportu wykonujemy go (prawy przycisk myszy).

  15. W raporcie „ImportKonfiguracja” zmieniamy następujące dane:
    string katalogImportu = „D:/system/export/”

  16. Podajemy ścieżkę do katalogu „export” stworzonego w punkcie 3.
    string szablonImportuZamowienia = „D:/system/export/smf/hm.ams”

    Podajemy ścieżkę do pliku w katalogu „export” stworzonego w punkcie 3.

  17. W lewej części okna katalogu raportów wybieramy katalog o nazwie „procedury”, następnie wyszukujemy raport „Procedura OnTimer”. Należy zmodyfikować jego treść następująco:

  18. #Include Import Wpis należy umieścić za ostatnim komentarzem (tj. wpisem rozpoczynającym się znakiem //).
    CheckImport() Wpis należy umieścić pod linią „int sub OnTimer()”
    Następnie zapisujemy raport.

  19. Generujemy zamówienie w systemie.
  20. Wchodzimy w menu „Firma” >> „Import danych” i tworzymy nowy podając następujące dane:

    • Nazwa - Import B2B
    • Plik sterownika - wskazujemy plik „ie8.dll” znajdujący się w katalogu, w którym zainstalowana jest symfonia (domyślnie C:\Symfonia\ie8.dll)
    • Tryb pracy - automatyczny
    • Używamy przycisk „ok” aby zatwierdzić dane, a następnie podajemy kolejne informacje:
    • Zbiór danych - d:\system\export\

    • Uwaga: Podajemy ścieżkę do katalogu „export”, w którym znajduje się wygenerowane zamówienie (punkt 12).
    • Szablon - d:\system\export\smf\hm.ams

    • Podajemy ścieżkę do pliku „hm.ams”, pobraliśmy w punkcie 3.
    Następnie wykonujemy pobranie zamówienia wskazując numer seryjny stworzonego zamówienia w punkcie 12.

  21. Wchodzimy w „Ustawienia” >> „Typy dokumentów” >> „Dokumenty sprzedaży” >> „Inna sprzedaż” >> „ZO”. Następnie poprzez edycję dodajemy nową serię typu dokumentu podając dane:

  22. Seria - sZMA
    Szablon - #n/#M/#r/AURA
    Numeracja - miesięczna

  23. Wracając do „Ustawienia” >> „Dane firmy” >> „Parametry” >> z listy „Wykonywanie procedur” >> „OnTimer”. Należy ustawić wartość „TAK”.
  24. Za pomocą wiersza poleceń uruchamiamy plik synch.bat z folderu synchronizacji. Jeżeli opis został wykonany prawidłowo wg kroków powyżej synchronizacja zacznie działać prawidłowo.

  25. Uwaga
    Poniżej kroki które należy sprawdzić jeżeli synchronizacja nie chce się uruchomić:
    - w bazie danych systemu sprawdź, czy w tabeli synchronization_config opcja kill jest ustawiona na false
    (true oznacza, że synchronizaja ma być zamykana od razu po uruchomieniu)

    - zweryfikuj, czy wszystkie dane w synchronization_config są wprowadzone prawidłowo



Powrót do spisu treści
Powrót do systemu
csv, synchronizacja, synchronizacji