Mit der Feldeigenschaft formula
können Sie berechnete Felder zu Ihrem
des Connector-Schemas.
Die vollständige Liste der Funktionen, die in Formeln unterstützt werden, finden Sie unter Funktionsliste. Außerdem finden Sie hier weitere Informationen zu folgenden Themen:
Wenn in einer Formel auf das ID
eines anderen Felds verwiesen wird, müssen Sie ihm $
voranstellen. Für
Wenn das Feld ID
beispielsweise t_celsius
ist, sollte es so bezeichnet werden:
$t_celsius
in die Formel ein.
Type
für berechnete Felder
Type
wird für berechnete Felder unterstützt, die Ausgabe der Formel muss jedoch aktiviert sein.
müssen mit dem erwarteten Format für Type
übereinstimmen.
Zum Beispiel für die Formel:
"HYPERLINK($url, $description)"
Der Type
sollte HYPERLINK
lauten.
aggregation
für berechnete Felder
Wenn Ihre Formel eine Aggregation enthält, sollte aggregation
auf
AUTO
. Sehen Sie in der Funktionsliste in der Spalte type
nach, ob eine Funktion
gibt eine Aggregation zurück. Wenn Ihre Formel keine Aggregation enthält, legen Sie diese fest.
an NONE
.
Formel | aggregation |
---|---|
"SUM($cost) / SUM($units)" |
AUTO |
"$cost + $units" |
NONE |
Beispiele für berechnete Felder in Schemas
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() };
}