├── .gitignore ├── .gitattributes ├── compatibility-check ├── .gitignore ├── package.json └── json-schema-diff.js ├── generate ├── .gitignore ├── setup.mjs ├── abap_transpile.json ├── package.json └── cl_run.clas.abap ├── file-formats ├── clas │ ├── examples │ │ ├── z_aff_example_clas.clas.texts.en.properties │ │ ├── z_aff_example_clas.clas.macros.abap │ │ ├── z_aff_example_clas.clas.definitions.abap │ │ ├── z_aff_example_clas.clas.implementations.abap │ │ ├── z_aff_example_clas.clas.abap │ │ ├── z_aff_example_clas.clas.testclasses.abap │ │ └── z_aff_example_clas.clas.json │ ├── type │ │ └── zif_aff_clas_v1.intf.json │ └── README.md ├── fugr │ ├── examples │ │ ├── z_aff_example_fugr.fugr.texts.en.properties │ │ ├── z_aff_example_fugr.fugr.lz_aff_example_fugrtop.reps.abap │ │ ├── z_aff_example_fugr.fugr.saplz_aff_example_fugr.reps.abap │ │ ├── z_aff_example_fugr.fugr.lz_aff_example_fugrtop.reps.json │ │ ├── z_aff_example_fugr.fugr.saplz_aff_example_fugr.reps.json │ │ ├── z_aff_example_fugr.fugr.json │ │ ├── z_aff_example_fugr.fugr.z_aff_example_func.func.abap │ │ └── z_aff_example_fugr.fugr.z_aff_example_func.func.json │ ├── type │ │ ├── zif_aff_fugr_v1.intf.json │ │ ├── zif_aff_func_v1.intf.json │ │ ├── zif_aff_reps_v1.intf.json │ │ ├── zif_aff_reps_v1.intf.abap │ │ └── zif_aff_fugr_v1.intf.abap │ └── reps-v1.json ├── dteb │ ├── examples │ │ ├── z_aff_example_dteb.dteb.acds │ │ └── z_aff_example_dteb.dteb.json │ ├── type │ │ ├── zif_aff_dteb_v1.intf.json │ │ └── zif_aff_dteb_v1.intf.abap │ ├── README.md │ └── dteb-v1.json ├── dtdc │ ├── examples │ │ ├── z_aff_example_dtdc.dtdc.acds │ │ └── z_aff_example_dtdc.dtdc.json │ ├── type │ │ ├── zif_aff_dtdc_v1.intf.json │ │ └── zif_aff_dtdc_v1.intf.abap │ └── README.md ├── srvd │ ├── examples │ │ ├── z_aff_example_srvd.srvd.acds │ │ └── z_aff_example_srvd.srvd.json │ ├── type │ │ └── zif_aff_srvd_v1.intf.json │ └── README.md ├── chkc │ ├── type │ │ ├── zif_aff_chkc_v1.intf.json │ │ └── zif_aff_chkc_v1.intf.abap │ ├── examples │ │ └── z_aff_example_chkc.chkc.json │ └── README.md ├── chko │ ├── type │ │ └── zif_aff_chko_v1.intf.json │ ├── examples │ │ └── z_aff_example_chko.chko.json │ └── README.md ├── dsfd │ ├── examples │ │ ├── zdsfd_example.dsfd.acds │ │ └── zdsfd_example.dsfd.json │ ├── type │ │ ├── zif_aff_dsfd_v1.intf.json │ │ └── zif_aff_dsfd_v1.intf.abap │ └── README.md ├── enho │ ├── type │ │ └── zif_aff_enho_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_enho.enho.json ├── enhs │ ├── type │ │ └── zif_aff_enhs_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_enhs.enhs.json ├── sito │ ├── type │ │ ├── zif_aff_sito_v1.intf.json │ │ └── zif_aff_sito_v2.intf.json │ └── README.md ├── edck │ ├── type │ │ └── zif_aff_edck_v1.intf.json │ ├── examples │ │ └── z_aff_example_edck.edck.json │ └── README.md ├── edcr │ ├── type │ │ ├── zif_aff_edcr_v1.intf.json │ │ └── zif_aff_edcr_v1.intf.abap │ ├── examples │ │ └── z_aff_example_edcr.edcr.json │ └── README.md ├── intf │ ├── type │ │ └── zif_aff_intf_v1.intf.json │ ├── examples │ │ ├── z_aff_example_intf.intf.abap │ │ └── z_aff_example_intf.intf.json │ └── README.md ├── ntty │ ├── type │ │ └── zif_aff_ntty_v1.intf.json │ ├── examples │ │ └── z_aff_example_ntty.ntty.json │ └── README.md ├── uiad │ ├── type │ │ ├── zif_aff_uiad_v1.intf.json │ │ └── zif_aff_uiad_v2.intf.json │ └── README.md ├── bgqc │ ├── type │ │ ├── zif_aff_bgqc_v1.intf.json │ │ └── zif_aff_bgqc_v1.intf.abap │ ├── examples │ │ └── z_aff_bgqc_example.bgqc.json │ ├── README.md │ └── bgqc-v1.json ├── cfdf │ ├── type │ │ ├── zif_aff_cfdf_v1.intf.json │ │ └── zif_aff_cfdf_v2.intf.json │ └── README.md ├── dcls │ ├── examples │ │ ├── z_aff_example_dcls.dcls.acds │ │ └── z_aff_example_dcls.dcls.json │ ├── type │ │ ├── zif_aff_dcls_v1.intf.json │ │ └── zif_aff_dcls_v1.intf.abap │ └── README.md ├── ddlx │ ├── examples │ │ ├── z_aff_example_ddlx.ddlx.acds │ │ └── z_aff_example_ddlx.ddlx.json │ ├── type │ │ ├── zif_aff_ddlx_v1.intf.json │ │ └── zif_aff_ddlx_v1.intf.abap │ └── README.md ├── eeec │ ├── type │ │ ├── zif_aff_eeec_v1.intf.json │ │ └── zif_aff_eeec_v1.intf.abap │ ├── README.md │ └── examples │ │ └── z_aff_example_eeec.eeec.json ├── sfpf │ ├── type │ │ ├── zif_aff_sfpf_v1.intf.json │ │ └── zif_aff_sfpf_v1.intf.abap │ ├── examples │ │ └── z_aff_example_sfpf.sfpf.json │ └── README.md ├── siad │ ├── type │ │ ├── zif_aff_siad_v1.intf.json │ │ └── zif_aff_siad_v1.intf.abap │ ├── examples │ │ └── z_aff_siad_example.siad.json │ └── README.md ├── uist │ ├── type │ │ ├── zif_aff_uist_v1.intf.json │ │ └── zif_aff_uist_v1.intf.abap │ ├── examples │ │ └── z_aff_example_uist.uist.json │ └── README.md ├── zif_aff_types_v1.intf.json ├── advc │ ├── examples │ │ └── z_aff_example_advc.advc.json │ ├── type │ │ ├── zif_aff_advc_v1.intf.json │ │ └── zif_aff_advc_v1.intf.abap │ └── README.md ├── aifa │ ├── type │ │ └── zif_aff_aifa_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_aifa.aifa.json ├── aiff │ ├── type │ │ ├── zif_aff_aiff_v1.intf.json │ │ └── zif_aff_aiff_v1.intf.abap │ ├── examples │ │ └── z_aff_example_aiff.aiff.json │ └── README.md ├── aifn │ ├── type │ │ ├── zif_aff_aifn_v1.intf.json │ │ └── zif_aff_aifn_v1.intf.abap │ ├── examples │ │ └── z_aff_example_aifn.aifn.json │ └── README.md ├── aifp │ ├── type │ │ └── zif_aff_aifp_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_aifp.aifp.json ├── aifr │ ├── type │ │ ├── zif_aff_aifr_v1.intf.json │ │ └── zif_aff_aifr_v1.intf.abap │ ├── examples │ │ └── z_aff_example_aifr.aifr.json │ └── README.md ├── cdbo │ ├── type │ │ └── zif_aff_cdbo_v1.intf.json │ ├── README.md │ └── examples │ │ └── zcdb_adt_test.cdbo.json ├── chkv │ ├── type │ │ └── zif_aff_chkv_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_chkv.chkv.json ├── ddls │ ├── type │ │ └── zif_aff_ddls_v1.intf.json │ ├── examples │ │ ├── z_aff_example_ddls.ddls.json │ │ └── z_aff_example_ddls.ddls.acds │ └── README.md ├── doma │ ├── type │ │ └── zif_aff_doma_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_doma.doma.json ├── dras │ ├── examples │ │ ├── z_aff_example_dras.dras.json │ │ └── z_aff_example_dras.dras.acds │ ├── type │ │ ├── zif_aff_dras_v1.intf.json │ │ └── zif_aff_dras_v1.intf.abap │ └── README.md ├── dsfi │ ├── type │ │ └── zif_aff_dsfi_v1.intf.json │ ├── examples │ │ ├── z_aff_example_dsfi_ana.dsfi.json │ │ └── z_aff_example_dsfi_sql.dsfi.json │ └── README.md ├── ints │ ├── type │ │ └── zif_aff_ints_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_ints.ints.json ├── ntta │ ├── type │ │ ├── zif_aff_ntta_v1.intf.json │ │ └── zif_aff_ntta_v1.intf.abap │ ├── examples │ │ └── z_aff_example_ntta.ntta.json │ └── README.md ├── susi │ ├── type │ │ └── zif_aff_susi_v1.intf.json │ ├── README.md │ └── examples │ │ └── 55fae0107acd2ee619d9f869c651edhs.susi.json ├── uipg │ ├── type │ │ └── zif_aff_uipg_v1.intf.json │ └── README.md ├── apic │ ├── examples │ │ └── z_aff_example_apic.apic.json │ ├── type │ │ ├── zif_aff_apic_v1.intf.json │ │ └── zif_aff_apic_v1.intf.abap │ ├── README.md │ └── apic-v1.json ├── apob │ ├── type │ │ ├── zif_aff_apob_v1.intf.json │ │ └── zif_aff_apob_v1.intf.abap │ ├── examples │ │ └── z_aff_example_apob.apob.json │ └── README.md ├── chdo │ ├── type │ │ └── zif_aff_chdo_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_chdo.chdo.json ├── dcat │ ├── type │ │ ├── zif_aff_dcat_v1.intf.json │ │ └── zif_aff_dcat_v1.intf.abap │ ├── examples │ │ └── z_aff_example_dcat.dcat.json │ └── README.md ├── ddla │ ├── examples │ │ ├── abapcatalog.ddla.json │ │ └── abapcatalog.ddla.acds │ ├── type │ │ ├── zif_aff_ddla_v1.intf.json │ │ └── zif_aff_ddla_v1.intf.abap │ ├── README.md │ └── ddla-v1.json ├── desd │ ├── type │ │ ├── zif_aff_desd_v1.intf.json │ │ └── zif_aff_desd_v1.intf.abap │ ├── examples │ │ └── z_aff_example_desd.desd.json │ └── README.md ├── dobj │ ├── type │ │ ├── zif_aff_dobj_v1.intf.json │ │ └── zif_aff_dobj_v1.intf.abap │ ├── examples │ │ └── z_aff_example_dobj.dobj.json │ └── README.md ├── edoi │ ├── type │ │ └── zif_aff_edoi_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_edoi.edoi.json ├── http │ ├── type │ │ ├── zif_aff_http_v1.intf.json │ │ └── zif_aff_http_v1.intf.abap │ └── README.md ├── ilmb │ ├── type │ │ └── zif_aff_ilmb_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_ilmb.ilmb.json ├── intm │ ├── type │ │ └── zif_aff_intm_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_intm.intm.json ├── msag │ ├── type │ │ ├── zif_aff_msag_v1.intf.json │ │ └── zif_aff_msag_v1.intf.abap │ ├── examples │ │ └── z_aff_example_msag.msag.json │ └── README.md ├── nrob │ ├── type │ │ └── zif_aff_nrob_v1.intf.json │ ├── examples │ │ └── z_aff_nr.nrob.json │ └── README.md ├── smtg │ ├── type │ │ └── zif_aff_smtg_v1.intf.json │ └── README.md ├── sprv │ ├── type │ │ ├── zif_aff_sprv_v1.intf.json │ │ └── zif_aff_sprv_v1.intf.abap │ ├── examples │ │ └── z_aff_example_sprv.sprv.json │ └── README.md ├── zif_aff_oo_types_v1.intf.json ├── aifd │ ├── type │ │ ├── zif_aff_aifd_v1.intf.json │ │ └── zif_aff_aifd_v1.intf.abap │ ├── examples │ │ └── z_aff_example_aifd.aifd.json │ └── README.md ├── aobj │ ├── type │ │ └── zif_aff_aobj_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_aobj.aobj.json ├── cota │ ├── type │ │ └── zif_aff_cota_v1.intf.json │ ├── examples │ │ └── sap_cota_testobject.cota.json │ └── README.md ├── csnm │ ├── type │ │ ├── zif_aff_csnm_v1.intf.json │ │ └── zif_aff_csnm_v1.intf.abap │ ├── examples │ │ ├── z_aff_example_csnm.csnm.json │ │ └── z_aff_example_csnm.csnm.model_inferred.csn │ └── README.md ├── drty │ ├── examples │ │ ├── z_aff_example_drty.drty.json │ │ └── z_aff_example_drty.drty.acds │ ├── type │ │ ├── zif_aff_drty_v1.intf.json │ │ └── zif_aff_drty_v1.intf.abap │ └── README.md ├── ront │ ├── type │ │ └── zif_aff_ront_v1.intf.json │ ├── examples │ │ └── z_aff_example_ront.ront.json │ └── README.md ├── rvbc │ ├── type │ │ └── zif_aff_rvbc_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_rvbc.rvbc.json ├── scp1 │ ├── type │ │ └── zif_aff_scp1_v1.intf.json │ └── README.md ├── sxtg │ ├── type │ │ └── zif_aff_sxtg_v1.intf.json │ ├── examples │ │ └── sxtg_tsm_so.sxtg.json │ └── README.md ├── aifi │ ├── type │ │ └── zif_aff_aifi_v1.intf.json │ └── README.md ├── aplo │ ├── type │ │ ├── zif_aff_aplo_v1.intf.json │ │ └── zif_aff_aplo_v1.intf.abap │ ├── examples │ │ └── z_aff_example_aplo.aplo.json │ └── README.md ├── edcc │ ├── type │ │ └── zif_aff_edcc_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_edcc.edcc.json ├── evtb │ ├── type │ │ └── zif_aff_evtb_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_evtb.evtb.json ├── evto │ ├── type │ │ ├── zif_aff_evto_v1.intf.json │ │ └── zif_aff_evto_v1.intf.abap │ ├── examples │ │ └── z_aff_example.evto.json │ └── README.md ├── nont │ ├── type │ │ ├── zif_aff_nont_v1.intf.json │ │ └── zif_aff_nont_v1.intf.abap │ ├── examples │ │ └── z_aff_example_nont.nont.json │ └── README.md ├── saia │ ├── type │ │ └── zif_aff_saia_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_saia.saia.json ├── sajc │ ├── type │ │ └── zif_aff_sajc_v1.intf.json │ └── README.md ├── sajt │ ├── type │ │ └── zif_aff_sajt_v1.intf.json │ ├── README.md │ └── examples │ │ └── z_aff_example_sajt.sajt.json ├── gsmp │ ├── type │ │ └── zif_aff_gsmp_v1.intf.json │ ├── examples │ │ └── z_aff_example_gsmp.gsmp.json │ └── README.md ├── srvb │ ├── type │ │ └── zif_aff_srvb_v1.intf.json │ ├── examples │ │ └── z_aff_example_srvb.srvb.json │ └── README.md ├── suco │ ├── type │ │ ├── zif_aff_suco_v1.intf.json │ │ └── zif_aff_suco_v1.intf.abap │ ├── examples │ │ └── z_aff_example_suco.suco.json │ └── README.md ├── swcr │ ├── type │ │ ├── zif_aff_swcr_v1.intf.json │ │ └── zif_aff_swcr_v1.intf.abap │ ├── README.md │ └── examples │ │ └── z_aff_example_swcr.swcr.json ├── dmon │ ├── type │ │ └── zif_aff_dmon_v1.intf.json │ ├── examples │ │ └── z_aff_example_dmon.dmon.json │ └── README.md ├── srvc │ ├── type │ │ └── zif_aff_srvc_v1.intf.json │ ├── examples │ │ └── z_aff_example_srvc.srvc.json │ └── README.md └── smbc │ ├── README.md │ └── examples │ └── z_aff_example_smbc.smbc.json ├── docs ├── decision-log │ └── index.md ├── glossary.md └── properties.md ├── .editorconfig ├── REUSE.toml ├── .github └── workflows │ ├── json-compatibility.yml │ ├── markdown-link-check.yml │ ├── generate.yml │ ├── py-validation.yml │ ├── example-not-delted.yml │ └── editorconfig.yml ├── LICENSES └── MIT.txt └── LICENSE /.gitignore: -------------------------------------------------------------------------------- 1 | .vscode 2 | *.DS_Store 3 | -------------------------------------------------------------------------------- /.gitattributes: -------------------------------------------------------------------------------- 1 | *.acds linguist-language=ABAP CDS -------------------------------------------------------------------------------- /compatibility-check/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | -------------------------------------------------------------------------------- /generate/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | downport 3 | output 4 | generated 5 | -------------------------------------------------------------------------------- /file-formats/clas/examples/z_aff_example_clas.clas.texts.en.properties: -------------------------------------------------------------------------------- 1 | @MaxLength:20 2 | TXT=Example text 3 | -------------------------------------------------------------------------------- /file-formats/fugr/examples/z_aff_example_fugr.fugr.texts.en.properties: -------------------------------------------------------------------------------- 1 | @MaxLength:60 2 | 001=This is an example Textelement 3 | -------------------------------------------------------------------------------- /file-formats/fugr/examples/z_aff_example_fugr.fugr.lz_aff_example_fugrtop.reps.abap: -------------------------------------------------------------------------------- 1 | FUNCTION-POOL z_aff_example_fugr. "MESSAGE-ID .. 2 | -------------------------------------------------------------------------------- /file-formats/dteb/examples/z_aff_example_dteb.dteb.acds: -------------------------------------------------------------------------------- 1 | define view entity buffer on z_aff_example_ddls 2 | layer localization 3 | type single 4 | -------------------------------------------------------------------------------- /file-formats/clas/examples/z_aff_example_clas.clas.macros.abap: -------------------------------------------------------------------------------- 1 | *"* use this source file for any macro definitions you need 2 | *"* in the implementation part of the class 3 | -------------------------------------------------------------------------------- /file-formats/dtdc/examples/z_aff_example_dtdc.dtdc.acds: -------------------------------------------------------------------------------- 1 | define dynamic cache z_aff_example_dtdc on spfli 2 | { 3 | sum(fltime) 4 | } 5 | 6 | creation configurable default off 7 | -------------------------------------------------------------------------------- /file-formats/srvd/examples/z_aff_example_srvd.srvd.acds: -------------------------------------------------------------------------------- 1 | @EndUserText.label: 'Example' 2 | define service z_aff_example_srvd { 3 | expose z_aff_example_ddls as myEntity; 4 | } 5 | -------------------------------------------------------------------------------- /file-formats/chkc/type/zif_aff_chkc_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "CHKC AFF Types", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/chko/type/zif_aff_chko_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "CHKO AFF Types", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dsfd/examples/zdsfd_example.dsfd.acds: -------------------------------------------------------------------------------- 1 | define scalar function ZDSFD_EXAMPLE 2 | with parameters 3 | p1 : abap.int1, 4 | p2 : abap.int2 5 | returns abap.int4 6 | -------------------------------------------------------------------------------- /file-formats/enho/type/zif_aff_enho_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "ENHO AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/enhs/type/zif_aff_enhs_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "ENHS AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/sito/type/zif_aff_sito_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "SITO AFF Types", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/clas/type/zif_aff_clas_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF: Interface v1", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/edck/type/zif_aff_edck_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for EDCK", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/edcr/type/zif_aff_edcr_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for EDCR", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/intf/type/zif_aff_intf_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF: Interface v1", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ntty/type/zif_aff_ntty_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Notetype AFF type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/sito/type/zif_aff_sito_v2.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "SITO AFF Types - v2", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/uiad/type/zif_aff_uiad_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "UIAD: AFF Type v.1", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/uiad/type/zif_aff_uiad_v2.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "UIAD: AFF Type v.2", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/bgqc/type/zif_aff_bgqc_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF for type BGQC - V1", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/cfdf/type/zif_aff_cfdf_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Custom Fields: AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/cfdf/type/zif_aff_cfdf_v2.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Custom Fields: AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dcls/examples/z_aff_example_dcls.dcls.acds: -------------------------------------------------------------------------------- 1 | define role z_aff_example_dcls { 2 | grant select on z_aff_example_ddls 3 | where 4 | z_aff_example_ddls.carrid = 'LH'; 5 | } 6 | -------------------------------------------------------------------------------- /file-formats/ddlx/examples/z_aff_example_ddlx.ddlx.acds: -------------------------------------------------------------------------------- 1 | @Metadata.layer: #CORE 2 | annotate entity Z_AFF_EXAMPLE_DDLX 3 | with 4 | { 5 | @EndUserText.label: 'Carrier ID' 6 | Carrid; 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/eeec/type/zif_aff_eeec_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Event Consumption Model", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/sfpf/type/zif_aff_sfpf_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for SFPF object", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/siad/type/zif_aff_siad_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF for type SIAD - V1", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/uist/type/zif_aff_uist_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF Type for Object UIST", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/zif_aff_types_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "General types reusable in AFF", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/advc/examples/z_aff_example_advc.advc.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "ADVC Example Object", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/aifa/type/zif_aff_aifa_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF Type for AIFA (Action)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/aiff/type/zif_aff_aiff_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF Type for AIFF (Fix Value)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/aifn/type/zif_aff_aifn_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for AIFN (Namespace)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/aifp/type/zif_aff_aifp_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for AIFP (Check)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/aifr/type/zif_aff_aifr_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for AIFR (Recipient)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/cdbo/type/zif_aff_cdbo_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface with CDBO AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/chkv/type/zif_aff_chkv_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF: ATC check variant v1", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dcls/type/zif_aff_dcls_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DCLS objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ddls/type/zif_aff_ddls_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DDLS objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ddlx/examples/z_aff_example_ddlx.ddlx.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example DDLX for AFF", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ddlx/type/zif_aff_ddlx_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Aff type for DDLX objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/doma/type/zif_aff_doma_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DOMA objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dras/examples/z_aff_example_dras.dras.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example CDS Aspect", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dsfd/examples/zdsfd_example.dsfd.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example CDS scalar function", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dsfi/type/zif_aff_dsfi_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DSFI objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/fugr/type/zif_aff_fugr_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for FUGR objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/fugr/type/zif_aff_func_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for FUNC objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/fugr/type/zif_aff_reps_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for REPS objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ints/type/zif_aff_ints_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Intelligent Scenario (INTS)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ntta/type/zif_aff_ntta_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Notetype Assignment AFF type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/srvd/type/zif_aff_srvd_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for SRVD objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/susi/type/zif_aff_susi_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Authentication Defaults AFF", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/uipg/type/zif_aff_uipg_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Page Template: AFF Type v.1", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/apic/examples/z_aff_example_apic.apic.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "API Catalog Example Object", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/apic/type/zif_aff_apic_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for APIC (API Catalog),", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/apob/type/zif_aff_apob_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface with the APOB AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/chdo/type/zif_aff_chdo_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface with the CHDO AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dcat/type/zif_aff_dcat_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface with the DCAT AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ddla/examples/abapcatalog.ddla.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example DDLA for ABAP file formats", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/desd/type/zif_aff_desd_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "ABAP file format of DESD objects", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dobj/type/zif_aff_dobj_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface with the DOBJ AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/edoi/type/zif_aff_edoi_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF for eDocument Interface (EDOI)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/http/type/zif_aff_http_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "ABAP File Format for HTTP Service", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ilmb/type/zif_aff_ilmb_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface with the ILMB AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/intm/type/zif_aff_intm_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Intelligent Scenario Model (INTM)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/msag/type/zif_aff_msag_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for Message Class Object", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/nrob/type/zif_aff_nrob_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface with the NROB AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/smtg/type/zif_aff_smtg_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "test email template file format", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/sprv/type/zif_aff_sprv_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface with the SPRV AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/zif_aff_oo_types_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Common types for classes and interfaces", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/aifd/type/zif_aff_aifd_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for AIFD (Deployment Scenario)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/aobj/type/zif_aff_aobj_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for AOBJ (Archiving Object)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/cota/type/zif_aff_cota_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "ABAP File Format for Connection Target", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/csnm/type/zif_aff_csnm_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "CSN AFF type for CSNM repository object", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dras/type/zif_aff_dras_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DRAS objects (CDS aspects)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/drty/examples/z_aff_example_drty.drty.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "This is my first Simple Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/drty/type/zif_aff_drty_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DRTY objects (CDS Types)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ront/type/zif_aff_ront_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "RAP SOT: SAP Object Type AFF Interface", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/rvbc/type/zif_aff_rvbc_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for RVBC ( Review Booklet )", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/scp1/type/zif_aff_scp1_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Business Configuration Sets: AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/sxtg/type/zif_aff_sxtg_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "SXTG: SAP GUI Extension Point AFF Type", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/advc/type/zif_aff_advc_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for ADVC (cross-client app variant)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/aifi/type/zif_aff_aifi_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for AIFI (Application Interface)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/aplo/type/zif_aff_aplo_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for APLO (Application Log Object)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dcls/examples/z_aff_example_dcls.dcls.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example DCLS for ABAP file formats", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/desd/examples/z_aff_example_desd.desd.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example DESD for ABAP file format", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dtdc/examples/z_aff_example_dtdc.dtdc.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example DTDC for ABAP file formats", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dtdc/type/zif_aff_dtdc_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DTDC objects (Dynamic Cache)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dteb/examples/z_aff_example_dteb.dteb.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example DTEB for ABAP file formats", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/edcc/type/zif_aff_edcc_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for EDCC (Consistency Scenario)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/evtb/type/zif_aff_evtb_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "RAP EEE: Event Binding AFF Type Interface", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/evto/type/zif_aff_evto_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "RAP EEE: Event Object AFF Type Interface", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/fugr/examples/z_aff_example_fugr.fugr.saplz_aff_example_fugr.reps.abap: -------------------------------------------------------------------------------- 1 | INCLUDE lz_aff_example_fugrtop. " global declarations 2 | INCLUDE lz_aff_example_fugruxx. " function modules 3 | -------------------------------------------------------------------------------- /file-formats/nont/type/zif_aff_nont_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "RAP SOT: SAP Object Node Type AFF Interface", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/saia/type/zif_aff_saia_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "types for abap file format of ide actions", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/sajc/type/zif_aff_sajc_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for SAJC (Application Job Catalog)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/sajt/type/zif_aff_sajt_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for SAJT (Application Job Template)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dteb/type/zif_aff_dteb_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DTEB objects (CDS Entity Buffers)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/gsmp/type/zif_aff_gsmp_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "GSMP AFF Type (Generic Simple Metric Collector)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/srvb/type/zif_aff_srvb_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface for Service Binding ABAP File Format", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/suco/type/zif_aff_suco_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for SUCO (Authorization Default Variant)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/swcr/type/zif_aff_swcr_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF Type for SWCR (Software Component Relations)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/bgqc/examples/z_aff_bgqc_example.bgqc.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example Background Processing Context object", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/ddla/type/zif_aff_ddla_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DDLA objects (CDS Annotation Definitions)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dmon/type/zif_aff_dmon_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface with the DMON AFF Type (for ABAP Daemon)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dsfd/type/zif_aff_dsfd_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF type for DSFD objects (CDS scalar function definitions)", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/srvc/type/zif_aff_srvc_v1.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Interface for Service Consumption Model ABAP File Format", 5 | "originalLanguage": "en" 6 | } 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/clas/examples/z_aff_example_clas.clas.definitions.abap: -------------------------------------------------------------------------------- 1 | *"* use this source file for any type of declarations (class 2 | *"* definitions, interfaces or type declarations) you need for 3 | *"* components in the private section 4 | -------------------------------------------------------------------------------- /file-formats/drty/examples/z_aff_example_drty.drty.acds: -------------------------------------------------------------------------------- 1 | @EndUserText.label : 'This is a test label simple type' 2 | @EndUserText.quickInfo : 'This is the quick info for the simple type' 3 | define type z_aff_example_drty : abap.char( 10 );  4 | -------------------------------------------------------------------------------- /file-formats/fugr/examples/z_aff_example_fugr.fugr.lz_aff_example_fugrtop.reps.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example description of FUGR TOP Include" 5 | }, 6 | "includeType": "include" 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/fugr/examples/z_aff_example_fugr.fugr.saplz_aff_example_fugr.reps.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example FUGR for ABAP file formats" 5 | }, 6 | "includeType": "functionGroup" 7 | } 8 | -------------------------------------------------------------------------------- /file-formats/dras/examples/z_aff_example_dras.dras.acds: -------------------------------------------------------------------------------- 1 | @EndUserText.label: 'Example CDS Aspect' 2 | define aspect Z_AFF_EXAMPLE_DRAS { 3 | example_bound_field : abap.int2; 4 | example_calculated_field = ( example_bound_field + 3 ) * 2; 5 | } 6 | -------------------------------------------------------------------------------- /file-formats/fugr/examples/z_aff_example_fugr.fugr.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example FUGR for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "fixPointArithmetic": true 8 | } 9 | -------------------------------------------------------------------------------- /file-formats/edcr/examples/z_aff_example_edcr.edcr.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example Representation", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | } 8 | } 9 | -------------------------------------------------------------------------------- /file-formats/chkc/examples/z_aff_example_chkc.chkc.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example CHKC for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "parentCategory": "SYCM_S4H_READINESS" 8 | } 9 | -------------------------------------------------------------------------------- /file-formats/dcat/examples/z_aff_example_dcat.dcat.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example data category", 5 | "originalLanguage": "en" 6 | }, 7 | "attributes": { 8 | "sensitivityLevel": "personalData" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /file-formats/suco/examples/z_aff_example_suco.suco.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "", 5 | "originalLanguage": "en" 6 | }, 7 | "leadingApplication": { 8 | "objectType": "TRAN", 9 | "objectName": "SACF" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /docs/decision-log/index.md: -------------------------------------------------------------------------------- 1 | # Decision Log 2 | 3 | This log lists the decisions for ABAP file formats. 4 | 5 | 6 | 7 | * [ADR-0001](0001-json-version.md) - JSON Versioning 8 | * [Template](template.md) - [short title of solved problem and solution] 9 | -------------------------------------------------------------------------------- /file-formats/nont/examples/z_aff_example_nont.nont.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example SAP Object Node Type.", 5 | "originalLanguage": "en" 6 | }, 7 | "name": "Z_AFF_EXAMPLE_NONT", 8 | "sapObjectType": "Z_Aff_Example_Ront" 9 | } 10 | -------------------------------------------------------------------------------- /file-formats/ddls/examples/z_aff_example_ddls.ddls.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example DDLs for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "sourceOrigin": "abapDevelopmentTools", 8 | "sourceType": "viewEntity" 9 | } 10 | -------------------------------------------------------------------------------- /file-formats/cota/examples/sap_cota_testobject.cota.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Test Object For Unit Tests", 5 | "originalLanguage": "en" 6 | }, 7 | "configuration": { 8 | "communicationTargetClass": "SAP_COTA_TESTOBJECT" 9 | } 10 | } 11 | -------------------------------------------------------------------------------- /file-formats/csnm/examples/z_aff_example_csnm.csnm.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example CSN model for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "csnFiles": [ 8 | { 9 | "file": "model_inferred.csn" 10 | } 11 | ] 12 | } 13 | -------------------------------------------------------------------------------- /file-formats/dsfi/examples/z_aff_example_dsfi_ana.dsfi.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example scalar function implementation", 5 | "originalLanguage": "en" 6 | }, 7 | "scalarFunctionName": "z_aff_example_dsfi", 8 | "engine": "analyticalEngine" 9 | } 10 | -------------------------------------------------------------------------------- /file-formats/srvd/examples/z_aff_example_srvd.srvd.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "sourceOrigin": "abapDevelopmentTools", 9 | "sourceType": "definition" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /file-formats/siad/examples/z_aff_siad_example.siad.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "SIAD Example", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "businessRoleTemplate": "BRT", 9 | "launchpadSpaceTemplate": "LPST" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /docs/glossary.md: -------------------------------------------------------------------------------- 1 | ## Glossary 2 | 3 | ### ABAP Repository Object 4 | 5 | ABAP repository objects are development objects which are stored in an ABAP system's database and are defined by a transport object. 6 | Each repository object has an object catalog (aka TADIR) entry. 7 | It can be specified with an object type and name. 8 | -------------------------------------------------------------------------------- /file-formats/ddls/examples/z_aff_example_ddls.ddls.acds: -------------------------------------------------------------------------------- 1 | @AbapCatalog.entityBuffer.definitionAllowed: true 2 | define view entity z_aff_example_ddls 3 | as select from spfli 4 | { 5 | key carrid as Carrid, 6 | key connid as Connid, 7 | countryfr as Countryfr, 8 | countryto as Countryto 9 | } 10 | -------------------------------------------------------------------------------- /file-formats/clas/examples/z_aff_example_clas.clas.implementations.abap: -------------------------------------------------------------------------------- 1 | CLASS lcl_local_class DEFINITION CREATE PRIVATE. 2 | 3 | PUBLIC SECTION. 4 | DATA local_attribute TYPE i. 5 | PROTECTED SECTION. 6 | PRIVATE SECTION. 7 | 8 | ENDCLASS. 9 | 10 | CLASS lcl_local_class IMPLEMENTATION. 11 | 12 | ENDCLASS. 13 | -------------------------------------------------------------------------------- /file-formats/aifn/examples/z_aff_example_aifn.aifn.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example AIFN for ABAP File Format", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "generalInformation":{ 9 | "aifNamespace": "/AIFT" 10 | } 11 | } 12 | -------------------------------------------------------------------------------- /file-formats/edoi/README.md: -------------------------------------------------------------------------------- 1 | # EDOI File Format 2 | 3 | File | Cardinality | Definition | Schema | Example 4 | :--- | :--- | :--- | :--- | :--- 5 | `.edoi.json` | 1 | [`zif_aff_edoi_v1.intf.abap`](./type/zif_aff_edoi_v1.intf.abap) | [`edoi-v1.json`](./edoi-v1.json) | [`z_aff_example_edoi.edoi.json`](./examples/z_aff_example_edoi.edoi.json) 6 | -------------------------------------------------------------------------------- /file-formats/srvc/examples/z_aff_example_srvc.srvc.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example SRVC for ABAP File Formats", 5 | "originalLanguage": "en" 6 | }, 7 | "consumer": { 8 | "type": "OData", 9 | "objectType": "SRVD", 10 | "objectName": "SRVC_ODATA" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /file-formats/dmon/examples/z_aff_example_dmon.dmon.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF ABAP Daemon Application", 5 | "originalLanguage": "en" 6 | }, 7 | "className": "CL_AD_EXT_SIMPLE_DAEMON", 8 | "callerObject": { 9 | "type": "PROG", 10 | "name": "RS_ABAP_DAEMON_STARTUP_TEST" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /file-formats/evto/examples/z_aff_example.evto.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example Event Object.", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "sapObjectType": "Z_AFF_EXAMPLE", 9 | "majorVersion": 1, 10 | "minorVersion": 0, 11 | "patchVersion": 4 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /file-formats/aifr/examples/z_aff_example_aifr.aifr.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example AIFR for ABAP File Format", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "generalInformation":{ 9 | "namespace": "AIFNS", 10 | "aifRecipient": "REC_WS_INB" 11 | } 12 | } 13 | -------------------------------------------------------------------------------- /file-formats/apob/examples/z_aff_example_apob.apob.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example application object", 5 | "originalLanguage": "en" 6 | }, 7 | "attributes": { 8 | "aoKeyStructure": "ZKEY_STRUCT", 9 | "sapObject": "ZOBJECT", 10 | "dataCategory": "ZCATEGORY", 11 | "ilmObject": "ZILM" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /file-formats/fugr/examples/z_aff_example_fugr.fugr.z_aff_example_func.func.abap: -------------------------------------------------------------------------------- 1 | FUNCTION z_aff_example_func 2 | IMPORTING 3 | i_param TYPE i 4 | RAISING 5 | cx_static_check. 6 | 7 | 8 | 9 | TYPES example_type TYPE string . 10 | 11 | DATA example_attribute TYPE example_type . 12 | 13 | example_attribute = 'This is an example Textelement'(001). 14 | ENDFUNCTION. 15 | -------------------------------------------------------------------------------- /.editorconfig: -------------------------------------------------------------------------------- 1 | # EditorConfig is awesome: https://EditorConfig.org 2 | 3 | # top-most EditorConfig file 4 | root = true 5 | 6 | # ensure the LF line endings 7 | [*.{abap,md,properties,acds,json,mjs,gitignore,yml}] 8 | charset = utf-8 9 | end_of_line = lf 10 | insert_final_newline = true 11 | trim_trailing_whitespace = true 12 | 13 | 14 | [*.json] 15 | indent_style = space 16 | indent_size = 2 17 | -------------------------------------------------------------------------------- /file-formats/intf/examples/z_aff_example_intf.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE z_aff_example_intf PUBLIC. 2 | 3 | TYPES ty_example_type TYPE string. 4 | 5 | CONSTANTS co_example_constant TYPE ty_example_type VALUE `ABC123` ##NO_TEXT. 6 | 7 | EVENTS example_event. 8 | 9 | "! Method description, lorem ipsum 10 | METHODS example_method 11 | IMPORTING 12 | !i_param TYPE ty_example_type. 13 | ENDINTERFACE. 14 | -------------------------------------------------------------------------------- /file-formats/dsfi/examples/z_aff_example_dsfi_sql.dsfi.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example CDS scalar function", 5 | "originalLanguage": "en" 6 | }, 7 | "scalarFunctionName": "Z_AFF_EXAMPLE_DSFI", 8 | "engine": "sqlEngine", 9 | "sqlProperties": { 10 | "amdpReference": "ZCL_DSFI_EXAMPLE=>EXECUTE", 11 | "autoExposedInSqlServices": true 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /file-formats/edck/examples/z_aff_example_edck.edck.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example Check ID", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "generalInformation": { 9 | "checkCategory": "existenceCheck", 10 | "checkClassification": "coreDeliveredChecks", 11 | "resultProcessDerived": false 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /file-formats/sprv/examples/z_aff_example_sprv.sprv.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Test SPRV Object for SOAP Runtime", 5 | "originalLanguage": "en" 6 | }, 7 | "serviceProvider": { 8 | "providerName": "IIW_SRT_TEST_WEBI2", 9 | "namespace": "urn:sap-com:sprx:ep:sap:test", 10 | "prefix": "", 11 | "implementingClass": "CL_IIW_SRT_TEST_WEBI2" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /file-formats/aiff/examples/z_aff_example_aiff.aiff.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example AIFF for ABAP File Format", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "generalInformation":{ 9 | "namespace": "AIFNS", 10 | "aifFixValue": "FixValue1", 11 | "fieldValue": "1" 12 | } 13 | } 14 | -------------------------------------------------------------------------------- /file-formats/aplo/examples/z_aff_example_aplo.aplo.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Application Log Test Object", 5 | "originalLanguage": "en" 6 | }, 7 | "subobjects": [ 8 | { 9 | "name": "SUBOBJECT1", 10 | "description": "Subobject 1" 11 | }, 12 | { 13 | "name": "SUBOBJECT2", 14 | "description": "Subobject 2" 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /file-formats/ront/examples/z_aff_example_ront.ront.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example SAP Object Type.", 5 | "originalLanguage": "en" 6 | }, 7 | "typeCategory": "businessObject", 8 | "name": "Z_Aff_Example_Ront", 9 | "objectTypeCode": "4789", 10 | "interfaceBehaviorDefinition": "I_EXAMPLE_INTERFACE_BEH_DEF_TP", 11 | "odmEntityName": "ExampleODMEntity" 12 | } 13 | -------------------------------------------------------------------------------- /file-formats/ntty/examples/z_aff_example_ntty.ntty.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example object", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "languageDependent": true, 9 | "multipleNotes": true, 10 | "hideTitle": true 11 | }, 12 | "contentSettings": { 13 | "maximumLength": 1000, 14 | "formattingProfile": "text" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /REUSE.toml: -------------------------------------------------------------------------------- 1 | version = 1 2 | SPDX-PackageName = "ABAP file formats" 3 | SPDX-PackageSupplier = "ABAP file formats team " 4 | SPDX-PackageDownloadLocation = "https://github.com/SAP/abap-file-formats" 5 | 6 | [[annotations]] 7 | path = "**" 8 | precedence = "aggregate" 9 | SPDX-FileCopyrightText = "2021 SAP SE or an SAP affiliate company and ABAP file formats contributors" 10 | SPDX-License-Identifier = "MIT" 11 | -------------------------------------------------------------------------------- /file-formats/msag/examples/z_aff_example_msag.msag.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example message class object for ABAP File Formats", 5 | "originalLanguage": "en" 6 | }, 7 | "messages": [ 8 | { 9 | "number": "000", 10 | "text": "Data saved successfully" 11 | }, 12 | { 13 | "number": "001", 14 | "text": "Invalid input: &1" 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /generate/setup.mjs: -------------------------------------------------------------------------------- 1 | import {SQLiteDatabaseClient} from "@abaplint/database-sqlite"; 2 | 3 | export async function setup(abap, schemas, insert) { 4 | abap.context.databaseConnections["DEFAULT"] = new SQLiteDatabaseClient(); 5 | await abap.context.databaseConnections["DEFAULT"].connect(); 6 | await abap.context.databaseConnections["DEFAULT"].execute(schemas.sqlite); 7 | await abap.context.databaseConnections["DEFAULT"].execute(insert); 8 | } 9 | -------------------------------------------------------------------------------- /file-formats/gsmp/examples/z_aff_example_gsmp.gsmp.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF Example", 5 | "originalLanguage": "en" 6 | }, 7 | "implementation": { 8 | "type": "CLAS", 9 | "name": "ZCL_AFF_GSMP_TEST" 10 | }, 11 | "execution": { 12 | "mode": "system", 13 | "priority": "normal", 14 | "instantiation": "createNew", 15 | "scopeDependent": false 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /file-formats/sfpf/examples/z_aff_example_sfpf.sfpf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example SFPF for ABAP file formats", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "generalInformation": { 9 | "dataProvider": "Example_SRV_DEF", 10 | "fontEmbed": false, 11 | "layoutMirroring": false, 12 | "reduceDataVolume": false 13 | } 14 | } 15 | -------------------------------------------------------------------------------- /file-formats/chko/examples/z_aff_example_chko.chko.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example CHKO for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "category": "Z_AFF_EXAMPLE_CHKC", 8 | "implementingClass": "ZCL_CI_TEST_AFF_EXAMPLE_CHECK", 9 | "parameters": [ 10 | { 11 | "name": "ParameterName", 12 | "description": "Parameter description" 13 | } 14 | ] 15 | } 16 | -------------------------------------------------------------------------------- /file-formats/http/README.md: -------------------------------------------------------------------------------- 1 | # HTTP Service File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | HTTP | HTTP Service | Connectivity 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.http.json` | 1 | [`zif_aff_http_v1.intf.abap`](./type/zif_aff_http_v1.intf.abap) | [`http-v1.json`](./http-v1.json) 14 | -------------------------------------------------------------------------------- /file-formats/ntta/examples/z_aff_example_ntta.ntta.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example object", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "objectNodeType": "TestNodeType" 9 | }, 10 | "noteTypes": [ 11 | { 12 | "name": "TEST_NOTETYPE_1" 13 | }, 14 | { 15 | "name": "TEST_NOTETYPE_2" 16 | } 17 | ] 18 | } 19 | -------------------------------------------------------------------------------- /file-formats/aifa/README.md: -------------------------------------------------------------------------------- 1 | # Action File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | AIFA | Action | Application Interface Framework 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.aifa.json` | 1 | [`zif_aff_aifa_v1.intf.abap`](./type/zif_aff_aifa_v1.intf.abap) | [`aifa-v1.json`](./aifa-v1.json) 14 | -------------------------------------------------------------------------------- /compatibility-check/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "json-schema-compatible", 3 | "version": "1.0.0", 4 | "description": "checks for incompatible changes in JSON Schema", 5 | "main": "json-schema-diff.js", 6 | "scripts": { 7 | "check": "node json-schema-diff" 8 | }, 9 | "author": "", 10 | "license": "ISC", 11 | "dependencies": { 12 | "@actions/core": "^1.10.1", 13 | "@actions/exec": "^1.1.1", 14 | "json-schema-diff": "^0.18.1" 15 | } 16 | } 17 | -------------------------------------------------------------------------------- /file-formats/rvbc/README.md: -------------------------------------------------------------------------------- 1 | # Review Booklet File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | RVBC | Review Booklet | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.rvbc.json` | 1 | [`zif_aff_rvbc_v1.intf.abap`](./type/zif_aff_rvbc_v1.intf.abap) | [`rvbc-v1.json`](./rvbc-v1.json) | [`z_aff_example_rvbc.rvbc.json`] 14 | -------------------------------------------------------------------------------- /file-formats/uist/examples/z_aff_example_uist.uist.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Description example of UIST object for ABAP file format", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "title": "Title Example of UIST Object for ABAP File Format", 9 | "sortPriority": 1.001, 10 | "mergeId": "Z_MERGE_1" 11 | }, 12 | "pages": [ 13 | { 14 | "name": "Z_PAGE" 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /file-formats/smtg/README.md: -------------------------------------------------------------------------------- 1 | # Output Management Email Template File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SMTG | Output Management Email Template | Others 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.smtg.json` | 1 | [`zif_aff_smtg_v1.intf.abap`](./type/zif_aff_smtg_v1.intf.abap) | [`smtg-v1.json`](./smtg-v1.json) 14 | -------------------------------------------------------------------------------- /.github/workflows/json-compatibility.yml: -------------------------------------------------------------------------------- 1 | name: Compatibility Check 2 | 3 | on: 4 | pull_request: 5 | 6 | jobs: 7 | compatible: 8 | name: Is change compatible 9 | runs-on: ubuntu-latest 10 | timeout-minutes: 10 11 | steps: 12 | - uses: actions/checkout@v4 13 | with: 14 | fetch-depth: 0 15 | - uses: actions/setup-node@v4 16 | - name: Run script 17 | run: | 18 | cd compatibility-check 19 | npm ci 20 | npm run check 21 | -------------------------------------------------------------------------------- /file-formats/drty/type/zif_aff_drty_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_drty_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

