For Transporting the SE63 translation maintained for smart forms, sap script or workflow.
Go to SE38 and execute the program RS_LXE_RECORD_TORDER.
On a selection screen Enter the target language, Short Description for the transport request, object type as SSF.
ABAP,ABAP report,Interactive Report,ALV grid,ALV list,IDOC,User Exit,RFC,Smartform,sapscript,ABAP Performance,Remote Function Module( RFC ),Function Module,Modularization techniques,ABAP tools,ALV report Generator,ABAP Interview Questions,BDC,BAPI,ALE,BADI, EDI,InternalTable,DataStructure,LSMW,Domain,DataElement,Basis and Administration ,ABAP HR development,ABAP Debugger,BW,ExceptionHandling,Download FI, CO, MM, PP, SD, PM, PS, QM, SM, HR, BW, APO,ABAP Tutorial
Search on this Website
Saturday, June 23, 2012
How to transport SE63 translation for smartforms ,script and workflow
Sunday, February 15, 2009
Workflow Step3 : Create a method.
Related Link : Step 1 : http://www.abapcode.info/2008/12/work-flow-for-beginners-step1.html Step 2 : WorkFlow Step2 : Create a business object Step 3 : Workflow Step 3 : Create an event.
A method can be synchronous or asynchronous. Synchronous Method
Method that, for the duration of its execution, assumes the process control and, after its execution, reports to the calling component (work item manager, in this case).
Synchronous methods can return the following data, if defined: Return parameters, one result and Exceptions.
Terminating events can also be defined for a single-step task described with a synchronous method. At runtime, the relevant work item is then terminated either when the synchronous method is successfully executed or when one of the defined terminating events occurs.
Asynchronous Method
Method that, after its execution, does not report directly to the calling component (work item manager, in this case).
Asynchronous object methods do not return results, parameters or exceptions.
At least one terminating event must be defined for a single-step task described with an asynchronous object method.
At runtime, the relevant work item is only terminated if one of the defined terminating events occurs.
Next set the status of this object type component to implemented. The methods are not implemented unless you once open their program. Select the method and open its program. It gives a message “Do you want to generate a template automatically for the missing section”. Click “Yes”. Inside the program insert the code “CALL TRANSACTION ‘FB03’. Display Financial Document.
Method: Z_METHODXX
Name: Method name: XX
Description: Method Description: XX
Edit à Change Release Status à Object Type Component à Implemented
Sunday, February 8, 2009
Workflow Step 3 : Create an event.
Event: Z_EVENT_XX
Name: Event name: XX
Description: Event Description: XX
Click on the new event and…
Edit à Change Release Status à Object Type Component à Implemented
(A small box sign vanishes from the right side of the event, indicating that it is implemented)
There can be multiple triggering events for a standard/customer task.
In R/3 4.0 the release strategy for new Object Types and Object Type Components (methods, attributes, events, etc.) was enhanced. Now when an object type and/or components are created, there are different statuses to select, based on its required purpose. The statuses are:
· Modeled - objects cannot be accessed at runtime. This is the status that is automatically set when an object type or component is created. Items with a modeled status cannot be referenced in any type of workflow task.
· Implemented - objects can be used internally in a test environment. They are accessible, but may not be stable (especially if no delegation has been defined).
· Released - objects are ready for production. Note: Local objects cannot be released.
· Obsolete - objects are typically replaced by new functionality or incompatible with previous versions. This status is optional.
Sunday, February 1, 2009
WorkFlow Step2 : Create a business object
Enter the following fields with values:
Object type: Z_TESTXX
This is the internal technical key. Page: 1
Object type can have maximum 10 characters. This must be unique across all object type. Objects are specific instances of object types at runtime.
Object name: Object_Name_for_XX
The object type is addressed with this name by external applications. This is a descriptive English name and can be up to 32 characters. This also must be unique across all object type.
Name: Object Name: XX
This is a meaningful name of the business object.
Description: Object Description: XX
Page: 1
Object description, can be up to 40 characters.
Program: Z_TESTXX
Each object type has an ABAP/4 program in which methods of the object are implemented. This program is generated automatically when you create or revise an object type.
Application: *
Page: 1
* indicates cross application.
Should you need to extend the components of an SAP delivered object, you can create a subtype and then “delegate” it back up to its supertype. This means that the supertype transparently acquires the new functionality. If this supertype is referenced by any SAP or custom application, the new functionality is available. Any supertype may have at most one delegation assigned to it. Delegations are client independent. Use the menu path Settings >System-wide to create a delegation.
Read More :
Step 1 : http://www.abapcode.info/2008/12/work-flow-for-beginners-step1.html
Saturday, December 20, 2008
Work Flow For Beginners-Step1
1:Find a standard business object - which relates to the desired master data.
Transaction SWLD
Definition Tools àSAP Business WorkflowàDevelopmentàDefinition ToolsàBusiness Object Builder (Transaction Code SW01)
Click on the Business Object Builder. The initial screen appears as follows. 
Either search for an object by name in short description. Or use the IMG structure, which is accessed via the Business Object Repository button.
Position mouse cursor in the field Object/interface type and hit F4àIn the pop up window click Information SystemàSearch the business object created earlier or SAP standard business object. àSelect it and click display
Select all object types and the following screen appears. Here the businisess object BUS2054 has been explored, which is under Project Systems. 

