Edditing DS Macros
Posted: Wed Feb 11, 2004 9:01 am
I have a need to eddit the JOBCONTROL.H file to add a mutated version of the DSJobStartTimestamp to my system so that I can get the Timestamp into an acceptiable formate for a Dos Batch file that has to do a rename of a file.
The problem is that the original DSJobStartTimestamp outputs dd-mm-yyyy hh:mm:ss. File names cant have : in them so the dos batch rename job fails. Im confused as to what code language is needed to do this. This is what I tried
$IfNDef DSJobStartTimestampM
$Define DSJobStartTime DSJobStartTimestamp[1,10]:"_":DSJobStartTimestamp[12,2]:"_":DSJobStartTimestamp[16,2]:"_":DSJobStartTimestamp[20,2]
$EndIf
it looks good to me but when I try to compile the job I get the following error
Compiling: Source = 'RT_BP106/JOB.975878495.DT.1318937215.TRANS1', Object = 'RT_BP106.O/JOB.975878495.DT.1318937215.TRANS1'
*********************************************************************************************************?*****
INCLUDEd file is 'dsinclude/JOBCONTROL.H'
0333.01 $Define DSJobWaveNo DSGetJobInfo(DSJ.ME, DSJ.JOBWAVENO)
^
"DEFNAM" unexpected, Was expecting: Array Name, Variable name,
New variable name, ';', Statement label, "ABORT", "ABORTE", "ABORTM",
"BEGIN", "BREAK", "CALL", "CHAIN", "CLEAR", "CLEARCOM", "CLEARDATA",
"CLEARFILE", "CLEARPROMPTS", "CLEARSELECT", "CLOSE", "CLOSESEQ",
"COM", "COMMON", "CONVERT", "CREATE", "CRT", "DATA", "DEBUG",
"DEL", "DELETE", "DELETEU", "DIMENSION", "ECHO", "ERRMSG", "ENTER",
"EQUATE", "EXECUTE", "EXIT", "FILELOCK", "FILEUNLOCK", "FLUSH",
"FOOTING", "FOR", "GET", "GETX", "GOSUB", "GOTO", "GROUPSTORE",
"HEADING", "HEADINGE", "HEADINGN", "IF", "INPUT", "INPUTDP",
"INPUTCLEAR", "INPUTERR", "INPUTIF", "INPUTNULL", "INPUTTRAP", "INS",
"KEYEDIT", "KEYTRAP", "LET", "LOCATE", "LOCATEP", "LOCK", "LOOP",
"MAT", "MATBUILD", "MATPARSE", "MATREAD", "MATREADU", "MATWRITE",
"MATWRITEU", "NAP", "NOBUF", "NULL", "ON", "OPEN", "OPENDEV",
"OPENPATH", "OPENSEQ", "PAGE", "PERFORM", "PRECISION", "PRINT",
"PRINTER", "PRINTERIO", "PRINTERR", "PRINTERRX", "PROCREAD",
"PROCWRITE", "PROMPT", "RANDOMIZE", "READ", "READBLK", "READNEXT",
"READSEQ", "READT", "READU", "READV", "READVU", "RELEASE", "REMOVE",
"RETURN", "REWIND", "SEEK", "uSEEK", "SELECT", "SELECTN", "SELECTV",
"SELECTE", "SLEEP", "SSELECT", "SSELECTN", "SSELECTV", "STATUS",
"STOP", "STOPE", "STOPM", "STORAGE", "TABSTOP", "TTYCTL", "UNLOCK",
"WEOF", "WEOFSEQ", "WRITE", "WRITEBLK", "WRITESEQ", "WRITET",
"WRITEU", "WRITEV", "WRITEVU", "TPRINT", "INPUTDISP", "KEYEXIT",
"TIMEOUT", "FIND", "FINDSTR", "GETLIST", "DELETELIST", "READLIST",
"WRITELIST", "DECLARE", "TTYGET", "TTYSET", "HUSH", "ASSIGN",
"SELIND", "LOOPEOL", "uINPUT", "uINPUTDP", "CONTINUE", "DEFFUN",
"TRANSACTION", "OPENCHECK", "READL", "BSCAN", "REVREMOVE", "SETREM",
"AUTHORIZATION", "PCDRIVER", "READVL", "MATREADL", "RECORDLOCKL",
"RECORDLOCKU", "WRITESEQF", "WORDSIZE", "RECIO", "SETIT", "SEND",
"UPRINT", "AUXMAP"
**********
1 Errors detected, No Object Code Produced.
(Load456msg.Transformer_1)
I can only guess that it has no idea what I asked it to do in that macro file. so how is that file writen and how can i modify mine to get around my naming problem?
Jim
The problem is that the original DSJobStartTimestamp outputs dd-mm-yyyy hh:mm:ss. File names cant have : in them so the dos batch rename job fails. Im confused as to what code language is needed to do this. This is what I tried
$IfNDef DSJobStartTimestampM
$Define DSJobStartTime DSJobStartTimestamp[1,10]:"_":DSJobStartTimestamp[12,2]:"_":DSJobStartTimestamp[16,2]:"_":DSJobStartTimestamp[20,2]
$EndIf
it looks good to me but when I try to compile the job I get the following error
Compiling: Source = 'RT_BP106/JOB.975878495.DT.1318937215.TRANS1', Object = 'RT_BP106.O/JOB.975878495.DT.1318937215.TRANS1'
*********************************************************************************************************?*****
INCLUDEd file is 'dsinclude/JOBCONTROL.H'
0333.01 $Define DSJobWaveNo DSGetJobInfo(DSJ.ME, DSJ.JOBWAVENO)
^
"DEFNAM" unexpected, Was expecting: Array Name, Variable name,
New variable name, ';', Statement label, "ABORT", "ABORTE", "ABORTM",
"BEGIN", "BREAK", "CALL", "CHAIN", "CLEAR", "CLEARCOM", "CLEARDATA",
"CLEARFILE", "CLEARPROMPTS", "CLEARSELECT", "CLOSE", "CLOSESEQ",
"COM", "COMMON", "CONVERT", "CREATE", "CRT", "DATA", "DEBUG",
"DEL", "DELETE", "DELETEU", "DIMENSION", "ECHO", "ERRMSG", "ENTER",
"EQUATE", "EXECUTE", "EXIT", "FILELOCK", "FILEUNLOCK", "FLUSH",
"FOOTING", "FOR", "GET", "GETX", "GOSUB", "GOTO", "GROUPSTORE",
"HEADING", "HEADINGE", "HEADINGN", "IF", "INPUT", "INPUTDP",
"INPUTCLEAR", "INPUTERR", "INPUTIF", "INPUTNULL", "INPUTTRAP", "INS",
"KEYEDIT", "KEYTRAP", "LET", "LOCATE", "LOCATEP", "LOCK", "LOOP",
"MAT", "MATBUILD", "MATPARSE", "MATREAD", "MATREADU", "MATWRITE",
"MATWRITEU", "NAP", "NOBUF", "NULL", "ON", "OPEN", "OPENDEV",
"OPENPATH", "OPENSEQ", "PAGE", "PERFORM", "PRECISION", "PRINT",
"PRINTER", "PRINTERIO", "PRINTERR", "PRINTERRX", "PROCREAD",
"PROCWRITE", "PROMPT", "RANDOMIZE", "READ", "READBLK", "READNEXT",
"READSEQ", "READT", "READU", "READV", "READVU", "RELEASE", "REMOVE",
"RETURN", "REWIND", "SEEK", "uSEEK", "SELECT", "SELECTN", "SELECTV",
"SELECTE", "SLEEP", "SSELECT", "SSELECTN", "SSELECTV", "STATUS",
"STOP", "STOPE", "STOPM", "STORAGE", "TABSTOP", "TTYCTL", "UNLOCK",
"WEOF", "WEOFSEQ", "WRITE", "WRITEBLK", "WRITESEQ", "WRITET",
"WRITEU", "WRITEV", "WRITEVU", "TPRINT", "INPUTDISP", "KEYEXIT",
"TIMEOUT", "FIND", "FINDSTR", "GETLIST", "DELETELIST", "READLIST",
"WRITELIST", "DECLARE", "TTYGET", "TTYSET", "HUSH", "ASSIGN",
"SELIND", "LOOPEOL", "uINPUT", "uINPUTDP", "CONTINUE", "DEFFUN",
"TRANSACTION", "OPENCHECK", "READL", "BSCAN", "REVREMOVE", "SETREM",
"AUTHORIZATION", "PCDRIVER", "READVL", "MATREADL", "RECORDLOCKL",
"RECORDLOCKU", "WRITESEQF", "WORDSIZE", "RECIO", "SETIT", "SEND",
"UPRINT", "AUXMAP"
**********
1 Errors detected, No Object Code Produced.
(Load456msg.Transformer_1)
I can only guess that it has no idea what I asked it to do in that macro file. so how is that file writen and how can i modify mine to get around my naming problem?
Jim