cancel
Showing results for 
Search instead for 
Did you mean: 

OBN to SAPGUI transaction with parameters

Former Member
0 Kudos

Hi Folks

We have installed the Internal Sales Representative (ISR) portal business package and I'm trying to change the OBN configuration so that the SAPGUI transaction VA01 is executed instead of the Lean Order Web Dynpro app. There was already an existing iview in the same role that pointed at VA01 so I increased its OBN priority and successfully triggered VA01 when the 'Create Sales Order' button in the Customer Search Worklist was clicked. However none of the parameters, such as customer number, sales org, etc, are being passed to VA01.

How does a SAPGUI transaction like VA01 receive the OBN parameters?

(I have made sure that there is a * in the 'Parameters Forwarded to Transaction' property of the VA01 iview)

Thanks!

Glen

EP 7.01 SP3

ECC 6.03 SP18

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi Glen,

You might have to take a look at the way parameters are being passed from the application that was launching the "Lean Order" WebDynpro App. The parameters are passed in a key-value pair. In case of SAPGUI transaction the key should correspond to the screen field name.

For example, in VA01 the screen field name for Sales Org is VBAK-VKORG. The parameter should be passed in the following manner, VBAK-VKORG = 1000

You can find the screen name of a field by clicking on the field and hitting F1. Go to the technical information and look for Screen field.

I'm not sure if the ISR business package applications are WebDynpro ABAP or Java. However, below is a sample WebDynpro ABAP code for sending parameters to a transaction. The transaction in this case is SE37 and I'm passing the function module name as the parameter.


  DATA LO_API_COMPONENT  TYPE REF TO IF_WD_COMPONENT.
  DATA LO_PORTAL_MANAGER TYPE REF TO IF_WD_PORTAL_INTEGRATION.
  DATA LT_BUS_PAR TYPE WDY_KEY_VALUE_TABLE.
  DATA LS_BUS_PAR LIKE LINE OF LT_BUS_PAR.


  LO_API_COMPONENT = WD_COMP_CONTROLLER->WD_GET_API( ).
  LO_PORTAL_MANAGER = LO_API_COMPONENT->GET_PORTAL_MANAGER( ).

  LS_BUS_PAR-KEY = 'RS38L-NAME'.
  LS_BUS_PAR-VALUE ='BAPI_FLIGHT_GETLIST'.

  INSERT LS_BUS_PAR INTO TABLE LT_BUS_PAR.

  CALL METHOD lo_portal_manager->NAVIGATE_TO_OBJECT
    EXPORTING
      SYSTEM                      ='SAP_SRM'
      OBJECT_TYPE                 ='test_sapgui'
*      OBJECT_VALUE_NAME           = 'objectValue'
*      OBJECT_VALUE                =
      OPERATION                   ='sapgui'
      BUSINESS_PARAMETERS         = LT_BUS_PAR
*      FORWARD_OBN_METADATA        = ABAP_FALSE
*      USE_FORWARDPARAMETERS_OF_AL = ABAP_FALSE
*      RESOLVING_MODE              = CO_RESOLVING_MODE-SOURCE_ROLE

If you want to execute the transaction when it is launched set the

Process First Screen

property to

true

Let me know if this helps.

Regards,

Pradeep

Edited by: PRADEEPKUMAR SHETTY on Apr 2, 2010 1:30 AM

Former Member
0 Kudos

In the end, the issue was that the standard Worklists in the ISR roles are set up to navigate to the Lean Order Web Dynpro application but the parameters for the WD app are different to those needed for VA01. Eventually I found that SAP have created a suite of "frontend" programs to accept the parameters used by the worklists and then execute VA01. See program R_SLS_CREATE_SDOC but check out the other R_SLS_* programs too as there are other useful ones there.

Regards

Glen