Получение актуальной ученой степени из ЗУП

1. Pyryrym 28.07.21 09:46 Сейчас в теме
Из непериодического независимого регистра сведений "Ученые степени физических лиц" нужно получить актуальную (с большей датой присуждения степени) степень. У меня получилось сделать так:

ВЫБРАТЬ
	УченыеСтепениФизическихЛиц.ФизическоеЛицо КАК ФизическоеЛицо,
	МАКСИМУМ(УченыеСтепениФизическихЛиц.ДатаПрисужденияУченойСтепени) КАК ДатаПрисужденияУченойСтепени
ПОМЕСТИТЬ ВТ1
ИЗ
	РегистрСведений.УченыеСтепениФизическихЛиц КАК УченыеСтепениФизическихЛиц

СГРУППИРОВАТЬ ПО
	УченыеСтепениФизическихЛиц.ФизическоеЛицо
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВТ1.ФизическоеЛицо КАК ФизическоеЛицо,
	ВТ1.ДатаПрисужденияУченойСтепени КАК ДатаПрисужденияУченойСтепени,
	УченыеСтепениФизическихЛиц.УченаяСтепень КАК УченаяСтепень
ИЗ
	ВТ1 КАК ВТ1
		ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.УченыеСтепениФизическихЛиц КАК УченыеСтепениФизическихЛиц
		ПО (ВТ1.ФизическоеЛицо = УченыеСтепениФизическихЛиц.ФизическоеЛицо
				И ВТ1.ДатаПрисужденияУченойСтепени = УченыеСтепениФизическихЛиц.ДатаПрисужденияУченойСтепени)
Показать


А можно ли это сделать одним запросом?
По теме из базы знаний
Найденные решения
4. ixijixi 1810 28.07.21 10:15 Сейчас в теме
Можно
	ДанныеСотрудника = КадровыйУчет.КадровыеДанныеСотрудников(Истина,
		Сотрудник,
		"УченаяСтепень",
		Дата);
Pyryrym; TODD22; VAAngelov; +3 Ответить
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. VAAngelov 369 28.07.21 10:14 Сейчас в теме
(1) Во-первых непонятно, что значит одним запросом? У вас и так один запрос. Может одним пакетом?

Во-вторых мой вам совет, в ЗУПе надо пользоваться механизмом представлений.

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

Вот текст запроса за 2 минуты вам прямо из конструктора Пердставлений:
ВЫБРАТЬ
	ДАТАВРЕМЯ(1, 1, 1) КАК Период,
	Сотрудники.Ссылка КАК Сотрудник
ПОМЕСТИТЬ ВТСотрудникиПериоды
ИЗ
	Справочник.Сотрудники КАК Сотрудники
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
	ТаблицаОтборов.Период КАК Период,
	ТаблицаОтборов.Сотрудник КАК Сотрудник,
	СправочникСотрудники.ФизическоеЛицо КАК ФизическоеЛицо,
	ВЫРАЗИТЬ(ТаблицаОтборов.Сотрудник КАК Справочник.Сотрудники).ГоловнойСотрудник КАК ГоловнойСотрудникТаблицыРазличных
ПОМЕСТИТЬ ВТОтборовРазличныхСотрудников
ИЗ
	ВТСотрудникиПериоды КАК ТаблицаОтборов
		ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Сотрудники КАК СправочникСотрудники
		ПО ТаблицаОтборов.Сотрудник = СправочникСотрудники.Ссылка
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ РАЗЛИЧНЫЕ
	ТаблицаОтборов.Период КАК Период,
	ТаблицаОтборов.Сотрудник КАК Сотрудник,
	ВЫРАЗИТЬ(ТаблицаОтборов.Сотрудник КАК Справочник.Сотрудники).ФизическоеЛицо КАК ФизическоеЛицо
ПОМЕСТИТЬ ВТОтборовРазличныхФизическихЛиц
ИЗ
	ВТСотрудникиПериоды КАК ТаблицаОтборов
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ФизическиеЛицаУченыеСтепени.ФизическоеЛицо КАК ФизическоеЛицо,
	МАКСИМУМ(ФизическиеЛицаУченыеСтепени.ДатаПрисужденияУченойСтепени) КАК ДатаПрисужденияУченойСтепени
