C_ChmlCmplncInfoMntr

DDL: C_CHMLCMPLNCINFOMNTR Type: view CONSUMPTION

Unpackaged Product

C_ChmlCmplncInfoMntr is a Consumption CDS View that provides data about "Unpackaged Product" in SAP S/4HANA. It reads from 1 data source (I_ChmlCmplncInfo) and exposes 25 fields. It has 13 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_ChmlCmplncInfo ChemicalCompliance from

Associations (13)

CardinalityTargetAliasCondition
[0..1] I_ProductGroup_2 _ProductGroupVH $projection.MaterialGroup = _ProductGroupVH.ProductGroup
[0..1] I_ProductHierarchy _ProductHierarchyVH $projection.producthierarchy = _ProductHierarchyVH.ProductHierarchy
[0..1] I_Division _DivisionVH $projection.division = _DivisionVH.Division
[0..1] I_ExtProdGrp _ExternalProdGrpVH $projection.ExternalProductGroup = _ExternalProdGrpVH.ExternalProductGroup
[0..1] C_ChmlCmplncPrimMatl _MaterialDataPrimary ChemicalCompliance.ChmlCmplncInfoUUID = _MaterialDataPrimary.ChmlCmplncInfoUUID --Overall
[0..1] P_ChmlCompositionOverallStatus _ChmlCompositionOverallStatus ChemicalCompliance.ChmlCmplncInfoUUID = _ChmlCompositionOverallStatus.ChmlCmplncInfoUUID
[0..1] I_ChmlCmpstnOverallStatusVH _OverallStatusVH $projection.ChmlCompositionStatus = _OverallStatusVH.ChmlCmpstnOverallStatus --Counter of purposes and compliance requirements
[0..1] P_ChmlCmplncPrpsRqmtPmaCT _PurposeRequirementPmaCounter ChemicalCompliance.ChmlCmplncInfoUUID = _PurposeRequirementPmaCounter.ChmlCmplncInfoUUID
[0..1] P_ChmlCmplncPrpsRqmtDgCT _PurposeRequirementDgCounter ChemicalCompliance.ChmlCmplncInfoUUID = _PurposeRequirementDgCounter.ChmlCmplncInfoUUID
[0..1] P_ChmlCmplncPrpsRqmtSdsCT _PurposeRequirementSdsCounter ChemicalCompliance.ChmlCmplncInfoUUID = _PurposeRequirementSdsCounter.ChmlCmplncInfoUUID
[0..1] P_ChmlCmplncPrpsAssgmtCt _PurposeCounter ChemicalCompliance.ChmlCmplncInfoUUID = _PurposeCounter.ChemicalComplianceUUID
[0..1] P_ChmlCmplncReqUnprocessedCT _RequestCounter ChemicalCompliance.ChmlCmplncInfoUUID = _RequestCounter.ChmlCmplncProdUUID
[0..1] I_ChmlCmplncMktKeyFig _MarketKeyFig ChemicalCompliance.ChmlCmplncInfoUUID = _MarketKeyFig.ChmlCmplncInfoUUID

Annotations (18)

NameValueLevelField
EndUserText.label Unpackaged Product view
AbapCatalog.sqlViewName CCCINFOMNTR view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #MANDATORY view
AccessControl.personalData.blocking #NOT_REQUIRED view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #CONSUMPTION view
ObjectModel.createEnabled false view
ObjectModel.updateEnabled false view
ObjectModel.deleteEnabled false view
ObjectModel.usageType.dataClass #MIXED view
ObjectModel.usageType.sizeCategory #L view
ObjectModel.usageType.serviceQuality #C view
UI.headerInfo.typeName Manage Basic Compliance Data - Unpackaged Products view
UI.headerInfo.typeNamePlural Unpackaged Products view
UI.headerInfo.title.label Product view
UI.headerInfo.title.value ChmlCmplncInfoCombinedName view
Search.searchable true view

Fields (25)

KeyFieldSource TableSource FieldDescription
ChmlCmplncInfoUUID
MaterialasMaterial
ProductNameasProductName
ChmlCmplncInternalName
ProductGroupasMaterialGroup
MaterialGroupNameasMaterialGroupName
ChmlCompositionStsCriticality
ProdStewardshipRespUnit
ProductHierarchy
ProductHierarchyText
Division
DivisionName
ExternalProductGroupName
SpecificationasSpecification
ChmlCmplncProdIsResearched
ChmlCmplncInfoType I_ChmlCmplncInfo ChmlCmplncInfoType
MaterialIsSold I_ChmlCmplncInfo MaterialIsSold
MaterialIsTransported I_ChmlCmplncInfo MaterialIsTransported
MaterialIsProduced I_ChmlCmplncInfo MaterialIsProduced
_ProductGroupVH _ProductGroupVH
_RespUnitForProductStewardship I_ChmlCmplncInfo _RespUnitForProductStewardship
_ProductHierarchyVH _ProductHierarchyVH
_DivisionVH _DivisionVH
_ExternalProdGrpVH _ExternalProdGrpVH
_OverallStatusVH _OverallStatusVH
//Manage Basic Compliance Data - Unpackaged Product (Monitor)

