Objects/records with 8i collections

I have read all the documentation and it seems that the only way to bulk collect multiple columns into records or objects using the 8i PL/SQL compiler is using individual nested tables/varrays per column. Is this true or does any clever developer out there know any way around this?????

You can bulk collect into a Record of Arrays.
example (from AskTom)
declare
type empTab is table of number index by binary_integer;
l_records empTab;
cursor c is select empno from emp;
begin
open c;
fetch c bulk collect into l_records;
close c;
end;
/

Similar Messages

  • Problem Inserting into object view with OracleXmlSave

    Gurus,
    I'm trying to insert into an object view with
    multiple collections of objects representing a master/detail relationship and a CLOB column, but I've this error:
    oracle.xml.sql.OracleXMLSQLException: Error Interno
    at oracle.xml.sql.dml.OracleXMLSave.saveXML(OracleXMLSave.java:1967)
    at oracle.xml.sql.dml.OracleXMLSave.insertXML(OracleXMLSave.java:1060)
    at onix.interface_isbn.OnixXmlLoader.doInsert(OnixXmlLoader.java:165)
    at onix.interface_isbn.OnixXmlLoader.setLoader(OnixXmlLoader.java, Compiled Code)
    at onix.interface_isbn.OnixXmlLoader.<init>(OnixXmlLoader.java:23)
    at onix.interface_isbn.correrLoader.main(correrLoader.java:77)
    I'm using OracleXmlSave with insertXML method to do this.
    Is There any limitations to do that? (example
    number of tables into the view, columns datatype).
    I'd appreciate any comments
    Thank

    No known limitations. Please post the sample DDL to create your object types and object view, along with an example of the example XML document you're trying to insert.

  • JMS Object Message with collections

    Is marshaling java objects where one instance var is a List
    collection support by flex messaging?
    I am using jms and I am posting a java object where I have a
    instance var with a collection of other types of objects. The
    collection is populated but on the flex side the collection is
    null.
    Any suggestions?

    hi,
    I've been trying out the same thing. One way which i thought (i haven't tried it yet) is to use Oracle type objects itself and then implement STRUCTS,Arraydescriptor to fetch each attribute of the oracle type.
    If anyone out there has better solution then pls do share.

  • How to save a record with null foreign key?

    Dear all,
    Most articles show non-nullable foreign keys; but now I've got a problem with nullable foreign keys.
    With this simple example: an employee has zero or one manager.
    in manager object:
    @OneToMany(cascade={CascadeType.MERGE, CascadeType.PERSIST, CascadeType.REFRESH}, mappedBy="manager")
    private Collection<Employee> employees;
    in employee object:
    @ManyToOne
    @JoinColumn(name="manager_id")
    private Manager manager;
    when updating an employee record, i may use a selectOneMenu to pass a manager id of "0", I expect toplink to save a null manager_id in the employee record; but i tries to create a new manager object of id="0" (i.e. insert a new manager record instead)
    the code i use to save an employee is like this:
    em.getTransaction().begin();
    em.merge(employee);
    em.getTransaction().commit();
    What's the correct way to save the employee record with a null manager_id column?
    Could someone help?
    Thanks a lot!
    AK

    But could you give me some pointers on how could I do
    that from the web UI level?Got it. You want to select "nothing" and then set the object reference to that. I can't help you on JSF but how do you lookup the selected object behind the scenes? If you use entityManager.(Employee.class, 0) then you should get back null if there is no Employee with id=0.
    --Shaun                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • Duplicate records in a collection

    Hi Experts,
    Just now I've seen a thread related to finding duplicate records in a collection. I understand that it is not advisable to sort/filter data in a collection.
    (https://forums.oracle.com/thread/2584168)
    Just for curiosity I tried to display duplicate records in a collection. Please Please .. this is just for practice purpose only. Below is the rough code which I wrote.
    I'm aware of one way - can be handled effectively by passing data into a global temporary table and display the duplicate/unique records.
    Can you please let me know if there is any other efficient wayto do this.
    declare
      type emp_rec is record ( ename varchar2(40), empno number);
      l_emp_rec emp_rec; 
      type emp_tab is table of l_emp_rec%type index by binary_integer;
      l_emp_tab emp_tab;
      l_dup_tab emp_tab;
      l_cnt number;
      n number :=1;
    begin
    -- Assigning values to Associative array
      l_emp_tab(1).ename := 'suri';
      l_emp_tab(1).empno := 1;
      l_emp_tab(2).ename := 'surya';
      l_emp_tab(2).empno := 2;
      l_emp_tab(3).ename := 'suri';
      l_emp_tab(3).empno := 1;
    -- Comparing collection for duplicate records
    for i in l_emp_tab.first..l_emp_tab.last
    loop
        l_cnt :=0;  
    for j in l_emp_tab.first..l_emp_tab.last 
        loop      
           if l_emp_tab(i).empno  =  l_emp_tab(j).empno and l_emp_tab(i).ename  =  l_emp_tab(j).ename then
               l_cnt := l_cnt+1;          
                   if l_cnt >=2 then
                      l_dup_tab(n):= l_emp_tab(i);
                   end if;
           end if;                   
        end loop;  
    end loop;
    -- Displaying duplicate records
    for i in l_dup_tab.first..l_dup_tab.last
    loop
       dbms_output.put_line(l_dup_tab(i).ename||'  '||l_dup_tab(i).empno);
    end loop;
    end;
    Cheers,
    Suri

    Dunno if this is either easier or more efficient but it is different.  The biggest disadvantage to this technique is that you have extraneous database objects (a table) to keep track of.  The advantage is that you can use SQL to perform the difference checks easily.
    Create 2 global temporary tables with the structure you need, load them, and use set operators (UNION [ALL], INTERSECT, MINUS) to find the differences.  Or, create 1 GTT with an extra column identifying the set and use the extra column to identify the set records you need.

  • How to use Object types with inheritance in design editor

    Does anyone know how to implement Oracle object sub types in Design editor.
    Is there a way of using the Database design transformer to convert entities to Object types rather than tables?
    Thanks in anticipation
    David

    What database and connection type are you using? Are you connecting the report directly to the database, or trying to assign the datasource to object data?
    It sounds like you might be trying to use a linked list, collection or other C# construct to pass your data in. This currently isn't supported by the Crystal Reports SDK. You can use a DataSet or a DataTable, and possibly also an IDataReader depending on which version of Crystal Reports you're referencing in your project. Of course you can also connect directly to the database, even if the database isn't on the same machine as the application.
    The way to show master records with detail information is through the use of subreports and linked subreport parameters. Linked subreports take their parameter value from a record in the main report, so that only the data appropriate to that master record is displayed. The guys over in the [report design|SAP Crystal Reports; forum can help you out with this if you have questions on the specifics.

  • How-To allow records with Overlapping Time from SAP R/3

    Hi guys,
    Made reference to SAP Note 336229.
    Maintained my Transfer Rules of <b>Data Source 0HR_PA_PA_1</b> to <b>Info Source 0HR_PA_PA_1</b> and all is green! Unfortunately, still <b>NO</b> data and error IDOC message is " <i>The data request was a full update. In this case, the corresponding table in the source system does not contain any data</i>."
    "<i>The extractor of the DataSource reads the master data tables of the Employee (0EMPLOYEE) and person (0PERSON) InfoObjects and makes changes to these time-dependent attributes available as headcount changes</i>"...<b>says SAP</b>
    Info Object person (0PERSON) works!!!, however Info Object(0EMPLOYEE) is giving me problem whereby <b>in SAP R/3</b> Data Source (Employee - Education and Training) 0EMPLOYEE_0022_ATTR <u>allows</u> time overlapping of records, <b>BUT BW</b> generates an error " The time interval ['99991231'/'19930104'] & (from/to) for the data records 46 and 47 overlaps in characteristic 0EMPLOYEE "
    For example, lets assume there is Employee X with the following entry in SAP R/3.
    Begin Date||| End Date ||| SubType
    01.09.2003||| 01.09.2004||| Professional Cert.
    01.09.2003||| 01.09.2006||| Degree
    SAP R/3 allows this overlapping of time records however, BW does NOT. How can I tackle this overlapping issue in SAP BW?
    With much appreciation!

    Hi guys,
      Please assist to resolve this.
      I attempted to assigned 0DATETO and 0DATEFROM to my attributes of 0EMPLOYEE, but it gives me the following error
    <b>  Characteristic 0EMPLOYEE: Attribute 0DATETO cannot be used w. time-dependent attribte</b>
    <b>  InfoObject 0DATETO cannot be used as an attribute if attibutes already exist that are time-dependent. Attribute 0ANSALARY is such an attribute. A field in the InfoObject 0DATETO is automatically generated in the master data table.</b>
      Once again, what I want is to be able to allow the Records with HighDate in R/3 into my BW Cubes.
      Please please assist !

  • Can't open a object view with mapinfo

    i have created this object view (with toad 7.6 in a server oracle 9i ITA, i use mapinfo 7.5 ITA):
    CREATE OR REPLACE FORCE VIEW PRG.VISTAMORD
    (PIANO_STORIA_ID, ANAGR_ID, PIANO_ID, TIPOMOD_COD, ZTO,
    PRG, PIANO_STATO, ATTO_DATA, ATTO_TIPO, ATTO_NUM,
    PIANO_VARIANTE, PIANO_NOME, PIANO_NOTE, PIANO_POS_ARCH, PIANO_LEGGE,
    ANAGR_COD_COM, MI_STYLE, MI_PRINX, GEOLOC, ST)
    AS
    SELECT a.Piano_storia_id, a.Anagr_id, a.Piano_id, a.tipomod_cod,
    a.ZTO, a.PRG, b.piano_stato, b.atto_data, b.atto_tipo, b.atto_num,
         b.piano_variante, b.piano_nome, b.piano_note,
         b.piano_pos_arch, b.piano_legge, c.anagr_cod_com,
         d.mi_style, d.mi_prinx, d.geoloc, d.st
    from (piano b inner join ((oggetti_storia a
    inner join aux_indice e on (a.piano_storia_id=e.piano_storia_id)
              and (a.anagr_id=e.anagr_id) and
    (a.piano_id=e.piano_id)) inner join anagrafica c on a.anagr_id = c.anagr_id)
         on b.piano_id = a.piano_storia_id) inner join oggetti_spazial d
              on a.anagr_id = d.anagr_id
    where ((a.tipomod_cod)<>'DEL')
    order by piano_storia_id;
    where oggetti_spazial is a object table (a mapinfo map imported in Oracle)
    if i don't add the order by clause the view is ok and i can open it in mapinfo,
    with the order by clause, when i try to open the view mapinfo give the error:
    "errore Oracle: ORA-00600: codice errore INT., argom.:[15819],[5582],[],[],[],[],[],[]. Impossibile recuperare i record nella tavola.
    can You Help me?

    Hi Gabriel,
    I think with enough patience one could get the ASCII DataPlugin Wizard to create a DataPlugin that would work for your file, but the resulting code generated by the wizard is not easily understandable, and it would not have correctly devined the sampling rate from your file format.  I've written a DataPlugin from scratch which correctly reads the data snippet you sent over.  I included an implicit time channel so that you could easily see the time values inferred from the "SampleRate" line.  The implicit time channel rerquires all the lines in the ASCII file to be parsed in order to figure out the correct channel length (line 58), so if you have large data files you should comment out the time channel lines (44, 45, 58) and use just the implict time information already encoded in the data channel waveform properties (for faster file indexing).  Unless your files are verry large, though, I think you'll like the DataPlugin as it is.
    Brad Turpin
    DIAdem Product Support Engineer
    National Instruments
    Attachments:
    Fischerg_TXT.zip ‏2 KB

  • Getting text ID and Text object  associated with item texts in PO...

    Hi,
    To print standard text on smartform for a given item in purchase order, I need to find the text ID and object associated with it.
    There are various texts like item text, Info record PO text, Material PO Text, Delievry Text, etc...
    Now when I go to ME22N, and select item detail for any item -> Texts , how do I get text ID, and object associated with it ?

    Hi ,
        Use table stxh,stxl
        FM read_text.
        you can view the text id by following
        this link
         me23->header-text-double click on text->menu goto->
         header        
    Regards
    Amole

  • Error in sharepoint external list while creating record with same id (this id is primary key)

    Hi,
    I have created one external content type in sharepoint designer to insert/update/delete table data.
    This table contains Primary key constraint.
    Then I have added this external content type to Sharepoint out of box List.
    Insert/Update/Delete is working fine. But when I am trying to insert record with the same id which is already exist in table, page crashed and its giving me following error:
    “Violation of PRIMARY KEY constraint 'PK_tbl_Accounts'. Cannot insert duplicate key in object 'dbo.tbl_Accounts'.
    The duplicate key value is (1). The statement has been terminated.”
    So I want to handle this exception. Can we show any popup message to hide this error?
    Thanks & Regards
    Rajni

    Avoid entering of primary from form  if possible.
    if not try to customize the new form with infopath and place your custom logic there.
    http://lightningtools.com/uncategorized/modifying-external-list-forms-with-infopath-2010/
    http://salnikan.wordpress.com/2011/07/26/prevention-of-duplicate-entries-based-on-two-or-more-columns-in-a-sharepoint-list/
    Bala

  • Reducing time while Filtering Out New Records with the Same Key

    Hi Experts,
    I have an issue .. I am trying to load data into 0MATERIAL . While loading via DTP the step u201CFilter Out New Records with the Same Keyu201D   takes much time for processing . For each datapackage it is taking around 30 minutes to filter out new records with the same key .  While for other master data it hardly takes 5 minutes.
    Any pointers how to reduce the timeu2026
    Thanks in advance
    Sam

    Hello,
    No there is no need to do that change then.
    Can you tell me are you doing a full load daily to 0MATERIAL object.
    why dont you use delta.
    Also if the DTP is of type FULL, then are you deleting the previous PSA requests.
    Maybe you can ask the basis guys to check with a trace what is really happening on the DB side during this 30 mins and then maybe we can find the needed fix.
    Regards,
    Shashank

  • Databse of 1888 Byte Per Record with 259 Fixed Fields Stumped CR?!?

    My Database of  15 million records/rows at 1888 Byte Per Record with 259 Fixed Fields STUMPED CR?!
    Executive Summary :
    I have lots of data. There are 15 million of records in some of my database files. But I need to drill into the data and get counts for each field.
    I need to know how many times each data field (row) is populated in a database file. For example,  how many of my records have last name? how many have first name? date of birth? etc.  I need a simple report made using SAP "Crystal Reports 2011" Workstation type edition that SUMS each data  row into a single column output like csv.
    My database sizes can range from 1,000 to 18 million records that are in fixed field asci format with 1888 bytes and 256 rows per record!  The report  needs to SUM each data field or, in the case of a data field with a minimum of twelve tables, SUM each value of a table.
    My contracted CR programmer is an expert although she was new to data files this humongous. Can anyone here help us get CR to work on my data? Here was her conclusion, Crystal Reports Fail:
    My file is 14.1 gb  as well. However, when run through Crystal Reports, it
    only returns 2,274,876 records. Therefore, I am going to assume that there
    is a Record Limit for Text files of this. I searched through all the
    registry settings and there is nothing that appears to be limiting it. I
    went online for a while to see if there was any information on it, and just
    like when I used to work there, there was nothing concrete. Business Objects
    does not physically test this large of data retrieval, therefore they don't
    know the exact record limits.
    I'm not sure what to suggest, but I don't think Crystal Reports is going to
    work for you and I wouldn't have known that from the beginning without
    testing your data. I'm 99% sure there is a refund policy on the software, so
    you shouldn't have any issues returning it.
    Since I only specialize in Crystal Reports, I'm not sure what other software
    can handle this amount of data. Possibly Cognos, but you may want to find
    out from them or do some research.
    If your data were in a database that can run stored procedures (like SQL
    Server or Oracle) then you could write SQL to only return the counts. Then
    when Crystal connected to the stored procedure, it should work, but I can't
    say for sure without testing it. And I don't have SQL Server or Oracle
    installed on my machine. I believe MYSQL (the free version) has a limit to
    the number of records it can hold and I'm sure 8 million would be over the
    limit. Also, I'm not sure if it supports stored procedures. I have used it
    once before and found it extremely cumbersome and limited. I think SQL
    Server and Oracle are quite pricey, so I don't think that this will even be
    an option for you.

    Hi Shawn,
    I actually contacted the same person you did also. Summer was a Report Designer Resource here and knows her stuff and the Report Designer as much as our Developer who wrote it do.
    As I suggested in my first reply is to get all that data into a real database, one that can run Stored Procedures to do all the crunching unfortunately is the only way I can see this ever working.
    Windows 7 and 8 CPU's doesn't help, 64 bit may but the problem is CR Designer is a 32 bit application so it can't take advantage of the 64 bit memory addressing space.
    What you could so is post your question to the forum:
    [Business Decision Making with BI|Marketing Library;
    This is a forum for managers or anyone who wants to have a non-technical discussion about making informed decisions with analytics tools. Ask questions and share your experiences on how to effectively utilize data to address real business problems. Experts from inside and outside SAP will be monitoring these conversations and offering their knowledge along with the broader community.
    Someone in there may have another SAP product that might be able to load your flat file into a data tool that CR can report off of.
    I still think a copy of MS SQL 2008 Express is your best and likely cheapest solution and then you can simply import the data into it which it has an Import Wizard that makes it relatively easy to do... Although you may have to break your file into pieces for it to be able to process also.
    You need to be flexible on that data source, I doubt you'll find anything that can report off of that huge of text file.
    Good luck
    Don

  • WebService get list 750 records with 8 columns in mx:DataGrid atleast 2 minutes

    I am using WebService (ASP.NET) to get a list of customers (around 750) records with 8 columns using mx:DataGrid. It takes to list data in the mx grid atleast 2 minutes from offline development data server[SQL SERVER 2005]. It could be better if the list populate the datagrid with-in 1 minute. I didn't find how to resolve the problem. My WebService returns the ArrayCollection within 1 minute.
    Any hints would appreciate!
    T. Ghosh

    It doesn’t matter how many records, what matters is how many attributes and sub-objects.  One customer returned 100 records, each with a transaction history of some 10,000 transactions, although the transactions were not displayed in the datagrid (it would be later in the detail view).  Then the app was configured to convert the records to typed objects.  As one would expect, it took forever.  You might have to create a custom converter or just use the SOAP/XML.

  • Problems updating BP record with SOAP

    Trying to update a business partner record with the SOAP env. below I get the error message: "Key not supplied". Where in the XML should I insert the key (CardCode) of the business partner I wish to update?
    <?xml version="1.0" encoding="UTF-16"?>
    <env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
    <env:Header>
    <SessionID>A9DE2062-4F96-F9E1-DE3C-81E0DB23F174</SessionID>
    </env:Header>
    <env:Body>
    <dis:UpdateObject xmlns:dis="http://www.sap.com/SBO/DIS">
    <BOM>
    <BO>
    <AdmInfo>
    <Object>oBusinessPartners</Object>
    </AdmInfo>
    <BusinessPartners>
    <row>
    <CardCode>31177</CardCode>
    <FederalTaxID>987280115</FederalTaxID>
    </row>
    </BusinessPartners>
    </BO>
    </BOM>
    </dis:UpdateObject>
    </env:Body>
    </env:Envelope>

    For those interested I succsesfully managed to update a business partner record  with the follwing XML:
    (Replace $session_id with valid session id)
    [code]<?xml version="1.0" encoding="UTF-16"?>
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
         <env:Header>
              <SessionID>$session_id</SessionID>
         </env:Header>
         <env:Body>
              <dis:UpdateObject xmlns:dis="http://www.soap.com/SBO/DIS">
                   <BOM>
                        <BO>
                             <AdmInfo>
                                  <Object>2</Object>
                                  <Version>2</Version>
                             </AdmInfo>
                             <QueryParams>
                                  <CardCode>30001</CardCode>
                             </QueryParams>
                             <BusinessPartners>
                                  <row>
                                       <ZipCode>5265</ZipCode>
                                  </row>
                             </BusinessPartners>
                        </BO>
                   </BOM>
              </dis:UpdateObject>
         </env:Body>
    </env:Envelope>
    [/code]

  • Alternative to find unique records with 60 character in selection string.

    Hi,
    We have to find out the values from the Infoobject. When we try to display data from an master object, the maximum length of selection it accepts 45 characters only but we need to input data around 60 characters in selection.
    Thing we tried:
    1. Selecting complete data without any condition but it did not work due to large volume of data.
    2. We tried to extract data from RSA3 but it did not work due to large volume of data.
    Please suggest me alternative to find unique records with 60 character in selection string.
    Regards,
    Himanshu Panchal.

    This sounds a bit strange. Are you perhaps mistakenly storing text data incorrectly as the primary key of the master data? I can't think of any actual data that is that length to ensure usinqueness - even GUIDs are maximum 32 characters - but GUIDs don't count as actual "readable" data although you do need to be able to select it from time to time. Perhaps you have a super secure password hash or something like it ?
    Also are you expecting to have a unique single record returned by your selection? To do this would in general REQUIRE that ALL the data is read because master data is not stored in the DB sorted by the data itself, but stored instead sorted by the it's SID.
    When you say you are selecting data from master data, which master data tables are you using? I have been able to select data from very large MD table (15 million unique records) using SE16 with no problems. Just enter the table name, and before you execute just count the number of records - it helps to know what you want to end up with.
    Have you tried using wild cards (the *) to preselect a smaller number of records : * a bit of your 60 character string *
    If you are trying to select from a non-key field you will encounter performance issues, but you can still use the wildcards, and get a result.
    Don't use RSA3 it was designed to make selections and group them into datapackets. It's not the same as selecting directly on the table in SE11 or SE16

Maybe you are looking for