CDS Type

6 | "! CDS type 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60, 14 | END OF ty_main. 15 | 16 | ENDINTERFACE. 17 | -------------------------------------------------------------------------------- /file-formats/apic/type/zif_aff_apic_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_apic_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

API Catalog

6 | "! API catalog 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 14 | END OF ty_main. 15 | ENDINTERFACE. 16 | -------------------------------------------------------------------------------- /file-formats/dras/type/zif_aff_dras_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_dras_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

CDS Aspect

6 | "! CDS scalar aspect 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60, 14 | END OF ty_main. 15 | 16 | ENDINTERFACE. 17 | -------------------------------------------------------------------------------- /file-formats/dtdc/type/zif_aff_dtdc_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_dtdc_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

Dynamic Cache

6 | "! Dynamic cache 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60, 14 | END OF ty_main. 15 | 16 | ENDINTERFACE. 17 | -------------------------------------------------------------------------------- /file-formats/ddlx/type/zif_aff_ddlx_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_ddlx_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

Object Type DDLX

6 | "! DDLX object type 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60, 14 | END OF ty_main. 15 | 16 | ENDINTERFACE. 17 | -------------------------------------------------------------------------------- /file-formats/sxtg/examples/sxtg_tsm_so.sxtg.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "SXTG: Sales Order Header (Home)", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "extensionInclude": "SXTG_S_TSM_SO_INCL_EEW", 9 | "applicationDataStructure": "SXTG_S_TSM_SO_APPL_DATA", 10 | "uiExtensionEntity": "D_SXTG_TSM_SO_UI_HEADER" 11 | }, 12 | "transactionCodes": [ 13 | { 14 | "name": "SXTG_TSM_SO" 15 | } 16 | ] 17 | } 18 | -------------------------------------------------------------------------------- /file-formats/doma/README.md: -------------------------------------------------------------------------------- 1 | # Domain File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DOMA | Domain | Dictionary 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.doma.json` | 1 | [`zif_aff_doma_v1.intf.abap`](./type/zif_aff_doma_v1.intf.abap) | [`doma-v1.json`](./doma-v1.json) | [`z_aff_example_doma.doma.json`](./examples/z_aff_example_doma.doma.json) 14 | -------------------------------------------------------------------------------- /file-formats/doma/examples/z_aff_example_doma.doma.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example DOMA for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "dataType": "CHAR", 8 | "length": 3, 9 | "outputLength":3, 10 | "fixedValues": [ 11 | { 12 | "fixedValue": "ABC", 13 | "description": "Fixed value ABC" 14 | }, 15 | { 16 | "fixedValue": "XYZ", 17 | "description": "Fixed value XYZ" 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /file-formats/ilmb/README.md: -------------------------------------------------------------------------------- 1 | # ILM Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | ILMB | ILM Object | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.ilmb.json` | 1 | [`zif_aff_ilmb_v1.intf.abap`](./type/zif_aff_ilmb_v1.intf.abap) | [`ilmb-v1.json`](./ilmb-v1.json) | [z_aff_example_ilmb.ilmb.json](./examples/z_aff_example_ilmb.ilmb.json) 14 | -------------------------------------------------------------------------------- /file-formats/saia/README.md: -------------------------------------------------------------------------------- 1 | # IDE Action File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SAIA | IDE Action | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.saia.json` | 1 | [`zif_aff_saia_v1.intf.abap`](./type/zif_aff_saia_v1.intf.abap) | [`saia-v1.json`](./saia-v1.json) | [`z_aff_example_saia.saia.json`](./examples/z_aff_example_saia.saia.json) 14 | -------------------------------------------------------------------------------- /file-formats/dcat/README.md: -------------------------------------------------------------------------------- 1 | # Data Category File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DCAT | Data Category | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.dcat.json` | 1 | [`zif_aff_dcat_v1.intf.abap`](./type/zif_aff_dcat_v1.intf.abap) | [`dcat-v1.json`](./dcat-v1.json) | [`z_aff_example_dcat.dcat.json`](./examples/z_aff_example_dcat.dcat.json) 14 | -------------------------------------------------------------------------------- /file-formats/dmon/README.md: -------------------------------------------------------------------------------- 1 | # ABAP Daemon File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DMON | ABAP Daemon | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.dmon.json` | 1 | [`zif_aff_dmon_v1.intf.abap`](./type/zif_aff_dmon_v1.intf.abap) | [`dmon-v1.json`](./dmon-v1.json) | [`z_aff_example_dmon.dmon.json`](./examples/z_aff_example_dmon.dmon.json) 14 | -------------------------------------------------------------------------------- /file-formats/dobj/examples/z_aff_example_dobj.dobj.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example destruction object", 5 | "originalLanguage": "en" 6 | }, 7 | "attributes": { 8 | "destructionClass": "CL_SFLIGHT_DESTRUCTION" 9 | }, 10 | "structureDefinition": [ 11 | { 12 | "parentTable": "", 13 | "dependentTable": "SPFLI" 14 | }, 15 | { 16 | "parentTable": "SPFLI", 17 | "dependentTable": "SFLIGHT" 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /file-formats/dteb/type/zif_aff_dteb_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_dteb_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

CDS Entity Buffer

6 | "! CDS entity buffer 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 14 | END OF ty_main. 15 | 16 | ENDINTERFACE. 17 | -------------------------------------------------------------------------------- /file-formats/edcr/type/zif_aff_edcr_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_edcr_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

Representation Type

6 | "! Representation type 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 14 | END OF ty_main. 15 | 16 | ENDINTERFACE. 17 | -------------------------------------------------------------------------------- /file-formats/nrob/examples/z_aff_nr.nrob.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example number range object for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "interval": { 8 | "numberLengthDomain": "NUM10", 9 | "percentWarning": 10.0, 10 | "subType": "", 11 | "untilYear": false, 12 | "rolling": false, 13 | "prefix": false 14 | }, 15 | "configuration": { 16 | "buffering": "none", 17 | "bufferedNumbers": 0 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /file-formats/apic/README.md: -------------------------------------------------------------------------------- 1 | # API Catalog File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | APIC | API Catalog | - 8 | 9 | ## File Structure 10 | 11 | 12 | File | Cardinality | Definition | Schema | Example 13 | :--- | :--- | :--- | :--- | :--- 14 | `.apic.json` | 1 | [`zif_aff_apic_v1.intf.abap`](./type/zif_aff_apic_v1.intf.abap) | [`apic-v1.json`](./apic-v1.json) | [`z_aff_example_apic.apic.json`](./examples/z_aff_example_apic.apic.json) 15 | -------------------------------------------------------------------------------- /file-formats/evto/README.md: -------------------------------------------------------------------------------- 1 | # Event Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | EVTO | Event Object | Business Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.evto.json` | 1 | [`zif_aff_evto_v1.intf.abap`](./type/zif_aff_evto_v1.intf.abap) | [`evto-v1.json`](./evto-v1.json) | [`z_aff_example.evto.json`](./examples/z_aff_example.evto.json) 14 | -------------------------------------------------------------------------------- /file-formats/gsmp/README.md: -------------------------------------------------------------------------------- 1 | # Metric Provider File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | GSMP | Metric Provider | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.gsmp.json` | 1 | [`zif_aff_gsmp_v1.intf.abap`](./type/zif_aff_gsmp_v1.intf.abap) | [`gsmp-v1.json`](./gsmp-v1.json) | [`z_aff_example_gsmp.gsmp.json`](./examples/z_aff_example_gsmp.gsmp.json) 14 | -------------------------------------------------------------------------------- /file-formats/srvb/examples/z_aff_example_srvb.srvb.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example SRVB for ABAP File Formats", 5 | "originalLanguage": "en" 6 | }, 7 | "bindingType": "ODATA V4", 8 | "bindingTypeCategory": "ui", 9 | "services": [ 10 | { 11 | "name": "SRVD_HOME", 12 | "versions": [ 13 | { 14 | "serviceVersion": "1.0.0", 15 | "serviceDefinition": "SRVD_HOME" 16 | } 17 | ] 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /file-formats/aifd/examples/z_aff_example_aifd.aifd.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example AIFD for ABAP File Format", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "applicationInterfaces":[ 9 | { 10 | "applicationInterface":"INT_OBJ_1" 11 | }, 12 | { 13 | "applicationInterface":"/AIFTCUST_WS_I00001" 14 | }, 15 | { 16 | "applicationInterface":"/AIFTCUST_WS_O00001" 17 | } 18 | ] 19 | } 20 | -------------------------------------------------------------------------------- /file-formats/aobj/README.md: -------------------------------------------------------------------------------- 1 | # Archiving Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | AOBJ | Archiving Object | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.aobj.json` | 1 | [`zif_aff_aobj_v1.intf.abap`](./type/zif_aff_aobj_v1.intf.abap) | [`aobj-v1.json`](./aobj-v1.json) | [`z_aff_example_aobj.aobj.json`](./examples/z_aff_example_aobj.aobj.json) 14 | -------------------------------------------------------------------------------- /file-formats/apob/README.md: -------------------------------------------------------------------------------- 1 | # Application Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | APOB | Application Object | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.apob.json` | 1 | [`zif_aff_apob_v1.intf.abap`](./type/zif_aff_apob_v1.intf.abap) | [`apob-v1.json`](./apob-v1.json) | [`z_aff_example_apob.apob.json`](./examples/z_aff_example_apob.apob.json) 14 | -------------------------------------------------------------------------------- /file-formats/chko/README.md: -------------------------------------------------------------------------------- 1 | # ATC Check File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | CHKO | ATC Check | ABAP Test Cockpit 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.chko.json` | 1 | [`zif_aff_chko_v1.intf.abap`](./type/zif_aff_chko_v1.intf.abap) | [`chko-v1.json`](./chko-v1.json) | [`z_aff_example_chko.chko.json`](./examples/z_aff_example_chko.chko.json) 14 | -------------------------------------------------------------------------------- /file-formats/edck/README.md: -------------------------------------------------------------------------------- 1 | # Consistency Check File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | EDCK | Consistency Check | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.edck.json` | 1 | [`zif_aff_edck_v1.intf.abap`](./type/zif_aff_edck_v1.intf.abap) | [`edck-v1.json`](./edck-v1.json) | [`z_aff_example_edck.edck.json`](./examples/z_aff_example_edck.edck.json) 14 | -------------------------------------------------------------------------------- /.github/workflows/markdown-link-check.yml: -------------------------------------------------------------------------------- 1 | name: Check Markdown Links 2 | 3 | on: 4 | pull_request: 5 | 6 | permissions: 7 | contents: read 8 | pull-requests: write 9 | 10 | jobs: 11 | check-links: 12 | name: Check links 13 | runs-on: ubuntu-22.04 14 | timeout-minutes: 10 15 | steps: 16 | - uses: actions/checkout@v4 17 | - name: Run linkspector 18 | uses: umbrelladocs/action-linkspector@v1 19 | with: 20 | reporter: github-pr-review 21 | fail_on_error: true 22 | -------------------------------------------------------------------------------- /file-formats/advc/README.md: -------------------------------------------------------------------------------- 1 | # Application Variant File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | ADVC | Application Variant | LRep 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.advc.json` | 1 | [`zif_aff_advc_v1.intf.abap`](./type/zif_aff_advc_v1.intf.abap) | [`advc-v1.json`](./advc-v1.json) | [`z_aff_example_advc.advc.json`](./examples/z_aff_example_advc.advc.json) 14 | -------------------------------------------------------------------------------- /file-formats/aifp/README.md: -------------------------------------------------------------------------------- 1 | # Check File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | AIFP | Check | Application Interface Framework 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.aifp.json` | 1 | [`zif_aff_aifp_v1.intf.abap`](./type/zif_aff_aifp_v1.intf.abap) | [`aifp-v1.json`](./aifp-v1.json) | [`z_aff_example_aifp.aifp.json`](./examples/z_aff_example_aifp.aifp.json) 14 | -------------------------------------------------------------------------------- /file-formats/cota/README.md: -------------------------------------------------------------------------------- 1 | # Communication Target File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | COTA | Communication Target | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.cota.json` | 1 | [`zif_aff_cota_v1.intf.abap`](./type/zif_aff_cota_v1.intf.abap) | [`cota-v1.json`](./cota-v1.json) | [`sap_cota_testobject.cota.json`](./examples/sap_cota_testobject.cota.json) 14 | -------------------------------------------------------------------------------- /file-formats/edcr/README.md: -------------------------------------------------------------------------------- 1 | # Representation Type File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | EDCR | Representation Type | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.edcr.json` | 1 | [`zif_aff_edcr_v1.intf.abap`](./type/zif_aff_edcr_v1.intf.abap) | [`edcr-v1.json`](./edcr-v1.json) | [`z_aff_example_edcr.edcr.json`](./examples/z_aff_example_edcr.edcr.json) 14 | -------------------------------------------------------------------------------- /file-formats/nrob/README.md: -------------------------------------------------------------------------------- 1 | # Number Range Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | NROB | Number Range Object | Number Range Management 8 | 9 | ## File Structure 10 | 11 | ile | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.nrob.json` | 1 | [`zif_aff_nrob_v1.intf.abap`](./type/zif_aff_nrob_v1.intf.abap) | [`nrob-v1.json`](./nrob-v1.json) | [`z_aff_nr.nrob.json`](./examples/z_aff_nr.nrob.json) 14 | -------------------------------------------------------------------------------- /file-formats/aplo/README.md: -------------------------------------------------------------------------------- 1 | # Application Log Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | APLO | Application Log Object | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.aplo.json` | 1 | [`zif_aff_aplo_v1.intf.abap`](./type/zif_aff_aplo_v1.intf.abap) | [`aplo-v1.json`](./aplo-v1.json) |[`z_aff_example_aplo.aplo.json`](./examples/z_aff_example_aplo.aplo.json) 14 | -------------------------------------------------------------------------------- /file-formats/cdbo/README.md: -------------------------------------------------------------------------------- 1 | # Custom Data Browser Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | CDBO | Custom Data Browser Object | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.cdbo.json` | 1 | [`zif_aff_cdbo_v1.intf.abap`](./type/zif_aff_cdbo_v1.intf.abap) | [`cdbo-v1.json`](./cdbo-v1.json) | [`zcdb_adt_test.cdbo.json`](./examples/zcdb_adt_test.cdbo.json) 14 | -------------------------------------------------------------------------------- /file-formats/dobj/README.md: -------------------------------------------------------------------------------- 1 | # Data Destruction Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DOBJ | Data Destruction Object | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.dobj.json` | 1 | [`zif_aff_dobj_v1.intf.abap`](./type/zif_aff_dobj_v1.intf.abap) | [`dobj-v1.json`](./dobj-v1.json) | [`z_aff_example_dobj.dobj.json`](./examples/z_aff_example_dobj.dobj.json) 14 | -------------------------------------------------------------------------------- /file-formats/dsfd/type/zif_aff_dsfd_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_dsfd_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

CDS Scalar Function Definition

6 | "! CDS scalar function definition 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60, 14 | END OF ty_main. 15 | 16 | ENDINTERFACE. 17 | -------------------------------------------------------------------------------- /file-formats/edcc/README.md: -------------------------------------------------------------------------------- 1 | # Consistency Scenario File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | EDCC | Consistency Scenario | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.edcc.json` | 1 | [`zif_aff_edcc_v1.intf.abap`](./type/zif_aff_edcc_v1.intf.abap) | [`edcc-v1.json`](./edcc-v1.json) | [`z_aff_example_edcc.edcc.json`](./examples/z_aff_example_edcc.edcc.json) 14 | 15 | -------------------------------------------------------------------------------- /file-formats/evtb/README.md: -------------------------------------------------------------------------------- 1 | # Event Binding File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | EVTB | Event Binding | Business Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.evtb.json` | 1 | [`zif_aff_evtb_v1.intf.abap`](./type/zif_aff_evtb_v1.intf.abap) | [`evtb-v1.json`](./evtb-v1.json) | [`z_aff_example_evtb.evtb.json`](./examples/z_aff_example_evtb.evtb.json) 14 | -------------------------------------------------------------------------------- /file-formats/ntty/README.md: -------------------------------------------------------------------------------- 1 | # Note Type File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | NTTY | Note Type | Notes for Application Objects 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.ntty.json` | 1 | [`zif_aff_ntty_v1.intf.abap`](./type/zif_aff_ntty_v1.intf.abap) | [`ntty-v1.json`](./ntty-v1.json) | [`z_aff_example_ntty.ntty.json`](./examples/z_aff_example_ntty.ntty.json) 14 | -------------------------------------------------------------------------------- /file-formats/rvbc/examples/z_aff_example_rvbc.rvbc.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example RVBC for ABAP File Formats", 5 | "originalLanguage": "en" 6 | }, 7 | "bookletDefinition": { 8 | "source": "predefined", 9 | "status": "draft", 10 | "application": "test.app.adt.editor", 11 | "extensibilityMode": "supportedPredefinedQueries" 12 | }, 13 | "ina1Services": { 14 | "predefined": "UI_INA_TST_FLIGHT_SERVBIND", 15 | "custom": "YY1_TEST_INA1" 16 | } 17 | } 18 | -------------------------------------------------------------------------------- /file-formats/srvb/README.md: -------------------------------------------------------------------------------- 1 | # Service Binding File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SRVB | Service Binding | Business Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.srvb.json` | 1 | [`zif_aff_srvb_v1.intf.abap`](./type/zif_aff_srvb_v1.intf.abap) | [`srvb-v1.json`](./srvb-v1.json) | [`z_aff_example_srvb.srvb.json`](./examples/z_aff_example_srvb.srvb.json) 14 | -------------------------------------------------------------------------------- /file-formats/sxtg/README.md: -------------------------------------------------------------------------------- 1 | # SAP GUI Extension Point File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SXTG | SAP GUI Extension Point | Extensibility 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.sxtg.json` | 1 | [`zif_aff_sxtg_v1.intf.abap`](./type/zif_aff_sxtg_v1.intf.abap) | [`sxtg-v1.json`](./sxtg-v1.json) | [`sxtg_tsm_so.sxtg.json`](./examples/sxtg_tsm_so.sxtg.json) 14 | -------------------------------------------------------------------------------- /file-formats/aiff/README.md: -------------------------------------------------------------------------------- 1 | # Fix Value File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | AIFF | Fix Value | Application Interface Framework 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.aiff.json` | 1 | [`zif_aff_aiff_v1.intf.abap`](./type/zif_aff_aiff_v1.intf.abap) | [`aiff-v1.json`](./aiff-v1.json) | [`z_aff_example_aiff.aiff.json`](./examples/z_aff_example_aiff.aiff.json) 14 | -------------------------------------------------------------------------------- /file-formats/aifn/README.md: -------------------------------------------------------------------------------- 1 | # Namespace File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | AIFN | Namespace | Application Interface Framework 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.aifn.json` | 1 | [`zif_aff_aifn_v1.intf.abap`](./type/zif_aff_aifn_v1.intf.abap) | [`aifn-v1.json`](./aifn-v1.json) | [`z_aff_example_aifn.aifn.json`](./examples/z_aff_example_aifn.aifn.json) 14 | -------------------------------------------------------------------------------- /file-formats/aifr/README.md: -------------------------------------------------------------------------------- 1 | # Recipient File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | AIFR | Recipient | Application Interface Framework 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.aifr.json` | 1 | [`zif_aff_aifr_v1.intf.abap`](./type/zif_aff_aifr_v1.intf.abap) | [`aifr-v1.json`](./aifr-v1.json) | [`z_aff_example_aifr.aifr.json`](./examples/z_aff_example_aifr.aifr.json) 14 | -------------------------------------------------------------------------------- /file-formats/chkc/README.md: -------------------------------------------------------------------------------- 1 | # ATC Check Category File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | CHKC | ATC Check Category | ABAP Test Cockpit 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.chkc.json` | 1 | [`zif_aff_chkc_v1.intf.abap`](./type/zif_aff_chkc_v1.intf.abap)| [`chkc-v1.json`](./chkc-v1.json) | [`z_aff_example_chkc.chkc.json`](./examples/z_aff_example_chkc.chkc.json) 14 | -------------------------------------------------------------------------------- /file-formats/chkv/README.md: -------------------------------------------------------------------------------- 1 | # ATC Check Variant File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | CHKV | ATC Check Variant | ABAP Test Cockpit 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.chkv.json` | 1 | [`zif_aff_chkv_v1.intf.abap`](./type/zif_aff_chkv_v1.intf.abap)| [`chkv-v1.json`](./chkv-v1.json) | [`z_aff_example_chkv.chkv.json`](./examples/z_aff_example_chkv.chkv.json) 14 | -------------------------------------------------------------------------------- /file-formats/ront/README.md: -------------------------------------------------------------------------------- 1 | # SAP Object Type File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | RONT | SAP Object Type | SAP Object Type Management 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.ront.json` | 1 | [`zif_aff_ront_v1.intf.abap`](./type/zif_aff_ront_v1.intf.abap) | [`ront-v1.json`](./ront-v1.json) | [`z_aff_example_ront.ront.json`](./examples/z_aff_example_ront.ront.json) 14 | -------------------------------------------------------------------------------- /file-formats/sprv/README.md: -------------------------------------------------------------------------------- 1 | # SOAP Provider Model File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SPRV | SOAP Provider Model | Business Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.sprv.json` | 1 | [`zif_aff_sprv_v1.intf.abap`](./type/zif_aff_sprv_v1.intf.abap) | [`sprv-v1.json`](./sprv-v1.json) | [`z_aff_example_sprv.sprv.json`](./examples/z_aff_example_sprv.sprv.json) 14 | -------------------------------------------------------------------------------- /file-formats/swcr/README.md: -------------------------------------------------------------------------------- 1 | # Software Component Relations File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SWCR | Software Component Relations | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.swcr.json` | 1 | [`zif_aff_swcr_v1.intf.abap`](./type/zif_aff_swcr_v1.intf.abap) | [`swcr-v1.json`](./swcr-v1.json) | [`z_aff_example_swcr.swcr.json`](./examples/z_aff_example_swcr.swcr.json) 14 | -------------------------------------------------------------------------------- /file-formats/aifi/README.md: -------------------------------------------------------------------------------- 1 | # Application Interface File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | AIFI | Application | Application Interface Framework 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.aifi.json` | 1 | [`zif_aff_aifi_v1.intf.abap`](./type/zif_aff_aifi_v1.intf.abap) | [`aifi-v1.json`](./aifi-v1.json) | [`z_aff_example_aifi.aifi.json`](./examples/z_aff_example_aifi.aifi.json) 14 | -------------------------------------------------------------------------------- /file-formats/bgqc/README.md: -------------------------------------------------------------------------------- 1 | # Background Processing Context File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | BGQC | Background Processing Context | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.bgqc.json` | 1 | [`zif_aff_bgqc_v1.intf.abap`](./type/zif_aff_bgqc_v1.intf.abap) | [`bgqc-v1.json`](./bgqc-v1.json) | [`z_aff_bgqc_example.bgqc.json`](./examples/z_aff_bgqc_example.bgqc.json) 14 | -------------------------------------------------------------------------------- /file-formats/dcls/type/zif_aff_dcls_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_dcls_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

ABAP Data Control Language Source

6 | "! Attributes of the Data Control Language Source 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60, 14 | END OF ty_main. 15 | 16 | ENDINTERFACE. 17 | -------------------------------------------------------------------------------- /file-formats/ddla/type/zif_aff_ddla_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_ddla_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

CDS Annotation Definition

6 | "! Attributes of the annotation definition 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60_no_abap_lv, 14 | END OF ty_main. 15 | 16 | ENDINTERFACE. 17 | -------------------------------------------------------------------------------- /file-formats/desd/README.md: -------------------------------------------------------------------------------- 1 | # Logical External Schema File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DESD | Logical External Schema | Core Data Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.desd.json` | 1 | [`zif_aff_desd_v1.intf.abap`](./type/zif_aff_desd_v1.intf.abap) | [`desd-v1.json`](./desd-v1.json) | [`z_aff_example_desd.desd.json`](./examples/z_aff_example_desd.desd.json) 14 | -------------------------------------------------------------------------------- /file-formats/eeec/README.md: -------------------------------------------------------------------------------- 1 | # Event Consumption Model File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | EEEC | Event Consumption Model | Business Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.eeec.json` | 1 | [`zif_aff_eeec_v1.intf.abap`](./type/zif_aff_eeec_v1.intf.abap) | [`eeec-v1.json`](./eeec-v1.json) | [`z_aff_example_eeec.eeec.json`](./examples/z_aff_example_eeec.eeec.json) 14 | -------------------------------------------------------------------------------- /file-formats/nont/README.md: -------------------------------------------------------------------------------- 1 | # SAP Object Node Type File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | NONT | SAP Object Node Type | SAP Object Type Management 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.nont.json` | 1 | [`zif_aff_nont_v1.intf.abap`](./type/zif_aff_nont_v1.intf.abap) | [`nont-v1.json`](./nont-v1.json) | [`z_aff_example_nont.nont.json`](./examples/z_aff_example_nont.nont.json) 14 | -------------------------------------------------------------------------------- /file-formats/sajt/README.md: -------------------------------------------------------------------------------- 1 | # Application Job Template File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SAJT | Application Job Template | Application Jobs 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.sajt.json` | 1 | [`zif_aff_sajt_v1.intf.abap`](./type/zif_aff_sajt_v1.intf.abap) | [`sajt-v1.json`](./sajt-v1.json) | [`z_aff_example_sajt.sajt.json`](./examples/z_aff_example_sajt.sajt.json) 14 | -------------------------------------------------------------------------------- /file-formats/srvc/README.md: -------------------------------------------------------------------------------- 1 | # Service Consumption Model File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SRVC | Service Consumption Model | Business Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.srvc.json` | 1 | [`zif_aff_srvc_v1.intf.abap`](./type/zif_aff_srvc_v1.intf.abap) | [`srvc-v1.json`](./srvc-v1.json) | [`z_aff_example_srvc.srvc.json`](./examples/z_aff_example_srvc.srvc.json) 14 | -------------------------------------------------------------------------------- /file-formats/aifd/README.md: -------------------------------------------------------------------------------- 1 | # Deployment Scenario File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | AIFD | Deployment Scenario | Application Interface Framework 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.aifd.json` | 1 | [`zif_aff_aifd_v1.intf.abap`](./type/zif_aff_aifd_v1.intf.abap) | [`aifd-v1.json`](./aifd-v1.json) | [`z_aff_example_aifd.aifd.json`](./examples/z_aff_example_aifd.aifd.json) 14 | -------------------------------------------------------------------------------- /file-formats/chdo/README.md: -------------------------------------------------------------------------------- 1 | # Change Document Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | CHDO | Change Document Object | Change Document Management 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.chdo.json` | 1 | [`zif_aff_chdo_v1.intf.abap`](./type/zif_aff_chdo_v1.intf.abap) | [`chdo-v1.json`](./chdo-v1.json) | [`z_aff_example_chdo.chdo.json`](./examples/z_aff_example_chdo.chdo.json) 14 | -------------------------------------------------------------------------------- /file-formats/ntta/README.md: -------------------------------------------------------------------------------- 1 | # Note Type Assignment File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | NTTA | Note Type Assignment | Notes for Application Objects 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.ntta.json` | 1 | [`zif_aff_ntta_v1.intf.abap`](./type/zif_aff_ntta_v1.intf.abap) | [`ntta-v1.json`](./ntta-v1.json) | [`z_aff_example_ntta.ntta.json`](./examples/z_aff_example_ntta.ntta.json) 14 | -------------------------------------------------------------------------------- /file-formats/suco/README.md: -------------------------------------------------------------------------------- 1 | # Authorization Default Variant File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SUCO | Authorization Default Variant | Authorizations 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.suco.json` | 1 | [`zif_aff_suco_v1.intf.abap`](./type/zif_aff_suco_v1.intf.abap) | [`suco-v1.json`](./suco-v1.json) | [`z_aff_example_suco.suco.json`](./examples/z_aff_example_suco.suco.json) 14 | -------------------------------------------------------------------------------- /file-formats/uipg/README.md: -------------------------------------------------------------------------------- 1 | # Launchpad Page Template File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | UIPG | Launchpad Page Template | Fiori User Interface 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.uipg.json` | 1 | [`zif_aff_uipg_v1.intf.abap`](./type/zif_aff_uipg_v1.intf.abap) | [`uipg-v1.json`](./uipg-v1.json) | [z_page_template_example.uipg.json](./examples/z_aff_example_uipg.uipg.json) 14 | -------------------------------------------------------------------------------- /file-formats/uist/README.md: -------------------------------------------------------------------------------- 1 | # Launchpad Space Template File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | UIST | Launchpad Space Template | Fiori User Interface 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.uist.json` | 1 | [`zif_aff_uist_v1.intf.abap`](./type/zif_aff_uist_v1.intf.abap) | [`uist-v1.json`](./uist-v1.json) | [`z_aff_example_uist.uist.json`](./examples/z_aff_example_uist.uist.json) 14 | -------------------------------------------------------------------------------- /file-formats/sajc/README.md: -------------------------------------------------------------------------------- 1 | # Application Job Catalog Entry File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SAJC | Application Job Catalog Entry | Application Jobs 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.sajc.json` | 1 | [`zif_aff_sajc_v1.intf.abap`](./type/zif_aff_sajc_v1.intf.abap) | [`sajc-v1.json`](./sajc-v1.json) | [`z_aff_example_sajc.sajc.json`](./examples/z_aff_example_sajc.sajc.json) 14 | -------------------------------------------------------------------------------- /file-formats/cdbo/examples/zcdb_adt_test.cdbo.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "CDBO on ADT Testing", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "objectType": "TABL", 9 | "objectName": "ZCDB_ADT_TEST" 10 | }, 11 | "fields": [ 12 | { 13 | "name": "MANDT", 14 | "nature": "general" 15 | }, 16 | { 17 | "name": "TIME", 18 | "nature": "general" 19 | }, 20 | { 21 | "name": "DATUM", 22 | "nature": "general" 23 | } 24 | ] 25 | } 26 | -------------------------------------------------------------------------------- /file-formats/ints/README.md: -------------------------------------------------------------------------------- 1 | # Intelligent Scenario File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | INTS | Intelligent Scenario | Intelligent Scenario Lifecycle Management 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.ints.json` | 1 | [`zif_aff_ints_v1.intf.abap`](./type/zif_aff_ints_v1.intf.abap) | [`ints-v1.json`](./ints-v1.json) | [`z_aff_example_ints.ints.json`](./examples/z_aff_example_ints.ints.json) 14 | -------------------------------------------------------------------------------- /file-formats/swcr/examples/z_aff_example_swcr.swcr.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "originalLanguage": "en", 5 | "description": "Software Component Relations example object", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "permissions": [ 9 | { 10 | "softwareComponent": "/PARTNER_1/SOLUTION_1" 11 | }, 12 | { 13 | "softwareComponent": "/PARTNER_1/SOLUTION_2" 14 | } 15 | ], 16 | "dependencies": [ 17 | { 18 | "softwareComponent": "/PARTNER_1/KEY_USER" 19 | } 20 | ] 21 | } 22 | -------------------------------------------------------------------------------- /file-formats/scp1/README.md: -------------------------------------------------------------------------------- 1 | # Business Confgiguration Set File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SCP1 | Business Confgiguration Set | Business Configuration Management 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.scp1.json` | 1 | [`zif_aff_scp1_v1.intf.abap`](./type/zif_aff_scp1_v1.intf.abap) | [`scp1-v1.json`](./scp1-v1.json) | [`z_aff_example_scp1.scp1.json`](./examples/z_aff_example_scp1.scp1.json) 14 | -------------------------------------------------------------------------------- /file-formats/intm/README.md: -------------------------------------------------------------------------------- 1 | # Intelligent Scenario Model File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | INTM | Intelligent Scenario Model | Intelligent Scenario Lifecycle Management 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.intm.json` | 1 | [`zif_aff_intm_v1.intf.abap`](./type/zif_aff_intm_v1.intf.abap) | [`intm-v1.json`](./intm-v1.json) | [`z_aff_example_intm.intm.json`](./examples/z_aff_example_intm.intm.json) 14 | -------------------------------------------------------------------------------- /file-formats/advc/type/zif_aff_advc_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_advc_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

App Variant

6 | "! App variant 7 | BEGIN OF ty_main, 8 | "!

Format Version

9 | "! Format version 10 | "! $required 11 | format_version TYPE zif_aff_types_v1=>ty_format_version, 12 | 13 | "!

Header

14 | "! Header 15 | "! $required 16 | header TYPE zif_aff_types_v1=>ty_header_100, 17 | 18 | END OF ty_main. 19 | 20 | ENDINTERFACE. 21 | -------------------------------------------------------------------------------- /file-formats/susi/README.md: -------------------------------------------------------------------------------- 1 | # Authorization Default (External) File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SUSI | Authorization Default (External) | Authorizations 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.susi.json` | 1 | [`zif_aff_susi_v1.intf.abap`](./type/zif_aff_susi_v1.intf.abap) | [`susi-v1.json`](./susi-v1.json) | [`55fae0107acd2ee619d9f869c651edhs.susi.json`](./examples/55fae0107acd2ee619d9f869c651edhs.susi.json) 14 | -------------------------------------------------------------------------------- /file-formats/smbc/README.md: -------------------------------------------------------------------------------- 1 | # Business Configuration Maintenance Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SMBC | Business Configuration Maintenance Object | Business Configuration Management 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.smbc.json` | 1 | [`zif_aff_smbc_v1.intf.abap`](./type/zif_aff_smbc_v1.intf.abap) | [`smbc-v1.json`](./smbc-v1.json) | [`z_aff_example_smbc.smbc.json`](./examples/z_aff_example_smbc.smbc.json) 14 | -------------------------------------------------------------------------------- /file-formats/enhs/README.md: -------------------------------------------------------------------------------- 1 | # Enhancement Spot File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | ENHS | Enhancement Spot | Enhancements 8 | 9 | **Limitation**: The current version of the file format covers BAdIs only. 10 | 11 | ## File Structure 12 | 13 | Cardinality | Definition | Schema | Example 14 | :--- | :--- | :--- | :--- | :--- 15 | `.enhs.json` | 1 | [`zif_aff_enhs_v1.intf.abap`](./type/zif_aff_enhs_v1.intf.abap) | [`enhs-v1.json`](./enhs-v1.json) | [`z_aff_example_enhs.enhs.json`](./examples/z_aff_example_enhs.enhs.json) 16 | -------------------------------------------------------------------------------- /file-formats/evtb/examples/z_aff_example_evtb.evtb.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Event binding example", 5 | "originalLanguage": "en" 6 | }, 7 | "producerNamespace": "sap.s4", 8 | "producer": "PC59C0E46A5E8B597EB82CB1AA2890FE8", 9 | "producerVersion": "0001", 10 | "boName": "BusinessUser", 11 | "boOperation": "Deleted", 12 | "producerType": "sap.s4.BusinessUser.Deleted.v*", 13 | "events": [ 14 | { 15 | "eventVersion": "0001", 16 | "entityName": "I_SBOI_RAP_ATC", 17 | "entityEventName": "DELETED" 18 | } 19 | ] 20 | } 21 | -------------------------------------------------------------------------------- /file-formats/fugr/examples/z_aff_example_fugr.fugr.z_aff_example_func.func.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example FUNC for ABAP file formats" 5 | }, 6 | "processingType": "normal", 7 | "exceptionClasses": true, 8 | "includeNumber": "01", 9 | "notExecutable": true, 10 | "parameters": [ 11 | { 12 | "name": "I_PARAM", 13 | "description": "This is an example parameter" 14 | } 15 | ], 16 | "exceptions": [ 17 | { 18 | "name": "CX_STATIC_CHECK", 19 | "description": "This is an example exception" 20 | } 21 | ] 22 | } 23 | -------------------------------------------------------------------------------- /generate/abap_transpile.json: -------------------------------------------------------------------------------- 1 | { 2 | "input_folder": "downport", 3 | "input_filter": [ 4 | "intf", 5 | "dtel", 6 | "clas" 7 | ], 8 | "output_folder": "output", 9 | "libs": [ 10 | { 11 | "url": "https://github.com/open-abap/open-abap-core" 12 | } 13 | ], 14 | "write_unit_tests": true, 15 | "write_source_map": true, 16 | "options": { 17 | "ignoreSyntaxCheck": false, 18 | "addFilenames": true, 19 | "addCommonJS": true, 20 | "keywords": ["in", "default"], 21 | "unknownTypes": "runtimeError", 22 | "extraSetup": "../setup.mjs", 23 | "skip": [] 24 | } 25 | } 26 | -------------------------------------------------------------------------------- /file-formats/enho/README.md: -------------------------------------------------------------------------------- 1 | # Enhancement Implementation File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | ENHO | Enhancement Implementation | Enhancements 8 | 9 | **Limitation**: The current version of the file format covers BAdIs only. 10 | 11 | ## File Structure 12 | 13 | File | Cardinality | Definition | Schema | Example 14 | :--- | :--- | :--- | :--- | :--- 15 | `.enho.json` | 1 | [`zif_aff_enho_v1.intf.abap`](./type/zif_aff_enho_v1.intf.abap) | [`enho-v1.json`](./enho-v1.json) | [`z_aff_example_enho.enho.json`](./examples/z_aff_example_enho.enho.json) 16 | -------------------------------------------------------------------------------- /file-formats/siad/README.md: -------------------------------------------------------------------------------- 1 | # Business Role Template - Launchpad Space Template Assignment File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SIAD | Business Role Template - Launchpad Space Template Assignment | Identity and Access Management 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.siad.json` | 1 | [`zif_aff_siad_v1.intf.abap`](./type/zif_aff_siad_v1.intf.abap) | [`siad-v1.json`](./siad-v1.json) | [z_aff_siad_example.siad.json](./examples/z_aff_siad_example.siad.json) 14 | -------------------------------------------------------------------------------- /file-formats/bgqc/type/zif_aff_bgqc_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_bgqc_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | 6 | "!

Background Processing Context

7 | "! Background Processing Context 8 | BEGIN OF ty_main, 9 | 10 | "!

Format Version

11 | "! Format version 12 | "! $required 13 | format_version TYPE zif_aff_types_v1=>ty_format_version, 14 | 15 | "!

Header

16 | "! Header 17 | "! $required 18 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 19 | 20 | END OF ty_main. 21 | 22 | ENDINTERFACE. 23 | -------------------------------------------------------------------------------- /file-formats/aobj/examples/z_aff_example_aobj.aobj.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example Object", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "attributes": { 9 | "writeClass": "CL_ARCH_EXAMPLE_WRITE", 10 | "deleteClass": "CL_ARCH_EXAMPLE_DELETE", 11 | "reloadClass": "CL_ARCH_EXAMPLE_RELOAD", 12 | "storageClass": "CL_ARCH_EXAMPLE_STORE" 13 | }, 14 | "tablesToBeArchived": [ 15 | { 16 | "name": "SBOOK" 17 | } 18 | ], 19 | "archivingClasses": [ 20 | { 21 | "name": "CHANGEDOCU" 22 | } 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /file-formats/sfpf/README.md: -------------------------------------------------------------------------------- 1 | # Form File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SFPF | Form | Form Objects 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.sfpf.json` | 1 | [`zif_aff_sfpf_v1.intf.abap`](./type/zif_aff_sfpf_v1.intf.abap) | [`sfpf-v1.json`](./sfpf-v1.json) | [`z_aff_example_sfpf.sfpf.json`](./examples/z_aff_example_sfpf.sfpf.json) 14 | `.sfpf.xdp` | 1 | [`XFA-3_3`](https://www.pdfa.org/norm-refs/XFA-3_3.pdf) | - | [`z_aff_example_sfpf.sfpf.xdp`](./examples/z_aff_example_sfpf.sfpf.xdp) 15 | -------------------------------------------------------------------------------- /file-formats/clas/examples/z_aff_example_clas.clas.abap: -------------------------------------------------------------------------------- 1 | CLASS z_aff_example_clas DEFINITION 2 | PUBLIC 3 | FINAL 4 | CREATE PUBLIC. 5 | 6 | PUBLIC SECTION. 7 | 8 | TYPES example_type TYPE string. 9 | 10 | DATA example_attribute TYPE example_type. 11 | 12 | EVENTS example_event. 13 | 14 | METHODS example_method 15 | IMPORTING 16 | !i_param TYPE i 17 | RAISING 18 | cx_static_check. 19 | 20 | PROTECTED SECTION. 21 | PRIVATE SECTION. 22 | ENDCLASS. 23 | 24 | 25 | 26 | CLASS Z_AFF_EXAMPLE_CLAS IMPLEMENTATION. 27 | 28 | 29 | METHOD example_method. 30 | example_attribute = ''(txt). 31 | ENDMETHOD. 32 | ENDCLASS. 33 | -------------------------------------------------------------------------------- /file-formats/chkc/type/zif_aff_chkc_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_chkc_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

ATC Check Category

6 | "! ATC check category properties 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | "!

Header

11 | "! Header 12 | "! $required 13 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 14 | "!

Parent Category

15 | "! Name of the parent category 16 | parent_category TYPE zif_aff_types_v1=>ty_object_name_30, 17 | END OF ty_main. 18 | 19 | ENDINTERFACE. 20 | -------------------------------------------------------------------------------- /file-formats/clas/examples/z_aff_example_clas.clas.testclasses.abap: -------------------------------------------------------------------------------- 1 | CLASS ltcl_unit_test DEFINITION FOR TESTING 2 | DURATION SHORT RISK LEVEL HARMLESS. 3 | 4 | PRIVATE SECTION. 5 | DATA cut TYPE REF TO z_aff_example_clas. 6 | 7 | METHODS setup. 8 | METHODS assert_smth FOR TESTING RAISING cx_static_check. 9 | 10 | ENDCLASS. 11 | 12 | 13 | CLASS ltcl_unit_test IMPLEMENTATION. 14 | 15 | METHOD setup. 16 | cut = NEW z_aff_example_clas( ). 17 | ENDMETHOD. 18 | 19 | 20 | METHOD assert_smth. 21 | cl_abap_unit_assert=>assert_equals( 22 | act = 1 23 | exp = 1 24 | ). 25 | ENDMETHOD. 26 | 27 | ENDCLASS. 28 | -------------------------------------------------------------------------------- /file-formats/csnm/README.md: -------------------------------------------------------------------------------- 1 | # Core Schema Notation Model File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | CSNM | Core Schema Notation Model | - 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.csnm.json` | 1 | [`zif_aff_csnm_v1.intf.abap`](./type/zif_aff_csnm_v1.intf.abap) | [`csnm-v1.json`](./csnm-v1.json) | [z_aff_example_csnm.csnm.json](./examples/z_aff_example_csnm.csnm.json) 14 | `.csnm..csn` | 0...n | - | - | [z_aff_example_csnm.csnm.model_inferred.csn](./examples/z_aff_example_csnm.csnm.model_inferred.csn) 15 | -------------------------------------------------------------------------------- /file-formats/dsfi/README.md: -------------------------------------------------------------------------------- 1 | # Scalar Function Implementation File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DSFI | Scalar Function Implementation | Core Data Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Examples 12 | :--- | :--- | :--- | :--- | :--- 13 | `.dsfi.json` | 1 | [`zif_aff_dsfi_v1.intf.abap`](./type/zif_aff_dsfi_v1.intf.abap) | [`dsfi-v1.json`](./dsfi-v1.json) | [`z_aff_example_dsfi_ana.dsfi.json`](./examples/z_aff_example_dsfi_ana.dsfi.json) (Analytical engine)
[`z_aff_example_dsfi_sql.dsfi.json`](./examples/z_aff_example_dsfi_sql.dsfi.json) (SQL engine) 14 | -------------------------------------------------------------------------------- /file-formats/msag/README.md: -------------------------------------------------------------------------------- 1 | # Message Class File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | MSAG | Message Class | Texts 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.msag.json` | 1 | [`zif_aff_msag_v1.intf.abap`](./type/zif_aff_msag_v1.intf.abap) | [`msag-v1.json`](./msag-v1.json) | [`z_aff_example_msag.msag.json`](./examples/z_aff_example_msag.msag.json) 14 | 15 | --- 16 | 17 | **Note:** 18 | Long text support is not currently included in the ABAP file format. However, support for long text will be added in a future version. 19 | -------------------------------------------------------------------------------- /file-formats/ddla/README.md: -------------------------------------------------------------------------------- 1 | # CDS Annotation Definition File Format 2 | 3 | ## Object Type Information 4 | Object Type | Description | Group 5 | :--- | :--- | :--- 6 | DDLA | Annotation Definition | Core Data Services 7 | ## File Structure 8 | 9 | File | Cardinality | Definition | Schema | Example 10 | :--- | :--- | :--- | :--- | :--- 11 | `.ddla.json` | 1 | [`zif_aff_ddla_v1.intf.abap`](./type/zif_aff_ddla_v1.intf.abap) | [`ddla-v1.json`](./ddla-v1.json) | [`abapcatalog.ddla.json`](./examples/abapcatalog.ddla.json) 12 | `.ddla.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`abapcatalog.ddla.acds`](./examples/abapcatalog.ddla.acds) 13 | -------------------------------------------------------------------------------- /file-formats/drty/README.md: -------------------------------------------------------------------------------- 1 | # Type File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DRTY | Type | Core Data Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.drty.json` | 1 | [`zif_aff_drty_v1.intf.abap`](./type/zif_aff_drty_v1.intf.abap) | [`drty-v1.json`](./drty-v1.json) | [`z_aff_example_drty.drty.json`](./examples/z_aff_example_drty.drty.json) 14 | `.drty.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`z_aff_example_drty.drty.acds`](./examples/z_aff_example_drty.drty.acds) 15 | -------------------------------------------------------------------------------- /file-formats/dras/README.md: -------------------------------------------------------------------------------- 1 | # Aspect File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DRAS | Aspect | Core Data Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.dras.json` | 1 | [`zif_aff_dras_v1.intf.abap`](./type/zif_aff_dras_v1.intf.abap) | [`dras-v1.json`](./dras-v1.json) | [`z_aff_example_dras.dras.json`](./examples/z_aff_example_dras.dras.json) 14 | `.dras.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`z_aff_example_dras.dras.acds`](./examples/z_aff_example_dras.dras.acds) 15 | -------------------------------------------------------------------------------- /file-formats/dtdc/README.md: -------------------------------------------------------------------------------- 1 | # Dynamic Cache File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DTDC | Dynamic Cache | Dictionary 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.dtdc.json` | 1 | [`zif_aff_dtdc_v1.intf.abap`](./type/zif_aff_dtdc_v1.intf.abap) | [`dtdc-v1.json`](./dtdc-v1.json) | [`z_aff_example_dtdc.dtdc.json`](./examples/z_aff_example_dtdc.dtdc.json) 14 | `.dtdc.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`z_aff_example_dtdc.dtdc.acds`](./examples/z_aff_example_dtdc.dtdc.acds) 15 | -------------------------------------------------------------------------------- /file-formats/dteb/README.md: -------------------------------------------------------------------------------- 1 | # Entity Buffer File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DTEB | Entity Buffer | Core Data Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.dteb.json` | 1 | [`zif_aff_dteb_v1.intf.abap`](./type/zif_aff_dteb_v1.intf.abap) | [`dteb-v1.json`](./dteb-v1.json) | [`z_aff_example_dteb.dteb.json`](./examples/z_aff_example_dteb.dteb.json) 14 | `.dteb.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`z_aff_example_dteb.dteb.acds`](./examples/z_aff_example_dteb.dteb.acds) 15 | -------------------------------------------------------------------------------- /file-formats/ddls/README.md: -------------------------------------------------------------------------------- 1 | # Data Definition File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DDLS | Data Definition | Core Data Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.ddls.json` | 1 | [`zif_aff_ddls_v1.intf.abap`](./type/zif_aff_ddls_v1.intf.abap) | [`ddls-v1.json`](./ddls-v1.json) | [`z_aff_example_ddls.ddls.json`](./examples/z_aff_example_ddls.ddls.json) 14 | `.ddls.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`z_aff_example_ddls.ddls.acds`](./examples/z_aff_example_ddls.ddls.acds) 15 | -------------------------------------------------------------------------------- /file-formats/dsfd/README.md: -------------------------------------------------------------------------------- 1 | # Scalar Function Definition File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DSFD | Scalar Function Definition | Core Data Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.dsfd.json` | 1 | [`zif_aff_dsfd_v1.intf.abap`](./type/zif_aff_dsfd_v1.intf.abap) | [`dsfd-v1.json`](./dsfd-v1.json) | [`zdsfd_example.dsfd.json`](./examples/zdsfd_example.dsfd.json) 14 | `.dsfd.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`zdsfd_example.dsfd.acds`](./examples/zdsfd_example.dsfd.acds) 15 | -------------------------------------------------------------------------------- /file-formats/ddlx/README.md: -------------------------------------------------------------------------------- 1 | # Metadata Extension File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DDLX | Metadata Extension | Core Data Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.ddlx.json` | 1 | [`zif_aff_ddlx_v1.intf.abap`](./type/zif_aff_ddlx_v1.intf.abap) | [`ddlx-v1.json`](./ddlx-v1.json) | [`z_aff_example_ddlx.ddlx.json`](./examples/z_aff_example_ddlx.ddlx.json) 14 | `.ddlx.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`z_aff_example_ddlx.ddlx.acds`](./examples/z_aff_example_ddlx.ddlx.acds) 15 | -------------------------------------------------------------------------------- /file-formats/srvd/README.md: -------------------------------------------------------------------------------- 1 | # Service Definitions File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SRVD | Service Definitions | Business Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.srvd.json` | 1 | [`zif_aff_srvd_v1.intf.abap`](./type/zif_aff_srvd_v1.intf.abap) | [`srvd-v1.json`](./srvd-v1.json) | [`z_aff_example_srvd.srvd.json`](./examples/z_aff_example_srvd.srvd.json) 14 | `.srvd.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`z_aff_example_srvd.srvd.acds`](./examples/z_aff_example_srvd.srvd.acds) 15 | -------------------------------------------------------------------------------- /.github/workflows/generate.yml: -------------------------------------------------------------------------------- 1 | name: Generate JSON Schema 2 | 3 | on: 4 | pull_request: 5 | 6 | jobs: 7 | validate: 8 | name: Compare generated against provided 9 | runs-on: ubuntu-latest 10 | timeout-minutes: 10 11 | steps: 12 | - uses: actions/checkout@v3 13 | - uses: actions/setup-node@v3 14 | - name: Build 15 | run: | 16 | cd generate 17 | npm ci 18 | npm run compile 19 | - name: Check Schemas 20 | run: | 21 | cd generate 22 | npm run generate 23 | - name: Upload generated schemas 24 | if: always() 25 | uses: actions/upload-artifact@v4 26 | with: 27 | name: schemas 28 | path: | 29 | generate/generated/*.json 30 | 31 | -------------------------------------------------------------------------------- /.github/workflows/py-validation.yml: -------------------------------------------------------------------------------- 1 | name: Validate JSON Examples 2 | 3 | on: 4 | pull_request: 5 | 6 | permissions: 7 | contents: read 8 | 9 | jobs: 10 | build: 11 | # Name the Job 12 | name: Validate examples against schema 13 | 14 | runs-on: ubuntu-latest 15 | 16 | timeout-minutes: 10 17 | 18 | steps: 19 | - uses: actions/checkout@v3 20 | - name: Set up Python 3.x (latest) 21 | uses: actions/setup-python@v4 22 | with: 23 | python-version: '3.x' 24 | - name: Install dependencies 25 | run: | 26 | python -m pip install --upgrade pip setuptools wheel 27 | python -m pip install jsonschema 28 | - name: Run validation script 29 | run: | 30 | python json-validator.py 31 | -------------------------------------------------------------------------------- /file-formats/dcls/README.md: -------------------------------------------------------------------------------- 1 | # ABAP Data Control Language Source File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | DCLS | ABAP Data Control Language Source | Core Data Services 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.dcls.json` | 1 | [`zif_aff_dcls_v1.intf.abap`](./type/zif_aff_dcls_v1.intf.abap) | [`dcls-v1.json`](./dcls-v1.json) | [`z_aff_example_dcls.dcls.json`](./examples/z_aff_example_dcls.dcls.json) 14 | `.dcls.acds` | 1 | [CDS](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abencds.htm) | | [`z_aff_example_dcls.dcls.acds`](./examples/z_aff_example_dcls.dcls.acds) 15 | -------------------------------------------------------------------------------- /file-formats/enhs/examples/z_aff_example_enhs.enhs.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example ENHS for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "configuration": { 8 | "tool": "badiDefinition" 9 | }, 10 | "badiDefinitions": [ 11 | { 12 | "name": "Z_AFF_EXAMPLE_BADI_DEFINITION", 13 | "description": "This is an example Badi Definition", 14 | "interface": "Z_AFF_EXAMPLE_BADI_INTF", 15 | "instantiation": "creatingNewInstances", 16 | "multipleUse": true, 17 | "filters": [ 18 | { 19 | "name": "EXAMPLE_FILTER", 20 | "description": "This is an example Filter", 21 | "type": "string" 22 | } 23 | ] 24 | } 25 | ] 26 | } 27 | -------------------------------------------------------------------------------- /file-formats/intf/README.md: -------------------------------------------------------------------------------- 1 | # Interface File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | INTF | Interface | Source Code Library 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.intf.json` | 1 | [`zif_aff_intf_v1.intf.abap`](./type/zif_aff_intf_v1.intf.abap) | [`intf-v1.json`](./intf-v1.json) | [`z_aff_example_intf.intf.json`](./examples/z_aff_example_intf.intf.json) 14 | `.intf.abap` | 1 | [ABAP](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abapinterface_definition.htm) | - | [`z_aff_example_intf.intf.abap`](./examples/z_aff_example_intf.intf.abap) 15 | 16 | Documentation of interfaces is not covered, yet. 17 | -------------------------------------------------------------------------------- /.github/workflows/example-not-delted.yml: -------------------------------------------------------------------------------- 1 | name: Don't delete examples 2 | 3 | on: 4 | pull_request: 5 | 6 | permissions: 7 | contents: read 8 | 9 | jobs: 10 | build: 11 | # Name the Job 12 | name: Don't delete examples 13 | 14 | runs-on: ubuntu-latest 15 | 16 | timeout-minutes: 10 17 | 18 | steps: 19 | - uses: actions/checkout@v4 20 | - name: Get deleted files 21 | id: changed-files 22 | uses: step-security/changed-files@v45.0.1 23 | with: 24 | files: "file-formats/*/examples/*" 25 | 26 | - name: List all deleted files 27 | env: 28 | ALL_DELETED_FILES: ${{ steps.changed-files.outputs.deleted_files }} 29 | run: | 30 | for file in ${ALL_DELETED_FILES}; do 31 | echo "::error $file has been deleted" 32 | exit 1 33 | done 34 | -------------------------------------------------------------------------------- /file-formats/ints/examples/z_aff_example_ints.ints.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "ISLM ADT for INTS - Scenario", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "scenarioType": "SAPGENAI", 9 | "scenarioTechnology": "sideBySide", 10 | "isExtensible": true, 11 | "state": "Published", 12 | "islmVersion": 1.0 13 | }, 14 | "turnkeyInformation": { 15 | "isTurnkeyAutoSwitchOn": true, 16 | "turnkeyType": "DEFAULT" 17 | }, 18 | "connectionInformation": { 19 | "usageType": "STATELESS", 20 | "oauthProfile": "ISLM_SAPGENAI_OAUTH_PRF_HCP" 21 | }, 22 | "modellingContext": { 23 | "modellingContextName": "DEFAULT", 24 | "modellingContextId": "FD7EE83C8A15E829D272C9A50AB7B0A9", 25 | "modellingContextDescription": "Default context" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /file-formats/cfdf/README.md: -------------------------------------------------------------------------------- 1 | # Custom Field File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | CFDF | Custom Field | Extensibility 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.cfdf.json` | 1 | [`zif_aff_cfdf_v2.intf.abap`](./type/zif_aff_cfdf_v2.intf.abap) | [`cfdf-v2.json`](./cfdf-v2.json) | [`yy1_aff_example_v2.cfdf.json`](./examples/yy1_aff_example_v2.cfdf.json) 14 | 15 | ## Previous Versions 16 | 17 | ### v1 18 | 19 | File | Cardinality | Definition | Schema | Example 20 | :--- | :--- | :--- | :--- | :--- 21 | `.cfdf.json` | 1 | [`zif_aff_cfdf_v1.intf.abap`](./type/zif_aff_cfdf_v1.intf.abap) | [`cfdf-v1.json`](./cfdf-v1.json) | [`yy1_aff_example.cfdf.json`](./examples/yy1_aff_example.cfdf.json) 22 | -------------------------------------------------------------------------------- /file-formats/ddla/examples/abapcatalog.ddla.acds: -------------------------------------------------------------------------------- 1 | @Scope:[#VIEW] 2 | annotation AbapCatalog { 3 | buffering { 4 | status : String(20) enum { NOT_ALLOWED; ACTIVE; SWITCHED_OFF; } default #SWITCHED_OFF; 5 | type : String(10) enum { SINGLE; GENERIC; FULL; NONE; } default #NONE; 6 | numberOfKeyFields : Integer default 000; 7 | }; 8 | 9 | dbHints : array of { 10 | dbSystem : String(3) enum { 11 | ADA; 12 | DB2; 13 | DB4; 14 | DB6; 15 | INF; 16 | MSS; 17 | ORA; 18 | HDB; 19 | ASE; 20 | ALL; 21 | }; 22 | }; 23 | 24 | sqlViewName : String(16); 25 | 26 | sqlViewAppendName : String(16); 27 | 28 | compiler { 29 | compareFilter : Boolean default true; 30 | }; 31 | }; 32 | -------------------------------------------------------------------------------- /file-formats/sito/README.md: -------------------------------------------------------------------------------- 1 | # Situation Object File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | SITO | Situation Object | Situation Handling 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.sito.json` | 1 | [`zif_aff_sito_v2.intf.abap`](./type/zif_aff_sito_v2.intf.abap) | [`sito-v2.json`](./sito-v2.json) | [`z_aff_example_v2.sito.json`](./examples/z_aff_example_v2.sito.json) 14 | 15 | ### Previous Versions 16 | 17 | #### v1 18 | 19 | File | Cardinality | Definition | Schema | Example 20 | :--- | :--- | :--- | :--- | :--- 21 | `.sito.json` | 1 | [`zif_aff_sito_v1.intf.abap`](./type/zif_aff_sito_v1.intf.abap) | [`sito-v1.json`](./sito-v1.json) | [`z_aff_example_v1.sito.json`](./examples/z_aff_example_v1.sito.json) 22 | -------------------------------------------------------------------------------- /file-formats/saia/examples/z_aff_example_saia.saia.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "IDE Action (SAIA) Example Object", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "title": "SAIA AFF Demo Action", 9 | "summary": "This is a demo action for AFF.", 10 | "implementingClass": "ZCL_DEMO_IMPL_CLASS", 11 | "inputUiConfigurationClass": "ZCL_DEMO_INPUT_UI_CONFIG_CLASS" 12 | }, 13 | "filters": { 14 | "numberOfFocusedResources": "exactlyOne", 15 | "supportedDevObjectTypes": [ 16 | { 17 | "workbenchObjectType": "BDEF", 18 | "workbenchObjectSubtype": "BAC" 19 | }, 20 | { 21 | "workbenchObjectType": "CLAS" 22 | }, 23 | { 24 | "workbenchObjectType": "INTF", 25 | "workbenchObjectSubtype": "IO" 26 | } 27 | ] 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /file-formats/aifa/examples/z_aff_example_aifa.aifa.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example AIFA for ABAP File Format", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "namespace": "ZAIFN", 9 | "aifAction": "CREATE_BUPA", 10 | "mainComponentType": "ZAIF_CREATE_BUPA_STRUCTURE", 11 | "implementingClass": "ZAIF_CL_CREATE_BUPA" 12 | }, 13 | "fieldsToRestore": [ 14 | { 15 | "name": "BUPA_ID" 16 | } 17 | ], 18 | "checks": [ 19 | { 20 | "id": "001", 21 | "check": "BUPA_EXIST", 22 | "checkBehaviour": "treatAsError", 23 | "fields": [ 24 | { 25 | "type": "sourceStructure", 26 | "name": "BUPA_ID" 27 | }, 28 | { 29 | "type": "sourceStructure", 30 | "name": "BUPA_TYPE" 31 | } 32 | ] 33 | } 34 | ] 35 | } 36 | 37 | -------------------------------------------------------------------------------- /file-formats/uiad/README.md: -------------------------------------------------------------------------------- 1 | # Launchpad App Descriptor Item File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | UIAD | Launchpad App Descriptor Item | Fiori User Interface 8 | 9 | ## File Structure 10 | 11 | File | Cardinality | Definition | Schema | Example 12 | :--- | :--- | :--- | :--- | :--- 13 | `.uiad.json` | 1 | [`zif_aff_uiad_v2.intf.abap`](./type/zif_aff_uiad_v2.intf.abap) | [`uiad-v2.json`](./uiad-v2.json) | [`z_aff_example_uiad.uiad.json`](./examples/z_aff_example_uiad.uiad.json) 14 | 15 | ### Previous Versions 16 | 17 | #### v1 18 | 19 | File | Cardinality | Definition | Schema | Example 20 | :--- | :--- | :--- | :--- | :--- 21 | `.uiad.json` | 1 | [`zif_aff_uiad_v1.intf.abap`](./type/zif_aff_uiad_v1.intf.abap) | [`uiad-v1.json`](./uiad-v1.json) | [`z_aff_example_uiad_v1.uiad.json`](./examples/z_aff_example_uiad_v1.uiad.json) 22 | 23 | -------------------------------------------------------------------------------- /.github/workflows/editorconfig.yml: -------------------------------------------------------------------------------- 1 | --- 2 | ########################### 3 | ########################### 4 | ## Linter GitHub Actions ## 5 | ########################### 6 | ########################### 7 | name: EditorConfig 8 | 9 | # 10 | # Documentation: 11 | # https://help.github.com/en/articles/workflow-syntax-for-github-actions 12 | # 13 | 14 | ############################# 15 | # Start the job on all push # 16 | ############################# 17 | on: 18 | pull_request: 19 | 20 | permissions: 21 | contents: read 22 | 23 | ############### 24 | # Set the Job # 25 | ############### 26 | jobs: 27 | lint-editorconfig: 28 | runs-on: ubuntu-latest 29 | timeout-minutes: 10 30 | name: Check indentation, EOL, EOF, ... 31 | steps: 32 | - name: Checkout the repository 33 | uses: actions/checkout@v3 34 | - name: Check for editorconfig violations 35 | uses: editorconfig-checker/action-editorconfig-checker@v1 36 | -------------------------------------------------------------------------------- /file-formats/aifn/type/zif_aff_aifn_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_aifn_v1 2 | PUBLIC. 3 | TYPES: 4 | "!

Namespace Details

5 | "! Namespace details 6 | BEGIN OF ty_general_information, 7 | "!

AIF Namespace

8 | "! AIF namespace 9 | aif_namespace TYPE c LENGTH 6, 10 | END OF ty_general_information, 11 | 12 | "!

Namespace

13 | "! Namespace 14 | BEGIN OF ty_main, 15 | "! $required 16 | format_version TYPE zif_aff_types_v1=>ty_format_version, 17 | "!

Header

18 | "! Header 19 | "! $required 20 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 21 | "!

General Information

22 | "! General information 23 | "! $required 24 | general_information TYPE ty_general_information, 25 | END OF ty_main. 26 | ENDINTERFACE. 27 | -------------------------------------------------------------------------------- /file-formats/smbc/examples/z_aff_example_smbc.smbc.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "AFF Example Object for SMBC", 5 | "originalLanguage": "en" 6 | }, 7 | "serviceConfiguration": { 8 | "serviceBinding": "/DMO/SB_CUSTOMER_MSSK_O4", 9 | "serviceName": "/DMO/SD_CUSTOMER_MSSK", 10 | "serviceVersion": "0001", 11 | "rootEntitySet": "Customer", 12 | "name": "Maintain customer", 13 | "configurationGroup": "/DMO/ADMIN_GROUP", 14 | "skipRootEntity": false 15 | }, 16 | "appConfiguration": { 17 | "listReport": { 18 | "variantManagement": "none" 19 | }, 20 | "objectPages": [ 21 | { 22 | "entitySet": "Customer", 23 | "sectionLayout": "tabs" 24 | } 25 | ], 26 | "tableSettings": [ 27 | { 28 | "entitySet": "Customer", 29 | "tableType": "gridTable", 30 | "selectionMode": "auto", 31 | "enableFullScreen": true 32 | } 33 | ] 34 | } 35 | } 36 | -------------------------------------------------------------------------------- /file-formats/intf/examples/z_aff_example_intf.intf.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example interface for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "descriptions": { 8 | "types": [ 9 | { 10 | "name": "TY_EXAMPLE_TYPE", 11 | "description": "This is an example type" 12 | } 13 | ], 14 | "attributes": [ 15 | { 16 | "name": "CO_EXAMPLE_CONSTANT", 17 | "description": "This is an example constant" 18 | } 19 | ], 20 | "events": [ 21 | { 22 | "name": "EXAMPLE_EVENT", 23 | "description": "This is an example event" 24 | } 25 | ], 26 | "methods": [ 27 | { 28 | "name": "EXAMPLE_METHOD", 29 | "description": "This is an example method", 30 | "parameters": [ 31 | { 32 | "name": "I_PARAM", 33 | "description": "This is an example parameter" 34 | } 35 | ] 36 | } 37 | ] 38 | } 39 | } 40 | -------------------------------------------------------------------------------- /file-formats/nont/type/zif_aff_nont_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_nont_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