ПОМЕСТИТЬ ВТМаксимальныеДатыПрисужденияУченыхСтепеней
ИЗ
	ВТОтборовРазличныхФизическихЛиц КАК ТаблицаОтборов
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.УченыеСтепениФизическихЛиц КАК ФизическиеЛицаУченыеСтепени
		ПО ТаблицаОтборов.ФизическоеЛицо = ФизическиеЛицаУченыеСтепени.ФизическоеЛицо
{ГДЕ
	ФизическиеЛицаУченыеСтепени.ФизическоеЛицо.* КАК ФизическоеЛицо}

СГРУППИРОВАТЬ ПО
	ФизическиеЛицаУченыеСтепени.ФизическоеЛицо
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	МаксимальныеДатыПрисужденияУченыхСтепеней.ФизическоеЛицо КАК ФизическоеЛицо,
	МАКСИМУМ(ФизическиеЛицаУченыеСтепени.НомерПоПорядку) КАК НомерСтроки
ПОМЕСТИТЬ ВТНомераСтрокУченыхСтепеней
ИЗ
	ВТМаксимальныеДатыПрисужденияУченыхСтепеней КАК МаксимальныеДатыПрисужденияУченыхСтепеней
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.УченыеСтепениФизическихЛиц КАК ФизическиеЛицаУченыеСтепени
		ПО МаксимальныеДатыПрисужденияУченыхСтепеней.ФизическоеЛицо = ФизическиеЛицаУченыеСтепени.ФизическоеЛицо
			И МаксимальныеДатыПрисужденияУченыхСтепеней.ДатаПрисужденияУченойСтепени = ФизическиеЛицаУченыеСтепени.ДатаПрисужденияУченойСтепени

СГРУППИРОВАТЬ ПО
	МаксимальныеДатыПрисужденияУченыхСтепеней.ФизическоеЛицо
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	НомераСтрокУченыхСтепеней.ФизическоеЛицо КАК ФизическоеЛицо,
	ФизическиеЛицаУченыеСтепени.УченаяСтепень КАК УченаяСтепень,
	ФизическиеЛицаУченыеСтепени.ДатаПрисужденияУченойСтепени КАК УченаяСтепеньДатаПрисуждения,
	ВЫБОР
		КОГДА ФизическиеЛицаУченыеСтепени.УченаяСтепень.ОтрасльНауки <> ЗНАЧЕНИЕ(Справочник.ОтраслиНауки.ПустаяСсылка)
			ТОГДА ФизическиеЛицаУченыеСтепени.УченаяСтепень.ОтрасльНауки
		ИНАЧЕ ЗНАЧЕНИЕ(Справочник.ОтраслиНауки.ПустаяСсылка)
	КОНЕЦ КАК УченаяСтепеньОтрасльНауки,
	ФизическиеЛицаУченыеСтепени.ДиссертационныйСовет КАК УченаяСтепеньДиссертационныйСовет,
	ФизическиеЛицаУченыеСтепени.ДипломСерияНомер КАК УченаяСтепеньДипломСерияНомер,
	ФизическиеЛицаУченыеСтепени.ДипломВыданОрганизация КАК УченаяСтепеньОрганизация
ПОМЕСТИТЬ ВТПредварительноУченыеСтепени
ИЗ
	ВТНомераСтрокУченыхСтепеней КАК НомераСтрокУченыхСтепеней
		ВНУТРЕННЕЕ СОЕДИНЕНИЕ РегистрСведений.УченыеСтепениФизическихЛиц КАК ФизическиеЛицаУченыеСтепени
		ПО (ФизическиеЛицаУченыеСтепени.ФизическоеЛицо = НомераСтрокУченыхСтепеней.ФизическоеЛицо)
			И (ФизическиеЛицаУченыеСтепени.НомерПоПорядку = НомераСтрокУченыхСтепеней.НомерСтроки)
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	УченыеСтепени.ФизическоеЛицо КАК ФизическоеЛицо,
	УченыеСтепени.УченаяСтепень КАК УченаяСтепень,
	УченыеСтепени.УченаяСтепеньДатаПрисуждения КАК УченаяСтепеньДатаПрисуждения,
	УченыеСтепени.УченаяСтепеньОтрасльНауки КАК УченаяСтепеньОтрасльНауки,
	УченыеСтепени.УченаяСтепеньДиссертационныйСовет КАК УченаяСтепеньДиссертационныйСовет,
	УченыеСтепени.УченаяСтепеньДипломСерияНомер КАК УченаяСтепеньДипломСерияНомер,
	УченыеСтепени.УченаяСтепеньОрганизация КАК УченаяСтепеньОрганизация
