C_MM_LegalTransactionVH

DDL: C_MM_LEGALTRANSACTIONVH SQL: CMMLEGALTRVH Type: view CONSUMPTION

Procurement Legal Transaction Value Help

C_MM_LegalTransactionVH is a Consumption CDS View that provides data about "Procurement Legal Transaction Value Help" in SAP S/4HANA. It reads from 1 data source (I_LegalTransaction) and exposes 25 fields with key field LegalTransactionUUID. It has 5 associations to related views. It is exposed through 2 OData services (UI_SOURCINGPROJECT_MANAGE, UI_SRCGPROJQUOTATION_MANAGE). It is used in 3 Fiori applications: Manage Sourcing Projects, Display Sourcing Project, Contribute to Sourcing Projects.

Data Sources (1)

SourceAliasJoin Type
I_LegalTransaction LegalTransaction from

Associations (5)

CardinalityTargetAliasCondition
[1..1] I_LegalTransactionAggr _LegalTransactionAggrgn $projection.LegalTransactionUUID = _LegalTransactionAggrgn.LegalTransactionUUID
[0..1] C_LegalTransactionEntityMain _LegalTransactionEntityMain $projection.LegalTransactionUUID = _LegalTransactionEntityMain.LegalTransactionUUID
[0..1] I_LcmContext _LCMContext $projection.LglCntntMContextUUID = _LCMContext.LglCntntMContextUUID
[0..1] I_LCMUserContactCard _CreatedByContactCard _CreatedByContactCard.ContactCardType = 'User' and _CreatedByContactCard.ContactCardID = $projection.LglCntntMCreatedByUser and _CreatedByContactCard.ContactCardRole = 'Creator'
[0..1] I_LegalTransactionHealthText _LegalTransactionHealthText $projection.LegalTransactionHealth = _LegalTransactionHealthText.LegalTransactionHealth and Language = $session.system_language

Annotations (13)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
AbapCatalog.sqlViewName CMMLEGALTRVH view
AbapCatalog.compiler.compareFilter true view
AccessControl.authorizationCheck #CHECK view
VDM.viewType #CONSUMPTION view
AccessControl.personalData.blocking #REQUIRED view
EndUserText.label Procurement Legal Transaction Value Help view
ObjectModel.semanticKey LegalTransaction view
ObjectModel.representativeKey LegalTransactionUUID view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #C view
ObjectModel.usageType.sizeCategory #XL view
Search.searchable true view

OData Services (2)

ServiceBindingVersionContractRelease
UI_SOURCINGPROJECT_MANAGE UI_SOURCINGPROJECT_MANAGE V2 C1 NOT_RELEASED
UI_SRCGPROJQUOTATION_MANAGE UI_SRCGPROJQTN_MANAGE V2 C1 NOT_RELEASED

Fiori Apps (3)

App IDApp NameTypeDescription
F4861 Manage Sourcing Projects Transactional An application to create and manage sourcing projects.
F5934 Display Sourcing Project Transactional An application to approve Sourcing Projects.
F7757 Contribute to Sourcing Projects Transactional The app is an application to contribute to sourcing projects as an additional user.

Manage Sourcing Projects

Business Role: Sourcing Manager

Key functionalities:1. Support for "strategic" and "demand driven" sourcing processes2. Determine and invite suppliers as per "preferred supplier list"3. Create/add legal and other co-applicable documents to the sourcing project4. Evaluate and negotiate supplier quotations5. Create awarding scenarios to award the most suitable supplier quotations6. Create follow-on documents for the awarded quotations – purchase orders or central purchase contractsFor more information, see Product Sourcing.

Display Sourcing Project

Business Role: Purchasing Manager

Key functionalities:1. Support for "strategic" and "demand driven" sourcing processes2. Determine and invite suppliers as per "preferred supplier list"3. Create/add legal and other co-applicable documents to the sourcing project4. Evaluate and negotiate supplier quotations5. Create awarding scenarios to award the most suitable supplier quotations6. Create follow-on documents for the awarded quotations – purchase orders or central purchase contractsFor more information, see Product Sourcing.

Contribute to Sourcing Projects

