Очень срочно нужна помощь ЗУП 3.1 Приказ об изменении личных данных (Печатная форма)

1. Гость 26.03.21 12:47
Нужна помощь, не могу разобраться в приказе нужно указать старую фамилию и новую, но как это сделать я не понимаю и информации нет никакой. Получается указать только новые данные. И второй вопрос может вы знаете почему в строке должность и подразделение нечего не выводится хотя данные заполнены. Пожалуйста объясните по подробнее глупому человечку уж очень хочеться разобраться подробно в этой теме. Спасибо за помощь))

 Функция ПечатьИзменениеСведений(МассивОбъектов) Экспорт 


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

     
          
    Запрос.УстановитьПараметр("Ссылка", МассивОбъектов);
    Выборка = Запрос.Выполнить().Выбрать();
    Выборка.Следующий();
    ОбластьМакет.Параметры.Заполнить(Выборка);
    
    ОбластьМакет.Параметры.Дата = Формат(Выборка.Дата, "ДЛФ=D");
    ОбластьМакет.Параметры.Номер = Выборка.Номер;


    
    ОбластьМакет1 = Макет.ПолучитьОбласть("Строка");
    ОбластьМакет1.Параметры.Заполнить(Выборка);
    
    ОбластьМакет2 = Макет.ПолучитьОбласть("Подвал");
    
    ТабДок.Вывести(ОбластьМакет);
    ТабДок.Вывести(ОбластьМакет1);
    ТабДок.Вывести(ОбластьМакет2);
    ТабДок.АвтоМасштаб = Истина;

    Возврат ТабДок;

    
КонецФункции
Показать
Прикрепленные файлы:
Найденные решения
5. Tommy82 65 26.03.21 13:53 Сейчас в теме
1. мой совет на будущее - сделайте себе расширение на основе https://forum.infostart.ru/forum9/topic193001/ и наполняйте его данными
2. Прежние ФИО это РС ФИОФизическихЛицСрезПервых
6. ~Ponk@~ 13 26.03.21 14:38 Сейчас в теме
ВЫБРАТЬ
	ПроизвольныйПриказТЧ.Сотрудник.Представление КАК СотрудникПредставление,
	ПроизвольныйПриказ.Дата КАК Дата,
	ПроизвольныйПриказТЧ.Сотрудник КАК Сотрудник,
	ПроизвольныйПриказ.Номер КАК Номер,
	ПроизвольныйПриказТЧ.Сотрудник.Код КАК Код
ПОМЕСТИТЬ ВР1
ИЗ
	Документ.ПроизвольныйПриказ.ТЧ.Сотрудники КАК ПроизвольныйПриказТЧ
		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПроизвольныйПриказ.ТЧ КАК ПроизвольныйПриказ
		ПО ПроизвольныйПриказТЧ.Ссылка = ПроизвольныйПриказ.Ссылка
ГДЕ
	ПроизвольныйПриказ.Ссылка В(&Ссылка)
;

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

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

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВР1.СотрудникПредставление КАК СотрудникПредставление,
	ВР1.Дата КАК Дата,
	ВР1.Сотрудник КАК Сотрудник,
	ВР1.Номер КАК Номер,
	ВР1.Код КАК Код,
	ВР3.Фамилия КАК Фамилия,
	ВР3.Имя КАК Имя,
	ВР3.Отчество КАК Отчество,
	ВР2.Подразделение КАК Подразделение,
	ВР2.Должность КАК Должность
ИЗ
	ВР1 КАК ВР1
		ЛЕВОЕ СОЕДИНЕНИЕ ВР2 КАК ВР2
		ПО ВР1.Сотрудник = ВР2.Сотрудник
		ЛЕВОЕ СОЕДИНЕНИЕ ВР3 КАК ВР3
		ПО ВР1.Сотрудник.ФизическоеЛицо = ВР3.ФизическоеЛицо
			И (ВР3.Период < &Период)
