You are on page 1of 45

ADDM Report for Task 'TASK_302876'

---------------------------------Analysis Period
--------------AWR snapshot range from 97624 to 97684.
Time period starts at 22-SEP-15 08.30.30 AM
Time period ends at 22-SEP-15 06.30.22 PM
Analysis Target
--------------Database 'TMPROD' with DB ID 3450806735.
Database version 11.2.0.1.0.
ADDM performed an analysis of instance TMPROD1, numbered 1 and hosted at
itpdbp01.
Activity During the Analysis Period
----------------------------------Total database time was 316007 seconds.
The average number of active sessions was 8.78.
Summary of Findings
------------------Description
s

Active Sessions

Recommendation

Percent of Activity
---------------------------------------- ------------------- -------------1
2
3
4
5
6

"User I/O" wait Class


Top SQL Statements
Top Segments by "User I/O" and "Cluster"
Row Lock Waits
Undersized SGA
Hard Parse Due to Sharing Criteria

4.05 | 46.14
2.22 | 25.25
1.2 | 13.62
1.1 | 12.49
.27 | 3.07
.23 | 2.64

0
6
4
4
1
1

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Findings and Recommendations
---------------------------Finding 1: "User I/O" wait Class
Impact is 4.05 active sessions, 46.14% of total activity.
--------------------------------------------------------Wait class "User I/O" was consuming significant database time.
Waits for I/O to temporary tablespaces were not consuming significant database
time.
The throughput of the I/O subsystem was not significantly lower than expected.
No recommendations are available.
Finding 2: Top SQL Statements
Impact is 2.22 active sessions, 25.25% of total activity.
--------------------------------------------------------SQL statements consuming significant database time were found. These
statements offer a good opportunity for performance improvement.

Recommendation 1: SQL Tuning


Estimated benefit is .59 active sessions, 6.74% of total activity.
-----------------------------------------------------------------Action
Investigate the SELECT statement with SQL_ID "584g5x4a074n5" for
possible performance improvements. You can supplement the information
given here with an ASH report for this SQL_ID.
Related Object
SQL statement with SQL_ID 584g5x4a074n5.
select /*+ INDEX_ASC(a "tstVk2_cef_tsvasd") */ a."afd", a."afh",
a."dosvlg", a."enddat", a."ingdat", a."module", a."relnr",
a."srtdos", a."tsandg", a."tscapc", a."tsgrdi", a."tsgrdo",
a."tsgrma", a."tsgrvr", a."tsgrwo", a."tsgrza", a."tsgrzo",
a."tsldpd", a."tsnffr", a."tsnfmo", a."tsnfsa", a."tsnfso",
a."tsnfth", a."tsnftu", a."tsnfwn", a."tsudpd", a."tsvwtm",
a."vmtsrt", rowid from "cef_tsvasd" a where a."afd" = :f0 and
a."dosvlg" = :f1 for update
Rationale
The SQL spent only 0% of its database time on CPU, I/O and Cluster
waits. Therefore, the SQL Tuning Advisor is not applicable in this case.
Look at performance data for the SQL to find potential improvements.
Rationale
Database time for this SQL was divided as follows: 100% for SQL
execution, 0% for parsing, 0% for PL/SQL execution and 0% for Java
execution.
Rationale
SQL statement with SQL_ID "584g5x4a074n5" was executed 1 times and had
an average elapsed time of 19614 seconds.
Rationale
Waiting for event "enq: TX - row lock contention" in wait class
"Application" accounted for 100% of the database time spent in
processing the SQL statement with SQL_ID "584g5x4a074n5".
Recommendation 2: SQL Tuning
Estimated benefit is .38 active sessions, 4.35% of total activity.
-----------------------------------------------------------------Action
Run SQL Tuning Advisor on the SELECT statement with SQL_ID
"616rtfmrk9s62".
Related Object
SQL statement with SQL_ID 616rtfmrk9s62.
select
/* #import CWPB_GEN.plan_myid */
to_char(tsroma."dosvlg",:"SYS_B_00")
||
to_char(tsroma."tsrose",:"SYS_B_01")
||
to_char(tsroma."tsvlgn",:"SYS_B_02") as "id"
,
tsroma."dosvlg" as "keyvalue1"
,
tsroma."tsrose" as "keyvalue2"
,
tsroma."tsvlgn" as "keyvalue3"
,
dossrt."tsusun" as "tsusun"
,
:"SYS_B_03"
as "begin"
,
:"SYS_B_04"
as "end"
,
:"SYS_B_05"
as "resource"
,
case when taaltk."taalnm" is null
then taaltk_ENG."taalnm"
else taaltk."taalnm" end
as "taalnm"
, tsdsmd."afd"
as "afd"
, tsdsmd."afh"
as "afh"

, tsdsmd."dosvlg"
as "dosvlg"
, v_cw_tsstus_descr."description" as "tsds35"
, nad0."zoek"
as "zkopdr"
, tsdsmd."refopd"
as "refopd"
, tsdsmd."tszola"
as "tszola"
, tsroma."tsfrhn"
as "tsfrhn"
, tsroma."tsfrda"
as "tsfrda"
, tsroma."tsfrti"
as "tsfrti"
, tsdsmd."tszolo"
as "tszolo"
, tsroma."tstohn"
as "tstohn"
, tsroma."tstoda"
as "tstoda"
, tsroma."tstoti"
as "tstoti"
, tsroda."tsdist"
as "tsdist"
, tsdsmd."tsserl"
as "tsserl"
, tsselv."oms201"
as "oms201"
, tsroda."collia"
as "collia"
, tsroda."colkd"
as "colkd"
, tsroda."brgew"
as "brgew"
, tsroda."volwrd"
as "volwrd"
, tsroda."volkd"
as "volkd"
, tsroda."tsloai"
as "tsloai"
, tsdsmd."omsgd"
as "omsgd"
, comtab."indgoe"
as "indgoe"
, comtab."tskoJN"
as "tskoJN"
, tsdsmd."kdrmb"
as "kdrmb"
, tsroma."tsrido"
as "tsrido"
, tsdsmd."tsexdo"
as "tsexdo"
, :"SYS_B_06"
as "draggable"
, nad1."tsnam1" as "nmlaad"
, nad1."tsadr1" as "adrlaa"
, nad1."postun" as "pklaad"
, nad1."tscity" as "pllaad"
, nad1."land" as "lalaad"
, nad3."tsnam1" as "nmlos"
, nad3."tsadr1" as "adrlos"
, nad3."postun" as "pklos"
, nad3."tscity" as "pllos"
, nad3."land" as "lalos"
/* #import DHLPBimp.Ord_fields */
, nad4."zoek" as "UnloSearchName"
, (select vaw4."tsadr3"
from "vw_naw" vaw4
where vaw4."dosvlg" = tsroma."dosvlg"
and vaw4."tsroln" = :"SYS_B_07"
) as "UnLoadAddress3"
,
( case when tsroma."tsrido" <> :"SYS_B_08"
then :"SYS_B_09"
else :"SYS_B_10"
end )
as "style"
,(select nvl("tsreft",:"SYS_B_11")
from "cef_tsfire" ref3032
where ref3032."tsrefc" = :"SYS_B_12"
and ref3032."dosvlg" = tsdsmd."dosvlg"
) as "LICENSE1"
,(select nvl("tsreft",:"SYS_B_13")
from "cef_tsfire" ref3031
where ref3031."tsrefc" = :"SYS_B_14"
and ref3031."dosvlg" = tsdsmd."dosvlg"
) as "Route"

, tsdsmd."tslddt" as "LoadingDate"
, tsdsmd."taanlv" as "LoadingStartTime"
, tsdsmd."tsunld" as "UnLoadingDate"
, tsdsmd."taflev" as "UnLoadingStartTime"
,(select nvl("tsreft",:"SYS_B_15")
from "cef_tsfire" ref3002
where ref3002."tsrefc" = :"SYS_B_16"
and ref3002."dosvlg" = tsdsmd."dosvlg"
) as "ref3002"
,(select nvl("tsreft",:"SYS_B_17")
from "cef_tsfire" ref3003
where ref3003."tsrefc" = :"SYS_B_18"
and ref3003."dosvlg" = tsdsmd."dosvlg"
) as "ref3003"
,(select nvl("tsreft",:"SYS_B_19")
from "cef_tsfire" ref3004
where ref3004."tsrefc" = :"SYS_B_20"
and ref3004."dosvlg" = tsdsmd."dosvlg"
) as "ref3004"
, (select "tsoms1" from "cef_tsdoms"
where "module" = :"SYS_B_21"
and "dosvlg" = tsdsmd."dosvlg"
and "srtoms" = :"SYS_B_22"
and "volgnr" = :"SYS_B_23") as "Instr1"
, (select "tsoms1" from "cef_tsdoms"
where "module" = :"SYS_B_24"
and "dosvlg" = tsdsmd."dosvlg"
and "srtoms" = :"SYS_B_25"
and "volgnr" = :"SYS_B_26") as "Instr2"
, (select "tsoms1" from "cef_tsdoms"
where "module" = :"SYS_B_27"
and "dosvlg" = tsdsmd."dosvlg"
and "srtoms" = :"SYS_B_28"
and "volgnr" = :"SYS_B_29") as "Instr3"
from
"cef_tsroma" tsroma
left outer join (
select "dosvlg"
,
"tsnam1"
,
"zoek"
from
"cef_vw_naw"
where "tsroln" = :"SYS_B_30" ) nad0
on tsroma."dosvlg" = nad0."dosvlg"
left outer join (
select "dosvlg"
,
"tsnam1"
,
"tsadr1"
,
"tscity"
,
"postun"
,
"land"
from
"cef_vw_naw"
where "tsroln" = :"SYS_B_31" ) nad1
on tsroma."dosvlg" = nad1."dosvlg"
left outer join (
select "dosvlg"
,
"tsnam1"
,
"tsadr1"
,
"tscity"
,
"postun"
,
"land"
from
"cef_vw_naw"

where "tsroln" = :"SYS_B_32" ) nad3


on tsroma."dosvlg" = nad3."dosvlg"
left outer join (
select "dosvlg"
,
"zoek"
from
"cef_vw_naw"
where "tsroln" = :"SYS_B_33" ) nad4
on tsroma."dosvlg" = nad4."dosvlg"
left outer join (
select "dosvlg"
,
"zoek"
from
"cef_vw_naw"
where "tsroln" = :"SYS_B_34" ) nad6
on tsroma."dosvlg" = nad6."dosvlg"
left outer join "cef_v_cw_leg_max" tsroda
on tsroma."dosvlg" = tsroda."dosvlg"
and tsroma."tsrose" = tsroda."tsrose"
and tsroma."tsvlgn" = tsroda."tsvlgn"
left outer join (
select "prognr"
,
"taalk"
,
"vlgnum"
,
"taalnm"
from
"cey_taaltk" taaltk
where taaltk."prognr" = :"SYS_B_35"
and
taaltk."taalk" = :"SYS_B_36" ) taaltk
on tsroma."tsakti" = taaltk."vlgnum"
left outer join (
select "prognr"
,
"taalk"
,
"vlgnum"
,
"taalnm"
from "cey_taaltk" taaltk
where taaltk."prognr" = :"SYS_B_37"
and
taaltk."taalk" = :"SYS_B_38" ) taaltk_ENG
on tsroma."tsakti" = taaltk_ENG."vlgnum"
,
"cef_tsdsmd" tsdsmd
left outer join "cef_tsselv" tsselv
on tsdsmd."tsserl" = tsselv."tsserl"
left outer join "cef_comtab" comtab
on tsdsmd."comkod" = comtab."comkod"
left outer join "cef_v_cw_tsstus_descr"
v_cw_tsstus_descr
on v_cw_tsstus_descr."tsstts" = tsdsmd."tsstts"
and v_cw_tsstus_descr."tsbatp" = :"SYS_B_39"
,
"cef_alldepartments" alldepartments
,
"cef_dossrt" dossrt
where tsroma."dosvlg" = tsdsmd."dosvlg"
and tsroma."tsacex" = :"SYS_B_40"
and tsdsmd."afd" = alldepartments."department"
and alldepartments."user" = :"SYS_B_41"
and dossrt."afd" = tsdsmd."afd"
and dossrt."afh" = tsdsmd."afh"
--and tsdsmd."tsuitd" >= '2015/09/22'
--and tsroma."tsplJN" = 'Y'
-- by DHL
/* #import DHLPBimp.Ord_criteria */
and tsroma."tsstts" < :"SYS_B_42"
-- if you want delivery leg only in PB
and tsroma."tsakti" = :"SYS_B_43"

and tsdsmd."tsstts" >= :"SYS_B_44"


and tsdsmd."tsstts" < :"SYS_B_45"
-- dont show earlier legs if
-- a later leg has
>= 400
/*
and tsroma."tsvlgn" >
nvl((select max(check1."tsvlgn")
from "cef_tsroma" check1
where check1."tsstts" >= 400
and tsroma."dosvlg" = check1."dosvlg"),0)
*/
and tsdsmd."afd" = :"SYS_B_46"
and tsdsmd."tslddt" > sysdate - :"SYS_B_47"
and tsroma."tsrido" = :"SYS_B_48"
and tsroda."dosvlg" = tsdsmd."dosvlg"
and tsroda."tsstts" = :"SYS_B_49"
Action
Use bigger fetch arrays while fetching results from the SELECT statement
with SQL_ID "616rtfmrk9s62".
Related Object
SQL statement with SQL_ID 616rtfmrk9s62.
select
/* #import CWPB_GEN.plan_myid */
to_char(tsroma."dosvlg",:"SYS_B_00")
||
to_char(tsroma."tsrose",:"SYS_B_01")
||
to_char(tsroma."tsvlgn",:"SYS_B_02") as "id"
,
tsroma."dosvlg" as "keyvalue1"
,
tsroma."tsrose" as "keyvalue2"
,
tsroma."tsvlgn" as "keyvalue3"
,
dossrt."tsusun" as "tsusun"
,
:"SYS_B_03"
as "begin"
,
:"SYS_B_04"
as "end"
,
:"SYS_B_05"
as "resource"
,
case when taaltk."taalnm" is null
then taaltk_ENG."taalnm"
else taaltk."taalnm" end
as "taalnm"
, tsdsmd."afd"
as "afd"
, tsdsmd."afh"
as "afh"
, tsdsmd."dosvlg"
as "dosvlg"
, v_cw_tsstus_descr."description" as "tsds35"
, nad0."zoek"
as "zkopdr"
, tsdsmd."refopd"
as "refopd"
, tsdsmd."tszola"
as "tszola"
, tsroma."tsfrhn"
as "tsfrhn"
, tsroma."tsfrda"
as "tsfrda"
, tsroma."tsfrti"
as "tsfrti"
, tsdsmd."tszolo"
as "tszolo"
, tsroma."tstohn"
as "tstohn"
, tsroma."tstoda"
as "tstoda"
, tsroma."tstoti"
as "tstoti"
, tsroda."tsdist"
as "tsdist"
, tsdsmd."tsserl"
as "tsserl"
, tsselv."oms201"
as "oms201"
, tsroda."collia"
as "collia"
, tsroda."colkd"
as "colkd"
, tsroda."brgew"
as "brgew"
, tsroda."volwrd"
as "volwrd"
, tsroda."volkd"
as "volkd"

