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


कैनवास ऐप्स के लिए डेटा स्रोतों को समझें

Power Appsमें, अधिकांश कैनवास ऐप्स क्लाउड सेवाओं में संग्रहीत बाहरी जानकारी का उपयोग करते हैं जिन्हें डेटा स्रोत कहा जाता है। इसका एक सामान्य उदाहरण एक्सेल फ़ाइल में संग्रहीत एक तालिका है। OneDrive ऐप्स कनेक्शन का उपयोग करके इन डेटा स्रोतों तक पहुंचते हैं।

यह आलेख में विभिन्न प्रकार के डेटा स्रोतों और तालिका डेटा स्रोतों के साथ कार्य करने के तरीकों पर चर्चा की गई है.

एक ऐसा ऐप बनाना आसान है जो एक डेटा स्रोत पर मूल पढ़ने और लिखने का कार्य करता है. परंतु कभी-कभी आप अपने ऐप में डेटा के अंदर और बाहर प्रवाह के तरीकों पर अधिक नियंत्रण चाहते हैं. यह आलेख बताता है कि किस प्रकार पैच , डेटा स्रोत जानकारी , सत्यापन , तथा त्रुटियाँ फ़ंक्शन अधिक नियंत्रण प्रदान करते हैं।

डेट स्रोतों के प्रकार

डेटा स्रोत क्लाउड सेवा पर कनेक्ट किए जा सकते हैं, या वे ऐप पर स्थानीय हो सकते हैं.

कनेक्टेड डेटा स्रोत

सबसे आम डेटा स्रोत तालिकाएँ हैं, जिनका उपयोग आप जानकारी प्राप्त करने और संग्रहीत करने के लिए कर सकते हैं। आप कार्यपुस्तिकाओं, Microsoft सूचियों, पुस्तकालयों, SQL तालिकाओं और कई अन्य प्रारूपों का उपयोग करके बनाई गई सूचियों में डेटा पढ़ने और लिखने के लिए डेटा स्रोतों से कनेक्शन का उपयोग कर सकते हैं, जिन्हें ड्रॉपबॉक्स और SQL सर्वर जैसी क्लाउड सेवाओं में संग्रहीत किया जा सकता है। Microsoft Excel SharePoint OneDrive

तालिकाओं के अलावा अन्य डेटा स्रोतों में ईमेल, कैलेंडर, Twitter और सूचनाएँ शामिल हैं, परंतु इस आलेख में इन अन्य प्रकार के डेटा स्रोतों पर चर्चा नहीं की गई है.

स्थानीय डेटा स्रोत

गैलरी, प्रदर्शन फ़ॉर्म, और संपादन फ़ॉर्म नियंत्रणों के साथ, आप एक ऐसा ऐप बना सकते हैं जो डेटा स्रोत से डेटा पढ़ता और लिखता है. आरंभ करने के लिए, डेटा फ़ॉर्म को समझें देखें.

जब आप डेटा से ऐप बनाने के लिए Power Apps से कहते हैं, तो इन नियंत्रणों का उपयोग होता है. पर्दे के पीछे, ऐप, डेटा स्रोत से आने वाले डेटा को संग्रहीत और बदलाव करने के लिए एक आंतरिक तालिका का उपयोग करता है.

एक विशेष प्रकार का डेटा स्रोत संग्रह है, जो ऐप के लिए स्थानीय है और क्लाउड में किसी सेवा से कनेक्शन द्वारा समर्थित नहीं है। इसलिए, जानकारी को एक ही उपयोगकर्ता के लिए विभिन्न डिवाइसों पर या उपयोगकर्ताओं के बीच साझा नहीं किया जा सकता। संग्रहों को स्थानीय रूप से लोड किया और सहेजा जा सकता है.

तालिकाओं के प्रकार

किसी ऐप के आंतरिक टेबल निश्चित मान होते हैं, ठीक उसी तरह जैसे कोई संख्या या स्ट्रिंग एक मान होता है। आंतरिक तालिकाएं कहीं भी संग्रहीत नहीं होती हैं, बल्कि आपके ऐप की मेमोरी में मौजूद होती हैं। आप सीधे किसी तालिका की संरचना और डेटा को संशोधित नहीं कर सकते. इसके बजाय आप यह कर सकते हैं, कि सूत्र के माध्यम से नई तालिका बनाएँ: आप मूल तालिका की एक संशोधित प्रतिलिपि बनाने के लिए सूत्र का उपयोग करते हैं.

