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

Модуль формы:
&НаСервере
Процедура РасчитатьНаСервере()
Док = РеквизитФормыВЗначение("Объект");
Док. РасчитатьЗП();
ЗначениеВДанныеФормы(Док, Объект);
КонецПроцедуры
&НаКлиенте
Процедура Расчитать(Команда)
РасчитатьНаСервере();
КонецПроцедуры
&НаСервере
Процедура ЗаполнитьНаСервере()
Запрос = Новый Запрос;
Запрос. Текст =
"ВЫБРАТЬ
| СведенияОСотрудникахСрезПоследних. Сотрудник,
| СведенияОСотрудникахСрезПоследних. Подразделение,
| СведенияОСотрудникахСрезПоследних. Оклад КАК Размер,
| ЗНАЧЕНИЕ(Справочник. ГрафикиРаботы. Пятидневка) КАК ГрафикРаботы,
| ЗНАЧЕНИЕ(ПланВидовРасчета. ОсновныеНачисления. Оклад) КАК ВидРасчета
|ИЗ
| РегистрСведений. СведенияОСотрудниках. СрезПоследних(&НачМес, ) КАК СведенияОСотрудникахСрезПоследних";
Запрос. УстановитьПараметр("НачМес", НачалоМесяца(Объект. Дата));
РезультатЗапроса = Запрос. Выполнить();
Объект. ОсновныеНачисления. Загрузить(РезультатЗапроса. Выгрузить());
КонецПроцедуры
&НаКлиенте
Процедура Заполнить(Команда)
ЗаполнитьНаСервере();
КонецПроцедуры
Документ «Табель»
Рекв: Подразделение
ТЧ Список: РеквТЧ: Сотрудник, Д1,Д2… Д31
Процедура ОбработкаПроведения(Отказ, Режим)
Движения. ДанныеТабеля. Очистить();
Движения. ДанныеТабеля. Записать();
Движения. ДанныеТабеля. Записывать = Истина;
Для каждого Стр из Список Цикл
День = НачалоМесяца(Дата);
ПоследнийДень = КонецМесяца(Дата);
Сч = 1;
Пока День <= ПоследнийДень Цикл
Если НРег(Стр["д"+Сч]) = "к" Тогда
// регистр ДанныеТабеля
Движение = Движения. ДанныеТабеля. Добавить();
|
Из за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 |


