logologo
शुरू करें
मार्गदर्शिका
विकास
प्लगइन
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
शुरू करें
मार्गदर्शिका
विकास
प्लगइन
API
logologo
वर्कफ़्लो
अवलोकन
क्विक स्टार्ट

ट्रिगर

अवलोकन
डेटा टेबल इवेंट
निर्धारित कार्य
ऑपरेशन से पहले का इवेंट
ऑपरेशन के बाद का इवेंट
कस्टम ऑपरेशन इवेंट
अनुमोदन
Webhook

नोड

अवलोकन

AI

LLM

फ्लो कंट्रोल

शर्त
बहु-शर्त शाखा
लूप
वैरिएबल
समानांतर शाखा
वर्कफ़्लो कॉल करें
प्रोसेस आउटपुट
JSON वैरिएबल मैपिंग
विलंब
समाप्त

गणना

गणना
तिथि गणना
JSON गणना

डेटा ऑपरेशन

डेटा जोड़ें
डेटा अपडेट करें
डेटा क्वेरी करें
डेटा हटाएँ
SQL ऑपरेशन

मैनुअल प्रोसेसिंग

मैनुअल प्रोसेसिंग
अनुमोदन
CC

एक्सटेंशन प्रकार

HTTP रिक्वेस्ट
JavaScript स्क्रिप्ट
सूचना
ईमेल भेजें
प्रतिक्रिया
प्रतिक्रिया संदेश
वैरिएबल
निष्पादन रिकॉर्ड
संस्करण प्रबंधन
उन्नत विकल्प

एक्सटेंशन विकास

अवलोकन
ट्रिगर प्रकार का विस्तार करें
नोड प्रकार का विस्तार करें
API संदर्भ
Previous Pageनिर्धारित कार्य
Next Pageऑपरेशन के बाद का इवेंट
TIP

यह दस्तावेज़ AI द्वारा अनुवादित किया गया है। किसी भी अशुद्धि के लिए, कृपया अंग्रेजी संस्करण देखें

#कार्रवाई पूर्व इवेंट

This feature is provided by the commercial plugin «वर्कफ़्लो: पूर्व-कार्यवाही घटना», please purchase to use

#परिचय

कार्रवाई पूर्व इवेंट प्लगइन कार्रवाइयों के लिए एक अवरोधन तंत्र प्रदान करता है, जिसे नई प्रविष्टि, अपडेट और हटाने की कार्रवाइयों के अनुरोध सबमिट होने के बाद, लेकिन संसाधित होने से पहले ट्रिगर किया जा सकता है।

यदि ट्रिगर किए गए वर्कफ़्लो में 'वर्कफ़्लो समाप्त करें' नोड निष्पादित होता है, या यदि कोई अन्य नोड निष्पादित होने में विफल रहता है (किसी त्रुटि या अन्य अपूर्णता के कारण), तो फ़ॉर्म कार्रवाई को रोक दिया जाएगा। अन्यथा, निर्धारित कार्रवाई सामान्य रूप से निष्पादित की जाएगी।

'प्रतिक्रिया संदेश' नोड के साथ इसका उपयोग करके आप क्लाइंट को वापस भेजे जाने वाले प्रतिक्रिया संदेश को कॉन्फ़िगर कर सकते हैं, ताकि क्लाइंट को उचित संकेत मिल सकें। कार्रवाई पूर्व इवेंट का उपयोग व्यवसाय सत्यापन या तर्क जांच के लिए किया जा सकता है, ताकि क्लाइंट द्वारा सबमिट किए गए बनाने, अपडेट करने और हटाने जैसे कार्रवाई अनुरोधों को स्वीकृत या अवरोधित किया जा सके।

#ट्रिगर कॉन्फ़िगरेशन

#ट्रिगर बनाएँ

वर्कफ़्लो बनाते समय, प्रकार 'कार्रवाई पूर्व इवेंट' चुनें:

कार्रवाई पूर्व इवेंट बनाएँ

#संग्रह चुनें

