OPALE - 10.0 - Operations
Solving robot production incidents
This page is intended for operation and supervision staff. It lists the main actions you can carry out to solve production incidents involving the Mapping robot called MAPSROBOT.
Requirements: Knowledge of JOBD, JOBQ, SBS and CLASS is required.
Sommaire
- 1 How do I know the name of the sub-system used by OPALE Server?
- 2 How to get information about the jobd called MAPDROBOT?
- 3 How to get information about the batch user called MAPPING?
- 4 MAPSROBOT Sub-system does not start anymore
- 5 The sub-system is started but spooled files are not processed
- 6 DTAQ jobs don't run in MAPSROBOT
- 7 Jobs are started in MAPSROBOT but files are not processed
- 8 The DTAQ jobs are started in MAPSROBOT but they stop immediately
- 9 A job is in MSGW but no information is found in the job's log
How do I know the name of the sub-system used by OPALE Server?
In the "MAPPING Operations menu" choose Option 1 "MAPPING environment parameters". The name of the sub-system is displayed at the bottom right of the screen: SBS: MAPSROBOT
How to get information about the jobd called MAPDROBOT?
DSPJOBD MAP400/MAPDROBOT (DSPJOBD JOBD(MAP400/MAPDROBOT)
User profile: MAPPING
Job queue: MAP400/MAPQROBOT
Request data: CALL MAP_C812 '*YES'
Libraries: MAP400, QTEMP, QGPL
How to get information about the batch user called MAPPING?
DSPUSRPRF MAPPING
Messages queue: QUSRSYS/MAPPING
Output queue: MAP400/MAPPING
MAPSROBOT Sub-system does not start anymore
Check that the MAPPING user is created: WRKUSRPRF MAPPING
Check that the user's message queue exists: WRKMSGQ MAPPING
Check that the user's queue exists: WRKOUTQ MAPPING
Check that MAP400 is not in the syslib: DSPSYSVAL QSYSLIBL
Check that the jobqs exist and are not being held: WRKJOBQ MAP400/MAPQ*
Check that the classes exist: WRKCLS MAP400/MAP_*
If it still does not work, run command:CHGJOBD MAP400/MAPDROBOT LOG(4 00 *SECLVL)
Then:
STRSBS MAP400/MAPSROBOT
Look for start-up log spool file. The message has to be clear. Apply the necessary changes, then return to default configuration.CHGJOBD MAP400/MAPDROBOT LOG(0 99 *NOLIST)
The sub-system is started but spooled files are not processed
Check DTAQs jobs in MAPSROBOT. To do so, enter: WRKACTJOB SBS(MAPSROBOT)
You should see jobs with the same names as the DTAQs defined in the Mapping menu.
DTAQ jobs don't run in MAPSROBOT
Check that the DTAQs exist in the libraries.
To do so, in option 4 of the Operations menu, check the name of DTAQs and their libraries (press F11) then check that the object exists:WRKOBJ "LIBNAME"/ "DTANAME"
Jobs are started in MAPSROBOT but files are not processed
Check that input OUTQs are linked to DTAQs.
To do so, in option 4 of the Operations menu, check the name of input OUTQs and their libraries (press F11) then check that the data queue parameter is the same as the DTAQ's name:CHGOUTQ "LIBNAME" / "OUTQNAME"
The DTAQ jobs are started in MAPSROBOT but they stop immediately
Step 1: Stop the robot using ENDSBS MAPSROBOT *IMMED
Step 2: Enter STRSBS MAPSOROBOT
Step 3: Enter DSPDTAQ « LIBNAME »/ « DTANAME »
If there is still data of type ENDRBTENDRBT
, go back to step 1.
Note:
If you have created a new DTAQ in the robot without stopping MAPSROBOT beforehand, then this is probably where the problem comes from. New relations can only be created if input OUTQs already use existing DTAQs. Otherwise, you need to stop and reboot the robot.
Another possible reason would be an ENDRBT
stop request interrupted by a call system +2
A job is in MSGW but no information is found in the job's log
In the job options,
- Check the name of the JOBD used to submit the job. For instance MAPDSPEED then type:
CHGJOBD MAP400/MAPDSPEED LOG(4 00 *SECLVL)
- Restart the job.
- Check the job's log and execute the following command.
DSPJOBLOG
(name of the job, user, job number) - Then execute:
CHGJOBD MAP400/MAPDROBOT LOG(0 99 *NOLIST)
Note:
Most of the time, the problem comes from using parameter &CLSPLNUMS in the robot. If you wish to use &CLSPLNUMS in a program by doing a CALL CL, do not forget to protect this parameter by applying simple quotes before and after. Otherwise, this parameter is considered as a numerical value by the IBM i.
CALL MAP400/MONPGM PARM('&CLSPLNUMS')