@AbapCatalog.sqlViewName: 'CNTWKACTGROVW'
@AbapCatalog.compiler.compareFilter: true
@AbapCatalog.preserveKey: true
@EndUserText.label: 'Network Activity Graph Overview'
@ClientHandling.algorithm: #SESSION_VARIABLE
@AccessControl.authorizationCheck: #CHECK
@VDM.viewType: #CONSUMPTION
@ObjectModel.usageType.serviceQuality: #D
@ObjectModel.usageType.sizeCategory: #XL
@ObjectModel.usageType.dataClass: #MIXED
@ObjectModel.createEnabled: true
@ObjectModel.updateEnabled: true
@AccessControl.personalData.blocking: #BLOCKED_DATA_EXCLUDED
@Metadata: { ignorePropagatedAnnotations: true,
allowExtensions:true }
define view C_NtwkActivityGraphOverview
as select from I_NetworkActivityByInternalKey
association [1..1] to I_NetworkActivityDatesQuantity as _NetworkActivityDatesQuantity on $projection.ProjectNetworkInternalID = _NetworkActivityDatesQuantity.ProjectNetworkInternalID
and $projection.NetworkActivityInternalID = _NetworkActivityDatesQuantity.NetworkActivityInternalID
association [1..1] to I_OperationControlProfileText as _OperationControlProfileText on $projection.NetworkActivityControlProfile = _OperationControlProfileText.OperationControlProfile
and _OperationControlProfileText.Language = $session.system_language
association [0..1] to I_Plant as _Plant on $projection.Plant = _Plant.Plant
association [1..1] to I_Prioritycode as _PriorityCode on $projection.OperationImportance = _PriorityCode.PriorityCode
association [0..1] to I_WorkCenter as _WorkCenter on $projection.WorkCenterInternalID = _WorkCenter.WorkCenterInternalID
and _WorkCenter.WorkCenterTypeCode = 'A'
association [1..1] to I_StsObjConcatActiveStsILL as _ConcatenatedStsObjActiveSts on _ConcatenatedStsObjActiveSts.StatusObject = $projection.NetworkActivityObject
association [0..1] to I_StatusObjectStatusBasic as _ActivityConfirmed on $projection.NetworkActivityObject = _ActivityConfirmed.StatusObject
and _ActivityConfirmed.StatusCode = 'I0009'
association [0..1] to I_StatusObjectStatusBasic as _ActivityPartiallyConfirmed on $projection.NetworkActivityObject = _ActivityPartiallyConfirmed.StatusObject
and _ActivityPartiallyConfirmed.StatusCode = 'I0010'
association [0..1] to I_Supplier as _Supplier on $projection.Supplier = _Supplier.Supplier
association [1..1] to I_NetworkActivityUserFields as _NetworkActivityUserFields on _NetworkActivityUserFields.ProjectNetworkInternalID = $projection.ProjectNetworkInternalID
and _NetworkActivityUserFields.NetworkActivityInternalID = $projection.NetworkActivityInternalID
association [1..1] to I_WBSElementByInternalKey as _WBSElement on $projection.WBSElementInternalID = _WBSElement.WBSElementInternalID
association [0..1] to I_NetworkActivityByInternalKey as _Superior on $projection.SuperiorNtwkActivityInternalID = _Superior.NetworkActivityInternalID
and $projection.ProjectNetworkInternalID = _Superior.ProjectNetworkInternalID
association [1..1] to I_NetworkActivityCtrlProfile as _NetworkActivityCtrlProfile on _NetworkActivityCtrlProfile.OperationControlProfile = $projection.NetworkActivityControlProfile
association [1..*] to C_NetworkActivityUserStatusVH as _NetworkActivityUserStatusVH on $projection.MaintUserStatusProfileCode = _NetworkActivityUserStatusVH.StatusProfile
association [0..*] to C_ProjectNetworkRelationship as _Successor on _Successor.PredecessorProjNtwkIntID = $projection.ProjectNetworkInternalID
and _Successor.PredecessorNtwkActyIntID = $projection.NetworkActivityInternalID
association [0..*] to C_ProjectNetworkRelationship as _Predecessor on _Predecessor.SuccessorProjNtwkIntID = $projection.ProjectNetworkInternalID
and _Predecessor.SuccessorNtwkActyIntID = $projection.NetworkActivityInternalID
association [1..1] to C_NtwkActivityAssignedObjects as _NtwkActivityAssignedObjects on $projection.ProjectNetworkInternalID = _NtwkActivityAssignedObjects.ProjectNetworkInternalID
and $projection.NetworkActivityInternalID = _NtwkActivityAssignedObjects.NetworkActivityInternalID
//New associations
//association [1..1] to I_CostElementOnChartOfAccounts as _CostElementOnChartOfAccounts on $projection.CostElement = _CostElementOnChartOfAccounts.CostElement
// and $projection.chartofaccounts = _CostElementOnChartOfAccounts.ChartOfAccounts
//association [1..1] to I_CompanyCode as _CompanyCode on $projection.CompanyCode = _CompanyCode.CompanyCode
{
@ObjectModel.filter.enabled: false
key ProjectNetworkInternalID,
@ObjectModel.filter.enabled: false
key NetworkActivityInternalID,
@ObjectModel.filter.enabled: false
@ObjectModel.text.element: ['ProjectNetworkDescription']
@EndUserText.label: 'Network'
_ProjectNetworkBasicData.ProjectNetwork,
@ObjectModel.filter.enabled: false
@ObjectModel.text.element: 'NetworkActivityDescription'
NetworkActivity,
// cast ( ( case
// when SuperiorNtwkActivityInternalID is not initial
// then _Superior.NetworkActivity
// else I_NetworkActivityByInternalKey.NetworkActivity
// end ) as ps_vornr ) as NetworkActivity,
@ObjectModel.filter.enabled: false
cast ( ( case
when SuperiorNtwkActivityInternalID is initial
then ''
else _Superior.NetworkActivity
end ) as ps_vornr_el ) as SuperiorNtwkActivityExternalID,
@ObjectModel.filter.enabled: false
cast( '' as vsnmr_v ) as Version,
@ObjectModel.filter.enabled: false
@Semantics.text: true
case
when _ActivityShortText.LanguageBasedShortText is not initial
then _ActivityShortText .LanguageBasedShortText
else NetworkActivityDescription
end as NetworkActivityDescription,
//NetworkActivityDescription,
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.ProjectInternalID,
@ObjectModel.filter.enabled: false
WBSElementInternalID,
@ObjectModel.filter.enabled: false
SuperiorNtwkActivityInternalID,
@ObjectModel.filter.enabled: false
cast ( ( case
when SuperiorNtwkActivityInternalID is initial
then ''
else NetworkActivity
end ) as ps_vornr_el ) as NetworkActivityElement,
@ObjectModel.filter.enabled: false
Supplier,
@ObjectModel.filter.enabled: false
NetworkActivityObject,
@ObjectModel.filter.enabled: false
CostCtrActivityType,
@ObjectModel.filter.enabled: false
@ObjectModel.text.element: ['OperationControlProfileName']
@EndUserText.label: 'Control Key'
NetworkActivityControlProfile,
@ObjectModel.filter.enabled: false
OperationImportance,
@ObjectModel.filter.enabled: false
WorkCenterInternalID,
@ObjectModel.filter.enabled: false
@Semantics.currencyCode: true
NetworkActivityCurrency,
@ObjectModel.filter.enabled: false
@Semantics.amount.currencyCode: 'NetworkActivityCurrency'
ExternalProcessingPrice, // Price
@ObjectModel.filter.enabled: false
//@ObjectModel.text.element: ['CostElementName']
CostElement, //Cost element
@ObjectModel.filter.enabled: false
IsMarkedForDeletion, //Deletion Indicator
@ObjectModel.filter.enabled: false
@Semantics.quantity.unitOfMeasure: 'StandardDurationUnit'
_NetworkActivityDatesQuantity.StandardDuration,
@ObjectModel.filter.enabled: false
@Semantics.unitOfMeasure: true
_NetworkActivityDatesQuantity.StandardDurationUnit,
@Semantics.quantity.unitOfMeasure: 'StandardDurationUnit'
@ObjectModel.filter.enabled: false
_NetworkActivityDatesQuantity.ForecastedStandardDuration,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Basic Earliest Start Date'
_NetworkActivityDatesQuantity.SchedldBasicEarliestStartDate,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Basic Earliest Finish Date'
_NetworkActivityDatesQuantity.SchedldBasicEarliestEndDate,
@ObjectModel.filter.enabled: false
@Semantics.unitOfMeasure: true
_NetworkActivityDatesQuantity.NetworkActivityQuantityUnit,
@ObjectModel.filter.enabled: false
@Semantics.unitOfMeasure: true
_NetworkActivityDatesQuantity.NtwkActivityWorkQuantityUnit,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Basic Latest Start Date'
_NetworkActivityDatesQuantity.SchedldBasicLatestStartDate,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Basic Latest Finish Date'
_NetworkActivityDatesQuantity.ScheduledBasicLatestEndDate,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Forecast Earliest Start Date'
_NetworkActivityDatesQuantity.SchedldFcstdEarliestStartDate,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Forecast Earliest Finish Date'
_NetworkActivityDatesQuantity.SchedldFcstdEarliestEndDate,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Forecast Latest Start Date'
_NetworkActivityDatesQuantity.LatestSchedldFcstdStartDate,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Forecast Latest Finish Date'
_NetworkActivityDatesQuantity.LatestSchedldFcstdEndDate,
@Semantics.calendar.dayOfMonth: true
_NetworkActivityDatesQuantity.ActualStartDate, //Actual start date
@Semantics.calendar.dayOfMonth: true
_NetworkActivityDatesQuantity.ActualEndDate, // Actual finish date
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Basic Free Float'
_NetworkActivityDatesQuantity.BasicDatesFreeFloat, //Free float
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Forecast Free Float'
_NetworkActivityDatesQuantity.ForecastedDatesFreeFloat, //Free float
@ObjectModel.filter.enabled: false
@Semantics.quantity.unitOfMeasure: 'NtwkActivityWorkQuantityUnit'
_NetworkActivityDatesQuantity.PlannedWorkQuantity, // Work
@ObjectModel.filter.enabled: false
@Semantics.quantity.unitOfMeasure: 'NtwkActivityWorkQuantityUnit'
_NetworkActivityDatesQuantity.ActualWorkQuantity, // Actual Work
@ObjectModel.filter.enabled: false
@Semantics.quantity.unitOfMeasure: 'NtwkActivityWorkQuantityUnit'
_NetworkActivityDatesQuantity.ForecastedWorkQty, // Forecast work
@ObjectModel.filter.enabled: false
@Semantics.quantity.unitOfMeasure: 'NtwkActivityWorkQuantityUnit'
_NetworkActivityDatesQuantity.RemainingWorkQuantity, //final confirmation awaited from Mario
@ObjectModel.filter.enabled: false
@Semantics.quantity.unitOfMeasure: 'NetworkActivityQuantityUnit'
_NetworkActivityDatesQuantity.ActivityQuantity, //Activity quantity
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Basic Total Float'
_NetworkActivityDatesQuantity.TotalFloatForBasicDates,
@EndUserText.label: 'Forecast Total Float'
@Semantics.calendar.dayOfMonth: true
_NetworkActivityDatesQuantity.TotalFloatForForecastedDates,
//new - start - 06.09.2021
@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'StartDateOffsetDurationUnit'
_NetworkActivityDatesQuantity.StartDateOffsetDuration,
@Semantics.unitOfMeasure: true
_NetworkActivityDatesQuantity.StartDateOffsetDurationUnit,
@DefaultAggregation: #NONE
@Semantics.quantity.unitOfMeasure: 'EndDateOffsetDurationUnit'
_NetworkActivityDatesQuantity.EndDateOffsetDuration,
@Semantics.unitOfMeasure: true
_NetworkActivityDatesQuantity.EndDateOffsetDurationUnit,
//new - end - 06.09.2021
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.ProdAvailyCheckPlanningType, //[1:inner]
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.ControllingArea, //[1:inner]
@Consumption.valueHelpDefinition: [{
entity: { name: 'I_PlantStdVH',
element: 'Plant'},
label: 'Plant'}
]
Plant,
@ObjectModel.filter.enabled: false
@Semantics.text: true
@EndUserText.label: 'Network Description'
case
when _ProjectNetworkBasicData._NetworkShortText.LanguageBasedShortText is not initial
then _ProjectNetworkBasicData._NetworkShortText.LanguageBasedShortText
else _ProjectNetworkBasicData.ProjectNetworkDescription
end as ProjectNetworkDescription,
//_ProjectNetworkBasicData.ProjectNetworkDescription,
@ObjectModel.filter.enabled: false
@ObjectModel.text.element: ['OrderTypeName']
@EndUserText.label: 'Network Type'
_ProjectNetworkBasicData.ProjectNetworkType, //[1:inner]
@Consumption.valueHelpDefinition: [{
entity: { name: 'I_WorkCenterVH',
element: 'WorkCenter'},
additionalBinding: [{element: 'WorkCenterInternalID', localElement: 'WorkCenterInternalID' }],
label: 'Work Center'}
]
case
when _WorkCenter.WorkCenter is null then ''
else _WorkCenter.WorkCenter
end as WorkCenter,
@ObjectModel.filter.enabled: false
@ObjectModel.text.element: ['WBSDescription']
cast (case
when _WBSElement.WBSElementExternalID is null
then ''
else _WBSElement.WBSElementExternalID
end as ps_posid_edit) as WBSElementExternalID,
@ObjectModel.filter.enabled: false
@Semantics.text: true
case
when _WBSElement._WBSElementShortText.LanguageBasedShortText is not initial
then _WBSElement._WBSElementShortText.LanguageBasedShortText
else _WBSElement.WBSDescription
end as WBSDescription,
//_WBSElement.WBSDescription,
//User fields
@Consumption.valueHelpDefinition: [{
entity: { name: 'I_FreeDfndTblFieldSemanticVH',
element: 'FreeDefinedTableFieldSemantic'}
}
]
@ObjectModel.text.element: ['FreeDfndTableFieldSemanticName']
_NetworkActivityUserFields.FreeDefinedTableFieldSemantic as FreeDefinedTableFieldSemantic,
@ObjectModel.filter.enabled: false
@Semantics.text: true
_NetworkActivityUserFields._UserFieldLabel.FreeDfndTableFieldSemanticName as FreeDfndTableFieldSemanticName,
@EndUserText.label: 'Generic Field 1'
_NetworkActivityUserFields.FreeDefinedAttribute01,
@EndUserText.label: 'Generic Field 2'
_NetworkActivityUserFields.FreeDefinedAttribute02,
@EndUserText.label: 'Generic Field 3'
_NetworkActivityUserFields.FreeDefinedAttribute03,
@EndUserText.label: 'Generic Field 4'
_NetworkActivityUserFields.FreeDefinedAttribute04,
@EndUserText.label: 'Indicator 1'
_NetworkActivityUserFields.FreeDefinedIndicator1,
@EndUserText.label: 'Indicator 2'
_NetworkActivityUserFields.FreeDefinedIndicator2,
@ObjectModel.filter.enabled: false
@Semantics.unitOfMeasure: true
_NetworkActivityUserFields.FreeDefinedQuantity1Unit,
@ObjectModel.filter.enabled: false
@Semantics.unitOfMeasure: true
_NetworkActivityUserFields.FreeDefinedQuantity2Unit,
@Semantics.quantity.unitOfMeasure: 'FreeDefinedQuantity1Unit'
@EndUserText.label: 'Numeric Field 1'
_NetworkActivityUserFields.FreeDefinedQuantity1,
@Semantics.quantity.unitOfMeasure: 'FreeDefinedQuantity2Unit'
@EndUserText.label: 'Numeric Field 2'
_NetworkActivityUserFields.FreeDefinedQuantity2,
@ObjectModel.filter.enabled: false
@Semantics.currencyCode: true
_NetworkActivityUserFields.FreeDefinedAmount1Currency,
@ObjectModel.filter.enabled: false
@Semantics.currencyCode: true
_NetworkActivityUserFields.FreeDefinedAmount2Currency,
@Semantics.amount.currencyCode: 'FreeDefinedAmount1Currency'
@EndUserText.label: 'Numeric Field 3'
cast ( _NetworkActivityUserFields.FreeDefinedAmount1 as abap.curr( 13, 2 ) ) as FreeDefinedAmount1,
@Semantics.amount.currencyCode: 'FreeDefinedAmount2Currency'
@EndUserText.label: 'Numeric Field 4'
cast ( _NetworkActivityUserFields.FreeDefinedAmount2 as abap.curr( 13, 2 ) ) as FreeDefinedAmount2,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Date Field 1'
_NetworkActivityUserFields.FreeDefinedDate1,
@Semantics.calendar.dayOfMonth: true
@EndUserText.label: 'Date Field 2'
_NetworkActivityUserFields.FreeDefinedDate2,
//Label
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedAttribute01Label as FreeDefinedAttribute01Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedAttribute02Label as FreeDefinedAttribute02Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedAttribute03Label as FreeDefinedAttribute03Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedAttribute04Label as FreeDefinedAttribute04Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedIndicator1Label as FreeDefinedIndicator1Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedIndicator2Label as FreeDefinedIndicator2Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedQuantity1Label as FreeDefinedQuantity1Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedQuantity2Label as FreeDefinedQuantity2Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedAmount1Label as FreeDefinedAmount1Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedAmount2Label as FreeDefinedAmount2Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedDate1Label as FreeDefinedDate1Label,
@ObjectModel.filter.enabled: false
_NetworkActivityUserFields._UserFieldLabel.FreeDefinedDate2Label as FreeDefinedDate2Label,
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData._OrderType.StatusProfile as MaintUserStatusProfileCode,
//Descriptions
@ObjectModel.filter.enabled: false
@EndUserText.label: 'Activity Type Name'
cast ( _ActivityTypeText[1:Language = $session.system_language ].CostCtrActivityTypeName as ps_s4_lstar_text ) as CostCtrActivityTypeName,
@ObjectModel.filter.enabled: false
@Semantics.text: true
@EndUserText.label: 'Control Description'
cast ( _OperationControlProfileText.OperationControlProfileName as ps_s4_pph_steutxt ) as OperationControlProfileName,
@ObjectModel.filter.enabled: false
_Plant.PlantName as PlantName, // Plant Name
@ObjectModel.filter.enabled: false
@EndUserText.label: 'Priority'
cast ( _PriorityCode._Text[1:Language = $session.system_language].PriorityCodeName as ps_s4_priotext ) as PriorityCodeName,
@ObjectModel.filter.enabled: false
cast ( _WorkCenter._Text[1:Language = $session.system_language].WorkCenterText as ps_s4_workcentertext ) as WorkCenterText,
@Semantics.text: true
@ObjectModel.filter.enabled: false
cast ( _ProjectNetworkBasicData._OrderType._Text[1: Language = $session.system_language ].OrderTypeName as ps_s4_auarttext) as OrderTypeName,
//Type of activity fields
@ObjectModel.filter.enabled: false
@EndUserText.label: 'Is Cost Activity'
_NetworkActivityCtrlProfile.IsCostActivity as IsCostActivity,
@EndUserText.label: 'Is Service Activity'
@ObjectModel.filter.enabled: false
_NetworkActivityCtrlProfile.IsServiceActivity as IsServiceActivity,
@EndUserText.label: 'Is Internal Activity'
@ObjectModel.filter.enabled: false
cast ( ( case when _NetworkActivityCtrlProfile.OperationExternalProcessing = '' and _NetworkActivityCtrlProfile.IsCostActivity = ''
and _NetworkActivityCtrlProfile.IsServiceActivity = '' and SuperiorNtwkActivityInternalID = '00000000'
then
'X'
else ' '
end ) as boole_d ) as IsInternalActivity,
@EndUserText.label: 'Is External Activity'
@ObjectModel.filter.enabled: false
cast ( ( case when _NetworkActivityCtrlProfile.OperationExternalProcessing = '+' then
'X'
else
''
end ) as boole_d ) as IsExternalActivity,
@EndUserText.label: 'Days Due to Start'
case
when ( _ActivityConfirmed.StatusIsInactive = 'X' or _ActivityConfirmed.StatusIsInactive is null )
and ( _ActivityPartiallyConfirmed.StatusIsInactive = 'X' or _ActivityPartiallyConfirmed.StatusIsInactive is null )
and _NetworkActivityDatesQuantity.SchedldBasicLatestStartDate > $session.system_date
then dats_days_between(cast($session.system_date as sydatum), _NetworkActivityDatesQuantity.SchedldBasicLatestStartDate)
else 0
end as DueToStartDays,
@EndUserText.label: 'Days Due to Finish'
case
when ( _ActivityConfirmed.StatusIsInactive = 'X' or _ActivityConfirmed.StatusIsInactive is null )
and _NetworkActivityDatesQuantity.ScheduledBasicLatestEndDate > $session.system_date
then dats_days_between(cast($session.system_date as sydatum), _NetworkActivityDatesQuantity.ScheduledBasicLatestEndDate)
else 0
end as DueToEndDays,
@EndUserText.label: 'Days Overdue to Start'
case
when ( _ActivityConfirmed.StatusIsInactive = 'X' or _ActivityConfirmed.StatusIsInactive is null )
and ( _ActivityPartiallyConfirmed.StatusIsInactive = 'X' or _ActivityPartiallyConfirmed.StatusIsInactive is null )
and _NetworkActivityDatesQuantity.SchedldBasicLatestStartDate < $session.system_date
then dats_days_between(_NetworkActivityDatesQuantity.SchedldBasicLatestStartDate, cast($session.system_date as sydatum) )
else 0
end as OverdueToStartDays,
@EndUserText.label: 'Days Overdue to Finish'
case
when ( _ActivityConfirmed.StatusIsInactive = 'X' or _ActivityConfirmed.StatusIsInactive is null )
and _NetworkActivityDatesQuantity.ScheduledBasicLatestEndDate < $session.system_date
then dats_days_between( _NetworkActivityDatesQuantity.ScheduledBasicLatestEndDate, cast($session.system_date as sydatum) )
else 0
end as OverdueToEndDays,
//Status
@Consumption.valueHelpDefinition: [{
entity: { name: 'C_NtwkActivitySystemStatusVH',
element: 'SystemStatusShortName'}
}
]
@EndUserText.label: 'System Status'
cast( '' as vdm_j_systemstatusname ) as SystemStatusName,
@ObjectModel.filter.enabled: false
cast ( ( case
when _ConcatenatedStsObjActiveSts.ConcatenatedActiveSystStsName is null
then ''
else _ConcatenatedStsObjActiveSts.ConcatenatedActiveSystStsName
end ) as ps_s4_sysstat ) as ConcatenatedActiveSystStsName,
@Consumption.valueHelpDefinition: [{
entity: { name: 'C_NetworkActivityUserStatusVH',
element: 'UserStatusShortName'},
additionalBinding: [{element: 'StatusProfile', localElement: 'MaintUserStatusProfileCode' }]
}
]
@EndUserText.label: 'User Status'
cast( '' as vdm_j_user_status_short_t ) as UserStatusShortName,
@ObjectModel.filter.enabled: false
cast ( ( case
when _ConcatenatedStsObjActiveSts.ConcatenatedActiveUserStsName is null
then ''
else _ConcatenatedStsObjActiveSts.ConcatenatedActiveUserStsName
end ) as ps_s4_usrsts ) as ConcatenatedActiveUserStsName,
@EndUserText.label: 'Fully Confirmed'
@ObjectModel.filter.enabled: false
cast( ( case when _ActivityConfirmed.StatusIsInactive = ' '
then 'X'
else ' '
end ) as boole_d ) as ObjectIsConfirmed,
@EndUserText.label: 'Partially Confirmed'
@ObjectModel.filter.enabled: false
cast( ( case when _ActivityPartiallyConfirmed.StatusIsInactive = ' '
then 'X'
else ' '
end ) as boole_d ) as ObjectIsPartiallyConfirmed,
@EndUserText.label: 'Not Confirmed'
@ObjectModel.filter.enabled: false
cast( ( case when ( _ActivityConfirmed.StatusIsInactive = ' '
or _ActivityPartiallyConfirmed.StatusIsInactive = ' ' )
then ' '
else 'X'
end ) as boole_d ) as ObjectIsCreated,
@EndUserText.label: 'Predecessor'
cast( 'X' as boole_d ) as NetworkActivityHasPredecessor,
@EndUserText.label: 'Successor'
cast( 'X' as boole_d ) as NetworkActivityHasSuccessor,
@Consumption.valueHelpDefinition: [{
entity: { name: 'I_ProjectNtwkActivityTypeVH',
element: 'DomainValue'}
}]
@EndUserText.label: 'Activity Type'
cast( '' as char3 ) as NetworkActivityType,
@Consumption.valueHelpDefinition: [{
entity: { name: 'I_NtwkActConfirmationStatusVH',
element: 'DomainValue'}
}]
@EndUserText.label: 'Confirmation Status'
cast( '' as char1 ) as NtwkActivityConfirmationStatus,
@EndUserText.label: 'Start Constraint Type'
@ObjectModel.filter.enabled: false
@ObjectModel.text.element: 'ActyBscStartDateConstraintText'
_NetworkActivityDatesQuantity.ActyBscStartDateConstraintType,
@EndUserText.label: 'Start Constraint Type Text'
@Semantics.text: true
_NetworkActivityDatesQuantity._BscStartConstraintTypeText[1:Language = $session.system_language].StartConstraintTypeText as ActyBscStartDateConstraintText,
@EndUserText.label: 'Start Constraint Date'
@Semantics.calendar.dayOfMonth: true
@ObjectModel.filter.enabled: false
_NetworkActivityDatesQuantity.ConstraintDateForBscStartDate,
@EndUserText.label: 'Finish Constraint Type'
@ObjectModel.filter.enabled: false
@ObjectModel.text.element: 'ActyBscEndDateConstraintText'
_NetworkActivityDatesQuantity.ActyBscEndDateConstraintType,
@EndUserText.label: 'Finish Constraint Type Text'
@Semantics.text: true
_NetworkActivityDatesQuantity._BscFinishConstraintTypeText[1:Language = $session.system_language].FinishConstraintTypeText as ActyBscEndDateConstraintText,
@EndUserText.label: 'Finish Constraint Date'
@Semantics.calendar.dayOfMonth: true
@ObjectModel.filter.enabled: false
_NetworkActivityDatesQuantity.ConstraintDateForBscEndDate,
@EndUserText.label: 'Network Start Date'
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.PlannedStartDate,
@EndUserText.label: 'Network Finish Date'
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.PlannedEndDate,
@EndUserText.label: 'Network Forecast Start Date'
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.ForecastedStartDate as FcstStartDate,
@EndUserText.label: 'Network Forecast Finish Date'
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.ForecastedEndDate as FcstEndDate,
@EndUserText.label: 'Network Scheduled Start Date'
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.ScheduledBasicStartDate,
@EndUserText.label: 'Network Scheduled Finish Date'
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.ScheduledBasicEndDate,
@EndUserText.label: 'Network Forecast Scheduled Start Date'
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.ScheduledForecastedStartDate,
@EndUserText.label: 'Network Forecast Scheduled Finish Date'
@ObjectModel.filter.enabled: false
_ProjectNetworkBasicData.ScheduledForecastedEndDate,
@EndUserText.label: 'Forecast Finish Date From Confirmation'
@ObjectModel.filter.enabled: false
_NetworkActivityDatesQuantity.ActyConfFcstdEndDate,
@EndUserText.label: 'Forecast Start Constraint Type'
@ObjectModel.filter.enabled: false
@ObjectModel.text.element: 'ActyFcstStartDteConstraintText'
_NetworkActivityDatesQuantity.ActyFcstStartDteConstraintType,
@EndUserText.label: 'Forecast Start Constraint Type Text'
@Semantics.text: true
_NetworkActivityDatesQuantity._FcstStartConstraintTypeText[1:Language = $session.system_language].StartConstraintTypeText as ActyFcstStartDteConstraintText,
@EndUserText.label: 'Forecast Start Constraint Date'
@Semantics.calendar.dayOfMonth: true
@ObjectModel.filter.enabled: false
_NetworkActivityDatesQuantity.ForecastedStartDate,
@EndUserText.label: 'Forecast Finish Constraint Type'
@ObjectModel.filter.enabled: false
@ObjectModel.text.element: 'ActyFcstEndDateConstraintText'
_NetworkActivityDatesQuantity.ActyFcstEndDateConstraintType,
@EndUserText.label: 'Forecast Finish Constraint Type Text'
@Semantics.text: true
_NetworkActivityDatesQuantity._FcstFinishConstraintTypeText[1:Language = $session.system_language].FinishConstraintTypeText as ActyFcstEndDateConstraintText,
@EndUserText.label: 'Forecast Finish Constraint Date'
@Semantics.calendar.dayOfMonth: true
@ObjectModel.filter.enabled: false
_NetworkActivityDatesQuantity.ForecastedEndDate,
//New fields
//ChartOfAccounts,
CompanyCode,
//@Semantics.text: true
//cast ( _CostElementOnChartOfAccounts[1:ChartOfAccounts = I_NetworkActivityByInternalKey.ChartOfAccounts]._Text[1:Language = $session.system_language].CostElementName as ps_s4_mcds2 ) as CostElementName,
/* Associations */
_ProjectNetworkBasicData,
_NetworkActivityDatesQuantity,
_NetworkActivityUserFields,
_OperationControlProfileText,
_Plant,
_PriorityCode,
_WorkCenter,
_ConcatenatedStsObjActiveSts,
_Supplier,
_Superior,
//Value Helps
_NetworkActivityUserStatusVH,
_Predecessor,
_Successor,
@ObjectModel.sort.enabled: false
@ObjectModel.filter.enabled: false
_NtwkActivityAssignedObjects //,
//New associations
//_CompanyCode
}
where
NetworkActivityObject like 'NV%'
or NetworkActivityObject like 'V4%'