ПОМЕСТИТЬ ВТУченыеСтепениФизическихЛиц
ИЗ
	ВТПредварительноУченыеСтепени КАК УченыеСтепени
;

////////////////////////////////////////////////////////////­////////////////////
УНИЧТОЖИТЬ ВТМаксимальныеДатыПрисужденияУченыхСтепеней
;

////////////////////////////////////////////////////////////­////////////////////
УНИЧТОЖИТЬ ВТНомераСтрокУченыхСтепеней
;

////////////////////////////////////////////////////////////­////////////////////
УНИЧТОЖИТЬ ВТПредварительноУченыеСтепени
;

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ТаблицаОтборов.Период КАК Период,
	ТаблицаОтборов.Сотрудник КАК Сотрудник,
	ТаблицаОтборов.ФизическоеЛицо КАК ФизическоеЛицо,
	УченыеСтепени.УченаяСтепень КАК УченаяСтепень
ПОМЕСТИТЬ ПредставленияКадровыеДанныеСотрудников
ИЗ
	ВТОтборовРазличныхФизическихЛиц КАК ТаблицаОтборов
		{ЛЕВОЕ СОЕДИНЕНИЕ ВТУченыеСтепениФизическихЛиц КАК УченыеСтепени
		ПО ТаблицаОтборов.ФизическоеЛицо = УченыеСтепени.ФизическоеЛицо}
;

////////////////////////////////////////////////////////////­////////////////////
УНИЧТОЖИТЬ ВТОтборовРазличныхФизическихЛиц
;

////////////////////////////////////////////////////////////­////////////////////
УНИЧТОЖИТЬ ВТУченыеСтепениФизическихЛиц
;

////////////////////////////////////////////////////////////­////////////////////
УНИЧТОЖИТЬ ВТОтборовРазличныхСотрудников
Показать
10. VAAngelov 369 28.07.21 10:34 Сейчас в теме
(2) А вот и сам конструктор с сайта ИТС
Прикрепленные файлы:
hrm3.zip
3. VAAngelov 369 28.07.21 10:14 Сейчас в теме
(1)А вот ссылка на ИТС на сам конструктор https://its.1c.ru/db/metod81#content:7329:hdoc
6. VAAngelov 369 28.07.21 10:16 Сейчас в теме
(1)вот полезная статья для ЗУПа. Сохраните себе. еще ни раз пригодится. https://infostart.ru/1c/articles/942569/
4. ixijixi 1810 28.07.21 10:15 Сейчас в теме
Можно
	ДанныеСотрудника = КадровыйУчет.КадровыеДанныеСотрудников(Истина,
		Сотрудник,
		"УченаяСтепень",
		Дата);
Pyryrym; TODD22; VAAngelov; +3 Ответить
5. VAAngelov 369 28.07.21 10:16 Сейчас в теме
(4) Можно и так да. Лаконично. БСП.
8. ixijixi 1810 28.07.21 10:22 Сейчас в теме
(5) Если нужно получить уч. степень и ничего более, то лучше так. ЗУП сама построит оптимальный запрос.
А если делаешь отчет, то да, лучше воспользоваться представлениями.
ТС не огласил, для какой цели ему это нужно)
m-pol68; VAAngelov; +2 Ответить
9. VAAngelov 369 28.07.21 10:24 Сейчас в теме
(8)Полностью поддерживаю!)
Оставьте свое сообщение

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот