Panduan ini menjelaskan cara membuat variabel output.
Variabel output ditampilkan oleh langkah-langkah dan dapat dikirim ke langkah lain. Misalnya, teruskan alamat email ke langkah lain yang menggunakannya untuk menentukan penerima email.
Tentukan variabel output di dua tempat: file manifes add-on, dan dalam kode dengan fungsi yang menampilkan variabel output.
Contoh berikut menampilkan hasil matematika yang dihitung dari tiga variabel input: dua angka dan operasi aritmetika.
Menentukan variabel output dalam file manifes
Dalam file manifes Apps Script, tentukan array outputs[]
dan onExecuteFunction().
Setiap item dalam array outputs[] memiliki properti berikut:
id: ID unik untuk variabel output.description: Deskripsi variabel output yang akan ditampilkan kepada pengguna akhir.cardinality: Jumlah nilai yang diizinkan. Nilai yang mungkin adalah:"SINGLE": Hanya satu nilai yang diizinkan.
dataType: Jenis nilai yang diterima.dataTypememiliki propertibasicTypeyang menentukan jenis data. Nilai yang valid mencakup:"STRING": String alfanumerik."INTEGER": Angka."TIMESTAMP": Stempel waktu dalam format ISO 8601. Misalnya, dalam ISO 8601, 15 Maret 2025 ditampilkan sebagai 2025-03-15."BOOLEAN": Benar atau salah."EMAIL_ADDRESS": Alamat email dalam formatdana@example.com.
Contoh berikut menentukan variabel output untuk langkah kalkulator. Variabel output adalah bilangan bulat.
JSON
{
"timeZone": "America/Los_Angeles",
"exceptionLogging": "STACKDRIVER",
"runtimeVersion": "V8",
"addOns": {
"common": {
"name": "Calculator",
"logoUrl": "https://www.gstatic.com/images/branding/productlogos/calculator_search/v1/web-24dp/logo_calculator_search_color_1x_web_24dp.png",
"useLocaleFromApp": true
},
"flows": {
"workflowElements": [
{
"id": "actionElement",
"state": "ACTIVE",
"name": "Calculate",
"description": "Asks the user for two values and a math operation, then performs the math operation on the values and outputs the result.",
"workflowAction": {
"inputs": [
{
"id": "value1",
"description": "value1",
"cardinality": "SINGLE",
"dataType": {
"basicType": "INTEGER"
}
},
{
"id": "value2",
"description": "value2",
"cardinality": "SINGLE",
"dataType": {
"basicType": "INTEGER"
}
},
{
"id": "operation",
"description": "operation",
"cardinality": "SINGLE",
"dataType": {
"basicType": "STRING"
}
}
],
"outputs": [
{
"id": "result",
"description": "Calculated result",
"cardinality": "SINGLE",
"dataType": {
"basicType": "INTEGER"
}
}
],
"onConfigFunction": "onConfigCalculate",
"onExecuteFunction": "onExecuteCalculate"
}
}
]
}
}
}
Menentukan variabel output dalam kode
Kode langkah mencakup fungsi yang disebut onExecuteCalculate(), yang merupakan
onExecuteFunction yang ditentukan dalam manifes. Fungsi ini melakukan aritmetika pada dua nilai yang dimasukkan pengguna, dan menampilkan hasilnya sebagai variabel output dengan fungsi yang disebut outputVariables().
Untuk menampilkan variabel output, tampilkan JSON dengan persyaratan berikut:
variableIdsetiap variabel output harus cocok denganidvariabel output yang sesuai dalam file manifes.variableDatavariabel output harus cocok dengandataTypedancardinalityvariabel output yang sesuai dalam file manifes.
Contoh berikut menampilkan variabel output yang merupakan nilai aritmatika dari dua angka input:
Apps Script
/**
* Executes the calculation step based on the inputs from a flow event.
*
* This function retrieves input values and the operation from the flow event,
* performs the calculation, and returns the result as an output variable.
* The function logs the event for debugging purposes.
*/
function onExecuteCalculateFunction(event) {
console.log("output: " + JSON.stringify(event));
var calculatedValue = 0;
var value1 = event.workflow.actionInvocation.inputs["value1"];
var value2 = event.workflow.actionInvocation.inputs["value2"];
var operation = event.workflow.actionInvocation.inputs["operation"].stringValues[0];
if (operation == "+") {
calculatedValue = value1 + value2;
} else if (operation == "-") {
calculatedValue = value1 - value2;
} else if (operation == "x") {
calculatedValue = value1 * value2;
} else if (operation == "/") {
calculatedValue = value1 / value2;
}
var renderAction = {
"hostAppAction" : {
"workflowAction" : {
"returnOutputVariablesAction" : {
"variableValues" : [
{
"variableId": "result",
"integerValues": [
calculatedValue
]
}
]
}
}
}
};
console.log("renderAction: " + JSON.stringify(renderAction));
return renderAction;
}