Quintiq file version 2.0
|
#parent: #root
|
Method RefreshUIIsLastAttribute (
|
shadow[KpiSnapshotSetData] queryResult,
|
KpiLabel series,
|
structured[KpiMetaData] metadatas,
|
Boolean isLastSnapshotChecked
|
) id:Method_GlobalStateKpiTracker_RefreshUIIsLastAttribute
|
{
|
#keys: '[146874.0.1589192524]'
|
Body:
|
[*
|
// Updates the UI_IsLast attribute of the KpiValues to match the selected series / kpi.
|
// Call this method after updating the 'UI_LabelValue' attribute.
|
|
// First clean previously set flags.
|
traverse( queryResult, SnapshotData.Value, v, v.UI_IsLast() )
|
{
|
v.UI_IsLast( false );
|
}
|
|
// Now, if the checkbox is checked and a Series has been selected,
|
// determine which KpiValue objects represent the LAST snapshot of their
|
// KPI & LabelValue of the selected Series (= Label)
|
if( isLastSnapshotChecked and not isnull( series ) and not isnull( queryResult ) )
|
{
|
traverse( series, Value, serieValue )
|
{
|
traverse( metadatas, Elements, kpi )
|
{
|
lastValue := maxselect( queryResult, SnapshotData.Value, v,
|
v.UI_LabelValue() = serieValue.Value() and
|
v.Name() = kpi.Name(),
|
v.UI_DateTime() );
|
if( not isnull( lastValue ) )
|
{
|
lastValue.UI_IsLast( true );
|
}
|
|
|
}
|
}
|
}
|
*]
|
}
|