SAP Object Node Type

6 | "! SAP object node type 7 | BEGIN OF ty_main, 8 | "! $required 9 | format_version TYPE zif_aff_types_v1=>ty_format_version, 10 | 11 | "!

Header

12 | "! Header 13 | "! $required 14 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 15 | 16 | "!

Name

17 | "! The name of the SAP Object Node Type. 18 | "! $required 19 | name TYPE c LENGTH 30, 20 | 21 | "!

SAP Object Type

22 | "! The name of the referenced SAP Object Type. 23 | sap_object_type TYPE c LENGTH 30, 24 | 25 | "!

Root Node

26 | "! Indicates that the SAP Object Node Type corresponds to the referenced SAP Object Type. 27 | root_node TYPE abap_bool, 28 | 29 | END OF ty_main. 30 | 31 | ENDINTERFACE. 32 | -------------------------------------------------------------------------------- /file-formats/eeec/examples/z_aff_example_eeec.eeec.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Generated consump. model for /IWXBE/TESTCONSUMER", 5 | "originalLanguage": "en" 6 | }, 7 | "consumerClass": "/IWXBE/CL_TESTCONSUMER_V2", 8 | "descriptorClass": "/IWXBE/CL_GENERIC_CONS_DESCRIP", 9 | "eventTypes": [ 10 | { 11 | "type": "sap.eee.iwxbe.testproducer.v1.Event.Conversion", 12 | "entityName": "/IWXBE/D_Event_Conversion" 13 | }, 14 | { 15 | "type": "sap.eee.iwxbe.testproducer.v1.Event.Created.v1", 16 | "entityName": "/IWXBE/D_Event_Created_v1" 17 | }, 18 | { 19 | "type": "sap.eee.iwxbe.testproducer.v1.Event.DeepStructure", 20 | "entityName": "/IWXBE/D_Event_DeepStructure" 21 | }, 22 | { 23 | "type": "sap.eee.iwxbe.testproducer.v1.Event.HealthCheck", 24 | "entityName": "/IWXBE/D_Event_HealthCheck" 25 | }, 26 | { 27 | "type": "sap.eee.iwxbe.testproducer.v1.Event.Test", 28 | "entityName": "/IWXBE/D_Event_Test" 29 | } 30 | ] 31 | } 32 | -------------------------------------------------------------------------------- /LICENSES/MIT.txt: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 SAP SE or an SAP affiliate company 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 6 | 7 | The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. 8 | 9 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 10 | -------------------------------------------------------------------------------- /file-formats/chdo/examples/z_aff_example_chdo.chdo.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "CHDO example", 5 | "originalLanguage": "de" 6 | }, 7 | "generalInformation": { 8 | "generatedObject": "ZCL_Z_AFF_EXAM_CHDO_CHDO" 9 | }, 10 | "tablesAndStructures": [ 11 | { 12 | "name": "SZD_TABL_TAB", 13 | "referenceTable": "", 14 | "multipleChanges": false, 15 | "databaseInsertions": { 16 | "logValues": true, 17 | "logInitialValues": true 18 | }, 19 | "databaseDeletions": { 20 | "logValues": true, 21 | "logInitialValues": false 22 | } 23 | }, 24 | { 25 | "name": "SZD_TABS_TAB", 26 | "referenceTable": "", 27 | "multipleChanges": true, 28 | "databaseInsertions": { 29 | "logValues": false, 30 | "logInitialValues": false 31 | }, 32 | "databaseDeletions": { 33 | "logValues": true, 34 | "logInitialValues": true 35 | } 36 | } 37 | ], 38 | "errorMessage": { 39 | "id": "CD", 40 | "number": "600" 41 | } 42 | } 43 | -------------------------------------------------------------------------------- /file-formats/http/type/zif_aff_http_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_http_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

General Information

6 | "! General information 7 | "! $required 8 | BEGIN OF ty_general_information, 9 | "!

Handler Class

10 | "! Handler class 11 | handler_class TYPE zif_aff_types_v1=>ty_object_name_30, 12 | END OF ty_general_information. 13 | 14 | TYPES: 15 | "!

HTTP Service

16 | "! HTTP Service 17 | BEGIN OF ty_main, 18 | "!

Format Version

19 | "! Format version 20 | "! $required 21 | format_version TYPE zif_aff_types_v1=>ty_format_version, 22 | "!

Header

23 | "! Header 24 | "! $required 25 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 26 | "!

General Information

27 | "! General information 28 | "! $required 29 | general_information TYPE ty_general_information, 30 | 31 | END OF ty_main. 32 | ENDINTERFACE. 33 | -------------------------------------------------------------------------------- /file-formats/aifr/type/zif_aff_aifr_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_aifr_v1 2 | PUBLIC. 3 | TYPES: 4 | "!

Recipient Details

5 | "! Recipient details 6 | BEGIN OF ty_general_information, 7 | "!

Namespace

8 | "! Namespace of the recipient 9 | "! $required 10 | namespace TYPE c LENGTH 15, 11 | "!

AIF Recipient

12 | "! SAP Application Interface recipient 13 | "! $required 14 | aif_recipient TYPE c LENGTH 25, 15 | END OF ty_general_information, 16 | 17 | "!

Recipient

18 | "! Recipient 19 | BEGIN OF ty_main, 20 | "! $required 21 | format_version TYPE zif_aff_types_v1=>ty_format_version, 22 | "!

Header

23 | "! Header 24 | "! $required 25 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 26 | "!

General Information

27 | "! General information 28 | "! $required 29 | general_information TYPE ty_general_information, 30 | END OF ty_main. 31 | ENDINTERFACE. 32 | -------------------------------------------------------------------------------- /file-formats/csnm/type/zif_aff_csnm_v1.intf.abap: -------------------------------------------------------------------------------- 1 | "! ABAP File Format for CSN Model Transport Object Generic Editor 2 | INTERFACE zif_aff_csnm_v1 3 | PUBLIC. 4 | 5 | TYPES: 6 | "!

CSN File

7 | "! CSN file 8 | BEGIN OF ty_csn_file, 9 | "!

File

10 | "! File 11 | file TYPE string, 12 | END OF ty_csn_file. 13 | 14 | "!

CSN Files

15 | "! CSN files 16 | TYPES ty_csn_files TYPE STANDARD TABLE OF ty_csn_file WITH DEFAULT KEY. 17 | 18 | TYPES: 19 | "!

CSN Model Transport Object

20 | "! CSN model transport object 21 | BEGIN OF ty_main, 22 | "!

