0% found this document useful (0 votes)
186 views11 pages

SQL Monitor

The SQL query plan could not be generated due to insufficient privileges on the underlying objects of a view. The query involves a complex join of multiple tables and views to retrieve timecard data for employees over a specified date range. It uses functions, pivoting, and other advanced SQL features. An exception was thrown indicating the user lacks privileges on one or more objects accessed in the query.

Uploaded by

rtagarra
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
Download as txt, pdf, or txt
0% found this document useful (0 votes)
186 views11 pages

SQL Monitor

The SQL query plan could not be generated due to insufficient privileges on the underlying objects of a view. The query involves a complex join of multiple tables and views to retrieve timecard data for employees over a specified date range. It uses functions, pivoting, and other advanced SQL features. An exception was thrown indicating the user lacks privileges on one or more objects accessed in the query.

Uploaded by

rtagarra
Copyright
© © All Rights Reserved
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
Download as txt, pdf, or txt
Download as txt, pdf, or txt
You are on page 1/ 11

<SQL_EXPLAIN_PLAN>

<DATA_DS>
<![CDATA[
Datamodel SQL Explain Plan Report
================================================================
Driver Details:JDBC Driver:Oracle JDBC
driver:weblogic.jdbc.wrapper.PoolConnection_oracle_jdbc_driver_T4CConnection:19.17.
0.0.0
DBName:Oracle
DBVersion:Oracle Database 19c EE Extreme Perf Release 19.0.0.0.0 - Production
Version 19.20.0.0.0
SQLQuery:EXPLAIN PLAN SET STATEMENT_ID = 'dm_plan_Timecard_240206_095815' FOR
WITH

FUNCTION GET_SHIFT_SCHD(
P_ASSGIN_ID IN NUMBER, P_PERIOD_START IN DATE,
P_PERIOD_END IN DATE
) RETURN VARCHAR2 AS RTN_VALUE VARCHAR2(1000);
BEGIN
SELECT
DISTINCT OBJECT_NAME INTO RTN_VALUE
FROM
TABLE(
PER_AVAILABILITY_DETAILS.GET_SCHEDULE_DETAILS(
P_RESOURCE_TYPE => 'ASSIGN',
P_RESOURCE_ID => P_ASSGIN_ID,
P_PERIOD_START => P_PERIOD_START,
P_PERIOD_END => P_PERIOD_END,
P_INCLUDE_CALEVENTS => 'Y'
)
) SCHED_DET
WHERE
1 = 1
AND SCHED_DET.AVAILABILITY_CODE = 'AVL'
AND ROWNUM = 1;
RETURN RTN_VALUE;
EXCEPTION WHEN NO_DATA_FOUND THEN RETURN NULL;
END;

SELECT
NVL((
case when TM_REC.RegularHours is not null then TRUNC(TM_REC.RegularHours) ||
':' || to_char(
extract (
minute
from
numtodsinterval(TM_REC.RegularHours, 'HOUR')
),
'00'
) else '' end
),0) RegularHours,
ALL_DATES.ABS_DATE,
NVL(TM_REC.ShortageLateIn, 0) + NVL(TM_REC.ShortageEarlyOut, 0)
shortage_duration,
NVL(TM_REC.OvertimeEarlyIn, 0) + NVL(TM_REC.OvertimeLateOut,0) Overtime,
1 STATUS_FLAG,
0 ABSENCE,
0 HOLIDAY_DAYS,

1 WEEKEND,
ASG.ASSIGNMENT_ID,
TM_REC.TIME_IN,
TM_REC.TIME_OUT,
GET_SHIFT_SCHD(
ASG.ASSIGNMENT_ID,
TO_DATE(ALL_DATES.ABS_DATE),
TO_DATE(ALL_DATES.ABS_DATE)+ 1
) WORK_SCHD

FROM
(
SELECT
resource_id,
TO_CHAR(actual_date, 'DD-MON-RRRR') actual_date,
RegularHours,
Overtime,
OvertimeEarlyIn,
OvertimeLateOut,
ShortageLateIn,
ShortageEarlyOut,
TIME_IN,
TIME_OUT,
'1' flag
FROM
(
SELECT
rec.resource_id,
rec.measure minutes,
TO_CHAR(rec.START_TIME, 'HH:MI') TIME_IN,
TO_CHAR(rec.STOP_TIME, 'HH:MI') TIME_OUT,
TRUNC(rec.actual_date) actual_date,
atrbs.attribute_category
from hwm_tm_rec rec, hwm_tm_rec_grp trg, hwm_tm_rec_grp trd,
hwm_tm_rec_grp_usages usg, Hwm_Tm_Rep_Atrb_Usages atrbusg, hwm_tm_rep_atrbs
atrbs, hwm_tm_atrb_flds_vl flds, hwm_tm_approved_ts_v status
where rec.latest_version = 'Y'
and usg.tm_rec_id = rec.orig_tm_rec_id
and usg.tm_rec_version = rec.orig_tm_rec_version
and trd.tm_rec_grp_id = usg.tm_rec_grp_id
and trd.tm_rec_grp_version = usg.tm_rec_grp_version
and trg.tm_rec_grp_id = trd.parent_tm_rec_grp_id
and trg.tm_rec_grp_version = trd.parent_tm_rec_grp_version
and status.tm_bldg_blk_id = trg.tm_rec_grp_id
and status.tm_bldg_blk_version = trg.tm_rec_grp_version
and atrbusg.usages_source_id = rec.tm_rec_id
and atrbusg.usages_source_version = rec.tm_rec_version
and atrbusg.tm_rep_atrb_id = atrbs.tm_rep_atrb_id
and flds.tm_atrb_fld_id = atrbs.master_attribute_id
and rec.delete_flag is null
and rec.orig_tm_rec_id is not null
and trd.delete_flag is null
and trg.delete_flag is null
and flds.name = 'PayrollTimeType'
and atrbs.attribute_category IN ('Regular Hours', 'Overtime', 'Overtime Early
In',
'Overtime Late Out', 'Shortage Late In',
'Shortage Early Out')
and trunc(rec.start_time) between :P_FROM_DATE and :P_TO_DATE
and status.approved_timestamp between trg.date_from
and trg.date_to
and status.approved_timestamp between trd.date_from
and trd.date_to
and status.approved_timestamp between rec.date_from
and rec.date_to
GROUP BY
rec.actual_date,
atrbs.attribute_category,
rec.measure,
TO_CHAR(rec.START_TIME, 'HH:MI'),
TO_CHAR(rec.STOP_TIME, 'HH:MI'),
rec.resource_id
) PIVOT(
SUM(minutes) FOR attribute_category IN(
'Regular Hours' RegularHours, 'Overtime' Overtime,
'Overtime Early In' OvertimeEarlyIn,'Overtime Late Out'
OvertimeLateOut,
'Shortage Late In' ShortageLateIn, 'Shortage Early Out' ShortageEarlyOut
)
)
) TM_REC,
(
select
SUBSTR(
(
to_date(
TO_CHAR(:P_FROM_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
) + rownum - 1
),
1,
10
) ABS_DATE,
TO_CHAR(
to_date(
TO_CHAR(:P_FROM_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
) + rownum - 1,
'DAY',
'NLS_DATE_LANGUAGE= ENGLISH '
) MY_day
from
all_objects
where
rownum <= TO_DATE(
TO_CHAR(:P_TO_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
)- to_date(
TO_CHAR(:P_FROM_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
)+ 1
) ALL_DATES,
PER_ALL_ASSIGNMENTS_M ASG
WHERE
ALL_DATES.ABS_DATE = TM_REC.actual_date(+)
AND ASG.ASSIGNMENT_TYPE IN ('E','C')
AND ASG.PRIMARY_FLAG = 'Y'
AND ASG.EFFECTIVE_LATEST_CHANGE = 'Y'
AND ASG.PERSON_ID = TM_REC.RESOURCE_ID(+)
AND ALL_DATES.ABS_DATE BETWEEN ASG.EFFECTIVE_START_DATE
AND ASG.EFFECTIVE_END_DATE and :ASSIGNMENT_ID=ASG.ASSIGNMENT_ID
SQL Query Timeout: 500
oracle.xdo.XDOException: java.sql.SQLException: ORA-01039: insufficient privileges
on underlying objects of the view

at oracle.xdo.dataengine.diagnostic.Xplan.execute(Xplan.java:292)
at
oracle.xdo.dataengine.diagnostic.Xplan.processSQLDataSource(Xplan.java:245)
at oracle.xdo.dataengine.diagnostic.Xplan.generate(Xplan.java:117)
at oracle.xdo.dataengine.XMLPGEN.processMergedDataSet(XMLPGEN.java:2061)
at oracle.xdo.dataengine.XMLPGEN.processMergedDataSet(XMLPGEN.java:3932)
at oracle.xdo.dataengine.DataProcessor.processData(DataProcessor.java:386)
at
oracle.xdo.servlet.dataengine.DataProcessorImpl.processData(DataProcessorImpl.java:
311)
at
oracle.xdo.servlet.dataengine.DataProcessorImpl.render(DataProcessorImpl.java:688)
at
oracle.xdo.servlet.ReportModelContextImpl.getReportXMLData(ReportModelContextImpl.j
ava:448)
at oracle.xdo.servlet.CoreProcessor.getReportXMLData(CoreProcessor.java:2266)
at oracle.xdo.servlet.CoreProcessor.process(CoreProcessor.java:627)
at oracle.xdo.servlet.CoreProcessor.processRequest(CoreProcessor.java:292)
at oracle.xdo.servlet.CoreProcessor.generateDocument(CoreProcessor.java:164)
at oracle.xdo.servlet.ReportImpl.renderBodyHTTP(ReportImpl.java:1719)
at oracle.xdo.servlet.ReportImpl.renderReportBodyHTTP(ReportImpl.java:806)
at oracle.xdo.servlet.ReportImpl.renderReportBodyHTTP(ReportImpl.java:252)
at
oracle.xdo.servlet.resources.ReportItemServiceImpl$ReportItemRunner.call(ReportItem
ServiceImpl.java:117)
at
oracle.xdo.servlet.resources.ReportItemServiceImpl$ReportItemRunner.call(ReportItem
ServiceImpl.java:82)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:767)
Caused by: java.sql.SQLException: ORA-01039: insufficient privileges on underlying
objects of the view

at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:510)
at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:462)
at oracle.jdbc.driver.T4C8Oall.processError(T4C8Oall.java:1105)
at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:554)
at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:270)
at oracle.jdbc.driver.T4C8Oall.doOALL(T4C8Oall.java:656)
at
oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:271)
at
oracle.jdbc.driver.T4CPreparedStatement.doOall8(T4CPreparedStatement.java:92)
at
oracle.jdbc.driver.T4CPreparedStatement.executeForRows(T4CPreparedStatement.java:97
1)
at
oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:1280)
at
oracle.jdbc.driver.OraclePreparedStatement.executeInternal(OraclePreparedStatement.
java:3719)
at
oracle.jdbc.driver.T4CPreparedStatement.executeInternal(T4CPreparedStatement.java:1
427)
at
oracle.jdbc.driver.OraclePreparedStatement.execute(OraclePreparedStatement.java:383
1)
at
oracle.jdbc.driver.OraclePreparedStatementWrapper.execute(OraclePreparedStatementWr
apper.java:1082)
at
weblogic.jdbc.wrapper.PreparedStatement.execute(PreparedStatement.java:119)
at oracle.xdo.dataengine.diagnostic.Xplan.execute(Xplan.java:272)
... 21 more
Caused by: Error : 1039, Position : 4435, Sql = EXPLAIN PLAN SET STATEMENT_ID =
'dm_plan_Timecard_240206_095815' FOR
WITH

