NetBatch Management Programming Manual
Sample Programs
NetBatch Management Programming Manual—522462-003
C-47
Sample TAL Program
 CALL READX(recv_chan, sm, ($OCCURS(sm)*$LEN(sm)));
 CALL FILE_CLOSE_(recv_chan);
-- Convert C-series file name to D-series format
 error := OLDFILENAME_TO_FILENAME_(sm[_out], work^area:maxfilebytes,
 work^length);
-- Open OUT file
 IF error OR (error := FILE_OPEN_(work^area:work^length, out_chan)) 
THEN
 stopwitherror(efile_open_, 16);
-- Open the scheduler
 IF (error := FILE_OPEN_(scheduler^name:11, schd_chan)) THEN
 stopwitherror(efile_open_, 16);
-- Format the SPI structure and submit the job
 error := submit^job;
-- Check if only warnings are returned
 IF NOT (error = 0) THEN
 stopwitherror(eretcod, 34)
 ELSE
 BEGIN
 IF error := SSGETTKN(spi^buf -- Check if there is a job number in 
the buffer
 , zbat^tkn^sel^job^number
 , jobnumber
 , 1) THEN
-- CALL PROCESS_STOP_(,,,2!cc!,error!ti!,,essget:12);
 stopwitherror(essget, 12);
-- Job submission output header message
 buffer ':=' " " -> @ptr;
 CALL WRITE(out_chan, buffer, @ptr '-' @buffer);
 buffer ':=' " Job submitted to $ZBAT using SPI" & %H0A0D -> @ptr;
 CALL WRITE(out_chan, buffer, @ptr '-' @buffer);
-- Output job number to screen
 CALL NUMOUT(ascii^num, jobnumber, 10, 3);
 buffer ':=' " Job number : " & ascii^num FOR 3 -
>@ptr;
 CALL WRITE(out_chan, buffer, @ptr '-' @buffer);
 IF error := SSGETTKN(spi^buf -- Get Job name from SPI buffer
 , zbat^tkn^sel^jobname
 , ascii^num
 , 1) THEN
 stopwitherror(essget, 12);
 (continued)










