A_SalesContractText

DDL: A_SALESCONTRACTTEXT Type: view COMPOSITE

Header Text

A_SalesContractText is a Composite CDS View that provides data about "Header Text" in SAP S/4HANA. It reads from 2 data sources (P_SalesDocumentText, I_SalesDocumentBasic) and exposes 9 fields with key fields SalesContract, Language, LongTextID. It has 1 association to related views.

Data Sources (2)

SourceAliasJoin Type
P_SalesDocumentText P_SalesDocumentText from
I_SalesDocumentBasic SalesDocumentBasic inner

Associations (1)

CardinalityTargetAliasCondition
[1..1] A_SalesContract _SalesContract _SalesContract.SalesContract = $projection.SalesContract

Annotations (15)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Header Text view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_REMOTE_API view
AbapCatalog.sqlViewName ASCTEXT view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #MANDATORY view
ObjectModel.updateEnabled true view
ObjectModel.deleteEnabled true view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.dataCategory #TEXT view
Metadata.ignorePropagatedAnnotations true view
AbapCatalog.preserveKey true view

Fields (9)

KeyFieldSource TableSource FieldDescription
KEY SalesContract
KEY Language SalesContractText Language
KEY LongTextID SalesContractText LongTextID
LongText SalesContractText LongText
SalesContractType I_SalesDocumentBasic SalesDocumentType
OrganizationDivision I_SalesDocumentBasic OrganizationDivision
SalesOrganization I_SalesDocumentBasic SalesOrganization
DistributionChannel I_SalesDocumentBasic DistributionChannel
_SalesContract _SalesContract
@ClientHandling.algorithm:#SESSION_VARIABLE 
@EndUserText.label: 'Header Text'
@VDM: {
  viewType: #COMPOSITE,
  lifecycle.contract.type: #PUBLIC_REMOTE_API
}
@AbapCatalog: {
  sqlViewName: 'ASCTEXT',
  compiler.compareFilter: true 
}
@AccessControl: {
  authorizationCheck: #MANDATORY,
  personalData.blocking: #('TRANSACTIONAL_DATA')  
}
@ObjectModel: { 
   updateEnabled: true,
   deleteEnabled: true,
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #C,
     sizeCategory:   #L
   }, 
   dataCategory: #TEXT
}
@Metadata.ignorePropagatedAnnotations: true 
@AbapCatalog.preserveKey:true
define view A_SalesContractText 
  as select from P_SalesDocumentText( P_SAPClient : $session.client ) as SalesContractText
    inner join   I_SalesDocumentBasic                                 as SalesDocumentBasic on  SalesDocumentBasic.SalesDocument      = SalesContractText.SalesDocument
                                                                                            and SalesDocumentBasic.SDDocumentCategory = 'G'
  association [1..1] to A_SalesContract as _SalesContract on _SalesContract.SalesContract = $projection.SalesContract
{

      @ObjectModel.readOnly: true
  key cast(SalesContractText.SalesDocument as sales_contract preserving type)      as SalesContract,
   
      @Semantics.language:true
  key SalesContractText.Language,
  key SalesContractText.LongTextID,        
  
      @Semantics.text:true
      @ObjectModel.virtualElement
      @ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_S4H_STXL_SALESCONTRACT'
      SalesContractText.LongText,

      // For Access control

      @Consumption.hidden: true
      SalesDocumentBasic.SalesDocumentType                     as SalesContractType,
      //_SalesContract.SalesContractType,

      @Consumption.hidden: true
      SalesDocumentBasic.OrganizationDivision,
      @Consumption.hidden: true
      SalesDocumentBasic.SalesOrganization,
      @Consumption.hidden: true
      SalesDocumentBasic.DistributionChannel,

      // Expose own associations

      _SalesContract

}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_SALESDOCUMENTBASIC"
],
"ASSOCIATED":
[
"A_SALESCONTRACT"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/