1C 8.3.6.182 отбор при открытии формы отбора
Внимание! Тема закрыта. Добавлять сообщения в закрытую тему запрещено.
Добрый день!
Есть такая проблема: есть документ "ЗаказыПокупателей". В документе, в табличной части "Товары" в обработке "ТоварыНоменклатураНачалоВыбора" вставляю такой код:
В документе указывается подразделение. При открытии формы выбора номенклатуры, должен сработать отбор на подразделение (у номенклатуры есть соответствующий реквизит).
Когда работаем на компьютере - проблем нет
Проблема в том, что в мобильном приложении данная процедура не срабатывает. Открывается форма выбора без всяких отборов.
Как решается данная проблема?
Есть такая проблема: есть документ "ЗаказыПокупателей". В документе, в табличной части "Товары" в обработке "ТоварыНоменклатураНачалоВыбора" вставляю такой код:
СтандартнаяОбработка = Ложь;
ЗначениеОтбора = Новый Структура("Подразделение", Объект.Подразделение);
ПараметрыВыбора = Новый Структура("Отбор", ЗначениеОтбора);
ОткрытьФорму("Справочник.Номенклатура.ФормаВыбора", ПараметрыВыбора, Элемент);
В документе указывается подразделение. При открытии формы выбора номенклатуры, должен сработать отбор на подразделение (у номенклатуры есть соответствующий реквизит).
Когда работаем на компьютере - проблем нет
Проблема в том, что в мобильном приложении данная процедура не срабатывает. Открывается форма выбора без всяких отборов.
Как решается данная проблема?
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Что если попробовать отбор по другому установить.
форма = Справочник.Номенклатура.ПолучитьФормуВыбора();
форма.отбор.Подразделение.использование = истина;
форма.отбор.Подразделение.ВидСравнения = ВидСравнения.Равно;
форма.отбор.Подразделение.Значение = Объект.Подразделение;
форма.открыть();
форма = Справочник.Номенклатура.ПолучитьФормуВыбора();
форма.отбор.Подразделение.использование = истина;
форма.отбор.Подразделение.ВидСравнения = ВидСравнения.Равно;
форма.отбор.Подразделение.Значение = Объект.Подразделение;
форма.открыть();
(3) elefant400, "ТоварыНоменклатураНачалоВыбора" обрабатывается на клиенте. На клиенте заругается на "Справочник.".
+ я в начало процедуры "ТоварыНоменклатураНачалоВыбора" вставил "Сообщить("Сработало");", но увы сообщений на планшете я не получил. Он похоже сам открывает просто форму выбора, не переходя в процедуру "ТоварыНоменклатураНачалоВыбора". (в 8.3.6.182 очень сильно переписали формы объектов: всё очень красиво и многофункционально, но вот появляются такие проблемы)
+ я в начало процедуры "ТоварыНоменклатураНачалоВыбора" вставил "Сообщить("Сработало");", но увы сообщений на планшете я не получил. Он похоже сам открывает просто форму выбора, не переходя в процедуру "ТоварыНоменклатураНачалоВыбора". (в 8.3.6.182 очень сильно переписали формы объектов: всё очень красиво и многофункционально, но вот появляются такие проблемы)
(7) dj_serega, Да, без "бубна" тут не обошлось.
Решил проблему следующий способом:
При открытии формы срабатывает код:
Так как владельцем формы передаётся поле, то пришлось написать "ЭтаФорма.ВладелецФормы.Родитель.Родитель.Объект.Подразделение". По рукам конечно за такие вещи, но до большего додуматься не удалось
Решил проблему следующий способом:
При открытии формы срабатывает код:
ЭлементОтбора = Список.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Подразделение");
ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно;
ЭлементОтбора.Использование = Истина;
ЭлементОтбора.ПравоеЗначение = ЭтаФорма.ВладелецФормы.Родитель.Родитель.Объект.Подразделение;
Так как владельцем формы передаётся поле, то пришлось написать "ЭтаФорма.ВладелецФормы.Родитель.Родитель.Объект.Подразделение". По рукам конечно за такие вещи, но до большего додуматься не удалось
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот