From a8ec8b75890715e5247aa9ccbebc18b20f6f40af Mon Sep 17 00:00:00 2001 From: i506210 <158033259+i506210@users.noreply.github.com> Date: Mon, 27 Jan 2025 13:15:53 +0100 Subject: [PATCH] Add files for EDOI & EDOT --- file-formats/edoi/.DS_Store | Bin 0 -> 6148 bytes file-formats/edoi/README.md | 5 + file-formats/edoi/edoi-v1.json | 209 ++++++++++++++++++ .../edoi/type/zif_aff_edoi_v1.intf.abap | 121 ++++++++++ .../edoi/type/zif_aff_edoi_v1.intf.json | 7 + file-formats/edot/.DS_Store | Bin 0 -> 6148 bytes file-formats/edot/README.md | 5 + file-formats/edot/edot-v1.json | 185 ++++++++++++++++ .../edot/type/zif_aff_edot_v1.intf.abap | 105 +++++++++ .../edot/type/zif_aff_edot_v1.intf.json | 7 + 10 files changed, 644 insertions(+) create mode 100644 file-formats/edoi/.DS_Store create mode 100644 file-formats/edoi/README.md create mode 100644 file-formats/edoi/edoi-v1.json create mode 100644 file-formats/edoi/type/zif_aff_edoi_v1.intf.abap create mode 100644 file-formats/edoi/type/zif_aff_edoi_v1.intf.json create mode 100644 file-formats/edot/.DS_Store create mode 100644 file-formats/edot/README.md create mode 100644 file-formats/edot/edot-v1.json create mode 100644 file-formats/edot/type/zif_aff_edot_v1.intf.abap create mode 100644 file-formats/edot/type/zif_aff_edot_v1.intf.json diff --git a/file-formats/edoi/.DS_Store b/file-formats/edoi/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..15c04208536080b609881173172966e05394ceb5 GIT binary patch literal 6148 zcmeH~F>b>!3`IW^4*{}x?5L#&$PI)bIYBQ_H0~B40n!fLbo72wTb%_`(ma_?&L1^T*|K_9AW70Z-{8X8XAOSd_o2|8HQ74j)4>oU06DN6#&ygRWbp!7ldY2#n&tFh z*=jL{cs<(5lGoK_>+J2Y96l`XY(B-%thd7o6Pne4f)tPfGX>T?AN~A4(jU$LvlgXN zKnnab1#CFH9rk>wJX`Nx&+G45^>w3@aXG`Ep8zI)6u;2JxLET HJXL{T_8Ah# literal 0 HcmV?d00001 diff --git a/file-formats/edoi/README.md b/file-formats/edoi/README.md new file mode 100644 index 000000000..4061063fc --- /dev/null +++ b/file-formats/edoi/README.md @@ -0,0 +1,5 @@ +# EDOI File Format + +File | Cardinality | Definition | Schema | Example +:--- | :--- | :--- | :--- | :--- +`.edoi.json` | 1 | [`zif_aff_edoi_v1.intf.abap`](./type/zif_aff_edoi_v1.intf.abap) | [`edoi-v1.json`](./edoi-v1.json) diff --git a/file-formats/edoi/edoi-v1.json b/file-formats/edoi/edoi-v1.json new file mode 100644 index 000000000..1ad363d6e --- /dev/null +++ b/file-formats/edoi/edoi-v1.json @@ -0,0 +1,209 @@ +{ + "$comment": "This file is autogenerated, do not edit manually, see https://github.com/SAP/abap-file-formats for more information.", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/edoi/edoi-v1.json", + "title": "eDocument Interface", + "description": "eDocument Interface", + "type": "object", + "properties": { + "formatVersion": { + "title": "Format Version", + "description": "Format version", + "type": "string", + "const": "1" + }, + "header": { + "title": "Header", + "description": "Header", + "type": "object", + "properties": { + "description": { + "title": "Description", + "description": "Description of the ABAP object", + "type": "string", + "maxLength": 60 + }, + "originalLanguage": { + "title": "Original Language", + "description": "Original language of the ABAP object", + "type": "string", + "minLength": 2 + }, + "abapLanguageVersion": { + "title": "ABAP Language Version", + "description": "ABAP language version", + "type": "string", + "enum": [ + "standard", + "keyUser", + "cloudDevelopment" + ], + "enumTitles": [ + "Standard", + "ABAP for Key Users", + "ABAP Cloud Development" + ], + "enumDescriptions": [ + "Standard", + "ABAP for key user extensibility", + "ABAP cloud development" + ], + "default": "standard" + } + }, + "additionalProperties": false, + "required": [ + "description", + "originalLanguage" + ] + }, + "generalInformation": { + "title": "eDocument Interface", + "description": "eDocument Interface", + "type": "object", + "properties": { + "edocumentInterfaceId": { + "title": "eDocument Interface", + "description": "eDocument Interface", + "type": "string", + "maxLength": 30 + }, + "interfaceDescription": { + "title": "eDocument Interface Description", + "description": "Interface Description.", + "type": "string", + "maxLength": 100 + }, + "interfaceDirection": { + "title": "eDocument Interface Direction", + "description": "Interface Direction.", + "type": "string", + "enum": [ + "outbound", + "inbound" + ], + "enumTitles": [ + "Outbound", + "Inbound" + ], + "enumDescriptions": [ + "Outbound", + "Inbound" + ], + "default": "outbound" + }, + "edocumentInterfaceVersion": { + "title": "Interface Version", + "description": "Interface Version", + "type": "array", + "uniqueItems": true, + "items": { + "title": "Interface Version", + "description": "eDocument Interface Version", + "type": "object", + "properties": { + "intVersion": { + "title": "Interface Version", + "description": "Interface Version", + "type": "string", + "maxLength": 4, + "pattern": "^[0-9]+$" + }, + "intVersionDesc": { + "title": "Interface Version Description", + "description": "Interface Version Description", + "type": "string", + "maxLength": 30 + }, + "activeFrom": { + "title": "Active From", + "description": "Active from", + "type": "string", + "format": "date-time" + } + }, + "additionalProperties": false, + "required": [ + "intVersion", + "intVersionDesc", + "activeFrom" + ] + } + }, + "edocSpecAdditionalTable": { + "title": "Attribute Determination for Communication with Cloud Edition", + "description": "DRC Integration Attribute Determination", + "type": "array", + "uniqueItems": true, + "items": { + "title": "Attribute Determination for Communication with Cloud Edition", + "description": "DRC Integration Attribute Determination", + "type": "object", + "properties": { + "processType": { + "title": "Process Type", + "description": "DRC Process Type", + "type": "string", + "maxLength": 50 + }, + "processVersion": { + "title": "Process Version", + "description": "DRC Process Version", + "type": "string", + "maxLength": 20 + }, + "processSubtype": { + "title": "Process Subtype", + "description": "DRC Process Subtype", + "type": "string", + "maxLength": 50 + }, + "drcAction": { + "title": "Action", + "description": "DRC Process Action", + "type": "string", + "maxLength": 30 + }, + "respInterfaceId": { + "title": "Response Interface", + "description": "eDoc Response Interface", + "type": "string", + "maxLength": 30 + }, + "respIntVersion": { + "title": "Response Interface Version", + "description": "Response Interface Version", + "type": "string", + "maxLength": 4, + "pattern": "^[0-9]+$" + } + }, + "additionalProperties": false, + "required": [ + "processType", + "processVersion", + "processSubtype", + "drcAction", + "respInterfaceId", + "respIntVersion" + ] + } + } + }, + "additionalProperties": false, + "required": [ + "edocumentInterfaceId", + "interfaceDescription", + "interfaceDirection", + "edocumentInterfaceVersion", + "edocSpecAdditionalTable" + ] + } + }, + "additionalProperties": false, + "required": [ + "formatVersion", + "header", + "generalInformation" + ] +} diff --git a/file-formats/edoi/type/zif_aff_edoi_v1.intf.abap b/file-formats/edoi/type/zif_aff_edoi_v1.intf.abap new file mode 100644 index 000000000..3a77f0aef --- /dev/null +++ b/file-formats/edoi/type/zif_aff_edoi_v1.intf.abap @@ -0,0 +1,121 @@ +INTERFACE zif_aff_edoi_v1 + PUBLIC. + + "!

Interface direction

+ "! Interface direction + "! $required + "! $values {@link zif_aff_edoi_v1.data:co_edoc_int_direction} + "! $default {@link zif_aff_edoi_v1.data:co_edoc_int_direction.outbound} + TYPES ty_int_direction TYPE c LENGTH 1. + TYPES: + "!

Interface Version

+ "! eDocument Interface Version + BEGIN OF ty_edoc_interface_version, + "!

Interface Version

+ "! Interface Version + "! $required + int_version TYPE numc04, + "!

Interface Version Description

+ "! Interface Version Description + "! $required + int_version_desc TYPE c LENGTH 30, + "!

Active From

+ "! Active from + "! $required + active_from TYPE sy-datum, + + END OF ty_edoc_interface_version. + "!

Interface Versions

+ "! eDocument Interface Versions + TYPES tt_edoc_interface_version TYPE SORTED TABLE OF ty_edoc_interface_version WITH UNIQUE KEY int_version. + TYPES: + "!

Attribute Determination for Communication with Cloud Edition

+ "! DRC Integration Attribute Determination + BEGIN OF ty_edoc_int_drc_attr, + "!

Process Type

+ "! DRC Process Type + "! $required + process_type TYPE c LENGTH 50, + "!

Process Version

+ "! DRC Process Version + "! $required + process_version TYPE c LENGTH 20, + "!

Process Subtype

+ "! DRC Process Subtype + "! $required + process_subtype TYPE c LENGTH 50, + "!

Action

+ "! DRC Process Action + "! $required + drc_action TYPE c LENGTH 30, + "!

Response Interface

+ "! eDoc Response Interface + "! $required + resp_interface_id TYPE c LENGTH 30, + "!

Response Interface Version

+ "! Response Interface Version + "! $required + resp_int_version TYPE numc04, + + END OF ty_edoc_int_drc_attr. + "!

Interface Versions

+ "! eDocument Interface Versions + TYPES tt_edoc_int_drc_attr TYPE SORTED TABLE OF ty_edoc_int_drc_attr WITH UNIQUE KEY process_type. + TYPES: + "!

General Information

+ "! eDocument Interface + BEGIN OF ty_edoc_interface, + "!

eDocument Interface

+ "! eDocument Interface + "! $required + edocument_interface_id TYPE c LENGTH 30, + "!

eDocument Interface Description

+ "! Interface Description. + "! $required + interface_description TYPE c LENGTH 100, + + "!

eDocument Interface Direction

+ "! Interface Direction. + "! $required + interface_direction TYPE ty_int_direction, + + "!

Interface Version

+ "! Interface Version + "! $required + edocument_interface_version TYPE tt_edoc_interface_version, + "!

Attribute Determination for Communication with Cloud Edition

+ "! DRC Integration Attribute Determination + "! $required + edoc_spec_additional_table TYPE tt_edoc_int_drc_attr, + END OF ty_edoc_interface. + TYPES: + "!

eDocument Interface

+ "! eDocument Interface + BEGIN OF ty_main, + "!

Format Version

+ "! Format version + "! $required + format_version TYPE zif_aff_types_v1=>ty_format_version, + "!

Header

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

eDocument Interface

+ "! eDocument Interface + "! $required + general_information TYPE ty_edoc_interface, + + END OF ty_main. + + CONSTANTS: + "!

Interface Direction

+ "! Interface Direction + BEGIN OF co_edoc_int_direction, + "!

Outbound

+ "! Outbound + outbound TYPE ty_int_direction VALUE 'O', + "!

Inbound

+ "! Inbound + inbound TYPE ty_int_direction VALUE 'I', + END OF co_edoc_int_direction. +ENDINTERFACE. diff --git a/file-formats/edoi/type/zif_aff_edoi_v1.intf.json b/file-formats/edoi/type/zif_aff_edoi_v1.intf.json new file mode 100644 index 000000000..77d2b8841 --- /dev/null +++ b/file-formats/edoi/type/zif_aff_edoi_v1.intf.json @@ -0,0 +1,7 @@ +{ + "formatVersion": "1", + "header": { + "description": "Create eDocument Types", + "originalLanguage": "en" + } +} diff --git a/file-formats/edot/.DS_Store b/file-formats/edot/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..15c04208536080b609881173172966e05394ceb5 GIT binary patch literal 6148 zcmeH~F>b>!3`IW^4*{}x?5L#&$PI)bIYBQ_H0~B40n!fLbo72wTb%_`(ma_?&L1^T*|K_9AW70Z-{8X8XAOSd_o2|8HQ74j)4>oU06DN6#&ygRWbp!7ldY2#n&tFh z*=jL{cs<(5lGoK_>+J2Y96l`XY(B-%thd7o6Pne4f)tPfGX>T?AN~A4(jU$LvlgXN zKnnab1#CFH9rk>wJX`Nx&+G45^>w3@aXG`Ep8zI)6u;2JxLET HJXL{T_8Ah# literal 0 HcmV?d00001 diff --git a/file-formats/edot/README.md b/file-formats/edot/README.md new file mode 100644 index 000000000..23a553e6b --- /dev/null +++ b/file-formats/edot/README.md @@ -0,0 +1,5 @@ +# EDOT File Format + +File | Cardinality | Definition | Schema | Example +:--- | :--- | :--- | :--- | :--- +`.edot.json` | 1 | [`zif_aff_edot_v1.intf.abap`](./type/zif_aff_edot_v1.intf.abap) | [`edot-v1.json`](./edot-v1.json) diff --git a/file-formats/edot/edot-v1.json b/file-formats/edot/edot-v1.json new file mode 100644 index 000000000..35fe1e474 --- /dev/null +++ b/file-formats/edot/edot-v1.json @@ -0,0 +1,185 @@ +{ + "$comment": "This file is autogenerated, do not edit manually, see https://github.com/SAP/abap-file-formats for more information.", + "$schema": "https://json-schema.org/draft/2020-12/schema", + "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/edot/edot-v1.json", + "title": "eDocument Type", + "description": "eDocument Type", + "type": "object", + "properties": { + "formatVersion": { + "title": "Format Version", + "description": "Format version", + "type": "string", + "const": "1" + }, + "header": { + "title": "Header", + "description": "Header", + "type": "object", + "properties": { + "description": { + "title": "Description", + "description": "Description of the ABAP object", + "type": "string", + "maxLength": 60 + }, + "originalLanguage": { + "title": "Original Language", + "description": "Original language of the ABAP object", + "type": "string", + "minLength": 2 + }, + "abapLanguageVersion": { + "title": "ABAP Language Version", + "description": "ABAP language version", + "type": "string", + "enum": [ + "standard", + "keyUser", + "cloudDevelopment" + ], + "enumTitles": [ + "Standard", + "ABAP for Key Users", + "ABAP Cloud Development" + ], + "enumDescriptions": [ + "Standard", + "ABAP for key user extensibility", + "ABAP cloud development" + ], + "default": "standard" + } + }, + "additionalProperties": false, + "required": [ + "description", + "originalLanguage" + ] + }, + "generalInformation": { + "title": "eDocument Type", + "description": "eDocument Type", + "type": "object", + "properties": { + "edocumentType": { + "title": "eDocument Type", + "description": "eDoc Type", + "type": "string", + "maxLength": 10 + }, + "edocTypeDesc": { + "title": "Description", + "description": "eDocument Type Description", + "type": "string", + "maxLength": 30 + }, + "contingency": { + "title": "Created in Contingency Mode", + "description": "Contingency", + "type": "boolean" + }, + "contingencyType": { + "title": "eDocument Type Created Using Contingency", + "description": "Contingency Type", + "type": "string", + "maxLength": 10 + }, + "tableName": { + "title": "Table Name", + "description": "Table name", + "type": "string", + "maxLength": 30 + }, + "archivePrepReqType": { + "title": "Preprocess Before Archiving", + "description": "Archive Prep Req Type", + "type": "boolean" + }, + "edocumentSralConfiguration": { + "title": "Additional Selection Fields", + "description": "Additional selection fields of validation report", + "type": "array", + "uniqueItems": true, + "items": { + "title": "SRAL Configuration Type", + "description": "eDocument SRAL Configuration type", + "type": "object", + "properties": { + "fileType": { + "title": "File Type", + "description": "File Type", + "type": "string", + "maxLength": 10 + }, + "fileStructureType": { + "title": "File Structure Type", + "description": "File Structure type", + "type": "string", + "maxLength": 30 + }, + "fileDescriptionType": { + "title": "File Description", + "description": "File Description type", + "type": "string", + "maxLength": 60 + }, + "notCloudRelevantType": { + "title": "File Cloud Relevancy", + "description": "File Cloud Relevancy type", + "type": "boolean" + } + }, + "additionalProperties": false, + "required": [ + "fileType", + "fileStructureType" + ] + } + }, + "edocSpecAdditionalTable": { + "title": "eDocument Type Specific Additional Tables", + "description": "eDocument Type Specific Additional Tables", + "type": "array", + "uniqueItems": true, + "items": { + "title": "eDocument Type Specific Additional Table Type", + "description": "eDocument Type Specific Additional Table type", + "type": "object", + "properties": { + "sequenceNumberType": { + "title": "Sequence Number Type", + "description": "Sequence Number", + "type": "string", + "maxLength": 10 + }, + "tableName": { + "title": "Table Name", + "description": "Table name", + "type": "string", + "maxLength": 30 + } + }, + "additionalProperties": false, + "required": [ + "sequenceNumberType", + "tableName" + ] + } + } + }, + "additionalProperties": false, + "required": [ + "edocumentType", + "edocTypeDesc", + "archivePrepReqType" + ] + } + }, + "additionalProperties": false, + "required": [ + "formatVersion", + "header", + "generalInformation" + ] +} diff --git a/file-formats/edot/type/zif_aff_edot_v1.intf.abap b/file-formats/edot/type/zif_aff_edot_v1.intf.abap new file mode 100644 index 000000000..7347b5e13 --- /dev/null +++ b/file-formats/edot/type/zif_aff_edot_v1.intf.abap @@ -0,0 +1,105 @@ +"!

Create eDocument Types

+"! eDocument types that can be used in eInvoice Process +INTERFACE zif_aff_edot_v1 +PUBLIC. + + TYPES: + "!

eDocument Type

+ "! Specify eDocument types + ty_edoc_type TYPE c LENGTH 10. + + "!

Description

+ "! Description + TYPES ty_short_description TYPE c LENGTH 30. + TYPES: + "!

SRAL Configuration Type

+ "! eDocument SRAL Configuration type + BEGIN OF ty_sral_configuration, + "!

File Type

+ "! File Type + "! $required + file_type TYPE c LENGTH 10, + "!

File Structure Type

+ "! File Structure type + "! $required + file_structure_type TYPE c LENGTH 30, + "!

File Description

+ "! File Description type + file_description_type TYPE c LENGTH 60, + "!

File Cloud Relevancy

+ "! File Cloud Relevancy type + not_cloud_relevant_type TYPE abap_bool, + END OF ty_sral_configuration. + "!

SRAL Configuration Types

+ "! SRAL Configuration types + TYPES tt_sral_configuration TYPE SORTED TABLE OF ty_sral_configuration WITH UNIQUE KEY file_type. + + TYPES: + "!

eDocument Type Specific Additional Table Type

+ "! eDocument Type Specific Additional Table type + BEGIN OF ty_edoc_spec_additional_table, + "!

Sequence Number Type

+ "! Sequence Number + "! $required + sequence_number_type TYPE c LENGTH 10, + "!

Table Name

+ "! Table name + "! $required + table_name TYPE zif_aff_types_v1=>ty_object_name_30, + END OF ty_edoc_spec_additional_table. + "!

eDocument Type Specific Additional Table Types

+ "! eDocument Type Specific Additional Table types + TYPES tt_edoc_spec_additional_table TYPE SORTED TABLE OF ty_edoc_spec_additional_table WITH UNIQUE KEY sequence_number_type. + + TYPES: + "!

General Information

+ "! eDocument Type + BEGIN OF ty_edoc_information, + "!

eDocument Type

+ "! eDoc Type + "! $required + edocument_type TYPE ty_edoc_type, + "!

Description

+ "! eDocument Type Description + "! $required + edoc_type_desc TYPE ty_short_description, + "!

Created in Contingency Mode

+ "! Contingency + contingency TYPE abap_bool, + "!

eDocument Type Created Using Contingency

+ "! Contingency Type + contingency_type TYPE c LENGTH 10, + "!

Table Name

+ "! Table name + table_name TYPE zif_aff_types_v1=>ty_object_name_30, + "!

Preprocess Before Archiving

+ "! Archive Prep Req Type + "! $required + archive_prep_req_type TYPE abap_bool, + "!

Additional Selection Fields

+ "! Additional selection fields of validation report + edocument_sral_configuration TYPE tt_sral_configuration, + "!

eDocument Type Specific Additional Tables

+ "! eDocument Type Specific Additional Tables + edoc_spec_additional_table TYPE tt_edoc_spec_additional_table, + END OF ty_edoc_information. + + TYPES: + "!

eDocument Type

+ "! eDocument Type + BEGIN OF ty_main, + "!

Format Version

+ "! Format version + "! $required + format_version TYPE zif_aff_types_v1=>ty_format_version, + "!

Header

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

eDocument Type

+ "! eDocument Type + "! $required + general_information TYPE ty_edoc_information, + + END OF ty_main. +ENDINTERFACE. diff --git a/file-formats/edot/type/zif_aff_edot_v1.intf.json b/file-formats/edot/type/zif_aff_edot_v1.intf.json new file mode 100644 index 000000000..77d2b8841 --- /dev/null +++ b/file-formats/edot/type/zif_aff_edot_v1.intf.json @@ -0,0 +1,7 @@ +{ + "formatVersion": "1", + "header": { + "description": "Create eDocument Types", + "originalLanguage": "en" + } +}