DCKENANK ;AFDRUKKEN Kennisanker [ 09/04/2003 11:35 AM ] ; FN(Number,Fraction,Format) Quit $$FN^DCALG(Number,Fraction,$G(Format)) ; PASTEB(R,AddBlank) New NewPage Set NewPage="Do FOOTER^"_$ZN_",TITEL^"_$ZN_",HEADER^"_$ZN Do PASTEB^DCALG(R,NewPage,$G(AddBlank)) Quit ; BLOCK(R) Do BLOCK^DCALG(R) Quit ; CACHE(R) Do CACHE^DCALG(R) Quit ; PASTE(Page,Line,Text,BPos,EPos,Attr) Do PASTE^DCALG(Page,Line,Text,BPos,EPos,Attr) Quit ; PASTER(Value,From,To) Do PASTER^DCALG(Value,From,To) Quit ; ; Afdruk body BODY New I,R,KenAnk,Msg,Wrap,Lijn Set BCount=0 For I=$LL(lbKenAnk):-1:1 Do .Set KenAnk=($LI(lbKenAnk,I)) .Set KennisObject=##Class(Derde.Kennis.Kennis).%OpenId(KenAnk) .Quit:'$IsObject(KennisObject) .Set Msg=KennisObject.Msg .Set Msg(1)=$TR(Msg,$C(13,10),"~") .Do GETWRAP^vhBIGEDIT("Msg",73,.Wrap,"G","~","") .For Lijn=1:1:Wrap Do ..Set R=$S(Lijn=1:"- ",1:" ")_$P(Wrap(Lijn),"`",5)_"`5" ..Do BLOCK(R) .Do PASTEB(L("B","B"),Lijn=Wrap) Quit ; ; Afdruk hoofding HEADER New T If $D(VPerfoT) New VPerfo Set VPerfo=VPerfoT Do CACHE(L("B","F")) Quit ; ; Afdruk titel TITEL New KlantInd,R,T,Blank,VPerfo New Aanspr,Naam,Woonpl,Land Do:$D(C) PPRINT Set PCount=PCount+1,LCount=0 Set KlantInd=^KK1(KLNr),R=^KKL(KlantInd,0) Set Naam=$P(R,D,2),Aanspr=$P(R,D,4),Woonpl=$P(R,D,7) For Blank=1:1:6 Do CACHE("") Set T=$$FIRMANM^DCALG("K",KLNr) Do PASTE(PCount,Blank-1,T,40,"","") Do PASTE(PCount,Blank,Woonpl,40,"","") Set T=$$TXT("KenAnk") Do PASTE(PCount,Blank-1,T,2,"","B") Quit ; ; Afdruk afsluiting FOOTER ;Set C(PCount,LCount)=C(PCount,LCount)_P("D",0); Bidirectioneel afgezet For I=LCount+1:1:MaxLines-1 Do CACHE(L("B","B")) Do CACHE(L("B","L")) ;Set C(PCount,LCount)=P("D",1)_C(PCount,LCount); Bidirectioneel afgezet Quit ; ; Afdrukken van een bladzijde PPRINT Do PPRINT^DCPRINT(PCount) Kill C(PCount) Quit ; ; Opbouwen local C en afdrukken van de bon PRINT(lbKenAnk) New KLNr,KlantInd,Taal,SelPrint New C,PCount,LCount,VH,P,L Do:$LL(lbKenAnk) .Set SelPrint='$D(Print) .If SelPrint Do SELPRINT^DCPRINT("?") Quit:'$D(Print) .Do INIT .;Close Print("DEV") .;Use 0 .Do:$G(KLNr) ..Set Taal=$P(^KKL(^KK1(KLNr),0),D,9) If Taal="" Set Taal="N" ..Do TITEL,HEADER,BODY,FOOTER,PPRINT .;Read "?",r .Do:SelPrint CLOSE^vhPRINTER Quit ; ; Initialisatie INIT New I,R,BONNr,KennisAnker,kaObj Set Document="Q" Set KennisAnker=$LI(lbKenAnk),kaObj=##Class(Derde.Kennis.Kennis).%OpenId(KennisAnker) Set:$IsObject(kaObj) KLNr=kaObj.Klant.Nummer Do VH^DCINIT,PINIT^DCINIT,LINIT^DCINIT("Q") If '$D(PageLen)!'$D(Q) Do FINIT^DCINIT("Q") Write P("D",1) Set PCount=0 Quit ; ; Ophalen taalafhankelijke tekst TXT(Ref,Piece) If '$D(Piece) Set Piece=2 Quit $P($P($T(@("T"_Ref)),U,Piece),D,$F("NFDE",Taal)-1) ; TKenAnk ;KENNISANKER\KENNISANKER\KENNISANKER\KENNISANKER\