Skip to content

Interfejs Sfera

Integracja z systemem rewizor platformaCRM/ERP za pomocą Rewizor Sfera

Wymagania

  1. zainstalowany REWIZOR + SFERA z aktywną licencja sfera lub wersja testowa

    W Przypadku wersji testowej:

    • Przy uruchamianiu rewizora założyć nowy podmiot z przykładowymi danymi
    • Rewizor + Sfera można pobrać - 14 dniowa wersja testowa
    • Co 14 dni trzeba dodać nowy podmiot wtedy okres testowy jest od nowa
    • Trzeba aktywować sferę (Glob) Aktywuj wersję próbną > Ekran REwizora
    • Dokumentacja jest po naciśnięciu globu na dole po rozwinięciu (jest dużo przykładów w VBA)
  2. instalacja biezacej wersji https://github.com/paanda-io/tools-platformaERPToRewizor/releases

    • uzupełnienie settings.json (patrz niżej)
    • net framework 4.7

settings.json

Struktura pliku konfiguracyjnego, po prawidłowym uruchomieniu generowany jest zaszyfrowany plik settings.json.enc. Plik settings.json można usunąć.

JSON
{
  "rewizorOperator": "Szef",
  "rewizorOperatorHaslo": "xxxxxxxxxxxxxx",
  "rewizorRejestrSprzedazy": "1", // 0 jesli wyłączony eksport
  "rewizorRejestrMagazyn": "4",   // 0 jesli wyłączony eksport
  "rewizorOknoWidoczne": "true",  // uruchomienie diagnostyczne wyswietla dekret przed zapisaniem
  "platformaConnectionString": "Data Source=XXXXXXXXX;Initial Catalog=XXXXXXXXX;User ID=XXXXXXXXX;Password=XXXXXXXXX;",
  "rewizorConnectionString": "Data Source=XXXXXXXXX;Initial Catalog=XXXXXXXXX;User ID=XXXXXXXXX;Password=XXXXXXXXX",
  "loop" : 0  // 0 jeśli jednorazowe uruchomienie
}

Jak to działa

  1. Użytkownik platformaCRM/ERP wybiera dokumenty do dekretacji

    • platformaCRM {host}/sales-met/accounting?new=true

    System generuje zapis w obiekcie [accounting].[export] zawierający dekret i zrzut dokumentu z dodatkowymi informacjami, grupami asortymentowymi, konfiguracją księgową umożliwiający przygotowanie własnego dekretowania

    image

  2. Dokumenty są przetwarzane przez aplikacje platformaERPToRewizor i zapisywane w bazie danych

    Aplikacja pobiera dane używając procedury [accounting].[exportList] :

    • Eksport następuje tylko jeśli sa dokumenty do eksport
    • W procedurze można zastosować własną logike eksportu
  3. Dokumenty select top 100 * from [accounting].[export] order by exportid desc

    - [exportID] - numer id kolejny - [exportXML] - xml z dekretem w starym formacie - [exportXMLDocument] - pełny dokument w formacie xml umożliwia przygotowanie własnej logiki dekretu - [exportMsg] - informacja o błędzie przy eksporcie - [exportDate] - informacja o dacie eksportu - [exportInfo] - nr dokumentu - [remoteID] - ID dokumentu platformaERP - [remoteSource] - typ dokumentu , document -magazyn , invoice -faktura sprzedaży - [addDate] - dodał - [addUsername] - [status] - -1 usunięte - 0 - gotowy do eksportu - 1 - wolny - 2-5 błąd ustawiany przez exporter - 6-9 błąd ustawiany przez system - 10 - przetworzone poprawnie przez eksporter do właściwego FK Enova, Rewizor, Teta

    Po eksporcie do właściwego systemu fk uzupełniane są

    - [exportMsg] - informacja o ew błędzie jeśli jest - [exportDate] - informacja o dacie eksportu - [status] - zgodnie z opisem wyżej

  4. System można uruchamiać np za pośrednictwem Harmonogramu zdarzeń co interwał czasowy.

Minimalna Struktura dekretu [accounting].[export].[exportXML]

Uwaga tylko jeden wpis per strona.

  • grossInCurrencyDebet - kwota Wn
  • grossInCurrencyCredit - kwota Ma
XML
<request>
  <document>
    <vatEntries>
      <vatEntry>
        <symbol>23</symbol>
        <vatRate>23</vatRate>
        <net>3115.50</net>
        <vat>716.57</vat>
        <gross>3832.07</gross>
      </vatEntry>
    </vatEntries>
    <entries>
      <entry>
        <grossDebet>3832.07</grossDebet>
        <grossInCurrencyDebet>3832.07</grossInCurrencyDebet>
        <syntheticAccountDebet>200-[dostawca]</syntheticAccountDebet>
        <grossInCurrencyCredit>0.00</grossInCurrencyCredit>
        <syntheticAccountCredit />
        <currency>PLN</currency>
        <exchangeRate>1.0000</exchangeRate>
      </entry>
      <entry>
        <grossDebet>0.00</grossDebet>
        <grossInCurrencyDebet>0.00</grossInCurrencyDebet>
        <syntheticAccountDebet />
        <grossInCurrencyCredit>716.57</grossInCurrencyCredit>
        <syntheticAccountCredit>222-23</syntheticAccountCredit>
        <currency>PLN</currency>
        <exchangeRate>1.0000</exchangeRate>
      </entry>
      <entry>
        <grossDebet>0.00</grossDebet>
        <grossInCurrencyDebet>0.00</grossInCurrencyDebet>
        <syntheticAccountDebet />
        <grossInCurrencyCredit>3115.50</grossInCurrencyCredit>
        <syntheticAccountCredit>730</syntheticAccountCredit>
        <currency>PLN</currency>
        <exchangeRate>1.0000</exchangeRate>
      </entry>
    </entries>
  </document>
</request>