|
Buck, Why cant he just compile the SQL program with DBGVIEW(*SOURCE). I do that if I need to debug my SQLRPGLE programs on the production system, and I can debug them, even though we don't have the source on that box. Cheers Colin.W -----Original Message----- From: Buck [mailto:buck.calabro@xxxxxxxxxxxx] Sent: 21 January 2004 15:32 To: rpg400-l@xxxxxxxxxxxx Subject: Re: Why is SQLSTT="Call stack entry does not exist" > No I was using the visual debugger. If I remember, you are using WDSCi. I'm back on WDT so I can't help you there. Sorry man. > How do I get past the "(source not available)" > on the STRDBG? So the object is deployed on a different box than it was developed on. You may not like this very much. Compile the SQLRPGLE with TOSRCFILE(). This runs the preprocessor and puts the expanded source into a new source member. DON'T put it over your original source member! I use the default file name, QSQLTEMP1 but put it in my library instead of QTEMP. Once you have the pre-processed source, the adventure begins. The preprocessor stores a date/time stamp in the user storage area of the source member which MUST MATCH the date/time stamp of the original SQLRPGLE source member or it won't compile. So you can't make any changes to this generated RPGLE source member or they won't compile. In addition, there's a black-magic link back to the original SQLRPGLE member, so if you just compile it you will see the original SQLRPGLE source and not what is in the RPGLE source member. I have an issue open with IBM Support over a related issue regarding the user storage area, and as near as I can tell, this situation is not going to change. The bottom line is that in order for you to get a debuggable version of this, you will need to ADDPFM/PDM option 6 to some source file (I use QSQLTEMP1). Then use your favourite editor to copy all the records from the generated RPGLE member into your new member. Compile THAT with dbgview(*list) and you will have a debuggable version. recap QRPGLESRC PROGRAMA SQLRPGLE PDM option 14, TOSRCFILE(mylib/*N) (creates QSQLTEMP1 in mylib with RPGLE member PROGRAMA) QSQLTEMP1 PDM option 6, member name PROGRAMAD RPGLE Include all source specifications from PROGRAMA PDM option 14, DBGVIEW(*LIST) Now *PGM object PROGRAMAD has the full debugging information and you can deploy it to the other systems and debug it. I tend to use a different name just to keep the new, debug version separate from the production version, but if you need to keep them the same, rename the source members in QSQLTEMP1. --buck _______________________________________________ This is the RPG programming on the AS400 / iSeries (RPG400-L) mailing list To post a message email: RPG400-L@xxxxxxxxxxxx To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/rpg400-l or email: RPG400-L-request@xxxxxxxxxxxx Before posting, please take a moment to review the archives at http://archive.midrange.com/rpg400-l. This e-mail has been sent by a company of Bertram Group Ltd, whose registered office is The Nest, Rosary Road Norwich NR1 1TF. This message, and any attachments, are intended solely for the addressee and may contain privileged or confidential information. If you are not the intended recipient, any disclosure, copying, distribution or any action taken or omitted to be taken in reliance on it, is prohibited and may be unlawful. If you believe that you have received this email in error, please contact the sender immediately. Opinions, conclusions and statements of intent in this e-mail are those of the sender and will not bind a Bertram Group Ltd company unless confirmed in writing by a director independently of this message. Although we have taken steps to ensure that this email and any attachments are free from any virus, we advise that in keeping with good computing practice the recipient should ensure they are actually virus free.
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.