I_CustProjSlsOrd

DDL: I_CUSTPROJSLSORD SQL: ICUSTPROJSO Type: view COMPOSITE

Sales Order for Customer Project

I_CustProjSlsOrd is a Composite CDS View that provides data about "Sales Order for Customer Project" in SAP S/4HANA. It reads from 2 data sources (I_CustomerProjectItem, I_SalesOrder) and exposes 31 fields with key field CustomerProject. It has 5 associations to related views.

SAP Help Documentation

CategoryCDS Views for Customer and Internal Project Management
StatusReleased
Purpose
This CDS view provides the prerequisites for answering the following business questions: What is the net value of my sales order in my customer project? Which payment terms were defined? Which sales organization was used for my sales order in my customer project?

Prerequisites
Users who want to run reports using this CDS view must have a role based on the Project Manager - Professional Services ( SAP_BR_PROJECT_MANAGER_PROF ) business role template. In this role, the following restrictions must be set to read access: Sales Order Type Division Sales Organization Distribution Channel These restriction types are edited in the Maintain Business Roles app.

Structure
Object types This view is built on the following object types: Sales order Customer project The key field is CustomerProject . Measures and attributes Some important measures and attributes are: Customer project ( CustomerProject ) Sales order ( SalesOrder ) Net value ( TotalNetAmount )

View on SAP Help Portal →

Data Sources (2)

SourceAliasJoin Type
I_CustomerProjectItem Project from
I_SalesOrder SalesOrder inner

Associations (5)

CardinalityTargetAliasCondition
[0..*] I_CustProjSlsOrdItem _CustProjSlsOrdItem $projection.SalesOrder = _CustProjSlsOrdItem.SalesOrder
[0..*] I_CustProjSlsOrdPartner _CustProjSlsOrdPartner $projection.SalesOrder = _CustProjSlsOrdPartner.SalesOrder
[1..1] I_SalesOrder _SalesOrder $projection.SalesOrder = _SalesOrder.SalesOrder
[0..1] I_CustomerProject _CustomerProject $projection.CustomerProject = _CustomerProject.CustomerProject
[0..1] E_SalesDocumentBasic _Extension $projection.SalesOrder = _Extension.SalesDocument

Annotations (13)

NameValueLevelField
AbapCatalog.sqlViewName ICUSTPROJSO view
ClientHandling.algorithm #SESSION_VARIABLE view
VDM.viewType #COMPOSITE view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AccessControl.authorizationCheck #CHECK view
AbapCatalog.compiler.compareFilter true view
AbapCatalog.preserveKey true view
ObjectModel.representativeKey CustomerProject view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #L view
Metadata.ignorePropagatedAnnotations true view
EndUserText.label Sales Order for Customer Project view

Fields (31)

KeyFieldSource TableSource FieldDescription
KEY CustomerProject I_CustomerProjectItem CustomerProject Engmnt Project ID
SalesOrder I_SalesOrder SalesOrder SD Document
SalesOrderType I_SalesOrder SalesOrderType Sales Order Type
SoldToParty I_SalesOrder SoldToParty Sold-to Party
TotalNetAmount I_SalesOrder TotalNetAmount Total Net Amount
TransactionCurrency I_SalesOrder TransactionCurrency Transaction Currency
PurchaseOrderByCustomer I_SalesOrder PurchaseOrderByCustomer Purchase Order Number
CustomerPurchaseOrderDate I_SalesOrder CustomerPurchaseOrderDate Purchase Order Date
SalesOrganization I_SalesOrder SalesOrganization Sales Organization
DistributionChannel I_SalesOrder DistributionChannel RefDistCh-Cust/Mat.
OrganizationDivision I_SalesOrder OrganizationDivision Org. Division
SalesOffice I_SalesOrder SalesOffice Sales Office
SalesGroup I_SalesOrder SalesGroup Sales Group
CustomerPaymentTerms I_SalesOrder CustomerPaymentTerms Pyt Terms
PaymentMethod I_SalesOrder PaymentMethod Pymt Meth.
CustomerAccountAssignmentGroup I_SalesOrder CustomerAccountAssignmentGroup AccAssmtGrpCust
HeaderBillingBlockReason I_SalesOrder HeaderBillingBlockReason Billing Block
_CustomerProject _CustomerProject
_SalesOrder _SalesOrder
_CustProjSlsOrdItem _CustProjSlsOrdItem
_CustProjSlsOrdPartner _CustProjSlsOrdPartner
_SoldToParty _SoldToParty
_TransactionCurrency _TransactionCurrency
_SalesOrganization _SalesOrganization
_DistributionChannel _DistributionChannel
_OrganizationDivision _OrganizationDivision
_SalesOffice _SalesOffice
_SalesGroup _SalesGroup
_CustomerPaymentTerms _CustomerPaymentTerms
_CustomerAccountAssgmtGroup _CustomerAccountAssgmtGroup
_HeaderBillingBlockReason _HeaderBillingBlockReason

