Tworzenie dokumentu DOCX z użyciem szablonu
W poniższym przykładzie opisane zostało jak utworzyć pakiet przetwarzania, który wygeneruje dokument WORD na podstawie wcześniej stworzonego szablonu oraz danych wczytanych z pliku CSV.

Import dokumentów
- Przejdź do archITekt Studio i wczytaj wcześniej przygotowane szablony dokumentów wraz ze strukturą danych dokumentu.

- Widok w serwerze wersji po imporcie plików.

Wczytanie pliku CSV z danymi
- Wybierz menu Plik, a następnie Nowy>pakiet przetwarzania.
- Zostanie wyświetlony edytor pakietu oraz zakładka Przybornik wraz z bloczkami do tworzenia graficznego przedstawiania pakietu.
- Przeciągnij na edytor bloczek Wczytanie z pliku CSV.
- Przejdź do szczegółów bloczka - kliknij dwukrotnie w bloczek lub przejdź na zakładkę Szczegóły.
- Wczytaj plik i w wyświetlonym oknie wybierz Tak. Ważne aby wybrać odpowiednie kodowanie.

- Następnie należy określić separator używany w pliku CSV (w tym przypadku
,), a kolejno strukturę danych na podstawie wiersza z pliku (w tym przypadku wiersz numer 1). - Przejdź na zakładkę Tabela, zaznacz wiersz z nagłówkiem i wybierz przycisk Wyznacz strukturę danych na podstawie wiersza.

- Na panelu Schematy można zobaczyć jak wygląda wynikowy schemat po wczytaniu danych z pliku CSV.

- Dodaj bloczek Podgląd danych (bloczek znajduje się w kategorii Narzędzia projektowe) i połącz go z bloczkiem Wczytywanie z pliku CSV. Jest to działanie opcjonalne celem sprawdzenia wyniku wczytywania pliku.
- Uruchom pakiet, wciskając klawisz F5 lub z menu górnego opcję Uruchom.
- Po uruchomieniu pakietu można podglądnąć wyniki wykonania, otwierając edytor dla bloczka Podgląd danych.

Utworzenie dokumentu
- Dodaj bloczek Utworzenie dokumentu.
- Jeżeli nie został wyznaczony automatycznie to wyznacz korzeń danych wejściowych, czyli rekord w strukturze danych, który będzie zawierał dane źródłowe.
- Przejdź w szczegóły bloczka i zaznacz rekord i kolejno wybierz podświetlony na żółto przycisk Wybierz korzeń.

- W tym momencie pojawia się dodatkowa struktura odpowiedzialna za przechowywanie informacji potrzebnych przy tworzeniu dokumentów:

- Przejdź na Właściwości bloczka i wybierz szablon z serwera wersji.

-
W schemacie danych pojawia się struktura zaciągnięta z szablonu.
-
Następnie pustą strukturę z pliku szablonu należy połączyć ze strukturą danych z pliku CSV.
-
Przeciągnij pole na schemacie z pliku na odpowiadające mu pole z szablonu i z menu kontekstowego wybierz Ustaw źródło.

- Po rozpoczęciu przetwarzania, dane są zapisywane w
document_output\contentMożna to sprawdzić dodając bloczek Podgląd danych.


Zapis dokumentu
- W celu zapisu wygenerowanych plików na dysku użyj bloczka Uruchamianie kodu (zapis wygenerowanych dokumentów na dysk nie jest działaniem standardowym, zwykle wyniki generowania dokumentów zapisuje się do pól binarnych bazy danych).
- Przeciągnij bloczek i przejdź do jego szczegółów.

- Użyj funkcji
WriteFIle()i wskaż ścieżkę i nazwę dokumentu oraz format i dane binarne dokumentu:
/Faktura_"+[NazwaKontrahenta]+"."+document_output\format,document_output\content
Tworzenie dokumentu z wykorzystaniem pobierania danych z bazy
W podobny sposób jak to zostało opisane podczas tworzenia dokumentu WORD z wykorzystaniem danych pobranych z pliku CSV można zbudować pakiet przetwarzania, w którym dane do dokumentu zostaną zasilone danymi z bazy danych.
- W tym przykładzie na szablonie dokumentów chcemy wyświetlić raport dotyczący klienta wraz z listą wniosków do niego przypisanych.

- W bazie danych jest zdefiniowana tabela KLIENT oraz tabela WNIOSEK, która posiada relację do danych klienta.


- Utwórz pakiet przetwarzania.
- W celu pobrania danych z bazy przeciągnij bloczek Odczyt z bazy na obszar roboczy.
- Przejdź na zakładkę Szczegóły bloczka i wpisz zapytanie SQL aby pobrać dane klienta z tabeli
KLIENT

- Przeciągnij na obszar roboczy bloczek Loop join i połącz go z bloczkiem odczytu z bazy danych klienta.
- Bloczek Loop Join umożliwia dołączanie wyników zapytania z dodatkowego źródła do rekordów z źródła pierwotnego. W tym przypadku do danych klienta chcemy dołączyć jego wnioski z tabeli
WNIOSEK - Okno Dane wejściowe z portu ‘Input’ przedstawia widok podglądowy schematu elementów danych wejściowych pochodzących z pierwszego źródła. Okno obok umożliwia przedstawienie zapytania do portu ‘QueryInput’– dane z dodatkowego źródła. Jedynie dane spełniające zadane wymagania zostaną przepuszczone.
- Przejdź do szczegółów bloczka i przenieś pole
K_IDna prawą stronę do portu wyjściowego.


- Przeciągnij kolejny bloczek Odczyt z bazy w celu pobrania danych wniosku.
- Przejdź na szczegóły bloczka Odczyt z bazy - Wnioski_klienta i w zapytaniu SQL wprowadź warunek, po którym dane mają zostać złączone z pierwszym źródłem danych. Chcemy aby wnioski były wyświetlane w dokumencie w kontekście klienta, dla którego generowany będzie dokument. W tym przypadku dane z tabeli
KLIENTiWNIOSEKsą ze sobą powiązane relacją - Poprzeciągaj odpowiednie pola do zapytania lub wpisz zapytanie
SELECT * FROM dbo.WNIOSEK where W_KLIENT_ID = #(K_ID)#

- Następnie dodaj bloczek Utworzenie dokumentu i wczytaj dokument na panelu Właściwości oraz bloczek Uruchomienie kodu i zdefiniuj gdzie zapisać dokument. Analogicznie jak w poprzednim przykładzie.
- Podczas definiowania źródła danych dla pól z dokumentu poprzeciągaj pola ze struktury danych na pola z dokumentu analogicznie jak w poprzednim przypadku. Pola z bazy
KLIENT(rekord Dane_klienta) na pola ze struktury dokumentu Klient. - Wybierz z menu kontekstowego Ustaw źródło.

- Rekord Wnioski_klienta jest rekordem wielokrotnym i odpowiada danym z dokumentu z tabeli
Wniosek - Należy tutaj pamiętać aby na odpowiedni rekord zmapować dane. Zależy to od tego w jaki sposób zostały wstawiane pola ze struktury danych dokumentu do szablonu. W tym przypadku w dokumencie została utworzona relacja z tabeli Klient do tabeli Wniosek RELWNIOSEK i po tej ścieżce zostały wstawione pola w znacznikach do dokumentu.
- W tym przypadku aby poprawnie zmapować dane przenieś rekord Odczyt z bazy - WNIOSEK na rekord RELWniosek i wybierz opcję Sklonuj.

- Następnie sklonowane dane przenieś na pola z dokumentu i wybierz z menu kontekstowego opcję Ustaw źródło.

Zapis dokumentu do bazy danych
- Dodaj bloczek Zapis do bazy danych (kategoria Bloczki wyjściowe).
- Na rekordzie głównym zacznij wpisywać Klient i wybierz do jakiej bazy zapisać dane czyli do
dbo.KLIENT

- Oznacz rekord Klient adnotacją Zapis rekordu do bazy danych (z menu kontekstowego wybierz opcję Zmień/użyj rekordu). Po wykonaniu akcji na drzewie powinny pojawić się nowe pola sugerujące jakie dane powinny znaleźć się w bazie danych.
- Na adnotacji na rekordzie zapisu do bazy danych wybierz typ akcji jako Auto:InsertUpdate
- Oznacz pole
K_IDadnotacją Klucz główny.

- Z rekordu
document_outputprzeciągnij pole binarne content na pole ze struktury KlientK_RAPORTi wybierz z menu kontekstowego Ustaw jako źródło danych. - Na polu
K_NAZWA_RAPORTUmożesz użyć adnotacji Stała lub Wyrażenie i wprowadzić dane jak będzie nazywać się dokument.

Zobacz również
Odczyt z bazy i zapis danych do pliku