C_SlsDocWrkFlwRecipientVH
Sales Document Work Flow Recipient VH
C_SlsDocWrkFlwRecipientVH is a Consumption CDS View that provides data about "Sales Document Work Flow Recipient VH" in SAP S/4HANA. It reads from 5 data sources (I_WorkforcePerson, I_PersonWorkAgrmtStatus, I_PersonWorkAgreement_1, P_SlsDocWrkFlwPotntlApprvr, I_User) and exposes 17 fields with key field UserID.
Data Sources (5)
| Source | Alias | Join Type |
|---|---|---|
| I_WorkforcePerson | _Employee | inner |
| I_PersonWorkAgrmtStatus | _EmployStatDet | inner |
| I_PersonWorkAgreement_1 | _PersonWorkAgreement | inner |
| P_SlsDocWrkFlwPotntlApprvr | _PotntlApprvr | inner |
| I_User | _User | inner |
Annotations (12)
| Name | Value | Level | Field |
|---|---|---|---|
| AbapCatalog.sqlViewName | CSLSDOCWFRCPNTVH | view | |
| AbapCatalog.compiler.compareFilter | true | view | |
| AccessControl.personalData.blocking | #BLOCKED_DATA_EXCLUDED | view | |
| AccessControl.authorizationCheck | #CHECK | view | |
| EndUserText.label | Sales Document Work Flow Recipient VH | view | |
| Search.searchable | true | view | |
| Consumption.ranked | true | view | |
| VDM.viewType | #CONSUMPTION | view | |
| ObjectModel.usageType.dataClass | #TRANSACTIONAL | view | |
| ObjectModel.usageType.serviceQuality | #C | view | |
| ObjectModel.usageType.sizeCategory | #M | view | |
| ObjectModel.representativeKey | UserID | view |
Fields (17)
| Key | Field | Source Table | Source Field | Description |
|---|---|---|---|---|
| KEY | UserID | I_User | UserID | |
| PersonFullNameendasFullName | ||||
| LastName | I_WorkforcePerson | LastName | ||
| PersonFullName | I_WorkforcePerson | PersonFullName | ||
| AuthorizationGroup | I_WorkforcePerson | AuthorizationGroup | ||
| IsBusinessPurposeCompleted | I_WorkforcePerson | IsBusinessPurposeCompleted | ||
| DataControllerSet | I_WorkforcePerson | DataControllerSet | ||
| DataController1 | I_WorkforcePerson | DataController1 | ||
| DataController2 | I_WorkforcePerson | DataController2 | ||
| DataController3 | I_WorkforcePerson | DataController3 | ||
| DataController4 | I_WorkforcePerson | DataController4 | ||
| DataController5 | I_WorkforcePerson | DataController5 | ||
| DataController6 | I_WorkforcePerson | DataController6 | ||
| DataController7 | I_WorkforcePerson | DataController7 | ||
| DataController8 | I_WorkforcePerson | DataController8 | ||
| DataController9 | I_WorkforcePerson | DataController9 | ||
| DataController10 | I_WorkforcePerson | DataController10 |
@AbapCatalog: {
sqlViewName: 'CSLSDOCWFRCPNTVH',
compiler.compareFilter: true
}
@AccessControl:{
personalData.blocking: #BLOCKED_DATA_EXCLUDED,
authorizationCheck: #CHECK
}
@EndUserText.label: 'Sales Document Work Flow Recipient VH'
@Search.searchable: true
@Consumption.ranked: true
@VDM: {
viewType: #CONSUMPTION
}
@ObjectModel:{
usageType:{
dataClass: #TRANSACTIONAL,
serviceQuality: #C,
sizeCategory: #M
},
representativeKey: 'UserID'
}
define view C_SlsDocWrkFlwRecipientVH
as select distinct from I_PersonWorkAgrmtOrglDetails as EmployOrgDet
inner join I_PersonWorkAgrmtStatus as _EmployStatDet on EmployOrgDet.PersonWorkAgreement = _EmployStatDet.PersonWorkAgreement
and _EmployStatDet.StartDate <= EmployOrgDet.EndDate
and _EmployStatDet.EndDate >= EmployOrgDet.StartDate
inner join I_PersonWorkAgreement_1 as _PersonWorkAgreement on _EmployStatDet.PersonWorkAgreement= _PersonWorkAgreement.PersonWorkAgreement
inner join I_WorkforcePerson as _Employee on _PersonWorkAgreement.Person = _Employee.Person
inner join I_User as _User on _Employee.BusinessPartnerUUID = _User.BusinessPartnerUUID
inner join P_SlsDocWrkFlwPotntlApprvr as _PotntlApprvr on _User.UserID = _PotntlApprvr.UserID
{
@ObjectModel.text.element: 'FullName'
@Search: {
defaultSearchElement: true,
ranking: #HIGH
}
key _User.UserID as UserID,
@Semantics.text: true
case
when _Employee.PersonFullName is initial
then _Employee.LastName
else _Employee.PersonFullName
end as FullName,
@UI.hidden: true
@Search: {
defaultSearchElement: true,
ranking: #LOW,
fuzzinessThreshold: 0.9
}
_Employee.LastName,
@UI.hidden: true
@Search: {
defaultSearchElement: true,
ranking: #LOW,
fuzzinessThreshold: 0.9
}
_Employee.PersonFullName,
// For Access control
@Consumption.hidden: true
@UI.hidden:true
_Employee.AuthorizationGroup,
@Consumption.hidden: true
@UI.hidden:true
_Employee.IsBusinessPurposeCompleted,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataControllerSet,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController1,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController2,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController3,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController4,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController5,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController6,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController7,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController8,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController9,
@Consumption.hidden:true
@UI.hidden:true
_Employee.DataController10
}
where
EmployOrgDet.EndDate >= $session.system_date
and _EmployStatDet.WorkAgreementStatus = '1'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PERSONWORKAGREEMENT_1",
"I_PERSONWORKAGRMTORGLDETAILS",
"I_PERSONWORKAGRMTSTATUS",
"I_USER",
"I_WORKFORCEPERSON",
"P_SLSDOCWRKFLWPOTNTLAPPRVR"
],
"ASSOCIATED":
[],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/
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