I_SalesDocumentScheduleLine

DDL: I_SALESDOCUMENTSCHEDULELINE SQL: ISDSLSDOCSCHEDLN Type: view BASIC Package: VDM_SD_SLS

Sales Document Schedule Line

I_SalesDocumentScheduleLine is a Basic CDS View (Dimension) that provides data about "Sales Document Schedule Line" in SAP S/4HANA. It reads from 1 data source (vbep) and exposes 70 fields with key fields SalesDocument, SalesDocumentItem, ScheduleLine. It has 13 associations to related views. It is exposed through 2 OData services (ZAGI_CDS_CALENDAR_SRV, ZAGI_CDS_CALENDAR_SRV). Part of development package VDM_SD_SLS.

Data Sources (1)

SourceAliasJoin Type
vbep vbep from

Associations (13)

CardinalityTargetAliasCondition
[1..1] I_SalesDocument _SalesDocument $projection.SalesDocument = _SalesDocument.SalesDocument
[1..1] I_SalesDocumentItem _SalesDocumentItem $projection.SalesDocumentItem = _SalesDocumentItem.SalesDocumentItem and $projection.SalesDocument = _SalesDocumentItem.SalesDocument
[0..1] I_ScheduleLineCategory _ScheduleLineCategory $projection.ScheduleLineCategory = _ScheduleLineCategory.ScheduleLineCategory
[0..1] I_ProdAvailyCheckRqmtType _ProdAvailabilityCheckRqmtType $projection.ProdAvailabilityCheckRqmtType = _ProdAvailabilityCheckRqmtType.ProdAvailabilityCheckRqmtType and $projection.ProdAvailyCheckPlanningType = _ProdAvailabilityCheckRqmtType.ProdAvailyCheckPlanningType
[0..1] I_ScheduleLineConfStatus _ScheduleLineConfStatus $projection.ScheduleLineConfirmationStatus = _ScheduleLineConfStatus.ScheduleLineConfirmationStatus
[0..1] I_MfgOrder _OrderID $projection.OrderID = _OrderID.ManufacturingOrder
[0..1] I_ManufacturingOrder _ManufacturingOrder $projection.OrderID = _ManufacturingOrder.ManufacturingOrder
[0..1] I_UnitOfMeasure _OrderQuantityUnit $projection.OrderQuantityUnit = _OrderQuantityUnit.UnitOfMeasure
[0..1] I_UnitOfMeasure _BaseUnit $projection.BaseUnit = _BaseUnit.UnitOfMeasure
[0..1] I_DeliveryBlockReason _DelivBlockReasonForSchedLine $projection.DelivBlockReasonForSchedLine = _DelivBlockReasonForSchedLine.DeliveryBlockReason
[0..1] I_GoodsMovementType _GoodsMovementType $projection.GoodsMovementType = _GoodsMovementType.GoodsMovementType
[0..1] I_Currency _TransactionCurrency $projection.TransactionCurrency = _TransactionCurrency.Currency
[0..1] I_TradeCmplncLegalCtrlChkSts _TradeCmplncLegalCtrlChkSts $projection.TradeCmplncLegalCtrlChkSts = _TradeCmplncLegalCtrlChkSts.TradeCmplncLegalCtrlChkSts

Annotations (14)

NameValueLevelField
ClientHandling.algorithm #SESSION_VARIABLE view
EndUserText.label Sales Document Schedule Line view
VDM.viewType #BASIC view
VDM.lifecycle.contract.type #PUBLIC_LOCAL_API view
AbapCatalog.sqlViewName ISDSLSDOCSCHEDLN view
AccessControl.authorizationCheck #CHECK view
ObjectModel.representativeKey ScheduleLine view
ObjectModel.usageType.dataClass #TRANSACTIONAL view
ObjectModel.usageType.serviceQuality #B view
ObjectModel.usageType.sizeCategory #XL view
ObjectModel.modelingPattern #ANALYTICAL_DIMENSION view
Metadata.ignorePropagatedAnnotations true view
Analytics.dataCategory #DIMENSION view
Metadata.allowExtensions true view

OData Services (2)

ServiceBindingVersionContractRelease
ZAGI_CDS_CALENDAR_SRV ZAGI_CDS_CALENDAR_BIND V2 C2 NOT_RELEASED
ZAGI_CDS_CALENDAR_SRV ZAGI_CDS_SCHED_V4 V4 C2 NOT_RELEASED

Fields (70)

