|
I suppose the old standby - DSPMSGD OUPUT(*PRINT), then CPYSPLF, then massage that for the data fields. At 02:32 PM 4/11/02 -0400, you wrote: >SQLCODE translates to message id's as follows: > >Take absolute value of SQLCODE >Represent that as a 5 digit number >If the leading digit is zero change it to an 'L' >Prepend 'SQ' and you have the message ID. > >Ex. >SQLCODE -501 >Abs(-501) = 501 >Make that 00501 >Since leading digit is 0 make it an 'L' >Prepend SQ and the message id is SQL0501 > >SQLCODE -20054 >Abs(-20054) = 20054 >Prepend SQ and the message id is SQ20054 > >However, if memory serves data in SQLERRM is delimited with x'FF' not fixed >length and RTVMSG needs fixed length so you need some way of knowing how >long the message data should be. > >-Walden > >------------ >Walden H Leverich III >President >Tech Software >(516) 627-3800 x11 >(208) 692-3308 eFax >WaldenL@TechSoftInc.com >http://www.TechSoftInc.com > >Quiquid latine dictum sit altum viditur. >(Whatever is said in Latin seems profound.) > > > >-----Original Message----- >From: Vernon Hamberg [mailto:vhamberg@attbi.com] >Sent: Thursday, April 11, 2002 11:26 >To: midrange-l@midrange.com >Subject: Re: Retrieve SQLCODE descriptions programmatically? > > >Are you basically talking RTVMSG? Negative SQLCOD translate to message >description IDs, with a little work, right? > >Don't have one here. Nice idea. > >At 09:28 AM 4/11/02 -0500, you wrote: > >Does anyone have a piece of code they would be willing to share? > > > >Ideally, I'm looking for a subprocedure (called from RPG/IV) that will > >accept a SQLCODE and SQLERRM, and return the explanation text from the > >SQL message file QSYS/QSQLMSG. Substitution variables would be replaced > >with values in SQLERRM. > > > >If not, I will probably write one. I find myself doing a lot of > >embedded SQL for CGI programs (works well), and I currently get the SQL > >code and state values for the prepare (if used), open, and first fetch > >of an SQL statement. I output these to HTML comments in the web page > >for tracking/debugging. I also want the SQL message (if an error) to > >show also. This would also be useful in traditional RPG/IV programs > >using embedded SQL. > > > >Sample usage... > >if sqlcod <> 0 or sqlstt <> '00000' > >eval sqlmessage = GetSQLMsg( sqlcod : sqlerrm ) > >endif > > > >Thanks, > >Loyd > > > >-- > >Loyd Goodbar > >Programmer/Analyst > >BorgWarner Incorporated > >Air/Fluid Systems, Water Valley, MS > > > > > > > >_______________________________________________ > >This is the Midrange Systems Technical Discussion (MIDRANGE-L) mailing > >list To post a message email: MIDRANGE-L@midrange.com To subscribe, > >unsubscribe, or change list options, > >visit: http://lists.midrange.com/cgi-bin/listinfo/midrange-l > >or email: MIDRANGE-L-request@midrange.com > >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@midrange.com To subscribe, unsubscribe, >or change list options, >visit: http://lists.midrange.com/cgi-bin/listinfo/midrange-l >or email: MIDRANGE-L-request@midrange.com >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@midrange.com >To subscribe, unsubscribe, or change list options, >visit: http://lists.midrange.com/cgi-bin/listinfo/midrange-l >or email: MIDRANGE-L-request@midrange.com >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 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.