Конфигурация = БП 3.0 на УФ: В обработке нужно получить контрагента, выбранного пользователем из определенной папки ("Папка с нужными клиентами")
Пытаюсь открыть для выбора справочник Контрагенты сразу с нужной открытой папкой.
Делаю так:
&НаКлиенте
Функция НайтиКонтрагентНаКлиенте()
//https://its.1c.ru/db/metod8dev#content:5272:hdoc
СтандартнаяОбработка = Ложь;
СсылкаНаГруппу = ПолучитьКонтрагентаПоИмени("Папка С Нужными Клиентами");
ПараметрыОтбора = Новый Структура;
ПараметрыОтбора.Вставить("Родитель", СсылкаНаГруппу);
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Отбор", ПараметрыОтбора);
ПараметрыФормы.Вставить("РежимВыбора", Истина);
ПараметрыФормы.Вставить("ВыборГруппИЭлементов", ИспользованиеГруппИЭлементов.Элементы);
ПараметрыФормы.Вставить("ТекущаяСтрока", СсылкаНаГруппу);
ФормаВыбора = ПолучитьФорму("Справочник.Контрагенты.ФормаВыбора", ПараметрыФормы);
ФормаВыбора.Заголовок = "Выберите контрагента";
ФормаВыбора.РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца;
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеЗакрытияВыбораКлиента", ЭтотОбъект, ПараметрыФормы);
ФормаВыбора.ОписаниеОповещенияОЗакрытии = ОписаниеОповещения;
//ОткрытьФормуМодально(ФормаВыбора, ПараметрыФормы, Элементы.Контрагенты, ЭтаФорма.УникальныйИдентификатор);
//ОткрытьФорму("Справочник.Контрагенты.ФормаВыбора", ПараметрыФормы, ЭтаФорма,,,,ОписаниеОповещения);
НашКлиент = ОткрытьФорму(ФормаВыбора);
//ФормаВыбора.ОткрытьМодально();
//ОткрытьФормуМодально(ФормаВыбора, ПараметрыФормы);
Возврат НашКлиент
КонецФункции
&НаСервере
Функция ПолучитьКонтрагентаПоИмени(Имя)
Возврат Справочники.Контрагенты.НайтиПоНаименованию(Имя);
КонецФункции
Но все равно справочник открывается не с открытой нужной папкой "Папка С Нужными Клиентами", а просто открывает ВЕСЬ справочник Контрагенты целиком.
Подскажите, как сделать форму выбора сразу с открытой нужной папкой ("Папка С Нужными Клиентами")?
Пытаюсь открыть для выбора справочник Контрагенты сразу с нужной открытой папкой.
Делаю так:
&НаКлиенте
Функция НайтиКонтрагентНаКлиенте()
//
СтандартнаяОбработка = Ложь;
СсылкаНаГруппу = ПолучитьКонтрагентаПоИмени("Папка С Нужными Клиентами");
ПараметрыОтбора = Новый Структура;
ПараметрыОтбора.Вставить("Родитель", СсылкаНаГруппу);
ПараметрыФормы = Новый Структура;
ПараметрыФормы.Вставить("Отбор", ПараметрыОтбора);
ПараметрыФормы.Вставить("РежимВыбора", Истина);
ПараметрыФормы.Вставить("ВыборГруппИЭлементов", ИспользованиеГруппИЭлементов.Элементы);
ПараметрыФормы.Вставить("ТекущаяСтрока", СсылкаНаГруппу);
ФормаВыбора = ПолучитьФорму("Справочник.Контрагенты.ФормаВыбора", ПараметрыФормы);
ФормаВыбора.Заголовок = "Выберите контрагента";
ФормаВыбора.РежимОткрытияОкна = РежимОткрытияОкнаФормы.БлокироватьОкноВладельца;
ОписаниеОповещения = Новый ОписаниеОповещения("ПослеЗакрытияВыбораКлиента", ЭтотОбъект, ПараметрыФормы);
ФормаВыбора.ОписаниеОповещенияОЗакрытии = ОписаниеОповещения;
//ОткрытьФормуМодально(ФормаВыбора, ПараметрыФормы, Элементы.Контрагенты, ЭтаФорма.УникальныйИдентификатор);
//ОткрытьФорму("Справочник.Контрагенты.ФормаВыбора", ПараметрыФормы, ЭтаФорма,,,,ОписаниеОповещения);
НашКлиент = ОткрытьФорму(ФормаВыбора);
//ФормаВыбора.ОткрытьМодально();
//ОткрытьФормуМодально(ФормаВыбора, ПараметрыФормы);
Возврат НашКлиент
КонецФункции
&НаСервере
Функция ПолучитьКонтрагентаПоИмени(Имя)
Возврат Справочники.Контрагенты.НайтиПоНаименованию(Имя);
КонецФункции
Но все равно справочник открывается не с открытой нужной папкой "Папка С Нужными Клиентами", а просто открывает ВЕСЬ справочник Контрагенты целиком.
Подскажите, как сделать форму выбора сразу с открытой нужной папкой ("Папка С Нужными Клиентами")?
По теме из базы знаний
- Прайс лист с картинками для УТ11 (УФ, добавление логотипа и свободных текстовых полей)
- Как скрыть "пустые" группы справочника при открытии формы выбора? (только для УФ)
- Обзор полезных методов БСП 3.1.4
- Расширение: Быстрые отборы через буфер [Alt+C] Копировать список, [Alt+V] Вставить список, [Ctrl+C] Копировать из файлов
- Ценовая власть (УТ 11.5) - 2
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Тож, долго пытался, в итоге решил проблему так (может, кому пригодится)
&НаКлиенте
Процедура КонтрНачалоВыбора(Элемент, СтандартнаяОбработка)
СтандартнаяОбработка = ЛОЖЬ;
Родитель = Справочники.Контрагенты.НайтиПоКоду("143713962");
ПараметрыВыбора = Новый Структура;
ПараметрыВыбора.Вставить("РежимВыбора", ИСТИНА);
ПараметрыВыбора.Вставить("МножественныйВыбор", ЛОЖЬ);
ПараметрыВыбора.Вставить("ЗакрыватьПриВыборе", ИСТИНА);
ПараметрыВыбора.Вставить("РазрешитьВыборКорня", ЛОЖЬ);
ПараметрыВыбора.Вставить("ВыборГруппИЭлементов", ИспользованиеГруппИЭлементов.Элементы);
ПараметрыВыбора.Вставить("ЗакрыватьПриЗакрытииВладельца", ИСТИНА);
ПараметрыВыбора.Вставить("ТолькоПросмотр", ИСТИНА);
Отбор = Новый Структура();
Отбор.Вставить("Родитель", Родитель);
Отбор.Вставить("ПометкаУдаления", ЛОЖЬ);
Отбор.Вставить("ЭтоГруппа", ЛОЖЬ);
Отбор.Вставить("ВыборГруппИЭлементов", ИспользованиеГруппИЭлементов.Элементы);
ПараметрыВыбора.Вставить("Отбор", Отбор);
//ПараметрыВыбора.Вставить("ТекущаяСтрока", Родитель);
Форм = ОткрытьФорму("Справочник.Контрагенты.ФормаСписка", ПараметрыВыбора, ЭтаФорма, ЛОЖЬ,,,,РежимОткрытияОкнаФормы.БлокироватьВесьИнтерфейс);
Форм.Элементы.Список.Отображение = ОтображениеТаблицы.Список;
КонецПроцедуры
&НаКлиенте
Процедура ОбработкаВыбора(ЗначениеВыбора, Источник)
Контр = ЗначениеВыбора;
КонецПроцедуры
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот