Pliki konfiguracyjne

W katalogu roboczym Integratora znajduje się kilka plików w formacie .json. Działanie całego serwisu opiera się o nie. Opisane poniżej plikimuszą mieć stronę kodową UTF-8.

apiSettings.json
W pliku tym znajdują się ustawienia API systemu RaksSQL. Zapewnia ono dostęp do baz danych (Firebird) naszego systemu sprzedażowo-magazynowego.

Przykładowy plik wygląda tak:

{

  “Datasource”: “localhost”,

  “Port”: “”,   

  “DatabaseFolder”: “C:\\Raks\\Integrator\\Dane”,

  “User”: “sysdba”,

  “Password”: “masterkey”,

  “FirmTokens”: {

    “E4426453-6A5B-4DC7-AE65-BEAE67436F4D”: 1

  }

}

Pola:

  • Datasource – serwer bazy danych (jeżeli serwis działa na tej samej maszynie, co serwer bazy danych, to tutaj powinno zostać wpisane localhost).
  • Port – port, na którym działa serwer bazy danych.
  • DatabaseFolder –  ścieżka do bazy danych na maszynie serwera.
  • User – nazwa użytkownika bazy danych (domyślny użytkownik serwera Firebird to sysdba).
  • Password – hasło do bazy danych (domyślnie dla serwera Firebird to masterkey).
  • FirmTokens – lista tokenów do baz danych RaksSQL.

bl.settings.json

Przykładowy plik wygląda tak:

{

  “BaseLinkerURL”: “https://api.baselinker.com/connector.php”,

  “BaseLinkerToken”: “3000742-3003419-4XAHK3RP6GLE25IBM6UV7ZVPMTKDWI”,

  “BaseLinkerStorageId”: “bl_1”,

  “BaseLinkerInventoryId”: “30604”,

  “BaseLinkerPriceGroupId”: “27801”,

  “RaksFirmToken”: “E4426453-6A5B-4DC7-AE65-BEAE67436F4D”,

  “RaksStorageId”: “M1”,

  “DatabaseFolder”: “C:\\Raks\\Integrator\\data”,

  “UploadMaxNumberOfOperationsInPackage”: 100,

  “UploadIntervalBetweenOperationsPackages”: 80,

  “UploadArticlesPriceKindName”: “BaseLinker”,

  “UploadArticlesGroupType”: 0,

  “UploadArticlesGroupId”: 1,

  “UploadArticlesUseSubgroups”: true,

  “UploadArticlesImages”: true,

  “UploadInvoicesSynchronizationStarted”: false,

  “UploadInvoicesSynchronizationInterval”: 60,

  “UploadInvoicesNumberingSerie”: “SQL”,

  “UploadInvoicesStatusToSend”: “BaseLinker – do wysłania”,

  “UploadInvoicesStatusSent”: “BaseLinker – wysłana”,

  “UploadInvoicesNumberInto”: 2,    

  “DownloadArticlesCategoryId”: 2210008,

  “DownloadArticleGroupType”: 0,

  “DownloadArticleGroupId”: 158,

  “DownloadArticlesUseSubcategories”: true,

  “DownloadArticlesImages”: true,

  “DownloadOrdersSynchronizationStarted”: false,

  “DownloadOrdersSynchronizationInterval”: 30,

  “DownloadOrdersDocumentCode”: “BL”,

  “DownloadOrdersNumberInto”: 1,

  “DownloadOrdersLink”: “https://panel-d.baselinker.com/orders.php#order:”,

  “DownloadOrderReservation”: true,

  “DownloadOrderReservationToStock”: true,      

       “AutoBindBaseLinkerFieldIndex”: 0,

  “AutoBindRaksFieldIndex”: 0,

  “OrdersStatusNames”: {

    “0”: “Do zamówienia”,

    “1”: “Zaimportowane”,

    “2”: “Błąd zamówienia”,

    “3”: “Brak towaru”,

    “4”: “Zafakturowane”,

    “5”: “Do wysłania”

  },

  “OrdersDeliveryArticleCodes”: {

    “Odbiór własny”: {

      “ArticleId”: 16,

      “ShortName”: “001/US”,

      “Name”: “Pakowanie prezentów”,

      “TaxRate”: 23

    },

    “Transport kurierski”: {

      “ArticleId”: 2,

      “ShortName”: “Usługa transportowa”,

      “Name”: “Transport firmą kurierską”,

      “TaxRate”: 23

    }

  }

}

