Problem with BULK collect and variable of Table type

Hi all
I defined a record type and then set an index - by table of this record type and in bulk has collected the data as shown in the code below. All this was done in an anonymous block.

Then when I tried to set the record as an object type and not the above activities type, I got the below error:

ORA-06550: line 34, column 6:
PL/SQL: ORA-00947: not enough values
ORA-06550: line 31, column 4:
PL/SQL: SQL statement ignored

Could you help me get the result of the first scenario with record type defined as an object?
/* Formatted on 2009/08/03 17:01 (Formatter Plus v4.8.8) */
DECLARE
   TYPE obj_attrib IS TABLE OF num_char_object_1
      INDEX BY PLS_INTEGER;

   obj_var   obj_attrib;

   TYPE num_char_record IS RECORD (
      char_attrib   VARCHAR2 (100),
      num_attrib    NUMBER
   );

   TYPE rec_attrib IS TABLE OF num_char_record
      INDEX BY PLS_INTEGER;

   rec_var   rec_attrib;
BEGIN
   SELECT first_name,
          employee_id
   BULK COLLECT INTO rec_var
     FROM employees
    WHERE ROWNUM <= 10;

   FOR iloop IN rec_var.FIRST .. rec_var.LAST
   LOOP
      DBMS_OUTPUT.put_line (
         'Loop.' || iloop || rec_var (iloop).char_attrib || '###'
         || rec_var (iloop).num_attrib
      );
   END LOOP;

   SELECT first_name,
          employee_id
   BULK COLLECT INTO obj_var
     FROM employees
    WHERE ROWNUM <= 10;
END;
Here's the code for num_char_object_1
CREATE OR REPLACE TYPE NUM_CHAR_OBJECt_1 IS OBJECT (
   char_attrib   VARCHAR2 (100),
   num_attrib    NUMBER
);

Welcome to the forum!

You should be collecting objects in bulk, something like

SELECT NUM_CHAR_OBJECt_1  (first_name,
          employee_id)
   BULK COLLECT INTO obj_var
     FROM emp
    WHERE ROWNUM <= 10;

Tags: Database

