KREDIET ;NAZICHT KREDIETWAARDIGHEID VAN KLANTEN ;KREDIET; [ 11/28/2003 3:47 PM ] ; ; Kontrole kredietwaardigheid ; Files : O = Orders ; L = leveringen ; F = Facturen ; D = Vervaldatum ; Output : Kredietwaardig 0 = neen, 1 = ja ; Openstaand saldo ; Kredietlimiet ; Openstaand vervallen saldo ; Factuurdatum oudste vervallen factuur ; Vervaldatum oudste vervallen factuur WAARDIG(KLNr,Files,Show,WachtW,ExtraTxt,Hulp) Q 1 ; AX neemt de controle op kredietwaardigheid over New R,Waardig,ChkLim,Limiet,Openst,Verval,ChkOldFD,MaxDays,OFaktDat,OVervDat,OFANr Set Files=$G(Files),Show=$G(Show) Set:Files="" Files="OLFD" Set WachtW=$G(WachtW) Set R=$$CHKLIM(KLNr,Files,,.Hulp),ChkLim=$P(R,D),Limiet=$P(R,D,2),Openst=$P(R,D,3),Verval=$P(R,D,4) Set:Verval<0 MaxDays=9999 ; Indien vervallen <0 dan geen controle op de maximum vervaldag facturen Set R=$S(Files["D":$$CHKVERVD(KLNr,.MaxDays,.Hulp),1:"") Set ChkOldFD=$P(R,D),MaxDays=$P(R,D,2),OFaktDat=$P(R,D,3),OVervDat=$P(R,D,4),OFANr=$P(R,D,5) If Limiet,Limiet<10 Set Waardig=0 Else Set Waardig='ChkLim Set:Waardig Waardig='ChkOldFD If 'Waardig Do .If $L(WachtW) Set Waardig=$$WACHTW(KLNr,Files,WachtW,Waardig,.ExtraTxt) Quit .Do:Show SHOW(KLNr,Files,Limiet,Openst,MaxDays,OFaktDat,OVervDat,,,.ExtraTxt,0,,.Hulp) Set Waardig=Waardig_D_Openst_D_Limiet_D_Verval_D_$S(OVervDat:OFaktDat,1:"")_D_OVervDat Set:$D(Hulp(KLNr)) Hulp(KLNr)=Waardig Quit Waardig ; ; Kontrole kredietlimiet ; Output : Limiet bereikt 0 = neen, 1 = ja ; Kredietlimiet ; Openstaand saldo CHKLIM(KLNr,Files,%J,Hulp) New R,Limiet,ChkLim,Openst,Verval Set R=$G(Hulp(KLNr,"CHKLIM")) Do:R="" .Set Files=$G(Files),%J=$G(%J) Set:Files="" Files="OLFD" .Set Limiet=$$GETLIM(KLNr,.Hulp),R=$$OPENST(KLNr,Files,%J,.Hulp),Openst=$P(R,D),Verval=$P(R,D,2) .Set:Limiet ChkLim=Limiet'>Openst .Set R=$G(ChkLim,0)_D_Limiet_D_Openst_D_Verval .Set:$D(Hulp(KLNr)) Hulp(KLNr,"CHKLIM")=R Quit R ; ; Kontrole oudste vervallen factuurdatum ; Output : Oudste vervallen factuur is ouder dan max aantal dagen 0 = neen, 1 = ja ; Max aantal dagen ; Datum oudste vervallen factuur ; Vervaldatum oudste vervallen factuur ; Factuurnummer oudste vervallen factuur CHKVERVD(KLNr,MaxDays,Hulp) New R,OFaktDat,OVervDat,OFANr Set R=$G(Hulp(KLNr,"CHKVERVD")) Do:R="" .Set:'$G(MaxDays) MaxDays=$P(^KOD(0,"F","UBLOK"),D) .Set R=$$GETFAKT(KLNr,,.Hulp) .Set OFaktDat=$P(R,D,3),OVervDat=$P(R,D,4),OFANr=$P(R,D,5) .Set R=$S(OVervDat:OVervDat<($H-MaxDays),1:0)_D_MaxDays_D_OFaktDat_D_OVervDat_D_OFANr .Set:$D(Hulp(KLNr)) Hulp(KLNr,"CHKVERVD")=R Quit R ; SHOW(KLNr,Files,Limiet,Openst,MaxDays,OFaktDat,OVervDat,OFANr,NoInp,ExtraTxt,Detail,Buttons,Hulp) New %J,I,R,Position,Titel,Text,ButAlign,TimeOut,Refresh,FaMunt,FaMntRnd,Show,TransBut Set Files=$G(Files) Set:Files="" Files="OLFD" Set NoInp=$G(NoInp),Detail=$G(Detail,1),Buttons="O"_$G(Buttons) Set FaMunt=$$MUNT^vhRtn1(,1),FaMntRnd=$$MUNT^vhRtn1(,4) Set TransBut=0,%J=$$%J^vhRtn1() Kill ^HULP(%J) Merge ^HULP(%J)=Hulp(KLNr) Set R="Klant\\"_KLNr_D_$P(^KKL(^KK1(KLNr),0),D,2),^HULP(%J,"K","K")=R If '$D(Limiet)!'$D(Openst) Do .Set R=$$CHKLIM(KLNr,Files,%J,.Hulp) .Set Limiet=$P(R,D,2),Openst=$P(R,D,3) Set ^HULP(%J,"K","O")="Openstaand\\\"_Openst If '$D(MaxDays)!'$D(OFaktDat)!'$D(OVervDat)!'$D(OFANr) Do .Set (MaxDays,OFaktDat,OVervDat,OFANr)="" .Quit:Files'["D" .Set R=$$CHKVERVD(KLNr,,.Hulp) .Set MaxDays=$P(R,D,2),OFaktDat=$P(R,D,3),OVervDat=$P(R,D,4),OFANr=$P(R,D,5) Set Position="C;C",Titel="",Text="Text",(ButAlign,TimeOut,Refresh)="" If OVervDat,OVervDat<($H-MaxDays) Do .Set R="Factuur "_$$EXTNUM^vhDTyp(OFANr,0,".T",0)_"van "_$$EXTDATE^vhDTyp(OFaktDat) .Do TEXT(R,.Text) .Set R="is meer dan "_MaxDays_" dagen vervallen" .Do TEXT(R,.Text) .Set R=$$EXTDATE^vhDTyp(OVervDat)_"." .Do TEXT(R,.Text) If Limiet,Limiet'>Openst Do .Do:$O(Text(""),-1) TEXT("",.Text) .Set R="ªKKredietlimietªk : "_$$EXTNUM^vhDTyp(Limiet,11,".T",FaMntRnd)_FaMunt .Do TEXT(R,.Text) .Set R="Openstaand : "_$$EXTNUM^vhDTyp(Openst,11,".T",FaMntRnd) .Do TEXT(R,.Text) .Set R="Overschreden : "_$$EXTNUM^vhDTyp(Openst-Limiet,11,".T",FaMntRnd)_FaMunt .Do TEXT(R,.Text) .Do:Detail DETAIL(KLNr,Files,.Text,.Hulp) .Set TransBut=1 .Set ^HULP(%J,"K","L")="Kredietlimiet\\\"_Limiet,^HULP(%J,"K","S")="Overschreden\\\"_(Openst-Limiet) Else Do .Do:$O(Text(""),-1) TEXT("",.Text) .Do TEXT("Kredietwaardig",.Text) .Quit:'Limiet .Set R="Limiet : "_$$EXTNUM^vhDTyp(Limiet,11,".T",FaMntRnd)_FaMunt .Do TEXT(R,.Text) .Set R="Openstaand : "_$$EXTNUM^vhDTyp(Openst,11,".T",FaMntRnd) .Do TEXT(R,.Text) .Set R="Krediet : "_$$EXTNUM^vhDTyp(Limiet-Openst,11,".T",FaMntRnd)_FaMunt .Do TEXT(R,.Text) .Do:Detail DETAIL(KLNr,Files,.Text,.Hulp) .Set TransBut=1 .Set ^HULP(%J,"K","L")="Limiet\\\"_Limiet,^HULP(%J,"K","S")="Krediet\\\"_(Limiet-Openst) Do:$D(ExtraTxt) .Do TEXT("&S",.Text) .Set R=$G(ExtraTxt) .Do:$L(R) TEXT(R,.Text) .For I=1:1 Set R=$G(ExtraTxt(I)) Quit:R="" Do TEXT(R,.Text) Set:NoInp ButAlign=-1,TimeOut=0,Refresh=1 Do INIT^vhLIST("KREDIET","SHOW",.Show) If TransBut Set Buttons=Buttons_"T" Else Set Buttons=$TR(Buttons,"T","") For I=1:1 Set R=$G(Show("B",I)) Quit:R="" Do .If Buttons[$P(R,"`",2) Set $P(R,"`",3)="" .Else Set $P(R,"`",3)="HD" .Set Show("B",I)=R Set R=Show("POS"),$P(R,";")=12-($O(Text(""),-1)\2),$P(R,";",3)=$P(R,";")+$O(Text(""),-1)-1 Set:$P(R,";")<4 $P(R,";")=4 Set:$P(R,";",3)>21 $P(R,";",3)=21 Set Show("POS")=R,$P(Show("SET"),"`")=R Do STORE^vhTERMINA(),WRITE^vhLIST(.Show) For Set R=$$SCROLL^vhLIST(.Show) Quit:R="O" Do:R="T" TRANS(%J,.Show) Do REFRESH^vhTERMINA() Merge:$D(Hulp(KLNr)) Hulp(KLNr)=^HULP(%J) Kill ^HULP(%J) Quit ; TEXT(Value,Text) New Count Set Count=$O(Text(""),-1)+1,Text(Count)=Value Quit ; DETAIL(KLNr,Files,Text,Hulp) New R,OpenOrd,OpenWMS,OpenBon,OpenFakt,FaMunt,FaMntRnd Set Files=$G(Files) Set:Files="" Files="OLFD" Set FaMunt=$$MUNT^vhRtn1(,1),FaMntRnd=$$MUNT^vhRtn1(,4) Do:Files["O" .Set OpenOrd=$$GETORD(KLNr,,.Hulp) .Do TEXT("",.Text) .Set R="ªUOrders (NS) : "_$$EXTNUM^vhDTyp(OpenOrd,11,".T",FaMntRnd)_$J("",$L(FaMunt))_"ªu" .Do TEXT(R,.Text) .Set R=" Niet gesloten : "_$$EXTNUM^vhDTyp($P(OpenOrd,D,2),11,".T",FaMntRnd) .Do TEXT(R,.Text) .Set R=" Gesloten : "_$$EXTNUM^vhDTyp($P(OpenOrd,D,3),11,".T",FaMntRnd) .Do TEXT(R,.Text) Do:Files["L" .Set OpenWMS=$$GETWMS(KLNr,,.Hulp),OpenBon=$$GETBON(KLNr,,0,.Hulp) .Do TEXT("",.Text) .Set R="ªULeveringen : "_$$EXTNUM^vhDTyp($P(OpenWMS,D)+$P(OpenBon,D),11,".T",FaMntRnd)_$J("",$L(FaMunt))_"ªu" .Do TEXT(R,.Text) .Set R=" WMS vrijgave : "_$$EXTNUM^vhDTyp($P(OpenWMS,D,2),11,".T",FaMntRnd) .Do TEXT(R,.Text) .Set R=" WMS : "_$$EXTNUM^vhDTyp($P(OpenWMS,D,3),11,".T",FaMntRnd) .Do TEXT(R,.Text) .Set R=" Op Bon : "_$$EXTNUM^vhDTyp($P(OpenBon,D),11,".T",FaMntRnd) .Do TEXT(R,.Text) Do:Files["F" .Set OpenFakt=$$GETFAKT(KLNr,,.Hulp) .Do TEXT("",.Text) .Set R="ªUFacturen : "_$$EXTNUM^vhDTyp($P(OpenFakt,D),11,".T",FaMntRnd)_$J("",$L(FaMunt))_"ªu" .Do TEXT(R,.Text) .Set R=" Vervallen : "_$$EXTNUM^vhDTyp($P(OpenFakt,D,2),11,".T",FaMntRnd) .Do TEXT(R,.Text) .Set R=" Niet vervallen : "_$$EXTNUM^vhDTyp($P(OpenFakt,D)-$P(OpenFakt,D,2),11,".T",FaMntRnd) .Do TEXT(R,.Text) Quit ; WACHTW(KLNr,Files,WachtW,Waardig,ExtraTxt) New WachtWOk Set Files=$G(Files) Set:Files="" Files="OLFD" Set Waardig=$G(Waardig,$$WAARDIG(KLNr,Files)) Do:'Waardig .Do STORE^vhTERMINA(),SHOW(KLNr,Files,,,,,,,1,.ExtraTxt,0) .Set WachtWOk=$$ASK^vhWACHTW(WachtW,,,0) .Do REFRESH^vhTERMINA() Quit $G(WachtWOk,1) ; GETLIM(KLNr,Hulp) New R,KlantId,Limiet Set Limiet=$G(Hulp(KLNr,"GETLIM")) Do:Limiet="" .Set KlantId=^KK1(KLNr),R=^KKL(KlantId,2),Limiet=$P(R,D,7)*1000 .Set:$D(Hulp(KLNr)) Hulp(KLNr,"GETLIM")=Limiet Quit Limiet ; OPENST(KLNr,Files,%J,Hulp) New R,Openst,OpenOrd,OpenWMS,OpenBon,OpenFakt Set R=$G(Hulp(KLNr,"OPENST")) Do:R="" .Set Files=$G(Files),%J=$G(%J) Set:Files="" Files="OLFD" .Set Openst=0,(OpenOrd,OpenWMS,OpenBon,OpenFakt)="" .Set:Files["O" OpenOrd=$$GETORD(KLNr,%J,.Hulp),Openst=Openst+OpenOrd .Set:Files["L" OpenWMS=$$GETWMS(KLNr,%J,.Hulp),Openst=Openst+OpenWMS .Set:Files["L" OpenBon=$$GETBON(KLNr,%J,Files'["F",.Hulp),Openst=Openst+OpenBon .If Files["F" Set (OpenFakt,R)=$$GETFAKT(KLNr,%J,.Hulp),$P(R,D)=$P(R,D)+Openst,Openst=R .Set R=Openst_D_$TR(OpenOrd,D,"#")_D_$TR(OpenWMS,D,"#")_D_OpenBon_D_$TR(OpenFakt,D,"#") .Set:$D(Hulp(KLNr)) Hulp(KLNr,"OPENST")=R Quit R ; GETORD(KLNr,%J,Hulp) New R,Openst,ORDNr,OLNr,OLUNr,PRNr,BONNr,OrdMunt,LijnMunt,Pariteit,Netto New IsStock,FaMntRnd,Closed,OOpenst,COpenst,ONetto,CNetto Set Openst=$G(Hulp(KLNr,"GETORD")) Do:Openst="" .Set %J=$G(%J),(OOpenst,COpenst,ORDNr)=0,FaMntRnd=$$MUNT^vhRtn1(,4) .For Set ORDNr=$O(^KOD(KLNr,"F",ORDNr)) Quit:ORDNr="" Do ..Set R=^KOD(KLNr,"F",ORDNr,1) ..If $P(R,D,25)'="P",$P(R,D,25)'="M" ..Else Quit ..Set OrdMunt=$P(R,D,18),Closed=$P(R,D,22) Set:OrdMunt'="MTL" Pariteit=$$MUNTPAR^vhRtn1(OrdMunt) ..Set (ONetto,CNetto)=0,OLNr=100 ..For Set OLNr=$O(^KOD(KLNr,"F",ORDNr,OLNr)) Quit:OLNr="" Do ...Set R=^KOD(KLNr,"F",ORDNr,OLNr),PRNr=$P(R,D,2),Netto=$P(R,D,9),OLUNr=$P(R,D,15),LijnMunt=$P(R,D,22) ...Quit:Netto<0 Quit:$P($P(R,D,17),"#")="KF11" ; Tekstlijn ...If PRNr,$D(^KPR(PRNr)) Set R=^KPR(PRNr,1),IsStock=$P(R,D,20) Quit:IsStock ...Set:OrdMunt="MTL" Pariteit=$$MUNTPAR^vhRtn1(LijnMunt) ...If 'Closed Set OOpenst=OOpenst+(Netto/Pariteit),ONetto=ONetto+(Netto/Pariteit) ...Else Do ....Set BONNr=$G(^ORDW("IO",ORDNr,OLUNr)) ....If 'BONNr Set COpenst=COpenst+(Netto/Pariteit),CNetto=CNetto+(Netto/Pariteit) ..Do:%J ...Set:ONetto ^HULP(%J,"O","O",ORDNr)=ONetto,^HULP(%J,"O","O","T")=$G(^HULP(%J,"O","O","T"))+ONetto ...Set:CNetto ^HULP(%J,"O","C",ORDNr)=CNetto,^HULP(%J,"O","C","T")=$G(^HULP(%J,"O","C","T"))+CNetto .Set OOpenst=$J(OOpenst,0,FaMntRnd),COpenst=$J(COpenst,0,FaMntRnd) .Set Openst=$J(OOpenst+COpenst,0,FaMntRnd)_D_OOpenst_D_COpenst .Set:$D(Hulp(KLNr)) Hulp(KLNr,"GETORD")=Openst Quit Openst ; GETWMS(KLNr,%J,Hulp) New R,Openst,CONSNr,ORDNr,FaMunt,FaMntRnd,BOpenst,KOpenst,WOpenst Set Openst=$G(Hulp(KLNr,"GETWMS")) Do:Openst="" .Set %J=$G(%J),(KOpenst,WOpenst,CONSNr)=0,FaMunt=$$MUNT^vhRtn1(,1),FaMntRnd=$$MUNT^vhRtn1(,4) .For Set CONSNr=$O(^ORDW("IK",KLNr,CONSNr)) Quit:CONSNr="" Do ..Set R=^ORDW("D",CONSNr) ..Quit:$P(R,D,20)="B" ..Set BOpenst=$$CALCWMS^FLOWBON5(CONSNr) ..Set:$P(BOpenst,D,7)'=FaMunt $P(BOpenst,D)=$$MUNT^vhRtn1($P(BOpenst,D,7),5,$P(BOpenst,D)_"#1",FaMunt) ..If $P(R,D,20)="K" Set KOpenst=KOpenst+BOpenst ..Else Set WOpenst=WOpenst+BOpenst ..If %J,BOpenst Do ...Set ^HULP(%J,"W",$S($P(R,D,20)="K":"K",1:"W"),CONSNr)=+BOpenst ...Set ^HULP(%J,"W",$S($P(R,D,20)="K":"K",1:"W"),"T")=$G(^HULP(%J,"W",$S($P(R,D,20)="K":"K",1:"W"),"T"))+BOpenst .Set KOpenst=$J(KOpenst,0,FaMntRnd),WOpenst=$J(WOpenst,0,FaMntRnd) .Set Openst=$J(KOpenst+WOpenst,0,FaMntRnd)_D_KOpenst_D_WOpenst .Set:$D(Hulp(KLNr)) Hulp(KLNr,"GETWMS")=Openst Quit Openst ; GETBON(KLNr,%J,GetExtra,Hulp) New R,Openst,BONNr,ULNr,BonMunt,Pariteit,Netto,FaMunt,FaMntRnd,TeBet,Extra Set Openst=$G(Hulp(KLNr,"GETBON")) Do:Openst="" .Set %J=$G(%J),GetExtra=$G(GetExtra,1),(Openst,BONNr)=0,FaMunt=$$MUNT^vhRtn1(,1),FaMntRnd=$$MUNT^vhRtn1(,4) .For Set BONNr=$O(^KUL(KLNr,"F",BONNr)) Quit:BONNr="" Do ..Set R=^KUL(KLNr,"F",BONNr,1) ..If $P(R,D,25)'="P",$P(R,D,25)'="M" ..Else Quit ..Set R=$$CALCBON^FLOWBON5(BONNr),TeBet=$P(R,D),Extra=$P(R,D,6),BonMunt=$P(R,D,7) ..Set:'GetExtra TeBet=TeBet-Extra ..Set:BonMunt'=FaMunt TeBet=$$MUNT^vhRtn1(BonMunt,5,TeBet_"#1",FaMunt) ..Set Openst=Openst+TeBet ..If %J,TeBet Set ^HULP(%J,"B",BONNr)=+TeBet,^HULP(%J,"B","T")=$G(^HULP(%J,"B","T"))+TeBet .Set Openst=$J(Openst,0,FaMntRnd) .Set:$D(Hulp(KLNr)) Hulp(KLNr,"GETBON")=Openst Quit Openst ; GETFAKT(KLNr,%J,Hulp) New R,KlantId,Openst,Verval,FANr,FaktKode,VervDat,FaktDat,TeBetFM,TeBet,OFaktDat,OVervDat,OFANr,FactKLNr,RFactCust Set FactKLNr=$$FactCust^FLOW(KLNr) Set:KLNr'=FactKLNr RFactCust=$$GETFAKT(FactKLNr) Set R=$G(Hulp(KLNr,"GETFAKT")) Do:R="" .Set %J=$G(%J),KlantId=^KK1(KLNr),(Openst,Verval)=0,FANr=9999,(OFaktDat,OVervDat,OFANr)="" .For Set FANr=$O(^KKL(KlantId,FANr)) Quit:FANr="" Quit:$L(FANr)>6 Do ..Set R=^KKL(KlantId,FANr),FaktKode=$P(R,D),FaktDat=$P(R,D,2),VervDat=$P(R,D,3),TeBetFM=$P(R,D,5),TeBet=$P(R,D,10) ..If 'TeBet,FaktKode="W" Set TeBet=TeBetFM ..Quit:"FCW"'[FaktKode Quit:'TeBetFM Quit:'TeBet ..Set:FaktKode="C" TeBet=-TeBet Set Openst=Openst+TeBet ..Set FaktDat=$$INTDATE^vhDTyp(FaktDat),VervDat=$$INTDATE^vhDTyp(VervDat) ..If FaktKode="F" Set:'OFaktDat OFaktDat=FaktDat Set:FaktDat$H Do ...Set Verval=Verval+TeBet ...If %J,TeBet Set ^HULP(%J,"F","V",FANr)=TeBet,^HULP(%J,"F","V","T")=$G(^HULP(%J,"F","V","T"))+TeBet ...If FaktKode="F" Set:'OVervDat OVervDat=VervDat,OFANr=FANr Set:VervDat999999 Do .Set R=^KKL(KlantId,FANr),VervDat=$P(R,D,3),VervDays=$H-$$INTDATE^vhDTyp(VervDat) .If VervDays,VervDays'1 .Set Txt(1)="Volgende klanten zonder ""Vrijgave WMS"" zijn niet kredietwaardig:~" .Set TUserId="AUTOFREE",KlKey="",Count=1 .For Set KlKey=$O(Waardig(KlKey)) Quit:KlKey="" Do ..Set R=^KKL(KlKey,0),KLNr=$P(R,D),KlNaam=$P(R,D,2) ..Set Count=Count+1,Txt(Count)="~"_$J(KLNr,5)_" "_KlNaam,Ref(Count-1)="KL\"_KLNr_"\R\$" .Set MailId=$$SYSTEM^vhMAIL("","Vrijgave WMS","Niet kredietwaardig",TUserId,.Txt,.Ref,1,1) Quit ; ; Bereken de betalingsinfo van een klant BETINFO(KLNr) New R,Element1,Element2,Element3,Element4,KredietLimiet,OudsteVervalDatum,VooruitBetaling,Rembours,Dubieus Set (Element1,Element2,Element3,Element4)="" Set R=$$WAARDIG(KLNr),OpenstSaldo=$P(R,D,2) Set KredietLimiet=$P(R,D,3),OudsteVervalDatum=$P(R,D,6) Set R=^KKL(^KK1(KLNr),3),Rembours=$P(R,D),VooruitBetaling=$P(R,D,2),Dubieus=$P(R,D,8) If OudsteVervalDatum,$H-OudsteVervalDatum>0 Set Element1=$H-OudsteVervalDatum_"VERVAL" ; Een factuur is meer dan 30 dagen vervallen If KredietLimiet,OpenstSaldo>KredietLimiet Set Element2="Lim" ; Kredietlimiet is overschreden If KredietLimiet>1 Set Element3="Kredietlimiet" ; Er is een kredietlimiet Else If KredietLimiet=1 Set Element3="NUL krediet" ; Kredietlimiet is 1 If VooruitBetaling Set Element4="Vooruit" ; Klant staat op vooruitbetaling Else If Rembours Set Element4="Rembours" ; Klant staat op rembours Set:Dubieus Element1="Dubieus" Quit $LB(Element1,Element2,Element3,Element4) ; ; Globaal vrijgeven van orders en leveringen via raadplegen klanten (enkel personen van de boekhouding) RPLKLFREE(KLNr) New FreeMailId,VrijgaveType Set VrijgaveType="" For Set VrijgaveType=$O(^VRIJGAVE(KLNr,VrijgaveType)) Quit:VrijgaveType="" Do . Set FreeMailId=^VRIJGAVE(KLNr,VrijgaveType) . If FreeMailId Set FreeMailId(VrijgaveType)=FreeMailId Do SHOW(KLNr,,,,,,,,,,,"V") Set VrijgaveType="" ; Verwijderen van de eventuele mails naar de boekhouding For Set VrijgaveType=$O(FreeMailId(VrijgaveType)) Quit:VrijgaveType="" Do . Set FreeMailId=FreeMailId(VrijgaveType) . Quit:$G(^VRIJGAVE(KLNr,VrijgaveType))=FreeMailId(VrijgaveType) . Do DELOBJ^vhMAIL(FreeMailId) Quit ; ; Geeft een LB van de debetgegevens van een klant ; $LB(Klantnummer,Kredietlimiet,Betalingsvoorwaarde,Aantal dagen vervallen,Openstaand bedrag in order ; ,Openstaand bedrag in het WMS,Openstaand bedrag op bon,Facturen niet vervallen,Facturen vervallen ; ,Risicokrediet,Totaal openstaand,Datum oudste factuur) DEBET(KlantNr) New R,BetalingsVoorwaarde,Rembours,VooruitBetaling,KredietLimiet,Status,DatumOudsteFactuur,Openst New OpenstOrder,OpenstWMS,OpenstBon,OpenstFactuur,OpenstFactVerv,OpenstFactNietVerv,Krediet,RisicoKrediet,Output &sql(SELECT BetalingsVoorwaarde,Rembours,VooruitBetaling INTO :BetalingsVoorwaarde,:Rembours,:VooruitBetaling FROM Derde_Klant.Klant WHERE Nummer=:KlantNr) Set Status=$LI($$BETINFO(KlantNr)) Set:BetalingsVoorwaarde="" BetalingsVoorwaarde="Kontant" Set:Rembours BetalingsVoorwaarde="Rembours" Set:VooruitBetaling BetalingsVoorwaarde="Vooruitbetaling" Set R=$$WAARDIG(KlantNr) Set KredietLimiet=$P(R,"\",3) Set DatumOudsteFactuur=$P(R,"\",5) Set R=$$OPENST(KlantNr),Openst=$P(R,"\"),OpenstOrder=$P($P(R,"\",6),"#") Set OpenstWMS=$P($P(R,"\",7),"#"),OpenstBon=$P(R,"\",8),OpenstFactuur=$P(R,"\",9) Set OpenstFactVerv=$P(OpenstFactuur,"#",2),OpenstFactNietVerv=$P(OpenstFactuur,"#")-OpenstFactVerv Set Krediet=$S(KredietLimiet:KredietLimiet-Openst,1:0),RisicoKrediet=$S(Krediet<0:-Krediet,1:0) Set Output=$LB(KlantNr,KredietLimiet,BetalingsVoorwaarde,Status,OpenstOrder, OpenstWMS,OpenstBon,$P(OpenstFactNietVerv,"#"),$P(OpenstFactVerv,"#") ,RisicoKrediet,Openst,DatumOudsteFactuur) Quit Output ;