{"ref":"artifact:sap-samples-xsc-cap-migration","page":"/artifacts/sap-samples-xsc-cap-migration","json":"/artifacts/sap-samples-xsc-cap-migration.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"sap-samples-xsc-cap-migration","name":"xsc-cap-migration","artifact_type":"sample","ecosystem":"cap","domain":"operations-and-runtime","origin_ring":"sap-official","use_as":"reference","description":{"one_line":"A step-by-step guide to migrating an XS Classic application's database artefacts, packaged as a delivery unit or a package, to the Cloud Application Programming Model.","short":"Guide to migrating XS Classic database artefacts to CAP","what_it_solves":"Creates a dev space with the SAP HANA Application Migration extension in [SAP Business Application Studio](artifact:btp-business-application-studio) or SAP Build, connects it to the source system through the [Cloud Connector](artifact:sap-cloud-connector) and an SAP BTP destination, and converts XS Classic Repository database objects such as `.hdbcds`, `.hdbtable` and `.hdbview` files into CAP CDS models renamed for [SAP HANA Cloud](artifact:btp-hana-cloud) conventions. The wizard asks for a delivery unit or a package name, an XSC compatibility mode that decides whether calculation views keep their XS Classic behaviour, and a staged or non-staged migration, which differ in whether each external container and schema gets its own synonyms and grants. A generative-AI step then drafts a `service.cds`, a `service.js` and custom handlers under the CAP `srv/` layer from the `.xsodata`, `.xsjs` and `.xsjslib` files; the README restricts it to SAP Build plans, calls it experimental, and states the output is not guaranteed to be 100% runnable or semantically equivalent. The walkthrough uses the SHINE demo content packaged as the `HCO_DEMOCONTENT` delivery unit, names what the extension does not convert, `.hdbreptask` among it, and leaves the edits to roles, synonyms, role configurations and procedure SQL to be made by hand afterwards.","when_not_to_use":"Directed at single-tenant applications, which the guide states as its scope. Migration of the whole delivery unit or package fails if any source file has errors; the README gives JavaScript files containing unknown characters as its example."},"links":{"repo":"https://github.com/SAP-samples/xsc-cap-migration"},"identity":{"license":"Apache-2.0"},"source_available":true,"demonstrates":["capability:platform-migration"],"requires":[{"ref":"artifact:sap-cloud-connector","for":"reaching the on-premise XS Classic source database and the target SAP HANA Cloud subaccount, with one connection set up per side.","sources":[{"url":"https://github.com/SAP-samples/xsc-cap-migration","title":"SAP-samples/xsc-cap-migration — README, Step-1","checked":"2026-10-19","quote":"Install the [SAP Cloud Connector](https://tools.hana.ondemand.com/#cloud) on your local system."}]},{"ref":"artifact:btp-hana-cloud","for":"the database the generated CAP project targets, and the HDI container the migrated artefacts are bound to and deployed into.","sources":[{"url":"https://github.com/SAP-samples/xsc-cap-migration","title":"SAP-samples/xsc-cap-migration — README, Description","checked":"2026-10-19","quote":"The SAP HANA Application Migration extension enables users to migrate XS Classic applications packaged either as a Delivery Unit or as a  Package into SAP Cloud Application Programming Model (CAP) projects, targeting SAP HANA Cloud as the database."}]},{"ref":"artifact:btp-business-application-studio","for":"the dev space the SAP HANA Application Migration extension is installed into and the migration wizard is run from.","requirement":"conditional","condition":"SAP Business Application Studio is the chosen platform; the README also names SAP Build, which its service-layer conversion requires, and Visual Studio Code in vscode.md.","sources":[{"url":"https://github.com/SAP-samples/xsc-cap-migration","title":"SAP-samples/xsc-cap-migration — README, Step-3","checked":"2026-10-19","quote":"In the SAP BTP subaccount where you created the destination, establish a subscription to SAP Business Application Studio (BAS) or SAP Build."},{"url":"https://github.com/SAP-samples/xsc-cap-migration","title":"SAP-samples/xsc-cap-migration — README, Choose Your Development Platform","checked":"2026-10-19","quote":"The SAP HANA Application Migration extension supports two development platforms:"}]}],"maintainers":["actor:sap-samples"],"drafted_with_ai":true,"provenance":{"discovered_via":[{"source":"source:curator"}],"first_seen":"2026-09-14"},"contributors":["actor:ajinkyapatil8190","actor:arjith-p-j","actor:kesavanking","actor:lalithmanokar","actor:priyankashivakumar","actor:yashika-gulati"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"good","evidence":"8 contributors, org-owned"},{"label":"Repository","tier":"good","evidence":"pushed 2026-09, not archived"}],"compatibility":[{"label":"Declared for","tier":"fair","evidence":"nothing declared"},{"label":"Survived majors","tier":"unknown","evidence":"no release dates"},{"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 35 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":5,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","npm":"not published under this name","stars":5,"forks":6,"open_issues":2,"archived":false,"pushed_at":"2026-09-10","license_spdx":"Apache-2.0","org_owned":true,"default_branch":"main","created_at":"2024-07-01T10:52:09Z","open_prs":1,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":36015,"docs_files":0,"changelog":false,"license_file":true,"dts_files":0,"first_commit":"2024-07-01","last_commit":"2026-09-10","commits":95,"contributors":8,"readme_path":"README.md","readme_sha":"78f2d2bc43eb33549e484733552e45858ce8e508","repo_read":"2026-10-25"},"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:arjith-p-j","name":"arjith-p-j","json":"/actors/arjith-p-j.json"},{"ref":"actor:kesavanking","name":"Kesavan","json":"/actors/kesavanking.json"},{"ref":"actor:lalithmanokar","name":"LalithManokar","json":"/actors/lalithmanokar.json"},{"ref":"actor:priyankashivakumar","name":"Priyanka R S","json":"/actors/priyankashivakumar.json"},{"ref":"actor:yashika-gulati","name":"yashika-Gulati","json":"/actors/yashika-gulati.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}