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


कैनवास अनुप्रयोग में एक ऑर्डर गैलरी बनाएं

नॉर्थविंड ट्रेडर्स डेटाबेस में काल्पनिक डेटा के प्रबंधन के लिए कैनवास अनुप्रयोग में ऑर्डर गैलरी बनाने के लिए निर्देशों का चरण-दर-चरण पालन करें. यह विषय एक श्रृंखला का हिस्सा है, जो बताती है कि Microsoft Dataverse में संबंधित डेटा पर व्यावसायिक अनुप्रयोग कैसे बनाया जाए. सबसे बेहतरीन परिणामों के लिए, इस क्रम में इन विषयों की खोज करें:

  1. एक ऑर्डर गैलरी बनाएँ (यह विषय).
  2. एक सारांश प्रपत्र बनाएँ.
  3. एक विस्तृत गैलरी बनाएं.

स्क्रीन क्षेत्रों की परिभाषा.

पूर्वावश्यकताएँ

एक रिक्त अनुप्रयोग बनाएँ

एक खाली कैनवास ऐप बनाएं और उसे "माई नॉर्थविंड ऑर्डर्स (कैनवास ऐप)" जैसा नाम दें।

डेटा जोड़ें

  1. बाएँ फलक पर, डेटा>डेटा जोड़ें> खोजें का चयन करें, और ऑर्डर तालिका का चयन करें.

    दृश्य, डेटा स्त्रोत, डेटा स्त्रोत जोड़ें चुनें.

    ऑर्डर तालिका में विभिन्न प्रकार के कई फ़ील्ड शामिल हैं:

    ऑर्डर तालिका में फ़ील्ड की सूची.

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

  2. चूंकि हम आगे स्क्रीन और नियंत्रणों के साथ काम करेंगे, इसलिए Power Apps Studio तीन स्टैक्ड स्क्वायर आइकन दबाकर बाईं ओर ट्री व्यू पर वापस जाएं। आप किसी भी समय सिलेंडर आइकन दबाकर डेटा स्रोतों पर वापस लौट सकते हैं।

  1. सम्मिलित करें टैब पर, गैलरी>खाली लंबवत चुनें, ताकि गैलरी नियंत्रण जोड़ा जा सके, जो ऑर्डर दिखाएगा।

    सम्मिलित करें, गैलरी, रिक्त ऊर्ध्वाधर।

    नियंत्रण को कैनवास पर लगाया जाएगा और एक फ्लाई आउट संवाद दिखेगा, जो पूछेगा कि किस डेटा स्रोत से कनेक्ट करना है.

  2. हम इसे सीधे ऑर्डर्स से जोड़ सकते हैं, लेकिन इसके बजाय हम गैलरी के सॉर्ट क्रम को नियंत्रित करना चाहेंगे। फ्लाई आउट संवाद को अनदेखा करें और सूत्र पट्टी में गैलरी के आइटम गुण को इस सूत्र पर सेट करें:

    Sort( Orders, 'Order Number', Descending )
    

    Sort फ़ंक्शन सूची को इस प्रकार क्रमबद्ध करता है कि सबसे नया क्रम (जिसमें सबसे अधिक क्रम संख्या होती है) पहले दिखाई देता है।

    गैलरी में ऑर्डर को क्रमबद्ध करें.

  3. कुछ क्षणों के बाद परिणाम दृश्य सूत्र पट्टी के नीचे दिखाई देगा. हमारे सूत्र का परिणाम देखने के लिए बाईं ओर के तीर को नीचे की तरफ खींचें. ऑर्डर नंबर कॉलम देखने के लिए दाईं ओर स्क्रॉल करें और सुनिश्चित करें कि यह वांछित तरीके से क्रमबद्ध है (उच्चतम से निम्नतम)।

    गैलरी की आइटम संपत्ति सेट करें.

  4. दाएँ किनारे के पास गुण टैब में, लेआउट सूची खोलें:

    लेआउट विकल्पों की सूची.

  5. विकल्पों की सूची में, शीर्षक और उपशीर्षक चुनें:

    एक लेआउट चुनें.

    गैलरी के टेम्प्लेट में दो लेबल नियंत्रण जोड़े गए हैं. डिफ़ॉल्ट रूप से, ये नियंत्रण ऑर्डर तालिका के दो कॉलम दिखाते हैं, जिन्हें आप आगे बदलेंगे। गैलरी के टेम्पलेट को तालिका में प्रत्येक रिकॉर्ड के लिए लंबवत रूप से दोहराया जाता है.

  6. दाएँ किनारे के पास गुण टैब में संपादित करें ( फ़ील्ड के बगल में) का चयन करें.

    फ़ील्ड अपडेट करने के लिए संपादित करें का चयन करें.

  7. डेटा फलक में, शीर्षक1 चुनें (या गैलरी के टेम्पलेट में ऊपरी लेबल का चयन करें).

  8. सूत्र पट्टी में, लेबल के टेक्स्ट गुण को इस अभिव्यक्ति पर सेट करें:

    "Order " & ThisItem.'Order Number'
    

    शीर्षक लेबल का टेक्स्ट गुण सेट करें.

    प्रत्येक गैलरी आइटम के सबसे ऊपर ऑर्डर संख्या दिखाई देती है. गैलरी टेम्पलेट में, ThisItem , Order तालिका में सभी फ़ील्ड तक पहुंच प्रदान करता है.

  9. डेटा पैन में, उपशीर्षक1 चुनें (या गैलरी के टेम्पलेट में निचला लेबल चुनें):

    उपशीर्षक लेबल का चयन करें.

  10. सूत्र पट्टी में, लेबल के टेक्स्ट गुण को इस अभिव्यक्ति पर सेट करें:

    ThisItem.Customer.Company
    

    उपशीर्षक लेबल का टेक्स्ट गुण सेट करें.

    आपके द्वारा यह सूत्र दर्ज करने के बाद, यह एक पल के लिए लाल टेढ़ी-मेढ़ी त्रुटि दिखा सकता है. यदि आप सूत्र पट्टी के बाहर कुछ भी चुनते हैं तो त्रुटि स्पष्ट होनी चाहिए और फिर कर्सर को सूत्र पट्टी पर लौटाएं. यदि त्रुटि बनी रहती है या आपको कोई मान दिखाई नहीं देता है, तो दृश्य टैब का चयन करें, डेटा स्रोत का चयन करें, और फिर डेटा-स्रोत नाम के दाईं ओर एलिप्सिस (...) का चयन करके ऑर्डर तालिका को ताज़ा करें।

    जब आप ThisItem.Customer निर्दिष्ट करते हैं, तो आप Orders और Customers तालिकाओं के बीच अनेक-से-एक संबंध का लाभ उठा रहे हैं और प्रत्येक ऑर्डर के साथ संबद्ध ग्राहक रिकॉर्ड को पुनः प्राप्त कर रहे हैं। ग्राहक रिकॉर्ड से, आप प्रदर्शन के लिए कंपनी कॉलम में डेटा निकाल रहे हैं।

    आप ऑर्डर तालिका से लेकर ग्राहक तालिका सहित अन्य तालिकाओं में सभी संबंध दिखा सकते हैं:

    संबंधों के सूची.

  11. ऊपरी-दाएँ कोने में बंद करें आइकन (x) का चयन करके डेटा पैन को बंद करें।

