Настроювання заголовків стовпців у сітці прогнозу
Ви можете налаштувати заголовки стовпців у сітці прогнозу за допомогою Power Apps компонентів коду. Наприклад, ви можете перекласти назву стовпчика або додати підказку для додаткового контексту.
Вимоги до ліцензії та посади
Тип вимоги | Ви повинні мати |
---|---|
Ліцензія | Dynamics 365 Sales Premium або Dynamics 365 Sales Enterprise Додаткові відомості: Ціни на продажі Dynamics 365 |
Ролі безпеки | Системний адміністратор або настроювач Додаткові відомості: Попередньо визначені ролі безпеки для відділу продажів |
Як налаштувати шапку
Давайте розберемося в налаштуваннях на прикладі. Ми додамо французький переклад для назв стовпців Forecast і Won у сітку прогнозів.
- Створіть компонент коду з ім’ям
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>
У наведеному вище прикладі коду назви стовпців для Forecast і Won перевизначені французькими перекладами Prévision і Gagné відповідно у
<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); }
Наступні кроки
Зворотний зв’язок
https://aka.ms/ContentUserFeedback.
Очікується незабаром: протягом 2024 року ми будемо припиняти використання механізму реєстрації проблем у GitHub для зворотного зв’язку щодо вмісту й замінювати його новою системою зворотного зв’язку. Докладніше:Надіслати й переглянути відгук про