This include file, DSQCOMMC, is shipped with the QMF product.
/******************************************************************/ /* C Include for Query Callable Interface (MVS/VM) */ /******************************************************************/ /* Structure declare for Communications Area */ struct dsqcomm { long int dsq_return_code; /* Function return code */ long int dsq_instance_id; /* id established in start cmd*/ char dsq_comm_level[12]; /* communications level id */ char dsq_product[2]; /* query product id */ char dsq_product_release[2]; /* query product release */ char dsq_reserve1[28]; /* reserved */ char dsq_message_id[8]; /* completion message ID */ char dsq_q_message_id[8]; /* query message ID */ char dsq_start_parm_error[8]; /* start parameter in error */ char dsq_cancel_ind[1]; /* cmd cancelled indicator */ /* 1 = cancelled, 0 = not cancelled*/ char dsq_reserve2[23]; /* RESERVED AREAS */ char dsq_reserve3[156]; char dsq_message_text[128]; /* Message text */ char dsq_q_message_text[128]; /* Query message text */ } ; /* RETURN CODES */ #define DSQ_SUCCESS 0 #define DSQ_WARNING 4 #define DSQ_FAILURE 8 #define DSQ_SEVERE 16 /* Communications Level */ #define DSQ_CURRENT_COMM_LEVEL "DSQL>001002<" /* Query Product Codes */ #define DSQ_QRW "01" #define DSQ_QMF "02" #define DSQ_QM3 "03" /* Query Product Release Levels */ #define DSQ_QRW_V1R2 "01" #define DSQ_QRW_V1R3 "02" #define DSQ_QMF_V2R4 "01" #define DSQ_QMF_V3R1 "02" #define DSQ_QMF_V3R1M1 "03" #define DSQ_QMF_V3R2 "04" #define DSQ_QMF_V3R3 "05" #define DSQ_QMF_V6R1 "06" #define DSQ_QM4_V1R1 "01"
/* INSTANCE CODES */ #define DSQ_CONTINUE 0 /* CANCELLED INDICATOR */ #define DSQ_CANCEL_YES "1" #define DSQ_CANCEL_NO "0" /* VARIABLE TYPES */ #define DSQ_VARIABLE_CHAR "CHAR" #define DSQ_VARIABLE_FINT "FINT" #define DSQ_INTERACTIVE "1" #define DSQ_BATCH "2" #define DSQ_YES "1" #define DSQ_NO "2" /* Call Interface structure */ /* Calling format for normal call with 3 parameters */ #define dsqcic(parm1, parm2, parm3 )\ dsqcicx( parm1, parm2, parm3) /* Calling format for call with CMD_EXT area 9 parameters */ #define dsqcice(parm1, parm2, parm3,\ parm4, parm5, parm6, parm7, parm8, parm9 )\ dsqcicx( parm1, parm2, parm3, \ parm4, parm5, parm6, \ parm7, parm8, parm9 ) /* DECLARE OS LINKAGE FORMAT */ #pragma linkage(dsqcicx, OS)