बाह्य तालिकाएँ बाद में पुनर्प्राप्त और साझा करने के लिए डेटा स्रोत में संग्रहीत की जाती हैं. Power Apps संग्रहीत डेटा पढ़ने और लिखने के लिए "कनेक्शन" प्रदान करता है. एक कनेक्शन के भीतर, आप जानकारी की एकाधिक तालिकाओं तक पहुँच सकते हैं. आप चुन सकते हैं कि आपके ऐप में कौन सी तालिकाओं का उपयोग किया जाए, और प्रत्येक तालिका एक अलग डेटा स्रोत बन जाती है।

अधिक जानने के लिए, आंतरिक तालिकाओं के बारे में तालिकाओं के साथ कार्य करना देखें, साथ ही क्लाउड सेवा में स्थित बाह्य तालिकाओं के बारे में भी जानें।

तालिकाओं के साथ कार्य करना

आप तालिका डेटा स्रोतों का उपयोग उसी तरह कर सकते हैं, जैसे आंतरिक Power Apps तालिका का उपयोग करते हैं. आंतरिक तालिका की तरह, प्रत्येक डेटा स्रोत में रिकॉर्ड, कॉलम और गुण होते हैं जिनका उपयोग आप सूत्रों में कर सकते हैं। इसके अतिरिक्त:

  • डेटा स्रोत के पास वही स्तंभ नाम और डेटा प्रकार होते हैं, जैसे कनेक्शन में अंतर्निहित तालिका के पास होते हैं.

    नोट

    SharePoint और Excel डेटा स्रोतों के लिए जिनमें रिक्त स्थान वाले स्तंभ नाम होते हैं, Power Apps रिक्त स्थान को "_x0020_" से प्रतिस्थापित करता है. उदाहरण के लिए, "कॉलम नाम" में SharePoint या Excel डेटा लेआउट में प्रदर्शित होने या सूत्र में उपयोग किए जाने पर "कॉलम_x0020_नाम" में Power Apps के रूप में प्रकट होता है।

  • ऐप के लोड होने पर सर्विस से डेटा स्रोत स्वचालित रूप से लोड हो जाता है. आप Refresh फ़ंक्शन का उपयोग करके डेटा को ताज़ा करने के लिए बाध्य कर सकते हैं।

  • जैसे-जैसे उपयोगकर्ता ऐप चलाते हैं, वैसे-वैसे वे रिकॉर्ड बना, संशोधित और हटा सकते हैं और उन परिवर्तनों को सेवा में अंतर्निहित तालिका पर वापस पुश कर सकते हैं.

    • रिकॉर्ड पैच और संग्रह फ़ंक्शन के साथ बनाए जा सकते हैं।
    • रिकॉर्ड्स को पैच, अपडेट, और अपडेटइफ फ़ंक्शन के साथ संशोधित किया जा सकता है।
    • रिकॉर्ड्स को Remove और RemoveIf फ़ंक्शन के साथ हटाया जा सकता है।
    • डेटा स्रोत के साथ काम करते समय त्रुटियाँ त्रुटियाँ फ़ंक्शन के माध्यम से उपलब्ध होती हैं.
  • DataSourceInfo, Defaults, और Validate फ़ंक्शन डेटा स्रोत के बारे में जानकारी प्रदान करते हैं जिसका उपयोग आप उपयोगकर्ता अनुभव को अनुकूलित करने के लिए कर सकते हैं.

डेटा स्रोत बनाना

Power Apps का उपयोग एक कनेक्टेड डेटा स्रोत बनाने, या उसकी संरचना संशोधित करने के लिए नहीं किया जा सकता; डेटा स्रोत को पहले से कहीं न कहीं एक सेवा में मौजूद होना चाहिए. उदाहरण के लिए, OneDrive पर संग्रहीत Excel कार्यपुस्तिका में तालिका बनाने के लिए, आप पहले एक कार्यपुस्तिका बनाने के लिए OneDrive पर Excel Online का उपयोग करते हैं. इसके बाद आप अपने ऐप से इसका कनेक्शन बनाते हैं.

हालाँकि, संग्रह डेटा स्रोतों को ऐप के अंदर बनाया और संशोधित किया जा सकता है, लेकिन ये केवल अस्थायी हैं।

एक या अधिक रिकॉर्ड प्रदर्शित करें

जब कोई ऐप डेटा स्रोत में मौजूद जानकारी को पढ़ता है, तो जानकारी का प्रवाह.

यह आरेख सूचना के प्रवाह को दर्शाता है जब कोई ऐप डेटा स्रोत में जानकारी पढ़ता है:

  • जानकारी एक संग्रहण सेवा (इस मामले में, Microsoft Lists या SharePoint ऑनलाइन) के माध्यम से संग्रहीत और साझा की जाती है.
  • कनेक्शन यह जानकारी ऐप को उपलब्ध कराता है. कनेक्शन, जानकारी तक पहुँचने के लिए उपयोगकर्ता के प्रमाणीकरण का ध्यान रखता है.
  • जब ऐप शुरू किया जाता है या रिफ्रेश फ़ंक्शन दबाया जाता है, तो स्थानीय उपयोग के लिए ऐप में डेटा स्रोत में कनेक्शन से जानकारी खींची जाती है। ...
  • सूत्रों का उपयोग जानकारी को पढ़ने और उन नियंत्रणों में उजागर करने के लिए किया जाता है, जो उपयोगकर्ता देख सकता है. आप स्क्रीन पर गैलरी का उपयोग करके और Items संपत्ति को डेटा स्रोत: Gallery.Items = DataSource से जोड़कर डेटा स्रोत के रिकॉर्ड प्रदर्शित कर सकते हैं. आप नियंत्रणों की डिफ़ॉल्ट संपत्ति का उपयोग करके गैलरी के भीतर नियंत्रणों को गैलरी में वायर करते हैं।
  • डेटा स्रोत एक तालिका भी है. इसलिए आप डेटा स्रोत को संपूर्ण रूप से उपयोग करने से पहले उसे परिष्कृत और संवर्धित करने के लिए फ़िल्टर, सॉर्ट, एडकॉलम, और अन्य फ़ंक्शन का उपयोग कर सकते हैं। आप व्यक्तिगत रिकॉर्ड के साथ काम करने के लिए लुकअप, प्रथम, अंतिम और अन्य फ़ंक्शन का भी उपयोग कर सकते हैं।

रिकॉर्ड संशोधित करें

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

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

डेटा स्रोत को अद्यतन करने के लिए सूचना का प्रवाह. यह आरेख डेटा स्रोत को अद्यतन करने के लिए सूचना के प्रवाह को दर्शाता है:

  • एक संपादन प्रपत्र नियंत्रण इनपुट कार्ड के लिए एक कंटेनर प्रदान करता है, जो उपयोगकर्ता इनपुट नियंत्रणों जैसे कि पाठ-इनपुट नियंत्रण या स्लाइडर से बना होता है। ... डेटा स्रोत और आइटम गुणों का उपयोग संपादित करने के लिए रिकॉर्ड की पहचान करने के लिए किया जाता है।
  • प्रत्येक इनपुट कार्ड में एक Default गुण होता है, जो प्रपत्र के ThisItem रिकॉर्ड के फ़ील्ड पर सेट होता है। इनपुट कार्ड के भीतर नियंत्रण अपने इनपुट मान डिफ़ॉल्ट से लेते हैं। सामान्यतः, आपको इस डिफ़ॉल्ट को संशोधित करने की आवश्यकता नहीं होती।
  • प्रत्येक इनपुट कार्ड एक अपडेट प्रॉपर्टी प्रदर्शित करता है। ... यह गुण उपयोगकर्ता के इनपुट को रिकॉर्ड के एक विशिष्ट फ़ील्ड पर मैप करता है, ताकि वापस डेटा स्रोत पर लिखा जा सके. सामान्यतः, आपको इस गुण को संशोधित करने की आवश्यकता नहीं होती।
  • स्क्रीन पर एक बटन या एक छवि नियंत्रण, उपयोगकर्ता को रिकॉर्ड में परिवर्तनों को सहेजने के लिए सक्षम बनाता है. नियंत्रण का OnSelect सूत्र इस कार्य को करने के लिए SubmitForm फ़ंक्शन को कॉल करता है। सबमिटफॉर्म कार्ड के सभी अपडेट गुणों को पढ़ता है और डेटा स्रोत पर वापस लिखता है।
  • कभी-कभी कुछ समस्याएं आती हैं। हो सकता है कि नेटवर्क कनेक्शन डाउन हो, या सेवा द्वारा सत्यापन जांच की गई हो जिसके बारे में ऐप को पता न हो। प्रपत्र नियंत्रण के Error और ErrorKind गुण इस जानकारी को उपलब्ध कराते हैं, ताकि आप इसे उपयोगकर्ता को प्रदर्शित कर सकें।

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

सत्यापन

इससे पहले कि आप किसी रिकॉर्ड में कोई परिवर्तन करें, ऐप को यह सुनिश्चित करने के लिए हर संभव प्रयास करना चाहिए कि परिवर्तन स्वीकार्य है। जाँच करने के दो कारण हैं:

  • उपयोगकर्ता को तत्काल प्रतिक्रिया. किसी समस्या को ठीक करने का सबसे अच्छा समय वह है जब वह घटित हो, जब वह उपयोगकर्ता के दिमाग में ताज़ा हो। शाब्दिक रूप से, प्रत्येक टच या कीस्ट्रोक के साथ, लाल पाठ दिखाई दे सकता है, जो उनकी प्रविष्टि के साथ एक समस्या की पहचान करता है.
  • कम नेटवर्क ट्रैफ़िक और कम उपयोगकर्ता विलंबता. ऐप में अधिक समस्याओं का पता लगने का अर्थ है कि समस्याओं का पता लगाने और उन्हें हल करने के लिए नेटवर्क पर कम बातचीत होगी। प्रत्येक वार्तालाप में समय लगता है, जिस दौरान उपयोगकर्ता को प्रतीक्षा करनी होगी, उसके बाद ही वह आगे बढ़ सकता है.

Power Apps सत्यापन के लिए दो उपकरण प्रदान करता है:

  • डेटा स्रोत इसके बारे में जानकारी प्रदान कर सकता है, कि मान्य क्या है और क्या नहीं है. उदाहरण के लिए, संख्याओं के न्यूनतम और अधिकतम मान हो सकते हैं, और एक या अधिक प्रविष्टियाँ आवश्यक हो सकती हैं. आप इस जानकारी को DataSourceInfo फ़ंक्शन के साथ एक्सेस कर सकते हैं।
  • Validate फ़ंक्शन एकल कॉलम या संपूर्ण रिकॉर्ड के मान की जांच करने के लिए इसी जानकारी का उपयोग करता है।

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

अब जब आपने अपना रिकॉर्ड सत्यापित कर लिया है, तो उस रिकॉर्ड को पैच से अपडेट करें।

लेकिन, फिर भी समस्या हो सकती है। नेटवर्क डाउन है, सेवा का सत्यापन विफल हो गया है, या उपयोगकर्ता के पास सही अनुमतियाँ नहीं हैं, ये कुछ संभावित त्रुटियाँ हैं जो आपके ऐप में आ सकती हैं। आपके ऐप को त्रुटि स्थितियों पर उचित तरीके से प्रतिक्रिया देनी होगी, उपयोगकर्ता को फीडबैक देना होगा और उन्हें सही करने का साधन उपलब्ध कराना होगा।

जब डेटा स्रोत में त्रुटियाँ होती हैं, तो आपका ऐप स्वचालित रूप से त्रुटि जानकारी रिकॉर्ड करता है और उसे त्रुटियाँ फ़ंक्शन के माध्यम से उपलब्ध कराता है. त्रुटियाँ उन रिकॉर्ड से संबद्ध होती हैं जिनमें समस्याएँ थीं. यदि समस्या ऐसी है जिसे उपयोगकर्ता ठीक कर सकता है, जैसे सत्यापन संबंधी समस्या, तो वे रिकॉर्ड पुनः सबमिट कर सकते हैं, और त्रुटियां दूर हो जाती हैं।

यदि पैच या संग्रह के साथ रिकॉर्ड बनाते समय कोई त्रुटि उत्पन्न होती है, तो किसी भी त्रुटि को संबद्ध करने के लिए कोई रिकॉर्ड नहीं है। इस स्थिति में, blank को Patch द्वारा लौटाया जाता है और इसका उपयोग Errors के लिए रिकॉर्ड तर्क के रूप में किया जा सकता है। निर्माण त्रुटियाँ अगली कार्रवाई के साथ साफ़ कर दी जाती हैं.