@EndUserText.label: 'Unpackaged Product'

@AbapCatalog:
{
  sqlViewName: 'CCCINFOMNTR',
  compiler.compareFilter: true
}

@AccessControl:
{
  authorizationCheck: #MANDATORY,
  // blocking of personal data not required (no personal data fields exposed for material (MARA))

  personalData.blocking: #NOT_REQUIRED
}

@ClientHandling.algorithm: #SESSION_VARIABLE

@VDM.viewType: #CONSUMPTION

@ObjectModel:
{
  createEnabled: false,
  updateEnabled: false,
  deleteEnabled: false,
  usageType:
  {
    dataClass: #MIXED,
    sizeCategory: #L,
    serviceQuality: #C
  },
  semanticKey:  [ 'ChmlCmplncInfoCombinedName' ]
}

--Header information
@UI:
{
  headerInfo:
  {
    typeName: 'Manage Basic Compliance Data - Unpackaged Products',
    typeNamePlural: 'Unpackaged Products',
    title:
    {
      label: 'Product',
      value: 'ChmlCmplncInfoCombinedName'
    }
  },
  selectionVariant: [
    {
      qualifier: 'UnpackagedProducts',
      text: 'Unpackaged Products'
    }
  ],
  presentationVariant:
  {
    requestAtLeast:  [ 'ProductName', 'ChmlCmplncInternalName', 'ChmlCmplncInfoNavgnLink' ],
    sortOrder:
    [
      {
        by: 'ProductName',
        direction: #ASC
      },
      {
        by: 'ChmlCmplncInternalName',
        direction: #ASC
      }
    ]
  }
}

@Search.searchable : true

define view C_ChmlCmplncInfoMntr
  --Select data from basic view of chemical compliance information
  as select from I_ChmlCmplncInfo as ChemicalCompliance

  --Additional Information
  --Product Information
  association [0..1] to I_ProductGroup_2               as _ProductGroupVH               on $projection.MaterialGroup = _ProductGroupVH.ProductGroup
  association [0..1] to I_ProductHierarchy             as _ProductHierarchyVH           on $projection.producthierarchy = _ProductHierarchyVH.ProductHierarchy
  association [0..1] to I_Division                     as _DivisionVH                   on $projection.division = _DivisionVH.Division
  association [0..1] to I_ExtProdGrp                   as _ExternalProdGrpVH            on $projection.ExternalProductGroup = _ExternalProdGrpVH.ExternalProductGroup
  association [0..1] to C_ChmlCmplncPrimMatl           as _MaterialDataPrimary          on ChemicalCompliance.ChmlCmplncInfoUUID = _MaterialDataPrimary.ChmlCmplncInfoUUID

  --Overall Composition Status
  association [0..1] to P_ChmlCompositionOverallStatus as _ChmlCompositionOverallStatus on ChemicalCompliance.ChmlCmplncInfoUUID = _ChmlCompositionOverallStatus.ChmlCmplncInfoUUID
  association [0..1] to I_ChmlCmpstnOverallStatusVH    as _OverallStatusVH              on $projection.ChmlCompositionStatus = _OverallStatusVH.ChmlCmpstnOverallStatus

  --Counter of purposes and compliance requirements
  association [0..1] to P_ChmlCmplncPrpsRqmtPmaCT      as _PurposeRequirementPmaCounter on ChemicalCompliance.ChmlCmplncInfoUUID = _PurposeRequirementPmaCounter.ChmlCmplncInfoUUID
  association [0..1] to P_ChmlCmplncPrpsRqmtDgCT       as _PurposeRequirementDgCounter  on ChemicalCompliance.ChmlCmplncInfoUUID = _PurposeRequirementDgCounter.ChmlCmplncInfoUUID
  association [0..1] to P_ChmlCmplncPrpsRqmtSdsCT      as _PurposeRequirementSdsCounter on ChemicalCompliance.ChmlCmplncInfoUUID = _PurposeRequirementSdsCounter.ChmlCmplncInfoUUID

  association [0..1] to P_ChmlCmplncPrpsAssgmtCt       as _PurposeCounter               on ChemicalCompliance.ChmlCmplncInfoUUID = _PurposeCounter.ChemicalComplianceUUID
  association [0..1] to P_ChmlCmplncReqUnprocessedCT   as _RequestCounter               on ChemicalCompliance.ChmlCmplncInfoUUID = _RequestCounter.ChmlCmplncProdUUID
  association [0..1] to I_ChmlCmplncMktKeyFig          as _MarketKeyFig                 on ChemicalCompliance.ChmlCmplncInfoUUID = _MarketKeyFig.ChmlCmplncInfoUUID


{
      --UUID of active chemical compliance information
      @ObjectModel.readOnly: true
      @UI.hidden: true
  key ChemicalCompliance.ChmlCmplncInfoUUID,

      --Material/Product number
      @UI:
      {
        lineItem:
        {
          position: 20,
          importance: #HIGH
        }
      }
      @ObjectModel.readOnly: true
      @Search: {
        defaultSearchElement : true,
        fuzzinessThreshold: 0.7,
        ranking: #MEDIUM
      }
      @Consumption: {
        valueHelpDefinition: [{
          entity: {name: 'I_ProductVH', element: 'Product'} }]
      }
  key ChemicalCompliance._MaterialAssignment.Material                                                                                as Material,

      --UUID of active chemical compliance information
      @ObjectModel.readOnly: true
      @UI.hidden: true
      ChemicalCompliance.ChmlCmplncInfoUUID                                                                                          as ChmlCmplncInfoNavgnLink,

      --Material name or internal name
      @UI:
      {
        lineItem:
        {
          position: 10,
          importance: #HIGH
        }
      }
      @ObjectModel.readOnly: true
      _MaterialDataPrimary.ChmlCmplncInfoCombinedName                                                                                as ChmlCmplncInfoCombinedName,

      --Material name
      @UI.hidden: true
      @ObjectModel.readOnly: true
      @Search:
      {
        defaultSearchElement : true,
        fuzzinessThreshold: 0.7,
        ranking: #HIGH
      }
      @Consumption.filter.hidden: true
      ChemicalCompliance._MaterialAssignment._Product._Text[1: Language = $session.system_language ].ProductName                     as ProductName,

      --Internal name of chemical compliance information
      @ObjectModel.readOnly: true
      @Search:
      {
        defaultSearchElement : true,
        fuzzinessThreshold: 0.7,
        ranking: #LOW
      }
      ChemicalCompliance.ChmlCmplncInternalName,

      --Product group
      @UI:
      {
        lineItem:
        {
          position: 50        },
        selectionField:
        {
          position: 10
        },
        textArrangement: #TEXT_ONLY
      }
      @ObjectModel:
      {
        readOnly: true,
        text.element:  [ 'MaterialGroupName' ],
        foreignKey.association: '_ProductGroupVH'
      }
      @Consumption.filter.multipleSelections: true
      @Search.defaultSearchElement: false
      ChemicalCompliance._MaterialAssignment._Product.ProductGroup                                                                   as MaterialGroup,

      --Material Group Name
      @UI.hidden: true
      @ObjectModel.readOnly: true
      @Search.defaultSearchElement: false
      ChemicalCompliance._MaterialAssignment._Product._ProductGroup._Text[1: Language = $session.system_language ].MaterialGroupName as MaterialGroupName,

      --Overall composition status
      @UI.textArrangement: #TEXT_ONLY
      @ObjectModel:
      {
        readOnly: true,
        text.element:  [ 'ChmlCompositionStatusName' ],
        foreignKey.association: '_OverallStatusVH'
      }
      @Consumption.filter:
      {
        multipleSelections: true
      }
      cast( _ChmlCompositionOverallStatus.ChmlCompositionStatus as ehfnd_cci_ccmps_overall_status preserving type )                  as ChmlCompositionStatus,

      --Description of overall composition status
      @UI.hidden: true
      @ObjectModel.readOnly: true
      _ChmlCompositionOverallStatus._StatusText._Text[1: Language = $session.system_language ].ChmlCmpstnOverallStatusName           as ChmlCompositionStatusName,

      --Criticality of overall composition status
      @UI.hidden: true
      @ObjectModel.readOnly: true
      _ChmlCompositionOverallStatus.ChmlCompositionStsCriticality,

      --Responsible unit of PSS
      @UI.hidden: true
      @ObjectModel.readOnly: true
      @Consumption.hidden: true
      ChemicalCompliance.ProdStewardshipRespUnit,

      --Number of Assigned PMA Requirments
      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      cast( _PurposeRequirementPmaCounter.NmbrOfCmplRqRslts as ehfnd_cci_number_of_cr_ma )                                           as NmbrOfChmlCmplncMktRqmts,

      --Number of Assigned DG Requirments
      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      cast( _PurposeRequirementDgCounter.NmbrOfCmplRqRslts as ehfnd_cci_number_of_cr_dg )                                            as NmbrOfChmlCmplncDngrsGdsRqmts,

      --Number of Assigned DG Requirments
      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      cast( _PurposeRequirementSdsCounter.NmbrOfCmplRqRslts as ehfnd_cci_number_of_cr_sds )                                          as NmbrOfChmlCmplncDataShtRqmts,

      --Number of Coverages
      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @UI:
      {
        lineItem:
        {
          position: 70
        }
      }
      cast( _MarketKeyFig.NmbrOfChmlCmplncMktCountries as ehfnd_cci_number_of_cvrg )                                                 as NmbrOfChmlCmplncProcdMktCvrgs,

      --Number of Purposes
      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @UI:
      {
        lineItem:
        {
          position: 80
        }
      }
      cast( _PurposeCounter.NmbrOfChmlCmplncPurposes as ehfnd_cci_number_of_prps )                                                   as NmbrOfChmlCmplncPurposes,

      --Number of Compliance Requests
      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      cast( _RequestCounter.recordCount as ehfnd_cci_number_of_req )                                                                 as NmbrOfUnprocessedChmlCmplncReq,

      --Product Hierarchy
      @ObjectModel:
      {
        readOnly: true,
      //        foreignKey.association: '_ProductHierarchyVH'

        text.element:  [ 'ProductHierarchyText' ]
      }
      @UI.textArrangement: #TEXT_ONLY
      @Search.defaultSearchElement: false
      ChemicalCompliance._MaterialAssignment._Product.ProductHierarchy,

      @Search.defaultSearchElement: false
      ChemicalCompliance._MaterialAssignment._Product._ProductHierarchyText[1: Language = $session.system_language ].ProductHierarchyText,

      --Product Division
      @ObjectModel:
      {
        readOnly: true,
      //        foreignKey.association: '_DivisionVH',

        text.element:  [ 'DivisionName' ]
      }
      @UI.textArrangement: #TEXT_ONLY
      @Search.defaultSearchElement: false
      ChemicalCompliance._MaterialAssignment._Product.Division,

      @Search.defaultSearchElement: false
      ChemicalCompliance._MaterialAssignment._Product._DivisionText[1: Language = $session.system_language ].DivisionName,

      --External product group
      @ObjectModel:
      {
        readOnly: true,
        text.element:  [ 'ExternalProductGroupName' ],
        foreignKey.association: '_ExternalProdGrpVH'
      }
      @UI.textArrangement: #TEXT_ONLY
      @Search.defaultSearchElement: false
      cast( ChemicalCompliance._MaterialAssignment._Product.ExternalProductGroup as ehfnd_ext_material_group_l )                     as ExternalProductGroup,

      --Description of External Product Group
      @UI.hidden: true
      @ObjectModel.readOnly: true
      @Search.defaultSearchElement: false
      ChemicalCompliance._MaterialAssignment._Product._ExternalProductGroup._Text[1: Language = $session.system_language ].ExternalProductGroupName,

      --Specification
      @UI:
      {
        lineItem:
        [{
          position: 90,
          exclude: true
        }]
      }
      @ObjectModel.readOnly: true
      @Consumption.filter.hidden: true
      @Search:
      {
        defaultSearchElement : true,
        fuzzinessThreshold: 0.8,
        ranking: #HIGH
      }
      ChemicalCompliance.Specification                                                                                               as Specification,

      --R&D Indicator: Product under Research
      @ObjectModel.readOnly: true
      @Consumption.valueHelpDefinition: [{
        entity: {
          name: 'I_Indicator',
          element: 'IndicatorValue'
        }
      }]
      ChemicalCompliance.ChmlCmplncProdIsResearched,

      @UI.hidden: true
      ChemicalCompliance.ChmlCmplncInfoType,
      @UI.hidden: true
      ChemicalCompliance.MaterialIsSold                                                                                              as MaterialIsSold,
      @UI.hidden: true
      ChemicalCompliance.MaterialIsTransported                                                                                       as MaterialIsTransported,
      @UI.hidden: true
      ChemicalCompliance.MaterialIsProduced                                                                                          as MaterialIsProduced,

      /*Association*/
      @Consumption.filter.hidden: true
      _ProductGroupVH,

      @Consumption.filter.hidden: true
      ChemicalCompliance._RespUnitForProductStewardship,

      @Consumption.filter.hidden: true
      _ProductHierarchyVH,

      @Consumption.filter.hidden: true
      _DivisionVH,

      @Consumption.filter.hidden: true
      _ExternalProdGrpVH,

      @Consumption.filter.hidden: true
      _OverallStatusVH
}
where
       ChemicalCompliance.ChmlCmplncInfoType = 'BU'
  and(
       ChemicalCompliance.MaterialIsSold     = 'X'
    or ChemicalCompliance.MaterialIsProduced = 'X'
    // or ChemicalCompliance.MaterialIsTransported = 'X' --  No longer a mandatory role - PSSPROD-3445

  )