| 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
 | | Quintiq file version 2.0 |  | #parent: #root |  | Method GenerateInstances () id:Method_FormKPIChart_GenerateInstances |  | { |  |   #keys: '[145136.0.62364416]' |  |   Body: |  |   [* |  |     owner := DataHolderOwner.Data(); |  |     if ( not isnull( owner ) ) // happens sometimes the first time the form is loaded. Might be because this is created before the DataHolderShadowChartKPI is created; |  |     { |  |       owner.UIChartKPI( relflush ); |  |       traverse( DataHolderKPIS.Data(), Elements, kpi ) |  |       { |  |         datetimes := RealVector::Construct( kpi.DateTime() ); |  |         vector := RealVector::Construct( kpi.Values() ); |  |      |  |         for ( x:=0; x < datetimes.Size(); x++ ) |  |         { |  |           value := vector.Get( x ); |  |      |  |           owner.UIChartKPI( relnew ,  |  |                             X := Duration::Minutes( datetimes.Get( x ) ),  |  |                             Y := value,  |  |                             Name := [String] kpi.BTS().RunNr() ); |  |         } |  |       } |  |        |  |       all_targets := selectset( DataHolderKPIS.Data(), Elements.TargetKPI, target, true ); |  |       min_x := min( owner, UIChartKPI, kpi, true, kpi.X() ); |  |       max_x := max( owner, UIChartKPI, kpi, true, kpi.X() ); |  |       target_values := selectuniquevalues( all_targets, Elements, target, true, target.Value() ); |  |       traverse( target_values, Elements, target_value ) |  |       { |  |         targets := selectset( all_targets, Elements, target, target.Value() = target_value ); |  |         name := ''; |  |         if( target_values.Size() > 1 ) |  |         { |  |           name := selectvalues( DataHolderKPIS.Data(), Elements, kpi, targets.Find( kpi.TargetKPI() ) >= 0, kpi.BTS().RunNr() ).Sort().ToString( ', ' );     |  |         } |  |         owner.UIChartKPI( relnew , |  |                       X := min_x, |  |                       Y := target_value, |  |                       Name := name, |  |                       Group := 'Target' ); |  |         owner.UIChartKPI( relnew , |  |                       X := max_x, |  |                       Y := target_value, |  |                       Name := name, |  |                       Group := 'Target' ); |  |       } |  |     } |  |   *] |  | } | 
 |