त्रुटियाँ फ़ंक्शन त्रुटि जानकारी की एक तालिका लौटाता है। यदि त्रुटि को किसी विशेष स्तंभ पर एट्रिब्यूट किया जा सकता है, तो इस जानकारी में स्तंभ जानकारी शामिल हो सकती है. उन लेबल नियंत्रणों में, जो संपादन स्क्रीन पर स्थित स्तंभ के निकट हैं, स्तंभ-स्तर त्रुटि संदेशों का उपयोग करें. रिकॉर्ड-स्तरीय त्रुटि संदेशों का उपयोग करें, जहां त्रुटि तालिका में कॉलम रिक्त है, जो संपूर्ण रिकॉर्ड के लिए सहेजें बटन के निकट स्थित है।

विशाल डेटा स्रोतों के साथ कार्य करना

जब आप बड़े डेटा स्रोतों (संभवतः लाखों रिकॉर्ड) से रिपोर्ट बनाते हैं, तो आप नेटवर्क ट्रैफ़िक को न्यूनतम करना चाहते हैं। मान लीजिए कि आप न्यूयॉर्क शहर में प्लेटिनम स्टेटस कोड वाले सभी ग्राहकों की रिपोर्ट करना चाहते हैं। आपकी ग्राहक तालिका में लाखों रिकॉर्ड हैं।

आप लाखों ग्राहकों को अपने ऐप में नहीं लाना चाहते, और फिर उनमें से अपनी पसंद के ग्राहकों को चुनना चाहते हैं। यह चयन उस क्लाउड सेवा के अंदर होना चाहिए जहां आपकी तालिका संग्रहीत है, जहां आप चुने गए रिकॉर्ड को नेटवर्क पर भेजते हैं।

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

संग्रह

संग्रह एक विशेष प्रकार का डेटा स्रोत है। वे ऐप के लिए स्थानीय हैं और क्लाउड में किसी सेवा से कनेक्शन द्वारा समर्थित नहीं हैं। इसलिए, जानकारी को एक ही उपयोगकर्ता के लिए विभिन्न डिवाइसों पर या उपयोगकर्ताओं के बीच साझा नहीं किया जा सकता।

संग्रह किसी भी अन्य डेटा स्रोत की तरह काम करते हैं, कुछ अपवादों के साथ:

  • संग्रह को Collect फ़ंक्शन के साथ गतिशील रूप से बनाया जा सकता है. उन्हें समय से आगे स्थापित करने की आवश्यकता नहीं है, जैसा कनेक्शन-आधारित डेटा स्रोत करते हैं.
  • किसी संग्रह के स्तंभों को किसी भी समय Collect फ़ंक्शन का उपयोग करके संशोधित किया जा सकता है।
  • संग्रह डुप्लिकेट रिकॉर्ड की अनुमति देते हैं. एक संग्रह में एक ही रिकॉर्ड की एक से अधिक प्रतिलिपि मौजूद हो सकती है. Remove जैसे फ़ंक्शन, उनके द्वारा पाए गए पहले मिलान पर कार्य करते हैं, जब तक कि All तर्क प्रदान नहीं किया जाता है।
  • आप संग्रह की एक प्रति को सहेजने और पुनः लोड करने के लिए SaveData और LoadData फ़ंक्शन का उपयोग कर सकते हैं। जानकारी ऐसे निजी स्थान पर संग्रहीत होती है जहाँ अन्य उपयोगकर्ता, ऐप्स या डिवाइस पहुँच नहीं सकते.
  • आप संग्रह की एक प्रति को उस फ़ाइल में सहेजने और पुनः लोड करने के लिए निर्यात और आयात नियंत्रणों का उपयोग कर सकते हैं, जिसके साथ उपयोगकर्ता बातचीत कर सकता है।

डेटा स्रोत के रूप में संग्रह के साथ काम करने के बारे में अधिक जानकारी के लिए, संग्रह बनाएँ और अपडेट करें देखें.

संग्रहों का उपयोग सामान्यतः ऐप के लिए ग्लोबल स्थिति होल्ड करने के लिए किया जाता है. स्थिति को प्रबंधित करने के लिए उपलब्ध विकल्पों के लिए चरों के साथ कार्य करना देखें।