Skip to Content
author's profile photo Former Member
Former Member

execute Webdynpro in GUI container

I need to display my Webdynpro application in SAP GUI.

I am doing that using function:

DATA:       container_bottom         TYPE REF TO cl_gui_container.

CALL FUNCTION 'WDY_EXECUTE_IN_PLACE'
  EXPORTING
 APPLICATION            = 'ZFI_BUDGET_AMEND'
*  INTERNALMODE              = 'X'
*  CONTAINER_NAME = 'CONTAINER_BOTTOM'
 IMPORTING
     out_url                 = out_url
  EXCEPTIONS
    invalid_application    = 1
    browser_not_started    = 2
    OTHERS                 = 3.

If I do not submit parameter CONTAINER_NAME - then Webdynpro is displayed in a new screen.

I want my application to be displayed in the part of the same screen it is called from.

Before the application is called dynpro screen is already split in to containers.

So I submitted parameter CONTAINER_NAME - but the webdynpro doesn't get displayed.

Thru debug I can see that object CONTAINER_BOTTOM was created and webdynpro has been called.

But nothing is displayed.

Any help is appreciated.

Tatyana

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

2 Answers

  • author's profile photo Former Member
    Former Member
    Posted on Aug 30, 2010 at 06:32 PM

    SAP help on Internet is referring to examples:

    DEMO_START_WD_IN_PLACE1

    DEMO_START_WD_IN_PLACE2.

    Our system doesn't have them.

    If you have the code in your system - could you please copy and paste on this forum?

    Or send it to me please?

    Thank you,

    Add a comment
    10|10000 characters needed characters exceeded

    • Former Member

      Hi Tatyana,

      I used in the below way and Its working fine for me.

      
      DATA out_url type STRING.
      CALL FUNCTION 'WDY_EXECUTE_IN_PLACE'
        EXPORTING
      *   PROTOCOL                  =
         INTERNALMODE              = 'X'
      *   SMARTCLIENT               =
          APPLICATION               = 'ZSAMPLE'
      *   CONTAINER_NAME            =
      *   PARAMETERS                =
      *   SUPPRESS_OUTPUT           =
       IMPORTING
         OUT_URL                   = out_url
      * CHANGING
      *   VIEWER                    =
      * EXCEPTIONS
      *   INVALID_APPLICATION       = 1
      *   BROWSER_NOT_STARTED       = 2
      *   ACTION_CANCELLED          = 3
      *   OTHERS                    = 4
                .
      IF SY-SUBRC <> 0.
      * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
      *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      

      Pls check the parameters which you are passing are correct or not and let us know.

      Regards,

      Amarnath S

  • author's profile photo Former Member
    Former Member
    Posted on Aug 31, 2010 at 11:31 AM

    Amarnath,

    I also do not have problem using function 'WDY_EXECUTE_IN_PLACE'. It runs just fine but Webdynpro will be opened in a new window.

    I would like my webdynpro to run in the container I provide.

    So I call the function with parameters like below. Please note that parameter CONTAINER_NAME is uncommented. I made a mistake in my initial post leaving this parameter commented out.

    'CONTAINER_BOTTOM' is a name of object of class CL_GUI_CONTAINER.

    CALL FUNCTION 'WDY_EXECUTE_IN_PLACE'
      EXPORTING
     APPLICATION            = 'ZFI_BUDGET_AMEND'
      INTERNALMODE              = 'X'
      CONTAINER_NAME = 'CONTAINER_BOTTOM'
     IMPORTING
         out_url                 = out_url
      EXCEPTIONS
        invalid_application    = 1
        browser_not_started    = 2
        OTHERS                 = 3.

    Could you share SAP demo code of WDR_INPLACE_DEMO1 and WDR_INPLACE_DEMO2 if you have that?

    Thank you,

    Tatyana

    Add a comment
    10|10000 characters needed characters exceeded

    • Hi Thomas,

      yes, that's some time before. Well I have to do some maintenance work here: I'd like to have the WDY_EXECUTE_IN_PLACE raise an exception, i.e. ACTION_CANCELLED so the an RFC call gets signalled accordingly.

      Any idea on how to achieve that?

      Thanks a lot.

      Regards

      Clemens

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.