ABAP Work flow

Hi all,
what is ABAP Workflow??
How is program it for abap programming?
now i am doing first time in workflow..
send me workflow materials and details of workflow?
workflow program..
reply me soon,
thx,
s.suresh

hi,
Workflows
http://www.sap-img.com/workflow/sap-workflow.htm
http://www.sapgenie.com/workflow/index.htm
https://sapneth9.wdf.sap.corp/workflow
http://help.sap.com/saphelp_webas620/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
http://help.sap.com/saphelp_47x200/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
For examples on WorkFlow...check the below link..
http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
http://www.workflowing.com/id18.htm
http://www.e-workflow.org/
http://web.mit.edu/sapr3/dev/newdevstand.html
Hope this helps, Do reward.

Similar Messages

  • What is MDM Work Flow

    Hi MDM frnds,
    What is MDM work flow, its Just like ABAP Work Flow??
    At what stage we need to define MDM work Flow??
    If anybody having usefull documentation shere to me..
    Regards,Raj

    Hi,
    What is MDM work flow?
    Workflow is used to run the processes working on master data in a systematic and orderly way.
    Generally, we need to have some validations and approvals in order to make sure that master data is
    correct.These validations ,approvals and other processes are not done by the single person.Different
    operations will be done by different users in master data management.In order to control the overall
    processes done by different users in an systematic way, we need workflow.
    At what stage we need to define MDM work Flow??
    As i said above whenever we have validations, assignments and matching and merging and various
    approvals which should be act on our master data before send the master data various application
    Systems, then we go for workflow.
    For example as soon as we import the data, workflow can be triggered by setting configuration options
    in import manager and imported records can be addeed to workflow automatically by setting Trigger action
    to record import.By doing this,we can cleanse and normalize the data using various operations in workflow.
    and also we can execute the MDM workflows in portal using guided procedures.
    Not only that using workflow we can extract the data from MDM to remote system using syndicate step(Available from SP5) of the workflow.
    Finally what i can say is using workflow all the operations which need to be executed on master data can
    be done in a proper way.
    For better understanding, go through below documnents.
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/9180cbaf-0801-0010-f882-f2af6dc975d0
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/d0be83e4-a1e6-2a10-c1be-8395ae948844
    Hope it helps'
    Reward points,if found useful
    Thanks
    Narendra
    Edited by: mullapudi on May 6, 2008 7:35 AM

  • Will be possible to extract data from work flow?

    hi
    i need to add approver in FIAP report. the filed is available not any table like, its getting from abap work flow? please let me know  normally will be possible to extract data from work flow?

    Hi,
    There is no direct method i am aware of, but you can definitely create custom extractors on base tables.
    -Vikram

  • Issue regarding [Work Flow] Business Object Event Raise in ABAP Program

    Hi All,
    I have one issue regarding [Work Flow] Business Object Event Raise in ABAP Program.
    Actual TDS is as below:
    If E message type written, raise Business object BUS2005 (Production order) Event PickShortage for production order passing warehouse, transfer request
    (BUS2065 Object key) in event container. Also include table of text version of error
    messages for this set of Transfer
    Request.
    Can anybody tell me how can i write it technically in ABAP Code.
    Can anybody solve this issue!
    Thanks in advance.
    Thanks,
    Deep.

    Hi,
    Can anybody solve above posted issue!
    Thanks,
    Deep.

  • How can we use TABLE CONTROL in BDC and WORK FLOW of ABAP.

    how can we use TABLE CONTROL in BDC and WORK FLOW of ABAP.?
    please explain the important questions.

    How to deal with table control / step loop in BDC
    Steploop and table contol is inevitable in certain transactions. When we run BDC for such transactions, we will face the situation: how many visible lines of steploop/tablecontrol are on the screen? Although we can always find certain method to deal with it, such as function code 'NP', 'POPO', considering some extreme situation: there is only one line visible one the screen, our BDC program should display an error message. (See transaction 'ME21', we you resize your screen to let only one row visible, you can not enter mutiple lines on this screen even you use 'NP')
    Now with the help of Poonam on sapfans.com developement forum, I find a method with which we can determine the number of visible lines on Transaction Screen from our Calling BDC program. Maybe it is useless to you, but I think it will give your some idea.
    Demo ABAP code has two purposes:
    1. how to determine number of visible lines and how to calculte page number;
    (the 'calpage' routine has been modify to meet general purpose usage)
    2. using field symbol in BDC program, please pay special attention to the difference in Static ASSIGN and Dynamic ASSIGN.
    Now I begin to describe the step to implement my method:
    (I use transaction 'ME21', screen 121 for sample,
    the method using is Call Transation Using..)
    Step1: go to screen painter to display the screen 121, then we can count the fixed line on this screen, there is 7 lines above the steploop and 2 lines below the steploop, so there are total 9 fixed lines on this screen. This means except these 9 lines, all the other line is for step loop. Then have a look at steploop itselp, one entry of it will occupy two lines.
    (Be careful, for table control, the head and the bottom scroll bar will possess another two fixed lines, and there is a maximum number for table line)
    Now we have : FixedLine = 9
                  LoopLine  = 2(for table control, LoopLine is always equal to 1)
    Step2: go to transaction itself(ME21) to see how it roll page, in ME21, the first line of new page is always occupied by the last line of last page, so it begin with index '02', but in some other case, fisrt line is empty and ready for input.
    Now we have: FirstLine = 0
              or FirstLine = 1 ( in our case, FirstLine is 1 because the first line of new page is fulfilled)
    Step3: write a subroutine calcalculating number of pages
    (here, the name of actual parameter is the same as formal parameter)
    global data:    FixedLine type i, " number of fixed line on a certain screen
                    LoopLine  type i, " the number of lines occupied by one steploop item
                    FirstLine type i, " possbile value 0 or 1, 0 stand for the first line of new                                                               " scrolling screen is empty, otherwise is 1
                    Dataline  type i, " number of items you will use in BDC, using DESCRIBE to get
                    pageno    type i, " you need to scroll screen how many times.
                    line      type i, " number of lines appears on the screen.
                    index(2)  type N, " the screen index for certain item
                    begin     type i, " from parameter of loop
                    end       type i. " to parameter of loop
    *in code sample, the DataTable-linindex stands for the table index number of this line
    form calpage using FixedLine type i (see step 1)
                       LoopLine  type i (see step 1)
                       FirstLine type i (see step 2)
                       DataLine  type i ( this is the item number you will enter in transaction)
              changing pageno    type i (return the number of page, depends on run-time visible                                                                             line in table control/ Step Loop)
              changing line      type i.(visible lines one the screen)
    data: midd type i,
          vline type i, "visible lines
    if DataLine eq 0.
       Message eXXX.
    endif.
    vline = ( sy-srows - FixedLine ) div LoopLine.
    *for table control, you should compare vline with maximum line of
    *table control, then take the small one that is min(vline, maximum)
    *here only illustrate step loop
    if FirstLine eq 0.
            pageno = DataLine div vline.
            if pageno eq 0.
               pageno = pageno + 1.
            endif.
    elseif FirstLine eq 1.
            pageno = ( DataLine - 1 ) div ( vline - 1 ) + 1.
            midd = ( DataLine - 1 ) mod ( vline - 1).
            if midd = 0 and DataLine gt 1.
                    pageno = pageno - 1.
            endif.
    endif.
    line = vline.
    endform.
    Step4 write a subroutine to calculate the line index for each item.
    form calindex using Line type i (visible lines on the screen)
                        FirstLine type i(see step 2)
                        LineIndex type i(item index)
              changing  Index type n.    (index on the screen)
      if  FirstLine = 0.
            index = LineIndex mod Line.
            if index = '00'.
                    index = Line.
            endif.
      elseif FirstLine = 1.
            index = LineIndex mod ( Line - 1 ).
            if ( index between 1 and 0 ) and LineIndex gt 1.
                    index = index + Line - 1.
            endif.
            if Line = 2.
                    index = index + Line - 1.
            endif.
    endif.
    endform.
    Step5 write a subroutine to calculate the loop range.
    form calrange using Line type i ( visible lines on the screen)
                        DataLine type i
                        FirstLine type i
                        loopindex like sy-index
            changing    begin type i
                        end type i.
    If FirstLine = 0.
       if loopindex = 1.
            begin = 1.
            if DataLine <= Line.
                    end = DataLine.
            else.
                    end = Line.
            endif.
       elseif loopindex gt 1.
            begin = Line * ( loopindex - 1 ) + 1.
            end   = Line * loopindex.
            if end gt DataLine.
               end = DataLine.
            endif.
       endif.
    elseif FirstLine = 1.
      if loopindex = 1.
            begin = 1.
            if DataLine <= Line.
                    end = DataLine.
            else.
                    end = Line.
            endif.
      elseif loop index gt 1.
            begin = ( Line - 1 ) * ( loopindex - 1 ) + 2.
            end =   ( Line - 1 ) * ( loopindex - 1 ) + Line.
            if end gt DataLine.
                    end = DataLine.
            endif.
      endif.
    endif.
    endform.
    Step6 using field sysbol in your BDC, for example: in ME21, but you should calculate each item will correponding to which index in steploop/Table Control
    form creat_bdc.
    field-symbols: <material>, <quan>, <indicator>.
    data: name1(14) value 'EKPO-EMATN(XX)',
          name2(14) value 'EKPO-MENGE(XX)',
          name3(15) value 'RM06E-SELKZ(XX)'.
    assign:         name1 to <material>,
                    name2 to <quan>,
                    name3 to <indicator>.
    do pageno times.
    if sy-index gt 1
    *insert scroll page ok_code"
    endif.
            perform calrange using Line DataLine FirstLine sy-index
                             changing begin end.
    loop at DataTable from begin to end.
            perform calindex using Line FirstLine DataTable-LineIndex changing Index.
            name1+11(2) = Index.
            name2+11(2) = Index.
            name3+12(2) = Index.
            perform bdcfield using <material> DataTable-matnr.
            perform bdcfield using <quan>     DataTable-menge.
            perform bdcfield using <indicator> DataTable-indicator.
    endloop.
    enddo.
    An example abap program of handling Table Control during bdc programming.
    REPORT zmm_bdcp_purchaseorderkb02
           NO STANDARD PAGE HEADING LINE-SIZE 255.
                    Declaring internal tables                            *
    *-----Declaring line structure
    DATA : BEGIN OF it_dummy OCCURS 0,
             dummy(255) TYPE c,
           END OF it_dummy.
    *-----Internal table for line items
    DATA :  BEGIN OF it_idata OCCURS 0,
              ematn(18),      "Material Number.
              menge(13),      "Qyantity.
              netpr(11),      "Net Price.
              werks(4),       "Plant.
              ebelp(5),       "Item Number.
            END OF it_idata.
    *-----Deep structure for header data and line items
    DATA  :  BEGIN OF it_me21 OCCURS 0,
               lifnr(10),      "Vendor A/c No.
               bsart(4),       "A/c Type.
               bedat(8),       "Date of creation of PO.
               ekorg(4),       "Purchasing Organisation.
               ekgrp(3),       "Purchasing Group.
               x_data LIKE TABLE OF it_idata,
             END OF it_me21.
    DATA  :  x_idata LIKE LINE OF it_idata.
    DATA  :  v_delimit VALUE ','.
    DATA  :  v_indx(3) TYPE n.
    DATA  :  v_fnam(30) TYPE c.
    DATA  :  v_count TYPE n.
    DATA  :  v_ne TYPE i.
    DATA  :  v_ns TYPE i.
    *include bdcrecx1.
    INCLUDE zmm_incl_purchaseorderkb01.
                    Search help for file                                 *
    AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.
      CALL FUNCTION 'F4_FILENAME'
        EXPORTING
          program_name  = syst-cprog
          dynpro_number = syst-dynnr
        IMPORTING
          file_name     = p_file.
    START-OF-SELECTION.
           To upload the data into line structure                        *
      CALL FUNCTION 'WS_UPLOAD'
        EXPORTING
          filename = p_file
          filetype = 'DAT'
        TABLES
          data_tab = it_dummy.
        Processing the data from line structure to internal tables       *
      REFRESH:it_me21.
      CLEAR  :it_me21.
      LOOP AT it_dummy.
        IF it_dummy-dummy+0(01) = 'H'.
          v_indx = v_indx + 1.
          CLEAR   it_idata.
          REFRESH it_idata.
          CLEAR   it_me21-x_data.
          REFRESH it_me21-x_data.
          SHIFT it_dummy.
          SPLIT it_dummy AT v_delimit INTO it_me21-lifnr
                                           it_me21-bsart
                                           it_me21-bedat
                                           it_me21-ekorg
                                           it_me21-ekgrp.
          APPEND it_me21.
        ELSEIF it_dummy-dummy+0(01) = 'L'.
          SHIFT it_dummy.
          SPLIT it_dummy AT v_delimit INTO it_idata-ematn
                                           it_idata-menge
                                           it_idata-netpr
                                           it_idata-werks
                                           it_idata-ebelp.
          APPEND it_idata TO it_me21-x_data.
          MODIFY it_me21 INDEX v_indx.
        ENDIF.
      ENDLOOP.
                    To open the group                                    *
      PERFORM open_group.
            To populate the bdcdata table for header data                *
      LOOP AT it_me21.
        v_count = v_count + 1.
        REFRESH it_bdcdata.
        PERFORM subr_bdc_table USING:   'X' 'SAPMM06E'    '0100',
                                        ' ' 'BDC_CURSOR'  'EKKO-LIFNR',
                                        ' ' 'BDC_OKCODE'  '/00',
                                        ' ' 'EKKO-LIFNR'  it_me21-lifnr,
                                        ' ' 'RM06E-BSART' it_me21-bsart,
                                        ' ' 'RM06E-BEDAT' it_me21-bedat,
                                        ' ' 'EKKO-EKORG'  it_me21-ekorg,
                                        ' ' 'EKKO-EKGRP'  it_me21-ekgrp,
                                        ' ' 'RM06E-LPEIN' 'T'.
        PERFORM subr_bdc_table USING:   'X' 'SAPMM06E'    '0120',
                                        ' ' 'BDC_CURSOR'  'RM06E-EBELP',
                                        ' ' 'BDC_OKCODE'  '/00'.
        MOVE 1 TO v_indx.
    *-----To populate the bdcdata table for line item data
        LOOP AT it_me21-x_data INTO x_idata.
          CONCATENATE 'EKPO-EMATN(' v_indx ')'  INTO v_fnam.
          PERFORM  subr_bdc_table USING ' ' v_fnam x_idata-ematn.
          CONCATENATE 'EKPO-MENGE(' v_indx ')'  INTO v_fnam.
          PERFORM  subr_bdc_table USING ' ' v_fnam x_idata-menge.
          CONCATENATE 'EKPO-NETPR(' v_indx ')'  INTO v_fnam.
          PERFORM  subr_bdc_table USING ' ' v_fnam x_idata-netpr.
          CONCATENATE 'EKPO-WERKS(' v_indx ')'  INTO v_fnam.
          PERFORM  subr_bdc_table USING ' ' v_fnam x_idata-werks.
          v_indx = v_indx + 1.
          PERFORM subr_bdc_table USING:  'X' 'SAPMM06E'    '0120',
                                         ' ' 'BDC_CURSOR'  'RM06E-EBELP',
                                         ' ' 'BDC_OKCODE'  '/00'.
        ENDLOOP.
        PERFORM subr_bdc_table USING:    'X' 'SAPMM06E'    '0120',
                                         ' ' 'BDC_CURSOR'  'RM06E-EBELP',
                                         ' ' 'BDC_OKCODE'  '=BU'.
        PERFORM bdc_transaction USING 'ME21'.
      ENDLOOP.
      PERFORM close_group.
                      End of selection event                             *
    END-OF-SELECTION.
      IF session NE 'X'.
    *-----To display the successful records
        WRITE :/10  text-001.          "Sucess records
        WRITE :/10  SY-ULINE(20).
        SKIP.
        IF it_sucess IS INITIAL.
          WRITE :/  text-002.
        ELSE.
          WRITE :/   text-008,          "Total number of Succesful records
                  35 v_ns.
          SKIP.
          WRITE:/   text-003,          "Vendor Number
                 17 text-004,          "Record number
                 30 text-005.          "Message
        ENDIF.
        LOOP AT it_sucess.
          WRITE:/4  it_sucess-lifnr,
                 17 it_sucess-tabix CENTERED,
                 30 it_sucess-sucess_rec.
        ENDLOOP.
        SKIP.
    *-----To display the erroneous records
        WRITE:/10   text-006.          "Error Records
        WRITE:/10   SY-ULINE(17).
        SKIP.
        IF it_error IS INITIAL.
          WRITE:/   text-007.          "No error records
        ELSE.
          WRITE:/   text-009,          "Total number of erroneous records
                 35 v_ne.
          SKIP.
          WRITE:/   text-003,          "Vendor Number
                 17 text-004,          "Record number
                 30 text-005.          "Message
        ENDIF.
        LOOP AT it_error.
          WRITE:/4  it_error-lifnr,
                 17 it_error-tabix CENTERED,
                 30 it_error-error_rec.
        ENDLOOP.
        REFRESH it_sucess.
        REFRESH it_error.
      ENDIF.
    CODE IN INCLUDE.
    Include           ZMM_INCL_PURCHASEORDERKB01
    DATA:   it_BDCDATA LIKE BDCDATA    OCCURS 0 WITH HEADER LINE.
    DATA:   it_MESSTAB LIKE BDCMSGCOLL OCCURS 0 WITH HEADER LINE.
    DATA:   E_GROUP_OPENED.
    *-----Internal table to store sucess records
    DATA:BEGIN OF it_sucess OCCURS 0,
           msgtyp(1)   TYPE c,
           lifnr  LIKE  ekko-lifnr,
           tabix  LIKE  sy-tabix,
           sucess_rec(125),
         END OF it_sucess.
    DATA: g_mess(125) type c.
    *-----Internal table to store error records
    DATA:BEGIN OF it_error OCCURS 0,
           msgtyp(1)   TYPE c,
           lifnr  LIKE  ekko-lifnr,
           tabix  LIKE  sy-tabix,
           error_rec(125),
         END OF it_error.
           Selection screen
    SELECTION-SCREEN BEGIN OF LINE.
    PARAMETERS session RADIOBUTTON GROUP ctu.  "create session
    SELECTION-SCREEN COMMENT 3(20) text-s07 FOR FIELD session.
    SELECTION-SCREEN POSITION 45.
    PARAMETERS ctu RADIOBUTTON GROUP ctu.     "call transaction
    SELECTION-SCREEN COMMENT 48(20) text-s08 FOR FIELD ctu.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) text-s01 FOR FIELD group.
    SELECTION-SCREEN POSITION 25.
    PARAMETERS group(12).                      "group name of session
    SELECTION-SCREEN COMMENT 48(20) text-s05 FOR FIELD ctumode.
    SELECTION-SCREEN POSITION 70.
    PARAMETERS ctumode LIKE ctu_params-dismode DEFAULT 'N'.
    "A: show all dynpros
    "E: show dynpro on error only
    "N: do not display dynpro
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 48(20) text-s06 FOR FIELD cupdate.
    SELECTION-SCREEN POSITION 70.
    PARAMETERS cupdate LIKE ctu_params-updmode DEFAULT 'L'.
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 3(20) text-s03 FOR FIELD keep.
    SELECTION-SCREEN POSITION 25.
    PARAMETERS: keep AS CHECKBOX.       "' ' = delete session if finished
    "'X' = keep   session if finished
    SELECTION-SCREEN COMMENT 48(20) text-s09 FOR FIELD e_group.
    SELECTION-SCREEN POSITION 70.
    PARAMETERS e_group(12).             "group name of error-session
    SELECTION-SCREEN END OF LINE.
    SELECTION-SCREEN BEGIN OF LINE.
    SELECTION-SCREEN COMMENT 51(17) text-s03 FOR FIELD e_keep.
    SELECTION-SCREEN POSITION 70.
    PARAMETERS: e_keep AS CHECKBOX.     "' ' = delete session if finished
    "'X' = keep   session if finished
    SELECTION-SCREEN END OF LINE.
    PARAMETERS:p_file LIKE rlgrap-filename.
      at selection screen                                                *
    AT SELECTION-SCREEN.
    group and user must be filled for create session
      IF SESSION = 'X' AND
         GROUP = SPACE. "OR USER = SPACE.
        MESSAGE E613(MS).
      ENDIF.
      create batchinput session                                          *
    FORM OPEN_GROUP.
      IF SESSION = 'X'.
        SKIP.
        WRITE: /(20) 'Create group'(I01), GROUP.
        SKIP.
    *----open batchinput group
        CALL FUNCTION 'BDC_OPEN_GROUP'
          EXPORTING
            CLIENT = SY-MANDT
            GROUP  = GROUP
            USER   = sy-uname.
        WRITE:/(30) 'BDC_OPEN_GROUP'(I02),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ENDIF.
    ENDFORM.                    "OPEN_GROUP
      end batchinput session                                             *
    FORM CLOSE_GROUP.
      IF SESSION = 'X'.
    *------close batchinput group
        CALL FUNCTION 'BDC_CLOSE_GROUP'.
        WRITE: /(30) 'BDC_CLOSE_GROUP'(I04),
                (12) 'returncode:'(I05),
                     SY-SUBRC.
      ELSE.
        IF E_GROUP_OPENED = 'X'.
          CALL FUNCTION 'BDC_CLOSE_GROUP'.
          WRITE: /.
          WRITE: /(30) 'Fehlermappe wurde erzeugt'(I06).
        ENDIF.
      ENDIF.
    ENDFORM.                    "CLOSE_GROUP
           Start new transaction according to parameters                 *
    FORM BDC_TRANSACTION USING TCODE TYPE ANY.
      DATA: L_SUBRC LIKE SY-SUBRC.
    *------batch input session
      IF SESSION = 'X'.
        CALL FUNCTION 'BDC_INSERT'
          EXPORTING
            TCODE     = TCODE
          TABLES
            DYNPROTAB = it_BDCDATA.
        WRITE: / 'BDC_INSERT'(I03),
                 TCODE,
                 'returncode:'(I05),
                 SY-SUBRC,
                 'RECORD:',
                 SY-INDEX.
      ELSE.
        REFRESH it_MESSTAB.
        CALL TRANSACTION TCODE USING it_BDCDATA
                         MODE   CTUMODE
                         UPDATE CUPDATE
                         MESSAGES INTO it_MESSTAB.
        L_SUBRC = SY-SUBRC.
        WRITE: / 'CALL_TRANSACTION',
                 TCODE,
                 'returncode:'(I05),
                 L_SUBRC,
                 'RECORD:',
                 SY-INDEX.
      ENDIF.
      Message handling for Call Transaction                              *
      perform subr_mess_hand using g_mess.
    *-----Erzeugen fehlermappe
      IF L_SUBRC <> 0 AND E_GROUP <> SPACE.
        IF E_GROUP_OPENED = ' '.
          CALL FUNCTION 'BDC_OPEN_GROUP'
            EXPORTING
              CLIENT = SY-MANDT
              GROUP  = E_GROUP
              USER   = sy-uname
              KEEP   = E_KEEP.
          E_GROUP_OPENED = 'X'.
        ENDIF.
        CALL FUNCTION 'BDC_INSERT'
          EXPORTING
            TCODE     = TCODE
          TABLES
            DYNPROTAB = it_BDCDATA.
      ENDIF.
      REFRESH it_BDCDATA.
    ENDFORM.                    "BDC_TRANSACTION
         Form  subr_bdc_table                                            *
          text
         -->P_0220   text                                                *
         -->P_0221   text                                                *
         -->P_0222   text                                                *
    FORM subr_bdc_table  USING      VALUE(P_0220) TYPE ANY
                                    VALUE(P_0221) TYPE ANY
                                    VALUE(P_0222) TYPE ANY.
      CLEAR it_bdcdata.
      IF P_0220 = ' '.
        CLEAR it_bdcdata.
        it_bdcdata-fnam     = P_0221.
        it_bdcdata-fval     = P_0222.
        APPEND it_bdcdata.
      ELSE.
        it_bdcdata-dynbegin = P_0220.
        it_bdcdata-program  = P_0221.
        it_bdcdata-dynpro   = P_0222.
        APPEND it_bdcdata.
      ENDIF.
    ENDFORM.                    " subr_bdc_table
         Form  subr_mess_hand                                            *
          text                                                           *
         -->P_G_MESS  text                                               *
    FORM subr_mess_hand USING  P_G_MESS TYPE ANY.
      LOOP AT IT_MESSTAB.
        CALL FUNCTION 'FORMAT_MESSAGE'
          EXPORTING
            ID     = it_messtab-msgid
            LANG   = it_messtab-msgspra
            NO     = it_messtab-msgnr
            v1     = it_messtab-msgv1
            v2     = it_messtab-msgv2
          IMPORTING
            MSG    = P_G_MESS
          EXCEPTIONS
            OTHERS = 0.
        CASE it_messtab-msgtyp.
          when 'E'.
            it_error-error_rec   =  P_G_MESS.
            it_error-lifnr       =  it_me21-lifnr.
            it_error-tabix       =  v_count.
            APPEND IT_ERROR.
          when 'S'.
            it_sucess-sucess_rec =  P_G_MESS.
            it_sucess-lifnr      =  it_me21-lifnr.
            it_sucess-tabix      =  v_count.
            APPEND IT_SUCESS.
        endcase.
      ENDLOOP.
      Describe table it_sucess lines v_ns.
      Describe table it_error  lines v_ne.
    ENDFORM.                    " subr_mess_hand
    Also refer
    http://sap.ittoolbox.com/groups/technical-functional/sap-dev/bdc-table-control-668404
    and
    http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
    Regards,
    srinivas
    <b>*reward for useful answers*</b>

  • Reg - Work Flow Program ( ABAP )

    Hi,
    Pls advise Where i get the Program ( ABAP Code ) in the Work Flow.
    Example : I need to add one more plant in the WorkFlow ..
    Thanks
    Roy..

    Hi Roy,
    You can Program Your workflow in Two ways
    make use of an object(Bor-Business object repositry)
    or make use of  a class.
    write your coding in a method in Object and call that object in a workflow task.
    do necessary bindings to ensure that your data is communicated between task and workflow.
    Thanks & Regards
    Hari Sankar M

  • Work-Flow in ABAP

    hi GURU's...
    I am new to SAP ABAP fresher. I am interested in work-flow in abap. Material in internet is so confusing.
    Can any one please help me out
    thanks in advance...

    Sorry.  This is not a training forum.  Please go on a course, buy a book, etc.  And before posting anymore questions, please read the Rules of Engagement.
    Topic locked.
    Edited by: Matt on Apr 13, 2009 12:56 PM

  • ABAP API for MDM work flow

    Hi SDN,
    I need some information related to ABAP API for MDM workflow. I did search in SDN and I found one solution in a thered posted on Jul-2008.
    ABAP API - MDM Workflow execute
    My dought is: Do we have any ABAP API for call MDM work flow. Please provide me the solution ASAP. Apprciate for your immediate response.
    Regards,
    Kumar.

    Hi LAKSHMAN ,
    To answer your question specifically
    Using ABAP api you cannot call MDM workflows as of mdm 5.5 there are no functions specific to calling MDM workflows in ABAP.If you want to implement workflows on ABAP side you need to go for SAP ECC workflows which is a different topic than MDM>
    To call MDM workflows over the Java stack ie WAS (SAP portal),You have 2 ways
    - UWL
    - Guided Procedures.
    - UWL is a way of calling MDM workflows on EP.Wherein the workflow design will be done in MDM and it will only be called in portal using appropiate connections and configurations.
    You can refer the below links to know more on them:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/771f1a61-0e01-0010-daa9-93a52905da09 (uwl)
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/a3461636-0301-0010-3787-978f5ac8bd45 (UWL config)
    - GP is a way where by you need to design the entire workflow on SAP portal the logic can be pertaining to MDM but the design is completely on portal using webdynpros and api.
    You can refer the below links to know more on them:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/92811997-0d01-0010-9584-f7d535177831  (Guided procedures)
    Enterprise Master Data Management   (EP Guided)
    To know more on ABAP api and its provider classes you can refer the below:
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/601ddb01-e5c8-2910-d981-b190b51fca44  (abap api webinar)
    Re: Abap api error (Abap api provider classes Forum)
    Hope It Helped
    Thanks & Regards
    Simona Pinto

  • Regarding [Work Flow] Business Object Event  Raise in ABAP Program

    Hi All,
    I have one issue regarding [Work Flow] Business Object Event Raise in ABAP Program.
    Actual TDS is as below:
    If E message type written, raise Business object BUS2005 (Production order) Event PickShortage for production order passing warehouse, transfer request
    (BUS2065 Object key) in event container.  Also include table of text version of error
    messages for this set of Transfer
    Request.
    Can anybody tell me how can i write it technically in ABAP Code.
    Can anybody solve this issue!
    Thanks in advance.
    Thanks,
    Deep.

    Hi,
    Can anybody solve above posted issue!
    Thanks,
    Deep.

  • Urgent : Work flow  in ABAP

    Hi friends,
                  kinkly send me about Work flow. Also send me step by step procedure on how to do work flow. Thanks in advance.

    Hi,
    check the below links
    REfer this link:
    There is a good book from SAP Press that I would
    recommend as a starting point.It's called Practical Workflow for SAP and it is by Alan Rickayzen.
    http://www.sap-press.com/product.cfm?account=&product=H950
    Workflow
    http://www.sap-img.com/workflow/sap-workflow.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
    For examples on WorkFlow...check the below link..
    http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.workflowing.com/id18.htm
    http://www.e-workflow.org/
    http://web.mit.edu/sapr3/dev/newdevstand.html
    Go through the following links on FORK :
    http://help.sap.com/saphelp_nw04/helpdata/en/24/e2283f2bbad036e10000000a114084/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/8d/25f1e7454311d189430000e829fbbd/frameset.htm
    http://help.sap.com/saphelp_46c/helpdata/en/c5/e4a930453d11d189430000e829fbbd/content.htm
    http://www.insightcp.com/res_23.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMSTART/BCBMTWFMSTART.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMDEMO/BCBMTWFMDEMO.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCBMTWFMPM/BCBMTWFMPM.pdf
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    Work Flow
    1) Goto Tcode PFTC : Standard Task > Create Button>Workflow Templete
    For Create Container
    Element : ZBUS1001006
    Name : ANy Name
    Description
    Data Type & Properties
    Data Type:
    select Object Type : BOR Object Type for BUS1001006
    Properties:
    Parameter Settingd : check all Import, Export & Mandatory Checkboxes
    Basic Data :
    Abbr : Create_View
    Name : Some Name
    Work Item Text : Create View Material & -
    Click on DELE Button & Select Material From The List
    Object Catagory : BOR Object Type
    Object Type : BUS1001006
    Method : View
    Triggering Events
    Obj Catagory Object Type Event
    BOR Object BUS1001006 View
    activate it
    Enter on BUS1001006 Object Type you will get Quadratel<> Button after that
    double click on Quadratel<> button you get green button
    after that the system will generate the task No.
    check in the Event linkage Tcode : SWETYPV
    if you find an entry with your Workflow and linkage active
    goto Tcode : SWEC click on New Entries
    Change Doc Obje Obj Cat Obj Type Event on create
    Material BOJ Obje BUS1001006 View Option Button(Checked)
    save this
    goto Tcode : SWEC
    Change Doc Object : Material
    Obj Catagoty : BOR Type
    Obj Type : BUS1001006
    Event : View
    Check with On Create Button
    Goto SWETYPV
    Obj Catagoty : BOR Type
    Obj Type : BUS1001006
    Event : View
    Receiver Type : Some Work Flow No: WS80000431 like this
    Click on Work flow Builder
    ~~Guduri

  • Reg: work flow in abap corssapplications

    Hi,
    I don't know about work flow, iam interested  to work on work flow.So can u  help  me  with detailed explanation.
    Thanks & Regards
    Ravicharan

    Hi,
    Check out these links and kindly reward points by clikcing the star on the left of reply,if it helps.
    http://help.sap.com/saphelp_46c/helpdata/en/c5/e4b7eb453d11d189430000e829fbbd/frameset.htm
    http://www.sap-img.com/workflow/sap-workflow.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
    For examples on WorkFlow...check the below link..
    http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.workflowing.com/id18.htm
    http://www.e-workflow.org/
    http://web.mit.edu/sapr3/dev/newdevstand.html

  • RE:WOrk flow in abap

    Hi,
    Can any one tell me with an example for workflow.Also the step by step process.
    Regards,
    Alex.

    Hi,
    Check the following
    Check the below PDF file on Workflow:
    http://help.sap.com/printdocu/core/Print46c/en/data/pdf/PSWFL/PSWFL.pdf
    www.sapfaq.com
    sap.ittoolbox.com
    www.sapTOPsites.com
    http://www.sap-press.com/product.cfm?account=&product=H950
    I am giving you links for Workflow....
    /people/ginger.gatling/blog/2005/12/01/link-workflow-business-objects-to-your-collaboration-tasks
    http://help.sap.com/saphelp_erp2005/helpdata/en/fb/135962457311d189440000e829fbbd/frameset.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/c5/e4a930453d11d189430000e829fbbd/frameset.htm
    http://help.sap.com/saphelp_erp2004/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
    http://help.sap.com/saphelp_bw33/helpdata/en/92/bc26a6ec2b11d2b4b5006094b9ea0d/content.htm
    http://help.sap.com/saphelp_bw31/helpdata/en/8d/25f94b454311d189430000e829fbbd/content.htm
    Workflow
    http://www.sap-img.com/workflow/sap-workflow.htm
    http://www.sapgenie.com/workflow/index.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/a5/172437130e0d09e10000009b38f839/frameset.htm
    For examples on WorkFlow...check the below link..
    http://help.sap.com/saphelp_47x200/helpdata/en/3d/6a9b3c874da309e10000000a114027/frameset.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/4a/dac507002f11d295340000e82dec10/frameset.htm
    http://www.workflowing.com/id18.htm
    http://www.e-workflow.org/
    http://web.mit.edu/sapr3/dev/newdevstand.html
    Go through the following:
    1) Goto Tcode PFTC : Standard Task > Create Button>Workflow Templete
    For Create Container
    Element : ZBUS1001006
    Name : ANy Name
    Description
    Data Type & Properties
    Data Type:
    select Object Type : BOR Object Type for BUS1001006
    Properties:
    Parameter Settingd : check all Import, Export & Mandatory Checkboxes
    Basic Data :
    Abbr : Create_View
    Name : Some Name
    Work Item Text : Create View Material & -
    Click on DELE Button & Select Material From The List
    Object Catagory : BOR Object Type
    Object Type : BUS1001006
    Method : View
    Triggering Events
    Obj Catagory Object Type Event
    BOR Object BUS1001006 View
    activate it
    Enter on BUS1001006 Object Type you will get Quadratel<> Button after that
    double click on Quadratel<> button you get green button
    after that the system will generate the task No.
    check in the Event linkage Tcode : SWETYPV
    if you find an entry with your Workflow and linkage active
    goto Tcode : SWEC click on New Entries
    Change Doc Obje Obj Cat Obj Type Event on create
    Material BOJ Obje BUS1001006 View Option Button(Checked)
    save this
    goto Tcode : SWEC
    Change Doc Object : Material
    Obj Catagoty : BOR Type
    Obj Type : BUS1001006
    Event : View
    Check with On Create Button
    Goto SWETYPV
    Obj Catagoty : BOR Type
    Obj Type : BUS1001006
    Event : View
    Receiver Type : Some Work Flow No: WS80000431 like this
    Click on Work flow Builder
    Regards,
    Padmam.

  • Work flow

    Dear all,
    we need a workflow for creation of material master.
    Say Basic data is created by MM dept.
    then MRP  & work Scheduling views are created by PP dept.,
    then Purchase views are by MM again,
    then inventory dept. creates storage locations,and f
    inally finance dept creates Costing & Accounting views.
    Our requirement is when over one dept. completes creation of their respective view, mail should get triggered to  subsequent dept. to continue the work.
    regards,
    K.Kumaran.

    Dear,
    Use Tcode SWDD for work flow activities....Take help from your ABAP team...Give them the user Authorizations based upon your requirement.
    Hope this will help you.
    Regards
    Utsav

  • CUP MSMP Work flow in GRC 10.0

    Hi GRC Experts,
    I am working on a MSMP Work flow requirement in GRC 10.0 and would appreciate any guidance/inputs on this.
    As per my requirement we would have to design a CUP Work flow in GRC 10.0 to decommission a user in 24-hours if the user has not activated his/her new user account. After a user account is provisioned, system should wait for 24 hours to have user login/activate the account, otherwise decommission/disable the account. I have never heard of this functionality in GRC 5.3, so was not sure if this is something that can be designed and configured in 10.0. Would really appreciate if you can please guide us with requirement and advise if this can be implemented in GRC 10.0.
    I know outside GRC , this requirement can be designed using a background job, which can monitor the provisioning and activation for a user account , however i am wondering if this can be designed and implemented with MSMP Work flow in GRC 10.0
    Thanks every one for your valuable and precious time.
    Cheers .. Vikas

    Hi Vikas,
    You doesn't require customized ABAP programs to achive this and neither GRC 10 and can be achived with the below login parameters:
    login/password_max_idle_initial
    login/password_max_new_valid
    login/password_max_reset_valid
    The login/password_max_idle_initial will make the initial password invalid if the user is not logged in, which means you are making the system secure if the user doesn't login to the system in specific number of days.
    However, this will not decomission the user IDs. You may need to look at custom options to identify the users from USR02 table and lock them using standard BAPIs.
    I am not sure on why Multi Stage/Multi Path is required for this??
    Regards,
    Raghu

  • Regarding work flow in the organisation

    Hello,
          I am new to SAP XI. I want to join as a SAP XI developer. So I want to know about the work flow in the organisation. Means who will raise issues and who will take care of it first. and how it will reach to SAP XI developer.
        What are the human roles in the SAP XI Work flow in the organization and what are their responsibilities. Who will responsible to  write the Java mapping coding or ABAP mapping coding or XSLT mapping coding.
    Thank you
    Edited by: jyotsna dm on Apr 12, 2008 6:54 AM

    Hi,
    In XI: It is separated in two parts
    1) XI basis (Administration)
    Activites are:
    1) XI installation
    2) Configuration activitie
    3) Post installation checks
    4) SLD configuration
    5) Create Users,
    6) Role assignments.
    And many more
    2) XI Implementation and development.
    Under the development you have two parts Integration repository which is desing part which involves small amount of Java knowledge whenever your requirement is not fulfilled by standard SAP XI function.
    and integration Configuration:
    This is very simple stpes once your design is over.Based on your requirement you have to use the standard adapter provided by SAP for example if file is coming then u will go for File adapter,if IDOC is psoted to R3 then you go for IDOC adapter,communication with remote client u go for SOAP adapter.
    XI Project lifecycle:
    1) Blue printing phase (Design phase).
    2) Build phase (Development)
    3) Integration testing
    4) Project go live
    5) Support.
    Now coming to ur question.
    XI Developers role and responsibilities are:
    •     Analysis of the Functional Specifications which is received from Function people.
    •      Understanding the processes related to the third party non SAP and SAP systems.
    •     Raise issue log for the business requirement which is not understood from functional spec.
    •     Prepare Technical Specification Document,
    •     Do the development: now developer has to do the coding which either involved java,XSLT,abap mapping.
    •     Prepare the UTC
    •     Reviewing Interface Technical Specifications and Unit Test Document, Interface build and Unit Test, Self and peer review of the deliverables, develop Interface Object via Design and Configuration.
    •     Project golive and give support and do bug fixing,change request n all.
    hopw u got the prefect workflow.
    chirag

