cT703 ;WEGSCHRIJVEN KALENDERMAAND-DETAIL ;%T70 ; [ 13/03/2002 - 15:13:54 - 58876,54834 ] ; T0 ;Wegschrijven kalendermaand-detail ; ; T0F ;Enregistrement détail par mois ; ; T0E ;Wegschrijven kalendermaand-detail ; ;via ^QAFS(0,1.1,100-199 G 1 ; ; regime=0 (lineair) ; HL = looptijd (aantal jaren) ; HA = aanschaffingswaarde ; JRBD = jaarbedrag per jaar ; HS = startmaand ; EBJ = boekjaar van startmaand ; EBM = eerste maand van 1e boekjaar ; ATL = aantal maanden nog in 1e boekjaar ; MND = telvariabele voor maand ; HR = restbedrag ivm laatste maand ; S0 F I=1:1:HL S JRBD(I)=$J(HA/HL,0,QD) S JRBD(HL)=JRBD(HL)+(HA-(JRBD(1)*HL)) ; event.versch. bij ltste jaar D IBJ^cT00A(Q,"","KM1","KM2") ; opbouwen KM1 en KM2 S EBJ=$$BJ^cAFE1(Q,HS),EBM=$G(KM1(EBJ)) I EBM="" S EBM=EBJ_"."_$P(KM1(DJ),".",2) G S0A:HS=EBM ; indien startmaand = 1e maand 1e boekjaar ; ; indien startmaand '= 1e maand boekjaar ; bepalen aantal maanden 1e boekjaar S ATL=1,MND=HS S0VOL S MND=MND+.01 S:$P(MND,".",2)>12 MND=MND+.88 I MND'>$S($G(KM2(EBJ)):KM2(EBJ),1:EBJ_"."_$P(KM2(DJ),".",2)) S ATL=ATL+1 G S0VOL S HM=HS,HR=JRBD(1) F HT=1:1:ATL S HB=$S(HT'=ATL:$J(JRBD(1)/ATL,0,QD),1:HR) D . S @("^"_Q_"AFS(INJ,KAT,RRZ_"" "",+HM)")=HB,HR=HR-HB,HM=HM+.01 . S:HM#1>.12 HM=HM\1+1.01 ; ; voor de andere jaren vanaf 2 tot HL ; F JR=2:1:HL D . S HR=JRBD(JR),HM=$G(KM1(EBJ+JR-1)) . I HM="" S HM=(EBJ+JR-2)_"."_$P(KM2(DJ),".",2)+.01 S:HM#1>.12 HM=HM\1+1.01 . F HT=1:1:12 S HB=$S(HT'=12:$J(JRBD(JR)/12,0,QD),1:HR) D .. S @("^"_Q_"AFS(INJ,KAT,RRZ_"" "",+HM)")=HB,HR=HR-HB,HM=HM+.01 .. S:HM#1>.12 HM=HM\1+1.01 G S0Z ; ; indien startmaand = 1e maand 1e boekjaar ; S0A F JR=1:1:HL D . S HR=JRBD(JR),HM=$G(KM1(EBJ+JR-1)) . I HM="" S HM=(EBJ+JR-2)_"."_$P(KM2(DJ),".",2)+.01 S:HM#1>.12 HM=HM\1+1.01 . F HT=1:1:12 S HB=$S(HT'=12:$J(JRBD(JR)/12,0,QD),1:HR) D .. S @("^"_Q_"AFS(INJ,KAT,RRZ_"" "",+HM)")=HB,HR=HR-HB,HM=HM+.01 .. S:HM#1>.12 HM=HM\1+1.01 S0Z K HR,HT Q ; ; regime=1 (lineair pro rata temporis) ; S1 S HR=HA,HM=HS F HT=1:1:(HL*12) S HB=$S(HT'=(HL*12):$J(HA/(HL*12),0,QD),1:HR) d . S ^(+HM)=HB,HR=HR-HB,HM=HM+.01 . S:HM#1>.12 HM=HM\1+1.01 S1Z K HR,HT Q ; ; regime=2 (degressief) ; S2 N SW S SW=HA<0 S:SW HA=-HA S HR=HA,HIL=100/HL,HJ="" F H=1:1:HL S HB=$J(HR*HIL/100*2,0,QD),HID=HB/HA*100 d I HR=0 Q . S:HIDHR HB=HR . S HJ=HJ_HB_D,HR=HR-HB S2A S HM=HS F HT=1:1:HL S HR=$P(HJ,D,HT) Q:HR="" d . F H=1:1:12 S HB=$J($S(H'=12:$P(HJ,D,HT)/12,1:HR),0,QD) d .. s ^(+HM)=HB*$S(SW:-1,1:1),HR=HR-HB,HM=HM+.01 .. S:HM#1>.12 HM=HM\1+1.01 I SW S HA=-HA S2Z K HR,HIL,HID,HJ,HB,HM Q ; 1 S @%Q1=0 12 S H=$D(@("^"_Q_"AFS(INJ,KAT,RRZ_"" "",0)")) F H=1:1 S H0=$O(^(0)) Q:H0="" K ^(H0) 14 S HL=$P(B(1),D,2),HG=$P(B(1),D,3),HA=$P(B(1),D,4),HS=$P(B(1),D,8) ; 2 D S0:HG=0,S1:HG=1,S2:HG=2 S @%Q1=1 ; YZ K H,H0,HL,HG,HA,HS Q ; Z X ^cZ ZZ ; 15.04.03 - 9 u 31 * V7.94