एक अवरोधन वर्कफ़्लो के ट्रिगर में, सबसे पहले कार्रवाई के अनुरूप संग्रह को कॉन्फ़िगर करना होता है:

अवरोधन इवेंट कॉन्फ़िगरेशन_संग्रह

फिर अवरोधन मोड चुनें। आप केवल इस वर्कफ़्लो से बंधे कार्रवाई बटन को अवरोधित करना चुन सकते हैं, या इस संग्रह के लिए सभी चयनित कार्रवाइयों को अवरोधित करना चुन सकते हैं (इससे कोई फर्क नहीं पड़ता कि यह किस फ़ॉर्म से आता है, और संबंधित वर्कफ़्लो को बांधने की आवश्यकता नहीं है):

#अवरोधन मोड

अवरोधन इवेंट कॉन्फ़िगरेशन_अवरोधन मोड

वर्तमान में समर्थित कार्रवाई प्रकार 'बनाना', 'अपडेट करना' और 'हटाना' हैं। एक साथ कई कार्रवाई प्रकार चुने जा सकते हैं।

#कार्रवाई कॉन्फ़िगरेशन

यदि ट्रिगर कॉन्फ़िगरेशन में 'केवल तभी अवरोधन ट्रिगर करें जब इस वर्कफ़्लो से बंधा कोई फ़ॉर्म सबमिट किया जाए' मोड चुना गया है, तो आपको फ़ॉर्म इंटरफ़ेस पर वापस जाना होगा और संबंधित कार्रवाई बटन पर इस वर्कफ़्लो को बांधना होगा:

ऑर्डर जोड़ें_वर्कफ़्लो बांधें

वर्कफ़्लो कॉन्फ़िगरेशन बांधें में, संबंधित वर्कफ़्लो चुनें। आमतौर पर, ट्रिगरिंग डेटा के लिए डिफ़ॉल्ट संदर्भ, 'पूरा फ़ॉर्म डेटा', पर्याप्त होता है:

बांधने के लिए वर्कफ़्लो चुनें

ध्यान दें

कार्रवाई पूर्व इवेंट से बांधे जाने वाले बटन वर्तमान में केवल बनाने या अपडेट करने वाले फ़ॉर्म में 'सबमिट' (या 'सहेजें'), 'डेटा अपडेट करें' और 'हटाएँ' बटन का समर्थन करते हैं। 'वर्कफ़्लो ट्रिगर करें' बटन समर्थित नहीं है (इसे केवल 'कार्रवाई के बाद के इवेंट' से बांधा जा सकता है)।

#अवरोधन की शर्तें

एक 'कार्रवाई पूर्व इवेंट' में, दो शर्तें हैं जिनके कारण संबंधित कार्रवाई को रोक दिया जाएगा:

  1. वर्कफ़्लो किसी भी 'वर्कफ़्लो समाप्त करें' नोड पर निष्पादित होता है। पिछली निर्देशों के समान, जब वर्कफ़्लो को ट्रिगर करने वाला डेटा 'शर्त' नोड में पूर्व-निर्धारित शर्तों को पूरा नहीं करता है, तो यह 'नहीं' शाखा में प्रवेश करेगा और 'वर्कफ़्लो समाप्त करें' नोड को निष्पादित करेगा। इस बिंदु पर, वर्कफ़्लो समाप्त हो जाएगा, और अनुरोधित कार्रवाई को रोक दिया जाएगा।
  2. वर्कफ़्लो में कोई भी नोड निष्पादित होने में विफल रहता है, जिसमें निष्पादन त्रुटियाँ या अन्य अपवाद शामिल हैं। इस स्थिति में, वर्कफ़्लो संबंधित स्थिति के साथ समाप्त हो जाएगा, और अनुरोधित कार्रवाई को भी रोक दिया जाएगा। उदाहरण के लिए, यदि वर्कफ़्लो 'HTTP अनुरोध' के माध्यम से बाहरी डेटा को कॉल करता है और अनुरोध विफल रहता है, तो वर्कफ़्लो विफल स्थिति के साथ समाप्त होने के साथ-साथ संबंधित कार्रवाई अनुरोध को भी रोक देगा।