Maybe you are looking for

  • Facing problem in ABAP program "HINCALC0"

    hi all,            i m facing problem in the  ABAP program "HINCALC0". when i m run this hr program we face problem in processing problem is " No entry in table T512W for key 40 /4OD for time 30.04.2009". plz suggest me hw can i rectify this problem.

  • I'm looking for customer references who are using Oracle IFS or OCM

    Dear All, I'm looking for customer references who are using Oracle IFS or OCM or Oracle Files for their document management systems. So, if anyone can support me i appreciate.

  • Installing Mac OS X Snow Leopard on older MacBook

    I have recently bought a MacBook Pro. I want to give my old MacBook to my mother, but don't have the original discs that came with it to do a factory reset. Is it possible to do this using the discs that came with my MacBook Pro? The old MacBook was

  • Cisco AnyConnect Secure Mobility Client 3.0 Start Before Logon PLAP

    This documentation says enabling this "FORCES" this logon method. http://www.cisco.com/en/US/docs/security/vpn_client/anyconnect/anyconnect30/administration/guide/ac03vpn.html#wp1134595 If it is forced, that means the user can only access VPN from a

  • BB stolen and no BB protect - can I still block the BB ?

    After my BB was stolen last Saturday I blocked my number but because I swithched from Mobistar (where I bought it) to Ortel, Mobistar cannot block the BB. I only found out after the theft that I should have installed BB protect - is there anyway to b