Link to home
Start Free TrialLog in
Avatar of bassamsbd
bassamsbd

asked on

sp2-0552 bind error message

i have a big table and want to add other table to it. if the div and product is found the table will be updated in the appropriate row, but if they are not found a new record will be inserted in the table.

i made two cursors to do this job, but i faced these errors:

ERROR at line 3:
ORA-06550: line 3, column 59:
PLS-00320: the declaration of the type of this expression is incomplete or malformed
ORA-06550: line 3, column 22:
PL/SQL: SQL Statement ignored
ORA-06550: line 3, column 9:
PLS-00341: declaration of cursor 'MATCH_CUR' is incomplete or malformed
ORA-06550: line 7, column 12:
PL/SQL: Item ignored
ORA-06550: line 15, column 24:
PLS-00320: the declaration of the type of this expression is incomplete or malformed
ORA-06550: line 15, column 3:
PL/SQL: SQL Statement ignored

i have oracle 8i 817 and this is my code:

SQL> declare
  2   cursor form_cur is select * from GSV_R1;
  3   cursor match_cur is select * from form1_final where div= match_div AND prodGrp= match_prodGrp;
  4   form_var form_cur%rowtype;
  5   match_div form1_final.div%type;
  6   match_prodGrp form1_final.prodGrp%type;
  7   match_var match_cur%rowtype;
  8  begin
  9   open form_cur;
 10   fetch form_cur into form_var;
 11   while form_cur%found loop
 12    match_div := form_var.div;
 13    match_prodGrp := form_var.prodGrp;
 14    open match_cur;
 15    fetch match_cur into match_var;
 16    if (match_cur%notfound) then
 17     insert into form1_final(
 18      div,
 19      prodGrp,
 20      gsv_Qty_Current_Year,
 21      gsv_Qty_Previous_Year,
 22      gsv_Qty_Var,
 23      gsv_Price_Current_Year,
 24      gsv_Price_Previous_Year,
 25      gsv_Price_Var)
 26     values(form_var.Div,
 27      form_var.ProdGrp,
 28      form_var.Qty_Current_Year,
 29      form_var.Qty_Previous_Year,
 30      form_var.Qty_Var,
 31      form_var.Price_Current_Year,
 32      form_var.Price_Previous_Year,
 33      form_var.Price_Var);
 34    else
 35     update form1_final
 36     set gsv_Qty_Current_Year = form_var.Qty_Current_Year,
 37      gsv_Qty_Previous_Year = form_var.Qty_Previous_Year,
 38      gsv_Qty_Var = form_var.Qty_Var,
 39      gsv_Price_Current_Year = form_var.Price_Current_Year,
 40      gsv_Price_Previous_Year = form_var.Price_Previous_Year,
 41      gsv_Price_Var = form_var.Price_Var
 42     where div= match_div AND prodGrp=match_prodGrp;
 43    end if;
 44    close match_cur;
 45    fetch form_cur into form_var;
 46    end loop;
 47   close form_cur;
 48  end;
 49  /
 cursor match_cur is select * from form1_final where div= match_div AND prodGrp= match_prodGrp;
                                                          *
ERROR at line 3:
ORA-06550: line 3, column 59:
PLS-00320: the declaration of the type of this expression is incomplete or malformed
ORA-06550: line 3, column 22:
PL/SQL: SQL Statement ignored
ORA-06550: line 3, column 9:
PLS-00341: declaration of cursor 'MATCH_CUR' is incomplete or malformed
ORA-06550: line 7, column 12:
PL/SQL: Item ignored
ORA-06550: line 15, column 24:
PLS-00320: the declaration of the type of this expression is incomplete or malformed
ORA-06550: line 15, column 3:
PL/SQL: SQL Statement ignored

please help me !!
Avatar of bassamsbd
bassamsbd

ASKER

sorry but the title have wrong error code ........ i correct this code and forget to change the title

forgive me

regards,

Bassam
ASKER CERTIFIED SOLUTION
Avatar of seazodiac
seazodiac
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial