Quintiq file version 2.0 
 | 
#parent: #root 
 | 
Method GetConfigurationQuery () as JSON id:Method_Kpi_frmKpiSnapshots_GetConfigurationQuery 
 | 
{ 
 | 
  #keys: '[146450.3.312493348]' 
 | 
  Body: 
 | 
  [* 
 | 
    // Converts the configuration query into JSON. 
 | 
    json := JSON::Object(); 
 | 
     
 | 
    queryType := KpiQuery::QUERY_TRACK(); 
 | 
     
 | 
    json.Add( "QueryType", queryType ); 
 | 
     
 | 
    // Query parameters                       
 | 
    // Default value for datetimefrom and datetimeto 
 | 
    datetimefrom := DateTime::MinDateTime(); 
 | 
    datetimeto    := DateTime::MaxDateTime(); 
 | 
    timespan     := rbgTimespan.BoundValue(); 
 | 
    if( timespan = "range" ) 
 | 
    { 
 | 
      datetimefrom := dtFrom.DateTime(); 
 | 
      datetimeto   := dtTo.DateTime(); 
 | 
    } 
 | 
    limit        := txtSnapshotLimit.Text(); 
 | 
     
 | 
    json.Add( "Timespan", timespan ); 
 | 
    json.Add( "DateTimeFrom", [String] datetimefrom ); 
 | 
    json.Add( "DateTimeTo", [String] datetimeto ); 
 | 
    json.Add( "LimitSnapshot", [Number] limit ); 
 | 
     
 | 
    // Other 
 | 
    isAllSnapshotEnabled := cbSelectAllSnapshots.Checked(); 
 | 
    json.Add( "IsAllSnapsnotEnabled", isAllSnapshotEnabled ); 
 | 
     
 | 
    // Label filtering 
 | 
    isLabelFilteringEnabled := cbLabelFilterEnabled.Checked(); 
 | 
    labelfilters := selectvalues( dhSelectedLabelValues.Data(), Elements, labelvalue, true, labelvalue.Value() ); 
 | 
     
 | 
    json.Add( "IsLabelFilteringEnabled", isLabelFilteringEnabled ); 
 | 
    json.Add( "LabelFilters", labelfilters.ToString( "," ) ); 
 | 
     
 | 
    // Kpi selection 
 | 
    metadatas := selectvalues( dhSelectedKpis.Data(), Elements, metadata, true, metadata.DisplayName() ); 
 | 
    json.Add( "MetaDatas", metadatas.ToString( "," ) ); 
 | 
     
 | 
    // Series selection 
 | 
    series := guard( selSeries.Data().Name(), '' ); 
 | 
    isLastSnapshotEnabled := cbOnlyLastSnapshot.Checked() and cbOnlyLastSnapshot.Enabled(); 
 | 
    timetype := rbgTimeType.BoundValue(); 
 | 
     
 | 
    json.Add( "Series", series ); 
 | 
    json.Add( "IsLastSnapshotEnabled", isLastSnapshotEnabled ); 
 | 
    json.Add( "Timetype", timetype ); 
 | 
     
 | 
    return &json.Build(); 
 | 
  *] 
 | 
  ReturnsOwning: true 
 | 
} 
 |