|
The first field in ERC0100_t is called Bytes_Provided in the documentation.
It's an input to the API. If you set it less than 8, the API sends escape
messages for errors; if greater than 8, the API returns error info in the
structure and sets Bytes_Available greater than zero.
I would code it like this:
typedef struct {
int Bytes_Provided;
int Bytes_Available;
char Exception_ID[7];
char Reserved;
char Exception_Data[240];
} ERRC0100_t;
ERRC0100_t errInfo;
/* Verificar si existen las colas */
memset(&errInfo, 0, sizeof(errInfo));
errInfo.Bytes_Provided = sizeof(errInfo);
memcpy(dtaq.lib, "QTEMP ",
sizeof(_TE_NAME_T));
memcpy(dtaq.obj, "OUT_ABGQ ",
sizeof(_TE_NAME_T));
memcpy(objType, "*DTAQ ",
sizeof(_TE_NAME_T));
QUSROBJD(&objInfo, sizeof(objInfo),
"OBJD0100", &dtaq,
objType, &errInfo);
if (errInfo.Bytes_Available > 0) {
< do error processing >
}
--Dave
On Wednesday 10 September 2003 12:21 pm, Carlos Kozuszko wrote:
> I want to call API QUSROBJD to check if an object
> exists or not. The API call is working but it sends an
> escape message terminating the program when an error
> occurs (file not found, etc.). How do i prevent this ?
> I want to use the info provided in the error area to
> check for the exception ID, but the program blows
> everytime the object is not found. When i call this
> API from an RPG program the program flow continues
> when an error occurs, how do i simulate this behavior
> ?
>
> Thanks in advance.
>
> Carlos Kozuszko.
>
>
> #include <stdlib.h>
> #include <qsnddtaq.h>
> #include <QUSROBJD.h>
> #include <qtes.h>
>
> typedef struct {
> int Bytes_Returned;
> int Bytes_Available;
> char Exception_ID[7];
> char Reserved;
> char Exception_Data[240];
> } ERRC0100_t;
>
> void main() {
> _TE_NAME_T objType;
> _TE_OBJLIB_T dtaq;
> Qus_OBJD0100_t objInfo;
> ERRC0100_t errInfo;
>
> /* Verificar si existen las colas */
> memcpy(dtaq.lib, "QTEMP ",
> sizeof(_TE_NAME_T));
> memcpy(dtaq.obj, "OUT_ABGQ ",
> sizeof(_TE_NAME_T));
> memcpy(objType, "*DTAQ ",
> sizeof(_TE_NAME_T));
> QUSROBJD(&objInfo, sizeof(objInfo),
> "OBJD0100", &dtaq,
> objType, &errInfo);
> }
>
>
> ------------
> Internet GRATIS es Yahoo! Conexión
> 4004-1010 desde Buenos Aires. Usuario: yahoo; contraseña: yahoo
> Más ciudades: http://conexion.yahoo.com.ar
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 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.