; Routines speciaal Chris Willems Quit ; ; Bereken rembours van alle bonnen van alle facturen met een bon ; Geef de eventueele verschillen met factuur TestFacturen Set FANr=600000 For Set FANr=$O(^KFA("F",FANr),-1) Quit:FANr<400000 Do Quit:$G(R)="-" . Quit:$P(^KFA("F",FANr,0,0),D,2)'="F" . Set BONNr=$O(^KFA("F",FANr,"U")) . Quit:$E($O(^KFA("F",FANr,BONNr)))="U" . Set KLNr=$P(^KFA("F",FANr,0,0),D) . Quit:$P($G(^KU1($E(BONNr,2,7),"F")),D)'=KLNr . Quit:$$SkipFactuurWegensGewijzigdeContantKorting(FANr) . Quit:$$SkipFactuurWegensKlant(FANr) . Quit:$P($$BON^REMBOURS($E(BONNr,2,7)),D,6) . Do TestFactuur(FANr) . ;Read R Quit TestFactuur(FANr) Set BONNr="U",R=^KFA("F",FANr,0,0),FactValue=$J($P(R,D,12)-$P(R,D,13),0,2) Set KLNr=$P(^KFA("F",FANr,0,0),D) Write !,FANr,?10,KLNr,?20,##class(CHUI.Klant.Algemeen).GeefBusinessType(KLNr),!,"FA = ",FactValue For Set BONNr=$O(^KFA("F",FANr,BONNr)) Quit:$E(BONNr)'="U" Do . Write !,$E(BONNr,2,7) . Do TestBon($E(BONNr,2,7),FactValue) Write !! Quit TestBon(BONNr,FactValue) Set NewValue=$$BON^REMBOURS(BONNr) Set CalcValue=$$CALCBON^FLOWBON5(BONNr) Write !,"CW = ",NewValue Write !,"CB = ",CalcValue ;If +NewValue=+OldValue,+OldValue=+$G(FactValue) If +NewValue=+$G(FactValue),+CalcValue=+$G(FactValue) Else Read R Quit ; ;****************************************************************** SkipFactuurWegensGewijzigdeContantKorting(FANr) New R,KLNr,FactuurDatum,LogDatum,SkipFactuur Set SkipFactuur="" Set R=^KFA("F",FANr,0,0),KLNr=$P(R,D),FactuurDatum=$P(R,D,6) Set LogDatum=$$CONVDATE^vhLib.DataTypes(FactuurDatum,"DKP","DSN") For Set LogDatum=$O(^DLOG("K","KL",KLNr,LogDatum)) Quit:LogDatum="" Do Quit:SkipFactuur . Set R=^DLOG("K","KL",KLNr,LogDatum) . If $P(R,D)="W",$P(R,D,2)=117,$P(R,D,9)'=$P(R,D,10) Set SkipFactuur=1 Quit SkipFactuur SkipFactuurWegensKlant(FANr) New R,KLNr,SkipFactuur Set SkipFactuur="" Set R=^KFA("F",FANr,0,0),KLNr=$P(R,D) Set:'$$ISREMB^REMBOURS(KLNr) SkipFactuur=1 Set:##class(CHUI.Klant.Algemeen).GeefBusinessType(KLNr)="B2B" SkipFactuur=1 If KLNr'=7587,KLNr'=5069,KLNr'=4682,KLNr'=16269 Else Set SkipFactuur=1 Quit SkipFactuur ; ;****************************************************************** ; Opzetten locals voor het testen van inkomende facturen (PRA) TestInkomendefactuur Set AFBTW=2410.26 Set BF="EUR" Set BH=1201302 Set BJ=2013 Set BM="02" Set BP="2013.02" Set BPE=0 Set BPEC="" Set BTWIC=2410.26 Set BTWMC="" Set BTWOH="" Set BTWVL="" Set BX=9 Set COM=937217 Set DVO="" Set EXBA="" Set FC="F" Set FDT="30.01.13" Set I1="BLUMJULIUSGMBH 5005" Set KC=5005 Set KKB=344.32 Set KN="BLUM JULIUS GMBH" Set LREF="" Set MPAR="1.0000" Set MST=11477.44 Set NABTW="" Set NETA="" Set NETD="" Set NETG=11477.44 Set NETI="" Set OM1="" Set QD=2 Set SRT="" Set SWAN=1 Set SWTOL=0 Set SWX="" Set TTB=11477.44 Set VM="EUR" Set VVD="30.04.13" Set BR("604100 ")=TTB Kill ^HULP(boot,$J,0) Set BR="",R1=0 For Set BR=$O(BR(BR)) Quit:BR="" Do . I BR(BR) S R1=R1+1,^HULP(boot,$J,0,R1)=BR_"###"_BR(BR)_"###"_$P(@("^"_Q_"AR(BR,0)"),D,3)_"##\" Do ^KT643 Quit ; Opzetten locals voor het testen van uitgaande facturen (PRA) TestUitgaandefactuur Set BF="EUR" Set BH=1201302 Set BJ=2013 Set BM="02" Set BP="2013.02" Set BR("703000 ")="355.50" Set BR("746000 ")=12.34 Set BTW=75.01 Set BTW(0)="0.00" Set BTW(1)="0.00" Set BTW(2)="0.00" Set BTW(3)="0.00" Set BTW(4)="0.00" Set BTW(5)="0.00" Set BTW(6)="0.00" Set BTW(7)="0.00" Set BTW(8)=75.01 Set BX=9 Set FC="F" Set FDT="13.02.13" Set I1="DIAPAL 1147" Set KC=1147 Set KKB=10.66 Set KN="DIAPAL " Set LXT="0.00" Set LXT(0)="0.00" Set LXT(1)="0.00" Set MST=357.18 Set MST(0)="0.00" Set MST(1)="0.00" Set MST(2)="0.00" Set MST(3)="0.00" Set MST(4)="0.00" Set MST(5)="0.00" Set MST(6)="0.00" Set MST(7)="0.00" Set MST(8)=357.18 Set MST(10)="0.00" Set MST(11)="0.00" Set NET=367.84 Set NET(0)="0.00" Set NET(1)="0.00" Set NET(2)="0.00" Set NET(3)="0.00" Set NET(4)="0.00" Set NET(5)="0.00" Set NET(6)="0.00" Set NET(7)="0.00" Set NET(8)=367.84 Set PBTW(0)="0%" Set PBTW(1)="6%" Set PBTW(2)="17%" Set PBTW(3)="19%" Set PBTW(4)="25%" Set PBTW(5)="12%" Set PBTW(6)="19.5%" Set PBTW(7)="20.5%" Set PBTW(8)="21%" Set TTB=442.85 Set TTBF=442.85 Set VM="EUR" Set VVD="13.03.13" Set R="FNR\V\\"_BJ Do ^cA337 D ^cT160 Quit VERWERK(LEVNr,LevFANr,FaktDat,VervDat,Bedrag,MaatStaf,Btw,KontKort,Munt,Pariteit,BH,BJ,BM,BP,BX) New B,R,BF,CE,FC,FNR,I1,KC,KN,OM1,COM,FDT,VVD,VM,MPAR,OK,SWAN,BPE,BPEC,BR,AFBTW,HIS,QD New LREF,BTWOH,BTWIC,BTWMC,BTWVL,NABTW,NETD,NETI,NETA,KKB,EXBA,HIS,MST,NETG,TTB,SRT,SWX,DVO,SWTOL New MPAR,MSTA,MSTD,MSTG,MSTI Kill ^HULP(boot,$J) If '$G(BM) Do Quit:'OK 0 .Set OK=0,R=$$ASKL^vhINP("FCINK","VERWERK") .If R?.N,R>0,R<13 Do ^cT163 Set BR=$S(LEVNr=5005:"604100 ",1:""),R=$$MNTC^cAFE1(Q,BJ),BF=$P(R,D),QD=$P(R,D,2) Quit:BR="" 0 Set KC=LEVNr,FC="F",OM1="",COM=LevFANr,VM=Munt,MPAR=$J(Pariteit,0,4),SWTOL=0 Set (LREF,BTWOH,BTWMC,BTWVL,NABTW,NETD,NETI,NETA,SRT,SWX,DVO)="" If Bedrag<0 Set FC="C",Bedrag=-Bedrag,MaatStaf=-MaatStaf,Btw=-Btw,KontKort=-KontKort Set (NETG,TTB)=Bedrag,MST=MaatStaf,KKB=KontKort,(BTWIC,AFBTW)=Btw Set:FaktDat?.N FaktDat=$$EXTDATE^vhLib.DataTypes(FaktDat) Set FDT=$TR(FaktDat,"-",".") Set:VervDat?.N VervDat=$$EXTDATE^vhLib.DataTypes(VervDat) Set VVD=$TR(VervDat,"-",".") Set I1=^KL1(LEVNr),R=^KLE(I1,0),KN=$P(R,D,2) For R=0:1:9 Set CE(R)=$P(^KBA(15,R),D) Set EXBA=$G(^KBA(79)),SWAN=$G(^KBA(300)) Set:SWAN'=1 SWAN=0 Set BPE=$D(^KBA("SWBP")),BPEC="" Set:BPE BPEC=^KBA("SWBP") Do:BPE @BPEC Set HIS=$P(^KAR(BR,0),D,3) Set ^HULP(boot,$J,0,1)=BR_"###"_Bedrag_"###"_HIS Do ^KT643 Quit FNR