RowId In Form

Hi,
I have a multiple views some views can retrive the value of RowId and others can't Why?
Regards,
Edited by: kingadmin on Feb 5, 2011 6:23 AM
Edited by: kingadmin on Feb 5, 2011 6:23 AM

/*********************** this one working fine***************************/
SELECT
GRU.IS_ACTIVE GRU_IS_ACTIVE
,GRU.EXPIRY_DATE GRU_EXPIRY_DATE
          ,USR.ID USR_ID
          ,USR_NAME USR_NAME
          ,USR.NAME USR_NAME_E
,GRP.ID GRP_ID
,GRP.PASSWORD GRP_PASSWORD
,GRP.IS_ACTIVE GRP_IS_ACTIVE
,GRP.Group_Name GROUP_NAME
,GRU.SEQUENCE
FROM NVS_GROUPS_VS_USERS GRU, NVS_USERS USR , NVS_GROUPS GRP
WHERE GRP.ID = GRU.NVS_GRP_ID
AND USR.ID = GRU.NVS_USR_ID
/************************** This one is not **************************/
SELECT
GVD.NVS_GRP_ID,
GVD.NVS_TCO_ID,
GROUP_NAME,
TABLE_NAME,
DMN_NAME DOMAIN_NAME,
DMV_LABEL,
IS_ACCESS
FROM
NVS_GROUPS_VS_DOMAINS_D GVD,
NVS_DOMAIN_VALUES_VW DMV_VW,
NVS_GROUPS GRP,
NVS_TABLE_COLUMNS_VW TCO_VW
WHERE GVD.NVS_GRP_ID = GRP.ID
AND GVD.NVS_DMV_NVS_DMN_ID = DMV_VW.DMN_ID
AND GVD.NVS_DMV_ID = DMV_VW.DMV_ID
AND TCO_VW.ID = GVD.NVS_TCO_ID

