Создание настраиваемых полей и работа с ними
В то время как имеется обширный набор готовых полей для управления широким диапазоном бизнес-процессов, иногда компании требуется отслеживать дополнительную информацию в системе. Хотя программисты могут добавить эти поля в качестве расширений в средствах разработчика, функция настраиваемых полей позволяет добавлять поля непосредственно из интерфейса пользователя, позволяя адаптировать приложение в соответствие с вашим предприятием с помощью веб-браузера.
Доступ к этой функции имеют только пользователи со специальными разрешениями.
Это видео показывает, насколько просто можно добавить настраиваемое поле на страницу: Добавление настраиваемых полей.
Создание пользовательских полей
Определив дополнительную информацию для отслеживания в приложении, можно создать настраиваемое поле в соответствующей таблице и отобразить это новое поле на странице.
Следующие шаги описывают процесс создания настраиваемого поля и размещения этого поля на странице.
Перейдите на страницу, в которой требуется новое поле.
Поскольку конечной целью является размещение настраиваемого поля в форме, точка входа для создания настраиваемых полей существует внутри персонализации. Откройте панель инструментов персонализации, выбрав Параметры, а затем Персонализировать эту форму.
Щелкните Вставить и затем Поле.
Выберите область формы, в которой требуется разместить новое поле. После выбора в диалоговом окне Вставка полей будет выведен список имеющихся полей, которые могут быть вставлены в выбранной области страницы.
Убедитесь, что поле, которое вам требуется, отсутствует в списке. Если оно присутствует, можно просто выбрать поле в списке и нажать кнопку Вставить.
Нажмите кнопку Создать новое поле над списком, чтобы инициировать процесс создания настраиваемого поля. При этом откроется диалоговое окно Создать новое поле.
Если вы не видите кнопку Создать новое поле, у вас нет необходимых разрешений для использования этой функции.
В диалоговом окне Создать новое поле укажите следующие сведения.
Выберите таблицу базы данных, в которую необходимо добавить это поле. Обратите внимание, что только те таблицы, которые поддерживают настраиваемые поля, будут отображаться в раскрывающемся списке. Технические сведения о поддерживаемых таблицах см. в приведенном ниже разделе.
Выберите тип данных для нового поля. Доступные типы данных: флажок, дата, дата и время, десятичное число, число, список выбора и текст.
- Если выбран текстовый тип данных, можно также указать максимальную длину текста, который можно ввести в это поле.
- Если выбран тип данных "Список выбора", можно также выбрать набор допустимых значений для поля.
Укажите имя, метку и текст справки для поля. Имя соответствует физическому имени поля в базе данных, тогда как метка и текст справки представляют собой текст, используемый для представления этого поля в интерфейсе пользователя.
Если это единственное поле, которое требуется создать для этой страницы, нажмите кнопку Сохранить. Если необходимо создать дополнительные поля, щелкните Сохранить и создать и вернитесь к шагу 7.
Примечание
В настоящее время имеется ограничение в 20 настраиваемых полей на таблицу.
- При закрытии диалогового окна Создать новое поле производится возврат в диалоговое окно Вставка полей. Все пользовательские поля, которые только что были добавлены, автоматически помечаются в списке полей для вставки на страницу.
- Щелкните Вставить для вставки отмеченных полей в выбранную область страницы.
- Не обязательно: включите режим переноса с панели инструментов персонализации, чтобы переместить новые поля в нужное им место в выбранной области. Дополнительные сведения о том, как использовать различные возможности персонализации для оптимизации формы для личного использования см. в разделе Персонализация пользовательского интерфейса.
Предупреждение
Возможность ввода значений в настраиваемое поле, добавляемое на страницу, зависит от того, является ли таблица, связанная с настраиваемым полем, редактируемой или доступной только для чтения. Если связанная таблица доступна только для чтения, все поля, связанные с этой таблицей, включая все настраиваемые поля, также будут доступны только для чтения.
Совместное использование настраиваемых полей с другими пользователями
После создания настраиваемого поля и размещении его на странице может потребоваться предоставить это обновленное представление страницы, содержащее новое поле, другим пользователям в системе. Это можно сделать двумя разными способами с помощью функций персонализации продукта:
- Рекомендуемый маршрут заключается в публикации сохраненного представления с пользовательским полем, добавляемым на страницу, для соответствующего набора пользователей. Если функция сохраненных представлений не включена, системный администратор может применить персонализацию к нужным пользователям со страницы Персонализация. Дополнительные сведения см. в разделе Персонализация работы пользователей.
- Кроме того, можно экспортировать изменения (называемые персонализациями), отправить их одному или нескольким пользователям, и каждый из этих пользователей может импортировать изменения. Параметр Управление на панели инструментов персонализации позволяет экспортировать и импортировать персонализации.
Управление пользовательскими полями
Управлять всеми настраиваемыми полями можно на странице Пользовательские поля в модуле "Администрирование системы". Эта страница обеспечивает пользователям доступ к многим возможностям, включая:
- Просмотр списка всех настраиваемых полей в системе.
- Ограниченные возможности редактирования существующих настраиваемых полей.
- Удаление пользовательских полей.
- Предоставление настраиваемых полей для информационных объектов.
- Предоставляет переводы меток настраиваемых полей и текста справки.
Просмотр всех настраиваемых полей
Страница Пользовательские поля обеспечивает видимость всех пользовательских полей, которые были определены в системе. Выберите таблицу, которая вам интересна, и страница обновляется, чтобы отобразить список пользовательских полей, связанных с этой таблицей. Если выбрать пользовательское поле в списке, можно просмотреть все сведения о поле.
Редактирование пользовательских полей
После создания пользовательского поля можно изменить только определенные части информации о пользовательском поле на странице Пользовательские поля.
Вы можете изменять следующие атрибуты:
- Этикетка
- Текст справки
- Длина для текстовых полей
Вы не можете изменять следующее атрибуты:
- Имя поля
- Тип данных
Кроме того, для полей списка выбора можно изменить порядок в наборе допустимых значений для настраиваемого поля и добавить новые значения; однако невозможно удалить существующие значения для поля списка выбора. Щелкните Применить изменить после завершения редактирования полей для конкретной таблицы, чтобы изменения были сохранены.
Предоставление пользовательских полей для информационных объектов
Также может быть важно разрешить, чтобы пользовательские поля были видимы в информационных объектах. Информационные объекты используются в функции Обзор интеграции с Office, и для сценариев импорта и экспорта данных.
Выполните следующие действия, чтобы отображение пользовательского поля для информационного объекта.
- Выберите пользовательское поле на странице Пользовательские поля.
- Разверните раздел Объекты, чтобы просмотреть набор соответствующих объектов.
- Нажмите кнопку Правка.
- Измените поле Включено, которое должно быть выбрано для каждого объекта, который должен отображать это поле.
- Щелкните Применить изменение для сохранения выбранных значений.
Разрешение отображения пользовательских полей на других языках
Так как доступ к пользовательским полям может потребоваться пользователям на различных языках, страница Пользовательские поля предоставляет механизм, позволяющий переводить метки и текст справки для пользовательского поля на другие языки.
Следующие шаги описывают процесс перевода пользовательских полей на другие языки:
Выберите пользовательское поле на странице Пользовательские поля.
Выберите кнопку Переводы в области действий. Откроется раскрывающееся меню, содержащее существующие переводы для этого поля.
В раскрывающемся меню Язык отображается набор языков, для которых уже были предоставлены переводы.
Если требуется изменить существующий перевод, выберите язык в меню и измените значения для метки и текста справки.
В противном случае нажмите кнопку Добавить язык, выберите нужный язык в меню и укажите переведенные значения метки и текста справки.
После завершения щелкните ОК.
Удаление пользовательских полей
Когда вы решите, что пользовательское поле больше не требуется, системный администратор может удалить поле со страницы Пользовательские поля. Чтобы удалить пользовательское поле, выберите поле для удаления, щелкните Удалить, щелкните Да, чтобы подтвердить удаление, и снова щелкните Применить изменения.
Примечание
Это действие не может быть отменено и приведет к окончательному удалению данных, связанных с полем, из базы данных.
Приложение
Почему я не могу ввести значение в настраиваемое поле?
Если не удается ввести значение в настраиваемое поле, когда страница находится в режиме Изменить, это может быть связано с тем, что таблица, к которой было добавлено поле, в настоящее время доступна только для чтения. Все поля в таблице становятся доступным только для чтения, если лежащая в основе таблица настроена как только для чтения на странице.
Кто может создавать пользовательские поля?
Только системные администраторы могут создавать пользовательские поля. Однако если это необходимо для организации, избранным опытным пользователям могут быть заданы права для создания настраиваемых полей системным администратором с помощью роли безопасности Опытные пользователи для настройки во время выполнения. Пользователи, не имеющие этой роли безопасности, не смогут создавать настраиваемые поля, но по-прежнему смогут видеть и взаимодействовать с настраиваемыми полями, добавленными другими пользователями в систему.
Какие таблицы поддерживают пользовательские поля?
Для причинам производительности и техническим причинам только таблицы, которые удовлетворяют следующим условиям, в настоящее время допускают добавление пользовательских полей.
Таблица должна быть маркирована как одна из следующих групп:
- Групповое
- WorksheetHeader
- Основная
- Разное
- Параметр
- Справка
- TransactionHeader
Таблица не может расширять другую таблицу.
Таблица не может быть отмечена как системная таблица.
Таблица не может быть временной таблицей.
Можно ли ссылаться на настраиваемые поля в средствах разработчика?
Настраиваемые поля могут управляться только через интерфейс пользователя и не могут быть вызваны с помощью кода.
Могу ли я перенести настраиваемое поле в таблицу как поле расширения, сохранив значения?
Данные настраиваемых полей можно перенести в таблицу как поля расширения. Чтобы использовать пользовательские X++ скрипты, чтобы получить и сопоставить соответствующие данные из настраиваемого поля, выполните следующие действия:
- Получите имя пользовательского поля.
- Используйте метод
.getFieldValue(_fieldName)
для получения значения в исходной таблице.
Вы можете использовать TableExtensionManagerFactory::CreateExtensionManager()
менеджер расширений для создания .GetRuntimeExtension(_tableName, SysCustomFieldConstants::ExtensionName)
объекта сборки расширения на библиотеку Microsoft.Dynamics.Ax.Xpp.MetadataExtensions, чтобы получить дополнительные сведения о типе/метаданных поля расширения.
Примечание
Исключите записи со значениями по умолчанию из вашего запроса при переносе данных для всех записей между настраиваемым полем и новым полем расширения. Используйте оператор обновления платформы SysDa для повышения производительности.
Как можно перемещать настраиваемые поля между средами?
Текущая рекомендация для перемещения настраиваемых полей между средами состоит в повторном создании вручную пользовательских полей в целевой среде. Чтобы просмотреть полный список пользовательских полей в конкретной таблице:
- Перейдите на страницу Пользовательские поля, выберите эту таблицу из раскрывающегося списка.
- В целевой среде выполните процедуру, описанную ранее в этой статье, чтобы повторно создать каждое поле.
- После создания всех полей щелкните Применить изменения.
- Переместите все личные настройки, содержащие настраиваемые поля, путем экспортирования личных настроек из исходной среды и импортирования их в целевую среду.