Number of args for stored procedure PLS-00306
        Posted  
        
            by Peter Kaleta
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by Peter Kaleta
        
        
        
        Published on 2010-06-10T05:17:45Z
        Indexed on 
            2010/06/10
            7:42 UTC
        
        
        Read the original article
        Hit count: 442
        
Hi
I have problem with calling for my procedure. Oracle scrams
PLS-00306 Error: Wrong number of types of arguments in call to procedure.
With my type declaration procedure has exact the same declaration like in header below. If I run it as separate procedure it works, when i work in ODCI interface for extensible index creation, it throws PLS-00306.
MEMBER PROCEDURE FILL_TREE_LVL
     (target_column VARCHAR2, cur_lvl NUMBER, max_lvl NUMBER, 
     parent_rect NUMBER,start_x NUMBER, start_y NUMBER,
     end_x NUMBER, end_y NUMBER) 
IS                          
    stmt VARCHAR2(2000);
    rect_id NUMBER;
    diff_x NUMBER;
    diff_y NUMBER;
    new_start_x NUMBER;
    new_end_x NUMBER;
    i NUMBER;
    j NUMBER;
 BEGIN
{...}   
 END FILL_TREE_LVL;
 STATIC FUNCTION ODCIINDEXCREATE 
   (ia SYS.ODCIINDEXINFO, parms VARCHAR2, env SYS.ODCIEnv) RETURN NUMBER
IS  
  stmt   VARCHAR2(2000);
  stmt2 VARCHAR2(2000);
  min_x NUMBER;
  max_x NUMBER;
  min_y NUMBER;
  max_y NUMBER;
  lvl NUMBER;
  rect_id NUMBER;
  pt_tab VARCHAR2(50);
  rect_tab VARCHAR2(50);
  cnum NUMBER;
  TYPE point_rect is RECORD(
    point_id NUMBER,
    rect_id NUMBER
  );
  TYPE point_rect_tab IS TABLE OF point_rect;
  pr_table point_rect_tab;
  BEGIN
  {...}
  FILL_TREE_LVL('any string', 0, lvl,0, min_x, min_y, max_x, max_y);
  {...}
  END;
        © Stack Overflow or respective owner