@EndUserText.label: 'Sales Quotation'
@AccessControl.authorizationCheck: #CHECK
@AccessControl.privilegedAssociations: [ '_OutputRequest',
'_CreatedByUser',
'_LastChangedByUser'
// '_SAPSituation'
]
@Metadata: {
allowExtensions: true,
ignorePropagatedAnnotations: true
}
@ObjectModel: {
modelingPattern: #TRANSACTIONAL_QUERY,
supportedCapabilities: [#TRANSACTIONAL_PROVIDER],
usageType: {
serviceQuality: #C,
sizeCategory: #L,
dataClass: #TRANSACTIONAL
},
semanticKey: ['SalesQuotation'],
query.implementedBy: 'ABAP:CL_S4RAP_STICKY_QRY'
}
@VDM: {
viewType: #CONSUMPTION,
usage.type: [#TRANSACTIONAL_PROCESSING_SERVICE]
}
@Search.searchable: true
define root view entity C_SalesQuotationManageTP
provider contract transactional_query
as projection on R_SalesQuotationTP as SalesQuotation
association [0..1] to C_CustomerCreditLimitDetails as _CreditLimitDetails on $projection.SalesQuotation = _CreditLimitDetails.SalesDocument
and $projection.SalesQuotationType = _CreditLimitDetails.SalesDocumentType
association [0..1] to C_SlsVolumeNetAmtYearToDate as _SlsVolumeNetAmtYearToDate on $projection.SalesQuotation = _SlsVolumeNetAmtYearToDate.SalesDocument
and $projection.SalesQuotationType = _SlsVolumeNetAmtYearToDate.SalesDocumentType
association [0..1] to C_SalesDocPaymentMethodVH as _PaymentMethodVH on $projection.PaymentMethod = _PaymentMethodVH.PaymentMethod
and $projection.BillingCompanyCode = _PaymentMethodVH.BillingCompanyCode
association [0..1] to C_SlsDocStdPartnerContactInfo as _SoldToPartyContactInfo on $projection.SalesQuotation = _SoldToPartyContactInfo.SalesDocument
and $projection.SoldToParty = _SoldToPartyContactInfo.SoldToParty
and $projection.SalesQuotationType = _SoldToPartyContactInfo.SalesDocumentType
association [0..1] to C_SalesOrganizationVH as _SalesOrganization on $projection.SalesOrganization = _SalesOrganization.SalesOrganization
association [0..1] to C_SalesOrganizationVH as _SalesOrganizationForFltr on $projection.SalesOrganizationForFilter = _SalesOrganizationForFltr.SalesOrganization
association [0..1] to C_SalesQuotationTypeValueHelp as _SalesQuotationType on $projection.SalesQuotationType = _SalesQuotationType.SalesDocumentType
association [0..1] to I_SDDocumentReason as _SDDocumentReasonForFltr on $projection.SDDocumentReasonForFilter = _SDDocumentReasonForFltr.SDDocumentReason
association [0..*] to C_SlsQtanSubsqntOrderTypeMngVH as _SubsequentDocType on $projection.SalesQuotationType = _SubsequentDocType.SourceSalesDocumentType
// association to Situation Service - Disabled until feature is ready
// association [0..1] to I_Sitn2InstceCountAPI as _SAPSituation
// on _SAPSituation.SitnAnchorObjectSOT = 'SalesQuotation' // SOT Object
// and _SAPSituation.SitnAnchorObjectSONT = 'SalesQuotation' // SOT Object Node
// on _SAPSituation.SitnInstceAnchorObjectKey = $projection.SalesQuotation
{
key SalesQuotation,
@ObjectModel.foreignKey.association: '_SalesQuotationType'
SalesQuotationType,
@Semantics.text: true
CustomerName as SoldToPartyName,
@ObjectModel.foreignKey.association: '_SalesOrganization'
@ObjectModel.filter.enabled: false
SalesOrganization,
@ObjectModel.foreignKey.association: '_SalesOrganizationForFltr'
@ObjectModel.sort.enabled: false
SalesOrganization as SalesOrganizationForFilter,
@ObjectModel.foreignKey.association: '_DistributionChannel'
DistributionChannel,
ReferenceDistributionChannel,
@ObjectModel.foreignKey.association: '_OrganizationDivision'
OrganizationDivision,
@ObjectModel.foreignKey.association: '_SalesOffice'
SalesOffice,
@ObjectModel.foreignKey.association: '_SalesGroup'
SalesGroup,
@ObjectModel.text.element: ['SoldToPartyName']
SoldToParty,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
SoldToPartyAddressID,
@ObjectModel.foreignKey.association: '_SalesDistrict'
@ObjectModel.sort.enabled: false
SalesDistrict,
PurchaseOrderByCustomer,
SalesQuotationDate,
BindingPeriodValidityStartDate,
BindingPeriodValidityEndDate,
HdrOrderProbabilityInPercent,
@UI.hidden: true
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual SlsQtanDueDateCriticality : int1,
@Semantics.amount.currencyCode: 'TransactionCurrency'
TotalNetAmount,
@Semantics.currencyCode: true
@ObjectModel.foreignKey.association: '_TransactionCurrency'
TransactionCurrency,
@ObjectModel.sort.enabled: false
PricingDate,
@ObjectModel.foreignKey.association: '_CustomerPriceGroup'
@ObjectModel.sort.enabled: false
CustomerPriceGroup,
@ObjectModel.foreignKey.association: '_SDPricingProcedure'
@ObjectModel.sort.enabled: false
SDPricingProcedure,
@ObjectModel.foreignKey.association: '_ShippingCondition'
ShippingCondition,
@ObjectModel.foreignKey.association: '_CustomerCreditAccount'
@ObjectModel.sort.enabled: false
CustomerCreditAccount,
CreationDate,
@ObjectModel.foreignKey.association: '_CreatedByUser'
CreatedByUser,
@ObjectModel.foreignKey.association: '_LastChangedByUser'
LastChangedByUser,
LastChangeDateTime,
@ObjectModel.sort.enabled: false
SalesDocumentCreationDateTime,
LastChangeDate,
@ObjectModel.foreignKey.association: '_IncotermsVersion'
@ObjectModel.sort.enabled: false
IncotermsVersion,
@ObjectModel.foreignKey.association: '_IncotermsClassification'
@ObjectModel.sort.enabled: false
IncotermsClassification,
@ObjectModel.sort.enabled: false
IncotermsLocation1,
@ObjectModel.sort.enabled: false
IncotermsLocation2,
@ObjectModel.foreignKey.association: '_SalesDocApprovalStatus'
SalesDocApprovalStatus,
@ObjectModel.sort.enabled: false
OutputRequestUUID,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
@UI.hidden: true
virtual UICT_OutputRequestUUID : boole_d,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual SalesDocApprovalStsCriticality : int1,
@ObjectModel.foreignKey.association: '_OverallSDProcessStatus'
OverallSDProcessStatus,
@ObjectModel.foreignKey.association: '_HdrGeneralIncompletionStatus'
@ObjectModel.sort.enabled: false
HdrGeneralIncompletionStatus,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual HdrGenIncompltnStsCriticality : int1,
@ObjectModel.foreignKey.association: '_OvrlItmGeneralIncompletionSts'
@ObjectModel.sort.enabled: false
OvrlItmGeneralIncompletionSts,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual OvrlItmGenIncompltnStsCritlty : int1,
@ObjectModel.foreignKey.association: '_OverallSDDocReferenceStatus'
OverallSDDocReferenceStatus,
@ObjectModel.foreignKey.association: '_OverallSDDocumentRejectionSts'
OverallSDDocumentRejectionSts,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual OvrlSDDocRejectionStsCritlty : int1,
@ObjectModel.foreignKey.association: '_TotalCreditCheckStatus'
@ObjectModel.sort.enabled: false
TotalCreditCheckStatus,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual TotalCreditCheckStsCriticality : int1,
@ObjectModel.foreignKey.association: '_OverallChmlCmplncStatus'
@ObjectModel.sort.enabled: false
OverallChmlCmplncStatus,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual OvrlChmlCmplncStsCriticality : int1,
@ObjectModel.foreignKey.association: '_OverallDangerousGoodsStatus'
OverallDangerousGoodsStatus,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual OvrlDngrsGdsStsCriticality : int1,
@ObjectModel.foreignKey.association: '_OvrlSftyDataSheetSts'
@ObjectModel.sort.enabled: false
OverallSafetyDataSheetStatus,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual OvrlSftyDataSheetStsCritlty : int1,
@ObjectModel.foreignKey.association: '_OvrlTradeCmplncEmbargoStatus'
OverallTrdCmplncEmbargoSts,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual OvrlTrdCmplncEmbargoStsCritlty : int1,
//Used for multiple address selection
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
virtual PartnerDeterminationProcedure : pargr,
@ObjectModel.foreignKey.association: '_PaymentMethodVH'
@ObjectModel.sort.enabled: false
PaymentMethod,
@ObjectModel.foreignKey.association: '_CustomerPaymentTerms'
@ObjectModel.sort.enabled: false
CustomerPaymentTerms,
BillingCompanyCode,
//UI control fields
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
@UI.hidden: true
virtual UICT_CustomerCreditLimitAmount : boole_d,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
@UI.hidden: true
virtual UICT_LastChangeDateTime : boole_d,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
@UI.hidden: true
virtual UICT_WithdrawFromApproval : boole_d,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
@UI.hidden: true
virtual UICT_TradeComplianceIsActive : boole_d,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
@UI.hidden: true
virtual NumberOfAttachments : vdm_numberofattachments,
@ObjectModel.virtualElementCalculatedBy: 'ABAP:CL_SD_QUOTATION_V4_UI_UTIL'
@UI.hidden: true
virtual UICT_SubsequentDocument : int1,
@ObjectModel.foreignKey.association: '_SDDocumentReason'
SDDocumentReason,
@ObjectModel.foreignKey.association: '_SDDocumentReasonForFltr'
@ObjectModel.sort.enabled: false
SDDocumentReason as SDDocumentReasonForFilter,
/* Compositions */
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
// @Search.defaultSearchElement: true
@Search.defaultSearchElement: false
_Item : redirected to composition child C_SalesQuotationItemManageTP,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_ShipToParty : redirected to composition child C_SlsQtanShipToPartyManageTP,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_Partner : redirected to composition child C_SlsQuotationPartnerManageTP,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_Text : redirected to composition child C_SalesQuotationTextManageTP,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_PricingElement : redirected to composition child C_SlsQtanPrcgElementManageTP,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OutputRequest : redirected to C_SalesDocumentOutputRequestTP,
/* Associations */
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_CustomerPriceGroup,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_TransactionCurrency,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_PaymentMethodVH,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_CustomerPaymentTerms,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_DistributionChannel,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_HdrGeneralIncompletionStatus,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_IncotermsClassification,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_IncotermsVersion,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OrganizationDivision,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OverallChmlCmplncStatus,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OverallDangerousGoodsStatus,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OvrlTradeCmplncEmbargoStatus,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OverallSDDocReferenceStatus,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OverallSDDocumentRejectionSts,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OverallSDProcessStatus,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OvrlItmGeneralIncompletionSts,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_OvrlSftyDataSheetSts,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SalesDistrict,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SalesDocApprovalStatus,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SalesGroup,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SalesOffice,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SalesOrganization,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SalesQuotationType,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_TotalCreditCheckStatus,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_CreatedByUser,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_LastChangedByUser,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SoldToPartyContactInfo,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SlsVolumeNetAmtYearToDate,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_CreditLimitDetails,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_CustomerCreditAccount,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SDPricingProcedure,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_ShippingCondition,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SDDocumentReason,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SalesOrganizationForFltr,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SDDocumentReasonForFltr,
@ObjectModel.filter.enabled: false
@ObjectModel.sort.enabled: false
@Search.defaultSearchElement: false
_SubsequentDocType
// @ObjectModel.filter.enabled: false
// @ObjectModel.sort.enabled: false
// @Search.defaultSearchElement: false
// _SAPSituation
}
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"R_SALESQUOTATIONTP"
],
"ASSOCIATED":
[
"C_CUSTOMERCREDITLIMITDETAILS",
"C_SALESDOCPAYMENTMETHODVH",
"C_SALESDOCUMENTOUTPUTREQUESTTP",
"C_SALESORGANIZATIONVH",
"C_SALESQUOTATIONITEMMANAGETP",
"C_SALESQUOTATIONTEXTMANAGETP",
"C_SALESQUOTATIONTYPEVALUEHELP",
"C_SLSDOCSTDPARTNERCONTACTINFO",
"C_SLSQTANPRCGELEMENTMANAGETP",
"C_SLSQTANSHIPTOPARTYMANAGETP",
"C_SLSQTANSUBSQNTORDERTYPEMNGVH",
"C_SLSQUOTATIONPARTNERMANAGETP",
"C_SLSVOLUMENETAMTYEARTODATE",
"I_CURRENCY",
"I_CUSTOMER",
"I_CUSTOMERPAYMENTTERMS",
"I_CUSTOMERPRICEGROUP",
"I_DISTRIBUTIONCHANNEL",
"I_DIVISION",
"I_HDRGENINCOMPLETIONSTATUS",
"I_INCOTERMSCLASSIFICATION",
"I_INCOTERMSVERSION",
"I_OVERALLCHMLCMPLNCSTATUS",
"I_OVERALLDANGEROUSGOODSSTATUS",
"I_OVERALLSDDOCREFERENCESTATUS",
"I_OVERALLSDDOCUMENTRJCNSTATUS",
"I_OVERALLSDPROCESSSTATUS",
"I_OVRLITMGENINCOMPLETIONSTS",
"I_OVRLSFTYDATASHEETSTS",
"I_OVRLTRADECMPLNCEMBARGOSTATUS",
"I_SALESDISTRICT",
"I_SALESDOCAPPROVALSTATUS",
"I_SALESGROUP",
"I_SALESOFFICE",
"I_SDDOCUMENTREASON",
"I_SHIPPINGCONDITION",
"I_SLSPRICINGPROCEDURE",
"I_TOTALCREDITCHECKSTATUS",
"I_USER",
"R_OUTPUTREQUESTTP",
"R_SALESQUOTATIONITEMTP",
"R_SALESQUOTATIONPARTNERTP",
"R_SALESQUOTATIONSHIPTOPARTYTP",
"R_SALESQUOTATIONTEXTTP",
"R_SLSQUOTATIONPRICINGELEMENTTP"
],
"BASE":
[
"R_SALESQUOTATIONTP"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/