I_ClosingTask

DDL: I_CLOSINGTASK Type: view BASIC Package: FCCO_VDM_MD

Closing Task

I_ClosingTask is a Basic CDS View that provides data about "Closing Task" in SAP S/4HANA. It reads from 1 data source (fcco_task) and exposes 104 fields with key fields ClosingTemplate, ClosingTaskListInstance, FinancialTaskListContextType, ClosingTask. It has 41 associations to related views. Part of development package FCCO_VDM_MD.

Data Sources (1)

SourceAliasJoin Type
fcco_task fcco_task from

Associations (41)

CardinalityTargetAliasCondition
[1..1] I_ClosingTaskList _ClosingTaskList $projection.ClosingTemplate = _ClosingTaskList.ClosingTemplate and $projection.ClosingTaskListInstance = _ClosingTaskList.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _ClosingTaskList.FinancialTaskListContextType
[1..1] I_ClosingTemplate _ClosingTemplate $projection.ClosingTemplate = _ClosingTemplate.ClosingTemplate and $projection.FinancialTaskListContextType = _ClosingTemplate.FinancialTaskListContextType
[1..1] I_ClosingFolder _ClosingFolder $projection.ClosingTemplate = _ClosingFolder.ClosingTemplate and $projection.ClosingTaskListInstance = _ClosingFolder.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _ClosingFolder.FinancialTaskListContextType and $projection.ClosingFolder = _ClosingFolder.ClosingFolder
[1..1] I_FinTaskListContextType _FinTaskListContextType $projection.FinancialTaskListContextType = _FinTaskListContextType.FinancialTaskListContextType
[0..*] I_FinTaskListContextTypeText _FinTaskListContextTypeText $projection.FinancialTaskListContextType = _FinTaskListContextTypeText.FinancialTaskListContextType
[0..*] I_ClosingTaskText _ClosingTaskText $projection.ClosingTemplate = _ClosingTaskText.ClosingTemplate and $projection.ClosingTaskListInstance = _ClosingTaskText.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _ClosingTaskText.FinancialTaskListContextType and $projection.ClosingTask = _ClosingTaskText.ClosingTask
[0..*] I_ClosingTaskExecutionGroup _ClosingTaskExecutionGroup $projection.ClosingTemplate = _ClosingTaskExecutionGroup.ClosingTemplate and $projection.ClosingTaskListInstance = _ClosingTaskExecutionGroup.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _ClosingTaskExecutionGroup.FinancialTaskListContextType and $projection.ClosingTask = _ClosingTaskExecutionGroup.ClosingTask
[0..*] I_ClosingTaskNotifLog _ClosingTaskNotifLog $projection.ClosingTemplate = _ClosingTaskNotifLog.ClosingTemplate and $projection.ClosingTaskListInstance = _ClosingTaskNotifLog.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _ClosingTaskNotifLog.FinancialTaskListContextType and $projection.ClosingTask = _ClosingTaskNotifLog.ClosingTask
[0..*] I_ClosingTaskEmail _ClosingTaskEmail $projection.ClosingTemplate = _ClosingTaskEmail.ClosingTemplate and $projection.ClosingTaskListInstance = _ClosingTaskEmail.ClosingTaskListInstance and $projection.ClosingTask = _ClosingTaskEmail.ClosingTask
[0..*] I_ClsgTaskLatestExecutionGroup _ClsgTaskLatestExecutionGroup $projection.ClosingTemplate = _ClsgTaskLatestExecutionGroup.ClosingTemplate and $projection.ClosingTaskListInstance = _ClsgTaskLatestExecutionGroup.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _ClsgTaskLatestExecutionGroup.FinancialTaskListContextType and $projection.ClosingTask = _ClsgTaskLatestExecutionGroup.ClosingTask
[0..1] I_ClosingTaskType _ClosingTaskType $projection.ClosingTaskType = _ClosingTaskType.ClosingTaskType
[0..*] I_ClosingTaskTypeText _ClosingTaskTypeText $projection.ClosingTaskType = _ClosingTaskTypeText.ClosingTaskType
[1..1] I_ClosingTaskStatus _ClosingTaskStatus $projection.ClosingTaskStatus = _ClosingTaskStatus.ClosingTaskStatus
[0..*] I_ClosingTaskStatusText _ClosingTaskStatusText $projection.ClosingTaskStatus = _ClosingTaskStatusText.ClosingTaskStatus
[0..1] I_ClosingTaskResponsibleType _ClosingTaskProcessorType $projection.ClosingTaskProcessorType = _ClosingTaskProcessorType.ClosingTaskResponsibleType
[0..*] I_ClosingTaskRespTypeText _ClosingTaskProcsrTypeText $projection.ClosingTaskProcessorType = _ClosingTaskProcsrTypeText.ClosingTaskResponsibleType
[0..1] I_ClosingTaskResponsibleType _ClosingTaskResponsibleType $projection.ClosingTaskResponsibleType = _ClosingTaskResponsibleType.ClosingTaskResponsibleType
[0..*] I_ClosingTaskRespTypeText _ClosingTaskRespTypeText $projection.ClosingTaskResponsibleType = _ClosingTaskRespTypeText.ClosingTaskResponsibleType
[0..1] I_ClosingApprovalType _ClosingApprovalType $projection.ClosingApprovalType = _ClosingApprovalType.ClosingApprovalType
[0..*] I_ClosingApprovalTypeText _ClosingApprovalTypeText $projection.ClosingApprovalType = _ClosingApprovalTypeText.ClosingApprovalType
[0..1] P_MyUserGroup _MyUserGroupAsResp $projection.ClosingTaskResponsible = _MyUserGroupAsResp.ClosingUserGroup
[0..1] P_MyUserGroupAsSubstitute _MyUserGroupAsRespSubst $projection.ClosingTaskResponsible = _MyUserGroupAsRespSubst.ClosingUserGroup
[0..1] P_MyUserGroup _MyUserGroupAsProcessor $projection.ClosingTaskProcessor = _MyUserGroupAsProcessor.ClosingUserGroup
[0..1] P_MyUserGroupAsSubstitute _MyUserGroupAsProcessorSubst $projection.ClosingTaskProcessor = _MyUserGroupAsProcessorSubst.ClosingUserGroup
[0..*] I_ClosingFolderOrgUnit _CompanyCode $projection.ClosingTemplate = _CompanyCode.ClosingTemplate and $projection.ClosingTaskListInstance = _CompanyCode.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _CompanyCode.FinancialTaskListContextType and $projection.CompanyCodeClosingFolder = _CompanyCode.ClosingFolder
[0..*] I_ClosingFolderOrgUnit _ControllingArea $projection.ClosingTemplate = _ControllingArea.ClosingTemplate and $projection.ClosingTaskListInstance = _ControllingArea.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _ControllingArea.FinancialTaskListContextType and $projection.ControllingAreaClosingFolder = _ControllingArea.ClosingFolder
[0..*] I_ClosingFolderOrgUnit _Plant $projection.ClosingTemplate = _Plant.ClosingTemplate and $projection.ClosingTaskListInstance = _Plant.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _Plant.FinancialTaskListContextType and $projection.PlantClosingFolder = _Plant.ClosingFolder
[0..1] I_ClosingFolder _CompanyCodeClosingFolder $projection.ClosingTemplate = _CompanyCodeClosingFolder.ClosingTemplate and $projection.ClosingTaskListInstance = _CompanyCodeClosingFolder.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _CompanyCodeClosingFolder.FinancialTaskListContextType and $projection.CompanyCodeClosingFolder = _CompanyCodeClosingFolder.ClosingFolder
[0..1] I_ClosingFolder _ControllingAreaClosingFolder $projection.ClosingTemplate = _ControllingAreaClosingFolder.ClosingTemplate and $projection.ClosingTaskListInstance = _ControllingAreaClosingFolder.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _ControllingAreaClosingFolder.FinancialTaskListContextType and $projection.ControllingAreaClosingFolder = _ControllingAreaClosingFolder.ClosingFolder
[0..1] I_ClosingFolder _PlantClosingFolder $projection.ClosingTemplate = _PlantClosingFolder.ClosingTemplate and $projection.ClosingTaskListInstance = _PlantClosingFolder.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _PlantClosingFolder.FinancialTaskListContextType and $projection.PlantClosingFolder = _PlantClosingFolder.ClosingFolder
[0..1] I_ClosingFolder _LeadingOrgUnitClosingFolder $projection.ClosingTemplate = _LeadingOrgUnitClosingFolder.ClosingTemplate and $projection.ClosingTaskListInstance = _LeadingOrgUnitClosingFolder.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _LeadingOrgUnitClosingFolder.FinancialTaskListContextType and $projection.LeadingOrgUnitClosingFolder = _LeadingOrgUnitClosingFolder.ClosingFolder
[0..1] I_ClosingNotificationConfign _ClosingNotificationConfign $projection.ClosingNotificationConfign = _ClosingNotificationConfign.ClosingNotificationConfign
[0..*] I_ClsgNotificationConfignText _ClsgNotificationConfignText $projection.ClosingNotificationConfign = _ClsgNotificationConfignText.ClosingNotificationConfign
[0..1] I_ClosingCommProfile _ClosingCommunicationProfile $projection.ClosingCommunicationProfile = _ClosingCommunicationProfile.ClosingCommunicationProfile
[0..1] I_ClsgBusTransactionType _ClsgBusinessTransactionType $projection.ClosingBusinessTransactionType = _ClsgBusinessTransactionType.ClosingBusinessTransactionType
[0..*] I_ClsgBusTransactionTypeText _ClsgBusTransactionTypeText $projection.ClosingBusinessTransactionType = _ClsgBusTransactionTypeText.ClosingBusinessTransactionType
[0..1] I_TimeZone _TimeZone $projection.TimeZoneID = _TimeZone.TimeZoneID
[0..*] I_TimeZoneText _TimeZoneText $projection.TimeZoneID = _TimeZoneText.TimeZoneID
[0..1] I_ClosingAuthorizationGroup _ClosingAuthorizationGroup $projection.ClosingAuthorizationGroup = _ClosingAuthorizationGroup.ClosingAuthorizationGroup and _ClosingAuthorizationGroup.ClosingAuthorizationGroupType = 'TASK'
[0..*] I_ClsgAuthorizationGroupText _ClsgAuthorizationGroupText $projection.ClosingAuthorizationGroup = _ClsgAuthorizationGroupText.ClosingAuthorizationGroup and _ClsgAuthorizationGroupText.ClosingAuthorizationGroupType = 'TASK'
[0..1] E_ClosingTask _ClosingTaskExtension $projection.ClosingTemplate = _ClosingTaskExtension.ClosingTemplate and $projection.ClosingTaskListInstance = _ClosingTaskExtension.ClosingTaskListInstance and $projection.FinancialTaskListContextType = _ClosingTaskExtension.FinancialTaskListContextType and $projection.ClosingTask = _ClosingTaskExtension.ClosingTask

