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

ZCMSLD1.m

Go to the documentation of this file.
  1. ZCMSLD1 ;CMB/MEB; 20 Dec 95 14:26; Load all files from a CMS save set
  1. ;;3.01;BHL IHS Interfaces with GIS;;JUL 01, 2001
  1. ;CHCS ZCMS_TOOLS; GEN 4; 29-JUN-1999
  1. ;COPYRIGHT 1988, 1989, 1990 SAIC
  1. ;
  1. ;
  1. ;
  1. N Z,%,X,Y,N,FI,RR,F,T,FN,DK,NOLOAD,ENAME,ETYP
  1. ;===================================================================
  1. PROMPT ;PROMPT FOR ELEMENT TO LOAD
  1. R !!,"Enter Element name: ",ENAME
  1. I ENAME["^"!(ENAME="") Q
  1. HLP I ENAME["?" W !!,"ENTER ELEMENT NAME AS IT APPEARS IN THE CMS LIBRARY." G PROMPT
  1. G EN
  1. ;===================================================================
  1. ENK ;THIS IS AN ENTRY POINT TO LOAD ONE ELEMENT WITHOUT BEING PROMPTED
  1. ;THE VMS FILE WILL BE DELETED AFTER BEING LOADED.
  1. S ZCMSDEL=1,ZCMSNO=+$G(ZCMSNO),ZCDIR=$G(ZCDIR)
  1. I ENAME["[",ENAME["]" S DIR=$P(ENAME,"]",1),ENAME=$P(ENAME,"]",2)
  1. E S DIR=""
  1. S ETYP=$P(ENAME,".",2) I ETYP="" G HLP
  1. I DIR="",ZCDIR'="" S ENAME=ZCDIR_ENAME
  1. W ! I $ZSE(ENAME)="" W !!,"THE VMS FILE FOR THE ELEMENT YOU ENTERED IS NOT IN YOUR CURRENT DIRECTORY." G PROMPT
  1. G RTN:ETYP="RTN",PT:ETYP="PT",IT:ETYP="IT",ST:ETYP="ST",OP:ETYP["OPTION",DD:ETYP="DD",SE:ETYP="SE",FU:ETYP="FU",BU:ETYP="BU",DE:ETYP="DE",FILE:ETYP="FILE",GAL:ETYP="GAL",BAR:ETYP="BAR",CA:ETYP="CA",CS:ETYP="CS",TT:ETYP="TT"
  1. S ENAME="?" G HLP
  1. ;===================================================================
  1. EN ;THIS IS AN ENTRY POINT TO LOAD ONE ELEMENT WITHOUT BEING PROMPTED
  1. ;THE VMS FILE WILL NOT BE DELETED AFTER BEING LOADED.
  1. S ZCMSDEL=0,ZCMSNO=$G(ZCMSNO)
  1. I ENAME["[",ENAME["]" S DIR=$P(ENAME,"]",1),ENAME=$P(ENAME,"]",2)
  1. E S DIR=""
  1. S ETYP=$P(ENAME,".",2) I ETYP="" G HLP
  1. W ! I $ZSE(ENAME)="" W !!,"THE VMS FILE FOR THE ELEMENT YOU ENTERED IS NOT IN YOUR CURRENT DIRECTORY." G PROMPT
  1. G RTN:ETYP="RTN",PT:ETYP="PT",IT:ETYP="IT",ST:ETYP="ST",OP:ETYP["OPTION",DD:ETYP="DD",SE:ETYP="SE",FU:ETYP="FU",BU:ETYP="BU",DE:ETYP="DE",FILE:ETYP="FILE",GAL:ETYP="GAL",BAR:ETYP="BAR",CA:ETYP="CA",CS:ETYP="CS",TT:ETYP="TT"
  1. S ENAME="?" G HLP
  1. ;==================================================================
  1. FE(X) ;Translate a file name to a file element
  1. Q $TR(X,"_CHCS$.FILED",".")
  1. ;==================================================================
  1. TE(X,DK) ;Translate a file name to a template element
  1. S DK=+$TR($P(X,"$",2),"_.",".;")
  1. Q $TR($P(X,"$"),"_"," ")
  1. ;==================================================================
  1. OE(X) ;Translate a file name to an option element
  1. S M=X["_MENU"
  1. Q $TR($P(X,"."),"_"," ")
  1. ;==================================================================
  1. RD(X,DK) ;Translate a data element to a file element
  1. S DK=+$TR($P(X,"$$",2),"_",".")
  1. Q $TR($P(X,"$$"),"$_",", ")
  1. ;==================================================================
  1. RTN ;
  1. D LDINIT
  1. S Z="ZL ZS @N"
  1. S $ZT="EOF" D
  1. .I $$ROUTEST^%ZTF("ZCMSLDI") D RTN^ZCMSLDI(ENAME) I NOLOAD1=1 Q
  1. .O ENAME:READ U ENAME R X,Y,N X Z C ENAME U 0 W N_$J("",10-$L(N))
  1. .I ENAME[";" S ENAME=$P(ENAME,";",1)
  1. .D:ZCMSDEL DFILE^ZCMSLD(.ENAME)
  1. W:NOLOAD=0&(ZCMSNO'=1) !,"Load completed.",!
  1. W:NOLOAD=1&(ZCMSNO'=1) !,"Partial Load completed.",! Q
  1. W !,B1_ZCMSCNT("RTN")_B0_" Routines Loaded.",!,"The stamp global has been updated to reflect this load."
  1. S ZCMSEND=$$CDATASC^%ZTFDT($H,4,2)
  1. W !,"LOAD STARTED: "_ZCMSSTRT
  1. W !,"LOAD FINISHED: "_ZCMSEND
  1. D LGUPD^ZCMSLD3
  1. Q
  1. ;==================================================================
  1. TT G RIF^INZTTR
  1. Q
  1. ;==================================================================
  1. PT D LDINIT
  1. I '$D(DIJTT),ZCMSNO'=1 S DIJTT=+$O(^%ZIS(2,"B","C-VT320",0))
  1. S FI="PT" D LOAD1 Q
  1. ;==================================================================
  1. IT D LDINIT
  1. I '$D(DIJTT),ZCMSNO'=1 S DIJTT=+$O(^%ZIS(2,"B","C-VT320",0))
  1. S FI="IT" D LOAD1 Q
  1. ;==================================================================
  1. ST D LDINIT S FI="ST" D LOAD1 Q
  1. ;==================================================================
  1. OP D LDINIT S FI="OPTION" D LOAD1 Q
  1. ;==================================================================
  1. DD D LDINIT S FI="DD" D LOAD1 Q
  1. ;==================================================================
  1. BAR D LDINIT S FI="BAR" D LOAD1 Q
  1. ;==================================================================
  1. SE D LDINIT S FI="SE" D LOAD1 Q
  1. ;==================================================================
  1. FU D LDINIT S FI="FU" D LOAD1 Q
  1. ;==================================================================
  1. BU D LDINIT S FI="BU" D LOAD1 Q
  1. ;==================================================================
  1. CA D LDINIT S FI="CA" D LOAD1 Q
  1. ;==================================================================
  1. CS D LDINIT S FI="CS" D LOAD1 Q
  1. ;==================================================================
  1. FILE D LDINIT S FI="FILE" D LOAD1 Q
  1. ;==================================================================
  1. GAL D LDINIT S FI="GAL" D LOAD1 Q
  1. ;==================================================================
  1. DE D LDINIT S FI="DE",RR="ENTR^ZCMSDE(DE,DK,ZCDIR)" D
  1. .S F=$ZC(%PARSE,ENAME,,,"NAME"),T=$ZC(%PARSE,ENAME,,,"TYPE"),%=F_T
  1. .S DE=$$RD(.ENAME,.DK)
  1. .D @RR
  1. .D:ZCMSDEL DFILE^ZCMSLD(.ENAME)
  1. W:NOLOAD=0&(ZCMSNO'=1) !,"Load completed.",!
  1. W:NOLOAD=1&(ZCMSNO'=1) !,"Partial Load completed.",!
  1. W !,B1_ZCMSCNT("DE")_B0_" DATA ELEMENTS LOADED.",!,"The stamp global has been updated to reflect this load."
  1. S ZCMSEND=$$CDATASC^%ZTFDT($H,4,2)
  1. W !,"LOAD STARTED: "_ZCMSSTRT
  1. W !,"LOAD FINISHED: "_ZCMSEND
  1. D LGUPD^ZCMSLD3
  1. Q
  1. ;==========================================================
  1. LOAD1 S FN=$S(ETYP["DD"!(ETYP["FILE"):$$FE(.ENAME),1:ENAME)
  1. S RR="ENTR^ZCMS"_$S(FI="FILE":"F",FI["OPTION":"OP",1:FI)_"(FN,ZCDIR)"
  1. D @RR,CNTUPD^ZCMSLD3(FI)
  1. D:ZCMSDEL DFILE^ZCMSLD(.ENAME)
  1. W:NOLOAD=0&(ZCMSNO'=1) !,"Load completed.",!
  1. W:NOLOAD=1&(ZCMSNO'=1) !,"Partial Load completed.",!
  1. W !,B1_ZCMSCNT(FI)_B0_" ELEMENTS LOADED.",!,"The stamp global has been updated to reflect this load."
  1. S ZCMSEND=$$CDATASC^%ZTFDT($H,4,2)
  1. W !,"LOAD STARTED: "_ZCMSSTRT
  1. W !,"LOAD FINISHED: "_ZCMSEND
  1. D LGUPD^ZCMSLD3
  1. Q
  1. ;==================================================
  1. LDINIT S NOLOAD=0,NOLOAD1=0,ZCMSUP=1,ZCDIR=$G(ZCDIR)
  1. S Z="ZL ZS @N",U="^",DUZ(0)="@",CONFIRM=0,NOLOAD=0,NOLOAD1=0,ZCMSNO=+$G(ZCMSNO),TCMLD=+$G(TCMLD)
  1. N ETYP
  1. D INIT^ZCMSETUP,CNTINIT^ZCMSLD3
  1. S ZCMSSTRT=$$CDATASC^%ZTFDT($H,4,2)
  1. S %U=$P($ZC(%UCI),",",7)
  1. S DATEOUTF=$$DT^%ZTFDT()
  1. I %U="TRA"!(%U="TRS") R "Is this is a Training Data Base Environment? Y// ",ZCMSINP W !! D
  1. .I ZCMSINP'["N"!(ZCMSINP'["n") R "Enter date (Example 21-APR-1991): ",DATEOUT S DATEOUTF=$$CDATA2F^%ZTFDT(DATEOUT)
  1. Q
  1. ;=======================================
  1. EOF I $ZE["-ENDOFILE" S $ZE="" U 0 W !,$P(ENAME,"]",2)," The VMS file does not contain a complete element.",! C ENAME:DELETE G EN
  1. U 0 W $ZE Q
  1. ;
  1. FN(ENAME,ZCMSDEL) ;LOAD ONE ELEMENT WITHOUT BEING PROMPTED
  1. S ZCMSNO=1,ZCMSNOGO=0,ZCDIR=$G(ZCDIR)
  1. D INIT
  1. I ENAME["[",ENAME["]" S DIR=$P(ENAME,"]",1),ENAME=$P(ENAME,"]",2)
  1. E S DIR=""
  1. I DIR="",ZCDIR'="" S ENAME=ZCDIR_ENAME
  1. S ETYP=$P(ENAME,".",2) I ETYP="" G HLP
  1. F TTYP="RTN","PT","IT","ST","SE","OPTION_MENU","OPTION","DD","FILE","FU","BU","GAL","DE","BAR","CA","CS","TT" I ETYP=TTYP S ZCMSNOGO=1
  1. I 'ZCMSNOGO W !!,"I do not know how to load an element with an extension ",B1,".",ETYP,B0,!!,"Please contact the CMS Dudes for help.",! Q
  1. W ! I $ZSE(ENAME)="" W !!,"File "_ENAME_" not found..." Q
  1. G RTN:ETYP="RTN",PT:ETYP="PT",IT:ETYP="IT",ST:ETYP="ST",OP:ETYP["OPTION",DD:ETYP="DD",SE:ETYP="SE",FU:ETYP="FU",BU:ETYP="BU",DE:ETYP="DE",FILE:ETYP="FILE",GAL:ETYP="GAL",BAR:ETYP="BAR",CA:ETYP="CA",CS:ETYP="CS",TT:ETYP="TT",Q
  1. ;
  1. Q Q
  1. ;
  1. INIT ;Init some needed values
  1. S DUZ=+$G(DUZ),DUZ(0)=$G(DUZ(0)),U="^"
  1. S %U=$P($ZC(%UCI),",",7)
  1. S VALID=""
  1. ; load up the VALID character set (all upper case and numerics)
  1. F %=0:1:127 I $C(%)?1UN S VALID=VALID_$C(%)
  1. S VALID=VALID_" -"
  1. ; add in SPACE and hyphen to VALID characters
  1. S B1=$C(27)_"[1m",B0=$C(27)_"[m" ;BOLD ON/BOLD OFF
  1. Q
  1. ;=======================================
  1. KP ;Load one element and keep VMS file.
  1. N Z,%,X,Y,N,FI,RR,F,T,FN,DK,NOLOAD,ENAME,ETYP
  1. PROMPT ;PROMPT FOR ELEMENT TO LOAD
  1. R !!,"Enter Element name: ",ENAME
  1. I ENAME["^"!(ENAME="") Q
  1. HLP I ENAME["?" W !!,"ENTER ELEMENT NAME AS IT APPEARS IN THE CMS LIBRARY." G PROMPT
  1. G EN ;keep going without deleting VMS file.