@ClientHandling.algorithm: #SESSION_VARIABLE
@AbapCatalog: {
sqlViewName: 'IBUSSOLORDITMFR',
compiler.compareFilter: true,
preserveKey: true
}
@VDM: {
viewType: #COMPOSITE,
lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@AccessControl: {
authorizationCheck: #CHECK,
personalData.blocking: #('TRANSACTIONAL_DATA')
}
@ObjectModel: {
representativeKey: 'BusinessSolutionOrderItem',
usageType: {
dataClass: #MIXED,
serviceQuality: #C,
sizeCategory: #XXL
},
supportedCapabilities: [#ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE],
modelingPattern: #ANALYTICAL_DIMENSION
}
@Analytics.dataCategory: #DIMENSION
@Analytics.internalName:#LOCAL
@Metadata.allowExtensions:true
@Metadata.ignorePropagatedAnnotations: true
@EndUserText.label: 'Solution Order Item for Fin Reporting'
define view I_BusSolnOrdItmBasicFinancial
as select from I_ServiceDocumentItemEnhcd
{
@ObjectModel.foreignKey.association: '_ServiceDocument'
key ServiceDocument as BusinessSolutionOrder,
@ObjectModel.text.element: 'ServiceDocumentItemDescription'
key ServiceDocumentItem as BusinessSolutionOrderItem,
@ObjectModel.foreignKey.association: '_ServiceObjType'
ServiceObjectType,
// Header Details
ServiceDocumentDescription,
// Process Type is required for Search by Document Type view
@ObjectModel.foreignKey.association: '_ServiceDocumentType'
ServiceDocumentType,
// ServiceDocumentItemPriority,
PostingDate,
// Item Details
ServiceDocumentItemUUID as BusinessSolutionOrderItemUUID,
//ServiceDocumentItemCharUUID,
ServiceDocumentItemObjectType,
ServiceDocumentUUID as BusinessSolutionOrderUUID,
ParentServiceDocumentItemUUID,
@Semantics.text: true
ServiceDocumentItemDescription,
Language,
OriginallyRequestedProduct,
@ObjectModel.foreignKey.association: '_ServiceDocItemCategory'
ServiceDocItemCategory,
@ObjectModel.foreignKey.association: '_ProfitCenter'
ProfitCenter,
@ObjectModel.foreignKey.association: '_ControllingArea'
ControllingArea,
// Item - Cumulated Value
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceDocumentItemNetAmount,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceDocumentItemTaxAmount,
@DefaultAggregation: #SUM
@Semantics: { amount : {currencyCode: 'TransactionCurrency'} }
ServiceDocItemGrossAmount,
@Semantics.currencyCode:true
TransactionCurrency,
// Item - Schedule Line
@DefaultAggregation: #SUM
@Semantics: { quantity : {unitOfMeasure: 'ServiceDocItemQuantityUnit'} }
ServiceDocumentItemQuantity,
// Item - Product
@ObjectModel.foreignKey.association: '_SalesUnit'
@Semantics.unitOfMeasure:true
ServiceDocItemQuantityUnit,
// Date
@Semantics.dateTime: true
RequestedServiceStartDateTime,
@Semantics.dateTime: true
RequestedServiceEndDateTime,
@Semantics.dateTime: true
ServiceContrItemStartDateTime,
@Semantics.dateTime: true
ServiceContrItemEndDateTime,
// Partner Details
@ObjectModel.foreignKey.association: '_SoldToPartyCountry'
SoldToPartyCountry,
@ObjectModel.foreignKey.association: '_SoldToPartyRegion'
SoldToPartyRegion,
@ObjectModel.foreignKey.association: '_SoldToParty'
SoldToParty,
@ObjectModel.foreignKey.association: '_RespEmployee'
ResponsibleEmployee,
// Status
@ObjectModel.foreignKey.association: '_SrvcDocItmLifecycleStatus'
ServiceDocumentItemStatus,
// Organization Unit Set
@ObjectModel.foreignKey.association: '_SalesOrganizationOrgUnit_2'
SalesOrganizationOrgUnitID,
@ObjectModel.foreignKey.association: '_SalesOfficeOrgUnit_2'
SalesOfficeOrgUnitID,
@ObjectModel.foreignKey.association: '_SalesGroupOrgUnit_2'
SalesGroupOrgUnitID,
@ObjectModel.foreignKey.association: '_DistributionChannel'
DistributionChannel,
@ObjectModel.foreignKey.association: '_Division'
Division,
@ObjectModel.foreignKey.association: '_ServiceOrganizationOrgUnit_2'
ServiceOrganization,
@ObjectModel.foreignKey.association: '_RespSrvcOrganizationOrgUnit_2'
ResponsibleServiceOrganization,
// Organizational units with the S/4 SD codes
@ObjectModel.foreignKey.association: '_SalesOrganization'
SalesOrganization,
@ObjectModel.foreignKey.association: '_SalesOffice'
SalesOffice,
@ObjectModel.foreignKey.association: '_SalesGroup'
SalesGroup,
// Header Details
_ServiceDocument,
_ServiceObjType,
_ServiceDocumentType,
// Item - Product
_SalesUnit,
// Item Details
_ServiceDocItemCategory,
_ProfitCenter,
_ControllingArea,
// Partner
_SoldToParty,
_RespEmployee,
_SoldToPartyCountry,
_SoldToPartyRegion,
// Status
@ObjectModel.association.boundFields.dataMatchesSourceAndTargetTypes: true
@API.element.releaseState: #DEPRECATED
@API.element.successor: '_SrvcDocItmLifecycleStatus'
_ServiceDocItemStatus,
_SrvcDocItmLifecycleStatus,
// Organization Unit Set
@API.element.releaseState: #DEPRECATED
@API.element.successor: '_SalesOrganizationOrgUnit_2'
_SalesOrganizationOrgUnit,
_SalesOrganizationOrgUnit_2,
@API.element.releaseState: #DEPRECATED
@API.element.successor: '_SalesOfficeOrgUnit_2'
_SalesOfficeOrgUnit,
_SalesOfficeOrgUnit_2,
@API.element.releaseState: #DEPRECATED
@API.element.successor: '_SalesGroupOrgUnit_2'
_SalesGroupOrgUnit,
_SalesGroupOrgUnit_2,
_DistributionChannel,
_Division,
@API.element.releaseState: #DEPRECATED
@API.element.successor: '_ServiceOrganizationOrgUnit_2'
_ServiceOrganizationOrgUnit,
_ServiceOrganizationOrgUnit_2,
@API.element.releaseState: #DEPRECATED
@API.element.successor: '_RespSrvcOrganizationOrgUnit_2'
_RespSrvcOrganizationOrgUnit,
_RespSrvcOrganizationOrgUnit_2,
_SalesOrganization,
_SalesOffice,
_SalesGroup
}
where
ServiceObjectType = 'BUS2000172'
/*+[internal] {
"BASEINFO":
{
"FROM":
[
"I_SERVICEDOCUMENTITEMENHCD"
],
"ASSOCIATED":
[
"I_BUSINESSPARTNER",
"I_CONTROLLINGAREA",
"I_COUNTRY",
"I_CUSTMGMTBUSOBJTYPE",
"I_DISTRIBUTIONCHANNEL",
"I_DIVISION",
"I_PROFITCENTER",
"I_REGION",
"I_SALESGROUP",
"I_SALESOFFICE",
"I_SALESORGANIZATION",
"I_SALESORGANIZATIONUNIT",
"I_SERVICEDOCITEMCATEGORY",
"I_SERVICEDOCUMENTENHCD",
"I_SERVICEDOCUMENTSTATUS",
"I_SERVICEDOCUMENTTYPE",
"I_SRVCDOCLIFECYCLESTATUS",
"I_SRVCMGMTORGANIZATIONUNIT",
"I_UNITOFMEASURE"
],
"BASE":
[
"I_SERVICEDOCUMENTITEMENHCD"
],
"ANNO_REF":
[],
"SCALAR_FUNCTION":
[],
"VERSION":0,
"ANNOREF_EVALUATION_ERROR":""
}
}*/