INTEQ KB
Advertisement
  Classe que define os aggregadores de campos do dataset. A classe   DataSetAggregate
deve se usada para criação de classes filhas, onde estas devem implementar o
cálculo do aggregate. O Sistema disponibiliza as seguintes classes padrões de
aggregates: SumDataSetAggregate, AvgDataSetAggregate, MaxDataSetAggregate,
MinDataSetAggregate, CountDataSetAggregate.

Abaixo segue exemplo de como criar uma classe filha de DataSetAggregate.

/** * Classe WeightedAvgDataSetAggregate - calcula a média ponderada */ function WeightedAvgDataSetAggregate( weightFieldName, fieldName, dataSet) { DataSetAggregate.call( this, fieldName, dataSet ) this.weightFieldName = weightFieldName } WeightedAvgDataSetAggregate.prototype = new DataSetAggregate()
WeightedAvgDataSetAggregate.prototype.getValue = function () { if ( this.lastDataSetVersion != this.dataSet.dataSetVersion ) { var weightSum = 0 var value = 0
// realiza média ponderada for ( ds.first(); !ds.eof; ds.next() ){ weightSum += ds[ this.weightFieldName] value += ds[ this.weightFieldName] * ds[ this.fieldName] }
this.fValue = ( value / weightSum ) this.lastValue = this.fValue this.lastDataSetVersion = this.dataSet.dataSetVersion } return this.fValue }
  Propriedades
  Métodos
Advertisement