SAP SRM 7.0 Function module to replace  BBP_USER_GET_ATTRIBUTES

Hi,
As the function module BBP_USER_GET_ATTRIBUTES is not available in SRM 7.0 system .Could any one  please let me know if there is any other function module which will help to fetch the user attributes.
Thanks in advance. 
Regards,
Kalyani

Hello Kalyani,
If you want to get all inherited and not inherited attributes for a user, use RH_OM_ATTRIBUTES_READ function modul.
Use import parameters :
- PLVAR = '01', (get from RH_GET_PLVAR function module)
- OTYPE = 'US',
- OBJID = username,
- SCENARIO = 'BBP'.
To know if attribute is inherited or not, check if field INHERIT from function module table ATTRIB_EXT is set or not. Nevertheless, this is true if you get attributes at position level (because user always inherits attributes from his/her position).
Regards.
Laurent.

Similar Messages

  • HR TEM - Function Module  to Replace Attendee in the Background

    Hi Experts,
    We are on SAP 4.7.
    We have a requirement to automate the Replace Attendee process(T code PV03) in TEM.
    I need to ask, if there is any standard function module or BAPI like we have for Booking (BAPI_BOOK_ATTENDANCE) and for pre booking (BAPI_PREBOOK_ATTENDANCE) ?
    i've checked the function Module RH_PARTICIPATION_REPLACE but it requires screen input and works in foreground.
    If any one has any idea abou the function module or any other way to achieve this, the suggestion is highly appreciated.
    Appreciate your help!
    Thanks!
    Regards,
    Gurdip

    Copied the Function Module RH_PARTICIPATION_REPLACE  and created Z function module and suppressed the scrrens .
    Its working fine.
    Thanks

  • Function module to replace CSAP_MAT_BOM_READ

    Hi
       I have a requirement in which I use the function module CSAP_MAT_BOM_READ to read the material BOM. The problem is that there is a huge chunk of data and for each record it calls the function module which is causing a performance issue.
       I tried to replace the funtion module with a join on STKO, STPO . But the problem is that in the funtion module there is some logic in which it checks the validity date which comes from Change Number.
      Is there any function module which I can replace the existing one or any logic which can be implemented in the join condition?
    Regards,
    Ajith

    Hi Ajith,
    I'm not sure if this helps but here's a suggestion:-
    Table <b>MAST</b> (Material to BOM Link) contains the BOM number for each material.
    Tables <b>STPO</b> and <b>STKO</b> gives the information regarding BOM components.
    Consequently:
    Table <b>STKO</b> (BOM Header) can be linked to
    Table <b>STAS</b> (BOMs - Item Selection) via:
    <i>STLNR</i> (Bill of material) and
    <i>STLAL</i> (Alternative BOM).
    From this join you can then connect to the relevant entry in Table <b>STPO</b> (BOM item) via:
    <i>STLNR</i> (Bill of material) and
    <i>STLKN</i> (BOM item node number).
    Within table <b>STKO</b> there is a field <i>DATUV</i> (Valid-from date) that can be used if you want to restrict the values based on validity date.
    I hope this helps.
    Hafeez

  • Update sap table using a function module call by php code

    Hello,
    I m trying to update the table VBAP using a function module ZZ_SET_DISTANCE  call by a php code.
    But I have this problem:
    the saprfc seems to work well but when I look to the table VBAP the fields have not been update.
    I tried the function module in debug mode and it work good. The fields are update.
    I also handle the saprfc call function and the return SAPRFC_OK
    This are the function module ZZ_SET_DISTANCE, and the php code
    //PHP CODE
    $fce = saprfc_function_discover($sap,"ZZ_SET_DISTANCE");
                  if (! $fce ) {echo "Echec d'ouverture du module fonction "; exit;}
                   saprfc_import ($fce,"COMMANDE", '0000001998');
                   saprfc_table_init($fce,"TBLE_CMDE");
                        $val=array();
                        $val['NUM_POST']='000030';
                        $val['HN_EXP']='';
                        $val['ST_EXP']='';
                        $val['PC_EXP']='';
                        $val['CI_EXP']='';
                        $val['CO_EXP']='';
                        $val['HN_REC']='';
                        $val['ST_REC']='';
                        $val['PC_REC']='';
                        $val['CI_REC']='';
                        $val['CO_REC']='';
                        $val['DIST']='popo';
                        saprfc_table_append ($fce,"TBLE_CMDE", $val);
                 $rfc_rc = saprfc_call_and_receive ($fce);
                 echo "\n".$rfc_rc;
                 if ($rfc_rc != SAPRFC_OK) { if ($sap == SAPRFC_EXCEPTION ) echo ("Exception raised: ".saprfc_exception($fce)); else echo (saprfc_error($fce)); }else{echo '/execution de la function ;}
                 saprfc_function_free($fce);
    //FUNCTION MODULE ZZ_SET_DISTANCE
    FUNCTION ZZ_SET_DISTANCE.
    ""Local Interface:
    *"  IMPORTING
    *"     VALUE(COMMANDE) TYPE  VBELN
    *"  TABLES
    *"      TBLE_CMDE STRUCTURE  ZADD_COM_LOXAN
    DATA : NUMC TYPE VBELN.
    NUMC = COMMANDE .
    WHILE STRLEN( NUMC ) < 10 .
      CONCATENATE '0' NUMC INTO NUMC .
    ENDWHILE .
    DATA tble_addrcomm LIKE LINE OF TBLE_CMDE .
    LOOP AT  TBLE_CMDE INTO  tble_addrcomm.
      DATA : NUMP TYPE POSNR.
      NUMP = tble_addrcomm-NUM_POST.
      WHILE STRLEN( NUMP ) < 6 .
      CONCATENATE '0' NUMP INTO NUMP .
      ENDWHILE .
      UPDATE VBAP SET ARKTX = tble_addrcomm-DIST
      WHERE VBELN EQ COMMANDE
      AND POSNR EQ NUMP.
    ENDLOOP.
    ENDFUNCTION.
    Is anybody can help me?
    thank.

    Marie, create a Blog please, about more details for dummies....
    1) how to connect to sap system?
    2) you run the php code where? in a webserver or where?
    3) wich is the url for run the FM: ZZ_SET_DISTANCE
    4) you placed some dlls files on the web server?
    please is interesting this...
    Thanks

  • SAP Script in Function module

    HI Experts,
    I will get VBELN as an import parameter in my Z-FM.
    Now i have to pass this VBELN to RVORDER01 script and to finally get the OTF data from CLose_form.
    How to sap script processing in function module
    Thanks
    Chandra

    Example
    Definition in the SAPscript form:
    /: PERFORM GET_BARCODE IN PROGRAM QCJPERFO
    /: USING &PAGE&
    /: USING &NEXTPAGE&
    /: CHANGING &BARCODE&
    /: ENDPERFORM
    / &BARCODE&
    Coding of the calling ABAP program:
    REPORT QCJPERFO.
    FORM GET_BARCODE TABLES IN_PAR STUCTURE ITCSY
    OUT_PAR STRUCTURE ITCSY.
    DATA: PAGNUM LIKE SY-TABIX, "page number
    NEXTPAGE LIKE SY-TABIX. "number of next page
    READ TABLE IN_PAR WITH KEY u2018PAGEu2019.
    CHECK SY-SUBRC = 0.
    PAGNUM = IN_PAR-VALUE.
    READ TABLE IN_PAR WITH KEY u2018NEXTPAGEu2019.
    CHECK SY-SUBRC = 0.
    NEXTPAGE = IN_PAR-VALUE.
    READ TABLE IN_PAR WITH KEY u2018BARCODEu2019.
    CHECK SY-SUBRC = 0.
    IF PAGNUM = 1.
    OUT_PAR-VALUE = u2018|u2019. "First page
    ELSE.
    OUT_PAR-VALUE = u2018||u2019. "Next page
    ENDIF.
    IF NEXTPAGE = 0.
    OUT_PAR-VALUE+2 = u2018Lu2019. "Flag: last page
    ENDIF.
    MODIFY OUT_PAR INDEX SY-TABIX.
    ENDFORM.

  • Calling a functional module in SAP

    Hi
    We have a require ment like we need to update the details in SAP by calling a functional module, the data comes from a legacy which deletes immediately after it sends to XI by using a webservice, It is XI responsibility to update the details. In case SAP is down , Can we preserve this message and update SAP as and when the SAP is Up.
    Please comment.
    Regs
    Ramesh

    Hi Prasad
    Thank you so much. It has good information.
    As Naveen Pandrangi's blog
    XI : RFCAdapter ReConnect Issue
    "when the end system comes up, calls from XI would be successful. RFC Adapter would now check the connection for every message instead of only once when the communication channel is updated."
    Here small question is what about the old messages that were failed due to Connection Failure or SAP down.
    Please try to comment.
    Thanks in advance
    Ramesh

  • Calling RFC function module in other SAP system...

    Hi,
    I have a report on one SAP system and a function module on other system. The function module is RFC enabled. How can I call this RFC enabled function module from other SAP system in the report which is different SAP ?
    system.
    Thanks.
    Regards,
    Rajesh.

    call the function module in orginal system in se38 ,copy the function module ,paste the function module in other system,and maintain destination here ,otherwise you will get short dump.
    here detination should be SM59 destination,this is case sensitive.
    Reward Points if it is helpful
    Thanks
    Seshu

  • SAP Upgrade - Standard function modules & modifications

    Hello everybody,
    we are doing a SAP Upgrade to SAP ERP 6.0 and I need your help
    Some SAP standard funcion modules were modified in the last years and some weeks ago the changes were undone. The last version of the function modules are the same than the original function modules, but the version manager shows that the last version belongs to the user FGZ583 (and not SAP).
    The Problem is, that SAP deals with that function modules as a modification (because the last change was done by FGZ583?), but they are identical to the original SAP function modules.
    When the Upgrade is done, the SPAU/SPDD/se95 show that function modules as "modifications", although they are the same that the original ones.
    What could I do to avoid that SAP deals with that function modules as modifications?
    Cheers
    Prashad

    Hello Prashad,
    Its standard that once the object is changed the corresponding entry is recorded in different tables.Even if you roll back now system will treat as the modifications because corresponding change entries are present in the tables. You can try to activate the older versions but i don't think this will help you.
    This is not a point of worry as in SPDD adn SPAU you can choose reset to original for all those objects.
    Even if you can get those objects to move back to the source version they will get back to the standard in the new release.So my advise will be to let your upgrade run and then reset these objects to original.
    Regards
    Niraj

  • Regarding replacement of function module 'GUI_GET_DESKTOP_INFO'

    what function module is replaced by obselete function module 'GUI_GET_DESKTOP_INFO'

    Hi Naveenkumar,
    For differenct fucntions specified in obselete FM
    1:  Host name (host name of current system) -- CL_GUI_FRONTEND_SERVICES=>GET_IP_ADDRESS
    CL_GUI_FRONTEND_SERVICES=>GET_COMPUTER_NAME
    2:  Windows directory -- CL_GUI_FRONTEND_SERVICES=>GET_WINDOWS_DIRECTORY
    3:  System directory -- CL_GUI_FRONTEND_SERVICES=>GET_SYSTEM_DIRECTORY
    4:  Temp. directory -- CL_GUI_FRONTEND_SERVICES=>GET_TEMP_DIRECTORY
    5:  Domain user name -- CL_GUI_FRONTEND_SERVICES=>GET_USER_NAME
    6:  Platform -- use CL_GUI_FRONTEND_SERVICES=>GET_PLATFORM
    7:  Windows build number
    8:  Windows version
    9:  Program name
    10: Program path
    11: Current directory (Directory for current process) --
    CL_GUI_FRONTEND_SERVICES=>GET_SAPGUI_WORKDIR
    Regards,
    Mohaiyuddin

  • Call RFC Function Module and return 1000 records at a time

    I would like to call a Remote Enabled Function Module from a non SAP system.  This function module will select data from the database and return it to the calling program.
    Suppose there are 100,000 records that need to be returned, but the calling module would like the data in chunks of 1000 records.  Therefore the calling program would call the FM 100 times. 
    How do I code the function module to know on each subsequent call to grab the next chunk of 1000 records? 
    Let me know if additional information is needed.
    Thanks,
    Aaron

    Hello,
    Here is how you can go for this issue:
    1. Create one RFC function module with following parameter. These parameters are with respective of chunking logic.
         Import: Package Size
         Export: Total number of records
         Changing: chunk count
    Implement following logic:
    1. First of you need to know how many chunks you need to fetch for that get the count of total number of records. This is one  
        time activity so you better maintain one flag import parameter will be set to 'X' only first call.
    2. Get the number of chunk using total number of records / chunk size for e.g. 1000 / 100 so chunk count = 10.
    3. Define internal chunk counter in function module which will be used to locate the correct chunk depending on the chunk
        counter value sent from calling program.
    4. Send first call with package size 100 and chunk count = 1, execute select statement and increment internal
        chunk count check if chunk count = internal chunk count in current case chunk count = 1 so exit select statement and return
        with first chunk.
    5. Send second call with package size 100 and chunk count = 2. Execute select statement and check chunk count with internal
        chunk counter, in current case it will be 1 so skip that data and go for next chunk of 100 records increment internal chunk  
        counter. In this case it will match with external chunk count = 2. load output table with that data and return to calling program.
    6. Repeat step 4 until you reach last chunk.
    You need to use SELECT...ENDSELECT with PACKAGE SIZE addition so for every loop it will return number of records mentioned in package size.
    Hope this helps.
    Thanks,
    Augustin.

  • 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

  • Function module to convert an internal table to an tab delimited XL file

    hi everyone
    can anyone tell me the name of the function module which can convert the data in the internal table to an Excel file (Tab de-limited).
    vamsi

    Hello Vamsi
    Just in case you need functions for the other way around (e.g. .csv-file -> internal table) SAP provides the following function modules:
    - TEXT_CONVERT_CSV_TO_SAP
    - SAP_CONVERT_TO_CSV_FORMAT
    This function group <b>TRUX </b>contains some more interesting function modules.
    Regards
      Uwe

  • Difference between bapi and function module

    Can you guys tell me what are the differences in calling bapis and function modules?
    I see we are calling both as the same way we call function modules. May be for bapis, we need to be careful in declaring and passing those exact structures. Can you please make it clear reg. the differences between them?
    I appreciate it.
    Thanks!

    HI,
    See these links on help.sap.com
    <b>For BAPI:</b>
    The data entered in the Internet is transferred to the R/3 System via BAPIs (Business Application Programming Interfaces).
    Data in the R/3 System is accessed via BAPIs as well.
    A Good Site for BAPI's
    http://searchsap.techtarget.com/originalContent/0,289142,sid21_gci948835,00.html
    http://help.sap.com/saphelp_erp2005/helpdata/en/7c/3ce38765ba11d395fe00a0c94260a5/frameset.htm
    <b>For Function Module:</b>
    The important use of functional module is it is used by Enhancements.
    SAP Enhancements are used to expand the standard functionality within SAP.
    Enhancements use function modules and are called from the standard SAP code.
    http://help.sap.com/saphelp_erp2005/helpdata/en/41/7af4daa79e11d1950f0000e82de14a/frameset.htm
    List of functional modules ( Good Site)
    http://www.geocities.com/victorav15/sapr3/abapfun.html
    Hope it helps!!!!
    Thanks
    Sudheer

  • BDC : Function Module to Upload Unicode text file

    Hi Friends,
               Can anyone tell me how to upload data to internal table by taking it from unicode text file ?
    at present i'm using FM - GUI_UPLOAD which do not support Unicode text file.
    Sonal

    Hi,
    U Have to use CodePage Parameter to upload the data.
    Check the Description
    Character Representation for Output
    Description
    Use parameter CODEPAGE to specify the desired source codepage. If this parameter is not set, the codepage of the SAP GUI is used as the source codepage.
    Value range
    4-digit number of the SAP codepage. The function module SCP_CODEPAGE_BY_EXTERNAL_NAME provides the SAP codepage number for an external character set name, for example, "iso-8859-1". The function module NLS_GET_FRONTEND_CP provides the respective non-Unicode frontend codepage for a language.
    The desired codepage can be determined interactively, if the parameter with_encoding of method file_open_dialog is set by cl_gui_frontend_services.
    If the specified codepage is not suited for the Byte Order Mark of the file, an exception is triggered.
    SPACE: Codepage of the frontend operating system
    Default
    SPACE

  • Error BT616 when calling function module SXPG_COMMAND_EXECUTE in background

    Hi All,
    We use function module SXPG_COMMAND_EXECUTE with a custom command we defined in SM69 to move files in unix (mv command).
    The function module call has worked fine for almost a year and recently we have been seeing an error (BT616) in our job lob (SM37) when the program is run in background. We have not been able to reproduce the error in foreground mode and it seems to be occuring only periodically in the background. (The appropriate SAP authorization objects where assigned to the batch job ID and the steps on the batch job.) We are in the process of setting up the trace flag and performing analysis on the trace log via ST11 to help identify the issue.
    After perform analysis on SXPG_COMMAND_EXECUTE, the error is occurring when calling function module SAPXPG_END_XPG for exception 2, system failure, yet function module SAPXPG_END_XPG does not exist. I assume this is a program at the operating system level and is just a signature of the parameters to be passed to the operating system program.
    Below is part of the SAP function module SXPG_COMMAND_EXECUTE that is failing.
    * Now we have to wait for the termination of the external
    * command if the caller wants us to.
        IF TERMINATIONWAIT = 'X'.
          CALL FUNCTION 'SAPXPG_END_XPG'
            DESTINATION DESTINATION
            IMPORTING   EXITSTAT = STATUS
                        EXITCODE = EXITCODE
            TABLES      LOG      = LOG
            EXCEPTIONS  COMMUNICATION_FAILURE = 1 MESSAGE MSG
                        SYSTEM_FAILURE        = 2 MESSAGE MSG.
    I performed a where used on function module SXPG_COMMAND_EXECUTE, and most of SAP programs call the function module with the parameter TERMINATIONWAIT = 'X', so I assume we should pass ‘X’ as well.
    Any ideas on what could be causing this issue?
    Mike Vondran

    I also remember I have this kind of issue, as I have some UNIX script at OS( UNIX) level . The problem was with the ID , as it don’t have proper authorization at OS level ( UNIX ) . Please check this ID authorization. This could be the one of reasons if you’re sure from SAP standpoint.
    Hope this’ll give you some guide line..
    Thanks
    Bye

Maybe you are looking for