From 809304bc57892ab57f403f5286c26dcd4f4b2e68 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 07:51:45 +0200 Subject: [PATCH 01/14] ENHS Type --- file-formats/enhs/enhs.json | 89 ++++--- .../enhs/type/zif_seef_aff_enhs_v1.intf.abap | 223 ++++++++++++++++++ .../enhs/type/zif_seef_aff_enhs_v1.intf.json | 8 + 3 files changed, 273 insertions(+), 47 deletions(-) create mode 100644 file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap create mode 100644 file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.json diff --git a/file-formats/enhs/enhs.json b/file-formats/enhs/enhs.json index b0e12cc96..9f51710df 100644 --- a/file-formats/enhs/enhs.json +++ b/file-formats/enhs/enhs.json @@ -1,6 +1,8 @@ { "$schema": "https://json-schema.org/draft/2020-12/schema", - "$id": "http://github.com/SAP/abap-file-formats/file-formats/enhs/enhs.json", + "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/enhs/enhs.json", + "title": "ENHS Object Type", + "description": "Object type ENHS", "type": "object", "properties": { "$schema": { @@ -10,23 +12,23 @@ }, "header": { "title": "Header", + "description": "Header", "type": "object", "properties": { "description": { "title": "Description", - "description": "Description of an BAdI Enhancement Spot", + "description": "Description of the ABAP object", "type": "string", - "maxLength": 255 + "maxLength": 60 }, - "masterLanguage": { - "title": "Master Language", - "description": "Master language of the BAdI Enhancement Spot\nAll translatable text shall be maintained in this language", + "originalLanguage": { + "title": "Original Language", + "description": "Original language of the ABAP object", "type": "string", - "minLength": 2, "maxLength": 2 }, "abapLanguageVersion": { - "title": "Abap Language Version", + "title": "ABAP Language Version", "description": "ABAP language version", "type": "string", "enum": [ @@ -36,15 +38,15 @@ ], "enumDescriptions": [ "Standard", - "ABAP for key user tools", - "ABAP for Cloud Development" + "ABAP for key user extensibility", + "ABAP cloud development" ] } }, "additionalProperties": false, "required": [ "description", - "masterLanguage", + "originalLanguage", "abapLanguageVersion" ] }, @@ -66,7 +68,7 @@ "badiDefinition" ], "enumDescriptions": [ - "BAdI Definition" + "BAdI definition" ] } }, @@ -118,7 +120,7 @@ ] }, "multipleUse": { - "title": "Single- or multiple use BAdI", + "title": "Single- or Multiple Use BAdI", "description": "Indicator whether the BAdI definition is single- or multiple usable", "type": "boolean" }, @@ -132,8 +134,8 @@ "description": "Example classes of the BAdI definition", "type": "array", "items": { - "title": "Example Class", - "description": "Example class", + "title": "Object Name", + "description": "Object name with max. length 30", "type": "string", "maxLength": 30 } @@ -145,12 +147,12 @@ }, "fallbackClass": { "title": "Name of the Default/Fallback Class", - "description": "Name of the default/fallback class", + "description": "Name of the default/fallback Class", "type": "string", "maxLength": 30 }, "filterLimitation": { - "title": "Limited Filter use", + "title": "Limited Filter Use", "description": "Limited filter use", "type": "boolean" }, @@ -158,7 +160,7 @@ "title": "Documentation Id", "description": "Documentation Id", "type": "string", - "maxLength": 30 + "maxLength": 60 }, "amdp": { "title": "Amdp BAdI", @@ -171,18 +173,18 @@ "type": "array", "items": { "title": "Filter", - "description": "Information about this Filter", + "description": "Information about this filter", "type": "object", "properties": { "name": { "title": "Name of the Filter", - "description": "Name of the Filter", + "description": "Name of the filter", "type": "string", "maxLength": 30 }, "description": { "title": "Description of the Filter", - "description": "Description of the Filter", + "description": "Description of the filter", "type": "string", "maxLength": 255 }, @@ -191,15 +193,15 @@ "description": "Type of the filter", "type": "string", "enum": [ - "Integer", - "Character", - "String", - "Numeric", - "Packed" + "integer", + "characterLike", + "string", + "numeric", + "packed" ], "enumDescriptions": [ "Integer", - "Character", + "Character-like", "String", "Numeric", "Packed" @@ -212,7 +214,7 @@ }, "valueCheckDdic": { "title": "Value Check Ddic", - "description": "Value check via Domain or Data Element", + "description": "Value check via domain or data element", "type": "object", "properties": { "type": { @@ -220,18 +222,19 @@ "description": "Type of the value check object", "type": "string", "enum": [ - "Domain", - "DataElement" + "domain", + "dataElement" ], "enumDescriptions": [ "Domain", - "Data Element" + "Data element" ] }, "objectName": { "title": "Name of the Value Check Object", "description": "Name of the value check object", - "type": "string" + "type": "string", + "maxLength": 30 } }, "additionalProperties": false, @@ -249,17 +252,21 @@ "title": "Name of the Value Check Class", "description": "Name of the value check class", "type": "string", - "maxLenght": 30 + "maxLength": 30 }, "length": { "title": "Length of the Value Check", "description": "Length of the value check", - "type": "number" + "type": "integer", + "minimum": -2147483648, + "maximum": 2147483647 }, "decimalPlaces": { "title": "Decimal Places of the Value Check", "description": "Decimal places of the value check", - "type": "number" + "type": "integer", + "minimum": -2147483648, + "maximum": 2147483647 } }, "additionalProperties": false, @@ -277,18 +284,6 @@ } } }, - "if": { - "properties": { - "useFallbackClass": { - "const": "true" - } - } - }, - "then": { - "required": [ - "fallbackClass" - ] - }, "additionalProperties": false, "required": [ "name", diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap new file mode 100644 index 000000000..3eaddc095 --- /dev/null +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -0,0 +1,223 @@ +INTERFACE zif_seef_aff_enhs_v1 + PUBLIC. + + "!

BAdI Enhancement Spot Tool Type

+ "! Tool type of the BAdI Enhancement Spot + "! $values {@link zif_seef_aff_enhs_v1.data:co_tool} + TYPES ty_tool TYPE c LENGTH 10. + + CONSTANTS: + "!

Tool Type

+ "! Enhancement Spot tool type + BEGIN OF co_tool, + "!

BAdI Definition

+ "! BAdI definition + badi_definition TYPE ty_tool VALUE 'BADI_DEF', + END OF co_tool. + + "!

Instantiation of the BAdI Definition

+ "! Instantiation of the BAdI definition + "! $values {@link zif_seef_aff_enhs_v1.data:co_instantiation} + TYPES ty_instantiation TYPE c LENGTH 1. + + CONSTANTS: + "!

Instantiation of the BAdI Definition

+ "! Instantiation of the BAdI definition + BEGIN OF co_instantiation, + "!

Creating New Instances

+ "! Creating new instances + creating_new_instances TYPE ty_instantiation VALUE 'N', + "!

Reuse Instances

+ "! Reuse instances + reuse_instances TYPE ty_instantiation VALUE 'S', + "!

Context-Specific Instances

+ "! Context-specific instances + context_specific_instances TYPE ty_instantiation VALUE 'Y', + END OF co_instantiation. + + "!

Filter Type

+ "! Type of a badi filter + "! $values {@link zif_seef_aff_enhs_v1.data:co_filter_type} + TYPES ty_filter_type TYPE c LENGTH 1. + + CONSTANTS: + "!

Filter Type

+ "! Type of the filter + BEGIN OF co_filter_type, + "!

Integer

+ "! Integer + integer TYPE ty_filter_type VALUE 'I', + "!

Character-Like

+ "! Character-like + character_like TYPE ty_filter_type VALUE 'C', + "!

String

+ "! String + string TYPE ty_filter_type VALUE 'S', + "!

Numeric

+ "! Numeric + numeric TYPE ty_filter_type VALUE 'N', + "!

Packed

+ "! Packed + packed TYPE ty_filter_type VALUE 'P', + END OF co_filter_type. + + "!

Type of the Value Check Object

+ "! Type of the value check object + "! $values {@link zif_seef_aff_enhs_v1.data:co_value_check_object_type} + TYPES ty_value_check_object_type TYPE string. + + CONSTANTS: + "! Type of the value check object + "! $values {@link zif_seef_aff_enhs_v1.data:co_value_check_object_type} + BEGIN OF co_value_check_object_type, + "!

Domain

+ "! Domain + domain TYPE ty_value_check_object_type VALUE 'DOMADD', + "!

Data Element

+ "! Data Element + data_element TYPE ty_value_check_object_type VALUE 'DTELDE', + END OF co_value_check_object_type. + + TYPES: + "!

Value Check Ddic

+ "! Value check via domain or data element + BEGIN OF ty_value_check_ddic, + "!

Type of the Value Check Object

+ "! Type of the value check object + "! $required + type TYPE ty_value_check_object_type, + "!

Name of the Value Check Object

+ "! Name of the value check object + "! $required + object_name TYPE zif_aff_types_v1=>ty_object_name_30, + END OF ty_value_check_ddic. + + TYPES: + "!

Value Check Class

+ "! Value check via class + BEGIN OF ty_value_check_class, + "!

Name of the Value Check Class

+ "! Name of the value check class + "! $required + object_name TYPE zif_aff_types_v1=>ty_object_name_30, + "!

Length of the Value Check

+ "! Length of the value check + length TYPE i, + "!

Decimal Places of the Value Check

+ "! Decimal places of the value check + decimal_places TYPE i, + END OF ty_value_check_class. + + TYPES: + "!

Filter

+ "! Information about this filter + BEGIN OF ty_badi_def_filter, + "!

Name of the Filter

+ "! Name of the filter + "! $required + name TYPE zif_aff_types_v1=>ty_object_name_30, + "!

Description of the Filter

+ "! Description of the filter + "! $required + description TYPE c LENGTH 255, + "!

Type of the Filter

+ "! Type of the filter + "! $required + type TYPE ty_filter_type, + "!

Only constant Filter Values

+ "! The filter has only constant filter values + only_constant_values TYPE abap_bool, + "!

Value Check Ddic

+ "! Value check via domain or data element + value_check_ddic TYPE zif_seef_aff_enhs_v1=>ty_value_check_ddic, + "!

Value Check Class

+ "! Value check via class + value_check_class type zif_seef_aff_enhs_v1=>ty_value_check_class, + END OF ty_badi_def_filter. + + TYPES ty_badi_def_filters TYPE STANDARD TABLE OF ty_badi_def_filter WITH DEFAULT KEY. + TYPES ty_example_classes TYPE STANDARD TABLE OF zif_aff_types_v1=>ty_object_name_30 WITH DEFAULT KEY. + + + TYPES: + "!

BAdI Definition

+ "! Information about this BAdI definition + BEGIN OF ty_badi_def, + "!

Name of the BAdI Definition

+ "! Name of the BAdI definition + "! $required + name TYPE zif_aff_types_v1=>ty_object_name_30, + "!

Description of the BAdI Definition

+ "! Description of the BAdI definition + "! $required + description TYPE c LENGTH 255, + "!

Interface of the BAdI Definition

+ "! Interface of the BAdI definition + "! $required + interface TYPE zif_aff_types_v1=>ty_object_name_30, + "!

Instantiation of the BAdI Definition

+ "! Instantiation of the BAdI definition + instantiation TYPE ty_instantiation, + "!

Single- or Multiple Use BAdI

+ "! Indicator whether the BAdI definition is single- or multiple usable + multiple_use TYPE abap_bool, + "!

SAP Internal

+ "! SAP internal + sap_internal TYPE abap_bool, + "!

Example Classes of the BAdI Definition

+ "! Example classes of the BAdI definition + example_classes TYPE ty_example_classes, + "!

Use Fallback Class

+ "! Use fallback class in case no implementation is executed + use_fallback_class TYPE abap_bool, + "!

Name of the Default/Fallback Class

+ "! Name of the default/fallback Class + fallback_class TYPE zif_aff_types_v1=>ty_object_name_30, + "!

Limited Filter Use

+ "! Limited filter use + filter_limitation TYPE abap_bool, + "!

Documentation Id

+ "! Documentation Id + documentation_id TYPE c LENGTH 60, + "!

Amdp BAdI

+ "! BADI is an AMDP BAdI + amdp TYPE abap_bool, + "!

Filters of the BAdI Definition

+ "! Filters of the BAdI definition + filters TYPE ty_badi_def_filters, + END OF ty_badi_def. + + TYPES ty_badi_defs TYPE STANDARD TABLE OF ty_badi_def WITH DEFAULT KEY. + + TYPES: + BEGIN OF ty_configuration, + "!

SAP Internal

+ "! SAP internal + sap_internal TYPE abap_bool, + "!

BAdI Enhancement Spot Tool Type

+ "! Tool type of the BAdI Enhancement Spot + "! $required + tool TYPE ty_tool, + END OF ty_configuration, + + "!

ENHS Object Type

+ "! Object type ENHS + BEGIN OF ty_main, + "!

Schema

+ "! Format version + "! $required + schema TYPE string, + "!

Header

+ "! Header + "! $required + header TYPE zif_aff_types_v1=>ty_header_60, + "!

Configuration

+ "! Configuration-specific fields + "! $required + configuration TYPE ty_configuration, + "!

BAdI Definitions of the BAdI Enhancement Spot

+ "! BAdI definitions of the BAdI Enhancement Spot + badi_definitions TYPE ty_badi_defs, + END OF ty_main. + +ENDINTERFACE. diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.json b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.json new file mode 100644 index 000000000..88644a71e --- /dev/null +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.json @@ -0,0 +1,8 @@ +{ + "$schema": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/intf/intf.json", + "header": { + "description": "ENHS AFF Type", + "originalLanguage": "EN", + "abapLanguageVersion": "standard" + } +} From ff8a9e8296c5b35a1bf3b60aa2c5292bafe1ad98 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 07:59:56 +0200 Subject: [PATCH 02/14] Add example enhs --- file-formats/enhs/examples/z_aff_example_enhs.enhs.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/file-formats/enhs/examples/z_aff_example_enhs.enhs.json b/file-formats/enhs/examples/z_aff_example_enhs.enhs.json index d71577c5b..e4adc5fb7 100644 --- a/file-formats/enhs/examples/z_aff_example_enhs.enhs.json +++ b/file-formats/enhs/examples/z_aff_example_enhs.enhs.json @@ -1,6 +1,6 @@ { - "$schema": "https://raw.githubusercontent.com/SAP/abap-file-formats/main/file-formats/enhs/enhs.json", "header": { + "$schema": "http://github.com/sap/abap-file-formats/file-formats/enhs/enhs.json", "description": "Example ENHS for ABAP file formats", "masterLanguage": "EN", "abapLanguageVersion": "standard" From 7c72f5992384ead63342c2ff5c4361a0e1c13e99 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 08:00:04 +0200 Subject: [PATCH 03/14] Reaction to abaplint --- file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index 3eaddc095..c874978af 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -132,7 +132,7 @@ INTERFACE zif_seef_aff_enhs_v1 value_check_ddic TYPE zif_seef_aff_enhs_v1=>ty_value_check_ddic, "!

Value Check Class

"! Value check via class - value_check_class type zif_seef_aff_enhs_v1=>ty_value_check_class, + value_check_class TYPE zif_seef_aff_enhs_v1=>ty_value_check_class, END OF ty_badi_def_filter. TYPES ty_badi_def_filters TYPE STANDARD TABLE OF ty_badi_def_filter WITH DEFAULT KEY. From cd59b35ce2868c265fe1bc659a3711ec60444871 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 08:04:35 +0200 Subject: [PATCH 04/14] Remove Example --- .../examples/z_aff_example_enhs.enhs.json | 31 ------------------- 1 file changed, 31 deletions(-) delete mode 100644 file-formats/enhs/examples/z_aff_example_enhs.enhs.json diff --git a/file-formats/enhs/examples/z_aff_example_enhs.enhs.json b/file-formats/enhs/examples/z_aff_example_enhs.enhs.json deleted file mode 100644 index e4adc5fb7..000000000 --- a/file-formats/enhs/examples/z_aff_example_enhs.enhs.json +++ /dev/null @@ -1,31 +0,0 @@ -{ - "header": { - "$schema": "http://github.com/sap/abap-file-formats/file-formats/enhs/enhs.json", - "description": "Example ENHS for ABAP file formats", - "masterLanguage": "EN", - "abapLanguageVersion": "standard" - }, - "configuration": { - "tool": "badiDefinition" - }, - "badiDefinitions": [ - { - "name": "Z_AFF_EXAMPLE_BADI_DEFINITION", - "description": "This is an example Badi Definition", - "interface": "Z_AFF_EXAMPLE_BADI_INTF", - "instantiation": "creatingNewInstances", - "multipleUse": true, - "useFallbackClass": false, - "filterLimitation": false, - "documentationId": "", - "amdp": false, - "filters": [ - { - "name": "EXAMPLE_FILTER", - "description": "This is an example Filter", - "type": "String" - } - ] - } - ] -} From 38120f239444637fdaaeb48285b87097781178e8 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 08:04:41 +0200 Subject: [PATCH 05/14] Abaplint --- file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index c874978af..1e6f4ac36 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -129,10 +129,10 @@ INTERFACE zif_seef_aff_enhs_v1 only_constant_values TYPE abap_bool, "!

Value Check Ddic

"! Value check via domain or data element - value_check_ddic TYPE zif_seef_aff_enhs_v1=>ty_value_check_ddic, + value_check_ddic TYPE ty_value_check_ddic, "!

Value Check Class

"! Value check via class - value_check_class TYPE zif_seef_aff_enhs_v1=>ty_value_check_class, + value_check_class TYPE ty_value_check_class, END OF ty_badi_def_filter. TYPES ty_badi_def_filters TYPE STANDARD TABLE OF ty_badi_def_filter WITH DEFAULT KEY. From ecced5f5b50623026597801d315ddb3b10feaa83 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 08:10:57 +0200 Subject: [PATCH 06/14] Typo --- file-formats/enhs/enhs.json | 2 +- file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/file-formats/enhs/enhs.json b/file-formats/enhs/enhs.json index 9f51710df..4aa40a9cc 100644 --- a/file-formats/enhs/enhs.json +++ b/file-formats/enhs/enhs.json @@ -147,7 +147,7 @@ }, "fallbackClass": { "title": "Name of the Default/Fallback Class", - "description": "Name of the default/fallback Class", + "description": "Name of the default/fallback class", "type": "string", "maxLength": 30 }, diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index 1e6f4ac36..7f0a33e21 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -171,7 +171,7 @@ INTERFACE zif_seef_aff_enhs_v1 "! Use fallback class in case no implementation is executed use_fallback_class TYPE abap_bool, "!

Name of the Default/Fallback Class

- "! Name of the default/fallback Class + "! Name of the default/fallback class fallback_class TYPE zif_aff_types_v1=>ty_object_name_30, "!

Limited Filter Use

"! Limited filter use From 7efdc6a88255aa3ce77a0b8335568bf413a0d9b9 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 10:33:18 +0200 Subject: [PATCH 07/14] New Header --- file-formats/enhs/enhs.json | 2 +- .../enhs/type/zif_seef_aff_enhs_v1.intf.abap | 2 +- .../zif_aff_types_v1.intf.abap | 25 ++++++++++++++++++- 3 files changed, 26 insertions(+), 3 deletions(-) diff --git a/file-formats/enhs/enhs.json b/file-formats/enhs/enhs.json index 4aa40a9cc..bb1f26a8e 100644 --- a/file-formats/enhs/enhs.json +++ b/file-formats/enhs/enhs.json @@ -19,7 +19,7 @@ "title": "Description", "description": "Description of the ABAP object", "type": "string", - "maxLength": 60 + "maxLength": 100 }, "originalLanguage": { "title": "Original Language", diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index 7f0a33e21..9f8c73704 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -210,7 +210,7 @@ INTERFACE zif_seef_aff_enhs_v1 "!

Header

"! Header "! $required - header TYPE zif_aff_types_v1=>ty_header_60, + header TYPE zif_aff_types_v1=>ty_header_100, "!

Configuration

"! Configuration-specific fields "! $required diff --git a/file-formats/typesUsedForAll/zif_aff_types_v1.intf.abap b/file-formats/typesUsedForAll/zif_aff_types_v1.intf.abap index 22ee66e57..2e8ef3305 100644 --- a/file-formats/typesUsedForAll/zif_aff_types_v1.intf.abap +++ b/file-formats/typesUsedForAll/zif_aff_types_v1.intf.abap @@ -45,6 +45,10 @@ INTERFACE zif_aff_types_v1 PUBLIC. "! Description with 60 characters TYPES ty_description_60 TYPE c LENGTH 60. + "!

Description

+ "! Description with 100 characters + TYPES ty_description_100 TYPE c LENGTH 100. + "!

Object Name

"! Object name with max. length 30 TYPES ty_object_name_30 TYPE c LENGTH 30. @@ -85,6 +89,24 @@ INTERFACE zif_aff_types_v1 PUBLIC. abap_language_version TYPE ty_abap_language_version, END OF ty_header_60. + TYPES: + "!

Header for Non-Source Code Objects

+ "! The header for an ABAP main object (without source code) with a description of 100 characters + BEGIN OF ty_header_100, + "!

Description

+ "! Description of the ABAP object + "! $required + description TYPE ty_description_100, + "!

Original Language

+ "! Original language of the ABAP object + "! $required + original_language TYPE sy-langu, + "!

ABAP Language Version

+ "! ABAP language version + "! $required + abap_language_version TYPE ty_abap_language_version, + END OF ty_header_100. + TYPES: "!

Header for Subobjects

"! The header for an ABAP subobject with a description of 60 characters @@ -92,7 +114,8 @@ INTERFACE zif_aff_types_v1 PUBLIC. "!

Description

"! Description of the ABAP object "! $required - description TYPE ty_description_60, + description TYPE ty_description_60, END OF ty_header_only_description. + ENDINTERFACE. From 3c46e211cdf0c70056c97359c227fd35836449f1 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 10:52:04 +0200 Subject: [PATCH 08/14] Remove $values link --- file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index 9f8c73704..3dd1ecd00 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -67,8 +67,8 @@ INTERFACE zif_seef_aff_enhs_v1 TYPES ty_value_check_object_type TYPE string. CONSTANTS: + "!

Type of the Value Check Object

"! Type of the value check object - "! $values {@link zif_seef_aff_enhs_v1.data:co_value_check_object_type} BEGIN OF co_value_check_object_type, "!

Domain

"! Domain From e6f6836a8810b367d42ff9c09fee5ac0bb34f528 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 10:54:30 +0200 Subject: [PATCH 09/14] Change title/description of Example Class --- file-formats/enhs/enhs.json | 4 ++-- file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap | 7 ++++++- 2 files changed, 8 insertions(+), 3 deletions(-) diff --git a/file-formats/enhs/enhs.json b/file-formats/enhs/enhs.json index bb1f26a8e..aa7e9ca9f 100644 --- a/file-formats/enhs/enhs.json +++ b/file-formats/enhs/enhs.json @@ -134,8 +134,8 @@ "description": "Example classes of the BAdI definition", "type": "array", "items": { - "title": "Object Name", - "description": "Object name with max. length 30", + "title": "Example Class", + "description": "Example class", "type": "string", "maxLength": 30 } diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index 3dd1ecd00..d7a5bbf59 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -136,7 +136,12 @@ INTERFACE zif_seef_aff_enhs_v1 END OF ty_badi_def_filter. TYPES ty_badi_def_filters TYPE STANDARD TABLE OF ty_badi_def_filter WITH DEFAULT KEY. - TYPES ty_example_classes TYPE STANDARD TABLE OF zif_aff_types_v1=>ty_object_name_30 WITH DEFAULT KEY. + + "!

Example Class

+ "! Example class + TYPES ty_example_class TYPE if_aff_types_v1=>ty_object_name_30. + + TYPES ty_example_classes TYPE STANDARD TABLE OF ty_example_class WITH DEFAULT KEY. TYPES: From 8bd602026b30be169580f097b3bafc7ad0e0bf38 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 11:06:46 +0200 Subject: [PATCH 10/14] abaplint --- file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index d7a5bbf59..f521b34a8 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -139,7 +139,7 @@ INTERFACE zif_seef_aff_enhs_v1 "!

Example Class

"! Example class - TYPES ty_example_class TYPE if_aff_types_v1=>ty_object_name_30. + TYPES ty_example_class TYPE zif_aff_types_v1=>ty_object_name_30. TYPES ty_example_classes TYPE STANDARD TABLE OF ty_example_class WITH DEFAULT KEY. From 2b31366987a1b788da60311f115aec61b267638d Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 15:02:07 +0200 Subject: [PATCH 11/14] Show always multipleUse --- file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap | 1 + 1 file changed, 1 insertion(+) diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index f521b34a8..e9b0a9e4f 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -165,6 +165,7 @@ INTERFACE zif_seef_aff_enhs_v1 instantiation TYPE ty_instantiation, "!

Single- or Multiple Use BAdI

"! Indicator whether the BAdI definition is single- or multiple usable + "! $showAlways multiple_use TYPE abap_bool, "!

SAP Internal

"! SAP internal From fda2a6bb4869e0a5aad3f645d53a4fc78013d8a9 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Tue, 20 Jul 2021 17:18:16 +0200 Subject: [PATCH 12/14] Add example ENHS --- .../examples/z_aff_example_enhs.enhs.json | 27 +++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 file-formats/enhs/examples/z_aff_example_enhs.enhs.json diff --git a/file-formats/enhs/examples/z_aff_example_enhs.enhs.json b/file-formats/enhs/examples/z_aff_example_enhs.enhs.json new file mode 100644 index 000000000..57035b895 --- /dev/null +++ b/file-formats/enhs/examples/z_aff_example_enhs.enhs.json @@ -0,0 +1,27 @@ +{ + "$schema": "http://github.com/sap/abap-file-formats/blob/main/file-formats/enhs/enhs.json", + "header": { + "description": "Example ENHS for ABAP file formats", + "originalLanguage": "EN", + "abapLanguageVersion": "standard" + }, + "configuration": { + "tool": "badiDefinition" + }, + "badiDefinitions": [ + { + "name": "Z_AFF_EXAMPLE_BADI_DEFINITION", + "description": "This is an example Badi Definition", + "interface": "Z_AFF_EXAMPLE_BADI_INTF", + "instantiation": "creatingNewInstances", + "multipleUse": true, + "filters": [ + { + "name": "EXAMPLE_FILTER", + "description": "This is an example Filter", + "type": "string" + } + ] + } + ] +} From 01e9cf6ce238ee5b83a73df9e3f423ef751cb523 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Wed, 21 Jul 2021 15:39:45 +0200 Subject: [PATCH 13/14] Delete tag use_fallback_class --- file-formats/enhs/enhs.json | 5 ----- file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap | 3 --- 2 files changed, 8 deletions(-) diff --git a/file-formats/enhs/enhs.json b/file-formats/enhs/enhs.json index aa7e9ca9f..48ffd547f 100644 --- a/file-formats/enhs/enhs.json +++ b/file-formats/enhs/enhs.json @@ -140,11 +140,6 @@ "maxLength": 30 } }, - "useFallbackClass": { - "title": "Use Fallback Class", - "description": "Use fallback class in case no implementation is executed", - "type": "boolean" - }, "fallbackClass": { "title": "Name of the Default/Fallback Class", "description": "Name of the default/fallback class", diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index e9b0a9e4f..e233ebfb8 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -173,9 +173,6 @@ INTERFACE zif_seef_aff_enhs_v1 "!

Example Classes of the BAdI Definition

"! Example classes of the BAdI definition example_classes TYPE ty_example_classes, - "!

Use Fallback Class

- "! Use fallback class in case no implementation is executed - use_fallback_class TYPE abap_bool, "!

Name of the Default/Fallback Class

"! Name of the default/fallback class fallback_class TYPE zif_aff_types_v1=>ty_object_name_30, From 8bf877d9c8bdd309559f38555966b70d5cde22d0 Mon Sep 17 00:00:00 2001 From: Katharina Wurz Date: Wed, 21 Jul 2021 15:56:20 +0200 Subject: [PATCH 14/14] Description of fallback_class --- file-formats/enhs/enhs.json | 2 +- file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/file-formats/enhs/enhs.json b/file-formats/enhs/enhs.json index 48ffd547f..1513de457 100644 --- a/file-formats/enhs/enhs.json +++ b/file-formats/enhs/enhs.json @@ -142,7 +142,7 @@ }, "fallbackClass": { "title": "Name of the Default/Fallback Class", - "description": "Name of the default/fallback class", + "description": "Name of the default/fallback class. The fallback class is executed if no BAdI implementation exists.", "type": "string", "maxLength": 30 }, diff --git a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap index e233ebfb8..bf5e6e4bb 100644 --- a/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap +++ b/file-formats/enhs/type/zif_seef_aff_enhs_v1.intf.abap @@ -174,7 +174,8 @@ INTERFACE zif_seef_aff_enhs_v1 "! Example classes of the BAdI definition example_classes TYPE ty_example_classes, "!

Name of the Default/Fallback Class

- "! Name of the default/fallback class + "! Name of the default/fallback class. + "! The fallback class is executed if no BAdI implementation exists. fallback_class TYPE zif_aff_types_v1=>ty_object_name_30, "!

Limited Filter Use

"! Limited filter use