C_CustomerReturnWrkflwInbox

DDL: C_CUSTOMERRETURNWRKFLWINBOX Type: view CONSUMPTION

Customer Return Workflow Inbox

C_CustomerReturnWrkflwInbox is a Consumption CDS View that provides data about "Customer Return Workflow Inbox" in SAP S/4HANA. It reads from 1 data source (I_CustomerReturnEnhanced) and exposes 40 fields with key field CustomerReturn. It has 1 association to related views.

Data Sources (1)

SourceAliasJoin Type
I_CustomerReturnEnhanced CustomerReturn from

Associations (1)

CardinalityTargetAliasCondition
[0..*] C_CustomerReturnItmWrkflwInbox _CustomerReturnItem $projection.CustomerReturn = _CustomerReturnItem.CustomerReturn

Annotations (13)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Customer Return Workflow Inbox view
AbapCatalog.preserveKey true view
AbapCatalog.sqlViewName CSDCRWRKFLWIN view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
ObjectModel.compositionRoot true view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
VDM.viewType #CONSUMPTION view
UI.headerInfo.title.type #STANDARD view
UI.headerInfo.title.value DocumentTitle view

Fields (40)

KeyFieldSource TableSource FieldDescription
KEY CustomerReturn I_CustomerReturnEnhanced CustomerReturn Return
CustomerReturnType I_CustomerReturnEnhanced CustomerReturnType
CustomerReturn01asDocumentTitle
SoldToPartyName
SoldToParty I_CustomerReturnEnhanced SoldToParty
ShipToPartyName
ShipToParty CustRetPartner Customer Ship-To Party
CityName City
CountryName
Country Country or Region
PurchaseOrderByCustomer I_CustomerReturnEnhanced PurchaseOrderByCustomer
TransactionCurrency I_CustomerReturnEnhanced TransactionCurrency
TotalNetAmount I_CustomerReturnEnhanced TotalNetAmount
SDDocumentReasonText
SDDocumentReason I_CustomerReturnEnhanced SDDocumentReason
SDApprovalReasonName
CustomerReturnApprovalReason I_CustomerReturnEnhanced CustomerReturnApprovalReason Approval Request Reason
SalesOrganizationName
SalesOrganization I_CustomerReturnEnhanced SalesOrganization
DistributionChannelName
DistributionChannel I_CustomerReturnEnhanced DistributionChannel
DivisionName
OrganizationDivision I_CustomerReturnEnhanced OrganizationDivision
UserName
CreatedByUser I_CustomerReturnEnhanced CreatedByUser
CreationDate I_CustomerReturnEnhanced CreationDate Created On
UserDescription
LastChangedByUser I_CustomerReturnEnhanced LastChangedByUser
LastChangeDate I_CustomerReturnEnhanced LastChangeDate Last Changed On
_CustomerReturnItem _CustomerReturnItem
_SoldToParty _SoldToParty
_TransactionCurrency _TransactionCurrency
_SalesOrganization _SalesOrganization
_DistributionChannel _DistributionChannel
_OrganizationDivision _OrganizationDivision
_CustRetApprovalReason _CustRetApprovalReason
_SDDocumentReason _SDDocumentReason
_CustomerReturnType _CustomerReturnType
_CreatedByUser _CreatedByUser
_LastChangedByUser _LastChangedByUser
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Customer Return Workflow Inbox'
@AbapCatalog: {
  preserveKey: true,
  sqlViewName: 'CSDCRWRKFLWIN',
  compiler.compareFilter: true
}
@AccessControl: {
  authorizationCheck: #CHECK,
  personalData.blocking: #('TRANSACTIONAL_DATA'),
  privilegedAssociations: [ '_CreatedByUser', '_LastChangedByUser' ]
}
@ObjectModel: {
   compositionRoot: true,
   semanticKey: ['CustomerReturn'],
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #C,
     sizeCategory:   #L
   }
}
@VDM.viewType: #CONSUMPTION
@UI.headerInfo: {
  title:{ type:   #STANDARD,
          value: 'DocumentTitle'
  }
}

define view C_CustomerReturnWrkflwInbox
  as select from           I_CustomerReturnEnhanced as CustomerReturn
    left outer to one join I_CustomerReturnPartner  as CustRetPartner on  CustomerReturn.CustomerReturn  = CustRetPartner.CustomerReturn
                                                                      and CustRetPartner.PartnerFunction = 'WE' //Ship-to party

    left outer to one join I_Customer               as ShipToParty    on CustRetPartner.Customer = ShipToParty.Customer

  //Associations

  association [0..*] to C_CustomerReturnItmWrkflwInbox as _CustomerReturnItem on $projection.CustomerReturn = _CustomerReturnItem.CustomerReturn
{
      @UI.facet: [
        {
          label: 'General Information',
          id: 'GeneralInformation',
          isSummary,
          type: #COLLECTION,
          position: 10
        },
        {
          label: 'Basic data',
          id: 'BasicData',
          parentId: 'GeneralInformation',
          type: #IDENTIFICATION_REFERENCE,
          position: 10
        },
        {
          label: 'Sales Data',
          id: 'Sales',
          parentId: 'GeneralInformation',
          type: #FIELDGROUP_REFERENCE,
          position: 20,
          targetQualifier: 'CRSales'
        },
        {
          label: 'Administrative Data',
          id: 'Administrative',
          parentId: 'GeneralInformation',
          type: #FIELDGROUP_REFERENCE,
          position: 30,
          targetQualifier: 'CRAdministrative'
        },
        {
          label: 'Items',
          id: 'Items',
          purpose: #STANDARD,
          type: #LINEITEM_REFERENCE,
          position: 30,
          targetElement: '_CustomerReturnItem'
        }
      ]

      @Consumption.semanticObject: 'CustomerReturn'
      @UI.identification: { position: 10 }
      @EndUserText.label: 'Return'
  key CustomerReturn.CustomerReturn,
      CustomerReturn.CustomerReturnType,

      concat_with_space(concat_with_space(CustomerReturn._CustomerReturnType._Text[1: Language=$session.system_language].SalesDocumentTypeName, '-', 1),
      ltrim(CustomerReturn.CustomerReturn,'0'), 1)  as DocumentTitle,

      //_SoldToParty.CustomerName                                                              as CustomerName,

      @Semantics.text:true
      @Consumption.filter.hidden: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_CUSTRET_UI_PARTNER_UTIL'
      cast('' as ad_namtext )                       as SoldToPartyName,
      @UI.identification: { position: 20 }
      @ObjectModel.text.element:  [ 'SoldToPartyName' ]
      @Consumption.semanticObject: 'Customer'
      CustomerReturn.SoldToParty,

      //ShipToParty.CustomerName                                                               as ShipToPartyName,

      @Semantics.text:true
      @Consumption.filter.hidden: true
      @ObjectModel.virtualElement: true
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_CUSTRET_UI_PARTNER_UTIL'
      cast('' as ad_namtext )                       as ShipToPartyName,
      @UI.identification: { position: 30 }
      @ObjectModel.text.element:  [ 'ShipToPartyName' ]
      @Consumption.semanticObject: 'Customer'
      @EndUserText.label: 'Ship-To Party'
      CustRetPartner.Customer                       as ShipToParty,

      @UI.identification: { position: 40 }
      @EndUserText.label: 'City'
      CustRetPartner._DfltAddrRprstn.CityName,

      CustRetPartner._DfltAddrRprstn._Country._Text[1: Language=$session.system_language ].CountryName,
      @UI.identification: { position: 50 }
      @EndUserText.label: 'Country or Region'
      @ObjectModel.text.element: [ 'CountryName' ]
      CustRetPartner._DfltAddrRprstn.Country        as Country,

      @UI.identification: { position: 60 }
      CustomerReturn.PurchaseOrderByCustomer,
      @Semantics.currencyCode: true
      CustomerReturn.TransactionCurrency,
      @UI.dataPoint: { qualifier: 'DataPoint01' }
      @UI.identification: { position: 70 }
      @Semantics.amount.currencyCode: 'TransactionCurrency'
      CustomerReturn.TotalNetAmount,

      CustomerReturn._SDDocumentReason._Text[1: Language=$session.system_language ].SDDocumentReasonText,
      @ObjectModel.text.element: [ 'SDDocumentReasonText' ]
      @UI.fieldGroup: { qualifier: 'CRSales', position: 10, importance: #MEDIUM }
      CustomerReturn.SDDocumentReason,

      CustomerReturn._CustRetApprovalReason._SDApprovalReasonT[1: Language=$session.system_language ].SDApprovalReasonName,
      @EndUserText.label: 'Approval Request Reason'
      @ObjectModel.text.element: [ 'SDApprovalReasonName' ]
      @UI.fieldGroup: { qualifier: 'CRSales', position: 20, importance: #MEDIUM }
      CustomerReturn.CustomerReturnApprovalReason,

      CustomerReturn._SalesOrganization._Text[1: Language=$session.system_language ].SalesOrganizationName,
      @ObjectModel.text.element: [ 'SalesOrganizationName' ]
      @UI.fieldGroup: { qualifier: 'CRSales', position: 30, importance: #MEDIUM }
      CustomerReturn.SalesOrganization,

      CustomerReturn._DistributionChannel._Text[1: Language=$session.system_language ].DistributionChannelName,
      @ObjectModel.text.element: [ 'DistributionChannelName' ]
      @UI.fieldGroup: { qualifier: 'CRSales', position: 40, importance: #MEDIUM }
      CustomerReturn.DistributionChannel,

      CustomerReturn._OrganizationDivision._Text[1: Language=$session.system_language ].DivisionName,
      @ObjectModel.text.element: [ 'DivisionName' ]
      @UI.fieldGroup: { qualifier: 'CRSales', position: 50, importance: #MEDIUM }
      CustomerReturn.OrganizationDivision,

      @Semantics.text: true
      CustomerReturn._CreatedByUser.UserDescription as UserName,
      @ObjectModel.text.element:  [ 'UserName' ]
      @UI.fieldGroup: { qualifier: 'CRAdministrative', position: 90, importance: #MEDIUM }
      CustomerReturn.CreatedByUser,
      @UI.fieldGroup: { qualifier: 'CRAdministrative', position: 100, importance: #MEDIUM }
      @EndUserText.label: 'Created On'
      CustomerReturn.CreationDate,
      @Semantics.text: true
      CustomerReturn._LastChangedByUser.UserDescription,
      @ObjectModel.text.element:  [ 'UserDescription' ]
      @UI.fieldGroup: { qualifier: 'CRAdministrative', position: 110, importance: #MEDIUM }
      CustomerReturn.LastChangedByUser,
      @UI.fieldGroup: { qualifier: 'CRAdministrative', position: 120, importance: #MEDIUM }
      @EndUserText.label: 'Last Changed On'
      CustomerReturn.LastChangeDate,

      //Associations

      @ObjectModel.association.type: [#TO_COMPOSITION_CHILD]
      _CustomerReturnItem,
      _SoldToParty,
      _TransactionCurrency,
      _SalesOrganization,
      _DistributionChannel,
      _OrganizationDivision,
      _CustRetApprovalReason,
      _SDDocumentReason,
      _CustomerReturnType,
      _CreatedByUser,
      _LastChangedByUser
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_ADDRESS_2",
"I_COUNTRY",
"I_COUNTRYTEXT",
"I_CUSTOMER",
"I_CUSTOMERRETURNAPPROVALREASON",
"I_CUSTOMERRETURNENHANCED",
"I_CUSTOMERRETURNPARTNER",
"I_DISTRIBUTIONCHANNEL",
"I_DISTRIBUTIONCHANNELTEXT",
"I_DIVISION",
"I_DIVISIONTEXT",
"I_SALESDOCUMENTTYPE",
"I_SALESDOCUMENTTYPETEXT",
"I_SALESORGANIZATION",
"I_SALESORGANIZATIONTEXT",
"I_SDAPPROVALREASONT",
"I_SDDOCUMENTREASON",
"I_SDDOCUMENTREASONTEXT",
"I_USER"
],
"ASSOCIATED":
[
"C_CUSTOMERRETURNITMWRKFLWINBOX",
"I_CURRENCY",
"I_CUSTOMER",
"I_CUSTOMERRETURNAPPROVALREASON",
"I_DISTRIBUTIONCHANNEL",
"I_DIVISION",
"I_SALESDOCUMENTTYPE",
"I_SALESORGANIZATION",
"I_SDDOCUMENTREASON",
"I_USER"
],
"BASE":
[
"I_CUSTOMERRETURNENHANCED"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/