Skip to content
NextLytics
Megamenü_2023_Über-uns

Shaping Business Intelligence

Whether clever add-on products for SAP BI, development of meaningful dashboards or implementation of AI-based applications - we shape the future of Business Intelligence together with you. 

Megamenü_2023_Über-uns_1

About us

As a partner with deep process know-how, knowledge of the latest SAP technologies as well as high social competence and many years of project experience, we shape the future of Business Intelligence in your company too.

Megamenü_2023_Methodik

Our Methodology

The mixture of classic waterfall model and agile methodology guarantees our projects a high level of efficiency and satisfaction on both sides. Learn more about our project approach.

Products
Megamenü_2023_NextTables

NextTables

Edit data in SAP BW out of the box: NextTables makes editing tables easier, faster and more intuitive, whether you use SAP BW on HANA, SAP S/4HANA or SAP BW 4/HANA.

Megamenü_2023_Connector

NextLytics Connectors

The increasing automation of processes requires the connectivity of IT systems. NextLytics Connectors allow you to connect your SAP ecosystem with various open-source technologies.

IT-Services
Megamenü_2023_Data-Science

Data Science & Engineering

Ready for the future? As a strong partner, we will support you in the design, implementation and optimization of your AI application.

Megamenü_2023_Planning

SAP Planning

We design new planning applications using SAP BPC Embedded, IP or SAC Planning which create added value for your company.

Megamenü_2023_Dashboarding

Dashboarding

We help you with our expertise to create meaningful dashboards based on Tableau, Power BI, SAP Analytics Cloud or SAP Lumira. 

Megamenü_2023_Data-Warehouse-1

SAP Data Warehouse

Are you planning a migration to SAP HANA? We show you the challenges and which advantages a migration provides.

Business Analytics
Megamenü_2023_Procurement

Procurement Analytics

Transparent and valid figures are important, especially in companies with a decentralized structure. SAP Procurement Analytics allows you to evaluate SAP ERP data in SAP BI.

Megamenü_2023_Reporting

SAP HR Reporting & Analytics

With our standard model for reporting from SAP HCM with SAP BW, you accelerate business activities and make data from various systems available centrally and validly.

Megamenü_2023_Dataquality

Data Quality Management

In times of Big Data and IoT, maintaining high data quality is of the utmost importance. With our Data Quality Management (DQM) solution, you always keep the overview.

Career
Megamenü_2023_Karriere-2b

Working at NextLytics

If you would like to work with pleasure and don't want to miss out on your professional and personal development, we are the right choice for you!

Megamenü_2023_Karriere-1

Senior

Time for a change? Take your next professional step and work with us to shape innovation and growth in an exciting business environment!

Megamenü_2023_Karriere-5

Junior

Enough of grey theory - time to get to know the colourful reality! Start your working life with us and enjoy your work with interesting projects.

Megamenü_2023_Karriere-4-1

Students

You don't just want to study theory, but also want to experience it in practice? Check out theory and practice with us and experience where the differences are made.

Megamenü_2023_Karriere-3

Jobs

You can find all open vacancies here. Look around and submit your application - we look forward to it! If there is no matching position, please send us your unsolicited application.

Blog
NextLytics Newsletter Teaser
Sign up now for our monthly newsletter!
Sign up for newsletter
 

Table Maintenance BAdI - Meta Method Explained

◀ Back to Knowledge Base

In this article you will learn everything about the META method of the table maintenance BAdI. You will get an understanding of different types of fields and receive an overview of all parameters. At the end of the article you can find a sample implementation you can use for your own project.

Our Table Maintenance BAdI blog series in overview

  1. Table Maintenance - How to Implement a BAdI (general overview)
  2. Table Maintenance BAdI - Meta Method Explained
  3. Table Maintenance BAdI - Data Method Explained
  4. Table Maintenance BAdI - Update Method Explained
  5. Table Maintenance BAdI - Error Handling Explained

Using the logic inside the META method, you can control properties of table as a whole as well as the respective single fields. You can use this method to overwrite settings set in front end. Moreover, you can change editability and visibility of certain fields. Furthermore, you can change the search behaviour from dropdown to search and vice versa. Finally, you can utilize this method to execute authorization check on table level.

This exit is implemented via interface /NLY/IF_BADI_EDITOR, method SET_META_EXIT.

Method for meta data of table

There are different types of fields, which are explained below.

Key fields

Generally, key fields should not be changed in edit mode, as this would result in new entries. Therefore, in case of an update event, key fields should always be locked and not editable.

In any other scenario the following three cases are possible: 

  • 1 – locked            (the field is locked) 
  • 2 – editable - required     (the field is required and null is not allowed) 
  • 3 – editable - not required     (the field is not required and null is allowed)

In the table below you can find an overview.

Key Field

Insert

Update

true (X)

key field 

1

locked

1

locked (key fields are not editable)

2

editable (required)

3

editable (not required)

false ( )

non-key field

1

locked 

1

locked 

2

editable (required)

2

editable (required)

3

editable (not required)

3

editable (not required)

 

Required fields

Per default, key fields are configured as required and non-key fields as not required. But both settings can be changed.

A non-key field can be set as required or mandatory for input. For example, if business users want the customer category attribute to be always filled, you can set this field to required, even if it is not a key field.

The other way around, it is also possible to define a key field as not required, therefore not mandatory for input. This could be the case if your semantic key consists of multiple fields and you allow initial values (null) for one of them.

Non-editable fields

You can set fields to be not editable, so the user cannot change the values of the field on edit or insert actions. The best example are fields like "Changed by" or "Changed on", which will be populated automatically before the database update, but should not be manually changed by the user.

Overview of all parameters

In the tables below you can find an overview of all parameters and possible values.

Table parameters

Property

Type

Description

Possible Values

TBLLEN

CHAR 30

Table length

NextLytics internal use only

TECHNAME

CHAR 30

Technical name of the table (e.g. /BIC/AZOMACOST2)

 

TABNAME

CHAR 30

Table name (e.g. ZOMACOST)

 

DESCR

CHAR 30

Table description

 

EDITABLE

CHAR 1

Table edit setting

1    Editable

2    Insertable

3    Editable and Insertable

4    Deletable

5    Deletable and Editable

6    Deletable and Insertable

7    Deletable, Editable and Insertable

IS_INLINE

CHAR 1

Enable Inline Editing

1 Yes

2 No

IS_LOC_FILTER

CHAR 1

Enable Local Filter

1 Yes

2 No

IS_PRE_FILTER

CHAR 1

Enable Global Filter

1 Yes

2 No

IS_DELETE_ALL

CHAR 1

Delete ADSO Content

1 Delete Action available    

SUPPRESS_EXPORT

CHAR 1

Suppress Export

X Suppress Export

JSFUNCTIONS

STRING

JavaScript Functions

NextLytics internal use only

BUTTONS

 

Table

Custom Buttons Settings.

See next table for more details

 

F1HELP

STRING

F1 Help

NextLytics internal use only

CHECK_AUTH_INFOPROV

CHAR 1

Check analysis authorization for InfoProvider

1 Yes


ACTIVATION

CHAR 1

Activation

1 - activate at once (default value)

2 - no activation 

If no entry is maintained, automatic activation takes place.

ALIAS_TTYPE

CHAR 10

Alias Table Type

 

ALIAS_TABNAME

CHAR 10

Alias Table Name

 

CONTENT_ADMIN

CHAR 1

 

Content Admin ('X'=yes, ' '=no

CONFIG_ADMIN

CHAR 1

 

Configuration Admin

('X'=yes, ' '=no)

TABTYPE

CHAR 10

 

Table Type

TABDESC

STRING

 

Description

MAX_ROWS

NUMC

Changes the max. rows shown in a table.

Normally this setting is set to 1000 and can be changed in the configuration. If the table type is custom, it makes sense to configure MAX_ROWS and C_TOTAL_ROWS via coding. 

 

Field parameters

Property

Type

Description

Possible Values

FNAME

CHAR 30

Field name

 

LEN

NUMC 6

Length (No. of Characters)

 

INTLEN

NUMC 6

Internal Length (No. of Characters)

 

TYPE

CHAR 1

ABAP Data Type

C    Character String

D    Date (Date: YYYYMMDD)

T    Time (Time: HHMMSS)

P    Packed number

g    Character string with variable length (ABAP type STRING)

G    Long text (XXL)

Y    File (XXL)

>    Timestamp

M    HTML Content

j    Static Boxed Components

J Checkbox ('1'=Yes, '2'=No)

INTTYPE

CHAR 1

Internal ABAP Data Type

C    Character String

N    Character String with Digits Only

D    Date (Date: YYYYMMDD)

T    Time (Time: HHMMSS)

X    Byte Seq. (hexadecimal), in DDIC metadata also for INT1/2/4

I    Integer number (4-byte integer with sign)

b    1-byte integer, integer number <= 254

s    2-byte integer, only for length field before LCHR or LRAW

P    Packed number

F    Floating point number to accuracy of 8 bytes

g    Character string with variable length (ABAP type STRING)

y    Byte sequence with variable length (ABAP type XSTRING)

u    Structured type, flat

v    Structured type, deep

h    Table type

V    Character string (old Dictionary type VARC)

r    Reference to class/interface

l    Reference to data object

a    Decimal Floating Point Number, 16 Digits

e    Decimal Floating Point Number, 34 Digits

j    Static Boxed Components

k    Generic Boxed Components

z    Node Line for Structured Objects

8    Whole Number (8-Byte Integer with Sign)

DECIMALS

NUMC 6

Number of Decimal Places

 

DECIMALS_DISP

CHAR 1

Decimal places display

 

DESCR

CHAR 60

Short Description of Repository Objects

 

KEYFLAG

CHAR 1

Identifies a key field of a table

X    Key field

DISPLAY

CHAR 1

Show or hide field (Visibility)

1   Visible

2    Not Visible, but still in global filter (prefilter)

3   Only Visible in Table View

4   Not Visible - not transferred to frontend

So value 2 can be used if field should not be available for the user, but still be available in the global filter/ prefilter for backend filtering.

Value 4 is to be used, when data should not be sent to frontend and in no way be available to the end user.

EDITABLE

CHAR 1

Editabiltity setting

1    Locked (keep target value)

2    Editable - Required

3    Editable - Not Required

4    Locked (overwrite target value)

SUPPRESS_EXPORT

CHAR 1

Suppress Export

X    Suppress Export

SUPPRESS_LOC_FILTER

CHAR 1

Suppress local filter

X    Suppress local filter

SUPPRESS_PRE_FILTER

CHAR 1

Suppress global filter

X    Suppress global filter

SUPPRESS_GROUP_BY

CHAR 1

Suppress group by

X    Suppress group by

CELLRENDERER

STRING

Cell renderer as Function in JS

 

F4HELP

Table

Search Info, see next table for details

 

F1HELP

STRING

F1 Help

NextLytics internal use only

VARIABLES-NAME

CHAR 30

Variable Name

 

VARIABLES-DESCR

CHAR 60

Variable Description

 

INFOOBJECT

CHAR 30

InfoObject

 

CONVEXIT

CHAR 5

Conversion Routine

E.g. ALPHA or PERI6. Usually changes to this field are not needed

IOBJTP

CHAR 3

Type of an InfoObject

CHA    Characteristic

KYF    Key figure

TIM    Time characteristic

DPA    Data packet characteristic

UNI    Unit of measurement

XXL    XXL InfoObject

DDIC_POSITION

NUMC 4

Position of the table field in DDIC

 

UI_POSITION

NUMC 4

Position of the table field in User Interface

 

CHECK_INFOOBJECT_INTEGRITY

CHAR 1

Check InfoObject integrity

1 yes

2 no

IOBJ_AUTH_REL_FLAG

CHAR 1

Authorization relevant flag for InfoObject

X yes

NextLytics internal use only, will get populated with an X if this InfoObject is authorization relevant

DISPLAY_TEXT

Table

Characteristic display

NextLytics internal use only 

6    No Display

0    Key and Text

1    Text

2    Key

3    Text and Key

4    Long Text

5    Medium-Length Text

7    Short Text

B    Text and Key as Short Text

C    Text and Key as Medium Text

D    Text and Key as Long Text

E    Key and Text as Short Text

F    Key and Text as Medium Text

G    Key and Text as Long Text ) 

HIERARCHY_FOR_AUTH

CHAR 30

Hierarchy authorization

 

 

F4 Help

The table below explains the fields of F4HELP in detail.

Property

Type

Description

Possible Values

SEARCHMODE

CHAR 6

Search Type

DDIC    Search based on table and field in Data Dictionary

IOBJ    InfoObject

CUSTOM    Custom

SEARCHNAME

CHAR 60

Search Name

For example name of the InfoObject, if SEARCHMODE IOBJ is used

SEARCHSTYLE

CHAR 30

Search Style - dropdown or search bar

SEARCH show search bar

DROPDOWN    show dropdown

Remark: dropdown recommended only for less than 50 values 

MIN_CHAR

NUMC 3

Number of minimum characteristics to be entered before search will start

 

STRICT

CHAR 1

Defines whether adding results to dropdown is allowed.

1 adding results is not allowed

 

Buttons

The table below explains the fields of BUTTONS in detail.

Property

Type

Description

Possible Values

NAME

CHAR 30

Button Name

 

DESCR

CHAR 60

Description

 

ICON

CHAR 60

Icon

Any regular icon from font-awesome, like: paper-plane

PARENT

CHAR 30

Button Name

 The button name of an other button

LOCATION

CHAR 10

Location of the Button in UI

TOP - Top menu in the upper right of NextTables
CONTEXT - Only in the context menu via right click
Quick - Quick action menu on the left

SORT_ORDER

NUMC 6

Sort order

Any number

ACTION

CHAR 12

Action to be performed

see tutorial

MESSAGE

STRING

Message that blocks the request

see tutorial

TOOLTIP

CHAR 255

Button Tooltip

 

 

More Information on buttons can be found in this tutorial.

 

BAdI Structure

You can use the following code snippet as orientation while implementing your own logic. You can find a practical application of this method in this article.


   FIELD-SYMBOLS:  <l_s_fields_info> TYPE /nly/ts_fields_info,
<l_s_f4help>      TYPE /nly/ts_search_info.

*Change properties as needed

    LOOP AT CH_T_FIELDS_INFO ASSIGNING <l_s_fields_info>.

      CASE <l_s_fields_info>-fname.

        WHEN 'FIELD_NAME_1'.

          <l_s_fields_info>-editable = '1'.

        WHEN 'FIELD_NAME_2'.

          loop at <l_s_fields_info>-f4help assigning <l_s_f4help>.

            <l_s_f4help>-searchstyle = 'DROPDOWN'.

            ENDLOOP.

      ENDCASE.

   ENDLOOP.

Error Handling and Messages

You can pass messages to the user using the CT_MESSAGES table. Please refer to this article for detailed information.


Which License is needed for this feature Professional | Enterprise


Do you have a question regarding NextTables? Already a customer? Please click here for Support.