Re: C program for QDFRTVFD API
Frank Kolmann <[email protected]>
| Newsgroups | gmane.comp.lang.as400.c |
|---|---|
| Message-ID | <CAB-SQvgYwYvTH3RZ_oyGCRTAXiS_qVObD9jwqM30+3X=3Yv_Xw@mail.gmail.com> |
Hi Jevgeni I am glad your program is now working, it was your original question that prompted my to make a program that uses the API. Seems there are many ways to skin a cat and what you say to store the pointer of the previous field is more efficient. You mention debugging my program. What bug did you find? I would like to correct it. As you may guess I dont believe my code is 'dangerously inefficient'. Yes my code is not the most efficient but it was mostly a demonstration of how to process the API data, and as such it has succeeded. Regards Frank >From: Jevgeni Astanovski <jevgeniast@xxxxxxxxx> >Date: Mon, 22 Sep 2014 09:52:44 +0300 >I meant different thing. >I would retrieve QDFTRTVD API data into an allocated memory chunk. >Then I would create user space to keep retrieved structures in a >format of FieldData_t format. >I would place two integers in the beginning of the user space that are >length of the data in the user space and offset to the first unsent >field in the user space. >Then I would return first retrieved field from the user space and >increment a pointer to the next one. >When called with "NEXT" I would just return a field pointed by my >"next" pointer in the user space and increment it. >In this case you also do not need to pass previous field when requesting next. >By the way, after analyzing and debugging your program I've got mine >working as well. I've caught the logic of "Where Used" fields and now >it works fine in my program. >>On Fri, Sep 19, 2014 at 10:04 AM, Frank Kolmann <fkolmann@xxxxxxxxx> wrote: >> Hi Jevgeni >> Thank you for your reply , much appreciated. >> However I am not sure what you mean. >> I am happy to be corrected if I am wrong. >> From my code you can see. >> I only Create and Populate the Userspace for the #FIRST record. >>- snip -- >> So I believe I am doing the code correctly exactly how you describe it >> should be done. >> Regards >> Frank -- This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) mailing list To post a message email: C400-L-Zwy7GipZuJhWk0Htik3J/[email protected] To subscribe, unsubscribe, or change list options, visit: http://lists.midrange.com/mailman/listinfo/c400-l or email: C400-L-request-Zwy7GipZuJhWk0Htik3J/[email protected] Before posting, please take a moment to review the archives at http://archive.midrange.com/c400-l.