, tsroda."tsloai"
as "tsloai"
, tsdsmd."omsgd"
as "omsgd"
, comtab."indgoe"
as "indgoe"
, comtab."tskoJN"
as "tskoJN"
, tsdsmd."kdrmb"
as "kdrmb"
, tsroma."tsrido"
as "tsrido"
, tsdsmd."tsexdo"
as "tsexdo"
, :"SYS_B_06"
as "draggable"
, nad1."tsnam1" as "nmlaad"
, nad1."tsadr1" as "adrlaa"
, nad1."postun" as "pklaad"
, nad1."tscity" as "pllaad"
, nad1."land" as "lalaad"
, nad3."tsnam1" as "nmlos"
, nad3."tsadr1" as "adrlos"
, nad3."postun" as "pklos"
, nad3."tscity" as "pllos"
, nad3."land" as "lalos"
/* #import DHLPBimp.Ord_fields */
, nad4."zoek" as "UnloSearchName"
, (select vaw4."tsadr3"
from "vw_naw" vaw4
where vaw4."dosvlg" = tsroma."dosvlg"
and vaw4."tsroln" = :"SYS_B_07"
) as "UnLoadAddress3"
,
( case when tsroma."tsrido" <> :"SYS_B_08"
then :"SYS_B_09"
else :"SYS_B_10"
end )
as "style"
,(select nvl("tsreft",:"SYS_B_11")
from "cef_tsfire" ref3032
where ref3032."tsrefc" = :"SYS_B_12"
and ref3032."dosvlg" = tsdsmd."dosvlg"
) as "LICENSE1"
,(select nvl("tsreft",:"SYS_B_13")
from "cef_tsfire" ref3031
where ref3031."tsrefc" = :"SYS_B_14"
and ref3031."dosvlg" = tsdsmd."dosvlg"
) as "Route"
, tsdsmd."tslddt" as "LoadingDate"
, tsdsmd."taanlv" as "LoadingStartTime"
, tsdsmd."tsunld" as "UnLoadingDate"
, tsdsmd."taflev" as "UnLoadingStartTime"
,(select nvl("tsreft",:"SYS_B_15")
from "cef_tsfire" ref3002
where ref3002."tsrefc" = :"SYS_B_16"
and ref3002."dosvlg" = tsdsmd."dosvlg"
) as "ref3002"
,(select nvl("tsreft",:"SYS_B_17")
from "cef_tsfire" ref3003
where ref3003."tsrefc" = :"SYS_B_18"
and ref3003."dosvlg" = tsdsmd."dosvlg"
) as "ref3003"
,(select nvl("tsreft",:"SYS_B_19")
from "cef_tsfire" ref3004
where ref3004."tsrefc" = :"SYS_B_20"
and ref3004."dosvlg" = tsdsmd."dosvlg"
) as "ref3004"
, (select "tsoms1" from "cef_tsdoms"

where "module" = :"SYS_B_21"


and "dosvlg" = tsdsmd."dosvlg"
and "srtoms" = :"SYS_B_22"
and "volgnr" = :"SYS_B_23") as "Instr1"
, (select "tsoms1" from "cef_tsdoms"
where "module" = :"SYS_B_24"
and "dosvlg" = tsdsmd."dosvlg"
and "srtoms" = :"SYS_B_25"
and "volgnr" = :"SYS_B_26") as "Instr2"
, (select "tsoms1" from "cef_tsdoms"
where "module" = :"SYS_B_27"
and "dosvlg" = tsdsmd."dosvlg"
and "srtoms" = :"SYS_B_28"
and "volgnr" = :"SYS_B_29") as "Instr3"
from
"cef_tsroma" tsroma
left outer join (
select "dosvlg"
,
"tsnam1"
,
"zoek"
from
"cef_vw_naw"
where "tsroln" = :"SYS_B_30" ) nad0
on tsroma."dosvlg" = nad0."dosvlg"
left outer join (
select "dosvlg"
,
"tsnam1"
,
"tsadr1"
,
"tscity"
,
"postun"
,
"land"
from
"cef_vw_naw"
where "tsroln" = :"SYS_B_31" ) nad1
on tsroma."dosvlg" = nad1."dosvlg"
left outer join (
select "dosvlg"
,
"tsnam1"
,
"tsadr1"
,
"tscity"
,
"postun"
,
"land"
from
"cef_vw_naw"
where "tsroln" = :"SYS_B_32" ) nad3
on tsroma."dosvlg" = nad3."dosvlg"
left outer join (
select "dosvlg"
,
"zoek"
from
"cef_vw_naw"
where "tsroln" = :"SYS_B_33" ) nad4
on tsroma."dosvlg" = nad4."dosvlg"
left outer join (
select "dosvlg"
,
"zoek"
from
"cef_vw_naw"
where "tsroln" = :"SYS_B_34" ) nad6
on tsroma."dosvlg" = nad6."dosvlg"
left outer join "cef_v_cw_leg_max" tsroda
on tsroma."dosvlg" = tsroda."dosvlg"
and tsroma."tsrose" = tsroda."tsrose"
and tsroma."tsvlgn" = tsroda."tsvlgn"
left outer join (
select "prognr"

,
"taalk"
,
"vlgnum"
,
"taalnm"
from
"cey_taaltk" taaltk
where taaltk."prognr" = :"SYS_B_35"
and
taaltk."taalk" = :"SYS_B_36" ) taaltk
on tsroma."tsakti" = taaltk."vlgnum"
left outer join (
select "prognr"
,
"taalk"
,
"vlgnum"
,
"taalnm"
from "cey_taaltk" taaltk
where taaltk."prognr" = :"SYS_B_37"
and
taaltk."taalk" = :"SYS_B_38" ) taaltk_ENG
on tsroma."tsakti" = taaltk_ENG."vlgnum"
,
"cef_tsdsmd" tsdsmd
left outer join "cef_tsselv" tsselv
on tsdsmd."tsserl" = tsselv."tsserl"
left outer join "cef_comtab" comtab
on tsdsmd."comkod" = comtab."comkod"
left outer join "cef_v_cw_tsstus_descr"
v_cw_tsstus_descr
on v_cw_tsstus_descr."tsstts" = tsdsmd."tsstts"
and v_cw_tsstus_descr."tsbatp" = :"SYS_B_39"
,
"cef_alldepartments" alldepartments
,
"cef_dossrt" dossrt
where tsroma."dosvlg" = tsdsmd."dosvlg"
and tsroma."tsacex" = :"SYS_B_40"
and tsdsmd."afd" = alldepartments."department"
and alldepartments."user" = :"SYS_B_41"
and dossrt."afd" = tsdsmd."afd"
and dossrt."afh" = tsdsmd."afh"
--and tsdsmd."tsuitd" >= '2015/09/22'
--and tsroma."tsplJN" = 'Y'
-- by DHL
/* #import DHLPBimp.Ord_criteria */
and tsroma."tsstts" < :"SYS_B_42"
-- if you want delivery leg only in PB
and tsroma."tsakti" = :"SYS_B_43"
and tsdsmd."tsstts" >= :"SYS_B_44"
and tsdsmd."tsstts" < :"SYS_B_45"
-- dont show earlier legs if
-- a later leg has
>= 400
/*
and tsroma."tsvlgn" >
nvl((select max(check1."tsvlgn")
from "cef_tsroma" check1
where check1."tsstts" >= 400
and tsroma."dosvlg" = check1."dosvlg"),0)
*/
and tsdsmd."afd" = :"SYS_B_46"
and tsdsmd."tslddt" > sysdate - :"SYS_B_47"
and tsroma."tsrido" = :"SYS_B_48"
and tsroda."dosvlg" = tsdsmd."dosvlg"
and tsroda."tsstts" = :"SYS_B_49"
Rationale
The SQL spent 100% of its database time on CPU, I/O and Cluster waits.
This part of database time may be improved by the SQL Tuning Advisor.
Rationale

