EITV_EXP_TEMPL

DDL: EITV_EXP_TEMPL SQL: EIT_V_EXP_TEMPL Type: view

UI View for Export Templates

EITV_EXP_TEMPL is a CDS View that provides data about "UI View for Export Templates" in SAP S/4HANA. It reads from 2 data sources (ato_cols, EITV_EXP_TEMPL_LATEST_VER) and exposes 16 fields with key field template_id. It has 11 associations to related views.

Data Sources (2)

SourceAliasJoin Type
ato_cols Collection from
EITV_EXP_TEMPL_LATEST_VER Latest_Version inner

Associations (11)

CardinalityTargetAliasCondition
[1] ATOV_USER Changed_By_Description Changed_By_Description.name = $projection.last_changed_by
[1] ATOV_USER Created_By_Description Created_By_Description.name = Collection.created_by
[*] EITV_EXP_ACTION_STATUS_TEXT Status_Texts Status_Texts.code = status
[*] ATOV_TEXT_ACTION Action_Texts Action_Texts.code = action
[*] ATOV_TEXT_ACTION_STATUS Action_Status_Texts Action_Status_Texts.code = action_status
[*] EITV_EXP_TEMPL_ITEMS Items Items.template_id = Collection.collection_id
[*] EITV_EXP_ITEMS_ADD Items_to_add Items_to_add.template_id = Collection.collection_id
[0..1] ATOV_LOG Latest_Log Latest_Log.collection_id = $projection.template_id and Latest_Log.collection_version = $projection.latest_version and Latest_Log.ballog_handle = $projection.latest_ballog_handle
[*] ATOV_LOG Log Log.collection_id = $projection.template_id and Log.collection_version = $projection.latest_version and Log.is_outdated = ''
[1] ATOV_COL_VER_COUNT_LOGS Log_Counter Log_Counter.collection_id = $projection.template_id and Log_Counter.collection_version = $projection.latest_version and Log_Counter.is_outdated = ''
[0..*] EITV_EXP_FILES Files Files.template_id = Collection.collection_id

Annotations (5)

NameValueLevelField
AbapCatalog.sqlViewName EIT_V_EXP_TEMPL view
ClientHandling.type #INHERITED view
ClientHandling.algorithm #SESSION_VARIABLE view
AccessControl.authorizationCheck #NOT_REQUIRED view
EndUserText.label UI View for Export Templates view

Fields (16)

KeyFieldSource TableSource FieldDescription
KEY template_id ato_cols collection_id
created_by ato_cols created_by
created_at ato_cols created_at
status EITV_EXP_TEMPL_LATEST_VER status
action EITV_EXP_TEMPL_LATEST_VER action
_Items Items
_Changed_By_Description Changed_By_Description
_Created_By_Description Created_By_Description
_Status_Texts Status_Texts
_Action_Status_Texts Action_Status_Texts
_Action_Text Action_Texts
_Items_to_add Items_to_add
_Latest_Log Latest_Log
_Log Log
_Log_Counter Log_Counter
_Files Files
@AbapCatalog.sqlViewName: 'EIT_V_EXP_TEMPL'
@ClientHandling:{ type: #INHERITED, algorithm: #SESSION_VARIABLE }
@AccessControl.authorizationCheck: #NOT_REQUIRED
@EndUserText.label: 'UI View for Export Templates'
define view EITV_EXP_TEMPL as select from ato_cols as Collection

  inner join EITV_EXP_TEMPL_LATEST_VER as Latest_Version
    on Collection.collection_id = Latest_Version.collection_id

  association [1] to ATOV_USER as Changed_By_Description on Changed_By_Description.name = $projection.last_changed_by

  association [1] to ATOV_USER as Created_By_Description on Created_By_Description.name = Collection.created_by
  
  // domain has the wrong name; it is the template status

  association [*] to EITV_EXP_ACTION_STATUS_TEXT as Status_Texts                 on  Status_Texts.code = status
  
  association [*] to ATOV_TEXT_ACTION            as Action_Texts                 on  Action_Texts.code = action
    
  association [*] to ATOV_TEXT_ACTION_STATUS     as Action_Status_Texts          on  Action_Status_Texts.code = action_status
  
  association [*] to EITV_EXP_TEMPL_ITEMS        as Items on Items.template_id = Collection.collection_id
  
  association [*] to EITV_EXP_ITEMS_ADD          as Items_to_add on Items_to_add.template_id = Collection.collection_id
  
  association [0..1]    to ATOV_LOG                as Latest_Log                    on  Latest_Log.collection_id      = $projection.template_id
                                                                                    and Latest_Log.collection_version = $projection.latest_version
                                                                                    and Latest_Log.ballog_handle      = $projection.latest_ballog_handle
  


  association [*]    to ATOV_LOG                   as  Log                          on  Log.collection_id      = $projection.template_id
                                                                                    and Log.collection_version = $projection.latest_version
                                                                                    and Log.is_outdated        = ''                                                                                    


  association [1]    to ATOV_COL_VER_COUNT_LOGS    as Log_Counter      on  Log_Counter.collection_id      = $projection.template_id
                                                                        and Log_Counter.collection_version = $projection.latest_version
                                                                        and Log_Counter.is_outdated        = ''



 association  [0..*] to EITV_EXP_FILES as Files on Files.template_id = Collection.collection_id

 {
  key Collection.collection_id           as template_id,
      Collection.created_by              as created_by,
      Collection.created_at              as created_at,
      // even assignment and removes will update Collection Change Date+BY  

      case when Collection.last_changed_at > Latest_Version.last_changed_at 
           then Collection.last_changed_at
           else Latest_Version.last_changed_at
      end                                as last_changed_at,
      case when Collection.last_changed_at > Latest_Version.last_changed_at 
           then Collection.last_changed_by
           else Latest_Version.last_changed_by
      end                                as last_changed_by,     
      Latest_Version.collection_version  as latest_version,
      Latest_Version.latest_ballog_handle as latest_ballog_handle,
      Latest_Version.status               as status,
      Latest_Version.action               as action,
      Latest_Version.action_status        as action_status,         

      case COALESCE(Collection.description_text,'')
        when '' then Collection.collection_id
        else Collection.description_text
      end                                as description,
      
// * Associations *//

    Items                      as _Items,
    Changed_By_Description     as _Changed_By_Description, 
    Created_By_Description     as _Created_By_Description,
    Status_Texts               as _Status_Texts,
    Action_Status_Texts        as _Action_Status_Texts,
    Action_Texts               as _Action_Text,
    Items_to_add               as _Items_to_add,
    Latest_Log                 as _Latest_Log,  
    Log                        as _Log,  
    Log_Counter                as _Log_Counter,   
    Files                      as _Files
       
}
where Collection.category  = 'T' // just Templates

  and Collection.status   <> 'H' // no hidden = deleted Templates

/*+[internal] {
"BASEINFO":
{
"FROM":
[
"EITV_EXP_TEMPL_LATEST_VER",
"ATO_COLS"
],
"ASSOCIATED":
[
"ATOV_COL_VER_COUNT_LOGS",
"ATOV_LOG",
"ATOV_TEXT_ACTION",
"ATOV_TEXT_ACTION_STATUS",
"ATOV_USER",
"EITV_EXP_ACTION_STATUS_TEXT",
"EITV_EXP_FILES",
"EITV_EXP_ITEMS_ADD",
"EITV_EXP_TEMPL_ITEMS"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/