TSAPI Error -17808: Wrong Number of Positional Parameters

I am trying to determine some more details as to why I am receiving this error. The error is generated whenever I try to access any method from the TSAPI.
I am passing the sequence context into a COM Automation Server, and if I attempt to call a method, then this error is generated. Accessing properties seems to work fine.
Can someone provide more details regarding this error. I have searched through the documentation and the discussion forum but have not found anything explaining this.
Thanks in advance for any help.
Jeff
Attachments:
screenshot.bmp ‏1155 KB

Scott,
Unfortunately it's a litte bit more involved than that.
I am trying to use test code written in a scripting language called Python.
Python has good support for COM on win32, and is able to implement COM Servers and Clients.
However, the one thing that Python doesn't do is use or generate a type library.
So, using your suggestion to a question I posted a day or two ago regarding accessing a COM Server that has no type library, I wrote a simple VB DLL wrapper around the COM Server that's implmented in Python.
On the surface, this seemed to work out ok. The next problem I encountered however was when I tried to call methods off of the sequence context.
I pass a reference to the sequence context all the way down to my Python COM Se
rver, and then try to call methods on that server.
Any method call results in Error -17808. It is very likely that this is a problem in Python, however, I was looking for some more details on this particular error to try and work towards a resolution.
At this point, I am about to fall back on writing a C++ ATL COM Server that wraps up the Python Interpreter and call my scripts that way. I was hoping that I could get the Python Server to work though, because it would give full access to the sequence context from Python, without having to write all the code to expose the context to Python via the C++ DLL.
So, there's the story. I could give you some code if your interested, I don't know if you're familar with Python at all. I've looked to the Python community for some help on this as well, but haven't made any progress on that front.
The only other piece of data that seems odd is that any access to a property, for example, SequenceContext.Id, seems to work fine.
Howeve
r, the following line of code produces the error:
#Python Code accessing Sequence Context.
context.SetValNumeric("Locals.MyParm", 0, 10.0)
Jeff

