Integracja z Forte FK

  1. Konfiguracja źródła danych
  2. Instalacja widoków w FORTE
  3. Tworzenie połączenia z systemami zewnętrznymi
  4. SyncAssist - eksport danych z eDokumentów do systemu Forte FK

Konfiguracja źródła danych

Pierwszym krokiem integracji jest zdefiniowanie odpowiedniego źródła danych do bazy danych systemu FORTE FK. Do tego celu przechodzimy do Ustawień > Panel Sterowania > Pozostałe ustawienia > Źródła danych. W otwartym oknie wybieramy Nowe, a następnie definiujemy parametry połączenia.

  • Identyfikator źródła danych - wprowadzamy nazwę połączenia, przykładowo FORTE_FK.
  • Sterownik - wybieramy sterownik połączenia, np. MsSQL lub ODBC.
  • Ciąg połączenia - ciąg połączenia do bazy danych. Dla MsSQL może to być np.
    Server=<adres serwera bazy danych np. 192.168.0.1>;Database=<nazwa bazy danych>;Uid=<uużytkownik>;Pwd=<hasło>;
    


No image "img001.png" attached to DeployerGuide/Customization/ForteFK
(Rys.1 Ciąg połączenia z systemem Forte)

Na tym kończy się pierwszy etap integracji.

Instalacja widoków w FORTE

Idąc dalej musimy przygotować na bazie danych systemu FORTE HANDEL. W tym celu mając uprawnienia w systemie Ms SQL Server do tworzenia obiektów na bazie danych wykonujemy skrypt z lokalizacji:public_html/apps/edokumenty/modules/Tools/BSConnect/install/sql/externals/symfonia_forte_fk/01_install_relations_crt.sql:

Tworzenie połączenia z systemami zewnętrznymi

Kolejnym krokiem w tym procesie jest modyfikacja pliku config.inc. Należy dodać lub zmodyfikować wpis w tym pliku:

define('SYNC_ACTIVE','NEW');

Po ponownym zalogowaniu w systemie pojawia się przycisk w menu Narzędzia > Połączenia z systemami zewnętrznymi. Widok przycisku przedstawia poniższy rysunek:


No image "img002.png" attached to DeployerGuide/Customization/ForteFK
(Rys.2 Połączenia z systemami zewnętrznymi)

Domyślnie żadne połączenie nie jest zdefiniowane. Połączenie tworzymy klikając polecenie Nowy.


No image "forte001.jpg" attached to DeployerGuide/Customization/ForteFK
(Rys.3 Okno definiowania połączenia z systemem Forte)

W nowo otwartym oknie należy wypełnić pola:

  • Nazwę połączenia z systemem zewnętrznym - nazwa musi być unikalna,
  • Wybrać identyfikator systemu SYMFONIA_FORTE
  • Wskazać źródło wymiany. Jeżeli nie istnieje to można utworzyć.


No image "forte002.jpg" attached to DeployerGuide/Customization/ForteFK
(Rys.4 Okno definiowania źródła wymiany danych)

W źródle wymiany wprowadzamy:

  • unikalną nazwę,
  • wybieramy typ z listy rozwijanej (opis poniżej),
  • źródło danych (dla typu DB),
  • nazwa schematu w bazie Forte (najczęściej będzie to edokumenty - również dla połączeń typu DB)
  • ścieżkę składu (dla typów XML i CUSTOM_XML)
  • klasę (dla typu CUSTOM_XML)

Źródło wymiany danych może być następujących typów:

  • DB - Wymiana poprzez bazę danych. Wymaga istnienia dedykowanych widoków lub odpowiednich zapytań SQL
  • XML - wymiana danych poprzez pliki XML. Podaje się ścieżkę do katalogu będącego składem plików
  • CUSTOM_XML - jw. z tą różnicą, że wymagana jest dedykowana klasa PHP do obsługi takiego transferu.

Gdy posiadamy już połączenie z systemem zewnętrznym należy skopiować pliki map np.

cp APP_DATA/var/tpl/sync/SYMFONIA_FORTE_HANDEL_columns_map.ini APP_DATA/etc/sync/

a następnie zmienić nazwę skopiowanego pliku w katalogu sync na <IDENTYFIKATOR_Z_BS_CONNECT_SYSTEMS>_columns_map.ini np. 1_columns_map.ini, gdzie jest identyfikator połączenia z okna połączeń z systemami zewnętrznymi.

Przykładowa zawartość takiego pliku to (ale przed dokonaniem importu najlepiej sprawdzić z widokiem czy się zgadza; program rozróżnia wielkość liter).:

[CONTACT]
nazwa = name_1
skrot = name_2
kod = code__
rejon = woj___
ulica = street
numerDomu = bldnum
numerMieszk = fltnum
Miejscowosc = city__
nip = nip___
pesel = pesel_
regon = regon_
kraj = countr
Telefax = faxnum
email = email_
www = www___
Telefon1 = ph_num
Telefon2 = ph_num
nazwisko = cntprs
imie = cntprs
Uwagi = notes_


[DOCUMENT]
data = data__
terminplat = paytrm
kod = symbol
netto = netto_
vat = vat___
brutto = brutto
dctype = dctype
acorid = acorid

[PRODUCT]
kod = symbol
nazwa = name__
jm = unitid
vat = vat_id
katalog=pgr_id
stanmin = quamin
cena_zakupu = purcst
cena_sprzedazy = netto_

[FKELEMENT]
lp = prior_
kodtw = symbol
opis = dscrpt
jm = unitnm
ilosc = quantm
cenanetto = netto_
vat_id = vat_id
kodtw = depsym
opis = depnam
opis = mname_

To jeszcze nie wszystko. Należy również ustawić zasady importu dla danego modułu. Otóż wchodzimy w Połączenia z systemami zewnętrznymi, wybieramy połączenie, edytujemy je - przechodzimy do zakładki Synchronizacja. W tej zakładce wybieramy np. Produkty i dajemy edytuj. W nowym oknie wybieramy akcję i edytujemy ją. Wprowadzamy tam zasady, wg których przebiegnie dalsza akcja.


No image "forte004.jpg" attached to DeployerGuide/Customization/ForteFK
(Rys.5 Edycja zasad importu danych)


No image "forte005.jpg" attached to DeployerGuide/Customization/ForteFK
(Rys.6 Edycja zasad importu danych)

Po tak zdefiniowanych elementach należy przejść do odpowiedniego modułu, wybieramy przycisk Połączenie >> <Nazwa połączenia> >> <akcja do wykonania>


No image "forte003.jpg" attached to DeployerGuide/Customization/ForteFK
(Rys.7 Przyykładowe pobranie dokumentów)

SyncAssist - eksport danych z eDokumentów do systemu Forte FK

<TODO>

OnTimer() - import i eksport danych do/z Forte HM

Integracja z Forte HM przy pomocy OnTimer()