Database time for this SQL was divided as follows: 100% for SQL
execution, 0% for parsing, 0% for PL/SQL execution and 0% for Java
execution.
Rationale
SQL statement with SQL_ID "616rtfmrk9s62" was executed 90 times and had
an average elapsed time of 143 seconds.
Recommendation 3: SQL Tuning
Estimated benefit is .36 active sessions, 4.08% of total activity.
-----------------------------------------------------------------Action
Run SQL Tuning Advisor on the SELECT statement with SQL_ID
"dk2hc0u7bzgqh".
Related Object
SQL statement with SQL_ID dk2hc0u7bzgqh.
select :"SYS_B_00" ||"fileNumber"
||:"SYS_B_01"||:"SYS_B_02"||"trackcode"
||:"SYS_B_03"||:"SYS_B_04"||"remarks_1"
||:"SYS_B_05"||:"SYS_B_06"||"remarks_2"||:"SYS_B_07"||:"SYS_B_08"||to
_char("date",:"SYS_B_09")||:"SYS_B_10"||:"SYS_B_11"||"time"||:"SYS_B_
12"||:"SYS_B_13"||"zone"||:"SYS_B_14" as " " from
"DHL_V_ORDERSTOUPDATE_PRNT"
Rationale
The SQL spent 100% of its database time on CPU, I/O and Cluster waits.
This part of database time may be improved by the SQL Tuning Advisor.
Rationale
Database time for this SQL was divided as follows: 100% for SQL
execution, 0% for parsing, 0% for PL/SQL execution and 0% for Java
execution.
Rationale
SQL statement with SQL_ID "dk2hc0u7bzgqh" was executed 19 times and had
an average elapsed time of 625 seconds.
Recommendation 4: SQL Tuning
Estimated benefit is .33 active sessions, 3.81% of total activity.
-----------------------------------------------------------------Action
Run SQL Tuning Advisor on the SELECT statement with SQL_ID
"aw6qpddg0h4ay".
Related Object
SQL statement with SQL_ID aw6qpddg0h4ay.
select
/* #import DHLimp.ord_status */
tsdsmd."tsstts"
as "FileStatus"
,
upper(substr(filestatus."description",:"SYS_B_000",:"SYS_B_001
")) ||
lower(substr(filestatus."description",:"SYS_B_002",:"SYS_B_003"))
as "StatusDescr"
,
tsdsmd."afd"
as "department"
,case when tsdsmd."module" = :"SYS_B_004"
then :"SYS_B_005"
else decode(tsdsmd."srtdos",:"SYS_B_006",:"SYS_B_007",
:"SYS_B_008",:"SYS_B_009",
:"SYS_B_010",:"SYS_B_011",
:"SYS_B_012", decode(ref5001."tsreft" ,
:"SYS_B_013" ,:"SYS_B_014",
:"SYS_B_015"),
:"SYS_B_016",:"SYS_B_017",
:"SYS_B_018",:"SYS_B_019",
:"SYS_B_020",:"SYS_B_021",

:"SYS_B_022",:"SYS_B_023",
tsdsmd."srtdos")
end as "FileType"
,
tsserl."oms201"
as "Service"
,
tars."oms101"
as "Tariff"
/* #import DH_tmsFiles.ord_mand */
,
tsdsmd."dosvlg"
as "FileNumber"
,
tsdsmd."afh"
as "HandlingCode"
,
principal."tsnam1"
as "Name"
,
principal."tsnam1"
as "SearchName"
,
:"SYS_B_024"
as "tsinmd"
,
:"SYS_B_025"
as "vrfilk"
/* #import DHLimp.ref_fields */
,nvl(tsdsmd."refopd",:"SYS_B_026")
as "CW.PrimaryRef"
--,
ref3000."tsreft"
as "CW.SenderRef"
--,
ref3001."tsreft"
as "CW.ReceiverRef"
/* #import DHLimp.add_fields */
-- add fields here
/* #import DHLimp.add_rfields */
,
ref3002."tsreft"
as "CW.CustomerRef1"
--,
ref3003."tsreft"
as "CW.CustomerRef2"
,
ref3004."tsreft"
as "CW.CustomerRef3"
,
ref3005."tsreft"
as "CW.CustomerRef4"
,
ref3006."tsreft"
as "CW.CustomerRef5"
,
ref3007."tsreft"
as "CW.CustomerRef6"
/*
,
ref3008."tsreft"
as "CW.CustomerRef7"
,
ref3009."tsreft"
as "CW.CustomerRef8"
,
ref3010."tsreft"
as "CW.CustomerRef9"
,
ref3011."tsreft"
as "CW.CustomerRef10"
*/
,
ref6000."tsreft"
as "Cold_Chain"
,
rtrim(substr(ref5000."tsreft",:"SYS_B_027",:"SYS_B_028")) ||
to_char(to_number(substr(ref5000."tsreft",:"SYS_B_029",:"SYS_B_030"))
)
as "Consignment Note"
/* #import DHLimp.main_fields */
,
tsdsmd."datinv"
as "CreatedDate"
--,
tsdsmd."taanlv"
as "StartTime"
--,
tsdsmd."plher"
as "Origin"
,
tsdsmd."tszola"
as "LoadingZone"
,
consignor."tsnam1"
as "Consignor"
,
loading."tsnam1"
as "LoadingName"
,
loading."tsadr1"
as "LoadingAddress1"
,
loading."tsadr2"
as "LoadingAddress2"
,
loading."tsadr3"
as "LoadingAddress3"
,
loading."tscity"
as "LoadingCity"
,
loading."postun"
as "Loading Suburb"
--,
load_dest."oms201"
as "loadingDestination"
,
tsdsmd."tsunld"
as "Expected Delivery Date"
, (select min(to_char(del."tstizo",:"SYS_B_031"))
from "cef_v_dhl_latestTrackTrace" del
where del."tsttkd" in ( :"SYS_B_032",:"SYS_B_033",:"SYS_B_034")
and del."fileNumber" = tsdsmd."dosvlg"
) as "Created Date/Time"
, (select min(to_char(del."tstizo",:"SYS_B_035"))
from "cef_v_dhl_latestTrackTrace" del
where del."tsttkd" in ( :"SYS_B_036",:"SYS_B_037")
and del."fileNumber" = tsdsmd."dosvlg"
) as "Scanned to Lane Date/Time"

, (select max(to_char(del."tstizo",:"SYS_B_038"))
from "cef_v_dhl_latestTrackTrace" del
where del."tsttkd" in ( :"SYS_B_039", :"SYS_B_040",
:"SYS_B_041")
and del."fileNumber" = tsdsmd."dosvlg"
) as "Actual Delivered Date/Time"
--,
tsdsmd."taflev"
as "UnloadingTime"
--,
tsdsmd."plbes"
as "Destination"
,
tsdsmd."tszolo"
as "UnloadingZone"
,
consignee."tsnam1"
as "Consignee"
,
unloading."tsnam1"
as "UnloadingName1"
,
unloading."tsadr1"
as "UnloadingAddress1"
,
unloading."tsadr2"
as "UnloadingAddress2"
,
unloading."tsadr3"
as "UnloadingAddress3"
,
unloading."tscity"
as "UnloadingCity"
,
unloading."postun"
as "UnLoad Suburb"
--,
unload_dest."oms201"
as "UnloadingDestination"
,
carrier."tsnam1"
as "Carrier"
,(select max(tcarrier."tsnam1")
from "vw_naw" tcarrier,
"cef_tsroma" legs
where tsdsmd."dosvlg" = legs."dosvlg"
and legs."tsakti" = :"SYS_B_042"
and legs."tsrido" <> :"SYS_B_043"
and legs."tsrido" = tcarrier."dosvlg"
and tcarrier."tsroln" = :"SYS_B_044" ) as "End Leg Carrier"
,
tsdsmd."omsgd"
as "Description"
,
tsserl."oms201"
as "Service Level"
--,
tars."oms101"
as "Tariff type"
,
round(tsdsmd."collia",:"SYS_B_045") as "Quantity"
,
tsdsmd."brgew"
as "Weight"
,
tsdsmd."volwrd"
as "VolumeM3"
, (select count(units1."unitnr")
from "cef_tsshun" units1
where units1."dosvlg" = tsdsmd."dosvlg"
) as "Total Units"
,to_char((select
sum(case gl."tsshpa" when :"SYS_B_046"
then gl."tsshnr"
else (case gl."colkd" when :"SYS_B_047"
then gl."collia"
else :"SYS_B_048"
end)
end)
from "cef_dogoed" gl
where gl."dosvlg" = tsdsmd."dosvlg"
group by gl."dosvlg" )
,:"SYS_B_049") as "Chep Qty"
/* #import DHLimp.flag_fields */
--,
tsdsmd."tsca03"
as "CW.Flag3"
,
tsdsmd."tsca01"
as "CW.Flag1"
,(select
to_char(add_date."tstizo",:"SYS_B_050")
from "cef_tsfdts" add_date
where add_date."dosvlg" = tsdsmd."dosvlg"
and add_date."tsdatt" = :"SYS_B_051")
as "Booking Date/Time"
--,
tsdsmd."tsca02"
as "CW.Flag2"
--,
tsdsmd."tsca04"
as "CW.Flag4"
--,
tsdsmd."tsca05"
as "CW.Flag5"

--,
tsdsmd."tsca06"
as "CW.Flag6"
--,
tsdsmd."tsca07"
as "CW.Flag7"
,
tsdsmd."tsca08"
as "CW.Flag8"
--,
tsdsmd."tsca09"
as "CW.Flag9"
--,
tsdsmd."tsca10"
as "CW.Flag10"
, nvl((case nvl(tsdsmd."tsca06",:"SYS_B_052") when :"SYS_B_053"
then :"SYS_B_054"
else nvl(( select max(:"SYS_B_055")
from "cef_tsdgsc" dg
where dg."dosvlg" = tsdsmd."dosvlg"
group by dg."dosvlg"
),:"SYS_B_056")
end)
,:"SYS_B_057") as "DGflag"
/* #import DHLimp.amt_fields */
--,
tsdsmd."bedrk1"
as "CW.Amount1"
--,
tsdsmd."bedrk2"
as "CW.Amount2"
--,
tsdsmd."bedrk3"
as "CW.Amount3"
--,
tsdsmd."bedrk4"
as "CW.Amount4"
--,
tsdsmd."bedrk5"
as "CW.Amount5"
,
tsdsmd."bedrk6"
as "CW.Amount6"
,
tsdsmd."bedrk7"
as "CW.Amount7"
--,
tsdsmd."bedrk8"
as "CW.Amount8"
--,
tsdsmd."bedrk9"
as "CW.Amount9"
--#if 'DHLAgencyUsr' = 'DHL_ACCOUNTS'
--#import DHLimp.acc_fields
--#end-if
from
"cef_tsdsmd" tsdsmd
--#if 'DHLAgencyUsr' = 'DHL_ACCOUNTS'
--#import DHLimp.acc_files
--#end-if
/* #import DH_tmsFiles.addresses */
left outer join "vw_naw" loading
on loading."dosvlg" = tsdsmd."dosvlg"
and loading."tsroln" = :"SYS_B_058"
left outer join "cef_destab" load_dest
on loading."deskod" = load_dest."deskod"
left outer join "vw_naw" consignee
on consignee."dosvlg" = tsdsmd."dosvlg"
and consignee."tsroln" = :"SYS_B_059"
left outer join "vw_naw" unloading
on unloading."dosvlg" = tsdsmd."dosvlg"
and unloading."tsroln" = :"SYS_B_060"
left outer join "cef_destab" unload_dest
on unloading."deskod" = unload_dest."deskod"
left outer join "vw_naw" consignor
on consignor."dosvlg" = tsdsmd."dosvlg"
and consignor."tsroln" = :"SYS_B_061"
left outer join "vw_naw" carrier
on carrier."dosvlg" = tsdsmd."dosvlg"
and carrier."tsroln" = :"SYS_B_062"
/* #import DHLimp.add_files */
-- add files here
/* #import DHLimp.ref_files */
/* ref files */
left outer join "cef_tsfire" ref3000
on tsdsmd."dosvlg" = ref3000."dosvlg"
and ref3000."tsrefc" = :"SYS_B_063"
left outer join "cef_tsfire" ref3001

on tsdsmd."dosvlg" = ref3001."dosvlg"
and ref3001."tsrefc" = :"SYS_B_064"
/* #import DHLimp.desc_files */
left outer join
"cef_v_cw_tsstus_descr" filestatus
on filestatus."tsbatp" = :"SYS_B_065"
and filestatus."tsstts" = tsdsmd."tsstts"
left outer join "cef_tsselv" tsserl
on tsdsmd."tsserl" = tsserl."tsserl"
left outer join "cef_tars" tars
on tsdsmd."tarsrt" = tars."tarsrt"
/* #import DHLimp.add_reffiles */
/* ref files */
left outer join "cef_tsfire" ref3002
on tsdsmd."dosvlg" = ref3002."dosvlg"
and ref3002."tsrefc" = :"SYS_B_066"
left outer join "cef_tsfire" ref3003
on tsdsmd."dosvlg" = ref3003."dosvlg"
and ref3003."tsrefc" = :"SYS_B_067"
left outer join "cef_tsfire" ref3004
on tsdsmd."dosvlg" = ref3004."dosvlg"
and ref3004."tsrefc" = :"SYS_B_068"
left outer join "cef_tsfire" ref3005
on tsdsmd."dosvlg" = ref3005."dosvlg"
and ref3005."tsrefc" = :"SYS_B_069"
left outer join "cef_tsfire" ref3006
on tsdsmd."dosvlg" = ref3006."dosvlg"
and ref3006."tsrefc" = :"SYS_B_070"
left outer join "cef_tsfire" ref3007
on tsdsmd."dosvlg" = ref3007."dosvlg"
and ref3007."tsrefc" = :"SYS_B_071"
left outer join "cef_tsfire" ref3008
on tsdsmd."dosvlg" = ref3008."dosvlg"
and ref3008."tsrefc" = :"SYS_B_072"
/*left outer join "cef_tsfire" ref3009
on tsdsmd."dosvlg" = ref3009."dosvlg"
and ref3009."tsrefc" = '3009'
left outer join "cef_tsfire" ref3010
on tsdsmd."dosvlg" = ref3010."dosvlg"
and ref3010."tsrefc" = '3010'
left outer join "cef_tsfire" ref3011
*/
left outer join "cef_tsfire" ref6000
on tsdsmd."dosvlg" = ref6000."dosvlg"
and ref6000."tsrefc" = :"SYS_B_073"
left outer join "cef_tsfire" ref5000
on tsdsmd."dosvlg" = ref5000."dosvlg"
and ref5000."tsrefc" = :"SYS_B_074"
left outer join "cef_tsfire" ref5001
on tsdsmd."dosvlg" = ref5001."dosvlg"
and ref5001."tsrefc" = :"SYS_B_075"
/* #import DH_tmsFiles.security */
,
"vw_naw" principal
,
"cef_expafd" expafd
,
"cef_mydepartments" mydepartments
where
/* #import DH_tmsFiles.ord_where */
(:"SYS_B_076"=:"SYS_B_077" or ( :"SYS_B_078"<>:"SYS_B_079"
and
tsdsmd."dosvlg"=:"SYS_B_080"))
and
tsdsmd."afd" = expafd."afd"

and
expafd."afd" = mydepartments."department"
and
expafd."tsdptp" = :"SYS_B_081"
and
principal."dosvlg" = tsdsmd."dosvlg"
and
principal."tsroln" = :"SYS_B_082"
and
tsdsmd."afd" = decode(:"SYS_B_083",:"SYS_B_084"
, tsdsmd."afd"
, :"SYS_B_085")
and (:"SYS_B_086" is null or tsdsmd."tsstts"
= :"SYS_B_087")
/* #import DHLimp.ord_where */
-- include additional ord where -and (:"SYS_B_088" is null or
upper(tsdsmd."refopd") like
upper(nvl(:"SYS_B_089",:"SYS_B_090")) || :"SYS_B_091" or
tsdsmd."dosvlg" in ( select freetxt."dosvlg"
from "cef_tsdoms" freetxt
where freetxt."dosvlg" = tsdsmd."dosvlg"
and freetxt."srtoms" = :"SYS_B_092"
and freetxt."tsoms1" = (:"SYS_B_093"))
or tsdsmd."refopd" in
(select "tsoms1"
from "cef_tsdoms" doms
where doms."module" = :"SYS_B_094"
and doms."srtoms" = :"SYS_B_095"
and doms."dosvlg" in
(select tsdsmd."dosvlg"
from "cef_tsdsmd" tsdsmd
where tsdsmd."refopd" like
upper(nvl(:"SYS_B_096",:"SYS_B_097")) || :"SYS_B_098") ))
and
expafd."gebied" = decode(:"SYS_B_099"
,:"SYS_B_100", expafd."gebied"
, :"SYS_B_101")
and tsdsmd."afh" in ( :"SYS_B_102",:"SYS_B_103" )
and tsdsmd."module" in (:"SYS_B_104",:"SYS_B_105")
and
(:"SYS_B_106" is null or
tsdsmd."tsserl" = nvl(:"SYS_B_107",:"SYS_B_108"))
/* #import DH_tmsFiles.zone_where */
and
(:"SYS_B_109" is null or
tsdsmd."tszola" = nvl(:"SYS_B_110",:"SYS_B_111"))
and
(:"SYS_B_112" is null or
tsdsmd."tszolo" = nvl(:"SYS_B_113",:"SYS_B_114"))
/* #import DH_tmsFiles.role_where */
and ( :"SYS_B_115" is null or
exists ( select :"SYS_B_116"
from "vw_naw" vw_naw
where vw_naw."dosvlg" = tsdsmd."dosvlg"
and vw_naw."tsroln" = :"SYS_B_117"
and vw_naw."zoek" like :"SYS_B_118" ))
/* #import DH_tmsFiles.date_where */
and
(
( ( :"SYS_B_119" = :"SYS_B_120" or tsdsmd."module" =
:"SYS_B_121")
and
tsdsmd."tslddt" >= decode(:"SYS_B_122",:"SYS_B_123"
, sysdate - :"SYS_B_124"
, to_date(:"SYS_B_125",:"SYS_B_126"))
and
tsdsmd."tslddt" <= decode(:"SYS_B_127",:"SYS_B_128"
, sysdate + :"SYS_B_129"
, to_date(:"SYS_B_130",:"SYS_B_131"))
)
or
((:"SYS_B_132" = :"SYS_B_133" or tsdsmd."module" =

:"SYS_B_134")
and
tsdsmd."tsunld" >= decode(:"SYS_B_135",:"SYS_B_136"
, sysdate - :"SYS_B_137"
, to_date(:"SYS_B_138",:"SYS_B_139"))
and
tsdsmd."tsunld" <= decode(:"SYS_B_140",:"SYS_B_141"
, sysdate + :"SYS_B_142"
, to_date(:"SYS_B_143",:"SYS_B_144"))
)
or
(:"SYS_B_145" = :"SYS_B_146"
and
tsdsmd."datinv" >= decode(:"SYS_B_147",:"SYS_B_148"
, sysdate - :"SYS_B_149"
, to_date(:"SYS_B_150",:"SYS_B_151"))
and
tsdsmd."datinv" <= decode(:"SYS_B_152",:"SYS_B_153"
, sysdate + :"SYS_B_154"
, to_date(:"SYS_B_155",:"SYS_B_156"))
)
)
/* #import DHLimp.sort */
order by tsdsmd."dosvlg"
Action
Use bigger fetch arrays while fetching results from the SELECT statement
with SQL_ID "aw6qpddg0h4ay".
Related Object
SQL statement with SQL_ID aw6qpddg0h4ay.
select
/* #import DHLimp.ord_status */
tsdsmd."tsstts"
as "FileStatus"
,
upper(substr(filestatus."description",:"SYS_B_000",:"SYS_B_001
")) ||
lower(substr(filestatus."description",:"SYS_B_002",:"SYS_B_003"))
as "StatusDescr"
,
tsdsmd."afd"
as "department"
,case when tsdsmd."module" = :"SYS_B_004"
then :"SYS_B_005"
else decode(tsdsmd."srtdos",:"SYS_B_006",:"SYS_B_007",
:"SYS_B_008",:"SYS_B_009",
:"SYS_B_010",:"SYS_B_011",
:"SYS_B_012", decode(ref5001."tsreft" ,
:"SYS_B_013" ,:"SYS_B_014",
:"SYS_B_015"),
:"SYS_B_016",:"SYS_B_017",
:"SYS_B_018",:"SYS_B_019",
:"SYS_B_020",:"SYS_B_021",
:"SYS_B_022",:"SYS_B_023",
tsdsmd."srtdos")
end as "FileType"
,
tsserl."oms201"
as "Service"
,
tars."oms101"
as "Tariff"
/* #import DH_tmsFiles.ord_mand */
,
tsdsmd."dosvlg"
as "FileNumber"
,
tsdsmd."afh"
as "HandlingCode"
,
principal."tsnam1"
as "Name"
,
principal."tsnam1"
as "SearchName"
,
:"SYS_B_024"
as "tsinmd"
,
:"SYS_B_025"
as "vrfilk"
/* #import DHLimp.ref_fields */
,nvl(tsdsmd."refopd",:"SYS_B_026")
as "CW.PrimaryRef"
--,
ref3000."tsreft"
as "CW.SenderRef"
--,
ref3001."tsreft"
as "CW.ReceiverRef"
/* #import DHLimp.add_fields */

-- add fields here


/* #import DHLimp.add_rfields */
,
ref3002."tsreft"
as "CW.CustomerRef1"
--,
ref3003."tsreft"
as "CW.CustomerRef2"
,
ref3004."tsreft"
as "CW.CustomerRef3"
,
ref3005."tsreft"
as "CW.CustomerRef4"
,
ref3006."tsreft"
as "CW.CustomerRef5"
,
ref3007."tsreft"
as "CW.CustomerRef6"
/*
,
ref3008."tsreft"
as "CW.CustomerRef7"
,
ref3009."tsreft"
as "CW.CustomerRef8"
,
ref3010."tsreft"
as "CW.CustomerRef9"
,
ref3011."tsreft"
as "CW.CustomerRef10"
*/
,
ref6000."tsreft"
as "Cold_Chain"
,
rtrim(substr(ref5000."tsreft",:"SYS_B_027",:"SYS_B_028")) ||
to_char(to_number(substr(ref5000."tsreft",:"SYS_B_029",:"SYS_B_030"))
)
as "Consignment Note"
/* #import DHLimp.main_fields */
,
tsdsmd."datinv"
as "CreatedDate"
--,
tsdsmd."taanlv"
as "StartTime"
--,
tsdsmd."plher"
as "Origin"
,
tsdsmd."tszola"
as "LoadingZone"
,
consignor."tsnam1"
as "Consignor"
,
loading."tsnam1"
as "LoadingName"
,
loading."tsadr1"
as "LoadingAddress1"
,
loading."tsadr2"
as "LoadingAddress2"
,
loading."tsadr3"
as "LoadingAddress3"
,
loading."tscity"
as "LoadingCity"
,
loading."postun"
as "Loading Suburb"
--,
load_dest."oms201"
as "loadingDestination"
,
tsdsmd."tsunld"
as "Expected Delivery Date"
, (select min(to_char(del."tstizo",:"SYS_B_031"))
from "cef_v_dhl_latestTrackTrace" del
where del."tsttkd" in ( :"SYS_B_032",:"SYS_B_033",:"SYS_B_034")
and del."fileNumber" = tsdsmd."dosvlg"
) as "Created Date/Time"
, (select min(to_char(del."tstizo",:"SYS_B_035"))
from "cef_v_dhl_latestTrackTrace" del
where del."tsttkd" in ( :"SYS_B_036",:"SYS_B_037")
and del."fileNumber" = tsdsmd."dosvlg"
) as "Scanned to Lane Date/Time"
, (select max(to_char(del."tstizo",:"SYS_B_038"))
from "cef_v_dhl_latestTrackTrace" del
where del."tsttkd" in ( :"SYS_B_039", :"SYS_B_040",
:"SYS_B_041")
and del."fileNumber" = tsdsmd."dosvlg"
) as "Actual Delivered Date/Time"
--,
tsdsmd."taflev"
as "UnloadingTime"
--,
tsdsmd."plbes"
as "Destination"
,
tsdsmd."tszolo"
as "UnloadingZone"
,
consignee."tsnam1"
as "Consignee"
,
unloading."tsnam1"
as "UnloadingName1"
,
unloading."tsadr1"
as "UnloadingAddress1"
,
unloading."tsadr2"
as "UnloadingAddress2"
,
unloading."tsadr3"
as "UnloadingAddress3"
,
unloading."tscity"
as "UnloadingCity"
,
unloading."postun"
as "UnLoad Suburb"
--,
unload_dest."oms201"
as "UnloadingDestination"

,
carrier."tsnam1"
as "Carrier"
,(select max(tcarrier."tsnam1")
from "vw_naw" tcarrier,
"cef_tsroma" legs
where tsdsmd."dosvlg" = legs."dosvlg"
and legs."tsakti" = :"SYS_B_042"
and legs."tsrido" <> :"SYS_B_043"
and legs."tsrido" = tcarrier."dosvlg"
and tcarrier."tsroln" = :"SYS_B_044" ) as "End Leg Carrier"
,
tsdsmd."omsgd"
as "Description"
,
tsserl."oms201"
as "Service Level"
--,
tars."oms101"
as "Tariff type"
,
round(tsdsmd."collia",:"SYS_B_045") as "Quantity"
,
tsdsmd."brgew"
as "Weight"
,
tsdsmd."volwrd"
as "VolumeM3"
, (select count(units1."unitnr")
from "cef_tsshun" units1
where units1."dosvlg" = tsdsmd."dosvlg"
) as "Total Units"
,to_char((select
sum(case gl."tsshpa" when :"SYS_B_046"
then gl."tsshnr"
else (case gl."colkd" when :"SYS_B_047"
then gl."collia"
else :"SYS_B_048"
end)
end)
from "cef_dogoed" gl
where gl."dosvlg" = tsdsmd."dosvlg"
group by gl."dosvlg" )
,:"SYS_B_049") as "Chep Qty"
/* #import DHLimp.flag_fields */
--,
tsdsmd."tsca03"
as "CW.Flag3"
,
tsdsmd."tsca01"
as "CW.Flag1"
,(select
to_char(add_date."tstizo",:"SYS_B_050")
from "cef_tsfdts" add_date
where add_date."dosvlg" = tsdsmd."dosvlg"
and add_date."tsdatt" = :"SYS_B_051")
as "Booking Date/Time"
--,
tsdsmd."tsca02"
as "CW.Flag2"
--,
tsdsmd."tsca04"
as "CW.Flag4"
--,
tsdsmd."tsca05"
as "CW.Flag5"
--,
tsdsmd."tsca06"
as "CW.Flag6"
--,
tsdsmd."tsca07"
as "CW.Flag7"
,
tsdsmd."tsca08"
as "CW.Flag8"
--,
tsdsmd."tsca09"
as "CW.Flag9"
--,
tsdsmd."tsca10"
as "CW.Flag10"
, nvl((case nvl(tsdsmd."tsca06",:"SYS_B_052") when :"SYS_B_053"
then :"SYS_B_054"
else nvl(( select max(:"SYS_B_055")
from "cef_tsdgsc" dg
where dg."dosvlg" = tsdsmd."dosvlg"
group by dg."dosvlg"
),:"SYS_B_056")
end)
,:"SYS_B_057") as "DGflag"
/* #import DHLimp.amt_fields */
--,
tsdsmd."bedrk1"
as "CW.Amount1"
--,
tsdsmd."bedrk2"
as "CW.Amount2"

--,
tsdsmd."bedrk3"
as "CW.Amount3"
--,
tsdsmd."bedrk4"
as "CW.Amount4"
--,
tsdsmd."bedrk5"
as "CW.Amount5"
,
tsdsmd."bedrk6"
as "CW.Amount6"
,
tsdsmd."bedrk7"
as "CW.Amount7"
--,
tsdsmd."bedrk8"
as "CW.Amount8"
--,
tsdsmd."bedrk9"
as "CW.Amount9"
--#if 'DHLAgencyUsr' = 'DHL_ACCOUNTS'
--#import DHLimp.acc_fields
--#end-if
from
"cef_tsdsmd" tsdsmd
--#if 'DHLAgencyUsr' = 'DHL_ACCOUNTS'
--#import DHLimp.acc_files
--#end-if
/* #import DH_tmsFiles.addresses */
left outer join "vw_naw" loading
on loading."dosvlg" = tsdsmd."dosvlg"
and loading."tsroln" = :"SYS_B_058"
left outer join "cef_destab" load_dest
on loading."deskod" = load_dest."deskod"
left outer join "vw_naw" consignee
on consignee."dosvlg" = tsdsmd."dosvlg"
and consignee."tsroln" = :"SYS_B_059"
left outer join "vw_naw" unloading
on unloading."dosvlg" = tsdsmd."dosvlg"
and unloading."tsroln" = :"SYS_B_060"
left outer join "cef_destab" unload_dest
on unloading."deskod" = unload_dest."deskod"
left outer join "vw_naw" consignor
on consignor."dosvlg" = tsdsmd."dosvlg"
and consignor."tsroln" = :"SYS_B_061"
left outer join "vw_naw" carrier
on carrier."dosvlg" = tsdsmd."dosvlg"
and carrier."tsroln" = :"SYS_B_062"
/* #import DHLimp.add_files */
-- add files here
/* #import DHLimp.ref_files */
/* ref files */
left outer join "cef_tsfire" ref3000
on tsdsmd."dosvlg" = ref3000."dosvlg"
and ref3000."tsrefc" = :"SYS_B_063"
left outer join "cef_tsfire" ref3001
on tsdsmd."dosvlg" = ref3001."dosvlg"
and ref3001."tsrefc" = :"SYS_B_064"
/* #import DHLimp.desc_files */
left outer join
"cef_v_cw_tsstus_descr" filestatus
on filestatus."tsbatp" = :"SYS_B_065"
and filestatus."tsstts" = tsdsmd."tsstts"
left outer join "cef_tsselv" tsserl
on tsdsmd."tsserl" = tsserl."tsserl"
left outer join "cef_tars" tars
on tsdsmd."tarsrt" = tars."tarsrt"
/* #import DHLimp.add_reffiles */
/* ref files */
left outer join "cef_tsfire" ref3002
on tsdsmd."dosvlg" = ref3002."dosvlg"
and ref3002."tsrefc" = :"SYS_B_066"
left outer join "cef_tsfire" ref3003

on tsdsmd."dosvlg" = ref3003."dosvlg"
and ref3003."tsrefc" = :"SYS_B_067"
left outer join "cef_tsfire" ref3004
on tsdsmd."dosvlg" = ref3004."dosvlg"
and ref3004."tsrefc" = :"SYS_B_068"
left outer join "cef_tsfire" ref3005
on tsdsmd."dosvlg" = ref3005."dosvlg"
and ref3005."tsrefc" = :"SYS_B_069"
left outer join "cef_tsfire" ref3006
on tsdsmd."dosvlg" = ref3006."dosvlg"
and ref3006."tsrefc" = :"SYS_B_070"
left outer join "cef_tsfire" ref3007
on tsdsmd."dosvlg" = ref3007."dosvlg"
and ref3007."tsrefc" = :"SYS_B_071"
left outer join "cef_tsfire" ref3008
on tsdsmd."dosvlg" = ref3008."dosvlg"
and ref3008."tsrefc" = :"SYS_B_072"
/*left outer join "cef_tsfire" ref3009
on tsdsmd."dosvlg" = ref3009."dosvlg"
and ref3009."tsrefc" = '3009'
left outer join "cef_tsfire" ref3010
on tsdsmd."dosvlg" = ref3010."dosvlg"
and ref3010."tsrefc" = '3010'
left outer join "cef_tsfire" ref3011
*/
left outer join "cef_tsfire" ref6000
on tsdsmd."dosvlg" = ref6000."dosvlg"
and ref6000."tsrefc" = :"SYS_B_073"
left outer join "cef_tsfire" ref5000
on tsdsmd."dosvlg" = ref5000."dosvlg"
and ref5000."tsrefc" = :"SYS_B_074"
left outer join "cef_tsfire" ref5001
on tsdsmd."dosvlg" = ref5001."dosvlg"
and ref5001."tsrefc" = :"SYS_B_075"
/* #import DH_tmsFiles.security */
,
"vw_naw" principal
,
"cef_expafd" expafd
,
"cef_mydepartments" mydepartments
where
/* #import DH_tmsFiles.ord_where */
(:"SYS_B_076"=:"SYS_B_077" or ( :"SYS_B_078"<>:"SYS_B_079"
and
tsdsmd."dosvlg"=:"SYS_B_080"))
and
tsdsmd."afd" = expafd."afd"
and
expafd."afd" = mydepartments."department"
and
expafd."tsdptp" = :"SYS_B_081"
and
principal."dosvlg" = tsdsmd."dosvlg"
and
principal."tsroln" = :"SYS_B_082"
and
tsdsmd."afd" = decode(:"SYS_B_083",:"SYS_B_084"
, tsdsmd."afd"
, :"SYS_B_085")
and (:"SYS_B_086" is null or tsdsmd."tsstts"
= :"SYS_B_087")
/* #import DHLimp.ord_where */
-- include additional ord where -and (:"SYS_B_088" is null or
upper(tsdsmd."refopd") like
upper(nvl(:"SYS_B_089",:"SYS_B_090")) || :"SYS_B_091" or
tsdsmd."dosvlg" in ( select freetxt."dosvlg"
from "cef_tsdoms" freetxt
where freetxt."dosvlg" = tsdsmd."dosvlg"

and freetxt."srtoms" = :"SYS_B_092"


and freetxt."tsoms1" = (:"SYS_B_093"))
or tsdsmd."refopd" in
(select "tsoms1"
from "cef_tsdoms" doms
where doms."module" = :"SYS_B_094"
and doms."srtoms" = :"SYS_B_095"
and doms."dosvlg" in
(select tsdsmd."dosvlg"
from "cef_tsdsmd" tsdsmd
where tsdsmd."refopd" like
upper(nvl(:"SYS_B_096",:"SYS_B_097")) || :"SYS_B_098") ))
and
expafd."gebied" = decode(:"SYS_B_099"
,:"SYS_B_100", expafd."gebied"
, :"SYS_B_101")
and tsdsmd."afh" in ( :"SYS_B_102",:"SYS_B_103" )
and tsdsmd."module" in (:"SYS_B_104",:"SYS_B_105")
and
(:"SYS_B_106" is null or
tsdsmd."tsserl" = nvl(:"SYS_B_107",:"SYS_B_108"))
/* #import DH_tmsFiles.zone_where */
and
(:"SYS_B_109" is null or
tsdsmd."tszola" = nvl(:"SYS_B_110",:"SYS_B_111"))
and
(:"SYS_B_112" is null or
tsdsmd."tszolo" = nvl(:"SYS_B_113",:"SYS_B_114"))
/* #import DH_tmsFiles.role_where */
and ( :"SYS_B_115" is null or
exists ( select :"SYS_B_116"
from "vw_naw" vw_naw
where vw_naw."dosvlg" = tsdsmd."dosvlg"
and vw_naw."tsroln" = :"SYS_B_117"
and vw_naw."zoek" like :"SYS_B_118" ))
/* #import DH_tmsFiles.date_where */
and
(
( ( :"SYS_B_119" = :"SYS_B_120" or tsdsmd."module" =
:"SYS_B_121")
and
tsdsmd."tslddt" >= decode(:"SYS_B_122",:"SYS_B_123"
, sysdate - :"SYS_B_124"
, to_date(:"SYS_B_125",:"SYS_B_126"))
and
tsdsmd."tslddt" <= decode(:"SYS_B_127",:"SYS_B_128"
, sysdate + :"SYS_B_129"
, to_date(:"SYS_B_130",:"SYS_B_131"))
)
or
((:"SYS_B_132" = :"SYS_B_133" or tsdsmd."module" =
:"SYS_B_134")
and
tsdsmd."tsunld" >= decode(:"SYS_B_135",:"SYS_B_136"
, sysdate - :"SYS_B_137"
, to_date(:"SYS_B_138",:"SYS_B_139"))
and
tsdsmd."tsunld" <= decode(:"SYS_B_140",:"SYS_B_141"
, sysdate + :"SYS_B_142"
, to_date(:"SYS_B_143",:"SYS_B_144"))
)
or
(:"SYS_B_145" = :"SYS_B_146"
and
tsdsmd."datinv" >= decode(:"SYS_B_147",:"SYS_B_148"
, sysdate - :"SYS_B_149"
, to_date(:"SYS_B_150",:"SYS_B_151"))
and
tsdsmd."datinv" <= decode(:"SYS_B_152",:"SYS_B_153"
, sysdate + :"SYS_B_154"
, to_date(:"SYS_B_155",:"SYS_B_156"))
)
)

/* #import DHLimp.sort */
order by tsdsmd."dosvlg"
Rationale
The SQL spent 99% of its database time on CPU, I/O and Cluster waits.
This part of database time may be improved by the SQL Tuning Advisor.
Rationale
Database time for this SQL was divided as follows: 100% for SQL
execution, 0% for parsing, 0% for PL/SQL execution and 0% for Java
execution.
Rationale
SQL statement with SQL_ID "aw6qpddg0h4ay" was executed 663 times and had
an average elapsed time of 18 seconds.
Rationale
I/O and Cluster wait for TABLE "PROD_NZ.cef_tsdsmd" with object ID
363260 consumed 61% of the database time spent on this SQL statement.
Rationale
Full scan of TABLE "PROD_NZ.cef_tsdsmd" with object ID 363260 consumed
21% of the database time spent on this SQL statement.
Recommendation 5: SQL Tuning
Estimated benefit is .31 active sessions, 3.55% of total activity.
-----------------------------------------------------------------Action
Run SQL Tuning Advisor on the SELECT statement with SQL_ID
"a5pcqgkwbg4rw".
Related Object
SQL statement with SQL_ID a5pcqgkwbg4rw.
select
/* #import MK_DHLimp.ord_status */
tsdsmd."tsstts"
as "FileStatus"
,
upper(substr(filestatus."description",:"SYS_B_000",:"SYS_B_001
")) ||
lower(substr(filestatus."description",:"SYS_B_002",:"SYS_B_003"))
as "StatusDescr"
,
tsdsmd."afd"
as "department"
,case tsdsmd."afh"
when :"SYS_B_004" then :"SYS_B_005"
else decode(tsdsmd."srtdos",:"SYS_B_006",:"SYS_B_007",
:"SYS_B_008",:"SYS_B_009",
:"SYS_B_010",:"SYS_B_011",
:"SYS_B_012",:"SYS_B_013",
:"SYS_B_014",:"SYS_B_015",
:"SYS_B_016",:"SYS_B_017",
:"SYS_B_018",:"SYS_B_019",
:"SYS_B_020",:"SYS_B_021",
tsdsmd."srtdos")
end as "FileType"
,
tsserl."oms201"
as "Service"
,
tars."oms101"
as "Tariff"
/* #import DH_tmsFiles.ord_mand */
,
tsdsmd."dosvlg"
as "FileNumber"
,
tsdsmd."afh"
as "HandlingCode"
,
principal."tsnam1"
as "Name"
,
principal."zoek"
as "SearchName"
,
:"SYS_B_022"
as "tsinmd"
,
:"SYS_B_023"
as "vrfilk"
,
:"SYS_B_024"
as "expEmissionVal"
,
:"SYS_B_025"
as "actEmissionVal"
,
:"SYS_B_026"
as "FileType"
/* #import MK_DHLimp.ref_fields */

,nvl(tsdsmd."refopd",:"SYS_B_027")
as "CW.PrimaryRef"
-- ,
ref3000."tsreft"
as "CW.SenderRef"
-- ,
ref3001."tsreft"
as "CW.ReceiverRef"
/* #import MK_DHLimp.add_fields */
, round(tsdsmd."collia",:"SYS_B_028")
as "Total Items"
--, tsdsmd."colkd"
as "Package Type"
, (select round(sum(dogoed."tsavnr"),:"SYS_B_029")
from "cef_dogoed" dogoed
where dogoed."dosvlg" = tsdsmd."dosvlg")
as "Inner Pack Qty"
, round(tsdsmd."tsloai",:"SYS_B_030")
as "Total LI"
, round(tsdsmd."brgew",:"SYS_B_031")
as "Total KG"
, round(tsdsmd."volwrd",:"SYS_B_032")
as "Total m3"
, (select min(to_char
(trac."tstizo",:"SYS_B_033"))
from "cef_tstrac" trac
where trac."tsttkd"
in (:"SYS_B_034",:"SYS_B_035")
and trac."dosvlg" = tsdsmd."dosvlg"
group by trac."dosvlg")
as "Date Created"
--, tsdsmd."vbnr" as "DHL.Vbnr"
/* #import MK_DHLimp.main_fields */
,
principal."zoek"
as "Principal"
,
consignee."zoek"
as "Customer Name"
,
decode(tsdsmd."afh",:"SYS_B_036",tsdsmd."tsuitd",
tsdsmd."tslddt")
as "Collection date"
,
tsdsmd."taanlv"
as "Col Time"
,
load_dest."deskod"
as "Col From"
,
tsdsmd."tszola"
as "LoadingZone"
,
tsdsmd."tsunld"
as "Delivery date"
,
tsdsmd."taflev"
as "Del Time"
,
unload_dest."deskod"
as "Del To"
,
tsdsmd."tszolo"
as "UnloadingZone"
,
decode(tsdsmd."afd",
:"SYS_B_037", DECODE(substr(unloading."postun",:"SYS_B_038",:"SYS_B_
039"),
:"SYS_B_040", substr(unloading."postun",:"SYS_B_041",:"SYS_B_042"),
substr(unloading."postun",:"SYS_B_043",:"SYS_B_044" )),
:"SYS_B_045",substr(unloading."postun",:"SYS_B_046",:"SYS_B_047"),
unloading."postun")
as "Store Code"
,
(
select "tshsna"
from "cef_tshshu" shu
where shu."tshshz" =
unloading."postun"
) as "Store Name"
/*
,
tsdsmd."plher"
as "Origin"
,
consignor."tsnam1"
as "Consignor"
,
loading."tsnam1"
as "LoadingName"
,
loading."tsadr1"
as "LoadingAddress1"
,
loading."tsadr2"
as "LoadingAddress2"
, */
/* #import MK_DHLimp.Othr_rfields */
--, tsdsmd."tsdddt"
as "Order Date"
, decode(tsdsmd."vkotot",:"SYS_B_048",
:"SYS_B_049",:"SYS_B_050") as "Unrated"
-- , tsdsmd."tsmf15"
as "TN-DD No"

--, tsdsmd."vlucht"
as "Route No"
-- , tsdsmd."refnr"
as "license"
--, tsdsmd."manif"
as "Seal#1/GOR No"
-- , tsdsmd."route"
as "Seal#2/Truck No"
/*
, (SELECT dispatch_type."lokoms"
FROM "cef_lokati" dispatch_type
WHERE
tsdsmd."lllkod" = dispatch_type."lllkod")
as "Dispatch Tracking"
, tsdsmd."tsprtr"
as "Document Return"
*/
/* #import MK_DHLimp.flag_fields */
,
tsdsmd."tsca01"
as "Doc Return Y/N"
,
tsdsmd."tsca02"
as "Pallet Y/N"
,
tsdsmd."tsca03"
as "Confirm Y/N"
--,
tsdsmd."tsca06"
as "CW.Flag6"
--,
tsdsmd."tsca07"
as "CW.Flag7"
--,
tsdsmd."tsca08"
as "CW.Flag8"
,
tsdsmd."tsca09"
as "CW.Flag9"
--,
tsdsmd."tsca10"
as "CW.Flag10"
--,
tsdsmd."tsca04"
as "CW.Flag4"
--,
tsdsmd."tsca05"
as "CW.Flag5"
/* #import MK_DHLimp.add_rfields */
,
ref3030."tsreft"
as "Order Date"
,
ref3031."tsreft"
as "Route"
,
ref3032."tsreft"
as "License"
,
ref3033."tsreft"
as "Seal1"
,
ref3034."tsreft"
as "Seal2"
/* #import MK_DHLimp.amt_fields */
,
round(tsdsmd."bedrk1",:"SYS_B_051")
as "Dispatch Track"
--,
tsdsmd."bedrk2"
as "CW.Amount2"
--,
tsdsmd."bedrk3"
as "CW.Amount3"
--,
tsdsmd."bedrk4"
as "CW.Amount4"
--,
tsdsmd."bedrk5"
as "CW.Amount5"
--,
tsdsmd."bedrk6"
as "CW.Amount6"
--,
tsdsmd."bedrk7"
as "CW.Amount7"
--,
tsdsmd."bedrk8"
as "CW.Amount8"
--,
tsdsmd."bedrk9"
as "CW.Amount9"
-- #if 'BIGC_OPS_v6' = 'DHL_ACCOUNTS'
-- #import MK_DHLimp.acc_fields
-- #end-if
from
"cef_tsdsmd" tsdsmd
/* #import MK_DHLimp.acc_files */
left outer join "cef_dosmut" accounts
on tsdsmd."dosvlg" = accounts."dosvlg"
and accounts."bedrlv" <> :"SYS_B_052"
and :"SYS_B_053" = :"SYS_B_054"
/* #import DH_tmsFiles.addresses */
left outer join "cef_vw_naw" loading
on loading."dosvlg" = tsdsmd."dosvlg"
and loading."tsroln" = :"SYS_B_055"
left outer join "cef_destab" load_dest
on loading."deskod" = load_dest."deskod"
left outer join "cef_vw_naw" consignee
on consignee."dosvlg" = tsdsmd."dosvlg"
and consignee."tsroln" = :"SYS_B_056"
left outer join "cef_vw_naw" unloading
on unloading."dosvlg" = tsdsmd."dosvlg"

and unloading."tsroln" = :"SYS_B_057"


left outer join "cef_destab" unload_dest
on unloading."deskod" = unload_dest."deskod"
left outer join "cef_vw_naw" consignor
on consignor."dosvlg" = tsdsmd."dosvlg"
and consignor."tsroln" = :"SYS_B_058"
left outer join "cef_vw_naw" carrier
on carrier."dosvlg" = tsdsmd."dosvlg"
and carrier."tsroln" = :"SYS_B_059"
/* #import MK_DHLimp.add_files */
-- add files here
/* #import MK_DHLimp.ref_files */
/* ref files */
left outer join "cef_tsfire" ref3000
on tsdsmd."dosvlg" = ref3000."dosvlg"
and ref3000."tsrefc" = :"SYS_B_060"
left outer join "cef_tsfire" ref3001
on tsdsmd."dosvlg" = ref3001."dosvlg"
and ref3001."tsrefc" = :"SYS_B_061"
/* #import MK_DHLimp.desc_files */
left outer join
"cef_v_cw_tsstus_descr" filestatus
on filestatus."tsbatp" = :"SYS_B_062"
and filestatus."tsstts" = tsdsmd."tsstts"
left outer join "cef_tsselv" tsserl
on tsdsmd."tsserl" = tsserl."tsserl"
left outer join "cef_tars" tars
on tsdsmd."tarsrt" = tars."tarsrt"
/* #import MK_DHLimp.add_reffiles */
/* ref files */
/*left outer join "cef_tsfire" ref5000
on tsdsmd."dosvlg" = ref5000."dosvlg"
and ref5000."tsrefc" = '5000'
left outer join "cef_tsfire" ref3002
on tsdsmd."dosvlg" = ref3002."dosvlg"
and ref3002."tsrefc" = '3002'
left outer join "cef_tsfire" ref3003
*/
left outer join "cef_tsfire" ref3030
on tsdsmd."dosvlg" = ref3030."dosvlg"
and ref3030."tsrefc" = :"SYS_B_063"
left outer join "cef_tsfire" ref3031
on tsdsmd."dosvlg" = ref3031."dosvlg"
and ref3031."tsrefc" = :"SYS_B_064"
left outer join "cef_tsfire" ref3032
on tsdsmd."dosvlg" = ref3032."dosvlg"
and ref3032."tsrefc" = :"SYS_B_065"
left outer join "cef_tsfire" ref3033
on tsdsmd."dosvlg" = ref3033."dosvlg"
and ref3033."tsrefc" = :"SYS_B_066"
left outer join "cef_tsfire" ref3034
on tsdsmd."dosvlg" = ref3034."dosvlg"
and ref3034."tsrefc" = :"SYS_B_067"
/* #import DH_tmsFiles.security */
,
"cef_vw_naw" principal
,
"cef_expafd" expafd
,
"cef_mydepartments" mydepartments
where
/* #import DH_tmsFiles.ord_where */
(:"SYS_B_068"=:"SYS_B_069" or ( :"SYS_B_070"<>:"SYS_B_071"

and
tsdsmd."dosvlg"=:"SYS_B_072"))
and
tsdsmd."afd" = expafd."afd"
and
expafd."afd" = mydepartments."department"
and
expafd."tsdptp" = :"SYS_B_073"
and
principal."dosvlg" = tsdsmd."dosvlg"
and
principal."tsroln" = :"SYS_B_074"
and
tsdsmd."afd" = decode(:"SYS_B_075",:"SYS_B_076"
, tsdsmd."afd"
, :"SYS_B_077")
and
(:"SYS_B_078" is null or
tsdsmd."tsstts" >= :"SYS_B_079" )
and
(:"SYS_B_080" is null or
upper(tsdsmd."refopd") like
upper(nvl(:"SYS_B_081",:"SYS_B_082")) || :"SYS_B_083")
and
expafd."gebied" = decode(:"SYS_B_084"
,:"SYS_B_085", expafd."gebied"
, :"SYS_B_086")
and tsdsmd."afh" in ( :"SYS_B_087",:"SYS_B_088" )
and tsdsmd."module" in (:"SYS_B_089",:"SYS_B_090")
and
(:"SYS_B_091" is null or
tsdsmd."tsserl" = nvl(:"SYS_B_092",:"SYS_B_093"))
/* #import DH_tmsFiles.zone_where */
and
(:"SYS_B_094" is null or
tsdsmd."tszola" = nvl(:"SYS_B_095",:"SYS_B_096"))
and
(:"SYS_B_097" is null or
tsdsmd."tszolo" = nvl(:"SYS_B_098",:"SYS_B_099"))
/* #import DH_tmsFiles.role_where */
and ( :"SYS_B_100" is null or
exists ( select :"SYS_B_101"
from "cef_vw_naw" vw_naw
where vw_naw."dosvlg" = tsdsmd."dosvlg"
and vw_naw."tsroln" = :"SYS_B_102"
and vw_naw."zoek" like :"SYS_B_103" ))
/* #import MK_DHLimp.ODept_where */
-- to restrict report to particular departments
and (
tsdsmd."afd" = :"SYS_B_104" or
tsdsmd."afd" = :"SYS_B_105"
)
and
(:"SYS_B_106" is null or
tsdsmd."tsstts" <= :"SYS_B_107" )
/* #import DH_tmsFiles.date_where */
and
(
( ( :"SYS_B_108" = :"SYS_B_109" or tsdsmd."module" =
:"SYS_B_110")
and
tsdsmd."tslddt" >= decode(:"SYS_B_111",:"SYS_B_112"
, sysdate - :"SYS_B_113"
, to_date(:"SYS_B_114",:"SYS_B_115"))
and
tsdsmd."tslddt" <= decode(:"SYS_B_116",:"SYS_B_117"
, sysdate + :"SYS_B_118"
, to_date(:"SYS_B_119",:"SYS_B_120"))
)
or
((:"SYS_B_121" = :"SYS_B_122" or tsdsmd."module" =
:"SYS_B_123")
and
tsdsmd."tsunld" >= decode(:"SYS_B_124",:"SYS_B_125"
, sysdate - :"SYS_B_126"
, to_date(:"SYS_B_127",:"SYS_B_128"))
and
tsdsmd."tsunld" <= decode(:"SYS_B_129",:"SYS_B_130"
, sysdate + :"SYS_B_131"
, to_date(:"SYS_B_132",:"SYS_B_133"))

)
or
(:"SYS_B_134" = :"SYS_B_135"
and
tsdsmd."datinv" >= decode(:"SYS_B_136",:"SYS_B_137"
, sysdate - :"SYS_B_138"
, to_date(:"SYS_B_139",:"SYS_B_140"))
and
tsdsmd."datinv" <= decode(:"SYS_B_141",:"SYS_B_142"
, sysdate + :"SYS_B_143"
, to_date(:"SYS_B_144",:"SYS_B_145"))
)
)
/* #import MK_DHLimp.sort */
order by tsdsmd."dosvlg"
Action
Use bigger fetch arrays while fetching results from the SELECT statement
with SQL_ID "a5pcqgkwbg4rw".
Related Object
SQL statement with SQL_ID a5pcqgkwbg4rw.
select
/* #import MK_DHLimp.ord_status */
tsdsmd."tsstts"
as "FileStatus"
,
upper(substr(filestatus."description",:"SYS_B_000",:"SYS_B_001
")) ||
lower(substr(filestatus."description",:"SYS_B_002",:"SYS_B_003"))
as "StatusDescr"
,
tsdsmd."afd"
as "department"
,case tsdsmd."afh"
when :"SYS_B_004" then :"SYS_B_005"
else decode(tsdsmd."srtdos",:"SYS_B_006",:"SYS_B_007",
:"SYS_B_008",:"SYS_B_009",
:"SYS_B_010",:"SYS_B_011",
:"SYS_B_012",:"SYS_B_013",
:"SYS_B_014",:"SYS_B_015",
:"SYS_B_016",:"SYS_B_017",
:"SYS_B_018",:"SYS_B_019",
:"SYS_B_020",:"SYS_B_021",
tsdsmd."srtdos")
end as "FileType"
,
tsserl."oms201"
as "Service"
,
tars."oms101"
as "Tariff"
/* #import DH_tmsFiles.ord_mand */
,
tsdsmd."dosvlg"
as "FileNumber"
,
tsdsmd."afh"
as "HandlingCode"
,
principal."tsnam1"
as "Name"
,
principal."zoek"
as "SearchName"
,
:"SYS_B_022"
as "tsinmd"
,
:"SYS_B_023"
as "vrfilk"
,
:"SYS_B_024"
as "expEmissionVal"
,
:"SYS_B_025"
as "actEmissionVal"
,
:"SYS_B_026"
as "FileType"
/* #import MK_DHLimp.ref_fields */
,nvl(tsdsmd."refopd",:"SYS_B_027")
as "CW.PrimaryRef"
-- ,
ref3000."tsreft"
as "CW.SenderRef"
-- ,
ref3001."tsreft"
as "CW.ReceiverRef"
/* #import MK_DHLimp.add_fields */
, round(tsdsmd."collia",:"SYS_B_028")
as "Total Items"
--, tsdsmd."colkd"
as "Package Type"
, (select round(sum(dogoed."tsavnr"),:"SYS_B_029")
from "cef_dogoed" dogoed
where dogoed."dosvlg" = tsdsmd."dosvlg")
as "Inner Pack Qty"

, round(tsdsmd."tsloai",:"SYS_B_030")
as "Total LI"
, round(tsdsmd."brgew",:"SYS_B_031")
as "Total KG"
, round(tsdsmd."volwrd",:"SYS_B_032")
as "Total m3"
, (select min(to_char
(trac."tstizo",:"SYS_B_033"))
from "cef_tstrac" trac
where trac."tsttkd"
in (:"SYS_B_034",:"SYS_B_035")
and trac."dosvlg" = tsdsmd."dosvlg"
group by trac."dosvlg")
as "Date Created"
--, tsdsmd."vbnr" as "DHL.Vbnr"
/* #import MK_DHLimp.main_fields */
,
principal."zoek"
as "Principal"
,
consignee."zoek"
as "Customer Name"
,
decode(tsdsmd."afh",:"SYS_B_036",tsdsmd."tsuitd",
tsdsmd."tslddt")
as "Collection date"
,
tsdsmd."taanlv"
as "Col Time"
,
load_dest."deskod"
as "Col From"
,
tsdsmd."tszola"
as "LoadingZone"
,
tsdsmd."tsunld"
as "Delivery date"
,
tsdsmd."taflev"
as "Del Time"
,
unload_dest."deskod"
as "Del To"
,
tsdsmd."tszolo"
as "UnloadingZone"
,
decode(tsdsmd."afd",
:"SYS_B_037", DECODE(substr(unloading."postun",:"SYS_B_038",:"SYS_B_
039"),
:"SYS_B_040", substr(unloading."postun",:"SYS_B_041",:"SYS_B_042"),
substr(unloading."postun",:"SYS_B_043",:"SYS_B_044" )),
:"SYS_B_045",substr(unloading."postun",:"SYS_B_046",:"SYS_B_047"),
unloading."postun")
as "Store Code"
,
(
select "tshsna"
from "cef_tshshu" shu
where shu."tshshz" =
unloading."postun"
) as "Store Name"
/*
,
tsdsmd."plher"
as "Origin"
,
consignor."tsnam1"
as "Consignor"
,
loading."tsnam1"
as "LoadingName"
,
loading."tsadr1"
as "LoadingAddress1"
,
loading."tsadr2"
as "LoadingAddress2"
, */
/* #import MK_DHLimp.Othr_rfields */
--, tsdsmd."tsdddt"
as "Order Date"
, decode(tsdsmd."vkotot",:"SYS_B_048",
:"SYS_B_049",:"SYS_B_050") as "Unrated"
-- , tsdsmd."tsmf15"
as "TN-DD No"
--, tsdsmd."vlucht"
as "Route No"
-- , tsdsmd."refnr"
as "license"
--, tsdsmd."manif"
as "Seal#1/GOR No"
-- , tsdsmd."route"
as "Seal#2/Truck No"
/*
, (SELECT dispatch_type."lokoms"
FROM "cef_lokati" dispatch_type
WHERE
tsdsmd."lllkod" = dispatch_type."lllkod")
as "Dispatch Tracking"

, tsdsmd."tsprtr"
as "Document Return"
*/
/* #import MK_DHLimp.flag_fields */
,
tsdsmd."tsca01"
as "Doc Return Y/N"
,
tsdsmd."tsca02"
as "Pallet Y/N"
,
tsdsmd."tsca03"
as "Confirm Y/N"
--,
tsdsmd."tsca06"
as "CW.Flag6"
--,
tsdsmd."tsca07"
as "CW.Flag7"
--,
tsdsmd."tsca08"
as "CW.Flag8"
,
tsdsmd."tsca09"
as "CW.Flag9"
--,
tsdsmd."tsca10"
as "CW.Flag10"
--,
tsdsmd."tsca04"
as "CW.Flag4"
--,
tsdsmd."tsca05"
as "CW.Flag5"
/* #import MK_DHLimp.add_rfields */
,
ref3030."tsreft"
as "Order Date"
,
ref3031."tsreft"
as "Route"
,
ref3032."tsreft"
as "License"
,
ref3033."tsreft"
as "Seal1"
,
ref3034."tsreft"
as "Seal2"
/* #import MK_DHLimp.amt_fields */
,
round(tsdsmd."bedrk1",:"SYS_B_051")
as "Dispatch Track"
--,
tsdsmd."bedrk2"
as "CW.Amount2"
--,
tsdsmd."bedrk3"
as "CW.Amount3"
--,
tsdsmd."bedrk4"
as "CW.Amount4"
--,
tsdsmd."bedrk5"
as "CW.Amount5"
--,
tsdsmd."bedrk6"
as "CW.Amount6"
--,
tsdsmd."bedrk7"
as "CW.Amount7"
--,
tsdsmd."bedrk8"
as "CW.Amount8"
--,
tsdsmd."bedrk9"
as "CW.Amount9"
-- #if 'BIGC_OPS_v6' = 'DHL_ACCOUNTS'
-- #import MK_DHLimp.acc_fields
-- #end-if
from
"cef_tsdsmd" tsdsmd
/* #import MK_DHLimp.acc_files */
left outer join "cef_dosmut" accounts
on tsdsmd."dosvlg" = accounts."dosvlg"
and accounts."bedrlv" <> :"SYS_B_052"
and :"SYS_B_053" = :"SYS_B_054"
/* #import DH_tmsFiles.addresses */
left outer join "cef_vw_naw" loading
on loading."dosvlg" = tsdsmd."dosvlg"
and loading."tsroln" = :"SYS_B_055"
left outer join "cef_destab" load_dest
on loading."deskod" = load_dest."deskod"
left outer join "cef_vw_naw" consignee
on consignee."dosvlg" = tsdsmd."dosvlg"
and consignee."tsroln" = :"SYS_B_056"
left outer join "cef_vw_naw" unloading
on unloading."dosvlg" = tsdsmd."dosvlg"
and unloading."tsroln" = :"SYS_B_057"
left outer join "cef_destab" unload_dest
on unloading."deskod" = unload_dest."deskod"
left outer join "cef_vw_naw" consignor
on consignor."dosvlg" = tsdsmd."dosvlg"
and consignor."tsroln" = :"SYS_B_058"
left outer join "cef_vw_naw" carrier
on carrier."dosvlg" = tsdsmd."dosvlg"
and carrier."tsroln" = :"SYS_B_059"
/* #import MK_DHLimp.add_files */

-- add files here


/* #import MK_DHLimp.ref_files */
/* ref files */
left outer join "cef_tsfire" ref3000
on tsdsmd."dosvlg" = ref3000."dosvlg"
and ref3000."tsrefc" = :"SYS_B_060"
left outer join "cef_tsfire" ref3001
on tsdsmd."dosvlg" = ref3001."dosvlg"
and ref3001."tsrefc" = :"SYS_B_061"
/* #import MK_DHLimp.desc_files */
left outer join
"cef_v_cw_tsstus_descr" filestatus
on filestatus."tsbatp" = :"SYS_B_062"
and filestatus."tsstts" = tsdsmd."tsstts"
left outer join "cef_tsselv" tsserl
on tsdsmd."tsserl" = tsserl."tsserl"
left outer join "cef_tars" tars
on tsdsmd."tarsrt" = tars."tarsrt"
/* #import MK_DHLimp.add_reffiles */
/* ref files */
/*left outer join "cef_tsfire" ref5000
on tsdsmd."dosvlg" = ref5000."dosvlg"
and ref5000."tsrefc" = '5000'
left outer join "cef_tsfire" ref3002
on tsdsmd."dosvlg" = ref3002."dosvlg"
and ref3002."tsrefc" = '3002'
left outer join "cef_tsfire" ref3003
*/
left outer join "cef_tsfire" ref3030
on tsdsmd."dosvlg" = ref3030."dosvlg"
and ref3030."tsrefc" = :"SYS_B_063"
left outer join "cef_tsfire" ref3031
on tsdsmd."dosvlg" = ref3031."dosvlg"
and ref3031."tsrefc" = :"SYS_B_064"
left outer join "cef_tsfire" ref3032
on tsdsmd."dosvlg" = ref3032."dosvlg"
and ref3032."tsrefc" = :"SYS_B_065"
left outer join "cef_tsfire" ref3033
on tsdsmd."dosvlg" = ref3033."dosvlg"
and ref3033."tsrefc" = :"SYS_B_066"
left outer join "cef_tsfire" ref3034
on tsdsmd."dosvlg" = ref3034."dosvlg"
and ref3034."tsrefc" = :"SYS_B_067"
/* #import DH_tmsFiles.security */
,
"cef_vw_naw" principal
,
"cef_expafd" expafd
,
"cef_mydepartments" mydepartments
where
/* #import DH_tmsFiles.ord_where */
(:"SYS_B_068"=:"SYS_B_069" or ( :"SYS_B_070"<>:"SYS_B_071"
and
tsdsmd."dosvlg"=:"SYS_B_072"))
and
tsdsmd."afd" = expafd."afd"
and
expafd."afd" = mydepartments."department"
and
expafd."tsdptp" = :"SYS_B_073"
and
principal."dosvlg" = tsdsmd."dosvlg"
and
principal."tsroln" = :"SYS_B_074"
and
tsdsmd."afd" = decode(:"SYS_B_075",:"SYS_B_076"
, tsdsmd."afd"
, :"SYS_B_077")
and
(:"SYS_B_078" is null or

tsdsmd."tsstts" >= :"SYS_B_079" )


and
(:"SYS_B_080" is null or
upper(tsdsmd."refopd") like
upper(nvl(:"SYS_B_081",:"SYS_B_082")) || :"SYS_B_083")
and
expafd."gebied" = decode(:"SYS_B_084"
,:"SYS_B_085", expafd."gebied"
, :"SYS_B_086")
and tsdsmd."afh" in ( :"SYS_B_087",:"SYS_B_088" )
and tsdsmd."module" in (:"SYS_B_089",:"SYS_B_090")
and
(:"SYS_B_091" is null or
tsdsmd."tsserl" = nvl(:"SYS_B_092",:"SYS_B_093"))
/* #import DH_tmsFiles.zone_where */
and
(:"SYS_B_094" is null or
tsdsmd."tszola" = nvl(:"SYS_B_095",:"SYS_B_096"))
and
(:"SYS_B_097" is null or
tsdsmd."tszolo" = nvl(:"SYS_B_098",:"SYS_B_099"))
/* #import DH_tmsFiles.role_where */
and ( :"SYS_B_100" is null or
exists ( select :"SYS_B_101"
from "cef_vw_naw" vw_naw
where vw_naw."dosvlg" = tsdsmd."dosvlg"
and vw_naw."tsroln" = :"SYS_B_102"
and vw_naw."zoek" like :"SYS_B_103" ))
/* #import MK_DHLimp.ODept_where */
-- to restrict report to particular departments
and (
tsdsmd."afd" = :"SYS_B_104" or
tsdsmd."afd" = :"SYS_B_105"
)
and
(:"SYS_B_106" is null or
tsdsmd."tsstts" <= :"SYS_B_107" )
/* #import DH_tmsFiles.date_where */
and
(
( ( :"SYS_B_108" = :"SYS_B_109" or tsdsmd."module" =
:"SYS_B_110")
and
tsdsmd."tslddt" >= decode(:"SYS_B_111",:"SYS_B_112"
, sysdate - :"SYS_B_113"
, to_date(:"SYS_B_114",:"SYS_B_115"))
and
tsdsmd."tslddt" <= decode(:"SYS_B_116",:"SYS_B_117"
, sysdate + :"SYS_B_118"
, to_date(:"SYS_B_119",:"SYS_B_120"))
)
or
((:"SYS_B_121" = :"SYS_B_122" or tsdsmd."module" =
:"SYS_B_123")
and
tsdsmd."tsunld" >= decode(:"SYS_B_124",:"SYS_B_125"
, sysdate - :"SYS_B_126"
, to_date(:"SYS_B_127",:"SYS_B_128"))
and
tsdsmd."tsunld" <= decode(:"SYS_B_129",:"SYS_B_130"
, sysdate + :"SYS_B_131"
, to_date(:"SYS_B_132",:"SYS_B_133"))
)
or
(:"SYS_B_134" = :"SYS_B_135"
and
tsdsmd."datinv" >= decode(:"SYS_B_136",:"SYS_B_137"
, sysdate - :"SYS_B_138"
, to_date(:"SYS_B_139",:"SYS_B_140"))
and
tsdsmd."datinv" <= decode(:"SYS_B_141",:"SYS_B_142"
, sysdate + :"SYS_B_143"
, to_date(:"SYS_B_144",:"SYS_B_145"))
)
)

/* #import MK_DHLimp.sort */
order by tsdsmd."dosvlg"
Rationale
The SQL spent 100% of its database time on CPU, I/O and Cluster waits.
This part of database time may be improved by the SQL Tuning Advisor.
Rationale
Database time for this SQL was divided as follows: 100% for SQL
execution, 0% for parsing, 0% for PL/SQL execution and 0% for Java
execution.
Rationale
SQL statement with SQL_ID "a5pcqgkwbg4rw" was executed 288 times and had
an average elapsed time of 39 seconds.
Rationale
I/O and Cluster wait for TABLE "PROD_TH.cef_tsdsmd" with object ID
116532 consumed 75% of the database time spent on this SQL statement.
Recommendation 6: SQL Tuning
Estimated benefit is .23 active sessions, 2.58% of total activity.
-----------------------------------------------------------------Action
Run SQL Tuning Advisor on the SELECT statement with SQL_ID
"5xd292rj3vszm".
Related Object
SQL statement with SQL_ID 5xd292rj3vszm.
select
wagens."autonr" as "id"
,
wagens."autonr" as "keyvalue1"
,
:"SYS_B_000"
as "keyvalue2"
,
:"SYS_B_001"
as "keyvalue3"
,
:"SYS_B_002"
as "begin"
,
:"SYS_B_003"
as "end"
,
:"SYS_B_004"
as "resource"
, wagens."tsleas" as "Lease Y/N"
, wagens."autonr" as "autonr"
, wagens."kent1" as "kent1"
, wagens."zoek" as "zoek"
, wagens."srtwgn" as "srtwgn"
, wagens."autkog" as "autkog"
, wgroep."oms"
as "oms"
, wagens."kstplk" as "kstplk"
, kstpls."kstpl" as "kstpl"
, wagens."afd"
as "afd"
, wagens."laadma" as "laadma"
, wagens."laadvo" as "laadvo"
, wagens."tsloai" as "tsloai"
, wagens."tslgms" as "tslgms"
, mini."dosvlg" as "prev_dosvlg"
, mini."tsplbs" as "prev_tsplbs"
, mini."tsdtbs" as "prev_tsdtbs"
, mini."tsbstd" as "prev_tsbstd"
, maxi."tsddbs" as "next_tsddbs"
, maxi."tsplav" as "next_tsplav"
, maxi."tstdbs" as "next_tstdbs"
, maxi."dosvlg" as "next_dosvlg"
, maxi."oms"
as "next_oms"
, :"SYS_B_005"
as "draggable"
, :"SYS_B_006"
as "style"
, wagens."tschar" as "perkeu"
from
"cef_wagens" wagens

left outer join


(
select
inmaxi."dosvlg"
, inmaxi."autonr"
, inmaxi."tsbstd"
, inmaxi."tsdtbs"
, inmaxi."tsplbs"
, inmaxi."tsvlgn"
, inmaxi."tsplav"
, inmaxi."tsddbs"
, inmaxi."tstdbs"
, inmaxi."afd"
, inmaxi."oms"
from
"cef_tsbswg" inmaxi
inner join
(
select
TO_NUMBER
(substr
(min
(ltrim(TO_CHAR(inmax."autonr" , :"SYS_B_007" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_008")
|| RPAD(inmax."tsplbs",:"SYS_B_009",:"SYS_B_010")
|| ltrim(TO_CHAR(inmax."dosvlg" , :"SYS_B_011" ))
|| ltrim(TO_CHAR(inmax."tsvlgn" , :"SYS_B_012" ))
)
, :"SYS_B_013" , :"SYS_B_014"
)
) as "autonr"
,TO_DATE
(substr
(min
(ltrim(TO_CHAR(inmax."autonr" , :"SYS_B_015" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_016")
|| RPAD(inmax."tsplbs",:"SYS_B_017",:"SYS_B_018")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_019" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_020" ))
)
, :"SYS_B_021" , :"SYS_B_022"
)
) as "tsdtbs"
,substr
(min
(ltrim(TO_CHAR( inmax."autonr" , :"SYS_B_023" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_024")
|| RPAD(inmax."tsplbs",:"SYS_B_025",:"SYS_B_026")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_027" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_028" ))
)
, :"SYS_B_029" , :"SYS_B_030"
) as "tsbstd"
,substr
(min
(ltrim(TO_CHAR( inmax."autonr" , :"SYS_B_031" ))
|| inmax."tsdtbs"

|| nvl(inmax."tsbstd",:"SYS_B_032")
|| RPAD(inmax."tsplbs",:"SYS_B_033",:"SYS_B_034")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_035" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_036" ))
)
, :"SYS_B_037" , :"SYS_B_038"
) as "tsplbs"
,TO_NUMBER
(substr
(min
(ltrim(TO_CHAR( inmax."autonr" , :"SYS_B_039" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_040")
|| RPAD(inmax."tsplbs",:"SYS_B_041",:"SYS_B_042")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_043" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_044" ))
)
, :"SYS_B_045" , :"SYS_B_046"
)
) as "dosvlg"
,TO_NUMBER
(substr
(min
(ltrim(TO_CHAR( inmax."autonr" , :"SYS_B_047" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_048")
|| RPAD(inmax."tsplbs",:"SYS_B_049",:"SYS_B_050")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_051" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_052" ))
)
, :"SYS_B_053" , :"SYS_B_054"
)
) as "tsvlgn"
from
"cef_tsbswg" inmax
where
inmax."tsdtbs" >= :"date"
and ( (inmax."tsdtbs" = :"date" and inmax."tsbstd" >= :"SYS_B_055" )
or (inmax."tsdtbs" > :"date"))
and ( inmax."autonr" = nvl(:"keyvalue1",:"SYS_B_056")
or nvl(:"keyvalue1",:"SYS_B_057") + :"SYS_B_058" = :"SYS_B_059" )
group by inmax."autonr"
) wgmax
on
inmaxi."autonr" = wgmax."autonr"
and inmaxi."dosvlg" = wgmax."dosvlg"
and inmaxi."tsvlgn" = wgmax."tsvlgn"
) maxi
on wagens."autonr" = maxi."autonr"
left outer join (
select
inmini."dosvlg"
, inmini."autonr"
, inmini."tsbstd"
, inmini."tsdtbs"
, inmini."tsplbs"
, inmini."tsvlgn"
, inmini."tsplav"
, inmini."tsddbs"
, inmini."tstdbs"

, inmini."afd"
, inmini."oms"
from
"cef_tsbswg" inmini
inner join
(
select
TO_NUMBER
(substr
(max
(ltrim(TO_CHAR(inmin."autonr" , :"SYS_B_060" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_061")
|| RPAD(inmin."tsplbs",:"SYS_B_062",:"SYS_B_063")
|| ltrim(TO_CHAR(inmin."dosvlg" , :"SYS_B_064" ))
|| ltrim(TO_CHAR(inmin."tsvlgn" , :"SYS_B_065" ))
)
, :"SYS_B_066" , :"SYS_B_067"
)
) as "autonr"
,TO_DATE
(substr
(max
(ltrim(TO_CHAR(inmin."autonr" , :"SYS_B_068" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_069")
|| RPAD(inmin."tsplbs",:"SYS_B_070",:"SYS_B_071")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_072" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_073" ))
)
, :"SYS_B_074" , :"SYS_B_075"
)
) as "tsdtbs"
,substr
(max
(ltrim(TO_CHAR( inmin."autonr" , :"SYS_B_076" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_077")
|| RPAD(inmin."tsplbs",:"SYS_B_078",:"SYS_B_079")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_080" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_081" ))
)
, :"SYS_B_082" , :"SYS_B_083"
) as "tsbstd"
,substr
(max
(ltrim(TO_CHAR( inmin."autonr" , :"SYS_B_084" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_085")
|| RPAD(inmin."tsplbs",:"SYS_B_086",:"SYS_B_087")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_088" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_089" ))
)
, :"SYS_B_090" , :"SYS_B_091"
) as "tsplbs"
,TO_NUMBER
(substr
(max
(ltrim(TO_CHAR( inmin."autonr" , :"SYS_B_092" ))
|| inmin."tsdtbs"

|| nvl(inmin."tsbstd",:"SYS_B_093")
|| RPAD(inmin."tsplbs",:"SYS_B_094",:"SYS_B_095")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_096" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_097" ))
)
, :"SYS_B_098" , :"SYS_B_099"
)
) as "dosvlg"
,TO_NUMBER
(substr
(max
(ltrim(TO_CHAR( inmin."autonr" , :"SYS_B_100" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_101")
|| RPAD(inmin."tsplbs",:"SYS_B_102",:"SYS_B_103")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_104" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_105" ))
)
, :"SYS_B_106" , :"SYS_B_107"
)
) as "tsvlgn"
from "cef_tsbswg" inmin
where
inmin."tsdtbs" <= :"date"
and ( (inmin."tsdtbs" = :"date" and inmin."tsbstd" <= :"SYS_B_108" )
or (inmin."tsdtbs" < :"date"))
and ( inmin."autonr" = nvl(:"keyvalue1",:"SYS_B_109")
or nvl(:"keyvalue1",:"SYS_B_110") + :"SYS_B_111" = :"SYS_B_112" )
group by inmin."autonr"
) wgmin
on
inmini."autonr" = wgmin."autonr"
and inmini."dosvlg" = wgmin."dosvlg"
and inmini."tsvlgn" = wgmin."tsvlgn"
) mini
on wagens."autonr" = mini."autonr"
left outer join "cef_wgroep" wgroep
on wagens."autkog" = wgroep."autkog"
left outer join "cef_kstpls" kstpls
on wagens."kstplk" = kstpls."kplnr"
left outer join "cef_mydepartments" mydepartments
on wagens."afd" = mydepartments."department"
where wagens."tsacYN" = :"SYS_B_113"
and ( nvl(wagens."afd",:"SYS_B_114") = :"SYS_B_115" or
wagens."afd" = mydepartments."department" )
--and wagens."afd" = 'dhlt'
order by :"SYS_B_116"
Action
Use bigger fetch arrays while fetching results from the SELECT statement
with SQL_ID "5xd292rj3vszm".
Related Object
SQL statement with SQL_ID 5xd292rj3vszm.
select
wagens."autonr" as "id"
,
wagens."autonr" as "keyvalue1"
,
:"SYS_B_000"
as "keyvalue2"
,
:"SYS_B_001"
as "keyvalue3"
,
:"SYS_B_002"
as "begin"
,
:"SYS_B_003"
as "end"
,
:"SYS_B_004"
as "resource"

, wagens."tsleas" as "Lease Y/N"


, wagens."autonr" as "autonr"
, wagens."kent1" as "kent1"
, wagens."zoek" as "zoek"
, wagens."srtwgn" as "srtwgn"
, wagens."autkog" as "autkog"
, wgroep."oms"
as "oms"
, wagens."kstplk" as "kstplk"
, kstpls."kstpl" as "kstpl"
, wagens."afd"
as "afd"
, wagens."laadma" as "laadma"
, wagens."laadvo" as "laadvo"
, wagens."tsloai" as "tsloai"
, wagens."tslgms" as "tslgms"
, mini."dosvlg" as "prev_dosvlg"
, mini."tsplbs" as "prev_tsplbs"
, mini."tsdtbs" as "prev_tsdtbs"
, mini."tsbstd" as "prev_tsbstd"
, maxi."tsddbs" as "next_tsddbs"
, maxi."tsplav" as "next_tsplav"
, maxi."tstdbs" as "next_tstdbs"
, maxi."dosvlg" as "next_dosvlg"
, maxi."oms"
as "next_oms"
, :"SYS_B_005"
as "draggable"
, :"SYS_B_006"
as "style"
, wagens."tschar" as "perkeu"
from
"cef_wagens" wagens
left outer join
(
select
inmaxi."dosvlg"
, inmaxi."autonr"
, inmaxi."tsbstd"
, inmaxi."tsdtbs"
, inmaxi."tsplbs"
, inmaxi."tsvlgn"
, inmaxi."tsplav"
, inmaxi."tsddbs"
, inmaxi."tstdbs"
, inmaxi."afd"
, inmaxi."oms"
from
"cef_tsbswg" inmaxi
inner join
(
select
TO_NUMBER
(substr
(min
(ltrim(TO_CHAR(inmax."autonr" , :"SYS_B_007" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_008")
|| RPAD(inmax."tsplbs",:"SYS_B_009",:"SYS_B_010")
|| ltrim(TO_CHAR(inmax."dosvlg" , :"SYS_B_011" ))
|| ltrim(TO_CHAR(inmax."tsvlgn" , :"SYS_B_012" ))
)
, :"SYS_B_013" , :"SYS_B_014"
)
) as "autonr"

,TO_DATE
(substr
(min
(ltrim(TO_CHAR(inmax."autonr" , :"SYS_B_015" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_016")
|| RPAD(inmax."tsplbs",:"SYS_B_017",:"SYS_B_018")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_019" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_020" ))
)
, :"SYS_B_021" , :"SYS_B_022"
)
) as "tsdtbs"
,substr
(min
(ltrim(TO_CHAR( inmax."autonr" , :"SYS_B_023" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_024")
|| RPAD(inmax."tsplbs",:"SYS_B_025",:"SYS_B_026")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_027" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_028" ))
)
, :"SYS_B_029" , :"SYS_B_030"
) as "tsbstd"
,substr
(min
(ltrim(TO_CHAR( inmax."autonr" , :"SYS_B_031" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_032")
|| RPAD(inmax."tsplbs",:"SYS_B_033",:"SYS_B_034")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_035" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_036" ))
)
, :"SYS_B_037" , :"SYS_B_038"
) as "tsplbs"
,TO_NUMBER
(substr
(min
(ltrim(TO_CHAR( inmax."autonr" , :"SYS_B_039" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_040")
|| RPAD(inmax."tsplbs",:"SYS_B_041",:"SYS_B_042")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_043" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_044" ))
)
, :"SYS_B_045" , :"SYS_B_046"
)
) as "dosvlg"
,TO_NUMBER
(substr
(min
(ltrim(TO_CHAR( inmax."autonr" , :"SYS_B_047" ))
|| inmax."tsdtbs"
|| nvl(inmax."tsbstd",:"SYS_B_048")
|| RPAD(inmax."tsplbs",:"SYS_B_049",:"SYS_B_050")
|| ltrim(TO_CHAR( inmax."dosvlg" , :"SYS_B_051" ))
|| ltrim(TO_CHAR( inmax."tsvlgn" , :"SYS_B_052" ))
)
, :"SYS_B_053" , :"SYS_B_054"
)

) as "tsvlgn"
from
"cef_tsbswg" inmax
where
inmax."tsdtbs" >= :"date"
and ( (inmax."tsdtbs" = :"date" and inmax."tsbstd" >= :"SYS_B_055" )
or (inmax."tsdtbs" > :"date"))
and ( inmax."autonr" = nvl(:"keyvalue1",:"SYS_B_056")
or nvl(:"keyvalue1",:"SYS_B_057") + :"SYS_B_058" = :"SYS_B_059" )
group by inmax."autonr"
) wgmax
on
inmaxi."autonr" = wgmax."autonr"
and inmaxi."dosvlg" = wgmax."dosvlg"
and inmaxi."tsvlgn" = wgmax."tsvlgn"
) maxi
on wagens."autonr" = maxi."autonr"
left outer join (
select
inmini."dosvlg"
, inmini."autonr"
, inmini."tsbstd"
, inmini."tsdtbs"
, inmini."tsplbs"
, inmini."tsvlgn"
, inmini."tsplav"
, inmini."tsddbs"
, inmini."tstdbs"
, inmini."afd"
, inmini."oms"
from
"cef_tsbswg" inmini
inner join
(
select
TO_NUMBER
(substr
(max
(ltrim(TO_CHAR(inmin."autonr" , :"SYS_B_060" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_061")
|| RPAD(inmin."tsplbs",:"SYS_B_062",:"SYS_B_063")
|| ltrim(TO_CHAR(inmin."dosvlg" , :"SYS_B_064" ))
|| ltrim(TO_CHAR(inmin."tsvlgn" , :"SYS_B_065" ))
)
, :"SYS_B_066" , :"SYS_B_067"
)
) as "autonr"
,TO_DATE
(substr
(max
(ltrim(TO_CHAR(inmin."autonr" , :"SYS_B_068" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_069")
|| RPAD(inmin."tsplbs",:"SYS_B_070",:"SYS_B_071")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_072" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_073" ))
)
, :"SYS_B_074" , :"SYS_B_075"
)

) as "tsdtbs"
,substr
(max
(ltrim(TO_CHAR( inmin."autonr" , :"SYS_B_076" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_077")
|| RPAD(inmin."tsplbs",:"SYS_B_078",:"SYS_B_079")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_080" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_081" ))
)
, :"SYS_B_082" , :"SYS_B_083"
) as "tsbstd"
,substr
(max
(ltrim(TO_CHAR( inmin."autonr" , :"SYS_B_084" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_085")
|| RPAD(inmin."tsplbs",:"SYS_B_086",:"SYS_B_087")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_088" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_089" ))
)
, :"SYS_B_090" , :"SYS_B_091"
) as "tsplbs"
,TO_NUMBER
(substr
(max
(ltrim(TO_CHAR( inmin."autonr" , :"SYS_B_092" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_093")
|| RPAD(inmin."tsplbs",:"SYS_B_094",:"SYS_B_095")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_096" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_097" ))
)
, :"SYS_B_098" , :"SYS_B_099"
)
) as "dosvlg"
,TO_NUMBER
(substr
(max
(ltrim(TO_CHAR( inmin."autonr" , :"SYS_B_100" ))
|| inmin."tsdtbs"
|| nvl(inmin."tsbstd",:"SYS_B_101")
|| RPAD(inmin."tsplbs",:"SYS_B_102",:"SYS_B_103")
|| ltrim(TO_CHAR( inmin."dosvlg" , :"SYS_B_104" ))
|| ltrim(TO_CHAR( inmin."tsvlgn" , :"SYS_B_105" ))
)
, :"SYS_B_106" , :"SYS_B_107"
)
) as "tsvlgn"
from "cef_tsbswg" inmin
where
inmin."tsdtbs" <= :"date"
and ( (inmin."tsdtbs" = :"date" and inmin."tsbstd" <= :"SYS_B_108" )
or (inmin."tsdtbs" < :"date"))
and ( inmin."autonr" = nvl(:"keyvalue1",:"SYS_B_109")
or nvl(:"keyvalue1",:"SYS_B_110") + :"SYS_B_111" = :"SYS_B_112" )
group by inmin."autonr"
) wgmin
on
inmini."autonr" = wgmin."autonr"

and inmini."dosvlg" = wgmin."dosvlg"


and inmini."tsvlgn" = wgmin."tsvlgn"
) mini
on wagens."autonr" = mini."autonr"
left outer join "cef_wgroep" wgroep
on wagens."autkog" = wgroep."autkog"
left outer join "cef_kstpls" kstpls
on wagens."kstplk" = kstpls."kplnr"
left outer join "cef_mydepartments" mydepartments
on wagens."afd" = mydepartments."department"
where wagens."tsacYN" = :"SYS_B_113"
and ( nvl(wagens."afd",:"SYS_B_114") = :"SYS_B_115" or
wagens."afd" = mydepartments."department" )
--and wagens."afd" = 'dhlt'
order by :"SYS_B_116"
Rationale
The SQL spent 94% of its database time on CPU, I/O and Cluster waits.
This part of database time may be improved by the SQL Tuning Advisor.
Rationale
Database time for this SQL was divided as follows: 95% for SQL
execution, 5% for parsing, 0% for PL/SQL execution and 0% for Java
execution.
Rationale
SQL statement with SQL_ID "5xd292rj3vszm" was executed 955 times and had
an average elapsed time of 8.4 seconds.
Rationale
At least 3 distinct execution plans were utilized for this SQL statement
during the analysis period.
Finding 3: Top Segments by "User I/O" and "Cluster"
Impact is 1.2 active sessions, 13.62% of total activity.
-------------------------------------------------------Individual database segments responsible for significant "User I/O" and
"Cluster" waits were found.
Recommendation 1: Segment Tuning
Estimated benefit is .57 active sessions, 6.5% of total activity.
----------------------------------------------------------------Action
Investigate application logic involving I/O on TABLE
"PROD_TH.cef_tsdsmd" with object ID 116532.
Related Object
Database object with ID 116532.
Action
Look at the "Top SQL Statements" finding for SQL statements consuming
significant I/O on this segment. For example, the SELECT statement with
SQL_ID "a5pcqgkwbg4rw" is responsible for 41% of "User I/O" and
"Cluster" waits for this segment.
Rationale
The I/O usage statistics for the object are: 0 full object scans,
9854569 physical reads, 4949 physical writes and 0 direct reads.
Recommendation 2: Segment Tuning
Estimated benefit is .24 active sessions, 2.79% of total activity.
-----------------------------------------------------------------Action
Run "Segment Advisor" on TABLE "PROD_NZ.cef_tstrac" with object ID
363958.
Related Object

Database object with ID 363958.


Action
Investigate application logic involving I/O on TABLE
"PROD_NZ.cef_tstrac" with object ID 363958.
Related Object
Database object with ID 363958.
Rationale
The I/O usage statistics for the object are: 23 full object scans,
9430901 physical reads, 46545 physical writes and 8353058 direct reads.
Recommendation 3: Segment Tuning
Estimated benefit is .2 active sessions, 2.33% of total activity.
----------------------------------------------------------------Action
Investigate application logic involving I/O on TABLE
"PROD_NZ.cef_tsdsmd" with object ID 363260.
Related Object
Database object with ID 363260.
Action
Look at the "Top SQL Statements" finding for SQL statements consuming
significant I/O on this segment. For example, the SELECT statement with
SQL_ID "aw6qpddg0h4ay" is responsible for 99% of "User I/O" and
"Cluster" waits for this segment.
Rationale
The I/O usage statistics for the object are: 719 full object scans,
27945268 physical reads, 24888 physical writes and 22149147 direct
reads.
Recommendation 4: Segment Tuning
Estimated benefit is .18 active sessions, 2% of total activity.
--------------------------------------------------------------Action
Investigate application logic involving I/O on INDEX
"PROD_NZ.DHLNZ_DOSVLG001" with object ID 609528.
Related Object
Database object with ID 609528.
Rationale
The I/O usage statistics for the object are: 0 full object scans,
3116716 physical reads, 2921 physical writes and 0 direct reads.
Symptoms That Led to the Finding:
--------------------------------Wait class "User I/O" was consuming significant database time.
Impact is 4.05 active sessions, 46.14% of total activity.
Finding 4: Row Lock Waits
Impact is 1.1 active sessions, 12.49% of total activity.
-------------------------------------------------------SQL statements were found waiting for row lock waits.
Recommendation 1: Application Analysis
Estimated benefit is .54 active sessions, 6.2% of total activity.
----------------------------------------------------------------Action
Significant row contention was detected in the TABLE
"PROD_NZ.cef_tsvasd" with object ID 363506. Trace the cause of row
contention in the application logic using the given blocked SQL.
Related Object
Database object with ID 363506.

Rationale
The SQL statement with SQL_ID "584g5x4a074n5" was blocked on row locks.
Related Object
SQL statement with SQL_ID 584g5x4a074n5.
select /*+ INDEX_ASC(a "tstVk2_cef_tsvasd") */ a."afd", a."afh",
a."dosvlg", a."enddat", a."ingdat", a."module", a."relnr",
a."srtdos", a."tsandg", a."tscapc", a."tsgrdi", a."tsgrdo",
a."tsgrma", a."tsgrvr", a."tsgrwo", a."tsgrza", a."tsgrzo",
a."tsldpd", a."tsnffr", a."tsnfmo", a."tsnfsa", a."tsnfso",
a."tsnfth", a."tsnftu", a."tsnfwn", a."tsudpd", a."tsvwtm",
a."vmtsrt", rowid from "cef_tsvasd" a where a."afd" = :f0 and
a."dosvlg" = :f1 for update
Rationale
The session with ID 1087 and serial number 64739 in instance number 1
was the blocking session responsible for 100% of this recommendation's
benefit.
Recommendation 2: Application Analysis
Estimated benefit is .54 active sessions, 6.19% of total activity.
-----------------------------------------------------------------Action
Significant row contention was detected in the TABLE
"PROD_NZ.cef_tsedid" with object ID 363905. Trace the cause of row
contention in the application logic using the given blocked SQL.
Related Object
Database object with ID 363905.
Rationale
The session with ID 2611 and serial number 28859 in instance number 1
was the blocking session responsible for 100% of this recommendation's
benefit.
Recommendation 3: Application Analysis
Estimated benefit is 0 active sessions, .05% of total activity.
--------------------------------------------------------------Action
Significant row contention was detected in the TABLE
"PROD_TH.cef_tsdsmd" with object ID 116532. Trace the cause of row
contention in the application logic using the given blocked SQL.
Related Object
Database object with ID 116532.
Recommendation 4: Application Analysis
Estimated benefit is 0 active sessions, .02% of total activity.
--------------------------------------------------------------Action
Significant row contention was detected in the TABLE
"PROD_TH.cef_tsroma" with object ID 114693. Trace the cause of row
contention in the application logic using the given blocked SQL.
Related Object
Database object with ID 114693.
Symptoms That Led to the Finding:
--------------------------------Wait class "Application" was consuming significant database time.
Impact is 1.1 active sessions, 12.53% of total activity.
Finding 5: Undersized SGA
Impact is .27 active sessions, 3.07% of total activity.
-------------------------------------------------------

The SGA was inadequately sized, causing additional I/O or hard parses.
The value of parameter "sga_target" was "20032 M" during the analysis period.
Recommendation 1: Database Configuration
Estimated benefit is .12 active sessions, 1.41% of total activity.
-----------------------------------------------------------------Action
Increase the size of the SGA by setting the parameter "sga_target" to
22536 M.
Symptoms That Led to the Finding:
--------------------------------Wait class "User I/O" was consuming significant database time.
Impact is 4.05 active sessions, 46.14% of total activity.
Hard parsing of SQL statements was consuming significant database time.
Impact is .3 active sessions, 3.43% of total activity.
Finding 6: Hard Parse Due to Sharing Criteria
Impact is .23 active sessions, 2.64% of total activity.
------------------------------------------------------SQL statements with the same text were not shared because of cursor
environment mismatch. This resulted in additional hard parses which were
consuming significant database time.
Common causes of environment mismatch are session NLS settings, SQL trace
settings and optimizer parameters.
Recommendation 1: Application Analysis
Estimated benefit is .23 active sessions, 2.64% of total activity.
-----------------------------------------------------------------Action
Look for top reason for cursor environment mismatch in
V$SQL_SHARED_CURSOR.
Symptoms That Led to the Finding:
--------------------------------Hard parsing of SQL statements was consuming significant database time.
Impact is .3 active sessions, 3.43% of total activity.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Additional Information
---------------------Miscellaneous Information
------------------------Wait class "Cluster" was not consuming significant database time.
Wait class "Commit" was not consuming significant database time.
Wait class "Concurrency" was not consuming significant database time.
Wait class "Configuration" was not consuming significant database time.
CPU was not a bottleneck for the instance.
Wait class "Network" was not consuming significant database time.
The network latency of the cluster interconnect was within acceptable limits
of 1 milliseconds.
Session connect and disconnect calls were not consuming significant database
time.

You might also like