Trigger workflow from ABAP webdynpro (having an adobe form)
Hello All,
I have developed an Webdynpro (for ABAP) component that has an Adobe Form integrated within it. Now I have been given a requirment that the form (once filled out on the portal) needs to be routed to 2-3 persons for approval and then submitted (or processed in SAP). The approving personnel will look at their UWL on the portal and approve/dissapprove.
I do not have much hands on experience on such a Workflow scenario as above. I have already completed the adobe form part and the webdynpro section.
I will really appreciate it if anyone can advise as to how I need to proceed here.
Thanks in advance, Liz
Hi Liz,
You can use the FM SAP_WAPI_START_WORKFLOW. In webdynpro you have the button like "Submit" right? All the process has done, the user can click the submit button to get the approval. Under the button you can call this FM.
Create one workflow based on your scenario, and pass the workflow number to this FM. So once the submit button is clicked then in back end workflow will getting triggered.
For more Informations, please have a look at following links.
SAP_WAPI_START_WORKFLOW doesn't start workflow...
SAP_WAPI_START_WORKFLOW
SAP_WAPI_START_WORKFLOW help
Thanks.
Similar Messages
-
Trigger workflow from ABAP webdynpro and attach an Adobe interactive form
I have a need to create an ABAP Webdynpro that will upload a completed Adobe interactive form and then route the form to multiple approvers thru workflow. I am having trouble finding any documentation or examples of passing the Adobe form in the workflow. Do I have to save the content of every field on the form to an internal table and then have every workitem call an ABAP webdynpro to render the form? Any help or suggestions would be greatly appreciated.
Hi Joyce,
This can be done as follows :
[pdf as an attachment|https://www.sdn.sap.com/irj/scn/index?rid=/library/uuid/60ff6ad3-729b-2b10-6582-fedc82680a29&overridelayout=true]
Regards,
Geet -
Trigger a workflow from ABAP Webdynpro
My Scenario:
Step 1: When a user hits the SAVE button on the webdynpro form, check if that data is consistent only and trigger a message(I have a BAPI to handle this check).
Step 2: If the data is consistent, then trigger a workflow to send an alert to an agent along with the data user entered on the form.
Step 3: AGENT shall review the data(Same form from step 1 should appear here) and will have the option to SUBMIT / POST or REJECT. If SUBMITTED, data will be posted to R/3(I have a 2nd BAPI to handle this). If REJECTED, send an alert back to the USER who entered data in step 1.
I checked lots of threads from the forum, none gave me a complete idea. Can any one give me a good documentation to trigger workflow from webdynpro to handle my requirement.
I am new to webdynpro.
I checked this blogs & articles also...
/people/ginger.gatling/blog/2005/12/14/create-new-uis-for-existing-workflow-tasks-with-abap-web-dynpro-and-universal-worklist
http://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/user-interface-technology/wd%20java/wdjava%20archive/using%20web%20dynpro%20java%20and%20web%20dynpro%20abap%20applications%20in%20universal%20work%20list.pdf
Thanks a lot in advance.
Best Regards,
KiranHello Kiran,
I slightly misunderstood you requirement earlier. But if I am not wrong this time, here is what you need to do:
1) The Web dynpro form that you are creating is only for data entry purpose. But the agent who is going to review the data will need an access to this form. So this means that you need to save the content of this form to the database and provide a URL in the workflow workitem which the agent can use to open the web dynpro application with the form data on it.
2) To access the correct form, you need to save the form data in a Z-table with a GUID attached to it. Generate this GUID using GUID_CREATE function module. In the window controller of the Web dynpro component, there will be a handleDefault method where you can read the parameter'GUID' from the incoming request and use it to read the form data from the database to display the form.
3) You can use Object Oriented programming approach for creating Workflow. Check the following article to learn how to do that:
[http://www.sdn.sap.com/irj/scn/go/portal/prtroot/docs/library/uuid/b0409e6c-d213-2d10-3cb6-c12d417626c1?quicklink=index&overridelayout=true]
4) Create a Z-class and use this class as object type in your workflow (instead of BOR object).
5) In the constructor of this class, pass a parameter GUID, which would be passed when you create an object of this class in the Web Dynpro forms "OnActionSave" method.
6) Create a method in this class which will do the task of calling the BAPI to save the Acct Document. This method will be used in a Background task in a workflow step (after the agent approves the workitem).
7) Create a method in the class which generates the URL to the webdynpro application with the GUID passed as parameter.
(for eg: http://urltoserver/appname?GUID='guidoftheform').
8) In your save method of WD application, call the method to raise event that triggers the workflow (using OO)
lv_guid = '04AE4546EED7101DE10000000A424026'. "use GUID_CREATE
lv_objtype = 'ZWFCLASS'. " create a Z-class of your own
TRY.
CALL METHOD cl_swf_evt_event=>raise
EXPORTING
im_objcateg = 'CL'
im_objtype = lv_objtype
im_event = 'FORM_APPROVE' " this event needs to be defined in ZWFCLASS
im_objkey = lv_guid.
CATCH: cx_swf_evt_exception.
ENDTRY.
Please read through the workflow using Object Oriented document in the URL that I have mentioned above before you read through these instructions.
There would be a way to do this using BOR objects, but this is the way that I have tried and tested to use trigger workflows from Web dynpro applications.
Best Regards,
Gaurav
Edited by: Gaurav Salkar on Apr 6, 2010 6:13 PM -
How to Trigger a Workflow from ABAP Webdynpro
Hi All Gurus,
I have the following urgent requirement, my client is implementing HR and there is a requirement, where is a ABAP Webdynpro component in which we have integrated a Adobe Interactive Form. When the user calls this from through Portal and fills out the relevant data and submits it, a Workflow in the backend ECC system should lauch,
I am not familiar with, this concept although I have worked in Workflow this is the first time I am interfacind with ABAP Webdynpro and Adobe Interactive From.
Can you please let me know in steps what needs to be done to make the workflow trigger for my scenario and also the specific settings to be done in the bacckend.
Regards,
Pratima JainHi,
If you are using HCM Processes and Forms, the Workflow and form are not directly related, thats true.
But the method in the task calls the corresponding webdynpro application which responds to the action triggered by the user in turn to trigger the workflow and update the data in the HR Master Data.
There are 3 layers 1. UI (webdynpro which launches Adobe Interactive form based on ISR Framework)
2. Workflow
3. Backend framework (used for retrieving F4 helps, default values, save data in the infotypes).
for more documentation, please refer it on help.sap.com.
http://help.sap.com/erp2005_ehp_03/helpdata/EN/82/b6b94278560c31e10000000a1550b0/content.htm
hope this helps.
Best Regards,
Saujanya. -
Input via ABAP Webdynpro - Display data Adobe form
Hi,
My requirement is I will pass input via ABAP webdynrpo selection screen and I want to get output in ADOBE FORM.Do we have any blogs or tutorials ? BTW this will not be interactive form right?
rgds
varaHi Vara,
Do follow these steps:
1) Goto SE80 and create a WDC.
2) Create a main view, and in the view go to context, and create a node and an attribute in it to fill the values from WDA.
3) Goto layout of the View, and create an inputfield UI element, and bind the attribute created in the context.
4) Now create an Interactive form UI element and give some name in the Template source of that UI element.
5) On press of enter, it asks you to create a new SFP, and say yes for that. Also choose context as the data source during that process.
6) Now SFP tcode is opened for you to design the layout.
7) Similarly desing the layout and bind the copied node from webdypro component.
8) Save and activate the form.
9) Save and activate the WDC.
10) Create an application and test it.
This completes the scenario mentiond by you..
I Hope it helps you.
Good day!
Regards,
Shashikanth. D -
How to trigger workflow from abap program
Hi Experts,
i have a user developed screen in which there is an option to approve (not a std tcode)
for which there is no event created.
i am very new to workflow ,
now how to create an event and also how to trigger the workflowHi,
You can run a ABAP report or call a transaction from the BOR's Method directly.
Check this link for more info.
http://help.sap.com/saphelp_nw2004s/helpdata/en/80/9a3cb3971c11d194c60000e82dec10/frameset.htm.
In order to trigger an event programmatically, we would use the function module SWE_EVENT_CREATE.
BUS1001006 ( Standard Material )
here is the sample code.
DATA: key LIKE sweinstcou-objkey.
key = '68." Material Number (hard-coded)
CALL FUNCTION 'SWE_EVENT_CREATE'
EXPORTING
objtype = 'BUS1001006'
objkey = key
event = 'CREATED'
CREATOR = ' '
TAKE_WORKITEM_REQUESTER = ' '
START_WITH_DELAY = ' '
START_RECFB_SYNCHRON = ' '
NO_COMMIT_FOR_QUEUE = ' '
DEBUG_FLAG = ' '
NO_LOGGING = ' '
IDENT =
IMPORTING
EVENT_ID =
TABLES
EVENT_CONTAINER =
EXCEPTIONS
OBJTYPE_NOT_FOUND = 1
OTHERS = 2
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ELSE.
WRITE 'Event Triggered'.
ENDIF.
COMMIT WORK.
In order to test whether the event is getting triggered or not, we can make use of Event Trace. Switch on the event trace using the transaction SWELS.
Press Switch On.
Now execute the program developed earlier. Now switch-off the event trace using the same transaction SWELS.
Now go to transaction SWEL. Here you can list out the events triggered in the particular period of time. Here is the event-trace list:
Regards -
Attachments from Workflow to ABAP Webdynpro launched from UWL
Hi All,
You might have seen a recent post from me for sending attachments from ABAP Webdynpro to Workflow.
I could do that by just calling SAP_WAPI_ATTACHMENT_ADD. I didnt have to create an instance of the SOFM object
by passing the ATT_ID from this function module.
Now the next task of the workflow which is sent to UWL, automatically carries the attachements in the Workitem.
I didnt do binding from workflow container to Task container. (I dont know how!!)
But I need to get those attachments on my ABAP Webdynpro after it is launched from UWL.
For this I am using SAP_WAPI_GET_ATTACHEMENTS. But this FM is giving me the BOR reference.
How do use this to get the attachments displayed on my Webdynpro as links?
Thanks
DebHi Debabra,
I have similar requirement where I want to add new attachment from Webdynpro abap to workflow and again next level want to view it in UWL in another Webdynpro abap from workflow.
I am trying to attach the document from Webdynpro to Workflow I used FM SAP_WAPI_ATTACHMENT_ADD and looks like it attached in workflow.
Can you please tell how the second part was solved where I want to attach document from workflow to Webdynpro abap
Thanks,
ST -
How to trigger MDM Workflow from ABAP Program.
HI
I have requriment to trigger MDM Workflow(Design in MDM) from My Module pool program. Suggest how to do it?
Thanks in Advance.
Regards,
Shyam Babu Sah.Hi,
This question is for forum SAP Netweaver --> Workflow. There are functions and programmes that SAP delivers for this.
[Example here|Re: How can I trigger workflow from my report] -
Trigger workflow from adobe form
Hi.. can anyone outline me with the basic steps required to trigger workflow from abobe. Java Wd and ECC 5.0. Thanks!
Hi Pankaj,
have a look at the ISR Cook book and Developing PCR (Personal Change Requests) <a href="https://websmp202.sap-ag.de/mss">Manager Self Service</a> You will gwet more links if you do a quick search or just go to sdn.sap.com/interactive forms
<a href="https://forums.sdn.sap.com/click.jspa?searchID=2077779&messageID=2451183">https://forums.sdn.sap.com/click.jspa?searchID=2077779&messageID=2451183</a>
Do update, if you find any more issues
Thanks and Regards,
Anto -
SOFM: Dsiplay method is not working when called from ABAP Webdynpro
Hi All,
I want to open an attachment from ABAP Webdynpro.
I have approached in this fashion:
1) Get the attachments as SOFM object key
2) On Click of a link on Webdynpro, I am calling a function module within which I am creating an instance of the SOFM object
3) Then I am calling the DISPLAY method
It is not opening.
But, if it opens when I driectly execute the function module. It open when I directly test the business object.
Any Idea ?
Thanks & Regards,
DebDisplay Method uses the Dialogue Module, You should not access such methods in web dynpro which are SAPGUI specific.
Web Dynpro Applications are run in Browser environment which cannot understand Dialog, it can understand only HTML.
Read the attachments and get the content and use FileDownload UI element to show it to user.
Abhi -
PR05 Transaction Iview from Abap Webdynpro
Hi,
From abap webdynpro, on action of one button, i'm calling PR05(Travel Expense Manager) screen by passing the parameters as follows and calling NAVIGATION_ABSOLUTE method:
BUS_PARAMETER-KEY = 'PTP00-PERNR'.
BUS_PARAMETER-VALUE = LS_EMPLOYEE_NODE-PERNR.
Insert BUS_PARAMETER into table BUS_PARAMETER_LIST.
CLEAR BUS_PARAMETER.
BUS_PARAMETER-KEY = 'PTP1000-REINR'.
BUS_PARAMETER-VALUE = LS_HEADER_NODE-REINR.
Insert BUS_PARAMETER into table BUS_PARAMETER_LIST.
It opens PR05 screen, with the correct employee list, but it does not populate the tripnumber and also it should skip the first screen.
In the IView, i have already given OKCODE='MOD' for change of the trip and also PROCESS_FIRST_SCREEN=YES.
In the business parameter i try to add for selecting the particular line in the table control of the PR05 screen, but that doesn't work.
BUS_PARAMETER-KEY = 'PTP1000-MARKER(01)'.
BUS_PARAMETER-VALUE = 'X'.
Insert BUS_PARAMETER into table BUS_PARAMETER_LIST.
CLEAR BUS_PARAMETER.
BUS_PARAMETER-KEY = 'TRIPCHANGEINTERACTIV'.
BUS_PARAMETER-VALUE = 'X'.
Insert BUS_PARAMETER into table BUS_PARAMETER_LIST.
So any inputs on how to auto select the line based on the trip number and go directly to particular change trip.Hi Alex,
is there no possibility to open the transaction by calling a link? For example like this way:
host, port, system, mandant, user, password, tcode (e.g.: 192.168.100.2:6000:xi?mand=300&user=xyz&passwd=xxx&tcode=se16).
Do anybody other know if there is a possibility doing like this?
Greetings, Alexander -
Call workflow from ABAP program
created a zbusiness object (ZPRODH)with
one key field product hierarchy,
one attribute level number and
one method display.
I tested that zobject and using this object created workflow to display product hierarchy ,it is displaying it. now I have to call it from one abap program.
In the abap program I am calling the funcion module, I
CALL FUNCTION 'SWW_WI_START_SIMPLE'
EXPORTING
TASK = TASK
IMPORTING
WI_ID = WI_ID
TABLES
AGENTS = AGENTS
WI_CONTAINER = WI_CONTAINER.
It is calling the workflow and subrc is 0, but not passing the value to the workflow. Because of that the method is not working, any idea?
Thanks in advancettpa,
Please check this thread:
Re: Workflow from abap program
Also check that your Fm do requires any explicit commit or not?
Hope it will help u
Cheers
Jai -
Convert smartform as PDF from ABAP Webdynpro
Hi,
I want to convert smartform as pdf from ABAP webdynpro.
Flow: SmartForm-->Generating Function Module -->Getting Output Data --> Converting OTF to PDF --> Open/Save PDF file in ABAP webdynpro.
What are the sequence of function modules to be used for this?
OR
Is there any other way to convert smartform as pdf from ABAP webdynpro?
plz give me the flow and FM'details clearly in detail.Look here https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/f0de1eb8-0b98-2910-7996-8a3c2fcf6785
Cheers
Graham Robbo -
Calling Javascript from ABAP webdynpro application
Hai All,
I want to call a Javascript from ABAP-Webdynpro application. If anyone has done this. Please let me know.
Thanks & Regards,
H.K.Hayath Basha.go to window
create suspend outbound plug and resume inbound type
when create an outbound plug of Suspend type a parameter Url is automatically created,
fire the outbuond plug with the Url to a BSP page where you have JavaScript.
and fromt he BSP navigate back to WDA again which you can do using by reading the url parameter sap-wd-resumeurl, which contains the WDA URL
Abhi -
Convert smartform to pdf from ABAP webdynpro
Hi,
I want to convert smartform to pdf from ABAP webdynpro and
I want to display pdf in ABAP wedynpro view or portal iview.
what are the steps needs to be followed?
what are the classes and interfaces needs to be used?Hi,
Please check this it might be useful.
Data: tab_otf_data type ssfcrescl,
wa_out_opt type ssfcompop,
wa_con_params type ssfctrlop.
wa_rspoid type rspoid,
parameter:p_file like rlgrap-filename no-display.
Follow control parameters
wa_out_opt-tdimmed = 'X'.
wa_out_opt-tdnewid = 'X'
wa_con_params-no_dialog = 'X '.
if you want print direct pass
wa_out_opt-tddest = 'printer' (SAP Printer)
If you are using multiple header records use loop other wise no need
note that when multple headers
pass count and count > 1 means more than one header change control parameters to create single spool for all.
Loop itabXXXX. " multiple header starts
count = count + 1.
if count > 1.
wa_con_params-no_open = ' '.
wa_out_opt-tdnewid = ' '.
endif. " multiple header ends
call function fm_name
exporting
control_parameters = wa_con_params
output_options = wa_out_opt
header_header = wa_ven
importing
job_output_info = tab_otf_data
tables
header_details = itab_final
exceptions
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
others = 5.
at last. " multiple header starts
wa_con_params-no_close = ' '.
wa_con_params-no_dialog = 'X'.
endat. " multiple header ends
endloop.
you will get the otf data and spool id from 'tab_otf_data'
read table tab_otf_data-spoolids index 1 into wa_rspoid. " Now you get spool no in wa_rspoid.
" pass spool in to rstxpdft4 it converts to pdf".
submit rstxpdft4
with spoolno = wa_rspoid
with p_file = p_file
and return.
I feel that your problem will solve....
Thanks,
Hari
Maybe you are looking for
-
My Windows 7 laptop crashed. New laptop is Windows 8.1. I have the hard drive from the old laptop. Where can I find my old emails and address books and where do I copy them in Windows 8 ?
-
QI06 - No suitable material/vendor combinations exist
Hello Craig, Could you please provide more details regarding this part: "is required by the control key"? Which setting in QM Control key means Quality Info Record is mandatory? I know that for 0000 it is not working, for 0001 it is - but what exactl
-
Hi All, I am getting following error in my interfance; Message: ODI-1228: Task FEED_NL_STEP_UPDATE_DATA_TO_XML_WS (Integration) fails on the target XML connection XML_DS_NL_LISTOFACTIVITY. Caused By: java.sql.SQLException: ORA-00942: table or view do
-
Need an high quality voice recording app that does mp3s.
I need an app for my ipad (can be iphone only app as well) that will, best case scenario, record AIFF allow you to edit and then convert edited file to mp3 and finally allow e-mailing the file. If it only records mp3 and allows editing and subsequent
-
HT4972 How do I update my iphone 3G firmware 4.2.1 to 4.3.5?
I can't get some apps on my 3GS iphone because it has the IOS 4.2.1 and the apps need the 4.3.5 I can I update this iphone? Please help!!