Enhancements in web dynpro

What is the use of creating UI elements and context dynamically.when we have a option of enhancing the UI elements and nodes and attributes in context.

Hi Suryar,
Can you provide more inforamtion on what do u plan to achieve?
Enhancement and Dynamic Nodes and UI creation are two different techniques to achieve some of the functionalities of WDA.
If you read more in enhancement and dynamic nodes then i guess your questions will be self answered.
Enhancements in WDA :
[http://help.sap.com/saphelp_nw04s/helpdata/en/c5/f4b9422e0fb911e10000000a1550b0/frameset.htm]
Dynamic Programming WDA : [http://help.sap.com/saphelp_nw04s/helpdata/en/94/29984197eb2e7be10000000a1550b0/frameset.htm]
Regards,
Ashish Shah

Similar Messages

  • Enhancement in web dynpro alv

    When iam enhancing ALV (web dynpro). how to add another attribute to the context.
    Actaully the context is referring one structure.

    Dear C MADHAV
    then it seems you will need to enhance (append) your changes to that structure on the Data Dictionary.
    Kind Regards
    /Ricardo Quintas

  • Enhancing ABAP web dynpros

    We need to enhance some of the ABAP Web dynpros in the Travel area (add custom fields, change values loisted in drop-down boxes etc.)
    Is there any documentation on enhancing ABAP web dynpros ?
    Thanks in advance.

    Thanks for the reply Steve.
    I have only ever work with user-based FireFighter, but will now revisit role based FireFighter.
    One aspect of User based FF which appeals to me is that SAP change logs are clearly marked with the FF userid (assuming a clear FF user-id naming convention is used).
    A potential problem I may encounter with role based FF is that our ABAP systems are connected to SAP IdM. SAP IdM is the source of truth for role assignments. If something else is assigning roles to a user-id (i.e. FireFighter) then IdM may remove these changes. This may be unlikely, but archtecturally it doesn't seem ideal.
    Thanks for the input.
    I'd also be keen to hear the official SAP view if the GRC team is watching.

  • Experiences - Applying support packs to enhanced SAP Web Dynpro code

    Just thought I might highlight some experiences we've had with applying support packs for XSS. (Reply if you have your own experiences or a proven better way)
    Firstly, we are using Travel within XSS and have some significant developments to get this working globally.  Rightly or wrongly, we added our own DC's within the ESS application area and need to take this into account during support packs.
    As advised by SAP, we have not directly applied the support pack source code to the modified track, but created a separate SPXX track which we manually need to reaply all of our changes.  It dissapoints me that SAP don't recommend doing what the help.sap.com states, but there must be a reason for this (supposedly the meta data tool not yet available in NW04 will address the main reason).
    In order to get our custom DC's from the old track to the new; I needed to add all non-generated objects to an activity, connect SPXX-1 track to the SPXX track and transport all the way through to the approval stage to get it migrated (the connection can be terminated after this is done).  Again - Less than ideal, especially if you accidentally transport a generated file or miss a file.
    Then for all SAP Web Dynpro changes, we've documented all changes to the nth degree and it's at this point we manually reapply the changes - taking into account any SAP changes that may have occurred.
    I hope SAP promotes doing this a better way soon, but here's a process for anyone else needing to do this.
    Regards,
    Matt

    As you stated the system without the context tab is NetWeaver 7.0.  The context tab and the extra wizards were new features in NetWeaver 7.0 Enhancement Package 1.  Your system would have to be updated to this NetWeaver Enhancement Package level in order to have this functionality.

  • Enhancing a web dynpro for hr-travel

    HI,
    I am trying to enhance FITE_VC_GENERAL_DATA for HR Travel Portal.
    I want to add another field to the existing screen. I have done that, but though I have unchecked the "read only" button for the UI element, it is coming as read only on the portal.
    Please guide me if i am missing any other settings to be checked.
    i have
    1. enhanced the existing structure to add the field at the end.
    2. i have included that field in local context and i have mapped the same to context controller.
    I can see the field on the portal, but its read only though i have not set it. Please help.

    Client wants to maintain the class of travel as well. eg. first class, business class, economy etc.
    So, I created a data element PTRV_WEB_GENERAL_DATA_EXT-CLASS (Class is created by me, so would not be visible to you).
    Now, I have saved all the values in domain value range of class.
    I added this element to the context GENERAL_DATA of view GENERAL_DATA_VIEW.
    Then I mapped this to the context controller.
    This is the only things that i have done and not coded anything.
    Value of the element is GENERAL_DATA_VIEW.GENERAL_DATA.CLASS
    and layout data: matrix data.
    I have not changed anything else.
    I have just added the label for this field, which i dont have any issue with.

  • No component usage created in enhanced web dynpro component

    Hi experts,
    I am facing the following problem:
    I'd like to enhance a web dynpro component in order to add a popup window. The popup is triggered by the process_event method. So far everything works just fine.
    But the popup needs to know some context attributes from the main component, and I cannot create a component usage in order to set the context mapping.
    Does anybody know how to solve this issue?
    Thanks and regards
    Jan Phillip Höft

    Hi!
    Thanks for your answers first of all.
    I need the popup to be a stand alone web dynpro component, so I guess the assistant class doesn't do the trick because I can not access it in the popup component.
    The popup is called when the business object is saved. So that the user is asked to notify other users that the document has changed. In this popup the user should fill in the message and click a button to send it and close the popup.
    So I tried the OBN approach as well but with two problems :
    1. I cannot close the popup component by coding (button click) because it has no direct parent component
    2. The save event is not run through properly so the document stays locked by the user. But I didn't look into this yet.
    So it would be perfect to have an embedded popup component which is based on a stand alone web dynpro application so it can be closed properly but it need at least access to the guid of the main component.
    Anybody got an idea for this?
    Thanks and regards
    Jan Phillip Höft

  • Web Dynpro Enhancement : Rename text of the View Elements

    Hello All,
    I want to enhance standard web Dynpro component. I need to rename text of some of view element.Ex.- label. I searched on SDN but I can able to find only following two things.
    1. We can able to remove the view element in enhancement implementation.
    2. We can add Post/Pre methods to the view methods.
    But I am not able to find the "How to rename the text of the view element?"
    Ex.: I have one label. Text for that label before enchantment is 'ABC' . when enhancement implementation is active, it should be 'PQR'.
    Any pointers?
    Thanks in Advance,
    Prashant Jagdale

    If you just need to rename the text of labels then you don't need the enhancement framework for that.  Using either adminstrative personalization or component configuration you can override the SAP delivered label text with your own without changing the underlying Web Dynpro component.
    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/47/b170d256293c5ce10000000a421937/frameset.htm

  • Ehancements in Web dynpro

    Hi Experts,
    Can we do enhancements in web dynpro? Actully my basic requirement is that i have to hide few fields of a standard webdynpro component, so was thing it could be done by some enhancement, just wanted to confirm if this is possible, and should i follow any different method  for enhancement in webdynpro?
    Thanks in Advance!!

    You don't have to be in the portal to do that.  Unlike WDJ where the personalization is stored in the portal PCD, the ABAP personalization is stored in the backend database of the ABAP server.  You only need to run the application in administrative mode and you can hide fields.
    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/47/ac6c53fd5b3020e10000000a42189d/frameset.htm
    If you want more control you might consider component configuration instead:
    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/47/b1693856293c5ce10000000a421937/frameset.htm
    Finally you can also use the enhancement framework to hide fields at the development object level:
    http://help.sap.com/saphelp_nw70ehp1/helpdata/en/3a/f6ba42a950da11e10000000a155106/frameset.htm

  • Implementing cache for dropdown values in Web Dynpro Iview

    Hi All,
             I am currently in the processing of enhancing a web dynpro application which contains among other things around 15 drop down boxes. The values in these drop down boxes are coming from oracle database and these values change occasionally.
            To optimize the response time, I have implemented simple caching machanism using static  variable in plain java class. The objective is to retrieve the values for the first time from oracle db and use the same datastructure for subsequent calls. Though I have found that the number of calls to the database reduced significantly I am facing some problem understanding and implementing the cache refresh behaviour.
          I want to implement a cache refresh machanism for every 12 hours.
        Solutions tried.
                   Creating a thread to refresh the cache for every 12 hours.
                   Creating a timer for refreshing the cache for every 12 hours.
        Problems encountered :
        1.  Is it appropriate to use threads in a web dynpro app?
        2.  What I have observed is that  the thread (I have created a daemon thread) is alive even after I have deployed a new copy of the code.  When I deploy a new code is it not supposed to remove all copies from the memory?
           If using a daemon thread is appropriate, What is the web dynpro
              framework's class loading behavior when a new copy of code is deployed?
             Does it completely unload existing classes (there by killing the daemon thread
                   created in previous deployment)?
       3. Assuming that we have found suitable solution for thread issues, what would  happen when the application is deployed on a cluster? Can we send a message to
            all the nodes in the cluster?
    I would like to understand what other developers has done in these kind of situations. Your experience and insight will be valuable and help me decide to implement caching or not in  the first place.   
    Thanks in advance.
    Regards
    Pallayya Batchu

    Pallayya,
    <i>1. Is it appropriate to use threads in a web dynpro app?</i>
    Not recommended as with any J2EE application
    <i>2. What I have observed is that the thread (I have created a daemon thread) is alive even after I have deployed a new copy of the code. When I deploy a new code is it not supposed to remove all copies from the memory?</i>
    Re-deployment doesn't mean stopping all user spawned threads. It just causes unloading of classes if there are no hard references from anything but deployed application. In your case, there are probably references from Thread/Runnable so your previous version is not unloaded on redeployment.
    <i>3. Assuming that we have found suitable solution for thread issues, what would happen when the application is deployed on a cluster? Can we send a message to all the nodes in the cluster?</i>
    Probably you can, probably you cannot. Even if you can it would be complex.
    My advise -- abandon threads altogether, use real cache instead:
    package com.yourcompany.yourapp.utils;
    import java.util.HashMap;
    import java.util.Map;
    public class ValueHelpCache {
      private static class Entry {
        long lastLoadTime;
        Map  payload;
        Entry(final Map payload) {
          this.payload = payload;
          this.lastLoadTime = System.currentTimeMillis();
      final private Map _entries = new HashMap();
      private ValueHelpCache() {}
      synchronized public Map getValueHelp(final String valuyeHelpKey) {
         Entry entry = (Entry)_entries.get(valuyeHelpKey);
         if ( entry == null) {
           entry = new Entry( loadValueHelpFromDatabase(valuyeHelpKey) );
           _entries.put(valuyeHelpKey, entry);
         } else {
           final long now = System.currentTimeMillis();
           if ( now - entry.lastLoadTime > ENTRY_TTL ) {
             entry.payload = loadValueHelpFromDatabase(valuyeHelpKey);
             entry.lastLoadTime = now;
        return entry.payload;
      private Map loadValueHelpFromDatabase(final String valuyeHelpKey) {
        /* @TODO implement loading values from database */
        return null;
      public static ValueHelpCache getInstance() { return INSTANCE; }
      final public static long ENTRY_TTL = 12 * 60 * 60 * 1000;
      final private static ValueHelpCache INSTANCE = new ValueHelpCache();
    This way client code tracks itself what entries are stale and need to be reloaded. No threads at all and no problems in cluster. You may alter time tracking mechanism to reload at given time of day, say at 12AM and 12PM -- just use java.util.Calendar and change code accordingly.
    Valery Silaev
    SaM Solutions
    http://www.sam-solutions.net

  • Are there any standard web dynpro ABAP or JAVA for material creation(mm41)?

    Hi SDN,
          I have got the requirement to provide Web Dynpro application for material creation (transaction code is MM41) and I would prefer to enhance standard Web Dynpro more than develop from scratch. Now I got only the Web dynpro ABAP component for create sales order called "LO_OIF_MAIN_COMP" and GUI HTML for purchasing order that come with business package Eh4.
          Anyone who know please kindly help me.

    >but I afraid that I'm not able to find out what is its component name from application
    You could just lookup the WD Application in SE80 and then it will show you the component name. From SE80 choose Edit Object from the toolbar. Go to the Web Objects tab in the dialog. Type in the WD Application name and hit enter.  You will then see the details of that application.

  • Enhancements / Modifications in Web Dynpro Java

    Hi, all!
    I' ve a more general question: Are there any enhancement concepts for Web Dynpro Java available or at least planned that would give developers the same comfort and possibilities ABAP programmers have?
    I mean, will there ever be an Enhancement Framework like in ABAP - modification free enhancements via BADIs or customer exits?
    Think of one of SAPs WDJ flagship - the ESS/MSS. If you want to change anything within, you have no other possibility but to modify the sources. Considering this - together with the weak possibilities of backend access via JCo - I give the WDJ not a chance to stand the challenge of WD4A.
    Regards,
    Thomas

    Hi!
    I' m just going through the hep-pages, but what I can definitly say by now is that there' s no enhancement-concept in sight. This matter is getting kind of really embarrassing and leaves the question open: What the heck should an SAP customer persuade to focus on Java Development? No enhancements, no direct data access, no easy debugging possibilities like in ABAP.
    I' ve started with WDJ, but digging deeper into WD4A I' m getting more and more convinced that the whole Java thing was just something like a playground field for the development of the programming model and is now getting more and more obsolete with the rising of WD4A.
    Correct me, if I' m wrong, and forgive me, if I' m flaming, but when I started with Java development in SAP enviroment I was quite enthusiastic and didn' t understand resentiments of the ABAP developers against our programming language, but now I' m more and more joining their opinion.
    Regards,
    Thomas
    PS: I' ve - by the way - done the SAP Java Certification and am already regretting it.

  • Skills Profile - Enhance Web DynPro to handle Effective Date

    We are working with the ESS BP on ECC 6.0 and have a requirement to enter an Effectivity Date for the start of a qualification.  The trouble is that the existing function for updating the qualification profile (XSS_SKL_APPLY_QUALI_PROFILE) does not allow for a beginning date to be passed in.  Instead it uses the current date (Sy-Datum) which is set on initialization of the SkillsApplication (via FM XSS_SKL_INITIALIZE_DATA).  I have tried to enhance the structure for the qualification profile (structure RHXSS_SKL_EMPLOYEE) but it is marked as Can Not be Enhanced by SAP.
    Does anyone have any thoughts on a good way to add this functionality?  I'd hate to throw away all of SAP's work with the SkillsApplication and write one from scratch just for this small change, but it's looking like that might be my only option.

    The following describes the changes required for adding the effectivity date to the Standard Skills Profile Web Dynpro Java screen.
    ABAP Changes
    1.  Get modification keys for hte following structures and change the enhancement category of the strucures to "Can Be Enhanced Deep".
         RHXSS_SKL_EMPLOYEE
         RHXSS_SKL_PROF_UPD
         RHXSS_SKL_QUALIPROFILE
    2.  Add appends to each of the structures in step 1 for feidl ZEFFDATE
         RHXSS_SKL_EMPLOYEE - ZZEFFDATE type BEGDATUM
         RHXSS_SKL_PROF_UPD - ZZEFFDATE type String
         RHXSS_SKL_QUALIPROFILE - ZZEFFDATE type BEGDATUM
    3.  Enhance the following function modules for setting/getting the values of ZZEFFDATE
         XSS_SKL_APPLY_QUALI_PROFILE
         XSS_SKL_CONFIRMATION_DATA
         XSS_SKL_GET_PROFILE_OVERVIEW
         XSS_SKL_GET_QUALI_DETAIL_DATA
    4.  Enhance the following Includes using the Modification Assistant or Enhancement Framework for setting/getting
        LRHXSS_SKL_INTERFACEF01
        LRHXSS_SKL_INTERFACETOP 
    Java Changes
    Track:  Make a new track for the ESS Component.  A quick SDN search should produce for you a Cookbook for setting this up in the NWDI
    DC:  esssklsap.com
    1.  Reimport the Skills model to get the ABAP changes into WebDynpro
    2.  Create a new Application (zSkillsApplication in my case)
    3.  Modify the Application properties to tell the framework manager to use the CcSklConfiguration  component for navigation configuration
         Properties
         sap.authentication = true
         sap.xss.configurationComponentDC = sap.com/ess~skl
        sap.xss.configurationComponentName = com.sap.xss.hr.skl.CcSklConfiguration
    4.  In the Interface Controller of Component CcSklConfiguration, modify the navigation Graph as follows
    navigationGraph =
       new NavigationGraph(
        new NavigationPath[] {
         new NavigationPath("",IFPM.EVENT_START,"OVERVIEW"),
         new NavigationPath("OVERVIEW",IFPM.EVENT_EDIT,"DETAIL"),
         new NavigationPath("OVERVIEW",IFPM.EVENT_ADD,"SELECT"),
         new NavigationPath("OVERVIEW",IFPM.EVENT_REVIEW,"REVIEW"),
         new NavigationPath("OVERVIEW",IFPM.EVENT_REMOVE, "OVERVIEW"),
    //begin replace ERICV - Go Straight to Review&Save
    //     new NavigationPath("DETAIL",IFPM.EVENT_ADD, "OVERVIEW"),
         new NavigationPath("DETAIL",IFPM.EVENT_ADD, "REVIEW"),
    //end replace ERICV - Go Straight to Review&Save    
         new NavigationPath("DETAIL",IFPM.EVENT_BACK, "OVERVIEW"),
         new NavigationPath("DETAIL",IFPM.EVENT_SELECT, "SELECT"),
         new NavigationPath("SELECT",IFPM.EVENT_EDIT, "DETAIL"),  >
    5.  In the Component FcSklBusinessLogic, make the following changes:
            a.  Perform the context mapping of the new ZZEFFDATE field in the Interface Controller and Standard Controllier
            b.  Modify the insUpdSkill method of the Component Controller to populate the Effective Date
    try {
       wdContext.nodeApply_Quali_Profile_Input().bind(
        (Xss_Skl_Apply_Quali_Profile_Input) model.createModelObject(Xss_Skl_Apply_Quali_Profile_Input.class));
       Xss_Skl_Apply_Quali_Profile_Input input = new Xss_Skl_Apply_Quali_Profile_Input();
       Rhxss_Skl_Employee insUpdVector = new Rhxss_Skl_Employee();
       insUpdVector.setSkill_Id(wdContext.currentContextElement().getQualiId());
       insUpdVector.setExist_Profcy(wdContext.currentContextElement().getProfDropDown());
       //Begin Insert ERICV - Add Effective Date to Skills Qualification
       insUpdVector.setZzeffdate(wdContext.currentContextElement().getZzEffDate());
       //End Insert ERICV - Add Effective Date to Skills Qualification
       input.addProfile_Ins_Tab(insUpdVector);
       wdContext.nodeApply_Quali_Profile_Input().bind(input);
       wdContext.currentApply_Quali_Profile_InputElement().modelObject().execute();
      } catch (Exception ex) {
       fpm.getMessageManager().raiseException(wdThis.wdGetAPI().getComponent(), ex);
    6.  In the Component VcSklDetail make the following changes:
         a.  Context mapping of all relevant nodes to get the new ZZEFFDATE field in the context
         b.  Screen modifications to get the ZZEFFDATE on the screen
         c.  Modify the initDetail method of the Component Controller
    if ((sklOutputElement.getExpiry_Date() == null) || (sklOutputElement.getExpiry_Date().equals(""))) {
       wdContext.currentContextElement().setLicenceVisibility(WDVisibility.NONE);
    //begin insert ERICV - set the zzEffective Date
         //convert date to java.util.date
             SimpleDateFormat sdf = new SimpleDateFormat("mm/dd/yyyy");
      try {
       java.util.Date myDate = sdf.parse(wdContext.currentGet_Quali_Detail_Data_OutputElement().getStart_Date());
       sdf.applyPattern("yyyy-mm-dd");
       wdContext.currentContextElement().setZzEffDate(Date.valueOf(sdf.format(myDate)));
      } catch (ParseException e) {
       // TODO Auto-generated catch block
                e.printStackTrace();
    //end insert ERICV - set the zzEffective Date
        //@@end

  • Web dynpro Alv ENHANCEMENT

    hI,
    i HAVE a requirement to add extra 2 columns in web dynpro alv of standard web dynpro component
    what are the steps to be taken.

    Hi Madhav,
    Please cehck Thomus answer in this thread..
    is possible to enhance standard ALV?
    Enhancement Implementation - Removing columns in standard ALV table
    Cheers,
    Kris.

  • Web Dynpro - Modification and Enhancement

    Web Dynpro for ABAP - Modification and Enhancement!
    Hi,
    I’m new to WDA.
    I need to include new fields in WD application in e-recruitment (Internal and External Candidate profile).
    HRRCF_C_CANDPROFILE_UI is main component and has two applications for Internal and External candidate respectively. It has Road Map Pattern steps and each step calling components like HRRCF_C_PERSONL_DATA_UI and HRRCF_C_WORK_EXP_UI.
    I need to include new fields in each component and display into the screen with edit, insert and display functionality, additionally these should displayed in Date Over view part from Smartform/Adobe form.
    Can I achieve above all by Enhancement or modification from standard is must. I would like to keep my all development only in Enhancement hook. Is this possible?
    I appreciate if you would guide me to Design and Develop to achieve my requirement.
    ...Naddy

    Hi Naddy,
    Check the standard tables that are being used in the application for display/change/create of data. If these tables have a "Customer Include", your first step should be to define the Customer Include Structure and define your new custom components in it (the ones that you need to show on the statndard view.)
    Step 2: Create and enhancement of the standard component in which the view is present. In this enhancement, update the context so that the new fields that are present in the standard table (due to Customer Include) become available in the Context.
    Step 3: Create enhancement of the view on which the field has to be included. Firstlyupdate context of view from context of controller. Now ur fields will be available in context of view. Also create context attributes that will control visibility, read-only etc of UI elements. Now enhance the layout of the view, create your custom fields and bind value/visibilty/read-only etc to the respective context attributes that you have created.
    Also write a post exit method for domodify and check the mode of the standard application (create/change/display). Accordingly set values of the read-only, visibility etc.
    Regards,
    Reema.

  • Enhancement spot BADI in Web Dynpro

    Hi,
    is that possible to define a UI enhancement spot in Web Dynpro Layout to enhance an existing WDA? It is possible with classic ABAP GUI. With this, customers could add their custom UI modification to my application.
    Thanks
    Davy

    You can enhance Web Dynpro Components.
    select the web dynpro component that you want to modify. Click on the component controller.
    Click on the menu "Controller" and select Enhance (Ctrl + F4)
    Specify a name and text for your enhacement
    Similarly to enhace a view, double click the view and select enhance from the view menu.
    Regards,
    Reema.

Maybe you are looking for

  • JNI Com CoCreateInstance VM crash

    I'm trying to use the ActiveHome SDK for use in a project. The SDK is written in vb and c++. I have set up a a main class inside of my JNI wrapper to test the logic. I also set up a main class in the Java class, the test class in c++ works well when

  • Cannot disable a button 2 times using an EL expression

    Using a EL expression for the disabled attribute on a button does not work the second time... It will not disable again. Below is a simple example.... The EL updates the text of the button but does not enable/disable the button. Any help would be gre

  • ITunes account is disabled

    iTunes account is disabled. I followed the instructions on the website and changed my password. I even went about changing my payment option from paypal to a credit card that is valid through itunes. Any help?

  • Problem in editing JTable fields.....

    Hi there!! I have got 2 classes in my package,one contains a public static JTable while the other has got some variables whose values I want the JTable's fields to populate with.Now the problem I have is that I can't populate the JTable's fields afte

  • App store charge me one dollar for no goods

    I was just apple a new spple store account, this account needs file in my full information with visa card number. when i click compelet,it automaticly charge me one dollar for no reason. I am very sure that i did not buying anything. it will ask me t