Re: More fun with native RLA SETLL on an SQL view with a WHERE clause

CRPence <CRPbottle-/[email protected]> Mon, 03 May 2010 21:44:29 -0500
Newsgroups gmane.comp.lang.as400.mi
Organization midrange.com
Message-ID <[email protected]>
James H. H. Lampert wrote:
> CRPence wrote:
> 
>> The pointer stored in the DMEPT has to come from the *SEPT, so
>> just update the QINSEPT before the file is opened.  I would
>> make the intercept program a CLP that does nothing more than a
>> TFRCTL to the OS DB program, in order to avoid impacting any
>> other work that must be done while debugging.  Or after the
>> open, but before the I\O request, the DM EPT could be updated
>> in the ODP.
> 
> Hack the QINSEPT?!? On a production box?!? Uh, even if I knew how
> (I had to read the aforementioned tutorial from Leif, just to
> know how to dump it!), it's not something I'd care to risk.

   Nobody said anything about a production system. :-)

> Hacking the ODP would be a little more reasonable, IF I had the 
> slightest idea how to do that in an ILE program.

   The ODP has no awareness of ILE.  It is a temporary object 
created by the LIC DB, addressable through the DMCQ.  I did not 
review the document, but if it is what I recall, the addressability 
to these is documented.  However I would just use DMPSYSOBJ and 
STRSST D/A/D which I would find much simpler.

> The first recompilation only yielded a few ideas that DIDN'T
> work: If I changed the option list on a .DMCGETD (RPG SETLL) to
> "Read First," the program crashed. If I set the target RRN to
> zero or a negative value, the OPM RPG test got nothing, and the
> MI app got the known-excluded first record.

   And I expect an intercepted call should have the value(s) of 
interest.  A lot easier than guessing how to specify it, I would think.

> <<SNIP>>

Regards, Chuck
_______________________________________________
This is the MI Programming on the AS400 / iSeries (MI400) mailing list
To post a message email: MI400-Zwy7GipZuJhWk0Htik3J/[email protected]
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/mi400
or email: MI400-request-Zwy7GipZuJhWk0Htik3J/[email protected]
Before posting, please take a moment to review the archives
at http://archive.midrange.com/mi400.