Макет печатных форм по всем сотрудникам

1. Solkaru 14.01.25 16:05 Сейчас в теме
Добрый день, необходима помощь в создании макета печатных форм. Для заполнения трудового договора, хочу создать свой макет печатных форм, в котором хочу видеть ФИО,должность, ИНН, СНИЛС, паспорт, банковский счет сотрудника. Перерыла все возможные варианты, но либо банковский счет не доступен либо паспорт. Подскажите, кто знает из какого документа я могу вытащить эти данные на печать?
По теме из базы знаний
Ответы
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
4. glek 119 15.01.25 08:31 Сейчас в теме
(1) Не совсем понятен вопрос про связь макета и недоступности паспорта или банковского счета.
Что вообще делаешь?
5. Solkaru 16.01.25 16:12 Сейчас в теме
(4) Создаю макет печатной формы на основании документа прием на работу.
2. dusha0020 1120 14.01.25 17:33 Сейчас в теме
Нужно позвать программиста. Или заказать доработку. Судя по вопросу Вам еще не хватает знаний, чтобы сделать все правильно.
3. Solkaru 15.01.25 08:24 Сейчас в теме
(2) Не было бы проблемы, если бы этот программист был. Все приходится изучать и настраивать самой. Не сложные макеты делаю сама, а когда нужно было подгрузить данные по сотруднику оказалось, что не все реквизиты могу подтянуть. Прошу помощи, подсказки.
6. Vinzor 112 17.01.25 09:23 Сейчас в теме
7. user5300 1077 17.01.25 10:42 Сейчас в теме
8. Tommy82 65 17.01.25 11:09 Сейчас в теме
Дело в том, что все данные живут в разных регистрах.
Давным-давно https://infostart.ru/1c/tools/836840/ здесь была тема.
Благодаря ей у меня получилась следующая портянка, которая вытягивает практически всё.
Если что-то не вытягивает - можно добавить в структуру.

	//ДС Дистанционная Работа
	Функция СформироватьПечатнуюФормуДР(МассивОбъектов, ОбъектыПечати, ПараметрыПечати) Экспорт
		
		ТабличныйДокумент = Новый ТабличныйДокумент;
		ТабличныйДокумент.ИмяПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ДСДистанционнаяРабота";
		
		Для Каждого ЭлементМассива ИЗ МассивОбъектов Цикл
			
			Макет = ЭтотОбъект.ПолучитьМакет("ДСДистанционнаяРабота");
			ОбластьМакета	=	Макет.ПолучитьОбласть("Область1");
			
			ПараметрыМакета	=	НекийОбщийМодульКакогоРасширенияЭкспорт.ПолучитьСтруктуруКадровыхДанныхСотрудника(ЭлементМассива, ЭлементМассива.ДатаДляВПФ);
			
			ОбластьМакета.Параметры.Заполнить(ПараметрыМакета);
			ТабличныйДокумент.Вывести(ОбластьМакета);
			ТабличныйДокумент.АвтоМасштаб = Истина;
			
			ТабличныйДокумент.ВывестиГоризонтальныйРазделительСтраниц();
			
		КонецЦикла;
		
		Возврат ТабличныйДокумент;
		
	КонецФункции
Показать


