Difference between a programe&function module in R/3 & BW

Hi Gurus
                i would like to know differenece between programe and function module in R/3
and BW, so can some one give me  a brief idea about it cheers thanks .....

Hi,
Function modules are ABAP routines that are administered in a central function library. They apply across applications and are available throughout the system. You must assign function modules to a function pool that is called a function group. A function group is nothing but a container for the function modules. Now create a function group and then a function module.
it is  a kind of standrad program where u can use it in differnt local programes .
take an example  standrad function module "REUSE_ALV_CHECKBOX_SET"  suppose u want to create a checkbox in output screen u dont need to write a program for that u can use above mentioned function module in ur programe.
hope this information helps u
Regards,
Gurudatt Bellary

Similar Messages

  • What is the difference between subroutine and function module?

    What is the difference between subroutine and function module?

    Hi,
    they can both return values.
    FMs are mainly used when a routine is to be performed by many programs.
    Subroutines (forms) are generally only executed within one program.
    You can perform routines from other programs, but it's not often done.
    both forms and FMs are reusable modularization units.
    To distinguish we generally say that forms are used for internal modularization and
    FMs are used for external modularization.
    To decide on which to implement, consider whether you need the content to be used just for a limited program
    or wheteher it can be called from many independent programs.
    For the first purpose it is better to implement a form whereas for the second we implement an FM.
    However, ABAP does not isolate the usage context.
    That is; you can call a form from another program within whose code the form is not actually implemented.
    However, this requires attention since the form may utilize global variables.
    The same issue holds for FMs.
    FMs are encapsulated in function groups and function groups may have global variables that can be globally
    used by all FMs inside it.
    Thanks,
    Reward If Helpful.

  • What is the difference between the normal function module and bapi function

    hi,
    what is the difference between the normal function module and bapi function module.

    Hi
    BAPI stands for Business API(Application Program Interface).
    A BAPI is remotely enabled function module ie it can be invoked from remote programs like standalone JAVA programs, web interface etc..
    You can make your function module remotely enabled in attributes of Function module but
    A BAPI are standard SAP function modules provided by SAP for remote access. Also they are part of Businees Objest Repository(BOR).
    BAPI are RFC enabled function modules. the difference between RFc and BAPI are business objects. You create business objects and those are then registered in your BOR (Business Object Repository) which can be accessed outside the SAP system by using some other applications (Non-SAP) such as VB or JAVA. in this case u only specify the business object and its method from external system in BAPI there is no direct system call. while RFC are direct system call Some BAPIs provide basic functions and can be used for most SAP business object types. These BAPIs should be implemented the same for all business object types. Standardized BAPIs are easier to use and prevent users having to deal with a number of different BAPIs. Whenever possible, a standardized BAPI must be used in preference to an individual BAPI.
    Regards
    Anji

  • Difference between HR programing & other module programming

    Hi
    What are difference between HR programming & other module programming?
    This is one of interview questions from IBM.
    Any body can answer for me?
    WIth Regards,Jaheer.

    Dear Jaheer,
    Advanced Business Application Programming ABAP is SAP's fourth generation language. All of R/3's applications and even parts of its basic system are developed in ABAP. ABAP is used for customization and modification of SAP applications. 
    In HR ABAP use of select statements significantly less than in other areas of ABAP development, Logical databases have limited applications in other modules but are very useful in HR. Also, you really need to understand the infotype time constraint concept since the data organization in HR is Employee-Time based,     When you cannot get the information that you need out of the logical DB look at the function modules starting with HR* and RH*. These function modules will provide you with multiple ways of accessing data to save time. Worst-case scenario, use a select statement.
    In addition to the LDB, HR programming also involves the use of Macros for data extraction,
    The storage an access of data is different,
    Authorization checks.
    The Human Resources module uses a system of data grouped together called infotypes. The Human Resources module uses a system of data grouped together called infotypes. And storing bulk data like time management and Payroll data in Cluster files. HR Programming involves data extraction and manipulation from these infotypes and clusters using LDB/MACRO and function modules.
    Infotypes mirror a quantity of connected data records; infotypes are identifiable through a four character numerical string .
    You can save the infotypes as time-dependent to enable a retroactive evaluation of Employee data.
    The infotypes appear as an entry screen for the user, through which you can maintain infotype records. Infotypes can be processed individually or in fast entry mode.
    Regards,
    VIjay

  • 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

  • Difference between calling a function module in background task and update

    Hi experts,
    Can someone explain me the basic difference between calling a FM in  background and update tasks?
    Also what is the advantage of using backgroud RFCs over the above 2.
    Thanks in advance,
    reddy

    This is essentially a difference of synchronization with the main program calling this FM.
    For Update task, we specify explicitely that we want to update some rows in a database table. But Update task is essentially for waiting that all tasks to do before are done and updating database at the end. The main point is that MF called in Update task wait for a COMMIT WORK to be executed.
    On the other hand FM in background task are executed immediatly and are not specific to updating database table : it can be a function that would return some values or something else like that.
    If you want to see more about difference between background jobs / update jobs, you can also have a look at transaction SM51. Here you will see all the servers composing your SAP instance and what kind of task they can execute :
    - background jobs corresponds to BATCH
    - update tasks corresponds to UPDATE
    Those 2 kinds of tasks stands not necessarily on the same server...
    Best regards,
    Samuel

  • Difference between dialog programming and module pool programming

    Hi all ,
             Is there any differnce between module pool programming and dialog programming .
      thanks in advance ,
        magesh anandan

    Mahesh,
        Both are same.
    MODULE POOL  : Through modules only we have access ABAP EDITOR
                                   from  FLOW LOGIC EDITOR .
    DIALOG PROGRAMING : We use to have dialogs(Screen process) to interact
                                           with user .    
    Pls. reward if useful

  • What is difference between report programming and dialog programming?

    hi,
    what is difference between report programming and dialog programming? plz provide some example code
    bye

    ABAP programming
    Basically reports are used to read database and represent the results in lists.
    Reports are collections of processing blocks that the system calls depending on events.
    We can use reports to evaluate data from database tables.
    Reports are stand alone programs and controlled by events.
    A report itself never creates events
    steps in report:
    Processing the selection screen
    Reading the database
    Evaluating the data and creating lists
    Outputting a list.
    1st u write simple logics, after that u can enhance the code as step by step.
    http://venus.imp.mx/hilario/Libros/TeachYrslfAbap4/index.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/d1/802cfc454211d189710000e8322d00/frameset.htm
    http://www.sapdev.co.uk/reporting/reportinghome.htm
    Dialog Programming
    Structure of a Dialog Program
    A dialog program consists of the following basic components:
    Screens (dynpros)
    Each dialog in an SAP system is controlled by dynpros. A dynpro (DYnamic PROgram) consists of a screen and its flow logic and controls exactly one dialog step. The flow logic determines which processing takes place before displaying the screen (PBO-Process Before Output) and after receiving the entries the user made on the screen (PAI-Process After Input).
    The screen layout fixed in the Screen Painter determines the positions of input/output fields, text fields, and graphical elements such as radio buttons and checkboxes. In addition, the Menu Painter allows to store menus, icons, pushbuttons, and function keys in one or more GUI statuses. Dynpros and GUI statuses refer to the ABAP/4 program that control the sequence of the dynpros and GUI statuses at runtime.
    ABAP/4 module pool
    Each dynpro refers to exactly one ABAP/4 dialog program. Such a dialog program is also called a module pool, since it consists of interactive modules. The flow logic of a dynpro contains calls of modules from the corresponding module pool. Interactive modules called at the PBO event are used to prepare the screen template in accordance to the context, for example by setting field contents or by suppressing fields from the display that are not needed. Interactive modules called at the PAI event are used to check the user input and to trigger appropriate dialog steps, such as the update task.
    All dynpros to be called from within one transaction refer to a common module pool. The dynpros of a module pool are numbered. By default, the system stores for each dynpro the dynpro to be displayed next. This dynpro sequence or chain can be linear as well as cyclic. From within a dynpro chain, you can even call another dynpro chain and, after processing it, return to the original chain.
    Check this link for basics.
    http://sap.mis.cmich.edu/sap-abap/abap09/index.htm
    Check this link for Dialog Programming/Table Control
    http://www.planetsap.com/Tips_and_Tricks.htm#dialog
    Check this SAP Help for Dialog Program doc.
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9cdc35c111d1829f0000e829fbfe/content.htm
    Check this SAP Help link for Subscreens.
    http://help.sap.com/saphelp_nw70/helpdata/en/9f/dbabfe35c111d1829f0000e829fbfe/content.htm
    Check this link for subscreen demo program.
    http://abapcode.blogspot.com/2007/05/demo-program-to-create-subscreen-in.html
    Also check this link too.
    http://abapcode.blogspot.com/2007/06/dialog-programming-faq.html
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9cdc35c111d1829f0000e829fbfe/frameset.htm
    http://sap.mis.cmich.edu/sap-abap/abap09/sld004.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/52/670ba2439b11d1896f0000e8322d00/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/52/670c17439b11d1896f0000e8322d00/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/52/670c17439b11d1896f0000e8322d00/frameset.htm
    http://help.sap.com/saphelp_nw04/helpdata/en/9f/db9ccf35c111d1829f0000e829fbfe/frameset.htm
    http://abapprogramming.blogspot.com/

  • Difference between screen painter and module pool

    Hi guys,
    what's the difference between SCREEN PAINTER and MODULE POOL ....
    can anyone plz give brief description ...
    regards
    venu

    hi ,
        As its said by many colleagues in SDN , there are not very major differences between Modulepools and screen painter .
    The few differences are :
    1) <b>Module pool is nothing but a pool ( series ) of screens . and Screen painter ( SE51 ) is a tool used for creating/designing  screens .</b>
    2) <u>While creating a modulepool you even need to create a transaction and assign this module pool program else the mpool program doesnt work . I think this is place we can say they are different .</u>
    3) <b>If at all you create a screen in screen painter ( SE51 ) , that doesnot function by its own , you need to assign it to any of the executable programs or modulepool programs .Here is again a difference .</b>
    Regards,
    Ranjita ..
    Message was edited by:
            Ranjita Kar

  • Re: DIfference between Schemas, PCRS' FUnctions and Operations

    Dear SAPExperts,
    Can anybody pls tell me what is difference between Schemas, PCRS' Functions and Operations.
    Thanx in advance
    Regards
    Aniruddha

    Hi Aniruddha
    When the payroll driver is executed (for ex: PC00_M40_CALC for INDIA is executed) the schema IN00 (standard schema) is executed and it calls certain functions (functions may use Rules. Rules contain Operation) and also subschemas.
    Functions could be of four types
    1. Performing some payroll computations (E.g. INEPF function calculates the PF amount of an employee during payroll run)
    2. Calling rules (E.g. P0045 function calls a rule INLN to compute the loan details of a personnel number).
    3. Getting data from Infotypes (E.g. P0581 will get the data from Infotype-581 for payroll processing).
    4. For some decisions. (E.g. IF & ENDIF function is used to execute as per the true and false decisions) etc.
    When the PY is executed SAP uses lot of Internal Tables to store data and also provides data to other internal tables.
    The read and change access to Internal Tables is enabled using functions that are executed in a personnel calculation schema and using operations that are executed in personnel calculation rules.
    The following is just an attempt to provide some info on how Functions are processed during the PY Run. For ex: (functionality of subschema XIN0 and INBD)
    1. INITIALIZATION OF PAYROLL: When the Payroll is executed first the subschema XIN0 is called,   This subschema comprises the following main steps:
    I.     Specify program type (payroll or evaluation)
    II.     Set switch for database updates (YES/NO) all database updates are controlled via this switch (otherwise simulation)
    III.     Only infotypes from the HR master record which apply to the selected personnel number are read.
    IV.     All Time Management infotypes are imported.
    V.     Specify check against control record PA03 (test or live).
    2. READ BASIC DATA: Once the Initialization of Payroll is successful, the subschema INBD is called. This subschema reads the Basic data of an employee who is there in the Payroll execution. Basic Data includes, determining Employee Name, Reading Work Center/Basic Pay Data, Setting Financial Year Dates and Allowance Grouping Tables, Reading Previous Employment Tax Details, Reading Housing (HRA/CLA/COA), Reading Exemptions, Reading Income from Other Sources, Reading Section 80 Deductions, Reading Investment Details (Sec 88), Reading Provident Fund Contributions, Reading Other Statutory Deductions, Reading Car and Conveyance, Reading Long Term Reimbursements, Read ID Details. Function GON checks whether all the master data has been imported, no further processing of schema will occur unless certain data is present.
    The Subschema INBD calls the following functions in order to read the Basic Data:
    ENAME :
    Function ENAME reads the last valid name of the employee in the payroll period. The formatting used for the country in question is used when displaying this name.
    WPBP
    If an employee receives a pay increase within a payroll period, the Basic Pay infotype (0008) is changed and delimited as of a specific date. Two data records exist for one payroll period.
    During payroll, the system writes the Basic Pay wage type to the results table with two different indicators. These split indicators are a link to the WPBP table that contains the relevant values. The system takes into consideration both data records for the corresponding partial periods when calculating remuneration.
    ININI
    P0580
    P0581
    P0582
    P0584
    P0585
    P0586
    P0587
    P0588
    P0583
    P0590
    P185I
    GON :
                    Function GON checks whether all the master data has been imported. No further processing of the schema will occur unless certain data is present. Checking procedures vary from country to country. There must always, however, be a work center (P007).
    [Def. of Functions, Rules and Operations (copied from Raju's answer)
    Schema is a collection of functions
    A Rule is a collection of operations.
    An operation is a very basic piece of logic that is used, mostly, to manipulate wage types
    Best Regards
    Reddy

  • Difference between procedure and function

    hi
    please give solution to below discussion:
    Interviewer: What is the difference between Procedure and Function ?
    Myself: Procedure may or may not return a value and can return multiple values and Function must return a value.
    Interviewer : Can function return multiple values ?
    myself: Yes, It can return multiple values.
    Interviewer: Then, there is no need to use procedures any more, according to your previous answer (function can return multiple values) "we can do all the things by using procedures by using functions". Then why there is differentiation between procedure and function ?
    myself : no reply (simply frustated at this question)
    The above is conversation between me and interviewer.
    Please suggest me what would be my reply to above topic.
    In one book i find that using functions we can return multiple values but it is poor programming practice.
    why this is a programming practice ?
    please suggest me solution
    thanks in advance
    prasanth as.

    Another difference is function must return something. There is no such restriction on procedure.In fact, a procedure CANNOT contain an expression in its RETURN statement.
    SQL> create or replace procedure test_return is
      2  begin
      3    return(10) ;
      4  end ;
      5  /
    Warning: Procedure created with compilation errors.
    SQL> show errors
    Errors for PROCEDURE TEST_RETURN:
    LINE/COL ERROR
    3/3      PLS-00372: In a procedure, RETURN statement cannot contain an
             expression
    3/3      PL/SQL: Statement ignored
    SQL>And, a procedure cannot be called as part of a expression (it must be a function).
    SQL> create or replace procedure test_return is
      2  begin
      3    return ;
      4  end ;
      5  /
    Procedure created.
    SQL> variable x number ;
    SQL> exec :x := test_return ;
    BEGIN :x := test_return ; END;
    ERROR at line 1:
    ORA-06550: line 1, column 13:
    PLS-00222: no function with name 'TEST_RETURN' exists in this scope
    ORA-06550: line 1, column 7:
    PL/SQL: Statement ignored
    SQL>

  • Difference between DIALOGUE programming and SCREEN programming

    Hi,
      Please tell me the difference between dialogue programming and screen programming
    jomon

    hi
    -          A transaction is dialog program that change data objects in a consistant way.
    A dialog program must fulfil the following requirements
    -          A user friendly user interface.
    -          Format and consistancey checks for the data entered by the user.
    -          Easy correction of input errors.
    -          Access to data by storing it in the data bases.
    screen progarmming means.dialogue programming contains.
    -          Screens (Dynpros)
    -          Each dialog in an SAP system is controlled by dynpros.A dynpros consists of a screen
    And its flow logic and controls exactly one dialog step.
    -          ABAP/4 module Pool.
         Each dynpro refers to exactly one ABAP/4 dialog program .Such a dialog program is also       called a module pool ,since it consists of interactive modules.
    regads
    praveen

  • Exchange rate, Plan exchange rate Programs & Function modules in SAPBW ....

    Hi Friends,
    Could anybody please tell me what are the  " Exchange rate, & Plan exchange rate " Programs & Function modules.
    If any customized also , I can do modify and i will use it.
    Thanks in advance,
    Ramesh

    Hi there
    Exchange rates are used for currency conversion rules in queries, data loads, etc.
    You can export exchange rates from R/3 (or other system) to SAP BI, and change them or define your own exchange rates.
    For planning, you can create exchange rates specifically for that purpose.
    In currecny conversion rules you can tell the system which exchange rate to use (for example EURX from EUR->USD)
    To view/mantain exchange rates go to transaction SPRO->SAP Reference IMG->SAP Netweaver->General Settings->Currencies->Enter Exchange Rates
    Diogo.

  • Exchange rate, plan exchange rate Programs & Function modules in SAP ....

    Hi Friends,
    Could anybody please tell me  what are the  " Exchange rate " & Plan exchange rate "  standard programs, function modules  avaialble in SAP  .
    Thanks in advance,
    Ramesh.

    Check via transaction OB07 (or SPRO - General Settings - Currencies - Check exchange rate types) usually you will find a "M" average exchange rate (which is used operationally everywhere in Logistics) and a "P" planned exchange rate (used for cost planning)
    Exchange rates are maintained via transaction OB08 (or SPRO, same tree - last node - Enter exchange rates)
    When programming, use tables TCUR* or FM of function groups like SCUR "Translation of Currency Amounts etc." (CONVERT_TO_FOREIGN_CURRENCY, CONVERT_TO_LOCAL_CURRENCY and READ_EXCHANGE_RATE among others)
    Regards,
    Raymond

  • Differences between procedures and functions.

    a little confusing ..in differences between procedures and functions..
    1. Can a function return only single value?? cant we return multiple values?
    2. Can we use 'out' parameter and 'return' clause at a time in the same function
    thank you

    Hi,
    newbie wrote:
    a little confusing ..in differences between procedures and functions..
    1. Can a function return only single value?? cant we return multiple values?Yes, a function can only return a single value.
    If the return type is some kind of collection or data structure, then that 1 collection or data structure can, of course, actually contain many sep[arate values.
    If you want to return multiple values, use a PROCEDURE with multiple OUT arguments.  (Functions can have OUT arguments, too, but avoid defining functions with OUT arguments.  It can cause a lot of confusion.)
    2. Can we use 'out' parameter and 'return' clause at a time in the same functionSure, but don't take my word for it.  Try it and see.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       

Maybe you are looking for