प्रत्येक आदेश की स्थिति दिखाएं

इस प्रक्रिया में, आप एक लेबल के लिए गैलरी में स्थान जोड़ेंगे और डेटा के आधार पर प्रत्येक ऑर्डर की स्थिति एक अलग रंग में दिखाने के लिए इसे कॉन्फ़िगर करेंगे.

  1. गैलरी के टेम्प्लेट में, पहले लेबल की चौड़ाई कम करें, Title1:

    गैलरी के टेम्पलेट में Title1.

  2. दूसरे लेबल, उपशीर्षक1 के साथ पिछले चरण को दोहराएं:

    गैलरी के टेम्पलेट में उपशीर्षक1.

  3. गैलरी टेम्पलेट (या टेम्पलेट में नियंत्रण) चयनित होने पर, सम्मिलित करें टैब पर लेबल चुनें:

    एक लेबल जोड़ें.

  4. नए लेबल को Title1 लेबल के दाईं ओर ले जाएँ:

    किसी लेबल को स्थानांतरित करें और उसका आकार बदलें.

  5. नए लेबल के टेक्स्ट गुण को इस अभिव्यक्ति पर सेट करें:

    ThisItem.'Order Status'
    

    टेक्स्ट गुण सेट करें.

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

    आदेश स्थिति विकल्प.

    एक सेट के प्रत्येक विकल्प में एक नाम होता है यदि आप इसे किसी लेबल में दिखाते हैं तो यह दिखाई देता है. इन नामों को स्थानीयकृत किया जा सकता है, और ऐप एक ही विकल्प को पहचानता है चाहे एक अंग्रेजी उपयोगकर्ता Apple का चयन करता है, एक फ्रांसीसी उपयोगकर्ता Pomme का चयन करता है, या एक स्पेनिश उपयोगकर्ता Manzana का चयन करता है। इस कारण से, आप एक सूत्र नहीं बना सकते हैं जो एक विकल्प के लिए हार्ड-कोडेड स्ट्रिंग पर निर्भर करता है, क्योंकि यह विषय बाद में दिखता है.

    सूत्रों में, आपको ऑर्डर स्थिति को एकल उद्धरण चिह्नों से घेरना होगा क्योंकि इसमें एक स्थान होता है। हालाँकि, वह नाम उसी तरह कार्य करता है जैसे Power Apps में कोई अन्य नाम, जैसे ग्राहक या कंपनी , करता है।

  6. होम टैब पर, स्थिति लेबल का फ़ॉन्ट आकार 20 पॉइंट तक बढ़ाएँ, और पाठ को दाईं ओर संरेखित करें:

    फ़ॉन्ट का आकार और संरेखण बदलें.

  7. सूत्र पट्टी में, स्थिति लेबल के रंग गुण को इस सूत्र पर सेट करें:

    Switch( ThisItem.'Order Status',
        'Orders Status'.Closed, Green,
        'Orders Status'.New, Black,
        'Orders Status'.Invoiced, Blue,
        'Orders Status'.Shipped, Purple
    )
    

    स्थिति लेबल का रंग गुण सेट करें.

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

    इस सूत्र के जगह पर होने के साथ, अलग-अलग स्थिति मान अलग-अलग रंगों में दिखाई देते हैं, जैसा कि पिछले ग्राफिक दिखाते हैं.

