{"ref":"artifact:sap-samples-abap-platform-rap630","page":"/artifacts/sap-samples-abap-platform-rap630","json":"/artifacts/sap-samples-abap-platform-rap630.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"sap-samples-abap-platform-rap630","name":"SAP-samples/abap-platform-rap630","artifact_type":"sample","ecosystem":"abap","domain":"operations-and-runtime","use_as":"reference","origin_ring":"sap-official","description":{"one_line":"A hands-on workshop on developer extensibility with ABAP Cloud that generates a UI on the released business object I_BankTP, then extends its behaviour, its data model and its actions.","short":"Workshop on developer extensibility of released RAP business objects","what_it_solves":"Covers the two forms of developer extensibility ABAP Cloud allows: writing custom code against APIs SAP has released, and extending an existing RAP business object that SAP or a partner has delivered. The exercises generate a UI on the released business object I_BankTP without writing code, then extend its behaviour with validations, determinations and side effects, extend its data model with new fields, and add a custom action to those new fields. It runs on SAP BTP ABAP Environment or SAP S/4HANA Cloud Public Edition, and its extension project ships as a separate repository, SAP-samples/abap-platform-rap630-ext."},"links":{"repo":"https://github.com/SAP-samples/abap-platform-rap630"},"type_properties":{"form":{"value":"workshop","sources":[{"url":"https://github.com/SAP-samples/abap-platform-rap630","title":"SAP-samples/abap-platform-rap630 — README","checked":"2026-10-18","quote":"This repository contains the material for the RAP hands-on workshop called _RAP630 - Use ABAP Cloud for developer extensibility_ where _Developer Extensibility_ is used."}]}},"identity":{"license":"Apache-2.0"},"source_available":true,"demonstrates":["capability:abap-extensibility"],"maintainers":["actor:sap-samples"],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-13"},"contributors":["actor:ajinkyapatil8190","actor:anfisc","actor:btbernard","actor:carinetd","actor:danilok","actor:dusansacha","actor:harishb2018","actor:mervey45","actor:ronnypahlke"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"good","evidence":"9 contributors, org-owned"},{"label":"Repository","tier":"good","evidence":"pushed 2026-06, not archived"}],"compatibility":[{"label":"Declared for","tier":"fair","evidence":"nothing declared"},{"label":"Survived majors","tier":"unknown","evidence":"not read on ABAP: its lines run side by side"},{"label":"Maintainer's CI","tier":"fair","evidence":"no CI configured"}],"practice":[{"label":"Tests","tier":"fair","evidence":"none found in the tree"},{"label":"Docs","tier":"good","evidence":"README 9 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":48,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-26","npm":"not published under this name","stars":48,"forks":19,"open_issues":1,"archived":false,"pushed_at":"2026-06-03","license_spdx":"Apache-2.0","org_owned":true,"default_branch":"main","created_at":"2023-11-17T18:53:59Z","open_prs":0,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":8918,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2023-11-17","last_commit":"2026-06-02","commits":271,"contributors":9,"readme_path":"README.md","readme_sha":"ad2d2cb2c40e561fb8714acb079f6b0fb1c0d47c","repo_read":"2026-10-26"},"edges":{"maintainers":[{"ref":"actor:sap-samples","name":"SAP Samples","json":"/actors/sap-samples.json"}],"contributors":[{"ref":"actor:ajinkyapatil8190","name":"Ajinkya Patil","json":"/actors/ajinkyapatil8190.json"},{"ref":"actor:anfisc","name":"Andre Fischer","json":"/actors/anfisc.json"},{"ref":"actor:btbernard","name":"Brian Bernard","json":"/actors/btbernard.json"},{"ref":"actor:carinetd","name":"Carine Tchoutouo Djomo","json":"/actors/carinetd.json"},{"ref":"actor:danilok","name":"Danilo Yorinori","json":"/actors/danilok.json"},{"ref":"actor:dusansacha","name":"Dusan Sacha","json":"/actors/dusansacha.json"},{"ref":"actor:harishb2018","name":"harishb2018","json":"/actors/harishb2018.json"},{"ref":"actor:mervey45","name":"Merve Temel","json":"/actors/mervey45.json"},{"ref":"actor:ronnypahlke","name":"RonnyPahlke","json":"/actors/ronnypahlke.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}