|
Открыть журнал документов для выбора документа | ☑ | ||
---|---|---|---|---|
0
fdv_83
03.07.20
✎
12:21
|
Здравствуйте, уважаемые форумчане. Возник такой вопрос. Имеется журнал документов (в нём два вида документов). Этот журнал я открываю программно (с отборами) для выбора документов. Но проблема в том, что не получается выбрать документ и посадить его в реквизит. При двойном клике документ просто открывается. Подскажите, пожалуйста, как сделать так чтобы из журнала можно было выбрать (посадить в реквизит) документ. Код прилагаю.
&НаКлиенте Процедура КлиентыДокументОснованиеНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СтрокаТабличнойЧасти = Элементы.Клиенты.ТекущиеДанные; ПараметрыОтбора = Новый Структура; Если ЗначениеЗаполнено(Объект.ВидКредита) Тогда НастройкаОтбора = Новый Структура; НастройкаОтбора.Вставить("ЛевоеЗначение", Новый ПолеКомпоновкиДанных("ВидКредита")); НастройкаОтбора.Вставить("ВидСравнения", ВидСравненияКомпоновкиДанных.Равно); НастройкаОтбора.Вставить("ПравоеЗначение", Объект.ВидКредита); НастройкаОтбора.Вставить("РежимОтображения", РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный); ПараметрыОтбора.Вставить("ВидКредита", НастройкаОтбора); КонецЕсли; Если ЗначениеЗаполнено(СтрокаТабличнойЧасти.Клиент) Тогда НастройкаОтбора = Новый Структура; НастройкаОтбора.Вставить("ЛевоеЗначение", Новый ПолеКомпоновкиДанных("Клиент")); НастройкаОтбора.Вставить("ВидСравнения", ВидСравненияКомпоновкиДанных.Равно); НастройкаОтбора.Вставить("ПравоеЗначение", СтрокаТабличнойЧасти.Клиент); НастройкаОтбора.Вставить("РежимОтображения", РежимОтображенияЭлементаНастройкиКомпоновкиДанных.Недоступный); ПараметрыОтбора.Вставить("Клиент", НастройкаОтбора); КонецЕсли; Если СтрокаТабличнойЧасти.СписаниеНачальногоДолга Тогда ПараметрыОткрытия = Новый Структура("ПараметрыОтбора", ПараметрыОтбора); ПараметрыОткрытия.Вставить("ЭлементДляПозиционирования", Элементы.Клиенты.ТекущиеДанные.ДокументОснование); ОткрытьФорму("Документ.ВводНачальногоДолгаКлиента.ФормаВыбора", ПараметрыОткрытия, Элемент, ЭтаФорма); Иначе ПараметрыОткрытия = Новый Структура("ПараметрыОтбора", ПараметрыОтбора); ПараметрыОткрытия.Вставить("ЭлементДляПозиционирования", Элементы.Клиенты.ТекущиеДанные.ДокументОснование); ОткрытьФорму("ЖурналДокументов.РасходныеНакладныеКредит.ФормаСписка", ПараметрыОткрытия, Элемент, ЭтаФорма); КонецЕсли; СтандартнаяОбработка = Ложь; КонецПроцедуры |
|||
1
Ц_У
03.07.20
✎
12:32
|
Добавь в ПараметрыОткрытия поля "РежимВыбора, ЗакрыватьПриВыборе", Истина, Истина
|
|||
2
fdv_83
03.07.20
✎
13:07
|
(1) Что-то не срабатывает
|
|||
3
Ц_У
03.07.20
✎
13:23
|
(2) Ну не знаю, у меня работает:
&НаКлиенте Процедура КонтрагентНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ПараметрыОткрытия = Новый Структура; ПараметрыОткрытия.Вставить("РежимВыбора", Истина); ПараметрыОткрытия.Вставить("ЗакрыватьПриВыборе", Истина); ОткрытьФорму("Справочник.Контрагенты.ФормаВыбора",ПараметрыОткрытия,ЭтаФорма); КонецПроцедуры |
|||
4
Ц_У
03.07.20
✎
13:28
|
(2) ну можно Владельца задать как ЭтфФорма, перенести СтандартнаяОбработка = Ложь в начало
|
|||
5
fdv_83
03.07.20
✎
13:41
|
(3) Дело в том, что вы используете форму выбора, а она для выбора и предназначена. А в журнале документов такой формы нет. Попробуйте с журналом сделать.
|
|||
6
hhhh
03.07.20
✎
13:49
|
(5) это фигня, если нет формы выбора, тогда берется по-умолчанию форма списка
|
|||
7
fdv_83
03.07.20
✎
13:54
|
(6) У меня используется форма журнала документов
|
|||
8
Ц_У
03.07.20
✎
14:38
|
Вобщем да, (5) правда, так и есть.
Решение такое, надо у ЭлементыФормы.Список.РежимВыбора поставить Истина. Сделал через расширение, работате &НаСервере Процедура Расш1_ПриСозданииНаСервереПеред(Отказ, СтандартнаяОбработка) Если Параметры.Свойство("РежимВыбора") Тогда Элементы.Список.РежимВыбора = Параметры.РежимВыбора; КонецЕсли; КонецПроцедуры |
|||
9
fdv_83
03.07.20
✎
15:37
|
(8) Спасибо. Всё получилось.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |