Displaying Entity Level Attributes on Summary screen

Hi
Is there a way to show the value of an entity level attribute on the summary screen?
I need the attribute values for all entity instances to be listed on the summary screen.
For example, I have a household member entity and I need to display on the summary screen the names of all
the household members who are above 18 years of age.Is this possible?
Thanks,
Lokesh

Out-of-the-box in version 10, no, you can't attach entity level attributes to the summary screen.
The new InstanceValueIf function in 10.1 can be used to partially address the issue of wanting to display entity level information on the summary screen. Basically, you can use this function to move a text value from an entity level to the Global level, and that new Global attribute can then be attached to the summary screen.
Rule syntax:
InstanceValueIf(<the relationship>, <the value expression>, <the condition expression>)
Example rule:
the name of the oldest child = InstanceValueIf(the children, the child's name, the child's age = the age of the oldest child)
InstanceValueIf: http://www.oracle.com/technology/products/applications/policy-automation/help/opm10_1/Content/Reference/Rule%20syntax%20reference/Entity_and_relationship_functions.htm
However, this function only works where there is only one entity instance which satisfies the conditional expression. Therefore it wouldn't work for your example as presumably there could be multiple household members who are above 18 years of age.
You could consider attaching a Global level attribute on the summary screen ("there are household members who are above 18 years") which has a decision report listing the people who satisfy the criteria, e.g.
there are household members who are above 18 years if
…..ForAll(the household members, the household member's age is known) and [invisible]
…..Exists(the household members, the household member is above 18 years of age) [silent]
the household member is above 18 years of age if
.....the household member's age > 18
(Note that I've used the silent and invisible parameters in the first rule to trim the decision report.)
Imagine the following 4 household members:
Homer, aged 38
Marge, aged 36
Bart, aged 10
Lisa, aged 8
Assuming you've set up name substitution in the rule project, the decision report will say "Homer is above 18 years of age" and "Marge is above 18 years of age". As this is the decision report, it won't be displayed directly on the summary screen, but will be accessible via the [Why?] link. This might be as close as you'll get using only out-of-the-box functionality and no customisation.

Similar Messages

  • How to display Entity level validation messages in a table

    I'm using ADF 11g 11.1.1.2.0. I have a page with an updateable table based on an EO. In the EO I have defined some entity level and attribute level declarative business rules. When the user enters a value in the table that violates an attribute level validation, the related message is displayed inline and the attribute is surrounded by a red box. Furthermore the user is not able to place his cursor in a different row. In this way it is clear which row and attribute caused the error. However if the user enters some data that violates an entity level validation, the validation message is displayed as global messages in the message-popup when the business rule is based on a script or a method. This means that the user gets a global message popup, and does not know which row caused the error. Ofcourse we can include the identifying attributes of the row in the error message, but I would like to know if there is another more visual way to communicate to the user which row caused the error.
    Edited by: Jonas de Graaff (PSB) on 10-feb-2010 2:51

    Hi Chittibabu,
    what about using a TreeTable control?
    SAPUI5 SDK - Demo Kit
    Regards
    Tobias

  • Display Entity attribute values on summary screen

    Hi,
    I have a rule base which allows the members of a household to apply for some benefits. A few documents are also required to be submitted in order to complete the application process.
    The documents may or may not be required for all the members of the household. For Example, lets assume the application asks for a disability certificate. This has to be submitted by only those who are disabled.
    I want to display the list of the members (on the summary screen) for whom a particular document is required.
    How I can get this list? I tried storing the member names in a global variable, but was not successful.
    The rule base has a separate entity to capture the household members.
    Thanks,
    Aakarsh

    Out-of-the-box in version 10 you can't attach entity level attributes to the summary screen.
    However, have a look at this thread for some alternate ideas to address what you're trying to do: Displaying Entity Level Attributes on Summary screen (Thread title: Displaying Entity Level Attributes on Summary screen)
    Cheers,
    Jasmine

  • Entity-level screen text substitution

    I am trying to create an entity-level attribute that will allow me to substitute text on an entity-level screen.
    My data model is: Global --> the employer --> the date of the absence from work. When asking about each absence, I want to display the name of the employer on the screen. Because you can only substitute (using public names) attributes at the same entity level as the screen, I need to make an attribute at the level of the absence that is equivalent to the name of the employer.
    How do I do this?
    (I suspect that I need to use ForScope(), but it's not clear to me how to use this to assign a value to a text attribute.)
    Thanks for any guidance you can provide.

    I'm assuming you know how to set up regular substitution where everything is at the same entity level, so I won't go into that.
    To substitute the name of the employer into labels on screens at the entity level below (the 'absence' level), you need to create an attribute at the 'absence' entity level, then infer its value based on the name of the employer. You'll need to use the 'For' function, and the reverse text of the relationship from Employer --> Absence
    There was a related question asked yesterday on the forum (Refering to entity instances from a more specific entity context I'll use the example from that to explain:
    We have the following entities:
    Global -- one-to-many --> the cat (Relationship text: the cats)
    the cat -- one-to-many --> the cat's toys (Relationship text: the cat's toys; Reverse relationship text: the toy of the cat)
    To substitute in the name of the cat into a label on a question screen about the cat's toy, I need to create an attribute at the entity level of the cat's toy ("the cat's toy name substitution variable" in this example). Then set it to be equal to the variable which collects the cat's name ("the cat" in this example), using the 'For' function and the reverse relationship text:
    the cat's toy name substitution variable = For(the toy of the cat, the cat)Then create a public name for "the cat's toy name substitution variable" (e.g. "CatNameSubstitution"), then plug that into the screen label in the usual way, i.e. %CatNameSubstitution%. Since the substitution variable is at the entity level of the cat's toy, it will work.

  • Display entity-attributes and global-attributes in the same screen

    Hi,
    I have a question about entity.
    Is it possible to display in the same screen, entity-attributes and global-attributes?
    thanks
    Rosalia

    Hi Rosalia,
    You can only display attributes from the current entity and the entity or entities that it is contained by (the parent entities).
    So if you had the following data model
    Global
    ..the person
    ...the income
    the person is contained by global.
    the income is contained by the person (which is contained by global).
    If you want to create a person-level question screen, you can display global attributes on that screen by using subsitution like %global_field_1%. You cannot, however, input global attributes on that screen (ONLY attributes belonging to the person)
    If you want to create an income-level question screen, you can display attributes from the person such as "tell us about %person_name%'s income..." as well as global attributes. Again, you cannot input person or global attributes on that screen (ONLY attributes belonging to the income)
    However it only works from child-to-parent containment relationships! You cannot have a global question screen which loops through the person instances and displays attributes from the person, or from the income out-of-the-box.
    We have managed to implement this using custom controls.
    You can map individual attributes back up to the parent level, and then display them,
    such as
    the first person's name = InstanceValueIf(the people, the person's name, the person's id = 1)
    the first person's name is now a global attribute and can be displayed on global question screens.
    Hope this helps!
    Ben

  • Invoke different Summary Screen based on attribute value

    Hi Experts,
    I have a requirement to show different OPA landing summary page based on attribute value received from Siebel application. Is that possible?
    For e.g.: Create 2 summary screen
    Siebel field value opa_attr1 = A or B, if A I want to display summary screen 1 otherwise display summary screen 2.
    Thanks,
    Vinay

    Thanks you for your reply. The link is not what I want. My case is that I already have a map stored in Oracle database under obiee_navteq schema. I want to use OBIEE to display map by adding different image/icon at different cities based on the value of an attribute column. All the examples I can find is to use measure column as an condition, not by attribute column.
    Thanks

  • Entity level validation suppressed in backend

    Hi,
    I am working on jdev 11.1.1.6, where I face a issues which is pretty much strange. I created a editable table from a view object datacontrol by dragging and dropping. This UI table consist of two columns with two LOVs providing them values.
    The entity level validation when I create two rows with same values are fired but the error message is not shown to the UI, but able to find the stack trace in the jdev console.The same happens even when I try to commit the rows. This rather breaks the page stopping me to do further activities.
    Please do help......

    Hi frank,
    Here is a detials of the present implementation,
    * The entity E1 has three keys. I created a business rule validation with as unique key validation with a custom error message ('*the record is already found*').
    * The view object used for table creation is created using the above entity with the same three key attributes.
    * Out of the three keys, two are provided with an LOV and the other is set but the same lov when choosing the values.
    * The view object is dragged and dropped in the jsf which looks as follows,
    <af:table value="#{bindings.xxxxx.collectionModel}"
                           var="row" rows="#{bindings.xxxxx.rangeSize}"
                           emptyText="#{bindings.xxxxx.viewable ? 'No data to display.' : 'Access Denied.'}"
                           fetchSize="#{bindings.xxxxx.rangeSize}"
                           rowBandingInterval="0"
                           selectedRowKeys="#{bindings.xxxxx.collectionModel.selectedRow}"
                           selectionListener="#{bindings.xxxxx.collectionModel.makeCurrent}"
                           rowSelection="single" id="t4"
                           width="1000"
                           autoHeightRows="6"
                           styleClass="AFStretchWidth SimpleTable Debt"
                           partialTriggers="::cl15 ::cl16 ::cl18 cl14">
                  <af:column sortProperty="ModuleNo" sortable="false"
                             headerText="Report..."
                             id="c8" width="250">
                   <af:inputListOfValues id="moduleNoId"
                                         popupTitle="Search and Select: #{bindings.xxxxx.hints.ModuleNo.label}"
                                         value="#{row.bindings.ModuleNo.inputValue}"
                                         model="#{row.bindings.ModuleNo.listOfValuesModel}"
                                         required="#{bindings.ReportsShared1.hints.ModuleNo.mandatory}"
                                         columns="#{bindings.ReportsShared1.hints.ModuleNo.displayWidth}"
                                         shortDesc="#{bindings.ReportsShared1.hints.ModuleNo.tooltip}"
                                         autoSubmit="true">
                    <f:validator binding="#{row.bindings.ModuleNo.validator}"/>
                   </af:inputListOfValues>
                  </af:column>
                  <af:column sortProperty="SharedTo" sortable="false"
                             headerText="With..."
                             id="c11" width="250">
                   <af:inputListOfValues id="sharedToId"
                                         popupTitle="Search and Select: #{bindings.xxxxx.hints.SharedTo.label}"
                                         value="#{row.bindings.SharedTo.inputValue}"
                                         model="#{row.bindings.SharedTo.listOfValuesModel}"
                                         required="true"
                                         columns="#{bindings.xxxxx.hints.SharedTo.displayWidth}"
                                         shortDesc="#{bindings.xxxxx.hints.SharedTo.tooltip}"
                                         autoSubmit="true">
                    <f:validator binding="#{row.bindings.SharedTo.validator}"/>
                   </af:inputListOfValues>
                  </af:column>
                  <af:column id="c7" width="100">
                      <af:commandLink actionListener="#{bindings.Delete1.execute}"
                                 shortDesc="Delete line"
                                styleClass="Small Button GrayDelete"
                                 immediate="true"
                                 partialSubmit="true" id="cl14"/>
                  </af:column>
                   <af:column sortProperty="LedgerType" sortable="false"
                             headerText="#{bindings.xxxxx.hints.LedgerType.label}"
                             id="c6">
                   <af:outputText value="#{row.LedgerType}" id="ot10"/>
                  </af:column>
                  <af:column sortProperty="ReportName" sortable="false"
                             headerText="#{bindings.xxxxx.hints.ReportName.label}"
                             id="c1">
                   <af:outputText value="#{row.ReportName}" id="ot11"/>
                  </af:column>
                 </af:table>
    <af:commandLink actionListener="#{bindings.CreateInsert1.execute}"
                                 text=""
                                 partialSubmit="true"
                                 id="cl15"
                                 styleClass="debtAddlinesButton"/>
    <af:commandLink actionListener="#{bindings.Commit.execute}"
                                               text="Share" id="cl16"
                                               styleClass="greyButton"/>
    <af:commandLink actionListener="#{bindings.Rollback.execute}"
                                               text="Cancel"
                                               immediate="true" id="cl18"
                                               styleClass="greyButton">
                                <af:resetActionListener/>
    </af:commandLink>
    /////////////////////////////////////////////////////////////////////////////////////////////////////////////Now when I use the CreateInsert1 command link and create a row and fill in the values that are already present , say I select name in 'sharedTo' that is already present.... it does not show me the validation error in the ballon as it always does but doesnt fill the value in that too....and when I enter the value instead of using the LOV it shows a blink of the custom error popup I set in the entity (*the record is already found*) and disappears. After that nothing is functional in the page. But I see the jev console with the same custom error message with stack trace
    <Utils> <buildFacesMessage> ADF: Adding the following JSF error message: the record is already found
    oracle.jbo.AttrSetValException: JBO-com.symmetry.dashboard.panels.model.eo.XXXE1: the record is already found
         at oracle.jbo.rules.RulesBeanUtils.createException(RulesBeanUtils.java:381)
         at oracle.jbo.rules.AbstractValidator.createException(AbstractValidator.java:1065)
         at oracle.jbo.rules.AbstractValidator.doRaiseException(AbstractValidator.java:1120)
         at oracle.jbo.rules.AbstractValidator.raiseException(AbstractValidator.java:1109)
         at oracle.jbo.rules.JboAbstractValidator.raiseException(JboAbstractValidator.java:409)
         at oracle.jbo.rules.AbstractValidator.raiseException(AbstractValidator.java:1096)
         at oracle.jbo.server.JboUniqueKeyValidator.validateValue(JboUniqueKeyValidator.java:369)
         at oracle.jbo.server.JboUniqueKeyValidator.validateValueWithContext(JboUniqueKeyValidator.java:84)
         at oracle.jbo.rules.JboAbstractValidator.callValidateValueWithContext(JboAbstractValidator.java:235)
         at oracle.jbo.rules.JboAbstractValidator.validate(JboAbstractValidator.java:386)
         at oracle.jbo.rules.RulesBeanUtils.validateObject(RulesBeanUtils.java:716)
         at oracle.jbo.rules.RulesBeanUtils.validate(RulesBeanUtils.java:696)
         at oracle.jbo.server.AttributeDefImpl.validate(AttributeDefImpl.java:3349)
         at oracle.jbo.server.AttributeDefImpl.set(AttributeDefImpl.java:3294)
         at oracle.jbo.server.EntityImpl.setAttributeInternal(EntityImpl.java:2012)
         at oracle.jbo.server.AttributeDefImpl.resolveSet(AttributeDefImpl.java:3510)
         at oracle.jbo.server.EntityImpl.setAttrInvokeAccessor(EntityImpl.java:1993)
         at oracle.jbo.server.EntityImpl.setAttribute(EntityImpl.java:1920)
         at oracle.jbo.server.ViewRowStorage.setAttributeValue(ViewRowStorage.java:2363)
         at oracle.jbo.server.ViewRowStorage.setAttributeInternal(ViewRowStorage.java:2165)
         at oracle.jbo.server.ViewRowImpl.setAttributeInternal(ViewRowImpl.java:1453)
         at oracle.jbo.server.ViewRowImpl.setAttrInvokeAccessor(ViewRowImpl.java:1428)
         at oracle.jbo.server.ViewRowImpl.setAttribute(ViewRowImpl.java:1089)
         at oracle.jbo.server.ViewRowImpl.setAttribute(ViewRowImpl.java:1029)
         at oracle.jbo.server.ViewRowImpl.setAttributeValues(ViewRowImpl.java:1703)
         at oracle.adf.model.binding.DCDataControl.setAttributesInRow(DCDataControl.java:2428)
         at oracle.jbo.uicli.binding.JUCtrlValueBinding.setAttributeValuesInRow(JUCtrlValueBinding.java:976)
         at oracle.jbo.uicli.binding.JUCtrlListBinding.setTargetAttrsFromLovRow(JUCtrlListBinding.java:2801)
         at oracle.jbo.uicli.binding.JUCtrlListBinding.setTargetAttrsFromLovRowAndUpdateMRU(JUCtrlListBinding.java:2702)
         at oracle.adfinternal.view.faces.model.binding.FacesCtrlLOVBinding.setInputValueInRow(FacesCtrlLOVBinding.java:1164)
         at oracle.jbo.uicli.binding.JUCtrlValueBinding.setInputValue(JUCtrlValueBinding.java:2814)
         at oracle.jbo.uicli.binding.JUCtrlValueBinding.setInputValue(JUCtrlValueBinding.java:2777)
         at oracle.jbo.uicli.binding.JUCtrlValueBinding.put(JUCtrlValueBinding.java:2434)
         at oracle.jbo.uicli.binding.JUCtrlListBinding.put(JUCtrlListBinding.java:3428)
         at javax.el.MapELResolver.setValue(MapELResolver.java:229)
         at com.sun.faces.el.DemuxCompositeELResolver._setValue(DemuxCompositeELResolver.java:252)
         at com.sun.faces.el.DemuxCompositeELResolver.setValue(DemuxCompositeELResolver.java:278)
         at com.sun.el.parser.AstValue.setValue(Unknown Source)
         at com.sun.el.ValueExpressionImpl.setValue(Unknown Source)
         at org.apache.myfaces.trinidad.component.UIXEditableValue.updateModel(UIXEditableValue.java:289)
         at org.apache.myfaces.trinidad.component.UIXEditableValue.processUpdates(UIXEditableValue.java:252)
         at org.apache.myfaces.trinidad.component.ChildLoop$Update.process(ChildLoop.java:76)
         at org.apache.myfaces.trinidad.component.ChildLoop.runAlways(ChildLoop.java:55)
         at org.apache.myfaces.trinidad.component.ChildLoop.runAlways(ChildLoop.java:48)
         at org.apache.myfaces.trinidad.component.UIXColumn.processUpdates(UIXColumn.java:111)
         at oracle.adf.view.rich.component.rich.data.RichColumn.processUpdates(RichColumn.java:264)
         at org.apache.myfaces.trinidad.component.UIXCollection.processComponent(UIXCollection.java:993)
         at org.apache.myfaces.trinidad.component.TableUtils$3.process(TableUtils.java:283)
         at org.apache.myfaces.trinidad.component.ChildLoop.runAlways(ChildLoop.java:55)
         at org.apache.myfaces.trinidad.component.ChildLoop.runAlways(ChildLoop.java:48)
         at org.apache.myfaces.trinidad.component.TableUtils.processStampedChildren(TableUtils.java:278)
         at oracle.adf.view.rich.component.UIXTable.processStamps(UIXTable.java:202)
         at org.apache.myfaces.trinidad.component.UIXTable.processFacetsAndChildren(UIXTable.java:382)
         at org.apache.myfaces.trinidad.component.UIXCollection.updateChildrenImpl(UIXCollection.java:209)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at org.apache.myfaces.trinidad.component.UIXTable.processUpdates(UIXTable.java:166)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:1053)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:1053)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:1053)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:1053)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.access$201(ContextSwitchingComponent.java:41)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$4.run(ContextSwitchingComponent.java:137)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.processUpdates(ContextSwitchingComponent.java:140)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:1053)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:1053)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:1053)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.access$201(ContextSwitchingComponent.java:41)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent$4.run(ContextSwitchingComponent.java:137)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent._processPhase(ContextSwitchingComponent.java:361)
         at oracle.adf.view.rich.component.fragment.ContextSwitchingComponent.processUpdates(ContextSwitchingComponent.java:140)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:1053)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at org.apache.myfaces.trinidad.component.UIXForm.processUpdates(UIXForm.java:89)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildrenImpl(UIXComponentBase.java:1053)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.updateChildren(UIXComponentBase.java:1043)
         at org.apache.myfaces.trinidad.component.UIXComponentBase.processUpdates(UIXComponentBase.java:827)
         at javax.faces.component.UIComponentBase.processUpdates(UIComponentBase.java:1084)
         at javax.faces.component.UIViewRoot.processUpdates(UIViewRoot.java:728)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl$UpdateModelValuesCallback.invokeContextCallback(LifecycleImpl.java:1436)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl._executePhase(LifecycleImpl.java:397)
         at oracle.adfinternal.view.faces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:194)
         at javax.faces.webapp.FacesServlet.service(FacesServlet.java:265)
         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.help.web.rich.OHWFilter.doFilter(Unknown Source)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:205)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.adfinternal.view.faces.webapp.rich.RegistrationFilter.doFilter(RegistrationFilter.java:106)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
         at oracle.adfinternal.view.faces.activedata.AdsFilter.doFilter(AdsFilter.java:60)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl$FilterListChain.doFilter(TrinidadFilterImpl.java:446)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl._doFilterImpl(TrinidadFilterImpl.java:271)
         at org.apache.myfaces.trinidadinternal.webapp.TrinidadFilterImpl.doFilter(TrinidadFilterImpl.java:177)
         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:179)
         at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:56)
         at oracle.security.jps.ee.http.JpsAbsFilter$1.run(JpsAbsFilter.java:119)
         at java.security.AccessController.doPrivileged(Native Method)
         at oracle.security.jps.util.JpsSubject.doAsPrivileged(JpsSubject.java:315)
         at oracle.security.jps.ee.util.JpsPlatformUtil.runJaasMode(JpsPlatformUtil.java:442)
         at oracle.security.jps.ee.http.JpsAbsFilter.runJaasMode(JpsAbsFilter.java:103)
         at oracle.security.jps.ee.http.JpsAbsFilter.doFilter(JpsAbsFilter.java:171)
         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:139)
         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)

  • Any way to display row-level errors in AdvancedTable from ProcessRequest?

    I have a page which displays data in an Advanced Table. Users are also able to edit the data on each row, and then save. Upon saving, it will validate the data, and display row-level errors (via either OARowValException or OAAttrValException). That's all working fine.
    The issue I have, is that sometimes data can become invalid from outside of this particular screen. So when a user opens the screen, some of the data displayed is already invalid. If the user saves, without changing anything, they'll see the errors. I want to show the errors immediately, without them having to save on every range of records. So I basically want to re-validate everything when it is first displayed, so from ProcessRequest. Is there any way to actually do that? I've tried several ways, but nothing seems to work.

    Hi,
    I havent used it but u can try with the below logic
    Write ur logic in AM...
    Import oracle.apps.fnd.framework.OAAttrValException
    Import oracle.apps.fnd.framework.OARowValException
    //Iterate through all the rows.
    if(attr1!=attr2)
       throw new OARowValException (
            getEntityDef().getFullName(), // entity full definition name
            getPrimaryKey(),              // entity object primary key
            "FND",                        // message application short name
            "ATTR_EXCEPTION");            // message name Regards,
    Gyan

  • ToyStore Unexpected exception / Entity Level validation check question.

    Hi,
    JDev 10..1.2
    I'm using the ToyStore Exception/Error handler.
    I added an Entity level validation test by adding following test in the validateEntity method of my entity:
    protected void validateEntity()
    super.validateEntity();
    if (this.getAccountStatus() != null && this.getAccountStatus().compareTo(Constants.NUMBER_20) < 0)
    throw new JboException(ErrorMessages.class,"14000",null);
    In the ErrorMessages class I added following line to the message array:
    { "14000", "Entity validation ERROR" }
    I would have expected to see this error in the "global error section" but the exception was handled as a "unexpected exception" and was shown in the stack trace but not in the generated page.
    Could you please tell me how to write an entity level validation error in the validateEntity method so that it gets displayed in the global error section?
    I succesfully added attribute level validation and it gets displayed at the attribute level.
    Here's the stack trace, notice that the message is retrieved from my ErrorMessages.class:
    05/08/10 11:28:03 com.photoswing.webview.actions.AccountCreateAction.reportErrors userLocale: English (United States)
    oracle.jbo.JboException: Entity validation ERROR
         at com.photoswing.model.site.AccountTestImpl.validateEntity(AccountTestImpl.java:83)
         at oracle.jbo.server.EntityImpl.validate(EntityImpl.java:1506)
         at oracle.jbo.server.DBTransactionImpl.validate(DBTransactionImpl.java:3944)
         at oracle.adf.model.bc4j.DCJboDataControl.validate(DCJboDataControl.java:958)
         at oracle.adf.model.binding.DCBindingContainer.validateInputValues(DCBindingContainer.java:1681)
         at oracle.adf.controller.lifecycle.PageLifecycle.validateModelUpdates(PageLifecycle.java:465)
         at oracle.adf.controller.struts.actions.DataAction.validateModelUpdates(DataAction.java:328)
         at oracle.adf.controller.struts.actions.DataAction.validateModelUpdates(DataAction.java:519)
         at oracle.adf.controller.lifecycle.PageLifecycle.handleLifecycle(PageLifecycle.java:115)
         at oracle.adf.controller.struts.actions.DataAction.handleLifecycle(DataAction.java:223)
         at com.photoswing.webview.actions.BaseDataForwardAction.handleLifecycle(BaseDataForwardAction.java:209)
         at oracle.adf.controller.struts.actions.DataAction.execute(DataAction.java:155)
         at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:484)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:274)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1485)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:527)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:768)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16)
         at com.photoswing.filter.LocaleFilter.doFilter(LocaleFilter.java:191)
         at com.evermind.server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:20)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:235)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:600)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:317)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
         at com.evermind.util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
         at java.lang.Thread.run(Thread.java:534)
    Thanks
    Fred

    More info:
    If I write:
    <html-el:errors/>
    I get all the errors displayed.
    My purpose is to display the attribute level errors next is to each attribute and the Entity level errors at the top.
    So at the top I wrote:
    <html:errors property="<%= ActionErrors.GLOBAL_ERROR %>"/>
    I added following trace:
    At the beginning of the processException method:
    System.out.println(getClass().getName()+".processException, ex: "+ex.toString()+", ex.getClass().getName(): "+ex.getClass().getName());
    In the if block:
    if (attrName == null) {
    String errorCode = jboex.getErrorCode();
    globalErrs.add(jboex.getLocalizedMessage(locale));
    System.out.println("attrName == null, errorCode: "+errorCode+", jboex.getLocalizedMessage(locale): "+jboex.getLocalizedMessage(locale));
    My trace:
    05/08/10 12:19:44 com.photoswing.webview.actions.AccountCreateAction.processException, ex: oracle.jbo.RowValException: Failed to validate a row with key null of type WebAccountAM.AccountTestView1, ex.getClass().getName(): oracle.jbo.RowValException
    05/08/10 12:19:44 com.photoswing.webview.actions.AccountCreateAction.processException, ex: oracle.jbo.JboException: Entity validation ERROR, ex.getClass().getName(): oracle.jbo.JboException
    05/08/10 12:19:44 attrName == null, errorCode: 14000, jboex.getLocalizedMessage(locale): Entity validation ERROR
    Remark:
    AccountId => pk, not mandatory,refresh after insert => sequence fetched in pre-insert trigger
    Thanks
    Fred

  • Summary Screen & Temporal Rules

    Hi,
    I am using Temporal Rules in the Rulebase. The Top Goal defined by the Temporal Rules is a Boolean Attribute and used for user display on the Summary Screen.
    The Rulebase errors out when the Boolean Attribute has both Yes & No value (because of Temporal Rule evaluation). The following error is thrown:
    0 [http-127.0.0.1-9000-Processor4] ERROR com.oracle.determinations.web.platform.servlet.WebDeterminationsServletUtility - java.lang.ClassCastException: com.oracle.determinations.engine.local.temporal.TemporalValue cannot be cast to java.lang.Boolean
    java.lang.ClassCastException: com.oracle.determinations.engine.local.temporal.TemporalValue cannot be cast to java.lang.Boolean
         at com.oracle.determinations.interview.engine.screens.LocalControlFactory.evaluateControlState(LocalControlFactory.java:198)
         at com.oracle.determinations.interview.engine.screens.LocalControlFactory.createAndInitControlInstance(LocalControlFactory.java:116)
         at com.oracle.determinations.interview.engine.screens.EntityInstanceInterviewControl.doAdditionalInitialisation(EntityInstanceInterviewControl.java:47)
         at com.oracle.determinations.interview.engine.screens.RelationshipGroupInterviewControl.doAdditionalInitialisation(RelationshipGroupInterviewControl.java:36)
         at com.oracle.determinations.interview.engine.screens.LocalControlFactory.createAndInitControlInstance(LocalControlFactory.java:142)
         at com.oracle.determinations.interview.engine.screens.LocalScreen.init(LocalScreen.java:135)
         at com.oracle.determinations.interview.engine.screens.LocalScreen.<init>(LocalScreen.java:40)
         at com.oracle.determinations.interview.engine.screens.LocalSessionScreenService.getDefaultSummaryScreen(LocalSessionScreenService.java:227)
         at com.oracle.determinations.interview.engine.screens.LocalSessionScreenService.getScreen(LocalSessionScreenService.java:66)
         at com.oracle.determinations.web.platform.controller.ScreenController.getScreenInstance(ScreenController.java:274)
         at com.oracle.determinations.web.platform.controller.ScreenController.renderScreen(ScreenController.java:112)
         at com.oracle.determinations.web.platform.controller.ScreenController.renderScreen(ScreenController.java:90)
         at com.oracle.determinations.web.platform.controller.actions.ScreenAction.getResource(ScreenAction.java:32)
         at com.oracle.determinations.web.platform.servlet.WebDeterminationsServlet.doGet(WebDeterminationsServlet.java:80)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:627)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:729)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:269)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
         at com.oracle.determinations.web.platform.util.CharsetFilter.doFilter(CharsetFilter.java:46)
         at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:215)
         at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:188)
         at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:213)
         at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:172)
         at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
         at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:117)
         at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:108)
         at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:174)
         at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:879)
         at org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.processConnection(Http11BaseProtocol.java:665)
         at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket(PoolTcpEndpoint.java:528)
         at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt(LeaderFollowerWorkerThread.java:81)
         at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:689)
         at java.lang.Thread.run(Unknown Source)
    Is it a known issue? Also, if there is any fix for the issue, please let me know.
    Thanks in advance,
    Aditya

    Screens are not temporal so can't use temporal values to control the state of items on a screen. You can use the temporal functions (+Policy Modeling Help --> Temporal Reasoning+) to set a single boolean value based on some or all of the periods in your temporal attribute.
    For example, if you wanted to show the summary screen item based on the value of your attribute at a particular point in time you can use the ValueAt function. Similarly, you could use the IntervalSometimes function to find out if the attribute was ever true.

  • IPod Touch syncing no longer showing summary screen on my computer

    I transfered all my iTunes library onto my new computer and am now syncing my i-Pod touch to it. At the same time I am upgrading to 3.O. Suddenly I no longer can see my Ipod touch in Itunes listing on left hand side nor does it show the summary screen so I can tell how long my syncing will take. It seems like hours now that my iPod Touch is syncing (per the message on my ipod). How can I make my computer display the summary screen?

    I'm having the same exact problem. The thing is...you can even see the songs that you've purchased on your ipod on the left still...it's just that the ipod itself won't show. So I can see what songs I've purchased on my ipod...but I can't put anything on or take any off. I've tried shutting down and restarting...reinstalling itunes...all of that stuff. Nothing has worked.

  • Is there a way to create a commentary file for the summary screen?

    I am not seeing the summary screen in the list of commentary files in the \Development\include\commentary\en-CA\screen path. Is there a way to create a commentary for the summary screen?
    Thanks all.

    thanks Kristy,
    I'm not sure of the best way to add any requests we have for future releases.
    If there is one, let me know what is best.
    Here is what I want to add.
    In the properties file, one can set decision report preferences for an attribute - for invisible and silent.
    I wish we could also set preferences for bold, and given that, I guess it makes sense to be able to set preferences for italic and underline
    While these can be addressed through custom properties and XSLT, it obviously would be easier for the modeler to be able to select the attribute enhancement in the properties file. Given that decision reports can get very long, and there are attributes which might be better highlighted in some way, this would be a great approach.

  • Cut off text on iPod summary screen

    Text on the summary screen for iPods is cut off. iPod description is cut at the bottom of the font text. Text in the options field doesn't show full description. It just ends in ... I can't even mouse over to get a full description and the iTunes help is horrible.
    Examples:
    Open iTunes when this iPod is ...
    Prefer standard definitio...

    Is your display resolution currently set to at least 1024x768, Jay, as per the following document?
    [iTunes: May not display all options at low screen resolutions|http://support.apple.com/kb/TS1845]

  • Validation on Entity level

    Hi All,
    In Jdev11g, I have set the validation on attribute level to check whether a field (e.g. password) contains only alphanumeric.
    I have used Rule Type as Regular Expression with the regular expression value [A-Za-z0-9]+.
    I am worried, why this validation is not getting fired up?
    Please help me to get around this.
    Regards,
    Loganathan

    When do you expect it to fire?
    Entity level validation only occurs if you call it directly or doDML call has been issued.
    I guess the validation rules are inherited by the VO and by components build from the VO.
    Timo

  • Navigational attribute in selection screen gives no applicable data

    Hi Gurus
    In the report i am using the navigational attribute in the selection screen.e.g Brand (attribute of material)
    My problem is whenevr i enter value in the navigational attribute (brand)  in the selection screen and execute  its says no data found.
    If i do not fill this parameter and fill only the parent attribute (material)  in the selection screen  , then i can see the results and from its properties  (drilling down )i can see the values of brand .
    If the values of brand exist why via selection screen its not giving vales, However Via material i can drill down and see brand values.
    I have done all the necessary steps to make this attribute as navigational.
    On top of this i have this same navigation attributes as one of the characterisitc in the cube.
    Thanks
    DD

    Hello,
    I've the same problem... for new nav. attributes for 0Material.
    Settings for nav. attibutes in BEx Q.D. are OK.
    But in BEx Analyzer:
    1- not display all values for this attributes. Some values are displayed, some don't.
    I try display it with and without selection screen.  The result is the same.
    2- I try to display (normal) attributes - not nav. In this case everything is OK.
    But I've 2 columns: normal attribute for all values and nav. attribute only with some values...
    (the query is something like: 0Material + 0Material_NOTnav_attr + 0Material_NOTnav_attr)
    It isn't a normal...
    I don't know... Maybe it's depend of the time?
    I can't clear all master data for 0Material, because they're used in some cubes. I had old characteristic without nav. attr. but with master data. I added nav. attr. in 0Material and activated it. Next I load master data (full method). Then I added nav. attr. in infocube, activated it, delete and load data into the cube (Init + Delta).
    If I display data for the cube in RSA1, I can see nav. attr. for all records. I can't see it in BEx Analyzer...
    Can U explain it?
    Thx,
    MSzN

Maybe you are looking for