cTN8060 ;BTW-listing .NET; cTN8060 ; YZ Q ; BL(GRIDID,UI1BL,CNTR) ; Berekenen BTW-listing voor Belgische firma's ; Input : GRIDID : volgnr van de grid ; UI1BL : UI1 BTW-listing ; CNTR = 1 : controle ; N OK,JR,BP1,BP2,IREFDB,I1,I2,UI1DB,DKL,BTWKL,LLVEN,LANDVEN,LANDKL,BEDR,BTW,BTWI S $ZT="TRAP^cAN000" S OK=1 K ^mtemp99(GRIDID,"BL") ; Ophalen jaar S JR=$$SIG^cAFA1("BL",UI1BL,101) ; Bepalen begin en einde periode S BP1=JR_".01" S BP2=JR_".12" S LLVEN=$$SIG^cAFA1("Q",Q,214) ; kenletters BTW-nr in de firma S LANDVEN=$P(^(1),D,22) ; land BTW administratie ; Aflopen verkoopdocumenten van begin tot einde periode S IREFDB=$P($$REF^cAFA10(.Q,"DB"),D,3) S I1=$TR(BP1,".","") S I1=I1-1 BLA S I1=$O(@IREFDB@("M1",Q,"V",I1)) I I1="" G BLZ I I1>$TR(BP2,".","") G BLZ S I2="" BLB S I2=$O(@IREFDB@("M1",Q,"V",I1,I2)) I I2="" G BLA S UI1DB="" BLC S UI1DB=$O(@IREFDB@("M1",Q,"V",I1,I2,UI1DB)) I UI1DB="" G BLB ; Testen of BTW-nr. vennootschap is ingevuld I $L($$SIG^cAFA1("DB",UI1DB,125)) G BLC ; Ophalen BTW-nr. van de klant S DKL=$P(^(0),D,9) S BTWKL=$$SIG^cAFA1("KL.A",DKL,116) S LANDKL=$P(^(0),D,8) ; Testen of land BTW-nummer = kenletters BTW-nr in de firma ; Indien definitief : volgende nemen ; Indien controle : land van de klant'=l S OK=1 ; berekenen I '$G(CNTR) D I 'OK G BLC . I '$L(BTWKL) S OK=0 Q ; geen BTW-nr ingevuld . I '$$BTW^cAFI1(BTWKL) S OK=0 Q ; geen geldig . I $E(BTWKL,3,999)?1."0" S OK=0 Q ; bevat enkel maar 0 . I $E(BTWKL,1,$L(LLVEN))'=LLVEN S OK=0 Q ; Land BTW-nr verschillend van land BTW-nr firma ; Indien controle BLD I $G(CNTR) D I 'OK G BLC . I $E(BTWKL,1,$L(LLVEN))=LLVEN D Q .. I $E(BTWKL,3,999)'?1."0",$$BTW^cAFI1(BTWKL) S OK=0 Q ; land BTW-nr gelijk aan land BTW-nr firma, meer dan enkel 0 . I LANDKL'=LANDVEN S OK=0 Q ; Indien land van de klant verschillend is van land van de BTW-administratie ; Totaal maatstaf en ; Totaal BTW-bedrag ophalen BLF S BEDR=$$SIG^cAFA1("DB",UI1DB,205) S BTW=$P($G(^(1)),D,10) I '$L(BEDR),'$L(BTW) G BLC S BTWI=$S($L(BTWKL):BTWKL,1:"~") ; Cummuleren per BTW-nummer en klant S $P(^mtemp99(GRIDID,"BL",BTWI,DKL),D)=$P($G(^mtemp99(GRIDID,"BL",BTWI,DKL)),D)+BEDR S $P(^mtemp99(GRIDID,"BL",BTWI,DKL),D,2)=$P($G(^mtemp99(GRIDID,"BL",BTWI,DKL)),D,2)+BTW ; Cummuleren per BTW-nummer S $P(^mtemp99(GRIDID,"BL",BTWI),D)=$P($G(^mtemp99(GRIDID,"BL",BTWI)),D)+BEDR S $P(^mtemp99(GRIDID,"BL",BTWI),D,2)=$P($G(^mtemp99(GRIDID,"BL",BTWI)),D,2)+BTW G BLC BLZ Q OK ; EXP(UI1BL,FILE) ; Exporteren BTW-listing ; Input: UI1BL: UI1 van de BTW-listing ; FILE : pad + file naar waar file moet geexporteerd worden N INHBL,UREFDET,KJ,B,MIN,LLVEN S $ZT="TRAP^cAN000" ; Ophalen gegevens IC-kwartaalopgave S INHBL=$$SIGN^cAFA1("BL",UI1BL,0) ; Opzetten variablen nodig voor exporteren S UREFDET=$P($$REF^cAFA10(.Q,"BL.DET"),D) ; Ophalen landcode venootschap S LLVEN=$$SIG^cAFA1("Q",Q,214) ; Ophalen jaar S KJ=$P(INHBL,D) ; Ophalen minmum bedrag S MIN=$P(INHBL,D,14) ; BTW-nummer S $P(B(1),D,7)=$P(INHBL,D,5) ; Ondertekenaar S $P(B(1),D,9)=$P(INHBL,D,10) ; Naam S $P(B(1),D,2)=$P(INHBL,D,6) ; Straat S $P(B(1),D,3)=$P(INHBL,D,7) ; Postcode S $P(B(1),D,5)=$P(INHBL,D,8)_" "_$P(INHBL,D,9) ; Telefoon S $P(B(1),D,13)=$P(INHBL,D,12) ; E-mail S $P(B(1),D,14)=$P(INHBL,D,13) ; Opstarten export S OK=$$VB^cTN80601(UI1BL,UREFDET,KJ,FILE,.B,MIN,LLVEN) EXPZ Q OK ; ZZ ; 11.12.09 - 14 u 25 * V9.06