I_APIsWithCloudDevSuccessor
APIs with Cloud Development Successors
I_APIsWithCloudDevSuccessor is a CDS View that provides data about "APIs with Cloud Development Successors" in SAP S/4HANA. It reads from 4 data sources (ARS_RUNTIME_API_STATE, ars_w_api_state, ars_w_api_state, ARS_API_SUCCESSORS_FOR_C1_SCP) and exposes 23 fields with key fields PredecessorObjectType, PredecessorObjectName, PredecessorObjectDirectoryType, PredecessorObjectDirectoryName, SuccessorObjectType. It has 1 association to related views. Part of development package S_ARS_PUBLIC.
Data Sources (4)
| Source | Alias | Join Type |
|---|---|---|
| ARS_RUNTIME_API_STATE | cloud_dev_successor | inner |
| ars_w_api_state | predecessor | from |
| ars_w_api_state | predecessor | union |
| ARS_API_SUCCESSORS_FOR_C1_SCP | successor | inner |
Associations (1)
| Cardinality | Target | Alias | Condition |
|---|---|---|---|
| [0..1] | v_ars_release_state | _text | _text.state = predecessor.release_state |
Annotations (3)
| Name | Value | Level | Field |
|---|---|---|---|
| AccessControl.authorizationCheck | #NOT_ALLOWED | view | |
| Metadata.ignorePropagatedAnnotations | true | view | |
| EndUserText.label | APIs with Cloud Development Successors | view |
Fields (23)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | PredecessorObjectType | ars_w_api_state | sub_object_type | |
| KEY | PredecessorObjectName | ars_w_api_state | sub_object_name | |
| KEY | PredecessorObjectDirectoryType | ars_w_api_state | object_type | |
| KEY | PredecessorObjectDirectoryName | ars_w_api_state | object_name | |
| KEY | SuccessorObjectType | ARS_API_SUCCESSORS_FOR_C1_SCP | successor_object_type | |
| KEY | SuccessorObjectName | ARS_API_SUCCESSORS_FOR_C1_SCP | successor_object_key | |
| KEY | SuccessorObjectDirectoryType | ARS_API_SUCCESSORS_FOR_C1_SCP | successor_tadir_object | |
| KEY | SuccessorObjectDirectoryName | ARS_API_SUCCESSORS_FOR_C1_SCP | successor_tadir_obj_name | |
| SuccessorConceptName | ars_w_api_state | successor_concept_name | ||
| SuccessorCategory | ||||
| PredecessorReleaseState | ars_w_api_state | release_state | ||
| sub_object_typeasPredecessorObjectType | ||||
| KEY | PredecessorObjectName | ars_w_api_state | sub_object_name | |
| KEY | PredecessorObjectDirectoryType | ars_w_api_state | object_type | |
| KEY | PredecessorObjectDirectoryName | ars_w_api_state | object_name | |
| KEY | SuccessorObjectType | |||
| KEY | SuccessorObjectName | |||
| KEY | SuccessorObjectDirectoryType | |||
| KEY | SuccessorObjectDirectoryName | |||
| SuccessorConceptName | ars_w_api_state | successor_concept_name | ||
| SuccessorCategory | ||||
| PredecessorReleaseState | ars_w_api_state | release_state | ||
| PredecessorReleaseStateDescr | _text | description |
@AccessControl.authorizationCheck: #NOT_ALLOWED
@Metadata.ignorePropagatedAnnotations: true
@EndUserText.label: 'APIs with Cloud Development Successors'
define view entity I_APIsWithCloudDevSuccessor
// Option 1: Predecessor has one or more successors for cloud development
as select from ars_w_api_state as predecessor
inner join ARS_API_SUCCESSORS_FOR_C1_SCP as successor on predecessor.object_type = successor.tadir_object
and predecessor.object_name = successor.tadir_obj_name
and predecessor.sub_object_type = successor.object_type
and predecessor.sub_object_name = successor.object_key
inner join ARS_RUNTIME_API_STATE as cloud_dev_successor on cloud_dev_successor.object_type = successor.successor_tadir_object
and cloud_dev_successor.object_name = successor.successor_tadir_obj_name
and cloud_dev_successor.sub_object_type = successor.successor_object_type
and cloud_dev_successor.sub_object_name = successor.successor_object_key
and cloud_dev_successor.compatibility_contract = 'C1' // System-internal use
and cloud_dev_successor.use_in_sap_cloud_platform = 'X' // Use in cloud development
and cloud_dev_successor.release_state = 'RELEASED'
association [0..1] to v_ars_release_state as _text on _text.state = predecessor.release_state
{
key predecessor.sub_object_type as PredecessorObjectType,
key predecessor.sub_object_name as PredecessorObjectName,
key predecessor.object_type as PredecessorObjectDirectoryType,
key predecessor.object_name as PredecessorObjectDirectoryName,
key successor.successor_object_type as SuccessorObjectType,
key successor.successor_object_key as SuccessorObjectName,
key successor.successor_tadir_object as SuccessorObjectDirectoryType,
key successor.successor_tadir_obj_name as SuccessorObjectDirectoryName,
predecessor.successor_concept_name as SuccessorConceptName,
cast('O' as ars_successor_category preserving type) as SuccessorCategory, // Object
predecessor.release_state as PredecessorReleaseState,
_text.description as PredecessorReleaseStateDescr
}
where
predecessor.compatibility_contract = 'C1' // System-internal use
and predecessor.use_in_sap_cloud_platform = 'X' // Use in cloud development
and(
predecessor.successor_classification = '1' // One object
or predecessor.successor_classification = 'N' // Multiple objects
)
// Option 2: Predecessor was replaced by a concept
union select from ars_w_api_state as predecessor
association [0..1] to v_ars_release_state as _text on _text.state = predecessor.release_state
{
key predecessor.sub_object_type as PredecessorObjectType,
key predecessor.sub_object_name as PredecessorObjectName,
key predecessor.object_type as PredecessorObjectDirectoryType,
key predecessor.object_name as PredecessorObjectDirectoryName,
key '' as SuccessorObjectType,
key '' as SuccessorObjectName,
key '' as SuccessorObjectDirectoryType,
key '' as SuccessorObjectDirectoryName,
predecessor.successor_concept_name as SuccessorConceptName,
cast('C' as ars_successor_category preserving type) as SuccessorCategory, // Concept
predecessor.release_state as PredecessorReleaseState,
_text.description as PredecessorReleaseStateDescr
}
where
predecessor.compatibility_contract = 'C1' // System-internal use
and predecessor.use_in_sap_cloud_platform = 'X' // Use in cloud development
and predecessor.successor_classification = 'X' // Concept
Learn More
- What Is a CDS View in SAP S/4HANA?
- Types of CDS Views: Basic, Composite, Consumption, and Transactional
- SAP Tables vs CDS Views — Key Differences
- Understanding Data Lineage in SAP S/4HANA
- VDM (Virtual Data Model) in SAP S/4HANA Explained
- CDS View Annotations — A Complete Guide
- CDS View Field Mapping and Associations
- Understanding the SAP S/4HANA Data Model
- CDS View Extensions and Custom Fields in SAP S/4HANA
- Released APIs and Stability Contracts in SAP S/4HANA