; pokus o vypis DPH z deniku Name('Rekapitulace DPH součtově') ; pod tímto názvem bude sestava v menu Designed('DenMan') ; sestava bude dostupná z okna Adrman Author('Winduo Team','EMail: winduo@winduo.mine.nu','http://www.winduo.com','http://winduo.mine.nu') ;informace o autorovi Descr('Rekapitulace DPH součtově','Změna třídění - Ne','Filtr - Ano') ;popis sestavy, tento text bude v bublince ;VLOŽIT DOTAZ NA OBDOBÍ Veta:LongInt ; definuje proměnnou Pozice:LongInt ; definuje proměnnou DeclareRec('Denik') ; přiřadí a definuje větu z deniku ;XXX nadefinovat trideni podle: ; dant 0-3 ; datum_zp ; dump ??? interni cislo dokladu, jak z toho dostat skupinu??? DeclareRec('KeyDenikXXX') ; přiřazení a definice třídícího klíče ClearKey(KeyDenikXXX) ; resetuje ukazatel aktuální věry v souboru WNSType(1); NewWNS('VZRDDT01.WNS','Opis adresáře - vzor') SetColumn(0,ta_Left,8); SetColumn(1,ta_Left,8); SetColumn(2,ta_Right,13); SetColumn(3,ta_Right,13); SetColumn(4,ta_Right,13); SetColumn(5,ta_Right,13); SetColumn(6,ta_Right,13); SetColumn(7,ta_Right,13); SetColumn(8,ta_Right,8); SetColumn(9,ta_Left,25); SetColumn(10,ta_Left,1); SetHead('Datum\tDoklad\tAgenda\tZáklad 22%\tDaň 22%\tZáklad 5%\tDaň 5%\tZáklad 0%\tSoučet%\tIČO\tNázev firmy\tX'); SetDescr(0,0,TA_Right|descr_PageNum,'Strana: '); SetDescr(1,0,TA_Center,'Opis případů DPH'); SetDescr(2,0,TA_Left|descr_Date,'Datum: '); SetDescr(3,1,TA_Left|descr_UserDescr,''); pokud je pouzit descr_UserDescr, tak si program vyzada dodatecny popis if(IsFilter(Adresar)) ; dotaz, zda je aktivní filtr do sestav begin SetDescr(4,1,TA_Right,'Aktívní filtr'); end InitStatus(UsedKeys(KeyAdresar2)) ; inicializace stavoveho prouzku ;SKOČIT NA 1. větu v období ; OPRAVIT CYKLUS NA OBDOBI While(NextKey(KeyDenikXXX,Veta)) ; začátek cyklu přes celý soubor begin ; začátek příkazu pro zpracování jedné věty ; přečíst 1. větu ; vyhledat nadřízenou větu ; převzít z ní datum DPH, IČO, Název firmy, Částku ; cyklus v deníku přes celou skupinu ; načítat hodnoty DPH do jednotlivých políček ; (asi ne, je to tak tříděno) kontrolovat, zda jsou všechny věty ve skupině ve stejné kategorii ; kontrolovat, zda mají stejné IČO a firmu, kdyz NE, IČO a Firmu asi netisknout vůbec???, nebo nekontrolovat a brat vždy z nadřízené knihy??? ; načítat do součtů za kategorii DPH celkem ; vytisknout součet za skupinu, do polička Agenda napsat číslo a na začátek dát vysvětlivku, nebo psát přímo zkratku agendy ; je-li další věta v jiné kategorii DPH, vytisknout součet za kategorii a vynulovat ho ReadRec(Adresar,Veta) ; přečte větu ze souboru if(InFilter(Adresar)) ; dotaz, zda věta prošla filtrem begin ; začátek příkazu pro operace s těmi, které prošly filtrem AddLine(Str(Adresar.ICO)+#9+Adresar.Nazev+#9+Adresar.Rozsireni+#9+Adresar.Ulice+#9+Adresar.Mesto+#9+Adresar.PSC) ; vypise obsah radku end ; konec příkazu pro věty, které prošly filtrem Inc(Pozice) ; zvyseni citace zpracovanych vet SetStatus(Pozice) ; nastaveni stavoveho prouzku end ; konec příkazu pro zpracování jedné věty END