Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
25 ноя 2024, 04:21

Проблема с отчетом для военкомата. ЗУП 2.5

Автор ksander-fars, 15 фев 2017, 09:32

0 Пользователей и 1 гость просматривают эту тему.

ksander-fars

Здраствуйте, по запросу происходит выборка в которой строки выводятся дублями различными только по колонке состав семьи. При обходе детальных записей значения колонки состав семьи собираются в кучу, но опять же с дублями и выводятся в табличный документ. Как правильно сделать что бы выводились сотрудники с уже собранным полем состав семьи.

//{{КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА
// Данный фрагмент построен конструктором.
// При повторном использовании конструктора, внесенные вручную изменения будут утеряны!!!
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ РАЗРЕШЕННЫЕ
| МАКСИМУМ(ВЫБОР
| КОГДА Показатели.НомерСтроки = 1
| ТОГДА Показатели.Показатель
| ИНАЧЕ NULL
| КОНЕЦ) КАК Показатель1,
| МАКСИМУМ(ВЫБОР
| КОГДА Показатели.НомерСтроки = 2
| ТОГДА Показатели.Показатель
| ИНАЧЕ NULL
| КОНЕЦ) КАК Показатель2,
| МАКСИМУМ(ВЫБОР
| КОГДА Показатели.НомерСтроки = 3
| ТОГДА Показатели.Показатель
| ИНАЧЕ NULL
| КОНЕЦ) КАК Показатель3,
| МАКСИМУМ(ВЫБОР
| КОГДА Показатели.НомерСтроки = 4
| ТОГДА Показатели.Показатель
| ИНАЧЕ NULL
| КОНЕЦ) КАК Показатель4,
| МАКСИМУМ(ВЫБОР
| КОГДА Показатели.НомерСтроки = 5
| ТОГДА Показатели.Показатель
| ИНАЧЕ NULL
| КОНЕЦ) КАК Показатель5,
| МАКСИМУМ(ВЫБОР
| КОГДА Показатели.НомерСтроки = 6
| ТОГДА Показатели.Показатель
| ИНАЧЕ NULL
| КОНЕЦ) КАК Показатель6,
| ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.Сотрудник КАК Сотрудник,
| ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.Организация КАК Организация,
| ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.ВидРасчетаИзмерение КАК ВидРасчетаИзмерение,
| ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.ДокументОснование КАК ДокументОснование
|ПОМЕСТИТЬ Показатели
|ИЗ
| РегистрСведений.ПлановыеНачисленияРаботниковОрганизаций.СрезПоследних(&Период {(&Период)}, ВидРасчетаИзмерение = НЕОПРЕДЕЛЕНО {(Сотрудник), (Сотрудник.Физлицо) КАК ФизЛицо, (Организация) КАК ГоловнаяОрганизация}) КАК ПлановыеНачисленияРаботниковОрганизацийСрезПоследних
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ ПланВидовРасчета.ОсновныеНачисленияОрганизаций.Показатели КАК Показатели
| ПО (ВЫБОР
| КОГДА ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.ПериодЗавершения <= &Период
| И ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1)
| ТОГДА ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.ВидРасчетаЗавершения
| ИНАЧЕ ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.ВидРасчета
| КОНЕЦ = Показатели.Ссылка)
|ГДЕ
| ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.ВидРасчета.ЗачетОтработанногоВремени
|
|СГРУППИРОВАТЬ ПО
| ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.ДокументОснование,
| ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.Организация,
| ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.ВидРасчетаИзмерение,
| ПлановыеНачисленияРаботниковОрганизацийСрезПоследних.Сотрудник
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗРЕШЕННЫЕ
| ДатыПоследнихДвиженийРаботников.Период КАК ДатаПриема,
| ДатыПоследнихДвиженийРаботников.Сотрудник КАК Сотрудник,
| ДатыПоследнихДвиженийРаботников.Организация КАК Организация,
| ДатыПоследнихДвиженийРаботников.Приказ КАК ПриказИзмерение,
| ДанныеПоРаботникуПриНазначении.ПервичныйДокумент КАК Приказ,
| ДатыПоследнихДвиженийРаботников.Сотрудник.ВидЗанятости КАК ВидЗанятости
|ПОМЕСТИТЬ ПриказыОПриеме
|ИЗ
| (ВЫБРАТЬ
| ТЧРаботникиОрганизации.Организация КАК Организация,
| МАКСИМУМ(Работники.Период) КАК Период,
| ТЧРаботникиОрганизации.Сотрудник КАК Сотрудник,
| ТЧРаботникиОрганизации.ПервичныйДокумент КАК Приказ
| ИЗ
| РегистрСведений.РаботникиОрганизаций.СрезПоследних(&Период, ) КАК ТЧРаботникиОрганизации
| ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций КАК Работники
| ПО (Работники.Период <= ТЧРаботникиОрганизации.Период)
| И (Работники.ПричинаИзмененияСостояния = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.ПриемНаРаботу))
| И ТЧРаботникиОрганизации.Сотрудник = Работники.Сотрудник
| {ГДЕ
| ТЧРаботникиОрганизации.Должность КАК Должность,
| ТЧРаботникиОрганизации.ГрафикРаботы КАК ГрафикРаботы,
| ТЧРаботникиОрганизации.Сотрудник.Код КАК ТабельныйНомер,
| ТЧРаботникиОрганизации.ЗанимаемыхСтавок КАК ЗанимаемыхСтавок,
| ТЧРаботникиОрганизации.ОбособленноеПодразделение КАК ОбособленноеПодразделение,
| Работники.Сотрудник.*,
| Работники.Организация.* КАК ГоловнаяОрганизация,
| Работники.Сотрудник.Физлицо.* КАК Физлицо}
|
| СГРУППИРОВАТЬ ПО
| ТЧРаботникиОрганизации.Сотрудник,
| ТЧРаботникиОрганизации.Организация,
| ТЧРаботникиОрганизации.ПервичныйДокумент) КАК ДатыПоследнихДвиженийРаботников
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РаботникиОрганизаций КАК ДанныеПоРаботникуПриНазначении
| ПО (ДанныеПоРаботникуПриНазначении.Период = ДатыПоследнихДвиженийРаботников.Период)
| И ДатыПоследнихДвиженийРаботников.Сотрудник = ДанныеПоРаботникуПриНазначении.Сотрудник
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ РАЗРЕШЕННЫЕ
| РаботникиОрганизации.Сотрудник КАК Сотрудник,
| РаботникиОрганизации.Должность,
| РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения КАК ФизЛицоДатаРождения,
| ПаспортныеДанныеФизЛиц.ДокументВид КАК ФизЛицоДокументВид,
| ПаспортныеДанныеФизЛиц.ДокументСерия КАК ФизЛицоДокументСерия,
| ПаспортныеДанныеФизЛиц.ДокументНомер КАК ФизЛицоДокументНомер,
| ПаспортныеДанныеФизЛиц.ДокументДатаВыдачи КАК ФизЛицоДокументДатаВыдачи,
| ВоинскийУчет.Звание КАК ФизЛицоЗвание,
| ВоинскийУчет.ВУС КАК ФизЛицоВУС,
| ВоинскийУчет.Военкомат КАК ФизЛицоВоенкомат,
| ПаспортныеДанныеФизЛиц.ДокументВид
|ПОМЕСТИТЬ ВТ_ВыборкаСотрудники
|{ВЫБРАТЬ
| ФизЛицоДатаРождения,
| ФизЛицоДокументВид.*,
| ФизЛицоДокументСерия,
| ФизЛицоДокументНомер,
| ФизЛицоДокументДатаВыдачи,
| ФизЛицоЗвание.*,
| ФизЛицоВоенкомат.*,
| ФизЛицоВУС}
|ИЗ
| РегистрСведений.РаботникиОрганизаций.СрезПоследних(&Период {(&Период)}, {(Сотрудник), (Сотрудник.Физлицо) КАК ФизЛицо, (Организация) КАК ГоловнаяОрганизация}) КАК РаботникиОрганизации
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостояниеРаботниковОрганизаций.СрезПоследних(&Период {(&Период)}, {(Сотрудник), (Сотрудник.Физлицо) КАК ФизЛицо, (Организация) КАК ГоловнаяОрганизация}) КАК СостояниеРаботниковОрганизации
| ПО РаботникиОрганизации.Сотрудник = СостояниеРаботниковОрганизации.Сотрудник}
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПлановыеНачисленияРаботниковОрганизаций.СрезПоследних(&Период {(&Период)}, ВидРасчетаИзмерение = НЕОПРЕДЕЛЕНО {(Сотрудник), (Сотрудник.Физлицо) КАК ФизЛицо, (Организация) КАК ГоловнаяОрганизация}) КАК ПлановыеНачисленияРаботниковСрез
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.РазмерТарифныхСтавок.СрезПоследних(&Период {(&Период)}, ) КАК РазмерТарифныхСтавокСрезПоследних
| ПО (ВЫБОР
| КОГДА ПлановыеНачисленияРаботниковСрез.ПериодЗавершения <= &Период
| И ПлановыеНачисленияРаботниковСрез.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА ПлановыеНачисленияРаботниковСрез.ТарифныйРазряд1Завершения
| ИНАЧЕ ПлановыеНачисленияРаботниковСрез.ТарифныйРазряд1
| КОНЕЦ = РазмерТарифныхСтавокСрезПоследних.ТарифныйРазряд)
| ЛЕВОЕ СОЕДИНЕНИЕ Показатели КАК Показатели1
| ПО ПлановыеНачисленияРаботниковСрез.Сотрудник = Показатели1.Сотрудник
| И ПлановыеНачисленияРаботниковСрез.Организация = Показатели1.Организация
| И ПлановыеНачисленияРаботниковСрез.ВидРасчетаИзмерение = Показатели1.ВидРасчетаИзмерение
| И ПлановыеНачисленияРаботниковСрез.ДокументОснование = Показатели1.ДокументОснование
| ПО РаботникиОрганизации.Сотрудник = ПлановыеНачисленияРаботниковСрез.Сотрудник}
| {ЛЕВОЕ СОЕДИНЕНИЕ ПриказыОПриеме КАК ПриказыОПриеме
| ПО РаботникиОрганизации.Сотрудник = ПриказыОПриеме.Сотрудник}
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПаспортныеДанныеФизЛиц.СрезПоследних(&Период, ) КАК ПаспортныеДанныеФизЛиц
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ПаспортныеДанныеФизЛиц.ФизЛицо}
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ГражданствоФизЛиц.СрезПоследних(&Период, ) КАК ГражданствоФизЛиц
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ГражданствоФизЛиц.ФизЛицо}
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусФизЛицКакНалогоплательщиковНДФЛ.СрезПоследних(&Период, ) КАК СтатусФизЛицКакНалогоплательщиковНДФЛ
| ПО РаботникиОрганизации.Сотрудник.Физлицо = СтатусФизЛицКакНалогоплательщиковНДФЛ.ФизЛицо}
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ВоинскийУчет.СрезПоследних(&Период, ) КАК ВоинскийУчет
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ВоинскийУчет.Физлицо}
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СемейноеПоложениеФизЛиц.СрезПоследних(&Период, ) КАК СемейноеПоложениеФизЛиц
| ПО РаботникиОрганизации.Сотрудник.Физлицо = СемейноеПоложениеФизЛиц.ФизЛицо}
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ФИОФизЛиц.СрезПоследних(&Период, ) КАК ФИОФизЛиц
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ФИОФизЛиц.ФизЛицо}
| {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.СоставСемьи КАК СоставСемьиФизлица
| ПО РаботникиОрганизации.Сотрудник.Физлицо = СоставСемьиФизлица.Ссылка}
| {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.Образование КАК ОбразованиеФизлица
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ОбразованиеФизлица.Ссылка}
| {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.ТрудоваяДеятельность КАК ТрудоваяДеятельностьФизлица
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ТрудоваяДеятельностьФизлица.Ссылка}
| {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.ЗнаниеЯзыков КАК ЗнаниеЯзыковФизлица
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ЗнаниеЯзыковФизлица.Ссылка}
| {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.Стажи КАК Стажи
| ПО РаботникиОрганизации.Сотрудник.Физлицо = Стажи.Ссылка}
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ЛицевыеСчетаРаботниковОрганизации КАК ЛицевыеСчетаРаботниковОрганизации
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ЛицевыеСчетаРаботниковОрганизации.ФизЛицо
| И (ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.ОбособленноеПодразделениеЗавершения
| ИНАЧЕ РаботникиОрганизации.ОбособленноеПодразделение
| КОНЕЦ = ЛицевыеСчетаРаботниковОрганизации.Организация)}
| {ЛЕВОЕ СОЕДИНЕНИЕ Константы КАК Константы
| ПО (ИСТИНА)
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостояниеРаботниковНаИспытательномСроке.СрезПоследних(&Период, ) КАК СостояниеРаботниковНаИспытательномСроке
| ПО РаботникиОрганизации.Сотрудник.Физлицо = СостояниеРаботниковНаИспытательномСроке.Физлицо}
| {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.Награды КАК ФизическиеЛицаНаграды
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ФизическиеЛицаНаграды.Ссылка}
| {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.Профессии КАК ФизическиеЛицаПрофессии
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ФизическиеЛицаПрофессии.Ссылка}
| {ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СведенияОбИнвалидностиФизлиц.СрезПоследних(&Период, ) КАК СведенияОбИнвалидностиФизлицСрезПоследних
| ПО РаботникиОрганизации.Сотрудник.Физлицо = СведенияОбИнвалидностиФизлицСрезПоследних.Физлицо}
| {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.УченыеЗвания КАК ФизическиеЛицаУченыеЗвания
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ФизическиеЛицаУченыеЗвания.Ссылка}
| {ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.УченыеСтепени КАК ФизическиеЛицаУченыеСтепени
| ПО РаботникиОрганизации.Сотрудник.Физлицо = ФизическиеЛицаУченыеСтепени.Ссылка}
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ДомашнийТелефон
| ПО (ДомашнийТелефон.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Телефон))
| И (ДомашнийТелефон.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ТелефонФизЛица))
| И РаботникиОрганизации.Сотрудник.Физлицо = ДомашнийТелефон.Объект
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК АдресПрописки
| ПО (АдресПрописки.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
| И (АдресПрописки.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресФизЛица))
| И РаботникиОрганизации.Сотрудник.Физлицо = АдресПрописки.Объект
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК ФактическийАдрес
| ПО (ФактическийАдрес.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
| И (ФактическийАдрес.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ФактАдресФизЛица))
| И РаботникиОрганизации.Сотрудник.Физлицо = ФактическийАдрес.Объект
|ГДЕ
| (ВоинскийУчет.ОтношениеКВоинскойОбязанности <> &НеВоеннообязанный
| И ВоинскийУчет.ОтношениеКВоинскомуУчету <> &СнятПоСостояниюЗдоровья
| ИЛИ ВоинскийУчет.ОтношениеКВоинскомуУчету <> &СнятПоВозрасту)
| И РаботникиОрганизации.ПричинаИзмененияСостояния <> &ПричинаИзмененияСостояния
| И ВоинскийУчет.Звание <> &Звание
|{ГДЕ
| РаботникиОрганизации.Сотрудник.Физлицо.* КАК ФизЛицо,
| (ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.ПодразделениеОрганизацииЗавершения
| ИНАЧЕ РаботникиОрганизации.ПодразделениеОрганизации
| КОНЕЦ).* КАК ПодразделениеОрганизации,
| (ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.ОбособленноеПодразделениеЗавершения
| ИНАЧЕ РаботникиОрганизации.ОбособленноеПодразделение
| КОНЕЦ).* КАК ОбособленноеПодразделение,
| (ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.ГрафикРаботыЗавершения
| ИНАЧЕ РаботникиОрганизации.ГрафикРаботы
| КОНЕЦ).* КАК ГрафикРаботы,
| РаботникиОрганизации.Организация.* КАК Организация,
| РаботникиОрганизации.Сотрудник.Код КАК ТабельныйНомер,
| (ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.ЗанимаемыхСтавокЗавершения
| ИНАЧЕ РаботникиОрганизации.ЗанимаемыхСтавок
| КОНЕЦ) КАК ЗанимаемыхСтавок,
| РаботникиОрганизации.Сотрудник.* КАК Сотрудник,
| ПриказыОПриеме.ДатаПриема КАК ДатаПриема,
| ПриказыОПриеме.ВидЗанятости.* КАК ВидЗанятости,
| (ВЫБОР
| КОГДА ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.ПричинаИзмененияСостоянияЗавершения
| ИНАЧЕ РаботникиОрганизации.ПричинаИзмененияСостояния
| КОНЕЦ = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
| ТОГДА ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА ДОБАВИТЬКДАТЕ(РаботникиОрганизации.ПериодЗавершения, ДЕНЬ, -1)
| ИНАЧЕ ДОБАВИТЬКДАТЕ(РаботникиОрганизации.Период, ДЕНЬ, -1)
| КОНЕЦ
| ИНАЧЕ ""-""
| КОНЕЦ) КАК ДатаУвольнения,
| (ВЫБОР
| КОГДА ПлановыеНачисленияРаботниковСрез.ПериодЗавершения <= &Период
| И ПлановыеНачисленияРаботниковСрез.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА ПлановыеНачисленияРаботниковСрез.ВидРасчетаЗавершения
| ИНАЧЕ ПлановыеНачисленияРаботниковСрез.ВидРасчета
| КОНЕЦ).* КАК ВидРасчета,
| (ВЫБОР
| КОГДА ПлановыеНачисленияРаботниковСрез.ПериодЗавершения <= &Период
| И ПлановыеНачисленияРаботниковСрез.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА ВЫБОР
| КОГДА ПлановыеНачисленияРаботниковСрез.ВидРасчетаЗавершения.ТребуетВводаТарифногоРазряда
| ТОГДА РазмерТарифныхСтавокСрезПоследних.Валюта
| ИНАЧЕ ПлановыеНачисленияРаботниковСрез.Валюта1Завершения
| КОНЕЦ
| ИНАЧЕ ВЫБОР
| КОГДА ПлановыеНачисленияРаботниковСрез.ВидРасчета.ТребуетВводаТарифногоРазряда
| ТОГДА РазмерТарифныхСтавокСрезПоследних.Валюта
| ИНАЧЕ ПлановыеНачисленияРаботниковСрез.Валюта1
| КОНЕЦ
| КОНЕЦ).* КАК Валюта,
| (ЕСТЬNULL(ВЫБОР
| КОГДА ПлановыеНачисленияРаботниковСрез.ПериодЗавершения <= &Период
| И ПлановыеНачисленияРаботниковСрез.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА ВЫБОР
| КОГДА ПлановыеНачисленияРаботниковСрез.ВидРасчетаЗавершения.ТребуетВводаТарифногоРазряда
| ТОГДА РазмерТарифныхСтавокСрезПоследних.Размер
| ИНАЧЕ ПлановыеНачисленияРаботниковСрез.Показатель1Завершения
| КОНЕЦ
| ИНАЧЕ ВЫБОР
| КОГДА ПлановыеНачисленияРаботниковСрез.ВидРасчета.ТребуетВводаТарифногоРазряда
| ТОГДА РазмерТарифныхСтавокСрезПоследних.Размер
| ИНАЧЕ ПлановыеНачисленияРаботниковСрез.Показатель1
| КОНЕЦ
| КОНЕЦ, 0)) КАК Размер,
| (ВЫБОР
| КОГДА ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.ПричинаИзмененияСостоянияЗавершения
| ИНАЧЕ РаботникиОрганизации.ПричинаИзмененияСостояния
| КОНЕЦ = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
| ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияРаботникаОрганизации.НеРаботает)
| ИНАЧЕ ЕСТЬNULL(ВЫБОР
| КОГДА &Период >= СостояниеРаботниковОрганизации.ПериодЗавершения
| И СостояниеРаботниковОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА СостояниеРаботниковОрганизации.СостояниеЗавершения
| ИНАЧЕ СостояниеРаботниковОрганизации.Состояние
| КОНЕЦ, ЗНАЧЕНИЕ(Перечисление.СостоянияРаботникаОрганизации.Работает))
| КОНЕЦ) КАК Состояние,
| РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения КАК ФизЛицоДатаРождения,
| РаботникиОрганизации.Сотрудник.Физлицо.ИНН КАК ФизЛицоИНН,
| РаботникиОрганизации.Сотрудник.Физлицо.КодИМНС КАК ФизЛицоКодИМНС,
| РаботникиОрганизации.Сотрудник.Физлицо.Комментарий КАК ФизЛицоКомментарий,
| РаботникиОрганизации.Сотрудник.Физлицо.СтраховойНомерПФР КАК ФизЛицоСтраховойНомерПФР,
| РаботникиОрганизации.Сотрудник.Физлицо.Пол.* КАК ФизЛицоПол,
| РаботникиОрганизации.Сотрудник.Физлицо.МестоРождения КАК ФизЛицоМестоРождения,
| (ВЫБОР
| КОГДА ФИОФизЛиц.Фамилия ЕСТЬ NULL
| ТОГДА РаботникиОрганизации.Сотрудник.Физлицо.Наименование
| ИНАЧЕ ФИОФизЛиц.Фамилия + "" "" + ФИОФизЛиц.Имя + "" "" + ФИОФизЛиц.Отчество
| КОНЕЦ) КАК ФизЛицоФиоПолное,
| (ВЫБОР
| КОГДА ФИОФизЛиц.ФизЛицо ЕСТЬ NULL
| ТОГДА РаботникиОрганизации.Сотрудник.Физлицо.Наименование
| ИНАЧЕ ФИОФизЛиц.Фамилия + ВЫБОР
| КОГДА ПОДСТРОКА(ФИОФизЛиц.Имя, 1, 1) <> """"
| ТОГДА "" "" + ПОДСТРОКА(ФИОФизЛиц.Имя, 1, 1) + "".""
| ИНАЧЕ """"
| КОНЕЦ + ВЫБОР
| КОГДА ПОДСТРОКА(ФИОФизЛиц.Отчество, 1, 1) <> """"
| ТОГДА "" "" + ПОДСТРОКА(ФИОФизЛиц.Отчество, 1, 1) + "".""
| ИНАЧЕ """"
| КОНЕЦ
| КОНЕЦ) КАК ФизЛицоФиоКраткое,
| (ВЫБОР
| КОГДА ГОД(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения) = 1
| ИЛИ РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения > &Период
| ТОГДА 0
| ИНАЧЕ ГОД(&Период) - ГОД(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения) + ВЫБОР
| КОГДА МЕСЯЦ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения) * 100 + ДЕНЬ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения) > МЕСЯЦ(&Период) * 100 + ДЕНЬ(&Период)
| ТОГДА -1
| ИНАЧЕ 0
| КОНЕЦ
| КОНЕЦ) КАК ФизЛицоВозраст,
| СоставСемьиФизлица.СтепеньРодства.* КАК ФизЛицоСтепеньРодства,
| СоставСемьиФизлица.Имя КАК ФизЛицоИмяРодственника,
| СоставСемьиФизлица.ДатаРождения КАК ФизЛицоГодРожденияРодственника,
| (ВЫБОР
| КОГДА СоставСемьиФизлица.ДатаРождения = ДАТАВРЕМЯ(1, 1, 1)
| ИЛИ &Период < СоставСемьиФизлица.ДатаРождения
| ТОГДА 0
| ИНАЧЕ ГОД(&Период) - ГОД(СоставСемьиФизлица.ДатаРождения) + ВЫБОР
| КОГДА МЕСЯЦ(СоставСемьиФизлица.ДатаРождения) * 100 + ДЕНЬ(СоставСемьиФизлица.ДатаРождения) > МЕСЯЦ(&Период) * 100 + ДЕНЬ(&Период)
| ТОГДА -1
| ИНАЧЕ 0
| КОНЕЦ
| КОНЕЦ) КАК ФизЛицоВозрастРодственника,
| ОбразованиеФизлица.ВидОбразования.* КАК ФизЛицоВидОбразования,
| ОбразованиеФизлица.УчебноеЗаведение.* КАК ФизЛицоУчебноеЗаведение,
| ОбразованиеФизлица.Специальность.* КАК ФизЛицоСпециальность,
| ОбразованиеФизлица.Диплом КАК ФизЛицоДиплом,
| ОбразованиеФизлица.ГодОкончания КАК ФизЛицоГодОкончания,
| ОбразованиеФизлица.Квалификация КАК ФизЛицоКвалификация,
| ТрудоваяДеятельностьФизлица.Организация КАК ФизЛицоТД_Организация,
| ТрудоваяДеятельностьФизлица.ДатаНачала КАК ФизЛицоТД_ДатаНачала,
| ТрудоваяДеятельностьФизлица.ДатаОкончания КАК ФизЛицоТД_ДатаОкончания,
| ТрудоваяДеятельностьФизлица.Должность КАК ФизЛицоТД_Должность,
| ЗнаниеЯзыковФизлица.Язык.* КАК ФизЛицоЯзык,
| ЗнаниеЯзыковФизлица.СтепеньЗнанияЯзыка.* КАК ФизЛицоСтепеньЗнанияЯзыка,
| ПаспортныеДанныеФизЛиц.ДокументВид.* КАК ФизЛицоДокументВид,
| ПаспортныеДанныеФизЛиц.ДокументСерия КАК ФизЛицоДокументСерия,
| ПаспортныеДанныеФизЛиц.ДокументНомер КАК ФизЛицоДокументНомер,
| ПаспортныеДанныеФизЛиц.ДокументДатаВыдачи КАК ФизЛицоДокументДатаВыдачи,
| ПаспортныеДанныеФизЛиц.ДокументКемВыдан КАК ФизЛицоДокументКемВыдан,
| ПаспортныеДанныеФизЛиц.ДокументКодПодразделения КАК ФизЛицоДокументКодПодразделения,
| ПаспортныеДанныеФизЛиц.ДатаРегистрацииПоМестуЖительства КАК ФизЛицоДатаРегистрацииПоМестуЖительства,
| ГражданствоФизЛиц.Страна.* КАК ФизЛицоСтрана,
| ГражданствоФизЛиц.НеИмеетПравоНаПенсию КАК ФизЛицоНеИмеетПравоНаПенсию,
| СтатусФизЛицКакНалогоплательщиковНДФЛ.Статус КАК СтатусФизЛицКакНалогоплательщиковНДФЛ,
| ВоинскийУчет.ОтношениеКВоинскойОбязанности.* КАК ФизЛицоОтношениеКВоинскойОбязанности,
| ВоинскийУчет.ОтношениеКВоинскомуУчету.* КАК ФизЛицоОтношениеКВоинскомуУчету,
| ВоинскийУчет.Годность.* КАК ФизЛицоГодность,
| ВоинскийУчет.Звание.* КАК ФизЛицоЗвание,
| ВоинскийУчет.ЗабронированОрганизацией.* КАК ФизЛицоЗабронированОрганизацией,
| ВоинскийУчет.НаличиеМобпредписания КАК ФизЛицоНаличиеМобпредписания,
| ВоинскийУчет.Военкомат.* КАК ФизЛицоВоенкомат,
| ВоинскийУчет.ВУС КАК ФизЛицоВУС,
| ВоинскийУчет.КатегорияЗапаса.* КАК ФизЛицоКатегорияЗапаса,
| ВоинскийУчет.Состав.* КАК ФизЛицоСостав,
| ВоинскийУчет.НомерКомандыПартии КАК ФизЛицоНомерКомандыПартии,
| СемейноеПоложениеФизЛиц.СемейноеПоложение.* КАК ФизЛицоСемейноеПоложение,
| (ВЫБОР
| КОГДА ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.ПричинаИзмененияСостоянияЗавершения
| ИНАЧЕ РаботникиОрганизации.ПричинаИзмененияСостояния
| КОНЕЦ = ЗНАЧЕНИЕ(Перечисление.ПричиныИзмененияСостояния.Увольнение)
| ТОГДА РаботникиОрганизации.ПервичныйДокумент
| ИНАЧЕ ""-""
| КОНЕЦ).* КАК ПриказОбУвольнении,
| ПриказыОПриеме.Приказ.* КАК ПриказОПриеме,
| (ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.ДолжностьЗавершения
| ИНАЧЕ РаботникиОрганизации.Должность
| КОНЕЦ).* КАК Должность,
| (ВЫБОР
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, Стажи.РазмерМесяцев), ДЕНЬ, Стажи.РазмерДней))
| ТОГДА ДЕНЬ(КОНЕЦПЕРИОДА(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, Стажи.РазмерМесяцев), ДЕНЬ, Стажи.РазмерДней), МЕСЯЦ)) - ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, Стажи.РазмерМесяцев), ДЕНЬ, Стажи.РазмерДней)) + ДЕНЬ(&Период)
| КОГДА ДЕНЬ(&Период) > ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, Стажи.РазмерМесяцев), ДЕНЬ, Стажи.РазмерДней))
| ТОГДА ДЕНЬ(&Период) - ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, Стажи.РазмерМесяцев), ДЕНЬ, Стажи.РазмерДней))
| ИНАЧЕ 0
| КОНЕЦ) КАК СтажДней,
| (ВЫБОР
| КОГДА ВЫБОР
| КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ)
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ) - 1
| КОНЕЦ / 12 < (ВЫРАЗИТЬ(ВЫБОР
| КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ)
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ) - 1
| КОНЕЦ / 12 КАК ЧИСЛО(7, 0)))
| ТОГДА (ВЫРАЗИТЬ(ВЫБОР
| КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ)
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ) - 1
| КОНЕЦ / 12 КАК ЧИСЛО(7, 0))) - 1
| ИНАЧЕ ВЫРАЗИТЬ(ВЫБОР
| КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ)
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ) - 1
| КОНЕЦ / 12 КАК ЧИСЛО(7, 0))
| КОНЕЦ) КАК СтажЛет,
| (ВЫБОР
| КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ)
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ) - 1
| КОНЕЦ - ВЫБОР
| КОГДА ВЫБОР
| КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ)
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ) - 1
| КОНЕЦ / 12 < (ВЫРАЗИТЬ(ВЫБОР
| КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ)
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ) - 1
| КОНЕЦ / 12 КАК ЧИСЛО(7, 0)))
| ТОГДА (ВЫРАЗИТЬ(ВЫБОР
| КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ)
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ) - 1
| КОНЕЦ / 12 КАК ЧИСЛО(7, 0))) - 1
| ИНАЧЕ ВЫРАЗИТЬ(ВЫБОР
| КОГДА ДЕНЬ(&Период) >= ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ)
| КОГДА ДЕНЬ(&Период) < ДЕНЬ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней))
| ТОГДА РАЗНОСТЬДАТ(ДОБАВИТЬКДАТЕ(ДОБАВИТЬКДАТЕ(Стажи.ДатаОтсчета, МЕСЯЦ, -Стажи.РазмерМесяцев), ДЕНЬ, -Стажи.РазмерДней), &Период, МЕСЯЦ) - 1
| КОНЕЦ / 12 КАК ЧИСЛО(7, 0))
| КОНЕЦ * 12) КАК СтажМесяцев,
| (ВЫБОР
| КОГДА РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| И (ВЫРАЗИТЬ((ВЫРАЗИТЬ(РАЗНОСТЬДАТ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, &Период, ГОД) КАК ЧИСЛО(7, 0))) / 5 КАК ЧИСЛО(7, 0))) = (ВЫРАЗИТЬ(РАЗНОСТЬДАТ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, &Период, ГОД) КАК ЧИСЛО(7, 0))) / 5
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
| КОНЕЦ) КАК Юбиляр,
| (ВЫБОР
| КОГДА РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| И ДОБАВИТЬКДАТЕ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, МЕСЯЦ, (ВЫРАЗИТЬ(РАЗНОСТЬДАТ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, &Период, ГОД) КАК ЧИСЛО(7, 0))) * 12) < НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ)
| ТОГДА ДОБАВИТЬКДАТЕ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, МЕСЯЦ, (ВЫРАЗИТЬ(РАЗНОСТЬДАТ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, &Период, ГОД) КАК ЧИСЛО(7, 0))) * 12 + 12)
| КОГДА РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА ""Дата рождения не заполнена""
| ИНАЧЕ ДОБАВИТЬКДАТЕ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, МЕСЯЦ, (ВЫРАЗИТЬ(РАЗНОСТЬДАТ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, &Период, ГОД) КАК ЧИСЛО(7, 0))) * 12)
| КОНЕЦ) КАК ДеньРождения,
| (ВЫБОР
| КОГДА РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| И ДОБАВИТЬКДАТЕ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, МЕСЯЦ, (ВЫРАЗИТЬ(РАЗНОСТЬДАТ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, &Период, ГОД) КАК ЧИСЛО(7, 0))) * 12) < НАЧАЛОПЕРИОДА(&Период, МЕСЯЦ)
| ТОГДА МЕСЯЦ(ДОБАВИТЬКДАТЕ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, МЕСЯЦ, (ВЫРАЗИТЬ(РАЗНОСТЬДАТ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, &Период, ГОД) КАК ЧИСЛО(7, 0))) * 12 + 12))
| КОГДА РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА ""Дата рождения не заполнена""
| ИНАЧЕ МЕСЯЦ(ДОБАВИТЬКДАТЕ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, МЕСЯЦ, (ВЫРАЗИТЬ(РАЗНОСТЬДАТ(РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения, &Период, ГОД) КАК ЧИСЛО(7, 0))) * 12))
| КОНЕЦ) КАК Месяц,
| Стажи.ВидСтажа,
| ЛицевыеСчетаРаботниковОрганизации.Банк.*,
| ЛицевыеСчетаРаботниковОрганизации.НомерЛицевогоСчета,
| ЛицевыеСчетаРаботниковОрганизации.Документ КАК ЗаявкаНаОткрытиеСчета,
| (ВЫБОР
| КОГДА Константы.РежимНабораПерсонала <> ЗНАЧЕНИЕ(Перечисление.ВидыОрганизационнойСтруктурыПредприятия.ПоЦентрамОтветственности)
| И РаботникиОрганизации.Сотрудник.ВидЗанятости <> ЗНАЧЕНИЕ(Перечисление.ВидыЗанятостиВОрганизации.ВнутреннееСовместительство)
| И СостояниеРаботниковНаИспытательномСроке.Состояние = ЗНАЧЕНИЕ(Перечисление.СостоянияРаботникаНаИспытательномСроке.ПринятНаИспытательныйСрок)
| ТОГДА ИСТИНА
| ИНАЧЕ ЛОЖЬ
| КОНЕЦ) КАК НаИспытательномСроке,
| ФизическиеЛицаНаграды.Награда.*,
| ФизическиеЛицаНаграды.НомерПриказа,
| ФизическиеЛицаНаграды.ДатаПриказа,
| ФизическиеЛицаНаграды.ЧейПриказ КАК Приказ,
| ФизическиеЛицаПрофессии.Профессия,
| (ЕСТЬNULL(СведенияОбИнвалидностиФизлицСрезПоследних.Инвалидность, ЛОЖЬ)) КАК Инвалидность,
| СведенияОбИнвалидностиФизлицСрезПоследних.СерияСправки,
| СведенияОбИнвалидностиФизлицСрезПоследних.НомерСправки,
| СведенияОбИнвалидностиФизлицСрезПоследних.ДатаВыдачи,
| СведенияОбИнвалидностиФизлицСрезПоследних.ГруппаИнвалидности,
| СведенияОбИнвалидностиФизлицСрезПоследних.СрокДействияСправки,
| ФизическиеЛицаУченыеЗвания.УченоеЗвание.*,
| ФизическиеЛицаУченыеЗвания.ДатаПрисвоенияУченогоЗвания КАК УченоеЗваниеДатаПрисвоенияУченогоЗвания,
| ФизическиеЛицаУченыеЗвания.АттестатСерия КАК УченоеЗваниеАттестатСерия,
| ФизическиеЛицаУченыеЗвания.АттестатНомер КАК УченоеЗваниеАттестатНомер,
| ФизическиеЛицаУченыеЗвания.АттестатВыданОрганизация КАК УченоеЗваниеАттестатВыданОрганизация,
| ФизическиеЛицаУченыеЗвания.НаучнаяСпециальность.* КАК УченоеЗваниеНаучнаяСпециальность,
| ФизическиеЛицаУченыеСтепени.УченаяСтепень.*,
| ФизическиеЛицаУченыеСтепени.ДатаПрисужденияУченойСтепени КАК УченаяСтепеньДатаПрисужденияУченойСтепени,
| ФизическиеЛицаУченыеСтепени.ОтрасльНауки КАК УченаяСтепеньОтрасльНауки,
| ФизическиеЛицаУченыеСтепени.ДиссертационныйСовет КАК УченаяСтепеньДиссертационныйСовет,
| ФизическиеЛицаУченыеСтепени.ДипломСерияНомер КАК УченаяСтепеньДипломСерияНомер,
| ФизическиеЛицаУченыеСтепени.ДипломВыданОрганизация КАК УченаяСтепеньДипломВыданОрганизация,
| РаботникиОрганизации.Сотрудник.Физлицо.ИмеетНаучныеТруды,
| РаботникиОрганизации.Сотрудник.Физлицо.ИмеетИзобретения,
| (ВЫБОР
| КОГДА РаботникиОрганизации.ПериодЗавершения <= &Период
| И РаботникиОрганизации.ПериодЗавершения <> ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
| ТОГДА РаботникиОрганизации.СЗВ_РазрядЗавершения
| ИНАЧЕ РаботникиОрганизации.СЗВ_Разряд
| КОНЕЦ).* КАК СЗВ_Разряд}
|
|СГРУППИРОВАТЬ ПО
| РаботникиОрганизации.Сотрудник,
| ТрудоваяДеятельностьФизлица.Должность,
| ПаспортныеДанныеФизЛиц.ДокументВид,
| ПаспортныеДанныеФизЛиц.ДокументСерия,
| ПаспортныеДанныеФизЛиц.ДокументНомер,
| ПаспортныеДанныеФизЛиц.ДокументДатаВыдачи,
| ВоинскийУчет.Звание,
| ВоинскийУчет.ВУС,
| ВоинскийУчет.Военкомат,
| РаботникиОрганизации.Сотрудник.Физлицо.ДатаРождения,
| РаботникиОрганизации.Должность,
| ПаспортныеДанныеФизЛиц.ДокументВид
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.ФизическиеЛица)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| ВидыКонтактнойИнформации.Ссылка,
| ВидыКонтактнойИнформации.Наименование,
| """" КАК Тип
| ИЗ
| Справочник.ВидыКонтактнойИнформации КАК ВидыКонтактнойИнформации
| ГДЕ
| ВидыКонтактнойИнформации.ВидОбъектаКонтактнойИнформации = ЗНАЧЕНИЕ(Перечисление.ВидыОбъектовКонтактнойИнформации.ФизическиеЛица)
| И НЕ ВидыКонтактнойИнформации.ПометкаУдаления)
| ПОЛЕКЛЮЧА Ссылка
| ПОЛЕИМЕНИ Наименование
| ПОЛЕТИПАЗНАЧЕНИЯ Тип
| ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.КонтактнаяИнформация
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Вид
| ПОЛЕЗНАЧЕНИЯ Представление }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.ДолжностиОрганизаций)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| СвойстваОбъектов.Ссылка,
| "" Дополнительное свойство: "" + СвойстваОбъектов.Наименование КАК Наименование,
| СвойстваОбъектов.ТипЗначения
| ИЗ
| ПланВидовХарактеристик.СвойстваОбъектов КАК СвойстваОбъектов
| ГДЕ
| СвойстваОбъектов.НазначениеСвойства = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ДолжностиОрганизаций)
| И НЕ СвойстваОбъектов.ПометкаУдаления)
| ПОЛЕКЛЮЧА Ссылка
| ПОЛЕИМЕНИ Наименование
| ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения
| ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.ЗначенияСвойствОбъектов
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Свойство
| ПОЛЕЗНАЧЕНИЯ Значение }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.ДолжностиОрганизаций)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| КатегорииОбъектов.Ссылка,
| "" Дополнительная категория: "" + КатегорииОбъектов.Наименование КАК Наименование
| ИЗ
| Справочник.КатегорииОбъектов КАК КатегорииОбъектов
| ГДЕ
| КатегорииОбъектов.НазначениеКатегории = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ДолжностиОрганизаций)
| И НЕ КатегорииОбъектов.ПометкаУдаления)
| ПОЛЕКЛЮЧА Ссылка
| ПОЛЕИМЕНИ Наименование
| ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.КатегорииОбъектов
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Категория }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.ПодразделенияОрганизаций)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| СвойстваОбъектов.Ссылка,
| "" Дополнительное свойство: "" + СвойстваОбъектов.Наименование КАК Наименование,
| СвойстваОбъектов.ТипЗначения
| ИЗ
| ПланВидовХарактеристик.СвойстваОбъектов КАК СвойстваОбъектов
| ГДЕ
| СвойстваОбъектов.НазначениеСвойства = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ПодразделенияОрганизаций)
| И НЕ СвойстваОбъектов.ПометкаУдаления)
| ПОЛЕКЛЮЧА Ссылка
| ПОЛЕИМЕНИ Наименование
| ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения
| ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.ЗначенияСвойствОбъектов
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Свойство
| ПОЛЕЗНАЧЕНИЯ Значение }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.СотрудникиОрганизаций)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| СвойстваОбъектов.Ссылка,
| "" Дополнительное свойство: "" + СвойстваОбъектов.Наименование КАК Наименование,
| СвойстваОбъектов.ТипЗначения
| ИЗ
| ПланВидовХарактеристик.СвойстваОбъектов КАК СвойстваОбъектов
| ГДЕ
| СвойстваОбъектов.НазначениеСвойства = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_СотрудникиОрганизаций)
| И НЕ СвойстваОбъектов.ПометкаУдаления)
| ПОЛЕКЛЮЧА Ссылка
| ПОЛЕИМЕНИ Наименование
| ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения
| ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.ЗначенияСвойствОбъектов
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Свойство
| ПОЛЕЗНАЧЕНИЯ Значение }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.ПодразделенияОрганизаций)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| КатегорииОбъектов.Ссылка,
| "" Дополнительная категория: "" + КатегорииОбъектов.Наименование КАК Наименование
| ИЗ
| Справочник.КатегорииОбъектов КАК КатегорииОбъектов
| ГДЕ
| КатегорииОбъектов.НазначениеКатегории = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ПодразделенияОрганизаций)
| И НЕ КатегорииОбъектов.ПометкаУдаления)
| ПОЛЕКЛЮЧА Ссылка
| ПОЛЕИМЕНИ Наименование
| ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.КатегорииОбъектов
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Категория }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.СотрудникиОрганизаций)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| КатегорииОбъектов.Ссылка,
| "" Дополнительная категория: "" + КатегорииОбъектов.Наименование КАК Наименование
| ИЗ
| Справочник.КатегорииОбъектов КАК КатегорииОбъектов
| ГДЕ
| КатегорииОбъектов.НазначениеКатегории = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_СотрудникиОрганизаций)
| И НЕ КатегорииОбъектов.ПометкаУдаления)
| ПОЛЕКЛЮЧА Ссылка
| ПОЛЕИМЕНИ Наименование
| ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.КатегорииОбъектов
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Категория }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.ФизическиеЛица)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| СвойстваОбъектов.Ссылка,
| "" Дополнительное свойство: "" + СвойстваОбъектов.Наименование КАК Наименование,
| СвойстваОбъектов.ТипЗначения
| ИЗ
| ПланВидовХарактеристик.СвойстваОбъектов КАК СвойстваОбъектов
| ГДЕ
| СвойстваОбъектов.НазначениеСвойства = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ФизическиеЛица)
| И НЕ СвойстваОбъектов.ПометкаУдаления)
| ПОЛЕКЛЮЧА Ссылка
| ПОЛЕИМЕНИ Наименование
| ПОЛЕТИПАЗНАЧЕНИЯ ТипЗначения
| ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.ЗначенияСвойствОбъектов
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Свойство
| ПОЛЕЗНАЧЕНИЯ Значение }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.ПодразделенияОрганизаций)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| ""Ответственное лицо"" КАК Идентификатор,
| ""Ответственное лицо"" КАК ИмяХарактеристики)
| ПОЛЕКЛЮЧА Идентификатор
| ПОЛЕИМЕНИ ИмяХарактеристики
| ЗНАЧЕНИЯХАРАКТЕРИСТИК (ВЫБРАТЬ
| ОтветственныеЛицаСрезПоследних.СтруктурнаяЕдиница КАК Объект,
| ""Ответственное лицо"" КАК Идентификатор,
| ОтветственныеЛицаСрезПоследних.ФизическоеЛицо КАК ЗначениеОтв
| ИЗ
| РегистрСведений.ОтветственныеЛицаОрганизаций.СрезПоследних(&Период, ) КАК ОтветственныеЛицаСрезПоследних
| ГДЕ
| ОтветственныеЛицаСрезПоследних.СтруктурнаяЕдиница ССЫЛКА Справочник.ПодразделенияОрганизаций
| И ОтветственныеЛицаСрезПоследних.ОтветственноеЛицо = ЗНАЧЕНИЕ(Перечисление.ОтветственныеЛицаОрганизаций.Руководитель))
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Идентификатор
| ПОЛЕЗНАЧЕНИЯ ЗначениеОтв }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.ФизическиеЛица)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| КатегорииОбъектов.Ссылка,
| "" Дополнительная категория: "" + КатегорииОбъектов.Наименование КАК Наименование
| ИЗ
| Справочник.КатегорииОбъектов КАК КатегорииОбъектов
| ГДЕ
| КатегорииОбъектов.НазначениеКатегории = ЗНАЧЕНИЕ(ПланВидовХарактеристик.НазначенияСвойствКатегорийОбъектов.Справочник_ФизическиеЛица)
| И НЕ КатегорииОбъектов.ПометкаУдаления)
| ПОЛЕКЛЮЧА Ссылка
| ПОЛЕИМЕНИ Наименование
| ЗНАЧЕНИЯХАРАКТЕРИСТИК РегистрСведений.КатегорииОбъектов
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Категория }
|{ХАРАКТЕРИСТИКИ
| ТИП(Справочник.ДолжностиОрганизаций)
| ВИДЫХАРАКТЕРИСТИК (ВЫБРАТЬ
| ""Класс условий труда"" КАК Идентификатор,
| ""Класс условий труда"" КАК ИмяХарактеристики)
| ПОЛЕКЛЮЧА Идентификатор
| ПОЛЕИМЕНИ ИмяХарактеристики
| ЗНАЧЕНИЯХАРАКТЕРИСТИК (ВЫБРАТЬ
| КлассыУсловийТрудаПоДолжностям.Должность КАК Объект,
| ""Класс условий труда"" КАК Идентификатор,
| КлассыУсловийТрудаПоДолжностям.КлассУсловийТруда КАК КлассУсловийТруда
| ИЗ
| РегистрСведений.КлассыУсловийТрудаПоДолжностям.СрезПоследних(&Период, ) КАК КлассыУсловийТрудаПоДолжностям)
| ПОЛЕОБЪЕКТА Объект
| ПОЛЕВИДА Идентификатор
| ПОЛЕЗНАЧЕНИЯ КлассУсловийТруда }
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ВТ_ВыборкаСотрудники.Сотрудник КАК Сотрудник,
| ВТ_ВыборкаСотрудники.Должность КАК Должность,
| ВТ_ВыборкаСотрудники.ФизЛицоДатаРождения КАК ФизЛицоДатаРождения,
| ВТ_ВыборкаСотрудники.ФизЛицоДокументВид КАК ФизЛицоДокументВид,
| ВТ_ВыборкаСотрудники.ФизЛицоДокументСерия КАК ФизЛицоДокументСерия,
| ВТ_ВыборкаСотрудники.ФизЛицоДокументНомер КАК ФизЛицоДокументНомер,
| ВТ_ВыборкаСотрудники.ФизЛицоДокументДатаВыдачи КАК ФизЛицоДокументДатаВыдачи,
| ВТ_ВыборкаСотрудники.ФизЛицоЗвание КАК ФизЛицоЗвание,
| ВТ_ВыборкаСотрудники.ФизЛицоВУС КАК ФизЛицоВУС,
| ВТ_ВыборкаСотрудники.ФизЛицоВоенкомат КАК ФизЛицоВоенкомат,
| ВТ_ВыборкаСотрудники.ДокументВид КАК ДокументВид,
| ПаспортныеДанныеФизЛицСрезПоследних.ДокументКемВыдан,
| ЕСТЬNULL(АдресПрописки.Представление, """") КАК Прописка,
| ФизическиеЛицаСоставСемьи.НомерСтроки,
| ФизическиеЛицаСоставСемьи.СтепеньРодства,
| ФизическиеЛицаСоставСемьи.Имя,
| ФизическиеЛицаСоставСемьи.ДатаРождения
|ИЗ
| ВТ_ВыборкаСотрудники КАК ВТ_ВыборкаСотрудники
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ПаспортныеДанныеФизЛиц.СрезПоследних КАК ПаспортныеДанныеФизЛицСрезПоследних
| ПО ВТ_ВыборкаСотрудники.Сотрудник.Физлицо = ПаспортныеДанныеФизЛицСрезПоследних.ФизЛицо
| ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.КонтактнаяИнформация КАК АдресПрописки
| ПО ВТ_ВыборкаСотрудники.Сотрудник.Физлицо = АдресПрописки.Объект
| И (АдресПрописки.Тип = ЗНАЧЕНИЕ(Перечисление.ТипыКонтактнойИнформации.Адрес))
| И (АдресПрописки.Вид = ЗНАЧЕНИЕ(Справочник.ВидыКонтактнойИнформации.ЮрАдресФизЛица))
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица.СоставСемьи КАК ФизическиеЛицаСоставСемьи
| ПО ФизическиеЛица.СоставСемьи.Ссылка = ФизическиеЛицаСоставСемьи.Ссылка
| ПО ВТ_ВыборкаСотрудники.Сотрудник.Физлицо = ФизическиеЛица.Ссылка
|
|УПОРЯДОЧИТЬ ПО
| Сотрудник
|АВТОУПОРЯДОЧИВАНИЕ";

