#opis "Dane z InvoiceDigitizer" //Wersja 2.4.12.1 #format "AMS" // #opisy "" // #Disable "2" //poziom ostrzeżeń 1 (m.in. bez ostrzeżenia "Pole nie znalezione") #POWIELONE_NAZWY "1" //0-zapisuje bez pytania; 1-pyta czy zapisać; 2-nie zapisuje Section("INFO", "INFO") { $ustawuewntwdt = 0 } Section( "Kontrahent", "Kontrahent") { $klucz = [id] $nip = [nip] $skrot = [akronim] $nazwa = [nazwa] $kod = [kodpocz] $miejscowosc = [miejscowosc] $ulica = [ulica] $NumerDomu = [dom] $NumerMieszk= [lokal] $rejon = [rejon] $kraj = [krajNazwa] switch ( [krajKod] ) { case "GR" $krajKod = "EL" //Grecja break case else $krajKod = [krajKod] break } $statusUE = [statusUE] $znacznik = [znacznik] $telefon1 = [tel1] $telefon2 = [tel2] $telefax = [fax] $www = [www] $email = [email] $aktywny = [aktywny] $osfiz = [osfiz] $aktywny = 1 } Section("dokument", "dokument") { @opisy =1 // kod - numer faktury w systemie źródłowym 20-FVZ/00002 Info("Dokument: ", [FK nazwa]) // typ dokumentu FVZ - faktura zakupu, FVS - faktura sprzedaży $ObslugujJak =[obsluguj jak] // typ dokumentu FVZ - faktura zakupu, FVS - faktura sprzedaży // wymagane $klucz =[symbol FK] // numer faktury oryginalny np. FV000001/04/2020 // ograniczenie do 40 znaków // wymagane $nazwa =[FK nazwa] // rodzaj dokumentu - zakupu, sprzedaży // wymagane $rodzaj_dok =[rodzaj_dok] // naliczenie VAT - wartości 0,1,2,3,4,5 - domyslnie 0 // wymagane $naliczenie_VAT =[naliczenie_VAT] // tresc - Treść dokumentu // ograniczenie do 60 $tresc =[opis FK] // Data dokumentu // wymagane $datadok =Date([data]) // Data okresu sprawozdawczego // wymagane $dataokr =Date([dataokr]) // Data operacji gospodarczej, o ile występuje na formatce danego dokumentu // data sprzedaży - dostawy towaru i/lub wykonania usługi // wymagane $dataOper =Date([data]) // Data wpływu dla dokumentów zakupu, o ile występuje na formatce danego dokumentu // wymagane $dataWpl =Date([Datawpl]) $znacznik =0 // Kwota dokumentu bez księgowań równoległych // Kwota wartość brutto całego dokumentu w PLN // dla dokumentu jednowalutowego w walucie obcej jest to wartość dokumentu // po przeliczeniu przez kurs dokumentu $Kwota =[kwota] IF(NOT (equal([plattermin], "")) ) { @plattermin =Date([plattermin]) } // Znacznik występowania faktury walutowej @@walutowa = [waluta] IF ( NOT(equal(@@walutowa, "")) ) { if ( !equal([wkwota], "") ) { // Kwota dokumentu w walucie dokumentu $wkwota = [wkwota] // Nazwa waluty dla dokumentu jednowalutowego [4] $waluta = [waluta] // Kurs waluty z dokładnością do 6 miejsc po przecinku $kurs = [kurs] // Rodzaj kursu waluty dla dokumentu jednowalutowego: // 0-bez waluty // 1-zakup // 2-sprzedaż // 3-średni $typkursu = 3 // Identyfikator rekordu tabeli kursów walut dla dokumentu jednowalutowego // Jeśli dokument nie posiada odwołania do istniejącej tabeli kursów walut, // wówczas pole tabela musi zawierać 0 (zero) $tabela = 0 } } //analizujemy wszystkie sekcje - mogą być wymieszane Section("", "", "REPEAT") //REPEAT: analizujemy wszystkie podsekcje { switch( Translate( Name(), "L") ) // tytuł sekcji do małych liter { case "dane nabywcy" case "dane sprzedawcy" if (!equal([khid], 0)) { MakeSec("Kontrahent") { $klucz = [khid] } } else { if( !equal( [khnip], "") ) { // Incydentalny według NIP (klucz = NIP) MakeSec("Incydentalny") { $klucz = [khnip] $NIP = [khnip] $nazwa = [khnazwa] $miejscowosc= [khmiasto] $ulica = [khadres] IF( EXIST( "khdom") ) { $NumerDomu = [khdom] $NumerMieszk= [khlokal] } $kod = [khkodpocz] } } else if( !equal( [khnazwa], "") ) { // Incydentalny według khnazwa (klucz = khnazwa) MakeSec("Incydentalny") { $klucz = [khnazwa] $NIP = [khnip] $nazwa = [khnazwa] $miejscowosc= [khmiasto] $ulica = [khadres] IF( EXIST( "khdom") ) { $NumerDomu = [khdom] $NumerMieszk= [khlokal] } $kod = [khkodpocz] } } } break case "zapis" /* Dla każdej kategorii należałoby utworzyć mozliwość wskazania kont dla kwot wn i ma WN - netto -> 403 WN - vat -> 221-2 MA - brutto -> 201-1-2-K wpisanie K na końcy konta odwołuje się do konta kontrahenta */ MakeSec("zapis") { $strona = Rex([strona], "MA", 1) //WN=0 (""), MA=1 $kwota = [kwota] $Konto = [Konto] // $NumerDok = [NumerDok] // $IdDlaRozliczen = [IdDlaRozliczen] if ( Equal(@@opisy, 1) ) { $Opis = [opis] $typopisu = 1 //opis bezpośrednio } $pozycja =[pozycja] $rozbicie =[rozbicie] IF ( NOT(equal([waluta], "")) ) { $wkwota = [wkwota] $waluta = [waluta] $kurs = [kurs] $typkursu = 3 } $idDlaRozliczen = [idDlaRozliczen] // $dataKPKW = Date([dataKPKW]) } break case "rejestr" MakeSec("rejestr") { $Klucz =[skrot] switch ( [ABC] ) { case "2" $ABC = 2 //B break case "4" $ABC = 4 //C break case "8" $ABC = 8 //D break case else $ABC = 1 //A break } switch( Translate( $$rodzaj_dok, "L") ) { case "sprzedaży" $oczek = 0 break case "zakupu" switch( $$naliczenie_VAT ) { case "0" $oczek = 0 break case "1" $oczek = 1 break case "3" $oczek = 2 break case "4" $oczek = 2 break case "5" $oczek = 2 } break } $okres = [okres] $netto = [netto] $vat = [vat] $brutto = [brutto] $stawka = [stawka] if ( @@walutowa ) { $nettoWaluta = [nettoWaluta] $vatWaluta = [vatWaluta] $bruttoWaluta = [bruttoWaluta] } $typ = "ZW" } break case "transakcja" MakeSec("transakcja") { $ustawowe = 1 //odsetki ustawowe $zaliczka = 0 //Zaliczka $idDlaRozliczen = [idDlaRozliczen] $termin = [termin] //Termin; $kwota = [kwota] //Kwota terminu; $transakcja = [transakcja] } break } } }