|
ЗУП: Помогите с запросом | ☑ | ||
---|---|---|---|---|
0
yabes
01.12.11
✎
12:08
|
Задачка по ЗУП!
Задача отчета состоит в том, чтобы за выбранный период проконтролировать количество отработанных сотрудником часов с нормой по его графику и по пятидневке! Данные для отчета я беру из р.р. "Основные начисления сотрудников организации". В регистре есть колонка НормаЧасовПоПятидневке. Но проблема в том, что предпраздничные дни в этой колонке все равно учитываются как 8 часов, а не как 7. Бухгалтеров это не удовлетворяет! Я решил сделать так... Вытащить все необходимые данные из "Основные начисления сотрудников организации", сгруппированные по сотрудникам и Видам расчета и вытащить минимальную и максимальную дату расчетов, за этот период сделать обращение к производственному календарю и вытащить из него количество предпраздничных дней. На это количество и надо уменьшить НормуЧасовПоПятидневке, чтобы получить правильный результат! У меня есть 2 запрос: Один к р.р."Основные начисления сотрудников организации", второй к Производственному календарю! Как вот только их объединить в один запрос, чтобы в таблице первого запроса добавить еще одну колонку, в которой будет отображаться количество предпраздничных дней для сотрудника за расчетный период (он для каждого сотрудника свой)! Первый запрос: ВЫБРАТЬ ОсновныеНачисленияРаботниковОрганизаций.Сотрудник.ПодразделениеОрганизации КАК Подразделение, ОсновныеНачисленияРаботниковОрганизаций.Сотрудник, ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета, СУММА(ОсновныеНачисленияРаботниковОрганизаций.ОтработаноДней) КАК ОтработаноДней, СУММА(ОсновныеНачисленияРаботниковОрганизаций.ОтработаноЧасов) КАК ОтработаноЧасов, СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаДней) КАК НормаДней, СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаЧасов) КАК НормаЧасов, СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаДнейПоПятидневке) КАК НормаДнейПоПятидневке, СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаЧасовПоПятидневке) КАК НормаЧасовПоПятидневке, СУММА(ОсновныеНачисленияРаботниковОрганизаций.ОтработаноДнейПоПятидневке) КАК ОтработаноДнейПоПятидневке, СУММА(ОсновныеНачисленияРаботниковОрганизаций.ОтработаноЧасовПоПятидневке) КАК ОтработаноЧасовПоПятидневке, МИНИМУМ(ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияНачало) КАК ПериодДействияНачало, МАКСИМУМ(ОсновныеНачисленияРаботниковОрганизаций.ПериодДействияКонец) КАК ПериодДействияКонец ИЗ РегистрРасчета.ОсновныеНачисленияРаботниковОрганизаций КАК ОсновныеНачисленияРаботниковОрганизаций ГДЕ ОсновныеНачисленияРаботниковОрганизаций.ПериодРегистрации МЕЖДУ &НачалоПериода И &КонецПериода СГРУППИРОВАТЬ ПО ОсновныеНачисленияРаботниковОрганизаций.Сотрудник, ОсновныеНачисленияРаботниковОрганизаций.ВидРасчета, ОсновныеНачисленияРаботниковОрганизаций.Сотрудник.ПодразделениеОрганизации ИМЕЮЩИЕ (СУММА(ОсновныеНачисленияРаботниковОрганизаций.ОтработаноДней) > 0 ИЛИ СУММА(ОсновныеНачисленияРаботниковОрганизаций.ОтработаноЧасов) > 0 ИЛИ СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаДней) > 0 ИЛИ СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаЧасов) > 0 ИЛИ СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаДнейПоПятидневке) > 0 ИЛИ СУММА(ОсновныеНачисленияРаботниковОрганизаций.НормаЧасовПоПятидневке) > 0 ИЛИ СУММА(ОсновныеНачисленияРаботниковОрганизаций.ОтработаноДнейПоПятидневке) > 0 ИЛИ СУММА(ОсновныеНачисленияРаботниковОрганизаций.ОтработаноЧасовПоПятидневке) > 0) Второй запрос: ВЫБРАТЬ СУММА(РегламентированныйПроизводственныйКалендарь.Пятидневка) КАК Пятидневка ИЗ РегистрСведений.РегламентированныйПроизводственныйКалендарь КАК РегламентированныйПроизводственныйКалендарь ГДЕ РегламентированныйПроизводственныйКалендарь.ВидДня = ЗНАЧЕНИЕ(Перечисление.ВидыДнейПроизводственногоКалендаря.Предпраздничный) И РегламентированныйПроизводственныйКалендарь.ДатаКалендаря МЕЖДУ &Нач И &Кон Который должен формироваться для каждого сотрудника, где &Нач и &Кон - это параметры, которые должны браться из ПериодДействияНачало и ПериодДействияКонец первого запроса. |
|||
1
СаПеР
01.12.11
✎
14:24
|
в производственном календаре есть реквизит ДатаКалендаря, только по нему
пример можно посмотреть в табеле |
|||
2
RomaH
naïve
01.12.11
✎
14:47
|
а может сделать проще и правильнее - выставить правильную норму в регистре?
|
|||
3
almar
01.12.11
✎
14:51
|
(2) Нельзя, это задумманное разработчиками поведение программы
|
|||
4
almar
01.12.11
✎
14:51
|
Эти данные используются при расчете среднего заработка в случае частичного учета премий согласно постановлению №922 от 24 декабря 2007 г.
|
|||
5
RomaH
naïve
01.12.11
✎
15:17
|
(4) и как же они используются?
норма по графику 7 часов, а в регистре 8 можно на примере? |
|||
6
RomaH
naïve
01.12.11
✎
15:20
|
я реально не понимаю как можно использовать недостоверные данные для каких-либо расчетов
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |