Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

get late

Former Member
0 Likes
902

could any body explain the get and get late events?

could any body explain the get and get late events?

2 REPLIES 2
Read only

Former Member
0 Likes
609

Hi,

When you link a logical database with an executable program, the GET statements determine the depth to which the logical database is read. When you call the function module LDB_PROCESS, you determine the depth by specifying a node name in the CALLBACK parameter. For each node for which you request data, a callback routine can be executed at two points. These correspond to the GET and GET LATE events in executable programs. In the table parameter CALLBACK, you specify the name of the callback routine and the required execution point for each node. A callback routine is a subroutine in the calling program or another program that is to be executed at the required point.

For the GET event, the callback routine is executed directly after the data has been read for the node, and before the subordinate nodes are processed. For the GET_LATE event, the callback routine is processed after the subordinate nodes have been processed.

The line type of the table parameter CALLBACK is the flat structure LDBCB from the ABAP Dictionary. It has the following components:

LDBNODE

Name of the node of the logical database to be read.

GET

A flag (contents X or SPACE), to call the corresponding callback routine at the GET event.

GET_LATE

A flag (contents X or SPACE), to call the corresponding callback routine at the GET LATE event.

Example

TABLES SPFLI.

SELECT-OPTIONS S_CARR FOR SPFLI-CARRID.

TYPE-POOLS: RSDS, RSFS.

DATA: CALLBACK TYPE TABLE OF LDBCB,

CALLBACK_WA LIKE LINE OF CALLBACK.

DATA: SELTAB TYPE TABLE OF RSPARAMS,

SELTAB_WA LIKE LINE OF SELTAB.

DATA: TEXPR TYPE RSDS_TEXPR,

FSEL TYPE RSFS_FIELDS.

CALLBACK_WA-LDBNODE = 'SPFLI'.

CALLBACK_WA-GET = 'X'.

CALLBACK_WA-GET_LATE = 'X'.

CALLBACK_WA-CB_PROG = SY-REPID.

CALLBACK_WA-CB_FORM = 'CALLBACK_SPFLI'.

APPEND CALLBACK_WA TO CALLBACK.

CLEAR CALLBACK_WA.

CALLBACK_WA-LDBNODE = 'SFLIGHT'.

CALLBACK_WA-GET = 'X'.

CALLBACK_WA-CB_PROG = SY-REPID.

CALLBACK_WA-CB_FORM = 'CALLBACK_SFLIGHT'.

APPEND CALLBACK_WA TO CALLBACK.

SELTAB_WA-KIND = 'S'.

SELTAB_WA-SELNAME = 'CARRID'.

LOOP AT S_CARR.

MOVE-CORRESPONDING S_CARR TO SELTAB_WA.

APPEND SELTAB_WA TO SELTAB.

ENDLOOP.

CALL FUNCTION 'LDB_PROCESS'

EXPORTING

LDBNAME = 'F1S'

VARIANT = ' '

EXPRESSIONS = TEXPR

FIELD_SELECTION = FSEL

TABLES

CALLBACK = CALLBACK

SELECTIONS = SELTAB

EXCEPTIONS

LDB_NOT_REENTRANT = 1

LDB_INCORRECT = 2

LDB_ALREADY_RUNNING = 3

LDB_ERROR = 4

LDB_SELECTIONS_ERROR = 5

LDB_SELECTIONS_NOT_ACCEPTED = 6

VARIANT_NOT_EXISTENT = 7

VARIANT_OBSOLETE = 8

VARIANT_ERROR = 9

FREE_SELECTIONS_ERROR = 10

CALLBACK_NO_EVENT = 11

CALLBACK_NODE_DUPLICATE = 12

OTHERS = 13.

IF SY-SUBRC <> 0.

WRITE: 'Exception with SY-SUBRC', SY-SUBRC.

ENDIF.

FORM CALLBACK_SPFLI USING NAME TYPE LDBN-LDBNODE

WA TYPE SPFLI

EVT TYPE C

CHECK TYPE C.

CASE EVT.

WHEN 'G'.

WRITE: / WA-CARRID, WA-CONNID, WA-CITYFROM, WA-CITYTO.

ULINE.

WHEN 'L'.

ULINE.

ENDCASE.

ENDFORM.

FORM CALLBACK_SFLIGHT USING NAME TYPE LDBN-LDBNODE

WA TYPE SFLIGHT

EVT TYPE C

CHECK TYPE C.

WRITE: / WA-FLDATE, WA-SEATSOCC, WA-SEATSMAX.

ENDFORM.

The program is written to read data using the logical database F1S. The structure of F1S is:

A program-specific selection screen is defined at the beginning of the program. This requires the TABLES statement. Next, the required variables are defined for the interface.

The internal table CALLBACK is filled so that various callback routines are called in the program for the two nodes SPFLI and SFLIGHT. For SPFLI, the routine is to be called for GET and GET_LATE, for SFLIGHT, only at the GET event.

The internal table SELTAB is filled with values for the node SPFLI from the selection table S_CARR from the program-specific selection screen.

The program then calls the function module LDB_PROCESS with these parameters.

The subroutines CALLBACK_SPFLI and CALLBACK_SFLIGHT serve as callback routines. The interface parameter WA is fully typed, so you can address the individual components of the work areas. The events GET and GET LATE are handled differently in CALLBACK_SPFLI.

Reward if useful..

Read only

Former Member
0 Likes
609

Check this link.

http://help.sap.com/saphelp_sm32/helpdata/en/d2/cb4538455611d189710000e8322d00/content.htm

GET table Point at which the logical database offers a line of the database table

The most important event for report programs with an attached logical database is the moment at which the logical database program has read a line from a database table (see Accessing Data Using Logical Databases ).

To start a processing block at this event, use the GET statement as follows:

Syntax

GET table [FIELDS list].

After this statement, you can work with the current line of the database table . The data is provided in the table work area list table table.

GET table LATE Point after processing all tables which are hierarchically subordinate to the database table table tablin the structure of the logical database.

To start a processing block at the moment after the system has processed all database tables of a logical database that are hierarchically inferior to a specific database table, use the event keyword GET as follows:

Syntax

GET table table LATE [FIELDS list.

In analogy to report programs that use only SELECT statements (see table in Comparison of Access Methods ), the processing block of a GET list table table LATE statement would appear directly before the ENDSELECT statement in the SELECT loop for the database table .

Also chk this for sample code

http://help.sap.com/saphelp_nw70/helpdata/en/9f/db9aa335c111d1829f0000e829fbfe/content.htm