{"ref":"artifact:xexer-cds-field-mapping","page":"/artifacts/xexer-cds-field-mapping","json":"/artifacts/xexer-cds-field-mapping.json","generated":"2026-10-26","drafted_with_ai":true,"entity":{"id":"xexer-cds-field-mapping","name":"CDS Field Mapping","artifact_type":"web-tool","ecosystem":"abap","domain":"data-and-persistence","origin_ring":"independent","description":{"one_line":"Looks up which Core Data Services entity and field a classic dictionary table and field map to, filterable by whether the target CDS view is released.","short":"Maps classic dictionary tables and fields to CDS entities and fields","what_it_solves":"A prototype mapping list: give it a table and a field and it returns the new field name, or go the other way from the Core Data Services name back to the table. Its README names the [Cloudification Repository](artifact:sap-abap-atc-cr-cv-s4hc) as the source the mapping is to come from. The repository behind the page carries the extractor class, which you copy and run in your own system, and the finished mapping file beside an unofficial one for Core Data Services that are not released; the page itself filters by release state, as All, Not released or Released.","when_not_to_use":"Marked BETA and called a first prototype on its own page, which names where it is wrong: when fields are mapped with CAST, CASE, ABS and other CDS functions there may still be errors in the fields, so a mapping that goes through one of those needs checking against the view it came from."},"links":{"homepage":"https://software-heroes.com/en/abap-cds-field-mapping","repo":"https://github.com/Xexer/abap-cds-field-mapping"},"source_available":true,"provides":[{"capability":"capability:data-modelling","what_it_does":"Maps a classic dictionary table and field to the Core Data Services entity and field that replaced it, filterable by release state.","sources":[{"url":"https://software-heroes.com/en/abap-cds-field-mapping","title":"Software-Heroes — CDS Field Mapping","checked":"2026-10-19","quote":"The first prototype for determining the field names for the old tables mapped to the new Core Data Services."},{"url":"https://github.com/Xexer/abap-cds-field-mapping","title":"Xexer/abap-cds-field-mapping — README, General","checked":"2026-10-19","quote":"This repo is a prototype for a mapping list to find for a table and field the new field name or the other way around."}]}],"provenance":{"discovered_via":[{"source":"source:software-heroes"}],"first_seen":"2026-09-16"},"history":[{"date":"2026-09-16","field":"entry","from":null,"to":"created","reason":"Entered from software-heroes.com's tools page; its data lives in a public GitHub repository the page links as 'Extract and further information', unlike its sibling tools here which are hosted only."},{"date":"2026-10-19","field":"description.what_it_solves","from":"https://github.com/SAP/abap-atc-cr-cv-s4hc","to":"artifact:sap-abap-atc-cr-cv-s4hc","reason":"SAP's Cloudification Repository is in the graph, so the README's source is named by its entry rather than by a URL none of this entry's sources gave. The README's sentence is \"Source will be the Cloudification Repository, where the mapping old table to new Core Data Services is listed.\", so the prose reports it as what the README names and not as how the mapping file is produced today: the file in the repository comes from an extractor class you copy and run in your own system. The CAST, CASE and ABS gap is attributed to the tool's page, which is where that sentence stands, rather than to the README."}],"drafted_with_ai":true,"maintainers":["actor:xexer"],"contributors":["actor:xexer"]},"effective_normative_relations":[],"readings":{"liveness":[{"label":"Maintenance","tier":"unknown","evidence":"no release data"},{"label":"Continuity","tier":"fair","evidence":"one contributor, personally owned"},{"label":"Repository","tier":"fair","evidence":"pushed 2025-05, 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":"poor","evidence":"none found in the tree"},{"label":"Docs","tier":"poor","evidence":"README 1 KB"},{"label":"Changelog","tier":"fair","evidence":"none in the repo"}],"reach":[{"value":null,"unit":"installs/week"},{"value":11,"unit":"watching"}]},"signals":{"crawled_at":"2026-10-25","npm":"not published under this name","stars":11,"forks":1,"open_issues":0,"archived":false,"pushed_at":"2025-05-21","license_spdx":null,"org_owned":false,"default_branch":"main","created_at":"2024-07-26T14:37:22Z","open_prs":0,"tree_truncated":false,"test_files":0,"workflows":0,"other_ci":false,"readme_bytes":744,"docs_files":0,"changelog":false,"license_file":false,"dts_files":0,"first_commit":"2024-07-26","last_commit":"2025-05-21","commits":20,"contributors":1,"readme_path":"README.md","readme_sha":"cfb95c547e3f4dac08f13d452e9a21ddbf20fa68","repo_read":"2026-10-25"},"edges":{"maintainers":[{"ref":"actor:xexer","name":"Xexer","json":"/actors/xexer.json"}],"contributors":[{"ref":"actor:xexer","name":"Xexer","json":"/actors/xexer.json"}],"explained_by":[],"alternative_to_this":[],"needed_by":[],"available_via":[],"parts":[],"add_ons":[],"answered_through_parts":[]}}