; Výkaz ZaZ pro podnikatele v plném rozsahu pro rok 2002 ; verze z 11.4.2003 FileName('FIVZ'+ObdMesic(2)+ObdRok(2)+'.WNS') Designed('') Author('Winduo Team','EMail: winduo@winduo.cz','http://www.winduo.com','http://www.winduo.cz') Descr('VZaZ pro podnikatele v plném rozsahu','bývalý Úč POD 2-01') DeclareRec('Program') Procedure PrintText(PocetRadku:Word,PrintLine:Word); While((EOF(Soubor)=False) and (PocetRadku>0)) begin ReadedLine=ReadLn(Soubor); FirstChar=Asc(ReadedLine) if(FirstChar=Asc('$')) begin end else begin if(FirstChar=Asc('@')) begin ReadedLine=FromChar('@',ReadedLine); end else if(FirstChar=Asc('#')) begin ReadedLine=FromChar(',',FromChar(',',ReadedLine)); end ReadedLine=ReadedLine+#9; if(PrintLine=0) begin if(FirstChar=Asc('@')) begin ReadedLine=ReadedLine end else begin ReadedLine=ReadedLine+Str(LineNum) Inc(LineNum); end end else begin ReadedLine=ReadedLine+Str(PrintLine) end; DynTab(ReadedLine) Dec(PocetRadku) end; end; end; ItsBlank:Boolean FormName:String=GetTabName(4); if(Length(ObdMesic(2))<>0) begin Name('Výkaz zisku a ztráty - Formulář za '+ObdMesic(2)+ObdRok(2)) end else begin Name('Výkaz zisku a ztráty - Prázdný') ItsBlank=True ReadedLine:String FirstChar:Byte LineNum:Word=1 end; Global MinRok:Boolean=False Global MinRokName:String ;MinRokName=WorkPath+Copy(WNSName(),1,4)+'13'+PredObdRok(2)+'.'+FromChar('.',WnsName) StatusWindowInCall(False) Global VyplMO:Byte=0 if(not ItsBlank) CallDDT('DoplMO.ddt') PravniForma:String[32]=GetDataINI('INFO','PravniForma') Bydliste1:String[37]=GetDataINI('INFO','Bydliste1') Bydliste2:String[37]=GetDataINI('INFO','Bydliste2') HlCinnost1:String[37]=GetDataINI('INFO','HlCinnost1') HlCinnost2:String[37]=GetDataINI('INFO','HlCinnost2') ;hlavicka Global NazevSest1:String='VÝKAZ ZISKU A ZTRÁTY' Global NazevSest2:String='v plném rozsahu' ;paticka XZacatek2:Real=0 XKonec2:Real=188 YKonec2:Real=237 Global X1Pata:Real=XZacatek2 Global Y1Pata:Real=YKonec2+5 Global X2Pata:Real=XKonec2 Global Y2Pata:Real=Y1Pata+30 Global Opatr1:String='Podle opatření Ministerstva financí ČR' Global Opatr2:String='Č.j.:281/97 417/2001' Global Opatr3:String='ze dne 14. prosince 2001' ;definice 1.strany Global XZacatek1:Real=0 Global YTlusta1:Real=79 Global Y1Hlav1:Real=16 Global XKonec1:Real=188 CallDDT('HlavVyk.ddt') PEN(0,0.7) ROUNDBOXA(97,1,188,54,3.3,3.3) ROUNDBOXA(0,56,188,260.5,3.3,3.3) LINEA(0,72,188,72,0) PEN(0,0.3) LINEA(18,56,18,260.5) LINEA(107,56,107,260.5) LINEA(116,56,116,260.5) LINEA(152,62.5,152,260.5) LINEA(116,62.5,188,62.5) LINESA(0,78.5,188,78.5,0,6.5,3) LINESA(18,98,188,98,0,6.5,3) LINEA(0,117.5,188,117.5) LINESA(18,124,188,124,0,6.5,2) LINESA(0,137,188,137,0,6.5,2) LINESA(18,150,188,150,0,6.5,4) LINESA(0,176,188,176,0,6.5,13) FONTSIZE(3) FontFace(Normal) TEXT(9,58,TA_CENTER,'Označení') TEXT(9,67,TA_CENTER,'a') TEXT(62.5,58,TA_CENTER,'T E X T') TEXT(62.5,67,TA_CENTER,'b') TEXT(111.5,57,TA_CENTER,'Číslo') TEXT(111.5,61.5,TA_CENTER,'řádku') TEXT(111.5,67,TA_CENTER,'c') TEXT(152,58,TA_CENTER,'Skutečnost v účetním období') TEXT(134,64,TA_CENTER,'sledovaném') TEXT(134,67,TA_CENTER,'1'); if(VyplMo=3) TEXT(170,64,TA_CENTER,'minulém - srovnatelném') else TEXT(170,64,TA_CENTER,'minulém') TEXT(170,67,TA_CENTER,'2') if(ItsBlank) begin Soubor:TextFile; Open(Soubor,FormName); end else begin OpenWNS(WNSName) end; TabPos(74.5) DefTab(3,6.5,2,14,TA_LEFT,20,85,TA_BOTH,111.5,7,TA_CENTER) if(ItsBlank) begin PrintText(29); end else begin SaveWnsPos(1) TabFromWns(2,0,29,$7) SaveWnsPos(2) LoadWnsPos(1) FontSize(4.5) FontFace(Bold|Italic) TabPos(73.5) DefTab(1,6.5,149,31,TA_RIGHT) TabFromWns(2,0,29,$8) end; if(MinRok) begin OpenWNSIfExist(MinRokName) ;VZaZ z minuleho roku TabPos(73.5) DefTab(1,6.5,185,31,TA_RIGHT) TabFromWns(2,0,29,$8) SaveWnsPos(12) ;znacka v souboru z minuleho roku OpenWNS(WNSName) ; otevreni zase toho aktualniho roku end; FontFace(Normal) FONTSIZE(2.6) TEXT(188,267,TA_RIGHT,'Vytištěno systémem WinDUO') ;========================================== str. 2 NextPage PEN(0,0.7) LINEA(0,16,188,16) ROUNDBOXA(0,0,188,237,3.3,3.3) PEN(0,0.3) LINEA(18,0,18,237) LINEA(107,0,107,237) LINEA(116,0,116,237) LINEA(152,6,152,237) LINEA(116,6,188,6) LINESA(0,22.5,188,22.5,0,6.5,2) LINESA(18,35.5,188,35.5,0,6.5,3) LINESA(0,55,188,55,0,6.5,16) ;LINESA(18,139.5,188,139.5,0,6.5,2) LINESA(18,159,188,159,0,6.5,2) LINESA(0,172,188,172,0,6.5,4) LINESA(18,198,188,198,0,6.5,2) LINESA(0,211,188,211,0,6.5,4) ;PEN(0,0.4); ;ROUNDBOXA(0,244,188,270,3.3,3.3) FONTSIZE(3) TEXT(9,2,TA_CENTER,'Označení') TEXT(9,11,TA_CENTER,'a') TEXT(62.5,2,TA_CENTER,'T E X T') TEXT(62.5,11,TA_CENTER,'b') TEXT(111.5,2,TA_CENTER,'Číslo') TEXT(111.5,4.75,TA_CENTER,'řádku') TEXT(111.5,11,TA_CENTER,'c') TEXT(152,2,TA_CENTER,'Skutečnost v účetním období') TEXT(134,8,TA_CENTER,'sledovaném') TEXT(134,11,TA_CENTER,'1'); if(VyplMo=3) TEXT(170,8,TA_CENTER,'minulém - srovnatelném') else TEXT(170,8,TA_CENTER,'minulém') TEXT(170,11,TA_CENTER,'2') TabPos(18) DefTab(3,6.5,2,14,TA_LEFT,20,85,TA_BOTH,111.5,7,TA_CENTER) if(ItsBlank) begin PrintText(34); end else begin LoadWNSPos(2) TabFromWns(2,0,34,$7) LoadWNSPos(2) FontSize(4.5) FontFace(Bold|Italic) TabPos(17) DefTab(1,6.5,149,31,TA_RIGHT) ;DefTab(2,6.5,149,31,TA_RIGHT,185,31,TA_RIGHT) TabFromWns(2,0,34,$8) end; if(MinRok) begin OpenWNSIfExist(MinRokName) ;VZaZ z minuleho roku LoadWNSPos(12); IF(Val(Rok(4))>2002) ;je-li pocitano za rok 2003, vykazy na sebe navazuji (stav v unoru 2002) begin TabPos(17) DefTab(1,6.5,185,31,TA_RIGHT) TabFromWns(2,0,34,$8) end else ;pocita se za rok 2002, je treba nacist z jineho VZaZ z roku 2001 begin TabPos(17) DefTab(1,6.5,185,31,TA_RIGHT) TabFromWns(2,0,6,$8) TabPos(17+(6*6.5)+(3*6.5)) ;6radku z roku 2001 + 3 volne preskocit TabFromWns(2,0,14,$8) ;14radku z 2001 SkipWNSLine(2,256,1) ;51ř Úč POD 2-01 ;LoadWNSLine(2,256) TabFromWns(2,256,11,$8) end ; OpenWNS(WNSName) ; otevreni zase toho aktualniho roku end CallDDT('PataVyk.DDT') END