Work flow (sap-abap)

Hi Friends,
     Can anybody tell me how to search exact user exit to write code to trigger  workflow ?
Thx and Regds,
bapi bobby

Hi Friends,
     Can anybody tell me how to search exact user exit to write code to trigger  workflow ?
Thx and Regds,
bapi bobby

Similar Messages

  • 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>

  • 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

  • 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 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

  • 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.

  • Business Work Flow Sap Phone

    Hi, Team,
    will you plz tell me how to use sapphone in workflow,
    means i want my work flow to call on xyz no and do the processing as per instructions given my receiver.

    Hi Naresh,
    Since you are from SAP you must be knowing more about SDN.
    please close your Previous threads by rewarding  points for helpful answers.
    thanks
    vijay

  • Work flow & SAP

    Please help me to find relation between workitem & Sap Doccument number .. ie
    SAP Table which has work item and sap doccument number

    Hi
    Then it's the SWW_CONTOB table your looking for.
    WI_ID = Workitem ID
    OBJTYPE = Your business object
    OBJKEY = Contains the document in a concatenated form.
    But keep in mind:
    1. a workitem can have more than one business object in the container
    2. reading directly through this table can be a "<i>nightmare</i>" for a performance point of view.
    That view - if possible use the SAP provided functionality
    Regards
    Morten Nielsen

  • Data/Work Flow in SAP

    Hi All,
    Plz. explain the Data/Work Flow in SAP
    Is there any difference between this if so explain,
    and kindly tell me the process.
    thank you,
    Narender

    Hii..
    Work Flow- SAP Business Workflow
    Purpose
    SAP Business Workflow can be used to define business processes that are not yet mapped in the R/3 System. These may be simple release or approval procedures, or more complex business processes such as creating a material master and the associated coordination of the departments involved. SAP Business Workflow is particularly suitable for situations in which work processes have to be run through repeatedly, or situations in which the business process requires the involvement of a large number of agents in a specific sequence.
    You can also use SAP Business Workflow to respond to errors and exceptions in other, existing business processes. You can start a workflow when predefined events occur, for example an event can be triggered if particular errors are found during an automatic check.
    SAP provides several workflows that map predefined business processes. These workflows do not require much implementation. For an overview of these SAP workflows, refer to Workflow Scenarios in Applications.
    Integration
    SAP Business Workflow uses the existing transactions and functions of the R/3 System and does not change the functions. You can combine the existing functions of the R/3 System to form new business processes with SAP Business Workflow. The workflow system takes over control of the business processes. If you are already using SAP Organizational Management, you can use the organizational structure created there to have the relevant agents carry out the individual activities. It is possible to have an activity carried out by a position. This ensures that the respective occupiers of the position can carry out the individual activities during execution of the workflow. This means that personnel changes in your organization are taken into account immediately in the execution of a workflow.
    Features
    SAP Business Workflow provides a number of tools for defining and analyzing workflows as well as for monitoring operation.
    The Workflow Builder is for displaying and making changes to workflows. You can make small extensions directly to the original workflows supplied by SAP, such as carrying out your own agent assignments or changing deadline monitoring.
    There are several Workflow Wizards to support you in the definition of workflows, with which you can create specific parts of a workflow. The Workflow Wizard Explorer gives you an overview of the existing Workflow Wizards.
    In order to make the functions of the R/3 Systems available to a workflow, you use business objects, which you can define and analyze in the Business Object Builder. These business objects are made available to the workflow in reusable tasks. The Business Wizard Explorer gives you an overview of all existing tasks.
    The end user receives information about the activities they are to carry out in their Business Workplace. 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.
    Several tools are available to the workflow system administrator, with which they can control and analyze the current workflows. The workflow system administrator is notified of problems automatically by the system.
    DATAFLOW-Data flow means flow of data from one module to another within a sap system.
    Regards,
    Aakash

  • Work flow triggering

    Hi experts,
       I need to trigger an workflow email from my abap program and configure the workflow to get the mail in outlook express.
    Can anyone pls help on 1. How to configure the workflow to send an email to outlook express
                                       2. how to trigger an work flow in abap program
    I am novice to wokflow pls brief me with details or example.
    Thanks in advance
    sai

    Hello Sai,
    You can direct the mail from your SAP mailbox to your outlook or you can do it programatically too.
    In SBWP tcode, Goto Settings menu -> Goto Office settings -> Goto Automatin forwarding tab and enter your email id there.
    The mails in your SAP inbox will be forwarded to your outlook
    If you want to do it programatically,
    It first depends how you are triggering your workflow.
    If it is by an event, you can use the SWE_CERATE_EVENT to first trigger the event and then the workflow is started. Attach a business object to a task in the workflow which call the function module SO_DOCUMENT_SEND_API1 that will send the mail to your outlook inbox
    Here lies the sample code as of how to use this FM, SO_DOCUMENT_SEND_API1.
    report yh_email.
    data: email type somlreci1-receiver value '[email protected]'.
    data: sender type SOEXTRECI1-RECEIVER value 'SAPDEV02'.
    data: imessage type standard table of solisti1 with header line,
    iattach type standard table of solisti1 with header line,
    ipacking_list like sopcklsti1 occurs 0 with header line,
    ireceivers like somlreci1 occurs 0 with header line,
    iattachment like solisti1 occurs 0 with header line.
    start-of-selection.
    clear imessage. refresh imessage.
    imessage = 'This is a mail from SAP ECC6'.
    append imessage.
    imessage = 'Thanks and Regards'.
    append imessage.
    imessage = 'Indu'.
    append imessage.
    perform send_email tables imessage
    iattach
    using email
    'Mail from Indu'.
    * Form SEND_EMAIL
    form send_email tables pit_message
    pit_attach
    using email
    p_mtitle.
    data: xdocdata like sodocchgi1,
    xcnt type i.
    * Fill the document data.
    xdocdata-doc_size = 1.
    * Populate the subject/generic message attributes
    xdocdata-obj_langu = sy-langu .
    xdocdata-obj_name = 'SAPRPT' .
    xdocdata-obj_descr = p_mtitle .
    clear ipacking_list. refresh ipacking_list.
    ipacking_list-transf_bin = space.
    ipacking_list-head_start = 1.
    ipacking_list-head_num = 0.
    ipacking_list-body_start = 1.
    describe table imessage lines ipacking_list-body_num.
    ipacking_list-doc_type = 'RAW'.
    append ipacking_list.
    clear ireceivers.
    refresh ireceivers.
    ireceivers-receiver = email.
    ireceivers-rec_type = 'U'.
    append ireceivers.
    call function 'SO_DOCUMENT_SEND_API1'
    exporting
    document_data = xdocdata
    put_in_outbox = 'X'
    SENDER_ADDRESS = SENDER
    commit_work = 'X'
    tables
    packing_list = ipacking_list
    contents_bin = iattachment
    contents_txt = imessage
    receivers = ireceivers
    exceptions
    too_many_receivers = 1
    document_not_sent = 2
    document_type_not_exist = 3
    operation_no_authorization = 4
    parameter_error = 5
    x_error = 6
    enqueue_error = 7
    others = 8.
    endform.
    Hope it helps you.
    Regards
    Indu.

  • How to view work flow

    Hai experts.
    Can any one help me . what is work flow in abap.Where  we can find it.
    Thanks in advance
    shibino.

    Hi,
    Workflow tutorials with step-by-step and with screenshots are available at http://www.****************/Tutorials/Workflow/Workflow.htm
    Check this links.
    http://www.sapgenie.com/workflow/
    http://www.sap-img.com/workflow/sap-workflow.htm
    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
    http://www.sap-basis-abap.com/wf/sap-business-workflow.htm
    https://forums.sdn.sap.com/click.jspa?searchID=791580&messageID=2857887
    https://forums.sdn.sap.com/click.jspa?searchID=791580&messageID=2855919
    https://forums.sdn.sap.com/click.jspa?searchID=791580&messageID=2735228
    Refer this
    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
    Regards,
    Priyanka.

  • Nodes statement in payroll in SAP ABAP hr  Report

    hi,
      i am working in sap abap hr report for payroll.i am using nodes statement in that report.it is showing error that ""PERNR" is not a node of the logical database __S".how can i solve this error.in this report.          
    NODES pernr .
    INFOTYPES: 0000, 0001, 2001.
    TABLES: t554s, pcl1, pcl2.
    INCLUDE rpclst00.
    INCLUDE rpc2rx09.                      "Payroll results datadefns-Intl.
    INCLUDE rpc2rxx0.                      "Payroll results datadefns-Intl.
    INCLUDE rpc2rgg0.                      "Payroll results datadefns-GB
    INCLUDE rpcfdcg0.                      "Payroll results datadefns-GB
    INCLUDE rpcdatg0.
    INCLUDE rpc2cd00.                      "Cluster Directory defns.
    INCLUDE rpc2ps00.                      "Cluster: Generierte Schematas
    INCLUDE rpc2pt00.
    INCLUDE rpcfdc10.
    INCLUDE rpcfdc00.
    INCLUDE rpppxd00.
    INCLUDE rpppxd10.
    INCLUDE rpcfvp09.
    INCLUDE rpcfvpg0.
    INCLUDE rpppxm00.
    TYPES: BEGIN OF t_salrate,
        seqnr    TYPE pc261-seqnr,
        begda    TYPE p2001-begda,
        endda    TYPE p2001-endda,
        split(2) TYPE c,
        val      TYPE p DECIMALS 2,
       END OF t_salrate.
    DATA: it_salrate TYPE STANDARD TABLE OF t_salrate INITIAL SIZE 0,
          wa_salrate TYPE t_salrate.
    *Selection screen
    SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME TITLE text-001.
    SELECT-OPTIONS: so_awart FOR p2001-awart.
    SELECTION-SCREEN END OF BLOCK block1.
    *START-OF-SELECTION.
    START-OF-SELECTION.
    GET pernr.
    get payroll results data
      rp-init-buffer.
      CLEAR rgdir. REFRESH rgdir.
      CLEAR rt. REFRESH rt.
      CLEAR: rx-key.
    set key to current pernr
      MOVE pernr-pernr(8) TO cd-key-pernr.
    retrieves payroll results for specific pernr(personnel number)
      rp-imp-c2-cd.
      IF rp-imp-cd-subrc = 0.                                "rgdir success
        rx-key-pernr = pernr-pernr.
        SORT rgdir BY seqnr ASCENDING.
        CLEAR rgdir.
      ENDIF.
      SORT rgdir BY fpbeg fpend ASCENDING seqnr DESCENDING.
    RGDIR the table where all payroll results periods are stored
      LOOP AT rgdir WHERE  abkrs IN pnpabkrs        "pay area
                      AND  srtza EQ 'A'
                      AND  void  NE 'V'.
        IF sy-subrc NE 0.
        set key to specific payroll results period(current RGDIR loop pass)
          UNPACK rgdir-seqnr   TO   rx-key-seqno.
        Retrieves data for specific payroll results period (current RGDIR
        loop pass)
          rp-imp-c2-rg.
        Loop at wpbp data for specific payroll results period
          LOOP AT wpbp.
            wa_salrate-seqnr = rgdir-seqnr.
            wa_salrate-begda = wpbp-begda.
            wa_salrate-endda = wpbp-endda.
            wa_salrate-split = wpbp-apznr.
          loop at rt data for specific payroll results period
            LOOP AT rt WHERE lgart EQ '/010' AND             "wage type
                             apznr EQ wpbp-apznr.            "payroll split
              wa_salrate-val = ( rt-betpe * ( wpbp-adivi / wpbp-kdivi ) ).
              APPEND wa_salrate TO it_salrate.
            ENDLOOP.
          ENDLOOP.
        Process BT table
          LOOP AT BT.
          ENDLOOP.
        Process NIPAY table
          LOOP AT NIPAY.
          ENDLOOP.
        etc................
        ENDIF.
      ENDLOOP.
    *END-OF-SELECTION.
    END-OF-SELECTION.

    Hi,
    Have you put a Logical Database in the attributes of the program that you have created ?
    Regards,
    Samson Rodrigues.

  • Sap Abap Upgrade

    hi all
    i am working on SAP ABAP Upgrade and facing problem with a data type RAW which is incompatible in
    ECC6.0. Can anyone suggest a replacement for this data type.
    Thanks a lot.

    Hi,
    You can use Char type if the data is in characteres or you can use  HEX type if it contains numbers.

  • Carreer advise Req: SAP ABAP MM 1 yr exp.

    Hi All,
            Currently, Am working as SAP ABAP Consultant in SAP Retail, nearly for an year now. My over all IT exp is 3 years with starting  years in Java/Support project and later moved into SAP.
           Now many are advising me to add extra skills (BI , BO, Xi or Functional expertise) to enhance my career as not much oppurtunities lies with only ABAP skillset. And also i found it true, as i see many abaper's collegues with near to 3-4 yrs abap exp find no oppurtunities.
               This is the time for me ,i can reshuffle, switch and plan my career. Pls advise me to take right decision and choose right path , so that i gain some oppurtunities in near future. Thanks in advance to all for sincere advice and guidance.

    Suggestions (what I would do):
    a) learn something about interation, like IDOC, EDI, XI/PI and this kind of stuff. Why? Because companies need these guys (I mean your current company - useful for retail - one could integrate your company´s SAP system with another system of your supplier and be able to manage stock in a better way - and if you would decide to move on, this skill would be useful for you in other companies as well)
    b) learn about printing, like Adobe forms: it could be used as a frontend for the salespeople who don´t like the SAP face and would prefer something more "paper-like"
    c) learn WebDynpro so you can build web based apps for SAP - this is useful anytime for everybody
    d) BI/ BW/ BO - again - useful for the current employer and for the future as well. Reporting is essential for the retail, so one can understand what customers buy/ don´t buy, how long does it take to sell a piece of X, how many pieces of Y you have to throw away (broken, scratched, whatever)...
    I understand this is not a specific advise, maybe it is more general than you would prefer, but I am afraid you cannot have more specific advise from the short profile you provided.
    Cheers Otto

Maybe you are looking for

  • How do I see 3rd subscription on iCAL?

    I have us holidays, birthdays now I want to add Jewish holiday calendar. I did subcribe but cannot see it on calendar.

  • Oracle 8.1.7 Installation (tru64 Unix)

    Hello all, I am having some problems installing Oracle on tru64 V5.1b. I have set up all the files with the right permissions and all, and i have edited the login file, but for some reason, whenever I try to install, it keeps giving me the error Ünab

  • Interactive pdf is "dead" after accessing via intranet link in IE

    Hello, Our marketing dept. has created some nice interactive PDF's.    After posting to the intranet, however, these come down "flat" (all interactivity stripped out) in the IE pdf viewer.  I'm assuming that this is by design for security reasons. Th

  • Unable to insert dvd in drive

    unable to insert dvd in drive

  • All my sent messages showing up im my drafts folder

    I have 2 IMAP accounts set up in Mail. They all work fine, except that every email that I type (sent or not sent) shows up in my Drafts folder for that account. I have to go in once a week and delete 100+ drafts. It has made it very hard to actually