× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



On 13-Nov-2013 11:46 -0800, rob@xxxxxxxxx wrote:
On IBM i the default for the RQSDTA parameter is *CMD, which means go
look at the CMD parameter. On the S/38 it didn't have a CMD parameter
so you really had to use RQSDTA.
SBMJOB RQSDTA('call pgm') or
SBMJOB JOB(DSPJOB) RQSDTA('dspjob output(*print)')

There are a few cases where using RQSDTA makes sense but none
immediately come to mind.

Sometimes, because the Request Data (RQSDTA) parameter is defined by PARM TYPE(*CHAR) parameter whereas the Command (CMD) parameter is defined by PARM TYPE(*CMD). The former declarative enables a command request to be built using a /string expression/ that is received by the request processor exactly as formed. The latter declarative enables a command request to be prompted and reformatted, which is very nice, but that also prevents the use of expressions to define the elements of the PARM(), and that inhibits the ability to avoid the loss of significant blanks when a variable declared as more than 32-bytes is passed as a parameter on the PARM() of the CALL.

http://www.itjungle.com/mgo/mgo121102-readers.html
Midrange Guru Tech Tips
Title: SBMJOB's RQSDTA Parameter
"... parameters that are longer than 32 characters in order to pass them through the Submit Job (SBMJOB) command without running into the problem of garbage data replacing trailing blanks. There is another alternative.

The alternative choice is to use the Request Data (RQSDTA) parameter instead of the Command (CMD) parameter.
..."

But more generically, the Request Data can be used when the /request/ is not a CL command. For that, the Routing Data (RTGDTA) would usually come from a *JOBD, or would be explicitly specified, or would redirect to the Request Data itself, to ensure that the non-CL-command request gets processed by the correct request program; i.e. a program that knows what to do with the /data/ that composes the effective request; i.e. the message of type *RQS. Often a Job Queue (JOBQ) specification would be included as well, to further refine where the work is directed. The /request/ need not be in a conspicuous form of a directive... as it could be just some string of data that the request program consumes more directly, rather than something that is parsed as an effective directive\command. The data sent could be effectively no-data, i.e. the special value *NONE, such that the processor must know what to do even without any specific data being passed to the program as a request message\data.

I could have a request program that performs an SQL request instead of a CL command request; e.g. as effected by use of a routing entry for the data\string "DYNSQL". The QCMD program, as the default CL request processor, would have no idea how to handle the SQL request. The user-defined processor could even enable allowing an alternate delimiter, to ease the specification of the SQL as a CL apostrophe-delimited string:

sbmjob rqsdta('insert into myfile select "char_const", current_date, t.* from somelibr/somefile as t') rtgdta('DYNSQL')

Of course that particular request since has the IBM-provided RUNSQL command, or instead could have been implemented with the DB2 utility under a QSH command even prior to that Run SQL feature. But the point is, that *any* processor can be invoked with a string of /data/ rather than a CL /command/ string. A couple other examples, to be inferred by the reader what the setup of routing might be, and what the effects of the request data might be, per the request processor acting on that data:

sbmjob rqsdta('file://...') rtgdta(*rqsdta)
sbmjob rqsdta('http://...') rtgdta(*rqsdta) jobq(url)
sbmjob rqsdta('TARGETLIB UNZIP /dir/ZIPpedSaveFile') jobq(zip) rtgdta(*rqsdta)
sbmjob rqsdta('mailto:...') rtgdta(*rqsdta) jobq(messaging)
sbmjob rqsdta('sms:...') rtgdta(TEXT) jobq(messaging)


As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.