Custom controller causes DFF attribute values to be overwritten when usinf

Hi,
I have customised an Oracle seeded controller to handle the DFF field for the ReadOnly property.
have used BoundValueUtil.bindReadOnlyAttr(flex, "MSSupReadOnly").
There are 3 DFF field but for some reason if there are 2 lines on that page and I update one line one of the DFF segment values gets updated on the other and the value on that line is overwritten.If I remove the customization it works fine and it happens just for 1 field I am handling another DFF segemnt same way but it works fine.
i also tried using
flex1.setAttributeValue(OAWebBeanConstants.READ_ONLY_ATTR,new OADataBoundValueViewObject(flex1, "MSSupItemReadOnly"));

Put some debugging statements in the code and follow the processing logic. That should give you some idea on where its getting wrong.
--Shiv                                                                                                                                                                                                                                                                                               

Similar Messages

  • Why there is a difference in a "class" attribute value of html tag when viewed in "Page Source" and using "Inspector", I am refering to new Microsoft site?

    While inspecting the new Microsoft site source, I observed that the "class" attribute value of the "html" tag when seen in Page Source the value given by Tools/Web Developer/Inspect tool. Value with the tool indicates class="en-in js no-flexbox canvas no-touch backgroundsize cssanimations csstransforms csstransforms3d csstransitions fontface video audio svg inlinesvg" while that is given in Page Source is class="en-us no-js"
    The question is why different values are shown?

    Inspector is showing you the source after it's been modified by Javascript and such.
    To see the same thing in the source viewer, press '''Ctrl+A''' to select everything on the page, then right-click the selection and choose '''View Selection Source'''.

  • Create Partial Fire action on DFF context value in controller extension

    Hi All,
    I have a requirement where I will have to default the DFF attribute value based on the context value chosen in the same DFF.
    Since the page is a seeded page i have done that using Controller Extension.
    I have followed the below steps.
    1.I have created one class file XXR2R_AR_BANK_ACCT_EXTCO
    2. In that file I have written the following piece of code
    +public class XXR2R_AR_BANK_ACCT_EXTCO extends UpdateExtBankAcctCO {+
    public void processRequest(OAPageContext oapageContext,
    OAWebBean webBean)
    +{+
    super.processRequest(oapageContext, webBean);
    OADescriptiveFlexBean dfb =
    +(OADescriptiveFlexBean)webBean.findChildRecursive("FlexField");+ // This is the ID of the flexfield defined in seeded page
    FireAction firePartialAction = new FirePartialAction("contextvalchng");
    +}+
    public void processFormRequest(OAPageContext pageContext,OAWebBean webBean)
    +{+
    super.processFormRequest(pageContext, webBean);
    if ("contextvalchng".equals(pageContext.getParameter(OAWebBeanConstants.EVENT_PARAM)))
    +{+              
    super.processFormRequest(pageContext, webBean);
    OADescriptiveFlexBean dffBean =
    +(OADescriptiveFlexBean)webBean.findChildRecursive("FlexField");+
    OAApplicationModule am = pageContext.getApplicationModule(webBean);
    OAViewObject extVO =
    +(OAViewObject)am.findViewObject("ExtBankAccountsVO");+ *// This is the view name corresponding to the DFF fields*
    String str = "" ;
    OARow row = null;
    if (extVO!=null)
    +{+
    row = (OARow) extVO.getCurrentRow();
    if (row!=null)
    +{+
    str = (String)row.getAttribute("ATTRIBUTE_CATEGORY"); *// here I have retrieved the context value of the DFF*
    +}+
    +}+
    dffBean.processFlex(pageContext);
    if ("DEN".equals(str)) *// if the context value is "DEN" then only the defaulting will be done*
    +{+
    OAMessageTextInputBean mnum = (OAMessageTextInputBean)webBean.findChildRecursive("FlexField1");
    mnum.setText("599956");
    row.setAttribute("ATTRIBUTE13","6995");
    +}+
    3. After compiling the .jave file I have placed the .class file in the CUSTOM_JAVA_TOP location and in the seeded page I have placed this CUSTOM_JAVA_TOP top path (in the personalize page section)exactly in the same way where the .class file is.
    But when I am changing the context value in the DFF nothing is actually happening.It is never including the custom file behavior.
    Please let me know if I am wrong in my coding or my approach.
    Thanks
    Sudie
    Edited by: user10816003 on Jun 21, 2010 5:54 AM
    Edited by: user10816003 on Jun 21, 2010 5:55 AM

    Hi,
    I think you need to set PPR on one of the segment of the DFF. Following is the code snippet I found few days back in forum. Use this in processRequest() method to set the PPR.
    OADescriptiveFlexBean oadescriptiveflexbean = (OADescriptiveFlexBean)webBean.findIndexedChildRecursive("ASNPrdtAddInfoFF"); //DFF ID...in your case it is "FlexField"
    if(null != oadescriptiveflexbean)
         oadescriptiveflexbean.processFlex(pageContext);
         //oadescriptiveflexbean.setFlexTableRendered(false); -- useful, if we want to render the items on our own.
         int cnt = oadescriptiveflexbean.getIndexedChildCount(pageContext.getRenderingContext());
         for(int i=0; i<cnt; i++)
              OAWebBean uiNode = (OAWebBean)oadescriptiveflexbean.getIndexedChild(pageContext.getRenderingContext(),i);
              if(null != uiNode && uiNode instanceof OAMessageTextInputBean )
                   System.out.println(i + "::::" + uiNode.getLabel() + "::::" + uiNode.getUINodeName()+ "\n");
                   if(uiNode.getUINodeName().equalsIgnoreCase("ASNPrdtAddInfoFF2")) //Segment ID...you need to find it out..on which segment you want to do PPR
                        FireAction firePartialAction = new FirePartialAction("Event.termChangeEvent", true); //This is I am not sure but it must be the event name
                        uiNode.setAttributeValue(PRIMARY_CLIENT_ACTION_ATTR,firePartialAction);
    Now you need to check for this event in processFormRequest() method. If this event fetched iterate the Vo rows and check the Attribute value there. if the value matched then do the defaulting process.
    Hope this helps..
    Regards,
    Mukesh Uchaniya

  • Values not passing from form to context attributes (value attributes)

    Hi Experts,
    I have bound the properties of theadobe interactive form (WD-Java) to the context attributes but the values are not passing to the value attributes at runtime.
    For your information I have not bound the pdfsource binary attribute of the view to the custom controller pdfsource binary attribute.
    Please advise.
    Thanks,
    Shobhit

    Context
       GetData - ModelNode mapped to controller context (DataSource)
             Attribute1 - Value Attribute (Form Field)
    Is it allright to have the Data Source as a ModelNode (mapped to the controller context node) and then have Value Attributes under the ModelNode which are then bound to the adobe form input fields.
    I know its frustrating to advise on such questions without looking at the code actually. But I would definitely need your support.
    If possible could you mail me a project of yours where you have the form being PREFILLED with some values coming from a RFC FM and then the same form gets posted to SAP though another RFC FM.
    Thanks,
    [email protected]
    OK. When I create a Fresh Adobe Interactive Form application, it works fine.
    The problem Im facing is in the case, when Im using an existing PDF file created in the ABAP stack (TCode SFP). I am importing this PDF file into the WebDynpro Java Application and then binding the fields. So in this case the context binding does not work.
    You guyz are right, I need to check if there is any other script which exists. But still what are views after this update?
    Message was edited by:
            Shobhit Swarup Mathur

  • Difference between component controller & Custom controller

    Hi all
    what is the main difference b/w component controller , custom controller & interface controller.
    i want to know the difference of these three in the real time environment.
    if anybody explains me with any simple example then it is great help to me....
    Thanks
    Suresh babu.

    Hi Suresh,
    Component Controller and Custom Controller are more or less the same. Both are related to a particular component in the webdynpro application you create.
    Component Controller:-
    For each component of yours there will be a component controller, were in you can define context variables and methods, events etc.. This usefull while using models.
    Simple example where we can see this is, when you create global context variable in this controller and map this variable to the view controller context variable of different view, which enables you to pass the value of the variable from one view to another.
    Custome Controller:-
    They also have the same the function but as the name suggest there function can be customised. That is we can have more than one custom controller for a component. This is usefull when we need to create seperate execute methods for inputs from model import( Both webservice and rfc call).So you can seperate each other. Example is there in the more sample codes and application section.
    Interface Controller:
    There is only one interface controller for a component. It is mainly used when we need to communicate between two components.There is sample application for communication between two components in the sample codes and application section.
    Regards
    Sreedhar.

  • How to add new rows in Advanced Table along with attribute value?

    Hi,
    I have one advanced table that contain one messageChoice and messageTextInput field.
    I want to add new rows in advanced table. I can able to add rows using the AddMoreRows button in the footer of the advanced table,
    but I want to add attribute value(contactId) each time when new row created.
    contactId I am getting from pageContext.getParameter("contactId")
    How to achive this? Please suggest.
    Thanks & Regards,
    Sunita

    Hi,
    There are two ways to do it.
    1. Use create method of entity object, create method fires whenever you creates new row.
    2. Handle the event raised by addanotherrow button and write logic there to initialize contactid as you are getting contactid from pageContext so I will suggest you to use this method.
    if (tableBean.getName().equals(pageContext.getParameter(SOURCE_PARAM)))
    && ADD_ROWS_EVENT.equals(pageContext.getParameter(EVENT_PARAM)))
    //write your logic here to default the contact id
    Hope this will help.
    Regards,
    Reetesh Sharma

  • Custom controller context value attribute

    Hello,
    I have a custom controller with one value attribute. In the wdDoInit() method of the custom controller I can not access this attribute using:
    wdContext.currentContextElement().setAttrib()
    Why?
    The same works without any problems using the component controller instead of the custom controller.
    Thanks, cheers,
    Felix

    Hi,
    I have created the custom controller and within that I have created the attribute.
    Now I am able to access the attribute by using thr same code.
    wdContext.currentContextElement().setAge(" ");
    After creation of custom controller you just save all metadata. Then check it.
    I think you will get  the attribute.
    Thanks
    Chandan

  • Passing field values from View Controller to Custom Controller

    Hi Experts,
    I am working on a customer requirment in which customer want to see the values of field from one view in another view. The Context node & Context node attribute are the same in both the views.
    I am aware that we need to pass the field values from view controller to custom controller in order to see the field in the subsequent view. I would like to kow how i can achieve that technically?
    Kindly let me your valueable suggesions.
    Best Regards,
    Prabahar

    Hi Carsten,
    Thank you for the detailed feedback.
    I want the fields ID_TYPE & ID_TYPE_DESCRIPTION from IUICMD/SearchAccount to be available in IUICMD/DetailAccount. I have created a context node u201CSEARCHu201D in view IUICMD/DetailAccount. I have created the context node with out choosing u201CCreate with Instanceu201D.  This Context node (SEARCH) is already available in IUICMD/SearchAccount as part of the standard.
    Below given is contents of the Method CREATE_SEARCH of my context class ZL_IUICMD_DETAILACCOUNT_CTXT of view IUICMD/DetailAccount, which is created by the Wizard during enhancement.
    method CREATE_SEARCH.
        DATA:
          model        TYPE REF TO if_bsp_model,
          coll_wrapper TYPE REF TO cl_bsp_wd_collection_wrapper,
          entity       TYPE REF TO cl_crm_bol_entity,    "#EC *
          entity_col   TYPE REF TO if_bol_entity_col.    "#EC *
        model = owner->create_model(
            class_name     = 'ZL_IUICMD_DETAILACCOUNT_CN00'
            model_id       = 'SEARCH' ). "#EC NOTEXT
        SEARCH ?= model.
        CLEAR model.
    bind to custom controller
      owner->do_context_node_binding(
               iv_controller_type = CL_BSP_WD_CONTROLLER=>CO_TYPE_CUSTOM
               iv_name = 'IUICMD/CuCoMD' "#EC NOTEXT
               iv_target_node_name = 'BUILHEADERSEARCH'
               iv_node_2_bind = SEARCH ).
    endmethod.
    I have enhanced the Custom Controller. Now it have new implementation class u201CZL_IUICMD_CUCOMD_IMPLu201D
    Let me know where I am doing mistake
    Thanks in advance
    Best Regards,
    Prabahar
    Edited by: Prabahar Raju on Sep 2, 2009 10:47 AM
    Edited by: Prabahar Raju on Sep 2, 2009 10:52 AM

  • Custom tag attribute values..

              hi,
              I have created custom tags from my EJB using ejb2jsp tool. I tried the following,
              1 works and the other doesn't,
              a) This works.
              <mytag:foo param1="<%="test"%>" />
              b) this gives me a "ClassCastException" <% String value = "test"; %> <mytag:foo param1="<%=value%>"
              />
              ----++++++ java.lang.ClassCastException: java.lang.Object at javax.servlet.jsp.tagext.TagData.getAttributeString(TagData.java:165)
              at com.niteo.projects.intelXML.xbrl.ejb.jsp_tags._XBRLContentProvider_se tIdTagTEI.isValid(_XBRLContentProvider_setIdTagTEI.java:37)
              at weblogic.servlet.jsp.StandardTagLib.verifyAttributes(StandardTagLib.j ava:443)
              ----++++++
              I have tried all possible tricks, but this doesn't work. Is there something that
              I missed while creating the custom tag Or is it the way I am using the tag..?
              any help pls...
              thx in advance -jay
              

    It seems like you want to be able to clear the default attribute and set an empty attribute in you custom tag. One way around this would be to pass a blank character in. That would force the default to be cleared with the blank. You could take it a step further and trim the attribute value before storing it. Alternatively you could set an overriding attribute such as:
    <slasher:foo name="slasher" ignorewhatever="true" />
    protected String whatever = "some default Value";
    public void setWhatever(String whatever)
         this.whatever = whatever;
    public void setIgnorewhatever(String ignore)
         if(ignore.equals("true"))
              this.whatever = "";
    }Cliff

  • How to pass attribute values through variables in JSP  Custom TagLib

    Hi,
    Can anybody help me how to pass values through varuables in the jsp custom tag.
    i am using JSP custom tag. I am unable to pass attribute values through variables.
    <invitation:invdetails invid="<%=invid%>"/> The value is passing as <%=invid%> ,not value of the invid.
    But i am getting throuh the fllowing
    <invitation:invdetails invid='1' />
    Please anybody suggest me how to pass value by using the variable.

    Hi,
    It sounds like you need to set the <rtexprvalue> tag to true in the TLD for your tag. If you do this the tag will read in the value you are trying to pass to it.
    dapanther...

  • Populating table with values in custom controller

    Hi
    There are multiple rows of records in custom controller and i want to populate these values in a table which is in another view.How to do this.
    thanks and regards
    suresh

    Hi,
    If you are writing the code in the custom Controller then you can do the following
    IPublic<CustomerController>.I<Node>Element ele=wdContext.create<Node>Element();
    ele.setXXX();
    ele.setYYY():
    wdContext.node<NodeName>().addElement(ele);
    Regards, Anilkumar

  • BP_CONT: not getting the contact person email value from custom controller

    Hi Experts
    not able to find the email address in any of the context node, actually my requirement is while creating the BP contact , get the email address  BP_ADDR/StandardAddress STRUCT.E_MAILSMT . take this email id and check whether this email id exists in system if exists throw the error while saving . for this I did the codin in BP_CONT component on save method but while saving some times my custom controller is getting initiated some times it was not containing any value , kindly let me know how can I get the email value of contact person in BP_CONT  component in view BPCONTOverview .
    here is my code on method eh_onsave
    lr_curo_bpcont_custcntrlr ?= me->get_custom_controller( controller_id = 'BP_CONT/BPCont' ).
      IF  lr_curo_bpcont_custcntrlr IS BOUND.
        TRY.
            lr_entity_privstdaddr ?= lr_curo_bpcont_custcntrlr->typed_context->privstdaddr->collection_wrapper->get_current( ).
            lv_privstdaddr_e_mailsmt = lr_entity_privstdaddr->get_property_as_string('E_MAILSMT'). " Get runtime email value of contact person
            lr_entity_bpcategory ?= lr_curo_bpcont_custcntrlr->typed_context->builheader->collection_wrapper->get_current( ).
            lv_partner_category = lr_entity_bpcategory->get_property_as_string('BP_CATEGORY'). " Get Partner Category value
          CATCH cx_sy_ref_is_initial cx_sy_move_cast_error cx_crm_genil_model_error.
        ENDTRY.
      ENDIF.
    here the problem is some times I'm getting the value and some times I'm not getting value the related objects also through get related entities contact person emial is not getting populated any where
    kindly help what is going wrong
    Thanks & Regards
    Rajasekhar

    Hello Rajasekhar,
    Could you please share how you resolved this issue? I have the exact same requirement (duplicate check based on email).
    Kind regards

  • IProcurement Requisition Distribution DFF attributes not defaulting value

    Hi All,
    DB:10.2.0.4.0
    Oracle Apps:12.0.l6
    O/S:AIX 5.3 L
    Problem Description:
    We have enabled Requisition Distribution DFF on iProcurement page and it has 4 attributes. In DFF configuration we have set Attribute3 and attribute4 to have a default value of type SQL Statement. When user selects/changes Attribute1 and attribute2 values on requisition distribution DFF in iProcurement, rest of the attributes should default. This happens in core purchasing.
    But in iProcurement when user goes for editing requisition lines and tries to change attribute1 and/or attribute2 on distributions rest of the attributes on that DFF do not default according to default value setup in DFF configuration. We believe that as same DFF is used on core purchasing and iProcurement, DFF behaviour should be same on both applications.
    Workaround:
    User has to explicitly click on each LOV attached to the DFF attributes and select correct value from LOV. Values do not get defaulted as expected.
    Could anyone please share resolution on the above issue faced before.
    Thanks for your time!
    Regards,

    Here are the steps to enable Dist DFF on iProcuremet page
    1. Setup the attributes and DFF's from Application Developer Flexfields and freeze
    2. Enable personalization for OAF Pages
    3. From iProcurement, while submitting Requistion, go to Edit Lines --> Account tab
    4. Click on Charge Account link
    5. Click "Personalize Stack Layout: (AccountsDistsRN)"
    6. Find "Column: (ReqDistDFFOnAcctCol)"
    7. Change the "Rendered" property to True.
    I'm sure you will find some metalink notes on the above. But this the desinged approach to show DFF on iProcurement pages.
    Hope this helps.

  • How to Add custome attribute value of user id

    Hi my friend.
    from below cmd i can able to view the current attribute value. but i wanted to modify the value. so can you please provide dsmod cmd for modify
    dsquery * domainroot -filter "&(objectCategory=person)(objectClass=user)(sAMAccountName=username)" -attr extensionattribute2
    Dsmod ...................?
    James
    8892722073

    Hi James,
    As you said, the command Dsmod user can be used to modify attributes of one or more existing users in the directory. However, this command could not be used to modify the custom attribute, its syntax has been set.
    You can use builted in Active Directory Attribute Editor to modify a user's attribute:
    Open Active Directory Users and Computers.
    Locate the User container, and then find the user which you want to modify.
    Right-click the user, click Properties, and then click the tab
    Attribute Editor.
    Slect the attribute which you want to modify, click Edit, modify the value, and then
    click OK to save the change.
    For your information, please refer to the following figure:
    What's more, please refer to the following article to learn to use the PowerShell AD Provider to Modify User Attributes
    Use the PowerShell AD Provider to Modify User Attributes
    http://blogs.technet.com/b/heyscriptingguy/archive/2013/03/21/use-the-powershell-ad-provider-to-modify-user-attributes.aspx
    Regards,
    Lany Zhang

  • Redirection causes loss of param/attribute values

    Hello I am new to JSF and I have a few questions regarding the same .
    I am using (JSf-struts) for a web application in which I redirect a page (in the config class) .I am not able to access param/attribute values in the action class after redirection.
    Does redirection cause the loss of param values , if so what should be the remidy.
    If I want add an attribute (with session scope) how do I add it in the JSF
    can I do something like this ....
    <f:param name="datasets" scope="session" value="Master.txt" />

    Put in session
    FacesContext.getCurrentInstance().getExternalContext().getSessionMap().put(key,
                                                                                       obj);

Maybe you are looking for