Czy wiesz, że kontrolkę typu Dane Tabelaryczne można automatycznie wypełnić pozycjami dokumentu zaczytanego przez Comarch OCR przy współpracy z Comarch ERP XL?

image_pdfimage_print

Zastosowanie

Dzięki zastosowaniu tej konfiguracji, proces obiegu faktur kosztowych zyskuje pełną automatyzację. Głównym celem jest eliminacja ręcznego wprowadzania pozycji dokumentów — dane zaczytane przez Comarch OCR są automatycznie mapowane i wypełniają kontrolkę tabelaryczną na kacie obiegu. W efekcie skracamy czas obsługi faktury, minimalizujemy błędy przepisywania i zapewniamy, że proces akceptacji bazuje na poprawnych i spójnych danych przed ich zaksięgowaniem.

 

Zawartość przykładu

  • Definicja Typu Obiegu (Workflow): Wzorcowa ścieżka obiegu dokumentu kosztowego z krokami akceptacji, konfiguracją kontrolki Dane tabelaryczne i wygenerowaniem dokumentu do Comarch ERPXL
  • Punkt konfiguracyjny ACD: Wzorcowa konfiguracja, która jest odpowiedzialna za pobranie ID dokumentu OCR, Załącznika oraz wszystkich kluczowych danych nagłówkowych (NIP, Kontrahent, Dane kontrahenta, Data zakupu, Data wystawienia, Termin płatności, Forma płatności, Waluta) oraz inicjację dokumentu obiegowego.

 

Kliknij tutaj, aby pobrać przykład

 

Zasada działania

Mechanizm opiera się na pobieraniu danych z bazy Comarch BPM, które zostały zapisane po przetworzeniu ich przez Comarch OCR w punkcie ACD.

  • Konfiguracja wykorzystuje ID dokumentu OCR (zapisane w dedykowanej kontrolce typu Liczba całkowita) jako identyfikator do pobrania danych. Kontrolka tabelaryczna obserwuje to pole, reagując na jego wypełnienie.
  • Kluczowym elementem jest zapytanie SQL umieszczone na zakładce Inicjowanie Wartości kontrolki tabelarycznej. Zapytanie jest filtrowane za pomocą parametru @ID_OCR@, dzięki czemu pobiera ono wiersze z właściwego dokumentu OCR z tabeli do.OC_Document_Items w bazie BPM.
  • Na podstawie zwróconych wierszy z tabeli do.OC_Document_Items, kontrolka Dane tabelaryczne jest automatycznie wypełniana pozycjami faktury (Nazwa, Cena, Ilość, Jednostka miary, Netto, Stawka VAT, Brutto, Kwota VAT).
  • W zapytaniu SQL zawarta jest niezbędna logika CASE WHEN, która konwertuje wartości tekstowe (np. Stawki VAT oraz Jednostki miary) na identyfikatory liczbowe, których BPM wymaga do poprawnego działania mechanizmów systemowych i wyświetlania danych.

 

Konfiguracja przykładu

1.Utworzono kontrolkę ID_OCR : Na karcie obiegu dodano kontrolkę typu Liczba całkowita o nazwie (identyfikatorze) ID_OCR, do której będzie zapisywane ID OCR-owanego dokumentu.

 

Kontrolka Liczba całkowita ID_OCR

 

2.Utworzono kontrolkę Tabelaryczną: Dodano kontrolkę typu Dane tabelaryczne o nazwie (identyfikatorze) Elementy i skonfigurowano w niej następujące kolumny:

  • ”Nazwa” (identyfikator kolumny: Nazwa) – typ Tekst
  • ”Cena” (identyfikator kolumny: Cena) typ Liczba stałoprzecinkowa
  • ”Ilość” (identyfikator kolumny: Ilosc) – typ Liczba stałoprzecinkowa
  • ”Jednostka miary” (identyfikator kolumny: JM)  typ Lista
  • ”Netto” (identyfikator kolumny: Netto) – typ Liczba stałoprzecinkowa
  • ”Stawka VAT” (identyfikator kolumny: StawkaVAT) – typ Lista
  • ”Brutto” (identyfikator kolumny: Brutto) – typ Liczba stałoprzecinkowa
  • ”Kwota VAT” (identyfikator kolumny: KwotaVAT) – typ Liczba stałoprzecinkowa

 

Kolumny w kontrolce Dane tabelaryczne

 

3. W kontrolce typu Dane tabelaryczne  na zakładce Listy zdefiniowano zapytanie pobierające:

  • Stawki VAT:

 

