Enabling/ Disabling UI Elements using Web Dynpr Java

Hi Experts,
I have certain UI Elements in the view layout, and i want to disable it based on conditions. I want only certain users to be able to edit the fields and the other set of users should only be able to view the data in the UI Elements and not EDIT. can any one hlep me out please...
Thanks in advance.

HI satish,
well you can do this by binding the readonly or enable property of the input field to a context attribute of boolean type and then checking in the wddoinit method for the user authentication. If the user is authenticated then you can set the attribute to true.
Authentication can be done by providing all the users with a role (say enable) for which you want the fields to be enabled and you can check for the roles of the logged in user and if that particular role is pesent there you can enable the fields.
The following is the code that you can write in your Wddoinit method for the work.
String strUserName = null;
     boolean rolestrflg = true;
   try {
           IWDClientUser clusr = WDClientUser.getCurrentUser();
            IUser sapUser = clusr.getSAPUser();
     if (sapUser != null) {
                         IUserAccount[] acct = sapUser.getUserAccounts();
          if (acct[0] != null) {
                                   strUserName = acct[0].getDisplayName();
                               Iterator rolesit = sapUser.getRoles(true);
               IRoleFactory rfact = UMFactory.getRoleFactory();
               while (rolesit.hasNext()&& rolestrflg) {
                                             String roleName = (String) rolesit.next();
                                             IRole role = rfact.getRole(roleName);
                          if(role.getUniqueName().equalsIgnoreCase("Enable")) // suppose the role for enabling the fields is Enable
                               wdContext.currentContextElement().setContrl(true);
                               rolestrflg = false;
                          else
               wdContext.currentContextElement().setContrl(false);
     } catch (Exception e) {
          // TODO Auto-generated catch block
          e.printStackTrace();
i hope this will solve your problem
regards,
Sarbjeet

Similar Messages

  • How to create a user in UME Database using web dynpro java custom application

    Hi,
    Can you please suggest me how to create a user in UME Database using web dynpro java custom application.
    My Requirement is user can register his/her user id in SAP Portal 7.3 UME database.
    Please suggest me.
    Thanks and Regards,
    Amit

    Hi Amit,
    Generated Documentation (Untitled)
    This is what you're looking for, there's no real cook-book -- though Amey mentioned there might be some material on SDN, perhaps some tutorials.
    You should be looking into com.sap.security.api.IUserFactory, methods newUser(String) which gives you and IUserMaint and commitUser(IUserMaint, IUserAccount) -- IUserAccount can be obtained using com.sap.security.api.IUserAccountFactory, method newUserAccount(String)
    Hope it helps,
    D.

  • How to set a variable in portal session using web dynpro java.

    Hi,
    I have created a web dynpro application, which is running inside portal. I have created a role called "R1". Inside role R1, i have created 3 workset W1, W2 and W3. and inside each workset i have some pages and iviews.
    My requirement is when user logins to the portal , and when he clicks on role R1 for the first time, a login page should come (so that we can do revalidation), and when he enters his password again in that login page , then only workset W1, W2 and W3 should be visible/accessible to him and after successful revalidation, if he clicks again on role R1, in that particular portal session, than that login page should not come.
    for this, i thought i will set a variable in portal session, whenever user successfully revalidated himself, and if after successful revalidation he clicks again on role R1, i will check in doinit method of webdynpro whether variable is set or not (which i already set on successful revalidation), and if it is set then i will do Donavigation else i will present login page to the user.
    Can anyone tells me how to set a variable in portal session using web dynpro java.
    thanks
    Arush

    Hi,
    Try this:
    WDScopeUtil.put(WDScopeType.CLIENTSESSION_SCOPE, key, value)
    WDScopeUtil.get(WDScopeType.CLIENTSESSION_SCOPE, key)
    Ex:
    WDScopeUtil.put(WDScopeType.CLIENTSESSION_SCOPE,"Key1","Value1");
    String value1=WDScopeUtil.get(WDScopeType.CLIENTSESSION_SCOPE,"Key1").toString();
    /people/william.cui/blog/2007/02/12/sharing-session-context-between-parent-and-external-windows-running-on-same-host
    Regards,
    Charan

  • How to implement Captcha using Web Dynpro Java

    Hi Experts,
    Can you please provide any information on CaptchaImplementation using Web Dynpro Java. We are using NWDS 7.01.
    Regards,
    Suvankar

    Hello Suvankar,
    maybe this blog will help. But haven't tryed it myself.
    http://scn.sap.com/blogs/balab/2006/09/25/bid-adieu-to-bots--using-captchas
    Regards,
    Tobi

  • Reusable objects using web dynpro java...any suggestions ?

    Hello All,
    I want to create few Reusable objects using web dynpro java. Please suggest some scenarios.
    regards
    Mrinalini.

    Hi,
    I can suggest especially this one:
    http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/30d56578-f7e5-2a10-5ab5-8afc55d2e0e8
    Some other hits you may find useful:
    This guide mentions some tutorials about reusability:
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/ba2db0e5-0601-0010-9790-e271902f2c38?quicklink=index&overridelayout=true
    Here
    Web Dynpro Java [original link is broken]
    and here
    SAP NetWeaver Composition Environment Samples Center [original link is broken]
    you'll find other tutorials as well.
    Best Regards,
    Ervin

  • File Visibility in uploading the file using web DynPro java

    hello,
    i have gone through the tutorial " uploading & downloading the file using web DynPro java".
    the upload functionalty is working fine. but i need to know thw path where these files are getting uploaded ??
    Waiting for the reply..
    Regards,
    Viren Gupta

    Hi Viren,
    Are you are refering to the below tutorial for upload and download:
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b0e10426-77ca-2910-7eb5-d7d8982cb83f?QuickLink=index&overridelayout=true
    If yes, then answer is that the file is stored in the context of the application only as "com.sap.ide.webdynpro.uielement-definitions.Resource" object. Please read through the tutorial to understand the full process.
    WD doesn't really upload to server automatically unless there is any explicit code written. All it does is to store the file in a temp context which you can access and write your own code to store it in a particular location.
    Regards,
    Mahesh

  • Problem in completing the TASK when using Web Dynpro Java and BPM

    Hi,
    I am using Web Dynpro Java and BPM.
    i see my Web Dynpro View when i run the process.
    Just that the task is not completing.
    when i click on the Web Dynpro button to signal the completion of the event, nothing happens.
    i have appropriately created events in both Component controller and Interface Controller and used the same in creating the Task.
    a method in Component controller fires the event and a button click in the view calls this method.
    i have successfully completed Donka Dimitrova's "SAP Netweaver Business Process Management-End-to-End Process Implementation Sample " but when i tried my own with slight modifications, it is not working !!!
    http://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/d07f3e88-554f-2b10-3cbf-ab8afea51b9f
    regards,
    -Amol Gupta

    Hi Amol,
    The way you described the things, I dont see any problems. Just to make sure that you are triggering the right event that you mapped as completion event for the task, try to cross check once again and see if the correct event is getting triggered. Also try to put some messages for debugging to see till where the control goes.
    Regards,
    Arafat

  • Create  PCD folder using web dynpro Java

    Hi All ,
    I would like to create pcd folder structure using web dynpro java
    i.e. My folder at top level and under this there will be iviews , roles , worksets  etc.
    Is it possible using WDJ ?
    I have checked the below link , but for folders I did not get anything.
    http://help.sap.com/saphelp_nw04/helpdata/en/44/6aaf92f5a23672e10000000a114a6b/frameset.htm
    Can you please help me ?
    Thanks,
    Sandip

    Hi,
    Please refer to the following document
    http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/508baf88-9335-2d10-efa6-c6ad61e5fc4b?quicklink=index&overridelayout=true
    The same can be implemented in webdynpro also.
    Regards,
    Raju Bonagiri
    Edited by: Raju Bonagiri on Sep 3, 2010 8:36 AM

  • Enable disable screen elements..

    hi,
    at runtime, say for e.g. i want to enable or disable screen elements, like text boxes. also i want to check/uncheck the checkbox..what r the statements ?
    where do i get the list of properties of the screen elements that i can set/reset ?
    thks

    hii
    here p_docno is individual screen element in above thread  there you need to give your screen element name and there is a condition like
    if p_rad1 is not initial..at this place use your codition like in below code for create and for modify radiobutton is there and see the code..like this you can use while you press button for CREATE and MODIFY.
    just you need to use button at that place like
    when 'CREATE'..or when 'MODIFY'.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS p_rad1 TYPE c RADIOBUTTON GROUP gr  DEFAULT 'X'
    USER-COMMAND
    usr .
    SELECTION-SCREEN COMMENT 3(16) text-005.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS p_rad2 TYPE c RADIOBUTTON GROUP gr.
    SELECTION-SCREEN COMMENT 3(16) text-006.
    SELECTION-SCREEN END OF LINE.
    PARAMETERS:
      p_num1 TYPE i MODIF ID num,
      p_num2 TYPE i MODIF ID num,
      p_char1 TYPE c MODIF ID chr,
      p_char2 TYPE c MODIF ID chr.
    AT SELECTION-SCREEN output..
    if p_rad1 is not initial.
        LOOP AT SCREEN.
           IF screen-group1 = 'NUM'.
            screen-input = 0.
            MODIFY SCREEN.
          ENDIF.                           " IF screen-name CS 'p_docno'.
          IF screen-group1 = 'CHR'.
            screen-input = 1.
            MODIFY SCREEN.
          ENDIF.                           " IF screen-name CS 'p_docno'.
        ENDLOOP.                           " LOOP AT SCREEN.
      ELSE.
        LOOP AT SCREEN .
           IF screen-group1 = 'NUM'.
            screen-input = 1.
            MODIFY SCREEN.
          ENDIF.                           " IF screen-name CS 'p_docno'.
          IF screen-group1 = 'CHR'.
            screen-input = 0.
            MODIFY SCREEN.
          ENDIF.                           " IF screen-name CS 'p_docno'.
        ENDLOOP.                           " LOOP AT SCREEN .
      ENDIF.                               " IF p_rad2 IS INITIAL .
    i hope it helps you.
    regards
    twinkal

  • Creating sales order using web dynpro JAVA

    Hello everyone,
    i am new to web dynpro. Can any one tell me how to creating sales order by web dynpro JAVA using BAPI.
    Thanks.
    Vinita Sharma

    Hi...
    you can use Adaptive RFC methodology in web dynpro java to work with BAPIs..... these are standard bapi's provided
    Here are required Bapis... select which one you want....
    BAPISDORDER_GETDETAILEDLIST Sales Order: List of All Order Data
    BAPI_ORDER_CHANGE_STATUS_GET Change status for order
    BAPI_SALESDOCU_CREATEFROMDATA Creating a Sales Document
    BAPI_SALESORDER_CHANGE Sales Order: Change Sales Order
    BAPI_SALESORDER_CREATEFROMDAT1 Sales Order: Create Sales Order
    BAPI_SALESORDER_CREATEFROMDAT2 Sales Order: Create Sales Order
    BAPI_SALESORDER_CREATEFROMDATA Create sales order, no more maintenance
    BAPI_SALESORDER_GETLIST Sales order: List of all orders for customer
    BAPI_SALESORDER_GETSTATUS Sales order: Display status
    BAPI_SALESORDER_SIMULATE Sales Order: Simulate Sales Order
    check this thread SALES ORDER creation using BAPI
    sample java program which will call SAP bapi function sales order create
    PradeeP

  • InteractiveForm UI Element in Web Dynpro Java - Image not displayed on form

    Hello Experts,
    Using: NetWeaver Developer Studio 7.0.1_06; Adobe Livecycle Designer 8.1.
    I have an image "image.png" in my src/mimes/components/com.mm.InteractiveFormComp folder within my web dynpro java project.
    I load the image into my context in wdDoInit method in the comp controller:
    wdContext.currentContextElement().setImage("image.png");
    In the interactiveform I have an ImageField on the form and have set its properties as follows:
    Field - URL = http:[host]:[port]/webdynpro/dispatcher/InteractiveFormComp/src/mimes/components/com.mm.InteractiveFormComp/image.png
    Field - Embed Image Data = "checked"
    Binding - Default Binding = Image
    However, no image ever shows up on the form. I have also been through many threads in the forums but havent found a solution. Can anyone please assist me?
    Regards,
    MM.

    Hello,
    I tried using jpg and bmp. Didn't work.
    Any other suggestions?
    Regards,
    MM
    Solved it!
    Edited by: Marshall Mathers on Mar 9, 2011 9:53 PM

  • Lock/Disabled/Readonly Element using Javascript

    hi,
    how to lock or disabled or make readonly element using javascript in APEX 3.2
    i need to lock/readonly popup element in the form
    CAN ANYONE HELP ME?

    A little complex, so possibly there will be a simpler solution than this.
    Immediately following the readOnly statement enter this code
      $x('P60_NAME').readOnly="readOnly";
      latag = $x('P60_NAME_holder').getElementsByTagName('A');
      for (i=0;i < latag.length; i++){
         latag.removeAttribute('href');
    This code removes the HREF attributes from the Image anchor.
    This should fix it.
    Regards,                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                               

  • How to use Web Dynpro Java isChanged and isChangedByClient

    Hello,
    I have read thorugh a lot of documentation, threads, ... --> but the picture is not geting clearer fro me.
    We have Web Dynpro Java Application (on Netweaver 7.0 SP12) running in Enterprise Portal. We need to tell the portal work protect mode, that we have unsaved changes (how to do this is clear).
    I am struggling with figuring out, that my Web Dynpro Context has unsaved changes. I found the two change-indicators isChanged() and isChangedByClient(), which already confuses me a little bit.
    Anyway, this is what I have figured out so far:
    I am calling wdContext.currentContextElement().isChangedByClient() to figure out changes and when a Save operation has been completed sucessfully, I call wdContext.currentContextElement().node().getContext().resetChangedByClient(). This works for some of the changes made by the user.
    I then tried calling wdContext.nodeABC().getElementAt(i).isChanged() for all nodes of my Web Dynpro Context, but this results in detecting changes before the user ha done any interaction.
    Implementing an own change tracking (i.e. by adding a changed-Attribute to each context node) does not seem a viable option for me.
    So these are my questions:
    - Does anyone now a working pattern relying on those chnage indicators ?
    - Does anyone now how to reset the isChanged indicator (or when it is resetted by the framework) ?
    Any help appreciated.
    Thank you,
    Stefan

    Hi
    Check this link
    Re: How to keep isChangedbyClient flag set between roundtrips?
    http://help.sap.com/javadocs/NW04/current/wd/com/sap/tc/webdynpro/progmodel/api/IWDNodeElement.html
    Thanks

  • Enabling/Disabling a button in Web appl. based on exception in a Query

    Hi all,
    I am wondering whether we can grey out a button in the web applic. designer based on whether a report has an exception showing.
    So now we can enable or disable a button, so at runtime, when the web app runs, and a condition is visible in the analysis item table, then the button (save for example) should be disabled, otherwise if there are no exceptions then it should be enabled.
    I am thinking Javascript, but not sure how to read the exceptions in a web apps query?
    Thanks for any help forwarded.
    Regards
    SMS

    Hi Sumit,
    just add one more attribute of type wdy_boolean, and bind this attribute to readonly property of button by coding.
    then as per your cell value set the attribute value, below is the some sample code.
    METHOD wddoinit .
      DATA: lv_node TYPE REF TO if_wd_context_node,
            lt_mara TYPE ig_componentcontroller=>elements_mara,
            wa_mara TYPE ig_componentcontroller=>element_mara.
      SELECT matnr
             ersda
             ernam
             mtart
             matkl
             meins FROM mara INTO CORRESPONDING FIELDS OF TABLE lt_mara
                                     WHERE meins = 'GM' OR meins = 'CCM'.
      SORT lt_mara BY meins.
      lv_node = wd_context->get_child_node( name = wd_this->wdctx_mara ).
      LOOP AT lt_mara INTO wa_mara.
        IF wa_mara-meins = 'GM'.
          wa_mara-readonly = 'X'.
        ELSE.
          wa_mara-readonly = ' '.
        ENDIF.
        MODIFY lt_mara FROM wa_mara TRANSPORTING readonly.
        lv_node->bind_structure(  SET_INITIAL_ELEMENTS = ABAP_FALSE
                                  new_item = wa_mara ).
      ENDLOOP.
      lv_node->bind_table( new_items = lt_mara ).
    ENDMETHOD.
    Regards
    Srinivas

  • Recursive Tree  using Web Dynpro java

    Hi
    I've been trying to create a recursive tree using java in Web Dynpro.
    Can you please suggest a good example to try with?

    Hi,
    Check the below links....
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/wd%20java/wd%20tutorials/integration%20of%20a%20tree%20structure%20in%20a%20web%20dynpro%20table.pdf
    https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/webdynpro/wd%20java/wd%20tutorials/constructing%20a%20recursive%20and%20loadable%20web%20dynpro%20tree.pdf
    http://help.sap.com/saphelp_nw70/helpdata/en/13/4cde139306304480e89d815ffcf891/frameset.htm
    http://help.sap.com/saphelp_nw70/helpdata/en/af/44ea406c9d3d43e10000000a155106/frameset.htm
    http://help.sap.com/saphelp_nw70/helpdata/en/21/ad884118aa1709e10000000a155106/frameset.htm
    Code Example,
    http://help.sap.com/saphelp_nw70/helpdata/en/16/1ec1814e566f4baf943c53ccf48552/frameset.htm
    null

Maybe you are looking for

  • HP C5280 Photosmart All-in-One inkjet printer

    I've owned my C5280 inkjet printer for almost 3 years and like my previous inkjet printer, a Deskjet 895Cse I can print different kinds of documents, envelopes, etc. but one thing I have not been able to print on are No. 6 envelopes.  For those who d

  • Acceptaing a variable with a quote in it

    Hi Guys, searched quite a bit but couldn't really find what I need. I have a sql report generated from a simple query where the user can type in what they need, I accept the parameter and generate the report, here is teh simple form for this question

  • Changing UI Labels for ViewCriteriaItemCompound

    Hi all, I am using a named ViewCriteria in an <af:query/>. In the named ViewCriteria, I have a query attribute inside a ViewCriteriaItemCompound. Inside the ViewCriteriaItemCompound, I have two ViewCriteriaItems. This query attribute appears twice in

  • Updates page in App Store

    Hi, In the updates section in the app store all the apps remain in the list after they have been updated as opposed to io6 where they were cleared. Can you clear them in IOS7 ?

  • Preview/Adobe Reader help!

    Hey everyone! I'm trying to scan my notes into my computer, so I'm scanning them in a page at a time and I was wondering if there was any way I could combine all the separate PDF documents (1 per page) into 1 PDF document with several pages. Can I do