|
Как в управляемом приложении открыть форму починенного справочника? | ☑ | ||
---|---|---|---|---|
0
Knowledge
20.11.12
✎
15:30
|
Вопрос: Как в управляемом приложении открыть форму починенного справочника?
Именно программно, а не с помощью команды, указав её в настройках формы. Кстати форма списка у подчиненного справочника явно не описана в конфигураторе. Тема, наверное, заезженная, но у меня что-то не получается. Я попробовал такой код: Процедура ОткрытьФормуПодчинённогоСправочникаНажатие(Элемент) ФормаПодчиненных= ПолучитьФорму("Справочник.РасчетныеСчетаКонтрагентов.ФормаСписка",); Список = ФормаПодчиненных.Список; ЭлементыОтбора = Список.Отбор.Элементы; ЭлементыОтбора.Очистить(); ЭлементОтбора =ЭлементыОтбора.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Контрагент"); ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбора.Использование = Истина; ЭлементОтбора.ПравоеЗначение = ВыбКонтрАгент; ФормаПодчиненных.Открыть(); КонецПроцедуры// ОткрытьФормуПодчинённогоСправочникаНажатие Здесь ВыбКонтрАгент – реквизит формы, справочник «РасчетныеСчетаКонтрагентов» подчинён справочнику «Контрагенты». При исполнении этой процедуры открывается форма списка справочника «РасчетныеСчетаКонтрагентов» без отбора (показаны все элементы справочника). В меню «Все действия»- «настройка списка» на закладке «отбор» появляется активная строка (отмечена галочкой): «Поле»- Контрагент, «Вид сравнения»- Равно, «Значение» - значение реквизита «ВыбКонтрАгент». Только в колонке «поле» Контрагент отмечен красным крестиком. Если здесь же перевыбрать колонку «Поле» и выбрать его как Контрагент, то отбор срабатывает. Может в код нужно что - добавить или он вообще неправильный? |
|||
1
1Сергей
20.11.12
✎
15:31
|
см параметры ПолучитьФорму
|
|||
2
Сергей Д
20.11.12
✎
15:34
|
Понравилась тема - починенного справочника. :)
|
|||
3
5 Элемент
20.11.12
✎
15:38
|
ПараметрыФормы = Структура("Отбор", Структура("Контрагент", ВыбКонтрАгент));
ОткрытьФорму("", ПараметрыФормы); |
|||
4
Knowledge
20.11.12
✎
15:52
|
<Параметры> (необязательный)
Тип: Структура. Параметры формы. Ключ структуры - имя параметра, а значение - значение параметра формы. Имя элемента должно совпадать с именем параметра структуры Расширение управляемой формы для справочника (Managed form extension for catalogs) Ключ (Key) Использование: Ключевой. Описание: Тип: СправочникСсылка. Ключ объекта. В случае отсутствия или неверного значения создается новый объект с использованием остальных параметров. Другие свойства расширения формы: ЗначениеКопирования, ЗначенияЗаполнения, Ключ, Основание, ЭтоГруппа. Разве это имеет отношение к отбору? Сделал: ПараметрыФормы = Новый Структура("Отбор", Новый Структура("Контрагент", ВыбКонтрАгент)); ФормаПодчиненных= ПолучитьФорму("Справочник.РасчетныеСчетаКонтрагентов.ФормаСписка",ПараметрыФормы); ФормаПодчиненных.Открыть(); Не помогает. |
|||
5
Knowledge
20.11.12
✎
15:54
|
(4)+ Это к посту (3)
|
|||
6
Knowledge
20.11.12
✎
16:05
|
ну и...
|
|||
7
MSII
20.11.12
✎
16:09
|
Поди не контрагент, а владелец.
|
|||
8
5 Элемент
20.11.12
✎
16:12
|
(7) скорее всего, но я спецом взял его код, чтобы он включил мозги, но видно не судьба )
|
|||
9
Knowledge
20.11.12
✎
16:16
|
(7) Точно. спасибо (8) Мозги включил.
|
|||
10
Knowledge
20.11.12
✎
16:37
|
(9)+ Кстати в в моём коде если изменить
ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Контрагент"); На: ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Владелец"); То тоже всё работает. Просто с толку сбило, что в режиме "Предриятие" это поле обзывается "Контрагент" Думать нужно глубже :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |