Import danych > Import specjalny (format 3.0) > Sekcje wyjściowe

Drukuj

Sekcje wyjściowe

Informacje ogólne

Sekcje wyjściowe są odpowiednikiem baz danych programu. Są miejscem, gdzie wpisywane są przetworzone dane wejściowe. Zawartość sekcji wyjściowej jest poddawana procesowi uzgadniania danych, kontroli poprawności i uzupełnienia danych. Po prawidłowym zakończeniu tych procesów dane z sekcji wyjściowej są zapisywane do baz danych programu. Struktura logiczna i zawartość informacyjna sekcji wyjściowych odpowiada bezpośrednio strukturom bazy danych  programu Finanse i Księgowość. Dane wejściowe zawierają informacje trafiające do różnych tablic w bazie danych programu (np. dokumenty, zapisy, rejestry VAT, kontrahenci itp.), ale powiązane ze sobą ścisłymi powiązaniami (relacjami). Przykładowo zapisy i rejestry są związane z konkretnym dokumentem, faktura VAT dotyczy konkretnego kontrahenta itp. W pliku wejściowym powiązania te są zapewnione przez umieszczenie wszystkich danych w jednej sekcji (w formacie SDF, CDF, COMMA) lub w postaci podsekcji umieszczonych w jednej sekcji (formaty AM, AMS, POLKA itp.). Powiązania (relacje) pomiędzy poszczególnymi danymi przechowywanymi docelowo w różnych tablicach baz danych programu muszą być zachowane również w sekcji wyjściowej. Z tego względu wygodniej jest myśleć o sekcji wyjściowej nie jako o zbiorze oddzielnych tablic, ale jak o strukturze analogicznej jak sekcje wejściowe, czyli o sekcjach i zawartych w nich podsekcjach. Dzięki zastosowaniu „zagnieżdżania” podsekcji wyjściowych można zapomnieć o wzajemnych relacjach pomiędzy tablicami bazy danych, relacje są tworzone automatycznie, na podstawie wzajemnego umiejscowienia  podsekcji w sekcji wyjściowej.

 

img_fk_imp_sp_04

 

Porównanie organizacji sekcji wyjściowej i relacji pomiędzy tablicami w bazie danych

 

Istotne dla prawidłowego przebiegu importu danych jest utworzenie właściwej hierarchii podsekcji w sekcji wyjściowej. Istnieje wiele dopuszczalnych kombinacji wzajemnego umieszczania podsekcji. Od tego umiejscowienia zależy ostateczna postać wczytanych danych. Najprostszym przypadkiem jest pojedyncza sekcja, nie posiadająca podsekcji. Taka sytuacja może mieć miejsce podczas importu samej kartoteki kontrahentów. W takim przypadku każdy dodawany rekord umieszczany jest tylko w kartotece kontrahentów, bez żadnych dodatkowych powiązań. W przypadku dokumentów pojawi się w sekcji wyjściowej co najmniej jedna sekcja rejestru albo dwie lub więcej sekcji zapisów. Dodatkowo mogą pojawić się sekcje transakcji, rozliczeń oraz kartotek.

 

Pola danych

Każda sekcja wyjściowa składa się z pól danych oraz ewentualnie może zawierać podsekcje. O ile sekcja odpowiada jednej tabeli w bazie danych programu, o tyle pola sekcji odpowiadają  kolejnym kolumnom (polom) w danej tabeli bazy danych.

Pola sekcji składają się z nazwy rozpoczynającej się znakiem $ oraz dowolnej wartości.

Tworząc szablon importu specjalnego można utworzyć dowolną ilość sekcji oraz pól wyjściowych o dowolnych nazwach i wartościach. Wśród tych wszystkich sekcji i pól  wyjściowych program będzie analizował tylko te, których nazwy są mu znane. Pozostałe pola i sekcje zostaną zignorowane bez ostrzeżenia. Lista sekcji i pól które będą zrozumiałe dla programu została zamieszczona w specyfikacji sekcji i pól wyjściowych.

Takie rozwiązanie ma swoje wady i zalety. Oczywistą wadą jest fakt, że program nie „wyłapie” przypadkowych błędów w nazwach pól lub sekcji (o ile nie są to pola krytyczne dla przebiegu importu danych). Zaletą jest to, że import specjalny nie jest wrażliwy na zmiany formatu i struktur  danych w programie Finanse i Księgowość.

Część pól danych w każdej sekcji jest obowiązkowa, to znaczy pola te muszą zostać wypełnione, aby import danych mógł przebiegać prawidłowo. Część pól może być wypełniona lub pozostać pusta. Pola te zwykle mogą być automatycznie uzupełnione przez program na podstawie wartości innych pól, lub też ich obecność nie jest obowiązkowa (np. pole uwag dla kontrahenta, treść dokumentu itp.). Istnieją takie pola, które nie mogą być wypełnione podczas importu specjalnego. Wypełnienie ich niedozwolonymi wartościami może spowodować błędy w importowanych danych. Wszystkie pola wraz z ich charakterystyką zostały opisane w specyfikacji pól wyjściowych.

 

Pole $klucz

Każda sekcja związana z kartoteką programu musi zawierać pole $klucz, które jest używane do identyfikacji i połączenia danych od konkretnego nadawcy, z danymi programu FK. Wartość tego pola jednoznacznie identyfikuje informację od nadawcy.

 

Pole $klucz  nie może być puste, bo spowoduje to wyświetlenie komunikatu i natychmiastowe przerwanie importu danych. , jeśli dla kartoteki kontrahentów pole $klucz będzie zawierać wartość „0”, to sekcja kontrahenta zostanie zignorowana (pominięta) bez żadnego komunikatu.

Pole $klucz dla kartotek (kontrahenci, pracownicy, urzędy itp.) musi identyfikować jednoznacznie pozycję kartoteki u nadawcy. Może to być np. numer w kartotece nadawcy lub unikalny skrót. Dla pracownika może to być np. numer PESEL

 

Wartość pola $klucz musi być unikalna dla każdej pozycji kartoteki. Przykładowo numer NIP może być niewystarczającą informacją, gdyż kilka oddziałów jednej firmy (a więc kilka pozycji w kartotece kontrahentów) może mieć ten sam numer NIP-u. Najlepszą informacją dla pola $klucz jest zawsze numer pozycji w kartotece nadawcy.

 

Pole $klucz dla dokumentów określa typ dokumentu wzorcowego w FK, jaki ma zostać użyty podczas zapisywania dokumentu do bufora. Zasada jest następująca: Pojawienie się każdej nowej wartości pola $klucz  powoduje otwarcie okna uzgodnień dokumentów i użytkownik musi mu przypisać jakiś typ dokumentu zdefiniowanego w programie FK.  Każdy następny importowany dokument, posiadający takie same pole $klucz zostanie przypisane do tego wybranego typu dokumentu.
Przykładowo jeśli dokument będzie miał wartość pola $klucz równą np. „F/R00”  i użytkownik połączy ten dokument z  wzorcowym dokumentem FVS, wówczas ten dokument oraz wszystkie następne dokumenty posiadające taką sama wartość klucza zostaną zapisane do bufora jako dokumenty typu FVS.

 

Różne wartości pola $klucz mogą zostać  przypisane do tego samego dokumentu wzorcowego w programie FK. Wszystko zależy od decyzji księgowego, dokonującego uzgodnień typów dokumentów podczas importu specjalnego.

 

Dla raz opracowanego szablonu współpracującego z ustaloną postacią pliku danych wejściowych, pole $klucz nie powinno już podlegać modyfikacji. Jego zmiana spowodowałaby konieczność uzgadniania na nowo uzgodnień pomiędzy nadawcą i odbiorcą, w skrajnych przypadkach mogłaby również doprowadzić do błędnej interpretacji powiązań i w rezultacie skojarzyć dane w niewłaściwy sposób.
 

Klucz może być dowolnym ciągiem znaków o długości do 100 znaków. Pole $klucz jest generowane przez szablon na podstawie danych wejściowych i nie musi w sposób jawny występować w pliku danych.

 

Sekcje które nie wymagają uzgodnień nie wymagają wypełniania pola $klucz. Są to następujące sekcje:

ZAPIS

REJESTR

TRANSAKCJA

ROZLICZENIE

Sekcje te nie mogą występować samodzielnie (jako sekcje główne), lecz  mogą być użyte wyłącznie jako

