यह दस्तावेज़ AI द्वारा अनुवादित है। सटीक जानकारी के लिए कृपया अंग्रेज़ी संस्करण देखें।
NocoBase में सामान्य डेटा ऑपरेशन (जोड़ना, हटाना, संपादित करना, देखना आदि) अंतर्निहित हैं। जब ये ऑपरेशन जटिल व्यावसायिक आवश्यकताओं को पूरा नहीं कर पाते हैं, तो आप वर्कफ़्लो में कस्टम एक्शन इवेंट का उपयोग कर सकते हैं और उस इवेंट को पेज ब्लॉक के "वर्कफ़्लो ट्रिगर करें" बटन से जोड़ सकते हैं। जब उपयोगकर्ता बटन पर क्लिक करेंगे, तो यह एक कस्टम एक्शन वर्कफ़्लो को ट्रिगर करेगा।
वर्कफ़्लो बनाते समय, "कस्टम एक्शन इवेंट" चुनें:

v.1.6.0+
कॉन्टेक्स्ट प्रकार यह निर्धारित करता है कि वर्कफ़्लो को किन ब्लॉक के बटनों से जोड़ा जा सकता है:

जब कॉन्टेक्स्ट प्रकार सिंगल रिकॉर्ड या मल्टीपल रिकॉर्ड्स हो, तो आपको उस संग्रह (Collection) को चुनना होगा जिससे डेटा मॉडल को जोड़ना है:

अगर आपको वर्कफ़्लो में ट्रिगरिंग डेटा रो के संबंधित डेटा (Association Data) का उपयोग करने की आवश्यकता है, तो आप यहाँ गहरे संबंधित फ़ील्ड चुन सकते हैं:

ये फ़ील्ड इवेंट ट्रिगर होने के बाद वर्कफ़्लो के कॉन्टेक्स्ट में स्वचालित रूप से प्रीलोड हो जाएंगे, ताकि वर्कफ़्लो में उनका उपयोग किया जा सके।
वर्कफ़्लो में कॉन्फ़िगर किए गए कॉन्टेक्स्ट प्रकार के आधार पर, विभिन्न ब्लॉक में एक्शन बटनों का कॉन्फ़िगरेशन भी अलग-अलग होता है।
v1.6.0+
एक्शन पैनल और अन्य डेटा ब्लॉक में, "वर्कफ़्लो ट्रिगर करें" बटन जोड़ा जा सकता है:



बटन जोड़ने के बाद, पहले बनाए गए बिना कॉन्टेक्स्ट वाले वर्कफ़्लो को जोड़ें। एक्शन पैनल में बटन का उदाहरण इस प्रकार है:


किसी भी डेटा ब्लॉक में, सिंगल रिकॉर्ड के लिए एक्शन बार में "वर्कफ़्लो ट्रिगर करें" बटन जोड़ा जा सकता है, जैसे फ़ॉर्म, टेबल रो, विवरण आदि में:



बटन जोड़ने के बाद पहले बनाए गए वर्कफ़्लो को जोड़ें:


इसके बाद इस बटन पर क्लिक करने से वह कस्टम एक्शन इवेंट ट्रिगर हो जाएगा:

v1.6.0+
टेबल ब्लॉक के एक्शन बार में, "वर्कफ़्लो ट्रिगर करें" बटन जोड़ते समय एक अतिरिक्त विकल्प होगा, जिसमें कॉन्टेक्स्ट प्रकार "कोई कॉन्टेक्स्ट नहीं" या "मल्टीपल रिकॉर्ड्स" चुनना होगा:

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

बटन पर क्लिक करके ट्रिगर करते समय, टेबल में कुछ डेटा रो को चेक किया जाना चाहिए, अन्यथा वर्कफ़्लो ट्रिगर नहीं होगा:

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

फिर एक "कस्टम एक्शन इवेंट" वर्कफ़्लो बनाएँ। यदि आपको ऑपरेशन प्रक्रिया से त्वरित प्रतिक्रिया की आवश्यकता है, तो आप सिंक्रोनस मोड चुन सकते हैं (सिंक्रोनस मोड में मैन्युअल प्रोसेसिंग जैसे एसिंक्रोनस नोड्स का उपयोग नहीं किया जा सकता):

ट्रिगर कॉन्फ़िगरेशन में, संग्रह के रूप में "सैंपल" चुनें:

व्यावसायिक आवश्यकताओं के अनुसार वर्कफ़्लो में तर्क व्यवस्थित करें, उदाहरण के लिए जब इंडिकेटर पैरामीटर 90 से अधिक हो तभी निरीक्षण की अनुमति दें, अन्यथा संबंधित समस्या का संकेत दें:

"रिस्पॉन्स मैसेज" नोड का उपयोग सिंक्रोनस कस्टम एक्शन इवेंट में क्लाइंट को प्रॉम्प्ट मैसेज वापस करने के लिए किया जा सकता है। इसे एसिंक्रोनस मोड में उपयोग नहीं किया जा सकता है।
वर्कफ़्लो कॉन्फ़िगर और सक्षम करने के बाद, टेबल इंटरफ़ेस पर वापस जाएँ और टेबल के एक्शन कॉलम में "वर्कफ़्लो ट्रिगर करें" बटन जोड़ें:

फिर बटन के कॉन्फ़िगरेशन मेनू में वर्कफ़्लो बाइंडिंग चुनें और कॉन्फ़िगरेशन पॉप-अप खोलें:

पहले सक्षम किए गए वर्कफ़्लो को जोड़ें:

सबमिट करने के बाद, बटन टेक्स्ट को ऑपरेशन के नाम में बदलें, जैसे "निरीक्षण के लिए भेजें", कॉन्फ़िगरेशन प्रक्रिया पूरी हो गई है।
उपयोग करते समय, टेबल में कोई भी सैंपल डेटा चुनें और "निरीक्षण के लिए भेजें" बटन पर क्लिक करें, जिससे कस्टम एक्शन इवेंट ट्रिगर हो जाएगा। जैसा कि पहले व्यवस्थित तर्क में था, यदि सैंपल इंडिकेटर पैरामीटर 90 से कम है, तो क्लिक करने पर निम्न संदेश दिखाई देगा:

यदि इंडिकेटर पैरामीटर 90 से अधिक है, तो वर्कफ़्लो सामान्य रूप से निष्पादित होगा, "निरीक्षण रिकॉर्ड" डेटा बनाएगा और सैंपल की स्थिति को "निरीक्षण के लिए भेजा गया" में बदल देगा:

इस प्रकार, एक सरल कस्टम एक्शन इवेंट पूरा हो गया है। इसी तरह, ऑर्डर प्रोसेसिंग, रिपोर्ट सबमिशन जैसे जटिल ऑपरेशनों वाले व्यवसायों के लिए कस्टम एक्शन इवेंट का उपयोग किया जा सकता है।
कस्टम एक्शन इवेंट का ट्रिगर होना केवल यूज़र इंटरफ़ेस तक सीमित नहीं है, इसे HTTP API कॉल के माध्यम से भी ट्रिगर किया जा सकता है। विशेष रूप से, कस्टम एक्शन इवेंट सभी संग्रह ऑपरेशनों के लिए वर्कफ़्लो ट्रिगर करने का एक नया ऑपरेशन प्रकार प्रदान करता है: trigger, जिसे NocoBase के मानक ऑपरेशन API का उपयोग करके कॉल किया जा सकता है।
चूंकि बाहरी कॉल के लिए भी उपयोगकर्ता की पहचान आवश्यक है, इसलिए HTTP API के माध्यम से कॉल करते समय, यह सामान्य इंटरफ़ेस से भेजे गए अनुरोधों के समान ही होता है, जिसमें Authorization रिक्वेस्ट हेडर या token पैरामीटर (लॉगिन से प्राप्त टोकन), और X-Role रिक्वेस्ट हेडर (उपयोगकर्ता की वर्तमान भूमिका का नाम) प्रदान करना आवश्यक है।
बिना कॉन्टेक्स्ट वाले वर्कफ़्लो को workflows रिसोर्स के विरुद्ध ट्रिगर करने की आवश्यकता होती है:
उदाहरण में बटन द्वारा ट्रिगर किए गए वर्कफ़्लो की तरह, इसे इस प्रकार कॉल किया जा सकता है:
चूंकि यह ऑपरेशन सिंगल डेटा के लिए है, इसलिए मौजूदा डेटा पर कॉल करते समय, आपको डेटा रो की ID निर्दिष्ट करनी होगी और URL में <:id> भाग को बदलना होगा।
यदि इसे फ़ॉर्म (जैसे जोड़ना या अपडेट करना) के लिए कॉल किया जा रहा है, तो नए डेटा वाले फ़ॉर्म के लिए आप ID छोड़ सकते हैं, लेकिन आपको सबमिट किए गए डेटा को निष्पादन कॉन्टेक्स्ट के रूप में पास करना होगा:
अपडेट फ़ॉर्म के लिए, आपको डेटा रो की ID और अपडेट किया गया डेटा दोनों पास करने की आवश्यकता है:
यदि ID और डेटा दोनों पास किए जाते हैं, तो पहले ID के अनुरूप डेटा रो लोड की जाएगी, और फिर पास किए गए डेटा ऑब्जेक्ट के गुणों का उपयोग करके मूल डेटा रो को ओवरराइट किया जाएगा ताकि अंतिम ट्रिगर डेटा कॉन्टेक्स्ट प्राप्त हो सके।
यदि संबंधित डेटा पास किया जाता है, तो उसे भी ओवरराइट कर दिया जाएगा। संबंधित डेटा के अप्रत्याशित ओवरराइट से बचने के लिए, विशेष रूप से जब संबंधित डेटा आइटम के प्रीलोडिंग को कॉन्फ़िगर किया गया हो, तो आने वाले डेटा को सावधानी से संभालें।
इसके अतिरिक्त, URL पैरामीटर triggerWorkflows वर्कफ़्लो की कुंजी (key) है, कई वर्कफ़्लो को अल्पविराम से अलग किया जाता है। यह कुंजी वर्कफ़्लो कैनवास के शीर्ष पर वर्कफ़्लो नाम पर माउस ले जाकर प्राप्त की जा सकती है:

सफल कॉल के बाद, संबंधित samples संग्रह का कस्टम एक्शन इवेंट ट्रिगर होगा।
HTTP API कॉल के माध्यम से एक्शन ट्रिगर करते समय, आपको वर्कफ़्लो की सक्षम स्थिति और संग्रह कॉन्फ़िगरेशन के मिलान पर भी ध्यान देना होगा; अन्यथा, कॉल सफल नहीं हो सकती है या त्रुटि हो सकती है।
सिंगल रिकॉर्ड कॉल के समान, लेकिन पास किए गए डेटा में केवल कई प्राथमिक कुंजी पैरामीटर (filterByTk[]) की आवश्यकता होती है, और data भाग पास करने की आवश्यकता नहीं होती है:
यह कॉल मल्टीपल रिकॉर्ड्स मोड में कस्टम एक्शन इवेंट को ट्रिगर करेगी, और id 1 और 2 वाले डेटा को ट्रिगर कॉन्टेक्स्ट के रूप में उपयोग करेगी।