Pola:

  • BaseLinkerURL
    Adres API serwisu BaseLinker.
  • BaseLinkerToken
    Token do konta serwisu BaseLinker.
  • BaseLinkerStorageId
    Identyfikator magazynu w serwisie BaseLinker.
  • BaseLinkerInventoryId
    Identyfikator katalogu w serwisie BaseLinker.
  • BaseLinkerPriceGroupId
    Identyfikator grupy cenowej w serwisie BaseLinker.
  • RaksFirmToken
    Token firmy RaksSQL, na którym ma pracować integracja z BaseLinker (zgodny z tym, co znajduje się na liście FirmTokens w api.settings.json).
  • RaksStorageId
    Identyfikator magazynu z wybranej firmy RaksSQL.
  • DatabaseFolder
    Katalog na bazy danych SQLLite (przechowujące relacje pomiędzy danymi z BaseLinker i RaksSQL).
  • UploadMaxNumberOfOperationsInPackage
    Maksymalna liczba operacji wysyłki danych do serwisu BaseLinker w jednym pakiecie (serwis BaseLinker ma limit 100 operacji na minutę).
  • UploadIntervalBetweenOperationsPackages
    Odstęp czasowy (w sekundach) pomiędzy kolejnymi pakietami operacji wysyłki do serwisu BaseLinker.
  • UploadArticlesPriceKindName
    Nazwa rodzaju ceny z RaksSQL, która będzie używana do wysyłki cen produktów do BaseLinker.
  • UploadArticlesGroupType
    Rodzaj grupy artykułów, która jest używana do dodawania kategorii produktów do BaseLinker podczas wysyłania grup z RaksSQL:

       0 – grupa podstawowa

       1 – grupa dodatkowa

  • UploadArticlesGroupId
    Identyfikator grupy (podstawowej lub dowolnej), która jest używana do dodawania kategorii produktów do BaseLinker.
  • UploadArticlesUseSubgroups
    Określa czy przy wysyłce grup artykułów do BaseLinker mają być wysyłane także grupy podrzędne do wybranej.
  • UploadArticlesImages
    Określa czy przy wysyłce artykułów do BaseLinker mają zostać wysłane także ich zdjęcia.
  • UploadInvoicesSynchronizationStarted
    Opisuje czy włączona jest automatyczna synchronizacja faktur (wysyłka do BaseLinker).
  • UploadInvoicesSynchronizationInterval
    Odstęp czasowy (w sekundach) pomiędzy kolejnymi próbami wysyłania faktur do zamówień z RaksSQL do BaseLinker w przypadku, jeżeli włączona jest ich automatyczna synchronizacja.
  • UploadInvoicesNumberingSerie 
    Seria numeracyjna faktur z BaseLinker.
  • UploadInvoicesStatusToSend
    Status dokumentów sprzedaży z RaksSQL, które mają być wysyłane do BaseLinker.
  • UploadInvoicesStatusSent
    Status dokumentów sprzedaży z RaksSQL, który ma zostać ustawiony po skutecznym wysłaniu dokumentu do BaseLinker.
  • UploadInvoicesNumberInto