Запрос.УстановитьПараметр("Период", Период);
Запрос.УстановитьПараметр("НеВоеннообязанный", Перечисления.ОтношениеКВоинскойОбязанности.НеВоеннообязанный);
Запрос.УстановитьПараметр("СнятПоСостояниюЗдоровья", Перечисления.ОтношениеКВоинскомуУчету.СнятПоСостояниюЗдоровья);
Запрос.УстановитьПараметр("СнятПоВозрасту", Перечисления.ОтношениеКВоинскомуУчету.СнятПоВозрасту);
Запрос.УстановитьПараметр("ПричинаИзмененияСостояния", Перечисления.ПричиныИзмененияСостояния.Увольнение);
Запрос.УстановитьПараметр("Звание", Справочники.ЗваниеГражданскогоВоинскогоУчета.ПустаяСсылка());

Результат = Запрос.Выполнить();

Макет = ЭтотОбъект.ПолучитьМакет("Макет");
ОбластьЗаголовок = Макет.ПолучитьОбласть("Заголовок");
ОбластьПодвал = Макет.ПолучитьОбласть("Подвал");
ОбластьШапкаТаблицы = Макет.ПолучитьОбласть("ШапкаТаблицы");
ОбластьПодвалТаблицы = Макет.ПолучитьОбласть("ПодвалТаблицы");
ОбластьДетальныхЗаписей = Макет.ПолучитьОбласть("Детали");

