1. Strona główna
  2. Dokumentacja
  3. Integracja z Comarch ERP ...
  4. Opis integracji
  5. Techniczny opis integracji z Comarch ERP Optima

Techniczny opis integracji z Comarch ERP Optima

Szukasz API do Comarch Optima? Zobacz tutaj

Wymagania:

  • Konto Windows z uprawnieniami administratora.
  • Konto Windows musi posiadać dostęp do dodawania wpisów do Harmonogramu zadań.
  • Konto Windows musi mieć możliwość uruchomienia zadania w harmonogramie zadań.
  • Aplikacja działa w harmonogramie ponieważ API Comarch nie zapewnia bezbłędnego działania jako usługa.
  • Aplikacja komunikuje się po protokole HTTPS (można użyć własnego certyfikatu).
  • Wymagane jest stałe IP.
  • Port wskazany w konfiguracji musi być otwarty na IP Futuriti (193.239.184.2).
  • Webservice instalowany jest na serwerze, na którym zainstalowany jest system ERP.
  • Użytkownik SQL na którym działa aplikacja powinien posiadać minimum uprawnienia w roli CDN i CDNRaport na bazie firmowej i konfiguracyjnej. Na dole strony prezentujemy jak można nadać odpowiednie uprawnienia. 
  • Wymagana wersja serwera SQL: SQL Server 2012 (11.x) lub wyższa.
  • Uwaga: Na czas instalacji użytkownik SQL powinien posiadać uprawnienia które zezwalają na wprowadzenie poniższych zmian na bazie.

Dobre praktyki:

  • Konto Windows powinno być dedykowanym wyłącznie dla WebService, np.: xSale, dzięki temu unikamy „podkradania” sesji,
  • Konto w Comarch Optima powinno być dedykowanym wyłącznie dla WebService np. xSale, dzięki temu dokumenty wprowadzane do Comarch ERP Optima są zawsze na dedykowanym operatorze,
  • Licencje Comarch Optima dla integracji powinny być wydzielone na osobny klucz i przypisane na wyłączność dla ww. użytkownika optima, dzięki temu unikamy braku licencji podczas pracy, który powoduje m.in. brak synchronizacji dokumentów.

Zmiany pod bazą danych wprowadzane podczas intalacji:

dodanie funkcji:

  • [CDN].[ALPOL_GetDocumentByShipmentWaybill] 
  • [CDN].[ALPOL_GetSalesDocumentIdByDocumentId]
  • [CDN].[ALPOL_fnTwrGrupyAtomStore]
  • [CDN].[ALPOL_GetBaseSalesStocks]
  • [CDN].[ALPOL_GetRecipeQuantity]
  • [CDN].[ALPOL_GetRecipeQuantityInt]

Obiekty do których użytkownik SQL musi mieć dostęp modyfikacji:

  • [CDN].[TraNag] (tylko „TrN_NrListuPrzewozowego” – brak możliwości zmiany poprzez „CDN API”)
  • [CDN].[DefAtrybuty] (ze względów wydajnościowych)
  • [CDN].[DokAtrybuty] (ze względów wydajnościowych)

