////////////////////////////////////////////////////////////////////////
// This CDS view provides the filter values for the ADT filter "API"
////////////////////////////////////////////////////////////////////////
// To introduce new filter values, do the following:
// (1) Enhance message class ARS_RELEASE_CONTRACT by a new message:
// - number: filter value ID used in the domain described below
// - text: filter value name
// - long text: filter value documentation (use plain text only)
// - EXAMPLE: 008 | MANAGE_CONFIGURATION_CONTENT
// (2) Enhance domain ARS_ADT_API_FILTER by a new fixed value:
// - value: number of the message described above
// - descripion: filter value description (capitalized)
// - EXAMPLE: 008 | Manage Configuration Content
// (3) Enhance this CDS view by a new UNION path:
// union all select from ARS_RUNTIME_API_STATE as api
// {
// cast(api.sub_object_type as abap.char(20)) as object_type,
// cast(api.sub_object_name as abap.char(120)) as object_key,
// api.object_type as tadir_object,
// api.object_name as tadir_obj_name,
// cast('MANAGE_CONFIGURATION_CONTENT' as abap.char(30) ) as filter_value,
// cast( api.release_state as abap.char(184) ) as state
// }
// where
// api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C3'
// and api.release_state = 'RELEASED'
////////////////////////////////////////////////////////////////////////
@AbapCatalog.sqlViewName: 'ARS_ADT_API_FLTR'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'ADT API Filter'
define view ARS_ADT_API_FILTER
as
// C0, Use in Key User Apps, Released (including Custom Field Registry)
select from ARS_APIS_RELEASED_FOR_C0 as api
{
api.object_type,
api.object_key,
api.tadir_object,
api.tadir_obj_name,
cast( 'EXTEND_IN_KEY_USER_APPS' as abap.char(30) ) as filter_value,
api.state
}
where
api.state = 'RELEASED'
// C0, Use in Key User Apps, Deprecated (including Custom Field Registry)
union all select from ARS_APIS_RELEASED_FOR_C0 as api
{
api.object_type,
api.object_key,
api.tadir_object,
api.tadir_obj_name,
cast('DEPRECATED_FOR_KEY_USER_EXTNSN' as abap.char(30) ) as filter_value,
api.state
}
where
api.state = 'DEPRECATED'
// C0, Use in Cloud Development, Released
union all select from ARS_RUNTIME_API_STATE as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('EXTEND_IN_CLOUD_DEVELOPMENT' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C0'
and api.use_in_sap_cloud_platform = #ABAP_BOOLEAN.'X'
and api.release_state = 'RELEASED'
// C0, Use in Cloud Development, Deprecated
union all select from ars_w_api_state as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('DEPRECATED_FOR_CLOUD_DV_EXTNSN' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C0'
and api.use_in_sap_cloud_platform = #ABAP_BOOLEAN.'X'
and api.release_state = 'DEPRECATED'
// C1, Use in Key User Apps, Released
union all select from ARS_RUNTIME_API_STATE as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('USE_IN_KEY_USER_APPS' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C1'
and api.use_in_key_user_apps = #ABAP_BOOLEAN.'X'
and api.release_state = 'RELEASED'
// C1, Use in Key User Apps, Deprecated
union all select from ars_w_api_state as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('DEPRECATED_FOR_KEY_USER_APPS' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C1'
and api.use_in_key_user_apps = #ABAP_BOOLEAN.'X'
and api.release_state = 'DEPRECATED'
// C1, Use in Cloud Development, Released
union all select from ARS_RUNTIME_API_STATE as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('USE_IN_CLOUD_DEVELOPMENT' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C1'
and api.use_in_sap_cloud_platform = #ABAP_BOOLEAN.'X'
and api.release_state = 'RELEASED'
// C1, Use in Cloud Development, Deprecated
union all select from ars_w_api_state as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('DEPRECATED_FOR_CLOUD_DVLPMNT' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C1'
and api.use_in_sap_cloud_platform = #ABAP_BOOLEAN.'X'
and api.release_state = 'DEPRECATED'
// C1, Use in Cloud Development, Released, Active
union all select from ARS_ADT_ACTIVE_APIS as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('USE_IN_CLOUD_DVLPMNT_ACTIVE' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C1'
and api.use_in_sap_cloud_platform = #ABAP_BOOLEAN.'X'
and api.release_state = 'RELEASED'
// C1, Use in Cloud Development, Deprecated, Active
union all select from ARS_ADT_ACTIVE_APIS as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('DEPRECATED_FOR_CLD_DEV_ACTIVE' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C1'
and api.use_in_sap_cloud_platform = #ABAP_BOOLEAN.'X'
and api.release_state = 'DEPRECATED'
// C1, Use in Key User Apps, Not to Be Released, with Successor
union all select from ars_w_api_state as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('HAS_KEY_USER_APPS_SUCCESSOR' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C1'
and api.use_in_key_user_apps = #ABAP_BOOLEAN.'X'
and api.successor_classification <> #ARS_SUCCESSOR_CLASSIFICATION.'0'
and api.successor_classification <> '' // legacy
and api.release_state = 'NOT_TO_BE_RELEASED'
// C1, Use in Cloud Development, Not to Be Released, with Successor
union all select from ars_w_api_state as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('HAS_CLOUD_DVLPMNT_SUCCESSOR' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C1'
and api.use_in_sap_cloud_platform = #ABAP_BOOLEAN.'X'
and api.successor_classification <> #ARS_SUCCESSOR_CLASSIFICATION.'0'
and api.successor_classification <> '' // legacy
and api.release_state = 'NOT_TO_BE_RELEASED'
// C2, Use as Remote API, Released
union all select from ARS_RUNTIME_API_STATE as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('USE_AS_REMOTE_API' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C2'
and api.release_state = 'RELEASED'
// C2, Use as Remote API, Deprecated
union all select from ars_w_api_state as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('DEPRECATED_AS_REMOTE_API' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C2'
and api.release_state = 'DEPRECATED'
// C3, Manage Configuration Content, Released
union all select from ARS_RUNTIME_API_STATE as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('MANAGE_CONFIGURATION_CONTENT' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C3'
and api.release_state = 'RELEASED'
// C3, Manage Configuration Content, Deprecated
union all select from ars_w_api_state as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('DEPRECATED_FOR_CONFIGURATION' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C3'
and api.release_state = 'DEPRECATED'
// C4, Use in ABAP-Managed Database Procedures, Released
union all select from ARS_RUNTIME_API_STATE as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('USE_IN_AMDP' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C4'
and api.release_state = 'RELEASED'
// C4, Use in ABAP-Managed Database Procedures, Deprecated
union all select from ars_w_api_state as api
{
cast(api.sub_object_type as abap.char(20)) as object_type,
cast(api.sub_object_name as abap.char(120)) as object_key,
api.object_type as tadir_object,
api.object_name as tadir_obj_name,
cast('DEPRECATED_FOR_AMDP' as abap.char(30) ) as filter_value,
cast( api.release_state as abap.char(184) ) as state
}
where
api.compatibility_contract = #ARS_RELEASE_CONTRACT.'C4'
and api.release_state = 'DEPRECATED'