FUNCTION GET_SHIFT_SCHD(
P_ASSGIN_ID IN NUMBER, P_PERIOD_START IN DATE,
P_PERIOD_END IN DATE
) RETURN VARCHAR2 AS RTN_VALUE VARCHAR2(1000);
BEGIN
SELECT
DISTINCT OBJECT_NAME INTO RTN_VALUE
FROM
TABLE(
PER_AVAILABILITY_DETAILS.GET_SCHEDULE_DETAILS(
P_RESOURCE_TYPE => 'ASSIGN',
P_RESOURCE_ID => P_ASSGIN_ID,
P_PERIOD_START => P_PERIOD_START,
P_PERIOD_END => P_PERIOD_END,
P_INCLUDE_CALEVENTS => 'Y'
)
) SCHED_DET
WHERE
1 = 1
AND SCHED_DET.AVAILABILITY_CODE = 'AVL'
AND ROWNUM = 1;
RETURN RTN_VALUE;
EXCEPTION WHEN NO_DATA_FOUND THEN RETURN NULL;
END;

SELECT
NVL((
case when TM_REC.RegularHours is not null then TRUNC(TM_REC.RegularHours) ||
':' || to_char(
extract (
minute
from
numtodsinterval(TM_REC.RegularHours, 'HOUR')
),
'00'
) else '' end
),0) RegularHours,
ALL_DATES.ABS_DATE,
NVL(TM_REC.ShortageLateIn, 0) + NVL(TM_REC.ShortageEarlyOut, 0)
shortage_duration,
NVL(TM_REC.OvertimeEarlyIn, 0) + NVL(TM_REC.OvertimeLateOut,0) Overtime,
1 STATUS_FLAG,
0 ABSENCE,
0 HOLIDAY_DAYS,