अवरोधन की शर्तें पूरी होने के बाद, संबंधित कार्रवाई अब निष्पादित नहीं की जाएगी। उदाहरण के लिए, यदि ऑर्डर सबमिशन को रोक दिया जाता है, तो संबंधित ऑर्डर डेटा नहीं बनाया जाएगा।

#संबंधित कार्रवाई के लिए संबंधित पैरामीटर

एक 'कार्रवाई पूर्व इवेंट' प्रकार के वर्कफ़्लो में, विभिन्न कार्रवाइयों के लिए ट्रिगर से विभिन्न डेटा को वर्कफ़्लो में चर के रूप में उपयोग किया जा सकता है:

कार्रवाई प्रकार \ चरऑपरेटरऑपरेटर भूमिका पहचानकर्ताकार्रवाई पैरामीटर: 'ID'कार्रवाई पैरामीटर: 'सबमिट किया गया डेटा ऑब्जेक्ट'
एक रिकॉर्ड बनाएँ✓✓-✓
एक रिकॉर्ड अपडेट करें✓✓✓✓
एकल या एकाधिक रिकॉर्ड हटाएँ✓✓✓-
ध्यान दें

कार्रवाई पूर्व इवेंट में 'ट्रिगर डेटा / कार्रवाई पैरामीटर / सबमिट किया गया डेटा ऑब्जेक्ट' चर डेटाबेस से वास्तविक डेटा नहीं है, बल्कि कार्रवाई के साथ सबमिट किए गए पैरामीटर हैं। यदि आपको डेटाबेस से वास्तविक डेटा की आवश्यकता है, तो आपको वर्कफ़्लो के भीतर 'डेटा क्वेरी करें' नोड का उपयोग करके उसे क्वेरी करना होगा।

इसके अतिरिक्त, हटाने की कार्रवाई के लिए, कार्रवाई पैरामीटर में 'ID' एक एकल मान होता है जब एक एकल रिकॉर्ड को लक्षित किया जाता है, लेकिन यह एक ऐरे होता है जब कई रिकॉर्ड को लक्षित किया जाता है।

#प्रतिक्रिया संदेश आउटपुट करें

ट्रिगर कॉन्फ़िगर करने के बाद, आप वर्कफ़्लो में संबंधित निर्णय तर्क को अनुकूलित कर सकते हैं। आमतौर पर, आप 'शर्त' नोड के शाखा मोड का उपयोग करेंगे ताकि विशिष्ट व्यावसायिक शर्तों के परिणामों के आधार पर यह तय किया जा सके कि 'वर्कफ़्लो समाप्त करें' या नहीं, और एक पूर्व-निर्धारित 'प्रतिक्रिया संदेश' वापस करें:

अवरोधन वर्कफ़्लो कॉन्फ़िगरेशन

इस बिंदु पर, संबंधित वर्कफ़्लो का कॉन्फ़िगरेशन पूरा हो गया है। अब आप ऐसे डेटा को सबमिट करने का प्रयास कर सकते हैं जो वर्कफ़्लो के शर्त नोड में कॉन्फ़िगर की गई शर्तों को पूरा नहीं करता है, ताकि अवरोधन तर्क को ट्रिगर किया जा सके। तब आप वापस भेजा गया प्रतिक्रिया संदेश देख सकते हैं:

त्रुटि प्रतिक्रिया संदेश

#प्रतिक्रिया संदेश की स्थिति

यदि 'वर्कफ़्लो समाप्त करें' नोड में 'सफलता' स्थिति के साथ बाहर निकलने के लिए कॉन्फ़िगर किया गया है, और जब यह नोड निष्पादित होता है, तो कार्रवाई अनुरोध को अभी भी रोक दिया जाएगा, लेकिन वापस भेजा गया प्रतिक्रिया संदेश 'सफलता' (न कि 'त्रुटि') स्थिति के साथ प्रदर्शित होगा:

