Typical DCL Command Procedure to run the program :
$ DELETE SI$FOCUS:*.FTM;*/LOG
$ DELETE SI$FOCUS:*.MAS;*/LOG
$ COPY SI$FOCUS:SISDBD.MFD; SI$FOCUS:SISDBD.MAS; /LOG
$ SET DEFAULT SI$FOCUS
$ DEFINE FOC$DIR1 SI$DATA
$ FOCUS
EX (FOCEXEC name) ELE=(DBD Data Element)
FIN
$ COPY SI$FOCUS:PLAY.FTM; SI$FOCUS:(Name of resulting DECODE file).DOC;/LOG
$!
$ EXIT
FOCUS program :
-*  THIS FOCEXEC WILL GENERATE A DECODE FILE OF MAJORS & CERTIFICATES 
-*  ALONG WITH THEIR "TRANSLATED" VALUE.  THE FILE THAT IS LOOKED AT
-*  IS AN EXTRACT OF THE SIS PRODUCTION DBD.
-*    VARIABLES USED :
-*      ELE : THE DATA ELEMENT VALUES TO LOOK AT.
-*
SET PAGE=NOPAGE
SET LINES=999999
JOIN CLEAR *
FILEDEF SISDBD DISK SI$DATA:SISDBD.DAT
DEFINE FILE SISDBD
EXT_FIELD1/A34=GETTOK(DATA_ELEMENT_TRANS,34,1,'''',34,EXT_FIELD1);
EXT_FIELD2/A32=GETTOK(DATA_ELEMENT_TRANS,32,2,'''',32,EXT_FIELD2);
OUTLINE/A78=IF EXT_FIELD2 EQ ' ' THEN 
               (DATA_ELEMENT_VALUE|' '''|EXT_FIELD1||''' ') ELSE
           (DATA_ELEMENT_VALUE|' '''|EXT_FIELD1||''''' '||EXT_FIELD2||''' ');
FULL_ELE/A7=('DV'|'&ELE');
END
TABLE FILE SISDBD
PRINT OUTLINE
ON TABLE SAVE AS PLAY
WHERE DATA_ELEMENT_NAME EQ FULL_ELE;
IF VALUE_INDICATOR EQ ' '
END
Master File Description (MFD) for SISDBD :
FILE=SISDBD,SUFFIX=FIX
SEGNAME=ROOT
  FIELD=DATA_ELEMENT_NAME, ,A07,A07,$
  FIELD=VALUE_INDICATOR, ,A01,A01,$
  FIELD=DATA_ELEMENT_VALUE, ,A04,A04,$
  FIELD=COMPU_FILL01, ,A15,A15,$
  FIELD=DATA_ELEMENT_TRANS, ,A34,A34,$
  FIELD=DATA_ELEMENT_TRANS2, ,A19,A19,$

 

This page hosted by Get your own Free Homepage

Hosted by www.Geocities.ws

1