Annotations (11)

NameValueLevelField
AbapCatalog.sqlViewName ICLSGTASK view
AbapCatalog.preserveKey true view
EndUserText.label Closing Task view
VDM.viewType #BASIC view
AccessControl.authorizationCheck #CHECK view
ObjectModel.representativeKey ClosingTask view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.dataClass #MASTER view
ClientHandling.algorithm #SESSION_VARIABLE view
Metadata.ignorePropagatedAnnotations true view

Fields (104)

KeyFieldSource TableSource FieldDescription
KEY ClosingTemplate profile
KEY ClosingTaskListInstance instance
KEY FinancialTaskListContextType flavor
KEY ClosingTask item
ClosingFolder folder
ClosingTaskExternalID long_task_id
ClosingTaskUUID task_uuid
OrdinalNumber pos
ClosingTaskType kind
ABAPProgramName report
TransactionCode transact
ApplicationJobTemplate fiori_job_template
WebsiteURL web_app_url
OffsetDays exe_day_offset
PlannedStartTime exe_time
TimeZoneID def_time_zone
ClosingTaskIsInactive inactive
ClosingTaskIsLocked locked
ClosingTaskName text
ClosingTaskDefaultName
PlannedDurationInSeconds planned_duration
PlannedStartDateTime planned_start_on
PlannedEndDateTime planned_end_on
IsMonthEndClosingTask ismonthendtask
IsQuarterEndClosingTask isquarterendtask
IsYearEndClosingTask isyearendtask
IsSpecialEndClosingTask isspecialendtask
IsUserDefinedClosingTask isuserdefinedtask
IsCriticalPath crit_path
NotificationIsRequired notified
ClsgTaskIsStartedImmediately start_immd
ClosingTaskProcessor exe_usr_id
ClosingTaskProcessorType
ClosingTaskResponsible res_usr_id
ClosingTaskResponsibleType
ClosingTaskGroup
ClosingAuthorizationGroup authgrp
CreatedByUser created_by
CreationDateTime created_on
LastChangedByUser changed_by
LastChangeDateTime changed_on
ClosingTaskSignificance ic_sig
ClosingTaskAutomationLevel ic_auto
ClosingTaskPurpose ic_purp
ClosingMilestone milestone
ClosingPhase closing_phase
ApplJobTestRunIsSupported is_testr_supported
SemanticObject semantic_object
SemanticObjectAction semantic_action
ClosingTaskApprovalStatus approval_status
ClsgTaskApprvlStsLastChgDteTme approval_changed_on
ClsgTaskApprvlStsLastChgdByUsr approval_changed_by
CompanyCodeClosingFolder node_bukrs
ControllingAreaClosingFolder node_kokrs
PlantClosingFolder node_werks
LeadingOrgUnitClosingFolder node_leading
ClosingNotificationConfign noti_con
ClosingCommunicationProfile communication_profile
ClosingBusinessTransactionType bttype
ClosingApprovalType approval_type
ClosingTaskTemplate task
SAPApplicationComponent component
ClosingTaskStatus combined_status
HasAttachment has_attachment
ClosingTaskIsCreatedManually ismanuallycreated
ClosingTaskIsInTaskListOnly istasklistcreated
ClosingApplicationJobVariant param_variant_id
ClsgTaskStatusIsChgdManually manual_changed
_ClosingTaskList _ClosingTaskList
_ClosingTemplate _ClosingTemplate
_ClosingTaskText _ClosingTaskText
_ClosingTaskNotifLog _ClosingTaskNotifLog
_ClosingTaskEmail _ClosingTaskEmail
_ClosingTaskExecutionGroup _ClosingTaskExecutionGroup
_ClsgTaskLatestExecutionGroup _ClsgTaskLatestExecutionGroup
_FinTaskListContextType _FinTaskListContextType
_ClosingFolder _ClosingFolder
_ClosingAuthorizationGroup _ClosingAuthorizationGroup
_ClosingTaskType _ClosingTaskType
_ClosingTaskStatus _ClosingTaskStatus
_ClosingTaskProcessorType _ClosingTaskProcessorType
_ClosingTaskResponsibleType _ClosingTaskResponsibleType
_ClosingApprovalType _ClosingApprovalType
_CompanyCode _CompanyCode
_ControllingArea _ControllingArea
_Plant _Plant
_CompanyCodeClosingFolder _CompanyCodeClosingFolder
_ControllingAreaClosingFolder _ControllingAreaClosingFolder
_PlantClosingFolder _PlantClosingFolder
_ClosingNotificationConfign _ClosingNotificationConfign
_ClosingCommunicationProfile _ClosingCommunicationProfile
_ClsgBusinessTransactionType _ClsgBusinessTransactionType
_TimeZone _TimeZone
_LeadingOrgUnitClosingFolder _LeadingOrgUnitClosingFolder
_FinTaskListContextTypeText _FinTaskListContextTypeText
_ClsgAuthorizationGroupText _ClsgAuthorizationGroupText
_ClosingTaskTypeText _ClosingTaskTypeText
_ClosingTaskStatusText _ClosingTaskStatusText
_ClosingTaskProcsrTypeText _ClosingTaskProcsrTypeText
_ClosingTaskRespTypeText _ClosingTaskRespTypeText
_ClosingApprovalTypeText _ClosingApprovalTypeText
_ClsgNotificationConfignText _ClsgNotificationConfignText
_ClsgBusTransactionTypeText _ClsgBusTransactionTypeText
_TimeZoneText _TimeZoneText
@AbapCatalog: {sqlViewName: 'ICLSGTASK', preserveKey: true}
@EndUserText.label: 'Closing Task'
@VDM.viewType: #BASIC
@AccessControl.authorizationCheck: #CHECK
@ObjectModel: { representativeKey: 'ClosingTask',
                usageType.serviceQuality: #C,
                usageType.sizeCategory: #L,
                usageType.dataClass: #MASTER }
@ClientHandling.algorithm: #SESSION_VARIABLE
@Metadata.ignorePropagatedAnnotations: true

define view I_ClosingTask
  as select from fcco_task

  association [1..1] to I_ClosingTaskList              as _ClosingTaskList              on  $projection.ClosingTemplate              = _ClosingTaskList.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _ClosingTaskList.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _ClosingTaskList.FinancialTaskListContextType

  association [1..1] to I_ClosingTemplate              as _ClosingTemplate              on  $projection.ClosingTemplate              = _ClosingTemplate.ClosingTemplate
                                                                                        and $projection.FinancialTaskListContextType = _ClosingTemplate.FinancialTaskListContextType

  association [1..1] to I_ClosingFolder                as _ClosingFolder                on  $projection.ClosingTemplate              = _ClosingFolder.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _ClosingFolder.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _ClosingFolder.FinancialTaskListContextType
                                                                                        and $projection.ClosingFolder                = _ClosingFolder.ClosingFolder

  association [1..1] to I_FinTaskListContextType       as _FinTaskListContextType       on  $projection.FinancialTaskListContextType = _FinTaskListContextType.FinancialTaskListContextType
  association [0..*] to I_FinTaskListContextTypeText   as _FinTaskListContextTypeText   on  $projection.FinancialTaskListContextType = _FinTaskListContextTypeText.FinancialTaskListContextType

  association [0..*] to I_ClosingTaskText              as _ClosingTaskText              on  $projection.ClosingTemplate              = _ClosingTaskText.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _ClosingTaskText.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _ClosingTaskText.FinancialTaskListContextType
                                                                                        and $projection.ClosingTask                  = _ClosingTaskText.ClosingTask

  association [0..*] to I_ClosingTaskExecutionGroup    as _ClosingTaskExecutionGroup    on  $projection.ClosingTemplate              = _ClosingTaskExecutionGroup.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _ClosingTaskExecutionGroup.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _ClosingTaskExecutionGroup.FinancialTaskListContextType
                                                                                        and $projection.ClosingTask                  = _ClosingTaskExecutionGroup.ClosingTask

  association [0..*] to I_ClosingTaskNotifLog          as _ClosingTaskNotifLog          on  $projection.ClosingTemplate              = _ClosingTaskNotifLog.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _ClosingTaskNotifLog.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _ClosingTaskNotifLog.FinancialTaskListContextType
                                                                                        and $projection.ClosingTask                  = _ClosingTaskNotifLog.ClosingTask

  association [0..*] to I_ClosingTaskEmail             as _ClosingTaskEmail             on  $projection.ClosingTemplate         = _ClosingTaskEmail.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance = _ClosingTaskEmail.ClosingTaskListInstance
                                                                                        and $projection.ClosingTask             = _ClosingTaskEmail.ClosingTask

  //There can be two latest execution groups: one for test run, one for productive run

  association [0..*] to I_ClsgTaskLatestExecutionGroup as _ClsgTaskLatestExecutionGroup on  $projection.ClosingTemplate              = _ClsgTaskLatestExecutionGroup.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _ClsgTaskLatestExecutionGroup.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _ClsgTaskLatestExecutionGroup.FinancialTaskListContextType
                                                                                        and $projection.ClosingTask                  = _ClsgTaskLatestExecutionGroup.ClosingTask

  association [0..1] to I_ClosingTaskType              as _ClosingTaskType              on  $projection.ClosingTaskType = _ClosingTaskType.ClosingTaskType
  association [0..*] to I_ClosingTaskTypeText          as _ClosingTaskTypeText          on  $projection.ClosingTaskType = _ClosingTaskTypeText.ClosingTaskType

  association [1..1] to I_ClosingTaskStatus            as _ClosingTaskStatus            on  $projection.ClosingTaskStatus = _ClosingTaskStatus.ClosingTaskStatus
  association [0..*] to I_ClosingTaskStatusText        as _ClosingTaskStatusText        on  $projection.ClosingTaskStatus = _ClosingTaskStatusText.ClosingTaskStatus

  association [0..1] to I_ClosingTaskResponsibleType   as _ClosingTaskProcessorType     on  $projection.ClosingTaskProcessorType = _ClosingTaskProcessorType.ClosingTaskResponsibleType
  association [0..*] to I_ClosingTaskRespTypeText      as _ClosingTaskProcsrTypeText    on  $projection.ClosingTaskProcessorType = _ClosingTaskProcsrTypeText.ClosingTaskResponsibleType

  association [0..1] to I_ClosingTaskResponsibleType   as _ClosingTaskResponsibleType   on  $projection.ClosingTaskResponsibleType = _ClosingTaskResponsibleType.ClosingTaskResponsibleType
  association [0..*] to I_ClosingTaskRespTypeText      as _ClosingTaskRespTypeText      on  $projection.ClosingTaskResponsibleType = _ClosingTaskRespTypeText.ClosingTaskResponsibleType

  association [0..1] to I_ClosingApprovalType          as _ClosingApprovalType          on  $projection.ClosingApprovalType = _ClosingApprovalType.ClosingApprovalType
  association [0..*] to I_ClosingApprovalTypeText      as _ClosingApprovalTypeText      on  $projection.ClosingApprovalType = _ClosingApprovalTypeText.ClosingApprovalType

  association [0..1] to P_MyUserGroup                  as _MyUserGroupAsResp            on  $projection.ClosingTaskResponsible = _MyUserGroupAsResp.ClosingUserGroup

  association [0..1] to P_MyUserGroupAsSubstitute      as _MyUserGroupAsRespSubst       on  $projection.ClosingTaskResponsible = _MyUserGroupAsRespSubst.ClosingUserGroup

  association [0..1] to P_MyUserGroup                  as _MyUserGroupAsProcessor       on  $projection.ClosingTaskProcessor = _MyUserGroupAsProcessor.ClosingUserGroup

  association [0..1] to P_MyUserGroupAsSubstitute      as _MyUserGroupAsProcessorSubst  on  $projection.ClosingTaskProcessor = _MyUserGroupAsProcessorSubst.ClosingUserGroup

  association [0..*] to I_ClosingFolderOrgUnit         as _CompanyCode                  on  $projection.ClosingTemplate              = _CompanyCode.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _CompanyCode.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _CompanyCode.FinancialTaskListContextType
                                                                                        and $projection.CompanyCodeClosingFolder     = _CompanyCode.ClosingFolder

  association [0..*] to I_ClosingFolderOrgUnit         as _ControllingArea              on  $projection.ClosingTemplate              = _ControllingArea.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _ControllingArea.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _ControllingArea.FinancialTaskListContextType
                                                                                        and $projection.ControllingAreaClosingFolder = _ControllingArea.ClosingFolder

  association [0..*] to I_ClosingFolderOrgUnit         as _Plant                        on  $projection.ClosingTemplate              = _Plant.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _Plant.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _Plant.FinancialTaskListContextType
                                                                                        and $projection.PlantClosingFolder           = _Plant.ClosingFolder


  association [0..1] to I_ClosingFolder                as _CompanyCodeClosingFolder     on  $projection.ClosingTemplate              = _CompanyCodeClosingFolder.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _CompanyCodeClosingFolder.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _CompanyCodeClosingFolder.FinancialTaskListContextType
                                                                                        and $projection.CompanyCodeClosingFolder     = _CompanyCodeClosingFolder.ClosingFolder

  association [0..1] to I_ClosingFolder                as _ControllingAreaClosingFolder on  $projection.ClosingTemplate              = _ControllingAreaClosingFolder.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _ControllingAreaClosingFolder.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _ControllingAreaClosingFolder.FinancialTaskListContextType
                                                                                        and $projection.ControllingAreaClosingFolder = _ControllingAreaClosingFolder.ClosingFolder

  association [0..1] to I_ClosingFolder                as _PlantClosingFolder           on  $projection.ClosingTemplate              = _PlantClosingFolder.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _PlantClosingFolder.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _PlantClosingFolder.FinancialTaskListContextType
                                                                                        and $projection.PlantClosingFolder           = _PlantClosingFolder.ClosingFolder

  association [0..1] to I_ClosingFolder                as _LeadingOrgUnitClosingFolder  on  $projection.ClosingTemplate              = _LeadingOrgUnitClosingFolder.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _LeadingOrgUnitClosingFolder.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _LeadingOrgUnitClosingFolder.FinancialTaskListContextType
                                                                                        and $projection.LeadingOrgUnitClosingFolder  = _LeadingOrgUnitClosingFolder.ClosingFolder

  association [0..1] to I_ClosingNotificationConfign   as _ClosingNotificationConfign   on  $projection.ClosingNotificationConfign = _ClosingNotificationConfign.ClosingNotificationConfign
  association [0..*] to I_ClsgNotificationConfignText  as _ClsgNotificationConfignText  on  $projection.ClosingNotificationConfign = _ClsgNotificationConfignText.ClosingNotificationConfign

  association [0..1] to I_ClosingCommProfile           as _ClosingCommunicationProfile  on  $projection.ClosingCommunicationProfile = _ClosingCommunicationProfile.ClosingCommunicationProfile

  association [0..1] to I_ClsgBusTransactionType       as _ClsgBusinessTransactionType  on  $projection.ClosingBusinessTransactionType = _ClsgBusinessTransactionType.ClosingBusinessTransactionType
  association [0..*] to I_ClsgBusTransactionTypeText   as _ClsgBusTransactionTypeText   on  $projection.ClosingBusinessTransactionType = _ClsgBusTransactionTypeText.ClosingBusinessTransactionType

  association [0..1] to I_TimeZone                     as _TimeZone                     on  $projection.TimeZoneID = _TimeZone.TimeZoneID
  association [0..*] to I_TimeZoneText                 as _TimeZoneText                 on  $projection.TimeZoneID = _TimeZoneText.TimeZoneID

  association [0..1] to I_ClosingAuthorizationGroup    as _ClosingAuthorizationGroup    on  $projection.ClosingAuthorizationGroup                    = _ClosingAuthorizationGroup.ClosingAuthorizationGroup
                                                                                        and _ClosingAuthorizationGroup.ClosingAuthorizationGroupType = 'TASK'
  association [0..*] to I_ClsgAuthorizationGroupText   as _ClsgAuthorizationGroupText   on  $projection.ClosingAuthorizationGroup                     = _ClsgAuthorizationGroupText.ClosingAuthorizationGroup
                                                                                        and _ClsgAuthorizationGroupText.ClosingAuthorizationGroupType = 'TASK'

  association [0..1] to E_ClosingTask                  as _ClosingTaskExtension         on  $projection.ClosingTemplate              = _ClosingTaskExtension.ClosingTemplate
                                                                                        and $projection.ClosingTaskListInstance      = _ClosingTaskExtension.ClosingTaskListInstance
                                                                                        and $projection.FinancialTaskListContextType = _ClosingTaskExtension.FinancialTaskListContextType
                                                                                        and $projection.ClosingTask                  = _ClosingTaskExtension.ClosingTask

{
      @ObjectModel.foreignKey.association: '_ClosingTemplate'
  key profile                                             as ClosingTemplate,
      @ObjectModel.foreignKey.association: '_ClosingTaskList'
  key instance                                            as ClosingTaskListInstance,
      @ObjectModel.foreignKey.association: '_FinTaskListContextType'
  key flavor                                              as FinancialTaskListContextType,
  key item                                                as ClosingTask,

      @ObjectModel.foreignKey.association: '_ClosingFolder'
      folder                                              as ClosingFolder,

      long_task_id                                        as ClosingTaskExternalID,
      task_uuid                                           as ClosingTaskUUID,
      pos                                                 as OrdinalNumber,
      @ObjectModel.foreignKey.association: '_ClosingTaskType'
      kind                                                as ClosingTaskType,
      report                                              as ABAPProgramName,
      transact                                            as TransactionCode,
      fiori_job_template                                  as ApplicationJobTemplate, //FIORI job template

      web_app_url                                         as WebsiteURL, //for tasks of type Web Application

      exe_day_offset                                      as OffsetDays,
      exe_time                                            as PlannedStartTime,
      @ObjectModel.foreignKey.association: '_TimeZone'
      def_time_zone                                       as TimeZoneID,
      inactive                                            as ClosingTaskIsInactive,
      locked                                              as ClosingTaskIsLocked,
      text                                                as ClosingTaskName,
      cast (text as fcco_task_default_name)               as ClosingTaskDefaultName,
      planned_duration                                    as PlannedDurationInSeconds,
      planned_start_on                                    as PlannedStartDateTime,
      planned_end_on                                      as PlannedEndDateTime,
      ismonthendtask                                      as IsMonthEndClosingTask,
      isquarterendtask                                    as IsQuarterEndClosingTask,
      isyearendtask                                       as IsYearEndClosingTask,
      isspecialendtask                                    as IsSpecialEndClosingTask,
      isuserdefinedtask                                   as IsUserDefinedClosingTask,
      crit_path                                           as IsCriticalPath,
      notified                                            as NotificationIsRequired,
      start_immd                                          as ClsgTaskIsStartedImmediately,
      exe_usr_id                                          as ClosingTaskProcessor,
      @ObjectModel.foreignKey.association: '_ClosingTaskProcessorType'
      cast(exe_usr_type as fcco_task_owner_otype)         as ClosingTaskProcessorType, //reduced code list

      res_usr_id                                          as ClosingTaskResponsible,
      @ObjectModel.foreignKey.association: '_ClosingTaskResponsibleType'
      cast(res_usr_type as fcco_task_res_otype)           as ClosingTaskResponsibleType, //reduced code list

      cast(task_group as fcco_task_group preserving type) as ClosingTaskGroup,
      @ObjectModel.foreignKey.association: '_ClosingAuthorizationGroup'
      authgrp                                             as ClosingAuthorizationGroup,
      created_by                                          as CreatedByUser,
      created_on                                          as CreationDateTime,
      changed_by                                          as LastChangedByUser,
      changed_on                                          as LastChangeDateTime,
      ic_sig                                              as ClosingTaskSignificance,
      ic_auto                                             as ClosingTaskAutomationLevel,
      ic_purp                                             as ClosingTaskPurpose,
      milestone                                           as ClosingMilestone,
      closing_phase                                       as ClosingPhase,
      is_testr_supported                                  as ApplJobTestRunIsSupported,
      semantic_object                                     as SemanticObject,
      semantic_action                                     as SemanticObjectAction,
      approval_status                                     as ClosingTaskApprovalStatus,
      approval_changed_on                                 as ClsgTaskApprvlStsLastChgDteTme,
      approval_changed_by                                 as ClsgTaskApprvlStsLastChgdByUsr,
      node_bukrs                                          as CompanyCodeClosingFolder,
      node_kokrs                                          as ControllingAreaClosingFolder,
      node_werks                                          as PlantClosingFolder,
      @ObjectModel.foreignKey.association: '_LeadingOrgUnitClosingFolder'
      node_leading                                        as LeadingOrgUnitClosingFolder,
      @ObjectModel.foreignKey.association: '_ClosingNotificationConfign'
      noti_con                                            as ClosingNotificationConfign,
      @ObjectModel.foreignKey.association: '_ClosingCommunicationProfile'
      communication_profile                               as ClosingCommunicationProfile,
      @ObjectModel.foreignKey.association: '_ClsgBusinessTransactionType'
      bttype                                              as ClosingBusinessTransactionType,
      @ObjectModel.foreignKey.association: '_ClosingApprovalType'
      approval_type                                       as ClosingApprovalType,
      task                                                as ClosingTaskTemplate,
      component                                           as SAPApplicationComponent,
      @ObjectModel.foreignKey.association: '_ClosingTaskStatus'
      combined_status                                     as ClosingTaskStatus,

      cast(case
        when (exe_usr_type = 'US' and exe_usr_id = $session.user) or
             (exe_usr_type = 'UG' and _MyUserGroupAsProcessor.ClosingUserGroup is not null)
          then 'X'
        else ''
      end as fcco_is_proc)                                as UserIsClosingTaskProcessor,

      cast(case
        when (exe_usr_type = 'US' and exe_usr_id = $session.user) or
             (exe_usr_type = 'UG' and (_MyUserGroupAsProcessor.ClosingUserGroup is not null or
              _MyUserGroupAsProcessorSubst.ClosingUserGroup is not null))  or
             (exe_usr_type = 'US' and _MyUserGroupAsProcessorSubst.ClosingUserGroup is not null)
          then 'X'
        else ''
      end as fcco_is_proc_or_subst)                       as UserIsClsgTaskProcsrOrSubstit,

      cast(case
        when (res_usr_type = 'US' and res_usr_id = $session.user) or
             (res_usr_type = 'UG' and _MyUserGroupAsResp.ClosingUserGroup is not null)
          then 'X'
        else ''
      end as fcco_is_resp)                                as UserIsClosingTaskResponsible,

      cast(case
        when (res_usr_type = 'US' and res_usr_id = $session.user) or
             (res_usr_type = 'UG' and (_MyUserGroupAsResp.ClosingUserGroup is not null or
              _MyUserGroupAsRespSubst.ClosingUserGroup is not null)) or
             (res_usr_type = 'US' and _MyUserGroupAsRespSubst.ClosingUserGroup is not null)
          then 'X'
        else ''
      end as fcco_is_resp_or_subst)                       as UserIsClsgTaskRespOrSubstit,

      has_attachment                                      as HasAttachment,
      ismanuallycreated                                   as ClosingTaskIsCreatedManually,
      istasklistcreated                                   as ClosingTaskIsInTaskListOnly,
      param_variant_id                                    as ClosingApplicationJobVariant,
      manual_changed                                      as ClsgTaskStatusIsChgdManually,

      @ObjectModel.association.type: [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]
      _ClosingTaskList,
      _ClosingTemplate,
      _ClosingTaskText,
      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _ClosingTaskNotifLog,
      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _ClosingTaskEmail,
      @ObjectModel.association.type: [ #TO_COMPOSITION_CHILD ]
      _ClosingTaskExecutionGroup,

      _ClsgTaskLatestExecutionGroup,
      _FinTaskListContextType,
      _ClosingFolder,
      _ClosingAuthorizationGroup,
      _ClosingTaskType,
      _ClosingTaskStatus,
      _ClosingTaskProcessorType,
      _ClosingTaskResponsibleType,
      _ClosingApprovalType,
      _CompanyCode,
      _ControllingArea,
      _Plant,
      _CompanyCodeClosingFolder,
      _ControllingAreaClosingFolder,
      _PlantClosingFolder,
      _ClosingNotificationConfign,
      _ClosingCommunicationProfile,
      _ClsgBusinessTransactionType,
      _TimeZone,
      _LeadingOrgUnitClosingFolder,

      /*Text Associations */
      _FinTaskListContextTypeText,
      _ClsgAuthorizationGroupText,
      _ClosingTaskTypeText,
      _ClosingTaskStatusText,
      _ClosingTaskProcsrTypeText,
      _ClosingTaskRespTypeText,
      _ClosingApprovalTypeText,
      _ClsgNotificationConfignText,
      _ClsgBusTransactionTypeText,
      _TimeZoneText

}