Master - Details Requirement - HGrid

Hi,
I have a requirement where i need to display records on the basis of the Creation Date.
The Header section would display all the records with distinct Creation Dates. The Details section should display all the records where the creation date matches the date in the header section.
The data would be coming up from the same table. Its just that we need to club the records on the basis of the date.
Would this requirement be addressed using HGrid?
If any other thoughts please advice.
Thanks.

Yes this can be addressed by a Hgrid

Similar Messages

  • Master Detail on same page

    Hi,
    I have a custom master detail requirement. The page is currently only for CREATE, no query requirement. There are 2 custom tables involved and a common column (process_id).
    When I only have the MASTER detail on the page (VO-EO) and save it is fine, saves to table1.
    Now I want to add the ability to save 1..* records in the detail table.
    So I navigate to page, enter the master data as above, tab down to the detail section and enter a number of fields (say 3 new rows of detail).
    What are the basic steps to go about this. I appreciate there is some information in the Dev guide but it is a bit complex for what I require I think.
    I am thinking (and currently tying).
    Create new EO for detail table
    Create new VO for detail
    Create an EO association (is this needed???)
    Create a View Link between master and detail.
    Associate the VO with the same AM as the master.
    Add a new table region to the form...
    Now this all works in that I can display above. What is required to allow me to save successfully after entering the data.
    This is an urgent request, so any help much appreciated.
    Robert

    PPR to the rescue!
    Try changing the singleSelection element to include your additional field in it's targets list. eg:
    <singleSelection
      model="${bindings.OtherView1Iterator}"
      text="Select and ">
      <primaryClientAction>
        <firePartialAction
             targets="_uixState MyOtherFantasticField"
             source="OtherView112"
             event="select"/>
      </primaryClientAction>
    </singleSelection>And you'll need to add an id to your field such as:
    <messageTextInput
      model="${bindings.blah}"
      id="MyOtherFantasticField"/>Hope this helps.
    CM.

  • Error "field required" in master-detail form with FORMS 10G!!

    I have a Master-Detail Form.
    When the cursor stay in detail block and i chage the master record with the mouse, clicking in scroll bar, i get error "field required".
    In Forms 6i, works fine!!

    Master block has more than one record displayed. When I click on any item in detail (except first one) and then click on different master record (return navigation to master block, but not current record) I have FRM-40202: Field must be entered on first item in detail block.
    I found that reason is this part of clear_all_master_details procedure (automatically created by Oracle Forms):
    IF :System.Cursor_Item <> startitm THEN
    Go_Item(startitm);
    Check_Package_Failure;
    END IF;
    Does any have same experience?
    Is it Oracle bug or I am missing something?

  • Issues in Processing the Master-Detail Form values

    We have a requirement in Oracle Internet Expenses (11.5.10) to fetch the form values from the Expense Allocations Screen.
    This page is based on Multiple VOs with Master Detail relationship. The data from the VOs mentioned are displayed in the Hgrid region.
    I need to fetch the input values for three fields (from different VOs) and pass them as paramater to the database function to perform the validation.
    Here, I am creating the handle for VO objects and using the Row object getting all rows in range (getAllRowsinRange()).
    The issue here is always, the Row length() is always fetched as 1 even it has multiple rows.
    Any help on this would be highly appreciated.

    Using Select Options u will get mulitiple values also u will get values like table.
    regards,
    kumar.

  • Unable to View records in a master-detail form

    In a master-detail form, I am not able to view records of the master/detail table
    by accepting the values of the PK of the header table items.
    Please tell me the exact steps, so that I can view the detail table records based on the header table PK items.
    Thanks.

    Yes I wrote the LOV code in a different procedure. Now, the view is showing correctly. But I am now trying to update the viewed records.
    The steps I am following in View Option is as below:
    go_block('header');
    clear_block(no_validate);
    execute_query;
    proc_lov;
    go_block('item');
    execute_query;
    I am unable to commit the changes made in the blocks
    The reason it is showing is : UNABLE TO update.....I saw the display_error.
    The system is trying to update the PK part also..Why....Though PK party is clearly defined in the table as well as property palette. Pl. explain how to go about it. Uregent help is required once again.

  • Master Detail Report for PDF Printing

    Dear All,
           While trying to create a master detail report using Oracle APEX 4.2 and BI Publisher. I tried creating report queries and report layout following the below mentioned steps.
    CREATE TYPE emp_row AS OBJECT (
      EMPNO NUMBER(4),
      ENAME VARCHAR2(10),
      JOB VARCHAR2(9),
      MGR NUMBER(4),
      HIREDATE DATE,
      SAL NUMBER(7,2),
      COMM NUMBER(7,2)
    CREATE TYPE emp_tab AS TABLE OF emp_row;
    CREATE TYPE dept_row AS OBJECT (
      DEPTNO NUMBER(2),
      DNAME VARCHAR2(14),
      LOC VARCHAR2(13),
      EMP_LIST emp_tab
    SELECT SYS_XMLAGG (
      SYS_XMLGEN(
      dept_row(
      d.deptno, d.dname, d.loc,
      CAST(MULTISET(SELECT e.empno, e.ename, e.job, e.mgr, e.hiredate, e.sal, e.comm
      FROM emp e
      WHERE e.deptno = d.deptno) AS emp_tab)
      SYS.XMLGENFORMATtYPE.createFormat('DEPT')
      ) AS "XML_QUERY"
    FROM dept d
    WHERE d.deptno = 10;
    Though the above steps generates xml output while trying to generate in APEX it says unsupported datatype. Tried using DBMS_LOB as well no luck. Any inputs will be quite helpful. Should there be any other way to incorporate master detail report printing in APEX kindly advise.
    Thanks
    Ahmed

    Hi Ahmed_Jed,
    Ahmed_Jed wrote:
    Thanks Kiran for your prompt response. I tried following the steps already using this link (How To Create a Master-Detail PDF Report) somehow the detail record was not getting processed perhaps was trying to generate xml data using the above query. Any other reference will be highly appreciated.
    Regards
    Ahmed
        Well the problem lies here:
    SELECT SYS_XMLAGG (
      SYS_XMLGEN(
      dept_row(
      d.deptno, d.dname, d.loc,
      CAST(MULTISET(SELECT e.empno, e.ename, e.job, e.mgr, e.hiredate, e.sal, e.comm
      FROM emp e
      WHERE e.deptno = d.deptno) AS emp_tab)
      SYS.XMLGENFORMATtYPE.createFormat('DEPT')
      ) AS "XML_QUERY"
    FROM dept d
    WHERE d.deptno = 10;
        The Report Query itself generates XML data (in the required BI Publisher format). So, no need to generate it like this.
        As you are using table functions your query should be of the type:
    SELECT EMPNO
                , ENAME
                , JOB
                , MGR
                , HIREDATE
                , SAL
                , COMM
        FROM TABLE ( EMP_PKG.GET_EMPLOYEES ( :PXX_DEPTNO ))
        where EMP_PKG.GET_EMPLOYEES is packaged table function which returns the Object Table of type EMP_TAB mentioned above.
        When you test the above Report Query with sample DEPTNO, it will generate the sample XML, which you can use to generate Report Layout in RTF format using BI Publisher Desktop.
        Hope this helps!
    Regards,
    Kiran

  • Using bind variables in the model view for master detail

    Hi all,
    I have a master-detail views setup on the following two queries.
    In the first query below - I use two bind variables to collect the start and end date.
    you have to add (and :startDate = :startDate and :endDate = :endDate) or you will get errors - bind not defined in sql
    I then use the viewQueryCriteria to collect the data on a search panel - so far so good. (Make the bind variables required) along with the other criteria.
    The bind variables are displayed in the search panel and the data is entered correctly.
    The query executes and all is happy.
    VIEWOBJECT1
    SELECT DepositAccounts.COA_ID,
    ... ChartOfAccounts.ACCOUNT_CODE || ' ' || ChartOfAccounts.ACCOUNT_TITLE as description
    FROM DEPOSIT_ACCOUNTS DepositAccounts, DEPOSIT_ACCOUNT_DETAILS DepositAccountDetails, CHART_OF_ACCOUNTS ChartOfAccounts
    WHERE DepositAccounts.ID = DepositAccountDetails.DEP_ACC_ID
    and ChartOfAccounts.id = DepositAccountDetails.COA_ID
    and :startDate = :startDate and :endDate = :endDate
    Now I add the summation of a value (AMOUNT) to the view object (java - create view impl) to the VOViewRowImpl
    and everything works - the value is shown in the transient attribute formatted and looking nice.
    VIEWOBJECT2
    SELECT PostingBatchAccounts.AMOUNT,
    FROM POSTING_BATCH_ACCOUNTS PostingBatchAccounts, POSTING_BATCHES PostingBatches
    where PostingBatchAccounts.PB_ID = PostingBatches.ID
    and PostingBatches.SOURCE_DATE between :startDate and :endDate
    Now I need to add the start date and end date to the child query - before the view executes (or the summation is calculated).
    The attributes are in the where clause (PostingBatches.SOURCE_DATE between :startDate and :endDate) in VIEWOBJECT2 which is the child.
    I need the child records and the summation to work with the date restrictions.
    I would assume you could get access to the child view in the VOViewImpl file and set the bind variables there.
    Everything I find is based on the JSF - not the model layer - this should be fairly easy (and common). can anyone give me a hand on this?

    Hi all,
    I have a master-detail views setup on the following two queries.
    In the first query below - I use two bind variables to collect the start and end date.
    you have to add (and :startDate = :startDate and :endDate = :endDate) or you will get errors - bind not defined in sql
    I then use the viewQueryCriteria to collect the data on a search panel - so far so good. (Make the bind variables required) along with the other criteria.
    The bind variables are displayed in the search panel and the data is entered correctly.
    The query executes and all is happy.
    VIEWOBJECT1
    SELECT DepositAccounts.COA_ID,
    ... ChartOfAccounts.ACCOUNT_CODE || ' ' || ChartOfAccounts.ACCOUNT_TITLE as description
    FROM DEPOSIT_ACCOUNTS DepositAccounts, DEPOSIT_ACCOUNT_DETAILS DepositAccountDetails, CHART_OF_ACCOUNTS ChartOfAccounts
    WHERE DepositAccounts.ID = DepositAccountDetails.DEP_ACC_ID
    and ChartOfAccounts.id = DepositAccountDetails.COA_ID
    and :startDate = :startDate and :endDate = :endDate
    Now I add the summation of a value (AMOUNT) to the view object (java - create view impl) to the VOViewRowImpl
    and everything works - the value is shown in the transient attribute formatted and looking nice.
    VIEWOBJECT2
    SELECT PostingBatchAccounts.AMOUNT,
    FROM POSTING_BATCH_ACCOUNTS PostingBatchAccounts, POSTING_BATCHES PostingBatches
    where PostingBatchAccounts.PB_ID = PostingBatches.ID
    and PostingBatches.SOURCE_DATE between :startDate and :endDate
    Now I need to add the start date and end date to the child query - before the view executes (or the summation is calculated).
    The attributes are in the where clause (PostingBatches.SOURCE_DATE between :startDate and :endDate) in VIEWOBJECT2 which is the child.
    I need the child records and the summation to work with the date restrictions.
    I would assume you could get access to the child view in the VOViewImpl file and set the bind variables there.
    Everything I find is based on the JSF - not the model layer - this should be fairly easy (and common). can anyone give me a hand on this?

  • Filter on Master-Detail

    Build JDEVADF_11.1.2.0.0_GENERIC_110531.1615.6017
    Hello,
    I have a Master Detail View. I show the objects of the views in a single table. I can filter the objects by Master View, but not of the detail view.
    What should I do to the elements of detailed view can also filter?
    <af:table value="#{bindings.MyView1.collectionModel}" var="row"
                                          rows="#{bindings.MyView1.rangeSize}"
                                          emptyText="#{bindings.MyView1.viewable ? 'No data to display.' : 'Access Denied.'}"
                                          fetchSize="#{bindings.MyView1.rangeSize}" rowBandingInterval="0"
                                          filterModel="#{bindings.MyView1Query.queryDescriptor}"
                                          queryListener="#{bindings.MyView1Query.processQuery}" filterVisible="true"
                                          varStatus="vs" selectedRowKeys="#{bindings.MyView1.collectionModel.selectedRow}"
                                          selectionListener="#{bindings.MyView1.collectionModel.makeCurrent}"
                                          rowSelection="single" id="t1">
                                    <af:column sortProperty="#{bindings.MyView1.hints.Ref.name}" filterable="true"
                                               sortable="true" headerText="#{bindings.MyView1.hints.Ref.label}" id="c1">
                                        <af:inputText value="#{row.bindings.Ref.inputValue}"
                                                      label="#{bindings.MyView1.hints.Ref.label}"
                                                      required="#{bindings.MyView1.hints.Ref.mandatory}"
                                                      columns="#{bindings.MyView1.hints.Ref.displayWidth}"
                                                      maximumLength="#{bindings.MyView1.hints.Ref.precision}"
                                                      shortDesc="#{bindings.MyView1.hints.Ref.tooltip}" id="it1">
                                            <f:validator binding="#{row.bindings.Ref.validator}"/>
                                            <af:convertNumber groupingUsed="false"
                                                              pattern="#{bindings.MyView1.hints.Ref.format}"/>
                                        </af:inputText>
                                    </af:column>
                                    <af:column sortProperty="#{bindings.MyView1.hints.Description.name}" filterable="true"
                                               sortable="true" headerText="#{bindings.MyView1.hints.Description.label}"
                                               id="c2">
                                        <af:inputText value="#{row.bindings.Description.inputValue}"
                                                      label="#{bindings.MyView1.hints.Description.label}"
                                                      required="#{bindings.MyView1.hints.Description.mandatory}"
                                                      columns="#{bindings.MyView1.hints.Description.displayWidth}"
                                                      maximumLength="#{bindings.MyView1.hints.Description.precision}"
                                                      shortDesc="#{bindings.MyView1.hints.Description.tooltip}" id="it2">
                                            <f:validator binding="#{row.bindings.Description.validator}"/>
                                        </af:inputText>
                                    </af:column>
                                    <af:column sortProperty="#{bindings.MyView1.hints.MYAddrView.FkProperty.name}"
                                               filterable="true" sortable="true"
                                               headerText="#{bindings.MyView1.hints.MYAddrView.FkProperty.label}"
                                               id="c15">
                                        <af:inputText value="#{row.MYAddrView.bindings.FkProperty.inputValue}"
                                                      label="#{bindings.MyView1.hints.MYAddrView.FkProperty.label}"
                                                      required="#{bindings.MyView1.hints.MYAddrView.FkProperty.mandatory}"
                                                      columns="#{bindings.MyView1.hints.MYAddrView.FkProperty.displayWidth}"
                                                      maximumLength="#{bindings.MyView1.hints.MYAddrView.FkProperty.precision}"
                                                      shortDesc="#{bindings.MyView1.hints.MYAddrView.FkProperty.tooltip}"
                                                      id="it15">
                                            <f:validator binding="#{row.MYAddrView.bindings.FkProperty.validator}"/>
                                            <af:convertNumber groupingUsed="false"
                                                              pattern="#{bindings.MyView1.hints.MYAddrView.FkProperty.format}"/>
                                        </af:inputText>
                                    </af:column>
                                    <af:column sortProperty="#{bindings.MyView1.hints.MYAddrView.AddrCity.name}"
                                               filterable="true" sortable="true"
                                               headerText="#{bindings.MyView1.hints.MYAddrView.AddrCity.label}" id="c16">
                                        <af:inputText value="#{row.MYAddrView.bindings.AddrCity.inputValue}"
                                                      label="#{bindings.MyView1.hints.MYAddrView.AddrCity.label}"
                                                      required="#{bindings.MyView1.hints.MYAddrView.AddrCity.mandatory}"
                                                      columns="#{bindings.MyView1.hints.MYAddrView.AddrCity.displayWidth}"
                                                      maximumLength="#{bindings.MyView1.hints.MYAddrView.AddrCity.precision}"
                                                      shortDesc="#{bindings.MyView1.hints.MYAddrView.AddrCity.tooltip}"
                                                      id="it16">
                                            <f:validator binding="#{row.MYAddrView.bindings.AddrCity.validator}"/>
                                        </af:inputText>
                                    </af:column>
                                    <af:column sortProperty="#{bindings.MyView1.hints.MYAddrView.AddrZip.name}"
                                               filterable="true" sortable="true"
                                               headerText="#{bindings.MyView1.hints.MYAddrView.AddrZip.label}" id="c17">
                                        <af:inputText value="#{row.MYAddrView.bindings.AddrZip.inputValue}"
                                                      label="#{bindings.MyView1.hints.MYAddrView.AddrZip.label}"
                                                      required="#{bindings.MyView1.hints.MYAddrView.AddrZip.mandatory}"
                                                      columns="#{bindings.MyView1.hints.MYAddrView.AddrZip.displayWidth}"
                                                      maximumLength="#{bindings.MyView1.hints.MYAddrView.AddrZip.precision}"
                                                      shortDesc="#{bindings.MyView1.hints.MYAddrView.AddrZip.tooltip}"
                                                      id="it17">
                                            <f:validator binding="#{row.MYAddrView.bindings.AddrZip.validator}"/>
                                        </af:inputText>
                                    </af:column>
    </af:table>thank you
    regards

    Hi Shay,
    thank you for your reply.
    I have two view objects based on two DB-tables. They are in relation with a View Link. So I have under my DataControls:
    MyView1
    -> MYADDRView.
    I push my MyView1(Master) on the jsp and I select ADFTable. and I click to "Enable Sorting" and "Enable Filtering".
    For the fields belonging to MyView1, I can filter the data, but when I want to filter a field belongs MYADDR, i have the error message:
    ADF_FACES-60098:Faces-Gültigkeitsdauer empfängt nicht behandelte Exceptions in Phase INVOKE_APPLICATION 5
    javax.el.ELException: java.lang.NullPointerException
         at com.sun.el.parser.AstValue.invoke(Unknown Source)
         at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodExpression(UIXComponentBase.java:1579)
         at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:158)
         at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:483)
         at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:157)
         at org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:279)
         at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:145)
         at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:479)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1129)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:353)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:204)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:173)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:121)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:180)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Caused by: java.lang.NullPointerException
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding._parseViewCriteriaItem(FacesCtrlSearchBinding.java:5268)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding._parseViewCriteriaItems(FacesCtrlSearchBinding.java:5028)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding._addFilterCriteria(FacesCtrlSearchBinding.java:4894)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding.processQuery(FacesCtrlSearchBinding.java:443)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         ... 51 more
    <RegistrationConfigurator> <handleError> ADF_FACES-60096:Server-Exception während PPR, #1
    javax.el.ELException: java.lang.NullPointerException
         at com.sun.el.parser.AstValue.invoke(Unknown Source)
         at com.sun.el.MethodExpressionImpl.invoke(Unknown Source)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.broadcastToMethodExpression(UIXComponentBase.java:1579)
         at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:158)
         at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:483)
         at org.apache.myfaces.trinidad.component.UIXCollection.broadcast(UIXCollection.java:157)
         at org.apache.myfaces.trinidad.component.UIXTable.broadcast(UIXTable.java:279)
         at oracle.adf.view.rich.component.UIXTable.broadcast(UIXTable.java:145)
         at oracle.adf.view.rich.component.rich.data.RichTable.broadcast(RichTable.java:479)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.broadcastEvents(LifecycleImpl.java:1129)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:353)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:204)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:312)
         at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
         at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
         at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:300)
         at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:173)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:121)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:468)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:293)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:199)
         at org.apache.myfaces.trinidad.webapp.TrinidadFilter.doFilter(TrinidadFilter.java:92)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.library.webapp.LibraryFilter.doFilter(LibraryFilter.java:180)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:111)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:313)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:413)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:94)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:161)
         at oracle.security.jps.ee.http.JpsFilter.doFilter(JpsFilter.java:71)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.dms.servlet.DMSServletFilter.doFilter(DMSServletFilter.java:136)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.RequestEventsFilter.doFilter(RequestEventsFilter.java:27)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3715)
         at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3681)
         at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
         at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
         at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2277)
         at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2183)
         at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1454)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Caused by: java.lang.NullPointerException
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding._parseViewCriteriaItem(FacesCtrlSearchBinding.java:5268)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding._parseViewCriteriaItems(FacesCtrlSearchBinding.java:5028)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding._addFilterCriteria(FacesCtrlSearchBinding.java:4894)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlSearchBinding.processQuery(FacesCtrlSearchBinding.java:443)
         at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
         at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         ... 51 moreregards

  • Clarification on Master - Detail events usage on OBIEE 11g dashoards

    Hi ,
    Can Master - Detail events feature be used within two different analysis on dashboard ?
    If yes , please let me know how .
    If no , are there any alternatives for the below requirement :
    1. I have a pivot table consisting of one dimension hierarchy (region) against revenue measure .
    2. And one Bar graph , showing data on quater & region basis revenue .
    Now by clicking one of the dimesion members (INDIA,USA) of region hierarchy , the bar graph will get changed accordingly .
    For example , if by default it is total region and "new york" under USA region is clicked then the bar chart will change accordingly .
    Thanks

    Thanks for the link veeravalli !!
    I don't want the user to navigate to any content , so can't use action links .
    However , Can u please let me know whether this master detail event will work on different analysis (not from the same report views , i.e a between a pivot table view from report A and a bar chart report view from report B ) ?
    Thanks

  • Detail-Disclosure problem with Master- Detail VO

    Hi,
    I have UIX pages based on Master - Detail VO, detail data being shown when you press Detail button on the left, detail data display in the BC4J Table correctly, but I am able to update only the last record of the rowset. when I click on the first master detail and press update button i get Null Pointer Exeception error and other problem is that my detail data has sorted headers, when i click on the sorted column header, it close the Detail portion on the Table.
    Here is UIX page listing, please any one review the code and let me what is wrong
    Thanks
    View Page
    <?xml version="1.0" encoding="windows-1252" ?>
    <page xmlns="http://xmlns.oracle.com/uix/controller"
    xmlns:ctrl="http://xmlns.oracle.com/uix/controller"
    xmlns:ui="http://xmlns.oracle.com/uix/ui"
    xmlns:bc4j="http://xmlns.oracle.com/uix/bc4j"
    xmlns:html="http://www.w3.org/TR/REC-html40"
    xmlns:viewpage="http://www.example.org/siriusbilling/templates">
    <ctrl:head xmlns="http://www.w3.org/TR/REC-html40">
    <title>View Properties</title>
    </ctrl:head>
    <templates xmlns="http://xmlns.oracle.com/uix/ui">
    <templateImport source="templates/SiriusBilling.uit"/>
    </templates>
    <bc4j:registryDef>
    <bc4j:rootAppModuleDef name="PropertiesForeignKeyLink1AppModule"
    definition="siriusbilling.SiriusBCModule"
    releaseMode="stateful" >
    <bc4j:viewObjectDef name="PropertyTypesMasterView"
    rangeSize="2" />
    <bc4j:viewObjectDef name="PropertiesDetailView"
    rangeSize="5" />
    </bc4j:rootAppModuleDef>
    </bc4j:registryDef>
    <ctrl:content xmlns="http://xmlns.oracle.com/uix/ui"
    xmlns:data="http://xmlns.oracle.com/uix/ui">
    <viewpage:siriusPageLayout>
    <pageHeader>
    <globalHeader selectedIndex="0">
    <contents>
    <link text="View Properties" />
    </contents>
    </globalHeader >
    </pageHeader>
    <contents>
    <try xmlns="http://xmlns.oracle.com/uix/ui"
    xmlns:data="http://xmlns.oracle.com/uix/ui" >
    <catch>
    <displayException />
    </catch>
    <contents>
    <!-- this will contain any validation errors after form
    submission -->
    <messageBox automatic="true" />
    <bc4j:rootAppModuleScope name="PropertiesForeignKeyLink1AppModule" >
    <contents>
    <header text="Properties Search" >
    <contents>
    <form name="search" method="POST" >
    <contents>
    <inlineMessage prompt="Search by:" vAlign="middle" >
    <contents>
    <bc4j:viewObjectScope name="PropertiesDetailView" >
    <contents>
    <flowLayout>
    <contents>
    <choice name="attrName"
    data:selectedValue="attrName@ctrl:page"
    shortDesc="Search Column">
    <contents>
    <option text="Property Id" value="PropertyId" />
    <option text="Property Name" value="PropertyName" />
    <option text="Property Description" value="PropertyDescription" />
    <option text="Unit Of Measure" value="UnitOfMeasure" />
    </contents>
    </choice>
    <textInput prompt="Criteria" name="attrValue" columns="20"
    data:text="attrValue@ctrl:page"
    shortDesc="Search Criteria for Propeties"/>
    </contents>
    </flowLayout>
    </contents>
    </bc4j:viewObjectScope>
    </contents>
    <end>
    <submitButton text="Go" ctrl:event="search" />
    </end>
    </inlineMessage>
    </contents>
    </form>
    </contents>
    </header>
    <spacer width="10"/>
    <separator />
    <header text="Property Types" >
    <contents>
    <form name="viewForm" method="POST" >
    <contents>
    <bc4j:viewObjectScope name="PropertyTypesMasterView" >
    <contents>
    <bc4j:table name="viewPropertyTypeTable" automatic="false"
    width="100%" alternateText="No rows found"
    formSubmitted="true"
    partialRenderMode="self"
    data:detailDisclosure="tableDetails@ctrl:eventResult">
    <!-- the key identifying the current row in the table -->
    <bc4j:keyStamp>
    <bc4j:rowKey name="key" />
    </bc4j:keyStamp>
    <contents>
    <!-- placing the region in automatic mode will cause the key
    named child to be rendered, followed by each attribute
    in the ViewObject using the attrStamp named child. -->
    <!-- A bc4j:column element is added for each attribute
    in the ViewObject. -->
    <bc4j:column attrName="PropertyType">
    <columnHeader>
    <bc4j:sortableHeader text="Property Type"/>
    </columnHeader>
    <contents>
    <bc4j:input readOnly="true"/>
    </contents>
    </bc4j:column>
    <bc4j:column attrName="TableName">
    <columnHeader>
    <bc4j:sortableHeader text="Table Name"/>
    </columnHeader>
    <contents>
    <bc4j:input readOnly="true"/>
    </contents>
    </bc4j:column>
    <bc4j:column attrName="Comments" >
    <columnHeader>
    Comments
    </columnHeader>
    <contents>
    <bc4j:input readOnly="true"/>
    </contents>
    </bc4j:column>
    </contents>
    <detail>
    <flowLayout>
    <contents>
    <header text="Properties Detail">
    <contents>
    <spacer width="10"/>
    <bc4j:viewObjectScope name="PropertiesDetailView" >
    <contents>
    <!-- placing the table in automatic mode will cause the table
    to contain the keyStamp named child followed by the
    columnStamp named child for each attribute in the
    ViewObject. -->
    <bc4j:table name="viewTable" automatic="false"
    width="100%" alternateText="No rows found"
    formSubmitted="true"
    partialRenderMode="self">
    <tableSelection>
    <!-- single selection for each row in the table -->
    <singleSelection selectedIndex="0" text="Select Row and ...">
    <contents>
    <submitButton text="Create" ctrl:event="create" />
    <!-- the update button causes the currently selected
    row to be sent to the update page -->
    <submitButton text="Update"
    ctrl:event="update" />
    <!-- the delete button causes the currently selected
    row to be removed -->
    <submitButton text="Delete"
    ctrl:event="delete" />
    </contents>
    </singleSelection>
    </tableSelection>
    <!-- the key identifying the current row in the table -->
    <bc4j:keyStamp>
    <bc4j:rowKey name="key" />
    </bc4j:keyStamp>
    <contents>
    <!-- A bc4j:column element is added for each attribute
    in the ViewObject. -->
    <bc4j:column attrName="PropertyId">
    <columnHeader>
    <bc4j:sortableHeader text="Property Id"/>
    </columnHeader>
    <contents>
    <bc4j:input readOnly="true"/>
    </contents>
    </bc4j:column>
    <bc4j:column attrName="PropertyName">
    <columnHeader>
    <bc4j:sortableHeader text="Property Name"/>
    </columnHeader>
    <contents>
    <bc4j:input readOnly="true"/>
    </contents>
    </bc4j:column>
    <bc4j:column attrName="PropertyDescription">
    <columnHeader>
    <bc4j:sortableHeader text="Property Description"/>
    </columnHeader>
    <contents>
    <bc4j:input readOnly="true"/>
    </contents>
    </bc4j:column>
    <bc4j:column attrName="UnitOfMeasure">
    <columnHeader>
    <bc4j:sortableHeader text="Unit of Measure"/>
    </columnHeader>
    <contents>
    <bc4j:input readOnly="true"/>
    </contents>
    </bc4j:column>
    </contents>
    </bc4j:table>
    </contents>
    </bc4j:viewObjectScope>
    <formValue name="disclosed" value="true" />
    </contents>
    </header>
    </contents>
    </flowLayout>
    </detail>
    </bc4j:table>
    </contents>
    </bc4j:viewObjectScope>
    </contents>
    </form>
    </contents>
    </header>
    </contents>
    </bc4j:rootAppModuleScope>
    </contents>
    </try>
    </contents>
    </viewpage:siriusPageLayout>
    </ctrl:content>
    <handlers>
    <event name="search" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertiesDetailView" >
    <!-- search for the view criteria -->
    <bc4j:findByExample>
    <bc4j:exampleRow ignoreCase="true" >
    <bc4j:exampleAttribute>
    <bc4j:nameBinding><bc4j:parameter name="attrName" /></bc4j:nameBinding>
    <bc4j:valueBinding><bc4j:parameter name="attrValue" /></bc4j:valueBinding>
    </bc4j:exampleAttribute>
    </bc4j:exampleRow>
    </bc4j:findByExample>
    <bc4j:executeQuery/>
    <!-- store the current search criteria as page properties -->
    <bc4j:setPageProperty name="attrName" >
    <bc4j:parameter name="attrName" />
    </bc4j:setPageProperty>
    <bc4j:setPageProperty name="attrValue" >
    <bc4j:parameter name="attrValue" />
    </bc4j:setPageProperty>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    <event name="first" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertyTypesMasterView" >
    <!-- navigate to the first department -->
    <bc4j:first/>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    <event name="previous" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertyTypesMasterView" >
    <!-- navigate to the previous department -->
    <bc4j:previous/>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    <event name="next" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertyTypesMasterView" >
    <!-- navigate to the next department -->
    <bc4j:next/>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    <event name="last" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertyTypesMasterView" >
    <!-- navigate to the last department -->
    <bc4j:last/>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    <event name="sort" source="viewTable" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertiesDetailView" >
    <!-- sort by the submitted attribute name -->
    <bc4j:sort/>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    <event name="sort" source="viewPropertyTypeTable" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertyTypesMasterView" >
    <!-- sort by the submitted attribute name -->
    <bc4j:sort/>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    <event name="goto" source="viewPropertyTypeTable" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertyTypesMasterView" >
    <!-- navigate to the submitted range -->
    <bc4j:goto/>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    <event name="goto" source="viewTable" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertiesDetailView" >
    <!-- navigate to the submitted range -->
    <bc4j:goto/>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    <event name="create" >
    <!-- forward to the create page -->
    <ctrl:go name="InsertProperties" redirect="true" />
    </event>
    <event name="update" >
    <!-- forward to the update page, passing the selected key
    as a page property -->
    <ctrl:go name="UpdateProperties" redirect="true" >
    <ctrl:property name="key" >
    <ctrl:selection name="viewTable" key="key" />
    </ctrl:property>
    </ctrl:go>
    </event>
    <event name="delete" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertiesDetailView" >
    <!-- find the selected Row -->
    <bc4j:findRowByKey>
    <bc4j:keyBinding>
    <bc4j:selectionKey name="viewTable" key="key" />
    </bc4j:keyBinding>
    <bc4j:handlers>
    <!-- remove the selected ViewObject row -->
    <bc4j:removeRow />
    <!-- execute the query to eliminate dead row access -->
    <bc4j:executeQuery/>
    </bc4j:handlers>
    </bc4j:findRowByKey>
    </bc4j:findViewObject>
    <!-- commit the transaction, forwards to self automatically -->
    <bc4j:commit/>
    </bc4j:findRootAppModule>
    </event>
    <event name="show">
    <method class="servlet.showDetails" method="doHideShowEvent" />
    </event>
    <event name="hide">
    <method class="servlet.showDetails" method="doHideShowEvent" />
    </event>
    </handlers>
    </page>
    Update View
    <?xml version="1.0" encoding="windows-1252" ?>
    <page xmlns="http://xmlns.oracle.com/uix/controller"
    xmlns:ctrl="http://xmlns.oracle.com/uix/controller"
    xmlns:ui="http://xmlns.oracle.com/uix/ui"
    xmlns:bc4j="http://xmlns.oracle.com/uix/bc4j"
    xmlns:html="http://www.w3.org/TR/REC-html40"
    xmlns:updatepage="http://www.example.org/siriusbilling/templates">
    <ctrl:head xmlns="http://www.w3.org/TR/REC-html40">
    <title>Update Properties</title>
    </ctrl:head>
    <templates xmlns="http://xmlns.oracle.com/uix/ui">
    <templateImport source="templates/SiriusBilling.uit"/>
    </templates>
    <bc4j:registryDef>
    <bc4j:rootAppModuleDef name="PropertiesForeignKeyLink1AppModule"
    definition="siriusbilling.SiriusBCModule"
    releaseMode="stateful" >
    <bc4j:viewObjectDef name="PropertiesDetailView" >
    <bc4j:rowDef name="UpdatePropertiesDetailView" autoCreate="false" usesCurrency="true">
    <bc4j:propertyKey name="key" />
    </bc4j:rowDef>
    </bc4j:viewObjectDef>
    <!-- Display only 20 rows -->
    <bc4j:viewObjectDef name="PropertyTypesView" rangeSize="20" >
    <bc4j:rowDef name="UpdatePropertyTypesView" autoCreate="false">
    <bc4j:propertyKey name="key" />
    </bc4j:rowDef>
    </bc4j:viewObjectDef>
    </bc4j:rootAppModuleDef>
    </bc4j:registryDef>
    <ctrl:content xmlns="http://xmlns.oracle.com/uix/ui"
    xmlns:data="http://xmlns.oracle.com/uix/ui">
    <updatepage:siriusPageLayout>
    <pageHeader>
    <globalHeader selectedIndex="0">
    <contents>
    <link text="Update Property" />
    </contents>
    </globalHeader >
    </pageHeader>
    <contents>
    <try xmlns="http://xmlns.oracle.com/uix/ui"
    xmlns:data="http://xmlns.oracle.com/uix/ui" >
    <catch>
    <displayException />
    </catch>
    <contents>
    <switcher childName="default">
    <boundAttribute name="childName">
    <if>
    <comparison type="equals">
    <dataObject select="key" source="ctrl:page"/>
    <dataObject source="ui:null"/>
    </comparison>
    <fixed text="error"/>
    </if>
    </boundAttribute>
    <case name="error">
    <header text="Required page property 'Property Type' missing. Cannot display page."/>
    </case>
    <case name="default">
    <flowLayout>
    <contents>
    <!-- this will contain any validation errors after form
    submission -->
    <messageBox automatic="true" />
    <script>
    <contents>
    function UOMLovCallBack(lovwin, event)
    var value = lovwin.returnUOMValue;
    if (value!=(void 0))
    document.updateForm.UnitOfMeasure.value = lovwin.returnUOMValue;
    </contents>
    </script>
    <form name="updateForm" method="POST" >
    <contents>
    <!-- we cannot implicitly determine that events
    will be triggered because submit buttons are
    outside the form scope, so add the placeholder
    explicitly -->
    <formParameter name="event" />
    <!-- layout the fields in two columns -->
    <spacer width="10"/>
    <tableLayout width="80%"
    cellPadding="2"
    hAlign="center">
    <contents>
    <bc4j:rootAppModuleScope name="PropertiesForeignKeyLink1AppModule" >
    <contents>
    <bc4j:viewObjectScope name="PropertiesDetailView" >
    <contents>
    <bc4j:rowScope name="UpdatePropertiesDetailView" >
    <contents>
    <bc4j:messageChoice prompt="Property Type" attrName="PropertyType" name="PropertyType">
    <contents>
    <bc4j:optionList voName="PropertyTypesView" attrName="PropertyType" textAttributeName="PropertyType" size="30"/>
    </contents>
    </bc4j:messageChoice>
    <bc4j:messageInput prompt="Property Id" vAlign="left" attrName="PropertyId" size="30"/>
    <bc4j:messageInput prompt="Property Name" attrName="PropertyName" size="30"/>
    <bc4j:messageInput prompt="Property Description" attrName="PropertyDescription" size="30" />
    <bc4j:messageLovField prompt="Unit Of Measure"
    attrName="UnitOfMeasure"
    name="UnitOfMeasure"
    onClick="openWindow(window,
    'UOMLov.uix',
    'lovwin',
    {width:480, height:300},
    true,
    'dialog',
    UOMLovCallBack);
    return false;" />
    </contents>
    </bc4j:rowScope>
    </contents>
    </bc4j:viewObjectScope>
    </contents>
    </bc4j:rootAppModuleScope>
    </contents>
    </tableLayout>
    </contents>
    </form>
    </contents>
    <contents>
    <contentFooter>
    <contents>
    <html:center>
    <!-- place a row of buttons below the content -->
    <pageButtonBar>
    <contents>
    <!-- the cancel button performs a transaction rollback -->
    <button text="Cancel" ctrl:event="cancel" />
    <!-- the update button submits the user-entered
    form data -->
    <submitButton text="Update" formName="updateForm"
    ctrl:event="apply" />
    </contents>
    </pageButtonBar>
    </html:center>
    </contents>
    </contentFooter>
    </contents>
    </flowLayout>
    </case>
    </switcher>
    </contents>
    </try>
    </contents>
    </updatepage:siriusPageLayout>
    </ctrl:content>
    <handlers>
    <event name="cancel" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- rollback the current transaction -->
    <bc4j:rollback/>
    <!-- forward to the summary page -->
    <ctrl:go name="ViewProperties" redirect="true" />
    </bc4j:findRootAppModule>
    </event>
    <event name="apply" >
    <!-- using the ApplicationModule causes it to be checked out from the
    ApplicationPool. It is released using stateful mode. -->
    <bc4j:findRootAppModule name="PropertiesForeignKeyLink1AppModule" >
    <!-- establish the ViewObject scope -->
    <bc4j:findViewObject name="PropertiesDetailView" >
    <!-- find the row by key, falling back on a new default
    row if the key is not found -->
    <bc4j:findRow name="UpdatePropertiesDetailView" >
    <!-- set each attribute explicitly -->
    <bc4j:setAttribute name="PropertyId" />
    <bc4j:setAttribute name="PropertyType" />
    <bc4j:setAttribute name="PropertyName" />
    <bc4j:setAttribute name="PropertyDescription" />
    <bc4j:setAttribute name="UnitOfMeasure" />
    <!-- commit the transaction -->
    <bc4j:commit/>
    <bc4j:executeQuery/>
    <!-- forward to the summary page -->
    <ctrl:go name="ViewProperties" redirect="true" />
    </bc4j:findRow>
    </bc4j:findViewObject>
    </bc4j:findRootAppModule>
    </event>
    </handlers>
    </page>

    I think the detailDisclosure state needs to be saved and retrieved from the session.
    I'm not sure using a table with singleSelection inside a detail disclosure is supported. Are you doing master-detail inside of detail disclosure? Detail disclosure is not really meant for that. In jdev 10g preview we make hooking up a master-detail easy. Here's a link to some doc about it.
    http://otn.oracle.com/products/jdev/collateral/tutorials/9050/adfuix_tut.html#Create%20a%20Master-Detail%20page

  • Master detail new line error

    Hi all, Can anyone help me with this problem?
    I have created a master detail table but have had problems with adding new detail lines.
    The detail region contains an advanced table with an addTableRow bean set in the footer. I wish to navigate to a new page when the ‘add new row’ button is selected so I have set the ‘insert rows automatically’ property to false. I have been able to capture the event in my controller and call the new page and then access the application module, however I do not seem to be able to set a property in the new child line from an attribute in the parent line.
    //in my AM I have called…
    public void CreateLine()
    //get child vo that is to have line added
    DoiLinesVOImpl vo = (DoiLinesVOImpl) getDoiLinesVO1();
    if (!vo.isExecuted()) vo.executeQuery();
    //find parent vo to determine which questionId the line relates to
    OAViewObject hvo = (OAViewObject)findViewObject("DoiDecQuestionsVO1");
    OARow hRow = (OARow)hvo.getCurrentRow();
    Number sid = (Number) hRow.getAttribute("QuestionId ");
    System.out.println ( " qid= " + qid );
    if ( vo != null)
    vo.setMaxFetchSize(0);
    Row vRow = vo.createRow();
    vo.insertRow(vRow);
    vRow.setAttribute("QuestionId",qid);
    vRow.setNewRowState(Row.STATUS_INITIALIZED);
    Initially the page was running, however it was only ever showing the id for the first line, regardless of which child table I was select add new line on. Now the new page errors and when I click on exception details the page does not show any error details
    Can anyone see anything wrong with the code in the AM or have any suggestions as to what else may be wrong. Is it actually possible to do what I am trying to do? My aim is to have a table of questions and then a table region under the detail region of each question. Either no lines, one line or multiple lines can be added under each questions details. The questions may have slightly different required fields so I would like to navigate to a new page and then back to the main page when save is selected.
    Any insights into what I am doing wrong or how I might achive my requirement would be very much appreciated.
    Mike.

    Ok, I have now got the page to stop erroring.
    I have created a new VO instance of the child EO in the application module and used the new vo in the seperate create page attributes, however when I query the current row against the parent vo I am still getting the value from the first line, not the selected parent line.
    mike.

  • Master/detail/detail

    using jsf/adf bc. I've got a jspx which needs to display data from a master/detail/detail setup. In a 'create' mode, i'm programmatically handling the create/insert stuff for the new master and detail rows. I'll try to explain my problem using a Departments/Employees/EmployeeAddresses example.
    I've created a view link between Departments and Employees. I've created a view link between Employees and EmployeeAddresses. These have all been added to the active data model so that it looks like this:
    DepartmentView
    -Employees via Employees1
    -EmployeeAddresses via EmployeeAddresses1
    The code i use to create/insert the master and subsequent detail rows is as follows:
    //create master (department) row
    ViewObjectImpl vo = getDepartmentView();
    Row departmentRow = vo.createRow();
    vo.insertRow(departmentRow);
    //create the detail (Employees) row to be associated with its master (Department)
    ViewObjectImpl employeesVO = getEmployees();
    Row newEmployeeRow = employeesVO.createRow();
    employeesVO.insertRow(newEmployeeRow);
    //create the detail/detail (EmployeeAddresses) row to be associated with its master (Employees)
    ViewObjectImpl employeeAddressVO = getEmployeeAddresses();
    Row newEmployeeAddressRow = employeeAddressVO.createRow();
    employeeAddressVO.insertRow(newEmployeeAddressRow);
    The problem seems to be with the last level detail row, the one for EmployeeAddresses. creating in this fashion doesn't seem to associate the new EmployeeAddress row to it's master, Employees. Although when the page is rendered, i can see that new rows have indeed been created/inserted for each of these view objects. After filling in valid values and committing, i get the JBO-27014 (Attribute is required) error for each attribute in the EmployeeAddresses table. So, it's as if this EmployeeAddress row that was created is not tied in with the Employees row, which is in turn tied in to the Department row.
    Note: if i remove the create/insert code for this last detail row (EmployeeAddress) and simply have a basic master/detail setup between Department and Employee, everything works great when i create new rows this way and save. It seems that my problem stems from the fact that i'm adding another detail level onto my master/detail setup. Is there something different i should be doing?

    Hi,
    Thanks guys for your response.. i did it myself following way..
    created 2 view links. having same source.
    added both vos to same source in application module it self.
    Regards,
    Santosh.

  • Many to many master detail form

    Hi All,
    APEX 3.1.2 on SuSE 10 Oracle 10.2.0.3 64 bit
    I am new to APEX, but used OAS several years ago. Back then I hardcoded all htp.print commands. We are building an intra-team application to track system relationships. For example,
    web interface 3 --> application server 2 --> database 6
    Our tables are similar to the following
    SYSTEMS
    system_id (unique sequence)
    system_type_id (database, app server, apache, etc.)
    SYSTEM_TO_SYSTEM
    publishing_system_id - number
    consuming_system_id - number
    We would like to have a master detail form where we would query database 6 for example, and then see all related systems one level below it (application server 2 in the example above). I have been able to query the related systems and show them in a drop down pick list on the detail form, but I cannot edit them.
    The wizard asked for the primary key of the detail table, which in this case is not a sequence generated value, but a pick from a systems table lookup on system_id/system_name.
    If the master form would automagically lass the system_id to the publishing_system_id on the detail form, and allow me to update that with a picked system_id tied to consuming_system_id, that would be perfect.
    I can write the htp calls I mentioned earlier, but I am sure I am missing something.
    Does anyone have any best practices for this?
    Thanks!
    Steve

    Hi Steve,
    Here is an example which might help you:
    http://apex.oracle.com/pls/otn/f?p=43368:35
    Here, I have used two tables e.g. test1 and test2. Test1 has an id column which is just a sequence column and the name column in this table has a unique key.
    Table test2 has id column as primary key and name1 column is linked with Test1 table on the Form. Name2 column is not required to be linked with Test1 table.
    If this is what you are after, then I can give your more detail for it.
    Hope it helps.
    Zahid

  • Error while saving data in master detail

    Dear all
    I'm new with ADF
    I have created master detail page
    master table is departments
    detail is Employee table
    The scenario is:
    Insert a record in Department
    Then insert another record in the details for an employee
    press save
    error Attribute DeptId in MyServices.EmployeesVO1 is required
    The primary key in both department and employee are sequence and are populated from a database trigger.
    please help
    note : adf 11g and jdeveloper 11.1.4
    Edited by: ta**** on Apr 13, 2011 12:54 PM

    you can try the followings:
    If you have a control on your data base, then you can change the FK constraint to be DEFERRABLE, thus the FK value will be checked after commit,
    I used this method once and it it works fine.
    to alter your FK to be DEFERRABLE
    check this:
    http://infolab.stanford.edu/~ullman/fcdb/oracle/or-triggers.html#deferring%20constraint%20checking

  • Master Details Input Form

    Hi,
    I'm using JDeveloper 10.1.3.1, ADFBC JSPX, I've created two tables dept with deptid and deptnm primary key deptid, emp with empno, empnm and deptid foreign key deptid references dept table.
    i've created business component Diagram, in that i dragged 2 tables. i've created views for that tables, and view link between these two. i've creaed Data Control as a Master Details. in Jspx, i dragged Dept View as a creation form, and down of that, Emp as a creation form, then from operations, i dragged commit and rollback buttons. When i'm testing in Application Module, it's running perfectly ok, while running jspx these errors are comming, how can i solve this.
    1. JBO-27027: Missing mandatory attributes for a row with key null of type AM.EmpView1
    2. Empno - JBO-27014: Attribute Empno in AM.EmpView1 is required
    3. Deptid - JBO-27014: Attribute Deptid in AM.EmpView1 is required
    Thanks and Regards,
    Sudha Teki.

    Hi,
    Whatever link u've send i've tried that with using Service Requests and Products Tables.
    public Result newServiceRequestForNewProduct(String prodName,
    String prodDesc,
    String problemDesc,
    Number customerId){
    //1. Create a New Service Request
    ServiceRequestsImpl newSR = createNewServiceRequest();
    //2. Create a New Product
    ProductsImpl newProd = createNewProduct();
    newProd.setName(prodName);
    newProd.setDescription(prodDesc);
    //3. Set the product id to which service request pertains
    newSR.setProdId(newProd.getProdId().getSequenceNumber());
    newSR.setProblemDescription(problemDesc);
    newSR.setCreatedBy(customerId);
    //4. Commit the transaction
    getDBTransaction().commit();
    //5. Construct a bean to hold new product id and SR id
    Result result = new Result();
    result.setSvrId(newSR.getSvrId().getSequenceNumber());
    result.setProdId(newProd.getProdId().getSequenceNumber());
    //6. Return the result
    return result;
    After adding this code i'm trying to test client program. i'm getting errors like
    Error(66,25): interface javax.xml.transform.Result is abstract; cannot be instantiated
    Error(67,12): method setSvrId(oracle.jbo.domain.Number) not found in interface javax.xml.transform.Result
    Error(68,12): method setProdId(oracle.jbo.domain.Number) not found in interface javax.xml.transform.Result
    Anything else i'm missing here, please let me know.
    Thanks and Regards,
    Sudha.

Maybe you are looking for

  • Running without Adobe Flash Player Updater Scheduled Task

    I'm trying to understand how to avoid installing Adobe Flash Player Updater Scheduled Task. I am also unable to remove the Scheduled Task using a script that works on other tasks, on the same workstations. Is there an mms.cfg setting that will instru

  • MPLS Handling of Aggregated ADSL-connected sites

    I'm familiar with serially-connected sites entering an MPLS core, where there is a physical connection associated with each site, and so the site is simply identifiable to the MPLS PE by virtue of a physical port. However, I'm trying to get my head r

  • Interactive Report issue ( hw to come 5th list to back 2nd list directly )

    Hi Experts,                   I have one issue regarding Interactive report. -->  I am in 5th list , and i want go directly to the 2nd list . --> Hw we select multiple line of data in one list and pass to another list. Helpful answers will reward. Re

  • Where is the command to dim monitor on Maverick?

    Before I upgraded to Maverick I could dim or brighten my monitor. The keyboard commands do nothing now. Can't find it any where in the System Preferences.

  • PROBLEMS WITH TWO  FUNCTIONS IN CS5

    I have Windows 7 -  32 bit on my PC. I have Photoshop CS5 and have been using it on  this PC for about 15 months. I cannot understand 1)     why every picture I open of any format always opens in ACR even in jpeg format 2)     why I suddenly cannot g