GUID फ़ंक्शन
इस पर लागू होता है: कैनवास ऐप्स
डेस्कटॉप प्रवाह
मॉडल-संचालित ऐप्स
Power Platform CLI
GUID (ग्लोबली-युनीक आइडेंटिफ़ायर) स्ट्रिंग को GUID मान में रूपांतरित करता है या एक नया GUID मान बनाता है.
वर्णन
GUID का उपयोग एक ऐसे स्ट्रिंग को रूपांतरित करने के लिए करें, जो GUID मान में GUID की हेक्साडेसिमल प्रस्तुति शामिल करता है, जिसे एक डेटाबेस पर पास किया जा सकता है. Microsoft Dataverse और SQL Server जैसे डेटाबेस सिस्टम द्वारा GUID मानों का उपयोग कुंजियों के रूप में किया जाता है.
पास किए गए स्ट्रिंग में अपरकेस या लोअरकेस अक्षर हो सकते हैं, लेकिन वह इनमें से किसी भी स्वरूप में 32 हेक्साडेसिमल अंक होना चाहिए:
- "123e4567-e89b-12d3-a456-426655440000" (मानक स्थानों में हाइफ़न)
- "123e4567e89b12d3a456426655440000" (कोई हाइफ़न नहीं)
यदि आप कोई तर्क निर्दिष्ट नहीं करते हैं, तो यह फ़ंक्शन एक नया GUID बनाता है.
GUID मान को स्ट्रिंग में रूपांतरित करने के लिए, बस उसका उपयोग स्ट्रिंग संदर्भ में करें. GUID मान को हेक्साडेसिमल प्रस्तुति स्ट्रिंग में हायफ़न और लोअरकेस अक्षरों के साथ रूपांतरित किया जाएगा.
नया GUID बनाते समय, यह फ़ंक्शन संस्करण 4 IETF RFC 4122 GUID बनाने के लिए स्यूडो-रैन्डम संख्याओं का उपयोग करता है. किसी स्ट्रिंग को GUID में रूपांतरित करते समय, यह फ़ंक्शन 32 हेक्साडेसिमल अंकों के किसी भी स्ट्रिंग को स्वीकार करके किसी भी GUID संस्करण का समर्थन करता है.
अस्थिर फ़ंक्शन
GUID एक अस्थिर फ़ंक्शन है जब इसे बिना किसी तर्क के प्रयोग किया जाता है। हर बार जब फ़ंक्शन का मूल्यांकन किया जाता है, तो यह एक अलग मान देता है.
डेटा-फ़्लो सूत्र में उपयोग किए जाने पर, अस्थिर फ़ंक्शन केवल तब एक भिन्न मान देगा, जब वह जिस सूत्र में दिखाई देता है, उसका पुनर्मूल्यांकन किया गया हो. यदि सूत्र में और कुछ नहीं बदलता है, तो आपके ऐप के निष्पादन के दौरान उसका समान मान होगा.
उदाहरण के लिए, एक लेबल नियंत्रण, जिसके लिए पाठ मान को GUID() पर सेट किया गया है, वह आपके ऐप के सक्रिय होने के दौरान बदलेगा नहीं. केवल ऐप को बंद करने और फिर से खोलने के परिणामस्वरूप एक अलग मान मिलता है.
यदि फ़ंक्शन किसी ऐसे सूत्र का भाग है, जिसमें कुछ और बदला गया है, तो फ़ंक्शन का फिर से मूल्यांकन किया जाएगा. उदाहरण के लिए, यदि हम लेबल के पाठ गुण को इस सूत्र पर सेट करते हैं, तो उपयोगकर्ता द्वारा हर बार पाठ इनपुट नियंत्रण का मान बदलने पर एक GUID जनरेट होता है:
TextInput1.Text & " " & GUID()
व्यवहार सूत्र में उपयोग किए जाने पर, जब भी सूत्र का मूल्यांकन किया जाएगा, तो GUID का हर बार मूल्यांकन किया जाएगा. अधिक जानकारी के लिए, इस विषय में आगे दिए गए उदाहरण देखें.
सिंटैक्स
GUID( [ GUIDString ] )
- GUIDString – वैकल्पिक. एक पाठ स्ट्रिंग, जिसमें GUID की हेक्साडेसिमल प्रस्तुति शामिल है. यदि कोई स्ट्रिंग नहीं दिया गया है, तो एक नया GUID बनाया जाता है.
GUID( अलिखित )
- अलिखित - आवश्यक. अनटाइप्ड ऑब्जेक्ट जो GUID का प्रतिनिधित्व करता है. स्वीकार्य मान अनटाइप्ड प्रदाता पर निर्भर हैं। JSON के लिए, बिना टाइप की गई वस्तु को GUID के रूप में JSON स्ट्रिंग के रूप में दर्शाया जाना अपेक्षित है.
उदाहरण
मूल उपयोग
हेक्साडेसिमल स्ट्रिंग प्रस्तुति के आधार पर GUID मान देने के लिए:
GUID( "0f8fad5b-d9cb-469f-a165-70867728950e" )
आप बिना हायफ़न के भी GUID स्ट्रिंग प्रदान कर सकते हैं. यह सूत्र समान GUID देता है:
GUID( "0f8fad5bd9cb469fa16570867728950e" )
इस संदर्भ में उपयोग किया जाता है, नए डेटाबेस रिकॉर्ड की स्थिति फ़ील्ड को अच्छे से स्थापित मान पर सेट करने के लिए:
Patch( Products, Default( Products ), { Status: GUID( "F9168C5E-CEB2-4faa-B6BF-329BF39FA1E4" ) } )
आप शायद अपने उपयोगकर्ताओं को GUID नहीं दिखाना चाहते हैं, लेकिन GUID आपके ऐप को डीबग करने में आपकी मदद कर सकते हैं. उस रिकॉर्ड में स्थिति फ़ील्ड का मान दिखाने के लिए, जो आपने पिछले उदाहरण में बनाया था, लेबल नियंत्रण के पाठ गुण को इस सूत्र पर सेट करें.
First( Products ).Status
लेबल नियंत्रण f9168c5e-ceb2-4faa-b6bf-329bf39fa1e4 दिखाएगा.
GUID की एक तालिका बनाएँ
बटन नियंत्रण के OnSelect गुण को इस सूत्र पर सेट करें:
ClearCollect( NewGUIDs, ForAll( Sequence(5), GUID() ) )
यह सूत्र एकल-स्तंभ तालिका बनाता है, जिसका उपयोग पाँच बार पुनरावृत्ति करने के लिए किया जाता है, जिसके परिणामस्वरूप पाँच GUID बनते हैं.
एक डेटा तालिका नियंत्रण जोड़ें, उसके आइटम गुण को NewGUIDs पर सेट करें और मान फ़ील्ड दिखाएँ.
Alt कुंजी को दबाए रखते हुए, बटन पर क्लिक करके या टैप करके उसे चुनें.
डेटा तालिका GUID की सूची दिखाती है:
GUID की एक अलग सूची दिखाने के लिए फिर से बटन का चयन करें:
तालिका के बजाय एकल GUID जनरेट करने के लिए, इस सूत्र का उपयोग करें:
Set( NewGUID, GUID() )