St01en
Member | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору В журнале есть такой реквизит, в справке написано, что он только для чтения. Тогда каким образом он устанавливается? Объясню на примере того сотрудника, у которого берется ДатаНачала.ПериодДействия - 01.03.09 Процедура РассчитатьВыплаты() глТрассировка("----Рассчитываются выплаты----",2); ДатаПредМесяца = НачМесяца(ДобавитьМесяц(Дата1,-1)); ДатаПо = ?(фВыплатаЗПнеРегулярно = 1,Дата2,КонМесяца(СрокВыплаты2)); Сообщить("ДатаПред месяца - "+ ДатаПредМесяца+" ДатаПо-"+ДатаПо); Здесь выдает - ДатаПредмесяца - 01.06.10 ДатаПо-31.10.10 ТекстЗапр = "//{{ЗАПРОС(ВыплаченнаяЗП) |Период С ДатаПредМесяца по ДатаПо; |Сот = ЖурналРасчетов.Зарплата.Объект; |Фир = ЖурналРасчетов.Зарплата.Объект.Фирма; |ВиР = ЖурналРасчетов.Зарплата.ВидРасч; |Рез = ЖурналРасчетов.Зарплата.Результат; |ПеД = ЖурналРасчетов.Зарплата.ПериодДействия; |ПеР = ЖурналРасчетов.Зарплата.ПериодРегистрации; |Док = ЖурналРасчетов.Зарплата.ТекущийДокумент; |Функция Выплачено = Сумма(Рез) когда(ВиР.ВходитВГруппу(ГруппаРасчетов.ВсеВыплаты) = 1); |Функция Возвращено = Сумма(Рез) когда(ВиР = ВидРасчета.ВозвратВКассу); |Группировка Сот без групп; |Группировка ПеД; |Группировка ПеР; |Группировка Док; |Условие(Фир в Фирма); |Условие(Рез <> 0); |";//}}ЗАПРОС ЗапрВыпл = СоздатьОбъект("Запрос"); Если ЗапрВыпл.Выполнить(ТекстЗапр) = 0 Тогда глТрассировка("Не выполнился запрос по выплаченной заработной плате!",0); ЗапрВыпл = 0; Возврат КонецЕсли; Пока ЗапрВыпл.Группировка("Сот") = 1 Цикл Пока ЗапрВыпл.Группировка("ПеД") = 1 Цикл ВыплаченоЗаМесяц = 0; Сообщить("Выплаты-1--- "+ЗапрВыпл.Сот+" , Док-"+ЗапрВыпл.Док+", ДатаПредМесяца-"+ДатаПредМесяца+", ПериодДействияДатаНачала-"+ЗапрВыпл.ПеД.ДатаНачала+", Дата1-"+Дата1+", Дата2-"+Дата2); А вот здесь по этому сотруднику выдает вот такое - Выплаты-1--- Нота С. О. , Док-, ДатаПредМесяца-01.06.10, ПериодДействияДатаНачала-01.03.09, Дата1-01.07.10, Дата2-30.09.10 Вот мне не понятно, откуда берется эта дата - 01.03.09 ???? Дальше идут группировка по периоду регистрации, там у меня вообще никаких сообщений нет. А вот потом идет группировка по Док. И там этого сотрудника нет. Т.е., получается нет никакого документа, но есть дата начала периода регистрации. Откуда? Теперь возьмем другого сотрудника. Вот сообщения по нему Выплаты-1--- Опанасенко О. В. , Док-, ДатаПредМесяца-01.06.10, ПериодДействияДатаНачала-01.12.09, Дата1-01.07.10, Дата2-30.09.10 Это в группировке по ПериодуДействия. Откуда 01.12.09 ???? Выплаты-6--- Опанасенко О. В. , Док-Платежная ведомость У-253 (01.07.10), ДатаПредМесяца-01.06.10, ПериодДействияДатаНачала-01.12.09, Дата1-01.07.10, Дата2-30.09.10 Это группировка по Док. Документ совсем другой датой. Следующие грабли. Так как в расчетах выплат в таблицу периодов попадет начальная дата 01.03.09 - в расчете начислений плясать начинает от этой даты. А тут уже начисления есть у всех. И получается в окончательную таблицу выводятся уволенные сотрудники, имеющие начисления с 01.03.09. Вот такой бред. Как его победить - я пока хз =)) | Всего записей: 292 | Зарегистр. 10-04-2006 | Отправлено: 10:10 22-10-2010 | Исправлено: St01en, 10:10 22-10-2010 |
|