Here's the original feedback:
Hi Guys
Got the following error:
ORA-20001: get_report error ORA-20001: get_dbms_sql_cursor error
ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table
l_query=
select rowid as apxws_row_pk, TABLE_NAME, COLUMN_NAME , count(*) over () apxws_row_cnt
from ( select * from (select table_name, column_name from user_tab_columns) r ) r
where rownum <= to_number(:APXWS_MAX_ROW_CNT) order by rowid
Obviously it's currently looking for rowid, which seems an unnecessary restriction.
You may want rowid for full CRUD functionality, but often you only want read functionality.
And anyway couldn't you get the developer to nominate a single column as the primary key in the report attributes?
Why not replace your current query wrapper with something like this:
select apxws_row_pk, TABLE_NAME, COLUMN_NAME , count(*) over () apxws_row_cnt
from ( select rownum apxws_row_pk, r.* from (select table_name, column_name from user_tab_columns) r ) r
where rownum <= to_number(:APXWS_MAX_ROW_CNT) order by apxws_row_pk
Apart from that, all the additional functionality of interactive reports looks great.
I'll be upgrading and converting by reports as soon as possible.
Regards
Mark
Response
Mark,
Your suggestion has been logged as an enhancement request.
Regards,
David