cTN1102 ; Aankoop : Dagboek : Executes na openen, wijzigen,... ; cTN101 ; YZ Q ; LEFACT(LE,DAT) ; Datum laatste factuur invullen bij leverancier ; Input: LE: Leverancier ; DAT: Documentdatum N B149 S $ZT="TRAP^cAN000" ; ; Check parameters LEFACT1 I '$L($G(LE)) G LEFACTZ I '$L($G(DAT)) G LEFACTZ ; ; Datum laatste factuur invullen LEFACT2 S B149=$$SIG^cAFA1("LE.A",LE,149) N Q S (Q,Q(49))=B149 D W^cAN220("LE.A","",LE,315,DAT) I $L(K) X "STOP" ; LEFACTZ Q ; ; --- Execute na OPENEN --- XO() N RZR,EREG,DBUI1,GRIDID,BREK,FC,S1,DBUI1,EREG,i,N0,BVN,BMNT N j,I3,REG,OMZ,OK S $ZT="TRAP^cAN000" ; ; Onthouden last reference XO1 D S1^cAFA1 ; ; ; --- Extra registraties --- ; ; Extra registraties samenstellen XO2 S BREK=$$SIGN^cAFA1("Q",$$Q^cAFA10(),3),OK=2 ; Basisrekeningen S FC=$P(B(1),D,23),S1=1 I FC="C" S S1=-1 ; Factuur/Credit nota? S DBUI1=UI1 ; UI1 van dagboek ; ; Extra registraties ; Opbouw: gescheiden door "\" ; 1. Grootboekrekening ; 2. Bedrag in munt BH ; 3. Bedrag in munt document ; ; Leverancier S EREG(0)=$P(BREK,D,2)_D_($P(B(1),D,16)*-1)_D_($P(B(1),D,19)*-1) ; Aftrekbare / verschuldigde BTW ; S EREG(1)=$P(BREK,D,5+(FC="C"))_D_$P(B(4),D,10)_D_$P(B(5),D,10) S AFBTW=$$UI1OP^cAFA1("CODE.9032","104","",1004) S EREG(1)=$$SIG^cAFA1("CODE.9032",AFBTW,106+(FC="C"))_D_$P(B(4),D,10)_D_$P(B(5),D,10) ; BTW-type I '$L($P(B(4),D,12)) G XO3 S EREG(2)=$$SIG^cAFA1("CODE.9032",$P(B(4),D,12),106+(FC="C"))_D_$P(B(4),D,13)_D_$P(B(5),D,13) ; ; Mtemp99 met extra registraties opzetten XO3 S GRIDID=$$GRIDID^cAFVBF01() K ^mtemp99(GRIDID) F i=0:1:7 S ^mtemp99(GRIDID,"BH.DB",0,i)=$G(B(i+1)) ; Hoofding XO30 S i="" XO31 S i=$O(EREG(i)) I '$L(i) G XO4 K N0 S BVN=$P(EREG(i),D,2),BMNT=$P(EREG(i),D,3) I ('BVN),('BMNT) G XO31 ; Geen bedrag -> geen boeking S $P(N0,D,7)=$S(i=0:"L",1:"G") ; Soort grootboekrekening S $P(N0,D,8)=$P(EREG(i),D) ; Grootboekrekening I '$L($P(N0,D,8)) X "STOP" ; Stoppen indien geen rekening ! F j=9:1:12 S $P(N0,D,j)=$$SIG^cAFA1("AR.A",$P(EREG(i),D),157+((j-9)*3)) ; Vaste analytische + EC-rekeningen S $P(N0,D,14)=$S(i=0:$P(B(1),D,10),1:"") ; Leverancier S $P(N0,D,15+(BVN<0))=BVN*$S(BVN<0:-1,1:1) ; Bedrag in munt BH S $P(N0,D,17+(BVN<0))=BMNT*$S(BMNT<0:-1,1:1) ; Bedrag in munt document S $P(N0,D,28)=$P(B(1),D,28) ; Datum laatste wijziging S $P(N0,D,29)=$P(B(1),D,29) ; Initialen laatste wijziging S $P(N0,D,30)=0 ; Operationeel S $P(N0,D,31)=$T(+0) ; Naam programma S $P(N0,D,32)=0 ; Niet tonen in registraties S ^mtemp99(GRIDID,"BH.REG",i,0)=N0 XO39 G XO31 ; ; Extra registraties verwerken XO4 S I3="" D REG^cTN1010(GRIDID,DBUI1,3_D_D_D_1) XO43 S I3=$O(^mtemp99(GRIDID,"BH.REG",I3)) G:'$L(I3) XO49 S REG(1)=^(I3,0) I $P(REG(1),D,30)=2 G XO43 ; Verwijderd D P^cAN220("REG","",$$UI1REG^cTN101($P(REG(1),D)),"REG","") I $L(K) X "STOP" ; Stoppen indien boeking niet gelukt XO48 G XO43 XO49 K ^mtemp99(GRIDID) ; Opkuis ; ; --- Divers --- ; ; Omzet Leverancier XO5 S OMZ="" F i=1:1:4 S OMZ=OMZ+$P(B(4),D,i) ; Netto goederen/diensten/investeringen/andere S OMZ=OMZ+$P(B(4),D,11) ; Niet-aftrekbare BTW D CUM^cTN102("LE",$P(B(1),D,10),$P(B(1),D,5),"O",OMZ,"") ; Omzet per maand D OMZ^cTN102("LE",$P(B(1),D,10),$P(B(1),D,5),OMZ) ; Omzet per jaar ; ; Opzetten laatste factuurdatum bij leverancier (bij online gelijkhouden) XO6 I '$G(SWCONV) D LEFACT($P(B(1),D,10),$P(B(1),D,7)) ; ; Link met aankoop verbreken (^TOA) XO7 I '$G(SWCONV) D LINK^cTN1114($P(B(1),D,12),$P(B(1),D,10),$P(B(1),D,3)) ; ; Terugzetten last reference XOY D S2^cAFA1 ; XOZ Q OK ; ZZ ; 29.08.07 - 10 u 22 * V8.09