× 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.



David,

?? Tried it with V5R3 and it worked...My test program:
-----------------------------
ADDRESS EXECSQL,
EXECSQL 'SET OPTION COMMIT = *NONE'
ADDRESS EXECSQL,
EXECSQL 'CREATE ALIAS HONORARIOS/A3 FOR HONORARIOS/HSAPTMP01'
IF RC <> 0 THEN DO
MSGID = "SQL"RIGHT(STRIP(ABS(SQLCODE)), 4, '0')
SAY SQLCODE
SAY MSGID
'SNDPGMMSG MSGID(&MSGID) MSGF(QSQLMSG) MSGDTA(&SQLERRMC) MSGTYPE(*ESCAPE)'
END
;
-----------------------------

Shows this as a result (on a 5250 session):
3 *-* Address EXECSQL EXECSQL 'CREATE ALIAS HONORARIOS/A3 FOR
HONORARI
OS/HSAPTMP01';

+++ RC(-10)

-901

SQL0901



That said, although REXX is easy to use, here in Venezuela is almost unknown
in the midrange world. Also, an SQLRPGLE would give you a lot of more
control, including the use of Get Diagnostics, returning the number of
processed rows, etc.

Regards.

Luis Rodriguez
IBM Certified Systems Expert — eServer i5 iSeries
--



On Mon, Jan 3, 2011 at 11:53 AM, David FOXWELL <David.FOXWELL@xxxxxxxxx>wrote:


Luis, I think REXX is trying to be funny.

I typed : SAY SQLCODE

and guess what? It said SQLCODE.

How do I get it to output the value of SQLCODE?

-----Message d'origine-----
De : midrange-l-bounces@xxxxxxxxxxxx
[mailto:midrange-l-bounces@xxxxxxxxxxxx] De la part de Luis Rodriguez
Envoyé : lundi 3 janvier 2011 16:31
À : Midrange Systems Technical Discussion
Objet : Re: CPF7CFD Error occurred running REXX procedure

Dennis,

You are right, of course. I'm afraid I misread the
parenthesis's order.

I just ran his statements without problems. On the other
hand, it would seem as if SQLCODE had an invalid value (?).
Time for a SAY SQLCODE, perhaps?

Regards,
Luis Rodriguez
IBM Certified Systems Expert - eServer i5 iSeries
--



On Mon, Jan 3, 2011 at 9:57 AM, Dennis <iseries@xxxxxxxxxxxx> wrote:

That's handled by abs(), unlike the suggestion i just gave.

"Luis Rodriguez" <luisro58@xxxxxxxxx> wrote:

David,

What happens if your SQLCODE is returning a "hard" error,
ie. <0 (eg.
-100)?

Regards,

Luis Rodriguez
IBM Certified Systems Expert - eServer i5 iSeries
--



On Mon, Jan 3, 2011 at 9:05 AM, David FOXWELL
<David.FOXWELL@xxxxxxxxx>wrote:

I think it returns '0467' si the message id returned would be
SQL0467



-----Message d'origine-----
De : midrange-l-bounces@xxxxxxxxxxxx
[mailto:midrange-l-bounces@xxxxxxxxxxxx] De la part de Dennis
Envoyé : lundi 3 janvier 2011 13:49 À : Midrange Systems
Technical Discussion Objet : Re: CPF7CFD Error
occurred running
REXX procedure

If SQLCODE is 467 (for example) what is
right(467,4,'0') supposed
to do?

"David FOXWELL" <David.FOXWELL@xxxxxxxxx> wrote:

Hi,

I have a job that has crashed with this message. Looks like
a bug to me
but maybe someone will spot something. Thanks.



A CLP is called that issues a STRREXPRC with an sql
statement 'DELETE
FROM MYFILE'

CHGVAR VAR(&SQL) VALUE('DELETE FROM ' *CAT &myfile)
EXECSQL CMD(&SQL)
MONMSG MSGID(SQL0000)

This command calls the rexx procedure below :


PARSE ARG iSql
RC=0

ADDRESS EXECSQL,
EXECSQL 'SET OPTION COMMIT = *NONE'
ADDRESS EXECSQL,
EXECSQL iSql

IF RC <> 0 THEN DO
MSGID = "SQL"RIGHT(STRIP(ABS(SQLCODE)),4,'0')
'SNDPGMMSG MSGID(&MSGID) MSGF(QSQLMSG) MSGDTA(&SQLERRMC)
MSGTYPE(*ESCAPE)'
END


The same CLP has been called over 5000 times for 5 different
multimember files. An override on the member is issued by the
CLP calling program. Mostly, the rexx procedure is returning
SQL100 that is
ignored on returning to the CLP.

In the log, I've got this :

Erreur. MCH1210 non intercepté par QSQREXX à la
spécif *N, inst
X'0617'.
6 *-* Address EXECSQL EXECSQL iSql;

+++ RC(CPF9999)

10 +++ MSGID = 'SQL'RIGHT(STRIP(ABS(SQLCODE)), 4,
'0');
Error in line 10: Bad arithmetic conversion.


Error occurred running REXX procedure EXECSQL.

And in the dump :
DUMP TAKEN FOR UNMONITORED ESCAPE MESSAGE


.MESSAGE ID- MCH1210


.MESSAGE FILE- QCPFMSG
LIBRARY-
*LIBL
.SEVERITY- 40


.MSGTYPE- 0F


.SENDING-


..PROGRAM- cblabranch


LIBRARY-


..INSTRUCTION- 000040


.RECEIVING-


..PROGRAM- QSQREXX
LIBRARY-
QSYS
..INSTRUCTION- 0617


.MESSAGE-


Zone réceptrice trop petite pour contenir le résultat





--
This is the Midrange Systems Technical Discussion
(MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting,
please take a
moment to review the archives at
http://archive.midrange.com/midrange-l.

--
Sent from my Android phone with K-9 Mail. Please
excuse my brevity.
--
This is the Midrange Systems Technical Discussion
(MIDRANGE-L) mailing list To post a message email:
MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or
change list
options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before
posting, please
take a moment to review the archives at
http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting, please
take a moment to review the archives at
http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L)
mailing list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To
subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting,
please take
a moment to review the archives at
http://archive.midrange.com/midrange-l.

--
Sent from my Android phone with K-9 Mail. Please excuse my brevity.
--
This is the Midrange Systems Technical Discussion
(MIDRANGE-L) mailing
list To post a message email: MIDRANGE-L@xxxxxxxxxxxx To subscribe,
unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting,
please take
a moment to review the archives at
http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion
(MIDRANGE-L) mailing list To post a message email:
MIDRANGE-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change
list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx Before posting,
please take a moment to review the archives at
http://archive.midrange.com/midrange-l.


--
This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing list
To post a message email: MIDRANGE-L@xxxxxxxxxxxx
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/midrange-l
or email: MIDRANGE-L-request@xxxxxxxxxxxx
Before posting, please take a moment to review the archives
at http://archive.midrange.com/midrange-l.



As an Amazon Associate we earn from qualifying purchases.

This thread ...

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.