Есть необходимость поменять значение в HeaderCaption в карточке записи (FormPage) в Freedom UI.
Но именно не на константное значение, которое может быть указано в локализованных строках, а на значение числовой колонки текущей записи.
Если что я имею ввиду именно Page Title
Пробовал в коде страницы, через операцию merge в секции viewConfigDiff, в таком виде
{
"operation": "merge",
"name": "PageHeader",
"values": {
"caption": "#ResourceString(NumberAttribute_2cnaww2)#",
}
}
Но не помогло
Также в секции handlers в методе для запроса crt.HandleViewModelInitRequest пытался указать явное значение для локализованной строки и указать эту строку в свойстве caption, но не помогало
Может есть какой-то правильный способ указания HeaderCaption на странице, где именно нужно указать значения поле (не name). Поле является числом. Может кто знает и может помочь?
Нравится
Добрый день Павел,
Самый простой вариант это изменить колонку, которая является Displayed value в настройках объекта, по которому отображается страница:
Тогда в page title автоматически будет отображаться значение из этой колонки (динамически даже после изменения значения на странице, оно будет подтягиваться в заголовок). Но тут есть один ньюанс: в данном свойстве можно выбрать колонки только текстового типа, числовой тип тут указать нельзя. Поэтому можно поробовать такой подход:
1) Создать текстовую колонку, которую выбрать в свойстве displayed value
2) На странице задать логику, что при изменении значения в числовой колонке будет еще записывать это же значение в текстовую колонку с п.1
3) Вывести на страницу текстовую колонку с п.1, но скрыть ее.
В теории так тоже будет работать, но нужно проверить.
Спасибо, как раз такое сделал и помогло. Создал новую колонку, придал ей строковый тип, перенёс данные из числовой колонки в строковую с конвертацией, числовую удалил. Строковую новую колонку назначил displayValue и всё заработало как нужно