Using AcfUpDownload in FPM Application  of WD4A?

I have a Webdynpro ABAP  appliction running on FPM . I have a requirement to download the mulitiple pdf documents  to the client's pc/laptop location like  C:     emp  silently  .
For this requirement I gone through Thomas Jung tutorial using cahce service in webdynpro . Link-[Tutorial|http://www.sdn.sap.com/irj/scn/elearn?rid=/library/uuid/109b9b52-bc00-2c10-8786-e4c5e96d7e04&overridelayout=true].
In this tutorial the webdynpro application created in SICF service is does not belong to any webdynpro or BSP application.
My question is whether this scernio can be imlemented in Webdynpro components running on  FPM ?(/sap/bc/webdynpro/sap/).

Thanks for the reply Thomas.
I have a requirement to download multiple pdf  documents on to users laptop's based on document id of the employee.
I have encorporated your code and able to download a PDF document of 0 KB.  I have maintained the pdf data in the temporary database table cache along with callback_id , Mime type as pdf , GUID etc.
Can any one  clarify below questions --
1. How do i handle the pdf content data in the output?(to dispaly the data instead of 0 KB) ?
2.Do i need to use IF_WD_ACFUPDOWNLOAD_SCMS~HTTP_PUT to put the data  into cache ?
3. Need clariifcation in using URLS parameter in  IF_WD_ACFUPDOWNLOAD_SCMSHTTP_PUT  and IF_WD_ACFUPDOWNLOAD_SCMSHTTP_GET  ?

Similar Messages

  • FPM application using  FORM GUIBB

    Hi experts,
    Am new to FPM , am start using  form GUIBB , the problem  that i dont have configure group button in GUIBB  component configuration
    even if i open SAP demo in display  mode its not appear
    could you please advice me.
    like the shoot below:

    Hi Ghadeer,
    If your requirement is adding element into UI then create a group using element -> create group
    then you can add element inside your group like Inputfield, button, text view and other.
    you can refer below link for creating Form UIBB
    A Step-by-Step guide to create a simple FPM application using Feeder Class for FORM GUIBB
    Regards,
    Ragavendra

  • Close previous FPM application on navigation to next one using CL_FPM_HR_NAVIGATION~NAVIGATE

    Hello,
    My requirement is to close the previous FPM application on navigation to next FPM application configured in launchpad.
    I am navigating to my next FPM application using CL_FPM_HR_NAVIGATION~NAVIGATE but it navigates to next FPM in new window and old one remains open.
    Is there any way I can close the previous window and then navigate or vice versa?
    I tried firing firing FPM_CLOSE event using if_fpm~event_by_event_id but it after calling navigate method but it doesnt work. This doesnt open the new application instead tries to close the previous application with message "Application has closed and you can close the browser now"
    Please help.
    Thanks in advance.

    Hi,
    I have a similar requirement. Have you found a solution?
    Thanks and regards.

  • Where used list for event handler in fpm applications

    Hi,
    in one of fpm applications, fpm event been raised in one of the methods, i want to see in which components these fpm events been handled, as i can see there are multiple compoenents being configured in fpm application.
    Please suggest !!

    Hi,
    There is no tool to find that out. Normally i analyze manually starting from the application point of view, go through the involved components and their process_event method.
    You could try in se80 to search for a string, supplying the event name.

  • How do I create event links in the FPM Application Editor?

    I'm am attempting to add a new step to the roadmap of ESS/BEN Benefits Application.  I've created a new VAC component and a corresponding view (using the "self-service administrator" role).
    When using the FPM Application Editor to create a new perspective, I need to add an event link but receive the error, "Either the perspective "Smoker Verify"  has no view assigned to it or none of the view(s) assigned  have any event assigned to them".
    How do I assign events to my new view?  Please assist and thanks in advance.
    -Jeff Karls-

    I see that the events are defined on the views themselves in the portal content.

  • Error in FPM Application / View Editor

    Hi!
    I am trying to use the FPM Application Editor and got the following error:
    <br/><br/>
    <i>error. java.lang.NullPointerException at com.sap.xss.config.PcdNamingUtil.removePcdPrefixFromId(PcdNamingUtil.java:22) at com.sap.xss.cfg.edt.FPMApplicationEditor.doInit(FPMApplicationEditor.java:552) at com.sap.xss.cfg.edt.wdp.InternalFPMApplicationEditor.doInit(InternalFPMApplicationEditor.java:430) at...</i>
    <br/><br/>
    I could solve this by following this Thread:
    <br/><br/>
    Re: Error in FPM  Application
    <br/><br/>
    But not I get two new errors in the FPM Application Editor and FPM View Editor.
    <br/><br/>
    FPM Application Editor:
    <br/><br/>
    <i>The initial exception that caused the request to fail, was:
    <br/><br/>
       com.sap.tc.webdynpro.progmodel.controller.MessageManager$AbortMessageManagerException
    <br/><br/>
       com.sap.tc.webdynpro.progmodel.controller.MessageManager$AbortMessageManagerException
         at com.sap.tc.webdynpro.progmodel.controller.MessageManager.raiseException(MessageManager.java:430)
         at com.sap.xss.cfg.utils.FPMEditorUtilitiesInterface.raiseException(FPMEditorUtilitiesInterface.java:399)
         at com.sap.xss.cfg.utils.wdp.InternalFPMEditorUtilitiesInterface.raiseException(InternalFPMEditorUtilitiesInterface.java:203)
         at com.sap.xss.cfg.utils.wdp.InternalFPMEditorUtilitiesInterface$External.raiseException(InternalFPMEditorUtilitiesInterface.java:266)
         at com.sap.xss.cfg.edt.FPMApplicationEditor.doInit(FPMApplicationEditor.java:568)
         at com.sap.xss.cfg.edt.wdp.InternalFPMApplicationEditor.doInit(InternalFPMApplicationEditor.java:430)
         at com.sap.xss.cfg.edt.InconsistentObjectExceptionView.doInit(InconsistentObjectExceptionView.java:174)
         at com.sap.xss.cfg.edt.InconsistentObjectExceptionView.wdDoInit(InconsistentObjectExceptionView.java:100)
         at com.sap.xss.cfg.edt.wdp.InternalInconsistentObjectExceptionView.wdDoInit(InternalInconsistentObjectExceptionView.java:112)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.doInit(DelegatingView.java:61)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:215)
         at com.sap.tc.webdynpro.progmodel.view.View.initController(View.java:445)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:709)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:579)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:155)
         at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:43)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:709)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bind(ViewManager.java:555)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:724)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bind(ViewManager.java:555)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:724)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:579)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:155)
         at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:43)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:709)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:579)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:155)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.doOpen(WebDynproWindow.java:295)
         at com.sap.tc.webdynpro.clientserver.window.ApplicationWindow.show(ApplicationWindow.java:182)
         at com.sap.tc.webdynpro.clientserver.window.ApplicationWindow.open(ApplicationWindow.java:177)
         at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:364)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.initApplication(ApplicationSession.java:754)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:289)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
    </i>
    <br/><br/>
    And in the FPM View Editor:
    <br/><br/>
    <i>
    java.lang.NullPointerException
    <br/><br/>
    at com.sap.xss.config.pcd.PcdObjectBroker.retrieveObjectInternal(PcdObjectBroker.java:70)
         at com.sap.xss.config.pcd.PcdObjectBroker.retrieveObject(PcdObjectBroker.java:47)
         at com.sap.xss.config.domain.PersistentObjectManager.retrieveObjectInternal(PersistentObjectManager.java:106)
         at com.sap.xss.config.domain.PersistentObjectManager.retrieveObject(PersistentObjectManager.java:80)
         at com.sap.xss.config.domain.PersistentObjectManager.retrieveObject(PersistentObjectManager.java:76)
         at com.sap.xss.config.FPMRepository.retrieveObjectInternal(FPMRepository.java:83)
         at com.sap.xss.config.FPMRepository.retrieveObject(FPMRepository.java:66)
         at com.sap.xss.cfg.utils.FPMEditorUtilitiesInterface.loadFPMView(FPMEditorUtilitiesInterface.java:223)
         at com.sap.xss.cfg.utils.wdp.InternalFPMEditorUtilitiesInterface.loadFPMView(InternalFPMEditorUtilitiesInterface.java:195)
         at com.sap.xss.cfg.utils.wdp.InternalFPMEditorUtilitiesInterface$External.loadFPMView(InternalFPMEditorUtilitiesInterface.java:258)
         at com.sap.xss.cfg.edt.fpmview.FPMViewEditor.onInit(FPMViewEditor.java:381)
         at com.sap.xss.cfg.edt.fpmview.wdp.InternalFPMViewEditor.onInit(InternalFPMViewEditor.java:263)
         at com.sap.xss.cfg.edt.fpmview.FPMViewEditorBasicView.wdDoInit(FPMViewEditorBasicView.java:100)
         at com.sap.xss.cfg.edt.fpmview.wdp.InternalFPMViewEditorBasicView.wdDoInit(InternalFPMViewEditorBasicView.java:180)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.doInit(DelegatingView.java:61)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.initController(Controller.java:215)
         at com.sap.tc.webdynpro.progmodel.view.View.initController(View.java:445)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:709)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bind(ViewManager.java:555)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:724)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:579)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:155)
         at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:43)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:709)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bind(ViewManager.java:555)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:724)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bind(ViewManager.java:555)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:724)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:579)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:155)
         at com.sap.tc.webdynpro.progmodel.view.InterfaceView.initController(InterfaceView.java:43)
         at com.sap.tc.webdynpro.progmodel.controller.Controller.init(Controller.java:200)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.getView(ViewManager.java:709)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.bindRoot(ViewManager.java:579)
         at com.sap.tc.webdynpro.progmodel.view.ViewManager.init(ViewManager.java:155)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.doOpen(WebDynproWindow.java:295)
         at com.sap.tc.webdynpro.clientserver.window.ApplicationWindow.show(ApplicationWindow.java:182)
         at com.sap.tc.webdynpro.clientserver.window.ApplicationWindow.open(ApplicationWindow.java:177)
         at com.sap.tc.webdynpro.clientserver.cal.ClientApplication.init(ClientApplication.java:364)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.initApplication(ApplicationSession.java:754)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:289)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:713)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:666)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:250)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:386)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:364)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:1039)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:265)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:175)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:104)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:176)
    </i>
    <br/><br/>
    Thanks for your help!

    Hi Serkan,
    I am also facing the same problem.
    Getting the error "com.sap.tc.webdynpro.progmodel.controller.MessageManager$AbortMessageManagerException "
    for FPM application editor and "java.lang.NullPointerException " for FPM view editor.
    Kindly Let me know how did you solve the problem?
    The SAP note 1137578 did not help.
    Thanks in advance!

  • Portal Workprotect in Talent Profile - WebDynpro ABAP FPM application

    We are trying to implement Workprotect in ESS - Talent Profile application (HRTMC_EMPLOYEE_PROFILE). The requirement is that when user had entered data in either Internal work experience, External Work experience or other tabs; before he has saved the data, if the user clicks on some other link in portal or try to close the window, Portal work protect that is enabled should prompt the user to save the data or risk losing data.
    What has been done so far:
    1. Enabled Workprotect on Portal:
    Step 1: In the portal, go to System Administration -> System
    Configuration -> Service Configuration.
    Step 2: In the portal catalog, Select
    application "com.sap.portal.epcf.loader" and open the properties for
    service "epcfloader" for editing
    Step 3: Set property workprotect.mode.default = 3
    Step 4: Save -> Restart service
    Now, Portal Work protect is enabled.
    2. On the Talent application end, I have seen many posts in forum & FPM related workprotect documentation. But, it is not clear as to how this actually works when it comes to FPM application.
    The documents says FPM allows application to make use of work protect
    mode offered by Portal. To achieve this, the application must u2018tellu2019 the
    FPM whether it contains unsaved
    (u201Cdirtyu201D) data. For this, the FPM provides the Web Dynpro Interface
    IF_FPM_WORK_PROTECTION. In the is dirty method, you have to put
    METHOD is_dirty.
    if * component contains unsaved data
    ev_dirty = abap_true.
    else.
    ev_dirty = abap_false.
    endif.
    ENDMETHOD.
    Questions:
    1. If you see the shared application component HRTMC_TP_SHARED_DATA, it implements interface IF_FPM_WORK_PROTECTION. But, the isdirty method in the component controller has already existing code
    METHOD is_dirty.
    ev_dirty = wd_this->mv_is_dirty.
    ENDMETHOD.
    Where should we put the code given below as described in FPM documentation. In shared component or in individual components like HRTMC_TP_WORKEXP_INTERNAL, HRTMC_WORKEXP_INTERNAL, HRTMC_TP_EDUCATION
    etc.
    METHOD is_dirty.
    if * component contains unsaved data
    ev_dirty = abap_true.
    else.
    ev_dirty = abap_false.
    endif.
    ENDMETHOD.
    And, the line "* component contains unsaved data" as described in document- how do we code this for talent profile considering that there are multiple components, shared component etc? My requirement is that if user has entered some data in any of the tabs like internal work experience, external work experience, then work protect should work if
    user tries to navigate away or close browser.
    2. If you see general documentation for Work protect and webdynpro (not for FPM), it says that the application must define a special status (dirty flag), which tells the portal when there is unsaved data. You can set and cancel this status (TRUE, FALSE) using method
    SET_APPLICATION_DIRTY_FLAG in interface IF_WD_PORTAL_INTEGRATION.
    And it goes on to say that one must set application flag dirty
    SET_APPLICATION_DIRTY_FLAG
    exporting
    DIRTY_FLAG = TRUE | FALSE
    and also set work protect mode
    call method L_PORTAL_MANAGER->SET_WORK_PROTECT_MODE
    exporting
    MODE = NONE | APPLICATION_ONLY | BOTH
    3. Which is the correct way to enable Work protect in case of Talent profile applications? Which method of which component should should we add code to? Which of the above ways should we follow ( Interface IF_FPM_WORK_PROTECTION or IF_WD_PORTAL_INTEGRATION) ? Which component and which method should we Set Work protect and  Set isdirty
    Please advise.

    Hi Experts,
    Can you please provide some useful info in implementing work protect in Standard FPM WebDynpro ABAP applications? In this case, as mentioned above, the application is  ESS Talent Profile application (HRTMC_EMPLOYEE_PROFILE).
    Thanks,
    Sandeep

  • Calling FPM application from another FPM application

    Hello Experts,
    I've created 2 FPM configurations, one displays the list of POs created by the user through a List UIBB and the other displays the Header and Item of the PO when selected.
    Scenario is that when I should click on the PO (which is a link) in my 1st application, I need to pas the PO number and some other details to my 2nd application and display the PO header and Item. My all Config is purely UIBB based and I'm not using webdynpro at all for designing any views, everything is designed using FPM UIBBs and feeder classes only.
    what I need to know is:-
    1) how can I pass the data between 2 different FPM applications?
    2) how to call and display my 2nd Application on the same page when I click on the link of 1st application? I need the BACK functionality as well.
    3) how to get the data into my 2nd application from 1st application?
    Plz suggest.
    Best Regards
    Jitin Kharbanda

    Jitin,
    The best option in your case would be to open a new browser window with the second application and pass an URL parameter along with the document number.
    Then you can read the URL parameter in the second application. Please see Re: Determining Edit/Display Mode from Within Freestyle Component how this can be achieved.
    Embedding another FPM application into an already opened FPM application (e.g. by embedding a freestyle UIBB and loading the second FPM application from there) won't work as the FPM runtime will cause a dump saying that two instances ofthe FPM are not allowed.
    If you MUST embedd your second application into the first one, the only chance that comes to my mind is the merge the configurations of both applications and pass the data via singleton / wires / events. Please see Data exchange possibilities in Floorplan Manager
    Regards, Uwe

  • Custom FPM Application: application variant and self services config in PCD

    Hello,
    I've created a webdynpro based on FPM framework and created a FPM Application using the Self-Services administrator too.
    My question is, how do I get the application variant so that I can create an iview out of this custom fpm application?
    For example, the perspective of my FPM application has the custom wd FPM View and I'd like to add more fpm views to it.
    If I want to create a page for this FPM app, I need to be able to "see" these added FPM views as application variants while creating the iviews and page.
    For all the delivered SAP components/dcs there already present the FPM Applications in the PCD.
    How about custom developed FPM apps?
    Any help is greatly appreciated.
    Thanks,
    Rajit
    Edited by: Rajit Srinivas on Apr 8, 2008 8:47 AM

    Anybody, please any ideas?

  • New Tab in FPM application not visible

    Hi All,
    I am new to WD ABAP and working on an enhancement in EHSM 3.0 application using WDA and FPM. I am facing a problem while adding a new tab to an existing application.
    My requirement is to add a new tab in the Edit Incident screen (EHHSS_INC_REC_OIF_V3 configuration) and I have followed the below steps:
    Created an Z Enhancement for the component EHHSS_INC_REC_OIF_V3.
    Created a new config entry (ZEHHSS_CLASSIFICATION_PARAMETERS) for the component FPM_FORM_UIBB component
    Created a new Feeder class for the configuration and used it in the config entry
    Added a Main View, Subview and UIBB element in the EHHSS_INC_REC_OIF_V3 component similar to other existing tabs.
    For the UIBB --> I have selected FPM_FORM_UIBB as component, Window as FORM_WINDOW and the config ID mentioned above.
    I am able to see the new tab in the design time. There are also no errors when I perform a check.
    But once I login to the portal and go to the Edit Incident screen, the new tab is not shown. Please let me know if there are any additional steps needed to be performed?
    Also could someone let me know how do we link a Feeder class with a BOPF node and use it in the WDA FPM screen?
    I have given screenshots showing the behaviour at design time and runtime.
    Poojith MV

    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

  • Exit from ABAP FPM application to anothor WD application in same window

    Hello experts,
    If anybody can please suggest how to exit an FPM application to another WD component without using suspend mode.
    I did following coding in the process event but this opens target wd abap application in the same window. But the problem is below code uses suspend method for FPM application hence there are performance issues.
    if io_event->mv_event_id = 'BACK_EMP_PRF'.
    DATA: lv_launch TYPE FPM_S_LAUNCH_URL.
    DATA: lo_navigate_to TYPE REF TO if_fpm_navigate_to.
    lo_fpm = cl_fpm_factory=>get_instance( ).
    lo_navigate_to = lo_fpm->get_navigate_to( ).
    lv_launch-HEADER_TEXT = ''.
    lv_launch-URL = lv_url (lv_url is target url for WD application)
    *USE_SUSPEND_RESUME = 'X'.
    *PARAMETER
    lo_navigate_to->LAUNCH_URL( is_url_fields = lv_launch ).
    endif.
    Is there any API to open new application in the same window without suspend_resume method.
    Thanks in advance
    Umang

    Hi Baskaran,
    Thanks for a reply. I have done following things. I added a toolbar button in EDIT step and  I have given  its FPM ID "EMP_PRF_BACK".
    Then on the process event method I have coded as following.
    if io_event->mv_event_id = 'BACK_EMP_PRF'.
    DATA: lv_launch TYPE FPM_S_LAUNCH_URL.
    DATA: lo_navigate_to TYPE REF TO if_fpm_navigate_to.
    lo_fpm = cl_fpm_factory=>get_instance( ).
    lo_navigate_to = lo_fpm->get_navigate_to( ).
    lv_launch-HEADER_TEXT = ''.
    lv_launch-URL = 'http://www.google.com/'.
    *USE_SUSPEND_RESUME = ''.
    *PARAMETER
    lo_navigate_to->LAUNCH_URL( is_url_fields = lv_launch ).
    endif.
    for the test purpose I am trying to open google. It open the link but It opens in a separate window. I want it to open in the same window. Please suggest how to do it.
    Thanks in advance
    Umang

  • Exit from ABAP FPM application to anothor WD application (W/O FPM)

    Hi Experts,
    I am working on a custom ABAP FPM application using roadmap pattern. I have anothor WD application w/o FPM application which calls my second FPM application. I do the navigation from my first application to FPM application using an exit plug in the window of first app. This navigation works fine. Now FPM component has following steps.These views are embed from a WD component ZFPM.
    EDIT  View - WD Comp ZFPM
    REVIEW View - WD Comp ZFPM
    CONFIRMATION View - WD Comp ZFPM
    I want a button on the EDIT screen and confirmation screen which will lead me to first application (ZCOMP1). For this I created an exit plug in the EDIT window and Confirmation window. But when I debug the application i find that even though control goes to respective exit plugs navigation does not happen. I think thats because of FPM. Can anybody please suggest the posible approach for it or is it just that this navigation is not possible?
    Thanks in Advance
    Umnag
    Edited by: Umang Mathur on May 31, 2011 1:36 AM

    Hi Baskaran,
    Thanks for a reply. I have done following things. I added a toolbar button in EDIT step and  I have given  its FPM ID "EMP_PRF_BACK".
    Then on the process event method I have coded as following.
    if io_event->mv_event_id = 'BACK_EMP_PRF'.
    DATA: lv_launch TYPE FPM_S_LAUNCH_URL.
    DATA: lo_navigate_to TYPE REF TO if_fpm_navigate_to.
    lo_fpm = cl_fpm_factory=>get_instance( ).
    lo_navigate_to = lo_fpm->get_navigate_to( ).
    lv_launch-HEADER_TEXT = ''.
    lv_launch-URL = 'http://www.google.com/'.
    *USE_SUSPEND_RESUME = ''.
    *PARAMETER
    lo_navigate_to->LAUNCH_URL( is_url_fields = lv_launch ).
    endif.
    for the test purpose I am trying to open google. It open the link but It opens in a separate window. I want it to open in the same window. Please suggest how to do it.
    Thanks in advance
    Umang

  • Exit from FPM application to non-FPM application

    Hi Experts,
    In my custom project (ABAP Webdynpros), I have created homepage screen using non-FPM webdynpro application. When I click any link on homepage, Iu2019m calling 2nd screen (FPM application) using exit plugs and this is working fine.
    In FPM application I have [EXIT] button. When I click [EXIT] button I want to call homepage in the same screen. How can I do this? Exit plugs are not working in FPM application. 
    There is a similar post I have seen in SDN, but it was not answered.
    Exit from ABAP FPM application to anothor WD application (W/O FPM)
    [Exit from ABAP FPM application to anothor WD application (W/O FPM) ]

    You are right, it is a simillar post as you already mentioned. I am afraid there is not much beter answer available from me than already posted in that other thread.
    I am not sure in 7.02 the navigation api's are expanded such a way that you can supply window as inplce or new.

  • WD ABAP - Reading the URL Parameters for FPM application

    Hi,
    As per the Custom requirment,
    I want to pass URL parameters for WD ABAP application (sap/bc/webdynpro/dbm/app_veh_cus_search) which uses FPM.
    example: sap/bc/webdynpro/dbm/app_veh_cus_search?Customer=12345&fromExternal=true
    I am facing difficulty in reading the URL parameters.
    How to read/get the URL Parameters for an FPM WD ABAP application????
    Observation:
    I tried reading the parameter in Window --> HANDLEDEFAULT method. But could NOT read the Parameters from here for FPM application whereas if I create a Z Custom application then I could read the URL Parameters. so the issue is in reading the URL Parameters for FPM application.
    Kindly support
    Regards,
    Hussain

    Hi Hussain,
    You can do this either with the methods of interface if_fpm_parameter...
    DATA lo_param TYPE REF TO if_fpm_parameter.
    lo_param = cl_fpm_factory=>get_instance( )->mo_app_parameter.
    CALL METHOD lo_param->get_value
        EXPORTING
            iv_key   = parameter_name
        IMPORTING
            ev_value = parameter_value.
    or a more generic approach using class cl_wd_runtime_services...
    cl_wd_runtime_services=>get_url_parameter
    Cheers,
    Amy

  • Custom FPM application: why is not visible when creating iview?

    hi,
    I am trying to modify an exiting mss application which is a fpm application.
    i use the self service admin tool to copy the standard fpm application to a deltalink, and ,according to the documentation , next step should be creating an iview (webdynpro iview), and the delta link should be visible as an application variant ,but it's not there.
    i tried many times and option ,but failed.
    does anyone know what's going wrong?
    another question is , if i build a new fpm application using the given tool, can it be visible when i create the iview? under which webdynpro component? i can only see com.sap...
    br.
    zj

    Hi,
    I've the same problem, after copy the FPM application as delta linkit doesn't appear as  anew app_variant when I create a new iview.
    Does anybody know why this occurs?
    Thanks!
    Pablo.

Maybe you are looking for