Format Version

23 | "! Format version 24 | "! $required 25 | format_version TYPE zif_aff_types_v1=>ty_format_version, 26 | "!

Header

27 | "! Header 28 | "! $required 29 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 30 | "!

CSN Files

31 | "! CSN files 32 | csn_files TYPE ty_csn_files, 33 | END OF ty_main. 34 | ENDINTERFACE. 35 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2021 SAP SE or an SAP affiliate company 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /file-formats/aifp/examples/z_aff_example_aifp.aifp.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example AIFP for ABAP File Format", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "standard" 7 | }, 8 | "generalInformation": { 9 | "namespace": "ZAIFNS", 10 | "aifCheck": "BP_EXIST" 11 | }, 12 | "errorMessage": { 13 | "messageClass": "/AIF/CREATE_CUST", 14 | "messageNumber": "001", 15 | "variableAssignments": [ 16 | { 17 | "number": 1, 18 | "type": "definedField", 19 | "value": "1" 20 | } 21 | ] 22 | }, 23 | "singleCheckAssignments": [ 24 | { 25 | "description": "Check Business Partner Exist", 26 | "id": "10", 27 | "scenario": "simpleFieldAndDbCheck", 28 | "fieldCheck": { 29 | "checkType": "empty" 30 | }, 31 | "databaseCheck": { 32 | "table": "BUP000", 33 | "whereCondition": "ID = '$1'", 34 | "checkType": "compare", 35 | "fieldName": "NAME", 36 | "operator": "equals", 37 | "fieldType": "definedField", 38 | "value": "2" 39 | } 40 | } 41 | ] 42 | } 43 | -------------------------------------------------------------------------------- /file-formats/edoi/examples/z_aff_example_edoi.edoi.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "France: Customer Invoice Request", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "direction": "outbound" 9 | }, 10 | "versions": [ 11 | { 12 | "version": 1, 13 | "description": "Initial Version", 14 | "activeFrom": "01.01.2025", 15 | "communicationAttributes": { 16 | "processType": "CUSTOMER_INVOICE", 17 | "processVersion": "1.0.0", 18 | "processSubtype": "DOMESTIC", 19 | "drcAction": "TRANSMIT", 20 | "responseInterface": "INVOICER", 21 | "responseInterfaceVersion": 1 22 | } 23 | }, 24 | { 25 | "version": 2, 26 | "description": "Version 2", 27 | "activeFrom": "01.07.2025", 28 | "communicationAttributes": { 29 | "processType": "CUSTOMER_INVOICE", 30 | "processVersion": "1.1.0", 31 | "processSubtype": "DOMESTIC", 32 | "drcAction": "TRANSMIT", 33 | "responseInterface": "INVOICER", 34 | "responseInterfaceVersion": 2 35 | } 36 | } 37 | ] 38 | } 39 | -------------------------------------------------------------------------------- /file-formats/aplo/type/zif_aff_aplo_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_aplo_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

Subobject

6 | "! Attributes of the subobject 7 | BEGIN OF ty_subobject, 8 | "!

Name

9 | "! Name of the subobject 10 | "! $required 11 | name TYPE c LENGTH 20, 12 | "!

Description

13 | "! Description text of the subobject 14 | description TYPE c LENGTH 60, 15 | END OF ty_subobject. 16 | 17 | TYPES: 18 | "!

Application Log Object

19 | "! Attributes of the application log object 20 | BEGIN OF ty_main, 21 | "! $required 22 | format_version TYPE zif_aff_types_v1=>ty_format_version, 23 | "!

Header

24 | "! Header 25 | "! $required 26 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 27 | "!

Subobjects

28 | "! Table of all subobjects (may be empty) 29 | "! $required 30 | subobjects TYPE SORTED TABLE OF ty_subobject WITH NON-UNIQUE KEY name, 31 | END OF ty_main. 32 | ENDINTERFACE. 33 | -------------------------------------------------------------------------------- /file-formats/clas/examples/z_aff_example_clas.clas.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example class for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "fixPointArithmetic": true, 8 | "descriptions": { 9 | "types": [ 10 | { 11 | "name": "EXAMPLE_TYPE", 12 | "description": "This is an example type" 13 | } 14 | ], 15 | "attributes": [ 16 | { 17 | "name": "EXAMPLE_ATTRIBUTE", 18 | "description": "This is an example attribute" 19 | } 20 | ], 21 | "events": [ 22 | { 23 | "name": "EXAMPLE_EVENT", 24 | "description": "This is an example event" 25 | } 26 | ], 27 | "methods": [ 28 | { 29 | "name": "EXAMPLE_METHOD", 30 | "description": "This is an example method", 31 | "parameters": [ 32 | { 33 | "name": "I_PARAM", 34 | "description": "Importing parameter" 35 | } 36 | ], 37 | "exceptions": [ 38 | { 39 | "name": "CX_STATIC_CHECK", 40 | "description": "This is an example exception" 41 | } 42 | ] 43 | } 44 | ] 45 | } 46 | } 47 | -------------------------------------------------------------------------------- /file-formats/aiff/type/zif_aff_aiff_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_aiff_v1 2 | PUBLIC. 3 | TYPES: 4 | "!

General Information

5 | "! General information 6 | BEGIN OF ty_general_information, 7 | "!

Namespace

8 | "! Namespace 9 | "! $required 10 | namespace TYPE c LENGTH 15, 11 | "!

AIF Fix Value

12 | "! AIF fix value 13 | "! $required 14 | aif_fix_value TYPE c LENGTH 20, 15 | "!

Field Value

16 | "! Field value 17 | field_value TYPE c LENGTH 255, 18 | END OF ty_general_information, 19 | 20 | "!

Fix Value

21 | "! Fix value 22 | BEGIN OF ty_main, 23 | "! $required 24 | format_version TYPE zif_aff_types_v1=>ty_format_version, 25 | "!

Header

26 | "! Header 27 | "! $required 28 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 29 | "!

General Information

30 | "! General information 31 | "! $required 32 | general_information TYPE ty_general_information, 33 | END OF ty_main. 34 | 35 | ENDINTERFACE. 36 | -------------------------------------------------------------------------------- /file-formats/msag/type/zif_aff_msag_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_msag_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

Message Properties

6 | "! Message properties 7 | BEGIN OF ty_message, 8 | "!

Message Number

9 | "! Message number 10 | number TYPE c LENGTH 3, 11 | "!

Message Text

12 | "! Message text 13 | text TYPE c LENGTH 73, 14 | END OF ty_message. 15 | 16 | "!

Internal table to store messages

17 | "! Internal table to store messages 18 | TYPES ty_messages TYPE SORTED TABLE OF ty_message WITH UNIQUE KEY number. 19 | 20 | TYPES: 21 | "!

Message Class Properties

22 | "! Message class properties 23 | BEGIN OF ty_main, 24 | "! $required 25 | format_version TYPE zif_aff_types_v1=>ty_format_version, 26 | "!

Header

27 | "! Header 28 | "! $required 29 | header TYPE zif_aff_types_v1=>ty_header_60_no_abap_lv, 30 | "!

Messages

31 | "! Messages 32 | "! $required 33 | messages TYPE ty_messages, 34 | END OF ty_main. 35 | 36 | ENDINTERFACE. 37 | -------------------------------------------------------------------------------- /file-formats/aifd/type/zif_aff_aifd_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_aifd_v1 2 | PUBLIC. 3 | TYPES: 4 | "!

Application Interface

5 | "! Application interface 6 | BEGIN OF ty_application_interface, 7 | "!

Application Interface

8 | "! Application interface 9 | "! $required 10 | application_interface TYPE c LENGTH 40, 11 | END OF ty_application_interface, 12 | 13 | "!

Application Interfaces

14 | "! Application interfaces 15 | ty_application_interfaces TYPE STANDARD TABLE OF ty_application_interface WITH DEFAULT KEY, 16 | 17 | "!

Deployment Scenario

18 | "! Deployment scenario 19 | BEGIN OF ty_main, 20 | "! $required 21 | format_version TYPE zif_aff_types_v1=>ty_format_version, 22 | "!

Header

23 | "! Header 24 | "! $required 25 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 26 | "!

Application Interfaces

27 | "! Application interfaces 28 | "! $required 29 | application_interfaces TYPE ty_application_interfaces, 30 | END OF ty_main. 31 | ENDINTERFACE. 32 | -------------------------------------------------------------------------------- /file-formats/csnm/examples/z_aff_example_csnm.csnm.model_inferred.csn: -------------------------------------------------------------------------------- 1 | { 2 | "definitions": { 3 | "Foo": { 4 | "kind": "entity", 5 | "elements": { 6 | "name": { 7 | "key": true, 8 | "type": "cds.String" 9 | }, 10 | "vorname": { 11 | "key": true, 12 | "type": "cds.String" 13 | } 14 | } 15 | }, 16 | "Bar": { 17 | "kind": "entity", 18 | "projection": { 19 | "from": { 20 | "ref": [ 21 | "Foo" 22 | ] 23 | }, 24 | "columns": [ 25 | { 26 | "ref": [ 27 | "name" 28 | ], 29 | "as": "Name" 30 | }, 31 | { 32 | "ref": [ 33 | "vorname" 34 | ], 35 | "as": "Vorname" 36 | } 37 | ] 38 | }, 39 | "elements": { 40 | "Name": { 41 | "key": true, 42 | "type": "cds.String" 43 | }, 44 | "Vorname": { 45 | "key": true, 46 | "type": "cds.String" 47 | } 48 | } 49 | } 50 | }, 51 | "meta": { 52 | "creator": "CDS Compiler v3.3.2", 53 | "flavor": "inferred" 54 | }, 55 | "$version": "2.0" 56 | } 57 | -------------------------------------------------------------------------------- /file-formats/susi/examples/55fae0107acd2ee619d9f869c651edhs.susi.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "WS SRT_TEST_WEBI/REQUEST_RESPONSE", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "applicationName": "SRT_TEST_WEBI/REQUEST_RESPONSE", 9 | "applicationType": "WebService", 10 | "maintenanceMode": "manual" 11 | }, 12 | "authorizationObjects": [ 13 | { 14 | "object": "S_SERVICE", 15 | "maintenanceStatus": "noDefault" 16 | }, 17 | { 18 | "object": "S_DATASET", 19 | "maintenanceStatus": "defaultWithValues", 20 | "fields": [ 21 | { 22 | "field": "ACTVT", 23 | "low": "33" 24 | }, 25 | { 26 | "field": "ACTVT", 27 | "low": "34" 28 | }, 29 | { 30 | "field": "PROGRAM", 31 | "low": "SAPLSTRF" 32 | }, 33 | { 34 | "field": "FILENAME", 35 | "low": "" 36 | } 37 | ] 38 | }, 39 | { 40 | "object": "S_TABU_RFC", 41 | "maintenanceStatus": "defaultWithValues", 42 | "fields": [ 43 | { 44 | "field": "ACTVT", 45 | "low": "03" 46 | } 47 | ] 48 | } 49 | ] 50 | } 51 | -------------------------------------------------------------------------------- /generate/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "abap-file-formats", 3 | "private": true, 4 | "version": "0.0.0", 5 | "description": "File formats that define and specify the file representation for ABAP development objects", 6 | "scripts": { 7 | "pull": "oras-pull ghcr.io/sap/abap-file-formats-tools/abap-file-formats-tools:latest", 8 | "copy": "cp ../file-formats/*.abap downport && cp ../file-formats/*/type/*.abap downport && cp cl_run.clas.abap downport", 9 | "transpile": "rm -rf output && abap_transpile abap_transpile.json", 10 | "compile": "rm -rf downport && npm run pull && npm run copy && npm run transpile", 11 | "generate": "rm -rf generated && node aff.mjs", 12 | "test": "npm run compile && npm run generate" 13 | }, 14 | "repository": { 15 | "type": "git", 16 | "url": "git+https://github.com/SAP/abap-file-formats.git" 17 | }, 18 | "author": "SAP", 19 | "license": "MIT", 20 | "bugs": { 21 | "url": "https://github.com/SAP/abap-file-formats/issues" 22 | }, 23 | "homepage": "https://github.com/SAP/abap-file-formats#readme", 24 | "dependencies": { 25 | "@abaplint/database-sqlite": "^2.11.0", 26 | "@abaplint/runtime": "^2.11.58", 27 | "@abaplint/transpiler-cli": "^2.11.58", 28 | "@actions/core": "^1.11.1", 29 | "oras-pull": "^0.1.7" 30 | } 31 | } 32 | -------------------------------------------------------------------------------- /file-formats/desd/type/zif_aff_desd_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_desd_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | 6 | "!

General Information

7 | "! General information 8 | BEGIN OF ty_general_information, 9 | "!

Default Remote Schema

10 | "! Default remote database schema name when configuring the connection 11 | "! details of logical external schema. 12 | default_remote_schema_name TYPE c LENGTH 256, 13 | "!

Uses Routing

14 | "! If true, the logical external schema can only be used 15 | "! in routed scenarios. 16 | uses_routing TYPE abap_bool, 17 | END OF ty_general_information, 18 | 19 | "!

CDS Logical External Schema

20 | "! CDS logical external schema 21 | BEGIN OF ty_main, 22 | "!

Format Version

23 | "! Format version 24 | "! $required 25 | format_version TYPE zif_aff_types_v1=>ty_format_version, 26 | "!

Header

27 | "! Header 28 | "! $required 29 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 30 | "!

General Information

31 | "! General information 32 | general_information TYPE ty_general_information, 33 | END OF ty_main. 34 | 35 | ENDINTERFACE. 36 | -------------------------------------------------------------------------------- /docs/properties.md: -------------------------------------------------------------------------------- 1 | ## Translation Files in ABAP File Formats 2 | 3 | ### File Format 4 | The file format for translation is `properties` and consists of key value pairs, e.g. 5 | ```PROPERTIES 6 | key=value 7 | ... 8 | ``` 9 | The `key` refers to the text that is translated (source language), whereas `value` is the actual translated text. 10 | A key follows the convenction of [JSONPath](https://goessner.net/articles/JsonPath/) when refering to data in JSON files. 11 | 12 | ### File Name 13 | 14 | The translation of an ABAP object are stored in file named 15 | `..i18n..properties` 16 | 17 | ### Example 18 | Assume that the ABAP object is represented by 19 | ```JSON 20 | { 21 | "formatVersion": "1", 22 | "header": { 23 | "description": "Hello", 24 | "originalLanguage": "en" 25 | }, 26 | "descriptions": { 27 | "methods": [ 28 | { 29 | "name": "METHOD_ONE", 30 | "description": "One", 31 | }, 32 | { 33 | "name": "METHOD_TWO", 34 | "description": "Two", 35 | } 36 | ] 37 | } 38 | } 39 | ``` 40 | with the translation relevant texts being all descriptions. 41 | Then the translation file (for french) is 42 | ```PROPERTIES 43 | $.header.description=Bonjour 44 | $.descriptions.methods[?(@.name=='METHOD_ONE')].description=Un 45 | $.descriptions.methods[?(@.name=='METHOD_TWO')].description=Deux 46 | ``` 47 | -------------------------------------------------------------------------------- /file-formats/siad/type/zif_aff_siad_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_siad_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | 6 | "!

General Information

7 | "! General information 8 | BEGIN OF ty_general_information, 9 | 10 | "!

Business Role Template

11 | "! Business role template 12 | "! $required 13 | business_role_template TYPE zif_aff_types_v1=>ty_object_name_30, 14 | 15 | "!

Launchpad Space Template

16 | "! Launchpad space template 17 | "! $required 18 | launchpad_space_template TYPE c LENGTH 35, 19 | 20 | END OF ty_general_information, 21 | 22 | "!

Business Role Template Launchpad Space Template Assignment

23 | "! Business role template launchpad space template assignment 24 | BEGIN OF ty_main, 25 | 26 | "!

Format Version

27 | "! Format version 28 | "! $required 29 | format_version TYPE zif_aff_types_v1=>ty_format_version, 30 | 31 | "!

Header

32 | "! Header 33 | "! $required 34 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 35 | 36 | "!

General Information

37 | "! General information 38 | "! $required 39 | general_information TYPE ty_general_information, 40 | 41 | END OF ty_main. 42 | 43 | ENDINTERFACE. 44 | -------------------------------------------------------------------------------- /file-formats/fugr/type/zif_aff_reps_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_reps_v1 2 | PUBLIC. 3 | 4 | "!

Include Type

5 | "! Include type 6 | "! $values {@link zif_aff_reps_v1.data:co_include_type} 7 | "! $default {@link zif_aff_reps_v1.data:co_include_type.include} 8 | TYPES ty_include_type TYPE c LENGTH 1. 9 | 10 | CONSTANTS: 11 | "!

Include Type

12 | "! Include type 13 | BEGIN OF co_include_type, 14 | "!

Include

15 | "! Include 16 | include TYPE ty_include_type VALUE 'I', 17 | "!

Function Group

18 | "! Function group 19 | function_group TYPE ty_include_type VALUE 'F', 20 | END OF co_include_type. 21 | 22 | TYPES: 23 | "!

Object Type REPS

24 | "! REPS object type 25 | BEGIN OF ty_main, 26 | "! $required 27 | format_version TYPE zif_aff_types_v1=>ty_format_version, 28 | "!

Header

29 | "! Header 30 | "! $required 31 | header TYPE zif_aff_types_v1=>ty_header_only_description, 32 | "!

Edit-Locked

33 | "! Edit-locked 34 | edit_locked TYPE abap_bool, 35 | "!

Include Type

36 | "! Include type 37 | "! $required 38 | include_type TYPE ty_include_type, 39 | END OF ty_main. 40 | 41 | ENDINTERFACE. 42 | -------------------------------------------------------------------------------- /file-formats/apob/type/zif_aff_apob_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_apob_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

Application Object Type

6 | "! $required 7 | BEGIN OF ty_attributes, 8 | "!

Key Table or Structure

9 | "! Name of key table or structure for application object 10 | ao_key_structure TYPE c LENGTH 30, 11 | "!

SAP Object

12 | "! Name of the SAP object 13 | sap_object TYPE c LENGTH 30, 14 | "!

Data Category

15 | "! Name of the data category 16 | data_category TYPE c LENGTH 30, 17 | "!

ILM Object

18 | "! Name of the ILM object 19 | ilm_object TYPE c LENGTH 30, 20 | END OF ty_attributes. 21 | 22 | TYPES: 23 | "!

Application Object

24 | "! Type of application object 25 | BEGIN OF ty_main, 26 | "!

Format Version

27 | "! Format version 28 | "! $required 29 | format_version TYPE zif_aff_types_v1=>ty_format_version, 30 | "!

Header

