Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[1С:Зарплата и управление персоналом 8]

Формирование отчета по времени

Piratik
читатель
офлайн
Дата регистрации: 22.09.2009
Сообщений: 76
Пост №1
 
29.12.2011 11:00

"Доброе время суток. У меня следующая проблема, разработали отчет по отработанному времени рабочих. Если допустим задать период с 01.01.2011 по 31.12.2011 и человек принят на предприятие 01.03.2011 то при формировании отчеты отработанные часы проставляются начиная с января месяца т.е как бы сдвигаются. Проверил запрос в консуле все нормально, отработанное время начинается с 01.03.2011. Как я понимаю ошибка допущена на стадии формирования таблицы. <br> <br>http://imageshack.us/photo/my-images/694/566jh.jpg/<br><br>Ячейки на скриншоте помеченные желтым должны быть пустые, так как человек не работал в эти месяца. <br><br>Кусок кода отвечающего за формирование: <br> <br> <br><br><pre> Запрос.Текст = "ВЫБРАТЬ<br> | СУММА(РабочееВремяРаботниковОрганизацийОбороты.ЧасовОборот) КАК явка,<br> | РабочееВремяРаботниковОрганизацийОбороты.Сотрудник.Физлицо КАК Сотрудник,<br> | РабочееВремяРаботниковОрганизацийОбороты.Период КАК Период,<br> | РабочееВремяРаботниковОрганизацийОбороты.Сотрудник.ТекущееПодразделениеОрганизации КАК ПодразделениеОрганизации<br> |ИЗ<br> | РегистрНакопления.РабочееВремяРаботниковОрганизаций.Обороты(&НачПериод, &КонПериод, Месяц, (НЕ ВидИспользованияРабочегоВремени В (&СписокЗначенийВидВремени))) КАК РабочееВремяРаботниковОрганизацийОбороты<br> |<br> |СГРУППИРОВАТЬ ПО<br> | РабочееВремяРаботниковОрганизацийОбороты.Сотрудник.Физлицо,<br> | РабочееВремяРаботниковОрганизацийОбороты.Период,<br> | РабочееВремяРаботниковОрганизацийОбороты.Сотрудник.ТекущееПодразделениеОрганизации<br> |<br> |УПОРЯДОЧИТЬ ПО<br> | Период<br> |ИТОГИ<br> | СУММА(явка)<br> |ПО<br> | ПодразделениеОрганизации,<br> | Сотрудник,<br> | Период";<br> <br> СписокЗначенийВидВремени = Новый СписокЗначений;<br> СписокЗначенийВидВремени.Добавить(Справочники.КлассификаторИспользованияРабочегоВремени.ВыходныеДни);<br> СписокЗначенийВидВремени.Добавить(Справочники.КлассификаторИспользованияРабочегоВремени.ВыходныеЧасы);<br> СписокЗначенийВидВремени.Добавить(Справочники.КлассификаторИспользованияРабочегоВремени.ВыходныеЧасыАдминистраторов);<br> СписокЗначенийВидВремени.Добавить(Справочники.КлассификаторИспользованияРабочегоВремени.РаботаНочныеЧасы);<br> СписокЗначенийВидВремени.Добавить(Справочники.КлассификаторИспользованияРабочегоВремени.Командировка);<br> Запрос.УстановитьПараметр("СписокЗначенийВидВремени",СписокЗначенийВидВремени);<br> <br> Результат = Запрос.Выполнить();<br> <br> НомерПП = 1;<br> ИтогЯвка = 0;<br> ТабДок.НачатьАвтогруппировкуСтрок();<br> <br> ВыборкаПодразделение = Результат.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"ПодразделениеОрганизации");<br> Пока ВыборкаПодразделение.Следующий() Цикл<br>       ОбластьСтрокаПодразделение = Макет.ПолучитьОбласть("СтрокаПодразделение|КолонкаСотрудник");<br>       ОбластьСтрокаПодразделение.Параметры.Заполнить(ВыборкаПодразделение);<br>       ТабДок.Вывести(ОбластьСтрокаПодразделение,ВыборкаПодразделение.Уровень());<br>       Для н=0 по КолвоМесяцев Цикл<br>            ОбластьСтрока = Макет.ПолучитьОбласть("СтрокаПодразделение|КолонкаСтроки");<br>            ТабДок.Присоединить(ОбластьСтрока); <br>       КонецЦикла;<br>       <br>       Выборка = ВыборкаПодразделение.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Сотрудник");<br>       Пока Выборка.Следующий() Цикл<br>            ОбластьСтрокаСотрудник = Макет.ПолучитьОбласть("Строка|КолонкаСотрудник");<br>            ОбластьСтрокаСотрудник.Параметры.Заполнить(Выборка);<br>            ОбластьСтрокаСотрудник.Параметры.НомерПП = НомерПП;<br>            ТабДок.Вывести(ОбластьСтрокаСотрудник,Выборка.Уровень());<br>            <br>            ЧасовНакопительно = 0;<br>            ВыборкаПоПериодам = Выборка.Выбрать(ОбходРезультатаЗапроса.ПоГруппировкам,"Период");<br>            Для н=0 по КолвоМесяцев Цикл<br>             Если ВыборкаПоПериодам.Следующий() Тогда<br>                   ОбластьСтрока = Макет.ПолучитьОбласть("Строка|КолонкаСтроки");<br>                   ЧасовНакопительно = ЧасовНакопительно + ВыборкаПоПериодам.явка;<br>                   ОбластьСтрока.Параметры.Заполнить(ВыборкаПоПериодам);<br>                   ОбластьСтрока.Параметры.явкаНакоп = ЧасовНакопительно;<br>                   ТабДок.Присоединить(ОбластьСтрока);             <br>             Иначе<br>                   ОбластьСтрока = Макет.ПолучитьОбласть("Строка|КолонкаСтроки");<br>                   ТабДок.Присоединить(ОбластьСтрока); <br>             КонецЕсли;<br>            КонецЦикла;<br>            <br>            ИтогЯвка = ИтогЯвка + Выборка.явка;<br>            НомерПП = НомерПП + 1;<br>       КонецЦикла;<br>       <br> КонецЦикла;</pre><br><br><br><br> Помогите пожалуйста с решением проблемы. Заранее благодарен."

Денис (САМАРА)
читатель
офлайн
Дата регистрации: 09.04.2008
Сообщений: 8351
Пост №2
 
29.12.2011 13:27

Что-то не видно в коде условия на дату принятия сотрудника ни в запросе, ни в цикле обхода выборки данных?

Алавир
читатель
офлайн
Дата регистрации: 20.04.2011
Сообщений: 511
Пост №3
 
29.12.2011 21:05

Ощущение, что даты у этих проблемных просто сдвинуты назад.<br> <br>В цикле<br>> Для н=0 по КолвоМесяцев Цикл<br>Если сотрудник работал с марта, то нулевой месяц у него будет март, т.к. он в запросе будет первым, и он будет записываться в первый столбец, который собственно не март, а январь.

Показывать по 10 20 40 сообщений

Читают тему:

1 гостей
Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация