I removed the INTO and made a few other changes. The code is below. I inserted SQL BEGIN and SQL END. I believe that and removing INTO will allow me to read all the records instead of just one. I then need to send all the records to my structure (cc_lkup) and print them to the screen. Thanks in advance for any help. I know my problem is with the aray and selecting all the records but I am trying very hard to understand this.
Code:
/*Define structure to hold database table record */
struct cc_lkup_ {
short cc;
char cc_suf[2];
char cc_sn[11];
char cc_desc[41];
short prd_rpt_id;
short rpt_cc;
char sfdc_grp[41];
char cc_grp[41];
char proc_grp[3];
char proc_grp_desc[16];
short cc_typ;
char resp_company[4];
char rpt_tbl[33];
} cc_lkup_;
int main ()
{
int reccnt = 0;
int totalcount = 0;
JNL_STRUCT jnl;
/*Zero out structure - Initialize*/
memset (&cc_lkup_, 0, sizeof(cc_lkup_));
/*Determine how many records are in the table
EXEC SQL SELECT COUNT(*) INTO :count:nind
FROM cc_lkup*/
/* Verify no errors were encountered during SELECT statement */
status = err_supv(apl_nm, prog_nm, jnl.blk, stmt_purpose, &retry_cnt,
&err_num, err_txt, &row_count, jnl.val1, jnl.val2, popup_flag);
/* EXIT PROGRAM IF ERROR COUNTING RECORDS*/
if (status != IMCS_DB_SUCCESS)
exit(1);
/*PLACE TOTAL NUMBER OF RECORDS FOUND IN TOTALCOUNT VARIABLE*/
totalcount = count;
/*WRITE PURPOSE OF CODE TO THE LOG FILE*/
jnl.blk = 1899;
sprintf(stmt_purpose,"counting all records in cc_lkup by Carl J");
log_it(log_file, jnl);
/* Get records from database table psr_skid_mkup
EXEC SQL SELECT cc, cc_sn, cc_desc, cc_grp
INTO :cc, :cc_sn, :cc_desc, :cc_grp
FROM cc_lkup */
/* Verify no errors were encountered during SELECT statement */
status = err_supv(apl_nm, prog_nm, jnl.blk, stmt_purpose, &retry_cnt,
&err_num, err_txt, &row_count, jnl.val1, jnl.val2, popup_flag);
/* EXIT PROGRAM IF ERROR SELECTING RECORDS*/
if (status != IMCS_DB_SUCCESS)
exit(1);
/*WRITE PURPOSE OF CODE TO THE LOG FILE*/
jnl.blk = 1999;
sprintf(stmt_purpose,"selecting all records in the table cc_lkup by Carl J");
log_it(log_file, jnl);
/* PRINT TO SCREEN */
int i;
/*READ ALL RECORDS FOUND IN TABLE - TOTAL IS STORED IN variable COUNT*/
for( i = 0; i < totalcount; i++ )
{
printf("COST CENTER NUMBER:%d LOCATION:%s DESCRIPTION:%s GROUP NUMBER:%s\n", cc_lkup_[i].cc, cc_lkup_[i].cc_sn, cc_lkup_[i].cc_desc, cc_lkup_[i].cc_grp);
}
return (0);
}