31 | "! Header 32 | "! $required 33 | header TYPE zif_aff_types_v1=>ty_header_60, 34 | "!

Attributes

35 | "! Attributes of the application object 36 | "! $required 37 | attributes TYPE ty_attributes, 38 | END OF ty_main. 39 | 40 | ENDINTERFACE. 41 | -------------------------------------------------------------------------------- /file-formats/evto/type/zif_aff_evto_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_evto_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

General Information

6 | "! General information 7 | BEGIN OF ty_general_information, 8 | "!

SAP Object Type

9 | "! SAP Object Type 10 | "! $required 11 | sap_object_type TYPE c LENGTH 30, 12 | 13 | "!

Major Version

14 | "! Major version 15 | "! $minimum 1 16 | "! $required 17 | major_version TYPE i, 18 | 19 | "!

Minor Version

20 | "! Minor version 21 | "! $minimum 0 22 | "! $required 23 | minor_version TYPE i, 24 | 25 | "!

Patch Version

26 | "! Patch version 27 | "! $minimum 0 28 | "! $required 29 | patch_version TYPE i, 30 | END OF ty_general_information. 31 | 32 | TYPES: 33 | "!

Event Object

34 | "! Event Object 35 | BEGIN OF ty_main, 36 | "! $required 37 | format_version TYPE zif_aff_types_v1=>ty_format_version, 38 | 39 | "!

Header

40 | "! Header 41 | "! $required 42 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 43 | 44 | "!

General Information

45 | "! General information 46 | "! $required 47 | general_information TYPE ty_general_information, 48 | END OF ty_main. 49 | ENDINTERFACE. 50 | -------------------------------------------------------------------------------- /file-formats/ddla/ddla-v1.json: -------------------------------------------------------------------------------- 1 | { 2 | "$comment": "This file is autogenerated, do not edit manually, see https://github.com/SAP/abap-file-formats for more information.", 3 | "$schema": "https://json-schema.org/draft/2020-12/schema", 4 | "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/ddla/ddla-v1.json", 5 | "title": "CDS Annotation Definition", 6 | "description": "Attributes of the annotation definition", 7 | "type": "object", 8 | "properties": { 9 | "formatVersion": { 10 | "title": "ABAP File Format Version", 11 | "description": "The ABAP file format version", 12 | "type": "string", 13 | "const": "1" 14 | }, 15 | "header": { 16 | "title": "Header", 17 | "description": "Header", 18 | "type": "object", 19 | "properties": { 20 | "description": { 21 | "title": "Description", 22 | "description": "Description of the ABAP object", 23 | "type": "string", 24 | "maxLength": 60 25 | }, 26 | "originalLanguage": { 27 | "title": "Original Language", 28 | "description": "Original language of the ABAP object", 29 | "type": "string", 30 | "minLength": 2 31 | } 32 | }, 33 | "additionalProperties": false, 34 | "required": [ 35 | "description", 36 | "originalLanguage" 37 | ] 38 | } 39 | }, 40 | "additionalProperties": false, 41 | "required": [ 42 | "formatVersion", 43 | "header" 44 | ] 45 | } 46 | -------------------------------------------------------------------------------- /file-formats/sprv/type/zif_aff_sprv_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_sprv_v1 2 | PUBLIC. 3 | 4 | 5 | TYPES: 6 | "!

Service Provider

7 | "! Service provider details 8 | BEGIN OF ty_servprovider, 9 | "!

Provider Name

10 | "! Name of the service provider 11 | "! $required 12 | provider_name TYPE zif_aff_types_v1=>ty_object_name_30, 13 | "!

Namespace

14 | "! Namespace of the service provider 15 | "! $required 16 | namespace TYPE c LENGTH 255, 17 | "!

Object Name Prefix

18 | "! Prefix for all generated objects 19 | "! $showAlways 20 | prefix TYPE c LENGTH 10, 21 | "!

Implementing Class

22 | "! Implementing class of service provider 23 | "! $showAlways 24 | implementing_class TYPE zif_aff_types_v1=>ty_object_name_30, 25 | END OF ty_servprovider. 26 | TYPES: 27 | "!

SOAP Web Service Provider Model

28 | "! SOAP web service provider model 29 | BEGIN OF ty_main, 30 | "! $required 31 | format_version TYPE zif_aff_types_v1=>ty_format_version, 32 | "!

Header

33 | "! Header data 34 | "! $required 35 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 36 | "!

Service Provider

37 | "! Service provider details 38 | "! $required 39 | service_provider TYPE ty_servprovider, 40 | END OF ty_main. 41 | ENDINTERFACE. 42 | -------------------------------------------------------------------------------- /file-formats/enho/examples/z_aff_example_enho.enho.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example ENHO for ABAP file formats", 5 | "originalLanguage": "en" 6 | }, 7 | "enhancementSpot": "Z_AFF_EXAMPLE_ENHS", 8 | "badiImplementations": [ 9 | { 10 | "name": "Z_AFF_EXAMPLE_BADI_IMPL", 11 | "description": "This is an example Badi Implementation", 12 | "badiDefinition": "Z_AFF_EXAMPLE_BADI_DEFINITION", 13 | "implementingClass": "Z_AFF_EXAMPLE_BADI_IMPL", 14 | "isExampleImplementation": false, 15 | "isDefaultImplementation": true, 16 | "isActiveImplementation": true, 17 | "customizing": "notSupported", 18 | "filterValues": [ 19 | "EXAMPLE_FILTER=example_value1" 20 | ] 21 | } 22 | ], 23 | "referencedObjects": [ 24 | { 25 | "objectType": "CLAS", 26 | "objectName": "Z_AFF_EXAMPLE_BADI_IMPL", 27 | "programId": "R3TR", 28 | "elementUsage": "usedObject", 29 | "mainObjectType": "CLAS", 30 | "mainObjectName": "Z_AFF_EXAMPLE_BADI_IMPL" 31 | }, 32 | { 33 | "objectType": "ENHS", 34 | "objectName": "Z_AFF_EXAMPLE_ENHS", 35 | "programId": "R3TR", 36 | "elementUsage": "enhancedObject", 37 | "mainObjectType": "ENHS", 38 | "mainObjectName": "Z_AFF_EXAMPLE_ENHS" 39 | }, 40 | { 41 | "objectType": "INTF", 42 | "objectName": "Z_AFF_EXAMPLE_BADI_INTF", 43 | "programId": "R3TR", 44 | "elementUsage": "usedObject", 45 | "mainObjectType": "INTF", 46 | "mainObjectName": "Z_AFF_EXAMPLE_BADI_INTF" 47 | } 48 | ] 49 | } 50 | -------------------------------------------------------------------------------- /file-formats/suco/type/zif_aff_suco_v1.intf.abap: -------------------------------------------------------------------------------- 1 | "! AFF Type for SUCO (Authorization Default Variant) 2 | INTERFACE zif_aff_suco_v1 3 | PUBLIC. 4 | 5 | TYPES: 6 | "!

Leading Application

7 | "! Leading application 8 | BEGIN OF ty_leading_application, 9 | "!

Program ID

10 | "! Program ID 11 | "! $default 'R3TR' 12 | program_id TYPE c LENGTH 4, 13 | "!

Object Type

14 | "! Object type 15 | "! $required 16 | object_type TYPE c LENGTH 4, 17 | "!

Object Name

18 | "! Object name 19 | "! $required 20 | object_name TYPE c LENGTH 40, 21 | "!

Service Type

22 | "! Service type 23 | service_type TYPE c LENGTH 16, 24 | "!

Service Name

25 | "! Service name 26 | service_name TYPE string, 27 | END OF ty_leading_application. 28 | 29 | TYPES: 30 | "!

Object Type SUCO (Authorization Default Variant)

31 | "! Object type SUCO (authorization default variant) 32 | BEGIN OF ty_main, 33 | "! $required 34 | format_version TYPE zif_aff_types_v1=>ty_format_version, 35 | "!

Header

36 | "! Header 37 | "! $required 38 | header TYPE zif_aff_types_v1=>ty_header_80_cloud, 39 | "!

Leading Application

40 | "! Leading application 41 | "! $required 42 | leading_application TYPE ty_leading_application, 43 | END OF ty_main. 44 | ENDINTERFACE. 45 | -------------------------------------------------------------------------------- /file-formats/chkv/examples/z_aff_example_chkv.chkv.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Example CHKV for ABAP file formats", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "selectedChecks": [ 9 | { 10 | "checkName": "CI_SEARCH_ABAP_PATTERN", 11 | "parameters": [ 12 | { 13 | "name": "StatementPattern", 14 | "valueList": [ 15 | "CALL FUNCTION 'DB_EXISTS_INDEX' *", 16 | "CALL FUNCTION 'DD_INDEX_NAME' *" 17 | ] 18 | }, 19 | { 20 | "name": "FindingSeverity", 21 | "value": "E" 22 | } 23 | ] 24 | }, 25 | { 26 | "checkName": "SLIN_VERS", 27 | "parameters": [ 28 | { 29 | "name": "ABAPLanguageVersion", 30 | "value": "4" 31 | } 32 | ] 33 | }, 34 | { 35 | "checkName": "SYCM_S4H_SEARCH_DB_OPS", 36 | "parameters": [ 37 | { 38 | "name": "ReleaseID", 39 | "value": "S4HANA_READINESS_1809" 40 | }, 41 | { 42 | "name": "SAPNotes", 43 | "valueRangeList": [ 44 | { 45 | "sign": "exclude", 46 | "option": "equals", 47 | "low": "0002470721" 48 | } 49 | ] 50 | }, 51 | { 52 | "name": "SimplificationItemCategories", 53 | "valueRangeList": [ 54 | { 55 | "sign": "exclude", 56 | "option": "lessEqual", 57 | "low": "P" 58 | } 59 | ] 60 | } 61 | ] 62 | } 63 | ] 64 | } 65 | -------------------------------------------------------------------------------- /file-formats/dcat/type/zif_aff_dcat_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_dcat_v1 2 | PUBLIC. 3 | 4 | CONSTANTS: 5 | "!

Sensitivity Level

6 | "! Data category sensitivity level 7 | BEGIN OF co_categ_senst_lvl, 8 | "!

Personal Data

9 | "! Personal data 10 | personal_data TYPE c LENGTH 1 VALUE '', 11 | "!

Sensitive Personal Data

12 | "! Sensitive personal data 13 | sensitive_personal_data TYPE c LENGTH 1 VALUE 'S', 14 | END OF co_categ_senst_lvl. 15 | 16 | TYPES: 17 | "!

Data Category Type

18 | "! $required 19 | BEGIN OF ty_attributes, 20 | "!

Sensitivity Level

21 | "! Sensitivity level for data category 22 | "! $values { @link zif_aff_dcat_v1.data:co_categ_senst_lvl } 23 | "! $default { @link zif_aff_dcat_v1.data:co_categ_senst_lvl.personal_data } 24 | sensitivity_level TYPE c LENGTH 1, 25 | END OF ty_attributes. 26 | 27 | TYPES: 28 | "!

Data Category

29 | "! Data Category 30 | BEGIN OF ty_main, 31 | "!

Format Version

32 | "! Format version 33 | "! $required 34 | format_version TYPE zif_aff_types_v1=>ty_format_version, 35 | "!

Header

36 | "! Header 37 | "! $required 38 | header TYPE zif_aff_types_v1=>ty_header_60, 39 | "!

Attributes

40 | "! Attributes of the data category 41 | "! $required 42 | attributes TYPE ty_attributes, 43 | END OF ty_main. 44 | 45 | 46 | ENDINTERFACE. 47 | -------------------------------------------------------------------------------- /file-formats/eeec/type/zif_aff_eeec_v1.intf.abap: -------------------------------------------------------------------------------- 1 | "!

Event Consumption Model

2 | INTERFACE zif_aff_eeec_v1 3 | PUBLIC. 4 | 5 | TYPES: 6 | "!

Type

7 | ty_type TYPE string. 8 | 9 | TYPES: 10 | "!

Event Type

11 | BEGIN OF ty_s_event_type, 12 | "!

Type

13 | "! Type 14 | "! $required 15 | type TYPE ty_type, 16 | "!

Entity Name

17 | "! Entity name 18 | "! $required 19 | entity_name TYPE zif_aff_types_v1=>ty_object_name_30, 20 | END OF ty_s_event_type, 21 | ty_t_event_type TYPE SORTED TABLE OF ty_s_event_type WITH UNIQUE KEY type. 22 | 23 | TYPES: 24 | "!

Event Consumption Model

25 | BEGIN OF ty_main, 26 | "! $required 27 | format_version TYPE zif_aff_types_v1=>ty_format_version, 28 | "!

Header

29 | "! Header 30 | "! $required 31 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 32 | "!

Consumer Class

33 | "! Consumer class 34 | "! $required 35 | consumer_class TYPE zif_aff_types_v1=>ty_object_name_30, 36 | "!

Descriptor Class

37 | "! Descriptor class 38 | "! $required 39 | descriptor_class TYPE zif_aff_types_v1=>ty_object_name_30, 40 | "!

Event Types

41 | event_types TYPE ty_t_event_type, 42 | END OF ty_main. 43 | 44 | ENDINTERFACE. 45 | -------------------------------------------------------------------------------- /file-formats/ntta/type/zif_aff_ntta_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_ntta_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | ty_notetype TYPE c LENGTH 20, 6 | 7 | "!

General Information

8 | "! General information 9 | BEGIN OF ty_general_information, 10 | "!

SAP Object Node Type

11 | "! SAP Object Node Type 12 | "! $required 13 | object_node_type TYPE zif_aff_types_v1=>ty_object_name_30, 14 | END OF ty_general_information, 15 | 16 | "!

Note Type

17 | "! Note type 18 | BEGIN OF ty_notetype_structure, 19 | "!

Name

20 | "! Name 21 | "! $required 22 | name TYPE ty_notetype, 23 | END OF ty_notetype_structure, 24 | 25 | "!

Note Types

26 | "! Note types 27 | ty_notetypes TYPE SORTED TABLE OF ty_notetype_structure WITH UNIQUE KEY name, 28 | 29 | "!

ABAP file format for Note Type Assignment objects

30 | "! ABAP file format for note type assignment objects 31 | BEGIN OF ty_main, 32 | "!

Format Version

33 | "! Format version 34 | "! $required 35 | format_version TYPE zif_aff_types_v1=>ty_format_version, 36 | "!

Header

37 | "! Header 38 | "! $required 39 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 40 | "!

General Information

41 | "! General information 42 | general_information TYPE ty_general_information, 43 | "!

Note Types

44 | "! Note types assigned to the SAP Object Node Type 45 | note_types TYPE ty_notetypes, 46 | END OF ty_main. 47 | 48 | ENDINTERFACE. 49 | -------------------------------------------------------------------------------- /compatibility-check/json-schema-diff.js: -------------------------------------------------------------------------------- 1 | const jsonSchemaDiff = require('json-schema-diff') 2 | const exec = require('@actions/exec'); 3 | const core = require('@actions/core'); 4 | const {readFileSync} = require('node:fs'); 5 | 6 | 7 | 8 | 9 | 10 | async function run() { 11 | 12 | let stdout = ''; 13 | const options = { 14 | listeners: { 15 | stdout: (data) => { 16 | stdout += data.toString(); 17 | }, 18 | stderr: (data) => { 19 | core.error(data.toString()); 20 | } 21 | } 22 | }; 23 | 24 | await exec.exec('git diff --name-only --diff-filter=M remotes/origin/main..HEAD', [], options); 25 | 26 | const pattern = new RegExp('file-formats/[a-z]{4}/[a-z]+-v[0-9]+\.json$', 'i'); 27 | const lines = stdout.split("\n"); 28 | 29 | const changedSchema = lines.filter(line => pattern.test(line)); 30 | 31 | 32 | for (const schema of changedSchema) { 33 | 34 | const dataNew = readFileSync(`../${schema}`, 'utf8'); 35 | const schemaNew = JSON.parse(dataNew); 36 | 37 | try { 38 | await exec.exec(`git checkout remotes/origin/main -- `, [schema], { cwd: `../`} ); 39 | } catch (error) { 40 | core.info(`File ${schema} is not known to main branch.`); 41 | continue; 42 | } 43 | 44 | const dataOld = readFileSync(`../${schema}`, 'utf8'); 45 | const schemaOld = JSON.parse(dataOld); 46 | 47 | delete schemaOld['$schema']; 48 | delete schemaNew['$schema']; 49 | 50 | const result = await jsonSchemaDiff.diffSchemas( {sourceSchema: schemaOld, destinationSchema: schemaNew}); 51 | if (result.removalsFound) { 52 | core.setFailed('Something was removed'); 53 | } 54 | 55 | if (result.additionsFound) { 56 | core.setFailed('Something was added'); 57 | }; 58 | } 59 | } 60 | 61 | run(); 62 | -------------------------------------------------------------------------------- /file-formats/sfpf/type/zif_aff_sfpf_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_sfpf_v1 2 | PUBLIC. 3 | TYPES: 4 | BEGIN OF ty_general_information, 5 | "!

Data Provider

6 | "! RAP Service Definition that implements the business context for this form template 7 | data_provider TYPE c LENGTH 40, 8 | "!

Font Embed

9 | "! Automatically embed font files into the output. 10 | "! Useful if your output uses fonts that are not delivered by default, 11 | "! for asian fonts or to include your own branding. 12 | font_embed TYPE abap_bool, 13 | "!

Layout Mirroring

14 | "! When activated if your form template is designed in an LTR language 15 | "! and your target output is an RTL language, 16 | "! layout will be automatically mirrored in the output. 17 | layout_mirroring TYPE abap_bool, 18 | "!

Reduce Data Volume

19 | "! Reduce data input volume based on the form design 20 | reduce_data_volume TYPE abap_bool, 21 | END OF ty_general_information. 22 | 23 | TYPES: 24 | "!

Object Type SFPF

25 | "! Object type SFPF 26 | BEGIN OF ty_main, 27 | "!

Format Version

28 | "! Format version 29 | "! $required 30 | format_version TYPE zif_aff_types_v1=>ty_format_version, 31 | "!

Header

32 | "! Header 33 | "! $required 34 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 35 | "!

General Information

36 | "! General Information 37 | "! $required 38 | general_information TYPE ty_general_information, 39 | END OF ty_main. 40 | ENDINTERFACE. 41 | -------------------------------------------------------------------------------- /file-formats/sajt/examples/z_aff_example_sajt.sajt.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Template of CL_APJ_DEMO_CLASS", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "catalogName": "Z_AFF_EXAMPLE_SAJC" 9 | }, 10 | "parameters": { 11 | "singleValueParameters": [ 12 | { 13 | "name": "BUYERS_DATE", 14 | "value": "@STARTDAYPLUSDAY@:03" 15 | }, 16 | { 17 | "name": "INCREASE", 18 | "value": "" 19 | }, 20 | { 21 | "name": "JOB_TYPE", 22 | "value": "A" 23 | }, 24 | { 25 | "name": "PROCESS_BUYERS", 26 | "value": "X" 27 | }, 28 | { 29 | "name": "PROCESS_SELLERS", 30 | "value": "X" 31 | }, 32 | { 33 | "name": "SEVERITY_ABORT", 34 | "value": "" 35 | }, 36 | { 37 | "name": "SEVERITY_ERROR", 38 | "value": "X" 39 | }, 40 | { 41 | "name": "SEVERITY_INFORMATION", 42 | "value": "X" 43 | }, 44 | { 45 | "name": "SEVERITY_NONE", 46 | "value": "" 47 | }, 48 | { 49 | "name": "SEVERITY_SUCCESS", 50 | "value": "" 51 | }, 52 | { 53 | "name": "TEXT", 54 | "value": "My application job demo" 55 | } 56 | ], 57 | "valueRangesParameters": [ 58 | { 59 | "name": "PLANT", 60 | "valueRanges": [ 61 | { 62 | "sign": "include", 63 | "option": "equals", 64 | "low": "WRK1" 65 | }, 66 | { 67 | "sign": "exclude", 68 | "option": "between", 69 | "low": "WRK3", 70 | "high": "WRK4" 71 | } 72 | ] 73 | } 74 | ] 75 | } 76 | } 77 | -------------------------------------------------------------------------------- /generate/cl_run.clas.abap: -------------------------------------------------------------------------------- 1 | CLASS cl_run DEFINITION PUBLIC FINAL CREATE PUBLIC. 2 | PUBLIC SECTION. 3 | CLASS-METHODS run 4 | IMPORTING 5 | main_object_type TYPE string 6 | sub_object_type TYPE string 7 | format_version TYPE i 8 | RETURNING 9 | VALUE(result) TYPE string. 10 | ENDCLASS. 11 | 12 | CLASS cl_run IMPLEMENTATION. 13 | 14 | METHOD run. 15 | DATA writer TYPE REF TO zcl_aff_writer_json_schema. 16 | DATA generator TYPE REF TO zcl_aff_generator. 17 | DATA string_tab TYPE string_table. 18 | DATA type_name TYPE string. 19 | DATA schema_id TYPE string. 20 | DATA ref TYPE REF TO data. 21 | FIELD-SYMBOLS LIKE LINE OF string_tab. 22 | FIELD-SYMBOLS TYPE any. 23 | 24 | schema_id = |https://github.com/SAP/abap-file-formats/blob/main/file-formats/{ to_lower( main_object_type ) }/{ to_lower( sub_object_type ) }-v{ format_version }.json|. 25 | type_name = to_upper( |ZIF_AFF_{ sub_object_type }_V{ format_version }=>TY_MAIN| ). 26 | 27 | CREATE DATA ref TYPE (type_name). 28 | 29 | CREATE OBJECT writer 30 | EXPORTING 31 | schema_id = schema_id 32 | format_version = format_version. 33 | 34 | CREATE OBJECT generator 35 | EXPORTING 36 | writer = writer. 37 | 38 | ASSIGN ref->* TO . 39 | string_tab = generator->zif_aff_generator~generate_type( ). 40 | 41 | * workaround for transpiler/JS keywords 42 | LOOP AT string_tab ASSIGNING . 43 | IF condense( ) CP '"interface_"*'. 44 | REPLACE FIRST OCCURRENCE OF '"interface_"' IN WITH '"interface"'. 45 | ENDIF. 46 | ENDLOOP. 47 | 48 | CONCATENATE LINES OF string_tab INTO result SEPARATED BY cl_abap_char_utilities=>newline. 49 | ENDMETHOD. 50 | 51 | ENDCLASS. 52 | -------------------------------------------------------------------------------- /file-formats/fugr/type/zif_aff_fugr_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_fugr_v1 2 | PUBLIC. 3 | 4 | "!

Status

5 | "! Status 6 | "! $values {@link zif_aff_fugr_v1.data:co_status} 7 | "! $default {@link zif_aff_fugr_v1.data:co_status.not_classified} 8 | TYPES ty_status TYPE c LENGTH 1. 9 | 10 | CONSTANTS: 11 | "!

Status

12 | "! status 13 | BEGIN OF co_status, 14 | "!

Not Classified

15 | "! Not classified 16 | not_classified TYPE ty_status VALUE space, 17 | "!