A business object has following components as shown in the figure:

A screen showing the components of the object is dispalyed as the following figure:

To be Continueed...................
Click Here to Read More !!!!Monday, December 15, 2008
Macros used in Workflow Programming
The include file
INCLUDE
Declaring Container
SWC_CONTAINER
SWC_CREATE_CONTAINER
Writing value into container
SWC_SET_ELEMENT
SWC_SET_TABLE
Reading value from container
SWC_GET_ELEMENT
SWC_GET_TABLE
Creating a variable for the object reference
DATATYPE SWC_OBJECT.
Create the object reference.
SWC_CREATE_OBJECT .
To get Object Key and Object Type
SWC_GET_OBJECT_KEY .
SWC_GET_OBJECT_TYPE .
To execute Mehtod of Object
SWC_CALL_METHOD .
SWC_GET_TABLE_PROPERTY .
SWC_GET_PROPERTY SELF
Raising Exceptions
EXIT_RETRUN
EXIT_OBJECT_NOT_FOUND
Setting Result Parameter of Synchronous method
SWC_SET_ELEMENT
Important Function Module of Workflow
Function Modules Description
SWU_START_WORKFLOW To start Workflow
SWE_EVENT_CREATE To create Event
SWW_WI_DISABLE For locking of work items against execution
SWW_WI_ENABLE For enabling of work items against execution
SWW_WI_CONTAINER_READ To read the container elements of a particular work item
SWW_WI_DEADLINES_CHANGE To change the attributes of the deadline monitoring for a particular work item
SAP_WAPI_EXECUTE_WORKITEM To execute workitem of another user
Other Useul Link :
Important Transaction in Workflow
Workflow Benefits for the company
Introduction to SAP Workflow
Workflow ?
Org units in workflow steps?
Workflow performance tips
Click Here to Read More !!!!
Important Transaction in Workflow
SWDD Workfow Builder
PFAC Maintain Standard Role
PFTC Maintain Tasks
PFOM Create Organizational Assignments
PPOME Organization and Staffing Change
PPWFBUF Refresh client buffer
SWB_COND Workflow start conditions
SWEC Events for change document overview
SWEL Display Event Trace
SWELS Switch Event Trace on/off
SWES Consistancy Check for Event Linkage
SWETYPV Event Type Linkage
SWI1 Selection Report for Work Items
SWI11 Where used list for Tasks
SWI13 Authorization to Execute and Start Tasks
SWI14 Display workflow from object type
SWI2_DIAG Diagnosis of work item with errors
SWI2_FREQ Work items per task
SWI5 Workload analysis (by org unit)
SWI6 Workflows for object
SWIA Execute work items without agent check
SWL1 Dynamic columns for business workplace
SWPR Workflow restart after error
SWU0 Event simulation
SWU10 Workflow Trace Delete
SWU3 Verify workflow customizing (traffic light summary)
SWU8 Workflow Trace On/Off
SWU9 Workflow Trace Display
SWUD Workflow diagnostic tool
SWUE Event creation
SWUF Administration of workflow run time systems (delete work items, error monitoring)
SWUI Start Workflow (Split Screen)
SWUS Start Workflow (Test Environment)
SWWL Delete Work Item
Click Here to Read More !!!!
Monday, July 16, 2007
Workflow Benefits for the company
Increase production
Clearing backlog
Distribution of information and work
Every user gets his work list automatically from the system
Accelerating the processes
You will get cash discount more often
Better/quicker reaction to errors
Customers are more satisfied
Processes are more quickly finished
Better return on information
Workflow is Not ..!!!!
(1)Simply document administration and imaging; although Workflow uses both
(2)Standard E-mail and groupware – although Workflow uses these
(3)Data distribution across multiple systems: EDI / ALE is used for this purpose
(4)Screen sequence management within a transaction .
(5)Management of temporary data, management of “one time” processes
(6)Repetitive work of a single type, e. g. goods movements.
A tool to fill functionality gaps!
Advantages of Using Workflow
Transparent business processes
(i)For modeling and defining
(ii)Rules, templates
(iii)Organizational principles
At runtime
(i)Current status
(ii)of a certain business object
(iii)the entire process
Afterwards
(i)Weak point analysis
(ii)Optimization and adaptation
(iii)Deadline monitoring (max. processing time)
(iv)Automatic notification
Task assignment according to responsibility
(i)Along the organizational structure
(ii)Job description, requirements profile
(iii)Inheritance hierarchy
(iv)Dynamically
(v)Organizational principles
(vi)Attributes of business objects
(vii)Task assignment according to responsibility
To be Continued...
ALso Downlaod Workflow Tutorial PDF
Click Here to Read More !!!!
Thursday, July 12, 2007
Introduction to SAP Workflow
Problems of Office & administration process
Long lead times due to high transport and wait times
Lack of transparency of processes connected to high work distribution
Historically grown task assignments
Inefficient communications between process participants
Data entered more than once
Goal
Reorganize your business process
Goals of reorganizing Business
Process
(i)Increase transparency of procedures used
(ii)Increase employees responsibility
(iii)Focus on the interest of the customer
(iv)Better quality management
Why SAP Business Workflow?
(i)Is tailored to customer needs and developments
(ii)Is a tool for the automization of business processes
(iii)Is not tied to any particular application
(iv)Operates uniformly across applications
(v)Coordinates all participating tasks
(vi)Provides users with active support
Why SAP Business Workflow?
(1)You can use the SAP Business Workflow system to support your enterprise processes in R/3
(2)The SAP Business Workflow system is able to combine steps from different applications into one process
(3)The SAP Business Workflow system supplies the end user with all the information required for the next step.
Why SAP Business Workflow?
SAP Business Workflow is a cross-application tool that makes it possible to integrate business tasks across departments, applications and system boundaries.
It is a tool that automates business processes in a flexible and transparent way and maps the individual tasks to the users so that a push technology informs and helps the users through the process. Steps which do not require user intervention are carried out automatically, along with business logic and escalation procedures.
SAP Business Workflow
Designed to handle all process dimensions
The Process (Business)
Business Workflow Features
Workflow provides a number of tools for defining and analyzing workflows as well as for monitoring operation. They are:
(1)Workflow Builder
(2)Business Object Builder
(3)Business Workplace
(4)System Admin Tools
Workflow Builder
It is for displaying and making changes to workflows. We can make
Small extensions directly to the original workflows supplied by SAP,
such as carrying out your own agent assignments or changing
deadline monitoring.
Business Object Builder
Business Objects are used to make the functions of the R/3 Systems available to a workflow, this objects can be defined and analyze here. These business objects are made available to the workflow in reusable tasks, thus introducing object Orientation
Business Workplace
This is the area where the end user receives information about the
activities they are to carry out. This provides them with a central
overview of all the activities that they are authorized to carry out.
They can commence the activities from here.
What can a Workflow Management System Do?
A Workflow Management System facilitates the electronic processing of structured processes which
(1)Include a range of activities,
(2)Always occur in a similar or identical form,
(3)involve several people or departments and
(4)require a high degree of coordination
(5)workflow Management Systems control processes
(6)according to a predefined model and are especially
(7)suited to structured organizations
Workflow Benefits for the End User
(1)Faster, simpler access to information
(2)Less effort for administrative tasks
(3)Easier learning and understanding of processes
Workflow Benefits for Management
Better control
(1)of information
(2)of deadlines
(3)of service levels
(4)Ofprocessingcosts
Flexible change
(1)of processes
(2)of organizational structure
(3)of underlying technology
To be Continued..........
Also Download Workflow Tutorial( pDF)
Click Here to Read More !!!!
Sunday, June 17, 2007
Workflow
A routing tool in SAP that forwards documents for review or approval.
For example, a requisition that needs to be approved is sent to the appropriate approver's inbox. Workflow is also used to route journal vouchers, credit card charges, and other documents in SAP.
Click Here to Read More !!!!
Wednesday, June 13, 2007
Org units in workflow steps?
Why should I not assign org units to steps in the workflow builder?
Using org objects such as positions or org units in the WF builder is not a good idea in most cases. Aside from number range mismatches when you transport, if your department splits or changes you need a transport for what should be a simple
maintenance task.There are a few ways around it. The simplest is to not assign any agents in the WF but to assign your recipients as possible agents of the task (which you can assign in each system, including PRD). If WF cannot determine actual (because you've left it blank), it will send the task to all possibles. Just be very careful not to declare them as general tasks because it will then go to ALL people in the system.Alternatively create a simple responsibility rule with a dummy responsibility and use that in your WF. If you're feeling adventurous you could even design a 'meta-rule' with multiple responsibilities for different tasks/steps. This way you can maintain multiple steps' agents in one rule.
Workflow : Other Useful Links :
'No Administrator found' workflow error
LIV & Payment Release workflow
Workflow performance tips
Viewing another user's workflow inbox
How can I temporarily disable a workflow in production?
Raising ABAP OO events for workflow
Click Here to Read More !!!!
'No Administrator found' workflow error
Help! Why am I getting the error 'No Administrator found'?
This is another symptom of the org buffers being out of sync. Basically you have made an organizational change that is incompatible with the previous state. When executing the work item it gets confused with the old (buffered) and new org data. As above, SWU_OBUF should reset all buffers.
Workflow : Other Useful Links :
Org units in workflow steps?
LIV & Payment Release workflow
Workflow performance tips
Viewing another user's workflow inbox
How can I temporarily disable a workflow in production?
Raising ABAP OO events for workflow
Click Here to Read More !!!!
LIV & Payment Release workflow
We have started using LIV, why does the "Payment Release" workflow not start anymore?
The integration between LIV and FI does not include the payment release function. There is a separate and much better solution for blocking and releasing payments in Logistics Invoice Verification. Take a look at the customizing.
Note: You should remove some FI authorizations to prevent people from removing the LIV payment block in FI directly.
Workflow : Other Useful Links :
Org units in workflow steps?
'No Administrator found' workflow error
Workflow performance tips
Viewing another user's workflow inbox
How can I temporarily disable a workflow in production?
Raising ABAP OO events for workflow
Click Here to Read More !!!!
Workflow performance tips
Regulating/distributing the workflow load
Bottlenecks can occur in the system if resources are not optimally distributed between workflow execution and dialog users or other RFC steps.
This note describes ways of regulating the load that results from the workflow, or limiting it to certain servers.
Workflows are usually started by "triggering events". A tRFC does this in the background. All subsequent corresponding background steps trigger an additional RFC. This means that an RFC is not run for each background step. Dialog steps and asynchronous background steps interrupt the merger of these steps into a single RFC.
A large number of tRFCs will therefore be triggered if you have workflows in your system with lots of background steps that are frequently interrupted by dialog steps or asynchronous background steps.
In high-workflow systems such as IS-U, problems can also occur if a lot of synchronous steps are run in the background.
By default, the tRFCs are executed on the server on which they were started. If the dialog user starts the workflow, it is executed on the same server as the user, up to the first dialog step.
You can choose one of the following three options to influence the load that results from the workflow processing in the system.
1. Using the SMQS QOut Schedule
The recommended and simplest way to regulate the load that is executed by a workflow on a system is to register the workflow RFC destination WORKFLOW_LOCAL_
Here, under "Max. Conn.", you can determine the maximum number of dialog work processes that the workflow can use. You can also define an RFC server group under "Host ID". If you are using more than one server, it can be a good idea to use certain servers exclusively for RFC. Use Transaction RZ12 to create an RFC server group that contains only the servers for the RFC processing, and save it in the SMQS qOut Scheduler. Adjust the settings in RZ12 so that a large number of dialog work processes can be used for RFC, since no normal dialog users work on these servers. Note that this setting applies to all registered RFC destinations. Therefore, if you have registered several destinations, these will now only be carried out on these servers.
However, if the runtimes of the RFCs are very different, this setting may mean that the RFCs are not processed quickly enough even though there are enough resources available.
In the QOut Scheduler, the status is set to WAITING for the destination WORKFLOW_LOCAL_
Example: If "Max. Conn." is set to 50, and there are sufficient resources, 50 tRFCs are taken from the tRFC Queue and processed in parallel.
If 49 tRFCs are processed in 500 milliseconds, and one tRFC lasts for 2 minutes, the queue is blocked for 2 seconds before the system can process a new package.
During the period, a maximum of one work process is in use, and the qOut Scheduler has the status 'Waiting'. If this scenario occurs, find out why the runtime of the tRFC is so high.
In releases prior to 6.20, the tRFCs may be processed under another user . Also refer to Note 716263.
2. Using an R/3 connection instead of Logical Destination
You have several entries in the SMQS, or the problem described under Point 1 above has occurred, and you want to run the workflow on one or more dedicated servers rather than registering the Workflow RFC Destination.
By default, the type L workflow RFC destination is the logical destination. You can delete this destination in Transaction SM59 and create a new destination with the same name, but with a type 3 R/3 connection. Here, you can determine one or more servers for workflow processing by means of a log-on group. Define the workflow background user WF batch as the user. If you do not know the password, you can change it in Transaction SU01. Note that this can cause problems if you use the workflow background user somewhere else as well. Change the password there too.
If you are not using one specific server, but instead are using Load Balancing through a log-on group, set the flag "ext. RFC enabled" in the attributes of the defined logon group using Transaction SMLG (double click on the logon group Attributes). The RFCs are then distributed to the individual servers in the round robin procedure. This function is only available as of Release 6.20 or higher. Only the active server of the logon group is used in releases prior to 6.20. The system responds as if there were only one server. See also Note 593058.
Note that these settings can cause problems if you have a very high load. Set the Gateway parameter as described in Note 384971. Extreme loads can cause the gateway to overflow and the RFCs to terminate. If this happens, make sure you have sufficient resources (memory, dialog work processes, CPU) to process the load.
3. Start certain workflows on certain servers
You can execute each workflow on a specific server. To do this, you must first find out which workflows run on your system. If the workflows are triggered by events, there is a corresponding event entry for the workflow in Transaction SWE2, which displays the link between the above "triggered event" and the workflow model. In this transaction you can define an RFC Destination for each linkage. In SM59, you then create type 3 RFC Destinations that point to individual servers or, by means of Load Balancing, to several servers (set the flag "ext. RFC enabled" in Transaction SMLG). You should use WF-batch as a user. Also see the comments in section 2. Define these new destinations in Transaction SWE2.
If the event is now triggered, the workflow is started on the server that is defined in the destination. All further background steps that are part of this workflow will continue to be executed by means of workflow RFC destination WORKFLOW_LOCAL_
Workflow : Other Useful Links :
Org units in workflow steps?
'No Administrator found' workflow error
LIV & Payment Release workflow
Viewing another user's workflow inbox
How can I temporarily disable a workflow in production?
Raising ABAP OO events for workflow
Viewing another user's workflow inbox
This is a great tool for a workflow administrator. It is a report that allows you to view what's in another user's inbox. It's displayed in an ALV grid format and clicking the workitem ID takes you to the applicable workflow log.
REPORT zwf_view_inbox
MESSAGE-ID b1
NO STANDARD PAGE HEADING
LINE-SIZE 170.
************************************************************************
* Program Name : ZWF_VIEW_INBOX
* Author : H Bauer
***********************************************************************
************************************************************************
* I n c l u d e s *
************************************************************************
TYPE-POOLS: slis.
************************************************************************
* I n t e r n a l T a b l e s *
************************************************************************
DATA BEGIN OF itab_wl OCCURS 0.
INCLUDE STRUCTURE swr_wihdr.
DATA:END OF itab_wl.
DATA: BEGIN OF gt_outtab OCCURS 0.
INCLUDE STRUCTURE itab_wl.
DATA: END OF gt_outtab.
DATA: fld_catalog TYPE slis_t_fieldcat_alv, " lvc_t_fcat,
wa_fld_catalog LIKE LINE OF fld_catalog.
DATA: gs_layout TYPE slis_layout_alv,
gt_sort TYPE slis_t_sortinfo_alv,
gs_sort TYPE slis_sortinfo_alv,
g_exit_caused_by_caller,
gs_exit_caused_by_user TYPE slis_exit_by_user,
g_repid LIKE sy-repid.
DATA: gs_print TYPE slis_print_alv.
DATA: gt_events TYPE slis_t_event,
gt_list_top_of_page TYPE slis_t_listheader,
g_status_set TYPE slis_formname VALUE 'PF_STATUS_SET',
g_user_command TYPE slis_formname VALUE 'USER_COMMAND',
g_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE',
g_top_of_list TYPE slis_formname VALUE 'TOP_OF_LIST',
g_end_of_list TYPE slis_formname VALUE 'END_OF_LIST'.
DATA: gs_variant LIKE disvariant,
g_save,
gv_dbcnt TYPE p,
w_callback_ucomm TYPE slis_formname.
DATA: gv_save_tabix LIKE sy-tabix.
************************************************************************
* P a r a m e t e r s & S e l e c t O p t i o n *
************************************************************************
SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME TITLE text-005.
PARAMETERS: pv_uname LIKE sy-uname.
SELECTION-SCREEN: END OF BLOCK block1.
SELECTION-SCREEN: BEGIN OF BLOCK block3 WITH FRAME TITLE text-010.
SELECTION-SCREEN SKIP.
SELECTION-SCREEN COMMENT /1(79) text-201.
SELECTION-SCREEN: END OF BLOCK block3.
************************************************************************
* A t S e l e c t i o n S c r e e n *
************************************************************************
AT SELECTION-SCREEN.
IF pv_uname IS INITIAL.
MESSAGE e999(b1) WITH 'Please enter SAP Logon ID'.
ENDIF.
************************************************************************
* S t a r t o f S e l e c t i o n *
************************************************************************
START-OF-SELECTION.
g_repid = sy-repid.
PERFORM s100_layout_init USING gs_layout.
PERFORM s120_update_field_catalog.
PERFORM s140_eventtab_build USING gt_events[].
gs_variant-report = g_repid.
g_save = 'A'.
PERFORM s200_get_wf_data.
************************************************************************
* E n d o f S e l e c t i o n *
************************************************************************
END-OF-SELECTION.
PERFORM s150_comment_build USING gt_list_top_of_page[].
w_callback_ucomm = 'CALLBACK_UCOMM'.
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
i_callback_program = g_repid
i_callback_user_command = w_callback_ucomm
is_layout = gs_layout
it_fieldcat = fld_catalog
it_sort = gt_sort
i_save = g_save
is_variant = gs_variant
it_events = gt_events[]
is_print = gs_print
IMPORTING
e_exit_caused_by_caller = g_exit_caused_by_caller
es_exit_caused_by_user = gs_exit_caused_by_user
TABLES
t_outtab = itab_wl
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc = 0.
IF g_exit_caused_by_caller = 'X'.
ELSE.
IF gs_exit_caused_by_user-back = 'X'. "F3
ELSE.
IF gs_exit_caused_by_user-exit = 'X'. "F15
ELSE.
IF gs_exit_caused_by_user-cancel = 'X'. "F12
ELSE.
ENDIF.
ENDIF.
ENDIF.
ENDIF.
ELSE.
ENDIF.
************************************************************************
* F o r m s *
***********************************************************************
*&---------------------------------------------------------------------*
*& Form LAYOUT_INIT
*&---------------------------------------------------------------------*
FORM s100_layout_init USING rs_layout TYPE slis_layout_alv.
*"Build layout for list display
rs_layout-detail_popup = 'X'.
rs_layout-zebra = "X".
rs_layout-cell_merge = 'X'.
rs_layout-colwidth_optimize = 'X'.
rs_layout-no_min_linesize = space. "'X'.
rs_layout-min_linesize = 120.
rs_layout-totals_text = 'Grand total'.
rs_layout-subtotals_text = 'Sub-total'.
*
gs_print-print = space.
gs_print-prnt_title = 'X'.
gs_print-prnt_info = ' '.
gs_print-no_print_selinfos = 'X '. " display no selection infos
gs_print-no_coverpage(1) = space..
gs_print-no_print_listinfos = 'X'. " display no listinfos
ENDFORM. " LAYOUT_INIT
*---------------------------------------------------------------------*
* FORM UPDATE_FIELD_CATALOG *
*---------------------------------------------------------------------*
* ........ *
*---------------------------------------------------------------------*
FORM s120_update_field_catalog.
wa_fld_catalog-col_pos = 10.
wa_fld_catalog-fieldname = 'WI_ID'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'Workflow ID'.
wa_fld_catalog-hotspot = 'X'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
wa_fld_catalog-col_pos = wa_fld_catalog-col_pos + 10.
wa_fld_catalog-fieldname = 'WI_TEXT'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'Description'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
wa_fld_catalog-col_pos = wa_fld_catalog-col_pos + 10.
wa_fld_catalog-fieldname = 'WI_CD'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'Create Date'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
wa_fld_catalog-col_pos = wa_fld_catalog-col_pos + 10.
wa_fld_catalog-fieldname = 'WI_CT'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'Create Time'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
wa_fld_catalog-col_pos = wa_fld_catalog-col_pos + 10.
wa_fld_catalog-fieldname = 'WI_AAGENT'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'Agent'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
wa_fld_catalog-col_pos = wa_fld_catalog-col_pos + 10.
wa_fld_catalog-fieldname = 'WI_RH_TASK'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'Task'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
wa_fld_catalog-col_pos = wa_fld_catalog-col_pos + 10.
wa_fld_catalog-fieldname = 'WI_FORW_BY'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'From'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
wa_fld_catalog-col_pos = wa_fld_catalog-col_pos + 10.
wa_fld_catalog-fieldname = 'WI_STAT'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'Status'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
wa_fld_catalog-col_pos = wa_fld_catalog-col_pos + 10.
wa_fld_catalog-fieldname = 'WI_AA_NAME'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'Agent Name'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
wa_fld_catalog-col_pos = wa_fld_catalog-col_pos + 10.
wa_fld_catalog-fieldname = 'DEF_GUID'.
wa_fld_catalog-tabname = 'ITAB_WL'.
wa_fld_catalog-seltext_l = 'WF Task/GUID'.
APPEND wa_fld_catalog TO fld_catalog.
CLEAR wa_fld_catalog.
ENDFORM. " UPDATE_FIELD_CATALOG
*&---------------------------------------------------------------------*
*& Form EVENTTAB_BUILD
*&---------------------------------------------------------------------*
FORM s140_eventtab_build USING rt_events TYPE slis_t_event.
DATA: ls_event TYPE slis_alv_event.
CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
EXPORTING
i_list_type = 0
IMPORTING
et_events = rt_events.
READ TABLE rt_events WITH KEY name = slis_ev_top_of_page
INTO ls_event.
IF sy-subrc = 0.
MOVE g_top_of_page TO ls_event-form.
APPEND ls_event TO rt_events.
ENDIF.
ENDFORM. " EVENTTAB_BUILD
*&---------------------------------------------------------------------*
*& Form COMMENT_BUILD
*&---------------------------------------------------------------------*
FORM s150_comment_build USING lt_top_of_page TYPE
slis_t_listheader.
DATA: ls_line TYPE slis_listheader,
ls_info TYPE slis_entry,
com1(4),
com2(4),
lv_jobd(20),
date1(10),
lv_date1(10),
lv_date2(10).
WRITE sy-datum TO date1.
CLEAR ls_line.
ls_line-typ = 'H'.
CONCATENATE 'ZW911' text-100 date1 INTO ls_line-info
SEPARATED BY ' - '.
APPEND ls_line TO lt_top_of_page.
ls_line-typ = 'S'.
CONCATENATE 'System:' sy-sysid '-' sy-mandt
INTO ls_line-info.
APPEND ls_line TO lt_top_of_page.
CONCATENATE 'Inbox for: ' pv_uname
INTO ls_line-info.
APPEND ls_line TO lt_top_of_page.
ENDFORM. " COMMENT_BUILD
*---------------------------------------------------------------------*
* FORM select_gr_data *
*---------------------------------------------------------------------*
* ........ *
*---------------------------------------------------------------------*
FORM s200_get_wf_data.
DATA: lv_return LIKE sy-subrc.
CALL FUNCTION 'SAP_WAPI_CREATE_WORKLIST'
EXPORTING
user = pv_uname
IMPORTING
return_code = lv_return
TABLES
worklist = itab_wl.
ENDFORM. "s200_get_header_data
*---------------------------------------------------------------------*
* FORM callback_ucomm *
*---------------------------------------------------------------------*
FORM callback_ucomm USING r_ucomm LIKE sy-ucomm
rs_selfield TYPE slis_selfield.
DATA: p_wid LIKE swr_struct-workitemid
.
CASE rs_selfield-fieldname.
WHEN 'WI_ID'.
MOVE rs_selfield-value TO p_wid.
CALL FUNCTION 'SAP_WAPI_DISPLAY_WORKITEM'
EXPORTING
workitem_id = p_wid.
ENDCASE.
*
ENDFORM. "callback_ucomm
*---------------------------------------------------------------------*
* FORM top_of_page *
*---------------------------------------------------------------------*
FORM top_of_page.
CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
EXPORTING
i_logo = 'ENJOYSAP_LOGO'
it_list_commentary = gt_list_top_of_page.
WRITE: AT 88 'Page:', sy-pagno.
ENDFORM. "top_of_page
Workflow : Other Useful Links :
Org units in workflow steps?
'No Administrator found' workflow error
LIV & Payment Release workflow
Workflow performance tips
How can I temporarily disable a workflow in production?
Raising ABAP OO events for workflow
Click Here to Read More !!!!
Raising ABAP OO events for workflow
1. Why use ABAP OO with Workflow?
2. Getting started with ABAP OO for Workflow ... using the IF_WORKFLOW interface
3. Using ABAP OO with Workflow Tasks
If you want to try the exercise in this blog in your own system, you will need an ABAP Class with the IF_WORKFLOW interface, and a system/client (SAPNetWeaver 6.20 minimum) with the workflow environment activated.
Workflow : Other Useful Links :
Org units in workflow steps?
'No Administrator found' workflow error
LIV & Payment Release workflow
Workflow performance tips
Viewing another user's workflow inbox
How can I temporarily disable a workflow in production?
Raising ABAP OO events for workflow
Click Here to Read More !!!!
How can I temporarily disable a workflow in production?
Event linkage is a transportable object, thus there is no way to simply 'switch off' a workflow. Simply switching off a Workflow may even have legal implications since Workflow provides an important audit function, and being able to disable it defeats that purpose. All is not lost however: If you have a workflow that requires this feature, you could include a start condition that always fails and only enable it when you want to disable the workflow.
We developed a Z transaction that updates SWETYPV. Let me know if you are interested in this tool and I'll post it here too.
Workflow : Other Useful Links :
Org units in workflow steps?
'No Administrator found' workflow error
LIV & Payment Release workflow
Workflow performance tips
Viewing another user's workflow inbox
Raising ABAP OO events for workflow
Click Here to Read More !!!!
How can I execute another user's work item?
As a user: The user who has the item in the inbox has to set up a substitute. The substitute can then process the other user's work items.
You have a choice of two different substitute rulings:
Active substitute ruling (for example, for absence due to vacations): In this case, the items belonging to the absent person are automatically assigned to the substitutes inbox (in addition to his own work items).
Passive substitution (for example, for absence due to illness): the substitute must explicitly assume the substitution and can only view the items of the absent person in this mode.
As an administrator: Transaction SWIA
Programatically: Function module SAP_WAPI_EXECUTE_WORKITEM
Workflow : Other Useful Links :
Org units in workflow steps?
'No Administrator found' workflow error
LIV & Payment Release workflow
Workflow performance tips
Viewing another user's workflow inbox
How can I temporarily disable a workflow in production?
Raising ABAP OO events for workflow
Click Here to Read More !!!!