Функция ПолучитьСтруктуруКадровыхДанныхСотрудника(НекаяСущность, НекаяДата = Неопределено) Экспорт
	
	хВП	=	Новый Структура;
	
	СправочникСсылкаСотрудник	=	Справочники.Сотрудники.ПустаяСсылка();
	
	Если ТипЗнч(НекаяСущность)	=	Тип("СправочникСсылка.Сотрудники") Тогда
		СправочникСсылкаСотрудник	=	НекаяСущность;
		
		Если ЗначениеЗаполнено(СправочникСсылкаСотрудник.ДатаДляВПФ) Тогда
			хВП.Вставить("ДатаДляВПФ",		Формат(СправочникСсылкаСотрудник.ДатаДляВПФ,	"ДЛФ = ддММММгггг"));
			хВП.Вставить("ГодДатаДляВПФ",	Формат(СправочникСсылкаСотрудник.ДатаДляВПФ,	"ДФ = ""гггг 'г.'"""));
		Иначе
			хВП.Вставить("ДатаДляВПФ",		""" _______ "" ________________ 20 "" ____ "" г.");
			хВП.Вставить("ГодДатаДляВПФ",	""" 20 "" ____ "" г.");
		КонецЕсли;		
		
		Если ЗначениеЗаполнено(СправочникСсылкаСотрудник.ДатаДляВПФС) Тогда
			хВП.Вставить("ДатаДляВПФС",	Формат(СправочникСсылкаСотрудник.ДатаДляВПФС, "ДЛФ = ддММММгггг"));
		Иначе
			хВП.Вставить("ДатаДляВПФС",	""" _______ "" ________________ 20 "" ____ "" г.");
		КонецЕсли;
		
		Если ЗначениеЗаполнено(СправочникСсылкаСотрудник.ДатаДляВПФПо) Тогда
			хВП.Вставить("ДатаДляВПФПо",	Формат(СправочникСсылкаСотрудник.ДатаДляВПФПо, "ДЛФ = ддММММгггг"));
		Иначе
			хВП.Вставить("ДатаДляВПФПо",	""" _______ "" ________________ 20 "" ____ "" г.");
		КонецЕсли;
		
		Если ЗначениеЗаполнено(СправочникСсылкаСотрудник.ДатаДляВПФПо) Тогда
			хВП.Вставить("ТекстДатаДляВПФПо",	"" + " по " + "" + Формат(СправочникСсылкаСотрудник.ДатаДляВПФПо, "ДЛФ = ддММММгггг"));
		Иначе
			хВП.Вставить("ТекстДатаДляВПФПо",	"");
		КонецЕсли;
		
	ИначеЕсли типЗнч(НекаяСущность)	=	Тип("ДокументСсылка.КадровыйПеревод") Тогда
		
		СправочникСсылкаСотрудник	=	НекаяСущность.Сотрудник;
		
	ИначеЕсли типЗнч(НекаяСущность)	=	Тип("ДанныеФормыСтруктура") Тогда
		
		СправочникСсылкаСотрудник	=	НекаяСущность.Ссылка;
		
	КонецЕсли;
	
	Запрос = Новый Запрос;
	Запрос.МенеджерВременныхТаблиц = Новый МенеджерВременныхТаблиц;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	&Сотрудник КАК Сотрудник,
	|	&Период КАК Период
	|ПОМЕСТИТЬ ВТСотрудники";
	Запрос.УстановитьПараметр("Сотрудник",	СправочникСсылкаСотрудник);
	Запрос.УстановитьПараметр("Период",		?(НекаяДата <> Неопределено, НекаяДата, ТекущаяДата()));
	
	ОписательТаблицыОтборов = КадровыйУчет.ОписаниеВременнойТаблицыОтборовСотрудников(
	"ВТСотрудники",
	"Сотрудник",
	"Период");
	
	ДополнительныеПоляКадровыхДанныхСотрудников = КадровыйУчет.ПоляПредставленийКадровыхДанныхСотрудников();
	ДПКДС	=	ДополнительныеПоляКадровыхДанныхСотрудников.ВыгрузитьКолонку("ИмяПоля");
	
	ЗапросКадровыеДанные = КадровыйУчет.ЗапросВТКадровыеДанныеСотрудников(Истина, ОписательТаблицыОтборов, ДПКДС);
	
	ЗарплатаКадрыОбщиеНаборыДанных.ОбъединитьЗапросы(Запрос, ЗапросКадровыеДанные);
	
	Попытка 
		Результат = Запрос.ВыполнитьПакетСПромежуточнымиДанными();
	Исключение		
		Возврат Неопределено;
	КонецПопытки;
	
	ТЗ_ВТКадровыеДанныеСотрудников =  Запрос.МенеджерВременныхТаблиц.Таблицы.Найти("ВТКадровыеДанныеСотрудников").ПолучитьДанные().Выгрузить();
	
	Для Каждого КолонкаТЗ Из ТЗ_ВТКадровыеДанныеСотрудников.Колонки Цикл
		хВП.Вставить(КолонкаТЗ.Имя, ТЗ_ВТКадровыеДанныеСотрудников[0][КолонкаТЗ.Имя]);
		Если ТипЗнч(хВП[КолонкаТЗ.Имя])	=	Тип("Дата") Тогда
			хВП[КолонкаТЗ.Имя] = Формат(хВП[КолонкаТЗ.Имя], "ДЛФ = ддММММгггг");
		КонецЕсли;
	КонецЦикла;
	
	Если Метаданные.Документы.Содержит(Метаданные.НайтиПоТипу(ТипЗнч(СправочникСсылкаСотрудник))) Тогда
		хВП.Вставить("НомерДок",	СокрЛП(НекаяСущность.Номер));
		хВП.Вставить("ДатаДок",		Формат(НекаяСущность.Дата, "ДЛФ = ддММММгггг"));
	КонецЕсли;
	
	//РезультатСклонения = "";
	//Если ФизическиеЛицаЗарплатаКадры.Просклонять(хВП.ФИОПолные, 3, РезультатСклонения, хВП.ФизическоеЛицо.Пол) Тогда
	//	ааа = РезультатСклонения;
	//КонецЕсли;
	
	//ДолжностьПоШтатномуРасписанию
	//ДолжностьРуководителяИменительныйПадеж
	//ДолжностьРуководителяРодительныйПадеж
	//Организация
	//ОрганизацияАдресДляШапкиВПФ
	//ОрганизацияЕмейл
	//ОрганизацияИНН
	//ОрганизацияСайт
	//ОрганизацияТелефон
	//ПредставлениеПФЛ
	//СотрудникДолжностьРодительныйПадеж
	//СотрудникФИОИменительныйПадеж
	//СотрудникФИОТворительныйПадеж
	//ФИОРуководителяИменительныйПадеж
	//ФИОРуководителяРодительныйПадеж
	
	//Сотрудник
	хВП.Вставить("ФИО_ИП_Сотрудник",	хВП.ФиоПолные);	
	хВП.Вставить("ФИО_РП_Сотрудник",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ФиоПолные, 2, хВП.ФизическоеЛицо.Пол));
	хВП.Вставить("ФИО_ДП_Сотрудник",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ФиоПолные, 3, хВП.ФизическоеЛицо.Пол));
	хВП.Вставить("ФИО_ВП_Сотрудник",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ФиоПолные, 4, хВП.ФизическоеЛицо.Пол));
	хВП.Вставить("ФИО_ТП_Сотрудник",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ФиоПолные, 5, хВП.ФизическоеЛицо.Пол));
	хВП.Вставить("ФИО_ПП_Сотрудник",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ФиоПолные, 6, хВП.ФизическоеЛицо.Пол));
	
	хВП.Вставить("ИО_ИП_Сотрудник",		"" + хВП.Имя + " " + хВП.Отчество);
	
	//Сотрудник должность
	хВП.Вставить("Должность_ИП_Сотрудник",	?(хВП.Должность <> NULL, хВП.Должность.Наименование, ""));
	хВП.Вставить("Должность_РП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Должность.Наименование, 2,  хВП.Должность), ""));
	хВП.Вставить("Должность_ДП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Должность.Наименование, 3,  хВП.Должность), ""));
	хВП.Вставить("Должность_ВП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Должность.Наименование, 4,  хВП.Должность), ""));
	хВП.Вставить("Должность_ТП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Должность.Наименование, 5,  хВП.Должность), ""));
	хВП.Вставить("Должность_ПП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Должность.Наименование, 6,  хВП.Должность), ""));
	
	//Сотрудник должность по штатному расписанию
	хВП.Вставить("ДолжностьПоШтатномуРасписанию_ИП_Сотрудник",	?(хВП.Должность <> NULL, хВП.ДолжностьПоШтатномуРасписанию.Наименование, ""));
	хВП.Вставить("ДолжностьПоШтатномуРасписанию_РП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПоШтатномуРасписанию.Наименование, 2,  хВП.ДолжностьПоШтатномуРасписанию), ""));
	хВП.Вставить("ДолжностьПоШтатномуРасписанию_ДП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПоШтатномуРасписанию.Наименование, 3,  хВП.ДолжностьПоШтатномуРасписанию), ""));
	хВП.Вставить("ДолжностьПоШтатномуРасписанию_ВП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПоШтатномуРасписанию.Наименование, 4,  хВП.ДолжностьПоШтатномуРасписанию), ""));
	хВП.Вставить("ДолжностьПоШтатномуРасписанию_ТП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПоШтатномуРасписанию.Наименование, 5,  хВП.ДолжностьПоШтатномуРасписанию), ""));
	хВП.Вставить("ДолжностьПоШтатномуРасписанию_ПП_Сотрудник",	?(хВП.Должность <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПоШтатномуРасписанию.Наименование, 6,  хВП.ДолжностьПоШтатномуРасписанию), ""));	
	
	//Сотрудник подразделение
	хВП.Вставить("Подразделение_ИП_Сотрудник",	?(хВП.Подразделение <> NULL, хВП.Подразделение.Наименование, ""));
	хВП.Вставить("Подразделение_РП_Сотрудник",	?(хВП.Подразделение <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Подразделение.Наименование, 2,  хВП.Подразделение), ""));
	хВП.Вставить("Подразделение_ДП_Сотрудник",	?(хВП.Подразделение <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Подразделение.Наименование, 3,  хВП.Подразделение), ""));
	хВП.Вставить("Подразделение_ВП_Сотрудник",	?(хВП.Подразделение <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Подразделение.Наименование, 4,  хВП.Подразделение), ""));
	хВП.Вставить("Подразделение_ТП_Сотрудник",	?(хВП.Подразделение <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Подразделение.Наименование, 5,  хВП.Подразделение), ""));
	хВП.Вставить("Подразделение_ПП_Сотрудник",	?(хВП.Подразделение <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.Подразделение.Наименование, 6,  хВП.Подразделение), ""));
	
	Если хВП.Подразделение <> NULL Тогда
		хВП.Вставить("ПодразделениеПолное_ИП_Сотрудник", хВП.Подразделение.НаименованиеПолное);
	Иначе
		хВП.Вставить("ПодразделениеПолное_ИП_Сотрудник", "");
	КонецЕсли;
	
	//Наниматель
	хВП.Вставить("ФИО_ИП_Наниматель",	?(хВП.ПредставительНанимателя <> NULL, хВП.ПредставительНанимателя.ФИО, ""));
	хВП.Вставить("ФИО_РП_Наниматель",	?(хВП.ПредставительНанимателя <> NULL, ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ПредставительНанимателя.ФИО, 2, хВП.ПредставительНанимателя.Ссылка.Пол), ""));
	хВП.Вставить("ФИО_ДП_Наниматель",	?(хВП.ПредставительНанимателя <> NULL, ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ПредставительНанимателя.ФИО, 3, хВП.ПредставительНанимателя.Ссылка.Пол), ""));
	хВП.Вставить("ФИО_ВП_Наниматель",	?(хВП.ПредставительНанимателя <> NULL, ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ПредставительНанимателя.ФИО, 4, хВП.ПредставительНанимателя.Ссылка.Пол), ""));
	хВП.Вставить("ФИО_ТП_Наниматель",	?(хВП.ПредставительНанимателя <> NULL, ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ПредставительНанимателя.ФИО, 5, хВП.ПредставительНанимателя.Ссылка.Пол), ""));
	хВП.Вставить("ФИО_ПП_Наниматель",	?(хВП.ПредставительНанимателя <> NULL, ЗарплатаКадрыОтчеты.ПросклоненныеФИО(хВП.ПредставительНанимателя.ФИО, 6, хВП.ПредставительНанимателя.Ссылка.Пол), ""));
	
	//Наниматель должность
	хВП.Вставить("Должность_ИП_Наниматель",	?(хВП.ДолжностьПредставителяНанимателя <> NULL, хВП.ДолжностьПредставителяНанимателя.Наименование, ""));
	хВП.Вставить("Должность_РП_Наниматель",	?(хВП.ДолжностьПредставителяНанимателя <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПредставителяНанимателя.Наименование, 2,  хВП.ДолжностьПредставителяНанимателя), ""));
	хВП.Вставить("Должность_ДП_Наниматель",	?(хВП.ДолжностьПредставителяНанимателя <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПредставителяНанимателя.Наименование, 3,  хВП.ДолжностьПредставителяНанимателя), ""));
	хВП.Вставить("Должность_ВП_Наниматель",	?(хВП.ДолжностьПредставителяНанимателя <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПредставителяНанимателя.Наименование, 4,  хВП.ДолжностьПредставителяНанимателя), ""));
	хВП.Вставить("Должность_ТП_Наниматель",	?(хВП.ДолжностьПредставителяНанимателя <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПредставителяНанимателя.Наименование, 5,  хВП.ДолжностьПредставителяНанимателя), ""));
	хВП.Вставить("Должность_ПП_Наниматель",	?(хВП.ДолжностьПредставителяНанимателя <> NULL, СклонениеПредставленийОбъектов.ПросклонятьПредставление(хВП.ДолжностьПредставителяНанимателя.Наименование, 6,  хВП.ДолжностьПредставителяНанимателя), ""));	
	
	//Руководитель
	хВП.Вставить("ФИО_ИП_Руководитель",	СправочникСсылкаСотрудник.Руководитель.Наименование);
	хВП.Вставить("ФИО_РП_Руководитель",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(СправочникСсылкаСотрудник.Руководитель.Наименование, 2, СправочникСсылкаСотрудник.Руководитель.ФизическоеЛицо.Пол));
	хВП.Вставить("ФИО_ДП_Руководитель",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(СправочникСсылкаСотрудник.Руководитель.Наименование, 3, СправочникСсылкаСотрудник.Руководитель.ФизическоеЛицо.Пол));
	хВП.Вставить("ФИО_ВП_Руководитель",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(СправочникСсылкаСотрудник.Руководитель.Наименование, 4, СправочникСсылкаСотрудник.Руководитель.ФизическоеЛицо.Пол));
	хВП.Вставить("ФИО_ТП_Руководитель",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(СправочникСсылкаСотрудник.Руководитель.Наименование, 5, СправочникСсылкаСотрудник.Руководитель.ФизическоеЛицо.Пол));
	хВП.Вставить("ФИО_ПП_Руководитель",	ЗарплатаКадрыОтчеты.ПросклоненныеФИО(СправочникСсылкаСотрудник.Руководитель.Наименование, 6, СправочникСсылкаСотрудник.Руководитель.ФизическоеЛицо.Пол));
	
	хВП.Вставить("Руководитель",		СправочникСсылкаСотрудник.Руководитель);
	
	хВП.Вставить("ОкончаниеДляУважаемый", 			?(хВП.ФизическоеЛицо.Пол = Перечисления.ПолФизическогоЛица.Мужской, "ый",	"ая"));
	хВП.Вставить("ОкончаниеА",			 			?(хВП.ФизическоеЛицо.Пол = Перечисления.ПолФизическогоЛица.Мужской, "",		"а"));
	хВП.Вставить("ОкончаниеНА", 					?(хВП.ФизическоеЛицо.Пол = Перечисления.ПолФизическогоЛица.Мужской, "ен",	"на"));
	
	//ЭтоДокумент	=	Документы.ТипВсеСсылки().СодержитТип(тип(НекаяСущность));
	
	Если НЕ ПустаяСтрока(хВП.ДатаПриема) Тогда
		
		ТекстВидЗанятости	=	"";
		Если хВП.ВидЗанятости	=	Перечисления.ВидыЗанятости.ОсновноеМестоРаботы Тогда
			ТекстВидЗанятости	=	"основной";
		ИначеЕсли хВП.ВидЗанятости	=	Перечисления.ВидыЗанятости.Совместительство Тогда
			ТекстВидЗанятости	=	"" + "по совместительству на " + "" + хВП.КоличествоСтавок + " ставки";
		КонецЕсли;
		
		хВП.Вставить("ТрудовойДоговорДата",							Формат(хВП.ПриказОПриеме.ТрудовойДоговорДата, "ДЛФ = ддММММгггг"));//ДатаТрудовогоДоговора
		хВП.Вставить("ТрудовойДоговорНомер",						СокрЛП(хВП.ПриказОПриеме.ТрудовойДоговорНомер));//НомерТрудовогоДоговора
		хВП.Вставить("ДлительностьИспытательногоСрока",				?(хВп.ПриказОПриеме.ДлительностьИспытательногоСрока <> 0,	хВп.ПриказОПриеме.ДлительностьИспытательногоСрока, "без испытательного срока"));
		хВП.Вставить("ДлительностьИспытательногоСрокаПрописью",		?(хВп.ПриказОПриеме.ДлительностьИспытательногоСрока <> 0,	СтрЗаменить(нрег(ЧислоПрописью(хВп.ПриказОПриеме.ДлительностьИспытательногоСрока)), "  00 ", ""), ""));
		хВП.Вставить("Срок",										?(хВП.СрочныйДоговор, "" + " сроком до " + "" + хВП.ДатаЗавершенияРаботы, " на неопределенный срок"));
		
		хВП.Вставить("ВидЗанятостиФорматированный",					ТекстВидЗанятости);
		
		хВП.Вставить("ГородМестаРаботы",							ГородМестаРаботы(хВП.Подразделение));
		
		хВП.Вставить("ФОТПрописью",									ЧислоПрописью(хВП.ФОТ,				"Л=ru_RU; ДП=Ложь", "рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2"));
		хВП.Вставить("ТарифнаяСтавкаПрописью",						ЧислоПрописью(хВП.ТарифнаяСтавка,	"Л=ru_RU; ДП=Ложь", "рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2"));
		
		хВП.Вставить("ИНН_ФЛ",										хВП.ФизическоеЛицо.ИНН);
		хВП.Вставить("СНИЛС_ФЛ",									хВП.ФизическоеЛицо.СтраховойНомерПФР);
		
		хВП.Вставить("ДР_ФЛ",										Формат(хВП.ФизическоеЛицо.ДатаРождения, "ДЛФ = ддММММгггг"));
		
		хВП.Вставить("МестоРождения_ФЛ",							"" + СтрЗаменить(ПерсонифицированныйУчетКлиентСервер.ПредставлениеМестаРождения(хВП.ФизическоеЛицо.МестоРождения), ",", "") + "" + " г.");
		
		хВП.Вставить("НанимательФамилияИО",						""	+	хВП.ПредставительНанимателя.Фамилия + " " + хВП.ПредставительНанимателя.Инициалы);
		
		Если ТипЗнч(хВП.ПриказОПриеме) = Тип("ДокументСсылка.ПриемНаРаботу") Тогда
			хВП.Вставить("РазмерРайонныйКоэффициент", ПолучитьРазмерРайонныйКоэффициент(хВП.ПриказОПриеме.ТрудовойДоговорДата, хВП.Сотрудник));
		КонецЕсли;
		
		хВП.Вставить("ДолжностьПоШтатномуРасписанию_Грейд",			ПолучитьГрейдПоПозицииШтатногоРасписания(хВП.ДолжностьПоШтатномуРасписанию));
		
		хВП.Вставить("ОрганизацияНаименованиеПолное",				хВП.Организация.НаименованиеПолное);
		хВП.Вставить("ОрганизацияНаименованиеСокращенное",			хВП.Организация.НаименованиеСокращенное);
		
	КонецЕсли;
	
	хВП.Вставить("ОрганизацияИНН",						""	+	"ИНН"	+	" "	+	"1234567890");
	хВП.Вставить("ОрганизацияКПП",						""	+	"КПП"	+	" "	+	"123456789");
	хВП.Вставить("ОрганизацияОГРН",						""	+	"ОГРН"	+	" "	+	"1234567890123");
	хВП.Вставить("ОрганизацияРасчетныйРублевыйСчет",	""	+	"Расчетный рублевый счет "	+	" "	+	"12345.123.1.12345678901, ПАО СБЕРБАНК, БИК 044525225, к/сч 12345.123.1.12345678901");
	
	хВП.Вставить("ОрганизацияАдресДляШапкиВПФ",			"123456, г.Москва, ул. Инфостартовская, д. 1");

	хВП.Вставить("ОрганизацияТелефон",					"+1 (234) 567-89-01");
	
	хВП.Вставить("ОрганизацияЕмейл",					"gensek@ussr.ru");
	хВП.Вставить("ОрганизацияСайт",						"www.ussr.ru");
	
	хВП.Вставить("СуммаВыходногоПособияЧисло",			хВП.Сотрудник.СуммаВыходногоПособия);
	хВП.Вставить("СуммаВыходногоПособияПрописью",		ЧислоПрописью(хВП.Сотрудник.СуммаВыходногоПособия,				"Л=ru_RU; ДП=Ложь", "рубль, рубля, рублей, м, копейка, копейки, копеек, ж, 2"));
	хВП.Вставить("НаименованиеОргТехники",				хВП.Сотрудник.НаименованиеОргТехники);
	
	Возврат (хВП);
	
