Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 13 additions & 0 deletions file-formats/aifa/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# Action File Format
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Observations related to recent README updates: @schneidermic0 this section title is generated from the current SVAL object. Merging the pr then may lead to uncorrect README as the SVAL will be checked much later in our process.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I agree. I don't see a simple way to improve this, do you?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

More generic README outside the ABAP System 😉

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah, on the other hand, I think it is helpful to see a meaningful name (even if it is not 100% correct and might be updated in the future) instead of having none.


## Object Type Information

Object Type | Description | Group
:--- | :--- | :---
AIFA | Action | Application Interface Framework

## File Structure

File | Cardinality | Definition | Schema | Example
:--- | :--- | :--- | :--- | :---
`<name>.aifa.json` | 1 | [`zif_aff_aifa_v1.intf.abap`](./type/zif_aff_aifa_v1.intf.abap) | [`aifa-v1.json`](./aifa-v1.json)
217 changes: 217 additions & 0 deletions file-formats/aifa/aifa-v1.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,217 @@
{
"$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/aifa/aifa-v1.json",
"title": "Action",
"description": "Action",
"type": "object",
"properties": {
"formatVersion": {
"title": "ABAP File Format Version",
"description": "The ABAP file 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",
"cloudDevelopment"
],
"enumTitles": [
"Standard",
"ABAP Cloud Development"
],
"enumDescriptions": [
"Standard",
"ABAP cloud development"
],
"default": "standard"
}
},
"additionalProperties": false,
"required": [
"description",
"originalLanguage"
]
},
"generalInformation": {
"title": "General Information",
"description": "General information",
"type": "object",
"properties": {
"namespace": {
"title": "Namespace",
"description": "Namespace",
"type": "string",
"maxLength": 15
},
"aifAction": {
"title": "AIF Action",
"description": "AIF action",
"type": "string",
"maxLength": 20
},
"mainComponentType": {
"title": "Main Component Type",
"description": "Main component type",
"type": "string",
"maxLength": 30
},
"implementingClass": {
"title": "Implementing Class",
"description": "Implementing class",
"type": "string",
"maxLength": 30
}
},
"additionalProperties": false,
"required": [
"namespace",
"aifAction"
]
},
"fieldsToRestore": {
"title": "Fields To Restore",
"description": "Fields to restore",
"type": "array",
"items": {
"title": "Field To Restore",
"description": "Field to restore",
"type": "object",
"properties": {
"name": {
"title": "Name",
"description": "Name",
"type": "string"
}
},
"additionalProperties": false
}
},
"checks": {
"title": "Checks",
"description": "Checks",
"type": "array",
"items": {
"title": "Check Details",
"description": "Check details",
"type": "object",
"properties": {
"id": {
"title": "ID",
"description": "ID",
"type": "string",
"maxLength": 3,
"pattern": "^[0-9]+$"
},
"check": {
"title": "Check",
"description": "Check",
"type": "string",
"maxLength": 30
},
"checkBehaviour": {
"title": "Check Behavior",
"description": "Check behavior",
"type": "string",
"enum": [
"treatAsError",
"ignoreData"
],
"enumTitles": [
"Treat As Error",
"Ignore Data"
],
"enumDescriptions": [
"Treat as error if check is not successful",
"Ignore data if check is not successful"
],
"default": "ignoreData"
},
"fields": {
"title": "Fields",
"description": "Fields",
"type": "array",
"items": {
"title": "Fields To Check",
"description": "Field to check",
"type": "object",
"properties": {
"type": {
"title": "Type",
"description": "Type",
"type": "string",
"enum": [
"sourceStructure",
"destinationStructure",
"constant",
"systemField",
"sendingSystem",
"currentLineNumber",
"hierarchicalMapping"
],
"enumTitles": [
"Source Structure",
"Destination Structure",
"Constant",
"System Field",
"Sending System",
"Current Line Number",
"Hierarchical Mapping"
],
"enumDescriptions": [
"Field is in source structure",
"Field is in desctination structure",
"Field is constant value",
"Field is system field",
"Field is in sending systemte",
"Field is current line number",
"Fieldpath is starting from a parant node"
],
"default": "sourceStructure"
},
"name": {
"title": "Name/Value",
"description": "Name/Value",
"type": "string"
}
},
"additionalProperties": false
}
}
},
"additionalProperties": false,
"required": [
"id",
"check"
]
}
}
},
"additionalProperties": false,
"required": [
"formatVersion",
"header",
"generalInformation"
]
}
36 changes: 36 additions & 0 deletions file-formats/aifa/examples/z_aff_example_aifa.aifa.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
{
"formatVersion": "1",
"header": {
"description": "Example AIFA for ABAP File Format",
"originalLanguage": "en"
},
"generalInformation": {
"namespace": "ZAIFN",
"aifAction": "CREATE_BUPA",
"mainComponentType": "ZAIF_CREATE_BUPA_STRUCTURE",
"implementingClass": "ZAIF_CL_CREATE_BUPA"
},
"fieldsToRestore": [
{
"name": "BUPA_ID"
}
],
"checks": [
{
"id": "001",
"check": "BUPA_EXIST",
"checkBehaviour": "treatAsError",
"fields": [
{
"type": "sourceStructure",
"name": "BUPA_ID"
},
{
"type": "sourceStructure",
"name": "BUPA_TYPE"
}
]
}
]
}

Loading
Loading