RPLKL2 ;RAADPLEGEN KLANTEN ;RPLKL; Quit naar RPLKL1 [ 08/26/2003 10:44 AM ] Q ; T2 ; Geen ;;schaduw;uitzonderingen voor deze klant T3 ; Geen verkoopanalyse voor deze klant T4 ; Geen factuurinformatie voor deze klant T5 ; Geen leveringsadressen voor deze klant T6 ; Geen maandomzet voor deze klant T7 ; Geen verkopen voor de geselecteerde maand T8 ; Geen openstaande facturen voor deze klant T9 ; Geen orders (of via beperking) voor deze klant T10 ; Geen openstaande leveringen voor deze klant T11 ; Geen productreferenties voor deze klant T12 ; Geen betalingsgedrag voor deze klant T13 ; *** VERVOLG *** T14 ; | Bet vw |# Fakt |# Verv |% Verv | Gem d | Max d T15 ;"";C;C;1;;\0;C;L;4;; \0;C;L;25;;|\4;C;R;7;; |\5;N;R;7;;|\6;N;R;7;;|\7;N;R;7;;|\8;N;R;7;;|\9;N;R;7;; T16 ; Geen rapporten voor deze klant T17 ; Geen omzet per subgroep voor deze klant ; O1 S K=$P($T(T2),U,2)_$P($T(T2),U,NoSa="S"+3)_$P($T(T2),U,5) G OY O2 S K=$P($T(T3),U,2) G OY O3 S K=$P($T(T4),U,2) G OY O4 S K=$P($T(T5),U,2) G OY O5 S K=$P($T(T6),U,2) G OY O6 S K=$P($T(T7),U,2) G OY O7 S K=$P($T(T8),U,2) G OY O8 S K=$P($T(T9),U,2) G OY O9 S K=$P($T(T10),U,2) G OY O10 S K=$P($T(T11),U,2) G OY O11 S K=$P($T(T12),U,2) G OY O12 S K=$P($T(T16),U,2) G OY O13 S K=$P($T(T17),U,2) G OY OY S FP=2403 W @F,@F1,@FMTI,K,@FMTi,@F0 OZ Q ; XT S R=$$INTDATE^vhDTyp(R) Q ; ;Write list WL K DL(2),DL(3) D WL^PROC Q ; ;Uitzonderingen UTZ N THG,TGR,TSG,SortKey S (UTZ(9),VNR)=0,UHG=-1 UTZ1 S UHG=$N(^KLPUTZ(NoSa,KC,UHG)) G UTZ6:UHG=-1 S UGR=-1 UTZ2 S UGR=$N(^KLPUTZ(NoSa,KC,UHG,UGR)) G UTZ1:UGR=-1 S USG=-1 UTZ3 S USG=$N(^KLPUTZ(NoSa,KC,UHG,UGR,USG)) G UTZ2:USG=-1 S UPR=-1 UTZ4 S UPR=$N(^KLPUTZ(NoSa,KC,UHG,UGR,USG,UPR)) G UTZ3:UPR=-1 S NXT=-1 UTZ5 S NXT=$N(^KLPUTZ(NoSa,KC,UHG,UGR,USG,UPR,NXT)) G UTZ4:NXT=-1 S U2=^(NXT),UPC="" I UPR G UTZ3:'$D(^KPR(UPR)) S UPC=$P(^(UPR,0),D,1) S VNR=VNR+1 I UPR S SortKey=$$SORTKEY^PRODUKT(UPR) E S SortKey=UHG I UGR'=0 S SortKey=UGR I USG'=0 S SortKey=USG S ^HULP($J,"K"_KC,"U",SortKey_NXT)=$S(UHG=0:"",1:UHG)_D_$S(UGR=0:"",1:UGR)_D_$S(USG=0:"",1:USG)_D_$S(UPR=0:"",1:UPC)_D_U2 G UTZ5 UTZ6 S UTZ(9)=VNR,UTZ(7)=1 S (SortKey,THG,TGR,TSG)="" F S SortKey=$O(^HULP($J,"K"_KC,"U",SortKey)) Q:SortKey="" D .S U2=^HULP($J,"K"_KC,"U",SortKey) .I THG'=$P(U2,D) S THG=$P(U2,D) .E S $P(U2,D)="" .I TGR'=$P(U2,D,2) S TGR=$P(U2,D,2) .E S $P(U2,D,2)="" .I TSG'=$P(U2,D,3) S TSG=$P(U2,D,3) .E S $P(U2,D,3)="" .S ^HULP($J,"K"_KC,"U",SortKey)=U2 D RL^PROC1,WL D O1:'$D(^HULP($J,"K"_KC,"U")) S ^HULP($J,"K"_KC,"U")=NoSa Q ; ;Uitzonderingen historiek UTZH N THG,TGR,TSG,SortKey S (UTZ(9),VNR)=0,UHG=-1 UTZH1 S UHG=$N(^KLPUTZ("H"_NoSa,KC,HistNr,UHG)) G UTZH6:UHG=-1 S UGR=-1 UTZH2 S UGR=$N(^KLPUTZ("H"_NoSa,KC,HistNr,UHG,UGR)) G UTZH1:UGR=-1 S USG=-1 UTZH3 S USG=$N(^KLPUTZ("H"_NoSa,KC,HistNr,UHG,UGR,USG)) G UTZH2:USG=-1 S UPR=-1 UTZH4 S UPR=$N(^KLPUTZ("H"_NoSa,KC,HistNr,UHG,UGR,USG,UPR)) G UTZH3:UPR=-1 S NXT=-1 UTZH5 S NXT=$N(^KLPUTZ("H"_NoSa,KC,HistNr,UHG,UGR,USG,UPR,NXT)) G UTZH4:NXT=-1 S U2=^(NXT),UPC="" I UPR G UTZH3:'$D(^KPR(UPR)) S UPC=$P(^(UPR,0),D,1) S VNR=VNR+1 I UPR S SortKey=$$SORTKEY^PRODUKT(UPR) E S SortKey=UHG I UGR'=0 S SortKey=UGR I USG'=0 S SortKey=USG S ^HULP($J,"K"_KC,"U",SortKey_NXT)=$S(UHG=0:"",1:UHG)_D_$S(UGR=0:"",1:UGR)_D_$S(USG=0:"",1:USG)_D_$S(UPR=0:"",1:UPC)_D_U2 S (THG,TGR,TSG)="" G UTZH5 UTZH6 S UTZ(9)=VNR,UTZ(7)=1 S (SortKey,THG,TGR,TSG)="" F S SortKey=$O(^HULP($J,"K"_KC,"U",SortKey)) Q:SortKey="" D .S U2=^HULP($J,"K"_KC,"U",SortKey) .I THG'=$P(U2,D) S THG=$P(U2,D) .E S $P(U2,D)="" .I TGR'=$P(U2,D,2) S TGR=$P(U2,D,2) .E S $P(U2,D,2)="" .I TSG'=$P(U2,D,3) S TSG=$P(U2,D,3) .E S $P(U2,D,3)="" .S ^HULP($J,"K"_KC,"U",SortKey)=U2 D RL^PROC1,WL D O1:'$D(^HULP($J,"K"_KC,"U")) S ^HULP($J,"K"_KC,"U")=NoSa_D_HistNr Q ; ;Openstaande fakturen OFA N I,MuntDec,FaMunt S FaMunt=$$FADEF^vhRtn1(),MuntDec=$$MUNT^vhRtn1(,4) S (OFA(9),VNR,OSA,VSA)=0,FNR=9999,I1=^KK1(KC) OFA1 S FNR=$N(^KKL(I1,FNR)) I FNR'?5N.N!(FNR>999999) D G OFA2 .S:$D(^HULP($J,"K"_KC,"S")) ^("S")=OSA_D_VSA_D_MuntDec .D RL^PROC1,OFA3,O7:'$D(^HULP($J,"K"_KC,"S")) S U2=$P(^(FNR),D,1,10) G OFA1:'$L($P(U2,D,5)) S:$P(U2,D,9)="" $P(U2,D,9)=FaMunt S:$P(U2,D,9)'=FaMunt $P(U2,D,10)=$$MUNT^vhRtn1($P(U2,D,9),5,$P(U2,D,5)_"#1") S OPE=$P(U2,D,10) S:$P(U2,D,1)="C" OPE=-OPE,$P(U2,D,4)=-$P(U2,D,4) S $P(U2,D,10)=OPE S FDT="" I FNR>99999 N FDT S FDT=$P(U2,D,2),FDT=$$INTDATE^vhDTyp(FDT) S VDT=$P(U2,D,3) I OPE<0 S $P(U2,D,11)=OPE E I $$INTDATE^vhDTyp(VDT)'>$H S $P(U2,D,11)=OPE S OSA=OSA+$P(U2,D,10),VSA=VSA+$P(U2,D,11) S VNR=VNR+1,^HULP($J,"K"_KC,"S",FDT_FNR)=FNR_D_U2 G OFA1 OFA2 S OFA(9)=VNR Q ; OFA3 S R="" I $D(^HULP($J,"K"_KC,"S")) S $P(R,D,11)=^("S") S FL(1)=OFA(2),FL(2)=801,FL(3)=R W @FMTU D FL^PROC W @FMTu D WL Q ;Omzet Subgroep VKG S (VKG(9),VNR)=0,UHG=0 VKG1 S UHG=$N(^VKASGR(KC,UHG)),UGR=0 I UHG=-1 D VKG6:VNR'>16,O13:'$D(^HULP($J,"K"_KC,"G")) G VKG5 S MHG=$E(UHG,3,4) VKG2 S UGR=$N(^VKASGR(KC,UHG,UGR)) G VKG1:UGR=-1 S USG=0 S MGR=$E(UGR,7,9) VKG3 S USG=$N(^VKASGR(KC,UHG,UGR,USG)) G VKG2:USG=-1 S MSG=$E(USG,12,17) S VNR=VNR+1 I VNR=17 D VKG6 S U2=^VKASGR(KC,UHG,UGR,USG) S $P(U2,D,40)=MHG_D_MGR_D_MSG_D_UHG_D_UGR_D_USG S ^HULP($J,"K"_KC,"G",VNR)=U2 S (MGR,MHG)="" G VKG3 VKG5 S VKG(9)=VNR Q VKG6 W @FMTI S FL(1)=^LD("L","RPLKLVKGH") S FL(2)=701 S FL(3)=$P(^VKASGR,"\",5) S $P(FL(3),"\",2)=+FL(3)#100\1 S $P(FL(3),"\",3)=+FL(3)#100\1-1 S $P(FL(3),"\",4)=$P(FL(3),"\",2)_$E(FL(3),5,7) S $P(FL(3),"\",5)=$P(FL(3),"\",3)_$E(FL(3),5,7) Do FL^PROC W @FMTi,@FMTU S FL(1)=^LD("L","RPLKLVKGT") S FL(2)=901 S FL(3)=$G(^VKASGR(KC)) N ADC S ADC=$$MUNT^vhRtn1(,4) F Q:FL(1)'["-N$;R;12;;" S FL(1)=$P(FL(1),"-N$;R;12;;")_"-N"_$S(ADC:"",1:"$")_";R;12;"_ADC_";"_$P(FL(1),"-N$;R;12;;",2,99) Do FL^PROC Set VKG(2)=^LD("L","RPLKLVKG") F Q:VKG(2)'["-N$;R;12;;" S VKG(2)=$P(VKG(2),"-N$;R;12;;")_"-N"_$S(ADC:"",1:"$")_";R;12;"_ADC_";"_$P(VKG(2),"-N$;R;12;;",2,99) W @FMTu Do WL Quit ; ;Verkoopanalyze VKA N GenType G VKA6:$P($G(^HULP($J,"K"_KC,"V")),D,10)=VKAType D:'$D(^HULP($J,"K"_KC,"KKAAP")) VKAPrep K ^HULP($J,"K"_KC,"V") S (VKA(9),VNR)=0,UHG=0,R=$G(^HULP($J,"K"_KC,"KKAAP",0,0,0,0)) I $L(R) S $P(R,D,10)=VKAType,^HULP($J,"K"_KC,"V")=R VKA1 S UHG=$N(^HULP($J,"K"_KC,"KKAAP",UHG)),UGR=0 I UHG=-1 D VKA5,VKA6,O2:'$D(^HULP($J,"K"_KC,"V")) Q VKA2 S UGR=$N(^HULP($J,"K"_KC,"KKAAP",UHG,UGR)) G VKA1:UGR=-1 S USG=0 VKA3 S USG=$N(^HULP($J,"K"_KC,"KKAAP",UHG,UGR,USG)) G VKA2:USG=-1 S UPR=0,GenType=$O(^HULP($J,"K"_KC,"KKAAP",UHG,UGR,USG,"~")) VKA4 S UPR=$N(^HULP($J,"K"_KC,"KKAAP",UHG,UGR,USG,UPR)) G VKA3:UPR=-1 S U2=^(UPR) I VKAType="G",UPR'=GenType,$P(U2,D,20)=(USG_GenType) G VKA4 S:$E(UPR)="~" $P(U2,D,2)=$$DISPLS^KLASS(USG)_"*"_$E(UPR,2,99) S R=$P(U2,D,8),$P(U2,D,8)=$S(R="E":"",R="H":"%",1:R) S $P(U2,D,17)=$S($P(U2,D,12):$P(U2,D,13)/$P(U2,D,12)*100,1:"") S $P(U2,D,19)=$S(+$P(U2,D,9)=+$P(U2,D,6):"",1:$P(U2,D,9)) S R=$P(U2,D,5) D XT S $P(U2,D,18)=$H-R>182 S R=$P(U2,D,12),R=$$EXTNUM^vhDTyp(R,0,".",2) I $L(R)>$P($P(VKA(2),"\12",2),";",4) S R=$P(U2,D,12),R=$$EXTNUM^vhDTyp(R,0,".",0) I $L(R)>$P($P(VKA(2),"\12",2),";",4) S R=$TR(R,".","") S $P(U2,D,12)=R S R=$P(U2,D,13),R=$$EXTNUM^vhDTyp(R,0,".",2) I $L(R)>$P($P(VKA(2),"\13",2),";",4) S R=$P(U2,D,13),R=$$EXTNUM^vhDTyp(R,0,".",0) I $L(R)>$P($P(VKA(2),"\13",2),";",4) S R=$TR(R,".","") S $P(U2,D,13)=R S VNR=VNR+1 I $L($P(U2,D,20)),$P(U2,D,20)=$G(VKASelectType) S (VKA(6),VKA(7))=VNR,VKASelectType="" S ^HULP($J,"K"_KC,"V",VNR)=U2 G VKA4 VKA5 Set VKA(9)=VNR I $G(VKA(4)) S:VKA(7)+VKA(4)-1>VKA(9) VKA(7)=VKA(9)-VKA(4)+1 S:VKA(7)<1 VKA(7)=1 S:VKA(7)>VKA(6) VKA(7)=VKA(6) Q ; VKA6 S U2="" I $D(^HULP($J,"K"_KC,"V")) S $P(U2,D,12)=$P(^("V"),D)_D_$P(^("V"),D,3) Set $P(U2,D,17)=$S($P(U2,D,12):$P(U2,D,13)/$P(U2,D,12)*100,1:"") S R=$P(U2,D,12),R=$$EXTNUM^vhDTyp(R,0,".",0) I $L(R)>$P($P(VKA(2),"\12",2),";",4) S R=$TR(R,".","") S $P(U2,D,12)=R S R=$P(U2,D,13),R=$$EXTNUM^vhDTyp(R,0,".",0) I $L(R)>$P($P(VKA(2),"\13",2),";",4) S R=$TR(R,".","") S $P(U2,D,13)=R S FL(1)=VKA(2),FL(2)=801,FL(3)=U2 W @FMTU D FL^PROC W @FMTu S VKA(12)="W @FMTi W:$P(FL(3),D)="""" @FMTI" D WL Q VKAPrep New Rec,CumRec,HoofdGr,Groep,SubGroep,CompKort,PRNr,GenType If '$G(VkaLEVNr) Merge ^HULP($J,"K"_KC,"KKAAP")=^KKAAP(KC) Else Do ONE^KKAA15(KC,VkaLEVNr,"^HULP($J,""K""_KC,""KKAAP"")") Set HoofdGr="" For Set HoofdGr=$O(^HULP($J,"K"_KC,"KKAAP",HoofdGr)) Quit:HoofdGr="" Do . Set Groep="" . For Set Groep=$O(^HULP($J,"K"_KC,"KKAAP",HoofdGr,Groep)) Quit:Groep="" Do . . Set SubGroep="" . . For Set SubGroep=$O(^HULP($J,"K"_KC,"KKAAP",HoofdGr,Groep,SubGroep)) Quit:SubGroep="" Do . . . Set CompKort="" . . . For Set CompKort=$O(^HULP($J,"K"_KC,"KKAAP",HoofdGr,Groep,SubGroep,CompKort)) Quit:CompKort="" Do . . . . Set Rec=^HULP($J,"K"_KC,"KKAAP",HoofdGr,Groep,SubGroep,CompKort),PRNr=$P(Rec,D,15) . . . . Quit:'PRNr . . . . Set GenType=$P($$GENTYP^HAD(PRNr),D) . . . . Set $P(Rec,D,20)=SubGroep_"~"_$S($L(GenType):GenType,1:$P(Rec,D,15)),^HULP($J,"K"_KC,"KKAAP",HoofdGr,Groep,SubGroep,CompKort)=Rec . . . . Quit:GenType="" . . . . Set GenType="~"_GenType . . . . Set CumRec=$G(^HULP($J,"K"_KC,"KKAAP",HoofdGr,Groep,SubGroep,GenType)) . . . . Set $P(CumRec,D,3)=$P(CumRec,D,3)+$P(Rec,D,3),$P(CumRec,D,12)=$P(CumRec,D,12)+$P(Rec,D,12) . . . . Set $P(CumRec,D,20)=SubGroep_GenType . . . . Set ^HULP($J,"K"_KC,"KKAAP",HoofdGr,Groep,SubGroep,GenType)=CumRec Quit ; Beperking op leverancier voor verkoopanalyze VkaLEVNr(VkaLEVNr) New R Set VkaLEVNr=$G(VkaLEVNr) For Set R=$$ASKL^vhINP("RPLKL","VKALEVNR") Quit:"A"[R Set R=$$SELECT^LEVER(1) If R Set VkaLEVNr=R Quit Set:R="A" VkaLEVNr="" Quit VkaLEVNr ;Koopgedrag analyze KGA S (KGA(9),VNR)=0,UHG=0,KGA(6)=1 Kill KGA(7) KGA1 S UHG=$N(^KKAAP(KC,UHG)),UGR=0 I UHG=-1 D KGA6,O2:'$D(^HULP($J,"K"_KC,"KGA"))>1 G KGA5 KGA2 S UGR=$N(^KKAAP(KC,UHG,UGR)) G KGA1:UGR=-1 S USG=0 KGA3 S USG=$N(^KKAAP(KC,UHG,UGR,USG)) G KGA2:USG=-1 S UPR=0 KGA4 S UPR=$N(^KKAAP(KC,UHG,UGR,USG,UPR)) G KGA3:UPR=-1 S U2=^(UPR) Set PR=$P(U2,D,15) G:'FULL KGA4:'$P($G(^KLKGA(KC,PR)),D) S R=$P(U2,D,8),$P(U2,D,8)=$S(R="E":"",R="H":"%",1:R) S:+$P(U2,D,9)=+$P(U2,D,6) $P(U2,D,9)="" S R=$P(U2,D,5) D XT S $P(U2,D,16)=$H-R>182 S VNR=VNR+1 S ^HULP($J,"K"_KC,"KGA",VNR)=$P(U2,D,1,15)_D_$G(^KLKGA(KC,PR)) G KGA4 KGA5 S KGA(9)=VNR S ^HULP($J,"K"_KC,"KGA")=FULL Q ; KGA6 D WL Q VMB ; Overgebracht naar RPLMBON Q ; ;Orders ORD S (ORD(9),VNR)=0,UR=-1 N lc,tr,OrdLim,OrgRef,Format,VNRX,UN,IsOrgal,IsComm,EDINummer,VHisieVwCust,EDIRef,Close Set OrdLim=$P($G(^HULP($J,"K"_KC,"O")),D) ORD1 S UR=$N(^KOD(KC,"F",UR)) I UR=-1 D WL,O8:'$D(^HULP($J,"K"_KC,"O")) G ORD4 S U2=^KOD(KC,"F",UR,1),UN=0 If $L(OrdLim),OrdLim'="H",OrdLim'="O" Goto ORD1:OrdLim'[$S($P(U2,D,25)="":"N",1:$P(U2,D,25)) If OrdLim="H",'$$ISHALUX^FLOW("O",UR) Goto ORD1 Set IsOrgal=$$ISORGAL^FLOW("O",UR),IsComm=$$ISCOMM^FLOW("O",UR) If OrdLim="O",'IsOrgal Goto ORD1 S VHisieVwCust=$P(U2,D,9),OrgRef=$P(U2,D,19),EDINummer=$P(U2,D,40),STUPD="",Close=$P(U2,D,22,23) Set EDIRef=EDINummer If EDINummer,$L(VHisieVwCust) Set EDIRef=EDIRef_"/"_VHisieVwCust S U2=UR_D_$P(U2,D,2)_D_D_$P(U2,D,3)_"\"_$S($L($P(U2,D,16)):" "_$P($P(U2,D,16),".",1,2)_"b",1:"")_"\\\"_$P(U2,D,18)_"\\\"_$J($P(U2,D,25),4)_"\\\" S $P(U2,D,9)=$$TRANSPORT^FLOWORD(UR,2) S:$L($P(U2,D,9)) $P(U2,D,9)="*"_$P(U2,D,9)_"*" I $P(U2,D,9)="",'$P(Close,D) S $P(U2,D,9)="tsl" I $P(Close,D,2)=1 S $P(U2,D,9)="vtg" S UZ=100,VNRX=VNR+1 G ORD3 ORD2 S U2="" Set:$L(EDIRef) $P(U2,D,4)="EDI: "_EDIRef D:$L(OrgRef) .S U2="",$P(U2,D,4)=$S(IsOrgal:"ORGA: ",IsComm:"COMM: ",1:"")_OrgRef,Format=1 .S:$L(EDIRef) $P(U2,D,4)=$P(U2,D,4)_" - EDI:"_EDIRef S (OrgRef,EDIRef)="" G ORD3:$L(U2) S UZ=$N(^KOD(KC,"F",UR,UZ)) I UZ=-1 S:VNRX U2=^HULP($J,"K"_KC,"O",VNRX),$P(U2,D,6)=UN,^HULP($J,"K"_KC,"O",VNRX)=U2 G ORD1 S U2=^KOD(KC,"F",UR,UZ),UPR=$P(U2,D,2),tr=$P(U2,D,27) S STUPD=$P(U2,D,14) Set:$P(U2,D,15)&&$D(^ORDW("IO",UR,$P(U2,D,15))) $P(U2,D,25)="WMS" If UPR,$D(^KPR(UPR,0)) Do .S UN=UN+$P(U2,D,9),$P(U2,D,2)=$P(^KPR(UPR,0),D,1) Else If $P($P(U2,D,17),"#")="KF1925" Do ; Manuele lijn .S $P(U2,D,2)=$$KortTxt^FLOWMANL(U2),UN=UN+$P(U2,D,9) .I '$P(U2,D,3),'$P(U2,D,6) S $P(U2,D,6)=$P(U2,D,9) Else If $P($P(U2,D,17),"#")="KF11" Do ; +Tekstlijnen .S $P(U2,D,2)=$P(U2,D,5),Format=1 .S:$P($P(U2,D,18),";",4)'["O" $P(U2,D,2)=$C(171)_$P(U2,D,2)_$C(187) Else Goto ORD2 S $P(U2,D,28,99)="" S $P(U2,D,22,24)=$P(U2,D,22),$P(U2,D,6,20)=+$P(U2,D,6),$P(U2,D,3,5)=$P(U2,D,3) Set $P(U2,D,10)="" If UPR,$D(^KPR(UPR,0)) Set $P(U2,D,10)=$$GETSTOCK^PRODUKT4(UPR,"F") S $P(U2,D,6)=$S($E($P(U2,D,5),1)="E":"",$E($P(U2,D,5),1)="H":"%",1:$E($P(U2,D,5),1)),$P(U2,D,1)=D_D_UPR G ORD3:tr="",ORD3:'$D(^KTO1(tr)) S lc=$P(^(tr),D) G ORD3:'$L($P(^KTO(lc,tr,1),D,10)) S $P(U2,D,13)="*" ORD3 S VNR=VNR+1 I $D(SELECT),$P(SELECT,U)="ORD",$P(SELECT,U,2)=UR,$P(SELECT,U,3)=UZ S ORD(6)=VNR K ORD(7),SELECT I STUPD'="S",STUPD'="Z" S STUPD="" S $P(U2,D,14)=STUPD,$P(U2,D,15)=UR S:UZ>100 $P(U2,D,16)=UZ S $P(U2,D,17)=$G(Format),Format="" S ^HULP($J,"K"_KC,"O",VNR)=U2 G ORD2 ORD4 S ORD(9)=VNR K STUPD Q ; CBORD(Ref,Rec) Quit $P($G(Rec),D,17) ; ; Openstaande orders volgens boom en leverweek OBL S (OBL(9),VNR)=0,UR=-1 N lc,tr OBL1 S UR=$N(^KOD(KC,"F",UR)) I UR=-1 D RL^PROC1,WL,O8:'$D(^HULP($J,"K"_KC,"OBL")) G OBL4 S U3=^(UR,1),U3=UR_D_$P(U3,D,2)_D_$P(U3,D,3)_D_$P(U3,D,25)_D_$L($P(U3,D,25)) S UZ=100 OBL2 S UZ=$N(^KOD(KC,"F",UR,UZ)) G OBL1:UZ=-1 S U2=^(UZ),UPR=$P(U2,D,2),tr=$P(U2,D,27) Goto:$D(^ORDW("IO",UR,$P(U2,D,15))) OBL2 G OBL2:'UPR,OBL2:'$D(^KPR(UPR,0)) S $P(U2,D,2)=$P(^(0),D,1),$P(U2,D,28,99)="" S $P(U2,D,22,24)=$P(U2,D,22),$P(U2,D,6,20)=$P(U2,D,6),$P(U2,D,3,5)=$P(U2,D,3),$P(U2,D,10)=$$GETSTOCK^PRODUKT4(UPR,"F") S $P(U2,D,5)=$S($E($P(U2,D,5),1)="E":"",$E($P(U2,D,5),1)="H":"%",1:$E($P(U2,D,5),1)),$P(U2,D,1)=D_D_UPR G OBL3:tr="",OBL3:'$D(^KTO1(tr)) S lc=$P(^(tr),D) G OBL3:'$L($P(^KTO(lc,tr,1),D,10)) S $P(U2,D,13)="*" OBL3 S VNR=VNR+1 I $D(SELECT),$P(SELECT,U)="ORD",$P(SELECT,U,2)=UR,$P(SELECT,U,3)=UZ S OBL(6)=VNR K OBL(7),SELECT S U2=U3_D_U2 S Sort=$O(^KPR(UPR,"I")) S:$E(Sort)="I" Sort=$P(^KPR(UPR,Sort),D,1,3) S Sort=Sort_$$COMPR^PRODUKT(UPR) S Sort=Sort_$J("",50-$L(Sort))_$P(U2,D,14)_$J(VNR,3) S ^HULP($J,"K"_KC,"OBL",Sort)=U2 G OBL2 OBL4 S OBL(9)=VNR Q ; ;Leveringen BON N STUPD,Format,Bold,IsOrgal,IsComm,PRNr S (BON(9),VNR)=0,UR=-1,(URX,PRNr)="" For Set UR=$O(^KUL(KC,"F",UR)) Quit:UR="" Do .S U2=^(UR,1),UVM=$P(U2,D,18) .S U2X=UR_D_$P(U2,D,2)_D_D_$P($P(U2,D,7),"#",2)_D_$S("MP"[$P(U2,D,25):$P(U2,D,25)_" ",1:"") .S:$L($P(U2,D,8)) $P(U2X,D,4)="*"_$$TRANSPORT^ULTOER(UR,2)_"*" .S (VNR,VNRX)=VNR+1,UZ=100,(UN,Bold)=0,(UPR,URX,GO)="" .S MNT=$S($P(B(1),D,11)="MTL":$$LANDMUNT^KLANT($P(B(1),D,8)),1:UVM) .I $G(LayOut("L"))["LA" Do ..S U2=$G(^KUL(KC,"F",UR,3)) ..Q:'$P(U2,D) ..S $P(U2,D,2)="Adres "_$$INITCAP^vhRtn1($P(U2,D,2)_" - "_$P(U2,D,7)_" - "_$P(U2,D,5)) ..S STUPD="",(Format,Bold)=1 ..D SAVEBON(U2) .For S UZ=$O(^KUL(KC,"F",UR,UZ)) Quit:'UZ Do ..S U2=^(UZ),UPR=$P(U2,D,2),UN=UN+$P(U2,D,9),GO=$P(U2,D,21),STUPD=$P(U2,D,14),Format="" ..I $P(U2,D,17)="KF5" D ...S FN(1)=+$P(U2,D,5),FN(2)=7,FN(3)=0,FN(4)="N+" ...D FN^PROC ...S URX=R ...S ORDNr=$P($P(U2,D,5)," - ") ...Q:$G(LayOut("L"))'["OH" ; +Orderreferentie ...S $P(U2,D,2)="Order "_$$EXTNUM^vhDTyp(ORDNr,0,".",0)_" van "_$P($P(U2,D,5)," - ",2,3),(Format,Bold)=1 ...D SAVEBON(U2,$G(ORDNr)) ..If $G(LayOut("L"))["OR",$P(U2,D,17)="KF5",$P(U2,D,20,21)'=D Do ; +Orgaluxreferentie ...Set IsOrgal=$$ISORGAL^FLOW("L",UR),IsComm=$$ISCOMM^FLOW("L",UR) ...S $P(U2,D,2)=$S(IsOrgal:"ORGA: ",IsComm:"COMM: ",1:"")_$P(U2,D,20),Format=1 ...Q:$P(U2,D,21)="" ...S:$L($P(U2,D,2)) $P(U2,D,2)=$P(U2,D,2)_" - " ...S $P(U2,D,2)=$P(U2,D,2)_"EDI: "_$P(U2,D,21) ...S:$L($P(U2,D,22)) $P(U2,D,2)=$P(U2,D,2)_"/"_$P(U2,D,22) ..Else If UPR,$D(^KPR(UPR,0)) Do ...S $P(U2,D,2)=$P(^(0),D,1) ..Else If $P($P(U2,D,17),"#")="KF1925" Do ; Manuele lijn ...S $P(U2,D,2)=$$KortTxt^FLOWMANL(U2) ..Else If $G(LayOut("L"))["TL",$P($P(U2,D,17),"#")="KF11" Do ; +Tekstlijnen ...S $P(U2,D,2)=$P(U2,D,5),Format=1 ...S:$P($P(U2,D,18),";",4)'["B" $P(U2,D,2)=$C(171)_$P(U2,D,2)_$C(187) ..Else Quit ..D SAVEBON(U2,$G(ORDNr)) .D:$P(B(1),D,11)="MTL" MTL .S $P(U2X,D,7)=UN,$P(U2X,D,8)=$$MUNT^vhRtn1(MNT,1),$P(U2X,D,10)=UR,^HULP($J,"K"_KC,"L",VNRX)=U2X S MNT=$S($P(B(1),D,11)="MTL":$$LANDMUNT^KLANT($P(B(1),D,8)),1:$$MUNTMUNT^KLANT($P(B(1),D,11))) Do ORDW(KC) D WL,O9:'$D(^HULP($J,"K"_KC,"L")) S BON(9)=VNR Q ; SAVEBON(U2,ORDNr,CONSNr) N U26 S U26=$P(U2,D,26),$P(U2,D,26,99)=$P(U2,D,6) S $P(U2,D,3,24)=$P(U2,D,3),$P(U2,D,1)=D_D_UPR,$P(U2,D,2)=URX,URX="",$P(U2,D,8)=$S($E(GO)="H":"% ",1:"") S $P(U2,D,6)="B " S VNR=VNR+1 I STUPD'["S",STUPD'["Z" S STUPD="" E S STUPD="Z" S $P(U2,D,9)=STUPD,$P(U2,D,10)=UR S:UZ>100 $P(U2,D,11)=UZ S $P(U2,D,12)=Format,$P(U2,D,13)=Bold,Bold=0,$P(U2,D,26)=U26 S:$G(CONSNr) $P(U2,D,10)=CONSNr S $P(U2,D,50)=$G(ORDNr),^HULP($J,"K"_KC,"L",VNR)=U2 Q ; CBBON(Ref,Rec) If $D(Print),$E(Ref,1,5)="^HULP" Set Rec=@Ref Set:$L($P(Rec,D,12)) $P(Rec,D,12)=";"_$P(Rec,D,12) Quit $P($G(Rec),D,12) ; ORDW(KLNr) ; Verwerken E'WMS consolidatie als zijnde leveringen New CONSNr,ORDNr,OLUNr,OLNr,CONSRec,OLRec,PRNr,StockUpd,ORDMem New STUPD,Format,Bold,UPR,URX,GO,UR,UZ,IsOrgal,IsComm Set (CONSNr,ORDNr,OLUNr)="" For Set CONSNr=$O(^ORDW("IK",KLNr,CONSNr)) Quit:CONSNr="" Do .Set CONSRec=^ORDW("D",CONSNr) .Quit:$P(CONSRec,D,20)="B" .Set (VNR,VNRX)=VNR+1 .If $G(LayOut("L"))["LA" Do ; +Leveinrgsadres ..Set U2=$G(^ORDW("D",CONSNr,"A")) ..Quit:'$P(U2,D) ..Set $P(U2,D,2)="Adres "_$$INITCAP^vhRtn1($P(U2,D,2)_" - "_$P(U2,D,7)_" - "_$P(U2,D,5)) ..Set (STUPD,UPR,URX,GO,UR,UZ)="",(Format,Bold)=1 ..Do SAVEBON(U2,,CONSNr) .Set UN=0 .For Set ORDNr=$O(^ORDW("D",CONSNr,"D",ORDNr)) Quit:ORDNr="" Do ..Set ORDMem=$E(ORDNr,1,3)_"."_$E(ORDNr,4,6) ..If $G(LayOut("L"))["OH" Do ; +Orderhoofding ...Set U2=^KOD(KLNr,"F",ORDNr,1) ...Set (STUPD,UPR,GO,UR,UZ)="",(Format,Bold)=1,URX=ORDMem,ORDMem="" ...Set $P(U2,D,2)="Order "_$$EXTNUM^vhDTyp(ORDNr,0,".",0)_" van "_$P(U2,D,2)_" - "_$P(U2,D,3) ...Do SAVEBON(U2,ORDNr,CONSNr) ..If $G(LayOut("L"))["OR" Do ; +Orgaluxreferentie ...Set U2=^KOD(KLNr,"F",ORDNr,1) ...If '$L($P(U2,D,19)),'$L($P(U2,D,40)) Quit ...Set (STUPD,UPR,GO,UR,UZ)="",Format=1,Bold=0,URX=ORDMem,ORDMem="" ...Set IsOrgal=$$ISORGAL^FLOW("L",CONSNr),IsComm=$$ISCOMM^FLOW("L",CONSNr) ...Set $P(U2,D,2)="" ...Set:$L($P(U2,D,19)) $P(U2,D,2)=$S(IsOrgal:"ORGA: ",IsComm:"COMM: ",1:"")_$P(U2,D,19) ...Do:$L($P(U2,D,40)) ....Set:$L($P(U2,D,2)) $P(U2,D,2)=$P(U2,D,2)_" - " ....Set $P(U2,D,2)=$P(U2,D,2)_"EDI: "_$P(U2,D,40) ...Do SAVEBON(U2,ORDNr,CONSNr) ..Set UVM=$P(^KOD(KLNr,"F",ORDNr,1),D,18) ..For Set OLUNr=$O(^ORDW("D",CONSNr,"D",ORDNr,OLUNr)) Quit:OLUNr="" Do ...Set OLWRec=^ORDW("D",CONSNr,"D",ORDNr,OLUNr) ...Set OLNr=^ORD("IU",ORDNr,OLUNr) ...Set OLRec=^KOD(KLNr,"F",ORDNr,OLNr) ...Set PRNr=$P(OLWRec,D,1),StockUpd=$P(OLRec,D,14) ...Set UN=UN+($P(OLRec,D,9)/$P(OLRec,D,3)*$P(OLWRec,D,4)) ...Set U2="",$P(U2,D,2)=ORDMem,ORDMem="" ...Set $P(U2,D,3)=PRNr ...Set $P(U2,D,4)=$P(^KPR(PRNr,0),D) ...Set $P(U2,D,5)=$P(OLWRec,D,4) ...Set $P(U2,D,6)=$P(OLWRec,D,2)_$S($L($P(OLWRec,D,3)):"-"_$P(OLWRec,D,3),1:" ") ...Set $P(U2,D,7)=$P(OLRec,D,6) ...Set $P(U2,D,8)=$S($E($P(OLRec,D,21))="H":"% ",1:"") ...If StockUpd'="S",StockUpd'="Z" S StockUpd="" ...Set $P(U2,D,9)=StockUpd ...Set $P(U2,D,10)=CONSNr ...Set VNR=VNR+1 ...Set ^HULP($J,"K"_KC,"L",VNR)=U2 .Set U2="" .Set $P(U2,D)=CONSNr .Set $P(U2,D,2)=$$EXTDATE^vhDTyp($P(CONSRec,D,5),"DKP") .Set:$L($P(CONSRec,D,2)) $P(U2,D,4)=$P($G(^RES("KLANT","PI","VERZENDWIJZE","D",$P(CONSRec,D,2))),"`",2) .Set $P(U2,D,6)=$P(CONSRec,D,20)_$S($L($P(CONSRec,D,21)):"-"_$P(CONSRec,D,21),1:" ") .D:$P(B(1),D,11)="MTL" MTL .Set $P(U2,D,7)=UN .Set $P(U2,D,8)=$$MUNT^vhRtn1(MNT,1) .Set $P(U2,D,10)=CONSNr .Set ^HULP($J,"K"_KC,"L",VNRX)=U2 Quit ;Produktreferenties PRF New B Set (PRNr,Nm)="" PRF1 For Set Nm=$O(^PAKKET("IK",KC,Nm)) Quit:Nm="" Do .Set PAKNr=^(Nm),Naam=$P(^PAKKET("D",PAKNr),D,4) .Set Naam=$P(^PAKKET("D",PAKNr),D,2)_$S($L(Naam):" : "_Naam,1:"") .For Set PRNr=$O(^PAKKET("D",PAKNr,PRNr)) Quit:'PRNr Do ..Quit:'$D(^KPR(PRNr)) ..Do FETCHPR^UTILI(PRNr) ..Set Rec=PAKNr_D_PRNr_D_Naam_D_$P(B(1),D,1)_D_^PAKKET("D",PAKNr,PRNr) ..Set ^HULP($J,"K"_KC,"R",Nm_" "_$P(B("I"),D,3)_$$COMPR^PRODUKT(PRNr))=Rec Set Nm="",Cnt=0,PAKNr="" For Set Nm=$O(^HULP($J,"K"_KC,"R",Nm)) Quit:Nm="" Do .Set Rec=^(Nm) .If $P(Rec,D,1)=PAKNr Set $P(Rec,D,3)="" .Else Set PAKNr=$P(Rec,D,1) Set:Cnt Cnt=Cnt+1,^(Cnt)="" .Set Cnt=Cnt+1 .Set ^(Cnt)=Rec .Kill ^(Nm) PRF2 D WL^PROC,O10:'$D(^HULP($J,"K"_KC,"R")) Q ; ;Maandomzet MOM S (MOM(9),VNR)=0,BP=DJ_"."_$E(100+DM,2,3),FBP=$N(^KSTKL(KC,0,0)) S:FBP=-1 FBP=BP+.01 S FBP=FBP-.01 S:'(FBP#1) FBP=FBP-1_".12" S FBP=FBP\1_"."_$E(FBP*100,5,6) G MOM2 MOM1 S BP=BP-.01 S:'(BP#1) BP=BP-1_".12" S BP=BP\1_"."_$E(BP*100,5,6) MOM2 I BP=FBP D WL:VNR'>6,O5:'$D(^HULP($J,"K"_KC,"M")) G MOM3 S U2="" S:$D(^KSTKL(KC,0,BP_" ")) U2=^(BP_" ") S U2=$P(U2,D,5)_D_($P(U2,D,1)-$P(U2,D,5))_D_$P(U2,D,3) S VNR=VNR+1 I VNR=7 D WL S ^HULP($J,"K"_KC,"M",VNR)=BP_D_U2 G MOM1 MOM3 S MOM(9)=VNR Q ; ;Detail maandomzet DEM S (DEM(9),VNR,UPR)=0 DEM1 S UPR=$N(^KSTKL(KC,UPR)) I UPR=-1 D WL:VNR'>10,O6:'$D(^HULP($J,"K"_KC,"M",BP)) G DEM2 G DEM1:'$D(^(UPR,BP_" ")) S U2=^(BP_" ") G DEM1:'$D(^KPR(UPR,0)) S UPC=$P(^(0),D,1) S U2=$P(U2,D,5)_D_($P(U2,D,1)-$P(U2,D,5))_D_$P(U2,D,3) S VNR=VNR+1 I VNR=11 D WL S ^HULP($J,"K"_KC,"M",BP,VNR)=UPR_D_UPC_D_U2 G DEM1 DEM2 S DEM(9)=VNR Q ; ;Leveringsadressen LAD S LAD(9)=0,LNR="L",I1=^KK1(KC),U2=^KKL(I1,0),$P(U2,D)="HOOFD",$P(U2,D,12)="",$P(U2,D,19)=KC,$P(U2,D,15)=$P(^KKL(I1,1),D,24),VNR=1,^HULP($J,"K"_KC,"A",VNR)=U2 LAD1 S LNR=$N(^KKL(I1,LNR)) I $E(LNR,1)'="L" D WL:VNR'>17,O4:'$D(^HULP($J,"K"_KC,"A")) G LAD2 S U2=^(LNR) I $P(U2,D,19) G LAD1:'$D(^KK1($P(U2,D,19))) D MLAU2 S VNR=VNR+1 I VNR=18 D WL S ^HULP($J,"K"_KC,"A",VNR)=U2 G LAD1 LAD2 S LAD(9)=VNR,Auto=1 Q ; ; Invullen gegevens levringsadres indien via klant MLAU2 N I S $P(U2,D,2,9)=$P(^KKL(^KK1($P(U2,D,19)),0),D,2,9) F I=13,14 S:$P(U2,D,I)="" $P(U2,D,I)=$P(^KKL(^KK1($P(U2,D,19)),0),D,I) Set:$P(U2,D,15)="" $P(U2,D,15)=$P(^KKL(^KK1($P(U2,D,19)),1),D,26) Set:$P(U2,D,24)="" $P(U2,D,24)=$P(^KKL(^KK1($P(U2,D,19)),1),D,4) Set:$P(U2,D,25)="" $P(U2,D,25)=$P(^KKL(^KK1($P(U2,D,19)),1),D,8) Set $P(U2,D,19)=$P(^KKL(^KK1($P(U2,D,19)),0),D) Q ; ; Berekening netto volgens pariteit MTL S UPAR=$$MUNT^vhRtn1(UVM,,12),UN=$J(UN*UPAR,1,2) S UPAR=$$LANDPAR^KLANT($P(B(1),D,8)),UN=$J(UN/UPAR,0,2) Q ;