Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
16 фев 2026, 13:01

условное оформление в мобилке

Автор sali, 09 янв 2026, 14:07

0 Пользователей и 1 гость просматривают эту тему.

sali

в мобильном приложении есть обработка, в ней тч. суть:
в тч отображаются склады, нажимаешь на склад, появляется кнопка по которой можно создать документ со складом на который нажал

проблема в том что что это мобилка, пытаюсь сделать еще условное оформление, чтобы выбранный склад закрашивался в какой-то цвет для видимости
делаю в процедуре при активизации строки, передаю выбранную строку
 выбраннаястрока = элемент.текущиеданные;
окрасить строку(выбраннаястрока);
пытаюсь окрасить
&НаСервере
Процедура ОкраситьСтроку(строка)

ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();

ЭлементЦветФона = ЭлементУсловногоОформления.Оформление.Элементы.Найти("ЦветФона");
ЭлементЦветФона.Значение = WebЦвета.Васильковый;
ЭлементЦветФона.Использование = Истина;

ЭлементОформляемогоПоля = ЭлементУсловногоОформления.Поля.Элементы.Добавить();
ЭлементОформляемогоПоля.Поле = Новый ПолеКомпоновкиДанных(строка);
ЭлементОформляемогоПоля.Использование = Истина;

КонецПроцедуры

но выходит ошибка - отсутствует отображение для данных форм коллекции. как правильно ее передать?

sali

а так он вообще не закрашивается
&НаКлиенте
Процедура СписокМаршрутовПриАктивизацииСтроки(Элемент)         

ВыбранныйСклад = элемент.Текущиеданные.Склад; 

ОкраситьСтроку(ВыбранныйСклад);
                                     
    Элементы.СоздатьЗаказ.Видимость = Истина;
элементы.СоздатьЗаказ.Заголовок = "Создать заказ с " + Элементы.СписокМаршрутов.Текущиеданные.Склад;
КонецПроцедуры   

&НаСервере
Процедура ОкраситьСтроку(ИмяПоля)     

ЭлементУсловногоОформления = УсловноеОформление.Элементы.Добавить();

ЭлементЦветФона = ЭлементУсловногоОформления.Оформление.Элементы.Найти("ЦветФона");
ЭлементЦветФона.Значение = WebЦвета.Васильковый;
ЭлементЦветФона.Использование = Истина;

ЭлементОтбораДанных = ЭлементУсловногоОформления.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбораДанных.ЛевоеЗначение  = Новый ПолеКомпоновкиДанных("СписокМаршрутовы.Склад");
ЭлементОтбораДанных.ВидСравнения   = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбораДанных.ПравоеЗначение = ИмяПоля;
ЭлементОтбораДанных.Использование  = Истина;

КонецПроцедуры

Максим75

sali, попробуйте вместо
ЭлементОтбораДанных.ЛевоеЗначение  = Новый ПолеКомпоновкиДанных("СписокМаршрутовы.Склад");
написать
ЭлементОтбораДанных.ЛевоеЗначение  = Новый ПолеКомпоновкиДанных("Объект.СписокМаршрутов.Склад");

sali

а вы не знаете как собираются apk для мобильного устройство? а то ТСД я не взял, а там базу можно обновлять (если были изменения), а вот на телефоне такой опции нет

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск