I_ChmlSuplrMatl

DDL: I_CHMLSUPLRMATL Type: view BASIC

Chemical Supplier Material

I_ChmlSuplrMatl is a Basic CDS View that provides data about "Chemical Supplier Material" in SAP S/4HANA. It reads from 1 data source (ehfndv_csm) and exposes 10 fields. It has 7 associations to related views.

Data Sources (1)

SourceAliasJoin Type
ehfndv_csm ChemicalSupplierMaterial from

Associations (7)

CardinalityTargetAliasCondition
[0..1] I_BusinessPartner _BusinessPartner $projection.BusinessPartnerSupplier = _BusinessPartner.BusinessPartner --Link to Supplier Data Data - Needed for DCL (Supplier Authorization Group) and to have the Supplier ID
[0..1] I_BusinessPartnerSupplier _BusinessPartnerSupplier $projection.BusinessPartnerSupplier = _BusinessPartnerSupplier.BusinessPartner --Link to user data
[0..1] I_User _CreatedByUser $projection.CreatedByUser = _CreatedByUser.UserID
[0..1] I_User _LastChangedByUser $projection.LastChangedByUser = _LastChangedByUser.UserID --Link to customizing tables
[1..1] I_ResponsibleUnit _ResponsibleUnit $projection.ResponsibleUnit = _ResponsibleUnit.ResponsibleUnit
[1..*] I_ChmlSuplrMatlImprtRespy _ImportResponsibility $projection.ChmlSuplrMatlUUID = _ImportResponsibility.ChmlSuplrMatlUUID --Link to domain values
[0..1] I_ChmlSuplrMatlDataSts _DataStatus $projection.ChmlSuplrMatlDataStatus = _DataStatus.ChmlSuplrMatlDataStatus

Annotations (11)

NameValueLevelField
EndUserText.label Chemical Supplier Material view
AbapCatalog.sqlViewName ICSUPLRMATL view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #BASIC view
ObjectModel.usageType.dataClass #MASTER view
ObjectModel.usageType.sizeCategory #M view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.representativeKey ChmlSuplrMatlUUID view

Fields (10)

KeyFieldSource TableSource FieldDescription
chmlsuplrmatluuidasChmlSuplrMatlUUID
chmlsuplrmatlnameasChmlSuplrMatlName
responsibleunitasResponsibleUnit
_BusinessPartner _BusinessPartner
_BusinessPartnerSupplier _BusinessPartnerSupplier
_CreatedByUser _CreatedByUser
_LastChangedByUser _LastChangedByUser
_DataStatus _DataStatus
_ResponsibleUnit _ResponsibleUnit
_ImportResponsibility _ImportResponsibility
--Label of view
@EndUserText.label: 'Chemical Supplier Material'

@AbapCatalog:
{
  -- SQL view name (16 characters)
  sqlViewName: 'ICSUPLRMATL',

  --If it's true, the filter conditions are compared and, if they match, the associated join expression is evaluated only once
  compiler.compareFilter: true
}

--Access Control: Authorizations Checks
@AccessControl:
{
  authorizationCheck: #CHECK,
  // blocking of personal data required because of link to business partner / supplier

  personalData.blocking: #REQUIRED,
  privilegedAssociations:  [ '_CreatedByUser', '_LastChangedByUser' ]
}

--Client Handling of the view
@ClientHandling.algorithm: #SESSION_VARIABLE

--VDM view type
@VDM.viewType: #BASIC

@ObjectModel:
{
  --Performance Annotations
  usageType:
  {
    dataClass: #MASTER,
    sizeCategory: #M,
    serviceQuality: #B
  },
  representativeKey: 'ChmlSuplrMatlUUID'
}

define view I_ChmlSuplrMatl
  --Select data from master table 'Chemical Supplier Material'
  as select from ehfndv_csm as ChemicalSupplierMaterial

  --Link to Business Partner Data
  association [0..1] to I_BusinessPartner         as _BusinessPartner         on $projection.BusinessPartnerSupplier = _BusinessPartner.BusinessPartner
  --Link to Supplier Data Data - Needed for DCL (Supplier Authorization Group) and to have the Supplier ID
  association [0..1] to I_BusinessPartnerSupplier as _BusinessPartnerSupplier on $projection.BusinessPartnerSupplier = _BusinessPartnerSupplier.BusinessPartner

  --Link to user data
  association [0..1] to I_User                    as _CreatedByUser           on $projection.CreatedByUser = _CreatedByUser.UserID
  association [0..1] to I_User                    as _LastChangedByUser       on $projection.LastChangedByUser = _LastChangedByUser.UserID

  --Link to customizing tables
  association [1..1] to I_ResponsibleUnit         as _ResponsibleUnit         on $projection.ResponsibleUnit = _ResponsibleUnit.ResponsibleUnit

  association [1..*] to I_ChmlSuplrMatlImprtRespy as _ImportResponsibility    on $projection.ChmlSuplrMatlUUID = _ImportResponsibility.ChmlSuplrMatlUUID
  --Link to domain values
  association [0..1] to I_ChmlSuplrMatlDataSts    as _DataStatus              on $projection.ChmlSuplrMatlDataStatus = _DataStatus.ChmlSuplrMatlDataStatus
{
      --UUID of Chemical Supplier Material
  key ChemicalSupplierMaterial.chmlsuplrmatluuid                           as ChmlSuplrMatlUUID,

      --Create date/time
      @Semantics.systemDateTime.createdAt: true
      cast(ChemicalSupplierMaterial.creationutcdatetime as ehfnd_bo_crea_date_time preserving type )
                                                                           as CreationUTCDateTime,

      --Created by user
      @Semantics.user.createdBy: true
      @ObjectModel.readOnly: true
      cast(ChemicalSupplierMaterial.createdbyuser as ehfnd_bo_crea_uname preserving type )
                                                                           as CreatedByUser,

      --Change date/time
      @Semantics.systemDateTime.lastChangedAt: true
      cast(ChemicalSupplierMaterial.lastchangeutcdatetime as ehfnd_bo_lchg_date_time preserving type )
                                                                           as LastChangeUTCDateTime,

      --Changed by user
      @Semantics.user.lastChangedBy: true
      @ObjectModel.readOnly: true
      cast(ChemicalSupplierMaterial.lastchangedbyuser as ehfnd_bo_lchg_uname preserving type )
                                                                           as LastChangedByUser,

      --Supplier (saved as business partner)
      //--[ GENERATED:012:GlBfhyFV7jY4i}8L6{LzUW

      @Consumption.valueHelpDefinition: [
        { entity:  { name:    'I_BusinessPartnerVH',
                     element: 'BusinessPartner' }
        }]
      // ]--GENERATED

      @ObjectModel.foreignKey.association: '_BusinessPartner'
      ChemicalSupplierMaterial.businesspartnersupplier                     as BusinessPartnerSupplier,

      --Supplier Material Number
      ChemicalSupplierMaterial.suppliermaterialnumber                      as SupplierMaterialNumber,

      --Supplier Material Name
      ChemicalSupplierMaterial.chmlsuplrmatlname                           as ChmlSuplrMatlName,

      --Data Status
      @ObjectModel.foreignKey.association: '_DataStatus'
      ChemicalSupplierMaterial.chmlsuplrmatldatastatus                     as ChmlSuplrMatlDataStatus,

      --Indicator: supplier material is outdated
      ChemicalSupplierMaterial.chmlsuplrmatlisoutdated                     as ChmlSuplrMatlIsOutdated,

      --Responsible Unit
      @ObjectModel.foreignKey.association: '_ResponsibleUnit'
      ChemicalSupplierMaterial.responsibleunit                             as ResponsibleUnit,

      --Change date of data status
      ChemicalSupplierMaterial.chmlsuplrmatldatastschgdtetme               as ChmlSuplrMatlDataStsChgDteTme,
      

      /*Associations*/
      _BusinessPartner,
      _BusinessPartnerSupplier,

      _CreatedByUser,
      _LastChangedByUser,

      _DataStatus,
      _ResponsibleUnit,
      _ImportResponsibility
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"EHFNDV_CSM"
],
"ASSOCIATED":
[
"I_BUSINESSPARTNER",
"I_BUSINESSPARTNERSUPPLIER",
"I_CHMLSUPLRMATLDATASTS",
"I_CHMLSUPLRMATLIMPRTRESPY",
"I_RESPONSIBLEUNIT",
"I_USER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/