formula
फ़ील्ड प्रॉपर्टी का इस्तेमाल, आपके कनेक्टर के स्कीमा में आपके दिए गए फ़ॉर्मूला के आधार पर तैयार किए गए फ़ील्ड जोड़ने के लिए किया जा सकता है.
फ़ॉर्मूला में इस्तेमाल किए जा सकने वाले फ़ंक्शन की पूरी सूची फ़ंक्शन की सूची में देखी जा सकती है. इसके अलावा, यहां इनके लिए अन्य दस्तावेज़ भी उपलब्ध हैं:
फ़ॉर्मूला में किसी दूसरे फ़ील्ड के ID
का रेफ़रंस देते समय, उसमें $
लगाएं. उदाहरण
के लिए, अगर आपकी फ़ील्ड ID
t_celsius
है, तो फ़ॉर्मूला में इसे
$t_celsius
के तौर पर दिखाया जाना चाहिए.
आपके दिए गए फ़ॉर्मूला के आधार पर तैयार किए गए फ़ील्ड के लिए Type
आपके दिए गए फ़ॉर्मूला के आधार पर तैयार किए गए फ़ील्ड के लिए Type
काम करता है, लेकिन फ़ॉर्मूला का आउटपुट उस Type
के लिए सही फ़ॉर्मैट से मेल खाना चाहिए.
उदाहरण के लिए, फ़ॉर्मूला के लिए:
"HYPERLINK($url, $description)"
Type
, HYPERLINK
होना चाहिए.
आपके दिए गए फ़ॉर्मूला के आधार पर तैयार किए गए फ़ील्ड के लिए aggregation
अगर आपके फ़ॉर्मूला में एग्रीगेशन शामिल है, तो aggregation
को
AUTO
पर सेट किया जाना चाहिए. फ़ंक्शन लिस्ट में type
कॉलम देखें और देखें कि किसी फ़ंक्शन से कोई एग्रीगेशन दिखता है या नहीं. अगर आपके फ़ॉर्मूला में कोई एग्रीगेशन शामिल नहीं है, तो इसे
NONE
पर सेट करें.
फ़ॉर्मूला | aggregation |
---|---|
"SUM($cost) / SUM($units)" |
AUTO |
"$cost + $units" |
NONE |
स्कीमा में, आपके दिए गए फ़ॉर्मूला के आधार पर तैयार किए गए फ़ील्ड के उदाहरण
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() };
}