Business Role: Employee - Sourcing

With this release, if the sourcing managers invite you to contribute, you can support them by enhancing the sourcing projects that they have created. For example, you can add attachments to the sourcing projects that you are invited to contribute to.

Fields (25)

KeyFieldSource TableSource FieldDescription
KEY LegalTransactionUUID I_LegalTransaction LegalTransactionUUID
LegalTransaction I_LegalTransaction LegalTransaction
LegalTransactionHealth I_LegalTransaction LegalTransactionHealth Status
LegalTransactionHealthName _LegalTransactionHealthText LegalTransactionHealthName
LglTransHealthCriticality _LegalTransactionAggrgn LglTransHealthCriticality
LglCntntMContextUUID I_LegalTransaction LglCntntMContextUUID
LglCntntMContext _LCMContext LglCntntMContext
LglCntntMEntity _LegalTransactionEntityMain LglCntntMEntity
LglCntntMEntityName _LegalTransactionEntityMain LglCntntMEntityName
LglCntntMCreatedByUser I_LegalTransaction LglCntntMCreatedByUser
LglCntntMCreatedUTCDateTime I_LegalTransaction LglCntntMCreatedUTCDateTime
FullName _CreatedByContactCard FullName
FirstName _CreatedByContactCard FirstName
LastName _CreatedByContactCard LastName
LglCntntMChangedByUser I_LegalTransaction LglCntntMChangedByUser
LglCntntMChangedUTCDateTime I_LegalTransaction LglCntntMChangedUTCDateTime
LegalTransactionTitle I_LegalTransaction LegalTransactionTitle
LglCntntMContextTitle _LCMContext LglCntntMContextTitle
IsEndOfPurposeBlocked I_LegalTransaction IsEndOfPurposeBlocked
LglCntntMProfile I_LegalTransaction LglCntntMProfile
LglTransAccessLvl LglTransAccessLvl
LglCntntMMainOrgCoCode LglCntntMMainOrgCoCode
LglCntntMMainOrgSalesOrg LglCntntMMainOrgSalesOrg
LglCntntMMainOrgPurOrg LglCntntMMainOrgPurOrg
_LegalTransactionHealthText _LegalTransactionHealthText
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.sqlViewName: 'CMMLEGALTRVH'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #CONSUMPTION
@AccessControl.personalData.blocking: #REQUIRED
@EndUserText.label: 'Procurement Legal Transaction Value Help'
@ObjectModel: { semanticKey: 'LegalTransaction',
                representativeKey: 'LegalTransactionUUID',

                usageType.dataClass: #TRANSACTIONAL,
                usageType.serviceQuality:  #C,
                usageType.sizeCategory: #XL  }

@Search.searchable: true

define view C_MM_LegalTransactionVH
  as select from I_LegalTransaction as LegalTransaction

  association [1..1] to I_LegalTransactionAggr       as _LegalTransactionAggrgn     on  $projection.LegalTransactionUUID = _LegalTransactionAggrgn.LegalTransactionUUID
  association [0..1] to C_LegalTransactionEntityMain as _LegalTransactionEntityMain on  $projection.LegalTransactionUUID = _LegalTransactionEntityMain.LegalTransactionUUID
  association [0..1] to I_LcmContext                 as _LCMContext                 on  $projection.LglCntntMContextUUID = _LCMContext.LglCntntMContextUUID
  association [0..1] to I_LCMUserContactCard         as _CreatedByContactCard       on  _CreatedByContactCard.ContactCardType = 'User'
                                                                                    and _CreatedByContactCard.ContactCardID   = $projection.LglCntntMCreatedByUser
                                                                                    and _CreatedByContactCard.ContactCardRole = 'Creator'
  association [0..1] to I_LegalTransactionHealthText   as _LegalTransactionHealthText   on  $projection.LegalTransactionHealth = _LegalTransactionHealthText.LegalTransactionHealth
                                                                                        and Language                           = $session.system_language
  //association [0..1] to C_LegalTransactionHealthVH     as _LegalTransactionHealthVH     on  $projection.LegalTransactionHealth = _LegalTransactionHealthVH.LegalTransactionHealth                                                                                    


{
      @UI.hidden: true
  key LegalTransaction.LegalTransactionUUID,

      @UI.lineItem: { position: 10, importance: #HIGH, label:'Legal Transaction' }
      @UI.selectionField.position: 10
      @Consumption.semanticObject: 'LegalTransaction'
      @ObjectModel.text.element:  [ 'LegalTransactionTitle' ]
      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.7, ranking: #HIGH }
      LegalTransaction.LegalTransaction,

      @UI.lineItem: { position: 15, importance: #HIGH , 
                      criticality: 'LglTransHealthCriticality', criticalityRepresentation: #WITHOUT_ICON 
                      }
      @UI.textArrangement: #TEXT_ONLY
      @ObjectModel: { text.element: ['LegalTransactionHealthName'] }
      @EndUserText.label: 'Status' // 'Health'     

      //@Consumption.valueHelp: '_LegalTransactionHealthVH'

      @Consumption.filter.hidden: true
      LegalTransaction.LegalTransactionHealth as LegalTransactionHealth,
      
      @Consumption.filter.hidden: true
      @UI.hidden: true
      _LegalTransactionHealthText.LegalTransactionHealthName as LegalTransactionHealthName,

      _LegalTransactionAggrgn.LglTransHealthCriticality,

      @UI.hidden: true
      LegalTransaction.LglCntntMContextUUID,

      @UI.lineItem: { position: 20, importance: #HIGH, label: 'Context' }
      @UI.selectionField.position: 20
      @ObjectModel.text.element:  [ 'LglCntntMContextTitle' ]
      _LCMContext.LglCntntMContext,

      @UI.lineItem: { position: 30, importance: #HIGH, label: 'Main Entity' }
      @UI.selectionField.position: 30
      @ObjectModel.text.element:  [ 'LglCntntMEntityName' ]
      _LegalTransactionEntityMain.LglCntntMEntity,

      @UI.hidden: true
      @Semantics.text: true
      @ObjectModel.readOnly: true
      //no search due to case statement

      _LegalTransactionEntityMain.LglCntntMEntityName,


      @UI.lineItem: { position: 40, importance: #HIGH }
      @UI.textArrangement: #TEXT_ONLY
      @Consumption.filter.hidden: true
      @ObjectModel.text.element:  [ 'FullName' ]
      LegalTransaction.LglCntntMCreatedByUser,

      @UI.lineItem: { position: 50, importance: #HIGH }
      @Consumption.filter.hidden: true
      @Semantics.systemDate.createdAt: true
      LegalTransaction.LglCntntMCreatedUTCDateTime,

      @UI.hidden: true
      _CreatedByContactCard.FullName,
      @UI.hidden: true
      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.7, ranking: #HIGH }
      _CreatedByContactCard.FirstName,
      @UI.hidden: true
      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.7, ranking: #HIGH }
      _CreatedByContactCard.LastName,

      @UI.hidden: true
      LegalTransaction.LglCntntMChangedByUser,

      @UI.hidden: true
      @Semantics.systemDate.lastChangedAt: true
      LegalTransaction.LglCntntMChangedUTCDateTime,

      @UI.hidden: true
      @Semantics.text: true
      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.7, ranking: #HIGH }
      LegalTransaction.LegalTransactionTitle,

      @UI.hidden: true
      @Semantics.text: true
      @Search: { defaultSearchElement: true, fuzzinessThreshold: 0.7, ranking: #HIGH }
      _LCMContext.LglCntntMContextTitle,

      @UI.hidden: true
      @ObjectModel.readOnly: true
      LegalTransaction.IsEndOfPurposeBlocked,

      @UI.hidden: true
      LegalTransaction.LglCntntMProfile,

      @UI.hidden: true
      LglTransAccessLvl,

      @UI.hidden: true
      LglCntntMMainOrgCoCode,

      @UI.hidden: true
      LglCntntMMainOrgSalesOrg,

      @UI.hidden: true
      LglCntntMMainOrgPurOrg,
      
      _LegalTransactionHealthText /*,
      
      @Consumption.filter.hidden: true
      _LegalTransactionHealthVH   */

}