Hi,
I've written a rather large (for me anyway) command prompt override program and although I'm not getting an error, I'm not getting the data I expect either. I enter the keyparm value, which is a data area name, press enter and the command displays with all defaults!
I've checked the joblog and there are no error messages.
I've checked that the string creation is correct, which it is. (for testing, in the POP, I move the string to be passed back to another data area so I could view it and the keywords are correct, the spacing is correct, the values are there and the length is correct.
I'm using the "??" selective prompt for every keyword.
All the keywords are in the proper order, not that I think this matters much.
When I start fresh, the values I enter are being move to the data area named properly.
What am I missing here?
Software/Hardware used:
ASKED:
November 2, 2011 4:38 PM
UPDATED:
November 5, 2011 12:20 AM
We will at least need to see what you return in the ‘command string space’ that you return to the command. This should include a hex representation to show the length attribute and show enough bytes to cover the length that you assign.
It might also be necessary to show the PMTOVRPGM() attribute of the command, the definition of the key parms and the parameter definitions of the key parms in the POP.
Tom
Tom,
Thanks for your response,
As I mentioned, it’s a large pgm – 294 lines.
Since I see no method of uploading a text file available, how do I show you what you request?
Well, this seems to be the only way so, here goes…
PGM PARM(&COMMAND &KEYPARM &STRING) /* */ /* --------- Outgoing parameters */ /* */ DCL VAR(&COMMAND ) TYPE(*CHAR) LEN( 20) DCL VAR(&KEYPARM ) TYPE(*CHAR) LEN( 10) DCL VAR(&STRING ) TYPE(*CHAR) LEN( 550) /* */ /* --------- String related parameters. */ /* */ DCL VAR(&STRINGLEN ) TYPE(*DEC ) LEN( 5 0) VALUE(399) DCL VAR(&BINLEN ) TYPE(*CHAR) LEN( 4) DCL VAR(&LENGTH ) TYPE(*DEC ) LEN( 4 0) /* */ /* --------- Data area parameters */ /* */ DCL VAR(&DATA ) TYPE(*CHAR) LEN(500) /* */ /* --------- Keyword related parameters. */ /* */ DCL VAR(&CLOSPAREN ) TYPE(*CHAR) LEN( 1) VALUE(')') DCL VAR(&ITMNBRKWD ) TYPE(*CHAR) LEN( 9) + VALUE('??ITMNBR(') DCL VAR(&ITMNBRVAL ) TYPE(*CHAR) LEN( 25) DCL VAR(&PGMNMEKWD ) TYPE(*CHAR) LEN( 10) + VALUE(' ??PGMNME(') DCL VAR(&PGMNMEVAL ) TYPE(*CHAR) LEN( 10) DCL VAR(&USEITEMKWD) TYPE(*CHAR) LEN( 11) + VALUE(' ??USEITEM(') DCL VAR(&USEITEMVAL) TYPE(*CHAR) LEN( 4) DCL VAR(&CRTLBLSKWD) TYPE(*CHAR) LEN( 11) + VALUE(' ??CRTLBLS(') DCL VAR(&CRTLBLSVAL) TYPE(*CHAR) LEN( 4) DCL VAR(&ORDERSKWD ) TYPE(*CHAR) LEN( 10) + VALUE(' ??ORDERS(') DCL VAR(&ORDERSVALC) TYPE(*CHAR) LEN( 2) DCL VAR(&PALLETSKWD) TYPE(*CHAR) LEN( 11) + VALUE(' ??PALLETS(') DCL VAR(&PALLETVALC) TYPE(*CHAR) LEN( 2) DCL VAR(&PDFQTYKWD ) TYPE(*CHAR) LEN( 10) + VALUE(' ??PDFQTY(') DCL VAR(&PDFQTYVALC) TYPE(*CHAR) LEN( 2) DCL VAR(&USEPDFQKWD) TYPE(*CHAR) LEN( 13) + VALUE(' ??USEPDFQTY(') DCL VAR(&USEPDFQVAL) TYPE(*CHAR) LEN( 4) DCL VAR(&CRNCNTKWD ) TYPE(*CHAR) LEN( 10) + VALUE(' ??CRNCNT(') DCL VAR(&CRNCNTVALC) TYPE(*CHAR) LEN( 2) DCL VAR(&DTATYPKWD ) TYPE(*CHAR) LEN( 10) + VALUE(' ??DTATYP(') DCL VAR(&DTATYPVAL ) TYPE(*CHAR) LEN( 4) DCL VAR(&SEPARKWD ) TYPE(*CHAR) LEN( 13) + VALUE(' ??SEPARATOR(') DCL VAR(&SEPARVAL ) TYPE(*CHAR) LEN( 6) DCL VAR(&USESUFKWD ) TYPE(*CHAR) LEN( 10) + VALUE(' ??USESUF(') DCL VAR(&USESUFVAL ) TYPE(*CHAR) LEN( 4) DCL VAR(&USESWKWD ) TYPE(*CHAR) LEN( 9) + VALUE(' ??USESW(') DCL VAR(&USESWVAL ) TYPE(*CHAR) LEN( 4) DCL VAR(&USEOTHKWD ) TYPE(*CHAR) LEN( 12) + VALUE(' ??USEOTHER(') DCL VAR(&USEOTHVAL ) TYPE(*CHAR) LEN( 4) DCL VAR(&USECTRNKWD ) TYPE(*CHAR) LEN( 11) + VALUE(' ??USECTRN(') DCL VAR(&USECTRNVAL) TYPE(*CHAR) LEN( 4) DCL VAR(&SUFVALKWD ) TYPE(*CHAR) LEN( 12) + VALUE(' ??SUFVALUE(') DCL VAR(&SUFVALVAL ) TYPE(*CHAR) LEN( 10) DCL VAR(&DTASUFKWD ) TYPE(*CHAR) LEN( 10) + VALUE(' ??DTASUF(') DCL VAR(&DTASUFVAL ) TYPE(*CHAR) LEN( 4) DCL VAR(&SWVALUEKWD) TYPE(*CHAR) LEN( 11) + VALUE(' ??SWVALUE(') DCL VAR(&SWVALUEVAL) TYPE(*CHAR) LEN( 50) DCL VAR(&OTHVALKWD ) TYPE(*CHAR) LEN( 14) + VALUE(' ??OTHERVALUE(') DCL VAR(&OTHVALVAL ) TYPE(*CHAR) LEN( 127) DCL VAR(&CONCATKWD ) TYPE(*CHAR) LEN( 13) + VALUE(' ??CONCATOTH(') DCL VAR(&CONCATVAL ) TYPE(*CHAR) LEN( 4) DCL VAR(&CTRNPREKWD) TYPE(*CHAR) LEN( 11) + VALUE(' ??CTRNPRE(') DCL VAR(&CTRNPREVAL) TYPE(*CHAR) LEN( 5) DCL VAR(&PREFIXKWD) TYPE(*CHAR) LEN( 10) + VALUE(' ??PREFIX(') DCL VAR(&PREFIXVAL) TYPE(*CHAR) LEN( 3) /* */ /* --------- Other parameters. */ /* */ DCL VAR(&CTC ) TYPE(*CHAR) LEN( 2) DCL VAR(&DTAARA ) TYPE(*CHAR) LEN( 10) DCL VAR(&OTHER1VAL ) TYPE(*CHAR) LEN( 25) DCL VAR(&OTHER2VAL ) TYPE(*CHAR) LEN( 25) DCL VAR(&OTHER3VAL ) TYPE(*CHAR) LEN( 25) DCL VAR(&OTHER4VAL ) TYPE(*CHAR) LEN( 25) DCL VAR(&OTHER5VAL ) TYPE(*CHAR) LEN( 25) /* */ /* --------- Watch for errors. */ /* */ MONMSG MSGID(CPF0000) EXEC(GOTO CMDLBL(ERROR)) /* */ /* --------- Retrieve data area. */ /* */ RTVDTAARA DTAARA(*LIBL/&KEYPARM) RTNVAR(&DATA) /* */ /* --------- Change variables. */ /* */ CHGVAR VAR(&ITMNBRVAL ) VALUE(%SST(&DATA 1 25)) CHGVAR VAR(&PGMNMEVAL ) VALUE(%SST(&DATA 26 10)) CHGVAR VAR(&USEITEMVAL) VALUE(%SST(&DATA 36 4)) CHGVAR VAR(&CRTLBLSVAL) VALUE(%SST(&DATA 40 4)) CHGVAR VAR(&ORDERSVALC) VALUE(%SST(&DATA 44 2)) CHGVAR VAR(&PALLETVALC) VALUE(%SST(&DATA 46 2)) CHGVAR VAR(&PDFQTYVALC) VALUE(%SST(&DATA 48 2)) CHGVAR VAR(&USEPDFQVAL) VALUE(%SST(&DATA 50 4)) CHGVAR VAR(&CRNCNTVALC) VALUE(%SST(&DATA 54 2)) CHGVAR VAR(&DTATYPVAL ) VALUE(%SST(&DATA 56 4)) CHGVAR VAR(&SEPARVAL ) VALUE(%SST(&DATA 60 6)) CHGVAR VAR(&USESUFVAL ) VALUE(%SST(&DATA 66 4)) CHGVAR VAR(&USESWVAL ) VALUE(%SST(&DATA 70 4)) CHGVAR VAR(&USEOTHVAL ) VALUE(%SST(&DATA 74 4)) CHGVAR VAR(&SUFVALVAL ) VALUE(%SST(&DATA 78 10)) CHGVAR VAR(&DTASUFVAL ) VALUE(%SST(&DATA 88 4)) CHGVAR VAR(&SWVALUEVAL) VALUE(%SST(&DATA 92 50)) CHGVAR VAR(&CTC ) VALUE(%SST(&DATA 142 2)) CHGVAR VAR(&OTHER1VAL ) VALUE(%SST(&DATA 144 25)) CHGVAR VAR(&OTHER2VAL ) VALUE(%SST(&DATA 169 25)) CHGVAR VAR(&OTHER3VAL ) VALUE(%SST(&DATA 194 25)) CHGVAR VAR(&OTHER4VAL ) VALUE(%SST(&DATA 219 25)) CHGVAR VAR(&OTHER5VAL ) VALUE(%SST(&DATA 244 25)) CHGVAR VAR(&CONCATVAL ) VALUE(%SST(&DATA 269 4)) CHGVAR VAR(&USECTRNVAL) VALUE(%SST(&DATA 273 4)) CHGVAR VAR(&CTRNPREVAL) VALUE(%SST(&DATA 277 5)) CHGVAR VAR(&PREFIXVAL ) VALUE(%SST(&DATA 282 3)) /* */ /* --------- Increase string length based on number of files used. */ /* */ IF COND(%SST(&DATA 144 25) *NE *BLANKS) + THEN(CHGVAR VAR(&LENGTH) VALUE(&LENGTH + 25)) ELSE CMD(GOTO CMDLBL(NEXT)) IF COND(%SST(&DATA 169 25) *NE *BLANKS) + THEN(CHGVAR VAR(&LENGTH) VALUE(&LENGTH + 25)) ELSE CMD(GOTO CMDLBL(NEXT)) IF COND(%SST(&DATA 194 25) *NE *BLANKS) + THEN(CHGVAR VAR(&LENGTH) VALUE(&LENGTH + 25)) ELSE CMD(GOTO CMDLBL(NEXT)) IF COND(%SST(&DATA 219 25) *NE *BLANKS) + THEN(CHGVAR VAR(&LENGTH) VALUE(&LENGTH + 25)) ELSE CMD(GOTO CMDLBL(NEXT)) IF COND(%SST(&DATA 244 25) *NE *BLANKS) + THEN(CHGVAR VAR(&LENGTH) VALUE(&LENGTH + 25)) ELSE CMD(GOTO CMDLBL(NEXT)) NEXT: IF COND(&USEOTHVAL *EQ '*YES') THEN(CHGVAR + VAR(&OTHVALVAL) VALUE(&CTC *CAT + %SST(&DATA 144 &LENGTH))) ELSE CMD(CHGVAR VAR(&OTHVALVAL) VALUE(' ')) /* */ /* --------- Set string length. */ /* */ IF COND(&USEOTHVAL *EQ '*YES') THEN(CHGVAR + VAR(%BIN(&BINLEN)) VALUE(&STRINGLEN + &LENGTH)) IF COND(&USEOTHVAL *EQ '*NO') THEN(CHGVAR + VAR(%BIN(&BINLEN)) VALUE(&STRINGLEN)) /* */ /* --------- Build string. */ /* */ CHGVAR VAR(&STRING) VALUE(&BINLEN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &ITMNBRKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &ITMNBRVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &PGMNMEKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &PGMNMEVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USEITEMKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USEITEMVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CRTLBLSKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CRTLBLSVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &ORDERSKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &ORDERSVALC) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &PALLETSKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &PALLETVALC) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &PDFQTYKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &PDFQTYVALC) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USEPDFQKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USEPDFQVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CRNCNTKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CRNCNTVALC) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &DTATYPKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &DTATYPVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &SEPARKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &SEPARVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USESUFKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USESUFVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USESWKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USESWVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USEOTHKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USEOTHKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USEOTHVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USECTRNKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &USECTRNVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &SUFVALKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &SUFVALVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &DTASUFKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &DTASUFVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &SWVALUEKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &SWVALUEVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) IF COND(&USEOTHVAL *EQ '*YES') THEN(DO) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &OTHVALKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &OTHVALVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) ENDDO CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CONCATKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CONCATVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CTRNPREKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CTRNPREVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &PREFIXKWD) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &PREFIXVAL) CHGVAR VAR(&STRING) VALUE(&STRING *TCAT &CLOSPAREN) GOTO CMDLBL(ENDPGM) /* */ /* --------- Handle errors. */ /* */ ERROR: CHGVAR VAR(&STRINGLEN) VALUE(0) CHGVAR VAR(%BIN(&STRING 1 2)) VALUE(&STRINGLEN) SNDPGMMSG MSGID(CPF0011) MSGF(QCPFMSG) MSGTYPE(*ESCAPE) /* */ /* --------- Normal end. */ /* */ ENDPGM: /* */ /* --------- Copy string to data area for debugging.... */ /* (Remove after testing) */ CHKOBJ OBJ(MJPLIB/MJPTESTPDF) OBJTYPE(*DTAARA) MONMSG MSGID(CPF9801) EXEC(CRTDTAARA + DTAARA(MJPLIB/MJPTESTPDF) TYPE(*CHAR) + LEN(600)) CHGDTAARA DTAARA(MJPLIB/MJPTESTPDF) VALUE(&STRING) ENDPGM…and the command parms including the keyparm…
CMD PROMPT('Create test PDF labels') PARM KWD(REFID) TYPE(*CHAR) LEN(10) MIN(1) + KEYPARM(*YES) PROMPT('Reference Id') PARM KWD(ITMNBR) TYPE(*CHAR) LEN(25) MIN(1) + PROMPT('Item Number') PARM KWD(PGMNME) TYPE(*NAME) LEN(10) MIN(1) + PROMPT('Program name being used') PARM KWD(USEITEM) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(*NO) VALUES(*YES *NO) PROMPT('Use + item number in PDF?') PARM KWD(CRTLBLS) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(*NO) VALUES(*YES *NO) PROMPT('Create + labels') PARM KWD(ORDERS) TYPE(*DEC) LEN(2 0) DFT(2) + RANGE(1 20) PROMPT('Number of Orders to + create') PARM KWD(PALLETS) TYPE(*DEC) LEN(2 0) DFT(2) + RANGE(1 20) PROMPT('Number of Pallets per + Order') PARM KWD(PDFQTY) TYPE(*DEC) LEN(2 0) DFT(10) + RANGE(1 50) PROMPT('Quantity contained in + PDF') PARM KWD(USEPDFQTY) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(*NO) VALUES(*YES *NO) PROMPT('Use + quantity in PDF?') PARM KWD(CRNCNT) TYPE(*DEC) LEN(2 0) DFT(2) + RANGE(1 50) PROMPT('Carton count per pallet') PARM KWD(DTATYP) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(IMEI) SPCVAL((MEID) (IMEI) (MAC)) + PROMPT('Data type') PARM KWD(SEPARATOR) TYPE(*CHAR) LEN(6) RSTD(*YES) + DFT(*COMMA) VALUES(*BLANK *COMMA) + PROMPT('Data separator') PARM KWD(USESUF) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(*NO) VALUES(*YES *NO) PROMPT('Use + item number suffix?') PARM KWD(USESW) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(*NO) VALUES(*YES *NO) PROMPT('Use + Software value in PDF?') PARM KWD(USEOTHER) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(*NO) VALUES(*YES *NO) PROMPT('Use + other values in PDF?') PARM KWD(USECTRN) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(*NO) VALUES(*YES *NO) PROMPT('Use + carton number?') ITMSUFFIX: PMTCTL CTL(USESUF) COND((*EQ *YES)) SOFTWARE: PMTCTL CTL(USESW) COND((*EQ *YES)) OTHER: PMTCTL CTL(USEOTHER) COND((*EQ *YES)) CTRN: PMTCTL CTL(USECTRN) COND((*EQ *YES)) PREFIX: PMTCTL CTL(DTATYP) COND((*EQ IMEI)) PARM KWD(SUFVALUE) TYPE(*NAME) LEN(10) + PMTCTL(ITMSUFFIX) PROMPT('Suffix value') PARM KWD(DTASUF) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(*NO) VALUES(*YES *NO) + PMTCTL(ITMSUFFIX) PROMPT('Use suffix for + data') PARM KWD(SWVALUE) TYPE(*CHAR) LEN(50) + PMTCTL(SOFTWARE) PROMPT('Software value') PARM KWD(OTHERVALUE) TYPE(*CHAR) LEN(25) MAX(5) + PMTCTL(OTHER) PROMPT('Other values') PARM KWD(CONCATOTH) TYPE(*CHAR) LEN(4) RSTD(*YES) + DFT(*NO) VALUES(*YES *NO) PMTCTL(OTHER) + PROMPT('Concatenate data?') PARM KWD(CTRNPRE) TYPE(*CHAR) LEN(5) DFT(00000) + PMTCTL(CTRN) PROMPT('Carton number prefix') PARM KWD(PREFIX) TYPE(*CHAR) LEN(3) DFT(000) + PMTCTL(PREFIX) PROMPT('IMEI prefix')… and lastly, the sting as I see it….
‘
Well, I tried to post the code using the “code” toggle switch but nothing posted hence the empty response.
The {code} button can be used in two ways.
First, you can paste text into the entry area. Then select the text you want formatted and click {code}. It will put the starting and ending tags at the beginning and end of the selected text.
Or you can click {code} once to insert the starting tag. Then start putting the text you want formatted. And finally, click {code} again. It will toggle so that the starting tag is inserted the first time, and the ending tag is inserted the next time.
Tom
You could also post code to some internet site intended for it like http://pastebin.com/ — then post the link in a response back here.
Tom
Tom, I pasted all of the code inbetween the code and /code tags but nothing came through when submitted, hence the empty posting. Is there a limit to how much can be posted at once?
Is there a limit to how much can be posted at once?
I don’t know. I’ve never posted that much here, so haven’t seen the problem.
Only the parameter definitions and any code that actually modifies the ‘command string space’ parameter would seem to be relevant at first.
In any case, an actual dump of the return value is still a better start. A debug session that interrupts the POP just before it returns would be the source. EVAL the parm variable in hex and copy/paste the screen data.
Tom