सफलता स्थिति प्रतिक्रिया संदेश

#उदाहरण

ऊपर दिए गए बुनियादी निर्देशों को मिलाकर, आइए हम 'ऑर्डर सबमिशन' परिदृश्य को एक उदाहरण के रूप में लेते हैं। मान लीजिए कि हमें उपयोगकर्ता द्वारा ऑर्डर सबमिट करते समय उनके द्वारा चुने गए सभी उत्पादों के स्टॉक की जांच करनी है। यदि किसी भी चयनित उत्पाद का स्टॉक अपर्याप्त है, तो ऑर्डर सबमिशन को रोक दिया जाएगा, और एक संबंधित संकेत संदेश वापस किया जाएगा; वर्कफ़्लो प्रत्येक उत्पाद की जांच के लिए लूप करेगा जब तक कि सभी उत्पादों का स्टॉक पर्याप्त न हो जाए, जिस बिंदु पर यह आगे बढ़ेगा और उपयोगकर्ता के लिए ऑर्डर डेटा बनाएगा।

अन्य चरण निर्देशों में समान हैं। हालांकि, चूंकि एक ऑर्डर में कई उत्पाद शामिल होते हैं, इसलिए डेटा मॉडलिंग करते समय 'ऑर्डर' <-- M:1 -- 'ऑर्डर आइटम' -- 1:M --> 'उत्पाद' का कई-से-कई संबंध जोड़ने के अलावा, आपको 'कार्रवाई पूर्व इवेंट' वर्कफ़्लो में एक 'लूप' नोड भी जोड़ना होगा, जिसका उपयोग प्रत्येक उत्पाद के स्टॉक की पर्याप्तता की पुनरावृत्ति से जांच करने के लिए किया जाएगा:

उदाहरण_लूप जांच वर्कफ़्लो

लूप के लिए ऑब्जेक्ट को सबमिट किए गए ऑर्डर डेटा से 'ऑर्डर आइटम' ऐरे के रूप में चुना गया है:

उदाहरण_लूप ऑब्जेक्ट कॉन्फ़िगरेशन

लूप के भीतर शर्त नोड का उपयोग यह निर्धारित करने के लिए किया जाता है कि लूप में वर्तमान उत्पाद ऑब्जेक्ट का स्टॉक पर्याप्त है या नहीं:

उदाहरण_लूप में शर्त

अन्य कॉन्फ़िगरेशन बुनियादी उपयोग में समान हैं। जब अंततः ऑर्डर सबमिट किया जाता है, यदि किसी भी उत्पाद का स्टॉक अपर्याप्त है, तो ऑर्डर सबमिशन को रोक दिया जाएगा, और एक संबंधित संकेत संदेश वापस किया जाएगा। परीक्षण के दौरान, कई उत्पादों के साथ एक ऑर्डर सबमिट करने का प्रयास करें, जहाँ एक का स्टॉक अपर्याप्त है और दूसरे का स्टॉक पर्याप्त है। आप वापस भेजा गया प्रतिक्रिया संदेश देख सकते हैं:

उदाहरण_सबमिशन के बाद प्रतिक्रिया संदेश

जैसा कि आप देख सकते हैं, प्रतिक्रिया संदेश में पहले उत्पाद 'iPhone 15 pro' के स्टॉक की कमी का संकेत नहीं दिया गया है, बल्कि केवल दूसरे उत्पाद 'iPhone 14 pro' के स्टॉक की कमी का संकेत दिया गया है। ऐसा इसलिए है क्योंकि लूप में, पहले उत्पाद का स्टॉक पर्याप्त है, इसलिए इसे रोका नहीं गया, जबकि दूसरे उत्पाद का स्टॉक अपर्याप्त है, जिसने ऑर्डर सबमिशन को रोक दिया।

#बाहरी आह्वान

कार्रवाई पूर्व इवेंट स्वयं अनुरोध प्रसंस्करण चरण के दौरान इंजेक्ट किया जाता है, इसलिए यह HTTP API कॉल के माध्यम से ट्रिगर होने का भी समर्थन करता है।

वर्कफ़्लो जो स्थानीय रूप से एक कार्रवाई बटन से बंधे हैं, आप उन्हें इस प्रकार कॉल कर सकते हैं (उदाहरण के तौर पर posts संग्रह के 'बनाएँ' बटन का उपयोग करके):

curl -X POST -H 'Authorization: Bearer <your token>' -H 'X-Role: <roleName>' -d \
  '{
    "title": "Hello, world!",
    "content": "This is a test post."
  }'
  "http://localhost:3000/api/posts:create?triggerWorkflows=workflowKey"

जिसमें URL पैरामीटर triggerWorkflows वर्कफ़्लो की कुंजी है; कई वर्कफ़्लो कुंजियाँ अल्पविराम से अलग की जाती हैं। यह कुंजी वर्कफ़्लो कैनवास के शीर्ष पर वर्कफ़्लो नाम पर माउस को घुमाकर प्राप्त की जा सकती है:

वर्कफ़्लो_कुंजी_देखने का तरीका

उपरोक्त कॉल करने के बाद, संबंधित posts संग्रह के लिए कार्रवाई पूर्व इवेंट ट्रिगर होगा। संबंधित वर्कफ़्लो के सिंक्रोनस रूप से संसाधित होने के बाद, डेटा सामान्य रूप से बनाया और वापस किया जाएगा।

यदि कॉन्फ़िगर किया गया वर्कफ़्लो 'समाप्ति नोड' तक पहुँचता है, तो तर्क इंटरफ़ेस कार्रवाई के समान है: अनुरोध को रोक दिया जाएगा, और कोई डेटा नहीं बनाया जाएगा। यदि समाप्ति नोड की स्थिति विफल के रूप में कॉन्फ़िगर की गई है, तो वापस भेजा गया प्रतिक्रिया स्थिति कोड 400 होगा; यदि सफल होता है, तो 200 होगा।

यदि समाप्ति नोड से पहले 'प्रतिक्रिया संदेश' नोड भी कॉन्फ़िगर किया गया है, तो उत्पन्न संदेश भी प्रतिक्रिया परिणाम में वापस किया जाएगा, जिसमें त्रुटि के समय की संरचना इस प्रकार है:

{
  "errors": [
    {
      "message": "message from 'Response message' node"
    }
  ]
}

'समाप्ति नोड' को सफलता के लिए कॉन्फ़िगर करने पर संदेश संरचना इस प्रकार है:

{
  "messages": [
    {
      "message": "message from 'Response message' node"
    }
  ]
}
ध्यान दें

चूंकि वर्कफ़्लो में कई 'प्रतिक्रिया संदेश' नोड जोड़े जा सकते हैं, इसलिए वापस भेजा गया संदेश डेटा संरचना एक ऐरे है।

यदि कार्रवाई पूर्व इवेंट को वैश्विक मोड में कॉन्फ़िगर किया गया है, तो HTTP API को कॉल करते समय संबंधित वर्कफ़्लो को निर्दिष्ट करने के लिए triggerWorkflows URL पैरामीटर का उपयोग करने की आवश्यकता नहीं है। बस संबंधित संग्रह कार्रवाई को कॉल करने से यह ट्रिगर हो जाएगा।

curl -X POST -H 'Authorization: Bearer <your token>' -H 'X-Role: <roleName>' -d \
  '{
    "title": "Hello, world!",
    "content": "This is a test post."
  }'
  "http://localhost:3000/api/posts:create"
ध्यान दें

HTTP API कॉल के माध्यम से कार्रवाई पूर्व इवेंट को ट्रिगर करते समय, आपको वर्कफ़्लो की सक्षम स्थिति पर भी ध्यान देना होगा और यह भी देखना होगा कि संग्रह कॉन्फ़िगरेशन मेल खाता है या नहीं, अन्यथा कॉल सफल नहीं हो सकती है या त्रुटि हो सकती है।