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
ThankNo 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!
AKBut 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,
SuriDunno 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
DavidWhat 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 -
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
RajniAvoid 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
SamHello,
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. GhoshIt 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
-
I have an iTunes gift card from a parent of my student. When I tried to scratch off the back for the redemption code, the code became unreadable. I tried to submit this problem on Apple's support website and the site asked for pictures of the card
-
I built a password protected site in iweb and its published through mobileme. How do I get users to "sign out" so there not always logged in
-
Can't see pdf after uninstalling adobe reader
After uninstalling pdf reader from adobe, I lost possiblitiy to opend pdf documents in safari. Usually, before installing adobe reader pdf documents opened nicely in Safari, with link to download or print a document. Now, all what opens is a gray pag
-
How can I embed Variant To Data in a subVI and pass in the Type input?
If I use Create Control on the Type input of Variant To Data, I get an undefined type error unless I insert a control of a specific type into the cluster control that was created. This seems to prevent passing a parameter into a subVI for this purpos
-
Disconnected from Oracle Database 10g Release 10.2.0.1.0 - Production
Can anyone tell me why my Database is not starting, I have been getting this error for quite some time now Total System Global Area 532676608 bytes Fixed Size 1249992 bytes Variable Size 167775544 bytes Database Buffers 36071014