Функция ПолучитьСведенияОКомиссии(ДокументОбъект) Экспорт
МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
Запрос.УстановитьПараметр("НаДату", ДокументОбъект.Дата);
Запрос.УстановитьПараметр("ПК", ДокументОбъект.ПредседательКомиссии);
Запрос.УстановитьПараметр("Организация", ДокументОбъект.Организация);
Запрос.Текст = "ВЫБРАТЬ
| ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия + "" "" + ФИОФизЛицСрезПоследних.Имя + "" "" + ФИОФизЛицСрезПоследних.Отчество, РаботникиОрганизацийСрезПоследних.Сотрудник) КАК ФИО,
| РаботникиОрганизацийСрезПоследних.Должность
|ПОМЕСТИТЬ ПК
|ИЗ
| РегистрСведений.РаботникиОрганизаций.СрезПоследних(
| &НаДату,
| Сотрудник.ФизЛицо = &ПК
| И Организация = &организация
| И ПричинаИзмененияСостояния <> ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
| И Сотрудник.ВидЗанятости <> ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ВнутреннееСовместительство)) КАК РаботникиОрганизацийСрезПоследних
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&НаДату, ) КАК ФИОФизЛицСрезПоследних
| ПО РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо = ФИОФизЛицСрезПоследних.ФизЛицо
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ПК.ФИО КАК ПредседательКомиссииФИО,
| ПК.Должность КАК ПредседательКомиссииДолжность
|ИЗ
| ПК КАК ПК";
ПК = Запрос.Выполнить().Выбрать();
ПК.Следующий();
СоставКомиссии = Новый Структура;
СоставКомиссии.Вставить("ПредседательКомиссииФИО" ,ПК.ПредседательКомиссииФИО);
СоставКомиссии.Вставить("ПредседательКомиссииДолжность", ПК.ПредседательКомиссииДолжность);
//Получим информацию о первом члене комиссии
МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
Запрос.УстановитьПараметр("НаДату", ДокументОбъект.Дата);
Запрос.УстановитьПараметр("ЧК1", ДокументОбъект.ПервыйЧленКомиссии);
Запрос.УстановитьПараметр("Организация", ДокументОбъект.Организация);
Запрос.Текст = "ВЫБРАТЬ
| ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия + "" "" + ФИОФизЛицСрезПоследних.Имя + "" "" + ФИОФизЛицСрезПоследних.Отчество, РаботникиОрганизацийСрезПоследних.Сотрудник) КАК ФИО,
| РаботникиОрганизацийСрезПоследних.Должность
|ПОМЕСТИТЬ ЧК1
|ИЗ
| РегистрСведений.РаботникиОрганизаций.СрезПоследних(
| &НаДату,
| Сотрудник.ФизЛицо = &ЧК1
| И Организация = &Организация
| И ПричинаИзмененияСостояния <> ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
| И Сотрудник.ВидЗанятости <> ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ВнутреннееСовместительство)) КАК РаботникиОрганизацийСрезПоследних
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&НаДату, ) КАК ФИОФизЛицСрезПоследних
| ПО РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо = ФИОФизЛицСрезПоследних.ФизЛицо
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ЧК1.ФИО КАК ПервыйЧленКомиссииФИО,
| ЧК1.Должность КАК ПервыйЧленКомиссииДолжность
|ИЗ
| ЧК1 КАК ЧК1";
ЧК1 = Запрос.Выполнить().Выбрать();
ЧК1.Следующий();
СоставКомиссии.Вставить("ПервыйЧленКомиссииФИО", ЧК1.ПервыйЧленКомиссииФИО);
СоставКомиссии.Вставить("ПервыйЧленКомиссииДолжность", ЧК1.ПервыйЧленКомиссииДолжность);
//Получим информацию о втором члене комиссии
МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
Запрос.УстановитьПараметр("НаДату", ДокументОбъект.Дата);
Запрос.УстановитьПараметр("ЧК2", ДокументОбъект.ВторойЧленКомиссии);
Запрос.УстановитьПараметр("Организация", ДокументОбъект.Организация);
Запрос.Текст = "ВЫБРАТЬ
| ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия + "" "" + ФИОФизЛицСрезПоследних.Имя + "" "" + ФИОФизЛицСрезПоследних.Отчество, РаботникиОрганизацийСрезПоследних.Сотрудник) КАК ФИО,
| РаботникиОрганизацийСрезПоследних.Должность
|ПОМЕСТИТЬ ЧК2
|ИЗ
| РегистрСведений.РаботникиОрганизаций.СрезПоследних(
| &НаДату,
| Сотрудник.ФизЛицо = &ЧК2
| И Организация = &Организация
| И ПричинаИзмененияСостояния <> ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
| И Сотрудник.ВидЗанятости <> ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ВнутреннееСовместительство)) КАК РаботникиОрганизацийСрезПоследних
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&НаДату, ) КАК ФИОФизЛицСрезПоследних
| ПО РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо = ФИОФизЛицСрезПоследних.ФизЛицо
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ЧК2.ФИО КАК ВторойЧленКомиссииФИО,
| ЧК2.Должность КАК ВторойЧленКомиссииДолжность
|ИЗ
| ЧК2 КАК ЧК2";
ЧК2 = Запрос.Выполнить().Выбрать();
ЧК2.Следующий();
СоставКомиссии.Вставить("ВторойЧленКомиссииФИО", ЧК2.ВторойЧленКомиссииФИО);
СоставКомиссии.Вставить("ВторойЧленКомиссииДолжность", ЧК2.ВторойЧленКомиссииДолжность);
//Получим информацию о третьем члене комиссии
МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
Запрос = Новый Запрос;
Запрос.МенеджерВременныхТаблиц = МенеджерВременныхТаблиц;
Запрос.УстановитьПараметр("НаДату", ДокументОбъект.Дата);
Запрос.УстановитьПараметр("ЧК3", ДокументОбъект.ТретийЧленКомиссии);
Запрос.УстановитьПараметр("Организация", ДокументОбъект.Организация);
Запрос.Текст = "ВЫБРАТЬ
| ЕСТЬNULL(ФИОФизЛицСрезПоследних.Фамилия + "" "" + ФИОФизЛицСрезПоследних.Имя + "" "" + ФИОФизЛицСрезПоследних.Отчество, РаботникиОрганизацийСрезПоследних.Сотрудник) КАК ФИО,
| РаботникиОрганизацийСрезПоследних.Должность
|ПОМЕСТИТЬ ЧК3
|ИЗ
| РегистрСведений.РаботникиОрганизаций.СрезПоследних(
| &НаДату,
| Сотрудник.ФизЛицо = &ЧК3
| И Организация = &Организация
| И ПричинаИзмененияСостояния <> ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
| И Сотрудник.ВидЗанятости <> ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ВнутреннееСовместительство)) КАК РаботникиОрганизацийСрезПоследних
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&НаДату, ) КАК ФИОФизЛицСрезПоследних
| ПО РаботникиОрганизацийСрезПоследних.Сотрудник.Физлицо = ФИОФизЛицСрезПоследних.ФизЛицо
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ЧК3.ФИО КАК ТретийЧленКомиссииФИО,
| ЧК3.Должность КАК ТретийЧленКомиссииДолжность
|ИЗ
| ЧК3 КАК ЧК3";
ЧК3 = Запрос.Выполнить().Выбрать();
ЧК3.Следующий();
СоставКомиссии.Вставить("ТретийЧленКомиссииФИО", ЧК3.ТретийЧленКомиссииФИО);
СоставКомиссии.Вставить("ТретийЧленКомиссииДолжность", ЧК3.ТретийЧленКомиссииДолжность);
Возврат СоставКомиссии
КонецФункции // ПолучитьСведенияОКомиссии()
Вот как это назвать?