cancel
Showing results for 
Search instead for 
Did you mean: 

CAll transaction using Adobe

Former Member
0 Kudos

Hi

My Requirement is call to a transcation ex: VA01 using ADOBE thru webservice(Fn module input-> sales order no).

The transaction shld be called when user hit the SUBMIT button Adobe interactive form.

I can create the button in webdynpro and called the screen using the below method. Its working.

lo_window_manager->create_external_window(

  • exporting

  • url = url

  • receiving

  • window = lo_window ).

But the requirement is only to call transaction when the user hit the submit button in the Adobe form.

It would be helpful if get an idea regarding the same.

Thanks

Arun

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

Hi

Thanks for all your replies.

Sanoosh

I tried to code in the function module. when submit the button in Adobe Interactive form is calling the Fn module (webservice).

But I couldnt decalre the wd_comp_controller->wd_get_api( ).

wd_comp_controller is an interface. how to decalre this interface in the function module source code.

Here is the complete code I tried in Function Module.

DATA: url TYPE string,

host type string,

port type string.

*Call below method to get host and port

cl_http_server=>if_http_server~get_location(

IMPORTING host = host

port = port ).

*create URL

CONCATENATE 'http'

'://' host ':' port

'/sap/bc/gui/sap/its/webgui/?sap-client=&~transaction=' 'VA03'

INTO url.

*get the window manager as we are opening t code in external window.

DATA lo_window_manager TYPE REF TO if_wd_window_manager.

DATA lo_api_component TYPE REF TO if_wd_component.

DATA lo_window TYPE REF TO if_wd_window.

lo_api_component = wd_comp_controller->wd_get_api( ).

lo_window_manager = lo_api_component->get_window_manager( ).

  • call the url which we created above

lo_window_manager->create_external_window(

exporting

url = url

receiving

window = lo_window ).

lo_window->open( ).

Thanks & Regards

Former Member
0 Kudos

Hi Arun,

I guess you are trying to call webdynpro objects from a function module. The scenario is not correct. The normal process would be as follows:

1) On submit, web service get triggered and will pass the control with data to a function module.

2) In the FM you will get the data filled by the user through Adobe Form

3) Instead of calling any screens or transactions, post the data to SAP by calling the relevant BAPI

4) You can post the data through BDC as well

(I assume your's is offline adobe solution)

Hope this will help you.

Thanks & Regards,

Sanoosh

Former Member
0 Kudos

Hi Mate,

here are the 2 options.

1) Web dynpro JAVA.

have a submit button on the form.

when you click that control returns to that particular event in the view controller.

get your abaper to create a BAP whith no import nor export, which inturn calls this tcode.

create a model to this bapi.

execute this model in the submit event handler.

2) web dynpro abap.

again asusual it will reach to the on submit event handler.

simply call this tcode from here.

in both the cases, if the tcode is having a dialog then it might give you an exception as there is no user to respond it.

if its a background program, no issues with that.

now if the tcode is a foreground, we can resolve it in a different way.

if its a foreground, it mean its intended for user responce, then if you are using portals create a sap transaction view to this tcode.

on submit event invoke this iview with url in a different window.

hope this helps you.

cheers,

Sai

OttoGold
Active Contributor
0 Kudos

Hi,

if you´re using Webdynpro, I am afraid you didn´t get how it works. You are supposed to create a SUBMIT button handler in the backend/ webdynpro, register it for SUBMIT event and use SUbMIT button in the form to trigger the registered handler.

You don´t need webservices or another windows. It is all processed through standard framework on background.

cheers Otto

Former Member
0 Kudos

Hi Arun,

It is possible to do call transaction on Adobe form submit. It depends on online/offline submission. If it is online submission, after submission the control goes back to webdynpro submit event and from there you can call the transaction with required data. You can use the 'lo_window_manager->create_external_window()'.

If it is offline submission using webservice then also the control comes to the FM on form submit. From the FM you can call the transaction.

Thanks & Regards,

Sanoosh