program "FACTURATIE" dcl e1#,loper#,xx#,selma# dcl drfak%,drukfak%,drbon%,test%,pagnum%,bonaant% dcl faktot=6,tfgoed=6,tfbtw=6,tfverpp=6,tfverpm=6,tftot=6 dcl leegg=6,leeg0=6,leeg1=6,totleegg,totleeg0=6,totleeg1=6,totledig=6 dcl totbon=6,totbeta=6,totbet=6,ftotaal=6,omzet=6 dcl som=6,goederen=6,aantal=6,klsaldo=6,betaald=6 dcl totkost=6,lkost=6,tot1=6,tot2=6 dcl zon1=5(5),zon2=5(5),zon3=5(5),zon4=5(5),zon5=5(5) dcl help$=2,hulpma=5,hulpja=5,hulpdag=5 dcl totbtw=6,toeslag=6(8),btwtot=6(8) dcl totfak=6,prijs=6,wtot2=6,arhtot2=6 dcl soortdr$=1,tdat$=6,fdatum$=8,vdatum$=8,foms$=20,fnummer$=6 dcl fdat$=8,ftdat$=6,drdat$=8,omsch$=3,kode$=1,copy$=20,tekstl$=56,tekstl2$=56 dcl td$=6,dubbels$=1,srtfak$=1,mar$=2 dcl delkode$=8,filler=1,delrec$=179 field=m,delrec dcl delverk$=8,delhist$=16,delfak$=15,delmakod$=14(10) dcl delhis$=16 field=m,delhis dcl delnaam$=8,deldat$=6,deltel% field=m dcl srtfdown$=26 field=m,srtfdown dcl srtfkode$=25 field=m,srtfkode dcl srtfsrt$=1,srtftype$=1,srtffak$=6,srtfrec$=15,srtfnul$=2,filler=1 field=m dcl srtbdown$=26 field=m,srtbdown dcl srtbkode$=25 field=m,srtbkode dcl srtbsrt$=1,srtbtype$=1,srtbbed$=8,srtbrec$=15,filler=1 field=m dcl srtdown$=47 field=m,srtdown dcl srtkode$=16 field=m,srtkode dcl srtdat$=6,srtbon%,srtart$=4,srtins%,srtmem%,filler=1,srtrec$=30 field=m dcl omz$=6 field=m,omz dcl omzkod$=1,filler=5 field=m dcl fact$=256 field=m,fact dcl fkldat$=8,fklkode$=8,fkltest$=1,fklnum% field=m dcl testdown$=18 field=m,testdown dcl testkode$=10,filler=1,testrec$=7 field=m,testkode dcl testklant$=8,testfak% field=m,testrec dcl testdat$=6,testdruk$=1 field=m dcl hidown$=51 field=m,hidown dcl hikode$=18 field=m,hikode dcl hiart$=4,hidat$=6,hiuur$=2,himin$=2,hitel%,filler=3,hirec$=32 field=m,hirec dcl hiwie$=8,hiaant,hivoor,hitype$=1,hibon% field=m #INCLUDE "CRINCLU" field=3 dcl tek$=60(2) field=4 dcl factuur$=256 #INCLUDE "CRINCLU2" assign=45,"IM0",wr,ex,im goto &15 &5 if e<>44 : goto &6 print=1:tab(01,24),atb(21) ask=1,i=&1:tab(01,24),bell,"Printer in gebruik !!! "=j goto &15 &6 print=1:tab(01,24),atb(21) print=1:tab(01,24),e goto &1 &10 print=45:zes print=45:endcon goto &1 &15 for i=1 to 12 datum(i)=31 next i datum(04)=30 datum(06)=30 datum(09)=30 datum(11)=30 datum(02)=28 if jaar<>"2008" : goto &21 if jaar<>"2012" : goto &21 if jaar<>"2016" : goto &21 if jaar<>"2020" : goto &21 if jaar<>"2024" : goto &21 if jaar<>"2028" : goto &21 datum(02)=29 &21 assign=02,bestand(15),wr,si ;bonbestand assign=03,left(bestand(05),3)+"TFAK",wr ;tekstlijnen voor op factuur assign=04,"FACTUUR",wr ;factuurgegevens assign=05,bestand(09),wr,si ;financieel dagboek assign=06,bestand(11),wr,si ;klantenhistoriekbestand assign=07,bestand(10),wr,si ;openstaande facturen assign=08,bestand(08),wr,si ;verkoopdagboek assign=09,bestand(02),wr,si ;maandhistoriek assign=10,bestand(01),wr,si ;rekeningenbestand assign=11,bestand(04),wr,si ;klantenbestand assign=12,bestand(05),wr,si ;artikel bestand vast assign=14,bestand(16),wr,si ;bonbestand assign=15,left(bestand(08),6)+"D",wr,si ;delete uit verkoopdagboek assign=17,bestand(17),wr,si ;tekslijnen bon assign=32,left(bestand(05),3)+"TEST",wr,si open=12:&1,e open=9:&26,e goto &30 &26 cfile=9,d=50,k=6 &30 open=3:&35,e goto &60 &35 cfile=3,d=120 tek(1)=" " tek(2)=" " &60 open=15:&65,e goto &70 &65 cfile=15,d=179,k=8 &70 open=32:&75,e goto &85 &75 cfile=32,d=7,k=10 &85 if printtel(18)<>0 : goto &100 xx=1 goto &100 &90 fact=" " factuur=fact par(3)=param3 assign=1,"CRBFAK" chain=1:&1,e stop &100 open=8:&1,e verkfok="999999" verktel=32000 search=8,verkkey:&101,e,verkrec &101 up=8:&102,e,verkdown goto &103 &102 verkfok="000000" &103 param3=par(3) teller(02)=conv(verkfok)+1 teller(14)=teller(02) teller(41)=teller(02) par(3)=param3 ; inlezen open=4:&1,e fact=factuur if fklkode=" " : goto &90 ;einde xx=1 fdat=fkldat dat=fdat ldgo.seg 200 ttest1=test1 fadat=fdat soortdr="2" omsch=" " a=conv(substr(fdat,4,2)) mnd(1)="JANUARI" mnd(2)="FEBRUARI" mnd(3)="MAART" mnd(4)="APRIL" mnd(5)="MEI" mnd(6)="JUNI" mnd(7)="JULI" mnd(8)="AUGUSTUS" mnd(9)="SEPTEMBER" mnd(10)="OKTOBER" mnd(11)="NOVEMBER" mnd(12)="DECEMBER" omsch=large(mnd(a)) klkode=fklkode search=11,klkode:&90,e,klrec print=45:zes print=45:emp print=45:con print=1:clear,paint(kh,ka),naam,paint(kt,0)," FAKTURATIE VOOR KLANT ",tab(70),ndat print=1:paint(kl,0),tab(01,02),gener(79,hto) &225 print=1:tab(01,05),atb(22) print=1:tab(01,05),"Klantenkode : ",klkode print=1:tab(01,06),"Naam",tab(20),": ",paint(kh,ka),left(klnaam,len$(klnaam)),paint(kt,0) print=1:tab(01,07),"Straat",tab(20),": ",klstra print=1:tab(01,08),"Gemeente",tab(20),": ",klgem print=1:paint(kl,0),tab(01,10),gener(79,hto),paint(kt,0) &230 j=" " ask=1,i=&1,u=&1:tab(01,12),"Deze klant Y-N : "=j j=large(j) if j=" " : goto &230 if j<>"Y" : goto &1 goto &1000 &1000 xx=1 bonklant=klkode bonnumer=fklnum search=14,bonkode:&90,e,bonrec if bonklant<>klkode : goto &90 if bonnumer<>fklnum : goto &90 klkode=bonklant search=11,klkode:&1017,e,klrec goto &1020 &1017 print=1:tab(01,24),"Fout search klkode : ",(-3),e,(e),klkode stop &1020 print=1:tab(01,15),atb(22) print=1:tab(01,16),"Klantkode : ",klkode," ",klnaam print=1:tab(01,17),"Bonklant : ",bonklant," ",(-7),bonnumer print=1:tab(01,18),"Datum bon : ",bondatum," ",(-7),bonfak &1100 for bonaant=1 to 2 pagnum=1 gosub &9900 totleegg=0 totleeg1=0 totleeg0=0 totfak=0 totbeta=0 totbon=0 totbet=0 totkost=0 lkost=0 verkrec=" " for i=1 to 5 verkbed(i)=0 next i verkdeb=0 verkbtw=0 for i=1 to 10 verktbe(i)=0 next i fakrec=" " fakklv="K" faktebe=0 fakont=0 kllvhis=" " hisbed1=0 hisbed2=0 hisbtw=0 mahisre=" " mabedrd=0 mabedrc=0 for e=1 to 5 toeslag(e)=0 btwtot(e)=0 next e totbon=0 totfak=0 drbon=0 drdat=" " search=14,bonkode:&1162,e,bonrec drdat=bondatum goto &1163 &1162 print=1:tab(01,24),"Fout search bonkode : ",e," ",bonkode stop &1163 if lijntelvastrek(34) if bondruk<>"Y" if bonaant=1 goederen=aantal*(memprijs-memkort) veraant=veraant+aantal verbed=verbed+goederen vooraant=vooraant-aantal if artabak=0 voorbak=0 endif if voorbak<>0 voorbak=vooraant/artabak voorbak=roun(voorbak,0) endif tot1=voorbak*artabak voorplus=vooraant-tot1 hiaant=aantal ldgo.seg 206 artgino=artgino-aantal modif=12,artkey:artrec(1),750 endif endif endif leegg=(memaant*artbak)+(aantal*artfles) goederen=aantal*(memprijs-memkort) goederen=roun(goederen,2) if artreknr=vastrek(34) : goto &1228 leeg0=leegg goto &1231 &1228 leegg=goederen if goederen<0 : goto &1229 goto &1230 &1229 leeg1=goederen goederen=0 goto &1231 &1230 leeg0=goederen goederen=0 &1231 lkost=goederen*conv(klkost) goederen=goederen*(1-conv(klkost)) goederen=roun(goederen,2) lkost=roun(lkost,2) totkost=totkost+lkost totbon=totbon+goederen if artreknr=vastrek(34) : goto &1232 print=45:tabv(01),tab(xx),drdat,tab(12+xx),memart,tab(20+xx),(-6.n2),aantal,(e),tab(32+xx),artoms,tab(66+xx),(-6.n2),goederen/aantal,tab(78+xx),(-3.n4),memkort,tab(89+xx),(-6.n2),goederen,tab(101+xx),(-2.n4),leeg0,tab(113+xx),leeg1,tab(125+xx),(n2.n2),verper(artbtw) goto &1233 &1232 print=45:tabv(01),tab(xx),drdat,tab(12+xx),memart,tab(20+xx),(-6.n2),aantal,(e),tab(32+xx),artoms,tab(66+xx),(-6.n2),memprijs,tab(78+xx),(-3.n4),memkort,tab(89+xx),(-6.n2),goederen,tab(101+xx),(-4.n4),leeg0,tab(113+xx),leeg1,tab(125+xx),(n2.n2),verper(artbtw) &1233 lijntel=lijntel+1 print=1:tab(01,20),"Artikel : ",paint(kh,ka),memart," ",paint(kh2,ka2),artoms,paint(kh3,ka3),(-6.n2),aantal,paint(kt,0) drdat=" " if artreknr<>" " : goto &1235 artreknr=vastrek(28) &1235 prijs=goederen gosub &9990 btwtot(artbtw)=btwtot(artbtw)+goederen toeslag(artbtw)=toeslag(artbtw)+lkost totledig=totledig+leegg totleeg0=totleeg0+leeg0 totleeg1=totleeg1+leeg1 &1250 next loper memins=memins+1 goto &1170 &1600 totleeg0=roun(totleeg0,2) totleeg1=roun(totleeg1,2) prijs=totleeg0+totleeg1 prijs=roun(prijs,2) if prijs=0 : goto &1601 artreknr=vastrek(34) ;vastnummer leeggoed gosub &9990 &1601 prijs=totkost prijs=roun(prijs,2) if prijs=0 : goto &1605 artreknr=vastrek(31) ;vastnummer distributie gosub &9990 &1605 totbtw=0 for e=1 to 5 totbtw=totbtw+btwtot(e) next e &1909 for e=1 to 5 zon1(e)=0 zon2(e)=0 zon3(e)=0 zon4(e)=0 zon5(e)=0 next e &1910 totfak=0 for e=1 to 5 totfak=totfak+btwtot(e) next e print=45:tabv(printtel(01)-(lijntel+26)) close=45 lijntel=printtel(01)-26 e1=1 for e=1 to 5 ;uizoeken van de btw if btwtot(e)=0 : goto &1911 zon1(e1)=conv(e) zon2(e1)=verper(e) zon3(e1)=btwtot(e) zon5(e1)=toeslag(e) zon4(e1)=(zon3(e1)+zon5(e1))*conv(verper(e)) zon4(e1)=zon4(e1)/100 zon4(e1)=roun(zon4(e1),2) e1=e1+1 &1911 next e if large(klland)="B" : goto &1912 if large(klland)="X" : goto &1912 for e=1 to 5 zon1(e)=0 zon2(e)=0 zon3(e)=0 zon4(e)=0 zon5(e)=0 next e totbtw=0 goto &1913 &1912 totbtw=0 totkost=0 for e=1 to 5 totbtw=totbtw+zon4(e) totkost=totkost+zon5(e) next e &1913 for e=1 to 5 if zon3(e)<>0 : goto &1919 zon2(e)=0 zon4(e)=0 zon5(e)=0 &1919 next e &1922 totbtw=roun(totbtw,2) totfak=totfak+totleeg0+totleeg1 totbet=totfak+totkost+totbtw hulpdag=conv(left(fdat,2)) hulpdag=hulpdag+conv(teller(20)) hulpma=conv(substr(fdat,4,2)) hulpja=conv(right(fdat,2)) if hulpdag>30 hulpma=hulpma+1 hulpdag=hulpdag-29 endif if hulpma>12 hulpja=hulpja+1 hulpma=hulpma-12 endif fdatum=fdat ftotaal=totbet help=conv(hulpdag) ndag=shr(help) help=conv(hulpma) nmaa=shr(help) help=conv(hulpja) njaa=shr(help) vdatum=ndat ;vervaldatum in zone zetten klsaldo=0 fakkode=" " fakkllv="K" fakname=klkode search=7,fakkode:&1932,e,fakrec &1932 down=7:&1933,e,fakdown if fakname<>klkode : goto &1933 if fakdat=fdatum : goto &1932 klsaldo=klsaldo+(faktebe-fakont) goto &1932 &1933 if abs(totbet-totbeta)>0.25 : goto &1935 totbeta=totbet &1935 klsaldo=klsaldo+totbet-totbeta &1936 search=11,klkode:klrec print=1:tab(01,21),"Tot. fakt. : ",(-6.n2),totbet print=1:tab(01,22),"Ontvangen : ",(-6.n2),totbeta print=1:tab(01,23),"Verschil : ",(-6.n2),totbet-totbeta print=1:tab(01,24),"Saldo : ",(-6.n2),klsaldo print=45:tabv(01),tab(xx),ltb,gener(130-xx,hto) print=45:tabv(01),tab(xx),vtb,tab(10+xx),"Goederen",tab(20+xx),"Distributiekost % ",(n2),klkost*100,(e),tab(45+xx),"Btw % ",tab(52+xx),"Btwbedrag" print=45:tabv(01),tab(xx),lto,gener(65-xx,hto) print=45:tabv(01),tab(10+xx),(-5.n2),zon3(1),tab(24+xx),zon5(1),tab(45+xx),(n2.n2),zon2(1),tab(55+xx),(-4.n2),zon4(1),(e),tab(100+xx),"Tot. Goederen",tab(120+xx),":",(-6.n2),totbon print=45:tabv(01),tab(10+xx),(-5.n2),zon3(2),tab(24+xx),zon5(2),tab(45+xx),(n2.n2),zon2(2),tab(55+xx),(-4.n2),zon4(2),(e),tab(100+xx),"Kost %",(n2),klkost*100,(e),tab(120+xx),":",(-6.n2),totkost print=45:tabv(01),tab(10+xx),(-5.n2),zon3(3),tab(24+xx),zon5(3),tab(45+xx),(n2.n2),zon2(3),tab(55+xx),(-4.n2),zon4(3),(e),tab(100+xx),"Tot. Btw",tab(120+xx),":",(-6.n2),totbtw print=45:tabv(01),tab(100+xx),"Totaal leeggoed",tab(120+xx),":",(-6.n2),totleeg1+totleeg0 a=len$(tekstl) print=45:tabv(01),tab(10+xx),tekstl,tab(10+xx),gener(a,"_"),tab(100+xx),"<<< TOTAAL >>>",tab(120+xx),":",(-6.n2),totbet a=len$(tekstl2) print=45:tabv(01),tab(10+xx),tekstl2,tab(10+xx),gener(a,"_"),tab(100+xx),"Betaald",tab(120+xx),":",(-5z.n2),totbeta print=45:tabv(01),tab(xx),"Tot. openstaande facturen : ",(-6.n2),klsaldo-klover,(e),tab(45+xx),"Vervaldatum : ",vdatum if totbet=totbeta print=45:tabv(00),tab(70+xx),"<< VOLDAAN >>" endif print=45:tabv(01),"VERKOOPSVOORWAARDEN : betaalbaar binnen de 15 dagen na factuurdatum." print=45:tabv(01),"In geval van betwisting zijn enkel de rechtbanken van Brugge bevoegd." print=45:ff close=45 &1940 bondruk="Y" modif=14,bonkode:next,e,bonrec next bonaant test=0 ldgo.seg 1 if test=1 : goto &1945 if bonbeta=0 : goto &1945 ldgo.seg 2 &1945 bonklant=klkode bonnumer=fklnum search=14,bonkode:&1965,e,bonrec bonfak=drfak bonverw="Y" &1950 modif=14,bonkode:&1960,e,bonrec goto &90 &1960 if e=74 : goto &1970 &1965 print=1:tab(01,24),"Fout bonklant bonnummer : ",e," ",bonklant," ",bonnumer stop &1970 print=1:tab(01,24),atb(21) print=1:tab(01,24),bell,"Deze bon staat open op andere terminal afleggen !!!" ask=1:=j goto &1950 &3000 print=45:tabv(01),tab(xx),gener(132-xx,hto) a=len$(tekstl) print=45:tabv(04),tab(40+xx),tekstl,tab(40+xx),gener(a,"_") a=len$(tekstl2) print=45:tabv(01),tab(40+xx),tekstl2,tab(40+xx),gener(a,"_") lijntel=lijntel+6 print=45:ff close=45 lijntel=0 pagnum=pagnum+1 gosub &9910 return &9900 bonklant=klkode bonnumer=fklnum search=14,bonkode:&9910,e,bonrec drfak=bonfak if bonfak<>0 : goto &9910 verkfok="999999" verktel=32000 search=8,verkkey:&9902,e,verkrec &9902 up=8:&9903,e,verkdown goto &9904 &9903 verkfok="000000" &9904 teller(02)=conv(verkfok)+1 teller(14)=teller(02) teller(41)=teller(02) par(3)=param3 bonfak=teller(41) drfak=bonfak modif=14,bonkode:&9905,e,bonrec goto &9910 &9905 print=1:tab(01,24),"Fout modif bonkode : ",e," ",bonkode stop &9910 mar=conv(xx) print=45:chr$(27)+"T"+chr$(6)+chr$(0)+chr$(27)+"&a"+mar+"l" dubbels="N" print=45:lar print=45:tabv(00),left(naam,len$(naam))," STORAGE FACTUUR" print=45:endlar print=45:tabv(02),titel(01) print=45:tabv(01),adres print=45:tabv(01),gemeen print=45:tabv(01),"TELEFOON : ",telf1 print=45:tabv(00),tab(45+xx),left(klnaam,len$(klnaam)) print=45:tabv(01),"TELEFAX : ",fax if kltwnaam<>" " print=45:tabv(00),tab(45+xx),left(kltwnaam,len$(kltwnaam)) endif print=45:tabv(01),"ONDERNEMINGSNR. : ",handel,tab(45+xx),klstra print=45:tabv(01),"BTWNUMMER : ","BE.0"+btwnr print=45:tabv(01),"BANKNUMMER : ",banknr(1),tab(45+xx),klgem print=45:tabv(01),"E-MAIL : ",email print=45:tabv(01),"WEBSITE : ",web print=45:chr$(27)+"T"+chr$(5)+chr$(0)+chr$(27)+"&a0l" print=45:con print=45:tabv(01),gener(132,hto) print=45:tabv(01),tab(xx)," Klantcode : ",klkode," Btwnr. : ",kllbtw,klbtwnr," Datum : ",fdat," Factuurnr.",(-5),drfak,(e)," Bladzijde",(-3),pagnum print=45:tabv(01),gener(132,hto) print=45:tabv(01),tab(xx),"Datum",tab(12+xx),"Code",tab(20+xx),"Aantal",tab(32+xx),"Artikel",tab(63+xx),"Netto Prijs",tab(78+xx),"Promotie",tab(89+xx),"Goederen",tab(101+xx),"Leeggoed + ",tab(113+xx),"Leeggoed - ",tab(124+xx),"Btw %" print=45:tabv(01),gener(132,hto) lijntel=16 fnummer=strn(conv(drfak)) fnummer=shr(fnummer) return &9990 for e=1 to 10 if verkteg(e)=" " : goto &9991 if verkteg(e)=artreknr : goto &9994 next e verktbe(1)=verktbe(1)+prijs goto &9995 &9991 verkteg(e)=artreknr verktbe(e)=prijs goto &9995 &9994 verktbe(e)=verktbe(e)+prijs &9995 return eseg 0 segment 1 goto &10 &5 test=1 ret.seg &10 a=conv(substr(fdat,4,2)) mnd(1)="JANUARI" mnd(2)="FEBRUARI" mnd(3)="MAART" mnd(4)="APRIL" mnd(5)="MEI" mnd(6)="JUNI" mnd(7)="JULI" mnd(8)="AUGUSTUS" mnd(9)="SEPTEMBER" mnd(10)="OKTOBER" mnd(11)="NOVEMBER" mnd(12)="DECEMBER" omsch=large(mnd(a)) fakoms="FAKT. "+omsch+" "+right(fdat,2) teller(02)=drfak teller(14)=teller(02) teller(41)=teller(02) par(3)=param3 verkfok=conv(teller(02)) verktel=0 verkdat=fdat verkkla=klkode verkfak=fnummer verkoms=fakoms verkbtw=totbtw verkdeb=ftotaal &30 verkcnf="F" if totbtw>=0 : goto &40 verkcnf="K" &40 for e=1 to 5 verkkod(e)=conv(zon1(e)) verkbed(e)=zon3(e)+zon5(e) next e insert=8,verkkey:&5,e,verkrec &50 hisnaam=klkode histdat=right(fdat,2)+substr(fdat,4,2)+left(fdat,2) histel=0 hisdat=fdat hiskod1="V" hiskod2=" " hisbed1=ftotaal hiskllv=klkode hisbed2=0 hisfakt=fnummer hisbetw=" " hisbtw=totbtw hisoms="FAKT. "+omsch+" "+right(fdat,2) &100 histel=teller(07) insert=6,hiskode:&105,e,kllvhis delkode=verkkey delhist=hiskode insert=15,delkode:next,e,delrec modif=15,delkode:next,e,delrec goto &110 &105 teller(07)=teller(07)+1 goto &100 &110 teller(07)=teller(07)+1 par(3)=param3 &120 fakkllv="K" fakname=klkode fakfak=fnummer fakklv="K" faknaam=klkode faknum=fnummer fakdat=fdatum fakverv=vdatum faktebe=ftotaal fakont=totbeta fakoms="FAKT. "+omsch+" "+right(fdat,2) if faktebe=0 : goto &137 if totbeta=totbet : goto &137 fakteba="Y" faktest="N" delfak=fakkode modif=15,delkode:&132,e,delrec &132 insert=7,fakkode:&134,e,fakrec goto &136 &134 modif=7,fakkode:&135,e,fakrec goto &136 &135 print=1:tab(01,24),"Fout insert fakkode : ",e," ",fakkode stop &136 if right(fakdat,2)"7" : goto &138 omzet=omzet+verktbe(i4) &138 next i4 ;verrekenen totale omzet : exclusief btw en verpakkingen kljomz=kljomz+omzet ;verhogen jaaromzet kltego=kltego+faktebe ;verhogen te ontvangen van deze klant if verkcnf="K" : goto &140 ;kredietnota kltbtw=kltbtw+totbtw goto &145 &140 klcred=klcred+totbtw &145 modif=11,klkode:&146,e,klrec goto &150 &146 print=1:tab(01,24),"Fout modif klkode : ",e," ",klkode stop &150 reknum=vastrek(01) search=10,reknum:&161,e,rekrec goto &162 &161 print=1:tab(01,24),"Fout search rekkode : ",e," ",reknum stop &162 if verkcnf="K" : goto &164 rekdeb(1)=rekdeb(1)+ftotaal rekdeb(2)=rekdeb(2)+ftotaal madbcr="D" ;debitering normale factuur mabedrd=ftotaal ;debet bedrag is factuur bedrag mabedrc=0 goto &170 &164 ;verwerking credit nota rekcred(1)=rekcred(1)+abs(ftotaal) rekcred(2)=rekcred(2)+abs(ftotaal) madbcr="C" mabedrc=abs(ftotaal) ;positief maken creditbedrag mabedrd=0 &170 modif=10,reknum:&171,e,rekrec goto &172 &171 print=1:tab(01,24),"Fout modif rekkode : ",e," ",reknum stop &172 madatum=verkdat madat=right(madatum,2)+substr(madatum,4,2)+left(madatum,2) makode="2" ;kode verkoop makllev="K" ;kode klant maklv=klkode ;sleutel klant matgfak=shr(fnummer) ;factuurnummer maomsch=fakoms ;omschrijving factuur mareknr=reknum ;klaarzetten voor insert te doen gosub &500 &175 ;aanpassen btw rekening of btw op credit nota's if verkcnf="K" : goto &185 &180 reknum=vastrek(03) search=10,reknum:&415,e,rekrec rekcred(1)=rekcred(1)+totbtw rekcred(2)=rekcred(2)+totbtw madbcr="C" mabedrc=totbtw mabedrd=0 modif=10,reknum:&415,e,rekrec gosub &500 goto &190 &185 reknum=vastrek(05) search=10,reknum:&415,e,rekrec rekdeb(1)=rekdeb(1)+abs(totbtw) rekdeb(2)=rekdeb(2)+abs(totbtw) madbcr="D" mabedrd=abs(totbtw) mabedrc=0 modif=10,reknum:&415,e,rekrec gosub &500 &190 for i2=1 to 10 if verkteg(i2)=" " : goto &200 if verktbe(i2)=0 : goto &200 reknum=verkteg(i2) search=10,reknum:&191,e,rekrec goto &192 &191 print=1:tab(01,24),"Fout modif rekkode : ",e," ",reknum stop &192 if verktbe(i2)<0 : goto &194 rekcred(1)=rekcred(1)+verktbe(i2) rekcred(2)=rekcred(2)+verktbe(i2) madbcr="C" mabedrc=verktbe(i2) mabedrd=0 goto &198 &194 rekdeb(01)=rekdeb(01)+abs(verktbe(i2)) rekdeb(02)=rekdeb(02)+abs(verktbe(i2)) madbcr="D" mabedrd=abs(verktbe(i2)) mabedrc=0 &198 modif=10,reknum:&191,e,rekrec gosub &500 &200 next i2 par(3)=param3 par(4)=param4 ret.seg &415 print=1:tab(01,24),"Fout search - modif rekkode : ",e," ",rekkode stop &500 if rekhok<>"N" : goto &501 return &501 param3=par(3) mareknr=reknum &502 matel=teller(01) makode2=makod9 insert=9,makod9:&504,e,mahisre for i=1 to 10 if delmakod(i)=" " : goto &503 next i goto &505 &503 delmakod(i)=makod9 modif=15,delkode:&505,e,delrec goto &505 &504 teller(01)=teller(01)+1 goto &502 &505 teller(01)=teller(01)+1 par(3)=param3 madbcr=" " mabedrd=0 mabedrc=0 return eseg 1 segment 2 &10 finrec=" " fintel=0 finkla=0 finsaldo=0 finbank=0 for i=1 to 10 fintbed(i)=0 next i hiskllv=" " hisbed1=0 hisbed2=0 hisbtw=0 mahisre=" " mabedrd=0 mabedrc=0 &70 search=11,klkode:&75,e,klrec goto &80 &75 print=1:tab(01,24),"Fout search klkode : ",e," ",klkode stop &80 hisnaam=klkode histdat=right(fdat,2)+substr(fdat,4,2)+left(fdat,2) histel=0 hiskod2=" " hisbed1=totbeta hisbed2=0 hisdat=fdat hiskod1="F" hiskllv=klkode hisfakt=fnummer hisbetw=vfinrek(02) hisbtw=0 hisoms=substr(fdat,4,2)+"/"+left(fdat,2) if totbeta>ftotaal : goto &81 goto &85 &81 hiskod2="T" hisbed2=totbeta-ftotaal &85 insert=6,hiskode:&90,e,kllvhis goto &95 &90 histel=histel+1 teller(07)=teller(07)+1 goto &85 &95 teller(07)=teller(07)+1 par(3)=param3 &100 kltego=kltego-totbeta modif=11,klkode:&105,e,klrec goto &110 &105 if e=74 : goto &110 print=1:tab(01,24),"Fout modif klkode : ",e," ",klkode stop &110 rekkode=vfinrek(02) search=10,rekkode:&111,e,rekrec goto &115 &111 print=1:tab(01,24),"Fout search rekkode : ",e," ",rekkode stop &115 finoms=fakoms finuitr=substr(fdat,4,2)+"/"+left(fdat,2) findat=fdat finfaknr=fnummer finklva="K" finkllv=klkode finbank=totbeta finkla=-totbeta finsaldo=rekdeb(2)-rekcred(2) finrek=vfinrek(02) param3=param3 fintel=teller(04) &116 finkode2=finkode insert=5,finkode:&119,e,finrec goto &120 &119 fintel=fintel+1 teller(04)=teller(04)+1 goto &116 &120 teller(04)=teller(04)+1 par(3)=param3 makode="3" matgfak=shr(fnummer) rekkode=vfinrek(02) if finbank>0 : goto &121 kode="C" som=-totbeta ldgo.seg 3 goto &122 &121 kode="D" som=totbeta ldgo.seg 3 &122 if finkla=0 : goto &125 rekkode=vastrek(01) if finkla>0 : goto &123 som=abs(finkla) kode="C" ldgo.seg 3 goto &125 &123 som=abs(finkla) kode="D" ldgo.seg 3 &125 par(4)=param4 par(3)=param3 ret.seg eseg 2 segment 3 search=10,rekkode:&601,e,rekrec goto &602 &601 print=1:tab(01,24),"Fout search rekkode : ",e," ",reknum stop &602 if kode="C" : goto &605 rekdeb(1)=rekdeb(1)+som rekdeb(2)=rekdeb(2)+som madbcr="D" mabedrd=som mabedrc=0 goto &610 &605 rekcred(1)=rekcred(1)+som rekcred(2)=rekcred(2)+som madbcr="C" mabedrc=som mabedrd=0 &610 modif=10,rekkode:&601,e,rekrec rekhok=large(rekhok) if rekhok="N" : goto &620 mareknr=rekkode madatum=fdat madat=right(madatum,2)+substr(madatum,4,2)+left(madatum,2) makllev="K" maklv=klkode makode="3" matgfak=shr(fnummer) maomsch=finuitr matel=teller(01) &611 makode2=makod9 insert=9,makod9:&612,e,mahisre goto &620 &612 matel=matel+1 teller(01)=teller(01)+1 goto &611 &620 teller(01)=teller(01)+1 par(3)=param3 madbcr=" " mabedrc=0 mabedrd=0 ret.seg eseg 3 segment 200 test1=conv(right(dat,2)) test1=test1+1900 if test1>1950 : goto &10 test1=test1+100 &10 test1=test1*372 test2=conv(substr(dat,4,2)) test2=test2*31 test1=test1+test2 test2=conv(left(dat,2)) test1=test1+test2 ret.seg eseg 200 segment 206 if artreknr=vastrek(34) : goto &ret assign=48,"HISTOAR",wr,si cfile=48,d=32,k=18:next,e hivoor=artgino hitype="K" hiwie=bonklant hibon=bonnumer hiart=artkey hidat=right(ndat,2)+substr(ndat,4,2)+left(ndat,2) hiuur=conv(conv(date(5))) himin=conv(conv(date(6))) hitel=1 &10 insert=48,hikode:&12,e,hirec goto &ret &12 hitel=hitel+1 if e=81 : goto &10 print=1:tab(01,24),"Fout bijvoegen in historiek/stock artikel : ",(n3),e print=1:tabv(01),hiart,"³",hidat,"³",hiuur,":",himin,"³",hitel,"³",(-7z.zz),hiaant,(e),"³",hitype,"³",hiwie ask=1:=j &ret ret.seg eseg 206 end