ТабДок = Новый ТабличныйДокумент;

ТабДок.Очистить();
ТабДок.Вывести(ОбластьЗаголовок);
ТабДок.Вывести(ОбластьШапкаТаблицы);
ТабДок.НачатьАвтогруппировкуСтрок();

ВыборкаДетальныеЗаписи = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам);

Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

Если ВыборкаДетальныеЗаписи.НомерСтроки = 1 Тогда 
Родственник = " " + ВыборкаДетальныеЗаписи.СтепеньРодства + " " + ВыборкаДетальныеЗаписи.Имя + " " + Формат(ВыборкаДетальныеЗаписи.ДатаРождения, "ДЛФ=Д");
ИначеЕсли ВыборкаДетальныеЗаписи.НомерСтроки <> 1 Тогда
Родственник = " " + Родственник + " ; " + ВыборкаДетальныеЗаписи.СтепеньРодства + " " + ВыборкаДетальныеЗаписи.Имя + " " + Формат(ВыборкаДетальныеЗаписи.ДатаРождения, "ДЛФ=Д");
КонецЕсли;

ОбластьДетальныхЗаписей.Параметры.Сотрудник = ВыборкаДетальныеЗаписи.Сотрудник;
ОбластьДетальныхЗаписей.Параметры.Должность = ВыборкаДетальныеЗаписи.Должность;
ОбластьДетальныхЗаписей.Параметры.ФизЛицоДатаРождения = ВыборкаДетальныеЗаписи.ФизЛицоДатаРождения;
ОбластьДетальныхЗаписей.Параметры.ФизЛицоДокументВид = ВыборкаДетальныеЗаписи.ФизЛицоДокументВид;
ОбластьДетальныхЗаписей.Параметры.ФизЛицоДокументСерия = ВыборкаДетальныеЗаписи.ФизЛицоДокументСерия;
ОбластьДетальныхЗаписей.Параметры.ФизЛицоДокументНомер = ВыборкаДетальныеЗаписи.ФизЛицоДокументНомер;
ОбластьДетальныхЗаписей.Параметры.ФизЛицоДокументДатавыдачи = ВыборкаДетальныеЗаписи.ФизЛицоДокументДатаВыдачи;
ОбластьДетальныхЗаписей.Параметры.ФизЛицоЗвание = ВыборкаДетальныеЗаписи.ФизЛицоЗвание;
ОбластьДетальныхЗаписей.Параметры.ФизЛицоВУС = ВыборкаДетальныеЗаписи.ФизЛицоВУС;
ОбластьДетальныхЗаписей.Параметры.ФизЛицоВоенкомат = ВыборкаДетальныеЗаписи.ФизЛицоВоенкомат;
ОбластьДетальныхЗаписей.Параметры.ДокументВид = ВыборкаДетальныеЗаписи.ДокументВид;
ОбластьДетальныхЗаписей.Параметры.ДокументКемВыдан = ВыборкаДетальныеЗаписи.ДокументКемВыдан;
ОбластьДетальныхЗаписей.Параметры.Прописка = ВыборкаДетальныеЗаписи.Прописка;
ОбластьДетальныхЗаписей.Параметры.Родственник = Родственник;

ТабДок.Вывести(ОбластьДетальныхЗаписей);
//ОбластьДетальныхЗаписей.Параметры.Заполнить(ВыборкаДетальныеЗаписи);
//ТабДок.Вывести(ОбластьДетальныхЗаписей, ВыборкаДетальныеЗаписи.Уровень());

КонецЦикла;

ТабДок.ЗакончитьАвтогруппировкуСтрок();
ТабДок.Вывести(ОбластьПодвалТаблицы);
ТабДок.Вывести(ОбластьПодвал);
ТабДок.Показать();
//}}КОНСТРУКТОР_ЗАПРОСА_С_ОБРАБОТКОЙ_РЕЗУЛЬТАТА

ksander-fars

PS Отчет скопирован с конфигурации и вставлен во внешний. Множество ненужных полей но это не важно... Главное что бы строки правильно формировал.

alex0402

Цитата: ksander-fars от 15 фев 2017, 09:32ВыборкаДетальныеЗаписи = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл

добавить еще один вложенный цикл.
Выборка = ВыборкаДетальныеЗаписи.Выбрать();
Пока Выборка.Следующий() Цикл
//здесь манипуляции с родственниками
КонецЦикла
// здесь вывод
Спасибо за Сказать спасибо

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск