; Dotaz, zda doplnit do VZaZ minule obdobi ; verze z 3.9.2003 ; opravit '13' na nejvyssi obdobi, az jich bude vice nez 13 Designed(''); DeclareRec('Program') WNSType(0); SetStatusText('') if(Length(HS())>0) begin VyplMO=1 Exit end MinRok=True VyplMO=Val(GetDataIni('Zaverka','VyplMO')) if(FirstInBatch()) ;řešit dotaz: begin Vypl1:Boolean=True Vypl2:Boolean=False Vypl3:Boolean=False if(VyplMO=1) begin Vypl1=True Vypl2=False Vypl3=False end if(VyplMO=2) begin Vypl1=False Vypl2=True Vypl3=False end if(VyplMO=3) begin Vypl1=False Vypl2=False Vypl3=True end NabidRok:Boolean=False NabidMesic:Boolean=False ;test, co nabídnout: if(ExistFile(WorkPath+Copy(WNSName(),1,4)+'13'+PredObdRok(2)+'.'+FromChar('.',WnsName))) NabidRok=True if(ExistFile(WorkPath+Copy(WNSName(),1,6)+PredObdRok(2)+'.'+FromChar('.',WnsName))) NabidMesic=True ;kdyz jede v cyklu za vice mesíců, tak jim nabizi jen podle toho, ;zda existuje lonsky za první počítaný měsíc if(not NabidRok) Vypl2=False if(not NabidMesic) Vypl3=False if((not NabidRok)and(not NabidMesic)) begin Vypl1=True Vypl2=False Vypl3=False end if((not Vypl1)and(not Vypl2)and(not Vypl3)) Vypl1=True ;{definice uvodniho dialogu, zadání období} ;DlgFollowMouse(True) DefDialog('Doplnění minulého období do VZaZ',462,264) DlgShade(-1,'',4,27,453,164) DlgStatic(-1,'Sloupec minulého období',10,4,167) DlgRadioButton(105,Vypl1,20,28,265,,'- nevyplňovat',105,107) DlgOnLineHelp(105,'Sloupec pro minulé období nebude vyplněn') if(NabidRok) begin DlgRadioButton(106,Vypl2,20,48,365,,'- převzít z loňského ročního VZaZ',105,106) DlgOnLineHelp(106,'Sloupec pro minulé období bude vyplněn údaji z ročního loňského výkazu') end else DlgStatic(-1,'- převzít z loňského ročního VZaZ',40,48,360) if(NabidMesic) begin DlgRadioButton(107,Vypl3,20,68,365,,'- převzít z VZaZ loňského srovnatelného měsíce',105,106) DlgOnLineHelp(107,'Sloupec pro minulé období bude vyplněn srovnatelným loňským obdobím (leden X leden, únor X únor...)') end else DlgStatic(-1,'- převzít z VZaZ loňského srovnatelného měsíce',40,68,360) DlgStatic(-1,'Pokud chcete doplnit hodnoty minulého období, musí být spočtena',10,104,436) if((Program.TypFirmy=0)and(Val(PredObdRok(2))<2)) begin DlgStatic(-1,'závěrka za toto období ve stejném nastavení',10,124,436) DlgStatic(-1,'(např. v plném rozsahu letos i loni). Jinak dojde k hlášení',10,144,436) DlgStatic(-1,'o nenalezené adresní značce a výpočet bude přerušen',10,164,436) end else begin ;podnikatele v roce 2003 (a dale?) uz nemusi mit loni stejny rozsah DlgStatic(-1,'závěrka za toto období',10,124,436) DlgStatic(-1,'Pokud není spočtena, není možno tuto nabídku zvolit',10,144,436) end DlgButton(id_OK,'OK',363,196); DlgOnLineHelp(id_OK,'Pokračuje ve zpracování') ;DlgButton(id_Cancel,'Zpět',373,196); ;DlgOnLineHelp(id_Cancel,'Ukončí bez zpracování') DlgButton(id_Help,'Help',33,196); DlgOnLineHelp(id_Help,'Help') DlgSetHelp(help_Context,510) Result:Integer=DlgExecute() if(Result<>id_OK) Halt if(Vypl1) VyplMO=1 if(Vypl2) VyplMO=2 if(Vypl3) VyplMO=3 SetDataIni('Zaverka','VyplMO',VyplMO) end ;konec dotazu pri FirstInBatch if(VyplMO=1) MinRok=False if(VyplMO=2) ;opravit '13' na nejvyssi obdobi, az jich bude vice nez 13 MinRokName=WorkPath+Copy(WNSName(),1,4)+'13'+PredObdRok(2)+'.'+FromChar('.',WnsName) if(VyplMO=3) MinRokName=WorkPath+Copy(WNSName(),1,6)+PredObdRok(2)+'.'+FromChar('.',WnsName) Exit End