View Link w/ Transient View Objects

I'm trying to create 2 view objects that contain only transient attributes and create a view link between them. I have a key defined in the parent and 2 keys in the child. When I create the view link I'm unable to generate the accessor in the source because the boxes are all grey'd out. The destination side works correctly.
Is there any reason this shouldn't be possibly in BC4J? I've been scouring the documentation and so far I haven't found any mention that a view link will not work in this situation.
This is in JDev. 9.0.4.
Thank you

A view link builds its corresponding where clause based on the selected attributes. On the source side, the attributes are used as parameters to the query, so transient attributes are fine. Attributes on the dest side get built into a where clause which would not work with transient attributes, so they are disabled.
for example:
select * from blah where (%1 == destVo.attr1) would not work if destVo.attr1 is transient.

Similar Messages

  • Hide view links in list view in sharepoint 2013

    Hi
    How I can hide view links in list view in sharepoint 2013. Like below pic?
    Thanks.

    for that you can use id of its parent span element something like below.
    #WPQ2_ListTitleViewSelectorMenu_Container {
    display: none !important;
    Thanks.

  • Create view link between two view objects (from programmatic data source)

    Hi Experts,
    Can we create a link between two view objects (they are created from programmatic datasource ; not from either entity or sql query). If yes how to create the link; ( i mean the like attributes?)
    I would also like to drag and drop that in my page so that i can see as top master form and the below child table. Assume in my program i will be only have one master object and many child objects.
    Any hits or idea pls.
    -t

    Easiest way to do this is to add additional transient attributes to your master view object, and then include those additional transient attributes in the list of source attributes for your view link. This way, you can get BC4J to automatically refer to their values with no additional code on your part.

  • View Links for Programmatic View Objects

    Hi All,
    I created a read only VO called MyVO based on a sql query.
    I created 2 programmatic view objects, MasterView and ChildView.
    In a custom method in AMImpl class ,I iterate through this MyVO resultset and get the rows in a Row object.
    Based on some attributes values of the Row, I populate both master and child View Objects.
    I have created a view link between Master and Child Programmatic View Objects and have exposed them in AM.
    Now I run the AM, and run the method exposed in client interface.
    Now I click on my master and child programmatic views.
    I see that the rows are populated in both of these programmatic VOs.
    But when I click on viewlink which I have exposed under master, it doesnt show me any
    record for child.
    This is my method of AMImpl which is exposed in AM client interface.
    public void constructLines(){
    ViewObject vo= this.getMyVO1();
    ViewObject master=this.getTransientVO1();
    ViewObject child=this.getTransientLineVO1();
    Row r,masterRow,childRow;
    int count=0;
    while(vo.hasNext()){
    ++count;
    r=vo.next();
    masterRow = master.createRow();
    if(r.getAttribute("QuoteHeaderId")!=null)
    masterRow.setAttribute("QuoteHeaderId",
    r.getAttribute("QuoteHeaderId").toString());
    if(r.getAttribute("QuoteLineId")!=null)
    masterRow.setAttribute("QuoteLineId",
    r.getAttribute("QuoteLineId").toString());
    if(r.getAttribute("LineNumber")!=null)
    masterRow.setAttribute("LineNumber",
    r.getAttribute("LineNumber").toString());
    master.insertRow(masterRow);
    childRow= child.createRow();
    if(r.getAttribute("RefLineId")!=null)
    childRow.setAttribute("RefLineId",
    r.getAttribute("QuoteLineId").toString());
    if(r.getAttribute("QuoteHeaderId")!=null)
    childRow.setAttribute("QuoteHeaderId",
    r.getAttribute("QuoteHeaderId").toString());
    child.insertRow(childRow);
    This is stopping me from my development progress.
    Any suggestion to solve this will be of great help.
    Thanks,
    Prabhanjan

    Hi..
    have you define relationship correctly between masterVO and childVO.sometime there may be the problem.

  • ADF: use of view link Accessor in Entity Object = always null?

    Hi,
    JClient 9.0.5.2, adf model.
    I would like to use the view link accessor method in the master EO to retrieve detail EO values and the view link accessor method in the detail EO to retrieve master EO values.
    Detail Rule:
    In the detail EO an attribute is derived from an attribute of the master EO: detail attribute = master attribute.
    Master Rule:
    In the master EO an attribute is derived from the detail EO: master atribute set to 0 if detail EO exist else set to 0.
    Tables:
    Table Master => MasterEO => MasterVO
    - masterPK (not updateable)
    - masterField (not updateable)
    - hasDetailsFlag
    Table Detail => DetailEO => DetailVO
    - detailPK (not updateable)
    - masterPK => foreign key (not updateable)
    - masterField (query only)
    MasterDetailLink based on foreign key.
    In link wizard I asked for the generation of following accessors in the source & destination Entity Objects:
    In DetailEO accessor name: RetrieveFromMaster
    In MasterEO accessor name: RetrieveFromDetail
    In the DetailEO, I asked for the generation of the DetailEOImpl file, accessors and create method.
    As wriiten in the file, before the create method:
    ** Add attribute defaulting logic in this method. **
    I tought this is the place to retrieve the master attribute:
    The code:
    MasterVORowImpl masterVO = getRetrieveFromMaster();
    if (masterVO == null)
    System.out.println("MasterVORowImpl masterVO create NNNNNNNNNNNUUUUUUUULLLLLLLLLL");
    The masterVO is always null?
    I suppose I didn't understand something, my guest is that ViewObjects may not be used for default logic?
    I know how to implement those rules in the database with triggers.
    I think that the data I need for implementing those rules exist somewhere at the ADF level so retrieving the data from the db is not necessary?
    Could somebody give some clues?
    I didn't find a similar example in the Business Rules in BC4J document.
    Your help will be appreciated
    Frederic

    Hi,
    Detail Rule, copy attribute value form master.
    In DetailEOImpl:
    protected void create(AttributeList attributeList)
    setAttribute(MASTERFIELD,this.getMaster().getMasterField());
    super.create(attributeList);
    Master rule, set flag to 0 if no details else set to 1.
    In the MasterEOImpl added method to check if detail row exists based on Row Iterator => no db retrieval?
    This method also sets the flag accordingly:
    protected void checkHasOtherDetails()
    oracle.jbo.RowIterator ri = this.getRetrieveFromdetail();
    ri.last();
    // last() must be called else hasNext() returns true even on last delete ???
    Number hasDetails = Constants.NUMBER_NO; // = 1
    if (ri.hasNext() || ri.hasPrevious())
    hasDetails = Constants.NUMBER_YES; // = 0
    if (!getHasDetailsFlag().equals(hasDetails)) {
    this.setHasDetailsFlag(hasDetails);
    I call this method in the remove method of the detailEOImpl:
    public void remove()
    this.getRetrieeFromMaster().checkHasOtherDetails();
    super.remove();
    To set the flag I added follwoing code in the create method of the DetailEOImpl:
    protected void create(AttributeList attributeList)
    setAttribute(MASTERFIELD,this.getMaster().getMasterField());
    **** ADDED ***
    Number masterHasDetailsFlag = getRetrieveFromMaster().getHasDetailsFlag();
    if (!masterHasDetailsFlag.equals(Constants.NUMBER_YES)) {
    getRetrieveFromMaster().setHasDetailsFlag(Constants.NUMBER_YES));
    super.create(attributeList);
    One more question:
    Is there a danger of calling last() on row iterators in create/update/remove methods of *Impl files?
    => current row changed => any effect on display in JPanel
    Thanks
    Frederic
    PS All variable/method/class names have been manually renamed in this code so some small syntax problems may exist.

  • I have a view link between 2 views that refuses to show up on a diagram

    i can create the view link from the "new-adf companant-view link" menu (right click mouse). if i start from scratch i CAN'T create the view link using the component palette. i get the error Message
    BME-99004: A Java runtime exception has occurred.
    Cause
    This exception should have been dealt with programmatically. The current activity may fail and the system may have been left in an unstable state. The following is a stack trace.
    java.lang.ArrayIndexOutOfBoundsException: 0
         at oracle.bm.uml.validation.AssociationValidation.validateAssociationEnds(AssociationValidation.java:315)
         at oracle.bm.uml.validation.AssociationValidation.validate(AssociationValidation.java:108)
         at oracle.jbo.dt.modeler.validation.BC4JAssociationValidation.validate(BC4JAssociationValidation.java:35)
         at oracle.bm.data.validation.ValidationEngine.validate(ValidationEngine.java:201)
         at oracle.bm.data.cacheimpl.TransactionImpl.validate(TransactionImpl.java:1713)
         at oracle.bm.data.cacheimpl.ProjectCacheImpl.closeTransaction(ProjectCacheImpl.java:5055)
         at oracle.bm.common.registry.CRNWayEdge.createEdge(CRNWayEdge.java:208)
         at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker.doCreateEdge(CreateRegisteredShapeTracker.java:537)
         at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker.mav$doCreateEdge(CreateRegisteredShapeTracker.java:111)
         at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker$6.performAction(CreateRegisteredShapeTracker.java:336)
         at oracle.bm.diagrammer.LockMonitor.performLockedAction(LockMonitor.java:64)
         at oracle.bm.diagrammer.BaseDiagram.performDiagramLockedAction(BaseDiagram.java:2437)
         at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker.processEvent(CreateRegisteredShapeTracker.java:279)
         at oracle.bm.diagrammer.track.TrackerStack.processEvent(TrackerStack.java:403)
         at oracle.bm.diagrammer.track.TrackerStack.pop(TrackerStack.java:198)
         at oracle.bm.diagrammer.track.TrackerStack.safePop(TrackerStack.java:320)
         at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker.mousePressed(CreateRegisteredShapeTracker.java:1022)
         at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker.mousePressed(CreateRegisteredShapeTracker.java:819)
         at oracle.bm.diagrammer.track.ModularTracker.processEvent(ModularTracker.java:191)
         at oracle.bm.diagrammer.track.CreateRegisteredShapeTracker.processEvent(CreateRegisteredShapeTracker.java:230)
         at oracle.bm.diagrammer.track.TrackerStack.processEvent(TrackerStack.java:389)
         at oracle.bm.diagrammer.BaseDiagramView$53.processEvent(BaseDiagramView.java:719)
         at oracle.bm.diagrammer.PageView$PageViewPanel.fireEvent(PageView.java:2904)
         at oracle.bm.diagrammer.PageView$PageViewPanel.processEvent(PageView.java:3090)
         at java.awt.Component.dispatchEventImpl(Component.java:3955)
         at java.awt.Container.dispatchEventImpl(Container.java:2024)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
         at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3889)
         at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
         at java.awt.Container.dispatchEventImpl(Container.java:2010)
         at java.awt.Window.dispatchEventImpl(Window.java:1774)
         at java.awt.Component.dispatchEvent(Component.java:3803)
         at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
         at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
         at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
         at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
         at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
    Action
    If further errors occur, you should restart the application.
    Also, report the problem on the JDeveloper forum on otn.oracle.com, or contact Oracle support, giving the information from this message.
    Message
    BME-02038: Exception thrown during validation
    Cause
    Action
    any insight would be helpful
    ________________________________________________________________________________

    I have iPhone 4s but the same problem with calendar on 8.2 iOS - no sound, no notification appears - but everything is switched on.

  • How to reset view criteria in transient view object

    Hi,
    I have a view object with one transient attribute:
    ViewCriteria vc = null;
    ViewCriteriaRow vcRow = null;
    ViewObject vo = am.findViewObject("TestView");
    vo.setQueryMode(ViewObject.QUERY_MODE_SCAN_VIEW_ROWS);
    Row newRow1 = vo.createRow();
    newRow1.setAttribute("TestAttr", new Number(10));
    vo.insertRow(newRow1);
    Row newRow2 = vo.createRow();
    newRow2.setAttribute("TestAttr", new Number(20));
    vo.insertRow(newRow2);
    ViewCriteria vc = null;
    ViewCriteriaRow vcRow = null;
    vc = vo.createViewCriteria();
    vc.setCriteriaMode(ViewCriteria.CRITERIA_MODE_CACHE);
    vcRow = vc.createViewCriteriaRow();
    vcRow.setAttribute("TestAttr", new Number(10));
    vc.addElement(vcRow);
    vo.applyViewCriteria(vc);
    vo.executeQuery();
    System.out.println("Rows: "+vo.getEstimatedRowCount());  // Works as expected
    vo.getViewCriteria().resetCriteria();  // This code should reset view criteria
    vc = vo.createViewCriteria();
    vc.setCriteriaMode(ViewCriteria.CRITERIA_MODE_CACHE);
    vcRow = vc.createViewCriteriaRow();
    vcRow.setAttribute("TestAttr", new Number(20));
    vc.addElement(vcRow);
    vo.applyViewCriteria(vc);
    vo.executeQuery();
    System.out.println("Rows: "+vo.getEstimatedRowCount());  // Returns 0 rows - should return 1How to reset and apply view criteria ?

    try to remove the previously view criteria. ie
    ViewObjectImpl vo = this.getSomeViewObject();
    ViewCriteria vc = vo.getViewCriteria("criteria_name");
    vo.removeViewCriteria("criteria_name");
    vc.resetCriteria();
    vo.applyViewCriteria(vc);
    see the link below
    http://adfcodebits.blogspot.com/2010/04/bit-7-reseting-view-criteria-associated.html

  • View Link between two query views

    Hi is it possible to create a view link between two views having the where clause bind variables.
    How you set the bind variables at the run time for the View objects. It is giving hard time for me to use the Master view in the XmlData bean to generate the Xml document.
    I am able to set the Master views bind variables, but for view link destination view
    where clause bind variables are not able to set ( link object link condition bind variables are binded run time but the views where chause bind variables of destination view are unable to setand bind)
    Thanks
    null

    Easiest way to do this is to add additional transient attributes to your master view object, and then include those additional transient attributes in the list of source attributes for your view link. This way, you can get BC4J to automatically refer to their values with no additional code on your part.

  • 10g Preview: No way to rename view link usages in AM

    10g Preview (9.0.5.0.0 Build 1375), Win2k SP3.
    I generated the entity objects, view objects, associations, and view links from my DB structure. I created an application module with the default data model from the view objects and view links.
    I then renamed all of the view links using the Rename View Link dialog. The AM's xml file was correctly updated with the new names of the underlying view links, but the view link usages retained the old names.
    There does not appear to be a convenient way of renaming the view link usages in the AM. The workarounds are either to deconstruct the data model and then reconstruct it, or to manually edit the .java and .xml files.
    I would like to see, at minimum, the ability to rename the AM's usages via a right-click menu in the Structure pane. This would affect both view object and view link usages. Currently the only option available in the right-click menu is to edit the underlying business object, not the usage. It also would make sense to allow view link usages to be renamed from the Data Model page of the AM wizard.

    That worked beautifully. I didn't have the property inspector open originally, so it's nice to know there is a way to rename usages after all.
    I wonder if there's a usability issue here though... maybe it's just me, but with the ability to rename some things via the right-click menu in the navigator pane, it seemed natural to look in the very similar structure pane for the same sort of functionality. Now there's a third place to look. Perhaps if the right-click menu in the structure pane simply had a "Properties..." entry or something similar that brought focus to the Property Inspector, it would help the user understand that there's another place to try to make the desired changes.

  • View links

    Hi,
    I have defined a view link between 2 entity objects, based on the primary key of the source(master), and the foreign key of the destination(details) which have a one-many relationship. I am trying to traverse from a destination row to the master row by using the getXXXview() on the detail row.
    Any ideas on the following stack trace of the exception that is thrown:
    oracle.jbo.SQLStmtException: JBO-27122: SQL error during statement preparation. Statement: SELECT PerEo.PERIDN, PerEo.NATOFPER, PerEo.PERSTAT, PerEo.PERSTATCHGD, PerEo.PERXMTSTAT, PerEo.NATNPOPGRPCD, PerEo.POSTADDR1, PerEo.POSTADDR2, PerEo.POSTADDR3, PerEo.POSTADDR4, PerEo.POSTADDR5, PerEo.POSTCDPOST, PerEo.POSTADDRCORIND, PerEo.ADDRCHGD, PerEo.STREETADDR1, PerEo.STREETADDR2, PerEo.STREETADDR3, PerEo.STREETADDR4, PerEo.POSTCDSTREET, PerEo.DCEEADDR, PerEo.BUSORSURNAME, PerEo.HOLDCMPREGTN, PerEo.TRADENAME, PerEo.PERIDNPROX, PerEo.PERIDNREP, PerEo.NOFBRANCHES, PerEo.INITIALS, PerEo.AREACD, PerEo.PERMOVEIND, PerEo.PERSUSPECTIND, PerEo.DTOWN, PerEo.TIMESTAMP, PerEo.RECSTAT FROM NATIS.PER PerEo WHERE (? = AliasEo.PERIDN)
         at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:607)
         at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:2600)
         at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:521)
         at oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed(ViewRowSetIteratorImpl.java:2197)
         at oracle.jbo.server.ViewRowSetIteratorImpl.first(ViewRowSetIteratorImpl.java:1141)
         at oracle.jbo.server.ViewRowSetImpl.first(ViewRowSetImpl.java:2240)
         at oracle.jbo.server.AssociationDefImpl.get(AssociationDefImpl.java:287)
         at oracle.jbo.server.ViewAttributeDefImpl.get(ViewAttributeDefImpl.java:302)
         at oracle.jbo.server.ViewRowStorage.getAttributeInternal(ViewRowStorage.java:800)
         at oracle.jbo.server.ViewRowImpl.getAttributeInternal(ViewRowImpl.java:570)
         at enatis.per.AliasViewRowImpl.getPerView(AliasViewRowImpl.java:297)
         at enatis.per.PerIdSmImpl.doBrGetPerRow(PerIdSmImpl.java:827)
         at enatis.per.PerIdSmImpl.isValidIdDocN(PerIdSmImpl.java:372)
         at enatis.per.PerIdSmImpl.doBrPerIdVoOnSet(PerIdSmImpl.java:265)
         at enatis.per.PerIdSmImpl.setPerIdVo(PerIdSmImpl.java:226)
         at enatis.per.PerChangeParticularsTmImpl.setPerIdVo(PerChangeParticularsTmImpl.java:96)
         at enatis.per.ui.actions.PerIdPost.execute(PerIdPost.java:62)
         at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:446)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:266)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1292)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:510)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:721)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:536)
    ## Detail 0 ##
    java.sql.SQLException: ORA-00904: "ALIASEO"."PERIDN": invalid identifier
         at oracle.jdbc.dbaccess.DBError.throwSqlException(DBError.java:187)
         at oracle.jdbc.ttc7.TTIoer.processError(TTIoer.java:241)
         at oracle.jdbc.ttc7.Oall7.receive(Oall7.java:543)
         at oracle.jdbc.ttc7.TTC7Protocol.doOall7(TTC7Protocol.java:1477)
         at oracle.jdbc.ttc7.TTC7Protocol.parseExecuteFetch(TTC7Protocol.java:888)
         at oracle.jdbc.driver.OracleStatement.doExecuteQuery(OracleStatement.java:2267)
         at oracle.jdbc.driver.OracleStatement.doExecuteWithTimeout(OracleStatement.java:2525)
         at oracle.jdbc.driver.OraclePreparedStatement.executeUpdate(OraclePreparedStatement.java:452)
         at oracle.jdbc.driver.OraclePreparedStatement.executeQuery(OraclePreparedStatement.java:382)
         at oracle.jbo.server.QueryCollection.executeQuery(QueryCollection.java:549)
         at oracle.jbo.server.ViewObjectImpl.executeQueryForCollection(ViewObjectImpl.java:2600)
         at oracle.jbo.server.ViewRowSetImpl.execute(ViewRowSetImpl.java:521)
         at oracle.jbo.server.ViewRowSetIteratorImpl.ensureRefreshed(ViewRowSetIteratorImpl.java:2197)
         at oracle.jbo.server.ViewRowSetIteratorImpl.first(ViewRowSetIteratorImpl.java:1141)
         at oracle.jbo.server.ViewRowSetImpl.first(ViewRowSetImpl.java:2240)
         at oracle.jbo.server.AssociationDefImpl.get(AssociationDefImpl.java:287)
         at oracle.jbo.server.ViewAttributeDefImpl.get(ViewAttributeDefImpl.java:302)
         at oracle.jbo.server.ViewRowStorage.getAttributeInternal(ViewRowStorage.java:800)
         at oracle.jbo.server.ViewRowImpl.getAttributeInternal(ViewRowImpl.java:570)
         at enatis.per.AliasViewRowImpl.getPerView(AliasViewRowImpl.java:297)
         at enatis.per.PerIdSmImpl.doBrGetPerRow(PerIdSmImpl.java:827)
         at enatis.per.PerIdSmImpl.isValidIdDocN(PerIdSmImpl.java:372)
         at enatis.per.PerIdSmImpl.doBrPerIdVoOnSet(PerIdSmImpl.java:265)
         at enatis.per.PerIdSmImpl.setPerIdVo(PerIdSmImpl.java:226)
         at enatis.per.PerChangeParticularsTmImpl.setPerIdVo(PerChangeParticularsTmImpl.java:96)
         at enatis.per.ui.actions.PerIdPost.execute(PerIdPost.java:62)
         at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:446)
         at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:266)
         at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1292)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:510)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind.server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:721)
         at com.evermind.server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:306)
         at com.evermind.server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:767)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:259)
         at com.evermind.server.http.HttpRequestHandler.run(HttpRequestHandler.java:106)
         at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:803)
         at java.lang.Thread.run(Thread.java:536)

    Thanks,
    (I removed irrelevent attributes on the following XML files.)
    <?xml version="1.0" encoding='windows-1252'?>
    <!DOCTYPE Entity SYSTEM "jbo_03_01.dtd">
    <Entity
    Name="PerEo"
    DBObjectType="table"
    DBObjectName="NATIS.PER"
    AliasName="PerEo"
    BindingStyle="Oracle"
    UseGlueCode="false"
    CodeGenFlag="4"
    RowClass="enatis.per.PerEoImpl" >
    <DesignTime>
    <Attr Name="_isCodegen" Value="true" />
    <Attr Name="_version" Value="9.0.3.10.7" />
    <AttrArray Name="_publishEvents">
    </AttrArray>
    </DesignTime>
    <Attribute
    Name="PerIdN"
    IsNotNull="true"
    Precision="12"
    Type="java.lang.String"
    ColumnName="PERIDN"
    ColumnType="CHAR"
    SQLType="VARCHAR"
    TableName="NATIS.PER"
    PrimaryKey="true"
    RetrievedOnUpdate="true"
    RetrievedOnInsert="true" >
    <DesignTime>
    <Attr Name="_DisplaySize" Value="12" />
    </DesignTime>
    </Attribute>
    <ViewLinkAccessor
    Name="AliasView"
    ViewLink="enatis.per.PerAliasVl"
    ViewLinkEnd="enatis.per.PerAliasVl.AliasView"
    ViewLinkOtherEnd="enatis.per.PerAliasVl.PerView"
    Type="PerViewRowImpl"
    IsUpdateable="false" >
    </ViewLinkAccessor>
    <Key
    Name="SysC006164" >
    <AttrArray Name="Attributes">
    <Item Value="enatis.per.PerEo.PerIdN" />
    </AttrArray>
    <DesignTime>
    <Attr Name="_DBObjectName" Value="SYS_C006164" />
    <Attr Name="_checkCondition" Value="&#34;PERIDN&#34; IS NOT NULL" />
    <Attr Name="_isCheck" Value="true" />
    </DesignTime>
    </Key>
    <Key
    Name="PereoPrimaryKey" >
    <AttrArray Name="Attributes">
    <Item Value="enatis.per.PerEo.PerIdN" />
    </AttrArray>
    <DesignTime>
    <Attr Name="_DBObjectName" Value="PEREO_PRIMARY_KEY" />
    <Attr Name="_isPrimary" Value="true" />
    </DesignTime>
    </Key>
    </Entity>
    <?xml version="1.0" encoding='windows-1252'?>
    <!DOCTYPE Entity SYSTEM "jbo_03_01.dtd">
    <Entity
    Name="AliasEo"
    DBObjectType="table"
    DBObjectName="NATIS.ALIAS"
    AliasName="AliasEo"
    BindingStyle="Oracle"
    UseGlueCode="false"
    CodeGenFlag="4"
    RowClass="enatis.per.AliasEoImpl" >
    <DesignTime>
    <Attr Name="_isCodegen" Value="true" />
    <Attr Name="_version" Value="9.0.3.10.7" />
    <AttrArray Name="_publishEvents">
    </AttrArray>
    </DesignTime>
    <Attribute
    Name="IdDocTypeCd"
    IsNotNull="true"
    Precision="2"
    Type="java.lang.String"
    ColumnName="IDDOCTYPECD"
    ColumnType="CHAR"
    SQLType="VARCHAR"
    TableName="NATIS.ALIAS"
    PrimaryKey="true"
    RetrievedOnUpdate="true"
    RetrievedOnInsert="true" >
    <DesignTime>
    <Attr Name="_DisplaySize" Value="2" />
    </DesignTime>
    </Attribute>
    <Attribute
    Name="IdDocN"
    IsNotNull="true"
    Precision="13"
    Type="java.lang.String"
    ColumnName="IDDOCN"
    ColumnType="CHAR"
    SQLType="VARCHAR"
    TableName="NATIS.ALIAS"
    PrimaryKey="true"
    RetrievedOnUpdate="true"
    RetrievedOnInsert="true" >
    <DesignTime>
    <Attr Name="_DisplaySize" Value="13" />
    </DesignTime>
    </Attribute>
    <Attribute
    Name="PerIdN"
    IsNotNull="true"
    Precision="12"
    Type="java.lang.String"
    ColumnName="PERIDN"
    ColumnType="CHAR"
    SQLType="VARCHAR"
    TableName="NATIS.ALIAS"
    RetrievedOnUpdate="true"
    RetrievedOnInsert="true" >
    <DesignTime>
    <Attr Name="_DisplaySize" Value="12" />
    </DesignTime>
    </Attribute>
    <ViewLinkAccessor
    Name="PerView"
    ViewLink="enatis.per.PerAliasVl"
    ViewLinkEnd="enatis.per.PerAliasVl.PerView"
    ViewLinkOtherEnd="enatis.per.PerAliasVl.AliasView"
    Type="oracle.jbo.RowIterator"
    IsUpdateable="false" >
    </ViewLinkAccessor>
    <Key
    Name="SysC005807" >
    <AttrArray Name="Attributes">
    <Item Value="enatis.per.AliasEo.IdDocTypeCd" />
    </AttrArray>
    <DesignTime>
    <Attr Name="_DBObjectName" Value="SYS_C005807" />
    <Attr Name="_checkCondition" Value="&#34;IDDOCTYPECD&#34; IS NOT NULL" />
    <Attr Name="_isCheck" Value="true" />
    </DesignTime>
    </Key>
    <Key
    Name="SysC005808" >
    <AttrArray Name="Attributes">
    <Item Value="enatis.per.AliasEo.IdDocN" />
    </AttrArray>
    <DesignTime>
    <Attr Name="_DBObjectName" Value="SYS_C005808" />
    <Attr Name="_checkCondition" Value="&#34;IDDOCN&#34; IS NOT NULL" />
    <Attr Name="_isCheck" Value="true" />
    </DesignTime>
    </Key>
    <Key
    Name="SysC005809" >
    <AttrArray Name="Attributes">
    <Item Value="enatis.per.AliasEo.PerIdN" />
    </AttrArray>
    <DesignTime>
    <Attr Name="_DBObjectName" Value="SYS_C005809" />
    <Attr Name="_checkCondition" Value="&#34;PERIDN&#34; IS NOT NULL" />
    <Attr Name="_isCheck" Value="true" />
    </DesignTime>
    </Key>
    <Key
    Name="AliaseoPrimaryKey" >
    <AttrArray Name="Attributes">
    <Item Value="enatis.per.AliasEo.IdDocTypeCd" />
    <Item Value="enatis.per.AliasEo.IdDocN" />
    </AttrArray>
    <DesignTime>
    <Attr Name="_DBObjectName" Value="ALIASEO_PRIMARY_KEY" />
    <Attr Name="_isPrimary" Value="true" />
    </DesignTime>
    </Key>
    </Entity>
    <?xml version="1.0" encoding='windows-1252'?>
    <!DOCTYPE ViewLink SYSTEM "jbo_03_01.dtd">
    <ViewLink
    Name="PerAliasVl"
    Where="? = AliasEo.PERIDN" >
    <DesignTime>
    <Attr Name="_isCodegen" Value="true" />
    <Attr Name="_version" Value="9.0.3.10.7" />
    </DesignTime>
    <ViewLinkDefEnd
    Name="PerView"
    Cardinality="1"
    Owner="enatis.per.PerView"
    Source="true" >
    <AttrArray Name="Attributes">
    <Item Value="enatis.per.PerView.PerIdN" />
    </AttrArray>
    <DesignTime>
    <Attr Name="_minCardinality" Value="1" />
    <Attr Name="_isUpdateable" Value="true" />
    <Attr Name="_finderName" Value="PerView" />
    <Attr Name="_accessor" Value="true" />
    <Attr Name="_entityAccessor" Value="true" />
    </DesignTime>
    </ViewLinkDefEnd>
    <ViewLinkDefEnd
    Name="AliasView"
    Cardinality="-1"
    Owner="enatis.per.AliasView" >
    <AttrArray Name="Attributes">
    <Item Value="enatis.per.AliasView.PerIdN" />
    </AttrArray>
    <DesignTime>
    <Attr Name="_isUpdateable" Value="true" />
    <Attr Name="_finderName" Value="AliasView" />
    <Attr Name="_accessor" Value="true" />
    <Attr Name="_entityAccessor" Value="true" />
    </DesignTime>
    </ViewLinkDefEnd>
    </ViewLink>
    The code for the create etc has been removed but it looked like this.
    ViewLinkImpl perAliasVl = (ViewLinkImpl) getPerAliasVl1();
    PerViewImpl perView = (PerViewImpl) perAliasVl.getSource();
    AliasViewImpl aliasView = (AliasViewImpl) perAliasVl.getDestination();
    PerViewRowImpl perRow = (PerViewRowImpl) perView.createRow();
    AliasViewRowImpl aliasRow = (AliasViewRowImpl) aliasView.createRow();
    perRow.setPerIdN("new key");
    perView.insertRow(perRow);
    aliasRow.setIdDocTypeCd("1");
    aliasRow.setIdDocN("new doc");
    aliasView.insertRow(aliasRow);
    AttributeValException: AliasEo.PerIdN.....

  • View Link  and HGrid - Urgent

    Hi,
    The hierarchy in HGrid can be constructed using the view link and a view object.
    If I want to associate a "Where" condition with the child rows of my "root Row", I need to relate the source view object with destination view object.
    How do I independently associate a where clause with the child rows ?
    I am working on this for a long time and finding nobody to help me on HGrid complexities.
    Can anybody please help ? Does anybody suggest raising a TAR for this, to Oracle ?
    Thanks,
    Amit

    Amit,
    You would have to build runtime VL in that case, because only then you would be able to first set where clause of child VO and then get filtered rows by runtime VL.
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                   

  • View Link sql window is non editable

    Hi All,
    I am creating view link between two views using wizard, but when I reach view link sql window it is blank and non editable. any ideas on this?
    Thanks in advance.
    Hitesh

    Hitesh,
    This a very generic case and happens when the source VO join attribute and destination VO join attribute are not of same type, i.e. data type and data length. Make sure that is happening in your case, this will solve your problem.
    --Mukul                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

  • View links / Associations best practices

    Hello,
    I have a little question on how to use view links and associations in an optimal way.
    The situation is the following:
    I have 2 tables: one master and one detail, I have therefore the following default classes:
    Entities: MasterImpl, DetailImpl,
    Views: MasterViewImpl, MasterViewRowImpl,
    View Rows: DetailViewImpl, DetailViewRowImpl,
    Association: FkMasterHasDetailAssoc
    View Link: FkMasterHasDetailLink
    I also hav an application module which I can use as a container faor all these.
    I need to process a series of rows from the Master view. Of course the process includes screening the corresponding detail rows.
    I'd like to know which one of the following solutions will give the best results in terms of performance, or maybe there is no difference:
    1/ Write a process() method in the MasterViewRowImpl view Row class, which uses the view link to retrieve the corresponding detail View rows. Then loop through the MasterView, calling process() on each row.
    2/ Write a process() method in the MasterImpl Entity class, which uses the Association's RowIterator to retrieve the corresponding detail entities. Then loop through the MasterView, calling process() on each row's underlying entity.
    3/ Include both views, linked by the view link, in the application module and implement a AppMod.process() method which loops through the MasterView and the DetailView.
    Which one will make best use of the resources, or execute the smallest number of queries? Or maybe there will be no difference at all?
    Thanks in advance for any answer
    Remi DEH
    Oops, before I forget: I'm using JDev3.1 / 8.1.6, both on NT and I'm developping, with BC4J, an application meant to run as a series of EJB, deployed either in JServer or OAS/iAS.
    null

    KeepItSimple,Stupid!
    That is, just because there are neat things like drop-down
    text, marquees, and such, doesn't mean you should use them.
    Stick to the basic HTML fonts and colors (use the
    w3schools web site for all
    things HTML and CSS.
    Instead of styles, create your lists by selecting Normal
    paragraphs and formatting with the Bullet and Number toolbar
    buttons.
    Keep your tables as simple as possible (try not to nest them
    and have all sorts of row and column spans, and try to avoid lists
    and figures, if you can). Also, break up very long tables into
    functional groupings with introductory headings.
    Use
    Peter Grainge's web
    site and
    Rick
    Stone's web site for all the best workarounds and diagnostics.
    Good luck,
    Leon

  • How to retrieve the values from a Transient View Object

    Hi Experts,
    I am using Jdevelpoer11.1.1.5.0. I created one Transient view object with attributes EmpId,Salary.
    In Backing Bean i will create rows for that view object and display it in the form of <af:Table> like Empid, Salary and an Update Link.
    Now my problem is i want to update the salary of the particular EmpId. For Example if the EmpId is 100 and salary is 10000 now i want to increase the salary to 20000 and if i click on the update button; i want to retrieve the particular employee details in my backing bean. How can i acheive this?
    Thanks in advance.

    A better approach would be to programmatically populate rows in the <VO>Impl.java by overriding the executeQueryForCollection(0 as specified here -
    http://adfpractice-fedor.blogspot.in/2011/01/adf-bc-programmatically-populated-vo.html
    You can write the logic to update the salary in an AM method then on click of Update or in the getter of Salry field if logic is valid for all fields...

  • [SOLVED] Multiple Dynamic View Objects and View Links - ADF Tree Table

    Hi all,
    I've got a method that creates 3 dynamic viewobjects using this:
                ViewDefImpl Level1ViewDef = new ViewDefImpl("Level1View");
                Level1ViewDef.addViewAttribute("LevelDescription","LEVEL1_DESCRIPTION",String.class);
                Level1ViewDef.addViewAttribute("SetOfBooksId","SET_OF_BOOKS_ID",Number.class);
                Level1ViewDef.addViewAttribute("CodeCombinationId","CODE_COMBINATION_ID",Number.class);
                Level1ViewDef.addViewAttribute("Level1","LEVEL1",String.class);
                Level1ViewDef.addViewAttribute("AccountType","ACCOUNT_TYPE",String.class);
                Level1ViewDef.addViewAttribute("PeriodYear","PERIOD_YEAR",Number.class);
                Level1ViewDef.addViewAttribute("PeriodNum","PERIOD_NUM",Number.class);
                Level1ViewDef.addViewAttribute("PeriodName","PERIOD_NAME",String.class);
                Level1ViewDef.addViewAttribute("PtdActual","PTD_ACTUAL",Number.class);
                Level1ViewDef.addViewAttribute("YtdActual","YTD_ACTUAL",Number.class);
                Level1ViewDef.addViewAttribute("LtdActual","LTD_ACTUAL",Number.class);
                Level1ViewDef.addViewAttribute("BudgetName","BUDGET_NAME",String.class);
                Level1ViewDef.addViewAttribute("BudgetVersionId","BUDGET_VERSION_ID",Number.class);
                Level1ViewDef.addViewAttribute("PtdBudget","PTD_BUDGET",Number.class);
                Level1ViewDef.addViewAttribute("YtdBudget","YTD_BUDGET",Number.class);
                Level1ViewDef.addViewAttribute("LtdBudget","LTD_BUDGET",Number.class);
                Level1ViewDef.addViewAttribute("EncumbranceType","ENCUMBRANCE_TYPE",String.class);
                Level1ViewDef.addViewAttribute("EncumbranceTypeId","ENCUMBRANCE_TYPE_ID",Number.class);
                Level1ViewDef.addViewAttribute("PtdCommitment","PTD_COMMITMENT",Number.class);
                Level1ViewDef.addViewAttribute("YtdCommitment","YTD_COMMITMENT",Number.class);
                Level1ViewDef.addViewAttribute("LtdCommitment","LTD_COMMITMENT",Number.class);
                Level1ViewDef.setQuery(sql_level1);
                Level1ViewDef.setFullSql(true);
                Level1ViewDef.setBindingStyle(SQLBuilder.BINDING_STYLE_ORACLE_NAME);
                Level1ViewDef.resolveDefObject();
                Level1ViewDef.registerDefObject();
                ViewObject vo1 = createViewObject("Level1View",Level1ViewDef);I can create the view objects fine and create a single viewlink between two of them, however i'm getting problems with 2 view links.
    This is how I'm creating a view link:
                ViewLink Level2Level1FKLink = createViewLinkBetweenViewObjects("Level2Level1FKLink1",
                                                        "Level2View",
                                                        vo1,
                                                        new AttributeDef[]{
                                                          vo1.findAttributeDef("Level1")
                                                        vo2,
                                                        new AttributeDef[]{
                                                          vo2.findAttributeDef("Level1")
                                                        "LEVEL1 = :Bind_Level1");
                ViewLink Level3Level2FKLink = createViewLinkBetweenViewObjects("Level3Level2FKLink1",
                                                        "Level3View",
                                                        vo2,
                                                        new AttributeDef[]{
                                                          vo2.findAttributeDef("Level2")
                                                        vo3,
                                                        new AttributeDef[]{
                                                          vo3.findAttributeDef("Level2")
                                                        "LEVEL2 = :Bind_Level2");I can get the data to display on an adf tree table if i'm only using a single view link, but when i try and implement 2 view link (for 3 levels on the adf tree table) i'm getting problems displaying the data.
    I'm getting the following error:
    Aug 10, 2007 2:44:39 PM oracle.adfinternal.view.faces.renderkit.core.xhtml.PanelPartialRootRenderer encodeAll
    SEVERE: Error during partial-page rendering
    oracle.jbo.NoDefException: JBO-25058: Definition Level3View of type Attribute not found in Level2View_Level2Level1FKLink1_Level2ViewThe thing is, Level3View isn't in the Level2Level1FKLink viewlink.
    I've been reading about something similar here
    BC4J Master-Detail-Detail
    but I am still unsure of what the problem is.
    Thanks in advance.

    I found the answer here:
    http://radio.weblogs.com/0118231/stories/2004/06/10/correctlyImplementingMultilevelDynamicMasterDetail.html

Maybe you are looking for