A_AppointmentActivity

DDL: A_APPOINTMENTACTIVITY Type: view COMPOSITE

Appointment Activity

A_AppointmentActivity is a Composite CDS View that provides data about "Appointment Activity" in SAP S/4HANA. It reads from 1 data source (I_CustMgmtActivityEnhcd) and exposes 25 fields with key field AppointmentActivity. It has 4 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_CustMgmtActivityEnhcd AppointmentActivity from

Associations (4)

CardinalityTargetAliasCondition
[0..*] A_AppointmentActyPersonResp _PersonResponsible $projection.AppointmentActivity = _PersonResponsible.AppointmentActivity
[0..*] A_AppointmentActyAttendee _AppointmentActivityAttendee $projection.AppointmentActivity = _AppointmentActivityAttendee.AppointmentActivity
[0..*] A_AppointmentActivityText _Text $projection.AppointmentActivity = _Text.AppointmentActivity
[0..1] E_ActivityDocument _Extension _Extension.BusinessObjectType = 'BUS2000126' and $projection.AppointmentActivity = _Extension.ActivityDocument

Annotations (15)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Appointment Activity view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_REMOTE_API view
AbapCatalog.sqlViewName AAPPTACT view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
AccessControl.authorizationCheck #CHECK view
ObjectModel.representativeKey AppointmentActivity view
ObjectModel.createEnabled true view
ObjectModel.updateEnabled true view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #L view
Metadata.ignorePropagatedAnnotations true view

Fields (25)

KeyFieldSource TableSource FieldDescription
KEY AppointmentActivity CustMgmtActivity
AppointmentActivityType CustMgmtActivityType
AppointmentActivityUUID CustMgmtActivityUUID
AppointmentActivityDescription CustMgmtActivityDescription
CustMgmtActivityCategory CustMgmtActivityCategory
CustMgmtActivityPriority CustMgmtActivityPriority
CustMgmtActivityIsPrivate CustMgmtActivityIsPrivate
CustMgmtActyIsDspdInCalendar CustMgmtActyIsDspdInCalendar
ApptActivityLocationText CustMgmtActivityLocationText
Account Account
ContactPerson ContactPerson
AppointmentActivityIsRejected CustMgmtActivityIsRejected
CustMgmtActivityStartDateTime CustMgmtActivityStartDateTime
CustMgmtActivityEndDateTime CustMgmtActivityEndDateTime
ResponsibleSalesOrganization ResponsibleSalesOrganization
ServiceOrganization ServiceOrganization
ResponsibleServiceOrganization ResponsibleServiceOrganization
DistributionChannel DistributionChannel
Division Division
SalesOrganizationOrgUnitID SalesOrganizationOrgUnitID
SalesOfficeOrgUnitID SalesOfficeOrgUnitID
SalesGroupOrgUnitID SalesGroupOrgUnitID
_PersonResponsible _PersonResponsible
_AppointmentActivityAttendee _AppointmentActivityAttendee
_Text _Text
@ClientHandling.algorithm:#SESSION_VARIABLE
@EndUserText.label: 'Appointment Activity'

@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
  sqlViewName: 'AAPPTACT',
  compiler.compareFilter: true,
  preserveKey: true
}

@AccessControl: {
  authorizationCheck: #CHECK,
  personalData.blocking: #('TRANSACTIONAL_DATA')
}

@ObjectModel: {
   representativeKey: 'AppointmentActivity',
   createEnabled: true,
   updateEnabled: true,
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #B,
     sizeCategory:   #L
   }
}


@Metadata.ignorePropagatedAnnotations: true

define view A_AppointmentActivity
     as select from I_CustMgmtActivityEnhcd as AppointmentActivity
 
association [0..*] to A_AppointmentActyPersonResp as _PersonResponsible on $projection.AppointmentActivity = _PersonResponsible.AppointmentActivity
association [0..*] to A_AppointmentActyAttendee   as _AppointmentActivityAttendee on $projection.AppointmentActivity = _AppointmentActivityAttendee.AppointmentActivity
association [0..*] to A_AppointmentActivityText   as _Text on $projection.AppointmentActivity = _Text.AppointmentActivity

  //Extensibility

association [0..1] to E_ActivityDocument       as _Extension            on  _Extension.BusinessObjectType  = 'BUS2000126'
                                                                        and $projection.AppointmentActivity  = _Extension.ActivityDocument

{
  key CustMgmtActivity            as AppointmentActivity,
      CustMgmtActivityType        as AppointmentActivityType,
      CustMgmtActivityUUID        as AppointmentActivityUUID,     
      CustMgmtActivityDescription as AppointmentActivityDescription,
      CustMgmtActivityCategory,
      CustMgmtActivityPriority,
      CustMgmtActivityIsPrivate,
      CustMgmtActyIsDspdInCalendar,
      CustMgmtActivityLocationText as ApptActivityLocationText,      
      Account,
      ContactPerson,      
      case CustMgmtActivityStatus
       when 'C' then 'X'
       else ''
       end                        as AppointmentActivityIsCompleted,
      CustMgmtActivityIsRejected  as AppointmentActivityIsRejected,
      CustMgmtActivityStartDateTime,
      CustMgmtActivityEndDateTime,
      ResponsibleSalesOrganization,
      ServiceOrganization,
      ResponsibleServiceOrganization,
      DistributionChannel,
      Division,
      SalesOrganizationOrgUnitID,
      SalesOfficeOrgUnitID,
      SalesGroupOrgUnitID,
      _PersonResponsible,
      _AppointmentActivityAttendee,
      _Text
}
where
  CustMgmtObjectType = 'BUS2000126' // Customer Management Activity

  and BusinessActivityClass = 'F' 
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CUSTMGMTACTIVITYENHCD"
],
"ASSOCIATED":
[
"A_APPOINTMENTACTIVITYTEXT",
"A_APPOINTMENTACTYATTENDEE",
"A_APPOINTMENTACTYPERSONRESP",
"E_ACTIVITYDOCUMENT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/