I_RequestForQuotation

DDL: I_REQUESTFORQUOTATION SQL: IMMRFQ Type: view BASIC

Request For Quotation

I_RequestForQuotation is a Basic CDS View that provides data about "Request For Quotation" in SAP S/4HANA. It reads from 1 data source (I_PurchasingDocument) and exposes 55 fields with key field RequestForQuotation. It has 8 associations to related views.

Data Sources (1)

SourceAliasJoin Type
I_PurchasingDocument I_PurchasingDocument from

Associations (8)

CardinalityTargetAliasCondition
[1..*] I_RequestForQuotationItem _RequestForQuotationItem $projection.RequestForQuotation = _RequestForQuotationItem.RequestForQuotation
[1..*] I_RFQBidder _RFQBidder $projection.RequestForQuotation = _RFQBidder.RequestForQuotation
[0..1] I_PurchasingDocumentType _FollowOnDocumentType $projection.PurchasingDocumentCategory = _FollowOnDocumentType.PurchasingDocumentCategory and $projection.PurchasingDocumentType = _FollowOnDocumentType.PurchasingDocumentType
[0..1] I_RequestForQuotationType _RFQType $projection.PurchasingDocumentType = _RFQType.RFQType
[0..1] I_PurchasingDocumentCategory _FollowOnDocumentCategory $projection.PurchasingDocumentCategory = _FollowOnDocumentCategory.PurchasingDocumentCategory
[0..*] I_SupplierQuotation _SupplierQuotation $projection.RequestForQuotation = _SupplierQuotation.RequestForQuotation
[0..1] I_RFQLifecycleStatus _RFQLifecycleStatus $projection.RFQLifecycleStatus = _RFQLifecycleStatus.RFQLifecycleStatus --Extension
[0..1] E_PurchasingDocument _RequestQtnExtension $projection.RequestForQuotation = _RequestQtnExtension.PurchasingDocument

Annotations (11)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
ObjectModel.representativeKey RequestForQuotation view
ObjectModel.semanticKey RequestForQuotation view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #A view
ObjectModel.usageType.sizeCategory #M view
EndUserText.label Request For Quotation view
VDM.viewType #BASIC view
AccessControl.authorizationCheck #CHECK view
AccessControl.personalData.blocking #REQUIRED view
AbapCatalog.sqlViewName IMMRFQ view

Fields (55)