Kod pola dodatkowego w zamówieniu BaseLinker, do którego ma trafić numer paragonu/faktury z RaksSQL po wysłaniu (załączeniu) jej do zamówienia BaseLinker:

            0 – numer paragonu/faktury nie jest przenoszony do BaseLinker

      1 – numer paragonu/faktury przenoszony jest do pola dodatkowego 1

  • – numer paragonu/faktury przenoszony jest do pola dodatkowego numer 2
  • DownloadArticlesCategoryId
    Identyfikator kategorii produktów z BaseLinker, która zostanie pobrana do RaksSQL (do grup lub grup dowolnych artykułów).
  • DownloadArticleGroupType
    Rodzaj grupy artykułów, do której pobierane są kategorie produktów z BaseLinker:

       0 – grupa podstawowa

       1 – grupa dodatkowa

  • DownloadArticleGroupId
    Identyfikator grupy (podstawowej lub dowolnej), która jest używana do dodawania kategorii produktów do BaseLinker.
  • DownloadArticlesUseSubcategories
    Określa czy przy wysyłce grup do BaseLinker mają być wysyłane także grupy podrzędne do wybranej.

  • DownloadArticlesImages
    Określa czy przy wysyłce produktów do BaseLinker.
  • DownloadOrdersSynchronizationStarted
    Określa czy włączona jest automatyczna synchronizacja zamówień z BaseLinker.
  • DownloadOrdersSynchronizationInterval
    Odstęp czasowy (w sekundach) pomiędzy kolejnymi próbami ściągania nowych potwierdzonych zamówień z serwisu BaseLinker w przypadku, jeżeli włączona jest ich automatyczna synchronizacja.
  • DownloadOrdersDocumentCode
    Kod dokumentu zamówienia od odbiorców z RaksSQL, który ma być używany do wystawiania nowego zamówienia podczas importu z BaseLinker.
  • DownloadOrdersNumberInto
    Kod pola dodatkowego w zamówieniu BaseLinker, do którego ma trafić numer zamówienia z RaksSQL po zaimportowaniu go do naszej bazy:

                        0 – numer zamówienia nie jest przenoszony do BaseLinker

      1 – numer zamówienia przenoszony jest do pola dodatkowego 1

                        2 – numer zamówienia przenoszony jest do pola dodatkowego numer 2

  • DownloadOrdersLink
    Format linku do zamówienia BaseLinker. Jest on używany do generowania odnośnika do zamówienia używanego potem w kartotece zamówień od odbiorców w RaksSQL do uruchomienia podglądu źródłowego zamówienia z BaseLinker.
  • DownloadOrderReservation
    Określa czy ma być dodawana rezerwacja w RaksSQL.
  • DownloadOrderReservationToStock
    Określa rezerwacja w RaksSQL ma być do wartości stanu magazynowego danego produktu.
  • AutoBindBaseLinkerFieldIndex
    Kod pola, które ma zostać użyte do powiązania produktu BaseLinker z artykułem RaksSQL, przy wywołaniu opcji wiązania:

         0 – SKU

         1 – EAN

  • AutoBindRaksFieldIndex
    Kod pola, które ma zostać użyte do powiązania artykułu RaksSQL z produktem BaseLinker, przy wywołaniu opcji wiązania:

         0 – INDEKS 1

      1 – INDEKS 2

            2 – EAN

  • OrdersStatusNames  l
    Lista statusów z BaseLinker, które mają być ustawione w zamówieniu na kolejnych etapach jego przetwarzania:

            0 – zamówienia przeznaczone do importu do RaksSQL

            1 – zamówienia zaimportowane do RaksSQL

            2 – zamówienia, w których wystąpił błąd podczas importu do RaksSQL

            3 – zamówienia, w których wystąpił problem z dostępnością towaru w RaksSQL

            4 – zamówienia, do których załączono dokumenty sprzedażowe z RaksSQL

            5 – zamówienia przeznaczone do wysyłki (na razie nie jest używane)

  • OrdersDeliveryArticleCodes
    Definicje usług w RaksSQL, które są używane do zdefiniowania zamówienia importowanego do systemu sprzedażowo-magazynowego.

bl.token.json

Token dostępu do API Integratora. Jeżeli użytkownicy chcieli by napisać sobie własne aplikacje czy serwisy, które miały by korzystać z API (wywoływać żądania serwisu aplikacyjnego) naszego Integratora, to muszą one znać ten token i przekazywać go w nagłówkach wysyłanych żądań jako parametr o nazwie Authorization.

Przykładowy plik wygląda tak:

{“Value”: “D5AA61E4-F083-4C7D-AC77-B34DC9EAF76E”}

integrator.password.json

Hasło dostępu do Konfiguratora. Można je zmienić poprzez opcję „Zmień hasło” w Konfiguratorze. Jego domyślna wartość to admin.

Przykładowy plik wygląda tak:

{“Value”: “admin”}

integrator.settings.json

Ustawienia konfiguracyjne Integratora.

Przykładowy plik wygląda tak:

{

  “BaseURL”: “http://*:5000/”,

  “LogDebug”: false,

  “LogDirectory”: “C:\\Raks\\Integrator\\log”,

  „LogFileName”: “integrator.log”,

  “LogArchiveDirectory”: “C:\\Raks\\Integrator\\log\\archive”,

  “LogArchiveFileName”: “{#}_integrator.log”,

  “LogMaxArchiveFiles”: 10,

  “LogMaxFileSize”: 50,

  “LogPageSize”: 200

}

Pola:

  • BaseURL –  adres i port na jakim ma się uruchomić Integrator.
  • LogDebug – szczegółowe/serwisowe logowanie aktywności serwisu.
  • LogDirectory – katalog na pliki z logami serwisu.
  • LogFileName –  nazwa aktualnego pliku logu.
  • LogArchiveDirectory – katalog na pliki archiwalne logów serwisu.
  • LogArchiveFileName – maska nazwy pliku archiwalnego ({#} – kolejne numery w narastającej numeracji).
  • LogMaxArchiveFiles – maksymalna liczba plików archiwalnych.
  • LogMaxFileSize – maksymalny rozmiar pliku logu (w MB).
  • LogPageSize – maksymalny rozmiar strony danych (w KB) z log-ów pokazywanych w Konfiguratorze.