Показать
Остальные ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
2. user633533_encantado 11 26.03.21 12:58 Сейчас в теме
У вас в базе только одно подразделение ?
3. Гость 26.03.21 13:03
(2) Нет, много разных подразделений
4. user633533_encantado 11 26.03.21 13:31 Сейчас в теме
(3) | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриемНаРаботу КАК ПриемНаРаботу
| ПО ТекущиеКадровыеДанныеСотрудников.ТекущееПодразделение = ПриемНаРаботу.Подразделение

Соединяет всю кадровую историю со всеми приемами по подразделениям.
5. Tommy82 65 26.03.21 13:53 Сейчас в теме
1. мой совет на будущее - сделайте себе расширение на основе https://forum.infostart.ru/forum9/topic193001/ и наполняйте его данными
2. Прежние ФИО это РС ФИОФизическихЛицСрезПервых
9. TShef 29.03.21 09:47 Сейчас в теме
(5) А если физ.лицо меняло фамилию более одного раза?
10. an_gl 29.03.21 16:22 Сейчас в теме
(5)Тоже интересует вопрос если не один раз человек менял фамилию?
11. Tommy82 65 30.03.21 12:05 Сейчас в теме
(10)
1. Иванова Иванна Ивановна на 01.01.2019
2. Петрова Иванна Ивановна на 01.01.2020
3. Сидорова Иванна Ивановна на 01.01.2021

всё зависит от того как вы собираете отчет и в каком виде:
чистое скд или ручками или смешанное в строку или в столбец;

какая именно задача?
12. an_gl 07.04.21 10:49 Сейчас в теме
13. Tommy82 65 08.04.21 16:41 Сейчас в теме
(12)
делаете ВТ отдельно по всем ФИО
потом через менеджер временных таблиц вытягиваете
6. ~Ponk@~ 13 26.03.21 14:38 Сейчас в теме
ВЫБРАТЬ
	ПроизвольныйПриказТЧ.Сотрудник.Представление КАК СотрудникПредставление,
	ПроизвольныйПриказ.Дата КАК Дата,
	ПроизвольныйПриказТЧ.Сотрудник КАК Сотрудник,
	ПроизвольныйПриказ.Номер КАК Номер,
	ПроизвольныйПриказТЧ.Сотрудник.Код КАК Код
ПОМЕСТИТЬ ВР1
ИЗ
	Документ.ПроизвольныйПриказ.ТЧ.Сотрудники КАК ПроизвольныйПриказТЧ
		ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПроизвольныйПриказ.ТЧ КАК ПроизвольныйПриказ
		ПО ПроизвольныйПриказТЧ.Ссылка = ПроизвольныйПриказ.Ссылка
ГДЕ
	ПроизвольныйПриказ.Ссылка В(&Ссылка)
;

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

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

////////////////////////////////////////////////////////////­////////////////////
ВЫБРАТЬ
	ВР1.СотрудникПредставление КАК СотрудникПредставление,
	ВР1.Дата КАК Дата,
	ВР1.Сотрудник КАК Сотрудник,
	ВР1.Номер КАК Номер,
	ВР1.Код КАК Код,
	ВР3.Фамилия КАК Фамилия,
	ВР3.Имя КАК Имя,
	ВР3.Отчество КАК Отчество,
	ВР2.Подразделение КАК Подразделение,
	ВР2.Должность КАК Должность
ИЗ
	ВР1 КАК ВР1
		ЛЕВОЕ СОЕДИНЕНИЕ ВР2 КАК ВР2
		ПО ВР1.Сотрудник = ВР2.Сотрудник
		ЛЕВОЕ СОЕДИНЕНИЕ ВР3 КАК ВР3
		ПО ВР1.Сотрудник.ФизическоеЛицо = ВР3.ФизическоеЛицо
			И (ВР3.Период < &Период)
Показать
7. Гость 26.03.21 14:41
Спасибо большое всем за помощь, ответы очень помогли)
8. ~Ponk@~ 13 26.03.21 14:43 Сейчас в теме
(7)используйте в запросе параметром дату документа, без периода в нем не обойтись. а вообще тут все описано, как данные получать в ТЗ из БСП https://infostart.ru/1c/articles/942569/, такими методами точно в данных не ошибетесь.
Оставьте свое сообщение

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