persistent 0 %Persistent Selecteer een FacturatieBulkGroep 1 BulkGroep Selecteer de te factureren leveringen 1 Leveringen,BulkGroep,MarkeerBedrag,Buttons 0 ; Proforma of terugname . Set $P(Leveringen("K",KlSortKey),"\",2)=$P(Leveringen("K",KlSortKey),"\",2)+BonBedrag ; Sommeren om eventueel te markeren Set I=$O(Leveringen("S",""),-1) Kill:Leveringen("S",I)="&S" Leveringen("S",I) Do ..MarkeerBedrag(.Leveringen,MarkeerBedrag) Do STORE^vhTERMINA() Do INIT^vhLIST("BULKFACT","SELLEVERINGEN",.LD) Set:Buttons="A" $P(LD("B"),"`",5)=1 For I=1:1 Quit:'$D(LD("B",I)) Set:Buttons[$P(LD("B",I),"`",2) $P(LD("B",I),"`",3)="" Do RENUMBER^vhLIST(.LD) Set:Select>$O(Leveringen("S",""),-1) Select=$O(Leveringen("S",""),-1) Set:'Select Select=1 Set:$G(Leveringen("S",Select))="&S" Select=Select+1 Set LD("SELECT")=Select Do WRITE^vhLIST(.LD) For Set Input=$$SCROLL^vhLIST(.LD) Do If $L(Input),"GKBA"[Input Quit . Do:Input="COM" CALL^vhMenu("BULKFACT") . Do EXEC^vhMenu("BULKFACT",.Input) . If Input="G" Set Input=$$^vhTXTPOP("BULKFACT","GROEP","",BulkGroep,##class(Flow.Facturatie.BulkFacturatie).GetBulkOmschrijving(BulkGroep)) . If $L(Input),"GKBA"[Input Quit . Set $P(LD("B"),"`",5)=$S(Buttons="A":1,1:2) . Do WRITE^vhLIST(.LD) Do REFRESH^vhTERMINA() If Input="B" Set Leveringen="B\"_$P(Leveringen("S",LD("SELECT")),"\",3)_"\"_$P(Leveringen("S",LD("SELECT")),"\") Else If Input="K" Set Leveringen="K\"_$P(Leveringen("S",LD("SELECT")),"\")_"\"_$P(Leveringen("S",LD("SELECT")),"\",3) Else Set Leveringen=Input Quit Leveringen ]]> Markeer indien kleiner dan het minimumbedrag 1 Leveringen,MarkeerBedrag MarkeerBedrag . Set:Markering Markering=..RegelmatigeKlant(KLNr) . Set:'Markering Markering="" . Set BonSortKey=KlSortKey . For Set BonSortKey=$O(Leveringen("S",BonSortKey)) Quit:$E(BonSortKey,1,$L(KlSortKey))'=KlSortKey Do . . Set KLNr=$P(Leveringen("S",BonSortKey),"\"),BonNr=$P(Leveringen("S",BonSortKey),"\",3) . . Quit:$P(^KUL(KLNr,"F",BonNr,1),D,25)="P" Quit:$$ISTERUGN^FLOWBON5(BonNr) ; Proforma of terugname . . Quit:$P(^KUL(KLNr,"F",BonNr,1),D,12) ; Bon is reeds gemarkeerd . . If $$BevatPrijsNul^FLOWBON5(BonNr) Set $P(^KUL(KLNr,"F",BonNr,1),D,12)=1 Quit ; Bon bevat producten met prijs nul . . Set $P(^KUL(KLNr,"F",BonNr,1),D,12)=Markering Quit ]]> Is dit een regelmatige kant? 1 KLNr $$CALCDATE^vhLib.DataTypes(,"M",-6,"MD") ; Bijna nieuwe klant (recenter dan 6 maand) Else Do . Set FactuurMaand=$$EXTDATE^vhLib.DataTypes(,"DM4")_" " . For Quit:$$INTDATE^vhLib.DataTypes(FactuurMaand,"DM4")'>$$CALCDATE^vhLib.DataTypes(,"M",-Maanden,"MD") Do Quit:'Regelmatig . . Quit:$O(^KSTKL(KLNr,0,FactuurMaand),-1)="" . . Set FactuurMaand=$$EXTDATE^vhLib.DataTypes($$CALCDATE^vhLib.DataTypes($$INTDATE^vhLib.DataTypes(FactuurMaand,"DM4"),"M",-1,"MD"),"DM4")_" " . . Quit:$D(^KSTKL(KLNr,0,FactuurMaand)) . . Set Regelmatig=0 . . Quit:Frequentie=1 . . For Frequentie=1:1:Frequentie Do . . . Set Maand=$$EXTDATE^vhLib.DataTypes($$CALCDATE^vhLib.DataTypes($$INTDATE^vhLib.DataTypes(FactuurMaand,"DM4"),"M",Frequentie-1,"MD"),"DM4")_" " . . . Quit:'$D(^KSTKL(KLNr,0,Maand)) . . . Set Regelmatig=1 Quit Regelmatig ]]> Versturen van minimail indien klanten 'automatisch incasso'. Hoe testen: Do ##class(TECH.Config.ConfigMgr).Instance().SetString("CHUI.Flow.Facturatie.BulkFacturatie_IncassoMailTo", "pra@vanhoecke.be") Set ^HULP("Incasso",719124)="" Do ##class(CHUI.Flow.Facturatie.BulkFacturatie).MailIncasso() 1 %Library.CacheStorage ^CHUI.Flow.Fa725.BulkFacturatieD BulkFacturatieDefaultData ^CHUI.Flow.Fa725.BulkFacturatieD ^CHUI.Flow.Fa725.BulkFacturatieI ^CHUI.Flow.Fa725.BulkFacturatieS listnode %%CLASSNAME