একটি আউটপুট ভেরিয়েবল ব্যবহার করে ধাপগুলির মধ্যে ডেটা পাস করুন

এই নির্দেশিকায় একটি আউটপুট ভেরিয়েবল তৈরি করার পদ্ধতি ব্যাখ্যা করা হয়েছে।

আউটপুট ভেরিয়েবলগুলো ধাপগুলো থেকে রিটার্ন করা হয় এবং অন্য ধাপে পাঠানো যায়। উদাহরণস্বরূপ, একটি ইমেল ঠিকানা অন্য একটি ধাপে পাঠান, যা ব্যবহার করে ইমেল প্রাপক নির্দিষ্ট করা হয়।

আউটপুট ভেরিয়েবলটি দুটি জায়গায় সংজ্ঞায়িত করুন: অ্যাড-অনটির ম্যানিফেস্ট ফাইলে এবং কোডে এমন একটি ফাংশনের মাধ্যমে যা আউটপুট ভেরিয়েবলটি রিটার্ন করে।

নিম্নলিখিত উদাহরণটি দুটি সংখ্যা এবং একটি গাণিতিক প্রক্রিয়া—এই তিনটি ইনপুট ভেরিয়েবল থেকে একটি গণনাকৃত গাণিতিক ফলাফল প্রদান করে।

ম্যানিফেস্ট ফাইলে আউটপুট ভেরিয়েবলটি সংজ্ঞায়িত করুন।

অ্যাপস স্ক্রিপ্ট ম্যানিফেস্ট ফাইলে একটি outputs[] অ্যারে এবং একটি onExecuteFunction() উল্লেখ করুন।

outputs[] অ্যারের প্রতিটি আইটেমের এই বৈশিষ্ট্যগুলো রয়েছে:

  • id : আউটপুট ভেরিয়েবলের অনন্য শনাক্তকারী।
  • description : অন্তিম ব্যবহারকারীদের দেখানোর জন্য আউটপুট ভেরিয়েবলের একটি বর্ণনা।
  • cardinality : কতগুলি মান অনুমোদিত। সম্ভাব্য মানগুলি হলো:
    • "SINGLE" : শুধুমাত্র একটি মান অনুমোদিত।
  • dataType : গৃহীত মানের ধরণ। dataType basicType নামক একটি প্রপার্টি আছে যা ডেটার ধরণ নির্ধারণ করে। বৈধ মানগুলো হলো:
    • "STRING" : একটি আলফানিউমেরিক স্ট্রিং।
    • "INTEGER" : একটি সংখ্যা।
    • TIMESTAMP : 'মিলিসেকেন্ড সিন্স ইউনিক্স ইপক' ফরম্যাটে একটি টাইমস্ট্যাম্প। উদাহরণস্বরূপ, নভেম্বর ২৭, ২০২৫, ১৬:৪৯:০২ UTC-কে 1764262142988 হিসাবে উপস্থাপন করা হয়।
    • "BOOLEAN" : হয় সত্য অথবা মিথ্যা।
    • "EMAIL_ADDRESS" : dana@example.com ফরম্যাটের একটি ইমেইল ঠিকানা।

নিম্নলিখিত উদাহরণটি একটি ক্যালকুলেটর স্টেপের জন্য একটি আউটপুট ভেরিয়েবল নির্ধারণ করে। আউটপুট ভেরিয়েবলটি একটি পূর্ণসংখ্যা।

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"
          }
        }
      ]
    }
  }
}

কোডে আউটপুট ভেরিয়েবল সংজ্ঞায়িত করুন

এই ধাপের কোডে onExecuteCalculate() নামে একটি ফাংশন রয়েছে, যা ম্যানিফেস্টে সংজ্ঞায়িত onExecuteFunction । এটি ব্যবহারকারীর দেওয়া দুটি মানের উপর গাণিতিক ক্রিয়া সম্পাদন করে এবং outputVariables() নামক একটি ফাংশনের মাধ্যমে ফলাফলটি একটি আউটপুট ভেরিয়েবল হিসেবে ফেরত দেয়।

একটি আউটপুট ভেরিয়েবল ফেরত দিতে, নিম্নলিখিত শর্তাবলী সহ JSON রিটার্ন করুন:

  • প্রতিটি আউটপুট ভেরিয়েবলের ` variableId অবশ্যই ম্যানিফেস্ট ফাইলে থাকা তার সংশ্লিষ্ট আউটপুট ভেরিয়েবলের id সাথে মিলতে হবে।
  • আউটপুট ভেরিয়েবলের ` variableData অবশ্যই ম্যানিফেস্ট ফাইলের সংশ্লিষ্ট আউটপুট ভেরিয়েবলের dataType এবং cardinality সাথে মিলতে হবে।

নিম্নলিখিত উদাহরণটি একটি আউটপুট ভেরিয়েবল প্রদান করে, যা দুটি ইনপুট সংখ্যার গাণিতিক মান।

অ্যাপস স্ক্রিপ্ট

/**
 * 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();
}