इनपुट वैरिएबल की मदद से डेटा इकट्ठा करना

इस गाइड में, इनपुट वैरिएबल बनाने का तरीका बताया गया है.

इन चरणों को पूरा करने के लिए, कुछ जानकारी की ज़रूरत होती है. उदाहरण के लिए, ईमेल भेजने के लिए ईमेल पते की ज़रूरत होती है. इस ज़रूरी जानकारी को देने के लिए, इनपुट वैरिएबल तय करें. इनपुट वैरिएबल तय करने के बाद, आम तौर पर उपयोगकर्ता इन्हें किसी चरण के कॉन्फ़िगरेशन कार्ड पर सेट करता है. ऐसा तब होता है, जब उपयोगकर्ता चरण को सेट अप कर रहा होता है.

इनपुट वैरिएबल को दो जगहों पर तय करें: ऐड-ऑन की मेनिफ़ेस्ट फ़ाइल में और कॉन्फ़िगरेशन कार्ड वाले कोड में. कॉन्फ़िगरेशन कार्ड में, उपयोगकर्ता इनपुट वैरिएबल के लिए वैल्यू डाल सकते हैं.

मेनिफ़ेस्ट फ़ाइल में इनपुट वैरिएबल तय करना

मेनिफ़ेस्ट फ़ाइल में, inputs[] ऐरे का इस्तेमाल करके इनपुट वैरिएबल तय करें. inputs[] कलेक्शन में मौजूद हर आइटम में ये प्रॉपर्टी होती हैं:

  • id: इनपुट वैरिएबल के लिए यूनीक आइडेंटिफ़ायर. फ़्लो को इस इनपुट वैरिएबल के साथ कॉन्फ़िगरेशन कार्ड के इनपुट एलिमेंट को जोड़ने की अनुमति देने के लिए, इसका नाम कार्ड के संबंधित एलिमेंट के नाम से मेल खाना चाहिए.
  • description: इनपुट वैरिएबल के बारे में जानकारी, जिसे उपयोगकर्ताओं को दिखाया जाएगा.
  • cardinality: कितनी वैल्यू इस्तेमाल की जा सकती हैं. इन वैल्यू का इस्तेमाल किया जा सकता है:
    • SINGLE: सिर्फ़ एक वैल्यू इस्तेमाल की जा सकती है.
  • dataType: स्वीकार की जाने वाली वैल्यू का टाइप. dataType में basicType प्रॉपर्टी होती है, जो डेटा के टाइप के बारे में बताती है. मान्य वैल्यू में ये शामिल हैं:
    • STRING: अक्षर और अंक वाली स्ट्रिंग.
    • INTEGER: कोई संख्या.
    • TIMESTAMP: ISO 8601 फ़ॉर्मैट में टाइमस्टैंप. उदाहरण के लिए, ISO 8601 में 15 मार्च, 2025 को 2025-03-15 के तौर पर दिखाया जाता है.
    • 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": "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"
          }
        }
      ]
    }
  }
}

कोड में इनपुट वैरिएबल तय करना

इस चरण के कोड में onConfigFunction() नाम का एक फ़ंक्शन शामिल है. यह एक कॉन्फ़िगरेशन कार्ड दिखाता है. इस कार्ड में, मेनिफ़ेस्ट फ़ाइल की inputs[] ऐरे में तय किए गए हर इनपुट वैरिएबल के लिए, एक इनपुट कार्ड विजेट होता है.

कॉन्फ़िगरेशन कार्ड में तय किए गए इनपुट विजेट के लिए, ये ज़रूरी शर्तें पूरी होनी चाहिए:

  • हर इनपुट विजेट का name, मेनिफ़ेस्ट फ़ाइल में मौजूद उससे जुड़े इनपुट वैरिएबल के id से मेल खाना चाहिए.
  • मेनिफ़ेस्ट फ़ाइल में, इनपुट विजेट की कार्डिनैलिटी, इनपुट वैरिएबल की cardinality से मेल खानी चाहिए.
  • इनपुट विजेट का डेटा टाइप, मेनिफ़ेस्ट फ़ाइल में मौजूद इनपुट वैरिएबल के dataType से मेल खाना चाहिए. अगर इनपुट वैरिएबल में पूर्णांक का dataType है, तो इसमें स्ट्रिंग नहीं रखी जा सकती.

कार्ड इंटरफ़ेस बनाने में मदद पाने के लिए, इनमें से कोई एक विकल्प देखें:

यहां दिए गए उदाहरण में, मेनिफ़ेस्ट फ़ाइल में इनपुट वैरिएबल तय करें में तय किए गए हर इनपुट विजेट के लिए, कॉन्फ़िगरेशन कार्ड दिखाया गया है.

Apps Script

/**
 * Generates and displays a configuration card for the sample calculation step.
 *
 * This function creates a card with input fields for two values and a drop-down
 * for selecting an arithmetic operation. The card also includes a "Save"
 * button to save the step configuration for the workflow.
 *
 * The input fields are configured to let the user select outputs from previous
 * workflow steps as input values using the `hostAppDataSource` property.
 */
function onConfigFunction() {
  var card = {
    "sections": [
      {
        "header": "Step example: Calculate",
        "widgets": [
          {
            "textInput": {
              "name": "value1", // "name" must match an "id" in the manifest file's inputs[] array.
              "label": "First value",
              "hostAppDataSource" : {
                "workflowDataSource" : {
                  "includeVariables" : true
                }
              }
            }
          },
          {
            "selectionInput": {
              "name": "operation", // "name" must match an "id" in the manifest file's inputs[] array.
              "label": "Operation",
              "type": "DROPDOWN",
              "items": [
                {
                  "text": "+",
                  "value": "+",
                },
                {
                  "text": "-",
                  "value": "-",
                },
                {
                  "text": "x",
                  "value": "x",
                },
                {
                  "text": "/",
                  "value": "/",
                }
              ]
            }
          },
          {
            "textInput": {
              "name": "value2", // "name" must match an "id" in the manifest file's inputs[] array.
              "label": "Second value",
              "hostAppDataSource" : {
                "workflowDataSource" : {
                  "includeVariables" : true
                }
              }
            }
          }
        ]
      }
    ]
  };
  return {
    "action": {
      "navigations": [{
        "push_card": card
      }]
    }
  };
}

इनपुट वैरिएबल की पुष्टि करना

सबसे सही तरीके के तौर पर, यह पुष्टि करें कि उपयोगकर्ता ने सही वैल्यू डाली है. इनपुट वैरिएबल की पुष्टि करना लेख पढ़ें.