|
УФ Динамический список, спозиционироваться как? | ☑ | ||
---|---|---|---|---|
0
1Сергей
20.09.12
✎
12:45
|
Существует реквизит в документе типа СправочникСсылка.ФизЛица
Но Выбор нужно осуществлять не из справочника, а из регистра сведений. &НаСервере Процедура ВыбратьАвторизовал(Ключ) Если (Ключ <> Неопределено) И (Объект.Авторизовал <> Ключ.АвторизованноеЛицо.Ссылка) Тогда Объект.Авторизовал = Ключ.АвторизованноеЛицо.Ссылка; ЭтаФорма.Модифицированность = Истина; КонецЕсли; КонецПроцедуры &НаКлиенте Процедура АвторизовалНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ПараметрыФормы = Новый Структура("Лицо", Объект.Авторизовал); ПараметрыФормы.Вставить("Отбор", Новый Структура("Активен", Истина)); ФормаВыбора = ПолучитьФорму("РегистрСведений.АвторизованныеЛицаНаОтпускБезОплаты.Форма.ФормаВыбора", ПараметрыФормы); ВыбратьАвторизовал(ФормаВыбора.ОткрытьМодально()); КонецПроцедуры В Форме списка регистра сведений: &НаСервере Функция НайтиЗаписьПоЛицу(Лицо) Отбор = Новый Структура("АвторизованноеЛицо", Лицо); Возврат РегистрыСведений.АвторизованныеЛицаНаОтпускБезОплаты.СоздатьКлючЗаписи(Отбор); КонецФункции &НаКлиенте Процедура ПриОткрытии(Отказ) ЭтаФорма.ЗакрыватьПриВыборе = Истина; Запись = НайтиЗаписьПоЛицу(Параметры.Свойство("Лицо")); Элементы.Список.ТекущаяСтрока = Запись; КонецПроцедуры Всё работает, за исключением последней строки. Не удаётся спозиционироваться на записи регистра сведений, у которой Реквизит равен реквизиту документа. КАк сделать? Подскажите новичку, пожалуйста |
|||
1
AaNnDdRrEeYy
20.09.12
✎
12:58
|
попробуй Элементы.Список.ТекущиеДАнные = Запись;
|
|||
2
1Сергей
20.09.12
✎
12:58
|
(1) ТекущиеДАнные - только чтение
|
|||
3
1Сергей
20.09.12
✎
13:23
|
Разобрался.
Всё нужно делать до открытия формы. В форме документа: &НаСервере Процедура ВыбратьАвторизовал(Ключ) Если (Ключ <> Неопределено) И (Объект.Авторизовал <> Ключ.АвторизованноеЛицо.Ссылка) Тогда Объект.Авторизовал = Ключ.АвторизованноеЛицо.Ссылка; ЭтаФорма.Модифицированность = Истина; КонецЕсли; КонецПроцедуры &НаСервере Функция НайтиЗаписьПоЛицу(Лицо) Отбор = Новый Структура("АвторизованноеЛицо", Лицо); Возврат РегистрыСведений.АвторизованныеЛицаНаОтпускБезОплаты.СоздатьКлючЗаписи(Отбор); КонецФункции &НаКлиенте Процедура АвторизовалНачалоВыбора(Элемент, ДанныеВыбора, СтандартнаяОбработка) СтандартнаяОбработка = Ложь; ПараметрыФормы = Новый Структура("Отбор", Новый Структура("Активен", Истина)); ПараметрыФормы.Вставить("ТекущаяСтрока", НайтиЗаписьПоЛицу(Объект.Авторизовал)); ФормаВыбора = ПолучитьФорму("РегистрСведений.АвторизованныеЛицаНаОтпускБезОплаты.Форма.ФормаВыбора", ПараметрыФормы); ВыбратьАвторизовал(ФормаВыбора.ОткрытьМодально()); КонецПроцедуры А форму списка регистра можно вообще пустую оставить |
|||
4
Nexux
20.09.12
✎
13:27
|
а вот как спозиционироваться на группировке дс? :)
|
|||
5
1Сергей
20.09.12
✎
13:44
|
(4) В справочнике ещё проще, а в регистре сведений какие группы?
|
|||
6
ChAlex
20.09.12
✎
13:50
|
(5) - группировка - это не группа, а именно группировка динамического списка и группировать можно все что угодно
|
|||
7
ChAlex
20.09.12
✎
13:54
|
(3) - брр, вооще не понял что и зачем делал...ощущение все в обход - ну да ладно, хозяин барин
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |