I tried this function and it works fine!
   I only added these 2 includes:
   #include <except.h>
   #include <mih/rslvsp.h>
   Thank you all,
   Zvi
   On 15/12/2014 20:14, Jevgeni Astanovski wrote:
 I use a function Check_DAARA before calling RTVDTAARA:
 int Check_DTAARA(char *dtaname, char *dtalib)
 {
   _SYSPTR p;
   volatile _INTRPT_Hndlr_Parms_T ca; /* communications area */
   #pragma exception_handler(ERROR_OCCURED, ca, 0, _C2_MH_ESCAPE, \
                             _CTLA_HANDLE, "MCH3401")
   p = rslvsp(WLI_DTAARA, dtaname, dtalib, 0x0190);
   return 0;
   ERROR_OCCURED:
   return -1;
 }
 Returns 0 if data area exists, otherwise -1.
 Requires some includes.
 Can be used as a generic exception handler.
 It is actually made of an example in one of the manuals (ILE/C
 programmers's guide or alike).
 Jevgeni.
 On Mon, Dec 15, 2014 at 6:52 PM, Zvi Kave [1]<zvi.kave@xxxxxxxxxx> wrote:
    My ILE C program crashes in the line of QXXRTVDA if data does not exist.
    Is there a way to avoid this crash ?
    Someone has an example code for this?
    The line is like this:
    QXXRTVDA(dta, 41, 5, user_dta);
    and I got program crash with the message:
     "Data area DTA in QGPL not found."
    If data area dta exists, it works fine.
    Regards,
    Zvi
 --
 This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) mailing list
 To post a message email: [2]C400-L@xxxxxxxxxxxx
 To subscribe, unsubscribe, or change list options,
 visit: [3]
http://lists.midrange.com/mailman/listinfo/c400-l
 or email: [4]C400-L-request@xxxxxxxxxxxx
 Before posting, please take a moment to review the archives
 at [5]
http://archive.midrange.com/c400-l.
References
   Visible links
   1. mailto:zvi.kave@xxxxxxxxxx
   2. mailto:C400-L@xxxxxxxxxxxx
   3. 
http://lists.midrange.com/mailman/listinfo/c400-l
   4. mailto:C400-L-request@xxxxxxxxxxxx
   5. 
http://archive.midrange.com/c400-l
As an Amazon Associate we earn from qualifying purchases.