SAP Program

18 | "! SAP program 19 | sap_program TYPE ty_status VALUE 'P', 20 | "!

Customer Program

21 | "! Customer production program 22 | customer_program TYPE ty_status VALUE 'K', 23 | "!

System Program

24 | "! System program 25 | system_program TYPE ty_status VALUE 'S', 26 | "!

Test Program

27 | "! Test program 28 | test_program TYPE ty_status VALUE 'T', 29 | END OF co_status. 30 | 31 | TYPES: 32 | "!

Object Type FUGR

33 | "! FUGR object type 34 | BEGIN OF ty_main, 35 | "! $required 36 | format_version TYPE zif_aff_types_v1=>ty_format_version, 37 | "!

Header

38 | "! Header 39 | "! $required 40 | header TYPE zif_aff_types_v1=>ty_header_60_src, 41 | "!

Fix Point Arithmetic

42 | "! Fix point arithmetic 43 | "! $required 44 | fix_point_arithmetic TYPE abap_bool, 45 | "!

Status

46 | "! Status 47 | status TYPE ty_status, 48 | END OF ty_main. 49 | 50 | ENDINTERFACE. 51 | -------------------------------------------------------------------------------- /file-formats/fugr/reps-v1.json: -------------------------------------------------------------------------------- 1 | { 2 | "$comment": "This file is autogenerated, do not edit manually, see https://github.com/SAP/abap-file-formats for more information.", 3 | "$schema": "https://json-schema.org/draft/2020-12/schema", 4 | "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/fugr/reps-v1.json", 5 | "title": "Object Type REPS", 6 | "description": "REPS object type", 7 | "type": "object", 8 | "properties": { 9 | "formatVersion": { 10 | "title": "ABAP File Format Version", 11 | "description": "The ABAP file format version", 12 | "type": "string", 13 | "const": "1" 14 | }, 15 | "header": { 16 | "title": "Header", 17 | "description": "Header", 18 | "type": "object", 19 | "properties": { 20 | "description": { 21 | "title": "Description", 22 | "description": "Description of the ABAP object", 23 | "type": "string", 24 | "maxLength": 60 25 | } 26 | }, 27 | "additionalProperties": false, 28 | "required": [ 29 | "description" 30 | ] 31 | }, 32 | "editLocked": { 33 | "title": "Edit-Locked", 34 | "description": "Edit-locked", 35 | "type": "boolean" 36 | }, 37 | "includeType": { 38 | "title": "Include Type", 39 | "description": "Include type", 40 | "type": "string", 41 | "enum": [ 42 | "include", 43 | "functionGroup" 44 | ], 45 | "enumTitles": [ 46 | "Include", 47 | "Function Group" 48 | ], 49 | "enumDescriptions": [ 50 | "Include", 51 | "Function group" 52 | ], 53 | "default": "include" 54 | } 55 | }, 56 | "additionalProperties": false, 57 | "required": [ 58 | "formatVersion", 59 | "header", 60 | "includeType" 61 | ] 62 | } 63 | -------------------------------------------------------------------------------- /file-formats/ilmb/examples/z_aff_example_ilmb.ilmb.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Sample ILM Object (Flight Model)", 5 | "originalLanguage": "en" 6 | }, 7 | "timeReferences": [ 8 | { 9 | "timeReference": "CREATION_DATE", 10 | "sourceTable": "SFLIGHT", 11 | "sourceField": "FLDATE" 12 | }, 13 | { 14 | "timeReference": "Z_FIXED_DATE", 15 | "sourceTable": "SFLIGHT", 16 | "sourceField": "FLDATE", 17 | "indirectValue": true 18 | } 19 | ], 20 | "conditionFields": [ 21 | { 22 | "conditionField": "CARRID_1", 23 | "dataElement": "S_CARRID", 24 | "sourceTable": "SFLIGHT", 25 | "sourceField": "CARRID", 26 | "noIntervals": true 27 | }, 28 | { 29 | "conditionField": "CONNID", 30 | "dataElement": "CONNID", 31 | "sourceTable": "SFLIGHT", 32 | "sourceField": "CONNID", 33 | "noIntervals": true 34 | }, 35 | { 36 | "conditionField": "COUNTRY", 37 | "dataElement": "LAND1", 38 | "sourceTable": "SFLIGHT", 39 | "sourceField": "CARRID", 40 | "indirectValue": true, 41 | "noIntervals": true 42 | }, 43 | { 44 | "conditionField": "COUNTRY", 45 | "dataElement": "LAND1", 46 | "sourceTable": "SFLIGHT", 47 | "sourceField": "CONNID", 48 | "indirectValue": true, 49 | "noIntervals": true 50 | }, 51 | { 52 | "conditionField": "COUNTRY", 53 | "dataElement": "LAND1", 54 | "sourceTable": "SFLIGHT", 55 | "sourceField": "FLDATE", 56 | "indirectValue": true, 57 | "noIntervals": true 58 | }, 59 | { 60 | "conditionField": "CURRENCY", 61 | "dataElement": "S_CURRCODE", 62 | "sourceTable": "SFLIGHT", 63 | "sourceField": "CURRENCY", 64 | "noIntervals": true 65 | } 66 | ] 67 | } 68 | -------------------------------------------------------------------------------- /file-formats/dobj/type/zif_aff_dobj_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_dobj_v1 2 | PUBLIC. 3 | TYPES: 4 | "!

Structure Definition Details

5 | "! Structure definition details 6 | BEGIN OF ty_structure_definition, 7 | "!

Parent Table

8 | "! Parent table 9 | parent_table TYPE zif_aff_types_v1=>ty_object_name_30, 10 | "!

Dependent Table

11 | "! Dependent table 12 | dependent_table TYPE zif_aff_types_v1=>ty_object_name_30, 13 | END OF ty_structure_definition, 14 | "!

Structure Definitions

15 | "! Structure definitions 16 | ty_structure_definitions TYPE SORTED TABLE OF ty_structure_definition WITH UNIQUE KEY parent_table dependent_table. 17 | 18 | 19 | TYPES: 20 | "!

Data Destruction Object Details

21 | "! $required 22 | BEGIN OF ty_attributes, 23 | "!

Destruction Class

24 | "! Destruction class 25 | "! $required 26 | destruction_class TYPE zif_aff_types_v1=>ty_object_name_30, 27 | END OF ty_attributes. 28 | TYPES: 29 | "!

Data Destruction Object

30 | "! ILM destruction object (DOBJ) v1 31 | BEGIN OF ty_main, 32 | "! $required 33 | format_version TYPE zif_aff_types_v1=>ty_format_version, 34 | "!

Header

35 | "! Header 36 | "! $required 37 | header TYPE zif_aff_types_v1=>ty_header_60_cloud, 38 | "!

Attributes

39 | "!Attributes 40 | "! $required 41 | attributes TYPE ty_attributes, 42 | "!

Structure Definition

43 | "! Structure definition 44 | "! $required 45 | structure_definition TYPE ty_structure_definitions, 46 | END OF ty_main. 47 | 48 | ENDINTERFACE. 49 | -------------------------------------------------------------------------------- /file-formats/swcr/type/zif_aff_swcr_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_swcr_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

Access Permission

6 | "! Access permission 7 | BEGIN OF ty_permission, 8 | "!

Software Component

9 | "! Software component 10 | "! $required 11 | software_component TYPE c LENGTH 30, 12 | END OF ty_permission. 13 | 14 | "!

Access Permissions

15 | "! Access permissions 16 | TYPES ty_permissions TYPE STANDARD TABLE OF ty_permission WITH DEFAULT KEY. 17 | 18 | TYPES: 19 | "!

Dependency

20 | "! Dependency 21 | BEGIN OF ty_dependency, 22 | "!

Software Component

23 | "! Software component 24 | "! $required 25 | software_component TYPE c LENGTH 30, 26 | END OF ty_dependency. 27 | 28 | "!

Dependencies

29 | "! Dependencies 30 | TYPES ty_dependencies TYPE STANDARD TABLE OF ty_dependency WITH DEFAULT KEY. 31 | 32 | TYPES: 33 | "!

Software Component Relations

34 | "! Software component relations 35 | BEGIN OF ty_main, 36 | "!

Format Version

37 | "! Format version 38 | "! $required 39 | format_version TYPE zif_aff_types_v1=>ty_format_version, 40 | "!

Header

41 | "! Header 42 | "! $required 43 | header TYPE zif_aff_types_v1=>ty_header_60, 44 | "!

Access Permissions

45 | "! The software component grants access permission to the specified software components 46 | permissions TYPE ty_permissions, 47 | "!

Dependencies

48 | "! The software component depends on the specified software components 49 | dependencies TYPE ty_dependencies, 50 | END OF ty_main. 51 | 52 | ENDINTERFACE. 53 | -------------------------------------------------------------------------------- /file-formats/clas/README.md: -------------------------------------------------------------------------------- 1 | # Class File Format 2 | 3 | ## Object Type Information 4 | 5 | Object Type | Description | Group 6 | :--- | :--- | :--- 7 | CLAS | Class | Source Code Library 8 | 9 | ## File Structure 10 | 11 | The files correspond to the tabs in ABAP Development Tools, enriched with metadata and translation relevant texts. 12 | 13 | File | Cardinality | Definition | Schema | Example 14 | :--- | :--- | :--- | :--- | :--- 15 | `.clas.json` | 1 | [`zif_aff_clas_v1.intf.abap`](./type/zif_aff_clas_v1.intf.abap) | [`clas-v1.json`](./clas-v1.json) | [`z_aff_example_clas.clas.json`](./examples/z_aff_example_clas.clas.json) 16 | `.clas.abap` | 1 | [ABAP](https://help.sap.com/doc/abapdocu_cp_index_htm/CLOUD/en-US/index.htm?file=abapclass.htm) | - | [`z_aff_example_clas.clas.abap`](./examples/z_aff_example_clas.clas.abap) 17 | `.clas.definitions.abap` | 0...1 | | - | [`z_aff_example_clas.clas.definitions.abap`](./examples/z_aff_example_clas.clas.definitions.abap) 18 | `.clas.implementations.abap` | 0...1 | | - | [`z_aff_example_clas.clas.implementations.abap`](./examples/z_aff_example_clas.clas.implementations.abap) 19 | `.clas.macros.abap` | 0...1 | | - | [`z_aff_example_clas.clas.macros.abap`](./examples/z_aff_example_clas.clas.macros.abap) 20 | `.clas.testclasses.abap` | 0...1 | | - | [`z_aff_example_clas.clas.testclasses.abap`](./examples/z_aff_example_clas.clas.testclasses.abap) 21 | `.clas.texts..properties` | 0...n | [Text Elements](https://help.sap.com/viewer/c238d694b825421f940829321ffa326a/7.40.19/en-US/4ec6cf916e391014adc9fffe4e204223.html) | - | [`z_aff_example_clas.clas.texts.en.properties`](./examples/z_aff_example_clas.clas.texts.en.properties) 22 | 23 | 24 | Some classes store local types in only one include. 25 | These classes do not provide includes for class-relevant local types, local types and macros. 26 | In this case, local classes are stored in the file `z_aff_example_clas.clas.locals.abap`. 27 | -------------------------------------------------------------------------------- /file-formats/edcc/examples/z_aff_example_edcc.edcc.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Sample Consistency Scenario", 5 | "originalLanguage": "en", 6 | "abapLanguageVersion": "cloudDevelopment" 7 | }, 8 | "generalInformation": { 9 | "countryCode": "MX" 10 | }, 11 | "representationTypes": [ 12 | { 13 | "name": "EDOCUMENT" 14 | }, 15 | { 16 | "name": "TAXAUTHDOC" 17 | } 18 | ], 19 | "comparisonTypesAndEvents": { 20 | "comparisonTypes": [ 21 | { 22 | "name": "EDOCv/sTAXAUTH", 23 | "description": "example", 24 | "positionNumber": "1", 25 | "implementingClass": "CL_EXAMPLE", 26 | "dataSource": "CL_CDS_EXAMPLE", 27 | "checks": { 28 | "existenceCheck": { 29 | "checkId": "EXIST", 30 | "fieldName": "EXAMPLE", 31 | "fieldValue": "VAL", 32 | "resultProcess": "EXAMPLERES" 33 | } 34 | }, 35 | "representationTypes": [ 36 | { 37 | "name": "EDOCUMENT" 38 | }, 39 | { 40 | "name": "TAXAUTHDOC" 41 | } 42 | ] 43 | } 44 | ], 45 | "events": [ 46 | { 47 | "name": "EDOC_SUBMIT", 48 | "comparisonTypesAndChecks": [ 49 | { 50 | "comparisonType": "EDOCv/sTAXAUTH", 51 | "checkId": "EXIST" 52 | } 53 | ], 54 | "checkRelevance": [ 55 | { 56 | "comparisonType": "EDOCv/sTAXAUTH", 57 | "checkId": "EXIST", 58 | "relevance": "unchanged" 59 | } 60 | ] 61 | } 62 | ], 63 | "inconsistencyCategories": [ 64 | { 65 | "name": "GROUPRESULT", 66 | "description": "example", 67 | "resultProcesses": [ 68 | { 69 | "name": "EXAMPLERES" 70 | } 71 | ] 72 | } 73 | ] 74 | } 75 | } 76 | -------------------------------------------------------------------------------- /file-formats/uist/type/zif_aff_uist_v1.intf.abap: -------------------------------------------------------------------------------- 1 | INTERFACE zif_aff_uist_v1 2 | PUBLIC. 3 | 4 | TYPES: 5 | "!

General Information

6 | "! General information 7 | BEGIN OF ty_general_information, 8 | "!

Title on Launchpad

9 | "! Title on SAP Fiori launchpad 10 | "! $required 11 | title TYPE zif_aff_types_v1=>ty_description_100, 12 | "!

Sort Priority

13 | "! Sort priority 14 | "! $minimum: -9999.99999 15 | "! $maximum: 9999.99999 16 | sort_priority TYPE p LENGTH 5 DECIMALS 5, 17 | "!

Merge ID

18 | "! Merge ID 19 | merge_id TYPE c LENGTH 35, 20 | END OF ty_general_information. 21 | 22 | TYPES: 23 | "!

Launchpad Page Template

24 | "! Launchpad page template 25 | BEGIN OF ty_page, 26 | "!

Name

27 | "! Name of the page template 28 | "! $required 29 | name TYPE c LENGTH 35, 30 | END OF ty_page, 31 | 32 | ty_pages TYPE STANDARD TABLE OF ty_page WITH KEY name. 33 | 34 | TYPES: 35 | "!

Launchpad Space Template

36 | "! Launchpad space template 37 | BEGIN OF ty_main, 38 | "!

Format Version

39 | "! Format version 40 | "! $required 41 | format_version TYPE zif_aff_types_v1=>ty_format_version, 42 | 43 | "!

Header

44 | "! Header 45 | "! $required 46 | header TYPE zif_aff_types_v1=>ty_header_100_cloud, 47 | 48 | "!

General Information

49 | "! General information 50 | "! $required 51 | general_information TYPE ty_general_information, 52 | 53 | "!

Launchpad Page Templates

54 | "! Assigned launchpad page templates 55 | pages TYPE ty_pages, 56 | END OF ty_main. 57 | ENDINTERFACE. 58 | -------------------------------------------------------------------------------- /file-formats/intm/examples/z_aff_example_intm.intm.json: -------------------------------------------------------------------------------- 1 | { 2 | "formatVersion": "1", 3 | "header": { 4 | "description": "Intelligent Scenario Model via ADT", 5 | "originalLanguage": "en" 6 | }, 7 | "generalInformation": { 8 | "modelName": "RM_ADT_IMP_002_MOD", 9 | "modelType": "SAPGENAI", 10 | "intelligentScenario": "RM_ADT_IMP_002", 11 | "modellingContextId": "F02813D0CE0DCE409AEF358CA789F860", 12 | "adapterId": "SAPGENAI.Default", 13 | "nativeModelType": "SAPGENAI.Default", 14 | "state": "Published", 15 | "executableId": "azure-openai", 16 | "llmName": "gpt-4", 17 | "llmVersion": "turbo-2024-04-09" 18 | }, 19 | "modelPromptTemplates": [ 20 | { 21 | "promptTemplateName": "SYSTEM_PROMPT", 22 | "promptTemplateDescription": "System prompt", 23 | "prompt": "You are a sales executive who is responsible for reaching out to customers for confirming or declining their orders. Evaluate the size of the delivery vehicle based on the number of items. Calculate the distance between the billing and delivery location in kilometers. \r\n\r\nThe subject of email should be of format \r\nThe body of email should be of format: \"\"SO contains to be delivered to . And will be delivered via a vehicle. \r\nIF > 100 kms THEN include a message about potential delivery delays ELSE congratulate on being eligible for one day delivery", 24 | "isVisible": true 25 | }, 26 | { 27 | "promptTemplateName": "USER_PROMPT", 28 | "promptTemplateDescription": "User prompt", 29 | "prompt": "Build a confirmation mail for a sales order containing {ISLM_Items} where the items are categorized for example pencil and paper will be stationary, printer and mouse will be electronics. The source address contains {ISLM_Source} and the delivery address is in {ISLM_Destination}.", 30 | "isVisible": true 31 | } 32 | ] 33 | } 34 | -------------------------------------------------------------------------------- /file-formats/apic/apic-v1.json: -------------------------------------------------------------------------------- 1 | { 2 | "$comment": "This file is autogenerated, do not edit manually, see https://github.com/SAP/abap-file-formats for more information.", 3 | "$schema": "https://json-schema.org/draft/2020-12/schema", 4 | "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/apic/apic-v1.json", 5 | "title": "API Catalog", 6 | "description": "API catalog", 7 | "type": "object", 8 | "properties": { 9 | "formatVersion": { 10 | "title": "ABAP File Format Version", 11 | "description": "The ABAP file format version", 12 | "type": "string", 13 | "const": "1" 14 | }, 15 | "header": { 16 | "title": "Header", 17 | "description": "Header", 18 | "type": "object", 19 | "properties": { 20 | "description": { 21 | "title": "Description", 22 | "description": "Description of the ABAP object", 23 | "type": "string", 24 | "maxLength": 60 25 | }, 26 | "originalLanguage": { 27 | "title": "Original Language", 28 | "description": "Original language of the ABAP object", 29 | "type": "string", 30 | "minLength": 2 31 | }, 32 | "abapLanguageVersion": { 33 | "title": "ABAP Language Version", 34 | "description": "ABAP language version", 35 | "type": "string", 36 | "enum": [ 37 | "standard", 38 | "cloudDevelopment" 39 | ], 40 | "enumTitles": [ 41 | "Standard", 42 | "ABAP Cloud Development" 43 | ], 44 | "enumDescriptions": [ 45 | "Standard", 46 | "ABAP cloud development" 47 | ], 48 | "default": "standard" 49 | } 50 | }, 51 | "additionalProperties": false, 52 | "required": [ 53 | "description", 54 | "originalLanguage" 55 | ] 56 | } 57 | }, 58 | "additionalProperties": false, 59 | "required": [ 60 | "formatVersion", 61 | "header" 62 | ] 63 | } 64 | -------------------------------------------------------------------------------- /file-formats/bgqc/bgqc-v1.json: -------------------------------------------------------------------------------- 1 | { 2 | "$comment": "This file is autogenerated, do not edit manually, see https://github.com/SAP/abap-file-formats for more information.", 3 | "$schema": "https://json-schema.org/draft/2020-12/schema", 4 | "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/bgqc/bgqc-v1.json", 5 | "title": "Background Processing Context", 6 | "description": "Background Processing Context", 7 | "type": "object", 8 | "properties": { 9 | "formatVersion": { 10 | "title": "Format Version", 11 | "description": "Format version", 12 | "type": "string", 13 | "const": "1" 14 | }, 15 | "header": { 16 | "title": "Header", 17 | "description": "Header", 18 | "type": "object", 19 | "properties": { 20 | "description": { 21 | "title": "Description", 22 | "description": "Description of the ABAP object", 23 | "type": "string", 24 | "maxLength": 60 25 | }, 26 | "originalLanguage": { 27 | "title": "Original Language", 28 | "description": "Original language of the ABAP object", 29 | "type": "string", 30 | "minLength": 2 31 | }, 32 | "abapLanguageVersion": { 33 | "title": "ABAP Language Version", 34 | "description": "ABAP language version", 35 | "type": "string", 36 | "enum": [ 37 | "standard", 38 | "cloudDevelopment" 39 | ], 40 | "enumTitles": [ 41 | "Standard", 42 | "ABAP Cloud Development" 43 | ], 44 | "enumDescriptions": [ 45 | "Standard", 46 | "ABAP cloud development" 47 | ], 48 | "default": "standard" 49 | } 50 | }, 51 | "additionalProperties": false, 52 | "required": [ 53 | "description", 54 | "originalLanguage" 55 | ] 56 | } 57 | }, 58 | "additionalProperties": false, 59 | "required": [ 60 | "formatVersion", 61 | "header" 62 | ] 63 | } 64 | -------------------------------------------------------------------------------- /file-formats/dteb/dteb-v1.json: -------------------------------------------------------------------------------- 1 | { 2 | "$comment": "This file is autogenerated, do not edit manually, see https://github.com/SAP/abap-file-formats for more information.", 3 | "$schema": "https://json-schema.org/draft/2020-12/schema", 4 | "$id": "https://github.com/SAP/abap-file-formats/blob/main/file-formats/dteb/dteb-v1.json", 5 | "title": "CDS Entity Buffer", 6 | "description": "CDS entity buffer", 7 | "type": "object", 8 | "properties": { 9 | "formatVersion": { 10 | "title": "ABAP File Format Version", 11 | "description": "The ABAP file format version", 12 | "type": "string", 13 | "const": "1" 14 | }, 15 | "header": { 16 | "title": "Header", 17 | "description": "Header", 18 | "type": "object", 19 | "properties": { 20 | "description": { 21 | "title": "Description", 22 | "description": "Description of the ABAP object", 23 | "type": "string", 24 | "maxLength": 60 25 | }, 26 | "originalLanguage": { 27 | "title": "Original Language", 28 | "description": "Original language of the ABAP object", 29 | "type": "string", 30 | "minLength": 2 31 | }, 32 | "abapLanguageVersion": { 33 | "title": "ABAP Language Version", 34 | "description": "ABAP language version", 35 | "type": "string", 36 | "enum": [ 37 | "standard", 38 | "cloudDevelopment" 39 | ], 40 | "enumTitles": [ 41 | "Standard", 42 | "ABAP Cloud Development" 43 | ], 44 | "enumDescriptions": [ 45 | "Standard", 46 | "ABAP cloud development" 47 | ], 48 | "default": "standard" 49 | } 50 | }, 51 | "additionalProperties": false, 52 | "required": [ 53 | "description", 54 | "originalLanguage" 55 | ] 56 | } 57 | }, 58 | "additionalProperties": false, 59 | "required": [ 60 | "formatVersion", 61 | "header" 62 | ] 63 | } 64 | --------------------------------------------------------------------------------