Home   Package List   Routine Alphabetical List   Global Alphabetical List   FileMan Files List   FileMan Sub-Files List   Package Component Lists   Package-Namespace Mapping  
Routine: ZIBGSVED

ZIBGSVED.m

Go to the documentation of this file.
  1. ZIBGSVED ; IHS/ADC/GTH - SAVE GLOBAL TO TAPE, DSM SPECIFIC ; [ 02/07/97 3:02 PM ]
  1. ;;3.0;IHS/VA UTILITIES;;FEB 07, 1997
  1. ;
  1. I $G(XBFLT) S XBFLG=-1,XBFLG(0)="DSM flat filer has not been tested." Q
  1. G:$D(XBMED) NOSELT
  1. ASK ;
  1. R !!,"Copy transaction file to ('^' To Exit Without Saving)",!!?10,"[T]ape, [C]artridge C// ",XBMED:DTIME
  1. S XBMED=$$UP^XLFSTR($E(XBMED_"C"))
  1. I U[XBMED S XBFLG(1)="Job Terminated by Operator at Device Select",XBFLG=-1 G END
  1. G HELP:"?"[XBMED,ASK:'("CT"[XBMED)
  1. NOSELT ;
  1. S IO=XBIO
  1. D TAPE:"T"[XBMED,CART:"C"[XBMED
  1. Q
  1. ;
  1. HELP ;
  1. W !!,"This option saves the ' ",XBNAR," ",XBGL,"' transaction file to either a Cartridge",!,"or 9-Track Tape. The default is to a 9-Track Tape."
  1. W !,"Enter either a ""C"" for Cartridge Tape or a ""T"" for 9-Track Tape."
  1. G ASK
  1. ;
  1. CART ;
  1. S XBIO=47,XBMSG="Cartridge"
  1. G PROCESS
  1. TAPE ;
  1. S XBIO=48,XBMSG="9-Track"
  1. PROCESS ;
  1. S IOP=XBIO
  1. D ^%ZIS
  1. KILL IOP
  1. S:'$D(XBPAR) XBPAR=IOPAR
  1. I POP S XBFLG(1)=XBMSG_" Drive Not Available",XBFLG=-1 U IO(0) W !,XBFLG(1) G END
  1. U IO
  1. X ^%ZOSF("MAGTAPE")
  1. W @%MT("REW")
  1. U IO(0)
  1. W !!,"Mount The ",XBMSG," Tape 'WRITE ENABLED' And "
  1. RETRY ;
  1. R !?10,"Press RETURN When Ready - ""^"" to Exit ",X:DTIME
  1. I X=U!('$T) S XBFLG(1)="Job Aborted by Operator During Tape Mount",XBFLG=-1 G CLOSE
  1. U IO
  1. X ^%ZOSF("MTONLINE")
  1. I 'Y U IO(0) W !!,"WAITING FOR TAPE"
  1. F I=1:1:75 U IO X ^%ZOSF("MTONLINE") G S9:Y U IO(0) W "." H 5
  1. U IO(0)
  1. W !!,XBFLG(1)," After 6 Minutes"
  1. S XBFLG(1)="Job Aborted, Tape not Ready",XBFLG=-1
  1. G END
  1. ;
  1. S9 ;
  1. U IO
  1. X ^%ZOSF("MTWPROT")
  1. G WRITPROT:Y
  1. U IO(0)
  1. W !,"Please Standby - Copying Data to ",XBMSG
  1. U IO
  1. D SAVEDSM
  1. G CLOSE:$D(XBFLG),EXIT
  1. ;
  1. WRITPROT ;
  1. U IO(0)
  1. W *7,!!," The Tape Is WRITE PROTECTED. Please Remove The Tape,"
  1. W !," And Re-position The Write Protect/Enable Switch.",!," "
  1. G RETRY
  1. ;
  1. EXIT ;
  1. X ^%ZOSF("MAGTAPE")
  1. U IO
  1. W @%MT("WTM"),@%MT("REW")
  1. U IO(0)
  1. W !!,"Rewinding tape. <WAIT>"
  1. F L=1:1:150 U IO X ^%ZOSF("MTBOT") G:Y GOODREW U IO(0) W "." H 2
  1. S XBFLG=-1,XBFLG(1)="Tape not rewound"
  1. U IO(0)
  1. W !!,XBFLG(1),*7
  1. G CLOSE
  1. ;
  1. GOODREW ;
  1. U IO(0)
  1. W !!,"Remove the tape... Press RETURN when Ready:"
  1. R X:DTIME
  1. CLOSE ;
  1. D ^%ZISC
  1. U IO(0)
  1. END ;
  1. KILL XBMSG,%MT
  1. Q
  1. ;
  1. SAVEDSM ;
  1. W XBDT
  1. W:XBPAR'["V" !
  1. W XBTLE
  1. W:XBPAR'["V" !
  1. S X=XBGL_XBF_")"
  1. F S X=$Q(@X) Q:X="" Q:(XBE]"")&($P($P(X,"(",2),",")>XBE) S Y=X S:$E(Y,2)="[" Y=U_$P(Y,"]",2,999) W Y W:XBPAR'["V" ! W @X W:XBPAR'["V" !
  1. W "**END**" W:XBPAR'["V" !
  1. W "**END**" W:XBPAR'["V" !
  1. Q
  1. ;