yes ..i am using informix version 11.5...in that stil i am geting an error like...
# ^
# 667: Variable(var_ba_action_id) not declared.
#
and the complete procedure is ...
CREATE PROCEDURE savetabledetails1(var_table_name char(20),var_row_id char(20),var_action_occured char(20))
DEFINE var_pkid_name char(20);
DEFINE var_column_name char(20);
DEFINE var_column_length char(20);
DEFINE i int;
DEFINE var_ar_pk_id char(20);
DEFINE var_ar_alert_id char(20);
DEFINE var_al_when char(20);
DEFINE var_al_numberof_days char(20);
DEFINE var_ba_action_id char(20);
DEFINE var_query lvarchar(2000);
DEFINE var_query1 lvarchar(2000);
LET i = 0;
LET var_query="select colname from syscolumns where tabid=(select tabid from systables where tabname=?)";
select MAX(colno) into var_column_length from syscolumns where tabid=(select tabid from systables where tabname=var_table_name);
select first 1 colname into var_pkid_name from syscolumns where tabid=(select tabid from systables where tabname=var_table_name);
PREPARE var_query_stmt FROM var_query;
DECLARE var_query_cur cursor FOR var_query_stmt;
OPEN var_query_cur USING var_table_name;
WHILE (i<var_column_length)
FETCH var_query_cur INTO var_column_name;
FOREACH SELECT ar_pk_id ,ar_alert_id INTO var_ar_pk_id,var_ar_alert_id FROM bam_alert_rule where (ar_l_table_name=var_table_name and ar_l_field= var_column_name) or (ar_r_table_name=var_table_name and ar_r_field= var_column_name)
IF( var_ar_pk_id is not null and var_ar_alert_id is not null ) then
--select ba_action_id into var_ba_action_id from bam_alert_actions where (ba_alert_id=var_ar_alert_id and ba_action_id like var_action_occured);
LET var_query1="select ba_action_id into var_ba_action_id from bam_alert_actions where ba_alert_id=var_ar_alert_id and ba_action_id like '" || trim(var_action_occured) || "' ";
EXECUTE IMMEDIATE var_query1;
if(var_ba_action_id is not null) then
select al_when,al_numberof_days into var_al_when ,var_al_numberof_days from bam_alerts where al_pk_id=var_ar_alert_id;
insert into bam_alert_table_details(bat_pk_id,bat_alert_id,bat _table_name,bat_field_name,bat_row_id,bat_alert_st atus,bat_name_pkid,bat_action_occured,bam_alert_wh en,bam_no_of_days)values(bam_changed_table_details _seq.NEXTVAL,var_ar_alert_id,var_table_name,var_co lumn_name,var_row_id ,'Pending',var_pkid_name,var_action_occured,var_al _when,var_al_numberof_days);
end if;
END IF;
END FOREACH;
LET i=i+1;
END WHILE;
CLOSE var_query_cur;
FREE var_query_cur;
FREE var_query_stmt;
END PROCEDURE;
why that error is coming....please help me out...its very urgent..