Добрый день! Я начинающий 1С-ник. Дорабатываю ВПФ трудового договора по ЗУП 3.1. Уже включил много данных которые не подгружались - реквизиты сотрудников, испытательный срок и т.д.
Но никак не могу включить тарифную ставку.
Подскажите как правильно сформировать запрос - чтобы получить часовую тарифную ставку?
Полностью блок с запросом и его обработкой
Запрос.УстановитьПараметр("СведенияОбОрганизациях", СведенияОбОрганизациях);
Запрос.Текст =
"ВЫБРАТЬ
| СведенияОбОрганизациях.Период КАК Период,
| СведенияОбОрганизациях.Организация КАК Организация,
| СведенияОбОрганизациях.НаименованиеПолное КАК ОрганизацияНаименованиеПолное,
| СведенияОбОрганизациях.АдресЮридический КАК ОрганизацияАдресЮридический,
| СведенияОбОрганизациях.АдресФактический КАК ОрганизацияАдресФактический,
| СведенияОбОрганизациях.ОрганизацияГородФактическогоАдреса КАК ОрганизацияГородФактическогоАдреса
|ПОМЕСТИТЬ ВТДанныеОрганизаций
|ИЗ
| &СведенияОбОрганизациях КАК СведенияОбОрганизациях
|;
|
|////////////////////////////////////////////////////////////////////////////////
|ВЫБРАТЬ
| ДанныеПриказаОПриеме.Ссылка КАК Ссылка,
| ДанныеПриказаОПриеме.ПриказОПриемеНомер КАК ПриказОПриемеНомер,
| ДанныеПриказаОПриеме.ПриказОПриемеДата КАК ПриказОПриемеДата,
| ДанныеПриказаОПриеме.Подразделение КАК Подразделение,
| ДанныеПриказаОПриеме.Должность КАК Должность,
| ДанныеПриказаОПриеме.Сотрудник КАК Сотрудник,
| ДанныеПриказаОПриеме.ВидЗанятости КАК ВидЗанятости,
| ДанныеПриказаОПриеме.ТрудовойДоговорНомер КАК ТрудовойДоговорНомер,
| ДанныеПриказаОПриеме.ТрудовойДоговорДата КАК ТрудовойДоговорДата,
| ДанныеПриказаОПриеме.ДолжностьРуководителя КАК РуководительДолжность,
| ДанныеПриказаОПриеме.ДатаПриема КАК ДатаПриема,
| ДанныеПриказаОПриеме.ДатаЗавершенияТрудовогоДоговора КАК ДатаЗавершенияТрудовогоДоговора,
| ДанныеПриказаОПриеме.ДлительностьИспытательногоСрока КАК ДлительностьИспытательногоСрока,
| ВЫБОР
| КОГДА КадровыеДанныеСотрудников.ВидЗастрахованногоЛица = ЗНАЧЕНИЕ(Перечисление.ВидыЗастрахованныхЛицОбязательногоСтрахования.ГражданеРФ)
| ТОГДА """"
| ИНАЧЕ ДанныеПриказаОПриеме.РазрешениеНаРаботу
| КОНЕЦ КАК РазрешениеНаРаботу,
| ВЫБОР
| КОГДА КадровыеДанныеСотрудников.ВидЗастрахованногоЛица = ЗНАЧЕНИЕ(Перечисление.ВидыЗастрахованныхЛицОбязательногоСтрахования.ГражданеРФ)
| ТОГДА """"
| ИНАЧЕ ДанныеПриказаОПриеме.РазрешениеНаПроживание
| КОНЕЦ КАК РазрешениеНаПроживание,
| ВЫБОР
| КОГДА КадровыеДанныеСотрудников.ВидЗастрахованногоЛица = ЗНАЧЕНИЕ(Перечисление.ВидыЗастрахованныхЛицОбязательногоСтрахования.ГражданеРФ)
| ТОГДА """"
| ИНАЧЕ ДанныеПриказаОПриеме.УсловияОказанияМедпомощи
| КОНЕЦ КАК УсловияОказанияМедпомощи,
| ДанныеОрганизаций.ОрганизацияНаименованиеПолное КАК ОрганизацияНаименованиеПолное,
| ДанныеОрганизаций.ОрганизацияАдресЮридический КАК ОрганизацияАдресЮридический,
| ДанныеОрганизаций.ОрганизацияАдресФактический КАК ОрганизацияАдресФактический,
| ДанныеОрганизаций.ОрганизацияГородФактическогоАдреса КАК ОрганизацияГородФактическогоАдреса,
| КадровыеДанныеСотрудников.ВидЗастрахованногоЛица КАК ВидЗастрахованногоЛица,
| КадровыеДанныеФизическихЛиц.ФИОПолные КАК РуководительФИОПолные,
| КадровыеДанныеФизическихЛиц.ФамилияИО КАК РуководительФамилияИО,
| КадровыеДанныеСотрудников.ФИОПолные КАК ФИОПолные,
| КадровыеДанныеСотрудников.ФамилияИО КАК ФамилияИО,
| КадровыеДанныеСотрудников.Пол КАК Пол,
| КадровыеДанныеСотрудников.АдресПоПропискеПредставление КАК АдресПоПропискеПредставление,
| КадровыеДанныеСотрудников.ДокументПредставление КАК ДокументПредставление,
| ФизическиеЛица.ИНН КАК ИНН,
| ФизическиеЛица.СтраховойНомерПФР КАК СтраховойНомерПФР,
| ФизическиеЛица.ДатаРождения КАК ДатаРождения
|ИЗ
| ВТДанныеПриказаОПриеме КАК ДанныеПриказаОПриеме
| ЛЕВОЕ СОЕДИНЕНИЕ ВТДанныеОрганизаций КАК ДанныеОрганизаций
| ПО ДанныеПриказаОПриеме.Организация = ДанныеОрганизаций.Организация
| И ДанныеПриказаОПриеме.ПриказОПриемеДата = ДанныеОрганизаций.Период
| ЛЕВОЕ СОЕДИНЕНИЕ ВТКадровыеДанныеФизическихЛиц КАК КадровыеДанныеФизическихЛиц
| ПО ДанныеПриказаОПриеме.Руководитель = КадровыеДанныеФизическихЛиц.ФизическоеЛицо
| И ДанныеПриказаОПриеме.ДатаПриема = КадровыеДанныеФизическихЛиц.Период
| ЛЕВОЕ СОЕДИНЕНИЕ ВТКадровыеДанныеСотрудников КАК КадровыеДанныеСотрудников
| ПО ДанныеПриказаОПриеме.Сотрудник = КадровыеДанныеСотрудников.Сотрудник
| И ДанныеПриказаОПриеме.ДатаПриема = КадровыеДанныеСотрудников.Период
| ЛЕВОЕ СОЕДИНЕНИЕ Справочник.ФизическиеЛица КАК ФизическиеЛица
| ПО (КадровыеДанныеСотрудников.ФИОПолные = ФизическиеЛица.ФИО)";
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
ПараметрыТрудовогоДоговора = ПараметрыТрудовогоДоговора();
ЗаполнитьЗначенияСвойств(ПараметрыТрудовогоДоговора, Выборка);
РезультатСклонения = "";
Если ФизическиеЛицаЗарплатаКадры.Просклонять(ПараметрыТрудовогоДоговора.РуководительФИОПолные, 2, РезультатСклонения, ПараметрыТрудовогоДоговора.Пол) Тогда
ПараметрыТрудовогоДоговора.ФИОРуководителяНеСклоненные = ПараметрыТрудовогоДоговора.РуководительФИОПолные;
ПараметрыТрудовогоДоговора.РуководительФИОПолные = РезультатСклонения
КонецЕсли;
//артем
//Делаем склонения для подразделения с помощью разложения строки в массив и изменений падежа
ПодрСклон = ПараметрыТрудовогоДоговора.Подразделение;
ИтогОбщ = "";
МассИтог = РазложитьСтрокуВМассивПодстрок(ПодрСклон," ");
Для Каждого ЭлементМассива из МассИтог цикл
Если ПроверкаНаСимволыКромеЦифр(ЭлементМассива) тогда ИтогОбщ = ""+ИтогОбщ+ЭлементМассива
иначе ИтогОбщ = ""+ИтогОбщ+ПадежП(ЭлементМассива,4) КонецЕсли;
КонецЦикла;
ПараметрыТрудовогоДоговора.Подразделение = ИтогОбщ;
//Тут склоняем в иной падеж, для куска "в помещении ....."
ИтогОбщ = "";
МассИтог = РазложитьСтрокуВМассивПодстрок(ПодрСклон," ");
Для Каждого ЭлементМассива из МассИтог цикл
Если ПроверкаНаСимволыКромеЦифр(ЭлементМассива) тогда ИтогОбщ = ""+ИтогОбщ+ЭлементМассива
иначе ИтогОбщ = ""+ИтогОбщ+ПадежП(ЭлементМассива,3) КонецЕсли;
КонецЦикла;
ЕщеОдноУказаниеПодразделения = ИтогОбщ;
//ниже склоняем должность
ПараметрыТрудовогоДоговора.Должность = ПадежП(ПараметрыТрудовогоДоговора.Должность,2);
//артем
ПараметрыТрудовогоДоговора.ТрудовойДоговорДата = Формат(Выборка.ТрудовойДоговорДата, "ДЛФ=D");
ПараметрыТрудовогоДоговора.ПриказОПриемеДата = Формат(Выборка.ПриказОПриемеДата, "ДЛФ=D; ДЛФ=DD");
ПараметрыТрудовогоДоговора.ДатаПриема = Формат(Выборка.ДатаПриема, "ДЛФ=D; ДЛФ=DD");
Если ЗначениеЗаполнено(Выборка.ДлительностьИспытательногоСрока) тогда
Если Выборка.ДлительностьИспытательногоСрока = 1 тогда
ПараметрыТрудовогоДоговора.ДлительностьИспытательногоСрока = ""+Выборка.ДлительностьИспытательногоСрока+" (один) месяц" КонецЕсли;
Если Выборка.ДлительностьИспытательногоСрока = 2 тогда
ПараметрыТрудовогоДоговора.ДлительностьИспытательногоСрока = ""+Выборка.ДлительностьИспытательногоСрока+" (два) месяца" КонецЕсли;
Если Выборка.ДлительностьИспытательногоСрока = 3 тогда
ПараметрыТрудовогоДоговора.ДлительностьИспытательногоСрока = ""+Выборка.ДлительностьИспытательногоСрока+" (три) месяца" КонецЕсли;
Иначе
ПараметрыТрудовогоДоговора.ДлительностьИспытательногоСрока = ""+"---"+" месяца";
КонецЕсли;
Если ЗначениеЗаполнено(Выборка.ИНН) тогда ПараметрыТрудовогоДоговора.ИНН = Выборка.ИНН
Иначе ПараметрыТрудовогоДоговора.ИНН = "---" КонецЕсли;
Если ЗначениеЗаполнено(Выборка.СтраховойНомерПФР) тогда ПараметрыТрудовогоДоговора.СтраховойНомерПФР = Выборка.СтраховойНомерПФР
Иначе ПараметрыТрудовогоДоговора.СтраховойНомерПФР = "---" КонецЕсли;
Если ЗначениеЗаполнено(Выборка.ДатаРождения) тогда ПараметрыТрудовогоДоговора.ДатаРождения = Формат(Выборка.ДатаРождения, "ДЛФ=D; ДЛФ=DD")
Иначе ПараметрыТрудовогоДоговора.ДатаРождения = "---" КонецЕсли;
Если Выборка.ВидЗанятости = Перечисления.ВидыЗанятости.ОсновноеМестоРаботы Тогда
ПараметрыТрудовогоДоговора.ВидЗанятостиПоДоговору = НСтр("ru='основной'");
Иначе
ПараметрыТрудовогоДоговора.ВидЗанятостиПоДоговору = НСтр("ru='работой по совместительству'");
КонецЕсли;
Если ЗначениеЗаполнено(Выборка.ДатаЗавершенияТрудовогоДоговора) Тогда
ПараметрыТрудовогоДоговора.СрокДействияПредставление = СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
НСтр("ru='на срок до %1'"),
Формат(Выборка.ДатаЗавершенияТрудовогоДоговора, "ДЛФ=DD"));
ПараметрыТрудовогоДоговора.ДатаЗавершенияТрудовогоДоговора = Формат(Выборка.ДатаЗавершенияТрудовогоДоговора, "ДЛФ=D; ДЛФ=DD")
Иначе
ПараметрыТрудовогоДоговора.СрокДействияПредставление = НСтр("ru='на неопределенный срок'");
КонецЕсли;
Если ПараметрыТрудовогоДоговора.ВидЗастрахованногоЛица <> Перечисления.ВидыЗастрахованныхЛицОбязательногоСтрахования.ГражданеРФ Тогда
Если Не ЗначениеЗаполнено(ПараметрыТрудовогоДоговора.РазрешениеНаРаботу) Тогда
ПараметрыТрудовогоДоговора.РазрешениеНаРаботу = Символы.ПС
+ "______________________________________________________________________________________";
КонецЕсли;
Если Не ЗначениеЗаполнено(ПараметрыТрудовогоДоговора.РазрешениеНаПроживание) Тогда
ПараметрыТрудовогоДоговора.РазрешениеНаПроживание = Символы.ПС
+ "______________________________________________________________________________________";
КонецЕсли;
Если Не ЗначениеЗаполнено(ПараметрыТрудовогоДоговора.УсловияОказанияМедпомощи) Тогда
ПараметрыТрудовогоДоговора.УсловияОказанияМедпомощи = Символы.ПС
+ "______________________________________________________________________________________";
КонецЕсли;
КонецЕсли;
МассивПараметров.Добавить(ПараметрыТрудовогоДоговора);
КонецЦикла;
Возврат МассивПараметров;