Event in the collection of the table object
I'm using Flash Builder 4 and working on an AIR application. I have a browser tab in my application and a popup that allows you to create an order. They can click an Add button to add items to the order, which adds lines to a datagrid control. When he clicks on save an event with an actionscript class is shot and pass order information with an object that must be added to a collection of table in the main application to display in the page backlog of orderitems. The news of command goes through fine.
I can't find how to add the event.orderitems which is an object in the localOrderItems:Arraycollection for the commands that I use, I'm storing an object stored for orders when the pc is in offline mode, so they can submit them as soon as they are brought back online. This shows the first item in the list and I got out and tenant to display items.
private void saveOrder(event:SaveOrder): Sub
{
store orders
var : command = new Order(); order.storeId = event.storeId; order.orderUID = event.orderUID; localOrders.addItem (order);
localOrdersSO.data.orders = localOrders;
localOrdersSO.flush ();
Shop for order
localOrdersItemsSO.data.items = event.orderItems;
localOrdersItemsSO.flush (); PopUpManager.removePopUp (createOrderScreen); }
for each {(o: Object var in newItems)
oldItems.push (o);
}
See
http://livedocs.Adobe.com/Flex/3/HTML/Help.HTML?content=03_Language_and_Syntax_16.html
Tags: Flex
Similar Questions
-
What is the SQL to determine what are the table objects in the KEEP buffer pool?
What is the SQL to determine what are the table objects in the KEEP buffer pool?
Select owner, table_name
from dba_tables
where USER_TABLES = "KEEP."
/
David Fitzjarrell
-
Salvation of france
Thank you for your intelligent help, but if you don't know about object types and tables of onject, just go your way.
I use 12 c (12.1.0.2) on OEL 6,7 in Virtual box
Here's my use case
drop table envparams;
Drop type envparam_obj;
Drop the params table;
Drop type param_obj;
create or replace type param_obj as an object
(
PName varchar2 (32),
RegExp varchar2 (128).
GetName member function returns a varchar2.
function GetRegexp return varchar2 Member,
Member ToString function returns a varchar2.
procedure Display of Member
);
/
create or replace type body param_obj as
member function GetName return varchar2 is
Start
return (PName);
end;
member function GetRegExp return varchar2 is
Start
return (RegExp);
end;
member function ToString return varchar2 is
OutStr varchar2 (1000);
Start
OutStr: = 'parameter ' | PName;
If (RegExp is not null) then OutStr: = OutStr | ' use control regexp ("|") RegExp | ')'; end if;
return (OutStr |) '.');
end;
Members procedure display is
Start
dbms_output.put_line (self. (ToString());
end;
end;
/
create table param_obj params (key primary pname) object identifier is a primary key;
create an index only params_un01 on params (upper (pname));
insert into values params (new param_obj ("nls_lang", null));
Select * from params;
Select params Ref (p) rparam p where p.pname = 'nls_lang. "
drop table envparams;
Drop type envparam_obj;
create or replace type envparam_obj as an object
(
paramref Ref param_obj,
sys.ANYDATA pValue,
REF. param_obj, GetParamRef member function return
sys.ANYDATA, GetPValue member function return
Member ToString function returns a varchar2.
procedure Display of Member
);
/
create or replace type body envparam_obj as
REF param_obj is back from GetParamRef member function
Start
return (ParamRef);
end;
member function GetPValue return sys.anydata is
Start
return (PValue);
end;
member function ToString return varchar2 is
OutStr varchar2 (200);
TypeCode pls_integer;
ValueType sys.anytype;
Number num.
Str varchar2 (20000);
Dummy Pls_integer;
Start
Select deref (ParamRef). ToString() in double OutStr;
If (PValue is not null) then
TypeCode: = PValue.GetType (ValueType);
case TypeCode
When dbms_types.typecode_number then
Dummy: = PValue.GetNumber (NB);
Str: = to_char (Num);
When dbms_types.typecode_varchar2 then
Dummy: = PValue.GetVarchar2 (Str);
end case;
OutStr: OutStr = | "The value is (' |)" Str | ')';
on the other
OutStr: OutStr = | "The value is (NULL);
end if;
return (OutStr |) '.');
end;
Members procedure display is
Start
dbms_output.put_line (self. (ToString());
null;
end;
end;
/
create the table envparams to envparam_obj;
create or replace procedure as
ThisParamRef ref param_obj;
ThisParam param_obj;
ANYDATA ThisValue;
ThisEnvParam envparam_obj;
Start
SELECT ref (p), value (p), anydata.convertvarchar2('FRENCH_FRANCE.) WE8ISO8859P1 ") in ThisParamRef, ThisParam, ThisValue"
params p WHERE p.PName = 'nls_lang. "
ThisEnvParam: = envparam_obj (ThisParamRef, ThisValue);
ThisEnvParam.Display ();
INSERT INTO envparams
Envparam_obj SELECT (Ref (p), anydata.convertvarchar2('FRENCH_FRANCE.) WE8ISO8859P1'))
OF params p
WHERE p.PName = 'nls_lang. "
end;
declare
Start
test;
end;
test is what gives:
RA-22979: impossible to insert a REF to a view object OU a REF defined by user (translation is below...)
ORA-06512: at "MMN. "TEST", line 16
ORA-06512: at line 3
22979 00000 - "cannot INSERT object REF or REF user-defined view.
* Cause: Attempt to insert a view of the REF or REF object defined by the user in one
Column REF created to store the system generated REF values.
* Action: Make sure that the REF to be inserted is not a view object
or a REF configurable column *.
If I change the test and write:
INSERT INTO envparams values (ThisEnvParam); = > Get the same message
ORA-22979: impossible to insert a REF to a view object OU a REF defined by user
ORA-06512: at "MMN. "TEST", line 16
ORA-06512: at line 3
22979 00000 - "cannot INSERT object REF or REF user-defined view.
* Cause: Attempt to insert a view of the REF or REF object defined by the user in one
Column REF created to store the system generated REF values.
* Action: Make sure that the REF to be inserted is not a view object
or a column defined by the user REF
If I modify the testing and writing
insert into envparams values (envparam_obj (ThisParamref, ThisValue));
; = > Get the same message
ORA-22979: impossible to insert a REF to a view object OU a REF defined by user
ORA-06512: at "MMN. "TEST", line 16
ORA-06512: at line 3
22979 00000 - "cannot INSERT object REF or REF user-defined view.
* Cause: Attempt to insert a view of the REF or REF object defined by the user in one
Column REF created to store the system generated REF values.
* Action: Make sure that the REF to be inserted is not a view object
or a column defined by the user REF
WELL, I'm stuck in the stuckhouse.
How can I make the test work
Thanks again for reading me
Concerning
Michel M - N
The error message gives an indication of what is wrong:
Failed to INSERT the object REF or REF user-defined view
In this case, you have a REF user-defined because you based the table OID of PARAMS on the PK.
Storage of such a REF is possible only if it is worn, as explained in the documentation:
https://docs.Oracle.com/database/121/ADOBJ/adobjadv.htm#ADOBJ7393
Like this:
create the table envparam_obj envparams)
scope for (paramref) params
) ;
or on the existing table:
ALTER table envparams Add (scope (paramref) params);
SQL> INSERT INTO envparams 2 SELECT envparam_obj (ref (p), anydata.convertvarchar2('FRENCH_FRANCE.WE8ISO8859P1')) 3 FROM params p 4 WHERE p.PName = 'nls_lang'; 1 row created. SQL> select t.paramref.getname() from envparams t; T.PARAMREF.GETNAME() -------------------------------------------------------------------------------- nls_lang
-
FillColor on the Click event in the table
Hi guys,.
I have a table with full text.
I need to create a form that will highlight the cell when you click on it and turn off highlight when decliques.
can't, true, trying to get this to work.
Currently, I put the cells to calculated read text fields alone so that they can have a click event.
Then I used this code:
If (this.fillColor = "255, 255, 255")
{
this.fillColor = "255, 255, 0;
}
If (this.fillColor = "255, 255, 0")
{
this.fillColor = "255, 255, 255;
}
But I get a bit of luck.
Any help would be appreciated!
In your statement, you must use == instead of =. == tests a while = value assigns a value.
If (this.fillColor == '255, 255, 255') {}
this.fillColor = "255, 255, 0;
}
else {}
this.fillColor = "255, 255, 255;
}
-
Canvas, click events for the child objects
I am trying to record an event for each child object.
and I use the following code
http://livedocs.Adobe.com/Flex/3/HTML/Help.HTML?content=events_08.html
in the part of the examples (second example)
However, I am dynamically add custom Image objects extended and when click on a displayed Image and check for its type if its correct type, it would just return false.
Alert.Show ((event.target_est_dans_MyAClass).toString ());
When clicking on one of the children is opposed and display the event.target.name and it's just also displays a silly 'FlexLoader74' or whatever number. Somehow, it loses its properties or the type of the object.
Is there something that I am missing?The loaded image, you click on IS what would return with event.target. It is added to your image class extended as a child of this class. So it's probably that you want to do:
Alert.Show ((event.target.parent_est_dans_MyAClass).toString ());
Keep in mind that if EMBED you your images in your image personalized instead compile-time class, then you can check for this as you did before:
Alert.Show ((event.target_est_dans_MyAClass).toString ());
TS
-
Manage the new position of the table column / movement event
How to catch the event when the table view column are repositioned. Essentially, when the column is repositioned at the 5-position 1 position, I would like to upgrade from the db. I searched the API, but could not find one.
Thank you.
-
Optimizer to choose the bad object on a table unparsed
Hello
I'm on Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi and noted the following.
When you query a table with several columns and a 1-column PK for its number of lines, the DB uses the TABLE object, not the object-INDEX-PK.
When you "ANALYZE TABLE COMPUTE STATISTICS x", PK-INDEX-object are used subsequently.
* In my opinion the PK-index (or more generally: the more short-column unique index) must always be used to count the lines as it contains exactly the same number of rows as the original (due to the unique property) object and is always shorter and the number of blocks to read is always equal or smaller compared to the use of the original object.* table
H4. Please see the attached simple test case:
CREATE TABLE x
(
a NUMBER,
b NUMBER,
CONSTRAINT x_pk PRIMARY KEY (a)
) ;
INSERT INTO x
(a, b)
SELECT LEVEL, LEVEL * 2 AS b
OF THE DOUBLE
CONNECT BY LEVEL < = 100000;
COMMIT;
REMOVE PLAN_TABLE;
EXPLAIN PLAN SET STATEMENT_ID is 'test_count_star_pk' for SELECT COUNT (*) FROM x.;
SELECT id, parent_id, position, OPERATION, OPTIONS, OBJECT_NAME, OBJECT_TYPE, OPTIMIZER PLAN_TABLE WHERE STATEMENT_ID = 'test_count_star_pk' ORDER BY id, parent_id, position;
ANALYZE TABLE COMPUTE STATISTICS x;
REMOVE PLAN_TABLE;
EXPLAIN PLAN SET STATEMENT_ID is 'test_count_star_pk' for SELECT COUNT (*) FROM x.;
SELECT id, parent_id, position, OPERATION, OPTIONS, OBJECT_NAME, OBJECT_TYPE, OPTIMIZER PLAN_TABLE WHERE STATEMENT_ID = 'test_count_star_pk' ORDER BY id, parent_id, position;
DROP TABLE x;
H4. Result (see the lines in bold):
Table X is.
100,000 Zeilen eingefugt.
festgeschrieben.
3 Zeilen Debby.
been SET plan.
ID PARENT_ID POSITION RUNNING OBJECT_NAME OBJECT_TYPE OPTIMIZER OPTIONS
SELECT CHOOSE 0
1 0 1 SORT AGGREGATE
* FULL ACCESS X TABLE * 2 1 1 TABLE
Table X analysiert.
3 Zeilen Debby.
been SET plan.
ID PARENT_ID POSITION RUNNING OBJECT_NAME OBJECT_TYPE OPTIMIZER OPTIONS
CHOOSE 0 193 SELECT STATEMENT
1 0 1 SORT AGGREGATE
* 2 1 X_PK INDEX ANALYSIS 1 FULL (SINGLE) ANALYSED *.
Table X play.
What is your opinion on that?First of all, stop using the ANALYZE and start using DBMS_STATS. Secondly, I can't reproduce your results:
SQL> select * from v$version 2 / BANNER ---------------------------------------------------------------- Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - Prod PL/SQL Release 10.2.0.4.0 - Production CORE 10.2.0.4.0 Production TNS for 32-bit Windows: Version 10.2.0.4.0 - Production NLSRTL Version 10.2.0.4.0 - Production SQL> CREATE TABLE x 2 ( 3 a NUMBER, 4 b NUMBER, 5 CONSTRAINT x_pk PRIMARY KEY (a) 6 ) ; Table created. SQL> INSERT INTO x 2 (a, b) 3 SELECT LEVEL AS a, LEVEL*2 AS b 4 FROM DUAL 5 CONNECT BY LEVEL <= 100000; 100000 rows created. SQL> COMMIT; Commit complete. SQL> explain plan for 2 SELECT COUNT (*) FROM x; Explained. SQL> @?\rdbms\admin\utlxpls PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- Plan hash value: 2071710178 ---------------------------------------------------------------------- | Id | Operation | Name | Rows | Cost (%CPU)| Time | ---------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 55 (0)| 00:00:01 | | 1 | SORT AGGREGATE | | 1 | | | | 2 | INDEX FAST FULL SCAN| X_PK | 100K| 55 (0)| 00:00:01 | ---------------------------------------------------------------------- Note PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------- ----- - dynamic sampling used for this statement 13 rows selected. SQL>
SY.
-
The Clause to fetch records in a table object. ?
Hi all
I want to know where in Oracle, we can find documents related to the TABLE(OBJECT TYPE) Clause.
Please find the code below which I use.
CREATE OR REPLACE TYPE OBJ_EMPNO AS OBJECT (EMPNO NUMBER);
*/*
CREATE OR REPLACE TYPE TAB_EMPNO AS TABLE OBJ_EMPNO;
*/*
DECLARE
TYP_EMPNO TAB_EMPNO: = TAB_EMPNO (OBJ_EMPNO (10), OBJ_EMPNO (20));
BEGIN
FOR REC in (SELECT FROM TABLE (TYP_EMPNO)) LOOP *.
DBMS_OUTPUT. PUT_LINE (TREC. EMPNO);
END LOOP;
END;
*/*
THE ABOVE Code works fine. But my question is where can I find documents related to the Clause TABLE (OBJECT TYPE).
I searched a lot and found a part in the Oracle documentation, but most of them is not related to my requirement.
If you'd be grateful if someone provide me with some information here.
Thank you
MK.in Oracle we can find documents related to the TABLE(OBJECT TYPE) Clause.
See TABLE().
-
expand the table "static" or line
I have a form in a format "table" with columns in subforms. One of the columns contains text fields that are set to develop to adapt because they are filled with text. Other subforms have simple text but with a color background. I want these to do, is extend according to the column of text expanding field, so the 'row' seems OK in all of the page. I also want the color backgrounds to expand.
Not sure if this is possible (or if I make sense). Thanks for any help.
Hello
If you use the Table object, each cell would expand to match the row height automatically.
If you are usign subforms, can you apply the color for filling of subform and not filling of individual objects?
Otherwise, you will need a script to the output of each field event, making the height of the other fields in the subform the same height as the largest field. I thought I had a script, but can't find it at the moment.
Niall
-
Check boxes based on the table...
I have an 'event' of the table, a "subject" of table and one table that links these two 'event_topics '. I have a form to create events and want to have all the available topics in the table of 'event' presented a list with checkboxes, to verify for each event, all the van when registering for any subject verified and relevant topics, a line is added in "event_topics" with the event_id and the topic_id.
Is this possible? And if so, how do I start on this? I use Apex 3.2.Hello Tom,
Yes, it is possible.
First of all, you need a point of the box. The LOV for this element of the value to something like
select topic_name, topic_id from topic order by topic_id
To save the selection you need a process of pl/sql
declare vPICKED apex_application_global.vc_arr2; vITEMS varchar2(1000); vCOUNT number; begin vITEMS := :YOUR_CHECKBOX_ITEM; --first delete all entries from event_topics that are not checked delete from event_topics where ':' || trim(to_char(topic_id)) || ':' not in (':' || vITEMS || ':') and event_id = :EVENT_ID; -- insert all new checked topics into event_topics vPICKED := apex_util.string_to_table(vITEMS, ':'); for z IN 1..vPICKED.count loop select count(*) into vCOUNT from event_topics where event_id = :EVENT_ID and topic_id = vPICKED(z); if vCOUNT = 0 then insert into event_topics values (:EVENT_ID, vPICKED(z)); end if; end loop; end;
To extract the items all turned on during the loading of the page, you need to load on before the process of the header:
declare vPICKED apex_application_global.vc_arr2; begin select to_char(topicl_id) bulk collect into vPICKED from event_topics where event_id = :EVENT_ID order by topic_id; :YOUR_CHECKBOX_ITEM := apex_util.table_to_string(vPICKED, ':'); end;
Hope this helps,
Dirk -
display / hide column of the table running
Are there known issues with display / hide a column of the table at run time?
I have a table that contains a column with a check box and another with a radio button. If the user is allowed to select more than one row in the table (as indicated by a form variable), then I want to hide the column of radio and checkbox column. If not, I want to show / hide the contrary.
I show / hide the column header too. When I preview the form, however, the data in the table appears "scoot" left and placed in the column that is hidden, so to speak.
Here is a view of the design of the table:
And a view of the execution of the table. You can see the radio is hidden, but the "account number" column wants to crush in the (hidden) radio column,
Here is the script, I'm very confident in this small snippet of code because the lines of account were filling wonderfully until I added the column of radio buttons and the script to show/hide.
Put the account data in the table
function
setAccountData (objAccountRow, objAccountItem) //Pass in the line and data to complete line
{
stuff the line
objAccountRow.accountNumber.rawValue
= objAccountItem.accountNumber;
objAccountRow.accountName.rawValue
= objAccountItem.accountName;
objAccountRow.accountBalance.rawValue
= objAccountItem.accountBalance;
display the check box or radio button, depending on the number of accounts they are allowed to select (as specified by the form variable)
var searchNumAccounts = objFragment.resolveNode("searchNumAccounts").value; Variable //Form
if (searchNumAccounts==1)
{ //show the column of radio buttons and hide the checkbox column }
hideObject (objResultsSubform.accounts.HeaderRow.txtSelect); <-it's exaggerated here, to hide the table for each row header column,...
hideObject (objAccountRow.accountSelected);
showObject (objResultsSubform.accounts.HeaderRow.txtRadioSelect);
showObject (objAccountRow.radioSubform.radioGroup.selected);
}
on the other
{ //show the checkbox column and hide the column of radio }
hideObject (objResultsSubform.accounts.HeaderRow.txtRadioSelect);
hideObject (objAccountRow.radioSubform.radioGroup.selected);
showObject (objResultsSubform.accounts.HeaderRow.txtSelect);
showObject (objAccountRow.accountSelected);
}
}
OK I got it. The table object implements a container to contain the fields. You hid the ok fields, but you then never reset the row in the table to have only two columns. I copied the parameter of the XML source so that I would have the exact width and then deleted the one I wanted to hide. Now everything works fine.
See the example updated the.
Paul
-
EXPORT ONLY THE TABLES IN A DIAGRAM WITH THE HELP OF DATA PUMP
Hi people,
Nice day. I'd appreciate if I can get a data pump command to export the TABLE object in a specific schematic.
The server is a node RAC 4 with 16 CPU per node.
Thanks in advanceIf all you want is table definitions, why can use you something like:
expdp username/password = mon_repertoire dumfile = my_dump.dmp direcory tables schama1.table1, schema1.table2, happy etc = metadata_only = include = table
This will only export table definitions. If you want the data, and then delete the content = metadata_only, if you want the dependent objects, such as indexes, table_statistics, etc, then remove the include = table.
Dean
-
How to create indexes on the ordered collection of XMLTYPE table?
I use Oracle 11.2.0.2.
Basically, my XML documents have a 3-level hierarchy:
event
+ - action [1: n]
+ - param [1: n]
I try to create indexes on the tables of the orderly collection, but cannot get the right syntax...
I created a table with an XMLType object-relational column:
CREATE TABLE T_C_RMP_MNTRNG_XML_FULL_IL4 ( MESSAGE_ID NUMBER(22,0) NOT NULL ENABLE, XML_EVAL_ID NUMBER(22,0), VIN7 VARCHAR2(7 BYTE), FLEET_ID VARCHAR2(50 BYTE), CSC_SW_VERSION VARCHAR2(100 BYTE), RECEIVED DATE, XML_CONTENT SYS.XMLTYPE , DWH_LM_TS_UTC DATE NOT NULL ENABLE, CONSTRAINT PK_C_RMP_MNTRNG_XML_FULL_IL4 PRIMARY KEY (MESSAGE_ID) ) NOLOGGING TABLESPACE CATALOG VARRAY "XML_CONTENT"."XMLDATA"."action" STORE AS TABLE "T_OR_MON_ACTION" ( NOLOGGING TABLESPACE "CATALOG" VARRAY "param" STORE AS TABLE "T_OR_MON_ACTION_PARAM" ( NOLOGGING TABLESPACE "CATALOG" ) RETURN AS LOCATOR ) RETURN AS LOCATOR XMLTYPE XML_CONTENT STORE AS OBJECT RELATIONAL XMLSCHEMA "http://mydomain.com/cs.xsd" ELEMENT "monitoring";
I execute the SELECT statement:
SELECT EVENT_ID, ACTION_SUB_ID, MESSAGE_ID, ACTION_TYPE, UNIXTS_TO_DATE(ACTION_TIMESTAMP) ACTION_TIMESTAMP FROM T_C_RMP_MNTRNG_XML_FULL_IL4, XMLTABLE( 'for $i1 in /monitoring , $i2 in $i1/action return element r { $i1/eventId, $i2 }' PASSING XML_CONTENT COLUMNS EVENT_ID VARCHAR(40) PATH 'eventId', ACTION_SUB_ID INTEGER PATH 'action/actionSubId', ACTION_TYPE VARCHAR2(100) PATH 'action/type', ACTION_TIMESTAMP NUMBER(13,0) PATH 'action/time' ) T2 WHERE ( EVENT_ID IS NOT NULL AND ACTION_SUB_ID IS NOT NULL )
The plan of the explain command looks like this (sorry, don't know how to get it formatted any 'eye-team'):
----------------------------------------------------------------------------------------------------------
| ID | Operation | Name | Lines | Bytes | TempSpc | Cost (% CPU). Time |
----------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1609K | 6316M | | 6110K (1) | 20:22:11 |
|* 1 | HASH JOIN | | 1609K | 6316M | 111 M | 6110K (1) | 20:22:11 |
| 2. TABLE ACCESS FULL | T_C_RMP_MNTRNG_XML_FULL_IL4 | 582K | 104 M | | 5241 (1) | 00:01:03 |
|* 3 | TABLE ACCESS FULL | T_OR_MON_ACTION | 32 M | 117G | | 105K (2) | 00:21:08 |
----------------------------------------------------------------------------------------------------------
Information of predicates (identified by the operation identity card):
---------------------------------------------------
1 - access ("NESTED_TABLE_ID"= "T_C_RMP_MNTRNG_XML_FULL_IL4"." ("SYS_NC0001300014$")
filter (CAST (SYS_XQ_UPKXML2SQL (SYS_XQEXVAL (SYS_XQEXTRACT ((SYS_XMLGEN ("T_C_RMP_MNTRN XMLCONCAT
G_XML_FULL_IL4 ". "" $ SYS_NC00017 ", NULL, SYS_XMLCONV ("T_C_RMP_MNTRNG_XML_FULL_IL4". "SYS_NC00012$", 0.32,
(('EC1EEF23FD023A27E04032A06D930A8D', 3, 3783, 1)), SYS_MAKEXML ('EC1EEF23FD023A27E04032A06D930A8D', 3780,
'T_C_RMP_MNTRNG_XML_FULL_IL4 '. "' SYS_NC00008$ ', 'SYS_ALIAS_0 '. ((("' SYS_NC_ROWINFO$ ')),'/ ID ', NULL), 0,.
0,20971520,0), 50.1, 2) AS VARCHAR (40)) IS NOT NULL)
3 filter (CAST (TO_NUMBER (TO_CHAR ("SYS_ALIAS_0". "actionSubId")) AS INTEGER) IS NOT NULL) "
Note
-----
-dynamic sample used for this survey (level = 2)
-Construction detected no optimized XML (activate XMLOptimizationCheck for more information)
The XML schema looks like this:
<?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" xmlns:oraxdb="http://xmlns.oracle.com/xdb" oraxdb:storeVarrayAsTable="true" oraxdb:flags="2105639" oraxdb:schemaURL="http://mydomain.com/cs.xsd" oraxdb:schemaOwner="MYUSER" oraxdb:numProps="23"> <xs:element name="monitoring" oraxdb:propNumber="3785" oraxdb:global="true" oraxdb:SQLName="monitoring" oraxdb:SQLType="monitoring755_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:defaultTable="monitoring757_TAB" oraxdb:defaultTableSchema="MYUSER"> <xs:complexType oraxdb:SQLType="monitoring755_T" oraxdb:SQLSchema="MYUSER"> <xs:sequence> <xs:element maxOccurs="unbounded" ref="action" oraxdb:propNumber="3780" oraxdb:global="false" oraxdb:SQLName="action" oraxdb:SQLType="action752_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false" oraxdb:SQLCollType="action756_COLL" oraxdb:SQLCollSchema="MYUSER"/> <xs:element ref="reservationType" oraxdb:propNumber="3781" oraxdb:global="false" oraxdb:SQLName="reservationType" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/> <xs:element ref="softwareVersion" oraxdb:propNumber="3782" oraxdb:global="false" oraxdb:SQLName="softwareVersion" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/> <xs:element ref="eventId" oraxdb:propNumber="3783" oraxdb:global="false" oraxdb:SQLName="eventId" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/> <xs:element ref="vin" oraxdb:propNumber="3784" oraxdb:global="false" oraxdb:SQLName="vin" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="action" oraxdb:propNumber="3790" oraxdb:global="true" oraxdb:SQLName="action" oraxdb:SQLType="action752_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:defaultTable="action754_TAB" oraxdb:defaultTableSchema="MYUSER"> <xs:complexType oraxdb:SQLType="action752_T" oraxdb:SQLSchema="MYUSER"> <xs:sequence> <xs:element ref="type" oraxdb:propNumber="3786" oraxdb:global="false" oraxdb:SQLName="type" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/> <xs:element maxOccurs="unbounded" ref="param" oraxdb:propNumber="3787" oraxdb:global="false" oraxdb:SQLName="param" oraxdb:SQLType="param749_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false" oraxdb:SQLCollType="param753_COLL" oraxdb:SQLCollSchema="MYUSER"/> <xs:element ref="actionSubId" oraxdb:propNumber="3788" oraxdb:global="false" oraxdb:SQLName="actionSubId" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/> <xs:element ref="time" oraxdb:propNumber="3789" oraxdb:global="false" oraxdb:SQLName="time" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="type" type="xs:string" oraxdb:propNumber="3791" oraxdb:global="true" oraxdb:SQLName="type" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="type751_TAB" oraxdb:defaultTableSchema="MYUSER"/> <xs:element name="param" oraxdb:propNumber="3794" oraxdb:global="true" oraxdb:SQLName="param" oraxdb:SQLType="param749_T" oraxdb:SQLSchema="MYUSER" oraxdb:memType="258" oraxdb:defaultTable="param750_TAB" oraxdb:defaultTableSchema="MYUSER"> <xs:complexType oraxdb:SQLType="param749_T" oraxdb:SQLSchema="MYUSER"> <xs:sequence> <xs:element minOccurs="0" ref="value" oraxdb:propNumber="3792" oraxdb:global="false" oraxdb:SQLName="value" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/> <xs:element ref="key" oraxdb:propNumber="3793" oraxdb:global="false" oraxdb:SQLName="key" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:MemInline="false" oraxdb:SQLInline="true" oraxdb:JavaInline="false"/> </xs:sequence> </xs:complexType> </xs:element> <xs:element name="value" type="xs:string" oraxdb:propNumber="3795" oraxdb:global="true" oraxdb:SQLName="value" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="value748_TAB" oraxdb:defaultTableSchema="MYUSER"/> <xs:element name="key" type="xs:string" oraxdb:propNumber="3796" oraxdb:global="true" oraxdb:SQLName="key" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="key747_TAB" oraxdb:defaultTableSchema="MYUSER"/> <xs:element name="actionSubId" type="xs:integer" oraxdb:propNumber="3797" oraxdb:global="true" oraxdb:SQLName="actionSubId" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:defaultTable="actionSubId746_TAB" oraxdb:defaultTableSchema="MYUSER"/> <xs:element name="time" type="xs:integer" oraxdb:propNumber="3798" oraxdb:global="true" oraxdb:SQLName="time" oraxdb:SQLType="NUMBER" oraxdb:memType="2" oraxdb:defaultTable="time745_TAB" oraxdb:defaultTableSchema="MYUSER"/> <xs:element name="reservationType" type="xs:string" oraxdb:propNumber="3799" oraxdb:global="true" oraxdb:SQLName="reservationType" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="reservationType744_TAB" oraxdb:defaultTableSchema="MYUSER"/> <xs:element name="softwareVersion" type="xs:string" oraxdb:propNumber="3800" oraxdb:global="true" oraxdb:SQLName="softwareVersion" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="softwareVersion743_TAB" oraxdb:defaultTableSchema="MYUSER"/> <xs:element name="eventId" type="xs:string" oraxdb:propNumber="3801" oraxdb:global="true" oraxdb:SQLName="eventId" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="eventId742_TAB" oraxdb:defaultTableSchema="MYUSER"/> <xs:element name="vin" type="xs:string" oraxdb:propNumber="3802" oraxdb:global="true" oraxdb:SQLName="vin" oraxdb:SQLType="VARCHAR2" oraxdb:memType="1" oraxdb:defaultTable="vin741_TAB" oraxdb:defaultTableSchema="MYUSER"/> </xs:schema>
How can I create an index on these tables of the ordered collection to improve performance?
I found the example at http://docs.Oracle.com/CD/E11882_01/AppDev.112/e23094/xdb_rewrite.htm#ADXDB5859 but am not able to apply to this particular case...
Thank you in advance...
If the schema is not annotated and XS: Integer and XS: String are mapped to types of data NUMBER and VARCHAR2 (4000), so you must use in your query to avoid typecasting unnecessary operations.
You must also use XMLTABLEs chained when accessing a parent/child instead of a FLWOR expression relationship, otherwise the CBO cannot rewrite the XQuery query correctly (maybe it's fixed in the latest version).
If you make these changes, the plan should show the cleaner predicates:
SQL > SELECT EVENT_ID, MESSAGE_ID, ACTION_TYPE, ACTION_SUB_ID, ACTION_TIMESTAMP
2 FROM test_table
3 XMLTABLE ('/ monitoring ')
4 COLUMNS XML_CONTENT OF PASSAGE
5 WAY of VARCHAR2 (4000) EVENT_ID "ID."
6 actions for XMLTYPE PATH 'action '.
(7) T1,
8 XMLTABLE ('/ action')
Shares of PASSAGE 9 COLUMNS
NUMBER of ACTION_SUB_ID 10 PATH "actionSubId."
11 PATH of VARCHAR2 (4000) ACTION_TYPE "type."
12 WAY of NUMBER ACTION_TIMESTAMP 'time '.
(13) T2
14 WHERE EVENT_ID IS NOT NULL
15 AND ACTION_SUB_ID IS NOT NULL
16;
Execution plan
----------------------------------------------------------
Hash value of plan: 1763884463
------------------------------------------------------------------------------------------------
| ID | Operation | Name | Lines | Bytes | Cost (% CPU). Time |
------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 109. 220K | 6 (17). 00:00:01 |
| 1. THE MERGE JOIN. | 109. 220K | 6 (17). 00:00:01 |
|* 2 | TABLE ACCESS BY INDEX ROWID | TEST_TABLE | 11. 352. 2 (0) | 00:00:01 |
| 3. INDEX SCAN FULL | SYS_C007567 | 11. | 1 (0) | 00:00:01 |
|* 4 | JOIN TYPE. | 109. 216K | 4 (25) | 00:00:01 |
|* 5 | TABLE ACCESS FULL | T_OR_MON_ACTION | 106 S 216K | 3 (0) | 00:00:01 |
------------------------------------------------------------------------------------------------
Information of predicates (identified by the operation identity card):
---------------------------------------------------
2 - filter("TEST_TABLE".") (' SYS_NC00012$ ' IS NOT NULL)
4 - access("SYS_ALIAS_0".") NESTED_TABLE_ID "=" TABLE_TEST. " ("' SYS_NC0000800009$ ')
filter ("SYS_ALIAS_0". "NESTED_TABLE_ID"="TABLE_TEST" "." " ("SYS_NC0000800009$")
5 - filter("SYS_ALIAS_0"." actionSubId» IS NOT NULL)
Note
-----
-dynamic sample used for this survey (level = 2)
Now, if it is still necessary, everything boils down to choosing a technique for index NULL values:
-composite index with a column not zero or constant
-FBI
-bitmap image
Choose the one that best fits your data, the selectivity and activity on the tables.
-
Dear all,
OS - Windows server 2012 R2
version - 11.2.0.1.0
Server: production server
ORA-31693: Data Table object 'AWSTEMPUSER '. "' TEMPMANUALMAPRPT_273 ' failed to load/unload and being ignored because of the error:
ORA-02354: Error exporting/importing data
ORA-00942: table or view does not exist
When taken expdp and faced error mentioned above. but expdp completed successfully with waring as below.
Work "AWSCOMMONMASTER". "" FULLEXPJOB26SEP15_053001 "finished with 6 errors at 09:30:54
(1) what is the error
(2) is there any problem in the dump because file as above of the error. If Yes, then I'll resume expdp.
Please suggest me. Thanks in advance
Hello
I suspect that what has happened, is that demand has dropped a temporary table to during the time that you run the export - consider this series of events
(1) temp table created by application
(2) start expdp work - including this table
(3) the extracted table metadata
(4) the application deletes the table
(5) expdp is trying to retrieve data from the table - and gets the above error.
Just to confirm with the enforcement team that the table is just a temporary thing - it certainly seems it name.
See you soon,.
Rich
-
(1) I received an email like this:
Event_alert
2013-09-17 22:00:16 ERROR OGG - 01028 Oracle GoldenGate Capture for Oracle, ext_1.prm: object with the number of the object 80673 is compressed. Compression of the table is not supported.
2013-09-17 22:00:16 ERROR OGG - 01668 Oracle GoldenGate Capture for Oracle, ext_1.prm: PROCESS ABENDING.
(2) I have not found the OBJ
SQL > select OBJECT_ID, OBJECT_NAME from dba_objects where object_id = 80673;
no selected line
(3) change a few times the process EXT recover;
(4) my excerpt settings
Cat ext_1.prm
EXTRACT ext_1
Ogg, ogg PASSWORD USERID
TRANLOGOPTIONS EXCLUDEUSER ogg
SETENV (NLS_LANG = AMERICAN_AMERICA. ZHS16GBK)
-SETENV (NLS_LANG = AMERICAN_AMERICA. AL32UTF8)
EXTTRAIL ./dirdat/t1
DYNAMICRESOLUTION
TABLE YBK.*;
This is a bug that has been fixed
Excerpt from abending with Table of Compression is not supported, even if the database has no tables compressed. (Doc ID 1510691.1)
event text: Oracle GoldenGate Capture for Oracle, ext_1.prm: object with the number of the object 86173 is compressed. Compression of the table is not supported.
tableexclude *. DBMS_TABCOMP_TEMP *.
Maybe you are looking for
-
Unable to download the application over wifi
Hello! Hope that everyone else is doing great! I need assistance with the download request. Whenever an application is more that 100MB ios detects that it cannot be downloaded because it's over the limit, that what I do is to connect to a secure WiFi
-
How can I get the the document icon on my toolbar on my iMac
I got the icon in the toolbar of the document and he moved to the screen and he disappeared, how do I get that back.
-
Timed software a generation of impulses - USB-6009
Hello. I searched for a reliable way to produce a pulse point by point with the USB-6009. My question is whether or not it is possible to produce such a signal without hardware timing or a counter as the USB-6009 supports neither. Is the closest I've
-
HP Pavilion HPE h8-1222: HP Pavilion HPE h8-1222 cannot find graphics card GTX970
Hi I have a HP Pavilion HPE h8-1222, ReadonHD 7670 graphics card there if I bouth the computer. The craphic map is made and I bouth a new GTX970 of Zotac. I noticed that I need a new power supply and bouth Smart650W from Thermaltake. If I put the new
-
HI, I have a sony vaio VGN-CR21S WHAT and I've upgraded to windows 7, but now my motion eye camera does not work what do I do, please quick help all I need is someone find my phone on the Sony site and that will be a pretty