1 WEEKEND,
ASG.ASSIGNMENT_ID,
TM_REC.TIME_IN,
TM_REC.TIME_OUT,
GET_SHIFT_SCHD(
ASG.ASSIGNMENT_ID,
TO_DATE(ALL_DATES.ABS_DATE),
TO_DATE(ALL_DATES.ABS_DATE)+ 1
) WORK_SCHD

FROM
(
SELECT
resource_id,
TO_CHAR(actual_date, 'DD-MON-RRRR') actual_date,
RegularHours,
Overtime,
OvertimeEarlyIn,
OvertimeLateOut,
ShortageLateIn,
ShortageEarlyOut,
TIME_IN,
TIME_OUT,
'1' flag
FROM
(
SELECT
rec.resource_id,
rec.measure minutes,
TO_CHAR(rec.START_TIME, 'HH:MI') TIME_IN,
TO_CHAR(rec.STOP_TIME, 'HH:MI') TIME_OUT,
TRUNC(rec.actual_date) actual_date,
atrbs.attribute_category
from hwm_tm_rec rec, hwm_tm_rec_grp trg, hwm_tm_rec_grp trd,
hwm_tm_rec_grp_usages usg, Hwm_Tm_Rep_Atrb_Usages atrbusg, hwm_tm_rep_atrbs
atrbs, hwm_tm_atrb_flds_vl flds, hwm_tm_approved_ts_v status
where rec.latest_version = 'Y'
and usg.tm_rec_id = rec.orig_tm_rec_id
and usg.tm_rec_version = rec.orig_tm_rec_version
and trd.tm_rec_grp_id = usg.tm_rec_grp_id
and trd.tm_rec_grp_version = usg.tm_rec_grp_version
and trg.tm_rec_grp_id = trd.parent_tm_rec_grp_id
and trg.tm_rec_grp_version = trd.parent_tm_rec_grp_version
and status.tm_bldg_blk_id = trg.tm_rec_grp_id
and status.tm_bldg_blk_version = trg.tm_rec_grp_version
and atrbusg.usages_source_id = rec.tm_rec_id
and atrbusg.usages_source_version = rec.tm_rec_version
and atrbusg.tm_rep_atrb_id = atrbs.tm_rep_atrb_id
and flds.tm_atrb_fld_id = atrbs.master_attribute_id
and rec.delete_flag is null
and rec.orig_tm_rec_id is not null
and trd.delete_flag is null
and trg.delete_flag is null
and flds.name = 'PayrollTimeType'
and atrbs.attribute_category IN ('Regular Hours', 'Overtime', 'Overtime Early
In',
'Overtime Late Out', 'Shortage Late In',
'Shortage Early Out')
and trunc(rec.start_time) between :P_FROM_DATE and :P_TO_DATE
and status.approved_timestamp between trg.date_from
and trg.date_to
and status.approved_timestamp between trd.date_from
and trd.date_to
and status.approved_timestamp between rec.date_from
and rec.date_to
GROUP BY
rec.actual_date,
atrbs.attribute_category,
rec.measure,
TO_CHAR(rec.START_TIME, 'HH:MI'),
TO_CHAR(rec.STOP_TIME, 'HH:MI'),
rec.resource_id
) PIVOT(
SUM(minutes) FOR attribute_category IN(
'Regular Hours' RegularHours, 'Overtime' Overtime,
'Overtime Early In' OvertimeEarlyIn,'Overtime Late Out'
OvertimeLateOut,
'Shortage Late In' ShortageLateIn, 'Shortage Early Out' ShortageEarlyOut
)
)
) TM_REC,
(
select
SUBSTR(
(
to_date(
TO_CHAR(:P_FROM_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
) + rownum - 1
),
1,
10
) ABS_DATE,
TO_CHAR(
to_date(
TO_CHAR(:P_FROM_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
) + rownum - 1,
'DAY',
'NLS_DATE_LANGUAGE= ENGLISH '
) MY_day
from
all_objects
where
rownum <= TO_DATE(
TO_CHAR(:P_TO_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
)- to_date(
TO_CHAR(:P_FROM_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
)+ 1
) ALL_DATES,
PER_ALL_ASSIGNMENTS_M ASG

WHERE
ALL_DATES.ABS_DATE = TM_REC.actual_date(+)
AND ASG.ASSIGNMENT_TYPE IN ('E','C')
AND ASG.PRIMARY_FLAG = 'Y'
AND ASG.EFFECTIVE_LATEST_CHANGE = 'Y'
AND ASG.PERSON_ID = TM_REC.RESOURCE_ID(+)
AND ALL_DATES.ABS_DATE BETWEEN ASG.EFFECTIVE_START_DATE
AND ASG.EFFECTIVE_END_DATE and :ASSIGNMENT_ID=ASG.ASSIGNMENT_ID, OriginalSql =
EXPLAIN PLAN SET STATEMENT_ID = 'dm_plan_Timecard_240206_095815' FOR
WITH

FUNCTION GET_SHIFT_SCHD(
P_ASSGIN_ID IN NUMBER, P_PERIOD_START IN DATE,
P_PERIOD_END IN DATE
) RETURN VARCHAR2 AS RTN_VALUE VARCHAR2(1000);
BEGIN
SELECT
DISTINCT OBJECT_NAME INTO RTN_VALUE
FROM
TABLE(
PER_AVAILABILITY_DETAILS.GET_SCHEDULE_DETAILS(
P_RESOURCE_TYPE => 'ASSIGN',
P_RESOURCE_ID => P_ASSGIN_ID,
P_PERIOD_START => P_PERIOD_START,
P_PERIOD_END => P_PERIOD_END,
P_INCLUDE_CALEVENTS => 'Y'
)
) SCHED_DET
WHERE
1 = 1
AND SCHED_DET.AVAILABILITY_CODE = 'AVL'
AND ROWNUM = 1;
RETURN RTN_VALUE;
EXCEPTION WHEN NO_DATA_FOUND THEN RETURN NULL;
END;

SELECT
NVL((
case when TM_REC.RegularHours is not null then TRUNC(TM_REC.RegularHours) ||
':' || to_char(
extract (
minute
from
numtodsinterval(TM_REC.RegularHours, 'HOUR')
),
'00'
) else '' end
),0) RegularHours,
ALL_DATES.ABS_DATE,
NVL(TM_REC.ShortageLateIn, 0) + NVL(TM_REC.ShortageEarlyOut, 0)
shortage_duration,
NVL(TM_REC.OvertimeEarlyIn, 0) + NVL(TM_REC.OvertimeLateOut,0) Overtime,
1 STATUS_FLAG,
0 ABSENCE,
0 HOLIDAY_DAYS,

1 WEEKEND,
ASG.ASSIGNMENT_ID,
TM_REC.TIME_IN,
TM_REC.TIME_OUT,
GET_SHIFT_SCHD(
ASG.ASSIGNMENT_ID,
TO_DATE(ALL_DATES.ABS_DATE),
TO_DATE(ALL_DATES.ABS_DATE)+ 1
) WORK_SCHD

FROM
(
SELECT
resource_id,
TO_CHAR(actual_date, 'DD-MON-RRRR') actual_date,
RegularHours,
Overtime,
OvertimeEarlyIn,
OvertimeLateOut,
ShortageLateIn,
ShortageEarlyOut,
TIME_IN,
TIME_OUT,
'1' flag
FROM
(
SELECT
rec.resource_id,
rec.measure minutes,
TO_CHAR(rec.START_TIME, 'HH:MI') TIME_IN,
TO_CHAR(rec.STOP_TIME, 'HH:MI') TIME_OUT,
TRUNC(rec.actual_date) actual_date,
atrbs.attribute_category
from hwm_tm_rec rec, hwm_tm_rec_grp trg, hwm_tm_rec_grp trd,
hwm_tm_rec_grp_usages usg, Hwm_Tm_Rep_Atrb_Usages atrbusg, hwm_tm_rep_atrbs
atrbs, hwm_tm_atrb_flds_vl flds, hwm_tm_approved_ts_v status
where rec.latest_version = 'Y'
and usg.tm_rec_id = rec.orig_tm_rec_id
and usg.tm_rec_version = rec.orig_tm_rec_version
and trd.tm_rec_grp_id = usg.tm_rec_grp_id
and trd.tm_rec_grp_version = usg.tm_rec_grp_version
and trg.tm_rec_grp_id = trd.parent_tm_rec_grp_id
and trg.tm_rec_grp_version = trd.parent_tm_rec_grp_version
and status.tm_bldg_blk_id = trg.tm_rec_grp_id
and status.tm_bldg_blk_version = trg.tm_rec_grp_version
and atrbusg.usages_source_id = rec.tm_rec_id
and atrbusg.usages_source_version = rec.tm_rec_version
and atrbusg.tm_rep_atrb_id = atrbs.tm_rep_atrb_id
and flds.tm_atrb_fld_id = atrbs.master_attribute_id
and rec.delete_flag is null
and rec.orig_tm_rec_id is not null
and trd.delete_flag is null
and trg.delete_flag is null
and flds.name = 'PayrollTimeType'
and atrbs.attribute_category IN ('Regular Hours', 'Overtime', 'Overtime Early
In',
'Overtime Late Out', 'Shortage Late In',
'Shortage Early Out')
and trunc(rec.start_time) between :P_FROM_DATE and :P_TO_DATE
and status.approved_timestamp between trg.date_from
and trg.date_to
and status.approved_timestamp between trd.date_from
and trd.date_to
and status.approved_timestamp between rec.date_from
and rec.date_to
GROUP BY
rec.actual_date,
atrbs.attribute_category,
rec.measure,
TO_CHAR(rec.START_TIME, 'HH:MI'),
TO_CHAR(rec.STOP_TIME, 'HH:MI'),
rec.resource_id
) PIVOT(
SUM(minutes) FOR attribute_category IN(
'Regular Hours' RegularHours, 'Overtime' Overtime,
'Overtime Early In' OvertimeEarlyIn,'Overtime Late Out'
OvertimeLateOut,
'Shortage Late In' ShortageLateIn, 'Shortage Early Out' ShortageEarlyOut
)
)
) TM_REC,
(
select
SUBSTR(
(
to_date(
TO_CHAR(:P_FROM_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
) + rownum - 1
),
1,
10
) ABS_DATE,
TO_CHAR(
to_date(
TO_CHAR(:P_FROM_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
) + rownum - 1,
'DAY',
'NLS_DATE_LANGUAGE= ENGLISH '
) MY_day
from
all_objects
where
rownum <= TO_DATE(
TO_CHAR(:P_TO_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
)- to_date(
TO_CHAR(:P_FROM_DATE, 'dd-mon-yyyy'),
'dd-mon-yyyy'
)+ 1
) ALL_DATES,
PER_ALL_ASSIGNMENTS_M ASG

WHERE
ALL_DATES.ABS_DATE = TM_REC.actual_date(+)
AND ASG.ASSIGNMENT_TYPE IN ('E','C')
AND ASG.PRIMARY_FLAG = 'Y'
AND ASG.EFFECTIVE_LATEST_CHANGE = 'Y'
AND ASG.PERSON_ID = TM_REC.RESOURCE_ID(+)
AND ALL_DATES.ABS_DATE BETWEEN ASG.EFFECTIVE_START_DATE
AND ASG.EFFECTIVE_END_DATE and :ASSIGNMENT_ID=ASG.ASSIGNMENT_ID, Error Msg = ORA-
01039: insufficient privileges on underlying objects of the view

at oracle.jdbc.driver.T4CTTIoer11.processError(T4CTTIoer11.java:514)
... 36 more

]]>
</DATA_DS>
</SQL_EXPLAIN_PLAN>

]]>
</DATA_PROCESSOR_LOG>
</DIAGNOSTIC_OUT>

You might also like