КонецФункции

Функция ПолучитьГрейдПоПозицииШтатногоРасписания(ДпШР)
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	ГрейдыПозиций.Грейд КАК Грейд
	|ИЗ
	|	РегистрСведений.ГрейдыПозиций КАК ГрейдыПозиций
	|ГДЕ
	|	ГрейдыПозиций.Позиция = &Позиция
	|	И ГрейдыПозиций.Позиция ССЫЛКА Справочник.ШтатноеРасписание";
	
	Запрос.УстановитьПараметр("Позиция", ДпШР);
	
	РезультатЗапроса = Запрос.Выполнить().Выгрузить();
	
	Рез 	=	"грейд _______";
	
	Если РезультатЗапроса.Количество() = 1 Тогда
		Если РезультатЗапроса[0].Грейд <> Справочники.Грейды.ПустаяСсылка() Тогда
			Рез =  нрег(РезультатЗапроса[0].Грейд.Наименование);
		КонецЕсли;
	КонецЕсли;
	
	Возврат Рез;
	
КонецФункции

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

Функция ПолучитьРазмерРайонныйКоэффициент(ДатаСреза, Сотрудник)
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСр­езПоследних.Значение КАК Значение
	|ИЗ
	|	РегистрСведений.ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудников.СрезПоследних(
	|			&ДатаСреза,
	|			Сотрудник = &Сотрудник
	|				И Показатель = &Показатель
	|				И (ДействуетДо = ДАТАВРЕМЯ(1, 1, 1, 0, 0, 0)
	|					ИЛИ ДействуетДо > &ДатаСреза)) КАК ЗначенияПериодическихПоказателейРасчетаЗарплатыСотрудниковСр­езПоследних";
	
	Запрос.УстановитьПараметр("Сотрудник",	Сотрудник);
	Запрос.УстановитьПараметр("Показатель",	Справочники.ПоказателиРасчетаЗарплаты.РайонныйКоэффициент);
	Запрос.УстановитьПараметр("ДатаСреза",	КонецДня(ДатаСреза));
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Если ВыборкаДетальныеЗаписи.Следующий() Тогда
		Возврат ВыборкаДетальныеЗаписи.Значение;
	КонецЕсли;
	
	Возврат 0;
	
КонецФункции
Показать
10. Vinzor 112 19.01.25 21:55 Сейчас в теме
(8) Хороший вариант для начинающих.
А потом можно будет пользоваться и программным интерфейсом.
И получением данных по менеджеру временных таблиц через вызов процедур общих модулей для получения данных и помещения во временные таблицы. Здесь вообще такие "звери" водятся, как например,
УчетРабочегоВремениРасширенный.СоздатьВТПлановоеВремя()

УчетРабочегоВремениРасширенный.СоздатьВТДанныеУчетаВремениИСостоянийСотрудников
9. Solkaru 17.01.25 16:26 Сейчас в теме
Спасибо всем за помощь.
Оставьте свое сообщение

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