KeyFieldSource TableSource FieldDescription
KEY SalesDocument vbep vbeln
KEY SalesDocumentItem posnr
KEY ScheduleLine etenr
ScheduleLineCategory
OrderQuantityUnit vrkme
OrderToBaseQuantityDnmntr umvkn
OrderToBaseQuantityNmrtr umvkz
BaseUnit meins
DeliveryDate edatu
DelivDateCategory prgrs
edatuelsetoenforceaNULLvalue
ezeitelsetoenforceaNULLvalue
ScheduleLineOrderQuantity vbep wmeng
CorrectedQtyInOrderQtyUnit vbep cmeng
edatuelsetoenforceaNULLvalue
ezeitelsetoenforceaNULLvalue
ConfdOrderQtyByMatlAvailCheck vbep bmeng
ConfdSchedLineReqdDelivDate vbep req_dlvdate
ProductAvailabilityDate
ProductAvailabilityTime mbuhr
ProductAvailCheckRqmtDate bddat
ProdAvailabilityCheckRqmtType bdart
ProdAvailyCheckPlanningType plart
ScheduleLineConfirmationStatus wepos
RequirementsClass bedar
PlannedOrder plnum
OrderID vbep aufnr
SchedulingAgreementReleaseType abart
OrderSchedulingGroup fsh_os_id
CustEngineeringChgStatus aeskd
PurchaseRequisition
PurchaseRequisitionItem
PurchasingOrderType bsart
PurchasingDocumentCategory bstyp
DeliveryCreationDate crea_dlvdate
TransportationPlanningDate
TransportationPlanningTime tduhr
GoodsIssueDate wadat
LoadingDate lddat
GoodsIssueTime wauhr
LoadingTime lduhr
ItemIsDeliveryRelevant lfrel
DelivBlockReasonForSchedLine lifsp
OpenReqdDelivQtyInOrdQtyUnit ordqty_su
OpenReqdDelivQtyInBaseUnit ordqty_bu
OpenConfdDelivQtyInOrdQtyUnit ocdqty_su
OpenConfdDelivQtyInBaseUnit ocdqty_bu
DeliveredQtyInOrderQtyUnit dlvqty_su
DeliveredQuantityInBaseUnit dlvqty_bu
RequestedRqmtQtyInBaseUnit rrqqty_bu
ConfirmedRqmtQtyInBaseUnit crqqty_bu
MRPRequiredQuantityInBaseUnit vbep lmeng
GoodsMovementType bwart
RouteSchedule aulwe
OpenDeliveryNetAmount odn_amount
TransactionCurrency vbep waerk
TradeCmplncLegalCtrlChkSts vbep lccst
_SalesDocument _SalesDocument
_SalesDocumentItem _SalesDocumentItem
_ScheduleLineCategory _ScheduleLineCategory
_ProdAvailabilityCheckRqmtType _ProdAvailabilityCheckRqmtType
_ScheduleLineConfStatus _ScheduleLineConfStatus
_TransactionCurrency _TransactionCurrency
_OrderID _OrderID
_ManufacturingOrder _ManufacturingOrder
_OrderQuantityUnit _OrderQuantityUnit
_BaseUnit _BaseUnit
_DelivBlockReasonForSchedLine _DelivBlockReasonForSchedLine
_GoodsMovementType _GoodsMovementType
_TradeCmplncLegalCtrlChkSts _TradeCmplncLegalCtrlChkSts
@ClientHandling.algorithm: #SESSION_VARIABLE
@EndUserText.label: 'Sales Document Schedule Line'
@VDM: {
  viewType: #BASIC,
  lifecycle.contract.type: #PUBLIC_LOCAL_API
}
@AbapCatalog.sqlViewName: 'ISDSLSDOCSCHEDLN'
@AccessControl.authorizationCheck:#CHECK
@ObjectModel: {
   representativeKey: 'ScheduleLine',
   usageType: {
     dataClass:      #TRANSACTIONAL,
     serviceQuality: #B,
     sizeCategory:   #XL
   },
   supportedCapabilities: [ #ANALYTICAL_DIMENSION, #CDS_MODELING_ASSOCIATION_TARGET, #SQL_DATA_SOURCE, #CDS_MODELING_DATA_SOURCE ],
   modelingPattern: #ANALYTICAL_DIMENSION
}
@Metadata.ignorePropagatedAnnotations: true
@Analytics:{dataCategory:#DIMENSION}
@Metadata.allowExtensions: true

define view I_SalesDocumentScheduleLine
  as select from vbep
  association [1..1] to I_SalesDocument              as _SalesDocument                 on  $projection.SalesDocument = _SalesDocument.SalesDocument
  association [1..1] to I_SalesDocumentItem          as _SalesDocumentItem             on  $projection.SalesDocumentItem = _SalesDocumentItem.SalesDocumentItem
                                                                                       and $projection.SalesDocument     = _SalesDocumentItem.SalesDocument
  association [0..1] to I_ScheduleLineCategory       as _ScheduleLineCategory          on  $projection.ScheduleLineCategory = _ScheduleLineCategory.ScheduleLineCategory
  association [0..1] to I_ProdAvailyCheckRqmtType    as _ProdAvailabilityCheckRqmtType on  $projection.ProdAvailabilityCheckRqmtType = _ProdAvailabilityCheckRqmtType.ProdAvailabilityCheckRqmtType
                                                                                       and $projection.ProdAvailyCheckPlanningType   = _ProdAvailabilityCheckRqmtType.ProdAvailyCheckPlanningType
  association [0..1] to I_ScheduleLineConfStatus     as _ScheduleLineConfStatus        on  $projection.ScheduleLineConfirmationStatus = _ScheduleLineConfStatus.ScheduleLineConfirmationStatus
  association [0..1] to I_MfgOrder                   as _OrderID                       on  $projection.OrderID = _OrderID.ManufacturingOrder
  association [0..1] to I_ManufacturingOrder         as _ManufacturingOrder            on  $projection.OrderID = _ManufacturingOrder.ManufacturingOrder
  association [0..1] to I_UnitOfMeasure              as _OrderQuantityUnit             on  $projection.OrderQuantityUnit = _OrderQuantityUnit.UnitOfMeasure
  //Todo:association[0..1] to I_PurchaseOrderTypeName

  association [0..1] to I_UnitOfMeasure              as _BaseUnit                      on  $projection.BaseUnit = _BaseUnit.UnitOfMeasure
  association [0..1] to I_DeliveryBlockReason        as _DelivBlockReasonForSchedLine  on  $projection.DelivBlockReasonForSchedLine = _DelivBlockReasonForSchedLine.DeliveryBlockReason
  association [0..1] to I_GoodsMovementType          as _GoodsMovementType             on  $projection.GoodsMovementType = _GoodsMovementType.GoodsMovementType
  association [0..1] to I_Currency                   as _TransactionCurrency           on  $projection.TransactionCurrency = _TransactionCurrency.Currency
  association [0..1] to I_TradeCmplncLegalCtrlChkSts as _TradeCmplncLegalCtrlChkSts    on  $projection.TradeCmplncLegalCtrlChkSts = _TradeCmplncLegalCtrlChkSts.TradeCmplncLegalCtrlChkSts
{
      //Key

      @ObjectModel.foreignKey.association: '_SalesDocument'
  key vbep.vbeln                                                  as SalesDocument,
      @ObjectModel.foreignKey.association: '_SalesDocumentItem'
  key posnr                                                       as SalesDocumentItem,
  key etenr                                                       as ScheduleLine,

      //category

      @ObjectModel.foreignKey.association: '_ScheduleLineCategory'
      cast(ettyp as vdm_sd_schedule_line_cat preserving type )    as ScheduleLineCategory,

      //sales

      @Semantics.unitOfMeasure: true
      @ObjectModel.foreignKey.association: '_OrderQuantityUnit'
      vrkme                                                       as OrderQuantityUnit,
      umvkn                                                       as OrderToBaseQuantityDnmntr,
      umvkz                                                       as OrderToBaseQuantityNmrtr,
      @Semantics.unitOfMeasure: true
      @ObjectModel.foreignKey.association: '_BaseUnit'
      meins                                                       as BaseUnit,
      edatu                                                       as DeliveryDate,
      prgrs                                                       as DelivDateCategory,

      //requested

      case when
          vbep.wmeng != 0
      then
          'X'
      else
          ''
      end                                                         as IsRequestedDelivSchedLine,
      case when
          vbep.wmeng != 0
      then
          vbep.edatu
      --else
      --    ''    -- to enforce a NULL-value, that is needed by ODATA
      end                                                         as RequestedDeliveryDate,
      case when
          vbep.wmeng != 0
      then
          vbep.ezeit
      --else
      --    ''    -- to enforce a NULL-value, that is needed by ODATA
      end                                                         as RequestedDeliveryTime,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
      vbep.wmeng                                                  as ScheduleLineOrderQuantity,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
      vbep.cmeng                                                  as CorrectedQtyInOrderQtyUnit,

      //confrimed

      case when
          vbep.bmeng != 0
      then
          'X'
      else
          ''
      end                                                         as IsConfirmedDelivSchedLine,
      case when
          vbep.bmeng != 0
      then
          vbep.edatu
      --else
      --    ''  -- to enforce a NULL-value, that is needed by ODATA
      end                                                         as ConfirmedDeliveryDate,
      case when
          vbep.bmeng != 0
      then
          vbep.ezeit
      --else
      --    ''  -- to enforce a NULL-value, that is needed by ODATA
       end                                                        as ConfirmedDeliveryTime,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
      vbep.bmeng                                                  as ConfdOrderQtyByMatlAvailCheck,
      vbep.req_dlvdate                                            as ConfdSchedLineReqdDelivDate,
      //availibity

      cast(mbdat as vdm_sd_prod_availy_date preserving type )     as ProductAvailabilityDate,

      //Availibility

      mbuhr                                                       as ProductAvailabilityTime,
      bddat                                                       as ProductAvailCheckRqmtDate,
      bdart                                                       as ProdAvailabilityCheckRqmtType,
      plart                                                       as ProdAvailyCheckPlanningType,
      @ObjectModel.foreignKey.association: '_ScheduleLineConfStatus'
      wepos                                                       as ScheduleLineConfirmationStatus,
      bedar                                                       as RequirementsClass,

      //InternalProcurement

      plnum                                                       as PlannedOrder,
      @ObjectModel.foreignKey.association: '_OrderID'
      vbep.aufnr                                                  as OrderID,

      //SchedulingAgreement

      abart                                                       as SchedulingAgreementReleaseType,
      abruf                                                       as ScheduleLineByForecastDelivery,
      fsh_os_id                                                   as OrderSchedulingGroup,
      aeskd                                                       as CustEngineeringChgStatus,

      //Purchasing

      cast(banfn as vdm_purchaserequisition preserving type )     as PurchaseRequisition,
      cast(bnfpo as mm_a_purchaserequisitionitem preserving type) as PurchaseRequisitionItem,
      bsart                                                       as PurchasingOrderType,
      bstyp                                                       as PurchasingDocumentCategory,

      //shipping

      crea_dlvdate                                                as DeliveryCreationDate,
      cast(tddat as tddat_plan preserving type )                  as TransportationPlanningDate,
      tduhr                                                       as TransportationPlanningTime,
      wadat                                                       as GoodsIssueDate,
      lddat                                                       as LoadingDate,
      wauhr                                                       as GoodsIssueTime,
      lduhr                                                       as LoadingTime,
      lfrel                                                       as ItemIsDeliveryRelevant,
      @ObjectModel.foreignKey.association: '_DelivBlockReasonForSchedLine'
      lifsp                                                       as DelivBlockReasonForSchedLine,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
      ordqty_su                                                   as OpenReqdDelivQtyInOrdQtyUnit,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      ordqty_bu                                                   as OpenReqdDelivQtyInBaseUnit,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
      ocdqty_su                                                   as OpenConfdDelivQtyInOrdQtyUnit,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      ocdqty_bu                                                   as OpenConfdDelivQtyInBaseUnit,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'OrderQuantityUnit'
      dlvqty_su                                                   as DeliveredQtyInOrderQtyUnit,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      dlvqty_bu                                                   as DeliveredQuantityInBaseUnit,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      rrqqty_bu                                                   as RequestedRqmtQtyInBaseUnit,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      crqqty_bu                                                   as ConfirmedRqmtQtyInBaseUnit,
      @DefaultAggregation: #SUM
      @Semantics.quantity.unitOfMeasure: 'BaseUnit'
      vbep.lmeng                                                  as MRPRequiredQuantityInBaseUnit,

      @ObjectModel.foreignKey.association: '_GoodsMovementType'
      bwart                                                       as GoodsMovementType,
      aulwe                                                       as RouteSchedule,

      @DefaultAggregation: #SUM
      @Semantics.amount.currencyCode: 'TransactionCurrency'
      odn_amount                                                  as OpenDeliveryNetAmount,
      @Semantics.currencyCode: true
      @ObjectModel.foreignKey.association: '_TransactionCurrency'
      vbep.waerk                                                  as TransactionCurrency,
      @ObjectModel.foreignKey.association: '_TradeCmplncLegalCtrlChkSts'
      vbep.lccst                                                  as TradeCmplncLegalCtrlChkSts,

      @ObjectModel.association.type: [#TO_COMPOSITION_ROOT]
      _SalesDocument,
      @ObjectModel.association.type: [#TO_COMPOSITION_PARENT]
      _SalesDocumentItem,
      _ScheduleLineCategory,
      _ProdAvailabilityCheckRqmtType,
      _ScheduleLineConfStatus,
      _TransactionCurrency,      
      @VDM.lifecycle.status: #DEPRECATED
      @VDM.lifecycle.successor: '_ManufacturingOrder'
      _OrderID,
      _ManufacturingOrder,
      _OrderQuantityUnit,
      _BaseUnit,
      _DelivBlockReasonForSchedLine,
      _GoodsMovementType,
      _TradeCmplncLegalCtrlChkSts
};