Changing delivered class/function module.

Hello All,
Can I change delivered ABAP class "CL_HRMSS_RECRUITING_WF" (add functionality to a method "CREATENBOBJECT"). Also can I change a delivered function module "HRWPC_EREC_CREATE_EREC_OBJECT" .
My original problem.
I am trying to pass the my object (with few attributes read from tables) using CREATENBOBJECT as a parameter to the function module "HRWPC_EREC_CREATE_EREC_OBJECT" (CREATENBOBJECT calls HRWPC_EREC_CREATE_EREC_OBJECT).
The "CREATENBOBJECT" is called as an activity in the workflow (personnel requisition workflow).
Kind regards.
Srinivas

Hi Srinivas,
Using SE24 to copy CL_HRMSS_RECRUITING_WF  to say  Z_CL_HRMSS_RECRUITING_WF
Copy Class:
Path:
1> Goto SE24
2> Type in CL_HRMSS_RECRUITING_WF  in screen field  Object Type
Menu path
3> Object Type/More Functions/Copy. Here you mention your class name (ex: Z_CL_HRMSS_RECRUITING_WF)
Copy FM:
Path
1> SE37
2> Type in HRWPC_EREC_CREATE_EREC_OBJECT in screen field 'Function Module'
Menu Path
3> Goto Function Module/ Other Functions /Copy. TYpe in your FM say Z_HRWPC_EREC_CREATE_EREC_OBJECT
I hope this solves your problem of copying. Herewith make your changes with these new objects.
Please reward points if it has satisfied your requirement.
AKJ

