spears@silver.ucs.indiana.edu (Darrell Spears) (12/01/90)
In article <1990Nov29.200606.7462@uunet!unhd> jwm775@unhd.UUCP (Jonathan W Miner) writes: >Hello --- > > Currently I am working on a project interfacing Ingres and C using > Equel. I would like to be able to trap Ingres errors and handle > them myself, instead of getting the ugly error message. Is there > a function available? > > Thanks in advance. Here is one: #include stdio int ims_local_err_handler(); ## main (argc, argv) ## int argc; ## char *argv[]; ##{ IIseterr(ims_local_err_handler); ## } /************************************************************************/ ##int ims_local_err_handler(ims_ingerr) ##int *ims_ingerr; ##{ #define IMS_FI21CA 8650 /* mandatory field error */ #define IMS_FI21CB 8651 #define IMS_FI21CD 8653 if (*ims_ingerr == IMS_FI21CA) { ## message "\7Current field must have a value..." sleep(2); return(FALSE); } else if (*ims_ingerr == IMS_FI21CB) { ## message "\7Current field must be a valid integer..." sleep(2); return(FALSE); } else if (*ims_ingerr == IMS_FI21CD) { ## message "\7Current field must a valid real number or integer..." sleep(2); return(FALSE); } else { return *ims_ingerr; } ##} /* end ims_ingerr */