cTN107 ; Balans ; cTN107 ; T1 ; ; T1F ; ; T1E ; ; YZ Q ; BTEMP(GRIDID,DMS,M1,M2,KEUID) ; Input: GRIDID: GridId van ^mtemp99, indien "" wordt er een nieuw nr bepaald ; DMS: DMS van type balans (KL.A,LE.A,AR.A) ; M1: Van maand (JJJJMM of JJJJ.MM) ; M2: Tot maand (JJJJMM of JJJJ.MM) ; KEUID: GridId van de ^mtemp99 met geselecteerde UI1's ; ; Output: 0\Foutboodschap ; of ; GRIDID S $ZT="ERR^cAFVBF01" N @$$INITVAR^cAFVBA01("GRIDID,DMS,M1,M2,KEUID") D QT^cAFVBO01 ; ; Ophalen GridId BTEMP1 I '$L($G(GRIDID)) S GRIDID=$$GRIDID^cAFVBF01() K ^mtemp99(GRIDID,"COMMON") S OK=GRIDID K oQ M oQ=Q ; ; Controle parameters BTEMP2 F i="DMS","M1","M2","KEUID" S @i=$G(@i) I '$L(DMS) G BTEMPZ I '$L(KEUID) G BTEMPZ ; ; Indeling boekingsmaanden BTEMP25 D Q49^cAFA10(Q,"REG") S MTUREF=$P($$REF^cAFA10(.Q,"BKJ.MND"),D) I '$L(MTUREF) G BTEMPZ S MTUREF=$$REPL^cAFA10(MTUREF,"UI1","MTUI1"),VNR="" ; ; Alle geselecteerd? BTEMP3 I '$P($G(^mtemp99(KEUID,"COMMON.PAR",0)),D) G BTEMP4 S KEUID=$$KEU^cAFVBA05(Q,DMS,$$SELALL^cAFVBA01(KEUID)) S KILL=1 ; ; Boekingsmaanden doorlopen (van - tot) BTEMP4 S MTUI1=$$Q^cAFA10()_" "_$$BJ^cTN003(.Q,M1)_" "_($TR(M1,".","")-.001) BTEMP41 S MTUI1=$O(@MTUREF) I ($P(MTUI1," ")'=$$Q^cAFA10) G BTEMPY S MTN=@MTUREF@(0),MT=$P(MTN,D,2),BJ=$P(MTN,D),I3="" I $L(M2),(MT>M2) G BTEMPY ; ; Geselecteerde rekeningen doorlopen BTEMP43 S I3=$O(^mtemp99(KEUID,"COMMON",I3)) I '$L(I3) G BTEMP41 S (N0,N1)="" ; ; Node 0 S $P(N0,D)=MT ; B101: Boekingsmaand S DC=$$SALDO^cTN004(.Q,I3,MT,DMS,"2DC") S $P(N0,D,3)=+$P(DC,"#") ; B103: Debet maand S $P(N0,D,4)=+$P(DC,"#",2) ; B104: Credit maand S DC=$$SALDO^cTN004(.Q,I3,MT,DMS,"7DC") S $P(N0,D,5)=+$P(DC,"#") ; B105: Debet boekjaar S $P(N0,D,6)=+$P(DC,"#",2) ; B106: Credit boekjaar S $P(N0,D,7)=+$$SALDO^cTN004(.Q,I3,BJ,DMS,3) ; B107: Beginsaldo S $P(N0,D,8)=BJ ; B108: Boekjaar S $P(N0,D,2)=$P(N0,D,5)-$P(N0,D,6)+$P(N0,D,7) ; B102: Totaal saldo S $P(N0,D,9)=$P(N0,D,3)-$P(N0,D,4) ; B109: Saldomaand S $P(N0,D,10)=+$P($P(N0,D),".",2) ; B110: Maandnummer ; ; Node 1 S $P(N1,D,$S(DMS="AR.A":1,DMS="KL.A":2,DMS="LE.A":3,DMS="ARA.A":4))=I3 ; ; Is er een bedrag ingevuld? S SW=0 F i=2:1:7 I $P(N0,D,i)'=0 S SW=1 Q ; ; Enkel meenemen indien er een bedrag is ingevuld I SW S ^mtemp99(GRIDID,"COMMON",$$VNR,0)=N0,^(1)=N1 ; BTEMP49 G BTEMP43 ; ; Opkuis BTEMPY K Q M Q=oQ K:$G(KILL) ^mtemp99(KEUID,"COMMON") ; BTEMPZ Q OK ; ; ############################################################################### ; HULP FUNCTIES ; ############################################################################### ; DEF() ; Defaultwaarden maanden ophalen voor filter S $ZT="^dmERROR" N @$$INITVAR^cAFVBA01("") S MND=$E($$SIG^cAFA1("Q",Q,210)+.01_"0",1,7) I $P(MND,".",2)>12 S MND=MND+.88 DEFZ Q MND ; ; Volgnummer historiek VNR() S VNR=VNR+1 Q VNR ; ZZ ; 29.08.07 - 10 u 22 * V8.09