Similar Messages

  • Error 306, wrong number or types of argument in call to ADD_OBJECT_ARG

    Hello all,
    I am trying to install Webutil to Forms 9i, but when compiling the webutil.pll, I am getting the compilation error 306, wrong number or types of argument in call to ADD_OBJECT_ARG(args, a0, 'java/lang/Object').
    The problems are in the body of Package Jave_System when some methods of JNI are called.
    What is JNI and how i can fix this problem?

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Instructor:
    The procedure most likely requires an argument when executed.
    To specify the argument in forms, you need to go to BLOCK property QUERY DATA SOURCE ARGUMENTS and if performing DML...use INSERT PROCEDURE ARGUMENTS, UPDATE PROCEDURE ARGUMENTS, and DELETE PROCEDURE ARGUMENTS.
    Hope this helps.<HR></BLOCKQUOTE>
    thanks, I will check it out !
    null

  • WHILE expression giving Error 306, wrong number or types of args in call to

    WHILE expression giving Error 306, wrong number or types of args in call to '='
    declare
         block_id block;
         item_id item;     
    begin
         block_id := find_block(:system.cursor_block);
         item_id := find_item(:system.cursor_item);
         message('Current Block: ' || :system.cursor_block || '  Current Item: ' || :system.cursor_item);
         next_block;
         while find_block(:system.cursor_block) = block_id
         loop
              message('Current Block: ' || :system.cursor_block || '  Current Item: ' || :system.cursor_item);
              next_block;
         end loop;
    exception
         when others then
         message(sqlerrm);
    end;I don't see what the problem is?
    Gus

    other than that there are logical errors in this
    u hav to use here != with the while loop.
    Again loop willl never return to first block.It will stuck at last block and will show error.
    For ur question u can use as
    declare
         --block_id block;
         --item_id item;     
         vc_first_block varchar2(65);
    begin
         vc_first_block := :system.cursor_block;
         --block_id := find_block(:system.cursor_block);
         --item_id := find_item(:system.cursor_item);
         message('Current Block: ' || :system.cursor_block || ' Current Item: ' || :system.cursor_item);
         next_block;
         while :system.cursor_block != vc_first_block
         loop
    Message was edited by:
    jeneesh

  • Form Builder. Error 306 wrong number or types of arguments in call to populate_table

    Hi ! I'm trying to build a simple form based on a procedure.
    the error that i get:
    error 306 - wrong number or types of arguments in call to populate_table
    When I use the Data block
    wizard, I specify the procedure with a ref cursor argument. the procedure code:
    open ind_prof for select i.nome, i.idade, p.nome
    from individuo i, individuo_profissao ip, profissao p
    where i.cod_individuo=ip.cod_individuo
    and ip.cod_profissao=p.cod_profissao;
    The error that i get 'points' to this procedure. I checked the cursor type, the record
    type and everything seems ok.
    I'm using a ref cursor to query.
    I have the same proble either using a procedure or a function.
    There is another method to load the data into the block. That procedure is called
    automatically and it has a table of the same record type as the ref cursor as an
    argument. What code should I write on it ?
    what should I write in both of them ?
    Thanks !

    <BLOCKQUOTE><font size="1" face="Verdana, Arial">quote:</font><HR>Originally posted by Instructor:
    The procedure most likely requires an argument when executed.
    To specify the argument in forms, you need to go to BLOCK property QUERY DATA SOURCE ARGUMENTS and if performing DML...use INSERT PROCEDURE ARGUMENTS, UPDATE PROCEDURE ARGUMENTS, and DELETE PROCEDURE ARGUMENTS.
    Hope this helps.<HR></BLOCKQUOTE>
    thanks, I will check it out !
    null

  • Error for wrong number of arguments

    Hi
    I am getting the below error for plsql
    IF (l_src_cd ='P' or l_src_cd = 'E') THEN
    ERROR at line 243:
    ORA-06550: line 243, column 22:
    PLS-00306: wrong number or types of arguments in call to '='
    ORA-06550: line 243, column 9:
    PL/SQL: Statement ignored
    while writing
    IF (l_src ='P' or l_src= 'E') THEN
    l_activity := 'ERS';
    elsif (length(l_adj_cd) > 0) THEN
    l_activity := 'KAM';
    elsif (length(l_offer_cd) > 0 ) THEN
    l_activity := 'RAM';
    elsif (length(l_visit_nbr) > 0 ) THEN
    l_activity := 'SAM';
    ELSE l_activity :='UNK';
    END IF;
    wrong number or type of argument
    Appreciate your help on the above?
    Thanks & Regards

    What is the data type of l_src?
    SQL> declare
      2     type t_tp is table of varchar2(10) index by binary_integer;
      3     l_v t_tp;
      4  begin
      5     l_v(1) := 'A';
      6     l_v(2) := 'B';
      7     if l_v = 'A' or l_v = 'B' then
      8        dbms_output.put_line('True');
      9     else
    10        dbms_output.put_line('False');
    11     end if;
    12* end;
    SQL> /
       if l_v = 'A' or l_v = 'B' then
    ERROR at line 7:
    ORA-06550: line 7, column 11:
    PLS-00306: wrong number or types of arguments in call to '='
    ORA-06550: line 7, column 4:
    PL/SQL: Statement ignoredJohn

  • Wrong number  or types of argumnet in a call to  error

    Hi all,
    Below is my stored proc and it has a input parameter 'c_count_or_perc' . I have passed value to this parameter as in the if block.
    But I got the error as "wrong number or types of argumnet in a call to ' .
    I really dont know how to pass input value to this parameter .
    Could anyone please help?
    {code}
    PROCEDURE edr_rpt_gen_error_by_hour
    in_report_parameter_id IN report_tasks.report_task_id%TYPE,
    c_count_or_perc IN VARCHAR2 ,
    report_data OUT SYS_REFCURSOR,
    chart_data OUT SYS_REFCURSOR,
    footer_data OUT SYS_REFCURSOR
    {code}
    In below 'IF THEN ELSE' block , ( based on the <condition> ) , I dont know how to pass value to input parameter c_count_or_perc .
    {code}
              IF (c_count_or_perc = 'ERROR BY HOUR') THEN
                   my_error_text := get_row_error_text;
                   my_total_text := get_row_total_text;
              ELSE
              my_error_text := get_row_error_text;
                   my_total_text := '';
                   DELETE edr_report_by_hour_output
                   WHERE row_type = 'Summary Row'
                   AND row_type = 'Final Row';
              END IF;     
    {code}
    Here I have pasted the full package. Could please tell me , what are ways tht I could pass value to the given input parameter.
    {code}
    CREATE OR REPLACE PACKAGE edr_rpt_error_by_hour_package AS
    PROCEDURE edr_rpt_gen_error_by_hour
    in_report_parameter_id IN report_tasks.report_task_id%TYPE,
    c_count_or_perc IN VARCHAR2 ,
    report_data OUT SYS_REFCURSOR,
    chart_data OUT SYS_REFCURSOR,
    footer_data OUT SYS_REFCURSOR
    FUNCTION error_data
    in_lane_id edr_report_by_hour_output.lane_id%TYPE,
    in_direction_id edr_report_by_hour_output.direction_id%TYPE,
    in_interval_start_date_time edr_report_by_hour_output.interval_start_date_time%TYPE,
    in_interval_end_date_time edr_report_by_hour_output.interval_end_date_time%TYPE,
    in_hour_start edr_report_by_hour_output.hour_start%TYPE,
    in_hour_end edr_report_by_hour_output.hour_end%TYPE,
    in_min_error NUMBER,
    in_max_error NUMBER
    RETURN NUMBER;
    END edr_rpt_error_by_hour_package;
    CREATE OR REPLACE PACKAGE BODY edr_rpt_error_by_hour_package AS
    FUNCTION error_data
    in_lane_id edr_report_by_hour_output.lane_id%TYPE,
    in_direction_id edr_report_by_hour_output.direction_id%TYPE,
    in_interval_start_date_time edr_report_by_hour_output.interval_start_date_time%TYPE,
    in_interval_end_date_time edr_report_by_hour_output.interval_end_date_time%TYPE,
    in_hour_start edr_report_by_hour_output.hour_start%TYPE,
    in_hour_end edr_report_by_hour_output.hour_end%TYPE,
    in_min_error NUMBER,
    in_max_error NUMBER
    RETURN NUMBER
    IS
    my_count_result NUMBER(18);
    BEGIN
    SELECT NVL(SUM(error_count), 0 )
    INTO my_count_result
    FROM
    SELECT site_lane_id
    FROM edr_rpt_tmp_report_lanes
    WHERE edr_rpt_tmp_report_lanes.output_lane_id = in_lane_id
    AND edr_rpt_tmp_report_lanes.output_direction_id = in_direction_id
    ) report_lanes
    JOIN edr_error_by_hour_report_data
    ON edr_error_by_hour_report_data.site_lane_id = report_lanes.site_lane_id
    AND edr_error_by_hour_report_data.bin_start_date_time >= in_interval_start_date_time
    AND edr_error_by_hour_report_data.bin_start_date_time < in_interval_end_date_time
    AND edr_error_by_hour_report_data.hour >= in_hour_start
    AND edr_error_by_hour_report_data.hour < in_hour_end
    AND edr_error_by_hour_report_data.error_code >= in_min_error
    AND edr_error_by_hour_report_data.error_code <= in_max_error
    return my_count_result;
    END error_data;
    FUNCTION get_row_error_text
    RETURN VARCHAR2
    IS
    my_row_error_text VARCHAR2(10000);
    my_row_error_entry VARCHAR2(10000);
    CURSOR row_error_text IS
    SELECT 'edr_rpt_error_by_hour_package.error_data('
    ||'lane_id, '
    ||'direction_id, '
    ||'interval_start_date_time, '
    ||'interval_end_date_time, '
    ||'hour_start, '
    ||'hour_end, '
    || error_code || ', '
    || error_code || ') "'|| error_message.error_short_message || '"'
    FROM error_message
    WHERE error_code >= 0 and error_code < 19
    ORDER BY error_code;
    BEGIN
    my_row_error_text := '';
    my_row_error_entry := '';
    -- generate the error code function calls
    OPEN row_error_text;
    LOOP
    FETCH row_error_text INTO my_row_error_entry;
    EXIT WHEN row_error_text%NOTFOUND;
    my_row_error_text := my_row_error_text || ', ' || my_row_error_entry;
    END LOOP;
    CLOSE row_error_text;
    RETURN my_row_error_text;
    END get_row_error_text;
    FUNCTION get_row_total_text
    RETURN VARCHAR2
    IS
    my_row_error_text VARCHAR2(10000);
    BEGIN
    my_row_error_text := '';
    -- generate the 'total' column function call
    SELECT 'edr_rpt_error_by_hour_package.error_data('
    ||'lane_id, '
    ||'direction_id, '
    ||'interval_start_date_time, '
    ||'interval_end_date_time, '
    ||'hour_start, '
    ||'hour_end, '
    || MIN(error_code) || ', '
    || MAX(error_code) || ') "Total"'
    INTO my_row_error_text
    FROM error_message
    WHERE error_code >= 0 and error_code < 19;
    RETURN (', ' || my_row_error_text);
    END get_row_total_text;
    FUNCTION get_error_data_pct
    in_lane_id edr_report_by_hour_output.lane_id%TYPE,
    in_direction_id edr_report_by_hour_output.direction_id%TYPE,
    in_interval_start_date_time edr_report_by_hour_output.interval_start_date_time%TYPE,
    in_interval_end_date_time edr_report_by_hour_output.interval_end_date_time%TYPE,
    in_hour_start edr_report_by_hour_output.hour_start%TYPE,
    in_hour_end edr_report_by_hour_output.hour_end%TYPE,
    in_min_error NUMBER,
    in_max_error NUMBER
    RETURN NUMBER
    IS
         my_count NUMBER(18);
         my_total NUMBER(18);
         my_count_pct NUMBER(18);
         my_count_result NUMBER(18);
    BEGIN
              my_count_pct := 0 ;
              my_count_result := error_data (
    in_lane_id,
    in_direction_id,
    in_interval_start_date_time,
    in_interval_end_date_time,
    in_hour_start,
    in_hour_end,
    in_min_error,
    in_max_error
              IF (my_count_result > 0 ) THEN
              my_total := error_data (
    in_lane_id,
    in_direction_id,
    in_interval_start_date_time,
    in_interval_end_date_time,
    in_hour_start,
    in_hour_end,
    1,
    19
              my_count_pct := ROUND((my_count_result / my_total) * 100 ,2);
         END IF;
              return my_count_pct;
    END get_error_data_pct;          
    PROCEDURE edr_error_by_hour_use_per_veh
    in_report_parameter_id IN report_tasks.report_task_id%TYPE
    IS
    BEGIN
    DELETE FROM edr_error_by_hour_report_data;
    INSERT INTO edr_error_by_hour_report_data
    site_id,
    site_lane_id,
    bin_start_date_time,
    hour,
    error_code,
    error_count
    SELECT
    site_id,
    site_lane_id,
    bin_start_date_time,
    hour,
    error_code,
    COUNT(1)
    FROM (SELECT site_id,
    site_lane_id,
    ( SELECT NVL(MAX(interval_start_date_time), date_time)
    FROM edr_rpt_tmp_grouping_table
    WHERE interval_start_date_time <= date_time) bin_start_date_time,
    TO_NUMBER(TO_CHAR(date_time, 'hh24')) hour,
    NVL(traffic_error.error_code, 0) error_code
    FROM edr_error_by_hour_veh_data
    LEFT OUTER JOIN traffic_error
    ON traffic_error.record_id = edr_error_by_hour_veh_data.record_id
    ) vehicles
    GROUP BY
    site_id,
    site_lane_id,
    bin_start_date_time,
    hour,
    error_code;
    END edr_error_by_hour_use_per_veh;
    PROCEDURE edr_error_by_hour_data_type
    in_report_parameter_id IN report_tasks.report_task_id%TYPE,
    in_data_type IN VARCHAR2,
    out_data_type_used OUT VARCHAR2
    IS
    my_bin_entry_count NUMBER(12,0);
    my_veh_entry_count NUMBER(12,0);
    BEGIN
    IF(UPPER(in_data_type) = 'BINNED') THEN
    -- Error information can only be read from Per Vehicle data records
    -- - using bins-only is not a supported option
    RAISE_APPLICATION_ERROR(-20101,'Binned data cannot be used for this report.');
    ELSIF (UPPER(in_data_type) = 'PERVEHICLE')
    OR (UPPER(in_data_type) = 'COMBINED')
    THEN
    out_data_type_used := 'Per Vehicle (All Vehicles)';
    edr_error_by_hour_use_per_veh( in_report_parameter_id );
    ELSE
    RAISE_APPLICATION_ERROR(-20101, 'The data type specified is not recognized.');
    END IF;
    END edr_error_by_hour_data_type;
    PROCEDURE edr_error_by_hour_get_veh_data
    in_report_parameter_id IN NUMBER,
    in_site_id IN NUMBER,
    in_start_date_time IN TIMESTAMP,
    in_end_date_time IN TIMESTAMP,
    in_report_level_min IN NUMBER,
    in_report_level_max IN NUMBER
    IS
    BEGIN
    --Clear the edr_error_by_hour_veh_data temporary table and populate it with the data for the requested
    --report.
    DELETE FROM edr_error_by_hour_veh_data;
    INSERT INTO edr_error_by_hour_veh_data
    site_id,
    site_lane_id,
    record_id,
    date_time,
    vehicle_error_count,
    vehicle_status
    SELECT site_to_data_source_lane_v.site_id,
    site_to_data_source_lane_v.site_lane_id,
    traffic_record.record_id,
    traffic_record.datetime,
    NVL((SELECT COUNT(1)
    FROM traffic_error
    WHERE traffic_error.record_id = traffic_record.record_id), 0) vehicle_error_count,
    NVL((SELECT SUM(status_code)
    FROM traffic_status
    WHERE traffic_status.record_id = traffic_record.record_id), 0) vehicle_status
    FROM traffic_record
    LEFT OUTER JOIN traffic_class
    ON traffic_record.record_id = traffic_class.record_id
    JOIN site_to_data_source_lane_v
    ON traffic_record.data_source_id = site_to_data_source_lane_v.data_source_id
    AND traffic_record.lane = site_to_data_source_lane_v.data_source_lane_id
    JOIN edr_rpt_tmp_report_lanes
    ON site_to_data_source_lane_v.site_lane_id = edr_rpt_tmp_report_lanes.site_lane_id
    JOIN edr_rpt_tmp_report_classes
    ON NVL(traffic_class.v_class, 0) = edr_rpt_tmp_report_classes.class_id
    JOIN edr_rpt_tmp_inclusion_table
    ON TRUNC(traffic_record.datetime) = TRUNC(edr_rpt_tmp_inclusion_table.date_time)
    WHERE site_to_data_source_lane_v.site_id = in_site_id
    AND traffic_record.datetime >= in_start_date_time
    AND traffic_record.datetime < in_end_date_time
    AND traffic_class.class_level >= in_report_level_min
    AND traffic_class.class_level <= in_report_level_max;
    END edr_error_by_hour_get_veh_data;
    PROCEDURE edr_rpt_gen_error_by_hour
    in_report_parameter_id IN report_tasks.report_task_id%TYPE,
    c_count_or_perc IN VARCHAR2 ,
    report_data OUT SYS_REFCURSOR,
    chart_data OUT SYS_REFCURSOR,
    footer_data OUT SYS_REFCURSOR
    AS
    my_date_format_mask VARCHAR2(50);
    my_start_date_time TIMESTAMP;
    my_end_date_time TIMESTAMP;
    my_lane_grouping VARCHAR2(10);
    my_interval_duration NUMBER(2);
    my_site_id sites.site_id%TYPE;
    my_selected_data_type VARCHAR2(50);
    my_used_data_type VARCHAR2(50);
    my_report_data_statement VARCHAR2(25000);
    my_chart_data_statement VARCHAR2(25000);
    my_good_weight_viol_total NUMBER(12,0);
    my_data_type_used VARCHAR2(50);
    my_per_vehicle_total NUMBER(12,0);
    my_binned_vehicle_total NUMBER(12,0);
    my_error_vehicle_total NUMBER(12,0);
    my_status_vehicle_total NUMBER(12,0);
    my_good_weight_total NUMBER(12,0);
    my_status_clear_total NUMBER(12,0);
    my_good_weight_statuses_mask NUMBER(12,0);
    my_error_text VARCHAR2(25000);
    my_total_text VARCHAR2(25000);
    my_error_row_pct_report VARCHAR2(25);
    BEGIN
    my_date_format_mask := edr_rpt_generic_package.edr_rpt_get_date_format_mask(in_report_parameter_id);
    my_start_date_time := edr_rpt_generic_package.edr_rpt_get_start_date_time(in_report_parameter_id, my_date_format_mask);
    my_end_date_time := edr_rpt_generic_package.edr_rpt_get_end_date_time(in_report_parameter_id, my_date_format_mask);
    my_lane_grouping := edr_rpt_generic_package.edr_rpt_get_lane_grouping(in_report_parameter_id);
    my_site_id := edr_rpt_generic_package.edr_rpt_get_site_id(in_report_parameter_id);
    my_selected_data_type := edr_rpt_generic_package.edr_rpt_get_data_type(in_report_parameter_id);
    -- ensure selected classes and lanes temp tables have been populated
    edr_rpt_generic_package.edr_rpt_gen_tmp_lanes(in_report_parameter_id);
    edr_rpt_generic_package.edr_rpt_gen_tmp_classes(in_report_parameter_id);
    my_good_weight_statuses_mask := edr_rpt_generic_package.get_good_weight_status_mask(in_report_parameter_id);
    edr_rpt_generic_package.edr_rpt_gen_inclusion_table(
    in_report_parameter_id,
    my_date_format_mask,
    my_start_date_time,
    my_end_date_time
    edr_rpt_generic_package.edr_rpt_gen_grouping_table(
    in_report_parameter_id,
    my_date_format_mask,
    my_start_date_time,
    my_end_date_time
    edr_rpt_generic_package.gen_rpt_by_hour_output_table
    in_report_parameter_id
    edr_rpt_error_by_hour_package.edr_error_by_hour_get_veh_data
    in_report_parameter_id,
    my_site_id,
    my_start_date_time,
    my_end_date_time,
    0, --Hardcoded until reclassification is supported.
    0 --Hardcoded until reclassification is supported.
    edr_rpt_error_by_hour_package.edr_error_by_hour_data_type
    in_report_parameter_id,
    my_selected_data_type,
    my_used_data_type
              IF (c_count_or_perc = 'ERROR BY HOUR') THEN
                   my_error_text := get_row_error_text;
                   my_total_text := get_row_total_text;
              ELSE
              my_error_text := get_row_error_text;
                   my_total_text := '';
                   DELETE edr_report_by_hour_output
                   WHERE row_type = 'Summary Row'
                   AND row_type = 'Final Row';
              END IF;     
    COMMIT;
    my_report_data_statement :=
    'SELECT rank "Rank", '
    || ' ROW_TYPE "Row Type", '
    || ' interval_start_date_time "Date", '
    || ' interval_start_date_time, '
    || ' hour_label "Chart X-Axis", '
    || ' lane_id "Group Id" , '
    || ' ''None'' "Group Name", '
    || ' hour_label "Hour" '
    || my_error_text
    || my_total_text
    || ' FROM edr_report_by_hour_output '
    || ' ORDER BY lane_id, '
    || ' direction_id, '
    || ' interval_start_date_time, '
    || ' hour_end, '
    || ' rank, '
    || ' hour_start'
    dbms_output.put_line('SQL start------------------------');
    dbms_output.put_line(my_report_data_statement);
    dbms_output.put_line('SQL end--------------------------');
    my_chart_data_statement :=
    ' SELECT hour_start "X Axis", '
    || ' lane_id "Group" '
    || edr_rpt_error_by_hour_package.get_row_error_text
    || ' FROM '
    || ' ( '
    || ' SELECT lane_id, '
    || ' direction_id, '
    || ' hour_start, '
    || ' hour_end, '
    || ' min(interval_start_date_time) interval_start_date_time, '
    || ' max(interval_end_date_time) interval_end_date_time '
    || ' FROM edr_report_by_hour_output '
    || ' WHERE hour_end = hour_start + 1 '
    || ' GROUP BY lane_id, direction_id, hour_start, hour_end '
    || ' ) '
    || ' order by "Group", hour_start '
    dbms_output.put_line('SQL start------------------------');
    dbms_output.put_line(my_chart_data_statement);
    dbms_output.put_line('SQL end--------------------------');
    SELECT my_used_data_type
    INTO my_data_type_used
    FROM SYS.DUAL;
    SELECT NVL(COUNT(record_id), 0)
    INTO my_per_vehicle_total
    FROM edr_error_by_hour_veh_data;
    SELECT NVL(COUNT(record_id), 0)
    INTO my_status_vehicle_total
    FROM edr_error_by_hour_veh_data
    WHERE vehicle_status > 0
    AND vehicle_error_count = 0;
    SELECT NVL(COUNT(record_id), 0)
    INTO my_error_vehicle_total
    FROM edr_error_by_hour_veh_data
    WHERE vehicle_error_count > 0;
    SELECT NVL(COUNT(record_id), 0)
    INTO my_status_clear_total
    FROM edr_error_by_hour_veh_data
    WHERE vehicle_status = 0
    AND vehicle_error_count = 0;
    SELECT NVL(SUM(error_count), 0)
    INTO my_binned_vehicle_total
    FROM edr_error_by_hour_report_data;
    SELECT NVL(COUNT(DISTINCT edr_error_by_hour_veh_data.record_id), 0)
    INTO my_good_weight_total
    FROM edr_error_by_hour_veh_data
    WHERE vehicle_error_count = 0
    AND BITAND(vehicle_status, my_good_weight_statuses_mask) = 0;
    -- insert vehicle totals into the temporary table
    DELETE FROM edr_rpt_tmp_veh_totals_table;
    INSERT INTO edr_rpt_tmp_veh_totals_table
    data_type_used,
    per_vehicle_total,
    binned_vehicle_total,
    error_vehicle_total,
    status_vehicle_total,
    good_weight_total,
    status_clear_total
    SELECT my_data_type_used,
    my_per_vehicle_total,
    my_binned_vehicle_total,
    my_error_vehicle_total,
    my_status_vehicle_total,
    my_good_weight_total,
    my_status_clear_total
    FROM SYS.DUAL;
    -- execute the query into the output refcursor
    OPEN report_data FOR
    my_report_data_statement;
    OPEN chart_data FOR
    my_chart_data_statement;
    OPEN footer_data FOR
    SELECT data_type_used,
    per_vehicle_total,
    binned_vehicle_total,
    error_vehicle_total,
    status_vehicle_total,
    good_weight_total,
    status_clear_total
    FROM edr_rpt_tmp_veh_totals_table;
    END edr_rpt_gen_error_by_hour;
    END edr_rpt_error_by_hour_package;
    {code}

    Hi,
    Thx for the reply.
    As the store proc is inside the package and its invoked in visual studio.
    I used to compile the pkg in SQL plus and it throws the error as ' wrong number or types of argument in a call to the stored proc 'edr_rpt_gen_error_by_hour'
    As I'm new to pl/sql programming , i really dont know how to pass value to the input parameter.
    Edited by: user10641405 on Nov 18, 2009 7:27 PM
    Edited by: user10641405 on Nov 18, 2009 7:29 PM

  • Setarraybo​unds to modify array get error-1732​5,wrong number of array indices

    hello:
       i tried to use setarraybounds(Locals.Raw_values,"[1]","[6][0][0]"​) to set new bounds value of original array[1][1200]
    but get error: -17325,wrong number of array indices
    and use setarraybounds(Locals.Raw_values,"[0][0][1]","[6][​0][0]") gets error-17324,array index out of bounds
    what can i do?

    now i know i should use "[600]", thanks

  • PLS-00306 wrong number or types of arguments in call to 'procedure'

    now i am using oracle10g xe , i get the following error
    create or replace procedure proc_name(slno_in in number,
    name_out out varchar2,fee_out out number)
    is
    v_name student.name%type;
    v_fee student.fee%type;
    begin
    select name,fee into v_name,v_fee from
    student where slno=slno_in;
    name_out := v_name;
    fee_out := v_fee;
    end proc_ref;
    Procedure created.
    SQL> exec proc_name(1);
    BEGIN proc_ref(1); END;
    ERROR at line 1:
    ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in call to 'PROC_REF'
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    please help me

    You have a procedure with three arguments
    >
    create or replace procedure proc_name(slno_in in number,
    name_out out varchar2,fee_out out number)You then call it by providing one argument
    >
    SQL> exec proc_name(1);
    BEGIN proc_ref(1); END;
    You get an error saying wrong number of arguments.
    PLS-00306: wrong number or types of arguments in call to 'PROC_REF'
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    I don't see how it can be any clearer, call the procedure with three arguments.
    var string varchar2(100)
    var num number
    exec proc_ref(1, :string, :num)

  • Getting error wrong number or type of parameters for EAM_PROCESS_WO_PUB

    Hi All,
    I am Getting error wrong number or type of parameters for EAM_WO_PROCESS_PUB.PROCESS_WO API, pls any body can help me,pls send code for
    EAM_WO_PROCESS_PUB.PROCESS_WO API.
    Thanks&Reagrds,
    Hanimi Reddy.

    Hi srini,
    I developed code for work order api EAM_PROCESS_WO_PUB.PROCESS_MASTER_CHILD_WO following and i am getting error wrong number or types of arguments in call to 'PROCESS_MASTER_CHILD_WO, pls see the code and help me
    CREATE OR REPLACE PROCEDURE SANG_WR_TO_WO_API/*(ERRBUF OUT VARCHAR2, RETCODE OUT VARCHAR2)*/ IS
    v_created_by number;
    v_updated_by number;
    v_updated_name varchar2(30);
    V_ENTITY_ID VARCHAR2(30);
    l_EAM_WO_RELATIONS_TBL EAM_PROCESS_WO_PUB.EAM_WO_RELATIONS_TBL_type ;
    --:= EAM_PROCESS_WO_PUB.g_miss_EAM_WO_RELATIONS_rec;
    l_eam_wo_tbl EAM_PROCESS_WO_PUB.eam_wo_rec_type; --:= EAM_PROCESS_WO_PUB.G_MISS_EAM_WO_rec;
    l_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_tbl_type ;--:= EAM_PROCESS_WO_PUB.G_MISS_eam_op_tbl;
    l_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_op_network_tbl;
    l_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type;--:= EAM_PROCESS_WO_PUB.G_MISS_eam_res_tbl;
    l_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_res_inst_tbl;
    l_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_sub_res_tbl ;
    -- l_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type := EAM_PROCESS_WO_PUB.G_MISS_eam_res_usage_tbl;
    l_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_mat_req_tbl ;
    l_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_direct_items_tbl ;
    l_x_eam_wo_tbl EAM_PROCESS_WO_PUB.eam_wo_rec_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_wo_rec;
    l__x_EAM_WO_RELATIONS_TBL EAM_PROCESS_WO_PUB.EAM_WO_RELATIONS_TBL_type ;--:= EAM_PROCESS_WO_PUB.g_miss_EAM_WO_RELATIONS_TBL;
    l_x_eam_op_tbl EAM_PROCESS_WO_PUB.eam_op_rec_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_op_rec ;
    l_x_eam_op_network_tbl EAM_PROCESS_WO_PUB.eam_op_network_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_op_network_tbl;
    l_x_eam_res_tbl EAM_PROCESS_WO_PUB.eam_res_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_res_tbl;
    l_x_eam_res_inst_tbl EAM_PROCESS_WO_PUB.eam_res_inst_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_res_inst_tbl ;
    l_x_eam_sub_res_tbl EAM_PROCESS_WO_PUB.eam_sub_res_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_sub_res_tbl;
    -- l_x_eam_res_usage_tbl EAM_PROCESS_WO_PUB.eam_res_usage_tbl_type := EAM_PROCESS_WO_PUB.G_MISS_eam_res_usage_tbl ;
    l_x_eam_mat_req_tbl EAM_PROCESS_WO_PUB.eam_mat_req_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_mat_req_tbl;
    l_x_eam_direct_items_tbl EAM_PROCESS_WO_PUB.eam_direct_items_tbl_type; --:= EAM_PROCESS_WO_PUB.G_MISS_eam_direct_items_tbl ;
    l_x_return_status VARCHAR2(30);
    l_x_msg_count NUMBER;
    l_x_debug VARCHAR2(30);
    l_output_dir VARCHAR2(30);
    l_debug_filename VARCHAR2(30) ;
    l_debug_file_mode VARCHAR2(30) ;
    CURSOR CUR_WTW IS
    SELECT
    EWR.WIP_ENTITY_ID
    ,EWR.WIP_ENTITY_NAME
    ,EWR.ORGANIZATION_ID
    ,WAC.ORGANIZATION_CODE
    ,EWR.DESCRIPTION
    ,EWR.ASSET_GROUP_ID
    ,EWR.ASSET_NUMBER
    ,EWR.ASSET_NUMBER_DESCRIPTION
    ,WAC.ACCOUNTING_CLASS
    ,WAC.MATERIAL_ACCOUNT
    ,WAC.MATERIAL_OVERHEAD_ACCOUNT
    ,WAC.RESOURCE_ACCOUNT
    ,WAC.OUTSIDE_PROCESSING_ACCOUNT
    ,WAC.MATERIAL_VARIANCE_ACCOUNT
    ,WAC.RESOURCE_VARIANCE_ACCOUNT
    ,WAC.OUTSIDE_PROC_VARIANCE_ACCOUNT
    ,WAC.STD_COST_ADJUSTMENT_ACCOUNT
    ,WAC.OVERHEAD_ACCOUNT
    ,WAC.OVERHEAD_VARIANCE_ACCOUNT
    ,EWR.WORK_REQUEST_OWNING_DEPT_ID
    ,EWR.WORK_REQUEST_OWNING_DEPT
    ,EWR.WORK_REQUEST_PRIORITY_ID
    ,EWR.WORK_REQUEST_PRIORITY
    ,EWR.WORK_REQUEST_STATUS_ID
    ,WAC.ORGANIZATION_NAME
    FROM
    WIP_EAM_WORK_REQUESTS_V EWR
    ,WIPFV_ACCOUNTING_CLASSES WAC
    ,WIP_EAM_PARAMETERS WAP
    WHERE
    EWR.ORGANIZATION_ID = WAC.ORGANIZATION_ID
    AND WAC.ORGANIZATION_ID = WAP.ORGANIZATION_ID
    AND WAC.ACCOUNTING_CLASS = WAP.DEFAULT_EAM_CLASS
    AND EWR.WORK_REQUEST_STATUS = 'Awaiting Work Order';
    BEGIN
    --i number := 1;
    FND_GLOBAL.apps_initialize (1001255, 50326, 700, 0);
    V_CREATED_BY := FND_GLOBAL.USER_ID;
    V_UPDATED_BY := FND_GLOBAL.USER_ID;
    v_updated_name := FND_GLOBAL.USER_name;
    for rec in cur_wtw loop
    l_eam_wo_tbl.WIP_ENTITY_ID := rec.wip_entity_id;
    l_eam_wo_tbl.ORGANIZATION_ID := rec.ORGANIZATION_ID ;
    l_eam_wo_tbl.ASSET_NUMBER := rec.ASSET_NUMBER;
    l_eam_wo_tbl.ASSET_GROUP_ID := rec.ASSET_GROUP_ID ;
    l_eam_wo_tbl.DESCRIPTION := rec.DESCRIPTION ;
    --SELECT WIP_ENTITIES_S.NEXTval INTO V_ENTITY_ID FROM DUAL;
    EAM_PROCESS_WO_PUB.PROCESS_MASTER_CHILD_WO
    (P_PO_IDENTIFIER => 'EAM'
    ,P_API_VERSION_NUMBER => 1.0
    ,P_INIT_MSG_LIST => FALSE
    ,P_EAM_WO_RELATIONS_TBL => l_EAM_WO_RELATIONS_TBL
    ,P_EAM_WO_tbl => l_eam_wo_tbl
    , p_eam_op_tbl => l_eam_op_tbl
    , p_eam_op_network_tbl => l_eam_op_network_tbl
    , p_eam_res_tbl => l_eam_res_tbl
    , p_eam_res_inst_tbl => l_eam_res_inst_tbl
    , p_eam_sub_res_tbl => l_eam_sub_res_tbl
    --, p_eam_res_usage_tbl => l_eam_res_usage_tbl
    , p_eam_mat_req_tbl => l_eam_mat_req_tbl
    , p_eam_direct_items_tbl => l_eam_direct_items_tbl
    , x_eam_wo_tbl => l_x_eam_wo_tbl
    , X_EAM_WO_RELATIONS_TBL => l__x_EAM_WO_RELATIONS_TBL
    , x_eam_op_tbl => l_x_eam_op_tbl
    , x_eam_op_network_tbl => l_x_eam_op_network_tbl
    , x_eam_res_tbl => l_x_eam_res_tbl
    , x_eam_res_inst_tbl => l_x_eam_res_inst_tbl
    , x_eam_sub_res_tbl => l_x_eam_sub_res_tbl
    -- , x_eam_res_usage_tbl =>l_x_eam_res_usage_tbl
    , x_eam_mat_req_tbl => l_x_eam_mat_req_tbl
    , x_eam_direct_items_tbl => l_x_eam_direct_items_tbl
    , x_return_status => l_x_return_status
    , x_msg_count => l_x_msg_count
    ,p_commit =>'N'
    , p_debug => 'N'
    , p_output_dir => NULL
    , p_debug_filename => 'EAM_WO_DEBUG.log'
    , p_debug_file_mode => 'w'
    END LOOP;
    END SANG_WR_TO_WO_API;
    COMMIT;
    Thanks ,
    Hanimi

  • Why 'wrong number of parameters' error in this call to a stored procedure?

    A stored procedure exists that inserts a new record and returns the newly generated record ID. This stored procedure is called from a WinForms application but at the ExecuteNonQuery time an exception is thrown indicating that the wrong number of parameters
    has been supplied. If I take out the one parameter that is marked as ParameterDirection.Output then the ExecuteNonQuery does not throw an exception.
    CREATE PROCEDURE [dbo].[API_InsertIntoManu]
    @Name nvarchar(50),
    @Description nvarchar(2000)
    AS
    SET NOCOUNT ON
    INSERT INTO Manu (
    [Name],
    [Description]
    VALUES (
    @Name,
    @Description
    SELECT SCOPE_IDENTITY() As InsertedID
    END
    GO
    The C# code that calls the above SP looks like this:
    using (SqlConnection conn = new SqlConnection( "<snipped>" ))
    using (SqlCommand cmd = new SqlCommand( "[dbo].[API_InsertIntoManu]", conn ))
    cmd.CommandType = CommandType.StoredProcedure;
    cmd.Parameters.Add( Name, SqlDbType.NVarChar, 50 ).Value = "some name";
    cmd.Parameters.Add( Title, SqlDbType.NVarChar, 200 ).Value = "some title";
    // This parameter is supposed to receive the new row's ID but instead triggers a 'wrong number of args' exception.
    cmd.Parameters.Add( "InsertedID",SqlDbType.Int ).Direction = ParameterDirection.Output;
    conn.Open();
    // This is where the exception gets thrown.
    cmd.ExecuteNonQuery();
    iReturn = (int)cmd.Parameters[InsertedID].Value;
    Richard Lewis Haggard

    In you sp the size of Title var is 2000 and not 200, correct this:
    cmd.Parameters.Add( "@Title", SqlDbType.NVarChar, 200 ).Value
    Fouad Roumieh

  • PLSQL Concurrent error: wrong number or types of arguments in call

    Hi there,
    I've defined a PLSQL Concurrent with 2 parameters:
    10) DELIVERABLE_ID using valueset 10/Number (A 10 digit positive number field with no validation)
    20) STATUS using valueset 10 Characters (10 Characters free text with no validation)
    My request run into error, with parameter values DELIVERABLE_ID = 105367,STATUS=New
    Cause: FDPSTP failed due to ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in call to 'EBOARD_WF_START'
    ORA-06550: line 1, column 7:
    But I ran the the same PLSQL from toad
    ADB_PA_BC_WF.EBOARD_WF_START (105367,'New');
    I dont have any error, it completed successfully.
    Any clue what gone wrong?

    You need to define package / procedure with RETCODE and ERRBUF arguments to call as concurrent program.
    procedure my_cp
    ( errbuf out varchar2,
    retcode out varchar2,
    p_arg1 in varchar2,
    p_arg2 in varchar2
    Regards,
    Gareth

  • Wrong number or types of parameters after upgrading to ODP 11.2.0.1.1 Beta

    Hi,
    I have the below Oracle procedure with two parameters , the first one i IS TABLE OF number INDEX BY BINARY_INTEGER, and the second one is of type Ref cursor of predifned RECORD type.
    PROCEDURE Proc1(p_proj_comp_no_list IN core_util.ref_t,
    p_proj_comp_post_query_cursor OUT t_proj_comp_post_query_cursor
    ) IS
    This has been working fine while we were using DEVART Oracle drivers. however, as soon we move to ODP 11.2.0.1.1 Beta version we get the below error while executing the procedure via ODP.
    {"ORA-06550: line 1, column 7:\nPLS-00306: wrong number or types of arguments in call to 'PROJ_COMP_POST_QUERY'\nORA-06550: line 1, column 7:\nPL/SQL: Statement ignored"}
    Below is the debug watch result of the two parameters of the COMMAND being executed.
    Best Regards,
    Prabhakar
    +          *base     {P_PROJ_COMP_NO_LIST}     System.Data.Common.DbParameter {Oracle.DataAccess.Client.OracleParameter}*
              ArrayBindSize     null     int[]
              ArrayBindStatus     null     Oracle.DataAccess.Client.OracleParameterStatus[]
              CollectionType     None     Oracle.DataAccess.Client.OracleCollectionType
              DbType     String     System.Data.DbType
              Direction     Input     System.Data.ParameterDirection
              IsNullable     false     bool
              Offset     0     int
              OracleDbType     Long     Oracle.DataAccess.Client.OracleDbType
              OracleDbTypeEx     Long     Oracle.DataAccess.Client.OracleDbType
              ParameterName     "P_PROJ_COMP_NO_LIST"     string
              Precision     0     byte
              Scale     0     byte
              Size     1     int
              SourceColumn     ""     string
              SourceColumnNullMapping     false     bool
              SourceVersion     Current     System.Data.DataRowVersion
              Status     Success     Oracle.DataAccess.Client.OracleParameterStatus
              UdtTypeName     ""     string
    +          Value     {long[1]}     object {long[]}
    +          Static members          
    +          Non-Public members          
    -          [1]     {P_PROJ_COMP_POST_QUERY_CURSOR}     object {Oracle.DataAccess.Client.OracleParameter}
    +          *base     {P_PROJ_COMP_POST_QUERY_CURSOR}     System.Data.Common.DbParameter {Oracle.DataAccess.Client.OracleParameter}*
              ArrayBindSize     null     int[]
              ArrayBindStatus     null     Oracle.DataAccess.Client.OracleParameterStatus[]
              CollectionType     None     Oracle.DataAccess.Client.OracleCollectionType
              DbType     Object     System.Data.DbType
              Direction     Output     System.Data.ParameterDirection
              IsNullable     false     bool
              Offset     0     int
              OracleDbType     RefCursor     Oracle.DataAccess.Client.OracleDbType
              OracleDbTypeEx     RefCursor     Oracle.DataAccess.Client.OracleDbType
              ParameterName     "P_PROJ_COMP_POST_QUERY_CURSOR"     string
              Precision     0     byte
              Scale     0     byte
              Size     0     int
              SourceColumn     ""     string
              SourceColumnNullMapping     false     bool
              SourceVersion     Current     System.Data.DataRowVersion
              Status     Success     Oracle.DataAccess.Client.OracleParameterStatus
              UdtTypeName     ""     string
    +          Value     {}     object {System.DBNull}
    +          Static members          
    +          Non-Public members

    Hi,
    Can you please show the actual code that creates and appends the parameters instead, along with cmd.commandtext?
    Thanks
    Greg
    Edited by: gdarling on Jun 30, 2010 11:54 AM
    Also note that unless you're using Oracle Developer Tools for VS to generate the code, this would probably be more appropriate in the ODP forum:
    ODP.NET

  • Exception has occurred during data insertion ... Wrong number of parameters

    I am using an ADO dataflow source and an ADO dataflow destination to move data from a table on an IBM iSeries DB2 database to another IBM iSeries DB2 database on another machine.  The connection managers for source and destination both use .Net Providers\Odbc
    Data Provider with the Data Source Specification being ODBC connections specified on the Windows Server 2008 r2 machine hosting bids.  All the test connections work...so far so good.
    Issue is when I execute the control flow task the rows get picked up from the source DB2 database no problem but it fails on the insert to the destination DB2 table...The progress tab specifies the exceptions...
    [ADO NET Destination [601]] Error: An exception has occurred during data insertion, the message returned from the provider is: ERROR [07002] [IBM][System i Access ODBC Driver]Wrong number of parameters.
    [SSIS.Pipeline] Error: SSIS Error Code DTS_E_PROCESSINPUTFAILED.  The ProcessInput method on component "ADO NET Destination" (601) failed with error code 0xC020844B while processing input "ADO NET Destination Input" (604). The identified
    component returned an error from the ProcessInput method. The error is specific to the component, but the error is fatal and will cause the Data Flow task to stop running.  There may be error messages posted before this with more information about the
    failure.
    I put a data viewer on the data flow connection and the records I expect are  getting picked up and look ok. I checked to make sure the source and destination tables have the same number of columns in their record layout and identical data
    types and they look fine.
    Could someone kindly tell me whats going wrong?  Does the error message indicate that some of the columns are getting dropped from the dataset before the insert?
    Thanks much in advance for any help, Roscoe

    Hi Roscoe,
    Glad to hear that you have found the root cause. So, the issue occurs because numeric values with no decimal cannot be inserted into the Decimal data type column in the DB2 table. In SSIS, data type Decimal of DB2 database is mapped to data type DT_NUMERIC.
    To address the issue, you can do a data conversion for the column in question to define its precision and scale such as DT_NUMERIC(9,2) by using the Data Conversion Transformation before the ADO NET Destination.
    Regards,
    Mike Yin
    If you have any feedback on our support, please click
    here
    Mike Yin
    TechNet Community Support

  • Wrong number of parameters exception when using PreparedStatement

    Hi,
    I'm getting Wrong number of parameters exception when using a prepared statement. It's very weird. The code is:
    sqlstmt="update blah1 set blah2=? where blah3=?";
    myps = Conn.prepareStatement(sqlstmt);
    myps.setString(1, p1);
    myps.setInt(2, p2);
    myps.executeUpdate(sqlstmt);
    The error is:
    SQLException: [IBM][CLI Driver] CLI0100E Wrong number of parameters. SQLSTATE=07001:07001
    Could someone please help? Thanks
    Mahdad

    Hi and thanks for the reply.
    Actually this is the try block...
    The variable's defintions are correct.
    PreparedStatement myps;
    try {
    sqlstmt="update blah1 set blah2=? where blah3=?";
    myps = Conn.prepareStatement(sqlstmt);
    myps.setString(1, blah4);
    myps.setInt(2, blah5);
    myps.executeUpdate(sqlstmt);
    catch (SQLException e) {
    System.out.println("SQLException: " + e.getMessage() + ":" + e.getSQLState());
    blah6++;

  • Error running a procedure in Python: (wrong number or types of arguments)

    I am getting the following error when trying o execute a stored procedure in python.
    cx_Oracle.DatabaseError: ORA-06550: line 1, column 7:
    PLS-00306: wrong number or types of arguments in call to 'LOAD_FILE1'
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    When executed from the SQL Plus or sql developer the same procedure runs without any issue. The following is the code of the called procedure:
    create or replace
    PROCEDURE load_file1 (
    P_FILE_NAME in varchar2)* IS
    src_file BFILE;
    dst_file BLOB;
    lgh_file BINARY_INTEGER;
    BEGIN
    src_file := bfilename('inbox_scnr_dir', P_FILE_NAME);
    -- insert a NULL record to lock
    the above procedure updates creates and updates a record in the table.
    I am calling the above procedure as follows in my python code , see the curs.callproc("load_file1",osfile)
    for filename in files:
    osfile = doc_number(filename)
    curs.callproc("load_file1",osfile)+
    db.commit()
    As you can see I am giving only one argument and the type is string as well, it passes the filename like 'abx.txt' to the procedure. So I am not wrong there.
    Am I calling it in a wrong way or the cx_Oracle have some limitation about procedure callings.
    Can the gurus on the forum help me please. Just need a direction to resolve this , if you can guide me.
    Thanks
    Edited by: user10903866 on Feb 28, 2013 5:54 AM
    Edited by: user10903866 on Feb 28, 2013 6:45 AM

    CREATE OR REPLACE
    PACKAGE TESTER AS
    TYPE t_ref_cur IS REF CURSOR;
    PROCEDURE getRS (p_recordset OUT t_ref_cur);
    END;
    CREATE OR REPLACE
    PACKAGE BODY TESTER AS
    PROCEDURE getRS (p_recordset OUT t_ref_cur) AS
    BEGIN
    OPEN p_recordset FOR
    SELECT
    name,
    value
    FROM
    Parameters;
    END;
    END;For this type of procedure call, you should first have the ref cursor declaration like below
    declare
    cur tester.t_ref_cur;
    begin
    tester.getRS (cur);
    for i in cur
    loop
    dbms_output.put_line(i.name);
    end loop;
    close cur;
    end;Using sys_refcursor also, your handling will be same as shown above......sys_refcursor and normal weak ref cursor only make difference if it is stand alone procedure

Maybe you are looking for

  • Kodak Easy Share Crashes When importing From iPhoto 7.1.5

    Hi, just tried exporting to Kodak Easy Share and received this long error report. Can anyone help? Kodak EasyShare Version 6.1 (Build 84) Mac OS Version 10.6.1 (Build 10B504) * Crash log * * No log available (log file not found) * * Trace Log *: l] (

  • Sync send step in BPM fails and cant be resend   XI

    Hi Forum, I have a file ->JDBC(Sync)->file scenario, with a BPM, having a synchronous send ........ sending and receiving message from a SQL Server, the problem is ........... sometimes the synchronous send to the JDBC fails, bcoz of purely database

  • Photoshop doesn't open after install.

    I've installed trial version of PS latest version and when I try to open it gives me error message. Please help. Regards

  • Integration of SSO with Third Party Application

    Hello Colleagues, I have requirement where I have to integrate SSO with a third party application. After some R & D I found out that there is some one class "SSO2Ticket.java" which can do that or help in verify the ticket. Since I am new to this area

  • What issues are there in upgrading from LabVIEW 4.0 up to LabVIEW 6.1?

    I am "inheriting" a LabVIEW 4.0 application that is running on an old (133MHz) Pentium PC with the Windows95 OS. I would like to upgrade the PC to a more recent CPU running Windows2000. I also want to upgrade LabVIEW to version 6.1. Are there any iss