Paging technique in List UIBB

If an application has to retrieve and display a very large amount of records (tens of thousands for example) in an FPM GUIBB, performance problems are very likely to occur if all the data is loaded at once. The paging mechanism offered by FPM prevents this.Paging implies that not all data of a list is loaded at once; only those portions that are needed at a certain time are loaded.

Paging in  List UIBB with component FPM_LIST_UIBB ( but not FPM_LIST_UIBB_ATS ) can be achieved by implementing Interface: IF_FPM_GUIBB_LIST_PAGING in the feeder class. 

Also paging in FORM Repeater compoenent can be done by Implement the paging interface IF_FPM_GUIBB_FORM_REP_PAGING.

 This paging technique is for the old list UIBB only (wd abap component FPM_LIST_UIBB). It is therefore deprecated and it should NOT be used in new developments. Instead developers really should go with the new List ATS UIBB (wd abap component FPM_LIST_UIBB_ATS). With this GUIBB one can easily process up to 100.000 rows .


The below post describes how to achieve paging in list uibb in an ovp application that shows sales order header information.

So we have the table type.

1

The table contains 193 records.

2

Create a list feeder class and implement the interfaces.

3

Create an attribute.

4

Now we have to put some codes in the marked methods.

56

Here we have to activate the paging in list uibb.

7

This tell the UIBB about the total number of records .

8

This is the method which actually passes the required number of records to the list frontend.

910

Create an application( here we have created an OVP but in needed it can be an OIF appl) from tx- FPM_WB.

11

Add list component and by default component name appears as- FPM_LIST_UIBB_ATS, so change it to FPM_LIST_UIBB and create a configuration.

12

Provide the feeder class and the row count as 10.

13

Add the needed columns and test the application.

14

So here we have the list uibb. Though we have 193 records present in the GT_VBAK table but only few records passed to the list front end. If the user requests by scrolling in the list then the requested records are loaded from the feeder class to the list front end.

1516


 

Leave a Reply