प्रत्येक ऑर्डर का कुल प्रदर्शन करें

  1. गैलरी में पहला आइटम चुनें, जो गैलरी का टेम्पलेट है:

    गैलरी टेम्पलेट का चयन करें.

  2. सम्मिलित करें टैब पर, एक और लेबल जोड़ने के लिए लेबल चुनें:

    एक और लेबल जोड़ें.

  3. नए लेबल को स्थानांतरित करें ताकि यह स्थिति लेबल के नीचे दिखाई दे:

    नए लेबल का आकार बदलें और उसे स्थानांतरित करें.

  4. सूत्र पट्टी में, नए लेबल के टेक्स्ट गुण को इस सूत्र पर सेट करें:

    Text( Sum( ThisItem.'Order Details', Quantity * 'Unit Price' ), "[$-en-US]$ #,###.00" )
    

    किसी ऑर्डर की कुल लागत की गणना करने का सूत्र.

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

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

    इस सूत्र में Text फ़ंक्शन एक मुद्रा प्रतीक जोड़ता है और परिणाम को हजारों और दशमलव विभाजकों के साथ स्वरूपित करता है। जैसा कि लिखा गया है, सूत्र में अमेरिकी अंग्रेजी के लिए भाषा टैग ([$-en-US]) और एक डॉलर प्रतीक ($) शामिल है। यदि आप भाषा का टैग हटाते हैं, तो इसे आपकी भाषा सेटिंग के आधार पर बदल दिया जाएगा और लेबल उस टैग के लिए उपयुक्त प्रारूप दिखाएगा. यदि आप डॉलर का प्रतीक छोड़ते हैं, तो लेबल उपयोगकर्ता की सेटिंग के आधार पर उपयुक्त मुद्रा प्रतीक दिखाएगा. हालांकि, आप अपने द्वारा पसंद किए जाने वाले डॉलर के चिन्ह को बदलकर एक अलग प्रतीक दिखाने के लिए बाध्य कर सकते हैं.

  5. होम टैब पर, नवीनतम लेबल का फ़ॉन्ट आकार 20 पॉइंट में बदलें, और इसके पाठ को दाईं ओर संरेखित करें:

    किसी लेबल का फ़ॉन्ट आकार और संरेखण बदलें.

  6. गैलरी को स्क्रीन के बाएं किनारे पर ले जाएं, और कुछ स्थान को सीमित करने के लिए गैलरी की चौड़ाई कम करें.

  7. गैलरी की ऊंचाई इतनी बढ़ाएं कि वह लगभग स्क्रीन के जितनी ऊंची हो जाए, लेकिन शीर्षक बार के लिए ऊपर थोड़ी जगह छोड़ दें, जिसे आप अगले विषय की शुरुआत में जोड़ेंगे:

    गैलरी को स्थानांतरित करें और उसका आकार बदलें.

सारांश

संक्षेप में दुहराने के लिए, आपने आदेश गैलरी को जोड़कर सिंगल-स्क्रीन कैनवास अनुप्रयोग बनाना शुरू किया, जिसमें ये तत्व शामिल हैं:

  • ऑर्डर संख्या दिखाने के लिए एक अभिव्यक्ति: "Orders " & ThisItem.OrderNumber
  • अनेक-से-एक संबंध में एक क्षेत्र: ThisItem.Customer.Company
  • एक लेबल जो किसी सेट में किसी विकल्प का नाम दिखाता है: ThisItem.'Order Status'
  • एक लेबल जो सेट में दिखाए गए विकल्प के आधार पर प्रारूप बदलता है: Switch( ThisItem.'Order Status', 'Orders Status'.Closed, Green, ...
  • एक-से-अनेक संबंध पर एक जटिल समग्र फ़ंक्शन: Sum( ThisItem.'Order Details', Quantity * 'Unit Price' )

अगला विषय

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