Quintiq file version 2.0
|
#parent: #root
|
Method AddKpiNameValuePairsFromObject (KpiSnapshotData snapshotData, Object kpiHoldingObject)
|
{
|
TextBody:
|
[*
|
tree := NamedValueTreeIO::Export( kpiHoldingObject, false );
|
typeHandle := tree.GetHandle( kpiHoldingObject.DefinitionName() );
|
typeNV := tree.Root().Child( typeHandle );
|
|
traverse( typeNV.Children(), Elements, kpiNV )
|
{
|
// Get the 'raw' value from the data, because exported Number attributes
|
// will fail to be re-imported as 'Real'. So a little help here.
|
kpiRaw := kpiNV.GetValue();
|
|
// Only create KPIs for Real or Number type attributes
|
if( kpiRaw.istype( Real ) or kpiRaw.istype( Number ) )
|
{
|
kpiName := kpiNV.Name();
|
kpiValue := 0.0;
|
|
if( kpiRaw.istype( Real ) )
|
{
|
kpiValue := kpiRaw.astype( Real );
|
}
|
else if( kpiRaw.istype( Number ) )
|
{
|
kpiValue := [Real]( kpiRaw.astype( Number ));
|
}
|
|
snapshotData.CreateValue( kpiName, kpiValue );
|
}
|
}
|
|
*]
|
}
|