Similar Messages

  • How to make copies of delivered class/function module.

    Hello All,
    Can anybody tell me how/where should I go, to make copies of delivered class "CL_HRMSS_RECRUITING_WF" and the function module "HRWPC_EREC_CREATE_EREC_OBJECT".
    Also if I am renaming with Z<my-class-name>, and using the method "CREATENBOBJECT" in my renamed class, will there be a problem with naming conflicts as "CL_HRMSS_RECRUITING_WF" already has the same method "CREATENBOBJECT".
    Kind Regards
    Srinivas.

    hi Srinivas,
    Can you tell me how I should create a package:
    <i>Ans:
    1-> GOTO transaction <b>SE80</b>
    2->Choose <b>Package</b> from the first drop down box
    3->enter a name starting with Z or Y, press ENTER
    4-> you will be prompted for confirmation to create a PACKAGE..Click YES..</i>
    Thats it.. package is created...
    <b>
    now go to attributes of each objects,  which you had created as local, and change the package name from $TMP to the name of the package that you have created...you will be prompted for Transport request..create a request by clicking on the create button...save...</b>
    Hope this helps,
    Sajan Joseph.

  • Changing option in function module

    sir,
      plz explain the role or importance of changing option in function module SE37

    hi check this example it had the usage of the changing option..
    here the using will input the value to the perform and do some prosses and output some value..
    PERNR               TYPE P0001-PERNR                           Personnel Number                  
    PLANS               TYPE P0001-PLANS                           Position                          
    ORGEH               TYPE P0001-ORGEH                           Organizational Unit               
    DATE                TYPE SY-DATUM       SY-DATUM               Date and time, current (applic    
    PLVAR               TYPE PLOG-PLVAR     '01'                   Plan Version                      
    ISTAT               TYPE PLOG-ISTAT     '1'                    Planning Status                   
    MANAGER     TYPE     ZHMSS_MANAGER     Structure for manager for MSS
    NO_PERNR_PLANS_ORGEH_SPEC     No pernr, position or org unit specified
    NO_EXIST_PLANS                Position does not exist                 
    INVALID_PLANS                 Position invalid                        
    NO_EXIST_ORGEH                Org unit does not exist                 
    NO_EXIST_PERNR                Personnel number does not exist         
    function z_get_orgunit_manager_info.
    ""Local interface:
    *"  IMPORTING
    *"     REFERENCE(PERNR) TYPE  P0001-PERNR OPTIONAL
    *"     REFERENCE(PLANS) TYPE  P0001-PLANS OPTIONAL
    *"     REFERENCE(ORGEH) TYPE  P0001-ORGEH OPTIONAL
    *"     REFERENCE(DATE) TYPE  SY-DATUM DEFAULT SY-DATUM
    *"     REFERENCE(PLVAR) TYPE  PLOG-PLVAR DEFAULT '01'
    *"     REFERENCE(ISTAT) TYPE  PLOG-ISTAT DEFAULT '1'
    *"  EXPORTING
    *"     REFERENCE(MANAGER) TYPE  ZHMSS_MANAGER
    *"  EXCEPTIONS
    *"      NO_PERNR_PLANS_ORGEH_SPEC
    *"      NO_EXIST_PLANS
    *"      INVALID_PLANS
    *"      NO_EXIST_ORGEH
    *"      NO_EXIST_PERNR
      if pernr is initial and
         plans is initial and
         orgeh is initial.
        raise no_pernr_plans_orgeh_spec.
      endif."pernr is initial and
      if not pernr is initial.
        if pernr cn '0123456789'.
          exit.
        endif.
    *-- See if pernr exists
        call function 'P_EMPLOYEE_CHECKEXISTENCE'
             exporting
                  object_id          = pernr
                  date               = date
             exceptions
                  employee_not_found = 01.
        if sy-subrc ne 0.
          raise no_exist_pernr.
          exit.
        endif.
    *-- Obtain pernr position
        call function 'HR_READ_INFOTYPE'
             exporting
                  pernr           = pernr
                  infty           = c_infty_0001
                  begda           = date
                  endda           = date
             importing
                  subrc           = g_retcd
             tables
                  infty_tab       = i0001
             exceptions
                  infty_not_found = 01
                  others          = 02.
        if sy-subrc eq 0.
          describe table i0001 lines g_lines.
          if g_lines > 0.
            read table i0001 index 1.
    *-- Got position now find org unit
            perform zf_proc_get_om_objects tables i_objects
                                           using c_otype_position
                                                 i0001-plans
                                                 plvar
                                                 c_rsign_a
                                                 c_relat_003
                                                 istat
                                                 date
                                                 date
                                                 c_otype_orgunit
                                        changing g_retcd.
            if g_retcd eq 0.
              read table i_objects index 1.
              g_orgeh = i_objects-sobid(8).
            endif. "g_retcd eq 0.
          endif. "g_lines > 0. for i0001
        endif.  "sy-subrc eq 0 hr_read_infotype
      elseif not plans is initial.
        if plans co '9' or
           plans co '0'.
          raise invalid_plans.
          exit.
        endif.
        call function 'RH_READ_OBJECT'
             exporting
                  plvar     = plvar
                  otype     = c_otype_position
                  objid     = plans
                  istat     = istat
                  begda     = date
                  endda     = date
                  langu     = sy-langu
             exceptions
                  not_found = 1
                  others    = 2.
        if sy-subrc <> 0.
          raise no_exist_plans.
          exit.
        endif.
    *-- Find org unit
        perform zf_proc_get_om_objects tables i_objects
                                       using c_otype_position
                                             plans
                                             plvar
                                             c_rsign_a
                                             c_relat_003
                                             istat
                                             date
                                             date
                                             c_otype_orgunit
                                    changing g_retcd.
        if g_retcd eq 0.
          read table i_objects index 1.
          g_orgeh = i_objects-sobid(8).
        endif."g_retcd eq 0.
      elseif not orgeh is initial.
        call function 'RH_READ_OBJECT'
             exporting
                  plvar     = plvar
                  otype     = c_otype_orgunit
                  objid     = orgeh
                  istat     = istat
                  begda     = date
                  endda     = date
                  langu     = sy-langu
                  CHECK_STRU_AUTH   = space              "ASikaria, 10/15
             exceptions
                  not_found = 1
                  others    = 2.
        if sy-subrc <> 0.
          raise no_exist_orgeh.
          exit.
        endif.
        g_orgeh = orgeh.
      endif. "not pernr is initial.
      if not g_orgeh is initial.
        manager-orgeh = g_orgeh.
    *-- Got org unit now find manager
        perform zf_proc_get_om_objects tables i_objects
                                       using c_otype_orgunit
                                             manager-orgeh
                                             plvar
                                             c_rsign_b
                                             c_relat_012
                                             istat
                                             date
                                             date
                                             c_otype_position
                                    changing g_retcd.
        if g_retcd eq 0.
          read table i_objects index 1.
          if sy-subrc eq 0.
            manager-plans = i_objects-sobid.
            call function 'Z_GET_POSITION_HOLDER'
                 exporting
                      plans              = manager-plans
                      plvar              = plvar
                      istat              = istat
                      date               = date
                 importing
                      pernr              = manager-pernr
                 exceptions
                      position_not_exist = 1
                      position_invalid   = 2
                      others             = 3.
            if sy-subrc <> 0.
              clear: manager-pernr.
            endif.
            if not manager-pernr is initial.
    *- BOC RTDK902962
    *-- Obtained formatted name
              clear: i0001.
              refresh: i0001.
              call function 'HR_READ_INFOTYPE'
                   exporting
                        pernr           = manager-pernr
                        infty           = c_infty_0001
                        begda           = date
                        endda           = date
                   importing
                        subrc           = g_retcd
                   tables
                        infty_tab       = i0001
                   exceptions
                        infty_not_found = 1
                        others          = 2.
              if sy-subrc eq 0.
                read table i0001 index 1.
                if sy-subrc eq 0.
                  manager-ename = i0001-ename.
                endif.
              endif.
    *- EOC RTDK902962
    *-- Obtain pernr information
    *- Get 0002 data
              clear: i0002.
              refresh: i0002.
              call function 'HR_READ_INFOTYPE'
                   exporting
                        pernr           = manager-pernr
                        infty           = c_infty_0002
                        begda           = date
                        endda           = date
                   importing
                        subrc           = g_retcd
                   tables
                        infty_tab       = i0002
                   exceptions
                        infty_not_found = 1
                        others          = 2.
              if sy-subrc eq 0.
                read table i0002 index 1.
                if sy-subrc eq 0.
                  manager-inits = i0002-inits.
                  manager-vorna = i0002-vorna.
                  manager-nachn = i0002-nachn.
                  manager-midnm = i0002-midnm.
                endif.
              endif.
    *- Get 0105 data
              clear: i0105.
              refresh: i0105.
              call function 'HR_READ_INFOTYPE'
                   exporting
                        pernr           = manager-pernr
                        infty           = c_infty_0105
                        begda           = date
                        endda           = date
                   importing
                        subrc           = g_retcd
                   tables
                        infty_tab       = i0105
                   exceptions
                        infty_not_found = 1
                        others          = 2.
              if sy-subrc eq 0.
                describe table i0105 lines g_lines.
                if g_lines > 0.
    *- SAP usrid
                  loop at i0105 where subty = c_0105_usrid_subty.
                    manager-usrid = i0105-usrid.
                  endloop.
    *- Email address
    *// not sure where email is going to be stored but assume it is subtype
    *// 0010
                  loop at i0105 where subty = c_0105_email_subty.
                    manager-email = i0105-usrid_long.
                  endloop.
                endif. "g_lines > 0
              endif."sy-subrc eq 0.
            endif. "not manager-pernr is initial.
          endif. "sy-subrc eq 0.
        endif."g_retcd eq 0.
      endif. "not g_orgeh is initial.
    endfunction.
    zposition holder
    PLANS     TYPE     PLOG-OBJID                               Object ID
    PLVAR     TYPE     PLOG-PLVAR     '01'     Plan Version
    ISTAT     TYPE     PLOG-ISTAT     '1'     Planning Status
    DATE     TYPE     SY-DATUM     SY-DATUM     Date and time, current (application server) date
    PERNR               TYPE      P0001-PERNR                 Personnel Number                
    POSITION_NOT_EXIST            Position does not exist                 
    POSITION_INVALID              Invalid position                        
    function z_get_position_holder.
    ""Local interface:
    *"  IMPORTING
    *"     REFERENCE(PLANS) TYPE  PLOG-OBJID
    *"     REFERENCE(PLVAR) TYPE  PLOG-PLVAR DEFAULT '01'
    *"     REFERENCE(ISTAT) TYPE  PLOG-ISTAT DEFAULT '1'
    *"     REFERENCE(DATE) TYPE  SY-DATUM DEFAULT SY-DATUM
    *"  EXPORTING
    *"     REFERENCE(PERNR) TYPE  P0001-PERNR
    *"  EXCEPTIONS
    *"      POSITION_NOT_EXIST
    *"      POSITION_INVALID
      if plans cn '0123456789'.
        raise position_invalid.
      endif."plans cn '0123456789'.
      if plans co '9'.  "default position
        exit.
      endif.
      call function 'RH_READ_OBJECT'
           exporting
                plvar     = plvar
                otype     = c_otype_position
                objid     = plans
                begda     = date
                endda     = date
           exceptions
                not_found = 01
                others    = 02.
      if sy-subrc ne 0.
        raise position_not_exist.
      else.
        perform zf_proc_get_om_objects tables i_objects
                                       using c_otype_position
                                             plans
                                             plvar
                                             c_rsign_a
                                             c_relat_008
                                             istat
                                             date
                                             date
                                             c_otype_pernr
                                    changing g_retcd.
        if g_retcd eq 0.
          sort i_objects by begda descending. "get earliest rec
          read table i_objects index 1.
          if sy-subrc eq 0.
            pernr = i_objects-sobid(8).
          endif.
        endif. "g_retcd eq 0.
      endif. "sy-subrc ne 0.
    endfunction.
    regards,
    venkat

  • Need of Changing Parameters in Function Module

    Hi All,
    Why we need sepearte Import and Export parameters in Function Module if the Changing Parameters
    acts as both import and export parameters.
    What is the use of using Changing Parametrs in Function Module.
    Thanks in advance.
    Sundaresan

    Hi,
    EXPORT PARAMETERS: When u r passing some value to the function, and the parameter will not be changed in the function, we use export parameter. Example: u pass parameter (a : 10) to a function, even after the function has been executed, value of a will be 10 only.
    IMPORT PARAMETER: When u require some value back from the function. u do not provide any initial value to the function. Example : u pass a parameter (b: <blank>) to the function, function returns the same import parameter as (b : 20).
    CHANGING PARAMETER: When u pass some value to the function and that function may change that value inside function, then changing parameters are used. Example: u pass parameter ( c: 30) to the function as changing parameter and function modifies this variable and return ( c: 50).
    Reward points if helpful.
    Thanks & Regards
    - Rishika Bawa

  • Need to change the way Function module exit is called.

    Dear Abaper,
                      I want to know wheather is it possible to change the way a function module exit is called.In transaction IK11 i am using enhancement imrc0001 this function module is called only when clicking the save button. My requirement will be met only when desired result is obtained while clicking ENTER button.Now the desired result are obtained by Clicking SAVE button. As a result only after saving i am able to view. Is there any way to change by clicking Enter button itself we can call the IMRC0001 enhancement. Please guide me.
    Thanks  and regards,
    Omprasath

    Hi,
    Each action in the screen have some FCODE(SY-UCOMM) in that exit u can add code when the particular button is clicked then run it or else no need to run.
    For Example SAVE has user command as SAV+(SY-UCOMM)
    u can restrict it as.
    IF SY-UCOMM = 'SAVE+'.
    Run ur code.
    Endif.

  • Role of Changing & Tables in Functional Module Tab

    Hi, Experts of Abap
    Please tell me how Changing Tab & Tables Tab help us
    IN ABAP DEVELOPMENT
    thanks
    Rajeev

    Well, it sounds to me that these parameters are self explaining, but let me give a try anyway.
    Changing: You can use this parameter to import some data into your functionmodule, change it and send it back to the caller. This way you don't need an import and export parameter.
    Tables: In the early days, you could only transfer tabular data into a function module using the TABLES parameter. So instead of transferring (import and/or export) one record, you can now pass several records to the function module.
    BTW: You could als use the F1 help for this, search on help.sap.com, or search SCN first, before even thinking about posting a standard question like this.

  • How to defined/change assigned MW function module in CRMSUBTAB-MOD_NAME

    Hi,
    I need to find the place, where I can configure the field values of MOD_NAME in CRMSUBTAB. I am unable to find anything in R3AS3 for "CPB_STOCK_INFO". There is a function module "CRS_CP_STOCK_EXTRACT" assigned via CRMSUBTAB, which I have to replace by my own function module.
    The values are actually stored in ERP, but as I saw in Program SAPLSMOFCUST (Include LSMOFCUSTFOU), it gets written down by CRM. I don't know how to locate the transaction code, which is using this program otherwise I would have solved my issue :o)
    Thanks for any help!
    Regards,
    Andreas

    I just found the solution! It was just not so obviously as the default function was not displayed. I have opend R3AS3 in CRM, selected "CPB_STOCK_INFO", went to the detail screen in edit mode and opened the popup behind the button of object class. The popup offers you a empty field and allows you to overwrite the SAP default module in the ERP table.
    Regards,
    Andreas

  • Chang Include by function module

    Hi,
    Is there any function modules to change an existing 'Include' 'File' in ABAP?  I am seeking  for the way to control the function pool or abap programm totally by programming.
    Thanks !

    <b>No</b>, this is not support by SAP. You need to manually change the include.

  • Change the standard function module

    The standard function module FI_DUPLICATE_INVOICE_CHECK will check whether an invoice/credit memo has already been posted where all of the following attributes match: Company code, vendor, currency, document date, reference number (If a reference number was entered in the current invoice/credit memo). If no reference number was entered in the current invoice/credit memo the system checks whether an invoice/credit memo has already been posted where all of the following attributes match: Company code, vendor, currency, document date, amount in document currency
    my requirement is
    The above functionality described in the short description doesn’t provide for the need within AP to check on duplicate invoices. The functionality in FI differs from the functionaltiy provided in LIV and therefor needs to be aligned. The risk of posting duplicate invoice entry is eminent since the check is dependent on all parameters. For a good duplicate invoice number check we need FI to check on Vendor and invoice reference within the same fiscal year. To modify rules, copy FI_DUPLICATE_INVOICE_CHECK, modify the checks and then call the copied function module from FB60. The remaining field check in the standard function module should be deleted.
    how  to achive this. i didn't understand the requirement .Please give me any suggestion for this.

    Hi ,
    I think what you are saying is the functionality given in Logistics Invoice verification is not suitable for FI Invoice.
    If I am correct , then there is a configuration setting in SPRO where you set check for duplicate invoice. It has just three checkboxes
    a) Company code b) Reference number c) Invoice date
    so I think this configuration setting will suffice your requirement.
    Please let me know.
    Amit

  • Changes In Function Module

    Hello abap Gurus,
    My Zdevelopment reports shows the runtime errors due to
    changes in this function module :-
    ZCFM_HIDE_INITIALFIELD_ALV
    So anybody pls. suggest me what i can do for this.I m attaching the coding also.
    FUNCTION ZCFM_HIDE_INITIALFIELD_ALV.
    ""Local Interface:
    *"  IMPORTING
    *"     REFERENCE(STRUC)
    *"     REFERENCE(FIELDCAT) TYPE  SLIS_T_FIELDCAT_ALV
    *"     REFERENCE(HIDE) OPTIONAL
    *"  EXPORTING
    *"     REFERENCE(FIELDCAT_E) TYPE  SLIS_T_FIELDCAT_ALV
    *"  TABLES
    *"      IT_TAB
    *"      IT_TAB1
    DATA S_FIELDCAT TYPE SLIS_FIELDCAT_ALV.
    FIELD-SYMBOLS <F1>.
    FIELD-SYMBOLS <F2>.
    DATA FIELDNAME(30).
    DATA VALUE(100).
    DATA : BEGIN OF DISPLAY OCCURS 0,
    FIELDNAME LIKE DD03L-FIELDNAME,
    END OF DISPLAY.
    LOOP AT IT_TAB.
    DO .
    READ TABLE FIELDCAT INDEX SY-INDEX
    INTO S_FIELDCAT.
    IF SY-SUBRC NE 0.
    EXIT.
    ENDIF.
    ASSIGN SY-INDEX OF STRUCTURE IT_TAB1 TO <F1>.
    CONCATENATE 'IT_TAB-' S_FIELDCAT-FIELDNAME INTO
    FIELDNAME.
    ASSIGN (FIELDNAME) TO <F1>.
    IF NOT <F1> IS INITIAL.
    DISPLAY-FIELDNAME = S_FIELDCAT-FIELDNAME.
    COLLECT DISPLAY.
    ENDIF.
    ENDDO.
    ENDLOOP.
    FIELDCAT_E = FIELDCAT.
    LOOP AT FIELDCAT_E INTO S_FIELDCAT .
    READ TABLE DISPLAY WITH KEY FIELDNAME = S_FIELDCAT-FIELDNAME.
    IF SY-SUBRC NE 0.
    IF HIDE IS INITIAL.
    DELETE FIELDCAT_E.
    ELSE.
    S_FIELDCAT-NO_OUT = 'X'.
    CLEAR S_FIELDCAT-KEY .
    MODIFY FIELDCAT_E FROM S_FIELDCAT TRANSPORTING NO_OUT
    KEY.
    ENDIF.
    ENDIF.
    ENDLOOP.
    endfunction.

    This is all about the runtime error :-
    Incorrect parameter with CALL FUNCTION
    Error analysis :-
        An exception occurred that is explained in detail below.
        The exception, which is assigned to class 'CX_SY_DYN_CALL_PARAM_MISSING', was
         not caught in
        procedure "HIDE_FIELDS" "(FORM)", nor was it propagated by a RAISING clause.
        Since the caller of the procedure could not have anticipated that the
        exception would occur, the current program is terminated.
        The reason for the exception is:
        When calling the function module "ZCFM_HIDE_INITIALFIELD_ALV", one of the
         parameters
        needed according to the interface description was not specified.
        This parameter was "IT_TAB1".
    I am not changing the function module, my couligue has change this he leave it & he doesn't tel to me. So pls. give some sol. to me.
    Thanks,
    Sumit.

  • "Changing" parameter and "Tables" parameter defintions in function module

    If one defines "Changing" or "tables" parameters, they are treated as reference parameters.
    It becomes obvious for "tables" parameters where one does not have option to check box for "Pass by Value". But for "Changing" parameters, they provide the checkbox for "Pass by Value". Even when you select this option, the function module seems to handle the parameter as a reference parameter (whatever changes you make to it in the function module are retained when you return back to a calling program).
    My question is why then SAP has provided the checkbox of "Pass by Value" for "Changing" parameter?
    Thanks.
    Jitendra Mehta

    Hi Chaiphon:
    Thanks for explanation but I know the theory of "Pass by reference" versus "Pass by Value".
    Let me rephrase my question.
    When I use the importing parameter (say as a table with a dictionary table type) with reference (not "passing by value"), and if I modify the value of the parameter, the calling program (which calls function module) receives the changed value after the call.
    When I use the importing parameter with "Pass by Value" box checked, the modifications made to the table inside the function module is not retained after the code leaves function module and returns to the calling program.
    My question is why not the same behaviour with the "Changing parameter" in function module definition?
    And if Changing parameters are always reference parameters, then why SAP has provided the "Pass by Value" check box?

  • Changing function group of function module

    Hi
    I assigned my function module to function group of different person, which has been transported to quality server. Now whenever I make some changes in my function module, it creates problem to his application.
    As it has been released, system is not allowing me to change the function group of my function module. is there any way out so that I can assign my function module to my own function group.
    Regards
    Vishal Kapoor

    Vishal,
    if your application is different from the other users application, then you better remove it from the Function group. Create new one and make a copy of it. and then Proceed. Make sure you activated the existing fucntion group. Activate the main program properly.
    Regards
    Vijay

  • Is it possible to change function module?

    Hi ABAPER's
       Once we activate smart form we will get one system generated fuction module.
    my question ? Is it possible to make changes in that function module.
    Thanks & Regards
    sathsih

    Hi,
    You cannot do directly in the FM, if you want you can modify the smartform. Automatically you will have the changes.
    Thanks,
    Sriram POnna.

  • Changing IDOC function module?

    Hello everyone!
    I would like to make changes to the function module responsible for creating Sales Order Idocs: IDOC_INPUT_ORDERS. How should I go about this procedure? Do I need to copy the existing function module and create a new one? If so, how do I point the IDOC (ORDERS05) to the new function module (for example, ZIDOC_INPUT_ORDERS).
    Thanks in advance!
    Warm regards,
    Glenn

    > I would like to make changes to the function module responsible for creating Sales
    > Order Idocs: IDOC_INPUT_ORDERS. How should I go about this procedure?
    > Do I need to copy the existing function module and create a new one?
    (1)This is one possible solution, another one is to use some (2)customer function exits for inbound Idoc – these enhancements might be useful: MM06E001, VEDA0001or (depending on platform you are) you might go for e.g. (3)“Implicit enhancement”. In last two cases you probably don’t need to create Z-FM and Z-process code.
    > If so, how do I point the IDOC (ORDERS05) to the new function module (for
    > example, ZIDOC_INPUT_ORDERS).
    1) Copy FM to ZFM
    2) Specify characteristic of FM – BD51
    3) Create Z-inbound process code: WE42 and assign a Z-FM to it.
    4) Assign FM to message type – WE57
    >If you have any other information on how to properly edit the IDOC function
    > module (for example, adding ABAP checking codes before populating the IDOC
    > fields) it would be great if you could share them!
    To add some checks at the beginning you might use all three possible solutions:
    (1) in ZFM you might add you code at the very beginning and return some error message
    (2) you might use on of the available customer function exits to do some checks
    (3) you can do the implicit enhancement and also return some error code at the very beginning of standard FM
    In both cases I recommend to go for approach no (2). Useful tcodes: CMOD and SMOD.
    Regards,
    Jakub

  • Function Module RSDRI_DATA_WRAP_V

    BI Experts,
    As part of BI 7.0 SAP has delivered a Function Module 'RSDRI_DATA_WRAP_V' which is basically called by the Function Module 'RSDRI_INFOPROV_READ_RFC'. In our particular case we are exposing FM ' RSDRI_INFOPROV_READ_RFC' as a web service. Using this method we are extracting data in the form of a single array, Which mean to say that if we request for 20,000 rows and 4 fields from a info provider (DSO/Cube) the length of the array would be 20,000 X 4 = 80,000
    In the function module 'RSDRI_DATA_WRAP_V' there is a limit hard coded (Line 57) to 100,000. This is way to low for our application needs. We checked if there are any enhancement points in this FM so that if we change it, we are still within the enhancement  framework. Unfortunately that is not possible.
    We need to know from  why is there a limit of only 100,000 in this function module. However as a feedback, we changed this value to 4,000,000 in our Sandbox and and we did not see any performance impact.
    Has anyone encountered this yet. Any feedback will be very helpful. Thanks Community!
    Regards
    Yashu Raj

    Hi Yashu,
    There is a default SAP guideline that stipulates data packets should be no more than 100,000 lines.
    This should coincide with the internal table space memory that Basis sets. There is a rough calculation that SAP has published to work out the best data packet size optimized for loading.
    I would recommend that you play around with your data packet sizes, I would not recommend increasing the max lines as this will cause other issues. Your Basis contact should be able to provide more insight as to why this is. Below I have done a small outline of how this is done.
    You need to know the structure width (ABAP length) you can get this via SE11, view DataSource as a data type, not a data base table. Then under extras look at the Structure width/ABAP length.
    In our case say the width is 250
    Max lines at highest its setting is 100,000 lines (SAP recommended) this setting can be changed via the Scheduler menu DataS. Default Data Transfer max is 20,000 lines unless you maintain table ROOSPRMS
    Then you need an idea of the number of records to be transferred say 10,000,000
    The calculation of “Number of records per Data Packet” would be
    (Max Lines/Structure Width x 1,000)
    The calculation of “Total Number of Data Packets” would be
    (Number of Records/Number of records per Data Packet)
    So in my example the calc would be
    (100,000/250) x 1,000 = 400,000 records per data packet
    And the number of packets would be
    (10,000,000/400,000) = 25 data packets
    So in summary decrease your packet size and as a result the number of packets will increase but your information will pass through the function module
    Have a look at these links as well
    http://help.sap.com/saphelp_sem40bw/helpdata/EN/b8/5b723b9b4f8f7de10000000a114084/frameset.htm
    http://help.sap.com/saphelp_sem40bw/helpdata/EN/17/e0603801be792de10000009b38f842/content.htm
    Hope this helps, Good Luck
    Ben
    Please assign points if useful

Maybe you are looking for

  • Intercompany Billing - Proforma Invoice

    Hi to All, I need your advice regarding an issue related to Proforma Invoice creation. Processing  Intercompany Flow ,we have : 1)Order created in Sales Organization of Selling company 2)Delivery with Sales Organization of Selling company and Deliver

  • How to use accumulate in file functinality for Essbase adapter

    Hi Folks, I need to load Head count file to a Planning application via FDM. In which for a specific location i need to use "Accumulate in File" while loading data, which is not available for Essbase adapter. Please some one help me to implement the f

  • Problems exporting large PDF files

    I am trying to export a 52 page InDesign file to PDF. One or two random pages will not export properly, elements from other pages appear and other graphics which were there in InDesign have dissappeared in the exported PDF file. The most annoying thi

  • Sound issues Help please

    Hi Guys I'm having audio issue and cant figure out where the problem lies? Audio interface which I've had under a year, I'm on a macbook 4gb of ram running mavricks heres what happened the other day I had my monitors working in reason and everything

  • How does business catalyst really work?

    So i've tried to reach this and cant seem to find answers in plain english.... How does Business Catalyst really work?.. functionally. 1) I have a hosting service with godaddy and jumpline, I have a lot of space and do all of my client's websites thr