DCFAX2 ;AFDRUKKEN TELEFAX [ 08/06/2002 9:57 AM ] ; ; Het afdrukken van een telefax kan met volgende oproep --> Do PRINT^DCRBON(.Data) ; ; Toelevering TOE(TOENr) New R,LEVNr,Taal Set R=^KTO1(TOENr),LEVNr=$P(R,D) Do LEVINIT Set Taal=Data("Taal"),R=$$TXT^DCALG("Toelev","DCTOE") Set Data("DOCNaam")=$$UPCASE^vhRtn1($E(R))_$$LOCASE^vhRtn1($E(R,2,99)) Quit ; ; Transportaanvraag TRANSP(TranspNr) New R,LEVNr,Taal Set R=^TRANSP("D",TranspNr),LEVNr=$P(R,D) Do LEVINIT Set Taal=Data("Taal"),R=$$TXT^DCALG("Toelev","DCTOE") Set Data("DOCNaam")=$$UPCASE^vhRtn1($E(R))_$$LOCASE^vhRtn1($E(R,2,99)) Quit ; ; Offerte OFF(OFFNr) New R,KLNr,Taal,OffTyp Set R=^KOFKL1(OFFNr,"F"),KLNr=$P(R,D),R=^KOFKL(KLNr,"F",OFFNr,1),OffTyp=$P(R,D,25) Do KLINIT Set Taal=Data("Taal"),R=$$TXT^DCALG("Offer"_$S("D"[OffTyp:"D",1:OffTyp),"DCOFFD",$S(OffTyp="C":3,1:2)) Set:OffTyp="K" R=R_" "_$$TXT^DCALG("OfferK","DCOFFD",3) Set Data("DOCNaam")=$$UPCASE^vhRtn1($E(R))_$$LOCASE^vhRtn1($E(R,2,99)) Quit ; ; Order ORD(ORDNr) New R,KLNr,Taal Set R=^KO1(ORDNr,"F"),KLNr=$P(R,D) Do KLINIT Set Taal=Data("Taal"),R=$$TXT^DCALG("Order","DCORD") Set Data("DOCNaam")=$$UPCASE^vhRtn1($E(R))_$$LOCASE^vhRtn1($E(R,2,99)) Quit ; ; Bon BON(BONNr) New R,KLNr,Taal Set R=^KU1(BONNr,"F"),KLNr=$P(R,D) Do KLINIT Set Taal=Data("Taal"),R=$$TXT^DCALG("LevBon","DCBON") Set Data("DOCNaam")=$$UPCASE^vhRtn1($E(R))_$$LOCASE^vhRtn1($E(R,2,99)) Quit ; ; Faktuur FAKT(FANr) New R,KLNr,Taal,FakTyp Set R=^KFA("F",FANr,0,0),KLNr=$P(R,D),FakTyp=$P(R,D,2) Do KLINIT Set Taal=Data("Taal"),R=$$TXT^DCALG($S(FakTyp="C":"Kred",1:"Fakt"),"DCFAKT") Set Data("DOCNaam")=$$UPCASE^vhRtn1($E(R))_$$LOCASE^vhRtn1($E(R,2,99)) Quit ; ; Proforma FAKTP(FANr) New R,KLNr,Taal,FakTyp Set R=^KFAP("F",FANr,0,0),KLNr=$P(R,D),FakTyp=$P(R,D,2) Do KLINIT Set Taal=Data("Taal"),R=$$TXT^DCALG($S(FakTyp="C":"Kred",1:"Fakt"),"DCFAKTP") Set Data("DOCNaam")=$$UPCASE^vhRtn1($E(R))_$$LOCASE^vhRtn1($E(R,2,99)) Quit ; FREE(Nummer) Do FRINIT Quit ; KLANT(KLNr) New R,Taal Do KLINIT Quit ; LEVER(LEVNr) New R,Taal Do LEVINIT Quit ; SERIE(SRef) New Aan,Next,Type,LevKlNr,Naam Set Data("Type")="S",Data("Taal")="N",Aan="",Next=0 Set:",)"[$E(SRef,$L(SRef)) SRef=$E(SRef,1,$L(SRef)-1)_",Next)" For Set Next=$O(@SRef) Quit:Next="" Do Quit:$L(Aan)>50 .Set R=@SRef,Type=$P(R,";"),LevKlNr=$P(R,";",2) .If Type="L" Set Naam=$P(^KLE(^KL1(LevKlNr),0),D,2) .Else Set Naam=$P(^KKL(^KK1(LevKlNr),0),D,2) .Set:$L(Aan) Aan=Aan_", " .Set Aan=Aan_Naam Set:$L(Aan)>50 Aan=$E(Aan,1,46),Aan=$P(Aan,", ",1,$L(Aan,", ")-1)_" ..." Set Data("Aan")=Aan Quit ; ; Initialisatie vrije fax FRINIT Set Data("Type")="" For I="Nummer","Naam","Aanspr","Taal","Verantw","Fax" Set Data(I)="" Quit ; Initialisatie klant KLINIT New R,KlantInd,Naam,Aanspr,Taal,Verantw,Fax Set KlantInd=^KK1(KLNr),R=^KKL(KlantInd,0) Set Naam=$P(R,D,2),Aanspr=$P(R,D,4) Set Taal=$P(R,D,9) If Taal="" Set Taal="N" Set R=^KKL(KlantInd,1),Fax=$P(R,D,24) Set Verantw=$$GETVERAN^PERS("K",KLNr,"AK") Set:Verantw="" Verantw=$$GETVERAN^PERS("K",KLNr,"AB") Set:Verantw="" Verantw=$$TXT^DCFAX("Aank") Set Data("Type")="K" For I="KLNr","Naam","Aanspr","Taal" Set Data(I)=@I For I="Verantw","Fax" Set:$G(Data(I))="" Data(I)=@I Quit ; ; Initialisatie leverancier LEVINIT New R,LeverInd,Naam,Aanspr,Taal,Verantw,Fax Set LeverInd=^KL1(LEVNr),R=^KLE(LeverInd,0) Set Naam=$P(R,D,2),Aanspr=$P(R,D,4) Set Taal=$P(R,D,9) If Taal="" Set Taal="N" Set R=^KLE(LeverInd,1),Fax=$P(R,D,24) Set Verantw=$$GETVERAN^PERS("L",LEVNr,"AB") Set:Verantw="" Verantw=$$TXT^DCFAX("Verk") Set Data("Type")="L" For I="LEVNr","Naam","Aanspr","Taal" Set Data(I)=@I For I="Verantw","Fax" Set:$G(Data(I))="" Data(I)=@I Quit ; MERGSLOT New R,Taal,Ref,Param,%JJ Set %JJ=$$%J^vhRtn1(),Taal=$G(Data("Taal"),"N") Set Ref="STANDAARD" If $D(Data("TermUser")),Data("TermUser")'=Data("VanUser") Set Ref="IN OPDRACHT" Set Param("Slot hoogachtend")=^RES("DCFAX","PI","SLOT","D",Ref_" HOOGACHTEND",Taal) Set Param("Slot vriendelijke groeten")=^RES("DCFAX","PI","SLOT","D",Ref_" VRIENDELIJKE GROETEN",Taal) Do CST2ST^vhBIGEDIT("^HULP(%J,""T"")","G","~","","^HULP(%JJ,""T"")","G","~","510","",.Param) Kill ^HULP(%J,"T") Merge ^HULP(%J,"T")=^HULP(%JJ,"T") Kill ^HULP(%JJ,"T") Quit ; HULP(Tekst,Scherm) New I,Ref Set Ref="^HULP(%J,""T""" Set:Scherm Ref=Ref_",""T"_Scherm_"""" Set Ref=Ref_",I)" For I=1:1 Do Quit:Tekst="" .Set:$L(Tekst) @Ref=$E(Tekst,1,500) .Set $E(Tekst,1,500)="" Quit ; SINIT New I,FreeFax,InOpdr If $D(Print) Do Quit .Set I="" .For set I=$O(sScrnDef(I)) Quit:'I Do ..If $P($P(sScrnDef(I),"`",3),"""",2)="Tekst" Do PUTATTR^vhScherm(I,"","P"),REMATTR^vhScherm(I,"","B") ..If $G(%Fax),$G(%FaxNr) Do ...If "\Aan\Tav\Fax\Betr\Date\Van\Pages\"[(D_$P($P(sScrnDef(I),"`",3),"""",2)_D) Do PUTATTR^vhScherm(I,"H","") ...If $P(sScrnDef(I),"`",3)["(scheiding)" Do PUTATTR^vhScherm(I,"H","") ...If "\Line\"[(D_$P(sScrnDef(I),"`",3)_D) Do PUTATTR^vhScherm(I,"H","") ...If $P($P(sScrnDef(I),"`",3),"""",2)="Tekst" Set $P(sScrnDef(I),"`",5)=2 ..Else If "\Line\Fax\Tel\Adres\Woonpl\"[(D_$P(sScrnDef(I),"`",3)_D) Do REMATTR^vhScherm(I,"H","") ..If "\Taal\"[(D_$P($P(sScrnDef(I),"`",3),"""",2)_D) Do PUTATTR^vhScherm(I,"H","") For I=1:1 Quit:'$D(sScrnDef(I)) If $P(sScrnDef(I),"`",5)>24 Kill sScrnDef(I) Set FreeFax=+$G(Data("FreeFax")) If TextId="^",'$G(NewLevKl) Do .Set I="" .For Set I=$O(^DEVSAVE($I,"FAX",FreeFax,I)) Quit:I="" If I'="Tekst" Set Data(I)=^DEVSAVE($I,"FAX",FreeFax,I) .Do MERGETXT^DCFAX(TextId,.Data) If $G(FreeFax) Do .New I .Set Data("Document")="?" .If TextId'="^",'$G(Mail),'$G(ExtFax) Set (Data("Verantw"),Data("Betreft"))="" .Set I="" .For set I=$O(sScrnDef(I)) Quit:'I Do ..If "\Tav\Betr\Date\Pages\"[(D_$P($P(sScrnDef(I),"`",3),"""",2)_D) Do REMATTR^vhScherm(I,"","D") ..If $G(Extern),"\Aan\Fax\"[(D_$P($P(sScrnDef(I),"`",3),"""",2)_D) Do REMATTR^vhScherm(I,"","D") Set Taal=$G(Data("Taal")) Set:Taal="" (Taal,Data("Taal"))="N" Set:'$D(Data("Datum")) Data("Datum")=$$EXTDATE^vhDTyp($H,"DC",Data("Taal"))_", "_$$EXTDATE^vhDTyp($H,"DL",Data("Taal")) Quit:TextId="^"&'$G(NewLevKl) If '$G(FreeFax) Do .Do @($P("TOE\TRANSP\\OFF\ORD\BON\FAKTP\FAKT\\",D,$F("TEPAOLVFH",Document)-1)_"(DocNum)") .Set Data("Document")=Document .Set Data("DocNum")=DocNum .Set Data("Betreft")=Data("DOCNaam")_" "_$$EXTNUM^vhDTyp(Data("DocNum"),0,".-",0) .Set I="" .For Set I=$O(DocNum(I)) Quit:I="" Set Data("Betreft")=Data("Betreft")_", "_$$EXTNUM^vhDTyp(I,0,".-",0) .Set:$G(Data("ATK")) Data("Betreft")="VHISIE - "_Data("Betreft") If $G(Data("Type"))="S" Do .Set I="" .For set I=$O(sScrnDef(I)) Quit:'I Do ..If "\Tav\Fax\"[(D_$P($P(sScrnDef(I),"`",3),"""",2)_D) Do PUTATTR^vhScherm(I,"","D") Set Data("TextId")=TextId If $G(Data("ORDBEV")),$G(Data("VanUser")) Else Set Data("VanUser")=UserId Kill Data("TermUser") Set InOpdr=$$USELECT^vhUSER("","",$$IO^cQ5,"","","","","","",0) If $L(InOpdr),$L(InOpdr,";")=1,InOpdr'=UserId Set Data("TermUser")=InOpdr If $G(Data("Type"))'="S" Do .If $D(Data("KLNr")) Set Data("Aan")=$$FIRMANM^DCALG("K",Data("KLNr")) Quit .If $D(Data("LEVNr")) Set Data("Aan")=$$FIRMANM^DCALG("L",Data("LEVNr")) Quit .Set Data("Aan")=Data("Aanspr")_$S($L(Data("Aanspr")):" ",1:"")_Data("Naam") Set Data("Tav")=$G(Data("Verantw")) Set Data("Fax")=$G(Data("Fax")) If $G(Data("ORDBEV")),$G(Data("VanUser")) Set Data("Van")=$P(^vhUSER("D",Data("VanUser")),D,5) Else Set Data("Van")=$P(^vhUSER("D",$P(UserId,";")),D,5) Set Data("Pages")="" Set Data("FAdres")=^KBA(99,2),Data("FWoonpl")=^KBA(99,3) Set Data("FTel")=^KBA(99,5),Data("FFax")=^KBA(99,6) Set Data("FTel")=$TR($P(Data("FTel"),":",2)," ","") Set Data("FTel")=" (32-"_+Data("FTel")_") "_$P(Data("FTel"),"/",2) Set Data("FFax")=$TR($P(Data("FFax"),":",2)," ","") Set Data("FFax")=" (32-"_+Data("FFax")_") "_$P(Data("FFax"),"/",2) Do MERGETXT^DCFAX(TextId,.Data) Quit ; VINIT New I If $G(%Fax),$G(%FaxNr) Do .Set I="" .For set I=$O(sScrnDef(I)) Quit:'I Do ..If "\Aan\Date\"[(D_$P($P(sScrnDef(I),"`",3),"""",2)_D) Do PUTATTR^vhScherm(I,"H","") ..If "\Vervolg\Line\Fax\Tel\Adres\Woonpl\"[(D_$P(sScrnDef(I),"`",3)_D) Do PUTATTR^vhScherm(I,"H","") ..If $P($P(sScrnDef(I),"`",3),"""",2)="Tekst" Set $P(sScrnDef(I),"`",5)=2 Quit ; MULTI(%J) New Select,Output Do STORE^vhTERMINA() Set Output="-",Select="KLETIKET" If Select="KLETIKET" Do .New KLNr,KlantInd,Persoon .Kill ^HULP(%J,"S") .Do FAX^KLETIKET(%J) .Set Next="" .For Set Next=$O(^HULP(%J,"S",Next)) Quit:Next="" Do ..Set R=^HULP(%J,"S",Next),KlantInd=$P(R,D),KLNr=$P(R,D,2),Persoon=$P(R,D,3) ..Set R="K;"_KLNr_";"_Persoon ..Set ^HULP(%J,"S",Next)=R .Set Output=$O(^HULP(%J,"S","")) .If Output Do ..If $O(^HULP(%J,"S",Output)) Set Output="S;^HULP(%J,""S"")" ..Else Set Output=^HULP(%J,"S",Output) .Else Set Output="-" Do REFRESH^vhTERMINA() Quit Output ;