पूर्वानुमान ग्रिड में कॉलम हेडर कस्टमाइज़ करें
आप Power Apps कोड घटकों का उपयोग करके पूर्वानुमान ग्रिड में स्तंभ शीर्षलेखों को अनुकूलित कर सकते हैं. उदाहरण के लिए, आप कॉलम नाम का अनुवाद कर सकते हैं या अतिरिक्त संदर्भ के लिए टूलटिप जोड़ सकते हैं।
लाइसेंस और भूमिका आवश्यकताएँ
आवश्यकता का प्रकार | आपको होना आवश्यक है |
---|---|
लाइसेंस | Dynamics 365 Sales प्रीमियम या Dynamics 365 Sales एंटरप्राइज़ अधिक जानकारी: Dynamics 365 Sales मूल्य निर्धारण |
सुरक्षा भूमिकाएँ | सिस्टम प्रशासक या कस्टमाइज़र अधिक जानकारी: बिक्री के लिए पूर्वनिर्धारित सुरक्षा भूमिकाएँ |
हेडर को कैसे अनुकूलित करें
आइये एक उदाहरण से अनुकूलन को समझें। हम पूर्वानुमान ग्रिड में स्तंभ नामों पूर्वानुमान और जीत के लिए फ्रेंच अनुवाद जोड़ेंगे।
-
नाम से
ColumnHeader
कोड घटक बनाएं - संसाधन फ़ाइल बनाएँ और अनुवाद जोड़ें
- मैनिफेस्ट को लागू करें
- घटक तर्क को कार्यान्वित करें
- घटक का निर्माण और पैकेज बनाना
संसाधन फ़ाइल बनाएँ और अनुवाद जोड़ें
कोड घटक बनाने के बाद, आपके द्वारा निर्दिष्ट पथ में ColumnHeader
फ़ोल्डर बनाया जाता है। आइए एक संसाधन फ़ाइल बनाएं और उसमें फ्रेंच अनुवाद जोड़ें।
strings
फ़ोल्डर के अंतर्गतColumnHeader
नाम का एक फ़ोल्डर बनाएँ.निम्नलिखित कोड को एक नई फ़ाइल ColumnHeader.1036.resx में कॉपी करें।
नोट
फ़ाइल नाम में संख्या 1036 फ्रेंच भाषा का कोड है। भाषा कोडों की सूची के लिए, यह आलेख देखें।
<?xml version="1.0" encoding="utf-8"?> <root> <xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata"> <xsd:import namespace="http://www.w3.org/XML/1998/namespace" /> <xsd:element name="root" msdata:IsDataSet="true"> <xsd:complexType> <xsd:choice maxOccurs="unbounded"> <xsd:element name="metadata"> <xsd:complexType> <xsd:sequence> <xsd:element name="value" type="xsd:string" minOccurs="0" /> </xsd:sequence> <xsd:attribute name="name" use="required" type="xsd:string" /> <xsd:attribute name="type" type="xsd:string" /> <xsd:attribute name="mimetype" type="xsd:string" /> <xsd:attribute ref="xml:space" /> </xsd:complexType> </xsd:element> <xsd:element name="assembly"> <xsd:complexType> <xsd:attribute name="alias" type="xsd:string" /> <xsd:attribute name="name" type="xsd:string" /> </xsd:complexType> </xsd:element> <xsd:element name="data"> <xsd:complexType> <xsd:sequence> <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> <xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" /> </xsd:sequence> <xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" /> <xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" /> <xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" /> <xsd:attribute ref="xml:space" /> </xsd:complexType> </xsd:element> <xsd:element name="resheader"> <xsd:complexType> <xsd:sequence> <xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" /> </xsd:sequence> <xsd:attribute name="name" type="xsd:string" use="required" /> </xsd:complexType> </xsd:element> </xsd:choice> </xsd:complexType> </xsd:element> </xsd:schema> <resheader name="resmimetype"> <value>text/microsoft-resx</value> </resheader> <resheader name="version"> <value>2.0</value> </resheader> <resheader name="reader"> <value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> </resheader> <resheader name="writer"> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> </resheader> <data name="Forecast" xml:space="preserve"> <value>Prévision</value> </data> <data name="Won" xml:space="preserve"> <value>Gagné</value> </data> </root>
उपरोक्त कोड नमूने में, पूर्वानुमान और जीत के लिए स्तंभ नामों को नोड में क्रमशः फ्रेंच अनुवादों पूर्वानुमान और गैग्ने
<data>
के साथ ओवरराइड किया गया है।नोट
name
पैरामीटर में, सटीक कॉलम नाम निर्दिष्ट करें जिसे आपने पूर्वानुमान के लेआउट चरण में कॉन्फ़िगर किया है.यदि आप स्तंभ नाम को अतिरिक्त भाषाओं में अनुवादित करना चाहते हैं, तो प्रत्येक भाषा के लिए एक संसाधन फ़ाइल बनाएं जिसमें आप अनुवाद करना चाहते हैं। सुनिश्चित करें कि संसाधन फ़ाइल नाम निम्नलिखित नामकरण पद्धति का उपयोग करता है:
filename.languagecode.resx **Example file name for German:** ColumnHeader.1031.resx
मैनिफेस्ट को लागू करें
इसके बाद, हम उस प्रॉपर्टी को निर्दिष्ट करने के लिए मैनिफ़ेस्ट फ़ाइल को संशोधित करेंगे जिसे हम ओवरराइड कर रहे हैं। हमारे उदाहरण में, हम ColumnName
प्रॉपर्टी को ओवरराइड कर रहे हैं. हम उस संसाधन फ़ाइल का पथ भी निर्दिष्ट करेंगे जिसमें अनुवादित पाठ शामिल है।
ControlManifest.Input.XML
फ़ाइल खोलें.property
नोड को खोजें और इसे निम्नलिखित कोड से बदलें:<property name="columnName" display-name-key="Property_Display_Key" description-key="Property_Desc_Key" of-type="SingleLine.Text" usage="bound" required="true" />
फ़्रेंच अनुवादों को शामिल करने वाली संसाधन फ़ाइल का पथ निर्दिष्ट करने के लिए
<resources>
नोड को अद्यतन करें:<resources> <code path="index.ts" order="1"/> <!-- UNCOMMENT TO ADD MORE RESOURCES <css path="css/ColumnHeader.css" order="1" /> --> <resx path="strings/ColumnHeader.1036.resx" version="1.0.0" /> </resources>
<resx path>
नोड में संसाधन फ़ाइल पथ होता है। पिछले कोड नमूने में, हमने फ्रेंच भाषा के लिए संसाधन फ़ाइल जोड़ी है। यदि आपके पास अन्य भाषाओं के लिए अनुवाद हैं, तो उन भाषाओं के लिए भी संसाधन फ़ाइल पथ जोड़ें।
घटक तर्क को कार्यान्वित करें
आइए index.ts
फ़ाइल में घटक तर्क को लागू करने के लिए कोड जोड़ें।
index.ts
फ़ाइल खोलें.updateView
विधि में निम्नलिखित पंक्तियाँ जोड़ें:public updateView(context: ComponentFramework.Context<IInputs>): void { // Add code to update control view const colName = (context.parameters.columnName && context.parameters.columnName.raw) || ""; this._container.innerHTML = context.resources.getString(colName); }