Panduan ini menjelaskan cara membuat variabel output.
Variabel output ditampilkan oleh langkah dan dapat dikirim ke langkah lain. Misalnya, meneruskan 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 "milidetik sejak epoch Unix". Misalnya, 27 November 2025, 16.49.02 UTC direpresentasikan sebagai1764262142988."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": "calculatorDemo",
"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. Kode 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 aritmetika 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 onExecuteCalculate(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;
}
const variableData = AddOnsResponseService.newVariableData()
.addIntegerValue(calculatedValue);
const workflowAction = AddOnsResponseService.newReturnOutputVariablesAction()
.addVariableData("result", variableData);
const hostAppAction = AddOnsResponseService.newHostAppAction()
.setWorkflowAction(workflowAction);
return AddOnsResponseService.newRenderActionBuilder()
.setHostAppAction(hostAppAction)
.build();
}
Topik terkait
- Variabel input
- Variabel dinamis
- Mencatat aktivitas dan error dalam log
- Objek peristiwa Workspace Studio