Similar Questions

  • Problem with bulk collect

    HII All,
    I am facing a problem with in bulk collect unable to identify where my code is wrong. When I try to run the code below its getting hanged and thus leading to the end of the session. Please help me.

    Here I am providing examples of data.

    CREATE TABLE R_DUMMY
       (FA_FAC_OS NUMBER(34,14), 
      FAC_ID VARCHAR2(10) NOT NULL, 
      SYSTEM_ID NUMBER(6,0) NOT NULL, 
      WRKNG_CPY VARCHAR2(1) NOT NULL, 
      CA_ID VARCHAR2(16) NOT NULL, 
      FA_PRNT_FAC_ID VARCHAR2(10)
       );
    
    insert into r_dummy (FA_FAC_OS, FAC_ID, SYSTEM_ID, WRKNG_CPY, CA_ID, FA_PRNT_FAC_ID)
    values (10000.00000000000000, 'FA000001', 1, 'C', 'CA2001/11/0002', '');
    
    insert into r_dummy (FA_FAC_OS, FAC_ID, SYSTEM_ID, WRKNG_CPY, CA_ID, FA_PRNT_FAC_ID)
    values (500.00000000000000, 'FA000005', 1, 'C', 'CA2001/11/0002', '');
    
    insert into r_dummy (FA_FAC_OS, FAC_ID, SYSTEM_ID, WRKNG_CPY, CA_ID, FA_PRNT_FAC_ID)
    values (-500.00000000000000, 'FA000008', 1, 'C', 'CA2001/11/0002', '');
    
    insert into r_dummy (FA_FAC_OS, FAC_ID, SYSTEM_ID, WRKNG_CPY, CA_ID, FA_PRNT_FAC_ID)
    values (600.00000000000000, 'FA000013', 1, 'C', 'CA2001/11/0002', '');
    
    insert into r_dummy (FA_FAC_OS, FAC_ID, SYSTEM_ID, WRKNG_CPY, CA_ID, FA_PRNT_FAC_ID)
    values (600.00000000000000, 'FA000018', 1, 'C', 'CA2001/11/0002', '');
    
    insert into r_dummy (FA_FAC_OS, FAC_ID, SYSTEM_ID, WRKNG_CPY, CA_ID, FA_PRNT_FAC_ID)
    values (700.00000000000000, 'FA000020', 1, 'C', 'CA2001/11/0002', '');
    
    insert into r_dummy (FA_FAC_OS, FAC_ID, SYSTEM_ID, WRKNG_CPY, CA_ID, FA_PRNT_FAC_ID)
    values (1200.00000000000000, 'FA000022', 1, 'C', 'CA2001/11/0002', '');
    
    CREATE TABLE R_DUMMY_1
       (FA_FAC_OS NUMBER(34,14), 
         FAC_ID VARCHAR2(10) NOT NULL,
         SYSTEM_ID NUMBER(6,0) NOT NULL,
         VER_NUM NUMBER(4,2) NOT NULL
       );
    
    insert into r_dummy_1 (FA_FAC_OS, FAC_ID, SYSTEM_ID, VER_NUM)
    values (10000.00000000000000, 'FA000001', 1, 3.00);
    
    insert into r_dummy_1 (FA_FAC_OS, FAC_ID, SYSTEM_ID, VER_NUM)
    values (10000.00000000000000, 'FA000001', 1, 2.00);
    
    insert into r_dummy_1 (FA_FAC_OS, FAC_ID, SYSTEM_ID, VER_NUM)
    values (10000.00000000000000, 'FA000001', 1, 1.00);
    
    insert into r_dummy_1 (FA_FAC_OS, FAC_ID, SYSTEM_ID, VER_NUM)
    values (500.00000000000000, 'FA000005', 1, 3.00);
    
    insert into r_dummy_1 (FA_FAC_OS, FAC_ID, SYSTEM_ID, VER_NUM)
    values (500.00000000000000, 'FA000005', 1, 2.00);
    
    insert into r_dummy_1 (FA_FAC_OS, FAC_ID, SYSTEM_ID, VER_NUM)
    values (500.00000000000000, 'FA000005', 1, 1.00);
    
    insert into r_dummy_1 (FA_FAC_OS, FAC_ID, SYSTEM_ID, VER_NUM)
    values (-500.00000000000000, 'FA000008', 1, 3.00);
    
    insert into r_dummy_1 (FA_FAC_OS, FAC_ID, SYSTEM_ID, VER_NUM)
    values (-500.00000000000000, 'FA000008', 1, 2.00);
    And my block of pl sql
    Set serveroutput on;
    
    Declare
              vPkgCaId          r_dummy.ca_id%type          := 'CA2001/11/0002';
              vPkgSystemId     r_dummy.system_id%type     := 1;
              vPkgWrkFlg          r_dummy.WRKNG_CPY%type     :=  'C';
    
              
    
              
              type t_type is object
                                       (
                                       v_FA_FAC_OS     r_dummy.FA_FAC_OS%type,
                                       v_FAC_ID     r_dummy.FAC_ID%type,
                                       v_SYSTEM_ID     r_dummy.SYSTEM_ID%type,
                                       v_ver_num     r_dummy_1.ver_num%type
                                       );
    
              type t_col_tbl is table of t_type index by binary_integer;
              
              l_col_tbl     t_col_tbl;
              
              
              
              
              
              --fac_id,system_id,ver_num is composite primary key for CP_CA_FAC_VER
    Begin
              
                        SELECT     fac.FA_FAC_OS,fac.FAC_ID,fac.SYSTEM_ID,ver.ver_num
                        bulk collect into l_col_tbl
                        FROM     r_dummy fac,r_dummy_1 ver
                        WHERE     fac.fac_id = ver.fac_id
                        and fac.system_id = ver.system_id
                        and fac.CA_ID = vPkgCaId
                        AND fac.SYSTEM_ID = vPkgSystemId
                        AND fac.WRKNG_CPY = vPkgWrkFlg
                        START WITH fac.CA_ID = vPkgCaId
                                  AND fac.SYSTEM_ID = vPkgSystemId
                                  AND fac.WRKNG_CPY = vPkgWrkFlg AND fac.FA_PRNT_FAC_ID IS NULL
                        CONNECT BY PRIOR fac.FAC_ID = fac.FA_PRNT_FAC_ID
                                  AND fac.SYSTEM_ID = vPkgSystemId
                                  AND fac.WRKNG_CPY = vPkgWrkFlg;
                        
              
              forall i in 1..l_col_tbl.count
    
                   
                   update     r_dummy_1 ver
                   set          ver.FA_FAC_OS           = l_col_tbl(i).v_FA_FAC_OS
                   where     fac_id                    = l_col_tbl(i).v_FAC_ID
                             and system_id          = l_col_tbl(i).v_system_id
                             and ver_num               = l_col_tbl(i).v_ver_num
                             ;
              
    
              Commit;
    
    End;
    /
    Please help me. I was able to do to help collect cursor instead in bulk, but think that bulk collect will result in better performance. Please suggest if my code needs no changes.


    Concerning
    Rambeau

    I'd rather do it right SQL which is much faster that COLLECT in BULK

     UPDATE r_dummy_1 ver
        SET ver.FA_FAC_OS =
            (
              SELECT fa_fac_os
                FROM (
                        SELECT fac.FA_FAC_OS,fac.FAC_ID,fac.SYSTEM_ID,ver.ver_num
                          FROM r_dummy fac,r_dummy_1 ver
                         WHERE fac.fac_id = ver.fac_id
                           and fac.system_id = ver.system_id
                           and fac.CA_ID = vPkgCaId
                           AND fac.SYSTEM_ID = vPkgSystemId
                           AND fac.WRKNG_CPY = vPkgWrkFlg
                         START WITH fac.CA_ID = vPkgCaId
                           AND fac.SYSTEM_ID = vPkgSystemId
                           AND fac.WRKNG_CPY = vPkgWrkFlg
                           AND fac.FA_PRNT_FAC_ID IS NULL
                       CONNECT BY PRIOR fac.FAC_ID = fac.FA_PRNT_FAC_ID
                           AND fac.SYSTEM_ID = vPkgSystemId
                           AND fac.WRKNG_CPY = vPkgWrkFlg
                     ) t
               WHERE t.fac_id = ver.fac_id
                 AND t.system_id = ver.system_id
                 AND t.ver_num = ver.ver_num
            )
      WHERE EXISTS
            (
              SELECT fa_fac_os
                FROM (
                        SELECT fac.FA_FAC_OS,fac.FAC_ID,fac.SYSTEM_ID,ver.ver_num
                          FROM r_dummy fac,r_dummy_1 ver
                         WHERE fac.fac_id = ver.fac_id
                           and fac.system_id = ver.system_id
                           and fac.CA_ID = vPkgCaId
                           AND fac.SYSTEM_ID = vPkgSystemId
                           AND fac.WRKNG_CPY = vPkgWrkFlg
                         START WITH fac.CA_ID = vPkgCaId
                           AND fac.SYSTEM_ID = vPkgSystemId
                           AND fac.WRKNG_CPY = vPkgWrkFlg
                           AND fac.FA_PRNT_FAC_ID IS NULL
                       CONNECT BY PRIOR fac.FAC_ID = fac.FA_PRNT_FAC_ID
                           AND fac.SYSTEM_ID = vPkgSystemId
                           AND fac.WRKNG_CPY = vPkgWrkFlg
                     ) t
               WHERE t.fac_id = ver.fac_id
                 AND t.system_id = ver.system_id
                 AND t.ver_num = ver.ver_num
            )      
    
  • problem with the collection and refcursor

    I have the 'ServerDisconnect2' function below. It should return as 'ref_cursor' on the parameter that is a data container of deleted rows slider, Java developers insist on using this type of data/collection. I don't know how to code to return the values of ID removed as 'ref_cursor '. See commented "open pDeleteList" - sentence, it is commented as does not compile.
    CREATE OR REPLACE PACKAGE oe_ctx AS
      TYPE gIntegerTable IS TABLE OF INTEGER INDEX BY BINARY_INTEGER;
      TYPE cursor_type IS REF CURSOR;
    ....
    
      PROCEDURE ServerDisconnect2(pCasinoCode NUMERIC, pCasinoServerCode NUMERIC, pChannelServerCode CurrentLogins.ChannelServerCode%TYPE, pDeleteList OUT cursor_type) 
      IS
        vDeleteList oe_ctx.gIntegerTable;
      BEGIN
        DELETE FROM
        (
           SELECT cl.* FROM CurrentLogins cl, Accounts a
           WHERE cl.CasinoCode = pCasinoCode
           AND cl.CasinoServerCode = pCasinoServerCode
           AND cl.ChannelServerCode = pChannelServerCode
           AND cl.Code = a.code
           AND a.Type = 'lplayer'
           ORDER BY a.code
        ) RETURNING Code
          BULK COLLECT INTO vDeleteList;
          
    /*    OPEN pDeleteList FOR
          SELECT * FROM TABLE(vDeleteList);*/
          
        COMMIT;
      END ServerDisconnect2;
    Is it possible to convert the variable 'vDeleteList' in ref_cursor?
    So my only solution would be to open the ref_cursor BEFORE delete-clause with the same query delete clause has. But I'm afraid that then after opening the instant cursor after a milliseconds the deletion clause removes different lines and the procedure would be data incorrect in pDeleteList.

    Published by: CharlesRoos on August 26, 2010 06:10

    You need a collection of sql (created with CREATE TYPE...):

    I'll use the predefined collection sys.odcivarchar2list demonstation purposes:

    SQL> var cur refcursor
    
    SQL> declare
       ret_coll       sys.odcivarchar2list;
    begin
       delete from emp
         returning ename
              bulk collect into ret_coll;
    
       open :cur for select * from table (ret_coll);
    end;
    /
    PL/SQL procedure successfully completed.
    
    SQL> print
    
    COLUMN_VALUE
    -----------------------------------------------------------------------------------------------------------------------------
    SMITH
    ALLEN
    WARD
    JONES
    MARTIN
    BLAKE
    CLARK
    SCOTT
    KING
    TURNER
    ADAMS
    JAMES
    FORD
    MILLER                                                                                                                       
    
    14 rows selected.
    
  • Bulk Collect and limit the rows

    Hello Oracles,

    I feel a strange (at least to me) behavior with lines in BULK COLLECT and LIMIT.
    For test purposes, I've written a procedure that uses a CURSOR, explicit AND implicit.
    When I use the explicit CURSOR and the LOOP, I use BULK COLLECT and LIMIT lines.
    I do not ROWNUM limit with my SELECT INTO. I know for a fact ROWNUM works very well since the last millennium.
    When I look at the number of rows returned when I put the LIMIT, I get weird number of extractions...

    I recover in a TABLE INDEX BY which is based on a TYPE of ENTRY.
    Here are a few results with different LIMIT values for a small group of key PRIMARIES.
    The figures below are the value of my_table . COUNTY

    Any idea would be apreciated.

    THX

    . .
    Actual number of CURSOR EXPLICIT 470553 PK = 17
    . LOOP IN BULK COLLECT LIMIT 78 retrieves: 17
    .
    Actual number of CURSOR EXPLICIT 100991 PK = 38
    . LOOP IN BULK COLLECT LIMIT 78 retrieves: 38
    .
    Actual number of CURSOR EXPLICIT 100981 PK = 183
    . LOOP IN BULK COLLECT LIMIT 78 retrieves: 27
    .
    Actual number of CURSOR EXPLICIT 101001 PK = 193
    . Retrieves LOOP IN BULK COLLECT LIMIT 78: 37
    .
    Actual number of CURSOR EXPLICIT 101033 PK = 593
    . Excerpt from LOOP BULK COLLECT LIMIT 78: 47

    *************************************************
    Actual number of CURSOR EXPLICIT 470553 PK = 17
    . LOOP IN BULK COLLECT LIMIT 100 retrieves: 17
    .
    Actual number of CURSOR EXPLICIT 100991 PK = 38
    . LOOP IN BULK COLLECT LIMIT 100 retrieves: 38
    .
    Actual number of CURSOR EXPLICIT 100981 PK = 183
    . LOOP IN BULK COLLECT LIMIT 100 retrieves: 83
    .
    Actual number of CURSOR EXPLICIT 101001 PK = 193
    . LOOP IN BULK COLLECT LIMIT 100 retrieves: 93
    .
    Actual number of CURSOR EXPLICIT 101033 PK = 593
    . LOOP IN BULK COLLECT LIMIT 100 retrieves: 93

    *************************************************

    Actual number of CURSOR EXPLICIT 470553 PK = 17
    . LOOP IN BULK COLLECT LIMIT 140 retrieves: 17
    .
    Actual number of CURSOR EXPLICIT 100991 PK = 38
    . LOOP IN BULK COLLECT LIMIT 140 retrieves: 38
    .
    Actual number of CURSOR EXPLICIT 100981 PK = 183
    . LOOP IN BULK COLLECT LIMIT 140 retrieves: 43
    .
    Actual number of CURSOR EXPLICIT 101001 PK = 193
    . LOOP IN BULK COLLECT LIMIT 140 retrieves: 53
    .
    Actual number of CURSOR EXPLICIT 101033 PK = 593
    . LOOP IN BULK COLLECT LIMIT 140 retrieves: 33

    *************************************************
    Actual number of CURSOR EXPLICIT 470553 PK = 17
    . LOOP IN BULK COLLECT LIMIT 183 retrieves: 17
    .
    Actual number of CURSOR EXPLICIT 100991 PK = 38
    . LOOP IN BULK COLLECT LIMIT 183 retrieves: 38
    .
    Actual number of CURSOR EXPLICIT 100981 PK = 183
    . LOOP IN BULK COLLECT LIMIT 183 retrieves: 0
    .
    Actual number of CURSOR EXPLICIT 101001 PK = 193
    . LOOP IN BULK COLLECT LIMIT 183 retrieves: 10
    .
    Actual number of CURSOR EXPLICIT 101033 PK = 593
    . LOOP IN BULK COLLECT LIMIT 183 retrieves: 44

    *************************************************

    Actual number of CURSOR EXPLICIT 470553 PK = 17
    . LOOP IN BULK COLLECT LIMIT 200 retrieves: 17
    .
    Actual number of CURSOR EXPLICIT 100991 PK = 38
    . LOOP IN BULK COLLECT LIMIT 200 retrieves: 38
    .
    Actual number of CURSOR EXPLICIT 100981 PK = 183
    . LOOP IN BULK COLLECT LIMIT 200 retrieves: 183
    .
    Actual number of CURSOR EXPLICIT 101001 PK = 193
    . LOOP IN BULK COLLECT LIMIT 200 retrieves: 193
    .
    Actual number of CURSOR EXPLICIT 101033 PK = 593
    . LOOP IN BULK COLLECT LIMIT 200 retrieves: 193

    *************************************************

    Actual number of CURSOR EXPLICIT 470553 PK = 17
    . LOOP IN BULK COLLECT LIMIT 600 retrieves: 17
    .
    Actual number of CURSOR EXPLICIT 100991 PK = 38
    . LOOP IN BULK COLLECT LIMIT 600 retrieves: 38
    .
    Actual number of CURSOR EXPLICIT 100981 PK = 183
    . LOOP IN BULK COLLECT LIMIT 600 retrieves: 183
    .
    Actual number of CURSOR EXPLICIT 101001 PK = 193
    . LOOP IN BULK COLLECT LIMIT 600 retrieves: 193
    .
    Actual number of CURSOR EXPLICIT 101033 PK = 593
    . LOOP IN BULK COLLECT LIMIT 600 retrieves: 593

    *************************************************
    Actual number of CURSOR EXPLICIT 470553 PK = 17
    . LOOP IN BULK COLLECT LIMIT 593 retrieves: 17
    .
    Actual number of CURSOR EXPLICIT 100991 PK = 38
    . LOOP IN BULK COLLECT LIMIT 593 retrieves: 38
    .
    Actual number of CURSOR EXPLICIT 100981 PK = 183
    . LOOP IN BULK COLLECT LIMIT 593 retrieves: 183
    .
    Actual number of CURSOR EXPLICIT 101001 PK = 193
    . LOOP IN BULK COLLECT LIMIT 593 retrieves: 193
    .
    Actual number of CURSOR EXPLICIT 101033 PK = 593
    . LOOP IN BULK COLLECT LIMIT 593 retrieves: 0

    PL/SQL procedure successfully completed.

    SQL > spool off

    I love a mystery, so I figured out how your code might look like:

    SQL> create table t
      2  as
      3  select case n1
      4         when 1 then 470553
      5         when 2 then 100991
      6         when 3 then 100981
      7         when 4 then 101001
      8         when 5 then 101033
      9         end pk
     10    from (select level n1 from dual connect by level <= 5)
     11       , (select level n2 from dual connect by level <= 593)
     12   where (  (n1 = 1 and n2 <= 17)
     13         or (n1 = 2 and n2 <= 38)
     14         or (n1 = 3 and n2 <= 183)
     15         or (n1 = 4 and n2 <= 193)
     16         or (n1 = 5 and n2 <= 593)
     17         )
     18  /
    
    Tabel is aangemaakt.
    
    SQL> declare
      2    type ta is table of number;
      3    a_limitsizes ta := ta(78,100,140,183,200,600,593);
      4    a_pks ta := ta(470553,100991,100981,101001,101033);
      5    a ta;
      6    l_actualcount number;
      7    cursor c(b number) is select pk from t where pk = b;
      8  begin
      9    for i in a_limitsizes.first .. a_limitsizes.last
     10    loop
     11      for j in a_pks.first .. a_pks.last
     12      loop
     13        l_actualcount := 0;
     14        open c(a_pks(j));
     15        loop
     16          fetch c bulk collect into a limit a_limitsizes(i);
     17          l_actualcount := l_actualcount + a.count;
     18          exit when a.count != a_limitsizes(i);
     19        end loop;
     20        close c;
     21        dbms_output.put_line('PK ' || a_pks(j) || ' EXPLICIT CURSOR Actual Count = ' || l_actualcount);
     22        dbms_output.put_line('. LOOP BULK COLLECT LIMIT ' || a_limitsizes(i) || ' retrieves : ' || a.count);
     23        dbms_output.new_line;
     24      end loop;
     25      dbms_output.put_line('*************************************************');
     26      dbms_output.new_line;
     27    end loop;
     28  end;
     29  /
    PK 470553 EXPLICIT CURSOR Actual Count = 17
    . LOOP BULK COLLECT LIMIT 78 retrieves : 17
    
    PK 100991 EXPLICIT CURSOR Actual Count = 38
    . LOOP BULK COLLECT LIMIT 78 retrieves : 38
    
    PK 100981 EXPLICIT CURSOR Actual Count = 183
    . LOOP BULK COLLECT LIMIT 78 retrieves : 27
    
    PK 101001 EXPLICIT CURSOR Actual Count = 193
    . LOOP BULK COLLECT LIMIT 78 retrieves : 37
    
    PK 101033 EXPLICIT CURSOR Actual Count = 593
    . LOOP BULK COLLECT LIMIT 78 retrieves : 47
    
    *************************************************
    
    PK 470553 EXPLICIT CURSOR Actual Count = 17
    . LOOP BULK COLLECT LIMIT 100 retrieves : 17
    
    PK 100991 EXPLICIT CURSOR Actual Count = 38
    . LOOP BULK COLLECT LIMIT 100 retrieves : 38
    
    PK 100981 EXPLICIT CURSOR Actual Count = 183
    . LOOP BULK COLLECT LIMIT 100 retrieves : 83
    
    PK 101001 EXPLICIT CURSOR Actual Count = 193
    . LOOP BULK COLLECT LIMIT 100 retrieves : 93
    
    PK 101033 EXPLICIT CURSOR Actual Count = 593
    . LOOP BULK COLLECT LIMIT 100 retrieves : 93
    
    *************************************************
    
    PK 470553 EXPLICIT CURSOR Actual Count = 17
    . LOOP BULK COLLECT LIMIT 140 retrieves : 17
    
    PK 100991 EXPLICIT CURSOR Actual Count = 38
    . LOOP BULK COLLECT LIMIT 140 retrieves : 38
    
    PK 100981 EXPLICIT CURSOR Actual Count = 183
    . LOOP BULK COLLECT LIMIT 140 retrieves : 43
    
    PK 101001 EXPLICIT CURSOR Actual Count = 193
    . LOOP BULK COLLECT LIMIT 140 retrieves : 53
    
    PK 101033 EXPLICIT CURSOR Actual Count = 593
    . LOOP BULK COLLECT LIMIT 140 retrieves : 33
    
    *************************************************
    
    PK 470553 EXPLICIT CURSOR Actual Count = 17
    . LOOP BULK COLLECT LIMIT 183 retrieves : 17
    
    PK 100991 EXPLICIT CURSOR Actual Count = 38
    . LOOP BULK COLLECT LIMIT 183 retrieves : 38
    
    PK 100981 EXPLICIT CURSOR Actual Count = 183
    . LOOP BULK COLLECT LIMIT 183 retrieves : 0
    
    PK 101001 EXPLICIT CURSOR Actual Count = 193
    . LOOP BULK COLLECT LIMIT 183 retrieves : 10
    
    PK 101033 EXPLICIT CURSOR Actual Count = 593
    . LOOP BULK COLLECT LIMIT 183 retrieves : 44
    
    *************************************************
    
    PK 470553 EXPLICIT CURSOR Actual Count = 17
    . LOOP BULK COLLECT LIMIT 200 retrieves : 17
    
    PK 100991 EXPLICIT CURSOR Actual Count = 38
    . LOOP BULK COLLECT LIMIT 200 retrieves : 38
    
    PK 100981 EXPLICIT CURSOR Actual Count = 183
    . LOOP BULK COLLECT LIMIT 200 retrieves : 183
    
    PK 101001 EXPLICIT CURSOR Actual Count = 193
    . LOOP BULK COLLECT LIMIT 200 retrieves : 193
    
    PK 101033 EXPLICIT CURSOR Actual Count = 593
    . LOOP BULK COLLECT LIMIT 200 retrieves : 193
    
    *************************************************
    
    PK 470553 EXPLICIT CURSOR Actual Count = 17
    . LOOP BULK COLLECT LIMIT 600 retrieves : 17
    
    PK 100991 EXPLICIT CURSOR Actual Count = 38
    . LOOP BULK COLLECT LIMIT 600 retrieves : 38
    
    PK 100981 EXPLICIT CURSOR Actual Count = 183
    . LOOP BULK COLLECT LIMIT 600 retrieves : 183
    
    PK 101001 EXPLICIT CURSOR Actual Count = 193
    . LOOP BULK COLLECT LIMIT 600 retrieves : 193
    
    PK 101033 EXPLICIT CURSOR Actual Count = 593
    . LOOP BULK COLLECT LIMIT 600 retrieves : 593
    
    *************************************************
    
    PK 470553 EXPLICIT CURSOR Actual Count = 17
    . LOOP BULK COLLECT LIMIT 593 retrieves : 17
    
    PK 100991 EXPLICIT CURSOR Actual Count = 38
    . LOOP BULK COLLECT LIMIT 593 retrieves : 38
    
    PK 100981 EXPLICIT CURSOR Actual Count = 183
    . LOOP BULK COLLECT LIMIT 593 retrieves : 183
    
    PK 101001 EXPLICIT CURSOR Actual Count = 193
    . LOOP BULK COLLECT LIMIT 593 retrieves : 193
    
    PK 101033 EXPLICIT CURSOR Actual Count = 593
    . LOOP BULK COLLECT LIMIT 593 retrieves : 0
    
    *************************************************
    
    PL/SQL-procedure is geslaagd.
    

    Observation of Randolf was right: you are simply watching the last extraction of a series of extractions, which is the modulo / rest.

    Example: If your cursor retrieves a total of 183 ranks with a maximum size of 100, then your loop steps through twice. The first single 100 lines, the second 83. You print only the last extraction and not the sum of all the extractions.

    Kind regards
    Rob.

  • Problem with the report and the system of axis 2d

    Hi, I'm trying to write a script with tiara, who wrote a 2d axis system in the report but I'm having a lot of problems with it.

    What I'm trying to do, is make 3 or more system axis 2d in the report, each displaying a part of the data of 2 channels (x = ch0, ch1 = y).

    With only 1 graphic I get what I want, but when I try to add the 2nd or the 3rd, they show without my defined x-scale and with the offset x different from the first chart.

    I tried everything, but I could not remedy

    I added as attachments the .csv file that I use to ch0 and ch1 and 2 screen shoots "what I get" (about the problem with the script) and "what I hope to get" (done manually, is what I'm trying to get the report)

    Any help will be appreciated, thanks in advance

    Ierman

    I'll post my code here:

    Dim Xscale, Yscale
    XScale = Array (0,25,0,5,49)
    Yscale = Array(-0.2,0.2,-0.2,10,4)
     
    Call PicDelete()
    Call GraphObjNew ("2D-Axis", "2DAxis1")
    Call GRAPHObjOpen ("2DAxis1")
    D2AxisTop = 1

    D2AxisBottom = 70
    D2AxisLeft = 1
    D2AxisRight = 1
    Call GRAPHObjOpen ("2DYAxis1_1")
    D2AxisyScaleType = "manual".
    D2AXISYBEGIN = Yscale (0)
    D2AXISYEND = Yscale (1)
    D2AXISYORIGIN = Yscale (2)
    D2AXISYTICK = Yscale (3)
    D2AXISYMINITICK = Yscale (4)
    Call GRAPHObjClose ("2DYAxis1_1")
    Call GRAPHObjOpen ("2DXAxis1_1")
    D2AxisxScaleType = "manual".
    D2AXISXBEGIN = Xscale (0)
    D2AXISXEND = Xscale (1)
    D2AXISXORIGIN = Xscale (2)
    D2AXISXTICK = Xscale (3)
    D2AXISXMINITICK = Xscale (4)
    D2AxisXTxt = ""

    D2AxisXColor = 'black '.

    D2AxisXTickAuto = 1
    D2MTickLineWidth (1) = 0.1
    D2MTickLineType (1) = "solid".
    D2AxisXTickSize = 60
    D2AxisXTxtAutoCo = 0
    D2MTickColor = "red".
    Call GRAPHObjClose ("2DXAxis1_1")
    Call GraphObjNew("2D-Curve","New_Curve")

    Call GraphObjOpen ("New_Curve")

    D2CCHNX = "[1] / [1]" "

    D2CCHNY = "[1] / [2]" "

    D2CurveColor = "red".
    Call GraphObjClose ("New_Curve")
    Call GRAPHObjClose ("2DAxis1")

    Dim Xscale1, Yscale1
    Xscale1 = Array (25,50,0,5,49)
    Yscale1 = Array(-0.2,0.2,-0.2,10,4)
    Call GraphObjNew ("2D-Axis", "grafic")
    Call GRAPHObjOpen ("grafic")
    D2AxisTop = 40

    D2AxisBottom = 37
    D2AxisLeft = 1
    D2AxisRight = 1
    Call GRAPHObjOpen ("2DYAxis1_2")
    D2AxisyScaleType = "manual".
    D2AXISYBEGIN = Yscale1 (0)
    D2AXISYEND = Yscale1 (1)
    D2AXISYORIGIN = Yscale1 (2)
    D2AXISYTICK = Yscale1 (3)
    D2AXISYMINITICK = Yscale1 (4)
    D2AxisYTxt = "" ' testo asse label y
    Call GRAPHObjClose ("2DYAxis1_2")
    Call GRAPHObjOpen ("2DXAxis1_2")
    D2AxisxScaleType = "manual".
    D2AXISXBEGIN = Xscale1 (0)
    D2AXISXEND = Xscale1 (1)
    D2AXISXORIGIN = Xscale1 (2)
    D2AXISXTICK = Xscale1 (3)
    D2AXISXMINITICK = Xscale1 (4)
    D2AxisXTxt = «»

    D2AxisXColor = 'black '.

    D2AxisXTickAuto = 1
    D2MTickLineWidth (1) = 0.1
    D2MTickLineType (1) = "solid".
    D2AxisXTickSize = 60
    D2AxisXTxtAutoCo = 0
    D2MTickColor = "red".
    Call GRAPHObjClose ("2DXAxis1_2")
    Call GraphObjNew("2D-Curve","New_Curve1")

    Call GraphObjOpen ("New_Curve1")

    D2CCHNX = "[1] / [1]" "

    D2CCHNY = "[1] / [2]" "

    D2CurveColor = "red".
    Call GraphObjClose ("New_Curve1")
    Call GRAPHObjClose ("grafic")

    Hi lerman,.

    Here is an edited version of your code that works on my computer.  A problem that I know that I fixed it was that your presentation of the STATE was in the name-oriented mode but you use the variables based on the number to assign it X and Y channels.  The execution of these commands in a loop FOR makes it much easier to debug the code and to avoid any annoyance at first.

    Brad Turpin
    Tiara Product Support Engineer

    National Instruments

  • problem with the CURSOR and WITH clause

    Hi guys,.

    I have never created a package before. I try to run it, but I get:
    ORA-06550: line 8, column 16:
    PLS-00382: expression is of the wrong type
    ORA-06550: line 8, column 3:
    PL/SQL: Statement ignored

    I know that my problem is in the next section

    OPEN FOR V_io_cursor

    with GOT_R_NUM like)


    Is the above correct?

    When I copy paste the "heart" of the query, it works very well. I really have a problem with the CURSOR and the declaration.

    Here's the code in its entirety. I know that the code is much more then he returned, but ignore this overload that was to do some tests to make sure that I can achieve any query request.

    CREATE OR REPLACE
    PKG_SPF_NATIONALREPORTS PACKAGE BODY IS

    PROCEDURE GET_NATIONAL_TOTAL_RESULTS (P_SelectFields IN varchar2, P_SUMFields IN varchar2, io_cursor IN OUT C_RESULTS)
    IS
    v_io_cursor C_RESULTS;

    BEGIN

    OPEN FOR V_io_cursor

    with GOT_R_NUM like)
    SELECT
    -START P_SelectFields
    r.cli_served,
    r.EIER,
    -END P_SelectFields
    r.RC,
    r.Year_ID,
    r.period_id,
    r.agreement_type_ind,
    CONTRACT_NUMBER. CONTRACT_NUMBER_TEXT,
    YEARS.year_desc,
    RC_CODE.rc_code_id,
    RC_CODE.rc_code,
    AHRDA HOLDERS. AHRDA_ID,
    AHRDA HOLDERS. REGION_ID,
    AHRDA HOLDERS. PROVINCE_ID,
    AGREEMENT_TYPE. AGREEMENT_TYPE_ID,
    AGREEMENT_TYPE. AGREEMENT_TYPE_DESC_EN,
    ROW_NUMBER() over (partition R.YEAR_ID, R.CONTRACT_Number_Text
    order by
    P.PERIOD_desc
    (/ / DESC NULLS LAST) AS r_num
    RESULT r
    JOIN period p ON r.period_id = p.period_id
    JOIN CONTRACT_NUMBER ON r.contract_number_text = CONTRACT_NUMBER. CONTRACT_NUMBER_TEXT
    JOIN RC_CODE ON contract_number.rc_code_id = rc_code.rc_code_id
    JOIN AHRDA holders ON ahrda.ahrda_id = rc_code.ahrda_id
    JOIN AGREEMENT_TYPE WE AHRDAS. AGREEMENT_TYPE_ID = AGREEMENT_TYPE. AGREEMENT_TYPE_id
    JOIN the YEARS WE r.year_id = YEARS.year_id
    )
    SELECT year_desc
    -START P_SUMFields
    SUM (cli_served) AS sum_cli_served
    The SUM (eier) AS sum_eier
    -END P_SUMFields
    OF got_r_num
    GROUP BY year_desc
    ORDER BY year_desc
    ;

    io_cursor: = v_io_cursor;

    END GET_NATIONAL_TOTAL_RESULTS;

    Agree - all this talk of loops FOR is completely irrelvant.
    A refcursor is usually the exact mechanism to return a result set.

    What is C_RESULTS?

    Just use SYS_REFCURSOR.

    No need for local variable.

    OUT why? Not just walk OUT?

    PROCEDURE GET_NATIONAL_TOTAL_RESULTS
    (P_SelectFields IN varchar2, P_SUMFields IN varchar2, io_cursor OUT SYS_REFCURSOR)
    IS
    BEGIN
     OPEN io_cursor FOR ...
    END;
    
  • Hello I have problem with my site, and mozilla. Google chrome, safari, explorer, opera work ok. Mozilla Heve problem with images?

    Hello I have problem with my site, and mozilla. Google chrome, safari, explorer, opera work ok. I have Sobipro for both the company and the logos and images without work!
    When I try to open the url is this:http://www.athens-dayandnight.gr/images/sobipro/entries/288/587_img.jpg

    whith mozilla is the following: /images/sobipro/entries\288\587_img.jpg when ichange it------with this / work.

    any idea?

    Thank you

    Hello, the URLS that contain-in their path are not valid. Firefox is less tolerant to errors in this respect than other browsers.
    Correct the path to http://www.athens-dayandnight.gr/images/sobipro/entries/288/587_img.jpg in the source code of this site or if you don't control the contact of the site their webadmin to do...

  • Satellite Pro C650D - problems with the audio and game controllers

    Hello

    I recently had problems with my microphone and speakers/headphones and game controllers.
    Sometimes the microphone stops working when on Skype, for example, but most of the time works fine, once again, when I restart the pc.

    Stakeholders sometimes still work when I connect headset.
    Some of the sounds are still coming through the speakers while some coming through the headphones.

    I have a usb game controller which also did not work everything properly.
    If I assign buttons in the program that they do not work in the game.

    All these devices are in Device Manager in a group that makes me think it's sort of annoying update doubtful that messes with them.

    Any body have similar problems or know what to do better?

    See you soon
    Laurin

    Hello

    Can you please send some details on the laptop model and the system you are using?

    With regard to the issue of sound/mic:
    > The microphone sometimes stops working when on Skype, for example, but most of the time works fine, once again, when I restart the pc.

    Are you talking about internal microphone or external? This only happens using Skype?
    In your case I would test the microphone using different applications to make sure that is not a Skype related issue.

    > Yet sometimes the speakers work when I connect headset.
    I recommend this thread:
    http://forums.computers.Toshiba-Europe.com/forums/thread.jspa?threadID=65295

    The user has had a similar problem, but this phenomenon was linked to the Realtek HD Audio Manager settings.
    She wrote:
    + In the upper right corner, there is a small yellow folder called "Connector settings" in my version. +
    + There, finally I could re-enable the setting "enable popup dialog box, when the unit is plugged. +

    + So now when I plug an external speaker or headphones, it appears, and I select the option "helmet" (instead of "line-in"), and then the sound only through the headphones/ext.speaker.+

    Regarding the game controller:
    > I have a usb game controller which also did not work everything properly.
    > If I attribute buttons in the program, they do not work in the game.
    I put t think its problem of laptop in my opinion, you must make sure that the controller is compatible with the games you play and also recommended to check some info provided by the manufacturer of the game controller.

  • How can I return to 6.3 4.0 I have never had a problem with 3.6 and now 4.0 crashes all the time tell me how to go back

    How can I return to 4.0 3.6 I've never had a problem with 3.6 and now 4.0 crashes all the time tell me how to go back

    Downgrade to Firefox 3.6 first of all uninstall Firefox 4, but do not select the option 'remove my Firefox personal data '. If you select this option, it will delete your bookmarks, passwords and other user data.

    Then you can install the latest version of Firefox 3.6 available to http://www.mozilla.com/en-US/firefox/all-older.html - it will automatically use your favorite courses, passwords etc.

    I recommend, to avoid possible problems with decommissioning, accessing your profile folder and delete the following files if they exist - extensions.cache, extensions.rdf, extensions.ini, extensions.sqlite and localstore.rdf. Delete these files will force Firefox to rebuild the list of installed extensions, check their compatibility and cancel the toolbar customizations.

    For more information on how to find your profile folder, see https://support.mozilla.com/kb/Profiles

  • Problems with wifi, bluetooth and gps in my iphone after updating iOS 6

    After that the last iOS 9.3 update my iphone 6 has problems with wifi, bluetooth and gps. Now, my wifi connection is slower and falls easily on a short distance. My bluetooth does the same. But the biggest problem is the GPS on my phone. I tried Island:

    -By doing a reset network

    -Do a reset total and restore my phone

    -To restart my phone twice.

    -Audit and third-party applications unnistalling

    Nothing works. I was in the apple store where they checked my phone and they say everything is ok with the phone. I'm not crazy, and I know when something does not work correctly. Also, I think it's iOS 9.3 update a reaponsible for my phone issues.

    Please fix bugs fast.

    Having the same exact problems since the upgrade. In addition, battery drains very quickly now, and sometimes the phone becomes very hot. It took to the Genius Bar and they told me everything was normal in the diagnostic tests. Restored, restarting, etc., and always the same problems. GPS locates me, but then don't follow my movement at all and told to go outside as the gps is not detected even if I am outside. Bluetooth connection to the car and watch grave intermittently. Signal WiFi is greatly reduced and falls easily.

  • HP 15 laptop: problem with the touchpad and the key "stuck."

    Hello!
     
    Last weekend, I have an irritating problem with my HP 15 laptop. Bought two years ago and upgrades to Windows 10 a year ago.
     
    First of all, my touchpad started to not work properly. It "freezes" and I can't use it until I click the ESC key, but it doesn't last and "freezes" again a few seconds later. Then, everytime I open a window where there is a text box (Start menu, edge browser, Control Panel, etc.), the number 5 is entered automatically and permanently, as if the button 5 has been blocked. I did a quick check and button 5 do not seem physically stuck.
     
    Yesterday, I restored the system to the factory settings, so I'm back to 8.1 for Windows and then upgraded to Windows 10. Everything seems to work fine, but this morning, the problem was back. Is there something I can do? What is the problem caused by Windows 10 or the computer? Should I restore it to Windows 8.1? Everything worked great til last weekend, I don't know what that was.
     
    Thank you in advance for your help!

    Welcome to the HP support community @gouch3.

    I understand that you have a problem with the keyboard and the touchpad on your laptop from HP 15.

    Have you tried to use a keyboard external and mouse at all?

    Have you tried to go to Safe Mode to see if the problems persist in there?

    Have you tried to perform a material or forced reset Reset?

    Did you do a test of material?

    Have you updated your drivers?

    gouch3 wrote:

    ... Is there something I can do? What is the problem caused by Windows 10 or the computer? Should I restore it to Windows 8.1? Everything worked great til last weekend, I don't know what that was.

    It could be a driver problem to be able to look at that for you, I need your model number. I wish I could give you an answer or not, but at this point without the troubleshooting results and the model number, it is difficult for me to say.

    I can say that if everything works in point 8.1 of Windows without problem, the driver TROUBLESHOOTING is a great place to start. Please try to follow these steps for the keyboard and the touchpad of troubleshooting:

    • Beginning
    • Search for Device Manager
    • Search results, open Device Manager.
    • Click on display
    • Show hidden devices.
    • Click the arrow next to keyboards.
    • Right click on the name of the keyboard device.
    • Select uninstall.
    • Continue deleting the names of devices in the category keyboards until the feature of all the names have been uninstalled.
    • Restart the laptop twice.

    Touchpad:

    • Type of research, "Device Manager."
    • Click on Device Manager,
    • Expand mice and other pointing devices.
    • Right click on the TouchPad,
    • Click on uninstall.
    • Restart the computer laptop twice,
    • Reinstall the TouchPad card.

    I found a document of troubleshooting for you to try also called Portable keyboard troubleshooting. Please be sure to follow the steps described in this document.

    The best document I have for TouchPad problems is the use and troubleshooting of the TouchPad and ClickPad document. 

    Here is a link to the HP Support Assistant, if you need it. Just download and run the application and it will help with the software and drivers that need to put up-to-date.

    This is a great question other clients may also be questioned. When we came to a resolution, please share what has worked for you with others by marking this post as an acceptable Solution. If you want to show appreciation for my efforts today, please take a second to click the Thumbs Up button below.

    If you need assistance, I would be more than happy to continue to help you. Please re-post with the results of the resolution of the problems. Could you please also provide your model number (How can I find my model number or product number?)

    Thank you!

  • Problems with Windows Update and load XP SP3

    I had a problem with my system and had to replace my HARD drive and reload XP and all my applications and data.  Now, I installed SP2 and try to install SP3. Windows Update does not work (get the 080244019 error code x) and when I try to install the SP3 files from the Microsoft site, it'll run about halfway through and then stop and hang, displaying the message "Finish Installation" with bar at halfway of the progression.  I tried the MSRT and FixIt nothing helps.  I checked services.msc to see all the required services are enabled or started.  I read that some malware will be stop some services without notice.

    After a few attempts to load the file SP3 failed, check Add/Remove programs in Control Panel Windows XP Service Pack lists 3 but no file size or to update the date information as with other programs.  My browser is IE8 and I was doing some Hot fix for Windows XP downloads, this adventure started about 3 weeks ago, but no other automatic update downloads.  I use the following McAfee provided by my ISP for protection AV and firewall with regular full scans.  Scan today revealed there is apparently a single trojan file that cannot be deleted, but there were no further details.  My system is also fully functional; I seem to get the updates for McAfee and other applications OK but not SP3.  I received or otherwise installed following updates or Hot Fix for XP downloads in the past 3 weeks:

    KB954550-v5

    KB932823-v3

    KB915800 v4

    KB884020

    KB926239

    KB2618444 (Windows IE8 security update)

    I found an answer on another forum on editing the registry for the "/ Edit EDWARD CSDVersion value ' but have not yet tried waiting for any response to this request.  I'd like some useful suggestions.  Thank you and happy new year!

    Thanks for the quick response.  I did some checking on my system, I have XP Home Edition ships with the system bought in July 2007.  Add/Remove Programs shows that the aborted install XP SP3 and IE8 installation; I tried to load the SP2 file but it doesn't show here as an addition, so it may have been part of the original XP CD and I just crush.  Even for IE7 so I am not able to drop back to all recommend you.  I will try your solution later today and post my results. I saved SP2, SP3 and IE8 in my office and a flash player to reload later according to your instructions.  Stay tuned.

    It would be unusual for a CD of Windows XP (official) to have integrated Internet Explorer 7.

  • Problems with the date and time - have to reset the date & time on reboot

    original title: problems with the date and time

    Whenever I turn on my computer (Windows XP 2002) I click on F2.  Then I re - set the date and time it occurred in January 2006 1 h every time I have turn off the computer.  Can someone tell me what I need to do?

    You need to replace the battery in time clock (RTC) real of your computer.  It can also be called the CMOS or BIOS battery.

    Many computers, this battery is an inexpensive CR2032 button available in almost every pharmacy corner.  There are, however, some computers (especially laptops) that require a different (and probably more expensive) battery.

    Whatever the expense, almost all of these batteries are easy to replace.

    To get help, post back with the brand and model of your computer.

  • I've had dramas with my photos because I got my new iphone 4s in saying that there is a problem with the properties and I can't change the format of images

    Hello

    I've had dramas with my photos because I got my new iphone 4s in saying that there is a problem with the properties and I can't change the format of images (ie the rotating EGTC)

    Now, I see the image preview and it disappears to the flower, so I did not see one of my photos

    Some would like TO help on this im so not good with this kind of thing.

    Appreciate it in advance

    Let

    Hello

    • When you change the format of images of?
    • What is Windows Explorer or Itunes?

    Try the TV activation

    Enabled and disable the Option 'show window previews (thumbnails) '.

    a. right click on the taskbar.

    b. Select Properties.

    c. check show window previews (thumbnails) "Option. .

  • I have a problem with file compression and then not be able to extract their share at a later date

    original title: file compression

    I am running Vista Home Premium on my laptop. I have problems with file compression and then not be able to extract their share at a later date. For example, I sent a file compressed to my instructor and she pointed out that she had a .zipx extension and the fact that she was unable to extract the files of ranking. Can someone help me with this problem?

    Hello

    1. do you have a third party compression/extraction of software installed on your machine?
    2. do you get an error message when you try to extract the files?
    3. is the relevant question for the particular file type?
    4. don't you make changes to your computer before the problem?

    Follow the steps and check if they help.

    Step 1:

    Open zip files is to open the folder and drag the content to another folder.

    See article:
    Compress and uncompress files (zip files)

    Step 2:

    If you have a third party software to Compress/decompress, I'd Uninstall it employs the way Windows compression and decompression of files/folders and see if they help.

Maybe you are looking for