Obiekty do których użytkownik SQL musi mieć dostęp odczytu:

  • CDN.TwrGrupy
  • CDN.Grupy
  • CDN.TraNag
  • CDN.TraElem
  • CDN.DokAtrybuty
  • CDN.TraNagRelacje
  • CDN.Powiazania
  • CDN.WdrPodlaczeniaZestawow
  • CDN.WdrPodlaczeniaWydrukow
  • CDN.Wydruki
  • CDN.WdrZestawy
  • CDN.DefAtrybuty
  • CDN.TwrGrupyView
  • CDN.DefCeny
  • CDN.Magazyny
  • CDN.DaneBinarneLinki
  • CDN.TwrAtrybuty
  • CDN.zamienniki
  • CDN.towary
  • CDN.twrkarty
  • CDN.TwrGrupaPelnaNazwa(g.TwG_GrONumer)
  • CDN.TwrJMZ
  • CDN.ZstPromocje
  • CDN.AtrybutyKlasy
  • CDN.TwrPromocje
  • CDN.Atrybuty
  • CDN.KntPromocje
  • CDN.KntGrupy
  • CDN.PrmKarty
  • CDN.FrsPromocje
  • CDN.FrmStruktura
  • CDN.AtrybutyHist
  • CDN.TwrGrupyDom
  • CDN.TwrIlosci
  • CDN.ProdReceptury
  • CDN.ProdSkladniki
  • CDN.ALPOL_IntList
  • CDN.ALPOL_GetRecipeQuantityInt()
  • CDN.ALPOL_GetRecipeQuantity()
  • CDN.Producenci
  • CDN.ALPOL_fnTwrGrupyAtomStore()
  • CDN.TwrCeny
  • CDN.DaneKadMod
  • CDN.DokRelacje
  • CDN.Kontrahenci
  • CDN.FromClarionDate
  • CDN.KntAtrybuty
  • CDN.SchematPlatnosci
  • CDN.BnkNazwy
  • CDN.DokAtrybuty
  • CDN.KntOsoby
  • CDN.PracEtaty
  • CDN.Operatorzy
  • CDN.BnkZdarzenia
  • CDN.DokNagPliki
  • CDN.DaneBinarne
  • CDN.StanowiskaKomp
  • CDN.FormyPlatnosci
  • CDN.Zamienniki
  • CDN.Powiazania
  • CDN.TypDokumentu(TrN_TypDokumentu)
  • CDN.BnkZapisy
  • CDN.BnkRozRelacje
  • CDN.BnkRozKwoty
  • CDN.DokDefinicje
  • CDN.ALPOL_GetDocumentByShipmentWaybill ()
  • CDN.ALPOL_GetSalesDocumentIdByDocumentId ()
  • CDN.Kategorie
  • CDN.PodmiotyView
  • CDN.KntOsoby
  • CDN.PracKod
  • CDN.Rabaty

Sposób pracy integracji z Comarch ERP Optima:

  • obiekty do systemu Comarch ERP Optima są wprowadzane poprzez CDN API
  • integracja dodaje do systemu:
    • Towary
    • Kontrahenci
    • Adresy
    • Definicje atrybutów
    • Atrybuty
    • Płatności
    • Rezerwacje odbiorcy
    • Inne dokumenty handlowe
    • Inne dokumenty magazynowe
  • Synchronizacja obiektów jest przeprowadzona na podstawie daty ostatniej modyfikacji. Wyjątkiem są stany magazynowe które są synchronizowane na podstawie change-logów.
  • Synchronizacja towarów i wszystkich powiązanych elementów jest realizowana po kodzie.

Lokalizacja instalacji: \!Futuriti_Programy\Futuriti Webservice Optima

Lokalizacja backupu: \!Futuriti_Backup

Wymagania minimalne serwera:

  • Takie same jak wymagania aktualnie zainstalowanej wersji Comarch ERP Optima, natomiast ze względu na skalę działania wymagania dotyczące zasobów mogą być wielokrotnie wyższe.
  • Serwer powinien pracować nieprzerwanie. Wyłączenie serwera „na noc” może powodować problemy z synchronizacją. 

Wersje:

  • Integracja jest udostępniania do trzech ostatnich wersji Comarch Optima.

Jeśli nie wiesz czy Twoja wersja ERP jest obsługiwana przez xSale, skontaktuj się z pomocą techniczną lub handlowcem.

Przykładowy skrypt nadający uprawnienia w roli CDN i CDNRaport na bazie firmowej i konfiguracyjnej.

USE [CDN_Futuriti_2021_4]ALTER ROLE [CDN] ADD MEMBER [WebserviceOptima];
ALTER ROLE [CDNRaport] ADD MEMBER [WebserviceOptima];


USE [CDN_KNF_Konfiguracja_2021_4]ALTER ROLE [CDN] ADD MEMBER [WebserviceOptima];
ALTER ROLE [CDNRaport] ADD MEMBER [WebserviceOptima];

Można nadać też wyższe uprawnienia.

Uprawnienia można nadać lub zweryfikować także z poziomu SQL Management Studio. Wybrać bazę/zakładka security/na użytkowniku Properties/Membership: