Can SJP do the other useful things?
It could be designed to do almost anything. For example it can provide a very flexible and generic interface to IBM i command like this:
WRITE and READ the 5250 screen containing PGMNAME, REQUEST_TYPE and COMMAND
DOWHILE (REQUEST_TYPE not equal "SIGNOFF")
CASE of REQUEST_TYPE
WHEN = "CMD" CALL QCMDEXEC (COMMAND 256)
WHEN = "CALLP3" CALL PGM_NAME using calling protocol 3 for parameters
<etc>
Would allow your RAMP scripts to execute a CL command like this:
NAVIGATE_TO_JUNCTION("SJP");
SETVALUE("REQUEST_TYPE","CMD");
SETVALUE("COMMAND","WRKSBMJOB *JOB")
SENDKEY(KeyEnter);
Or
NAVIGATE_TO_JUNCTION("SJP");
SETVALUE("REQUEST_TYPE","CMD");
SETVALUE("COMMAND","SBMJOB(BATCH) CMD("CALL PRINTORDER")")
SENDKEY(KeyEnter);
The 5250 screen used to communicate between a RAMP script and a SJP is really more of program data structure that a real 5250 screen that a user would ever see.