Importowanie dokumentów
Podsumowanie:Akcja pozwala importować dane z tabeli pomocniczej do tabeli dokumentu biznesowego w modelu standardowym lub uproszczonym. W akcji należy zdefiniować zapytanie SQL zwracające dane oraz skonfigurować mapowanie kolumn. Dane zwracane przez zapytanie SQL mogą także zostać użyte do zasilenia kolumn systemowych. Możliwe jest także wypełnienie tych kolumn stałymi wartościami.
☛ AdminSPA >
NARZĘDZIA
>Akcje
>Importowanie dokumentów

Oprócz właściwości wspólnych dla wszystkich akcji, w akcji importu dokumentów należy określić następujące właściwości:
SQL
: zapytanie zwracające dane z tabeli pomocniczej, którymi zostaną wypełnione kolumny użytkownika i kolumny systemowe w tabeli powiązanej ze wskazaną definicją dokumentu. W zapytaniu można używać składni smart numbers oraz zmiennych odwołujących się do kontekstu formularza ({@Nazwa}).
Zapytanie musi zwrócić kolumnę z identyfikatorem importowanych rekordów na potrzeby audytu/raportowania.
Kolumny dostępne do mapowania na pola dokumentu
: nazwy kolumn, które należy powiązać z kolumnami w tabeli dokumentu biznesowego. Do nazw zwracanych przez zapytanie jest dodawany przedrostek Import_.
Dokument biznesowy
: nazwa definicji dokumentu, do której tabeli zostaną zaimportowane dane z tabeli pomocniczej.
Tabela mapowania kolumn:
Parametry użytkownika/systemowe
:
-
Nazwa parametru
: nazwa kolumny użytkownika/systemowej w docelowej tabeli dokumentów. -
Wartość
: pole wprowadzania typy txt/sql, w którym można wpisać:- odwołanie do kolumny w tabeli źródłowej w formie {@Import_nazwa}
- wartość stałą, odwołanie do kontekstu formularza, wyrażenie smart numbers
- zapytanie SQL
Wartości statusu dla importowanych dokumentów muszą odpowiadać blokom Zadanie ręczne na diagramie procesu. Statusy innych bloków nie są obsługiwane. Planowane jest dodanie obsługi importu dla bloku oczekiwania.
Jeśli kolumna Status w tabeli docelowej nie zostanie wypełniona, akcja wypełni ją identyfikatorem statusu dla pierwszego kroku wychodzącego z bloku Start.
Transakcyjność wykonywania akcji
:
-
wszystkie rekordy
: import wszystkich rekordów zwróconych przez zapytanie wykonuje się w transakcji; niepowodzenie w imporcie jednego rekordu oznacza niepowodzenie całej transakcji. -
rekord po rekordzie
: niepowodzenie importu jednego rekordu nie ma wpływu na import pozostałych rekordów.
Historia importu
Historia importu dokumentów biznesowych jest zapisywana w dwóch tabelach systemowych:
core.BatchImportHistory:
- BatchProcessId: GUID danego procesu importu
- BatchId: identyfikator zbioru akcji z akcją importu
- ImportedBy: GUID użytkownika wywołującego akcję
- ImportDatetime: czas wywołania akcji
- ImportActionRowGuid: GUID użytej akcji importu dokumentów
- TargetBusinessDocumentGUID: GUID docelowej definicji dokumentu biznesowego
core.BatchImportHistoryElements:
- Id: klucz główny
- BatchImportHistoryId: GUID danego procesu importu
- SourceRecordId: identyfikator importowanego rekordu; musi być zwracany przez zapytanie SQL w akcji\
- BatchImportStatus: status importu (wartości: Success, Error, Skip)
- ErrorMessage: komunikat o błędzie
Operacja importu dokumentów jest rejestrowana w danych audytowych dokumentów biznesowych w ramach zdarzenia Dokument - zaimportowanie. To zdarzenie jest domyślnie włączone dla nowych i już istniejących dokumentów.
Zalecenia dotyczące wydajności
-
Przygotować dane źródłowe w taki sposób, aby zawierały numer dokumentu, i zmapować te dane na kolumnę Code; funkcja autonumeracji znacząco obniża wydajność operacji wsadowego importu dokumentów.
Numer dokumentu musi być niepowtarzalny w całej tabeli modelu danych.
- Mapując wartości importowanych danych na kolumny tabeli dokumentu nie należy korzystać z trybu SQL, który generuje dodatkowe podzapytania obniżające wydajność; kolumny zapytania SQL zwracającego dane źródłowe ({@Import_nazwa}) są dostępne również w trybie TXT. Na przykład zamiast :
<SQL> SELECT 'Code: ' + {@Import_DocNo}
należy użyć metody<TXT> Code: {@Import_DocNo}
. - W przypadku, kiedy wymagane są bardziej zaawansowane operacje na importowanych danych, zaleca się wykonanie tych operacji na etapie przygotowania danych do importu.
- W razie problemów z wydajnością akcji importu przy włączonej obsłudze uprawnień ACL zaleca się, aby import wielu dokumentów wykonywać w paczkach jako zadanie cykliczne.
Powiązane tematy: