Designing Tables Designing Tables

Table Control

The table control provides a look similar to spreadsheet programs, with column and row headers that may select entire columns or rows, a new selection logic, an inbuilt scroll mechanism, and much more. This control makes interaction with tables much easier for the users, but also for the developer.

In cases of one-line tables the table control should replace the step loop when presenting structures in table form. It offers improved usability and clarity compared with the loop due to the range of functions installed and the more precise visualization. You still have to implement multi-line tables in steploop technique.

Areas of Application

The table control should replace loops in the system. In general terms using the table control has the following advantages:

  • Scrollbar directly on the table control, not at the edge of the window. This is particularly important where multiple table controls appear on a screen
  • Easier to select lines (single and multiple)

When converting from table control to loop, functions specific to table control (for example, Sort, Line insert, Line delete) should be removed from the application toolbar and placed near the table control.
The way it is presented makes the table control unsuitable for editor simulation.

Rules of Application

Configuration

Users can change the width of columns and rearrange their order.

Configuration should be switched off in the following cases:

  • If there is no meaningful way to configure the table control
  • If the table control is dynamically modified by the program. Problems may arise if configuration is not switched off

When configuration is active, user settings take priority over all other settings.

Dynamic Modification

The program can dynamically modify the table control (for example, columns can be hidden). When a table control is dynamically modified configuration must be switched off to avoid unforeseen problems. Either the program or the user can control the table control, but not both.

Dynamic modification means that a LOOP AT SCREEN, for example, can influence the appearance of the table control. Under no circumstances should a pseudo-modification be executed by manipulating table TCVIEW in which settings configured by the user are stored. This could lead to unforeseen problems since the table is defined as a customer table and is supplied empty.

Where users are to be given a choice of views, these should be defined by the application and offered as pushbuttons.

Examples of the different design possibilities can be found in the example transaction BIBS.

Look of the Table Control

Depending on the setting of its attributes the table control can have a very different look. We show two typical applications of the table control, namely entry and display tables.

Figure 1: An entry table with single-selection for lines implemented with the table control

Figure 2: An display table implemented with the table control

 

top top

Source:  SAP R/3 Style Guide