|
открыть справочник в подсистеме с отбором | ☑ | ||
---|---|---|---|---|
0
winterbear
13.04.18
✎
13:58
|
Имеется подсистема, на которой выведен справочник Партнеры. Можно ли седлать, чтобы открывался справочник с отбором по родителю, и в самом подсистеме было не название справочника, а название родителя элемента, по которому отбор
|
|||
1
tesseract
13.04.18
✎
13:59
|
(0) Можно.
|
|||
2
winterbear
13.04.18
✎
14:05
|
Как это сделать ?
|
|||
3
winterbear
13.04.18
✎
14:05
|
через команду ?
|
|||
4
winterbear
13.04.18
✎
14:15
|
ПараметрыОтбора = Новый Структура("Родитель", ПолучитьГруппуПациенты());
ОткрытьФорму("Справочник.Партнеры.ФормаСписка", Новый Структура("Отбор", ПараметрыОтбора), ПараметрыВыполненияКоманды.Источник, Новый УникальныйИдентификатор("00000000-0000-0000-0000-000000000003"), ПараметрыВыполненияКоманды.Окно); |
|||
5
winterbear
13.04.18
✎
14:17
|
Так Выводит пустую форму
|
|||
6
novichok79
13.04.18
✎
14:20
|
так сделано в УТ 11, открытие формы записей регистра
ПользовательскиеНастройки = Новый ПользовательскиеНастройкиКомпоновкиДанных; Отбор = ПользовательскиеНастройки.Элементы.Добавить(Тип("ОтборКомпоновкиДанных")); ЭлементОтбора = Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); ЭлементОтбора.ЛевоеЗначение = Новый ПолеКомпоновкиДанных("Регистратор"); ЭлементОтбора.ПравоеЗначение = Объект.ИсправляемыйДокумент; ЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.Равно; ЭлементОтбора.Использование = Истина; ФормаРегистра = ПолучитьФорму(СтрокаТабличнойЧасти.ИмяФормыРегистра); ПараметрыОтбора = Новый Структура; ПараметрыОтбора.Вставить("Поле", "Регистратор"); ПараметрыОтбора.Вставить("Значение", Объект.ИсправляемыйДокумент); ПараметрыОтбора.Вставить("ВидСравнения", ВидСравненияКомпоновкиДанных.Равно); ПараметрыОтбора.Вставить("Использование", Истина); ДополнительныеПараметры = Новый Структура; ДополнительныеПараметры.Вставить("ВПользовательскиеНастройки", Истина); ДополнительныеПараметры.Вставить("ЗаменятьСуществующий", Истина); ДобавитьОтбор(ФормаРегистра.Список.КомпоновщикНастроек, ПараметрыОтбора, ДополнительныеПараметры); ФормаРегистра.Открыть(); |
|||
7
novichok79
13.04.18
✎
14:21
|
&НаКлиенте
Функция ДобавитьОтбор(ЭлементСтруктуры, ПараметрыОтбора, ДополнительныеПараметры = Неопределено) Если ДополнительныеПараметры = Неопределено Тогда ДополнительныеПараметры = Новый Структура; ДополнительныеПараметры.Вставить("ВПользовательскиеНастройки", Ложь); ДополнительныеПараметры.Вставить("ЗаменятьСуществующий", Истина); Иначе Если Не ДополнительныеПараметры.Свойство("ВПользовательскиеНастройки") Тогда ДополнительныеПараметры.Вставить("ВПользовательскиеНастройки", Ложь); КонецЕсли; Если Не ДополнительныеПараметры.Свойство("ЗаменятьСуществующий") Тогда ДополнительныеПараметры.Вставить("ЗаменятьСуществующий", Истина); КонецЕсли; КонецЕсли; Если ТипЗнч(ПараметрыОтбора.Поле) = Тип("Строка") Тогда НовоеПоле = Новый ПолеКомпоновкиДанных(ПараметрыОтбора.Поле); Иначе НовоеПоле = ПараметрыОтбора.Поле; КонецЕсли; Если ТипЗнч(ЭлементСтруктуры) = Тип("КомпоновщикНастроекКомпоновкиДанных") Тогда Отбор = ЭлементСтруктуры.Настройки.Отбор; Если ДополнительныеПараметры.ВПользовательскиеНастройки Тогда Для Каждого ЭлементНастройки Из ЭлементСтруктуры.ПользовательскиеНастройки.Элементы Цикл Если ЭлементНастройки.ИдентификаторПользовательскойНастройки = ЭлементСтруктуры.Настройки.Отбор.ИдентификаторПользовательскойНастройки Тогда Отбор = ЭлементНастройки; КонецЕсли; КонецЦикла; КонецЕсли; ИначеЕсли ТипЗнч(ЭлементСтруктуры) = Тип("НастройкиКомпоновкиДанных") Тогда Отбор = ЭлементСтруктуры.Отбор; Иначе Отбор = ЭлементСтруктуры; КонецЕсли; ЭлементОтбора = Неопределено; Если ДополнительныеПараметры.ЗаменятьСуществующий Тогда Для каждого Элемент Из Отбор.Элементы Цикл Если ТипЗнч(Элемент) = Тип("ГруппаЭлементовОтбораКомпоновкиДанных") Тогда Продолжить; КонецЕсли; Если Элемент.ЛевоеЗначение = НовоеПоле Тогда ЭлементОтбора = Элемент; КонецЕсли; КонецЦикла; КонецЕсли; Если ЭлементОтбора = Неопределено Тогда ЭлементОтбора = Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных")); КонецЕсли; ЭлементОтбора.Использование = ПараметрыОтбора.Использование; ЭлементОтбора.ЛевоеЗначение = НовоеПоле; ЭлементОтбора.ВидСравнения = ?(ПараметрыОтбора.ВидСравнения = Неопределено, ВидСравненияКомпоновкиДанных.Равно, ПараметрыОтбора.ВидСравнения); ЭлементОтбора.ПравоеЗначение = ПараметрыОтбора.Значение; Возврат ЭлементОтбора; КонецФункции |
|||
8
novichok79
13.04.18
✎
14:21
|
(0) по типу (6) и (7) делаешь открытие формы списка с отбором
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |