|
УФ. Передача параметра в форму выбора | ☑ | ||
---|---|---|---|---|
0
Slon747
24.12.20
✎
11:50
|
Имеется ТЧ с типом данных ТаблицаЗначений и столбцом Ссылка с типом данных Справочник.Соглашения.
Нужно чтобы при обычном добавлении новых строк на форму выбора накладывался фильтр по типовым соглашениям. Посмотрел в код формы выбора справочника и обнаружил там, что анализируется параметр "ТолькоТиповые". Осталось только передать этот параметр в форму выбора. Где это делается в УФ? В событии ПриНачалеРедактирования или как-то иначе? |
|||
1
vicof
24.12.20
✎
11:58
|
Через ОткрытьФорму как вариант
|
|||
2
Slon747
24.12.20
✎
12:04
|
(1) Т.е. несмотря на то, что в моей обработке уже есть функционал для изменения ТЧ (стандартные действия типа добавить/удалить и пр.) я не могу так просто наложить фильтр как в обычных формах в НачалоВыбора?
|
|||
3
ДенисЧ
24.12.20
✎
12:08
|
(2) В оф ты тоже просто так не можешь наложить. Тебе надо отказаться от стандарта, получить форму, наложить фильтры...
В уф почти то же самое. Формируешь структуру параметров и ОткрытьФорму() с этими параметрами. Чтобы передать отбор в динсписок - используй Структура("Отбор", СтруктураОтбора) или фиксированную структуру с настройками динсписка. |
|||
4
Slon747
24.12.20
✎
12:16
|
(3) Т.е. в моем случае нужно оставить только ТЧ (без панели стандартных кнопок) и добавить свою кнопку, по нажатию которой вызывается форма выбора с установленными параметрами.
|
|||
5
Slon747
24.12.20
✎
12:16
|
(4) Это был вопрос.
|
|||
6
ДенисЧ
24.12.20
✎
12:17
|
(4) Зачем? В нужном поле хватаешь событие ПриНачалеВыбора...
|
|||
7
vicof
24.12.20
✎
12:23
|
(4)(7) Только не ПриНачалеВыбора, а НачалоВыбора. И Стандартную обработку там в Ложь.
|
|||
8
Slon747
24.12.20
✎
12:28
|
(6)(7) Спасибо. Понял.
|
|||
9
Slon747
24.12.20
✎
12:40
|
Но есть другая проблема.
В форме выбора в ПриСозданииНаСервере есть код: Список.Параметры.УстановитьЗначениеПараметра("ТолькоТиповые", Параметры.ТолькоТиповые); Список.Параметры.УстановитьЗначениеПараметра("Партнер", Параметры.Партнер); Далее накладываются эти фильтры. И если ТолькоТиповые - то что мне нужно, то фильтр Партнер мне не нужен. Иначе выбираются только те, у которых партнер установлен. Как можно отказаться от выполнения кода в ПриСозданииНаСервере (без внесения изменений в конфигурацию)? P.S. В начале ПриСозданииНаСервере есть строки: Если Параметры.Свойство("АвтоТест") Тогда // Возврат при получении формы для анализа. Возврат; КонецЕсли; Это как раз для моего случая? |
|||
10
ДенисЧ
24.12.20
✎
12:46
|
"Как можно отказаться от выполнения кода в ПриСозданииНаСервере "
Никак. Если только форму не создавать )) |
|||
11
vicof
24.12.20
✎
12:49
|
Или расширение написать, и подменить метод :)
|
|||
12
vicof
24.12.20
✎
12:50
|
Или свою форму создавать
|
|||
13
Slon747
24.12.20
✎
12:50
|
(10) В данном случае я передал параметр "АвтоТест" и код не выполнился. Но и форма не показалась. Стала выаполняться ПриЗагрузкеДанныхИзНастроекНаСервере(), а там еще и еще и в результате полезли ошибки компоновщика.
Чувствую, придется делать свою произвольную форму, в которой будет заполняться список соглашений по моему желанию |
|||
14
Ненавижу 1С
гуру
24.12.20
✎
13:33
|
а что "Параметры выбора" уже нельзя?
|
|||
15
Slon747
24.12.20
✎
13:34
|
(14) Если в форме выбора какой-то код уже ограничивает выбор в динамическом списке, я уже не могу ничего сделать.
|
|||
16
Ненавижу 1С
гуру
24.12.20
✎
13:52
|
(15) ты точно пробовал?
|
|||
17
Slon747
24.12.20
✎
14:01
|
(16)
В форме выбора нализируются 2 параметра. При этом если второй параметр не передается, то фильтр по нему все равно ставится. |
|||
18
Ненавижу 1С
гуру
24.12.20
✎
14:21
|
(17) параметры выбора передаются в поле Отбор (тип структура) у значения Параметры
|
|||
19
Cthulhu
24.12.20
✎
19:31
|
хотя бы попробовал передать в параметрах только тот отбор. который нужен...
а то одни увлекательные рассказы о том, какой там типовой код, и смелые предположения... |
|||
20
d4rkmesa
24.12.20
✎
21:59
|
(13) Лучше сделать свою форму. В типовой форме многое всего натыкано, через ИзменениеИКонтроль лучше не модифицировать расширением. Ну или использовать аннотацию &После, снимая ненужные отборы, ориентируясь на параметры (я бы так по эстетическим соображениям не стал делать). Просто там много стандартных параметров, отладить нормально будет долго.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |