इसके माध्यम से साझा किया गया


त्रुटि हैंडलिंग

Power Fx भाषा में फार्मूला स्तर पर त्रुटि प्रबंधन को सक्षम करने के लिए एक नई पूर्वावलोकन सुविधा है। यह सेटिंग में डिफ़ॉल्ट रूप से चालू होता है।

सेटिंग्स में आने वाली सुविधाओं का स्क्रीनशॉट जिसमें दिखाया गया है कि फ़ॉर्मूला-स्तरीय त्रुटि प्रबंधन चालू पर सेट है

यह सेटिंग IfError, IsError, Error, और जैसे सूत्रों तक पहुंच प्रदान करती है। IsBlankorError ये फ़ंक्शन आपको त्रुटियों का पता लगाने, वैकल्पिक मान प्रदान करने, या सामने आई त्रुटि के आधार पर विशिष्ट कार्रवाई करने की अनुमति देते हैं।

सत्यापन त्रुटि प्रबंधन

उपरोक्त फ़ंक्शन गलत प्रारूप या आवश्यक फ़ील्ड जैसे इनपुट को मान्य करने में मदद कर सकते हैं। उपयोगकर्ता इनपुट को मान्य करने के लिए If और IsBlank जैसे कथनों या फ़ंक्शन का उपयोग करें। IsError स्पष्ट त्रुटि संदेश प्रदान करें तथा इनपुट सही होने तक आगे की प्रक्रिया को रोकें।

If( IsBlank(TextInput.Text),
    Notify("Field cannot be blank", 
    NotificationType.Error),
    // Continue with processing
)

पैच फ़ंक्शन त्रुटि प्रबंधन

पिछले उदाहरण के समान, Error फ़ंक्शन डेटा को डेटा स्रोत में पैच करते समय त्रुटियों को पकड़ने में मदद कर सकते हैं। Patch फ़ंक्शन 2 तरीकों से त्रुटियों की रिपोर्ट करता है।

यह परिचालन के परिणाम के रूप में त्रुटि मान लौटा सकता है।

UpdateContext(
    {   
    result : Patch(
             Feeds,
             Defaults(Feeds),
             {
                 createdon: Now(),
                 crde8_content: TextInput1_1.Text
                 cr9ce_imageurl: filename
             }
        )
    }
)

त्रुटियों का पता लगाया जा सकता है IsError और उन्हें प्रतिस्थापित या दबाया जा सकता है IfError

IfError(result, Notify("There was an issue saving data" , NotificationType.Error));
IfError(result, Notify("There was an issue saving data" , & FirstError.Message, NotificationType.Error))

If(
    IsError(
        Patch(
            Feeds,
            Defaults(Feeds),
            {
                createdon: Now(),
                crde8_content: TextInput1_1.Txt,
                cr9ce_imageurl: filename        
            }
        )
    ),
    Notify("Error: There was an issue saving data", NotificationType.Error)
)

फॉर्म त्रुटि प्रबंधन

SubmitForm फ़ंक्शन के माध्यम से डेटा सबमिट करने के लिए फ़ॉर्म का उपयोग करते समय, त्रुटि संदेश को अधिसूचित करने के लिए फ़ॉर्म नियंत्रण गुण OnFailure का उपयोग करें।

// OnSelect property of the form's submit button
SubmitForm(frm_SubmitData);

// OnSuccess property of the form
Navigate('Success Screen');

// OnFailure property of the form
Notify("Error: the invoice could not be created", NotificationType.Error);

OnError प्रॉपर्टी के साथ कस्टम त्रुटि संदेश

Power Apps OnError आपके ऐप पर एक प्रॉपर्टी है जो आपको आपकी सभी अनहैंडल की गई त्रुटियों को कैप्चर करने देती है। OnError प्रॉपर्टी आपको एक एक्सप्रेशन निष्पादित करने की क्षमता देती है जो हर बार तब चलता है जब कोई त्रुटि ऐप द्वारा नियंत्रित नहीं की जाती है (जैसे कि इसे किसी चर में संग्रहीत करना या किसी फ़ंक्शन का उपयोग करना जैसे कि IfError इसे किसी अन्य मान से बदलना)। OnError प्रॉपर्टी का उपयोग करने के लिए, आपको इसे उस ऐप में जोड़ना होगा जिस पर आप इसे लागू करना चाहते हैं। फिर, आप OnError प्रॉपर्टी बॉक्स में सूत्र लिखकर वह त्रुटि संदेश निर्दिष्ट कर सकते हैं जिसे आप प्रदर्शित करना चाहते हैं।

यह ध्यान रखना महत्वपूर्ण है कि App.OnError त्रुटि को उसी तरह प्रतिस्थापित नहीं कर सकता है जिस तरह IfError कर सकता है। जिस बिंदु पर App.OnError निष्पादित होता है, त्रुटि पहले ही घटित हो चुकी होती है, तथा परिणाम अन्य सूत्रों के माध्यम से प्रसारित हो चुका होता है।  App.OnError यह केवल यह नियंत्रित करता है कि अंतिम उपयोगकर्ता को त्रुटि की सूचना कैसे दी जाए तथा यदि वांछित हो तो निर्माता को त्रुटि लॉग करने के लिए एक हुक प्रदान करता है।

यह कोड त्रुटि के स्रोत का पता लगाने में मदद कर सकता है: App.OnError

Notify(
    Concatenate(
        FirstError.Message,
        ", Observed: ",
        FirstError.Observed,
        ", Source: ",
        FirstError.Source
    ),
    NotificationType.Error
)

अगला कदम