podsekcje w sekcji DOKUMENT

 

Dozwolone kombinacje sekcji i podsekcji

Poniżej przedstawiono dozwolone kombinacje wzajemnych powiązań sekcji i podsekcji w programie Finanse i Księgowość.

 

Pozycja w kartotece kontrahentów stałych, bez powiązań z innymi danymi w programie.

 

Kontrahent        {

 $klucz = 

//reszta pól kartoteki kontrahentów

}

 

Pojawienie się takiej sekcji powoduje utworzenie nowej pozycji w kartotece kontrahentów (o ile nie istnieje w programie Finanse i Księgowość), lub powiązanie kontrahenta z  pliku danych z istniejącym kontrahentem w kartotece. Zarówno wprowadzenie nowej pozycji, jak też uzgodnienie z istniejącym w kartotece może wymagać dodatkowej operacji wykonanej przez  użytkownika. Sposób rozstrzygania o utworzeniu nowej pozycji i kryteria przyjmowane do uznania zgodności z istniejącymi pozycjami kartotek, zmieniły się istotnie od wersji 2009 i są opisane w osobnym dokumencie. Ponadto skrótowy opis jest przedstawiony w podręczniku i pomocy do programu Finanse i Księgowość – dotyczy to także kartoteki pracowników.

 

Pozycja w kartotece kontrahentów incydentalnych, bez powiązań z innymi danymi w programie

 

Incydentalny {

 $klucz = 

//reszta pól kartoteki kontrahentów incydentalnych

}

 

Pozycja w kartotece pracowników, bez powiązań z innymi danymi w programie

 

Pracownik        {

 $klucz = 

//reszta pól kartoteki pracowników

}

 

Pozycja w kartotece urzędów skarbowych, bez powiązań z innymi danymi w programie

 

Urzad        {

 $klucz = 

//reszta pól kartoteki urzędów

}

 

Pozycja w kartotece rachunków bankowych, bez powiązań z innymi danymi w programie

 

Rachunek {

 $klucz = 

//reszta pól kartoteki rachunków bankowych

}

 

Dokumenty w buforze.

 

Dokument {

 $klucz = 

 //reszta pól części opisowej dokumentu

 Kontrahent        {         //o ile występuje na dokumencie

//oprócz sekcji kontrahent mogą również 

//wystąpić pozostałe kartoteki programu        

         $klucz=

         //reszta pól kontrahenta

 }

 Rejestr {        //o ile występuje w dokumencie

                 //może być powtórzony wiele razy

         $klucz=

         //dane rejestru

 }

 Zapis {        //powtórzony tyle razy, ile jest dekretów

         //nie ma pola klucz

         //pola zapisu

         Transakcja { //o ile jest transakcja dla tego zapisu

                         //specyfikacja nowej transakcji dla danego zapisu

                 //nie ma pola klucz

                 //dane transakcji

         }

         Rozliczenie { //o ile jest rozliczenia dla tego zapisu

                 //specyfikacja rozliczenia transakcji dokonanego 

                 //danym zapisem        

                 //nie ma pola klucz

                 //dane rozliczenia

         }

 }

 Transakcja        {

         //nie ma pola klucz

         //dane transakcji

 }

 Rozliczenie {

         //nie ma pola klucz

         //dane rozliczenia

 }

}

 

Sekcja wyjściowa Dokument jest najbardziej rozbudowana (posiada największą liczbę możliwych podsekcji). Jest też najistotniejsza z punktu widzenia programu Finanse i Księgowość. Podany powyżej przykład obejmuje najszerszy zakres sekcji wyjściowej dokumentu. Dla różnych dokumentów sekcja wyjściowa może mieć inny zestaw podsekcji  oraz inny zakres danych (pól wyjściowych w każdej sekcji).

 

Podstawowe różnice w ilości różnych podsekcji dokumentu wynikają z  następujących czynników:

Występowania kontrahenta w części opisowej dokumentu,

Występowania pozycji kartotek jako numerów kont w zapisach,

Obecności rejestrów VAT w dokumencie,

Występowania rozrachunków związanych z poszczególnymi zapisami,

Występowania rozrachunków związanych z całym dokumentem.