Configration and work flow for machine building

Dear all experts
We are in SAP 4.7 , we are implementing SAP for our one of the group compnay.Their nature of business is machine building.
They procure material from vendor (both raw material sheets and sub assemblies) and they will give to subcontractor for converting into sub assemblies.Some times this operation will be done by inhouse production.But final assembly always done by inhouse production only.
In that scenerio they dont have a fixed bill of material , it will keep on changing based on the output of each stage.How to configure in SAP whether i can configure like discrete method or some other things.Please clarify..
Suresh

Thank you for your reply
But the issue is some times they don't know the availability.
For an example they want to produce machine outer cover with aluminium sheet.First they were decided not go for subcontracting.They deceided buy as bought outs ,so they gave the spec to the vendor and process is started.In between supplier had material crisis at that time some aluminium sheet is given to vendor on subcontract basis.
Like this they have some criticallity. In that case how to maintain BOM and how to process the purchase order to the vendor (partially subcontracting)
Suresh

Similar Messages

  • Autorization and work flow in portal for ESS & MSS

    Hi All
    How to set Autorization and work flow in portal for ESS & MSS Business package
    Regards
    Daya

    Can you be more specific to the problem.
    Regards,
    --VP

  • Approval work flow for Role based and Resource based

    Hi All,
    We have to implement approval work flow for the following things in OIM 9.1.0.1
    Approval work flow for Functional Roles (Groups in OIM) (Approvalsrequired for users to get these roles)
    IT Roles (Resources in OIM) (Approvalsrequired for users to get these resource)
    Functional Role (Group) contains policy1,polici2. Polciy1 contains res1,res2 and Policy2 contain res3,res4.I want to create approval work flow for this Functional Role to achieve the following
    User raise a request for the functional role, then it should wait to get manager approval. then once its gets approval, that user account should create on all resources which are involved in that group.
    And, I have to define approoval work flow for all individual resources to get users account creation on target with approvals. These resources may include in the groups as well.
    After getting approval for functional role (Group), then Will OIM starts the approval flow for all resources involved in the group? becase, all resources have approval workflow at resource level also.
    My Goal: Approval work flow for Group, should not process the approval work flow for resource. can we do it in OIM 9.1.0.1?
    And can we do the same in OIM 11g also?
    Please help me and do let me know, if you need any information from my end.
    Thanks.

    Thats configurable buddy ! ! And possible in 10G and 11G both versions.
    Functional Roles : These are the groups/roles in OIM 10g/11g with access policies attached at the backend.
    - Create a dummy resource and name it Request Role or anything as you like. Attach an Object Form to it and have form field for Role Name, this would be a lookup type field linked to all OIM groups (leave system values using lookup query). So a user can select any OIM Group in this request as per configuration. Have approval workflows defined on this dummy resource Request Role and in its Provisioning Process make user/s a part of the requested group.
    - Now once the user is made a part of the group, the associated access policy would be invoked automatically and thereby provisioning. The only thing you need to keep in mind is that create the access policy without approval (there is a check box). If you do this the approvals would never be invoked even if you assign a group manually to the user coz it suppresses all the approvals in this access policy.
    IT Roles : These would be linked to the resource and you can define individual approvals on the resources as required.These approvals would be required if someone raises a request for these resources individually.
    Thanks
    Sunny

  • Work Flow for Manually Disabling Account and Reporting on Disabling Account

    Hi All
    THis is my First Time To Create Work Flow for Idm Project Please Help me
    i want Work Flow for Manually Disabling Account and Reporting on Disabling Accounts
    Please Tell me How I will have to start, to create the code, I know how to configure but may be I will use BPEL or Through Netbeans and plugin I will use.
    please provide me sample code, so that I can start workflow work

    Thats configurable buddy ! ! And possible in 10G and 11G both versions.
    Functional Roles : These are the groups/roles in OIM 10g/11g with access policies attached at the backend.
    - Create a dummy resource and name it Request Role or anything as you like. Attach an Object Form to it and have form field for Role Name, this would be a lookup type field linked to all OIM groups (leave system values using lookup query). So a user can select any OIM Group in this request as per configuration. Have approval workflows defined on this dummy resource Request Role and in its Provisioning Process make user/s a part of the requested group.
    - Now once the user is made a part of the group, the associated access policy would be invoked automatically and thereby provisioning. The only thing you need to keep in mind is that create the access policy without approval (there is a check box). If you do this the approvals would never be invoked even if you assign a group manually to the user coz it suppresses all the approvals in this access policy.
    IT Roles : These would be linked to the resource and you can define individual approvals on the resources as required.These approvals would be required if someone raises a request for these resources individually.
    Thanks
    Sunny

  • Typical work flow for porting c/c++ libraries?

    I'm new to the whole Alchemy world and I'm also very rusty regarding my knowledge in C/C++ (which was never that good to begin with). This is making my experimenting with Alchemy somewhat difficult, since I don't know if the problems I have are related to me not understanding the C-compiling process or the library I'm trying to compile not even being possible to compile using the Alchemy gcc. I've managed to compile some of the samples in the Alchemy download and some "Hello world" level code of my own. But I've yet to fully understand the process of compiling an arbritary C-library to an swc. So, what I'm hoping for is for you guys that have more experience with this to give some pointers about the whole process by answering my questions below.
    1. Are there any indicators one can look for in C-libraries to determine if they can be successfully ported? (e.g. only use ANSI-C libs)
    2. What would be the typical work flow for porting a C-library after having downloaded it's source? How do you go about starting to build the C<-->AS3 interface? Do you dive into gluegen immediately, or write the glue.c by hand?
    3. When should one do ./configure; make etc. to compile a library and when does one simply use gcc alib.c...?
    4. Do you have any examples of simple C-libraries one could try to port? With simple I mean libraries that don't have any external dependencies to other libraries and have a relatively small source (say 5-10 files or something).
    Feel free to chip in with any answers you may have. And since I'm a n00b, please use idiot-speak as much as possible

    Thks for ur reply Jens.
    But still it not very much clear to me.
    Can you please throw some light in the bellow sinerio :
    Let say I want to build an sample  music player application in Linux  which will be having  following module
    1) GUI : which contain one button : say  PLAY
    2) Event handler :  for the click event of PLAY Button
    3)Plugin for playing music : code wich actually plays the music
    So GUI that is button if devolop in FLASH/FLEX
    Event handler module will be written in Action Script
    Plugin will be written in C which will use gstreamer framework APIs in turn . So these plugin API's should get called from Event Handler i.e Action Script code And here is the place where binding from FLASH to C API's is requried.
    So in the above senirio the actual execuable of the application will be nothing but swf file only.
    Can I use Alchemy as a glue  for binding FLASH & C??
    Plz correct me if I am worng.
    Please share ur thoughts ...
    Thanks in Advance
    Kapil

  • Triggering a sub work flow for multiple users at same time.

    I have a scenario in which I have created sub workflow as an activity for approval process. This sub work flow should be triggered for multiple users at the same time and their decison is independent of each other.
    This is like creating multipe instance of the same sub work flow and then the sub work flow runs indepedently as a new work flow for each of the approver and the process is completeded for approver independently.
    How can this be achieved?

    Tyr to do like this,
    1. First include the subworkflow in the main workflow template.
    2. Now include standard Block Step in the main workflow template.
    3. In the block select the block type as ParForEach.
    4. Before doing the 3rd point make sure that all the agents for whom you want whom you want to initiate the workflow, populate them in a Multiline conatiner element.
    5. Once completing 3rd and 4th points open the block step under the tab ParallelProcessing  assign the multiline container element name in the   for e;g if the multi line container element name is COSTCENTER then do the binding like below. the conatiner element COSTCENTERLINE is created by default once you include the multi line conatiner element under parller processing tab.
    &COSTCENTER[&_WF_PARFOREACH_INDEX&]&   -------->     &_COSTCENTER_LINE&
    Now assign the agent of the subworkflow as COSTCENTERLINE , imean if suppose you have 3 entries in the internal table then three separate and for three different agents the workflow is instantiated.

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

  • Regarding work flow for credit block release in sales order

    Dear Experts,
    Kindly help me with work flow-
    my scenario is if customers credit limit of 5000$ exceeds in sales order it should be blocked and notification should go to authorize person through simple mail to release this block.
    for this i have done settings in out control i have used output type krml and determined partner as employee responsible to release block in customer master but mail is not triggered to authorized person for credit block and how i can create work flow for this so that authorized person should get notify for credit block as well he releases block also.
    Regards
    Supriya

    Dear supriyaparimal,
    Please find the below points to fix your issue.
    1. Configure the out put determination by using the condition type KRML.(Hope oyu have done it already).
    2.Maintain the condition records in VV11 for condition type "KRML"
    3.Then select the condition record and click the communication tab .
    4. If you want to give any information you can use "Note for recipient".
    5. If the information has to be sent to relevant person you recipient name in the recipient column.
    Save the documnet.
    If you raise the sales order and if it is blocked then system automatically send the information to respective person.
    You can get this in formation in ""SBWP" transaction code.
    Check the in box, the information what you have mentioned in the condition records will be appeared.
    Please let me know if you have any clarifications
    Thanks&Regards
    raghu.k

  • Using work-flow for payment release

    Dear Experts
    I have a problem when using work-flow for payment release:
    I am using ws00400012 as standard work-flow for payment release ,after posting invoice documents via FB60 BSEG is crated but BKPFID dose not exist in container .
    when I test this work-flow it is running correctly via SWUS.
    It would be very helpful if someone can help me with this problem.
    Thanks and best regards,
    Azam

    http://help.sap.com/saphelp_46c/helpdata/en/6e/1217de9f0411d189b80000e829fbbd/frameset.htm
    Goto Accounts Payable (FI-AP) and in that "Vendor Down Payment Processing".
    Check out the link for workflow scenarios.. http://help.sap.com/erp2005_ehp_03/helpdata/EN/04/926f8546f311d189470000e829fbbd/frameset.htm
    Goto "Archiving Application Data (FI)" and check if your scenario exists or not !!!
    Regards,
    PR.

  • Work flow for release of PO

    HI,
    I am doing customization settings for work flow for release of PO (Task customizing over view).
    If the PO created Auto mail should go to the releaser.
    I configured as below.
    1)     I assigned Agent in Task customizing over view.
    2)     If I go to activate event linking >>work flow for release of PO it is deactivated.
    If I activate manually after creating PO it will be deactivated.
    Pls Help on this.

    In event linkages , tick 'Linkage activate' and in 'Behavior Upon Error Feedback' select value as 3 (Do not change linkage'.

  • Re: Work flow for resource / work center in MEINT

    Hello Experts,
    We are working on SAP ME 15.0 recently installed. We are trying to send the work center from ECC to ME. In MEINT we see only the following work flow for work center / resource:
    As can  be seen, LOIWCS02 is not there. When we sent work center (category 9100) with LOIWCS02 IDoc type, it failed in MEINT. But when we sent work center from ECC (category 9100) using IDoc type 9100, it was processed successfully in MEINT but it created work center in ME.
    The other component LOIWCS02_ME_RES or LOIWCS02_ME_WC is not getting called. What is the possible reason and resolution?
    Would be thankful for any feedback on this.
    Thanks in advance
    Srinivas

    Hello Alexander,
    Thanks for the quick reply.
    As per the help document, the work center category 9100 is supposed to create a Resource in SAP ME but it ends up creating work center in ME.
    If you see the screen shot I had put in my query, I see that there are three work flows - one for LOIWCS03 and the other two for LOIWCS02_RES and LOIWCS02_RES. Would this make any difference since I would expect that the work flow for RES and WC should also be in line with LOIWCS03?
    I will be asking my tech team to raise a support incident for this. Meanwhile I would appreciate your reply on this.
    Thanks
    Srinivas

  • Work flow for Goods issue MIGO_GI

    Hi friends,
    I want to develop a work flow for good issue MIGO_GI  transaction.  Is there any standard work flow this scenario.
    When I deliver the 4 materials, the Material cost is 100*4 = 400, if the Material cost is greatr than 500, mail should trigger to the manager, if it less it will go to the first approver.
    please advice me in this.,
    regards,
    Ajay

    I think no stanadard workflow will provide you with such a validation, Better to design your own customized workflow template,
    Follow the below steps.
    1. Open PFTC select the task type workflow template
    2. Click F5 and define the relevant fields and make the agent assignemnt for the workflow template as general task from the menu  addtional agent  ---> agent assginement  --> maintain --> general task.
    3.  Check the BOR BUS2017 this might be useful.
    Check the method GoodsMovement.SAPCreate and its parameters  interface, if you can get the total values of the then include a condition and validate th total cost if is satrisfyies send mail and workitem to approver, if it does not satisfy then send only workitem to approver.
    Check the below BADI's
    MB_BAPI_GOODSMVT_CREATE        MB_GOODSMOVEMENT
    MB_BATCH_MASTER                MB_GOODSMOVEMENT
    MB_DOCUMENT_BADI               MB_GOODSMOVEMENT
    from where you can trigger your customized workflow by using the standard fm SAP_WAPI_CREATE_EVENT or SAP_WAPI_START_WORKFLOW*

  • Work Flow for Purchase Order

    Dear All,
    How to create Business Work Flow for Purchase Order Creation and it’s release process.
    I want to create purchase order and forward for release process. I want to done all this process through Work Flow.
    So can anybody guide me step-by-step guidance for Purchase order creates & release process through “SWDD”?
    Regards,
    Mahesh Wagh

    Hi Mahesh,
    See this link. It might help you.
    [https://wiki.sdn.sap.com/wiki/display/ERPSCM/RELEASE%20PROCEDURE#RELEASEPROCEDURE-RELEASEPROCEDURE]
    Thanks&Regards,
    Manjula.S

  • Work flow for Rejections in Quality- Usage decision

    Dear all
    We are in the process of activating work flow for Quality Inspection, During Usage decision there may be rejections for which we need to trigger a mail to the Internal department , stating the Remarks, description, rejected quantity etc ,
    If any one has come across the same scenario kindly help us so as to implement the same in our organization.
    Regards
    Rahul Bhat

    Hi,
    You can do any of the following according to you Requirement.
    1) Below the Rejection Branch using the Send mail you can send the mail to Respective person.
    2) Other wise using the Function Module you can send the mail, refer this l[ink|https://wiki.sdn.sap.com/wiki/x/nYKdAw ].
    3) Else place this Std. Task TS20000139 and provide the necessary binding below the Rejection branch a popup will open and the user can enter the comments and it will go to the Person whom you want.
    Try any of this according to you requirement.
    Regards,
    Surjith Kumar

  • Trigger Work Flow for payment release

    hi guys,
    kindly help me how to trigger the standard work flow for Payment release ((WS00400012).
    With Regards
    Pradeep N

    enter the Workflow
    in SWDD : WS00400012
    click on Agent Assignment and assign the Approver USer ID.
    click on the event linkage and activate and save.

Maybe you are looking for

  • Code to set and destroy session variables in Java Server Pages(JSP)

    code to set and destroy session variables in Java Server Pages(JSP) we have use following statement to set session variable session.setAttribute("userClient",id); we have use following statement to destroy session variable session.setAttribute("userC

  • How do I turn my video settings on to play a movie on the tv?

    I have a red, yellow, white adaptor to connect my iPad to the tv to play movies. The directions say to turn the video output to "on" to be able to play the video on the television. When I go to video settings this is not an option. Does anyone know h

  • Path  signing .jar files  in configuring webutil

    In the first section of the sign_webutil.bat file there are some remarks such as : 'NAME REM sign_webutil.bat - Sample script to sign frmwebutil.jar and jacob.jar REM USAGE REM sign_webutil.bat <jar_file> REM jar_file : Path of the jar file to be sig

  • Quiz slides

    Hi, I'm having a bit of trouble using the quiz slides. For example, I've tried a very simple Yes/No slide and it appears in edit mode with 'Correct, click anywhere to continue', 'Incorrect...', 'You must answer the question..." and a review area. Des

  • Yosemite menu bar blinking/freezing

    Since updating to Yosemite, the menu bar on the right side has not functioned well. The elements on that side (wireless icon, sound, time, name, spotlight) blink on and off. It is incredibly distracting while I'm trying to work. A new thing happened