Error in select query with package size
Hi Experts,
I have an issue.
SELECT * FROM (w_tab-tablename) I
NTO CORRESPONDING FIELDS OF TABLE <lt_data> PACKAGE SIZE 10000.
Am splitting the table for every 10000 records,for first time the select query is successful.
But when it comes for the second 10000 records,its throwing the following dump.
"DBIF_RSQL_INVALID_CURSOR"
Help Appreciated
Hi,
There are a few instances where you get this error.
1) If you are debugging inside select ... endselect.
2) You have written any of the below statements inside select ... endselect.
Please look at the dump .. you'll find the below ..
MESSAGE (apart from MESSAGE S...)
COMMIT WORK
ROLLBACK WORK
BREAK-POINT
WAIT
CALL FUNCTION ... DESTINATION (synchronous RFC)
CALL FUNCTION ... STARTING NEW TASK
RECEIVE RESULTS
CALL DIALOG
CALL SELECTION-SCREEN
CALL TRANSACTION
CALL SCREEN, or any other statement that results in the display of a
new screen
Regards,
Srini.
Similar Messages
-
Select query with package size
Hi ,
i am trying to use select qurey with package size , to limt the data fetching .
Can any one gives sqample code or idea select query using 'package size'.
Advance Thanks,
Regards
veeraHi,
SELECT vbeln erdat
FROM vbak
INTO TABLE li_vbak PACKAGE SIZE 50.
SELECT posnr matnr meins
FROM vbap
INTO TABLE li_vbap
FOR ALL ENTRIES IN li_vbak
WHERE vbeln = li_vbak-vbeln.
Hi i want to select only from vbeln ,ie single selct query only using pakage size.200,blocks in data base ..How ?
Regards
veera -
How to write XSJS Select Query with input parameters
Hello Experts,
I am creating a xsjs file and in that file I am trying to write a Select Query based on a Calculation View
I have tried it the following way:
var query = 'SELECT TOP 100 \"Name\", \"Address\", \"City\", \"Country\" FROM \"_SYS_BIC\".\"Test.HL/AddressView\"'
+ 'WITH PARAMETERS(\'PLACEHOLDER\' = (\'$$P_Name$$\', \' Akhil \'),'
+ '\'PLACEHOLDER\' = (\'$$P_City$$\', \' Lucknow \'))';
But it gives me the "Mixed spaces and tabs error".
How should I write XSJS Select Query with input parameters?
Regards,
Rohit>But it gives me the "Mixed spaces and tabs error".
Mixed spaces and tabs has nothing to do with the syntax of the statement. You used both spaces and the tab in the content - which JSLint doesn't like. Remove the beginning spaces of each line and use only one or the other.
The actual syntax of your statement doesn't look right. The problem is that you are escaping the \ when you don't need to if you are using ' instead of " for your string. You escape with \" in the first line but then escape with \' in the 2nd and 3rd line. That is going to cause serious parsing problems with the command. -
Absolute dynamic select query with dynamic join and where
Has anyone ever tried creating an absolutely dynamic SELECT query with dynamic Join and Where conditions.
I have a requirement of creating such a query in an Utility Class, and i have written the code. But its throwing my sysntax errors.
Please let me know where am I going wrong OR is it really possible to create such a dynamic Query??
SELECT (FIELDS) INTO TABLE IT_TABLES
FROM ( (ME->TABLE1) inner join ( me->table2 )
on ( on_condition ) )
WHERE (me->where_fields).
Ags.It worked for me in a following way:
select * into corresponding fields of table <result_table>
from (join_string)
where (l_where).
Where the contents of join_string were dynamically build using concatenation. So it will be something like
concatenate ME->TABLE1 'as a INNER JOIN' me->table2 'as b ON (' into join_string separated by space.
<...>
add here matching/reference colums, something like
concatenate 'a~' me->TABLE1_JOIN_COL into temp1.
concatenate 'b~' me->TABLE2_JOIN_COL into temp2.
concatenate join_string temp1 '=' temp2 into join_string separated by space.
<...>
concatenate join_string ')' into join_string separated by space.
And then use similar approach for l_where variable. -
BDC select query with addition based on all If conditions
Hi can any one send me the select query with conditions like
If Itab is not initial.
Endif. and if possible with valiadations messages also.
IF CHECK_NUMBER of CHECK_ADVICE of the flat file = PAYR-CHECT. Then update SAP field BSEG-XREF2 .
9. When Flat file check Number = PAYR-CHECT then Insert or Update Flat file RECEIPT_DATE into SAP field BSEG-XREF1.
Please send me immediately.> SELECT rsnum
> rspos
> matnr
> werks
> lgort
> shkzg
> aufnr
> bdmng
> enmng
> FROM resb INTO TABLE it_rsnum FOR ALL ENTRIES IN it_aufnr
> WHERE rsnum EQ it_aufnr-rsnum
> AND xloek NE 'X'
> AND postp NE 'X'
> AND resbbdmng GE resbenmng.
> ENDIF.
>
> Database Table RESB: 40,000,000 Records (40 Million)
> Internal Table it_aufnr: 20,000 Entries
> Entries selected from RESB: 150,000.
>
Hi,
the problem is the big for all entries table.
Your 20.000 records FAE will be split into SEVERAL sql statements depending on the size of the table.
Where do you get the it_auftrn from?
If it's another transparent table try to JOIN this table to your big table.
SELECT rsnum
rspos
matnr
werks
lgort
shkzg
aufnr
bdmng
enmng
FROM resb JOIN tab_auftrn on resbrsnum = tab_auftrnauftrn
AND xloek NE 'X'
AND postp NE 'X'
AND resbbdmng GE resbenmng.
Make sure that your WHERE filter and the JOIN keys on both tables are supported by indexes.
150.000 records about of 40 Mio. can definitly be serviced by an appropriate index:
i.e. Index fields (check your PK or secondary indexes):
rsnum
enmng
aufnr
bye
yk -
Issue in select query with where clause
Hi guys,
I'm facing an issue while using select query with the where clause. When I'm selecting all the data from the table it returns the correct result. But when I'm using the where clause to get the specific rows from the table it returns no rows. But the data I'm trying to fetch using the where condition exists in the table.
Here is my query which causing the issue,
select * from mytable where myfield = 'myvalue'
But if I use the following query it returns the result correctly.
select * from mytable
Also the myfield value 'myvalue' exists in the table.
I have tried by running this query in both SQL Developer and SQL Plus. I have tried this query in mssql as well. It works perfectly and returns correct result sets for both the queries I have mentioned above. I'm unable to predict the issue as I'm new to ORACLE. Please help.
Thanks,
Ram.Hi Ram,
I experienced an issue similar to this with a varchar2 field. Some of our records had a hidden newline character at the end of them, which was making queries like the one below fail:
select * from employees
where email = '[email protected]'The best way I found to detect this was to use
select 'XX'||email||'XX' from employeesTo make sure that there were no newlines. But that is just a guess. If you could provide some example table data and the outputs of your selects, it would be helpful.
Jeff -
Dynamic select query with dynamic where condition
Hi all,
I want to use the dynamic select query with dynamic where condition. For that I used the below code but I am getting dump when using this code.
Please advice, if there is any other way to achieve this requirement.
Thanks,
Sanket Sethi
Code***************
PARAMETERS: p_tabnam TYPE tabname,
p_selfl1 TYPE edpline,
p_value TYPE edpline,
p_where1 TYPE edpline .
DATA: lt_where TYPE TABLE OF edpline,
lt_sel_list TYPE TABLE OF edpline,
l_wa_name TYPE string,
ls_where TYPE edpline,
l_having TYPE string,
dref TYPE REF TO data,
itab_type TYPE REF TO cl_abap_tabledescr,
struct_type TYPE REF TO cl_abap_structdescr,
elem_type TYPE REF TO cl_abap_elemdescr,
comp_tab TYPE cl_abap_structdescr=>component_table,
comp_fld TYPE cl_abap_structdescr=>component.
TYPES: f_count TYPE i.
FIELD-SYMBOLS : <lt_outtab> TYPE ANY TABLE,
* <ls_outtab> TYPE ANY,
<l_fld> TYPE ANY.
struct_type ?= cl_abap_typedescr=>describe_by_name( p_tabnam ).
elem_type ?= cl_abap_elemdescr=>describe_by_name( 'F_COUNT' ).
comp_tab = struct_type->get_components( ).
comp_fld-name = 'F_COUNT'.
comp_fld-type = elem_type.
APPEND comp_fld TO comp_tab.
struct_type = cl_abap_structdescr=>create( comp_tab ).
itab_type = cl_abap_tabledescr=>create( struct_type ).
l_wa_name = 'l_WA'.
CREATE DATA dref TYPE HANDLE itab_type.
ASSIGN dref->* TO <lt_outtab>.
*CREATE DATA dref TYPE HANDLE struct_type.
*ASSIGN dref->* TO <ls_outtab>.
* Creation of the selection fields
APPEND p_selfl1 TO lt_sel_list.
APPEND 'COUNT(*) AS F_COUNT' TO lt_sel_list.
** Creation of the "where" clause
*CONCATENATE p_selfl1 '= '' p_value ''.'
* INTO ls_where
* SEPARATED BY space.
*APPEND ls_where TO lt_where.
* Creation of the "where" clause
APPEND p_where1 TO lt_where.
* Creation of the "having" clause
l_having = 'count(*) >= 1'.
* THE dynamic select
SELECT (lt_sel_list)
FROM (p_tabnam)
INTO CORRESPONDING FIELDS OF TABLE <lt_outtab>.
* WHERE (lt_where).Hi Sanket,
The above given logic of mine works for you, put the code in the If condition and try-
just like below:
IF NOT P_EBELN IS INITIAL.
lt_where = '& = ''&'' '.
REPLACE '&' WITH p_ebeln INTO lt_where.
REPLACE '&' WITH field_value INTO lt_where.
SELECT (lt_sel_list) INTO CORRESPONDING FIELDS OF TABLE <lt_outtab>
FROM (p_tabnam)
WHERE (lt_where).
ENDIF.
thanks\
Mahesh -
I need to add a single field from with_item table . need to write select query with reference to company code , account doc no , fiscal year
Hi Arun ,
Can you explain little bit more ??
what is account doc no?
what are the transactions should be displayed in your output??
-Rajesh N -
How to re-write this big SELECT Query with INNER JOINs?
Hi Experts
I have a performance killer SELECT query with an inner join of 3 tables u2013 VBAP, VBAK and VBEP together, which populates records to an internal table INT_COLL_ORD. Based on these records selected, in another SELECT query, records are fetched from VBUK table to the internal table INT_VBUK.
SELECT A~VBELN A~POSNR A~MATNR A~KWMENG A~KBMENG A~ERDAT A~ERZET A~PSTYV D~AUART E~ETTYP E~EDATU
INTO TABLE INT_TAB_RES
FROM VBAP AS A INNER JOIN VBAK AS D
ON D~VBELN EQ A~VBELN AND D~MANDT EQ A~MANDT
INNER JOIN VBEP AS E
ON E~VBELN EQ A~VBELN AND E~POSNR EQ A~POSNR AND E~MANDT EQ A~MANDT
WHERE A~VBELN IN s_VBELN AND
D~auart in s_auart AND
D~vkorg in s_vkorg AND
D~vbtyp eq 'C' AND
( ( matnr LIKE c_prefix_sp AND zz_msposnr NE 0 AND kbmeng EQ 0 )
OR ( matnr LIKE c_prefix_fp AND kwmeng NE A~kbmeng ) ) AND
A~ABGRU EQ SPACE AND
A~MTVFP IN R_MTVFP AND
A~PRCTR IN R_PRCT AND
E~ETENR EQ '1'.
SORT INT_COLL_ORD BY VBELN POSNR ETTYP.
DELETE ADJACENT DUPLICATES FROM INT_TAB_RES COMPARING VBELN POSNR.
CHECK NOT INT_TAB_RES [] IS INITIAL.
SELECT VBELN UVALL CMGST INTO TABLE INT_VBUK
FROM VBUK FOR ALL ENTRIES IN INT_TAB_RES
WHERE VBELN = INT_TAB_RES-VBELN AND UVALL NE 'A'.
Now, the requirement is:
I want to split this query. Like, first join VBAK and VBUK first. With this selection, go to the inner join of VBAP and VBEP (on key VBELN) to get the results. How can I re-write this Query?
Please help.
Thx n RgdsHi Nagraj
As of your suggestion, I have re-written the query as below:
* Declarations
TYPES: BEGIN OF TYP_COLL_ORD,
VBELN LIKE VBAK-VBELN,
POSNR LIKE VBUP-POSNR,
MATNR LIKE VBAP-MATNR,
KWMENG LIKE VBAP-KWMENG,
KBMENG LIKE VBAP-KBMENG,
ERDAT LIKE VBAK-ERDAT,
ERZET LIKE VBAK-ERZET,
PSTYV LIKE VBAP-PSTYV,
AUART LIKE VBAK-AUART, u201Calready exists in type
ETTYP LIKE VBEP-ETTYP,
EDATU LIKE VBEP-EDATU.
TYPES: END OF TYP_COLL_ORD.
DATA: INT_COLL_ORD TYPE TABLE OF TYP_COLL_ORD WITH HEADER LINE.
TYPES: BEGIN OF TYP_VBUK,
AUART LIKE VBAK-AUART, u201Chave added this field
VBELN LIKE VBUK-VBELN,
UVALL LIKE VBUK-UVALL,
CMGST LIKE VBUK-CMGST.
TYPES: END OF TYP_VBUK.
DATA: INT_VBUK TYPE TABLE OF TYP_VBUK WITH HEADER LINE.
*QUERY#1 u2013 for VBAK & VBUK Join
SELECT A~AUART B~VBELN B~UVALL B~CMGST
INTO TABLE INT_VBUK
FROM VBAK AS A INNER JOIN VBUK AS B
ON A~VBELN EQ B~VBELN
WHERE A~VBELN IN s_VBELN AND
A~auart in s_auart AND
A~vkorg in s_vkorg AND
A~vbtyp eq 'C' AND
B~UVALL NE 'A'.
IF NOT INT_VBUK[] IS INITIAL.
SORT INT_VBUK BY VBELN.
DELETE ADJACENT DUPLICATES FROM INT_VBUK COMPARING VBELN.
*QUERY#2 u2013 for VBAP & VBEP Join
SELECT A~VBELN A~POSNR A~MATNR A~KWMENG A~KBMENG A~ERDAT A~ERZET A~PSTYV B~ETTYP B~EDATU
INTO TABLE INT_COLL_ORD
FROM VBAP AS A INNER JOIN VBEP AS B
ON B~VBELN EQ A~VBELN AND B~POSNR EQ A~POSNR AND B~MANDT EQ A~MANDT
FOR ALL ENTRIES IN INT_VBUK
WHERE A~VBELN = INT_VBUK-VBELN AND
( ( matnr LIKE c_prefix_sp AND zz_msposnr NE 0 AND kbmeng EQ 0 )
OR ( matnr LIKE c_prefix_fp AND kwmeng NE A~kbmeng ) ) AND
A~ABGRU EQ SPACE AND
A~MTVFP IN R_MTVFP AND
A~PRCTR IN R_PRCT AND
B~ETENR EQ '1'.
ENDIF.
SORT INT_COLL_ORD BY VBELN POSNR ETTYP.
DELETE ADJACENT DUPLICATES FROM INT_COLL_ORD
COMPARING VBELN POSNR.
CHECK NOT INT_COLL_ORD[] IS INITIAL.
LOOP AT INT_COLL_ORD.
CLEAR: L_MTART,L_ATPPR,L_ETTYP.
IF L_PREVIOUS_ETTYP NE INT_COLL_ORD-ETTYP OR
L_PREVIOUS_AUART NE INT_COLL_ORD-AUART.
READ TABLE INT_OVRCTL WITH KEY AUART = INT_COLL_ORD-AUART ETTYP = INT_COLL_ORD-ETTYP.
CHECK SY-SUBRC NE 0.
Now, the issue is:
Please note that declaration for INT_COLL_ORD has a field AUART, which is used in further parts of program (see the statement just above)
But, since neither VBAP nor VBEP contains AUART field, it cannot be fetched through the QUERY#2. So this value is not populated into INT_COLL_ORD through SELECT Query.
Since this field is used in later part of program & that the internal table has no value for this field, it dumps!!
How to include this value into the INT_COLL_ORD?
Plz suggest.... -
Error executing a query with large result set
Dear all,
after executing a query which uses key figures with exception aggregation the BIA-server log (TrexIndexServerAlert_....trc) displays the following messages:
2009-09-29 10:59:00.433 e QMediator QueryMediator.cpp(00324) : 6952; Error executing physical plan: AttributeEngine: not enough memory.;in executor::Executor in cube: bwp_v_tl_c02
2009-09-29 10:59:00.434 e SERVER_TRACE TRexApiSearch.cpp(05162) : IndexID: bwp_v_tl_c02, QueryMediator failed executing query, reason: Error executing physical plan: AttributeEngine: not enough memory.;in executor::Executor in cube: bwp_v_tl_c02
--> Does anyone know what this message exactly means? - I fear that the BIA-Installation is running out of physical memory, but I appreciate any other opinion.
- Package Wise Read (SAP Note 1157582) does not solve the problem as the error message is not: "AggregateCalculator returning out of memory with hash table size..."
- To get an impression of the data amount I had a look at table RSDDSTAT_OLAP of a query with less amount of data:
Selected rows : 50.000.000 (Event 9011)
Transferred rows : 4.800.000 (Event 9010)
It is possible to calculate the number of cells retreived from one index by multiplying the number of records from table RSDDSTAT_OLAP by the number of key figures from the query. In my example it is only one key figure so 4.800.000 are passed to the analytical engine.
--> Is there a possibility to find this figure in some kind of statistic table? This would be helpful for complex queries.
I am looking forward to your replies,
Best regards
BjoernHi Björn,
I recommend you to upgrade to rev 52 or 53. Rev. 49 is really stable but there are some bugs in it and if you use BW SP >= 17 you can use some features.
Please refer to this thread , you shouldn't´t use more than 50% (the other 50% are for reporting) of your memory, therefor I have stolen this quote from Vitaliy:
The idea is that data all together for all of your BIA Indexes does not consume more then 50% of total RAM of active blades (page memory cannot be counted!).
The simpliest test is during a period when no one is using the accelerator, remove all indexes (including temporary) from main memory of the BWA, and then load all indexes for all InfoCubes into ain memory. Then check your RAM utilization.
Regards,
-Vitaliy
Regards,
Jens -
Hi all,
i am getting a below error whenever executing the below select query....
some times it will show dead lock detected while waiting for resource and terminated...
some times it executes and gives result..
but all the time it writes an alert to alert log
Plesae suggest how to resolve the issue..........
Thanks in advance
Env: Linux / Oracle 11.2.0.3.3
Error from alert log:
Errors in file /u01/oracle/oracle/diag/rdbms/bdrdb/bdrdb/trace/bdrdb_p017_6076.trc:
ORA-00060: deadlock detected while waiting for resource
ORA-10387: parallel query server interrupt (normal)
Trace file info... bdrdb_p017_6076.trc:
Trace file /u01/oracle/oracle/diag/rdbms/bdrdb/bdrdb/trace/bdrdb_p017_6076.trc
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
ORACLE_HOME = /u01/oracle/oracle/product/11.2.0/dbhome_1
System name: Linux
Node name: bdrdb.cteplindia.com
Release: 2.6.18-308.el5PAE
Version: #1 SMP Fri Jan 27 17:40:09 EST 2012
Machine: i686
Instance name: bdrdb
Redo thread mounted by this instance: 1
Oracle process number: 92
Unix process pid: 6076, image: [email protected] (P017)
*** 2013-11-04 23:18:57.915
*** SESSION ID:(423.59970) 2013-11-04 23:18:57.915
*** CLIENT ID:() 2013-11-04 23:18:57.915
*** SERVICE NAME:(bdrdb) 2013-11-04 23:18:57.915
*** MODULE NAME:() 2013-11-04 23:18:57.915
*** ACTION NAME:() 2013-11-04 23:18:57.915
*** 2013-11-04 23:18:57.915
DEADLOCK DETECTED ( ORA-00060 )
[Transaction Deadlock]
Deadlock graph:
---------Blocker(s)-------- ---------Waiter(s)---------
Resource Name process session holds waits process session holds waits
PS-00000001-00000011 92 423 S 33 128 S X
BF-2ed08c01-00000000 33 128 S 92 423 S X
session 423: DID 0001-005C-00081126 session 128: DID 0001-0021-00067D23
session 128: DID 0001-0021-00067D23 session 423: DID 0001-005C-00081126
DEADLOCK DETECTED ( ORA-00060 )
[Transaction Deadlock]
Deadlock graph:
---------Blocker(s)-------- ---------Waiter(s)---------
Resource Name process session holds waits process session holds waits
PS-00000001-00000011 92 423 S 33 128 S X
BF-2ed08c01-00000000 33 128 S 92 423 S X
session 423: DID 0001-005C-00081126 session 128: DID 0001-0021-00067D23
session 128: DID 0001-0021-00067D23 session 423: DID 0001-005C-00081126
Rows waited on:
Session 423: no row
Session 128: obj - rowid = 00021DC1 - AAAh3BAAVAAAQL/AAA
(dictionary objn - 138689, file - 21, block - 66303, slot - 0)
----- Information for the OTHER waiting sessions -----
Session 128:
sid: 128 ser: 46176 audsid: 1836857 user: 102/DBLOCAL
flags: (0x8000041) USR/- flags_idl: (0x1) BSY/-/-/-/-/-
flags2: (0x40009) -/-/INC
pid: 33 O/S info: user: oracle, term: UNKNOWN, ospid: 31611
image: [email protected]
client details:
O/S info: user: masked, term: masked, ospid: 5924:568
machine: masked program: Toad.exe
application name: TOAD background query session, hash value=526966934
current SQL:
application name: TOAD background query session, hash value=526966934
current SQL:
SELECT DISTINCT B_FP_TEST.TEST_ID
FROM B_FP_TEST,
B_USER_INFO,
J_FP_INVESTIGATOR,
L_TEST_STATUS,
L_ATMS_TEST_TYPE,
j_op_test_anml
WHERE B_FP_TEST.TEST_ID = J_FP_INVESTIGATOR.TEST_ID
AND B_FP_TEST.TEST_TYPE_ID = L_ATMS_TEST_TYPE.ATMS_TEST_TYPE_ID
AND B_USER_INFO.B_USER_INFO_ID = J_FP_INVESTIGATOR.INVESTIGATOR_ID
AND B_FP_TEST.STATUS_ID = L_TEST_STATUS.STATUS_ID
AND B_FP_TEST.IS_DELETED = :"SYS_B_00"
AND B_FP_TEST.TEST_NUM NOT IN (:"SYS_B_01", :"SYS_B_02", :"SYS_B_03")
AND L_ATMS_TEST_TYPE.IS_DELETED = :"SYS_B_04"
AND J_FP_INVESTIGATOR.is_pi = :"SYS_B_05"
AND L_TEST_STATUS.STATUS IN (:"SYS_B_06", :"SYS_B_07", :"SYS_B_08")
AND j_op_test_anml.test_id = B_FP_TEST.TEST_ID
----- End of information for the OTHER waiting sessions -----
*** 2013-11-04 23:18:57.916
dbkedDefDump(): Starting a non-incident diagnostic dump (flags=0x0, level=3, mask=0x0)
----- Error Stack Dump -----
ORA-00060: deadlock detected while waiting for resource
ORA-10387: parallel query server interrupt (normal)
----- SQL Statement (None) -----
Current SQL information unavailable - no cursor.
----- Call Stack Trace -----
calling call entry argument values in hex
location type point (? means dubious value)
More......
Query:
SELECT DISTINCT B_FP_TEST.TEST_ID
FROM B_FP_TEST,
B_USER_INFO,
J_FP_INVESTIGATOR,
L_TEST_STATUS,
L_ATMS_TEST_TYPE,
j_op_test_anml
WHERE B_FP_TEST.TEST_ID = J_FP_INVESTIGATOR.TEST_ID
AND B_FP_TEST.TEST_TYPE_ID = L_ATMS_TEST_TYPE.ATMS_TEST_TYPE_ID
AND B_USER_INFO.B_USER_INFO_ID = J_FP_INVESTIGATOR.INVESTIGATOR_ID
AND B_FP_TEST.STATUS_ID = L_TEST_STATUS.STATUS_ID
AND B_FP_TEST.IS_DELETED = 0
AND B_FP_TEST.TEST_NUM NOT IN (1, 2, 99)
AND L_ATMS_TEST_TYPE.IS_DELETED = 0
AND J_FP_INVESTIGATOR.is_pi = 1
AND L_TEST_STATUS.STATUS IN ('Scheduled', 'In-Progress', 'Completed')
AND j_op_test_anml.test_id = B_FP_TEST.TEST_ID
AND ( (j_op_test_anml.end_date BETWEEN TO_DATE ('28-Oct-2013') - 1
AND TO_DATE ('04-Nov-2013') + 1)
OR (j_op_test_anml.start_date BETWEEN TO_DATE ('28-Oct-2013') - 1
AND TO_DATE ('04-Nov-2013') + 1)
OR (TO_DATE ('28-Oct-2013') BETWEEN j_op_test_anml.start_date
AND j_op_test_anml.end_date)
OR (TO_DATE ('04-Nov-2013') BETWEEN j_op_test_anml.start_date
AND j_op_test_anml.end_date))
AND L_ATMS_TEST_TYPE.IS_DELETED = 0
AND B_FP_TEST.DATASOURCE_ID = 9
Query Exp plan:
Plan hash value: 3398228788
| Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | Pstart| Pstop | TQ |IN-OUT| PQ Distrib |
| 0 | SELECT STATEMENT | | 1501 | 102K| 1929 (1)| 00:00:24 | | | | | |
| 1 | HASH UNIQUE | | 1501 | 102K| 1929 (1)| 00:00:24 | | | | | |
| 2 | CONCATENATION | | | | | | | | | | |
| 3 | PX COORDINATOR | | | | | | | | | | |
| 4 | PX SEND QC (RANDOM) | :TQ30005 | 241 | 16870 | 800 (1)| 00:00:10 | | | Q3,05 | P->S | QC (RAND) |
|* 5 | HASH JOIN | | 241 | 16870 | 800 (1)| 00:00:10 | | | Q3,05 | PCWP | |
| 6 | PX RECEIVE | | 246 | 15990 | 797 (1)| 00:00:10 | | | Q3,05 | PCWP | |
| 7 | PX SEND HASH | :TQ30004 | 246 | 15990 | 797 (1)| 00:00:10 | | | Q3,04 | P->P | HASH |
|* 8 | HASH JOIN | | 246 | 15990 | 797 (1)| 00:00:10 | | | Q3,04 | PCWP | |
| 9 | PX RECEIVE | | 573 | 29223 | 793 (1)| 00:00:10 | | | Q3,04 | PCWP | |
| 10 | PX SEND HASH | :TQ30003 | 573 | 29223 | 793 (1)| 00:00:10 | | | Q3,03 | P->P | HASH |
|* 11 | HASH JOIN | | 573 | 29223 | 793 (1)| 00:00:10 | | | Q3,03 | PCWP | |
| 12 | BUFFER SORT | | | | | | | | Q3,03 | PCWC | |
| 13 | PX RECEIVE | | | | | | | | Q3,03 | PCWP | |
| 14 | PX SEND BROADCAST | :TQ30000 | | | | | | | | S->P | BROADCAST |
| 15 | NESTED LOOPS | | | | | | | | | | |
| 16 | NESTED LOOPS | | 485 | 20855 | 781 (0)| 00:00:10 | | | | | |
| 17 | TABLE ACCESS BY GLOBAL INDEX ROWID| J_OP_TEST_ANML | 485 | 10185 | 296 (0)| 00:00:04 | ROWID | ROWID | | | |
|* 18 | INDEX RANGE SCAN | IDX$$_2D190001 | 485 | | 4 (0)| 00:00:01 | | | | | |
|* 19 | INDEX UNIQUE SCAN | FT_TEST_ID_PK | 1 | | 0 (0)| 00:00:01 | | | | | |
|* 20 | TABLE ACCESS BY GLOBAL INDEX ROWID | B_FP_TEST | 1 | 22 | 1 (0)| 00:00:01 | ROWID | ROWID | | | |
| 21 | PX BLOCK ITERATOR | | 70382 | 549K| 11 (0)| 00:00:01 | | | Q3,03 | PCWC | |
|* 22 | TABLE ACCESS FULL | J_FP_INVESTIGATOR | 70382 | 549K| 11 (0)| 00:00:01 | | | Q3,03 | PCWP | |
| 23 | BUFFER SORT | | | | | | | | Q3,04 | PCWC | |
| 24 | PX RECEIVE | | 3 | 42 | 3 (0)| 00:00:01 | | | Q3,04 | PCWP | |
| 25 | PX SEND HASH | :TQ30001 | 3 | 42 | 3 (0)| 00:00:01 | | | | S->P | HASH |
|* 26 | TABLE ACCESS FULL | L_TEST_STATUS | 3 | 42 | 3 (0)| 00:00:01 | | | | | |
| 27 | BUFFER SORT | | | | | | | | Q3,05 | PCWC | |
| 28 | PX RECEIVE | | 30 | 150 | 3 (0)| 00:00:01 | | | Q3,05 | PCWP | |
| 29 | PX SEND HASH | :TQ30002 | 30 | 150 | 3 (0)| 00:00:01 | | | | S->P | HASH |
|* 30 | TABLE ACCESS FULL | L_ATMS_TEST_TYPE | 30 | 150 | 3 (0)| 00:00:01 | | | | | |
| 31 | NESTED LOOPS | | | | | | | | | | |
| 32 | NESTED LOOPS | | 3 | 210 | 329 (1)| 00:00:04 | | | | | |
| 33 | NESTED LOOPS | | 3 | 195 | 329 (1)| 00:00:04 | | | | | |
|* 34 | HASH JOIN | | 2 | 114 | 325 (1)| 00:00:04 | | | | | |
| 35 | NESTED LOOPS | | | | | | | | | | |
| 36 | NESTED LOOPS | | 6 | 258 | 322 (1)| 00:00:04 | | | | | |
| 37 | PARTITION RANGE SINGLE | | 6 | 126 | 316 (1)| 00:00:04 | 7 | 7 | | | |
|* 38 | TABLE ACCESS FULL | J_OP_TEST_ANML | 6 | 126 | 316 (1)| 00:00:04 | 7 | 7 | | | |
|* 39 | INDEX UNIQUE SCAN | FT_TEST_ID_PK | 1 | | 0 (0)| 00:00:01 | | | | | |
|* 40 | TABLE ACCESS BY GLOBAL INDEX ROWID | B_FP_TEST | 1 | 22 | 1 (0)| 00:00:01 | ROWID | ROWID | | | |
|* 41 | TABLE ACCESS FULL | L_TEST_STATUS | 3 | 42 | 3 (0)| 00:00:01 | | | | | |
|* 42 | TABLE ACCESS BY INDEX ROWID | J_FP_INVESTIGATOR | 1 | 8 | 2 (0)| 00:00:01 | | | | | |
|* 43 | INDEX RANGE SCAN | FI_TEST_ID_PK | 1 | | 1 (0)| 00:00:01 | | | | | |
|* 44 | INDEX UNIQUE SCAN | L_ATMS_TEST_TYPE_PK | 1 | | 0 (0)| 00:00:01 | | | | | |
|* 45 | TABLE ACCESS BY INDEX ROWID | L_ATMS_TEST_TYPE | 1 | 5 | 1 (0)| 00:00:01 | | | | | |
| 46 | PX COORDINATOR | | | | | | | | | | |
| 47 | PX SEND QC (RANDOM) | :TQ20003 | | | | | | | Q2,03 | P->S | QC (RAND) |
| 48 | NESTED LOOPS | | | | | | | | Q2,03 | PCWP | |
| 49 | NESTED LOOPS | | 33 | 2310 | 399 (2)| 00:00:05 | | | Q2,03 | PCWP | |
|* 50 | HASH JOIN | | 33 | 2145 | 397 (2)| 00:00:05 | | | Q2,03 | PCWP | |
| 51 | PX RECEIVE | | 78 | 3978 | 393 (1)| 00:00:05 | | | Q2,03 | PCWP | |
| 52 | PX SEND HASH | :TQ20002 | 78 | 3978 | 393 (1)| 00:00:05 | | | Q2,02 | P->P | HASH |
|* 53 | HASH JOIN | | 78 | 3978 | 393 (1)| 00:00:05 | | | Q2,02 | PCWP | |
| 54 | BUFFER SORT | | | | | | | | Q2,02 | PCWC | |
| 55 | PX RECEIVE | | | | | | | | Q2,02 | PCWP | |
| 56 | PX SEND BROADCAST | :TQ20000 | | | | | | | | S->P | BROADCAST |
| 57 | NESTED LOOPS | | | | | | | | | | |
| 58 | NESTED LOOPS | | 66 | 2838 | 382 (1)| 00:00:05 | | | | | |
| 59 | PARTITION RANGE SINGLE | | 66 | 1386 | 316 (1)| 00:00:04 | 7 | 7 | | | |
|* 60 | TABLE ACCESS FULL | J_OP_TEST_ANML | 66 | 1386 | 316 (1)| 00:00:04 | 7 | 7 | | | |
|* 61 | INDEX UNIQUE SCAN | FT_TEST_ID_PK | 1 | | 0 (0)| 00:00:01 | | | | | |
|* 62 | TABLE ACCESS BY GLOBAL INDEX ROWID | B_FP_TEST | 1 | 22 | 1 (0)| 00:00:01 | ROWID | ROWID | | | |
| 63 | PX BLOCK ITERATOR | | 70382 | 549K| 11 (0)| 00:00:01 | | | Q2,02 | PCWC | |
|* 64 | TABLE ACCESS FULL | J_FP_INVESTIGATOR | 70382 | 549K| 11 (0)| 00:00:01 | | | Q2,02 | PCWP | |
| 65 | BUFFER SORT | | | | | | | | Q2,03 | PCWC | |
| 66 | PX RECEIVE | | 3 | 42 | 3 (0)| 00:00:01 | | | Q2,03 | PCWP | |
| 67 | PX SEND HASH | :TQ20001 | 3 | 42 | 3 (0)| 00:00:01 | | | | S->P | HASH |
|* 68 | TABLE ACCESS FULL | L_TEST_STATUS | 3 | 42 | 3 (0)| 00:00:01 | | | | | |
|* 69 | INDEX UNIQUE SCAN | L_ATMS_TEST_TYPE_PK | 1 | | 0 (0)| 00:00:01 | | | Q2,03 | PCWP | |
|* 70 | TABLE ACCESS BY INDEX ROWID | L_ATMS_TEST_TYPE | 1 | 5 | 1 (0)| 00:00:01 | | | Q2,03 | PCWP | |
| 71 | PX COORDINATOR | | | | | | | | | | |
| 72 | PX SEND QC (RANDOM) | :TQ10003 | | | | | | | Q1,03 | P->S | QC (RAND) |
| 73 | NESTED LOOPS | | | | | | | | Q1,03 | PCWP | |
| 74 | NESTED LOOPS | | 33 | 2310 | 399 (2)| 00:00:05 | | | Q1,03 | PCWP | |
|* 75 | HASH JOIN | | 34 | 2210 | 397 (2)| 00:00:05 | | | Q1,03 | PCWP | |
| 76 | PX RECEIVE | | 78 | 3978 | 393 (1)| 00:00:05 | | | Q1,03 | PCWP | |
| 77 | PX SEND HASH | :TQ10002 | 78 | 3978 | 393 (1)| 00:00:05 | | | Q1,02 | P->P | HASH |
|* 78 | HASH JOIN | | 78 | 3978 | 393 (1)| 00:00:05 | | | Q1,02 | PCWP | |
| 79 | BUFFER SORT | | | | | | | | Q1,02 | PCWC | |
| 80 | PX RECEIVE | | | | | | | | Q1,02 | PCWP | |
| 81 | PX SEND BROADCAST | :TQ10000 | | | | | | | | S->P | BROADCAST |
| 82 | NESTED LOOPS | | | | | | | | | | |
| 83 | NESTED LOOPS | | 66 | 2838 | 382 (1)| 00:00:05 | | | | | |
| 84 | PARTITION RANGE SINGLE | | 66 | 1386 | 316 (1)| 00:00:04 | 7 | 7 | | | |
|* 85 | TABLE ACCESS FULL | J_OP_TEST_ANML | 66 | 1386 | 316 (1)| 00:00:04 | 7 | 7 | | | |
|* 86 | INDEX UNIQUE SCAN | FT_TEST_ID_PK | 1 | | 0 (0)| 00:00:01 | | | | | |
|* 87 | TABLE ACCESS BY GLOBAL INDEX ROWID | B_FP_TEST | 1 | 22 | 1 (0)| 00:00:01 | ROWID | ROWID | | | |
| 88 | PX BLOCK ITERATOR | | 70382 | 549K| 11 (0)| 00:00:01 | | | Q1,02 | PCWC | |
|* 89 | TABLE ACCESS FULL | J_FP_INVESTIGATOR | 70382 | 549K| 11 (0)| 00:00:01 | | | Q1,02 | PCWP | |
| 90 | BUFFER SORT | | | | | | | | Q1,03 | PCWC | |
| 91 | PX RECEIVE | | 3 | 42 | 3 (0)| 00:00:01 | | | Q1,03 | PCWP | |
| 92 | PX SEND HASH | :TQ10001 | 3 | 42 | 3 (0)| 00:00:01 | | | | S->P | HASH |
|* 93 | TABLE ACCESS FULL | L_TEST_STATUS | 3 | 42 | 3 (0)| 00:00:01 | | | | | |
|* 94 | INDEX UNIQUE SCAN | L_ATMS_TEST_TYPE_PK | 1 | | 0 (0)| 00:00:01 | | | Q1,03 | PCWP | |
|* 95 | TABLE ACCESS BY INDEX ROWID | L_ATMS_TEST_TYPE | 1 | 5 | 1 (0)| 00:00:01 | | | Q1,03 | PCWP | |
Predicate Information (identified by operation id):
5 - access("B_FP_TEST"."TEST_TYPE_ID"="L_ATMS_TEST_TYPE"."ATMS_TEST_TYPE_ID")
8 - access("B_FP_TEST"."STATUS_ID"="L_TEST_STATUS"."STATUS_ID")
11 - access("B_FP_TEST"."TEST_ID"="J_FP_INVESTIGATOR"."TEST_ID")
18 - access("J_OP_TEST_ANML"."START_DATE">=TO_DATE(' 2013-10-27 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND "J_OP_TEST_ANML"."START_DATE"<=TO_DATE(' 2013-11-05
00:00:00', 'syyyy-mm-dd hh24:mi:ss'))
19 - access("J_OP_TEST_ANML"."TEST_ID"="B_FP_TEST"."TEST_ID")
20 - filter("B_FP_TEST"."DATASOURCE_ID"=9 AND "B_FP_TEST"."IS_DELETED"=0 AND "B_FP_TEST"."TEST_NUM"<>1 AND "B_FP_TEST"."TEST_NUM"<>2 AND
"B_FP_TEST"."TEST_NUM"<>99)
22 - filter("J_FP_INVESTIGATOR"."IS_PI"=1)
26 - filter("L_TEST_STATUS"."STATUS"='Completed' OR "L_TEST_STATUS"."STATUS"='In-Progress' OR "L_TEST_STATUS"."STATUS"='Scheduled')
30 - filter("L_ATMS_TEST_TYPE"."IS_DELETED"=0)
34 - access("B_FP_TEST"."STATUS_ID"="L_TEST_STATUS"."STATUS_ID")
38 - filter("J_OP_TEST_ANML"."END_DATE">=TO_DATE(' 2013-10-27 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND "J_OP_TEST_ANML"."END_DATE"<=TO_DATE(' 2013-11-05
00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND (LNNVL("J_OP_TEST_ANML"."START_DATE">=TO_DATE(' 2013-10-27 00:00:00', 'syyyy-mm-dd hh24:mi:ss')) OR
LNNVL("J_OP_TEST_ANML"."START_DATE"<=TO_DATE(' 2013-11-05 00:00:00', 'syyyy-mm-dd hh24:mi:ss'))))
39 - access("J_OP_TEST_ANML"."TEST_ID"="B_FP_TEST"."TEST_ID")
40 - filter("B_FP_TEST"."DATASOURCE_ID"=9 AND "B_FP_TEST"."IS_DELETED"=0 AND "B_FP_TEST"."TEST_NUM"<>1 AND "B_FP_TEST"."TEST_NUM"<>2 AND
"B_FP_TEST"."TEST_NUM"<>99)
41 - filter("L_TEST_STATUS"."STATUS"='Completed' OR "L_TEST_STATUS"."STATUS"='In-Progress' OR "L_TEST_STATUS"."STATUS"='Scheduled')
42 - filter("J_FP_INVESTIGATOR"."IS_PI"=1)
43 - access("B_FP_TEST"."TEST_ID"="J_FP_INVESTIGATOR"."TEST_ID")
44 - access("B_FP_TEST"."TEST_TYPE_ID"="L_ATMS_TEST_TYPE"."ATMS_TEST_TYPE_ID")
45 - filter("L_ATMS_TEST_TYPE"."IS_DELETED"=0)
50 - access("B_FP_TEST"."STATUS_ID"="L_TEST_STATUS"."STATUS_ID")
53 - access("B_FP_TEST"."TEST_ID"="J_FP_INVESTIGATOR"."TEST_ID")
60 - filter("J_OP_TEST_ANML"."END_DATE">=TO_DATE(' 2013-11-04 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND "J_OP_TEST_ANML"."START_DATE"<=TO_DATE(' 2013-11-04
00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND (LNNVL("J_OP_TEST_ANML"."END_DATE">=TO_DATE(' 2013-10-27 00:00:00', 'syyyy-mm-dd hh24:mi:ss')) OR
LNNVL("J_OP_TEST_ANML"."END_DATE"<=TO_DATE(' 2013-11-05 00:00:00', 'syyyy-mm-dd hh24:mi:ss'))) AND (LNNVL("J_OP_TEST_ANML"."START_DATE">=TO_DATE(' 2013-10-27
00:00:00', 'syyyy-mm-dd hh24:mi:ss')) OR LNNVL("J_OP_TEST_ANML"."START_DATE"<=TO_DATE(' 2013-11-05 00:00:00', 'syyyy-mm-dd hh24:mi:ss'))))
61 - access("J_OP_TEST_ANML"."TEST_ID"="B_FP_TEST"."TEST_ID")
62 - filter("B_FP_TEST"."DATASOURCE_ID"=9 AND "B_FP_TEST"."IS_DELETED"=0 AND "B_FP_TEST"."TEST_NUM"<>1 AND "B_FP_TEST"."TEST_NUM"<>2 AND
"B_FP_TEST"."TEST_NUM"<>99)
64 - filter("J_FP_INVESTIGATOR"."IS_PI"=1)
68 - filter("L_TEST_STATUS"."STATUS"='Completed' OR "L_TEST_STATUS"."STATUS"='In-Progress' OR "L_TEST_STATUS"."STATUS"='Scheduled')
69 - access("B_FP_TEST"."TEST_TYPE_ID"="L_ATMS_TEST_TYPE"."ATMS_TEST_TYPE_ID")
70 - filter("L_ATMS_TEST_TYPE"."IS_DELETED"=0)
75 - access("B_FP_TEST"."STATUS_ID"="L_TEST_STATUS"."STATUS_ID")
78 - access("B_FP_TEST"."TEST_ID"="J_FP_INVESTIGATOR"."TEST_ID")
85 - filter("J_OP_TEST_ANML"."END_DATE">=TO_DATE(' 2013-10-28 00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND "J_OP_TEST_ANML"."START_DATE"<=TO_DATE(' 2013-10-28
00:00:00', 'syyyy-mm-dd hh24:mi:ss') AND (LNNVL("J_OP_TEST_ANML"."END_DATE">=TO_DATE(' 2013-11-04 00:00:00', 'syyyy-mm-dd hh24:mi:ss')) OR
LNNVL("J_OP_TEST_ANML"."START_DATE"<=TO_DATE(' 2013-11-04 00:00:00', 'syyyy-mm-dd hh24:mi:ss'))) AND (LNNVL("J_OP_TEST_ANML"."END_DATE">=TO_DATE(' 2013-10-27
00:00:00', 'syyyy-mm-dd hh24:mi:ss')) OR LNNVL("J_OP_TEST_ANML"."END_DATE"<=TO_DATE(' 2013-11-05 00:00:00', 'syyyy-mm-dd hh24:mi:ss'))) AND
(LNNVL("J_OP_TEST_ANML"."START_DATE">=TO_DATE(' 2013-10-27 00:00:00', 'syyyy-mm-dd hh24:mi:ss')) OR LNNVL("J_OP_TEST_ANML"."START_DATE"<=TO_DATE(' 2013-11-05
00:00:00', 'syyyy-mm-dd hh24:mi:ss'))))
86 - access("J_OP_TEST_ANML"."TEST_ID"="B_FP_TEST"."TEST_ID")
87 - filter("B_FP_TEST"."DATASOURCE_ID"=9 AND "B_FP_TEST"."IS_DELETED"=0 AND "B_FP_TEST"."TEST_NUM"<>1 AND "B_FP_TEST"."TEST_NUM"<>2 AND
"B_FP_TEST"."TEST_NUM"<>99)
89 - filter("J_FP_INVESTIGATOR"."IS_PI"=1)
93 - filter("L_TEST_STATUS"."STATUS"='Completed' OR "L_TEST_STATUS"."STATUS"='In-Progress' OR "L_TEST_STATUS"."STATUS"='Scheduled')
94 - access("B_FP_TEST"."TEST_TYPE_ID"="L_ATMS_TEST_TYPE"."ATMS_TEST_TYPE_ID")
95 - filter("L_ATMS_TEST_TYPE"."IS_DELETED"=0)Excellent piece of follow-up on my first suggestion.
I nearly made a comment about how the plan doesn't show Bloom filter pruning either - and then I realised why not. The plan you've shown us comes from Explain Plan with literal values present; the trace file shows bind variables with names that are generated when cursor_sharing is set to force or similar - so the run-time plan and the plan from explain plan are almost guaranteed to be different.
Oracle support will need you to supply the plan you get from trying to run the query and then making a call to dbms_xplan.display_cursor() - dbms_xplan in 10g | Oracle Scratchpad If you do this I think you'll find that the pstart/pstop columns contain entries like :BF0000, and you may even find operations link PX JOIN FILTER CREATE / PX JOIN FILTER USE
A couple of generic notes:
if a query does sufficient work to merit parallel execution, then it's usually better to supply the best possible information to the optimizer, which means using literals rather than bind variables - you could try executing the query with the hint /*+ cursor_sharing_exact */ to stop Oracle from turning your literals into binds; it might be the presence of bind variables that's making the optimizer choose a path that has to include bloom filter pruning in your case.
Where you have the to_date() call you've used a four-digit year - which is a very good thing and helps the optimizer - but it's also a good idea to include an explicit format string as well: with a four-digit year this probably won't make any difference, but it avoids any risk of ambiguity for the optimizer.
I made a comment about the P->S stage and bottlenecks - I spent a couple more minutes looking at the plan, and I see the optimizer has used concatentation: in effect it has run three query blocks one after the other and fed the results to the query co-ordinator - in this case the P->S would make no difference to the end-user response time there's always a final P->S to the coordinator, you just happen to have three of them.
Regards
Jonathan Lewis -
Report for all RAP advertisements with Package size.
Hi,
I have received a requirement to get the information about all the advertisements published in RAP along with package details like (Package Name/version/ and Package size).
I have two different working reports, merging these two reports would suffice my requirements.
Please help to merge below two reports.
1.
SELECT DISTINCT p.PackageID, p.Name,p.Version, p.SourceVersion, 'Source Size (MB)' = n.SourceSize/1024
FROM v_Package p
LEFT JOIN
v_PackageStatusRootSummarizer n
ON
p.PackageID = n.PackageID
order by Name
2.
SELECT v_Advertisement.AdvertisementName,
v_Advertisement.Comment,
v_Package.Name AS C062,
ProgramName,
v_Advertisement.SourceSite,
CASE WHEN AssignedScheduleEnabled != 0 or
(AdvertFlags & 0x720) != 0
THEN '*'
ELSE ''
END AS C063,
v_Collection.Name as C064,
CASE IncludeSubCollection
WHEN 1 THEN '*'
WHEN 0 THEN ''
END AS C065,
AdvertisementID
FROM v_Advertisement
INNER JOIN v_Package ON v_Advertisement.PackageID = v_Package.PackageID
INNER JOIN v_Collection ON v_Advertisement.CollectionID = v_Collection.CollectionID
ORDER BY v_Advertisement.AdvertisementName
The Lightning KhanSELECT
p
.PackageID,
p.Name,p.Version,
p.SourceVersion,
'Source Size (MB)'
= n.SourceSize/1024,
v_Advertisement
.AdvertisementName,
v_Advertisement
.Comment,
p
.Name
AS C062,
ProgramName
v_Advertisement
.SourceSite,
CASE
WHEN AssignedScheduleEnabled
!= 0
or
(AdvertFlags
& 0x720)
!= 0
THEN
ELSE
END
AS C063,
v_Collection
.Name
as C064,
CASE
IncludeSubCollection
WHEN
1 THEN
WHEN
0 THEN
END
AS C065,
AdvertisementID
FROM v_Advertisement
INNER
JOIN v_Package p
ON v_Advertisement.PackageID
= p.PackageID
INNER
JOIN v_Collection
ON v_Advertisement.CollectionID
= v_Collection.CollectionID
LEFT
JOIN v_PackageStatusRootSummarizer n
ON p.PackageID
= n.PackageID
ORDER
BY v_Advertisement.AdvertisementName
John Marcum | Microsoft MVP - Enterprise Client Management
My blog: System Center Admin | Twitter:
@SCCM_Marcum | Linkedin:
John Marcum -
Hey Gurus,
i am working on a requirement in which select query is fetching 8 fields from a ZTABLE.
IF NOT IT_ZQAPP1[] IS INITIAL.
SELECT AUFNR VORNR PROBNR PIPENO NVORNR SHIFT
PSTAT PRODAT FROM ZQAPP INTO CORRESPONDING FIELDS OF TABLE IT_ZQAPP_B
FOR ALL ENTRIES IN IT_ZQAPP1
WHERE AUFNR = IT_ZQAPP1-AUFNR
AND WERKS IN P_WERKS
AND PRODAT LE P_PRODAT.
it works fine for lesser data but throws a dump error TSV_TNEW_PAGE_ALLOC_FAILED for entries more than 70000,
and my requirement is to fetch more than a lac record.
Kindly Suggest the corrections.
Thanks in Advance...Hi!
This error occurs typically, when there is no more memory for your ABAP session. This means, you have to do one of the followings:
- restrict your report for smaller intervals, like process only 1 month instead of 6 months together
- rewrite your program, and eliminate/refresh/free the unneccesary internal tables, or columns from internal tables. You might even try to remove unneccesary lines from internal tables
- use SELECT - ENDSELECT instead of SELECT ... INTO statement. This could slower your program, but you'll need less memory usage
Check your memory usage always, with SM04 transaction (Goto - Memory menu).
Regards
Tamá -
Cursor handle error in select query
Hello!
I'm having troubles with select query. I get the folowing error:
ODBC Error 'S1000', TimesTen Error 970, ODBC rc -1
ERROR in TTCommand.cpp, line 404: Error in TTCmd::Close() while closing cursor
[TimesTen][TimesTen 7.0.3.0.0 ODBC Driver][TimesTen]TT0970: Invalid cursor handle -- file "curAPI.c", lineno 1086, procedure "sb_curClose()"
*** ODBC Error/Warning = S1000, TimesTen Error/Warning = 970
*** Error in TTCmd::Close() for statement <SELECT 'alive' FROM DUAL>.
Error occures after aproximatelly 1000 request.
I' closing cursors and commiting after executing statement.
# ttisql -version
#TimesTen Release 7.0.3.0.0I use a code like described in sample.cpp in TimesTen demo directory.
First I prepare statement and function :
ControlData.Prepare(this, "SELECT 'alive' FROM DUAL", "", stat);
void
TTConnection::Control(TTStatus& stat)
TTStatus stat2;
try
ControlData.Execute(stat);
ControlData.Close(stat);
catch (TTStatus st)
cerr << "Error in SampleConnection::ContolData : " << st << endl;
ControlData.Close(stat2);
st.throwError() ;
In main function I use statement call like this (in endless loop)
try
conn.Control(stat);
conn.Commit(stat);
catch (TTError st)
cerr << "Error in CONTROL STATEMENT: " << st << endl;
Regards, Mitja -
Preceding error in select query
Hi,
I am executing select query using db link
and getting an error : ora:-01401: inserted value too large for column ora:-02063 preceding line from catalyst_promo
Below is my query. can anybody please suggest what is the error
SELECT GLOM.*
,NVL2(FLAGS.PLAN_ID,INITCAP('YES'),INITCAP('NO')) AS MULTI_COMP_KEYS
FROM
(SELECT *
FROM (SELECT
OA.PLAN_ID
, OA.MATERIAL_GROUP_CD
FROM MSRPROMO.OUTPUT_ASSIGNMENT OA
GROUP BY OA.PLAN_ID
, OA.MATERIAL_GROUP_CD
HAVING SUM(1) > 1)) FLAGS
,(SELECT CALIPER
,WT
,DIMS
,ATTRIBUTES
,PLAN_ID
,MATERIAL_GROUP_CD
,FORMAT_TXT
,FORECAST_QTY
,COMPUTER_KEY
,CAT_PACKAGE_KEY
,MAIL_CLASS_CD
,MAIL_TYPE_CD
,PLAN_NAME
,PLAN_DESC
,DISTRIBUTION_CYCLE_CD
,FIRST_CONTACT_DT
,CAMPAIGN_NUMBER
,COMPONENT_ITEM
,ITEM_TYPE
,LTRSHP_INSTRUCTION
,MFG_INSTRUCTION
FROM (
SELECT NVL(o102882.CAT_CALIPER_NBR,o102882.ADJUSTED_CALIPER_NBR) AS CALIPER
,NVL(o102882.CAT_WEIGHT_NBR,o102882.ADJUSTED_WEIGHT_NBR) AS WT
,CONCAT(o102882.CAT_FINAL_DEPTH_NBR,CONCAT(' x ',o102882.CAT_FINAL_WIDTH_NBR)) AS DIMS
,DECODE(o102913.ATTRIBUTE_CODE,'Number Colors Front',
CONCAT('Colors Front: ',o102913.ATTRIBUTE_VALUE),'Number Colors Back',
CONCAT('Colors Back: ',o102913.ATTRIBUTE_VALUE),'Dimension - Depth',
CONCAT('Dim-Length: ',o102913.ATTRIBUTE_VALUE),'Dimension - Width',
CONCAT('Dim-Width: ',o102913.ATTRIBUTE_VALUE),'Customer Dimension - Depth',
CONCAT('Dim-Length: ',o102913.ATTRIBUTE_VALUE),'Customer Dimension - Width',
CONCAT('Dim-Width: ',o102913.ATTRIBUTE_VALUE),'Number Windows Front',
CONCAT('Windows Front: ',o102913.ATTRIBUTE_VALUE),'Number Windows Back',
CONCAT('Windows Back: ',o102913.ATTRIBUTE_VALUE),'Material Type',
CONCAT('Material Type: ',o102913.ATTRIBUTE_VALUE),'Dimension - Final Depth',
CONCAT('Dim-Final Length: ',o102913.ATTRIBUTE_VALUE),'Dimension - Final Width',
CONCAT('Dim-Final Width: ',o102913.ATTRIBUTE_VALUE),'') AS ATTRIBUTES
,O102864.PLAN_ID
,o102864.MATERIAL_GROUP_CD
,o102864.FORMAT_TXT
,o102864.FORECAST_QTY
,o102880.COMPUTER_KEY
,o102882.CAT_PACKAGE_KEY
,o102882.MAIL_CLASS_CD
,o102882.MAIL_TYPE_CD
,o102907.PLAN_NAME
,o102907.PLAN_DESC
,o102907.DISTRIBUTION_CYCLE_CD
,o102907.FIRST_CONTACT_DT
,o297532.CAMPAIGN_NUMBER
,o102928.COMPONENT_ITEM
,o102928.ITEM_TYPE
,o102919.LTRSHP_INSTRUCTION
,o102921.MFG_INSTRUCTION
FROM MSRPROMO.MATERIAL_GROUP o102864,
MSRPROMO.OUTPUT_ASSIGNMENT o102880,
MSRPROMO.OUTPUT_INSTRUCTION o102882,
MSRPROMO.PROMOTION_PLAN o102907,
/*RDIGEST.RDAIS_ATTRIBUTE_VALUES@"CATALYST_PROMO.US.RDIGEST.COM" o102913,*/
(SELECT /*+DRIVING_SITE(RDAIS3) */
RDAIS3.SPEC_TYPE_CODE
, RDAIS3.SPEC_ID
, RDAIS3.TEMPLATE_ID
, RDAIS3.ATTRIBUTE_CODE
, (CASE WHEN RDAIS3.ATTRIBUTE_VALUE = CONVERT(CONVERT(RDAIS3.ATTRIBUTE_VALUE,'AL16UTF16'),'UTF8','AL16UTF16')
THEN RDAIS3.ATTRIBUTE_VALUE
ELSE (CASE WHEN RDAIS3.ATTRIBUTE_VALUE IS NULL
THEN NULL
ELSE '*** Attribute Value Multi-Byte Error ***' END) END) AS ATTRIBUTE_VALUE
, (CASE WHEN RDAIS3.ATTRIBUTE_VALUE = CONVERT(CONVERT(RDAIS3.ATTRIBUTE_VALUE,'AL16UTF16'),'UTF8','AL16UTF16')
THEN 0
ELSE (CASE WHEN RDAIS3.ATTRIBUTE_VALUE IS NULL
THEN 0 ELSE 1 END) END) AS ATTRIBUTE_ERR_CNT
, RDAIS3.SPEC_LEVEL
, RDAIS3.SEQ
, RDAIS3.LAST_UPDATE_LOGIN
, RDAIS3.LAST_UPDATED_BY
, RDAIS3.LAST_UPDATE_DATE
, RDAIS3.CREATED_BY
, RDAIS3.CREATION_DATE
FROM RDIGEST.RDAIS_ATTRIBUTE_VALUES@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS3
,(SELECT /*+DRIVING_SITE(RDAIS2) */
DISTINCT RDAIS2.ITEM_SPEC_ID
FROM RDIGEST.RDAIS_ITEM_SPECS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS2
,(SELECT /*+DRIVING_SITE(RDAIS1) */
DISTINCT RDAIS1.OBJECT_ID
FROM RDIGEST.RDAIS_ORG_ASSIGNMENTS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS1
WHERE RDAIS1.OBJECT_TYPE_CODE = 1
AND RDAIS1.ORGANIZATION_ID in(55,162)) DRV
WHERE DRV.OBJECT_ID = RDAIS2.ITEM_SPEC_ID) DRIVER
WHERE DRIVER.ITEM_SPEC_ID = RDAIS3.SPEC_ID) o102913,
/* RDIGEST.RDAIS_ITEM_SPECS@"CATALYST_PROMO.US.RDIGEST.COM" o102917, */
(SELECT /*+DRIVING_SITE(RDAIS2) */
RDAIS2.ITEM_SPEC_ID
, RDAIS2.TEMPLATE_ID
, RDAIS2.LOCAL_MKTG_KEY
, (CASE WHEN RDAIS2.DESCRIPTION = CONVERT(CONVERT(RDAIS2.DESCRIPTION,'AL16UTF16'),'UTF8','AL16UTF16')
THEN RDAIS2.DESCRIPTION
ELSE (CASE WHEN RDAIS2.DESCRIPTION IS NULL
THEN NULL
ELSE '*** Item Specs Description Multi-Byte Error ***' END) END) AS DESCRIPTION
, (CASE WHEN RDAIS2.DESCRIPTION = CONVERT(CONVERT(RDAIS2.DESCRIPTION,'AL16UTF16'),'UTF8','AL16UTF16')
THEN 0
ELSE (CASE WHEN RDAIS2.DESCRIPTION IS NULL
THEN 0 ELSE 1 END) END) AS ITEM_SPECS_ERR_CNT
, RDAIS2.COPIED_FROM_KEY
, RDAIS2.TEMPLATE_NAME
, RDAIS2.SPEC_LEVEL
, RDAIS2.PKG_TYPE
, RDAIS2.SEGMENT1
, RDAIS2.SEGMENT2
, RDAIS2.SEGMENT3
, RDAIS2.SEGMENT4
, RDAIS2.SEGMENT5
, RDAIS2.SEGMENT6
, RDAIS2.VALIDATION_STATUS
, RDAIS2.DATE_INTERFACED
, RDAIS2.ERROR_FLAG
, RDAIS2.INVENTORY_ITEM_ID
, RDAIS2.MFG_SPEC_ID
, RDAIS2.ATTRIBUTE1
, RDAIS2.ATTRIBUTE2
, RDAIS2.ATTRIBUTE3
, RDAIS2.ATTRIBUTE4
, RDAIS2.ATTRIBUTE5
, RDAIS2.ATTRIBUTE6
, RDAIS2.ATTRIBUTE7
, RDAIS2.ATTRIBUTE8
, RDAIS2.ATTRIBUTE9
, RDAIS2.ATTRIBUTE10
, RDAIS2.ATTRIBUTE11
, RDAIS2.ATTRIBUTE12
, RDAIS2.ATTRIBUTE13
, RDAIS2.ATTRIBUTE14
, RDAIS2.ATTRIBUTE15
, RDAIS2.ATTRIBUTE16
, RDAIS2.ATTRIBUTE17
, RDAIS2.ATTRIBUTE18
, RDAIS2.ATTRIBUTE19
, RDAIS2.ATTRIBUTE20
, RDAIS2.ATTRIBUTE21
, RDAIS2.ATTRIBUTE22
, RDAIS2.ATTRIBUTE23
, RDAIS2.ATTRIBUTE24
, RDAIS2.ATTRIBUTE25
, RDAIS2.ATTRIBUTE26
, RDAIS2.ATTRIBUTE27
, RDAIS2.ATTRIBUTE28
, RDAIS2.ATTRIBUTE29
, RDAIS2.ATTRIBUTE30
, RDAIS2.COMPLETE_FLAG
, RDAIS2.LAST_UPDATE_LOGIN
, RDAIS2.LAST_UPDATED_BY
, RDAIS2.LAST_UPDATE_DATE
, RDAIS2.CREATED_BY
, RDAIS2.CREATION_DATE
FROM RDIGEST.RDAIS_ITEM_SPECS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS2
,(SELECT /*+DRIVING_SITE(RDAIS1) */
DISTINCT RDAIS1.OBJECT_ID
FROM RDIGEST.RDAIS_ORG_ASSIGNMENTS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS1
WHERE RDAIS1.OBJECT_TYPE_CODE = 1
AND RDAIS1.ORGANIZATION_ID =55) DRIVER
WHERE DRIVER.OBJECT_ID = RDAIS2.ITEM_SPEC_ID) o102917,
/* RDIGEST.RDAIS_LTRSHP_INSTRUCTIONS@"CATALYST_PROMO.US.RDIGEST.COM" o102919, */
(SELECT /*+DRIVING_SITE(RDAIS3) */
RDAIS3.OBJECT_ID
, (CASE WHEN RDAIS3.LTRSHP_INSTRUCTION = CONVERT(CONVERT(RDAIS3.LTRSHP_INSTRUCTION,'AL16UTF16'),'UTF8','AL16UTF16')
THEN RDAIS3.LTRSHP_INSTRUCTION
ELSE (CASE WHEN RDAIS3.LTRSHP_INSTRUCTION IS NULL
THEN NULL
ELSE '*** Letter Shop Instruction Multi-Byte Error ***' END) END) AS LTRSHP_INSTRUCTION
, (CASE WHEN RDAIS3.LTRSHP_INSTRUCTION = CONVERT(CONVERT(RDAIS3.LTRSHP_INSTRUCTION,'AL16UTF16'),'UTF8','AL16UTF16')
THEN 0
ELSE (CASE WHEN RDAIS3.LTRSHP_INSTRUCTION IS NULL
THEN 0 ELSE 1 END) END) AS LTRSHP_INST_ERR_CNT
, RDAIS3.LAST_UPDATE_LOGIN
, RDAIS3.LAST_UPDATED_BY
, RDAIS3.LAST_UPDATE_DATE
, RDAIS3.CREATED_BY
, RDAIS3.CREATION_DATE
FROM RDIGEST.RDAIS_LTRSHP_INSTRUCTIONS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS3
,(SELECT /*+DRIVING_SITE(RDAIS2) */
DISTINCT RDAIS2.ITEM_SPEC_ID
FROM RDIGEST.RDAIS_ITEM_SPECS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS2
,(SELECT /*+DRIVING_SITE(RDAIS1) */
DISTINCT RDAIS1.OBJECT_ID
FROM RDIGEST.RDAIS_ORG_ASSIGNMENTS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS1
WHERE RDAIS1.OBJECT_TYPE_CODE = 1
AND RDAIS1.ORGANIZATION_ID =55) DRV
WHERE DRV.OBJECT_ID = RDAIS2.ITEM_SPEC_ID) DRIVER
WHERE DRIVER.ITEM_SPEC_ID = RDAIS3.OBJECT_ID) o102919,
/* RDIGEST.RDAIS_MFG_INSTRUCTIONS@"CATALYST_PROMO.US.RDIGEST.COM" o102921, */
(SELECT /*+DRIVING_SITE(RDAIS3) */
RDAIS3.OBJECT_ID
, (CASE WHEN RDAIS3.MFG_INSTRUCTION = CONVERT(CONVERT(RDAIS3.MFG_INSTRUCTION,'AL16UTF16'),'UTF8','AL16UTF16')
THEN RDAIS3.MFG_INSTRUCTION
ELSE (CASE WHEN RDAIS3.MFG_INSTRUCTION IS NULL
THEN NULL
ELSE '*** Manufacturing Instruction Multi-Byte Error ***' END) END) AS MFG_INSTRUCTION
, (CASE WHEN RDAIS3.MFG_INSTRUCTION = CONVERT(CONVERT(RDAIS3.MFG_INSTRUCTION,'AL16UTF16'),'UTF8','AL16UTF16')
THEN 0
ELSE (CASE WHEN RDAIS3.MFG_INSTRUCTION IS NULL
THEN 0 ELSE 1 END) END) AS MFG_INST_ERR_CNT
, RDAIS3.LAST_UPDATE_LOGIN
, RDAIS3.LAST_UPDATED_BY
, RDAIS3.LAST_UPDATE_DATE
, RDAIS3.CREATED_BY
, RDAIS3.CREATION_DATE
FROM RDIGEST.RDAIS_MFG_INSTRUCTIONS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS3
,(SELECT /*+DRIVING_SITE(RDAIS2) */
DISTINCT RDAIS2.ITEM_SPEC_ID
FROM RDIGEST.RDAIS_ITEM_SPECS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS2
,(SELECT /*+DRIVING_SITE(RDAIS1) */
DISTINCT RDAIS1.OBJECT_ID
FROM RDIGEST.RDAIS_ORG_ASSIGNMENTS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS1
WHERE RDAIS1.OBJECT_TYPE_CODE = 1
AND RDAIS1.ORGANIZATION_ID =55
) DRV
WHERE DRV.OBJECT_ID = RDAIS2.ITEM_SPEC_ID) DRIVER
WHERE DRIVER.ITEM_SPEC_ID = RDAIS3.OBJECT_ID) o102921,
/* RDIGEST.RDA_CDBS_EXPLOSION_ITEM_TEMP@"CATALYST_PROMO.US.RDIGEST.COM" o102928, */
(SELECT /*+DRIVING_SITE(RDA1) DRIVING_SITE(RDA2) */
RDA1.SYSTEM_CODE /* KEY */
, RDA1.PLAN /* KEY */
, RDA1.MATLGRP /* KEY */
, RDA1.PACKAGE /* KEY */
, RDA1.INVENTORY_ITEM_ID /* KEY */
, RDA1.COMPONENT_ITEM
, RDA1.ITEM_TYPE
, RDA1.CREATED_BY
, RDA1.CREATION_DATE
, RDA1.LAST_UPDATED_BY
, RDA1.LAST_UPDATE_DATE
FROM RDIGEST.RDA_CDBS_EXPLOSION_ITEM_TEMP@"CATALYST_PROMO.US.RDIGEST.COM" RDA1
,RDIGEST.RDA_CDBS_EXPLOSION_TEMP@"CATALYST_PROMO.US.RDIGEST.COM" RDA2
WHERE RDA2.ORGANIZATION_ID =55
AND RDA2.SYSTEM_CODE = RDA1.SYSTEM_CODE
AND RDA2.PLAN = RDA1.PLAN
AND RDA2.MATLGRP = RDA1.MATLGRP
AND RDA2.PACKAGE = RDA1.PACKAGE) o102928,
( SELECT
RDAIS.CAMPAIGN_NUMBER
, RDAIS.SEQ_NUMBER
, RDAIS.LEVEL_NUM
, RDAIS.TYPE
, RDAIS.CODE
, RDAIS.DESCRIPTION
, RDAIS.QUANTITY
, RDAIS.EFFECTIVE_IN
, RDAIS.EFFECTIVE_OUT
, RDAIS.CREATED_BY
, RDAIS.CREATION_DATE
, RDAIS.LAST_UPDATE_DATE
, RDAIS.LAST_UPDATED_BY
, RDAIS.LAST_UPDATE_LOGIN
, RDAIS.VALIDATION_STATUS
, RDAIS.DATE_INTERFACED
, RDAIS.SEQ_NUM
, RDAIS.ERROR_FLAG
, RDAIS.ATTRIBUTE1, RDAIS.ATTRIBUTE2, RDAIS.ATTRIBUTE3, RDAIS.ATTRIBUTE4, RDAIS.ATTRIBUTE5
, RDAIS.ATTRIBUTE6, RDAIS.ATTRIBUTE7, RDAIS.ATTRIBUTE8, RDAIS.ATTRIBUTE9, RDAIS.ATTRIBUTE10
FROM RDIGEST.RDA_CAMPAIGN_STRUCTURE@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS
,(SELECT /*+DRIVING_SITE(RPC1) */
DISTINCT RPC1.CAMPAIGN_NUMBER
FROM RDIGEST.RPC_CAMPAIGNS@"CATALYST_PROMO.US.RDIGEST.COM" RPC1
WHERE RPC1.ORGANIZATION_ID in (54,161)) RPC2
WHERE RDAIS.CAMPAIGN_NUMBER = RPC2.CAMPAIGN_NUMBER
) o297532
WHERE ( (O102864.MATERIAL_GROUP_CD = O102880.MATERIAL_GROUP_CD)
AND (O102880.COMPUTER_KEY = O102882.COMPUTER_KEY)
AND (O102882.CAT_PACKAGE_KEY = O102928.PACKAGE)
AND (O102907.PLAN_ID = O102864.PLAN_ID)
AND (O102917.ITEM_SPEC_ID = O102913.SPEC_ID)
AND (O102917.ITEM_SPEC_ID = O102919.OBJECT_ID(+))
AND (O102917.ITEM_SPEC_ID = O102921.OBJECT_ID(+))
AND (O102928.INVENTORY_ITEM_ID = O102917.INVENTORY_ITEM_ID)
AND (O102907.PLAN_NAME = O297532.DESCRIPTION)
AND (O102907.PLAN_NAME = o102928.PLAN))
AND (O297532.EFFECTIVE_OUT IS NULL )
AND (O102864.PLAN_ID = O102880.PLAN_ID)
AND (( SUBSTR(O102882.CAT_PACKAGE_KEY,1,2) ) != 'CK'))
GROUP BY CALIPER
,WT
,DIMS
,ATTRIBUTES
,PLAN_ID
,MATERIAL_GROUP_CD
,FORMAT_TXT
,FORECAST_QTY
,COMPUTER_KEY
,CAT_PACKAGE_KEY
,MAIL_CLASS_CD
,MAIL_TYPE_CD
,PLAN_NAME
,PLAN_DESC
,DISTRIBUTION_CYCLE_CD
,FIRST_CONTACT_DT
,CAMPAIGN_NUMBER
,COMPONENT_ITEM
,ITEM_TYPE
,LTRSHP_INSTRUCTION
,MFG_INSTRUCTION) GLOM
WHERE GLOM.PLAN_ID = FLAGS.PLAN_ID(+)
AND GLOM.MATERIAL_GROUP_CD = FLAGS.MATERIAL_GROUP_CD(+);I shorted my query , still getting same error " ORA-01401: inserted value too large for column ORA-02063: presceding line from CATALYST_PROMO"
I am sure there is some issue in CONVERT, can anybody please help
create table O102921 nologging as
(SELECT /*+DRIVING_SITE(RDAIS3) */
RDAIS3.OBJECT_ID
,(CASE WHEN RDAIS3.MFG_INSTRUCTION = CONVERT(CONVERT(RDAIS3.MFG_INSTRUCTION,'AL16UTF16'),'UTF8','AL16UTF16')
THEN RDAIS3.MFG_INSTRUCTION
ELSE (CASE WHEN RDAIS3.MFG_INSTRUCTION IS NULL
THEN NULL
ELSE '*** Manufacturing Instruction Multi-Byte Error ***' END) END) AS MFG_INSTRUCTION
, (CASE WHEN RDAIS3.MFG_INSTRUCTION = CONVERT(CONVERT(RDAIS3.MFG_INSTRUCTION,'AL16UTF16'),'UTF8','AL16UTF16')
THEN 0
ELSE (CASE WHEN RDAIS3.MFG_INSTRUCTION IS NULL
THEN 0 ELSE 1 END) END) AS MFG_INST_ERR_CNT
, RDAIS3.LAST_UPDATE_LOGIN
, RDAIS3.LAST_UPDATED_BY
, RDAIS3.LAST_UPDATE_DATE
, RDAIS3.CREATED_BY
, RDAIS3.CREATION_DATE
FROM RDIGEST.RDAIS_MFG_INSTRUCTIONS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS3
,(SELECT /*+DRIVING_SITE(RDAIS2) */
DISTINCT RDAIS2.ITEM_SPEC_ID
FROM RDIGEST.RDAIS_ITEM_SPECS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS2
,(SELECT /*+DRIVING_SITE(RDAIS1) */
DISTINCT RDAIS1.OBJECT_ID
FROM RDIGEST.RDAIS_ORG_ASSIGNMENTS@"CATALYST_PROMO.US.RDIGEST.COM" RDAIS1
WHERE RDAIS1.OBJECT_TYPE_CODE = 1
AND RDAIS1.ORGANIZATION_ID = 162) DRV
WHERE DRV.OBJECT_ID = RDAIS2.ITEM_SPEC_ID) DRIVER
WHERE DRIVER.ITEM_SPEC_ID = RDAIS3.OBJECT_ID );
Maybe you are looking for
-
Is it possible to embed an html page inside a pdf
I am not looking for html or pdf converters. I have a pdf and i want to insert an html somewhere in between.
-
Cs5 64 bit Crashes on Windows 7
Hi, I have been trying to get phone support for two days now. Here's the issues: Photoshop 64 bit AND the new After Effects (also 64 bit in CS5) will not run. Splash screen starts then just says "Windows has encountered a Problem" and they crash.
-
How display result set of a PL/ SQL function call in a dialog box
Hello, I am calling a PL/ SQL function from Apex, which returns - List of varchar. In Apex, it should show this list of varchar and "Yes" and "No" buttons on a message window. Can you please suggest a way to achieve the same. Thanks, Girish
-
Connecting E-printer to the internet (Solution)
To all: I was having trouble connecting my e-printer to the internet. Went to HP Support and no one had the answer for me. Yesterday, I finally figure it out. Maybe this will help many of you. First, I went to the Wireless Signal, click on tha
-
I am executing following query for LOV in APEX or HTML DB 2.0 IF :P2_TX_ID IS NOT NULL THEN RETURN 'SELECT TX_UNIT_NAME FROM TRANSPLANT_UNIT WHERE TX_ID=:P_TX_ID'; ELSE RETURN 'SELECT TX_UNIT_NAME FROM TRANSPLANT_UNIT ORDER BY 1'; END IF; When I run