OUTPUT(sDevTyp,InpKey,PapTyp,PrintTyp,Optie) ;Afdrukken, transfert van lijsten [ 10/31/2001 1:33 PM ] Do PRINT(.@DL(1),sDevTyp,$G(PapTyp),$G(PrintTyp),.Optie) Quit ;ListDef via .Local oproepen PRINT(ListDef,sDevTyp,PapTyp,PrintTyp,Optie) New FN New sCBExec,sBreed,sHoofd,sCBFmt,sCBFunc,sCBVal,sFmt,sJC,sQNext,sQStart,sSpace,sTitel,sProgLog G BEGIN ; ;sDevTyp = mogelijke output dev's ("" = alle mogelijke voor die $I) ;InpKey = optioneel : mogelijke input voor SL^PROC ;PapTyp = optioneel : keuze papiersoort ("" = selekteer, B = breed, S = smal) ;PrintTyp = optioneel : Indien sDevTyp "P" bevat, keuze printertype (CA,BR,BO) ;PrintTyp = optioneel : Indien sDevTyp="T" dan kan hier de bestandsnaam staan ; T1 ;Output : . T2 ;S = Scherm ;H = HFS ;K = Kermit ;P = Printer ;T = Transfert ;M = MacPrint T3 ;Start de ASCII TRANSFER RECEIVER en klik op het TRANSFERT ikoontje T3b ;Nu kunt u de documentnaam invullen en eventueel de juist map selecteren T3c ;De overdracht van de gegevens zal automatisch starten en stoppen T4 ;[] = ok T5 ;Saving ... T6 ;Save ;not ;complete. T7 ;File ; is vol. T8 ;Plaats ;breed ;smal ;papier op de printer en schakel hem aan : . T9 ;[] = breed S = smal ;[] = ok ;, = hernemen T10 ;Printing ... T11 ;Print complete T12 ;Selekteer "Page setup" van het "File menu" en kies ";Landscape;Portret;" : . ; ; drive %FN is vol F C vhDEV ;O vhDEV U vhDEV S K=$ZOS(2,%FN) ; Delete file C vhDEV I QUIT W !,$P($T(T7),U,2),%FN,$P($T(T7),U,3) Q ; ; Scherm S ;Q:'$D(ListDef(3)) D INIT^vhPRINTER($G(PapTyp),ListDef(5),"VI") Quit:'$D(Print) D WSCHERM^OUTPUT2 D CLOSE^vhPRINTER K ListDef(10) D ADD^vhScherm(1,24) Q ; ; Transfert T New OutputType Set OutputType="PC" TT Set Dir=$$DIRUSER^vhDEV Quit:Dir="" Set File=$$ASKFILE^vhDEV($S(sDevTyp="T"&($G(PrintTyp)?1.E1"."3E):PrintTyp,1:"TRANSFER.TXT"),,"Het bestand wordt weggeschreven in uw map op de fileserver") Quit:File="" Set Dev=$$OPEN^vhDEV(Dir,File,"W") Do INIT^vhPRINTER("","","TR") S FP=2401 W @F,@F1,"Bezig met het schrijven van gegevens naar bestand ",File TRANSF1 U Dev D WTRANS^OUTPUT2 TRANSF2 C Dev Q ; ; MAC transfer (ander charactersert) M New OutputType Set OutputType="MC" Goto TT ; HFS H Do INIT^vhPRINTER("","","HF") S FP=1001 W @F,@F1 D ^cSDEV Q:$D(QUIT) W !!,$P($T(T5),U,2),! U vhDEV D WDEV^OUTPUT2 I $D(QUIT) D F C vhDEV W !!,$P($T(T6),U,2) W:$D(QUIT) @FMTK,@FMTB,$P($T(T6),U,3) W $P($T(T6),U,4),@FMTb,@FMTk,!,$P($T(T4),U,2) D IK^PROC1 Q ; ; Printer P N InitPrinter Set InitPrinter='$D(Print) If InitPrinter Do INIT^vhPRINTER($G(PapTyp),ListDef(5),$G(PrintTyp),.Optie) Quit:'$D(Print) S:'$G(ListDef(5)) @(ListDef_"(5)")=Print("KOL") ;S ListDef(4)=Print("LEN")_";"_5_";"_3_";;"_1 ;S $P(ListDef(4),";",4)=Print("LEN")-5-3-1 ;S $P(ListDef(4),";",6)=Print("MAXLIJN") D WPRINT^OUTPUT2 Do:InitPrinter CLOSE^vhPRINTER Q ; ; Kermit K Q ; BEGIN Q:'$D(ListDef) Q:'$D(ListDef(1)) Q:ListDef(1)="" Q:'$D(ListDef(2)) Q:ListDef(2)="" S MAC=$D(^cLOG(boot,"DEV",$$IO^cQ5)) I MAC S MAC=$P(^cLOG(boot,"DEV",$$IO^cQ5),D)="MC" I 'MAC G YZ:"\T\M\MT\TM\"[(D_sDevTyp_D) S sDevTyp=$P(sDevTyp,"T")_$P(sDevTyp,"T",2),sDevTyp=$P(sDevTyp,"M")_$P(sDevTyp,"M",2) S R=sDevTyp,sDevTyp="" I R["-" F I="S","H","K","P",$P("\T",D,MAC+1),$P("\M",D,MAC+1) S:R'[I sDevTyp=sDevTyp_I E F S:"SHKPTM"[$E(R)&(sDevTyp'[$E(R)) sDevTyp=sDevTyp_$E(R) S R=$E(R,2,99) Q:R="" I sDevTyp="" S sDevTyp="SHKP"_$S(MAC:"TM",1:"") S sDevTyp=$P(sDevTyp,"K")_$P(sDevTyp,"K",2) Set:'$G(ListDef(5)) ListDef(5)=$$BREEDTE(ListDef(2)) Set:'$L($G(PapTyp)) PapTyp=ListDef(5) I $L(sDevTyp)=1 D @sDevTyp Q 11 Do STORE^vhTERMINA() S FP=2301 W @F,@F1," ",$P($T(T1),U,2),!?2 F I=1:1:$L("SHKPTM") W:sDevTyp[$E("SHKPTM",I) $P($T(T2),U,I+1) ; ,$P($T(T2),U,($L($E(sDevTyp,I+1,9))=1)+8) 13 K IK D IK^PROC1 G 13:sDevTyp'[R Do REFRESH^vhTERMINA() G YZ:R="-" ;S FP=2301 W @F,@F1 D @R ; YZ D ADD^vhScherm(22,24) Q BREEDTE(Lijst) New Len Set Len=0 For I=1:1:$L(Lijst,"\") Set Len=Len+$P($P(Lijst,"\",I),";",4)+$L($P($P(Lijst,"\",I),";",6)) Quit Len