OA Work flow page customization

Hi ,
I have a requriement where D2K form is submitted for approval. After submission it is going to approver. On click of "Respond" button in D2K form, it is opening OA framework page using the following url.
http://<address>:<port>/OA_HTML/RF.jsp?function_id=1015109&resp_id=21707&resp_appl_id=510&security_group_id=0&lang_code=US&params=1niOHUcsslBEWlU6hlRtmC8iLDVcZd7wtK3oSTMtHRZjVNwZFi.xL2W8yVEg1mUf&oas=snES4CCzDQz24XgDrpn3jA..
I would like to customize the button approve. I don't know in which page xml this button is available .
From the function Id, I can get the the following url
OA.jsp?akRegionCode=WFNTFDETAILSFNPAGE&akRegionApplicationId=601&OAFunc=FND_WFNTF_DETAILS.
Then I query the ak_region table and find that the controller is
oracle.apps.fnd.framework.custom.webui.CustomPageLayoutCO
But I don't know where is the corresping Page XML to alter the action.
Can anyone please help me to resolve this issue.
Thanks
Suresh

Hi,
Let me explain the business requirement.
On Approval of some transactions , approver has to digitally sign the data.
We have a third party Digital Signature Component.
We are trying to integrate that. In Normal OA framework pages , I am able to
integrate Digital Signature Component. In normal pages , how I am doing is,
on click of save button , i will open a JSP page in popup window where user has
to digitally sign. After signing the data , Signature data will be stored and OA
framework page will be submitted and form data will be stored in the database.
In similar way, in workflow on click of approval button , I want to open the JSP
page where use has to digitally sign and after that form has to be submitted and
work item has to move to next approver.
As I explained before , user is entering the data in D2K form. it is going to
approver. When approver is clicking respond button , it is opening OA framework
workflow page. In this page on click of approval button , I want to do the signature
part.
Can any one suggest the solution for this.
Thanks in advance
S.Suresh

