RPLKL220 ;RAADPLEGEN KLANTEN ;RPLKL; Quit naar RPLKL1 [ 05/24/2002 2:02 PM ] Q ; T2 ; Geen ;;schaduw;uitzonderingen voor deze klant T3 ; Geen verkoopanalyze voor deze klant T4 ; Geen faktuurinformatie voor deze klant T5 ; Geen leveringsadressen voor deze klant T6 ; Geen maandomzet voor deze klant T7 ; Geen verkopen voor de geselekteerde maand T8 ; Geen openstaande fakturen voor deze klant T9 ; Geen orders (of via beperking) voor deze klant T10 ; Geen openstaande leveringen voor deze klant T11 ; Geen produktreferenties 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 S (UTZ(9),VNR)=0,UHG=-1 UTZ1 S UHG=$N(^KLPUTZ(NoSa,KC,UHG)),UGR=-1 I UHG=-1 S UTZ(9)=VNR,UTZ(7)=1 D RL^PROC1,WL D O1:'$D(^HULP($J,"K"_KC,"U")) G UTZ6 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 S ^HULP($J,"K"_KC,"U",UHG_UGR_USG_$$COMPR^PRODUKT(UPR)_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 ^HULP($J,"K"_KC,"U")=NoSa Q ; ;Openstaande fakturen OFA 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) S:$D(^HULP($J,"K"_KC,"S")) ^("S")=OSA_D_VSA D RL^PROC1,OFA3,O7:'$D(^HULP($J,"K"_KC,"S")) G OFA2 S U2=$P(^(FNR),D,1,10) G OFA1:'$L($P(U2,D,5)) S OPE=$P(U2,D,5) S:$P(U2,D,9)="" $P(U2,D,9)=$$FADEF^vhRtn1() S:$P(U2,D,9)'=$$FADEF^vhRtn1() OPE=$P(U2,D,10) S:$P(U2,D,1)="C" OPE=-OPE S $P(U2,D,10)=OPE S VDT=$P(U2,D,3) 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",$S(+$E(FNR,1,2)>85:" "_FNR,1:"Z"_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",VKG(2)) 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 S (VKA(9),VNR)=0,UHG=0 I $D(^KKAAP(KC,0,0,0,0)) S ^HULP($J,"K"_KC,"V")=^(0) VKA1 S UHG=$N(^KKAAP(KC,UHG)),UGR=0 I UHG=-1 D VKA6:VNR'>16,O2:'$D(^HULP($J,"K"_KC,"V")) G VKA5 VKA2 S UGR=$N(^KKAAP(KC,UHG,UGR)) G VKA1:UGR=-1 S USG=0 VKA3 S USG=$N(^KKAAP(KC,UHG,UGR,USG)) G VKA2:USG=-1 S UPR=0 VKA4 S UPR=$N(^KKAAP(KC,UHG,UGR,USG,UPR)) G VKA3:UPR=-1 S U2=^(UPR) 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 I VNR=17 D VKA6 S ^HULP($J,"K"_KC,"V",VNR)=U2 G VKA4 VKA5 S VKA(9)=VNR Q ; VKA6 S R="" I $D(^HULP($J,"K"_KC,"V")) S $P(R,D,12)=^("V") S FL(1)=VKA(2),FL(2)=801,FL(3)=R W @FMTU D FL^PROC W @FMTu D WL Q ;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 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=^(UR,1) Goto:$L(OrdLim) ORD1:OrdLim'[$S($P(U2,D,25)="":"N",1:$P(U2,D,25)) S U2=UR_D_$P(U2,D,2)_D_D_$P(U2,D,3)_"\\\\\\\"_$J($P(U2,D,25),4)_"\\\"_$L($P(U2,D,25)),UZ=100 G ORD3 ORD2 S UZ=$N(^KOD(KC,"F",UR,UZ)) G ORD1:UZ=-1 S U2=^(UZ),UPR=$P(U2,D,2),tr=$P(U2,D,27) 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)=$P(U2,D,5) 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),$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 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 S $P(U2,D,15)=UR S ^HULP($J,"K"_KC,"O",VNR)=U2 G ORD2 ORD4 S ORD(9)=VNR Q ; ; 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) 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 S (BON(9),VNR)=0,UR=-1,URX="",MNT=$S($P(B(1),D,11)="MTL":$$LANDMUNT^KLANT($P(B(1),D,8)),1:$$MUNTMUNT^KLANT($P(B(1),D,11))) BON1 S UR=$N(^KUL(KC,"F",UR)) I UR=-1 D WL,O9:'$D(^HULP($J,"K"_KC,"L")) G BON4 S U2=^(UR,1),UVM=$P(U2,D,18),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:""),(VNR,VNRX)=VNR+1,UZ=100,UN=0 BON2 S UZ=$N(^KUL(KC,"F",UR,UZ)) G BON3:UZ 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 G BON1 BON3 S U2=^(UZ),UPR=$P(U2,D,2),UN=UN+$P(U2,D,9),GO=$P(U2,D,21) I $P(U2,D,17)="KF5" S FN(1)=+$P(U2,D,5),FN(2)=7,FN(3)=0,FN(4)="N+" D FN^PROC S URX=R ;G BON2:'UPR,BON2:'$D(^KPR(UPR,0)) S $P(U2,D,2)=$P(^(0),D,1) 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)=$P(U2,D,5) Else Goto BON2 Set $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,6)=$P(U2,D,6),$P(U2,D,8)=$S($E(GO)="H":"% ",1:"") S VNR=VNR+1 S $P(U2,D,10)=UR S ^HULP($J,"K"_KC,"L",VNR)=U2 G BON2 BON4 S BON(9)=VNR Q ; ;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,19)=KC,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))) S $P(U2,D,2,99)=$P(^KKL(^($P(U2,D,19)),0),D,2,99),$P(U2,D,19)=$P(@$ZR,D) 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 ; ; 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 ;