Skip to Content
author's profile photo Former Member
Former Member

Differences between ABAP Programming and Dialog Programming

Can any one explain me the Differences between ABAP Programming and Dialog Programming

Add a comment
10|10000 characters needed characters exceeded

Assigned Tags

Related questions

8 Answers

  • Best Answer
    author's profile photo Former Member
    Former Member
    Posted on Jan 29, 2008 at 04:28 AM

    Hi

    ABAP Programs are only extracting data and display purpose only.

    Whereas Dailog programs are displaying data as well as updating the data in database also.

    We can update data using abap programs also but it does'nt ensure that data integrity. There is no validation here.

    Where as in dailog program validations can be done by using primary and foreign keys.

    Reward me if useful.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 29, 2008 at 04:27 AM

    Hi,

    Report Programming is used to give you a list as output. But dialog programming allows you to modify screen output based on use actions.

    The following is a good document on this regard.

    http://help.sap.com/saphelp_nw70/helpdata/en/fc/eb2d5a358411d1829f0000e829fbfe/frameset.htm

    http://help.sap.com/saphelp_nw70/helpdata/en/fc/eb2d81358411d1829f0000e829fbfe/frameset.htm

    regards,

    Renjith Michael.

    Edited by: Renjith Michael on Jan 29, 2008 9:58 AM

    Add a comment
    10|10000 characters needed characters exceeded

  • Posted on Jan 29, 2008 at 04:30 AM

    Hi Steve,

    Report Programs:

    1. Reports are stand alone programs.

    2. We use reports to read data base tables & represent results in Lists

    3. Reports are collection of processing blocks, controlled by System calls depending on events.

    4.Reports can call Dialogue programs and vice versa.

    Dialog Programming

    1.Dialogue programs are not stand alone programs. (we

    have to link the dialogue programs to at least one or

    more SCREENS & TRANSACTION CODES)

    2. We use Dialogue Programs to read & change

    Database tables.

    3.Dialogue programs are controlled by Screen flow logic.

    4.Dialogue program is also called as Module pool program

    or TRANSACTION.

    5.These module pools are separated in to PBO and PAI

    events.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 29, 2008 at 04:37 AM

    Hi,

    Report programs follow a relatively simple programming model whereby a user optionally enters a set of parameters (e.g. a selection over a subset of data) and the program then uses the input parameters to produce a report in the form of an interactive list. The output from the report program is interactive because it is not a passive display; instead it enables the user, through ABAP language constructs, to obtain a more detailed view on specific data records via drill-down functions, or to invoke further processing through menu commands, for instance to sort the data in a different way or to filter the data according to selection criteria. This method of presenting reports has great advantages for users who must deal with large quantities of information and must also have the ability to examine this information in highly flexible ways, without being constrained by the rigid formatting or unmanageable size of "listing-like" reports. The ease with which such interactive reports can be developed is one of the most striking features of the ABAP language.

    The term "report" is somewhat misleading in the sense that it is also possible to create report programs that modify the data in the underlying database instead of simply reading it.

    Dialog-driven programs, or any program started using a transaction code, are known as SAP transactions, or just transactions. The term "transaction" is used in several different contexts in the IT world. In OLTP (Online Transaction Processing), where several users are working in one system in dialog mode, the term "transaction" stands for a user request. In conjunction with database updates, it means a change in state in the database.

    Programs with type M can only be started using a transaction code, in which an initial screen is defined. Programs with type 1 can be started either using a transaction code, or by entering the program name in one of the transactions SE38 or SA38. Screens call dialog modules in the associated ABAP program from their flow logic. Type M programs serve principally as containers for dialog modules, and are therefore known as module pools. Type 1 programs, or function modules can also switch to dialog mode by calling screens using the CALL SCREEN statement. The program code of the corresponding executable program or function pool must then contain the corresponding dialog modules.

    Programs that are partially or wholly dialog-driven cannot be executed in the background. They are therefore sometimes referred to as dialog programs.

    Regards,

    Priyanka.

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 29, 2008 at 04:40 AM

    Hi,

    using reports

    we can dispaly the data

    insert and modify the data

    is a excecutable program

    they can be used only for data extraction(simply we can say output)

    it constists of 2 screens 1.selection screen (optional) 2.listoutput

    Dialog is a module pool program.

    It has to be executed via a transaction only.

    Dialog programming is used for customization ofscreens

    we can create our own screens and transactions

    we can't execute directly this

    they can be used for data extraction and manipulation (can perform DML operations)

    it consists of n number of screens

    with regards,

    sowjanya.gosala

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 29, 2008 at 04:41 AM

    Steve,

    Check below links,

    Here is a clear difference between the two programmings.

    Report programs follow a relatively simple programming model whereby a user optionally enters a set of parameters (e.g. a selection over a subset of data) and the program then uses the input parameters to produce a report in the form of an interactive list. The output from the report program is interactive because it is not a passive display; instead it enables the user, through ABAP language constructs, to obtain a more detailed view on specific data records via drill-down functions, or to invoke further processing through menu commands, for instance to sort the data in a different way or to filter the data according to selection criteria. This method of presenting reports has great advantages for users who must deal with large quantities of information and must also have the ability to examine this information in highly flexible ways, without being constrained by the rigid formatting or unmanageable size of "listing-like" reports. The ease with which such interactive reports can be developed is one of the most striking features of the ABAP language.

    The term "report" is somewhat misleading in the sense that it is also possible to create report programs that modify the data in the underlying database instead of simply reading it.

    Dialog-driven programs, or any program started using a transaction code, are known as SAP transactions, or just transactions. The term "transaction" is used in several different contexts in the IT world. In OLTP (Online Transaction Processing), where several users are working in one system in dialog mode, the term "transaction" stands for a user request. In conjunction with database updates, it means a change in state in the database.

    Programs with type M can only be started using a transaction code, in which an initial screen is defined. Programs with type 1 can be started either using a transaction code, or by entering the program name in one of the transactions SE38 or SA38. Screens call dialog modules in the associated ABAP program from their flow logic. Type M programs serve principally as containers for dialog modules, and are therefore known as module pools. Type 1 programs, or function modules can also switch to dialog mode by calling screens using the CALL SCREEN statement. The program code of the corresponding executable program or function pool must then contain the corresponding dialog modules.

    Programs that are partially or wholly dialog-driven cannot be executed in the background. They are therefore sometimes referred to as dialog programs.

    Don't forget to reward if useful...

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 29, 2008 at 04:43 AM

    hi,

    the main difference is that dialog programs are run only through transaction codes.

    Dialog programming is used for customization ofscreens

    reward if useful..

    Add a comment
    10|10000 characters needed characters exceeded

  • author's profile photo Former Member
    Former Member
    Posted on Jan 29, 2008 at 04:45 AM

    Hi,

    ABAP PROGRAMING:

    An ABAP program consists of individual ABAP statements. Each statement begins with a keyword and ends with a period.

    PROGRAM FIRST_PROGRAM.

    WRITE 'My First Program'.

    This example contains two statements, one on each line. The keywords are PROGRAM and WRITE. The program displays a list on the screen. In this case, the list consists of the line "My First Program".

    The keyword determines the category of the statement. For an overview of the different categories, refer to ABAP Statements.

    You can execute different parts of programs conditionally or in loops using the standard keywords IF, CASE, DO, and WHILE.

    When controlling the flow of an ABAP program, remember that the structure of the program is made up of processing blocks that cannot be nested. This section describes how to control the flow of a program within a processing block. The keywords covered here do not allow you to branch outside the processing block in which you use them. You can regard this as internal control of an ABAP program, as opposed to the external control provided by events in the ABAP runtime environment.

    To control the internal flow of a processing block, you can use control structures to divide it up into smaller statement blocks according to the principles of structured programming.

    DIALOG PROGRAMING:

    This is a classical programming method that is based on dynpros and dialog transactions.

    Classic Application Programming

    Separating the application layer from the presentation layer means that when you run an ABAP application program requiring user interaction, control of the program is continually passed backwards and forwards between these layers. While a screen is ready for input, the corresponding SAP GUI of the presentation layer is active. During this time, the application layer is not active for the application program. Therefore, the ABAP application servers are free for other tasks. Once the user has entered data on the screen, program control passes back to the application layer. Now, the presentation layer is inactive. The SAP GUI is still visible to the user during this time, and it is still displaying the screen, but it cannot accept user input. The SAP GUI does not become active again until the application program has called a new screen and sent it to the presentation server.

    Consequently, if you use this method, you need to divide dialog programs into single dialog steps, with each of these steps comprising the programming logic between two successive screens.

    REGARDS,

    VASAVI.

    KINDLY REWARD IF HELPFUL.

    Add a comment
    10|10000 characters needed characters exceeded

Before answering

You should only submit an answer when you are proposing a solution to the poster's problem. If you want the poster to clarify the question or provide more information, please leave a comment instead, requesting additional details. When answering, please include specifics, such as step-by-step instructions, context for the solution, and links to useful resources. Also, please make sure that you answer complies with our Rules of Engagement.
You must be Logged in to submit an answer.

Up to 10 attachments (including images) can be used with a maximum of 1.0 MB each and 10.5 MB total.