Derived SQL interpretation, reconstructed from the parsed view metadata (data sources, associations, and field mappings). SAP annotations are omitted and the structure is reformulated as SQL — this is a functional approximation, not the verbatim SAP source.

-- Derived SQL interpretation of CDS view I_CustProjSlsOrd.
-- Reconstructed from parsed metadata (data sources, associations, fields).
-- SAP annotations are omitted and the structure is reformulated as SQL;
-- this is a functional approximation, not the verbatim SAP source. Some join
-- conditions may be unavailable and a few CDS constructs are kept as-is.
-- SQL view name: ICUSTPROJSO

CREATE VIEW I_CustProjSlsOrd AS
SELECT
  Project.CustomerProject AS CustomerProject,
  SalesOrder.SalesOrder AS SalesOrder,
  SalesOrder.SalesOrderType AS SalesOrderType,
  SalesOrder.SoldToParty AS SoldToParty,
  SalesOrder.TotalNetAmount AS TotalNetAmount,
  SalesOrder.TransactionCurrency AS TransactionCurrency,
  SalesOrder.PurchaseOrderByCustomer AS PurchaseOrderByCustomer,
  SalesOrder.CustomerPurchaseOrderDate AS CustomerPurchaseOrderDate,
  SalesOrder.SalesOrganization AS SalesOrganization,
  SalesOrder.DistributionChannel AS DistributionChannel,
  SalesOrder.OrganizationDivision AS OrganizationDivision,
  SalesOrder.SalesOffice AS SalesOffice,
  SalesOrder.SalesGroup AS SalesGroup,
  SalesOrder.CustomerPaymentTerms AS CustomerPaymentTerms,
  SalesOrder.PaymentMethod AS PaymentMethod,
  SalesOrder.CustomerAccountAssignmentGroup AS CustomerAccountAssignmentGroup,
  SalesOrder.HeaderBillingBlockReason AS HeaderBillingBlockReason
FROM I_CustomerProjectItem AS Project
INNER JOIN I_SalesOrder AS SalesOrder ON /* join condition not captured in parsed metadata */
LEFT OUTER JOIN I_CustProjSlsOrdItem AS _CustProjSlsOrdItem ON SalesOrder = _CustProjSlsOrdItem.SalesOrder  -- association [0..*]
LEFT OUTER JOIN I_CustProjSlsOrdPartner AS _CustProjSlsOrdPartner ON SalesOrder = _CustProjSlsOrdPartner.SalesOrder  -- association [0..*]
LEFT OUTER JOIN I_SalesOrder AS _SalesOrder ON SalesOrder = _SalesOrder.SalesOrder  -- association [1..1]
LEFT OUTER JOIN I_CustomerProject AS _CustomerProject ON CustomerProject = _CustomerProject.CustomerProject  -- association [0..1]
LEFT OUTER JOIN E_SalesDocumentBasic AS _Extension ON SalesOrder = _Extension.SalesDocument  -- association [0..1]
;