Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Выбор из формы списка регистра сведений
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 8.1 (8.0)
himpp
Доброго всем времени суток! Буду очень благодарна за помощь в такой ситуации: в форме документа "Командировки Организаций" для подписи выводится перечень подписывающих лиц с использованием перечисления "ОтветственныелицаОрганизаций" и периодического регистра сведений "Ответственные лицаОрганиз-аций", имеющего измерения "СтруктурнаяЕдиница" и "ОтветственноеЛицо"(ссылка на перечисление) и ресурсы "ФизическоеЛицо" и "Должность". Я сделала форму списка регистра сведений, которую вывожу по событию "начало выбора", отменив стандартную обработку и определив в форме документа "Командировки организаций" ключ записи:

СтандартнаяОбработка = Ложь;
    
    Строки = РегистрыСведений.ОтветственныеЛицаОрганизаций.СрезПоследних(ЭтотОбъект.Дата,
Новый Структура("СтруктурнаяЕдиница, ОтветственноеЛицо", ЭтотОбъект.Организация, ЭтотОбъект.Руководитель));
    Если Строки.Количество()>0 Тогда
       ДанныеКлюча = Новый Структура("Период, СтруктурнаяЕдиница, ОтветственноеЛицо, ФизическоеЛицо",
Строки[0].Период, Строки[0].СтруктурнаяЕдиница, Строки[0].ОтветственноеЛицо, Строки[0].ФизическоеЛицо);
                Иначе
       ДанныеКлюча = Новый Структура("Период, СтруктурнаяЕдиница, ОтветственноеЛицо, ФизическоеЛицо",
ЭтотОбъект.Дата, ЭтотОбъект.Организация);
    КонецЕсли;  
                Ключ = РегистрыСведений.ОтветственныеЛицаОрганизаций.СоздатьКлючЗаписи(ДанныеКлюча);

                Форма_отв = РегистрыСведений.ОтветственныеЛицаОрганизаций.ПолучитьФормуСписка("ФормаВыбораОтветственныхЛицОрганизаций",
ЭтотОбъект.Руководитель);
    Форма_отв.РежимВыбора = Истина;
                Форма_отв.ПараметрТекущаяСтрока = Ключ;
                Форма_отв.ОткрытьМодально();
    
    Руководитель = Форма_отв.ЭлементыФормы.ОтветственныеЛицаОргСписок.ТекущаяСтрока.ОтветственноеЛи
цо;


Но никак не выходит в этой форме списка (Форма_отв1) вывести для выбора только срез последних записей регистра "ОтветственныеЛицаОрганизаций". Вывести по нужному измерению (например, структурной единице предприятия) получается с помощью отбора в форме списка


 i 

Выделяйте код! Читаем правила! Вофка.
 
Agapov_Stas
я лично сторонник запросов )
почему бы не написать это запросом - что то типа такого

Запрос = Новый Запрос; 
Запрос.УстановитьПараметры("Переменная1", ЗначениеПеременной1);
Запрос.УстановитьПараметры("Переменная2", ЗначениеПеременной2 );

Запрос.Текст =
"ВЫБРАТЬ
|    ОтветственныеЛицаСрезПоследних.Период,
|    ОтветственныеЛицаСрезПоследних.СтруктурнаяЕдиница,
|    ОтветственныеЛицаСрезПоследних.ФизическоеЛицо
|ИЗ
|    РегистрСведений.ОтветственныеЛица.СрезПоследних КАК ОтветственныеЛицаСрезПоследних
|ГДЕ
|     ОтветственныеЛицаСрезПоследних.Период = &Переменная1

|    ОтветственныеЛицаСрезПоследних.СтруктурнаяЕдиница = &Переменная2 "
Результат = Запрос.Выполнить().Выгрузить();

Ну или


"ВЫБРАТЬ
    |    ОтветственныеЛицаОрганизаций.Период,
    |    ОтветственныеЛицаОрганизаций.СтруктурнаяЕдиница,
    |    ОтветственныеЛицаОрганизаций.ОтветственноеЛицо,
    |    ОтветственныеЛицаОрганизаций.ФизическоеЛицо,
    |    ОтветственныеЛицаОрганизаций.Должность
    |ИЗ
    |    РегистрСведений.ОтветственныеЛицаОрганизаций КАК ОтветственныеЛицаОрганизаций"


Параметры отбора и т.д. задаются аналогично

 i 

Для выделения кода используйте тег [ code ][ /code ] . Тег присутствует в виде кнопки на панели редактора. Batchir
 
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.