....
/************************************************************/ /** (c) Copyright Velocity Software, Inc. 1990,1994 */ /************************************************************/ /* */ /* ESAMAP/VMPAF Variable List Extraction Procedure */ /* */ /* Usage: ESAPAFVL return mode variables */ /* */ /* where return is STACK or the output file name, */ /* mode is the mode of a read/write disk, */ /* and variables lists the variables to be extracted */ /* in the form */ /* fname.ftype.variable [...] */ /* */ /* This procedure is invoked by VMPAF and is not intended */ /* for direct end-user use. */ /* */ /************************************************************/ Parse Upper Arg route fmode varlist Parse Var varlist fname'.'ftype'.'. fileid = fname LEFT(ftype,6) || 'XK' '*' Address Command 'ESTATE' fileid If RC > 0 Then Do Say "File '"fileid"' not found on disk." Exit 28 End 'MAKEBUF' buffer = RC records = QUEUED() Queue '**' Queue ' ' 'EXECIO * DISKR' fileid '2 ( FINIS' r = RC If RC > 0 Then Do Say "Error" RC "reading file '"fileid"' from disk." 'DROPBUF' buffer Exit r End If route <> 'STACK' Then Do records = QUEUED() - records 'EXECIO' records 'DISKW' route 'DATA' fmode '( FINIS' r = RC If RC > 0 Then Do Say "Error" RC "writing file '"route "DATA" fmode"'" , "on disk." End 'DROPBUF' buffer End Exit r