Difference between Function Module and Routine
Hi,
I am zero at ABAP Skill.
Can any one explain me what is the difference between Routine in BW and Function Module .
Thanks
Hi,
well basically it is almost the same. Both have a defined interface. You can pass variables to them and they can return variables. They can also change parameters... The main difference is, that a routine (form routine) can be used within the program where it is defined only and a function module can be used in all programs, form routines.
regards
Siggi
Similar Messages
-
Difference between function module and userexit and badi
Hello Gurus,
As a functional consultant i want to know what is function module and user exit and badi.
what is the difference between function module , user exit and badi?
regds
RamachandraRama,
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.
Business Add-Ins are a new SAP enhancement technique based on ABAP Objects. They can be inserted into the SAP System to accommodate user requirements too specific to be included in the standard delivery. Since specific industries often require special functions, SAP allows you to predefine these points in your software.
User exit - A user exit is a three character code that instructs the system to access a program during system processing.
SXX: S is for standard exits that are delivered by SAP. XX represents the 2-digit exit number.
UXX: U is for user exits that are defined by the user. XX represents the 2-digit exit number .
Difference between BADI and USER-EXIT.
i) BADI's can be used any number of times, where as USER-EXITS can be used only one time.
Ex:- if your assigning a USER-EXIT to a project in (CMOD), then you can not assign the same to other project.
ii) BADI's are oops based.
Hope this helps you.
Rgds
Manish -
Difference between function module and a method?
Hi Experts
Can anybody pls tell me the technical and functional difference between function moduel and a method?
Thanks
SudhansuHi,
Function modules are procedures that are defined in function groups (special ABAP programs with type F) and can be called from any ABAP program. Function groups act as containers for function modules that logically belong together. You create function groups and function modules in the ABAP Workbench using the Function Builder.
Function modules allow you to encapsulate and reuse global functions in the R/3 System. They are stored in a central library. The R/3 System contains a wide range of predefined function modules that you can call from any ABAP program. Function modules also play an important role in database updates and in remote communications between R/3 Systems or between an R/3 System and a non-SAP system.
You can declare methods in the declaration part of a class or in an interface. To declare instance methods, use the following statement:
METHODS <meth> IMPORTING.. [VALUE(]<ii>[)] TYPE type [OPTIONAL]..
EXPORTING.. [VALUE(]<ei>[)] TYPE type [OPTIONAL]..
CHANGING.. [VALUE(]<ci>[)] TYPE type [OPTIONAL]..
RETURNING VALUE(<r>)
EXCEPTIONS.. <ei>..
When you declare a method, you also define its parameter interface using the additions IMPORTING, EXPORTING, CHANGING, and RETURNING. The additions define the input, output, and input/output parameters, and the return code. They also define the attributes of the interface parameters, namely whether a parameter is to be passed by reference or value (VALUE), its type (TYPE), and whether it is optional (OPTIONAL, DEFAULT).
Unlike in function modules, the default way of passing a parameter in a method is by reference.
As in function modules, you can use exception parameters (EXCEPTIONS) to allow the user to react to error situations when the method is executed.
As in function modules, you can use the RAISE <exception> and MESSAGE RAISING statements to handle error situations.
Regards,
Sruthi -
Difference between Function module and a subroutine
hi
In the case of subroutine i can access the global workarea values.
I want to know whether in the case of function module
whether
i can follow the same procedure to access the workarea values
or
i have to pass this workarea values as an import or tables parameter to the function module and then use it
(in first case whether that workarea to make global whether i have to place it in function pool please check this but which is better one)
Thx in advance for any replies.Yes
You would have to pass the values as import parameters to access the global variables of the program otherwise you will not be able to get the values of the global variable from inside the program.
Another solution would be to export to SAP memory but the entire concept of modularization of using the FM would be lost. -
Difference between function module and subroutines
hey all...
can u pls explai me the exact difference between subroutines and function modules...
also, when is a sub routine used and also when is a function module used..???
regards..
vishalHi Vishal,
Basically they do the same thing and purpose is almost same but tecnically the are way apart:
Function modules must belong to a pool called a function group.
They possess a fixed interface for data exchange. This makes it easier for you to pass input and output parameters to and from the function module.
For example, you can assign default values to the input parameters. The interface also supports exception handling. This allows you to catch errors and pass them back to the calling program for handling.
They use their own memory area. The calling program and the function module cannot exchange data using a shared memory area - they must use the function module interface. This avoids unpleasant side effects such as accidentally overwriting data.
You call a function module by its name (which must be unique) in a CALL FUNCTION statement.
and also
Unlike subroutines, you do not define function modules in the source code of your program. Instead, you use the Structure link Function Builder.
Check this link too
Re: Regarding difference between Subroutines and Function modules
Hope this helps you,
Regards
Amit
Message was edited by: Amit Kumar -
Difference Between Function Module And BAPI
Hi Friends,
What is the technical difference between BAPI and Function Module (Normal, RFC and update)?
When do we use BAPI and FM?
If BAPI is also RFC enabled then why do we have RFC function module?
Kindly clarify with examples.
Regards,
Pradeep Singh DhadwalHi Pradeep,
BAPI vs FM
Difference between FM and BAPI
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.
FM
Normal FM used internally inside SAP.
Hope this helps,
Manish -
Diff between Function Module and subroutine
sir,
explain the difference between Function Module and Subroutine.Hi Sandeep,
Subroutines:
Subroutines are procedures that you can define in any ABAP program and also call from any program. Subroutines are normally called internally, that is, they contain sections of code or algorithms that are used frequently locally. If you want a function to be reusable throughout the system, use a function module.
Function Modules:
Function modules are procedures that are defined in function groups (special ABAP programs with type F) and can be called from any ABAP program. Function groups act as containers for function modules that logically belong together. You create function groups and function modules in the ABAP Workbench using the Function Builder.
Function modules allow you to encapsulate and reuse global functions in the R/3 System. They are stored in a central library.
Unlike subroutines, you do not define function modules in the source code of your program. Instead, you use the Function Builder.
Regards,
Sunil -
Help needed - ABAP for function modules and routines.
Dear BW gurus,
Hope everyone is doing great.
I gotta project recently and we are going live in 3 weeks.My BWLead is getting rolled out in a week and he has to make the knowledge transfer to me ASAP.The bottle-necking thing is I need to have a good idea about the function modules and routines.So I request our SND community to help me out with good ABAP documents for function modules,routines and query.
my mail id is [email protected]
Thanks in advance
Have a nice day
Regards
sathiyaHello Sam,
You can create function module in ABAP using tcode SE37.
For more informations on ABAP:
http://help.sap.com/saphelp_47x200/helpdata/en/c9/5472f6787f11d194c90000e8353423/frameset.htm
Use http://help.sap.com
and also use <b>ABAPDOCU</b> transaction.
Check these links also...
<b>Online PDFs:</b>
http://easymarketplace.de/online-pdfs.php
<b>ABAP HELP</b>
If you check these links, you can find many example programs.
http://www.sap-img.com/abap.htm
http://www.sapdevelopment.co.uk/tips/tipshome.htm
http://help.sap.com/printdocu/core/Print46c/en/Data/Index_en.htm
http://sap.ittoolbox.com/nav/t.asp?t=322&p=322&h1=322
http://sappoint.com/abap/
FAQs in ABAP
http://www.sap-img.com/abap/more-than-100-abap-interview-faqs.htm
Smart forms
http://www.sap-basis-abap.com/sapsf001.htm
Workflow
<http://www.sap-img.com/workflow/sap-workflow.htm>
ALV
http://www.geocities.com/mpioud/Abap_programs.html
Mail
http://www.geocities.com/mpioud/Z_EMAIL_ABAP_REPORT.html
http://www.thespot4sap.com/Articles/SAP_Mail_SO_Object_Send.asp
Table control in BDC
http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
SAP Scripts:
http://sappoint.com/abap/
http://www.henrikfrank.dk/abapuk.html
Some useful ABAP Links for learning:
http://cma.zdnet.com/book/abap/index.htm
http://www.sapdevelopment.co.uk/
http://www.sap-img.com/
http://juliet.stfx.ca/people/fac/infosys/abap.htm
http://help.sap.com/saphelp_46c/helpdata/en/d3/2e974d35c511d1829f0000e829fbfe/frameset.htm
http://help.sap.com/saphelp_46c/helpdata/en/d6/0db357494511d182b70000e829fbfe/frameset.htm
http://www.henrikfrank.dk/abapexamples/SapScript/sapscript.htm
http://www.sapgenie.com/abap/example_code.htm
http://www.geocities.com/SiliconValley/Campus/6345/abapindx.htm
http://help.sap.com/printdocu/core/Print46c/en/Data/Index_en.htm
http://help.sap.com/saphelp_40b/helpdata/en/4f/991f82446d11d189700000e8322d00/applet.htm
http://www.sap-img.com/abap-function.htm
http://www.sapgenie.com/abap/code/abap19.htm
http://www.sap-img.com/abap/more-than-100-abap-interview-faqs.htm
http://www.planetsap.com/Tips_and_Tricks.htm
http://help.sap.com/saphelp_40b/helpdata/ru/d6/0dc169494511d182b70000e829fbfe/applet.htm
http://www.henrikfrank.dk/abapexamples/SapScript/symbols.htm
http://www.henrikfrank.dk/abapexamples/index.html
http://sap.ittoolbox.com/documents/document.asp?i=752
http://members.aol.com/_ht_a/skarkada/sap/
http://sappoint.com/abap/
http://members.tripod.com/abap4/SAP_Functions.html
http://members.ozemail.com.au/~anmari/sap/index.html
http://www.planetsap.com/Userexit_List.htm
http://www.planetsap.com/Tips_and_Tricks.htm
http://www.kabai.com/abaps/q.htm
http://www.planetsap.com/Userexit_List.htm
http://help.sap.com/saphelp_bw21c/helpdata/en/c4/3a8090505211d189550000e829fbbd/frameset.htm
http://www.sapgenie.com/abap/bapi/example.htm
http://help.sap.com/saphelp_45b/helpdata/en/65/897415dc4ad111950d0060b03c6b76/content.htm
http://www.sap-basis-abap.com/index.htm
http://help.sap.com/saphelp_40b/helpdata/en/fc/eb2c46358411d1829f0000e829fbfe/frameset.htm
http://help.sap.com/saphelp_46c/helpdata/en/aa/aeb23789e95378e10000009b38f8cf/frameset.htm
http://www.geocities.com/ResearchTriangle/1635/system.html
http://www.sapdesignguild.org/resources/MiniSG/3_Managing/3_Functions_Table_Control.htm
http://help.sap.com/saphelp_45b/helpdata/en/d1/801bdf454211d189710000e8322d00/content.htm
http://www.sapfans.com/sapfans/repos/saprep.htm
http://www.planetsap.com/howdo_a.htm
http://help.sap.com/saphelp_util464/helpdata/en/69/c2516e4ba111d189750000e8322d00/content.htm
http://www.sapgenie.com/abap/smartforms_detail.htm
http://www.sap-img.com/abap.htm
http://help.sap.com/saphelp_46c/helpdata/en/fc/eb2d67358411d1829f0000e829fbfe/content.htm
http://www.geocities.com/victorav15/sapr3/abap.html
http://www.henrikfrank.dk/abapexamples/SapScript/sapscript.htm
http://abap4.tripod.com/Other_Useful_Tips.html
http://help.sap.com/saphelp_45b/helpdata/en/cf/21ee2b446011d189700000e8322d00/content.htm
http://www.sap-basis-abap.com/sapmm.htm
http://sap.ittoolbox.com/nav/t.asp?t=303&p=448&h1=303&h2=322&h3=448
http://sapfans.com/
http://cma.zdnet.com/book/abap/ch03/ch03.htm
http://help.sap.com/saphelp_40b/helpdata/en/4f/991f82446d11d189700000e8322d00/applet.htm
http://sappoint.com/abap/
http://www.henrikfrank.dk/abapuk.html
http://www.sts.tu-harburg.de/teaching/sap_r3/ABAP4/abapindx.htm
http://www.sapgenie.com/abap/index.htm
http://www.sap-img.com/abap.htm
http://www.sapdevelopment.co.uk/tips/tipshome.htm
http://help.sap.com/printdocu/core/Print46c/en/Data/Index_en.htm
http://sap.ittoolbox.com/nav/t.asp?t=322&p=322&h1=322
http://sap.ittoolbox.com/nav/t.asp?t=448&p=448&h1=448
http://www.thespot4sap.com/
http://www.kabai.com/abaps/q.htm
http://www.geocities.com/mpioud/Abap_programs.html
http://www.sapgenie.com/abap/tips_and_tricks.htm
http://www.sapassist.com/code/d.asp?whichpage=1&pagesize=10&i=10&a=c&o=&t=&q=&qt=
For FAQ
http://www.sap-img.com/abap/more-than-100-abap-interview-faqs.htm
http://www.sapgenie.com/faq/abap.htm
BAPI-step by step
http://www.sapgenie.com/abap/bapi/example.htm
http://www.sapgenie.com/abap/bapi/example.htm
Web log for receive email and processing it through ABAP
/people/thomas.jung3/blog/2004/09/09/receiving-e-mail-and-processing-it-with-abap--version-610-and-higher
For Logical database
http://help.sap.com/saphelp_46c/helpdata/en/9f/db9bed35c111d1829f0000e829fbfe/frameset.htm
http://help.sap.com/saphelp_46c/helpdata/EN/35/2cd77bd7705394e10000009b387c12/frameset.htm
Useful link to websites
http://www.hernangn.com.ar/sap.htm
Useful for background
http://www.sappoint.com/basis/bckprsng.pdf
http://help.sap.com/saphelp_nw04/helpdata/en/6f/08703713bf277ee10000009b38f8cf/frameset.htm
http://publib.boulder.ibm.com/infocenter/wbihelp/index.jsp?topic=/com.ibm.wbix_adapters.doc/doc/mysap4/sap4x41.htm
Table control in BDC
http://www.sap-img.com/abap/bdc-example-using-table-control-in-bdc.htm
For posting web log,
/people/sap.user72/blog/2005/06/28/sdn-weblogs-making-it-easier
Dynamic Internal table -web log in sdn
/people/subramanian.venkateswaran2/blog/2004/11/19/dynamic-internal-table
ALV
http://www.geocities.com/mpioud/Abap_programs.html
Mail
http://www.geocities.com/mpioud/Z_EMAIL_ABAP_REPORT.html
http://www.thespot4sap.com/Articles/SAP_Mail_SO_Object_Send.asp
http://www.sapdevelopment.co.uk/reporting/email/attach_xls.htm
BOM Explosion
/people/prakash.singh4/blog/2005/05/15/explode-boms-in-enterprise-portal-using-htmlb-tree--part-1-abap
BOM
http://help.sap.com/saphelp_erp2005/helpdata/en/ea/e9b7234c7211d189520000e829fbbd/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/d1/2e4114a61711d2b423006094b9d648/frameset.htm
http://www.sap-img.com/sap-sd/sales-bom-implementation.htm
http://www.sap-basis-abap.com/sappp007.htm
OLE
http://www.sapgenie.com/abap/ole.htm
http://help.sap.com/saphelp_46c/helpdata/en/59/ae3f2e488f11d189490000e829fbbd/frameset.htm
ALVGRID with refresh
http://www.geocities.com/mpioud/Z_DEMO_ALV_REFRESH_BUTTON.html
For language setting and decimal separator
/people/horst.keller/blog/2004/11/16/abap-geek-7-150-babylonian-confusion
Oracle queries
http://sqlzoo.net/
To format SQL
http://www.sqlinform.com/
SCOT settings
http://www.sap-img.com/basis/basis-faq.htm
Status Icon [ALV,Table Control,Tab Strip]
http://www.sapdesignguild.org/resources/MiniSG-old/from_develop/norm_status_icons.htm#positioning_4
ALV Group Heading
http://www.sap-img.com/fu037.htm
For multiMedia
/people/thomas.jung3/blog/2005/05/11/using-classic-activex-controls-in-the-abap-control-framework
Uploading LOGO in SAP
http://www.sap-img.com/ts001.htm
LSMW
http://www.sap-img.com/sap-data-migration.htm
http://www.sapgenie.com/saptech/lsmw.htm
http://sapabap.iespana.es/sapabap/manuales/pdf/lsmw.pdf
http://www.sap.info/public/INT/int/glossary/int/glossaryletter/Word-17643ed1d6d658821_glossary/L#Word-17643ed1d6d658821_glossary
http://www.consolut.de/saphelp/sap_online_help.html
http://www.sap-img.com/
http://www.sappoint.com/
http://www.sapdevelopment.co.uk/
http://www.allsaplinks.com/idoc_search.html
Best Regards,
Thangesh -
Difference between functional task and interface task
Hi All,
Kindly let me know the Difference between functional task and interface task when we create a task profile.
Regards,
SwethaHi Sweta,
The diferennce is Like we create different roles like store incharge and Store manager for Store manager there are list of activities that he can do like approve requests from store keeper and so on so these are Interface tasks as there are differences based on the roles of the employee but if a person can only create and not approve the transation then this is functional task difference -
Difference between ACE module and ACE appliance
Hi All,
Can someone help to understand the difference between ACE module and ACE appliance, as i am observing ACE module is providing more throughput when compared the ACE appliance, Is the only advantage we getting with contexts ....
thanks inadvance,
Narayana MallidiHi Narayan,
Apart from providing throughput, ACE module has more to offer ,
http://docwiki.cisco.com/wiki/Cisco_Application_Control_Engine_%28ACE%29_Troubleshooting_Guide_--_ACE_Resource_Limits
The above link will provide a comparision of ACE module and Ace appliance interms of scalability. Apart from that legacy modules wont support compression, but ACE 30 module can support compression.
The major advantage of ACE 30 module is with resepct to SSL throughput, SSL TPS, L4 & L7 CPS, & Concurent Connections per second, apart from the increased contexts
ACE 4710 Data Sheet :
http://www.cisco.com/en/US/prod/collateral/contnetw/ps5719/ps7027/Data_Sheet_Cisco_ACE_4710.html
ACE20 Data Sheet
http://www.cisco.com/en/US/prod/collateral/modules/ps2706/ps6906/product_data_sheet0900aecd8045861b.html
ACE 30 Data Sheet
http://www.cisco.com/en/US/prod/collateral/modules/ps2706/ps6906/data_sheet_c78_632383.html
Regards
Abijith -
Difference between Function module in Update task
Hi folks,
What is the difference between
1. A function module calling in 'update task'( if attributes not set for update mode).
2.A function module's attributes set to update mode, but while calling not specified 'Update task'.
Please clarify this doubt.
Thanks in advance.
BhavaniCALL FUNCTION func IN UPDATE TASK.
Additions:
1. ... EXPORTING p1 = f1 ... pn = fn
2. ... TABLES p1 = itab1 ... pn = itabn
Effect
Flags the function module func for execution in the update task. It is not executed at once, but the data passed with EXPORTING or TABLES is placed in a database table and a subsequent COMMIT WORK then causes the function module to be executed by the update task. Update function modules must be flagged as such in the Function Builder
The return value is not set.
Addition 1
... EXPORTING p1 = f1 ... pn = fn
Effect
Values of fields and field strings specified under EXPORTING are passed from the calling program to the function module. In the function module, the formal parameters are defined as import parameters. In the interface definition, default values must be assigned to all import parameters of the update function module.
Addition 2
... TABLES p1 = itab1 ... pn = itabn
Effect
TABLES passes references to internal tables. All table parameters of the function module must have values.
Note
With update function modules, both import parameters and exceptions are ignored when the call is made.
Administration transaction
Related
COMMIT WORK, SET UPDATE TASK LOCAL
regards,
kartikey. -
Difference between Function Module Vs Method in Class Module
1) Can you please tell the difference between the Function module used in abap program and the method of the class module used in abap programming.
2) does it necessary to do commit statement after calling the function module.
Thankyou for you time.
Bhaskar.Hi,
1)
Check this difference..
The main difference between real object orientation and function groups is that although a program can work with the instances of several function groups at the same time, it cannot work with several instances of a single function group. Suppose a program wanted to use several independent counters, or process several orders at the same time. In this case, you would have to adapt the function group to include instance administration, for example, by using numbers to differentiate between the instances.
2) COMMIT WORK is required for BAPI..And not required when you normally call a function module..Unless required ..
Example
Update function modules requires COMMIT WORK to execute the function module.
Thanks,
Naren -
Difference between functions SCAN and DAQ
which are the differences and the operating mode between the functions SCAN_Start and DAQ_start.
Scan start is for scanning multiple channels - acquiring data from each channel in your scan list; DAQ_start is for scanning one channel.
For scan start you can control the time between channels. For example, you can control the tie between channels 0 and 1. You can also control the time between scans - the time between acquire data from channel 0 and 1 and the next time you acquire data from channels 0 and 1. There are several good examples for C and CVI that show off these functions. Look through your example documentation - try C:\Program Files\National Instruments\CVI70\samples\daq\Ai\DAQSingleBufAsynch.c. In the same folder you will find the ScanSingleBuf Asynch.c. Both of these calls are asychronous. They will execute in the background. You
will have to call DAQ_Check to see when the data has arrived.
What are you wanting to do? -
LINKING BETWEEN FUNCTION MODULE AND INTERACTIVE NO. OF BASIC LIST
Dear Mates,
Iam preparing Z report for BOM display of FG and SFG materials.
Iam displaying the Basic List using the MAST table. Here i double click on the material no.
Here iam using the function module :CS_BOM_EXPL_MAT_V2 for fetching the data from STPOX structure ,here i want to link material no. which has been from basic list and the above said function module.
Can anybody provide the solution for the above said linking in ALV interactive report.
Please treat it very urgent as this report is to be presented on high priority.
Thanks in advance
SubbuHi
use the Function module REUSE_ALV_POPUP_TO_SELECT.
check the below example:
REPORT ZSR_ALV_INTERACTIVE.
TABLES : LFA1,EKKO,EKPO.
SELECT-OPTIONS : VENDOR FOR LFA1-LIFNR.
DATA : BEGIN OF ITAB OCCURS 0,
LIFNR LIKE LFA1-LIFNR,
NAME1 LIKE LFA1-NAME1,
END OF ITAB.
DATA : BEGIN OF JTAB OCCURS 0,
EBELN LIKE EKKO-EBELN,
AEDAT LIKE EKKO-AEDAT,
END OF JTAB.
DATA : BEGIN OF KTAB OCCURS 0,
EBELP LIKE EKPO-EBELP,
MATNR LIKE EKPO-MATNR,
END OF KTAB.
TYPE-POOLS : SLIS.
DATA : REPID LIKE SY-REPID.
DATA :LFA1_B TYPE SLIS_T_FIELDCAT_ALV,
LFA1_W TYPE SLIS_FIELDCAT_ALV,
EKKO_B TYPE SLIS_T_FIELDCAT_ALV,
EKKO_W TYPE SLIS_FIELDCAT_ALV,
EKPO_B TYPE SLIS_T_FIELDCAT_ALV,
EKPO_W TYPE SLIS_FIELDCAT_ALV,
EVENTS_B TYPE SLIS_T_EVENT,
EVENTS_W TYPE SLIS_ALV_EVENT.
PERFORM GET_VAL.
REPID = SY-REPID.
SELECT LIFNR NAME1 FROM LFA1 INTO TABLE ITAB WHERE LIFNR IN VENDOR.
*perform val USING USER_COMMAND sel.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = REPID
IT_FIELDCAT = LFA1_B
IT_EVENTS = EVENTS_B
TABLES
T_OUTTAB = ITAB.
*& Form GET_VAL
text this is to put column headings
FORM GET_VAL.
LFA1_W-FIELDNAME = 'LIFNR'.
LFA1_W-REF_TABNAME = 'LFA1'.
LFA1_W-REF_FIELDNAME = 'LIFNR'.
APPEND LFA1_W TO LFA1_B.
LFA1_W-FIELDNAME = 'NAME1'.
LFA1_W-REF_TABNAME = 'LFA1'.
LFA1_W-REF_FIELDNAME = 'NAME1'.
APPEND LFA1_W TO LFA1_B.
EKKO_W-FIELDNAME = 'EBELN'.
EKKO_W-REF_TABNAME = 'EKKO'.
EKKO_W-REF_FIELDNAME = 'EBELN'.
APPEND EKKO_W TO EKKO_B.
EKKO_W-FIELDNAME = 'AEDAT'.
EKKO_W-REF_TABNAME = 'EKKO'.
EKKO_W-REF_FIELDNAME = 'AEDAT'.
APPEND EKKO_W TO EKKO_B.
EKPO_W-FIELDNAME = 'EBELP'.
EKPO_W-REF_TABNAME = 'EKPO'.
EKPO_W-REF_FIELDNAME = 'EBELP'.
APPEND EKPO_W TO EKPO_B.
EKPO_W-FIELDNAME = 'MATNR'.
EKPO_W-REF_TABNAME = 'EKPO'.
EKPO_W-REF_FIELDNAME = 'MATNR'.
APPEND EKPO_W TO EKPO_B.
EVENTS_W-NAME = 'USER_COMMAND'.
EVENTS_W-FORM = 'VAL'.
APPEND EVENTS_W TO EVENTS_B.
ENDFORM. "GET_VAL
*& Form VAL
text
-->USER_COMMANtext
-->SEL text for retrieving data
FORM VAL USING USER_COMMAND LIKE SY-UCOMM SEL TYPE SLIS_SELFIELD.
DATA : VEN(10) TYPE N,
PO(10) TYPE N.
DATA : MAT(10) TYPE C.
IF SEL-FIELDNAME = 'LIFNR'.
VEN = SEL-VALUE.
SELECT EBELN AEDAT FROM EKKO INTO TABLE JTAB WHERE LIFNR = VEN.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = REPID
I_STRUCTURE_NAME = EKKO_B
IT_FIELDCAT = EKKO_B
IT_EVENTS = EVENTS_B
TABLES
T_OUTTAB = JTAB.
ENDIF.
IF SEL-FIELDNAME = 'EBELN'.
PO = SEL-VALUE.
SELECT EBELP MATNR FROM EKPO INTO TABLE KTAB WHERE EBELN = PO.
CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
EXPORTING
I_TITLE = 'ITEM DETAILS'
I_TABNAME = 'EKPO'
IT_FIELDCAT = EKPO_B
I_CALLBACK_PROGRAM = REPID
IMPORTING
ES_SELFIELD = SEL
TABLES
T_OUTTAB = KTAB.
ENDIF.
logic to select a record
IF SEL-FIELDNAME = 'MATNR'.
MAT = SEL-VALUE.
SET PARAMETER ID 'MAT' FIELD MAT.
CALL TRANSACTION 'MM02' AND SKIP FIRST SCREEN.
ENDIF.
ENDFORM. "VAL
check my example:
REPORT ZSR_ALV_INTERACTIVE.
TABLES : LFA1,EKKO,EKPO.
SELECT-OPTIONS : VENDOR FOR LFA1-LIFNR.
DATA : BEGIN OF ITAB OCCURS 0,
LIFNR LIKE LFA1-LIFNR,
NAME1 LIKE LFA1-NAME1,
END OF ITAB.
DATA : BEGIN OF JTAB OCCURS 0,
EBELN LIKE EKKO-EBELN,
AEDAT LIKE EKKO-AEDAT,
END OF JTAB.
DATA : BEGIN OF KTAB OCCURS 0,
EBELP LIKE EKPO-EBELP,
MATNR LIKE EKPO-MATNR,
END OF KTAB.
TYPE-POOLS : SLIS.
DATA : REPID LIKE SY-REPID.
DATA :LFA1_B TYPE SLIS_T_FIELDCAT_ALV,
LFA1_W TYPE SLIS_FIELDCAT_ALV,
EKKO_B TYPE SLIS_T_FIELDCAT_ALV,
EKKO_W TYPE SLIS_FIELDCAT_ALV,
EKPO_B TYPE SLIS_T_FIELDCAT_ALV,
EKPO_W TYPE SLIS_FIELDCAT_ALV,
EVENTS_B TYPE SLIS_T_EVENT,
EVENTS_W TYPE SLIS_ALV_EVENT.
PERFORM GET_VAL.
REPID = SY-REPID.
SELECT LIFNR NAME1 FROM LFA1 INTO TABLE ITAB WHERE LIFNR IN VENDOR.
*perform val USING USER_COMMAND sel.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = REPID
IT_FIELDCAT = LFA1_B
IT_EVENTS = EVENTS_B
TABLES
T_OUTTAB = ITAB.
*& Form GET_VAL
text this is to put column headings
FORM GET_VAL.
LFA1_W-FIELDNAME = 'LIFNR'.
LFA1_W-REF_TABNAME = 'LFA1'.
LFA1_W-REF_FIELDNAME = 'LIFNR'.
APPEND LFA1_W TO LFA1_B.
LFA1_W-FIELDNAME = 'NAME1'.
LFA1_W-REF_TABNAME = 'LFA1'.
LFA1_W-REF_FIELDNAME = 'NAME1'.
APPEND LFA1_W TO LFA1_B.
EKKO_W-FIELDNAME = 'EBELN'.
EKKO_W-REF_TABNAME = 'EKKO'.
EKKO_W-REF_FIELDNAME = 'EBELN'.
APPEND EKKO_W TO EKKO_B.
EKKO_W-FIELDNAME = 'AEDAT'.
EKKO_W-REF_TABNAME = 'EKKO'.
EKKO_W-REF_FIELDNAME = 'AEDAT'.
APPEND EKKO_W TO EKKO_B.
EKPO_W-FIELDNAME = 'EBELP'.
EKPO_W-REF_TABNAME = 'EKPO'.
EKPO_W-REF_FIELDNAME = 'EBELP'.
APPEND EKPO_W TO EKPO_B.
EKPO_W-FIELDNAME = 'MATNR'.
EKPO_W-REF_TABNAME = 'EKPO'.
EKPO_W-REF_FIELDNAME = 'MATNR'.
APPEND EKPO_W TO EKPO_B.
EVENTS_W-NAME = 'USER_COMMAND'.
EVENTS_W-FORM = 'VAL'.
APPEND EVENTS_W TO EVENTS_B.
ENDFORM. "GET_VAL
*& Form VAL
text
-->USER_COMMANtext
-->SEL text for retrieving data
FORM VAL USING USER_COMMAND LIKE SY-UCOMM SEL TYPE SLIS_SELFIELD.
DATA : VEN(10) TYPE N,
PO(10) TYPE N.
DATA : MAT(10) TYPE C.
IF SEL-FIELDNAME = 'LIFNR'.
VEN = SEL-VALUE.
SELECT EBELN AEDAT FROM EKKO INTO TABLE JTAB WHERE LIFNR = VEN.
CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = REPID
I_STRUCTURE_NAME = EKKO_B
IT_FIELDCAT = EKKO_B
IT_EVENTS = EVENTS_B
TABLES
T_OUTTAB = JTAB.
ENDIF.
IF SEL-FIELDNAME = 'EBELN'.
PO = SEL-VALUE.
SELECT EBELP MATNR FROM EKPO INTO TABLE KTAB WHERE EBELN = PO.
CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
EXPORTING
I_TITLE = 'ITEM DETAILS'
I_TABNAME = 'EKPO'
IT_FIELDCAT = EKPO_B
I_CALLBACK_PROGRAM = REPID
IMPORTING
ES_SELFIELD = SEL
TABLES
T_OUTTAB = KTAB.
ENDIF.
logic to select a record
IF SEL-FIELDNAME = 'MATNR'.
MAT = SEL-VALUE.
SET PARAMETER ID 'MAT' FIELD MAT.
CALL TRANSACTION 'MM02' AND SKIP FIRST SCREEN.
ENDIF.
ENDFORM. "VAL -
What is the difference between function groups and Object Orientation
Hello all
I have read about this on the help.sap.com site, I still do not understand it completely, can some one explain me with a simple example please ? (Not the increment counter example please !).
Thanks a ton.
Rgds
SameerHello Sameer
When you call a module of a function group for the first time in your program then the entire function group is loaded. However, this can happen only once within your report and all global variables within the function group will have the same values all the time (except they are manipulated via fm's).
In contrast, you can create as many instances of the same class as you want and all of them can have different global attributes. And all these instances are independent of each other.
On the other hand, if fm_A changes global attributes of the function group and fm_B reads these attributes then fm_B read the changed values.
Or in other words:
Function Group = can be instantiated only ONCE
Class = can be instantiated unlimited
Regards
Uwe
Maybe you are looking for
-
When I attempt to sign out of Hot Mail by clicking "Sign Out," I get the "Sign In" instruction as I always have, however, the green Firefox navigation button remains on bright green (not going to gray) and my MSN home page will not close automaticall
-
Upgrading to 10.5.6
trying to upgrade to 10.5 and I get a failed install and now when I try to restart I get a screen that says, localhost:/root# What do I do?
-
Just bought the Mac Book Pro for my photography - set up and running last night, but the user screens ie Hot Mail, safari etc.. are only half size sat on the background - I have exhausted the help and calibration log...surel this must be simple to f
-
Service Virtualization ...?
Hi Experts, Here is the problem at hand I have two enterprise systems A and B which communicate via a Web Service, I need to develop an intermittent system that can monitor this web service grabbing the interactions (request/responses) between these
-
Hello Suners, I'm developing a JSF web application that uses JFreeChart. I'm having a problem when i run the project i get this error : java.lang.IllegalStateException: ContainerBase.addChild: start: org.apache.catalina.LifecycleException: java.lang.