{"ref":"artifact:sap-samples-teched2025-dt260","page":"/artifacts/sap-samples-teched2025-dt260","json":"/artifacts/sap-samples-teched2025-dt260.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"sap-samples-teched2025-dt260","name":"SAP-samples/teched2025-DT260","artifact_type":"sample","ecosystem":"abap","flavors":[{"key":"abap-cloud","source":{"url":"https://github.com/SAP-samples/teched2025-DT260","title":"SAP-samples/teched2025-DT260 — README","checked":"2026-09-13","quote":"In this session you will practice a clean core extensibility in SAP S/4HANA Cloud Private Edition. You will learn how to use ABAP Cloud and clean core extensibility principles to modernize your custom on-stack extensions and how to govern clean core development using the ABAP test cockpit (ATC)."}}],"use_as":"starting-point","domain":"operations-and-runtime","origin_ring":"sap-official","description":{"one_line":"A TechEd 2025 workshop that modernises a classic Flight Evaluation application to ABAP Cloud and governs the migration with the ABAP test cockpit, then generates a RAP-based SAP Fiori app on top.","short":"TechEd 2025 workshop modernising a classic app to ABAP Cloud","what_it_solves":"Working against a shared S4H backend, the exercises first run the ABAP test cockpit against the classic Flight Evaluation application, transform its logic to ABAP Cloud and move the converted objects into an ABAP Cloud package, then generate a RAP-based SAP Fiori app on top and extend it with a flight rating and a star-rating visualisation. A separate exercise applies the same ATC analysis to a Customer Dashboard application and uses the Cloudification Repository Viewer to understand the clean-core issues it reports."},"links":{"repo":"https://github.com/SAP-samples/teched2025-DT260"},"type_properties":{"form":{"value":"workshop","sources":[{"url":"https://github.com/SAP-samples/teched2025-DT260","title":"SAP-samples/teched2025-DT260 — README","checked":"2026-10-18","quote":"This repository contains the material for the SAP TechEd 2025 session **DT260 - Modernize classic extensions to clean core in Cloud ERP Private.**"}]}},"identity":{"license":"Apache-2.0"},"source_available":true,"demonstrates":["capability:abap-cloud-readiness"],"maintainers":["actor:sap-samples"],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-13"},"contributors":["actor:ajaysoreng","actor:anfisc","actor:carinetd","actor:ibraeuninger","actor:olgadolinskaja"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"good","evidence":"5 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 5 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":7,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-26","npm":"not published under this name","stars":7,"forks":7,"open_issues":0,"archived":false,"pushed_at":"2026-06-15","license_spdx":"Apache-2.0","org_owned":true,"default_branch":"main","created_at":"2025-08-07T11:51:31Z","open_prs":0,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":4703,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2025-08-07","last_commit":"2026-06-15","commits":299,"contributors":5,"readme_path":"README.md","readme_sha":"d6d03dc0804475cf12776030d3da5345a36a3472","repo_read":"2026-10-26"},"edges":{"maintainers":[{"ref":"actor:sap-samples","name":"SAP Samples","json":"/actors/sap-samples.json"}],"contributors":[{"ref":"actor:ajaysoreng","name":"Ajay Soreng","json":"/actors/ajaysoreng.json"},{"ref":"actor:anfisc","name":"Andre Fischer","json":"/actors/anfisc.json"},{"ref":"actor:carinetd","name":"Carine Tchoutouo Djomo","json":"/actors/carinetd.json"},{"ref":"actor:ibraeuninger","name":"Ingo Bräuninger","json":"/actors/ibraeuninger.json"},{"ref":"actor:olgadolinskaja","name":"olgadolinskaja","json":"/actors/olgadolinskaja.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}