I_Supplier

DDL: I_SUPPLIER SQL: I_SUPPLIER_CDS Type: view BASIC

Supplier

I_Supplier is a Basic CDS View (Dimension) that provides data about "Supplier" in SAP S/4HANA. It reads from 1 data source (lfa1). It has 25 associations to related views.

Data Sources (1)

SourceAliasJoin Type
lfa1 lfa1 from

Associations (25)

CardinalityTargetAliasCondition
[1..1] I_SupplierToBusinessPartner _SupplierToBusinessPartner $projection.Supplier = _SupplierToBusinessPartner.Supplier
[0..1] bp1020 _FiscalData lfa1.lifnr = _FiscalData.partnr
[0..*] I_SupplierCompany _SupplierCompany $projection.Supplier = _SupplierCompany.Supplier
[0..*] I_SupplierPurchasingOrg _SupplierPurchasingOrg $projection.Supplier = _SupplierPurchasingOrg.Supplier
[0..*] I_SupplierBankDetails _SupplierBankDetails $projection.Supplier = _SupplierBankDetails.Supplier
[0..1] I_SupplierAccountGroup _SupplierAccountGroup $projection.SupplierAccountGroup = _SupplierAccountGroup.SupplierAccountGroup
[0..*] I_Industries _Industry $projection.Industry = _Industry.IndustrySector
[0..1] I_Customer _CorrespondingCustomer $projection.Customer = _CorrespondingCustomer.Customer
[0..*] I_SupplierAccountGroupText _SupplierAccountGroupText $projection.SupplierAccountGroup = _SupplierAccountGroupText.SupplierAccountGroup
[0..*] I_SupplierIndustryText _SupplierIndustryText $projection.Industry = _SupplierIndustryText.SupplierIndustry
[0..1] I_ProcurementBlock _ProcurementBlock $projection.SupplierProcurementBlock = _ProcurementBlock.ProcurementBlock
[0..1] I_QualityManagementSystem _QualityManagementSystem $projection.SuplrQualityManagementSystem = _QualityManagementSystem.QualityManagementSystem
[1..1] I_Address _StandardAddress $projection.AddressID = _StandardAddress.AddressID
[0..1] E_Supplier _SupplierExt $projection.Supplier = _SupplierExt.Supplier
[0..1] I_OrganizationAddress _AddressDefaultRepresentation $projection.AddressID = _AddressDefaultRepresentation.AddressID and _AddressDefaultRepresentation.AddressRepresentationCode is initial
[0..1] I_Address_2 _AddressRepresentation $projection.AddressID = _AddressRepresentation.AddressID and _AddressRepresentation.AddressRepresentationCode is initial and _AddressRepresentation.AddressPersonID is initial
[0..*] I_AddressEmailAddress_2 _EmailAddress _EmailAddress.AddressID = $projection.AddressID and _EmailAddress.AddressPersonID is initial
[0..1] I_AddrCurDefaultEmailAddress _CurrentDfltEmailAddress _CurrentDfltEmailAddress.AddressID = $projection.AddressID and _CurrentDfltEmailAddress.AddressPersonID is initial
[0..*] I_AddressPhoneNumber_2 _PhoneNumber _PhoneNumber.AddressID = $projection.AddressID and _PhoneNumber.AddressPersonID is initial
[0..1] I_AddrCurDfltLandlinePhoneNmbr _CurrentDfltLandlinePhoneNmbr _CurrentDfltLandlinePhoneNmbr.AddressID = $projection.AddressID and _CurrentDfltLandlinePhoneNmbr.AddressPersonID is initial
[0..1] I_AddrCurDfltMobilePhoneNumber _CurrentDfltMobilePhoneNumber _CurrentDfltMobilePhoneNumber.AddressID = $projection.AddressID and _CurrentDfltMobilePhoneNumber.AddressPersonID is initial
[0..*] I_AddressFaxNumber_2 _FaxNumber _FaxNumber.AddressID = $projection.AddressID and _FaxNumber.AddressPersonID is initial
[0..1] I_AddrCurDefaultFaxNumber _CurrentDfltFaxNumber _CurrentDfltFaxNumber.AddressID = $projection.AddressID and _CurrentDfltFaxNumber.AddressPersonID is initial
[0..*] I_AddressURI _UniformResourceIdentifier _UniformResourceIdentifier.AddressID = $projection.AddressID and _UniformResourceIdentifier.AddressPersonID is initial
[0..1] I_AddressMainWebsiteURL _MainWebsiteURL _MainWebsiteURL.AddressID = $projection.AddressID and _MainWebsiteURL.AddressPersonID is initial

Annotations (18)

NameValueLevelField
AbapCatalog.sqlViewName I_SUPPLIER_CDS view
AbapCatalog.preserveKey true view
AccessControl.personalData.blocking #REQUIRED view
AccessControl.personalData.blockingIndicator IsBusinessPurposeCompleted view
AccessControl.authorizationCheck #CHECK view
Analytics.dataCategory #DIMENSION view
Analytics.dataExtraction.enabled true view
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Supplier view
Metadata.allowExtensions true view
Metadata.ignorePropagatedAnnotations true view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
ObjectModel.representativeKey Supplier view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.usageType.dataClass #MASTER view
VDM.viewType #BASIC view
ObjectModel.sapObjectNodeType.name Supplier view
@AbapCatalog.sqlViewName: 'I_SUPPLIER_CDS'
@AbapCatalog.preserveKey:true
@AccessControl.personalData.blocking: #REQUIRED
@AccessControl.personalData.blockingIndicator: 'IsBusinessPurposeCompleted'
@AccessControl.authorizationCheck: #CHECK
@AccessControl.privilegedAssociations: ['_AddressDefaultRepresentation','_AddressRepresentation']
@Analytics: {
  dataCategory: #DIMENSION,
  dataExtraction: {
    enabled: true,
    delta.changeDataCapture: {
      mapping:[
           {
            table: 'LFA1', role: #MAIN,
            viewElement: ['Supplier'],
            tableElement: ['lifnr']
          },

         {
            table: 'ADRC', role: #LEFT_OUTER_TO_ONE_JOIN,
            viewElement: ['AddressID'],
             tableElement: ['Addrnumber']
         } ]
    }
  }
}
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Supplier'
@Metadata.allowExtensions: true
@Metadata.ignorePropagatedAnnotations: true
@ObjectModel.supportedCapabilities: [#SQL_DATA_SOURCE,
                                     #CDS_MODELING_DATA_SOURCE,
                                     #CDS_MODELING_ASSOCIATION_TARGET,
                                     #ANALYTICAL_DIMENSION,
                                     #EXTRACTION_DATA_SOURCE]
@ObjectModel.modelingPattern: #ANALYTICAL_DIMENSION
@ObjectModel.representativeKey: 'Supplier'
@ObjectModel.usageType.serviceQuality: #A
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MASTER
@VDM.viewType: #BASIC
@ObjectModel.sapObjectNodeType.name: 'Supplier'
define view I_Supplier
  as select from lfa1
  //private associations

  association [1..1] to I_SupplierToBusinessPartner    as _SupplierToBusinessPartner    on  $projection.Supplier = _SupplierToBusinessPartner.Supplier
  association [0..1] to bp1020                         as _FiscalData                   on  lfa1.lifnr = _FiscalData.partnr // technically wrong for lifnr<>but000.partner, but usage of $projection.BusinessPartner is not allowed. H

  //public composition associations

  association [0..*] to I_SupplierCompany              as _SupplierCompany              on  $projection.Supplier = _SupplierCompany.Supplier
  association [0..*] to I_SupplierPurchasingOrg        as _SupplierPurchasingOrg        on  $projection.Supplier = _SupplierPurchasingOrg.Supplier
  association [0..*] to I_SupplierBankDetails          as _SupplierBankDetails          on  $projection.Supplier = _SupplierBankDetails.Supplier
  //public value helps

  association [0..1] to I_SupplierAccountGroup         as _SupplierAccountGroup         on  $projection.SupplierAccountGroup = _SupplierAccountGroup.SupplierAccountGroup
  association [0..*] to I_Industries                   as _Industry                     on  $projection.Industry = _Industry.IndustrySector
  //public foreign key associations

  association [0..1] to I_Customer                     as _CorrespondingCustomer        on  $projection.Customer = _CorrespondingCustomer.Customer

  ////public texts

  association [0..*] to I_SupplierAccountGroupText     as _SupplierAccountGroupText     on  $projection.SupplierAccountGroup = _SupplierAccountGroupText.SupplierAccountGroup
  association [0..*] to I_SupplierIndustryText         as _SupplierIndustryText         on  $projection.Industry = _SupplierIndustryText.SupplierIndustry
  ////public foreign key associations


  //quality management

  association [0..1] to I_ProcurementBlock             as _ProcurementBlock             on  $projection.SupplierProcurementBlock = _ProcurementBlock.ProcurementBlock
  association [0..1] to I_QualityManagementSystem      as _QualityManagementSystem      on  $projection.SuplrQualityManagementSystem = _QualityManagementSystem.QualityManagementSystem
  association [1..1] to I_Address                      as _StandardAddress              on  $projection.AddressID = _StandardAddress.AddressID
  //  association [1..1] to I_BusinessPartnerAddress      as _BusinessPartnerAddress   on $projection.BusinessPartner = _BusinessPartnerAddress.BusinessPartner

  // and $projection.AddressID =  _BusinessPartnerAddress.AddressNumber

  association [0..1] to E_Supplier                     as _SupplierExt                  on  $projection.Supplier = _SupplierExt.Supplier

  // association added for I_ADDRESS_2 adoption

  association [0..1] to I_OrganizationAddress          as _AddressDefaultRepresentation on  $projection.AddressID                                   = _AddressDefaultRepresentation.AddressID
                                                                                        and _AddressDefaultRepresentation.AddressRepresentationCode is initial
  association [0..1] to I_Address_2                    as _AddressRepresentation        on  $projection.AddressID                            = _AddressRepresentation.AddressID
                                                                                        and _AddressRepresentation.AddressRepresentationCode is initial
                                                                                        and _AddressRepresentation.AddressPersonID           is initial
  //Adoption from I_Address_2

  association [0..*] to I_AddressEmailAddress_2        as _EmailAddress                 on  _EmailAddress.AddressID       = $projection.AddressID
                                                                                        and _EmailAddress.AddressPersonID is initial

  association [0..1] to I_AddrCurDefaultEmailAddress   as _CurrentDfltEmailAddress      on  _CurrentDfltEmailAddress.AddressID       = $projection.AddressID
                                                                                        and _CurrentDfltEmailAddress.AddressPersonID is initial

  association [0..*] to I_AddressPhoneNumber_2         as _PhoneNumber                  on  _PhoneNumber.AddressID       = $projection.AddressID
                                                                                        and _PhoneNumber.AddressPersonID is initial

  association [0..1] to I_AddrCurDfltLandlinePhoneNmbr as _CurrentDfltLandlinePhoneNmbr on  _CurrentDfltLandlinePhoneNmbr.AddressID       = $projection.AddressID
                                                                                        and _CurrentDfltLandlinePhoneNmbr.AddressPersonID is initial

  association [0..1] to I_AddrCurDfltMobilePhoneNumber as _CurrentDfltMobilePhoneNumber on  _CurrentDfltMobilePhoneNumber.AddressID       = $projection.AddressID
                                                                                        and _CurrentDfltMobilePhoneNumber.AddressPersonID is initial

  association [0..*] to I_AddressFaxNumber_2           as _FaxNumber                    on  _FaxNumber.AddressID       = $projection.AddressID
                                                                                        and _FaxNumber.AddressPersonID is initial

  association [0..1] to I_AddrCurDefaultFaxNumber      as _CurrentDfltFaxNumber         on  _CurrentDfltFaxNumber.AddressID       = $projection.AddressID
                                                                                        and _CurrentDfltFaxNumber.AddressPersonID is initial

  association [0..*] to I_AddressURI                   as _UniformResourceIdentifier    on  _UniformResourceIdentifier.AddressID       = $projection.AddressID
                                                                                        and _UniformResourceIdentifier.AddressPersonID is initial

  association [0..1] to I_AddressMainWebsiteURL        as _MainWebsiteURL               on  _MainWebsiteURL.AddressID       = $projection.AddressID
                                                                                        and _MainWebsiteURL.AddressPersonID is initial


{

      @ObjectModel.text.element: 'SupplierName'
      @Consumption.labelElement: 'SupplierName'
  key cast(lfa1.lifnr as lifnr preserving type)                                                                                                                                                                                                                                                             as Supplier,
      //  _SupplierToBusinessPartner._BusinessPartner.BusinessPartner                                                 as BusinessPartner,

      @EndUserText.label: 'Account Group'
      ktokk                                                                                                                                                                                                                                                                                                 as SupplierAccountGroup,
      @Semantics.text: true
      cast(substring(rtrim(replace(concat(name1, concat(' &@', name2)), '&@', ''),' '),1,80) as md_supplier_name)                                                                                                                                                                                           as SupplierName,
      cast(concat( concat( concat( concat( concat( concat_with_space( anred, name1, 1 ), name2 ), name3 ), name4 ), '/' ),
          concat_with_space( pstlz, ort01 , 1 ) )  as md_supplier_full_name)                                                                                                                                                                                                                                as SupplierFullName,

      // // For increase in field length

      @Semantics.text: true
      cast(substring(rtrim(replace(concat(_AddressDefaultRepresentation.AddresseeName1, concat(' &@', _AddressDefaultRepresentation.AddresseeName2)), '&@', ''),' '),1,81) as suppliername_2)                                                                                                               as BPSupplierName,
      cast(concat( concat_with_space( concat_with_space( concat_with_space(_AddressDefaultRepresentation.AddresseeName1, _AddressDefaultRepresentation.AddresseeName2,1 ), _AddressDefaultRepresentation.AddresseeName3,1 ), _AddressDefaultRepresentation.AddresseeName4,1 ), ' ' ) as supplierfullname_2) as BPSupplierFullName,

      //      _AddressRepresentation.OrganizationName1                                                                                                                                                                                            as BusinessPartnerName1,

      //      _AddressRepresentation.OrganizationName2                                                                                                                                                                                            as BusinessPartnerName2,

      //      _AddressRepresentation.OrganizationName3                                                                                                                                                                                            as BusinessPartnerName3,

      //      _AddressRepresentation.OrganizationName4                                                                                                                                                                                            as BusinessPartnerName4,



      //Adoption of Name and Address fields

      _AddressDefaultRepresentation.AddresseeName1                                                                                                                                                                                                                                                          as BusinessPartnerName1,
      _AddressDefaultRepresentation.AddresseeName2                                                                                                                                                                                                                                                          as BusinessPartnerName2,
      _AddressDefaultRepresentation.AddresseeName3                                                                                                                                                                                                                                                          as BusinessPartnerName3,
      _AddressDefaultRepresentation.AddresseeName4                                                                                                                                                                                                                                                          as BusinessPartnerName4,
      _AddressDefaultRepresentation.CityName                                                                                                                                                                                                                                                                as BPAddrCityName,
      _AddressDefaultRepresentation.StreetName                                                                                                                                                                                                                                                              as BPAddrStreetName,
      _AddressDefaultRepresentation.AddressSearchTerm1                                                                                                                                                                                                                                                      as AddressSearchTerm1,
      _AddressDefaultRepresentation.AddressSearchTerm2                                                                                                                                                                                                                                                      as AddressSearchTerm2,
      _AddressDefaultRepresentation.DistrictName                                                                                                                                                                                                                                                            as DistrictName,
      _AddressDefaultRepresentation.POBoxDeviatingCityName                                                                                                                                                                                                                                                  as POBoxDeviatingCityName,
      _AddressDefaultRepresentation.FormOfAddress                                                                                                                                                                                                                                                           as BusinessPartnerFormOfAddress,


      lfa1.cvp_xblck                                                                                                                                                                                                                                                                                        as IsBusinessPurposeCompleted,
      @EndUserText.label: 'Created By'
      ernam                                                                                                                                                                                                                                                                                                 as CreatedByUser,
      erdat                                                                                                                                                                                                                                                                                                 as CreationDate,
      xcpdk                                                                                                                                                                                                                                                                                                 as IsOneTimeAccount,
      begru                                                                                                                                                                                                                                                                                                 as AuthorizationGroup,
      stceg                                                                                                                                                                                                                                                                                                 as VATRegistration,
      @EndUserText.label: 'Posting Block(Deprecated)'
      @API.element.releaseState: #DEPRECATED
      @API.element.successor: 'PostingIsBlocked'
      sperr                                                                                                                                                                                                                                                                                                 as AccountIsBlockedForPosting,
      txjcd                                                                                                                                                                                                                                                                                                 as TaxJurisdiction,
      scacd                                                                                                                                                                                                                                                                                                 as SupplierStandardCarrierAccess,
      sfrgr                                                                                                                                                                                                                                                                                                 as SupplierFwdAgentFreightGroup,
      dlgrp                                                                                                                                                                                                                                                                                                 as SupplierAgentProcedureGroup,
      regss                                                                                                                                                                                                                                                                                                 as SupplIsSocialInsuranceRegtrd,
      actss                                                                                                                                                                                                                                                                                                 as SocialInsuranceActivityCode,
      @EndUserText.label: 'Group Key'
      konzs                                                                                                                                                                                                                                                                                                 as SupplierCorporateGroup, //to be used

      kunnr                                                                                                                                                                                                                                                                                                 as Customer,
      brsch                                                                                                                                                                                                                                                                                                 as Industry,   // siehe Anmerkung

      stcd1                                                                                                                                                                                                                                                                                                 as TaxNumber1, // tax number 1&2: siehe Anmerkung

      stcd2                                                                                                                                                                                                                                                                                                 as TaxNumber2,
      stcd3                                                                                                                                                                                                                                                                                                 as TaxNumber3,
      stcd4                                                                                                                                                                                                                                                                                                 as TaxNumber4,
      stcd5                                                                                                                                                                                                                                                                                                 as TaxNumber5,
      stcd6                                                                                                                                                                                                                                                                                                 as TaxNumber6,
      sperr                                                                                                                                                                                                                                                                                                 as PostingIsBlocked,
      @EndUserText.label: 'Purch. Block'
      sperm                                                                                                                                                                                                                                                                                                 as PurchasingIsBlocked,
      @EndUserText.quickInfo: 'International Location Number (Part 1)'
      bbbnr                                                                                                                                                                                                                                                                                                 as InternationalLocationNumber1,
      @EndUserText.quickInfo: 'International Location Number (Part 2)'
      bbsnr                                                                                                                                                                                                                                                                                                 as InternationalLocationNumber2,
      @EndUserText.label: 'Check Digit'
      bubkz                                                                                                                                                                                                                                                                                                 as InternationalLocationNumber3,
      adrnr                                                                                                                                                                                                                                                                                                 as AddressID,
      lfa1.regio                                                                                                                                                                                                                                                                                            as Region,
      lfa1.name1                                                                                                                                                                                                                                                                                            as OrganizationBPName1,
      lfa1.name2                                                                                                                                                                                                                                                                                            as OrganizationBPName2,
      lfa1.ort01                                                                                                                                                                                                                                                                                            as CityName,
      lfa1.pstlz                                                                                                                                                                                                                                                                                            as PostalCode,
      lfa1.stras                                                                                                                                                                                                                                                                                            as StreetName,
      lfa1.land1                                                                                                                                                                                                                                                                                            as Country,

      cast((concat(concat(bbbnr,concat(' & ', bbsnr)),concat(' & ',bubkz)))  as md_international_loc )                                                                                                                                                                                                      as ConcatenatedInternationalLocNo,

      //quality management

      sperq                                                                                                                                                                                                                                                                                                 as SupplierProcurementBlock,
      qssys                                                                                                                                                                                                                                                                                                 as SuplrQualityManagementSystem,
      qssysdat                                                                                                                                                                                                                                                                                              as SuplrQltyInProcmtCertfnValidTo,
      //globalization

      lfa1.spras                                                                                                                                                                                                                                                                                            as SupplierLanguage,
      lfa1.lnrza                                                                                                                                                                                                                                                                                            as AlternativePayeeAccountNumber,
      lfa1.telf1                                                                                                                                                                                                                                                                                            as PhoneNumber1,
      lfa1.telfx                                                                                                                                                                                                                                                                                            as FaxNumber,
      lfa1.stkzn                                                                                                                                                                                                                                                                                            as IsNaturalPerson,
      lfa1.stenr