P_QUANTITYCONTRACTACCTASSGMT
Quantity Contract Account Assignment
P_QUANTITYCONTRACTACCTASSGMT is a CDS View in S/4HANA. Quantity Contract Account Assignment. 1 CDS views read from this table.
CDS Views using this table (1)
| View | Type | Join | VDM | Description |
|---|---|---|---|---|
| C_QuantityContractAcctAssgmt | view | from | CONSUMPTION | Quantity Contract Account Assignment |
@ClientHandling.algorithm: #SESSION_VARIABLE //Inserted by VDM CDS Suite Plugin
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #L
@AbapCatalog.sqlViewName: 'PQTYCONTRACCT'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@VDM.viewType: #CONSUMPTION
@VDM.private: true
@AbapCatalog.preserveKey: true
@EndUserText.label: 'Quantity Contract Account Assignment'
define view P_QuantityContractAcctAssgmt
with parameters
P_DisplayCurrency : displaycurrency,
P_StartDate : vdm_validitystart,
P_EndDate : vdm_validitystart
as select from P_QuantityContractWithPOCount( P_DisplayCurrency : $parameters.P_DisplayCurrency,
P_StartDate : $parameters.P_StartDate,
P_EndDate : $parameters.P_EndDate ) as PurchaseContractItem
// I_PurchaseContractItem as PurchaseContractItem
//
// inner join I_PurchaseContract as PurchaseContract on PurchaseContractItem.PurchaseContract = PurchaseContract.PurchaseContract
//
// inner join I_PurContractClassification as ContractClassification on PurchaseContract.PurchaseContractType = ContractClassification.PurchasingDocumentType
//
// left outer to many join P_ReleaseDocumentationValues(P_DisplayCurrency : $parameters.P_DisplayCurrency) as ReleaseDocumentation on PurchaseContractItem.PurchaseContract = ReleaseDocumentation.PurchaseContract
// and PurchaseContractItem.PurchaseContractItem = ReleaseDocumentation.PurchaseContractItem
left outer to many join I_PurgDocAccountAssignment as AccountAssignment on PurchaseContractItem.PurchaseContract = AccountAssignment.PurchasingDocument
and PurchaseContractItem.PurchaseContractItem = AccountAssignment.PurchasingDocumentItem
{
key PurchaseContractItem.PurchaseContract,
key PurchaseContractItem.PurchaseContractItem,
key AccountAssignmentNumber,
key ReleaseOrder,
key ReleaseOrderItem,
FormattedPurchaseContractItem,
Supplier,
PurchasingGroup,
PurchasingOrganization,
CompanyCode,
PurchasingDocumentCategory,
PurchaseContractType,
PurchasingDocumentItemCategory,
PurchaseContractItem.Material,
PurchaseContractItem.MaterialGroup,
PurchaseContractItem.Plant,
AccountAssignment.CostCenter,
CreatedByUser,
ValidityEndDate,
ReleaseOrderDate,
MultipleAcctAssgmtDistribution,
case when MultipleAcctAssgmtDistribution = ''
then 1
when MultipleAcctAssgmtDistribution = '1'
then division( AccountAssignment.Quantity, TargetQuantity , 3 )
else division( AccountAssignment.MultipleAcctAssgmtDistrPercent , 100, 3 )
end as MultipleAcctAssgmtDistrPercent,
cast(case when MultipleAcctAssgmtDistribution = ''
then ReleaseOrderItemOrderQuantity
when MultipleAcctAssgmtDistribution = '1'
then ReleaseOrderItemOrderQuantity * division( AccountAssignment.Quantity, TargetQuantity , 3 )
else ReleaseOrderItemOrderQuantity * division( AccountAssignment.MultipleAcctAssgmtDistrPercent , 100, 3 )
end as mm_a_release_order_quantity) as ReleaseOrderItemOrderQuantity,
ReleaseOrderItemNetAmount, //3229617
@Semantics.currencyCode: true
DisplayCurrency,
@Semantics.amount.currencyCode: 'DisplayCurrency'
ContractNetPriceAmount,
@Semantics.unitOfMeasure: true
PurchaseContractItem.OrderQuantityUnit,
@Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
cast(case when MultipleAcctAssgmtDistribution = ''
then TargetQuantity
when MultipleAcctAssgmtDistribution = '1'
then AccountAssignment.Quantity
else TargetQuantity * division( AccountAssignment.MultipleAcctAssgmtDistrPercent , 100, 3 )
end as menge_d) as TargetQuantity,
@Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
cast(case when MultipleAcctAssgmtDistribution = ''
then AverageTargetQuantity
when MultipleAcctAssgmtDistribution = '1'
then AverageTargetQuantity * division( AccountAssignment.Quantity, TargetQuantity , 3 )
else AverageTargetQuantity * division( AccountAssignment.MultipleAcctAssgmtDistrPercent , 100, 3 )
end as menge_d) as AverageTargetQuantity
}