midrange.com code scratchpad |
Name:
get job type
|
Scriptlanguage:
Plain Text
|
Tabwidth:
4
|
Date:
03/11/2008 09:21:57 pm
|
IP:
Logged
|
|
Description:
get the job type interactive/bacth
|
Code:
- * Program Status DS
- DPgmSts sds Qualified
- D Name 10a
- D Status 5s 0
- D PrevStatus 5s 0
- D SrcStmt 8a
- D Routine 8a
- D Parms 3s 0
- D MsgID 7a
- D MIStmt 4a
- D Work 30a
- D Library 10a
- D ErrorData 80a
- D RPGMsg 4a
- d 69a
- D Job 10a
- D User 10a
- D JobNbr 6s 0
- D JobDate 6s 0
- D RunDate 6s 0
- D RunTime 6s 0
- dErrorDS ds Qualified
- d BytesProvided 10i 0 Inz(%Size(ErrorDS))
- d BytesAvailable 10i 0
- d MsgID 7a
- d 1a
- d Text 500a Varying
- * Retrieve Job Information QUSRJOBI *
- DRtvJobInfo PR ExtPgm('QUSRJOBI')
- D OutputData 32767a
- D DataLength 10i 0
- D RtvFormat 8a Const
- D QualJob 26a Const
- D InternalJobID 16a Const
- D ErrorCode_ 32767a Options(*Varsize)
-
- * JOBI0100 Format (Basic Performance Information) *
- D JobI0100 DS Qualified
- d BytesReturned 10i 0
- d BytesAvailable 10i 0
- d JobName 10a
- d JobUser 10a
- D JobNumber 6a
- D JobInternalID 16a
- D JobStatus 10a
- D JobType 1a '1'=interactive
- D JobSubtype 1a
- D Reserved 2a
- D RunPriority 10i 0
- D TimeSlice 10i 0
- D DftWaitTime 10i 0
- D Purge 10a
-
- //Local Variables
- dOutPutData s 32767a
- dOutPutSize s 10i 0
- dQualJob s 26a
- dInternalJob s 16a
-
- /free
-
- //Load The Qualified Job Name
- QualJob = PgmSts.Job + PgmSts.User + %EditC( PgmSts.JobNbr : 'X');
- OutputSize = %Size(OutputData);
-
- //Get The Job Information
- RtvJobInfo( OutPutData
- : OutputSize
- : 'JOBI0100'
- : QualJob
- : InternalJob
- : ErrorDS );
-
- //Load Returned Job Data Into The Job Information DS
- JobI0100 = %Subst( OutputData : 1 : %Len(JobI0100) );
- If ErrorDS.BytesAvailable = 0 And JobI0100.JobType = 'I';
- // interactive
- Else;
- // batch
- EndIf;
-
|
|
|