@AbapCatalog.sqlViewName: 'IPURREQNITM'
@AbapCatalog.compiler.compareFilter: true
@AccessControl.authorizationCheck: #CHECK
@EndUserText.label: 'Purchase Requisition Items'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog.preserveKey:true
@VDM.viewType: #COMPOSITE
@ObjectModel.semanticKey:['PurchaseRequisition', 'PurchaseRequisitionItem']
@AccessControl.privilegedAssociations: [ '_User' ]
@ObjectModel.usageType.serviceQuality:#C
@ObjectModel.usageType.sizeCategory: #L
@ObjectModel.usageType.dataClass: #TRANSACTIONAL
@Metadata.ignorePropagatedAnnotations: true
@VDM.lifecycle.contract.type: #SAP_INTERNAL_API
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
//This view is strictly to be used for professional PR fiori App.For any other usage required, please use I_Purchaserequisitionitem.
define view I_PurchaseReqnItem
as select from I_Purchaserequisitionitem as Document
association [1..1] to I_PurchaseReqn as _PurchaseReqn on $projection.PurchaseRequisition = _PurchaseReqn.PurchaseRequisition
association [0..*] to I_PurchaseReqnAcctAssgmt as _PurchaseReqnAcctAssgmt on $projection.PurchaseRequisition = _PurchaseReqnAcctAssgmt.PurchaseRequisition
and $projection.PurchaseRequisitionItem = _PurchaseReqnAcctAssgmt.PurchaseRequisitionItem
association [0..1] to I_PurchaseReqnDeliveryAddress as _PurchaseReqnDeliveryAddress on _PurchaseReqnDeliveryAddress.PurchaseRequisition = $projection.PurchaseRequisition
and _PurchaseReqnDeliveryAddress.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem
association [0..*] to I_PurchaseReqnItemText as _PurchaseReqnItemText on _PurchaseReqnItemText.PurchaseRequisition = $projection.PurchaseRequisition
and _PurchaseReqnItemText.PurchaseRequisitionItem = $projection.PurchaseRequisitionItem
association [0..1] to I_Supplier as _Supplier on $projection.FixedSupplier = _Supplier.Supplier
association [0..1] to I_Customer as _Customer on $projection.PurReqnReceivingCustomer = _Customer.Customer
association [0..1] to I_StorageLocationAddress as _StorageLocationAddress on $projection.Plant = _StorageLocationAddress.Plant
and $projection.StorageLocation = _StorageLocationAddress.StorageLocation
and $projection.ItemDeliveryAddressID = _StorageLocationAddress.AddressID
association [0..1] to I_PurchasingOrganization as _PurchasingOrganization on $projection.PurchasingOrganization = _PurchasingOrganization.PurchasingOrganization
association [0..1] to I_PurchasingGroup as _PurchasingGroup on $projection.PurchasingGroup = _PurchasingGroup.PurchasingGroup
association [0..1] to I_Currency as _Currency on $projection.PurReqnItemCurrency = _Currency.Currency
association [0..1] to I_Plant as _SupplyingPlant on $projection.SupplyingPlant = _SupplyingPlant.Plant
association [1..1] to I_AccAssgnmtCategory as _AccAssgnmtCategory on $projection.AccountAssignmentCategory = _AccAssgnmtCategory.AccountAssignmentCategory
association [0..1] to I_Material as _Material on $projection.Material = _Material.Material
association [0..1] to I_MaterialGroup as _MaterialGroup on $projection.MaterialGroup = _MaterialGroup.MaterialGroup
association [0..1] to I_Plant as _Plant on $projection.Plant = _Plant.Plant
association [1..1] to I_UnitOfMeasure as _UnitOfMeasure on $projection.BaseUnit = _UnitOfMeasure.UnitOfMeasure
association [0..1] to I_StorageLocation as _StorageLocation on $projection.StorageLocation = _StorageLocation.StorageLocation
and $projection.Plant = _StorageLocation.Plant
association [0..1] to I_PurchasingInfoRecord as _PurchasingInfoRecord on $projection.PurchasingInfoRecord = _PurchasingInfoRecord.PurchasingInfoRecord
association [0..1] to I_User as _User on _User.UserID = $projection.CreatedByUser
//Commented as part of performance remodelling
// association [1..1] to I_PurchaseReqnItemTF as _TransientFields on $projection.PurchaseRequisition = _TransientFields.PurchaseRequisition
// and $projection.PurchaseRequisitionItem = _TransientFields.PurchaseRequisitionItem
association [1..1] to I_CompanyCode as _CompanyCode on $projection.CompanyCode = _CompanyCode.CompanyCode
{
@EndUserText.label: 'Purchase Requisition'
@ObjectModel.readOnly: true
key Document.PurchaseRequisition,
@ObjectModel: {
readOnly: true
}
@EndUserText.label: 'Purchase Requisition Items'
key Document.PurchaseRequisitionItem,
Document.PurchasingDocument,
Document.PurchasingDocumentItem,
@EndUserText.label: 'Status'
@ObjectModel.readOnly: true
Document.PurReqnReleaseStatus,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurchaseRequisitionType,
@EndUserText.label: 'Item Category'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurchasingDocumentItemCategory,
@EndUserText.label: 'Item Description'
@Semantics.text: true
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurchaseRequisitionItemText,
@EndUserText.label: 'Account Assignment Category'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.AccountAssignmentCategory,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@Consumption.semanticObject: 'Material'
Document.Material,
@UI.hidden: true
Document.ManufacturerMaterial,
@UI.hidden: true
Document.ManufacturerPartProfile,
@UI.hidden: true
Document.ManufacturerPartNmbr,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.MaterialGroup,
Document.PurchasingDocumentCategory,
// Relevent for Item Hierarchy
IsOutline,
PurchasingParentItem,
PurReqnItemOutlineType,
PurgConfigurableItemNumber,
PurgExternalSortNumber,
//
@EndUserText.label: 'Quantity'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
Document.RequestedQuantity,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@ObjectModel.foreignKey.association: '_UnitOfMeasure'
@Consumption.valueHelp:'_UnitOfMeasure'
@Semantics.unitOfMeasure: true
Document.BaseUnit,
@EndUserText.label: 'Valuation Price'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@Semantics.amount.currencyCode: 'PurReqnItemCurrency'
Document.PurchaseRequisitionPrice,
@EndUserText.label: 'Price Unit'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
Document.PurReqnPriceQuantity,
@EndUserText.label: 'GR Processing Time (in Days)'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.MaterialGoodsReceiptDuration,
Document.ReleaseCode,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurchaseRequisitionReleaseDate,
@EndUserText.label: 'Purchasing Organization'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurchasingOrganization,
@EndUserText.label: 'Purchasing Group'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurchasingGroup,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@ObjectModel.foreignKey.association: '_Plant'
Document.Plant,
Document.SourceOfSupplyIsAssigned,
Document.SupplyingPlant,
@EndUserText.label: 'Ordered Quantity'
@ObjectModel.readOnly: true
@Semantics.quantity.unitOfMeasure: 'BaseUnit'
Document.OrderedQuantity,
@EndUserText.label: 'Consumption Value'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@Semantics.amount.currencyCode: 'PurReqnItemCurrency'
Document.PurReqnLimitConsumptionAmt,
@EndUserText.label: 'Delivery Date'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.DeliveryDate,
@ObjectModel.readOnly: true
@EndUserText.label: 'Changed On'
Document.CreationDate,
@EndUserText.label: 'Requisition Processing Status'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.ProcessingStatus,
Document.PurchasingInfoRecord,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@Consumption.semanticObject: 'Supplier'
Document.Supplier,
@Semantics.booleanIndicator:true
Document.IsDeleted,
//@ObjectModel.readOnly: true
//@Consumption.valueHelp:'_Supplier'
@EndUserText.label: 'Supplier'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.FixedSupplier,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.RequisitionerName,
@ObjectModel.readOnly:'EXTERNAL_CALCULATION'
Document.PurReqnSSPRequestor,
@ObjectModel: {
readOnly: true,
text: { element: 'UserDescription' }
}
// @UI.textArrangement: #TEXT_ONLY
Document.CreatedByUser,
@EndUserText.label: 'Created By'
@Semantics.text: true
@ObjectModel.readOnly: true
_User.UserDescription,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurReqCreationDate,
/*Delivery Address*/
Document.ManualDeliveryAddressID,
Document.ItemDeliveryAddressID,
Document.Subcontractor as PurReqnReceivingSupplier,
Document.PurReqnReceivingCustomer,
//Delivery Address ID
case
//manual deliv address
when Document.ManualDeliveryAddressID <> ''
then Document.ManualDeliveryAddressID
//referenced other address
when Document.ItemDeliveryAddressID <> ''
then Document.ItemDeliveryAddressID
//address from supplier
when Document.Subcontractor <> ''
then _Supplier.AddressID
//address from customer
when Document.PurReqnReceivingCustomer <> ''
then _Customer.AddressID
//default address from Plant and item not thrid party
when Document.ManualDeliveryAddressID = '' and Document.ItemDeliveryAddressID = ''
and Subcontractor = '' and PurReqnReceivingCustomer = '' and PurchasingDocumentItemCategory <> '5'
then _Plant.AddressID
else
''
end as DeliveryAddressID,
//Address type
case
when Document.PurchasingDeliveryAddressType is not initial
then Document.PurchasingDeliveryAddressType
//manual deliv address
when ManualDeliveryAddressID <> ''
then cast ( 'U' as purreqnaddrtype preserving type)
//referenced other address
when ItemDeliveryAddressID <> ''
then
case
when ItemDeliveryAddressID = _StorageLocationAddress.AddressID
then cast ( 'L' as purreqnaddrtype preserving type)
else
cast( 'R' as purreqnaddrtype preserving type) //Reference Address
end
//address from supplier
when Subcontractor <> ''
then cast ( 'S' as purreqnaddrtype preserving type)
//address from customer
when PurReqnReceivingCustomer <> ''
then cast ( 'C' as purreqnaddrtype preserving type )
//default address from Plant and item not thrid party
when ManualDeliveryAddressID = '' and ItemDeliveryAddressID = ''
and Subcontractor = '' and PurReqnReceivingCustomer = ''
and PurchasingDocumentItemCategory <> '5'
and Document.DeliveryAddressID <> ''
then cast ( 'P' as purreqnaddrtype preserving type)
else
cast ( 'P' as purreqnaddrtype preserving type)
end as AddressType,
@Semantics.currencyCode: true
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@ObjectModel.foreignKey.association: '_Currency'
@Consumption.valueHelp:'_Currency'
Document.PurReqnItemCurrency,
@EndUserText.label: 'Planned Delivery Time (in Days)'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.MaterialPlannedDeliveryDurn,
Document.DelivDateCategory,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
case
when Document.MultipleAcctAssgmtDistribution <> ''
then Document.MultipleAcctAssgmtDistribution
else
'0'
end as MultipleAcctAssgmtDistribution,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
case
when Document.PartialInvoiceDistribution <> ''
then Document.PartialInvoiceDistribution
else
'0'
end as PartialInvoiceDistribution,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.StorageLocation,
Document.PurchaseContract,
@Consumption.hidden: true
Document.PurReqnSourceOfSupplyType,
Document.PurchaseContractItem,
Document.ConsumptionPosting,
@ObjectModel.readOnly: true
@EndUserText.label: 'Creation Indicator'
Document.PurReqnOrigin,
//@Semantics.booleanIndicator:true
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.IsPurReqnBlocked,
Document.Language,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@EndUserText.label: 'Purchase Requisition Item is Closed'
Document.IsClosed,
Document.ReleaseIsNotCompleted,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.ServicePerformer,
//@EndUserText.label: 'Item Type'
//@ObjectModel.readOnly: true
Document.ProductType,
@ObjectModel.readOnly: true
Document.PurchaseRequisitionStatus,
Document.ReleaseStrategy,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PerformancePeriodStartDate,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PerformancePeriodEndDate,
@EndUserText.label: 'Supplier Material Number'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.SupplierMaterialNumber,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.Batch,
@EndUserText.label: 'Revision Level'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.MaterialRevisionLevel,
@EndUserText.label: 'Remaining Shelf Life'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.MinRemainingShelfLife,
@EndUserText.label: 'Goods Receipt is Expected'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.GoodsReceiptIsExpected,
@EndUserText.label: 'Invoice Receipt is Expected'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.InvoiceIsExpected,
@EndUserText.label: 'Non-valuated Goods Receipt is Expected'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.GoodsReceiptIsNonValuated,
@EndUserText.label: 'Requirement Tracking Number'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.RequirementTracking,
@EndUserText.label: 'MRP Controller'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.MRPController,
@EndUserText.label: 'Tax Code'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.TaxCode,
@EndUserText.label: 'Purchase Requisition Item is Fixed'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurchaseRequisitionIsFixed,
Document.PurchasingDocumentSubtype,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurReqnSSPCatalog as PurReqnCatalog,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.PurReqnSSPCatalogItem as PurReqnCatalogItem,
Document.IsPurReqnCmplt,
Document.PurReqnCmpltnsCat,
Document.PurReqnSSPCrossCatalogItem as PurReqnCrossCatalogItem,
@Semantics.amount.currencyCode: 'PurReqnItemCurrency'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.ExpectedOverallLimitAmount as ExpectedOverallLimitAmount,
@Semantics.amount.currencyCode: 'PurReqnItemCurrency'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.OverallLimitAmount as OverallLimitAmount,
case
when Document.LastChangeDateTime < 00000001
then 00000001
else
Document.LastChangeDateTime
end as LastChangeDateTime,
@EndUserText.label: 'Purchase Requisition Item'
Document.PurchaseReqnItemUniqueID as PurchaseReqnItemUniqueID,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
case Document.PurchaseOrderPriceType
when ''
then cast( '0' as abap.char( 1 ))
else
Document.PurchaseOrderPriceType
end as PurchaseOrderPriceType,
// Document.PurchaseOrderPriceType as PurchaseOrderPriceType,
Document.IsPurReqnOvrlRel,
Document.ExternalApprovalStatus,
/*******************************Start Code for PSM Account Object Integration***************************************/
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
//Document.CommitmentItem as CommitmentItem,
cast( Document.CommitmentItemShortID as fipos ) as CommitmentItem,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.FundsCenter as FundsCenter,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.Fund as Fund,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.GrantID as GrantID,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.FunctionalArea as FunctionalArea,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.EarmarkedFundsDocument as EarmarkedFundsDocument,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.EarmarkedFundsDocumentItem as EarmarkedFundsDocumentItem,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.BudgetPeriod as BudgetPeriod,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.MaterialOrderUnit as MaterialOrderUnit,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.CostCenter as CostCenter,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
Document.GLAccount as GLAccount,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@VDM.lifecycle.status: #DEPRECATED
@VDM.lifecycle.successor: 'WBSElementInternalID_2'
cast ('00000000' as ps_psp_pnr) as WBSElement,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
cast ( '00000000' as ps_s4_pspnr preserving type ) as WBSElementInternalID_2,
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
//cast (' ' as fm_measure) as FundedProgram,
Document.FundedProgram,
/*******************************End Code for PSM Account Object Integration*****************************************/
/*****************************Start Code for performance improvement*********************************************************/
@EndUserText.label: 'Total Value'
@ObjectModel.readOnly: 'EXTERNAL_CALCULATION'
@Semantics.amount.currencyCode: 'PurReqnItemCurrency'
// Commented to avoid arithmetic overflow issue
/* case
when PurchasingDocumentItemCategory = 'A'
then ExpectedOverallLimitAmount
when PurReqnPriceQuantity = 0
then cast( RequestedQuantity * PurchaseRequisitionPrice as abap.curr(21,2))
else
cast( division( RequestedQuantity*PurchaseRequisitionPrice, PurReqnPriceQuantity, 2) as abap.curr(21,2))
end as ItemNetAmount,*/
/* case
when PurchasingDocumentItemCategory = 'A'
then ExpectedOverallLimitAmount
else*/
Document.ItemNetAmount,
// end as ItemNetAmount,
//Priority Release Status - BANPR Processing Status - STATU Delete Flag - LOEKZ Blocked Flag - BLCKD Header Status Deciding Header Status
//
// 70 In Release - FALSE - Awaiting Approval Even if one item is "In Release" or "For Overall Release"
// 70 For Overall Release - FALSE - Awaiting Approval
// 50 Active - FALSE - Approved
// 50 Release Completed - FALSE - Approved Even if one item with "Follow on Doc Created"/"Not Edited"/"Release Completed"
// 40 - PO created FALSE - Follow on Document Created but not in "In release" or "For Overall Release"
// 40 - RFQ created FALSE - Follow on Document Created
// 40 - Contract created FALSE - Follow on Document Created
// 40 - Scheduling agreement created FALSE - Follow on Document Created
// 40 - Service entry sheet created FALSE - Follow on Document Created
// 50 - Not Edited FALSE - Approved
// 60 - - FALSE TRUE Blocked No item awaiting release or released but one Item is blocked
// 20 <> <> FALSE - Saved No item awaiting release or released Item all status are blank
// 30 Release Refused FALSE - Rejected All items are either "Release Refused" or "Deleted"
// 10 - - TRUE - Deleted All Items are "Deleted"
@ObjectModel.readOnly: true
/************************************** Determine the item status *********************************************************/
case IsDeleted
when 'X' then 10 // Deleted - Item "Deleted"
else
case PurReqnCmpltnsCat // Memory = Yes (Purchase Requisition not yet Complete)
when 'H' then 90 // Held
when 'P' then 85 // Parked
else
case ExternalApprovalStatus
when 'P' then 80 // External Approval Status
else
case when IsPurReqnBlocked = '1'
then 60 // Blocked
else
case PurReqnReleaseStatus
when '03' then 70 // Awaiting Approval
when '04' then 70 // Awaiting Approval
when '02' then
case ProcessingStatus
when 'N' then 50 // Approved
else 40 // Follow on Doc Created
end
when '08' then 30 // Rejected
when '05' then
case ProcessingStatus
when 'N' then 50 // Approved
else 40 // Follow on Doc Created
end
else 20
end
end
end
end
end as PurchaseReqnStatusPriority,
/************************************** End of determine the item status *********************************************************/
case
when PurchasingDocumentItemCategory = '0' //Standard
then cast( 0 as int1 )
when PurchasingDocumentItemCategory = '5' //Third-Party
then cast( 0 as int1 )
when PurchasingDocumentItemCategory = 'A' // Enhanced Limit
then cast( 0 as int1 )
else
cast( 1 as int1 )
end as IsAdvncdPurchaseReqnItemType,
case
when PurReqnOrigin = 'R'
then cast( 0 as int1 )
when PurReqnOrigin = 'S'
then cast( 0 as int1 )
when PurReqnOrigin = 'P'
then cast( 0 as int1 )
else
cast( 1 as int1 )
end as IsAdvncdPurchaseReqnOrigin,
/*******************************End Code for performance improvement*********************************************************/
Document.CompanyCode,
/* Associations */
// @ObjectModel.association.type: [ #TO_COMPOSITION_PARENT, #TO_COMPOSITION_ROOT ]
_PurchaseReqn,
// @ObjectModel.association.type: #TO_COMPOSITION_CHILD
_PurchaseReqnAcctAssgmt,
// @ObjectModel.association.type: #TO_COMPOSITION_CHILD
_PurchaseReqnDeliveryAddress,
// @ObjectModel.association.type: #TO_COMPOSITION_CHILD
_PurchaseReqnItemText,
_AccAssgnmtCategory,
_Currency,
_Material,
_MaterialGroup,
_Plant,
_PurchasingGroup,
_PurchasingInfoRecord,
_PurchasingOrganization,
_StorageLocation,
_Supplier,
_SupplyingPlant,
_UnitOfMeasure,
// _TransientFields, commented as part of performance remodelling
_User,
_CompanyCode
}
where
Document.IsDeleted = '' //Performance improvement changes from <> to =
and ExtPlantForPurg = ''
and ExtCompanyCodeForPurg = ''
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_CUSTOMER",
"I_PLANT",
"I_PURCHASEREQUISITIONITEM",
"I_STORAGELOCATIONADDRESS",
"I_SUPPLIER",
"I_USER"
],
"ASSOCIATED":
[
"I_ACCASSGNMTCATEGORY",
"I_COMPANYCODE",
"I_CURRENCY",
"I_CUSTOMER",
"I_MATERIAL",
"I_MATERIALGROUP",
"I_PLANT",
"I_PURCHASEREQN",
"I_PURCHASEREQNACCTASSGMT",
"I_PURCHASEREQNDELIVERYADDRESS",
"I_PURCHASEREQNITEMTEXT",
"I_PURCHASINGGROUP",
"I_PURCHASINGINFORECORD",
"I_PURCHASINGORGANIZATION",
"I_STORAGELOCATION",
"I_STORAGELOCATIONADDRESS",
"I_SUPPLIER",
"I_UNITOFMEASURE",
"I_USER"
],
"BASE":
[],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/