PV1 ; Export klantenlijst LMC Benelux Masson [ 11/22/2003 1:21 PM ] #include vhLib.Macro #define CodexList "LRSBG" #define CodexDeelVork "0;25;50;75;100" Set Dev=0 Set Dev=$$OPEN^vhDEV(,"LMC BENELUX KLANTENLIJST.TXT","W","T") Use Dev Set Begin=$$EXTDATE^vhDTyp($$CALCDATE^vhDTyp($H,"J",-1,"FD"),"DM4")_" " Set End=$$EXTDATE^vhDTyp($$CALCDATE^vhDTyp($H,"J",-1,"LD"),"DM4")_" " Set KLId=0 For Set KLId=$O(^KKL(KLId)) Quit:KLId="" Do . Set KLNr=$P(^KKL(KLId,0),D,1) . Quit:$P(^KKL(KLId,2),D,10) ; non akt . Quit:$L($P(^KKL(KLId,0),D,30)) ; non akt of verwijderd . Quit:'$P(^KKL(KLId,0),D,20) ; geen regio . Quit:$$GetKlantType^KLANT5(KLNr)="Z" ; Non akt . Quit:$$GetKlantType^KLANT5(KLNr)=0 ; Non akt . Set Kwanti=$$GetKwantitatief^KLANT5(KLNr) . Quit:Kwanti=0 . Set Stat=$$KLANT^STAT(KLNr,0,Begin,End,3) . ;Klant/Prospect Naam bedrijf Adres 1 Adres 2 Adres 3 Postcode Stad Land Leveringsadres Facturatieadres Bezoekadres Taal . Set CP=$S(Stat>0:"C",Kwanti="X":"P",1:"C") . Set Naam=$P(^KKL(KLId,0),D,2) . Set Aanspreking=$P(^KKL(KLId,0),D,4) . Set:$L(Aanspreking) Naam=Naam_" "_Aanspreking . Set Straat=$P(^KKL(KLId,0),D,5) . Set Regio=$P(^KKL(KLId,0),D,20) . Set Gemeente=$P(^KKL(KLId,0),D,7) . Set PostKode=$P(^KKL(KLId,0),D,6) . Set Taal=$P(^KKL(KLId,0),D,9) . Set Land=$$LAND^vhRtn1($P(^KKL(KLId,0),D,8)) . Set (Adres1,Adres3)=$$LEVADRES(KLId) . Write CP,*9,Naam,*9,Straat,*9,KLNr,*9,Regio,*9,PostKode,*9,Gemeente,*9,Land,*9,Adres1,*9,*9,Adres3,*9,Taal . ;Telefoon Fax Tarief code Korting Segment Potentieel Omzet 2009 . Set Tel=$P(^KKL(KLId,0),D,13) . Set Fax=$P(^KKL(KLId,1),D,24) . Set Codex=$P(^KKL(KLId,2),D,3) . Set Korting=+$J(40*$P($$$CodexDeelVork,";",$F($$$CodexList,Codex)-1)/100,0,4) . Set:Codex="P" Korting=-10 . Set:Codex="C" Korting=-100 . Write *9,Tel,*9,Fax,*9,Codex,*9,$$$ExcelNum(Korting),*9,$$GetActiviteit^KLANT5(KLNr),*9,$LG($$DisplayKwantitatief^KLANT5(KLNr),2),*9,$$$ExcelNum(Stat) . ;Voornaamste concurrent Handelsregister BTW n° Kredietverzekering Verz limiet Exempl Fact Betalingswijze Betalingstermijn . Set BTWNr=$P(^KKL(KLId,0),D,16) . Set HandelsReg=$P(^KKL(KLId,1),D,21) . Set KredietLim=$P(^KKL(KLId,2),D,7)*1000 . Set KredietVerz=$S($P(^KKL(KLId,3),D,8):"DUBIEUS",KredietLim=1:"ZERO LIMIT",(KredietLim>0):"LIMIT",1:"ZELF B.") . Set:KredietLim'>1 KredietLim="" . Set ExtraFact=$P(^KKL(KLId,1),D,2) . Set:ExtraFact=0 ExtraFact="" . Set BetalingsT=$P(^KKL(KLId,0),D,18) . Set BetalingsW=$S($P(^KKL(KLId,3),D,2):"PREPAID",$P(^KKL(KLId,3),D,1):"REMBOURS",BetalingsT="":"CONTANT",1:"") . Write *9,*9,HandelsReg,*9,BTWNr,*9,KredietVerz,*9,KredietLim,*9,ExtraFact,*9,BetalingsW,*9,BetalingsT . ;Aanspreektitel Naam Voornaam E-mail Functie Telefoon Fax Gsm Voornaamste contact . ;Aanspreektitel Naam Voornaam E-mail Functie Telefoon Fax Gsm . Do GETVERAN("K",KLNr,"AK1;AK2;AB1;AB2;EI",.Graad) . Set Cnt=0,Graad="",PersNr="" Do . For Set Graad=$O(Graad(Graad)) Quit:Graad="" Do . . For Set PersNr=$O(Graad(Graad,PersNr)) Quit:PersNr="" Do Quit:Cnt=2 . . . Set RecP=Graad(Graad,PersNr) . . . Write *9,$P(RecP,D,4),*9,$P(RecP,D,2),*9,$P(RecP,D,3),*9,$TR($G(Graad(Graad,PersNr,"E")),"#$~"),*9,$P(RecP,D,5),*9,$G(Graad(Graad,PersNr,"T")),*9,$G(Graad(Graad,PersNr,"F")),*9,$G(Graad(Graad,PersNr,"G")) . . . Set Cnt=Cnt+1 . . . Write $S(Cnt=1:$C(9)_"Y",1:"") . Write ! Do CLOSE^vhDEV(Dev) Quit LEVADRES(KLId) Set IsPostBus=$zcvt($P(^KKL(KLId,0),D,5),"U")["POSTBUS" Quit:'IsPostBus "" Set AdrNr="L " Set AdrNr=$O(^KKL(KLId,AdrNr)) Quit:$E(AdrNr)'="L" "" Set AdrRec=$P(^KKL(KLId,AdrNr),"\",2,7) Set AdrRec=$P(AdrRec,"\",1)_"\"_$P(AdrRec,"\",4,6) Quit AdrRec GETVERAN(ObjType,ObjRef,VerantW,Graad) ; Ophalen van de verantwoordelijke ; Graad via .Local ;VerantW is een lijst met de VERANTW types met ";" gescheiden, volgorde is belangrijk New PersNr,I Set PersNr="" Kill Graad For Set PersNr=$O(^PERS(ObjType,ObjRef,PersNr)) Quit:PersNr="" Do . Set RecP=^(PersNr) . For I=1:1:$L($P(RecP,D,5),";") Do . . Quit:VerantW'[$P($P(RecP,D,5),";",I) . . Set Graad=$L($P(VerantW,$P($P(RecP,D,5),";",I)),";") . . Quit:'Graad . . Set Graad(Graad,PersNr)=RecP . . For I=15:1:20 Do . . . Set Con=$P(RecP,D,I) . . . If $L($P(Con,";")) Do . . . . Set Graad(Graad,PersNr,$P(Con,";"))=$P(Con,";",2) Quit