KeyFieldSource TableSource FieldDescription
KEY RequestForQuotation
CompanyCode I_PurchasingDocument CompanyCode
PurchasingDocumentCategory I_PurchasingDocument PurchasingDocumentCategory
PurchasingDocumentType
CreatedByUser I_PurchasingDocument CreatedByUser
CreationDate I_PurchasingDocument CreationDate
LastChangeDateTime I_PurchasingDocument LastChangeDateTime
Language I_PurchasingDocument Language
PurchasingOrganization
PurchasingGroup I_PurchasingDocument PurchasingGroup
DocumentCurrency I_PurchasingDocument DocumentCurrency
IncotermsClassification I_PurchasingDocument IncotermsClassification
IncotermsTransferLocation I_PurchasingDocument IncotermsTransferLocation
IncotermsVersion I_PurchasingDocument IncotermsVersion
IncotermsLocation1 I_PurchasingDocument IncotermsLocation1
IncotermsLocation2 I_PurchasingDocument IncotermsLocation2
PaymentTerms I_PurchasingDocument PaymentTerms
CashDiscount1Days I_PurchasingDocument CashDiscount1Days
CashDiscount2Days I_PurchasingDocument CashDiscount2Days
CashDiscount1Percent
CashDiscount2Percent
NetPaymentDays I_PurchasingDocument NetPaymentDays
ValidityStartDate I_PurchasingDocument ValidityStartDate
ValidityEndDate I_PurchasingDocument ValidityEndDate
RFQPublishingDate
QuotationLatestSubmissionDate I_PurchasingDocument QuotationLatestSubmissionDate
BindingPeriodValidityEndDate I_PurchasingDocument BindingPeriodValidityEndDate
TargetAmount I_PurchasingDocument TargetAmount
RFQLifecycleStatus
RequestForQuotationName
QuotationEarliestSubmsnDate I_PurchasingDocument QuotationEarliestSubmsnDate
LatestRegistrationDate
CorrespncInternalReference I_PurchasingDocument CorrespncInternalReference
FollowOnDocumentCategory I_PurchasingDocument FollowOnDocumentCategory
FollowOnDocumentType I_PurchasingDocument FollowOnDocumentType
PurchasingDocumentDeletionCode I_PurchasingDocument PurchasingDocumentDeletionCode
IsEndOfPurposeBlocked I_PurchasingDocument IsEndOfPurposeBlocked
_RequestForQuotationItem _RequestForQuotationItem
_RFQBidder _RFQBidder
_PurchasingDocumentType I_PurchasingDocument _PurchasingDocumentType
_PurchasingDocumentCategory I_PurchasingDocument _PurchasingDocumentCategory
_RFQType _RFQType
_PaymentTerms I_PurchasingDocument _PaymentTerms
_CreatedByUser I_PurchasingDocument _CreatedByUser
_IncotermsClassification _IncotermsClassification
_IncotermsVersion _IncotermsVersion
_DocumentCurrency I_PurchasingDocument _DocumentCurrency
_CompanyCode I_PurchasingDocument _CompanyCode
_PurchasingGroup I_PurchasingDocument _PurchasingGroup
_PurchasingOrganization _PurchasingOrganization
_SupplierQuotation _SupplierQuotation
_Language I_PurchasingDocument _Language
_RFQLifecycleStatus _RFQLifecycleStatus
_FollowOnDocumentCategory _FollowOnDocumentCategory
_FollowOnDocumentType _FollowOnDocumentType
@ClientHandling.algorithm: #SESSION_VARIABLE
@ObjectModel:{ representativeKey: 'RequestForQuotation',
               semanticKey: 'RequestForQuotation',
               usageType.dataClass: #TRANSACTIONAL,
               usageType.serviceQuality: #A,
               usageType.sizeCategory: #M }
@EndUserText.label: 'Request For Quotation'
@VDM.viewType: #BASIC
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #REQUIRED
@AbapCatalog.sqlViewName: 'IMMRFQ'

@AccessControl.privilegedAssociations: [ '_CreatedByUser' ]

define view I_RequestForQuotation
  as select from I_PurchasingDocument

  association [1..*] to I_RequestForQuotationItem    as _RequestForQuotationItem  on  $projection.RequestForQuotation = _RequestForQuotationItem.RequestForQuotation

  association [1..*] to I_RFQBidder                  as _RFQBidder                on  $projection.RequestForQuotation = _RFQBidder.RequestForQuotation

  association [0..1] to I_PurchasingDocumentType     as _FollowOnDocumentType     on  $projection.PurchasingDocumentCategory = _FollowOnDocumentType.PurchasingDocumentCategory
                                                                                  and $projection.PurchasingDocumentType     = _FollowOnDocumentType.PurchasingDocumentType

  association [0..1] to I_RequestForQuotationType    as _RFQType                  on  $projection.PurchasingDocumentType = _RFQType.RFQType

  association [0..1] to I_PurchasingDocumentCategory as _FollowOnDocumentCategory on  $projection.PurchasingDocumentCategory = _FollowOnDocumentCategory.PurchasingDocumentCategory

  association [0..*] to I_SupplierQuotation          as _SupplierQuotation        on  $projection.RequestForQuotation = _SupplierQuotation.RequestForQuotation

  association [0..1] to I_RFQLifecycleStatus         as _RFQLifecycleStatus       on  $projection.RFQLifecycleStatus = _RFQLifecycleStatus.RFQLifecycleStatus
  
  --Extension Association
  association [0..1] to E_PurchasingDocument         as _RequestQtnExtension      on $projection.RequestForQuotation = _RequestQtnExtension.PurchasingDocument

{
      @ObjectModel: { readOnly: true }
  key cast (I_PurchasingDocument.PurchasingDocument as vdm_requestforquotation preserving type)          as RequestForQuotation,

      @ObjectModel: { foreignKey.association: '_CompanyCode',
                      mandatory: true }
      I_PurchasingDocument.CompanyCode,

      @ObjectModel: { readOnly: true,
                      foreignKey.association: '_PurchasingDocumentCategory' }
      I_PurchasingDocument.PurchasingDocumentCategory,

      @ObjectModel: { readOnly: true,
                      foreignKey.association: '_RFQType' }
      cast(I_PurchasingDocument.PurchasingDocumentType as vdm_rfq_doc_type preserving type )             as PurchasingDocumentType,

      @ObjectModel: { readOnly: true }
      I_PurchasingDocument.CreatedByUser,

      @ObjectModel: { readOnly: true }
      I_PurchasingDocument.CreationDate,

      @ObjectModel.readOnly: true
      I_PurchasingDocument.LastChangeDateTime,

      @Semantics.language: false
      I_PurchasingDocument.Language,

      @ObjectModel: { foreignKey.association: '_PurchasingOrganization',
                      mandatory: true }
      cast(I_PurchasingDocument.PurchasingOrganization as ekorg_ll preserving type )                     as PurchasingOrganization,

      @ObjectModel: { foreignKey.association: '_PurchasingGroup',
                      mandatory: true }
      I_PurchasingDocument.PurchasingGroup,

      @Semantics.currencyCode:true
      @ObjectModel: { foreignKey.association: '_DocumentCurrency',
                      mandatory: true }
      I_PurchasingDocument.DocumentCurrency,

      @ObjectModel: { foreignKey.association: '_IncotermsClassification' }
      I_PurchasingDocument.IncotermsClassification,
      I_PurchasingDocument.IncotermsTransferLocation,
      @ObjectModel: {foreignKey.association: '_IncotermsVersion' }
      I_PurchasingDocument.IncotermsVersion,
      I_PurchasingDocument.IncotermsLocation1,
      I_PurchasingDocument.IncotermsLocation2,

      @ObjectModel.foreignKey.association: '_PaymentTerms'
      I_PurchasingDocument.PaymentTerms,
      I_PurchasingDocument.CashDiscount1Days,
      I_PurchasingDocument.CashDiscount2Days,
      cast (I_PurchasingDocument.CashDiscount1Percent as vdm_discount_percent_1 preserving type)         as CashDiscount1Percent,
      cast (I_PurchasingDocument.CashDiscount2Percent as vdm_discount_percent_2 preserving type)         as CashDiscount2Percent,
      I_PurchasingDocument.NetPaymentDays,
      I_PurchasingDocument.ValidityStartDate,
      I_PurchasingDocument.ValidityEndDate,
      cast( I_PurchasingDocument.PurchasingDocumentOrderDate as vdm_rfq_publishing_date preserving type) as RFQPublishingDate,
      I_PurchasingDocument.QuotationLatestSubmissionDate,
      I_PurchasingDocument.BindingPeriodValidityEndDate,

      @DefaultAggregation:#NONE
      @Semantics.amount.currencyCode: 'DocumentCurrency'
      I_PurchasingDocument.TargetAmount,


      @ObjectModel: {  foreignKey.association: '_RFQLifecycleStatus'}
      cast ( I_PurchasingDocument.PurchasingProcessingStatus as vdm_rfq_lfst_cd preserving type)         as RFQLifecycleStatus,

      cast ( I_PurchasingDocument.PurchasingDocumentName as vdm_rfq_name preserving type)                as RequestForQuotationName,

      I_PurchasingDocument.QuotationEarliestSubmsnDate,

      cast (I_PurchasingDocument.LatestRegistrationDate as vdm_apply_by preserving type)                 as LatestRegistrationDate,

      I_PurchasingDocument.CorrespncInternalReference,

      @ObjectModel.foreignKey.association: '_FollowOnDocumentCategory'
      I_PurchasingDocument.FollowOnDocumentCategory,

      @ObjectModel.foreignKey.association: '_FollowOnDocumentType'
      I_PurchasingDocument.FollowOnDocumentType,

      // deletion code needed for archiving

      I_PurchasingDocument.PurchasingDocumentDeletionCode,

      I_PurchasingDocument.IsEndOfPurposeBlocked,

      _RequestForQuotationItem,
      _RFQBidder,
      I_PurchasingDocument._PurchasingDocumentType,
      I_PurchasingDocument._PurchasingDocumentCategory,
      _RFQType,
      I_PurchasingDocument._PaymentTerms,
      I_PurchasingDocument._CreatedByUser,
      _IncotermsClassification,
      _IncotermsVersion,
      I_PurchasingDocument._DocumentCurrency,
      I_PurchasingDocument._CompanyCode,
      I_PurchasingDocument._PurchasingGroup,
      _PurchasingOrganization,
      _SupplierQuotation,
      I_PurchasingDocument._Language,
      _RFQLifecycleStatus,
      _FollowOnDocumentCategory,
      _FollowOnDocumentType

}
where
  I_PurchasingDocument.PurchasingDocumentCategory = 'R'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_PURCHASINGDOCUMENT"
],
"ASSOCIATED":
[
"E_PURCHASINGDOCUMENT",
"I_COMPANYCODE",
"I_CURRENCY",
"I_INCOTERMSCLASSIFICATION",
"I_INCOTERMSVERSION",
"I_LANGUAGE",
"I_PAYMENTTERMS",
"I_PURCHASINGDOCUMENTCATEGORY",
"I_PURCHASINGDOCUMENTTYPE",
"I_PURCHASINGGROUP",
"I_PURCHASINGORGANIZATION",
"I_REQUESTFORQUOTATIONITEM",
"I_REQUESTFORQUOTATIONTYPE",
"I_RFQBIDDER",
"I_RFQLIFECYCLESTATUS",
"I_SUPPLIERQUOTATION",
"I_USER"
],
"BASE":
[
"I_PURCHASINGDOCUMENT"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/