Dirty check for transient attributes in view object

Hi,
I am using JDeveloper 11.1.1.4 and ADF BC in my project.
In one of my view objects,I have a transient attribute added for some business logic.
I am doing dirty check in my project as below.
boolean dirty = false;
boolean amDirty = false;
// check application module
ApplicationModule am =
getBindingContainer().getDataControl().getApplicationModule();
amDirty = am.getTransaction().isDirty();
//Check if datacontrol is dirty
BindingContext bctx =
oracle.adf.controller.binding.BindingUtils.getBindingContext();
dirty =
bctx.findDataControlFrame(bctx.getCurrentDataControlFrame()).isTransactionDirty();
return amDirty || dirty;
My requirement is that,I dont want the dirty check to be applied on the transient attribute in the view object.
Is there any way to achieve this.Please advice...
Regards,
Praveen

Hi Frank,
Thanks for the suggestion.
I followed the link.But if a transient attribute is modified,then also ((ApplicationModule)getDataProvider()).getTransaction().isDirty() is returning true and the transaction is made dirty.
I am setting a transient attribute like this getNwOperVOIter().getCurrentRow().setAttribute("AcctNoTrans")....when I am editing a row.
Can I get explicit handle at viewobjectimpl for this transient attribute??
Regards,
Praveen

Similar Messages

  • Null Pointer Exception after adding Transient attribute in View Object

    Hello Experts
    I am using Jdev 11.1.2.3. I have added a transient attribute in view object and set default value to another view object attribute via view accessor of view link between view objects. the value of expression is ItemMasterRO.Description, where ItemMasterRO is the name of view accessor define in the view link and Description is the name of attribute which is in other view object.
    Data is retrieving as per my requirements, but when i click on add record button in application module, it is throwing a  null pointer exception. Here is stack trace
    oracle.jbo.JboException: JBO-29000: Unexpected exception caught: java.lang.NullPointerException, msg=null
        at oracle.jbo.ExprEval.internalEvaluateGroovyScript(ExprEval.java:1218)
        at oracle.jbo.ExprEval.doEvaluate(ExprEval.java:1253)
        at oracle.jbo.ExprEval.evaluateForRow(ExprEval.java:1075)
        at oracle.jbo.server.AttributeDefImpl.evaluateTransientExpression(AttributeDefImpl.java:2132)
        at oracle.jbo.server.ViewRowStorage.getAttributeInternal(ViewRowStorage.java:1856)
        at oracle.jbo.server.ViewRowImpl.getAttributeValue(ViewRowImpl.java:1967)
        at oracle.jbo.server.ViewRowImpl.getAttributeInternal(ViewRowImpl.java:829)
        at oracle.jbo.server.ViewRowImpl.getAttrInvokeAccessor(ViewRowImpl.java:911)
        at oracle.jbo.server.ViewRowImpl.getAttribute(ViewRowImpl.java:859)
        at oracle.jbo.uicli.binding.JUCtrlValueBinding.internalGetAttributeValueFromRow(JUCtrlValueBinding.java:1213)
        at oracle.jbo.uicli.binding.JUCtrlValueBinding.getAttributeFromRow(JUCtrlValueBinding.java:764)
        at oracle.jbo.uicli.binding.JUCtrlValueBinding.getAttributeFromRow(JUCtrlValueBinding.java:792)
        at oracle.jbo.uicli.binding.JUCtrlAttrsBinding.updateValuesFromRow(JUCtrlAttrsBinding.java:145)
        at oracle.jbo.uicli.jui.JULabelBinding.updateValuesFromRow(JULabelBinding.java:114)
        at oracle.jbo.uicli.binding.JUIteratorBinding.updateValuesFromRows(JUIteratorBinding.java:349)
        at oracle.adf.model.binding.DCIteratorBinding.setupRSIstate(DCIteratorBinding.java:867)
        at oracle.adf.model.binding.DCIteratorBinding.refreshControlAndNotifyDCE(DCIteratorBinding.java:707)
        at oracle.adf.model.binding.DCIteratorBinding.refreshControl(DCIteratorBinding.java:676)
        at oracle.jbo.uicli.binding.JUIteratorBinding.refreshControl(JUIteratorBinding.java:485)
        at oracle.adf.model.binding.DCIteratorBinding.refresh(DCIteratorBinding.java:4555)
        at oracle.adf.model.binding.DCBindingContainer.refreshExecutables(DCBindingContainer.java:3542)
        at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:3375)
        at oracle.adf.model.binding.DCBindingContainer.refreshControl(DCBindingContainer.java:2938)
        at oracle.jbo.jbotester.NavigationBar.doInsertAction(NavigationBar.java:143)
        at oracle.jbo.jbotester.NavigationBar.doAction(NavigationBar.java:110)
        at oracle.jbo.uicli.controls.JUNavigationBar$NavButton.actionPerformed(JUNavigationBar.java:118)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
        at java.awt.Component.processMouseEvent(Component.java:6289)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
        at java.awt.Component.processEvent(Component.java:6054)
        at java.awt.Container.processEvent(Container.java:2041)
        at java.awt.Component.dispatchEventImpl(Component.java:4652)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Component.dispatchEvent(Component.java:4482)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
        at java.awt.Container.dispatchEventImpl(Container.java:2085)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4482)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
        at java.awt.EventQueue.access$000(EventQueue.java:85)
        at java.awt.EventQueue$1.run(EventQueue.java:603)
        at java.awt.EventQueue$1.run(EventQueue.java:601)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
        at java.awt.EventQueue$2.run(EventQueue.java:617)
        at java.awt.EventQueue$2.run(EventQueue.java:615)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    Caused by: java.lang.NullPointerException
        at org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.acceptGetProperty(PogoGetPropertySite.java:32)
        at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:237)
        at bc4j_com_syncreon_model_queries_SequenceItemContainerXrefVO_ItemDescription_null_gs.run(bc4j_com_syncreon_model_queries_SequenceItemContainerXrefVO_ItemDescription_null_gs.groovy:1)
        at oracle.jbo.ExprEval.internalEvaluateGroovyScript(ExprEval.java:1200)
        ... 62 more
    ## Detail 0 ##
    java.lang.NullPointerException
        at org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.acceptGetProperty(PogoGetPropertySite.java:32)
        at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGetProperty(AbstractCallSite.java:237)
        at bc4j_com_syncreon_model_queries_SequenceItemContainerXrefVO_ItemDescription_null_gs.run(bc4j_com_syncreon_model_queries_SequenceItemContainerXrefVO_ItemDescription_null_gs.groovy:1)
        at oracle.jbo.ExprEval.internalEvaluateGroovyScript(ExprEval.java:1200)
        at oracle.jbo.ExprEval.doEvaluate(ExprEval.java:1253)
        at oracle.jbo.ExprEval.evaluateForRow(ExprEval.java:1075)
        at oracle.jbo.server.AttributeDefImpl.evaluateTransientExpression(AttributeDefImpl.java:2132)
        at oracle.jbo.server.ViewRowStorage.getAttributeInternal(ViewRowStorage.java:1856)
        at oracle.jbo.server.ViewRowImpl.getAttributeValue(ViewRowImpl.java:1967)
        at oracle.jbo.server.ViewRowImpl.getAttributeInternal(ViewRowImpl.java:829)
        at oracle.jbo.server.ViewRowImpl.getAttrInvokeAccessor(ViewRowImpl.java:911)
        at oracle.jbo.server.ViewRowImpl.getAttribute(ViewRowImpl.java:859)
        at oracle.jbo.uicli.binding.JUCtrlValueBinding.internalGetAttributeValueFromRow(JUCtrlValueBinding.java:1213)
        at oracle.jbo.uicli.binding.JUCtrlValueBinding.getAttributeFromRow(JUCtrlValueBinding.java:764)
        at oracle.jbo.uicli.binding.JUCtrlValueBinding.getAttributeFromRow(JUCtrlValueBinding.java:792)
        at oracle.jbo.uicli.binding.JUCtrlAttrsBinding.updateValuesFromRow(JUCtrlAttrsBinding.java:145)
        at oracle.jbo.uicli.jui.JULabelBinding.updateValuesFromRow(JULabelBinding.java:114)
        at oracle.jbo.uicli.binding.JUIteratorBinding.updateValuesFromRows(JUIteratorBinding.java:349)
        at oracle.adf.model.binding.DCIteratorBinding.setupRSIstate(DCIteratorBinding.java:867)
        at oracle.adf.model.binding.DCIteratorBinding.refreshControlAndNotifyDCE(DCIteratorBinding.java:707)
        at oracle.adf.model.binding.DCIteratorBinding.refreshControl(DCIteratorBinding.java:676)
        at oracle.jbo.uicli.binding.JUIteratorBinding.refreshControl(JUIteratorBinding.java:485)
        at oracle.adf.model.binding.DCIteratorBinding.refresh(DCIteratorBinding.java:4555)
        at oracle.adf.model.binding.DCBindingContainer.refreshExecutables(DCBindingContainer.java:3542)
        at oracle.adf.model.binding.DCBindingContainer.internalRefreshControl(DCBindingContainer.java:3375)
        at oracle.adf.model.binding.DCBindingContainer.refreshControl(DCBindingContainer.java:2938)
        at oracle.jbo.jbotester.NavigationBar.doInsertAction(NavigationBar.java:143)
        at oracle.jbo.jbotester.NavigationBar.doAction(NavigationBar.java:110)
        at oracle.jbo.uicli.controls.JUNavigationBar$NavButton.actionPerformed(JUNavigationBar.java:118)
        at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
        at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
        at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
        at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
        at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
        at java.awt.AWTEventMulticaster.mouseReleased(AWTEventMulticaster.java:272)
        at java.awt.Component.processMouseEvent(Component.java:6289)
        at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
        at java.awt.Component.processEvent(Component.java:6054)
        at java.awt.Container.processEvent(Container.java:2041)
        at java.awt.Component.dispatchEventImpl(Component.java:4652)
        at java.awt.Container.dispatchEventImpl(Container.java:2099)
        at java.awt.Component.dispatchEvent(Component.java:4482)
        at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
        at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
        at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
        at java.awt.Container.dispatchEventImpl(Container.java:2085)
        at java.awt.Window.dispatchEventImpl(Window.java:2478)
        at java.awt.Component.dispatchEvent(Component.java:4482)
        at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:644)
        at java.awt.EventQueue.access$000(EventQueue.java:85)
        at java.awt.EventQueue$1.run(EventQueue.java:603)
        at java.awt.EventQueue$1.run(EventQueue.java:601)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
        at java.awt.EventQueue$2.run(EventQueue.java:617)
        at java.awt.EventQueue$2.run(EventQueue.java:615)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
        at java.awt.EventQueue.dispatchEvent(EventQueue.java:614)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
        at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
        at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
        at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
    Please advice....
    Thanks

    Hi,
    Just the exception stack without any information like what JDev version, what expression you've used for the default value of the transient attribute etc., is not enough for us to help you.
    -Arun

  • How to populate transient attribute from view object dynamically

    I have three 4 tables named as "employee,event,event_progress,and checklist progress". i have created a view object using the first three tables . i ahave also created 5 transient variables in to the same view object.when i dragged the view object in to my page as a table i want to populate those transient attribute.
    i have 5 transient attribute which are present as a column value named as chechlist_name in another table "checklist".those all transient attribute also having two sub rows whose data should be populated from the checklist progress table.

    Hi
    Please post your question on this forum, your question belong to this forum.
    JDeveloper and ADF
    Muhammad Nasir

  • Transient attribute in View Object

    I need to create a transient attribute on a VO query based ,I need a transient attr with a string value ,then I used the JDEV wizard and keep Literal value option and put a value string in value box.
    The problem is that when I drag and drop the relative property from DATA CONTROL to create an output text field , running all I don't see on web page the inserted value on VO, why ?
    thanks

    If you don't need to change this value then you can use Expression instead of Literal and put value under " ".
    But, if you need to change this value, then you can:
    - add something like this to your query: (select 'default_value' from dual) OR
    - override createInstanceFromResultSet() in your ViewObjectImpl class and set default value to row OR
    - if value of this transient object can't be null, use modified version of codigoadf approach:
    public String getDummy() {
         //return (String) getAttributeInternal(DUMMY);
        return getAttributeInternal(DUMMY) == null ? "yourValue" : getAttributeInternal(DUMMY);
    }Dario

  • Transient Attributes in Entity object vs View Object

    Hi Everyone,
    I need some suggestion with my project. I have a vendors table based on which I created an entity object (columns: vendor_id, contract_id, so on ) but I want to display vendor_name in UI which can be read from other table. I thought of using a transient attribute to populate this vendor_name.
    It is working fine when I create a new record (where I handled this in LOV return value of vendor_id field and it return vendor_id, vendor_name values) but when there is edit/view of page, this vendor_name is null which means I need to populate it during page load /refresh time. Can someone suggest me a better way to populate this transient attributes. I also want to know when should I use transient attributes in Entity object (I saw most of the developer using VO transient attributes in these kind of situation)
    Thanks,
    Ravi

    Hi,
    also want to know when should I use transient attributes in Entity object (I saw most of the developer using VO transient attributes in these kind of situation)
    transient values in entities are saved in the entity cache and thus can be changed in the UI. If you use transient attributes on the VO then these are read-only. All transient attribute however need to be populated upon page load, which you can do in a ViewRowImpl class that checks for a null value when the getter is called to then call a setter, or by using Groovy script as a default value (just set the attribute to script)
    Frank

  • How to change sql expression of SQL-Calculated Attribute of view object ?

    Hi
    jdev 11.1.1.5
    I have a view object with a SQL-Calculated Attribute (sumAnalytic) how can I change sql expression of this attribute in runtime?
    for example in application module method??

    Hi Mr Timo
    Thanks for your reply but I do not need dynamic vo because I can not change all of my vo
    I only need to change expression of SQL-Calculated Attribute of view object in run time.
    For this I set expression in view object something like this 'select 2 from dual' and in run time in my AM method I get the vo query and replace 'select 2 from dual' with something like 'selet sum(amnt) over (partition by 1)' and set new query.
    But I think the better solution must exist
    Thanks

  • How to put validation between attributes at View Object level in BC4J

    Hi,
    Is it possible in BC4J to put validation between attributes at View Object level?
    I know that I can do it at Entity Object level in validateEntity method, but I have several View Objects connected with one Entity Object and don't want to have the same validation logic for all View Objects.
    Thanks for any help!

    It returns errorWhat error does it return?
    John

  • Operation hasNext is invalid for a working set view object

    Can someone point me to soem documentation to why I'm getting this error? I'm obviously misunderstanding something fundamental.
    Thanks

    I have an application module with a client method as follows:
    public void setUserCredentials(String username, String password)
    UserAccountViewImpl vo = getUserAccountView1();
    vo.setWhereClauseParam(0, username);
    vo.setWhereClauseParam(1, password);
    vo.executeQuery();
    if (vo.hasNext()) (BREAK POINT TWO)
    vo.next();
    I have a struts action that is based on the BasicADFAction class in the tech paper "Oracle ADF Data Binding Primer and ADF/Struts Overview"
    by Steve Muench.
    public class IsLoginValidAction extends BasicADFAction
    protected ActionForward performActionLogic(ActionMapping mapping,
    ActionForm form, HttpServletRequest request, HttpServletResponse response)
    throws Exception
    .... other code that gets username and password from form
    DatamartModule am = (DatamartModule)getApplicationModule("DatamartModuleDataControl", request);
    am.setUserCredentials(username, password);
    ViewObject vo = am.findViewObject("UserAccountView1");
    if (vo.getCurrentRow() == null) -- BREAK POINT ONE
    ae.add("InvalidDetails", new ActionError("error.IsLoginValidAction.InvalidDetails"));
    return mapping.findForward("LoginError");
    UserAccountViewRowClient vr = (UserAccountViewRowClient)vo.getCurrentRow();
    .... do some other checks with the user account
    As you can see the above Action calls setUserCredentials(). What is driving me mad is the following. If I enter a valid username and password in the login page and reach break point one the method vo.getCurrentRow() returns null which is not what I expect!
    If I re-submit my login details again, when I reach break point one for the second time vo.getCurrentRow() is not null??
    I have also set a break point two just to make sure setUserCredentials is working and it always brings back a row when I enter the correct details. So why in the action when I select the same view object the current row is not available to me but is available the second time round?? I'm I missing something fundamental??
    I had some feedback on metalink where oracle support set check that the vo.isExecuted() == true and if it isn't then re-execute the query. I couldn't see why I should do this but I did. I found that vo.isExecuted is false the first time round but true the second time. It appears the first time round I am implicitly getting the query to execute for the first time even though I believe I have already done this in the setUserCredentials method.
    After adding a vo.executeQuery() I obviously needed to add code that obtained the row. As soon as vo.hasNext() is called I get:
    oracle.jbo.InvalidOperException: JBO-25048: Operation hasNext is invalid for a working set view object.
         at oracle.jbo.common.ws.WSObject.invalidOperation(WSObject.java:44)
         at oracle.jbo.common.ws.WSRowSetIteratorBase.hasNext(WSRowSetIteratorBase.java:381)
         at view.IsLoginValidAction.performActionLogic(IsLoginValidAction.java:66)
         at view.BasicADFAction.handleLifecycle(BasicADFAction.java:64)
         at view.BasicADFAction.execute(BasicADFAction.java:46)
         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:1482)
         at org.apache.struts.action.ActionServlet.doPost(ActionServlet.java:525)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ResourceFilterChain.doFilter(ResourceFilterChain.java:65)
         at oracle.security.jazn.oc4j.JAZNFilter.doFilter(Unknown Source)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.EvermindFilterChain.doFilter(EvermindFilterChain.java:16)
         at oracle.adf.model.servlet.ADFBindingFilter.doFilter(ADFBindingFilter.java:228)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ServletRequestDispatcher.invoke(ServletRequestDispatcher.java:600)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.ServletRequestDispatcher.forwardInternal(ServletRequestDispatcher.java:317)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.processRequest(HttpRequestHandler.java:790)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:270)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].server.http.HttpRequestHandler.run(HttpRequestHandler.java:112)
         at com.evermind[Oracle Application Server Containers for J2EE 10g (9.0.4.0.0)].util.ReleasableResourcePooledExecutor$MyWorker.run(ReleasableResourcePooledExecutor.java:192)
         at java.lang.Thread.run(Thread.java:534)
    I must misunderstand something fundamental. Any help would be really appreciated. Basically in my client code (The struts action) I want to access a single record that is based on a view. I prepare the view object by calling a custom service level method to set the username and password and execute the query.

  • Visible property for transient attribute.

    Hi,
    I am using J developer 11g Release 2.In my page i need to set the visible property for the transient attribute(conform password) because the transient attribute needs to be disable for some condition.I have tried but the property was working only when the attribute is not transient.Can we set the property for transient attribute?
    Help me on this..
    Thanks,
    Suganya.
    Edited by: Suganya on Feb 27, 2012 1:40 AM

    Disabling the visbile property:
    <af:inputText autoSubmit="true" id="it6" label="Table Attr"> </af:inputText>
    <af:inputText partialTriggers="it6" visible="#{bindings.AphdBe.inputValue eq null? 'false' : 'true'} " id="it2" label="Trans Attr"> </af:inputText>like this you should h'd.
    normally we use transiet term in vo's while coming to part ui.
    it will consider as attribute. no thing difference bwtn those attribute as timo says.
    --edited lately.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Af:query for transients attribute in VC and NO DATA after RowMatch

    Hi,
    I have a VO having two transient attributes (example, JoinDate, DeptName) out of which DeptName defined as LOV. I have a VC VC which run on 'database' mode and DeptName present in this VC and having default value like 'Computer'. VC configured to run automatically so that on page load data should display.
    Next, I have a af:query from this VC on jasff page. Before page load programatically we define query criteria and on page load query runs fine and data display on UI.
    Issue here is,
    When we add one more transient attribute JoinDate from 'Add Fields' (without adding any data) and click on submit we don't get data even if page load query is same as this query. Change is only a new attribute added from Add Fields and it not having any value.
    The changes observed in log is that, when we add one more criterion attribute JoinDate OR DeptName we find below entry in the log.
    VCs converted to RowMatch: ( (UPPER(DeptName) LIKE UPPER(vc_type1) ) )
    This means after query execution framework doing RowMatch for transient attribute WHICH IS PRESENT IN VC. Here freamework passing vc_type1 as null. So we are not getting any rows.
    I have tried like
    before VO executeQuery, setRowMatch(null) but NO luck.
    before VO executeQuery, setRowMatch("DeptName='Computer'") but NO luck.
    So please suggest me How Can we avoid RowMatch execution after execute query ?
    If not, how to get data which we got from executeQuery ?

    Please suggest.

  • Uppercase Attributes in View Object

    Hi
    Any one help me please on BC4J View Object Attributes should display in Uppercase only. currently default is InitCap.
    much appreciate your help.
    Regards
    Srini

    Hi Frank,
    Thanks for the suggestion.
    I followed the link.But if a transient attribute is modified,then also ((ApplicationModule)getDataProvider()).getTransaction().isDirty() is returning true and the transaction is made dirty.
    I am setting a transient attribute like this getNwOperVOIter().getCurrentRow().setAttribute("AcctNoTrans")....when I am editing a row.
    Can I get explicit handle at viewobjectimpl for this transient attribute??
    Regards,
    Praveen

  • Deleting attributes in view objects...

    I rewrote my query and now the attribute mappings are all wrong. The number of columns doesn't match the number of attributes. Other than laboriously editing the XML for the view object, is there an a way to get rid of all the view attributes and start as if it was a new VO? I tried selecting them in the wizard and structure pane to delete them, but this did not work. The xml file is protected in the XML editor.
    Any help is appreciated.
    UPDATE:
    I figured it out. Never mind.
    Message was edited by:
    user530348

    Best is to Open VO with Wizard . Some times VO can be modify manually using XML files but this method are more error prone.
    Hope your VO files got disturbed thats why you can edit with wizard.
    If you have its backup copy then open with wizard.
    Thanks

  • Size limitation for all attributes in user objects in Active Directory????

    hi geeks , i wanna know maximum size limit of an user objects attribute in   active directory ... like max amount of character first name attribute can hold ... Thank in advance..

    You can use ADSI Edit to view the properties of the attributes in the Schema container of your AD. In the Schema container you can select an attribute, like Company, right click, select properties, and find the rangeUpper property of the attribute. This
    is the maximum length in characters (or bytes). You can also use dsquery to retrieve rangeUpper for an attribute. For example:
    dsquery * "cn=Schema,cn=Configuration,dc=MyDomain,dc=com" -filter "(LDAPDisplayName=streetAddress)" -attr rangeUpper
    where your domain is MyDomain.com. This finds the maximum length for the "street address" attribute. A few values in my test domain (the values can be modified, so these are the defaults):
    company                      64
    streetAddress              1024
    physicalDeliveryOfficeName  128
    initials                      6
    st                          128
    postOfficeBox                40
    name                        255
    cn                           64
    You can use the first two spreadsheets on this page to help identify attributes in AD (with no Exchange):
    http://www.rlmueller.net/UserAttributes.htm
    The first spreadsheet documents the attributes corresponding to the fields on most of the tabs of ADUC. For example, "st" is the attribute for state, "physicalDeliveryOfficeName" for the field labeled "office". You need the
    LDAPDisplayName's of the attributes, like I used in the dsquery command above. The second spreadsheet documents all attributes in AD with more information, like the syntax and which class each applies to.
    Richard Mueller - MVP Directory Services

  • [SOLVED] New attributes in View Object not visible in pageDef

    Hi,
    I'm having a View Object whererin I create new attributes. The problem is that the newly created attributes are not available for selection in a table binding in the page definition.
    It seems like there is still somewhere a reference to the 'old' collection of attributes of the View Object. Is there a way to force an update?
    The .xml file of the View seems to have the correct query containing the new attributes. Altough, when I try to edit the table binding in the pageDefinition, the attributes are not available in the 'Available Attributes' frame.
    Thanks,
    Koen Verhulst
    edit: solved
    Edited by: Koen Verhulst on Mar 5, 2009 8:47 AM

    Hi Chetan,
    I am now able to add a new tab after adding a new entry with the Main View name in "Assign Access levels to Incident Tabs" in transaction SPRO.
    However, I am now facing a new issue when I add a main view in OIF component. There are 12 main views in the Object Instance Schema with ID's MainView<sequencenumber> as shown below.
    But when I add a new main view I am getting the ID with the format MainVIew<sequencenumber_hexadecimalvalues> and also I am able to edit the ID value which is not enabled for other main views as shown below.
    The problem with this hexadecimal value is that every time a change is done and I save the configuration, the number changes and this is causing problem as the configuration in SPRO does not match and the new tab becomes invisible.
    Please could you let me know what could be the reason and how to rectify this?
    Regards,
    Poojith M V

  • Property not settable error - it is a bug for transient attributes

    In WLI 8.1 I get the following error in Workshop on a Client Request method:
    "Property <name of transient attribute> of type <Java object type> is not
    settable and cannot be unmarshalled from XML."
    In my opinion it is an error, because it tries to serialize and deserialize
    a TRANSIENT attribute via XML, which should
    NOT be serialized at all (that's why it is transient).
    Regards,
    Robert Varga

    Roam,
    Thanks again for your suggestion,
    "Furthermore one should always Repair Permissions both before doing a Software Update and again afterwards."
    I honestly dont know anything about this "Repair Permissions" from the name, i though it is a verification of authentication to repair OS or some kind of credential issue, and since i m admin user then there is no point to verify it, i should be allowed to do so. Again it is my first time to do this thing in 3 - 4 years of using panther, every time i update software i never ever do this! If this step is essential for every update and installation why dont apple put them as one of TODO step during the processes (as licensing agreement) instead of keep them as an option (just my thought) Anyway, I m glad u tell me about it, and i will give it a shot tonight.
    "That may because you didn't have sufficient disk space. In fact running out of disk space can create all sorts of problems. Please tell me how disk space is available on your
    start up drive."
    That what I thought coz i have only 5.x GB left in 60 GB HD. Thats why I claimed as whining and have to scarify the lost of data by reinstall panther in order to get my mac back to work
    "So are you saying it is a bug or it is a hacker, I don't believe it is either"
    Please see second update info about password, and i m not impose anyone to believe, thats why the topic is a questioning sentence "Is this a bug.."
    "This Discussion site is not Applecare. The people here give their time voluntarily to those who are receptive to help."
    Thats why i ask for "mac expert" not "apple authority/technician" and always appreciate any suggestion.
    Anyway, that great to hear from you and i have learned new thing from your suggestion. I will let u know when i have tried it.

Maybe you are looking for

  • Statements in sidecar.xml

    Hi. Can it be possible, that, when importing multiple articles, builder panel is ignoring statement <smoothScrolling>never</smoothScrolling> in sidecar.xml? Every article get labeled as smoothScrolling --> Horizontal Orientation in Adobe server, but

  • How to set default mail client

    I occasionally respond to a email address and Microsoft outlook express comes up instead of gmail, which I prefer. How can I keep Outlook from butting in?

  • Generic instance maker and class definition in separate files - problem

    file: genericinstantiator.java package testGenericInstantiator; public final class GenericInstantiator {      public <T> T makeInstance(Class<T> c) {           T instance = null;           try {                instance = c.newInstance();           }

  • Workflow statuses of a purchase order

    Hi I'm looking to get the workflow statuses for some of the steps(Task items) for a purchase order... Basically I want to know how to get the data shown in SWI1 for a specific workitem in a report...? Can anyone help.. Thanks Geetha

  • Help needed with pen tool

    Hello I was drawing something. I need to draw a line using the pent tool connected to a point that I have already drawn. How can I continue with that point again. Also, sometimes the join tool does not work. Why is that?