Similar Messages

  • 'ORA-01445: cannot select ROWID' Tabular Form v4

    Hi Guys,
    We have been having major problems since upgrading from v2 to v4.
    One of the problem I have been having is with Tabular Forms.
    I have quite a complex page with multiple regions which has always worked fine in version 2. One of those regions is a tabular form. When the page loads, I am getting the:
    'ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table' error.
    The initial query was quite complex but I have broken it down:
    This query works and allows me to update the base table (xxmel_apex_eco_alterations)
    select
    alt.ALTERATION_ID,
    alt.ALTERATION_ID ALTERATION_ID_DISPLAY,
    alt.ECO,
    alt.ORGANIZATION_ID,
    alt.ACD_TYPE,
    alt.INVENTORY_ITEM_ID,
    alt.BEFORE_CHANGE_QTY,
    alt.AFTER_CHANGE_QTY,
    alt.MODIFY_FLAG,
    alt.REVISED_ASSEMBLY_ID,
    alt.BILL_SEQUENCE_ID,
    alt.COMPONENT_SEQUENCE_ID,
    alt.LAST_UPDATE_DATE,
    alt.LAST_UPDATE_BY,
    alt.COMMENTS,
    alt.BOM_IMPLEMENTATION_DATE,
    alt.BOM_CHANGE_NOTICE,
    alt.ASSEMBLY_NAME,
    alt.COMPONENT_NAME,
    alt.SELECTION_CRITERIA,
    alt.ORACLE_CHANGE_NOTICE,
    alt.COMP_CURRENT_COST,
    alt.COMP_NEW_COST,
    alt.COMP_CURRENT_SC,
    alt.COMP_NEW_SC,
    alt.COMP_DESCRIPTION,
    alt.COMP_CURRENT_UOM,
    alt.COMP_NEW_UOM,
    alt.COMP_CURRENT_PUR_STATUS,
    alt.COMP_NEW_PUR_STATUS
    from XXMEL_APEX_ECO_ALTERATIONS alt
    where eco = :P2_ECO
    But as soon as I try to join it to another table (which I am not trying to update, just display as hown below), I am getting the error.
    select
    alt.ALTERATION_ID,
    alt.ALTERATION_ID ALTERATION_ID_DISPLAY,
    alt.ECO,
    alt.ORGANIZATION_ID,
    alt.ACD_TYPE,
    alt.INVENTORY_ITEM_ID,
    alt.BEFORE_CHANGE_QTY,
    alt.AFTER_CHANGE_QTY,
    alt.MODIFY_FLAG,
    alt.REVISED_ASSEMBLY_ID,
    alt.BILL_SEQUENCE_ID,
    alt.COMPONENT_SEQUENCE_ID,
    alt.LAST_UPDATE_DATE,
    alt.LAST_UPDATE_BY,
    alt.COMMENTS,
    alt.BOM_IMPLEMENTATION_DATE,
    alt.BOM_CHANGE_NOTICE,
    alt.ASSEMBLY_NAME,
    alt.COMPONENT_NAME,
    alt.SELECTION_CRITERIA,
    alt.ORACLE_CHANGE_NOTICE,
    alt.COMP_CURRENT_COST,
    alt.COMP_NEW_COST,
    alt.COMP_CURRENT_SC,
    alt.COMP_NEW_SC,
    alt.COMP_DESCRIPTION,
    alt.COMP_CURRENT_UOM,
    alt.COMP_NEW_UOM,
    alt.COMP_CURRENT_PUR_STATUS,
    alt.COMP_NEW_PUR_STATUS
    , msib.segment1
    from XXMEL_APEX_ECO_ALTERATIONS alt
    , mtl_system_items_b msib
    where eco = :P2_ECO
    and msib.organization_id = 26
    and msib.inventory_item_id = alt.INVENTORY_ITEM_ID
    I have read Re: v4.0 - Tabular form ORA-01445: cannot select ROWID from, or sample, where someone was having a similar issue to me but their solution (in copying the script to build a new page) is not really an option for us due to the complexity to of the page as a whole.
    Is this a bug in APEX 4?
    Any help would be great,
    Thanks
    Chris

    Thanks Jaydip,
    That works great. Rather than joing hte Tabular From to multiple tables, I just created a function that returned the fields I required and included that in the select.
    select
    alt.ALTERATION_ID
    ,alt.ALTERATION_ID ALTERATION_ID_DISPLAY
    ,XXMEL_APEX_ECO_PKG.display_msib_records ('PART NAME',alt.inventory_item_id,26) "Part Number"
    ,XXMEL_APEX_ECO_PKG.display_msib_records ('PART DESC',alt.inventory_item_id,26) "Part Description"
    ,XXMEL_APEX_ECO_PKG.display_msib_records ('ITEM TYPE',alt.inventory_item_id,26) "Part Number Type"
    ,XXMEL_APEX_ECO_PKG.display_msib_records ('ITEM STATUS',alt.inventory_item_id,26) "Part Number Status"
    ,alt.BEFORE_CHANGE_QTY
    ,alt.AFTER_CHANGE_QTY
    ,alt.MODIFY_FLAG
    ,XXMEL_APEX_ECO_PKG.display_msib_records ('PART NAME',alt.REVISED_ASSEMBLY_ID,26) "Revised BOM"
    ,XXMEL_APEX_ECO_PKG.display_msib_records ('PART DESC',alt.REVISED_ASSEMBLY_ID,26) "Revised BOM Description"
    ,XXMEL_APEX_ECO_PKG.display_msib_records ('ITEM TYPE',alt.REVISED_ASSEMBLY_ID,26) "Revised BOM Type"
    ,XXMEL_APEX_ECO_PKG.display_msib_records ('ITEM STATUS',alt.REVISED_ASSEMBLY_ID,26) "Revised BOM Status"
    ,alt.LAST_UPDATE_DATE
    ,alt.LAST_UPDATE_BY
    ,alt.COMMENTS
    ,alt.BOM_CHANGE_NOTICE
    ,alt.SELECTION_CRITERIA
    ,alt.ORACLE_CHANGE_NOTICE
    from XXMEL_APEX_ECO_ALTERATIONS alt
    where eco = :P2_ECO
    Thanks very much
    Chris

  • Passing value from JSP to Action in Struts

    Hi,
    I am populating JSP page with rows retrieved from the database and
    represented as a List of Beans in forEach loop:
    <c:forEach var="list" items="${OperationsForm.OperationsList}">
    <c:choose>
    <c:when test="${list.isCompleted =='Y'}" >
    <td width="100">Completed</td>
    <td width="100"> </td>
    </c:when>
    <c:otherwise>
    <td width="100">Pending</td>
    <td width="100"><input type="image" onclick="
    rowId=value; form.action='action.do?command=notify'"
    value="${list.OperationId}" />
    </td>
    </c:otherwise>
    </c:choose>
    </tr>
    </c:forEach>
    Have hidden field: html:hidden property="rowId" value="-1"/>
    User is clicking the button corresponding to one of the rows
    and I need to pass the value of that rowId to the Action class, so it does
    something in the database [action completed]
    Now how do I pass it , is that the right way of doing it with calling
    request.getSession().getAttribute(rowId) in the Action class ?
    As of now I am getting Javascript error "Object doesn't support this
    property or method", complaining about rowId=value;
    Using Struts 1.3
    Please help !
    TIA,
    Oleg.

    So what you are saying is that I should add rowId here:
    <input type="image" onclick="form.action='action.do?command=notify&rowId='
    ${list.OperationId}"/> , correct ?
    I am not sure that it will work, especially with Struts tag.
    I will probably try something like:
    <html:submit onclick="form.action='action.do?command=notify'" value="${list.OperationId}">
    I am relatively new to Struts, so now sure what will work or not and how to do it better. How do I catch the submitted value in the Action in either of these 2 cases, via action.getSession().getProperty("rowId") /
    action.getSession().getProperty("submit") ?
    I would probably do it as a URL rather than changing the action of the form.I will have to create a new action anyway to process that row [which is sending user e-mail regarding that row data/event].
    Is the id the only thing you have to pass in?
    Or do you need other values from the screen?Selected rowId is probably the only thing I care about, can access values from the Form in Action.
    Thank you,
    Oleg.

  • Change delete link href for each row of table

    Hi,
    I am using Struts/JSP to do the following..
    iterate through a list of bean objects and show them as table rows. I can do this successfully. I'm using logic:iterate tags to iterate and bean:write tags to write to table columns.
    I have a delete link added to each row.. which is configured as follows..
    <logic:iterate..... >
    <tr>
    <bean:define  id="rowId" name="form" property="bean"/>
    <td><a href="order.do?action=delete&orderid=<%=rowId%>">Delete</a></td>
    </tr>
    </logic:iterate>I'm trying to investigate if there are other ways to do this instead of using
    "<%=rowId%>"...
    Any suggestions?
    Thanks

    Hi,
    Check the event "EH_ONONE_CLICK_ACTION " line 58/59 it calls 'Relationships' window's outbound plug 'ToAccountRelationshipsEF'
    lr_window = me->view_manager->get_window_controller( ).
       lr_window->call_outbound_plug( 'ToAccountRelationshipsEF' ).
    keep breakpoint in the outbound plug, you can see the navigation details it could be done using nblinks/tlinks or by calling the navigation link of parent component bp_head/overview..
    Similarly EH_ONNEW event will get trigger when you click on new button and it allows to open the view in editable mode, again this is calling the same outbound plug ToAccountRelationshipsEF'.. looks like there could be dynamic navigation happening with the same outbound plug, please debug and see.
    To achieve your requirement you have to change the navigation to edit page instead of display page..please debug see how navigations are implemented.
    If by default navigation to relationship view is implemented in editable mode then it could be achieved via creating a read only config and switch between editable configuration and read only config. based on the source..
    Hope this helps..
    Cheers,
    Sumit Mittal

  • Applying visual attribute to record dependant on value

    hi guys, i have a form which when queried can show 10 records at a time. What i want to do is that if a certain date field is less than the current date then apply visual attribute group to that whole record (which makes the record red).
    I assume such code would go in post query and i would need to use row id or something?
    or am i approaching it the wrong way.
    Thanks

    Yes, you can use the Post-Query trigger for this. You don't need to worry about the rowid as Forms will already know which record is being evaluated. Your code would look something like the following:
    /* Sample Post-Query trigger */
    /* This sample assumes you have created a Visual Attribute called "DATE_RED" */
    BEGIN
       -- Just compare DATE not DATETIME
       IF ( Trunc(:BLOCK.CERTAIN_DATE) < Trunc(SYSDATE) ) THEN
          Set_Item_Instance_Property('BLOCK.CERTAIN_DATE',CURRENT_RECORD, Visual_Attribute, 'DATE_RED');
       END IF;
    END;You will notice in my code sample that I am using the TRUNC function on the dates. This function will return just the date so the compare looks at just the date. If you need to compare the date AND time, then simply drop the TRUNC function from the code sample. ;)
    Hope this helps,
    Craig B-)
    If someone's response is helpful or correct, please mark it accordingly.

  • FRM-40501 Error and HeadStart 3.4.2W

    I'm migrating and old application made with Designer 1.3.2 and HeadStart 3.4.2W to Oracle 8i Release 8.1.6 and in many forms screens at commit time i'm receiving the message FRM-40501 "Unable to reserve records to update or delete". Any Clue, Anyone.

    This is the same problem as posted by Chuck, right?
    ORA-01410
    <p>I am not familiar with using instead-of triggers, so maybe someone else will help out here... Can you describe -- what does the instead-of trigger do?
    <p>But: I am sure the problem is in the form, and not with corrupt indexes.
    <p>Your Add_Table procedure is just setting up the record in the block to be added to the database. Everything looks normal there.
    <p>But what have you changed in the form since it was working? Have you added some SQL statements? Maybe added a trigger to the block? Commit-time processing? Answer these things and maybe someone can help some more.
    <p>It sounds like the rowid that Forms automatically sets after an insert is not being set, and you have added something (maybe inadvertently) that tries to update the record immediately after it is inserted. And the first thing that happens when you change a record is that Forms automatically issues a lock on the record (the select for update). This process uses a rowid, but your form has bypassed the process that sets the rowid.
    <p>Good luck with Forms. It is frustrating at first, but it gets better. And Oracle is a great dbms to work on.

  • Tabular form on a view :ORA-01446: cannot select ROWID from, or sample...

    Hi,
    I have two tables
    CUSTOMERS
    ===========
    Name Null Type
    ======================
    CUST_UID NOT NULL NUMBER(4)
    CUST_NAME VARCHAR2(50)
    ITEM_PRICES
    ===========
    Name Null Type
    ======================
    IP_UID NOT NULL NUMBER(4)
    IP_ITEM_DESC VARCHAR2(50
    IP_COST_PRICE NUMBER(6,2)
    IP_SELL_PRICE NUMBER(6,2)
    I have a view IPS_VW which is the cartician product of CUSTOMERS and ITEM_PRICES, and an instead of trigger for UPDATE on this view which either inserts or updates data in the following third table
    ITEM_PRICES_SPECIAL
    ===========
    Name Null Type
    ======================
    IPS_UID NOT NULL NUMBER(4)
    CUST_UID NUMBER(4)
    IP_UID NUMBER(4)
    IPS_SELL_PRICE NUMBER(6,2)
    The following is my view
    SELECT 'A'||ROWNUM AS "IPSVW_UID",
    0 AS "IPSVW_IPS_UID",
    "CUSTOMERS"."CUST_UID" AS "IPSVW_CUST_UID",
    "ITEM_PRICES"."IP_UID" AS "IPSVW_IP_UID",
    "ITEM_PRICES"."IP_SELL_PRICE" AS "IPSVW_IPS_SELL_PRICE"
    FROM "CUSTOMERS" "CUSTOMERS",
    "ITEM_PRICES" "ITEM_PRICES"
    WHERE NOT EXISTS
    (SELECT 1
    FROM "ITEM_PRICES_SPECIAL" "ITEM_PRICES_SPECIAL"
    WHERE "ITEM_PRICES_SPECIAL"."IP_UID" ="ITEM_PRICES"."IP_UID"
    AND "ITEM_PRICES_SPECIAL"."CUST_UID" ="CUSTOMERS"."CUST_UID"
    UNION
    SELECT 'B' ||ROWNUM AS "IPSVW_UID",
    "ITEM_PRICES_SPECIAL"."IPS_UID" AS "IPSVW_IPS_UID",
    "ITEM_PRICES_SPECIAL"."CUST_UID" AS "IPSVW_CUST_UID",
    "ITEM_PRICES_SPECIAL"."IP_UID" AS "IPSVW_IP_UID",
    "ITEM_PRICES_SPECIAL"."IPS_SELL_PRICE" AS "IPSVW_IPS_SELL_PRICE"
    FROM "ITEM_PRICES_SPECIAL" "ITEM_PRICES_SPECIAL";
    And this is the instead of trigger
    CREATE OR REPLACE TRIGGER "TRG_IPSVW_UPDATE" INSTEAD OF
    UPDATE ON IPS_VW REFERENCING NEW AS N FOR EACH ROW
    BEGIN
    IF :N.IPSVW_IPS_UID = 0 THEN
    INSERT INTO ITEM_PRICES_SPECIAL
    ( CUST_UID, IP_UID,IPS_SELL_PRICE )
    VALUES
    ( :N.IPSVW_CUST_UID,:N.IPSVW_IP_UID, :N.IPSVW_IPS_SELL_PRICE );
    ELSE
    UPDATE ITEM_PRICES_SPECIAL
    SET IPS_SELL_PRICE = :N.IPSVW_IPS_SELL_PRICE
    WHERE IPS_UID = :N.IPSVW_IPS_UID;
    END IF;
    END;
    Everything works fine in SQLPLUS, if i update a rate in this view, a record is either inserted or updated in the third table.
    But when i try to create a tabular form based on this view, i get the error
    ORA-01446: cannot select ROWID from, or sample, a view with DISTINCT, GROUP BY, etc.
    Could someone help me please?
    Thanks,
    Allen

    I think The tabular form needs to be able to identify some primary key and using a rownum concatenation cannot provide that.
    Cheers
    Kofi

  • Is this a bug? master rowid value lost when saving on a master/detail form

    master/detail forms seem to lose the rowid after saving, if the unique identifier is set to ROWID
    to reproduce the problem:
    1) create a master detail form on DEPT/EMP
    -- choose 'Managed by Database (ROWID)' on the 'Define Primary Key' page.
    -- do not include master row navigation (but i don't think this matters)
    -- choose 'Edit detail as tabular form on same page' on the 'Choose Layout' page
    -- include the master report
    2) on the master/detail page, change the conditional branch that returns to the master report page
    -- the normal condition for this branch is request in SAVE,DELETE,CREATE
    -- change it to request in DELETE,CREATE
    3) run the form and save a change
    -- saves fine, session shows the ROWID value is still set
    4) save a second change
    -- change does not save, form reverts to Create mode
    this problem does not occur when using the primary key columns instead of rowid
    see http://apex.oracle.com/pls/apex/f?p=60813:7 for the ROWID version
    see http://apex.oracle.com/pls/apex/f?p=60813:11 for the PK column version

    Hi Saverio,
    Bug *13563808* has been logged to track the reported issue, and a fix will be made available in a future release. Just to clarify, this issue is only arising when the APEX-generated Master-Detail is modified post-generation, so for users who have not modified their Master-Details using ROWID to manage their DML processes, they should not experience this issue.
    In relation to my workaround, my suggestion works in my test environment, which I verified before posting the initial suggestion. Please note that the 'Reset Page' process is, by default, conditional on the "Delete" button being pressed. If you have made further modifications to your Master-Detail page, then this might explain why you're seeing different behaviour to me. You might using the "Debug" option on the Developer Toolbar useful. Viewing the debug information should help you to decipher what's going on/wrong on your page. If you still can't resolve the issue, then the safest option might be to revert the page back to it's original state, meaning the user navigates back to the Report page upon submitting changes to the Master-Detail Form page.
    Regards,
    Hilary

  • Rowid Problem in Forms 9i.

    Hi,
    I have uploaded some data through excel marcro to 10G database. When I am querying the data in my forms application based on Default_Where as
    if name_in('parameter.prm_rowid') is not null then
              set_block_property( 'BLK_GL_DET', DEFAULT_WHERE, 'rowid = ''' || name_in('parameter.prm_rowid') || '''' );
         end if;
    Now the rowids I am selecting from the table. I noticed for few of the records the forms application is not returing any row id. But when I checked from SQL prompt I can see the rowids for the missing rows (which were not getting selected in the forms).
    I was select the rowid in a procedure as
         Select rowid into :parameter.prm_rowid
         From GLTMS_GLMASTER
         Where GL_CODE = :BLK_GL_DET.GL_CODE
    Please let me know what is the probable cause.
    Regards,
    Snehangsu Burman
    Hi,
    It has been sorted out.
    We can closed the thread.
    Regards,
    Snehangsu
    Message was edited by: Snehangsu
    snehangsub

    Hello Snehangsu,
    Can you let me know how the problem was solved??
    Cheers,
    Suresh

  • Bug in Apex 4.1 tabular form with rowid as PK

    Hi
    I think this is a bug in Apex 4.1. I tested it on apex.oracle.com. This is the simple scenario.
    Create a simple table:
    create table dropme (code number, description varchar2(200));
    Now use the wizard to create a tabular form.
    Select Allowed Operations insert and update for this table.
    Select ROWID as Primary key type.
    After finishing the wizard click on Run and you get:
    failed to parse SQL query:
    ORA-00904: "APEX$ROWID": invalid identifier
    Note: this does not happen when you select insert, update and delete.

    Hello,
    >> Select Allowed Operations insert and update for this table.
    >> Select ROWID as Primary key type.
    It seems that you are correct. I was able to reconstruct your scenario on my local system. Now we need the verification of the dev team.
    Regards,
    Arie.
    &diams; Please remember to mark appropriate posts as correct/helpful. For the long run, it will benefit us all.
    &diams; Author of Oracle Application Express 3.2 – The Essentials and More

  • How do I get and pass Master-Detail rowid to another form in query mode?

    I am trying to get the rowid of my master record passed to
    another form in query mode. This is necessary because, I need to
    have a way to show other detail tables for my master record. I
    have been successful in calling the other forms, but only if I
    hard code the rowid(or Primary Key).
    Ultimately a "Tabbed" HTML table for each supporting detail
    table that I have would be perfect. Any help would be greatly
    appreciated. Thanks.

    correct me if I am wrong, is this a 9iAS (Application Server)
    related question? This forum is for 9iAS only.
    Regards,
    --Tao

  • ROWID Problem in 10g forms compilation

    Hai,
    I have one form coded with forms 6i. now i want to update the form with 10g version.
    When i compile with 10g version i got one error relative to ROWID.
    code in form
    l_variable t_tablename.rowid;
    -- here l_variable is variable name
    and t_tablename is tablename
    error when compilation: RowId must be declared.
    give me immt. response on this.
    adv. thanks
    madhava

    I guess you need to enable the Urdu language support in the browser as well.
    In IE, Tools-> Internet Options-> General>Languages

  • Form based on view: ROWID error??? (please help)

    I have a report. One of the columns is linked to a form that is based on a view. When i click the link, I get:
    Cannot link to the module: 5049492634 ORA-01446: cannot select ROWID from view with DISTINCT, GROUP BY, etc. (WWV-16062)
    An unexpected error occurred: ORA-01446: cannot select ROWID from view with DISTINCT, GROUP BY, etc. (WWV-16016
    That seems fair: views do not have ROWID's. How can I make it work??? In the ORDER BY settings from the form, I can choose ROWID, but as far as i am concerned, a view does not have one...
    I really need this to work.
    Thx.
    Paul.

    View should have a rowid. To create a rowid tables have to have foreign key relation. And also in where clause you should have PK-Field-Name=FK-Filed-Name statement.
    null

  • V4.0 - Tabular form ORA-01445: cannot select ROWID from, or sample,

    Hi
    I'm creating a tabular form in version 4.0.
    The select is based on three tables all of which have primary keys, and the keys are selected, but every time I run the page I get the following error:-
    failed to parse SQL query:
    ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved table
    The query runs just fine in TOAD
    Any ideas?
    Thanks
    Mike
    select
    PRL.PERF_RATING_LINE_ID,
    PRL.PERF_RATING_LINE_ID PERF_RATING_LINE_ID_DISPLAY,
    PRL.BUSINESS_UNIT,
    PRL.EMPLID,
    ''''||PRL.REVIEW_YEAR REVIEW_YEAR,
    PRL.REVIEW_PERIOD,
    PRL.PERFORMANCE_SCORE,
    PRL.MODERATED_SCORE,
    PRL.HRM,
    PRL.COMMENTS,
    PBR.BU_DESC,
    ''''||PBR.DEPTID DEPTID,
    PBR.DEPT_DESC,
    PBR.EMPLOYEE_NAME,
    PBR.GRADE,
    PRL.SCORE_APPROVED_BY,
    PBR.TEMP_PERM,
    PBR.GENDER,
    PBR.JOB_START_DATE,
    decode(DECODE(SUBSTR(PBR.FLAG,1,5),'Job s',substr(PBR.FLAG,instr(PBR.FLAG,'~',1)+2,3)),
    'HIR','Hired','XFR','Transfer','REH','Rehire')||
    decode(SUBSTR(PBR.FLAG,1,30),'Job starts during period ~ XFR',' - '||substr(PBR.FLAG,instr(PBR.FLAG,'~',1,2)+2)) JOB_START_DETAILS,
    PBR.APPOINTMENT_DATE,
    SUBSTR(PBR.JOB_END_DETAILS,INSTR(PBR.JOB_END_DETAILS,'~',1,2)+2) JOB_END_DATE,
    SUBSTR(PBR.JOB_END_DETAILS,INSTR(PBR.JOB_END_DETAILS,'~',1,1)+2,INSTR(PBR.JOB_END_DETAILS,'~',1,2)-INSTR(PBR.JOB_END_DETAILS,'~',1,1)-2) REASON,
    PBR.JOB_GROUP,
    PBR.JOB_GROUP_DESC,
    PBR.JOBCODE,
    PBR.JOBCODE_DESC JOB_DESC,
    PBR.JOB_FAMILY,
    PBR.JOB_FAMILY_DESC,
    PBR.PBR_ID,
    MD.MGR_DEPT_ID
    from PERFORMANCE_BASE_REFRESH_V PBR,
    PERFORMANCE_RATING_LINE PRL,
    Y00_OPR_MGR_DEPT MD
    WHERE (PRL.BUSINESS_UNIT = PBR.BUSINESS_UNIT
    AND PRL.EMPLID = PBR.EMPLID
    AND PRL.REVIEW_YEAR = PBR.REVIEW_YEAR
    AND PRL.REVIEW_PERIOD = PBR.REVIEW_PERIOD)
    AND MD.OPRID = :APP_USER
    AND INSTR(':'||MD.DEPTS_MANAGED||':',':'||PBR.DEPTID||':') > 0
    AND MD.MGR_DEPT_ID > 0
    AND PBR.ADMIN_CENTRE IN
    (select c.deptid AC
    from [email protected] A,
    [email protected] C
    where A.ROWSECCLASS = C.ROWSECCLASS
    AND C.DEPTID != 'ZZZZ'
    and a.oprid = :APP_USER)
    AND (:P2210_BUSINESS_UNIT IS NULL
    OR PBR.BUSINESS_UNIT = :P2210_BUSINESS_UNIT)
    AND (:P2210_EMPLOYEE_NAME IS NULL
    OR INSTR(UPPER(PBR.EMPLOYEE_NAME),UPPER(:P2210_EMPLOYEE_NAME)) > 0)
    AND (:P2210_DEPARTMENT IS NULL
    OR PBR.DEPTID = :P2210_DEPARTMENT)
    AND (:P2210_PERFORMANCE_RATING IS NULL
    OR PBR.PERFORMANCE_SCORE = :P2210_PERFORMANCE_RATING)
    AND (:P2210_MODERATED_RATING IS NULL
    OR PBR.MODERATED_SCORE = :P2210_MODERATED_RATING)
    AND (:P2210_GRADE IS NULL
    OR PBR.GRADE = :P2210_GRADE)
    AND (:P2210_PERM_TEMP IS NULL
    OR PBR.TEMP_PERM = :P2210_PERM_TEMP)
    AND SUBSTR(NVL(PBR.JOB_END_DETAILS,'XXX'),1,3) NOT IN ('TER','TOC')
    AND PRL.SCORE_APPROVED_BY IS NULL

    Hi Marc,
    Thanks again for the quick reply and all the support the dev team is providing to us.
    Couple of question finally on this issue:
    - fixing the "copy page"/"copy validation" bug, our workaround - by making a page copy - we've found to use the standard validation on tabular form based on complex views will go away, right?
    - I made a sql trace when running the originally created tabular form page and I found the statement generated by the apex engine which gives the ORA-01446. Just wondering, would it be possible that apex is using the PK defined during the wizard instead of the rowid?
    - If not, would it be a possible enhancement request in the future to let the developer name the ROWID column optionally, and then apex will use that column as rowid instead of the ROWID? This can give flexibility for us as developers, in this case complex views (with instead of triggers) can be standard way supported. What I mean exactly is to create the above view in the testcase as follows (most of these cases there is always a base table in the view, and the rest of the tables are used as lookups, so I can pick up the desired ROWID in the view with an alias):
    CREATE OR REPLACE VIEW  CUSTOMER_ORDERS_V  AS
      SELECT cus.customer_id,
                cus.cust_last_name,
                cust_first_name,
                cus.cust_city,
                COUNT (ord.order_id) order_count,
                CUS.ROWID ROW_ID
           FROM demo_customers cus, demo_orders ord
          WHERE ord.customer_id(+) = cus.customer_id
       GROUP BY cus.customer_id,
                cus.cust_last_name,
                cust_first_name,
                cus.cust_city,
                CUS.ROWID;and then at design time, I could pick up the ROW_ID column as rowid, so all the rest of the functionality could work as working now on simple views and tables.
    What do you think on that?
    best regards,
    Peter

  • APEX 4.1 Appears to still have the bug -link enclosed, Tabular Form ROWID

    I created a tabular form on a view, specifying Primary Key, not Rowid.
    Validations were auto-generated for the three numeric updatable columns as value must be numeric.
    When running the page, I received the error:
    failed to parse SQL query:
    ORA-01445: cannot select ROWID from, or sample, a join view without a key-preserved tableDeleting the auto-generated validations allowed the page to run.
    Reading this forum post https://kr.forums.oracle.com/forums/thread.jspa?threadID=1106262, I got the impression this was fixed by 'modifying Apex to only generate validations for updatable columns'. If the development team thinks this bug is fixed, it is not as of version 4.1.

    This isn't a bug. Not all types of views and joins allow for derving the ROWID. And the ROWID is always required when using declarative validations. So if you modify the wizard-generated tabular form query, or build a tabular form on a view not supporting the use of ROWID, then you will have to remove any declarative validations. We'll look into improving the wizards to catch issues like those earlier on, and potentially also at validating a query when editign the region source, so that we can avoid having these issues raised at runtime.
    Regards,
    Marc

Maybe you are looking for

  • Stocks and Weather apps broken under 3.0?

    Hey gang- Just upgraded my 1st gen iPod Touch to 3.0. Safari and Mail work fine, so networking and wifi are all good. But the Stocks and Weather apps won't update...the progress spinner just goes continuously. Anyone else seeing this? Dave

  • Attachments in pdf are damaged and can't be opened, however they open on an Ipad

    Tried to open with several programs: Adobe reader 11.07 , PDF architect , all gave a "damaged" error. OS is Windows 8.1 Imap e-mail protocol Forwarding message to another PC was no solution, only the IPad opened the file(s)

  • Need Elaboration on using Tcode FBB1

    Hi... Please elaborate on the the functionality of FBB1, how and in which context it is used..also explain the difference between F.05 and FBB1..with an example Thnaks in advance....

  • Best app. for scanning other than "image capture"

    Yesterday I purchased a mbp (10.7.1) and my old scanning program (Photo Studio) that came with my CanoScanLIDE 600 F, is no longer compatible. I don't care for "image capture" is there an alternative (preferably free) that would work?  Thanks for any

  • Material distribution and division wise

    hi experts, I need to take report what are all the items belongs to a particular distribution and division. regards arun