Similar Messages

  • OM:Cost of Goods sold work flow customization to take it from concerned off

    OM:Cost of Goods sold work flow customization to take it from concerned office in the place of inventory org

    Yes FOX can be difficult to achieve things that are simpler than simple
    The way you described, it will only search fo a standard price on the same currency.
    Try to set the currency as changeable characteristic and then search prices for each possible currency.
    standard price value  = {standard price, currency1} +                 {standard price, currency2} etc..
    The possible currencies could also be filled in a variable which is read at runtime.
    Don't know an easier way!
    Regards,
    Beat

  • PO Approval Work flow Customization

    Hi,
         I want to customize the PO Approval Work flow.
    And interesting thing is never seen or worked in Work Flow.
    So Help me with the steps to customize right from scratch.
    Regards,
    SoundariyaKumar.R

    First you have to study about the workflow then you can move then move for customization.
    https://web.stanford.edu/dept/itss/docs/oracle/10g/workflow.101/b10284.pdf
    https://books.google.co.in/books?id=tl9Nnk9OKvAC&printsec=frontcover#v=onepage&q&f=false
    http://arunrathod.blogspot.in/2010/10/steps-to-customize-po-approval-workflow.html

  • Exchange 2010 OWA login page customization does not work

    Where can I post a question regarding Exchange 2010 OWA login page customization? The customization worked before running updates, now all users navigating to the OWA page see the default configuration.

    Hello,
    You should ask in the
    Exchange Previous Versions - Administration, Monitoring, and Performance forum.
    Karl
    When you see answers and helpful posts, please click Vote As Helpful, Propose As Answer, and/or Mark As Answer.
    My Blog: Unlock PowerShell
    My Book: Windows PowerShell 2.0 Bible
    My E-mail: -join ('6F6C646B61726C40686F746D61696C2E636F6D'-split'(?<=\G.{2})'|%{if($_){[char][int]"0x$_"}})

  • MSMP Work flow in GRC AC 10.0

    Hi All,
    Can someone please help me with Basic Work flow documentation for AC 10. I am  part of a implementation team and we are working on implementation of MSMP work flow in AC 10 , however i didnt have any prior experience with work flow configuration . This is my my first assignment where i am working on work flow customization and are looking for some docs which can help me to understand the basics of MSMP work flow in AC 10.
    I was able to find docs on market place however they are more into configuration and customization of work flow , So can someone please assist me here to find some basic doc's for MSMP work flow which would help me to better my understanding of MSMP work flow concept .
    Thanks everyone for you help.
    Cheers .. Vikas

    Hi Vikas,
    Please check our BPX page here:
    SAP Access Control 10.0 [original link is broken]
    There are documents covering the installation process and also specific MSMP workshop setup.
    Regards,
    Luis

  • "Save As..." still working in Pages and Lion

    Well, I'm not sure if this has been debated yet but what I find out is that the old function that we got so comfortable with in Pages, Numbers and Keynote still works after a full install of the OSX Lion.
    If you do a fresh install of OSX Lion on an empty Hard Drive and then get the iWork CD and do a fresh install the old "Save As.." still works. What you got to avoid doing is don't update the iWork. Deactivate the warning about the update and continue to use the iWork pre Lion. All the Versions, Duplicate, Full Screen, Resume, Auto Save ... etc from the Lion and iWork Update 6-Version 9.1 features are not there. So we continue to work like before. No problem. There is nothing spectacular in the new update of iWork that we need. Stay with the old one and you can still have the "Save As..." and still enjoy the Lion.
    RF,

    Eventually, people are going to want an upgrade. 
    Saving in Lion is sooo poorly implemented, I can't begin to express how frustrating it is. 
    Here's a simple example from using TextEdit, but it's just as bad in Pages and all the other apps.  Consider this:
    I open file named database.xml file and edit it with TextEdit.  Previously, all I would have to do was hit Cmd-S or go to the File menu and click "Save".  Done.  That's it. 
    Now, my save options are:
    Close
    Save a Version… 
    Duplicate 
    Export as PDF…
    Revert to Saved
    "Save a Version..." creates a new file in the original file location named database.txt  -- not what I want to do.  
    Duplicate creates a new copy and now gives me the new option of "Save…" which still wants to save a text file and will force me to go through a warning dialogue to save over the original document - which I just wanted to save in the first place.
    To add insult to injury, if I opened the file by browsing to it, the finder is pointed to the right location.  But if I didn't, I  have to hunt through my folders and find the location where I want to save the file, change the extension from .txt to .xml, and go through the warning dialogue stating that I'm about to save over a file of the same name.
    Again, compare this to the previous work flow:
    1. Open the xml document
    2. Edit it
    3. Click save.
    That's it.  No changing the friggin' extension, no new versions or duplication or hunting through folders.  No warning dialogues.
    This really is a terrible, terrible, terrible, terrible, terrible, terrible, terrible, terrible, terrible (I really can't say it enough), TERRIBLE implementation.  SOOOO ANNOYING!  Please give us back Save and Save As...
    We went from elegant to byzantine.  This is the kind of crap we'd expect from Microsoft, not Apple.  We need to tell apple through their support pages in the apps (go to Pages menu and click "Provide Pages Feedback...")

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

    Hi
    There is a requirement to trigger a mail to a specific user id whenever the order will be Created, confirmed & TECOed (may be they add other events later on). We can make it through standard production order workflow process I think. For that I have assigned user ID to object TS0020047 & TS20000623 (agents assignment ) through TX: COWf1. In the event linkage screen I have activated with events TS20000634 & TS20000634. Still It is not triggering any work flow to the workplace of assigned user id. Where is the mistake I am not able to identify.
    Or if there is any other method to achive this? Pls suggest
    Thanks
    Edited by: BNR on Feb 16, 2010 5:34 AM

    Hi
    In CO01 > Click on Go to > Missing Parts > Missing Part list
    In Nxt Page Click on List > Send to > Mail recipient
    In the Recipient tab enter SAP user id of MRP Controller and Recipient type SAP Log on name and click on Send icon at Top left.
    SAP Mail will go to MRP Controller SAP Work place in box.
    Regards
    Brahmaji

  • What is use of work flow in master contracts

    Dear sd experts
    i know configuration of Master contracts But thing is i would like to know why We have to Configure work flow in Master contracts with Work flow consultant ?
    i have not traced any thing in the google please help me
    thanks  a lot

    Hi,
    Here is the explanation from the workflow help page.
    "Changing the master contract triggers a workflow that accesses the assigned lower level contracts and automatically copies the changes to the lower level contract. If an error occurs, a work item appears in the inbox of the person who changed the master contract, who has to process it manually. A separate window displays all the changes that have been made for information purposes."
    More info here Change Master Contract (SD-SLS-OA) - Sales and Distribution (SD) Workflow Scenarios - SAP Library
    Regards,
    Thanes

  • Work flow mails are not coming to inbox but coming to out box in quality

    Hello,
    We are working on the implementation of Work flow for Purchase orders.
    Work flow customization is completed and even work flow is triggering when ever I create Purchase Order.
    Even Agent assignment also completed for work flow tasks via T code PTFC_CHG.
    This work flow is working fine in development.
    When I moved this workflow to quality I got a problem.
    Problem here is Work flow mails are not processing out of SAP Outbox to approvers  inbox even also after executing the program RSWUWFML2.
    When I triggered the PO in development the work item is moved to SAP out box as well as inbox. In quality It is not coming to SAP inbox.
    If I check in SOST,I will not see any of the entries related to work flow mails.
    Only above I can see in my SAP Outbox.
    So how can I Process these messages to approvers SAP Inbox.
    Any body please help me where the problem is
    With regards,
    Sudhakar

    Hi SP,
    I may be wrong, but on reading ur thread, I feel u r mis interpreting SAP Outbox with Outlook.
    Is it so, because u have mentioned about RSWUWFML2 and SOST, which comes into picture only if u r using an external mail like Outlook.
    If its Outlook, then there is no doubt that ur work item would get deleted from SAP Inbox and would be present only in Outlook.
    If its SAP Outbox, then u r not supposed to get ur work item in ur Outbox unless it is processed or executed thru ur SAP Inbox.
    Hope it helps.
    Aditya
    Edited by: Aditya Varrier on May 23, 2008 1:52 PM

  • Work flow mails not processing from SAP Outbox to Approvers

    Hello,
    We are working on the implementation of Work flow for Purchase orders.
    Work flow customization is completed and even work flow is triggering when ever I create Purchase Order.
    Even Agent assignment also completed for work flow tasks via T code PTFC_CHG.
    Problem here is Work flow mails are not processing out of SAP Outbox to approvers even also after executing the program RSWUWFML2.
    If I check in SOST,I will not see any of the entries related to work flow mails.
    For eg:If I creates a Purchase order it will trigger Release Strategy and I can see the message to Approvers,like "Please Approver PO..."
    Only above I can see in my SAP Outbox.
    So how can I Process these messages to approvers SAP Inbox.
    Any Pre Setting I have to do?
    With regards,
    SPK

    Hi SP,
    I may be wrong, but on reading ur thread, I feel u r mis interpreting SAP Outbox with Outlook.
    Is it so, because u have mentioned about RSWUWFML2 and SOST, which comes into picture only if u r using an external mail like Outlook.
    If its Outlook, then there is no doubt that ur work item would get deleted from SAP Inbox and would be present only in Outlook.
    If its SAP Outbox, then u r not supposed to get ur work item in ur Outbox unless it is processed or executed thru ur SAP Inbox.
    Hope it helps.
    Aditya
    Edited by: Aditya Varrier on May 23, 2008 1:52 PM

  • Bounded-Task-Flow Page Fragment Control Flow Help

    jDeveloper: 11.1.1.0.2
    I am having an issue trying to figure out the correct way to use control flow cases between a bounded-task-flow with page fragments and an unbounded-task-flow page. We have taken the approach in our application to have a few shell / container pages to host bounded-task-flows made up of page fragments to facilitate re-usability and to speed up development. There are 4 or 5 shell pages on the applications unbounded-task-flow. As of now, we have about 20 page fragments that are implemented as bounded-task-flows. These fragments don't do much now, meaning there is only a single fragment in each bounded-task-flow. The issue I am having is trying to invoke a control flow navigation action from one of the fragments to load a different shell page.
    For Example, shellPage1.jspx contains fragment-flow-1 as a region. In my adfc-config.xml I have shellPage1.jspx and shellPage2.jspx, with control flow cases "toShell1" and "toShell2" respectively connecting the two pages. I have a link's action bound to the "toShell2" within the fragment that makes up fragment-flow-1. When the application is run, shellPage1.jspx and its fragment are displayed. But clicking on the link in the fragment ("toShell2") does absolutely nothing. It does not navigate me to the shellPage2.jspx as expected. What am I doing wrong here or do not understand?
    If the fragment is included as a JSP include, and not a bounded task flow include, everything works as expected. This is not desirable as we then need to copy the fragment's pageDef into the shellPage's pageDef to get the DataControls to function.
    If the faces-config.xml is used instead, and a JSF navigation case is used, it will also work as expected. This is not desirable because we really don't want to be mixing adcf-config and faces-config.
    So I am really stumped here.... Thanks in advance!

    Hi there:
    In your case, the adfc-config.xml has the control flow case between shell pages. And the task-flow-N.xml or your-task-flow.xml for each page fragment by default doesn't inherit control flow case from their containing shell page. In your case, in the page fragment task-flow.xml, you should add a "Parent Action" to flow to shell page2 for example. The outcome of "Parent Action" would be "toShell2" if calling from ShellPage1 page fragment.
    Is this 'Correct' or 'Helpful' for you? Please mark it as so if it does.
    Good luck,
    Alex

  • Down payment release Work flow

    Hi Experts,
    Is there any such scenario to release the down payment requests through Work flow in SAP ? If yes ,kindly provide the customization settings ? Transaction :- F-47
    Rgds
    ManiSuma

    Hi Jose,
    I have gone through the same ,but my problem hasn't solve.Kinldy explain how to proceed further.
    Rgds
    ManiSuma

  • Event linakge for PO work flow not transporting to Qualty system

    This is Sudhakar ,
    I have a problem in Event linkage for PO Release strategy work flow.
    I have created a work flow for PO release strategy and done the event linkage through SWETYPV transaction code.
    I have added a new entry in SWETYPV transaction code and tick the 'Linkage Activated' check box. I have done this in development server. When I saved it prompted for a request and I have saved this Under the request( Customize request).
    When I create the purchase Order  for the first time the work flow is getting triggered. When I run the second time its not triggering.
    If I observe the reason is 'Linkage Activated' check box  is getting unchecked  when I create the PO. If I check it again it is asking for a request again.But after next run the linkage is again deactivated.
    Can you please help why this is happening.
    I have created another request in Customize client and transported first the development client, next the customise client request. When I observe in quality system an entry is created in SWETYPV transaction code for my work flow but 'Linkage Activated' check box is not checked.
    How to transport 'Linkage Activated' check box  to quality.
    This is an urgent one. Any body please help me
    Thanks
    Sudhakar

    Hi Imthiaz,
    What you said is correct. Its throwing one error in event trace
    Feedback after error - The message is.
    The mandatory input parameters of the workflow must be set.
    I think I am missing some input parameters.
    One more queation, I had transported this already to Quality
    But the linkage activation flag is not moved.  What could be the reason.
    Thanks
    Sudhakar

  • Work Flow For Activity

    Hi All,
    I have a section called USERS as a related information in the task detail page.Every time I modify the task & click on the SEND EMAIL check box I need to send an email to all users under the USERS section mentioning that this task has been modified.
    The problem is I dont have an option to extract all the user details and their email ids. I am using the below mentioned options to create the work flow.
    Record Type : Activity
    Trigger Event : When modified Record Saved
    Workflow Condition: When SEND EMAIL is checked
    Under Actions
    For the TO EMAIL address, I am not able to extract all the email ids of the users under the USERS related info section. Any suggestions.
    Thanks
    Natraj

    Hi
    I do not think you can do it with the current functionality.
    you can send emails for activity owner, activity owner manager, activitiy account owner and activity account owner manager.
    You can not define to send it to all users, as much as I know.
    Guy

Maybe you are looking for

  • Error by exporting Captivate to Word: "Project Captions and Closed Captions"

    Hello everybody, I'm from Germany, working in Heidelberg and I've got a problem! I would so much appreciate if somebody would have a solution for it. Nobody could help me yet - no Adobe support via chat, no Adobe support via phone. They said the foru

  • How to handle the exception in AWT-EventQueue-0?

    This is my code: import javax.swing.JFrame; public class MainFrame extends JFrame {      public MainFrame(){           init();      public void init(){           setSize(100,100); import java.awt.event.ActionEvent; import java.awt.event.ActionListene

  • Cant save in adobe reader

    I can receive emails from China in Adobe Reader through my email address.  I am able to save the emails and open them later to print them.  The problem I am having is that the adobe pdf from Mexico I am unable to save emails sent to me through adobe

  • Add Horizontal Line in People Search Results Page

    Hi everyone I have a modified people search results page (SharePoint Online) where I have added a few fields to the results page.  I would like to better organize the fields by placing a horizontal line in there somewhere. For instance, I would like

  • Two JDialogs are getting open on single mouse click in MAC

    Hi ; I have a button,which opens a Jdialog on single mouse click,but if i do clicking multiple times,then multiple Jdialog are getting opened this issue is occuring in MAC only and not in windows.I have used all the methods of mouse event listener bu