select Naz_gidLp as Id,
CASE
WHEN Naz_Nazwa='A 23.00' THEN '23%'
WHEN Naz_Nazwa='B 8.00' THEN '8%'
WHEN Naz_Nazwa='C 0.00' THEN '0%'
WHEN Naz_Nazwa='D 0.00' THEN 'ZW'
WHEN Naz_Nazwa='E 0.00' THEN 'NP'
WHEN Naz_Nazwa='F 7.00' THEN '7%'
WHEN Naz_Nazwa='G 5.00' THEN '5%'
END
from CDN.Nazwy
where Naz_GIDTyp = 624  AND trim(substring(Naz_Nazwa,9,2))=''

 

Lista Stawka VAT w kontrolce Dane tabelaryczne

 

  • Jednostki miary:

 

SELECT Naz_GIDLp,Naz_Nazwa from cdn.Nazwy where Naz_GIDTyp=144;

 

Lista Jednostka miary w kontrolce Dane tabelaryczne

 

4.Dodano obserwację kontrolki: W kontrolce typu Dane tabelaryczne, na zakładce Inicjowanie wartości, dodano powiązanie do kontrolki ID_OCR.

 

Powiązanie do kontrolki ID_OCR

 

5.Zapytanie SQL: W kontrolce typu Dane tabelaryczne, na zakładce Inicjowanie wartości w sekcji Wzór na wartość SQL OD dodano zapytanie, które pobiera dane z tabel do.OC_Document_Items oraz do.OC_Documents na podstawie przekazanego parametru @ID_OCR@ (ID dokumentu OCR). W zapytaniu SQL konieczne jest użycie logiki CASE WHEN do konwersji wartości tekstowych jednostek miary (’szt’) i stawek VAT (np. '23.00′) na odpowiednie identyfikatory liczbowe akceptowane przez Comarch BPM.

 

If @^SenderControlName@ = 'ID_OCR'

Begin

Select

ODI_Name,/*Nazwa*/

ODI_NetUnitPrice, /*Cena netto*/

ODI_Count, /*Ilość*/

CASE

WHEN ODI_Unit='szt.' THEN 1

WHEN ODI_Unit='l' THEN 2

WHEN ODI_Unit='kg' THEN 3

Else 0

END, /*Jednostka miary*/

ODI_NetValue, /* Wartość Netto*/

CASE

WHEN ODI_VatRate='23.00' THEN 1

WHEN ODI_VatRate='8.00' THEN 2

WHEN ODI_VatRate='0.00' THEN 3

WHEN ODI_VatRate='5.00' THEN 7

Else 0

END,

ODI_GrossValue, /*Wartość Brutto*/

[ODI_GrossValue]-[ODI_NetValue], -- kwota VAT

1

from do.OC_Document_Items I

join do.OC_Documents D on D.OCD_Id=I.ODI_DocumentId

where ODI_DocumentId=@ID_OCR@

END

 

Zapytanie SQL w kontrolce Dane tabelaryczne na zakładce Inicjowanie wartości

 

Uwaga
Należy upewnić się, że identyfikatory liczbowe (ID) stawek VATjednostek miary użyte w zapytaniu SQL są zgodne z tymi, które aktualnie obowiązują w bazie Comarch ERP XL współpracującej z Comarch BPM.

 

6.Punkt ACD: W punkcie konfiguracyjnym ACD (Współpraca z Comarch OCR), wykorzystywanym do inicjowania obiegu, na zakładce Kontrolki dodano kontrolkę ID_OCR i przypisano jej odpowiednie zapytanie:

 

select @Id1@

 

Kontrolka ID_OCR w punkcie ACD

 

Uzupełniona Kontrolka Dane Tabelaryczne

Po pomyślnym zainicjowaniu dokumentu z punktu ACD, kontrolka typu Dane Tabelaryczne została automatycznie wypełniona. Dla każdej pozycji dokumentu (faktury) odczytanej przez Comarch OCR i zapisanej w tabeli do.OC_Document_Items, na formularzu BPM pojawił się oddzielny, kompletny wiersz z uzupełnionymi danymi.

 

Kontrolka Dane tabelaryczne uzupełniona pozycjami odczytanym przez Comarch OCR

 

Rozpoczynasz pracę z Comarch BPM (dawniej DMS) i chcesz dowiedzieć się, jak korzystać z programu? A może masz już podstawową wiedzę o Comarch BPM (dawniej DMS) i chcesz dowiedzieć się więcej?

Sprawdź Szkolenia Comarch BPM!

 

 

Czy ten artykuł był pomocny?