#Include BL.Derde.KlantSpecifiek RPLKL ;RAADPLEGEN KLANTEN ;RPLKL; Do naar RPLKL1, RPLKL3, %A101 en PROC [ 11/28/2003 2:11 PM ] I '$D(Q) S Q="K" D ^cA604 G 1 ; T1 ;DE KLANT\KL\K1 T30 ;WELK SCHERM ;A,B,O,L,F,M,N,V,R,T,G,E,Z,Y -[] = einde programma;A,U,S,O,L,F,N,V,R,T,G,E,Z,Y -[] = einde programma T31 ;WELK SCHERM ;A,O,L,F,M,V,R,T,E,Z -[] = einde programma;A,U,S,O,L,F,N,V,R,T,G,E,Z,Y -[] = einde programma T101 ;KLANTNUMMER;4;2;;4;5;;K D KLANTVAN^RPLKL3;5;;;1;;;1;101;;;;;;;1; T102 ;KLANTNAAM;5;2;;5;5;;;25;;;;;;;102;;;;;;;1; T103 ;WOONPLAATS;6;2;;6;5;;$E($S($$LAND^vhRtn1($P(B(1),D,8))="BE":"",1:$$LAND^vhRtn1($P(B(1),D,8))_" ")_K,1,22);22;;;;;;;107;;;;;;;1; T104 ;OMZET;6;28;;6;38;;$S($D(^KKAAP(KC)):$TR($FN($P(^KKAAP(KC,0,0,0,0),D),"T,",0),",.",".,")_"EUR",1:"");13;;;;;;;;;;;;;;; T105 ;TELEFOON;3;49;;3;62;;$E($S($L($P(B(3),D,1)):$P(B(3),D,1),1:K),1,17);17;;;;;;;113;;;;;;;; T106 ;REGIO;5;49;;5;62;;"R"_$TR($J(K,2)," ",0)_" ("_"R"_$TR($J($P(B(1),D,21),2)," ",0)_")";3;;;;6;;;120;;;;;;;; T108 ;Bus.Type;4;49;;4;62;;##class(CHUI.Klant.Algemeen).GeefBusinessType($piece(B(1),D));3;;;;;;;;;;;;;; ; S2 S U2=A(U1),X=$P(U2,U,16) S:'$D(B(X\100)) B(X\100)="\\\\\\\\\\\\\\\\\\\\\\\\\" S (K,U3)=$P(B(X\100),D,X#100) I $L($P(U2,U,8)) X "S U3="_$P(U2,U,8) S2A S FP=$P(U2,U,5)*100+$P(U2,U,6) G S2Z:'SW5 I '$P(U2,U,23) S FP=FP-2 W @F,@FMTCL,":" S2B S FP=$P(U2,U,2)*100+$P(U2,U,3) W:$P(U2,U,22) @F,$J(U1#100,2) I '$P(U2,U,23) S FP=FP+2 W @F,@FMTU,$P(U2,U,1),@FMTCL S2C S FP=$P(U2,U,5)*100+$P(U2,U,6) S2Z W:'SW5 @F,$J("",$P(U2,U,9)),$J("",$P(U2,U,13)) W @F,U3 Q ; ;Titel TI S K=$P($T(+1),U,2)_QN_" ",FP=103+$L(K) W @F,@F5 S FP=102 W @F,@F4,K,@F5 Q ; ;Klant op kode KODE Quit:$D(KODE) New R,Verv30D,LimExceeded,KredietLim,VooruitRemb Do DisplayKlachtCount^KLACHTO(KC,2,5) Set R=$$BETINFO^KREDIET(KC),Verv30D=$LG(R),LimExceeded=$LG(R,2),KredietLim=$LG(R,3),VooruitRemb=$LG(R,4) Set FP=305 Write @F,$J("",40),@F If $L(Verv30D)!$L(LimExceeded) Do .Write @FMTB Write:Verv30D="Dubieus" @FMTK .Write:$L(Verv30D) $$UPTRIMAN^vhRtn1(Verv30D) .Write @FMTk .If $L(Verv30D),$L(LimExceeded) Write "/" .Write:$L(LimExceeded) $$UPTRIMA^vhRtn1(LimExceeded) .Write @FMTb Set FP=321 Write @F,$$UPTRIMA^vhRtn1(KredietLim) If $L(VooruitRemb) Set FP=321+$S($L(KredietLim):15,1:0) Write @F,@FMTK,$$UPTRIMA^vhRtn1(VooruitRemb),@FMTk Set KODE='KREDIET Quit ; ;Schermaanduiding SA Do SA^RPLKL1 ; ;Verwijder ballast VBA F I=4,7,10:1:12,14,15,17:1:22 S $P(U2,U,I)="" Q ; ;Omschakelen naar 80- of 132 kolommen NCOL(TCol) S:'$D(NCol) NCol=80 S:'$D(TCol) TCol=$S('$D(DL):80,$D(@DL(1)@(5)):@DL(1)@(5),1:80) I TCol'=NCol s NCol=TCol,KIF=0 D SIZE^vhTERMINA(NCol),TI K KODE Q ; ;Klanteninformatie KIF D NCOL() I KIF=1,U4'=VTB S FP=801 W @F,@F1 G KIF2:KIF S KIF=1 D S3 F X=101:1:108 S A(X)=$P($T(@("T"_X)),U,2,99) D ToonAantal^RPLKL5(KC),KODE ; Toon het aantal kennisankers S U1=100,SW5=0 I VTB'=U4 S SW5=1,FP=401 W @F,@F1 KIF1 S U1=$N(A(U1)) I U1'=-1 D S2 G KIF1 KIF2 Q ; ;Verwijderen klanteninfo VKI S X=100 VKI1 S X=X+1,U2=$P($T(@("T"_X)),U,2,99),FP=$P(U2,U,2)*100+$P(U2,U,3) I $P(U2,U,16)=101 S $P(U2,U,13)=35 W @F,$J("",$P(U2,U,6)-$P(U2,U,3)),$J("",$P(U2,U,9)),$J("",$P(U2,U,13)) G VKI1:(X<109) K A S A(101)=$P(^KKL(0,101),U,1,16),A(102)=$P(^(102),U,1,16),SW5=1,U1=101 D S2 S U1=102 D S2 VKI2 Q ; ;Raadplegen produkt RAP S R=$S($L(VTB):VTB,1:SW2) I VTB="F" G RAP2:'$D(^HULP($J,"K"_KC,"F",FLD(6))) S PR=$P(^(FLD(6)),D,3) G RAP3 I VTB="Z" G RAP2:'$D(^HULP($J,"K"_KC,"P",PLD(6))) S PR=$P(^(PLD(6)),D,3) G RAP3 I VTB="L" G RAP2:'$D(^HULP($J,"K"_KC,"L",BON(6))) S PR=$P(^(BON(6)),D,3) G RAP3 I VTB="M" G RAP2:'DEM,RAP2:'$D(^HULP($J,"K"_KC,"M",BP,DEM(6))) S PR=$P(^(DEM(6)),D,1) G RAP3 I VTB="E" G RAP2:'$D(^HULP($J,"K"_KC,"E",OFF(6))) S PR=$P(^(OFF(6)),D,3) G RAP3 I VTB="O" G RAP2:'$D(^HULP($J,"K"_KC,"O",ORD(6))) S PR=$P(^(ORD(6)),D,3) G RAP3 I VTB="R" G RAP2:'$D(^HULP($J,"K"_KC,"R",PRF(6))) S PR=$P(^(PRF(6)),D,2) G RAP3 I VTB="V" G RAP2:'$D(^HULP($J,"K"_KC,"VM",VMB(6))) S PR=$P(^(VMB(6)),D,15) G RAP3 I VTB="Y" G RAP2:'$D(^HULP($J,"K"_KC,"KGA",KGA(6))) S PR=$P(^(KGA(6)),D,15) G RAP3 I VTB="Q" G RAP2:'$D(^HULP($J,"K"_KC,"V",VKA(6))) S PR=$P(^(VKA(6)),D,15) G RAP3 I VTB="§" G RAP2:'$D(^HULP($J,"K"_KC,"DIRORD",DIRORD("SELECT"))) S PR=$P(^(DIRORD("SELECT")),D,4) G RAP3 I VTB="X" G RAP2:'$D(^HULP($J,"K"_KC,"OBL",OBL(6))) S PR=$P(^(OBL(6)),D,3) G RAP3 I VTB="&" G RAP2:'$D(^HULP($J,"K"_KC,"SPV",RPLSCHAD("SELECT"))) S PR=$P(^(RPLSCHAD("SELECT")),D,1) G RAP3 RAP2 G 33 ; RAP3 I U4="INS",PR,$D(^KPR(PR)) Do POPUP^KS(KC,PR) G 33 I PR,$D(^KPR(PR)) S PARAM=PR D NCOL(80) G KP^RPLSW G 33 REFRESH S R=U4,(SW2,VTB)="",KIF=0 Kill KODE S:R="X" VTB="O" Write @F11,@F1 D TI,KIF Q ;Telefonische offerte TOF S PARAM=KC D NCOL(80) G KT^RPLSW G 33 ; EWMS(Prog) N B,R,ORDNr S R=^HULP($J,"K"_KC,"O",ORD(6)),ORDNr=$P(R,D,15) Do STORE^vhTERMINA() If Prog="M" Do . New blVerzendWijze,blLeveringsTermijn . Do INITDOMVKP^FLOWORD2(KC,ORDNr) . Do VERWERK^EWORDS(KC,ORDNr,"SL") Do:Prog="S" KLANT^EWORDST(KC) Do REFRESH^vhTERMINA() Q ; ;Reset tabellen RET S (UTZ(7),VKA(6),VKA(7),FLD(6),FLD(7),MOM(6),MOM(7),LAD(6),LAD(7),OFA(6),OFA(7),ORD(6),ORD(7),BON(6),BON(7),PRF(6),PRF(7),BGD(6),BGD(7),RAP(6),RAP(7),VKG(6),VKG(7),OBL(6),OBL(7),VMB(6),VMB(7),OFF(6),OFF(7),PLD(6),PLD(7),KGA(6),KGA(7))=1 I $D(PARAM),$L($P(PARAM,D,4)) D .I $P(PARAM,D,5) X "S "_$P(PARAM,D,4)_"(6)="_$P(PARAM,D,5) .I $P(PARAM,D,6) X "S "_$P(PARAM,D,4)_"(7)="_$P(PARAM,D,6) K UTZ(9),VKA(9),FLD(9),MOM(9),LAD(9),OFA(9),ORD(9),BON(9),PRF(9),BGD(9),RAP(9),VKG(9),OBL(9),OFF(9),PLD(9),KGA(9),VMB(9) Q ; ;Start 1 I $D(PARAM) D .S:$L($P(PARAM,D,1)) KC=$P(PARAM,D,1) .S:$L($P(PARAM,D,2)) U4=$P(PARAM,D,2) .S:$L($P(PARAM,D,7)) SELECT=$P(PARAM,D,7) KR S Q1="KL",Q2="K1",X1=$P($T(T1),U,2),WIJZ=0 ;G ^cA203 D ^RPLKL3 G 22:$G(KC) S BPROG=$ZN G 21 ; ;Selectie klant 2 S SW5=0 21 S K=$$SELECT^KLANT6 S FP=2100 Write @F,@F1 I 'K G YZ:'$D(KC),23 S KC=K G 23:KC=KCX 22 new PartijID Set PartijID = ##class(DOM.DomeinContext).Instance().GeefLegacyPartijAPI().GeefKlantPartijID(KC) set KlantObject = ##class(DOM.DomeinContext).Instance().GeefVerkoopAPI().GeefKlant(PartijID) S KIF=0 K B S I1=^KK1(KC),B(1)=^KKL(I1,0),U1=100 F X=1:1:9 I $D(^(X)) S B(X+1)=^(X) K OmzScrns S OmzScrns(1)=KC,OmzScrns(2)=$LI(##class(BL.Derde.Klant.Relaties).CommercieleOverdracht(KC),2) S OmzScrns=1 S KC=$P(B(1),D,1),R=$$WAARDIG^KREDIET(KC),KREDIET=+R,KOF=$P(R,D,2),KJ=$P(R,D,3) K KODE D ToonAantal^RPLKL5(KC),KODE ; Toon het aantal kennisankers S U1=101 D S2 S U1=102 D S2 S Input=$$OVBKHUnRead^RPLKL5(KC) ; Ongelezen kennisankers tonen 23 D RET:KC'=KCX K PARAM G 3:'$D(U4),4:U4=SW2&U4 D G 35:KC'=KCX,35:"M"[VTB I VTB="A" S KCX="" G 35 .S Input=$G(U4) .D EXEC^vhMenu("RPLKLSPEC",.Input) .I U4=Input D EXEC^vhMenu("RPLKL",.Input) .S U4=Input I U4'=3 S DL(2)=20 D WL^PROC G 35 ; ;Keuze scherm 3 S FP=2203+F60 W @F,$P($T(@("T3"_(+sScr("VTW")))),U,2),":",!?2 F R=1:1:SW4 W R,"," Write $P($T(@("T3"_(+sScr("VTW")))),U,3) 31 I '$D(IK) D CVL^PROC S IK(1)=R_"\[31~;SPEC" D IK^PROC1 33 S KCX=KC S Input=R I R="COM" D .D MENU^RPLKL4 E I R="SPEC" D .D SPEC^RPLKL4 E D .D EXEC^vhMenu("RPLKLSPEC",.Input) .I R=Input D EXEC^vhMenu("RPLKL",.Input) .S R=Input I $D(ProgLab) S R=ProgLab K ProgLab G @R I R="" S R=$S($L(VTB):VTB,1:SW2) G YZ:R="-",31:R="ENTER" I R=",",$D(EXTERN) G YZ I R="K" S U4=$S($L(VTB):VTB,1:SW2) G 2 S U4=R 35 I sScr("VTW") Goto:"; ;;E;?;+;A;D;C;T;Q;U;S;R;P;O;N;L;Z;F;1;2;3;4;5;6;7;8;9;MAIL;REFRESH;"'[(";"_U4_";") 36 I R="PRINT" D PRINT^RPLKL4 I $E(U4)="P","\E\O\L\F\Z\"[(D_$E(U4,2,9)_D) D DPRINT^RPLKL4($E(U4,2,9)) I U4="ATK" D EXTERN^ATKLVH(KC) I U4="FAX" D FAX^RPLKL4 I U4="EDI" D EDI^RPLKL4 I U4="EDE" D EDE^RPLKL4 I U4="MAIL" D MAIL^RPLKL4 I U4="EDIBevestigen" Do ##class(BL.Legacy.RPLKL).EDIBevestigen(KC) I U4="REFRESH" D Goto 33 .New Par .Merge Par=^HULP($J,"PAR") ; Parameters terugzetten .Kill ^HULP($J) .Merge ^HULP($J,"PAR")=Par .Set R=VTB,VTB="",U4="" I U4="WK" G 31:$G(NoMod) D WIJZIG("") G 1 I U4="C",'sScr("VTW"),"\E\O\X\L\R\U\&\§\!\"'[(D_VTB_D) G 33:'$$PW("C66"),33:$G(NoMod) D WIJZIG("") G 1 I $E(U4)="W",'sScr("VTW"),"\E\O\L\R\U\&\§\!\"[(D_$E(U4,2,9)_D) D MOD^RPLKL1(1) I U4="C",'sScr("VTW") D MOD^RPLKL1() I U4="D" D DET^RPLKL1 G YZ:R="-" I R="K" S U4=$S($L(VTB):VTB,1:SW2) G 33 I U4="A" D LAD^RPLKL1 G 33 I U4="B" D BGD^RPLKL1 G 33 I U4="F" D FLD^RPLKL1 G 33 I U4="Y" D KGA^RPLKL1 G 33 I U4="Z" D PLD^RPLKL1 G 33 I U4="L" D BON^RPLKL1 G 33 I U4="M" D MOM^RPLKL1 G 33 I U4="N" D RAP^RPLKL1 G 33 I U4="§" D DIRORD^RPLKL1 G 33 I U4="O" D ORD^RPLKL1 G 33 I U4="P" G RAP I U4="INS" G RAP I U4="R" D PRF^RPLKL1 G 33 I U4="G" D VKG^RPLKL1 G 33 I U4="T" G TOF I U4="H",VTB="U" D UTZH^RPLKL1 G 33 I U4="&" D DISP^RPLSCHAD(KC) G 33 I U4="!" D DISP^RPLSCHAD(KC,"!") G 33 I U4="Q" D VKA^RPLKL1 G 33 I U4="V" D VMB^RPLKL1 G 33 I U4="E" D OFF^RPLKL1 G 33 I VTB="O"!(VTB="X"),U4="X" D OBL^RPLKL1 G 33 I U4="X" D EXTRA^RPLKL1 S R=$S(U4="REFRESH":U4,1:"") G 33 I U4="+" D VRV^RPLKL1 G 33 I U4="?" D MENU^RPLKL4 G 33 ;I U4="?"!(U4="HELP") D HLP^RPLKL1 G 33 ; F10 -HELP afgesloten CW 19.10.09 I U4="," G YZ:'$D(STACK) D NCOL(80) G BC^RPLSW I U4?1N,U4,U4'>SW4,U4'=SW2,U4<6 D . N SW5 . S SW5=0 . K OmzScrns S OmzScrns(1)=KC,OmzScrns(2)=$LI(##class(BL.Derde.Klant.Relaties).CommercieleOverdracht(KC),2) . S OmzScrns=1 . S U1=101 . D S2 . S U1=102 . D S2 I U4=3 D RPLKL^PERS("K",KC) G 33 I U4?1N,U4,U4'>SW4,U4'=SW2 G 37 I U4?1N,U4>5,U4'>SW4,U4=SW2,$G(OmzScrns(2)) D G 37 . N SW5 . S SW5=0 . S OmzScrns=$S(OmzScrns=1:2,OmzScrns=2:12,1:1) . S U1=101 . D S2 . S U1=102 . D S2 36 S R=$S($L(VTB):VTB,1:SW2) G 31:R?.N&(R'=3),33 37 D NCOL(80),SA S KIF=0,FP=601 I U4=SW2,U4>6,$G(OmzScrns(2)) E W @F,@F1 S:U4=6 SW5=1 I $L(VTB) D VKI S VTB="" I SW2'=U4!SW5 S SW2=U4,SW5=1 D S3,S1 ; ;Hoofdschermen 4 D ToonAantal^RPLKL5(KC),KODE ; Toon het aantal kennisankers S U1=SW2*100+2 41 S U1=$N(A(U1)) G 31:U1=-1 D S2 I $D(RLabel) S U1=RLabel K RLabel G @U1 G 41 ; YZ I $D(EXTERN),$D(U4) S LScreen=U4 D NCOL(80) K A,B,^HULP($J) Q ; S1 S Y=$D(@("^"_Q_"KL(0,0)")),Y=SW2+1*100,(X,K)=SW2*100,K=SW2>1*2+K S1A S X=$N(^(X)) I X>0,X0 K A(X) G S3A S3Z Q ; ; Paswoord PW(SN) N IK S SN=$E(SN,2,99) I SN="" Q 1 I SW2=U4 Q 1 S IK(2)=2 D I SN="" Q 1 .F D IK^PROC1 Q:R'=$E(SN) S SN=$E(SN,2,99) Q:SN="" Q 0 ; WIJZIG(Element) N Aktie If $G(NoMod) Do INP^TXT("Wijzigen van deze klant niet toegelaten") Quit W1 S R=$$WIJZIG^KLANT(KC,SW2,Element),PARAM=KC_D_$S($L(VTB):VTB,1:$P(R,D)) S Element=$P(R,D,2),Aktie=$P(R,D,3),Aktie=$S(Aktie="P":"(",Aktie="N":")",1:"") Q:Aktie="" ;D NEXT G W1:$L(R) K PARAM,PR,PRX,U4 Q ; NEXT N PRT S PRT=$$NEXT^KLANT("K",PR,$S(Aktie="(":-1,1:1)) I $L(PRT) S PR=PRT S SW5=0 Kill Aktie Q MailMenu(KC) Quit "Mail nieuwe Orgalux-orders van "_$P(^KKL(^KK1(KC),0),D,2) MailOrdersBKK ; mailt de Orgalux-orders van BKK die nog niet opgestuurd zijn Do MailOrders($$$KlantBruynzeel) Do MailOrders($$$KlantDKGDeKeukenfabriek) Quit MailOrders(KC) ; mailt de Orgalux-orders die nog niet opgestuurd zijn N Opties,MailAdres,Lijst,OrderLijst,TaalCode,OrdNr,Opgestuurd,i,x1,sc Quit:$$AantalOrders(KC)=0 Set Opties("CONNECT")="E" Set Opties("PIECE")=6 Set Opties("FILTER")=1 Set MailAdres=$$SELECT^PERS("K",KC,.Opties) Quit:MailAdres="" Set Lijst="",OrderLijst="" Set Index=^KK1(KC) Set TaalCode=$P(^KKL(Index,0),D,9) Set Subject=$Select(TaalCode="N":"Order(s) ",Taalcode="F":"Commande(s) ",TaalCode="D":"Auftrag(e) ",1:"Order(s) ") Set OrdNr="" For Set OrdNr=$O(^KOD(KC,"F",OrdNr)) Quit:OrdNr="" Do . Quit:'$$ORGALORD^FLOWCHK(OrdNr) ;enkel orders van orgalux . Set x1=^KOD(KC,"F",OrdNr,1),Opgestuurd=$P(x1,D,44) . Quit:Opgestuurd . Set OrderLijst=OrderLijst_$LB(OrdNr),Lijst=Lijst_","_OrdNr Set Lijst=$E(Lijst,2,1000) Set Subject=Subject_Lijst Set From=$$USERNAME^vhUSER(,"@1") Quit:From="" Set sc=##class(BL.Flow.Order.Doc).RenderAndMailDoc(OrderLijst,MailAdres,.Subject," ", "list"_$$EXTDATE^vhLib.DataTypes(,"DSN")_".pdf",From) If '+sc Do . Do WARN^vhTXTPOP($$ParseStatus^vhLib(sc),"") Else Do ;Update van de flag dat het order al opgestuurd is via e-mail . For i=1:1:$L(Lijst,",") Do . . Set OrdNr=$P(Lijst,",",i) . . Set x1=^KOD(KC,"F",OrdNr,1),$p(x1,D,44)=1 . . Set ^KOD(KC,"F",OrdNr,1)=x1 Else Do WARN^vhTXTPOP("Mail is opgestuurd!") Quit AantalOrders(KC) ; mailt de Orgalux-orders die nog niet opgestuurd zijn N (KC,D) Set OrdNr="",Aantal=0 For Set OrdNr=$O(^KOD(KC,"F",OrdNr)) Quit:OrdNr="" Do . Quit:'$$ORGALORD^FLOWCHK(OrdNr) ;enkel orders van orgalux . Set x1=^KOD(KC,"F",OrdNr,1),Opgestuurd=$P(x1,D,44) . Quit:Opgestuurd . Set Aantal=Aantal+1 Quit Aantal IsAventosOrder() N R,ORDNr S R=$G(^HULP($J,"K"_KC,"O",ORD(6))),ORDNr=$P(R,D,15) If ORDNr="" Quit 0 Quit $$IsAventosOrder^FLOWORD(ORDNr) PrintOrderAventos N R,ORDNr S R=$G(^HULP($J,"K"_KC,"O",ORD(6))),ORDNr=$P(R,D,15) Quit:ORDNr="" Do PrintAventos^FLOWORD(ORDNr) Quit IsAventosBon() N R,BONNr S R=$G(^HULP($J,"K"_KC,"L",BON(6))),BONNr=$P(R,D,10) If BONNr="" Quit 0 Quit $$IsAventosBon^FLOWBON(BONNr) PakbonAfdrukkenOK(BONNr) If $G(KC)="" Quit 0 If $G(BONNr)="" Quit 0 If '$D(^KU1(BONNr)) Quit 0 iF '$D(^ORDW("D",BONNr)) Quit 0 Quit '$$ORGALWMS^FLOWCHK(BONNr) PrintBonAventos N R,BONNr S R=$G(^HULP($J,"K"_KC,"L",BON(6))),BONNr=$P(R,D,10) Quit:BONNr="" Do PrintAventos^FLOWBON(BONNr) Quit