Utilizzo dei campi calcolati nello schema

La proprietà del campo formula può essere utilizzata per aggiungere campi calcolati alla tua nello schema del connettore.

L'elenco completo delle funzioni supportate nelle formule è disponibile all'indirizzo Elenco delle funzioni. È disponibile, inoltre, ulteriore documentazione relativa a:

di Gemini Advanced.

Quando in una formula fai riferimento al valore ID di un altro campo, aggiungi il prefisso $. Per Ad esempio, se il campo ID è t_celsius, dovrebbe essere indicato come $t_celsius nella formula.

Type per i campi calcolati

Type è supportato per i campi calcolati, ma l'output della formula deve corrisponda al formato previsto per Type.

Ad esempio, per la formula:

"HYPERLINK($url, $description)"

Il valore Type deve essere HYPERLINK.

aggregation per i campi calcolati

Se la formula prevede un'aggregazione, aggregation deve essere impostato su AUTO. Controlla la colonna type nell'elenco delle funzioni per vedere se una funzione restituisce un'aggregazione. Se la tua formula non prevede un'aggregazione, impostala a NONE.

Formula aggregation
"SUM($cost) / SUM($units)" AUTO
"$cost + $units" NONE

Esempi di campi calcolati nello schema

function getSchema(request) {
  var cc = DataStudioApp.createCommunityConnector();
  var fields = cc.getFields();
  var types = cc.FieldType;
  var aggregations = cc.AggregationType;

  fields.newDimension()
      .setId('date')
      .setName('Date')
      .setDescription('Date of measurement')
      .setType(types.YEAR_MONTH_DAY);

  fields.newMetric()
      .setId('t_celsius')
      .setName('Temperature (Celsius)')
      .setDescription('Temperature in Celsius')
      .setType(types.NUMBER)
      .setAggregation(aggregations.NONE);

  fields.newMetric()
      .setId('t_fahrenheit')
      .setName('Temperature (Fahrenheit)')
      .setDescription('Temperature in Fahrenheit')
      .setFormula('$t_celsius / 5 * 9 + 32')
      .setType(types.NUMBER)
      .setAggregation(aggregations.NONE);

  fields.newMetric()
      .setId('average_temperature (Celsius)')
      .setName('Average Temperature (Celsius)')
      .setDescription('Temperature in Fahrenheit')
      .setFormula('AVG($t_celsius)')
      .setType(types.NUMBER)
      .setAggregation(aggregations.AUTO);

  fields.newMetric()
      .setId('average_temperature (Celsius)')
      .setName('Average Temperature (Celsius)')
      .setDescription('Temperature in Fahrenheit')
      .setFormula('AVG($t_celsius / 5 * 9 + 32)')
      .setType(types.NUMBER)
      .setAggregation(aggregations.AUTO);

  fields.newDimension()
      .setId('feels_like')
      .setName('Feels Like')
      .setDescription('What it feels like outside.')
      .setFormula('CASE WHEN $t_celsius < 0 THEN "Freezing" WHEN $t_celsius > 40 THEN "Too warm" ELSE "Not bad" END')
      .setType(types.TEXT);

  return { 'schema': fields.build() };
}