|
Ошибка при выполнении обработчика | ☑ | ||
---|---|---|---|---|
0
liliputochka
06.07.13
✎
19:12
|
Добрый день,
у меня возникает вот такая ошибка: Ошибка при выполнении обработчика - 'ОбработкаПроведения' по причине: {Документ.НачисленияСотрудникам.МодульОбъекта(46)}: Метод объекта не обнаружен (РассчитатьНачисления) ПроведениеРасчетов.РассчитатьНачисления(Движения.Начисления, В коде: //вызов процедуры РассчитатьНачисления из общего модуля ПроведениеРасчетов.РассчитатьНачисления(Движения.Начисления, ПланыВидовРасчета.ОсновныеНачисления.Оклад, МассивСотрудников); ПроведениеРасчетов - это общий модуль у меня. К нему пытаюсь обратиться, но, как я понимаю, обращение не удачно. Посоветуйте что сделать? |
|||
1
ДенисЧ
06.07.13
✎
20:05
|
модуль наверное на клиенте рабоатет?
|
|||
2
Красный рассвет
06.07.13
✎
20:08
|
дубль
|
|||
3
Красный рассвет
06.07.13
✎
20:09
|
||||
4
Спящая
06.07.13
✎
20:26
|
(1)+1 очень похоже
|
|||
5
liliputochka
07.07.13
✎
11:54
|
"модуль наверное на клиенте рабоатет?"
Как сделать чтобы работал на сервере? Если нужны коды, могу выложить, только скажите. |
|||
6
Пеппи
07.07.13
✎
11:56
|
это в ЗУП?
|
|||
7
liliputochka
07.07.13
✎
11:59
|
Что такое ЗУП?
|
|||
8
Пеппи
07.07.13
✎
12:00
|
Зарплата и управление персоналом 8
|
|||
9
liliputochka
07.07.13
✎
12:06
|
То есть здесь мне помочь никто не может? (Я правильно вас поняла, Пеппи?)
|
|||
10
Пеппи
07.07.13
✎
12:09
|
(9) т.е. конфигурация у вас секретная и здесь просто надежда на телепатов угадывающих что и как вы делаете? У вас обычные формы или УФ тоже непонятно))
|
|||
11
liliputochka
07.07.13
✎
12:42
|
Код этого модуля выложен на ветке "Помогите с кодом". Общий модуль "Проведение расчетов":
Процедура РасчитатьНачисления(НаборЗаписейРегистра, ТребуемыйВидРасчета, СписокСотрудников) Экспорт Регистратор = НаборЗаписейРегистра.Отбор.Регистратор.Значение; //рассчитать первичные записи Если ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Оклад Тогда Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ |НачисленияДанныеГрафика.ЗначениеПериодДействия КАК Норма, |НачисленияДанныеГрафика.ЗначениеФактическийПериодДействия КАК Факт, |НачисленияДанныеГрафика.НомерСтроки КАК НомерСтроки |ИЗ |РегистрРасчета.Начисления.ДанныеГрафика(Регистратор = &Регистратор И |ВидРасчета = &ВидРасчета И Сотрудник В (&СписокСотрудников)) |КАК НачисленияДанныеГрафика"; Запрос.УстановитьПараметр("Регистратор", Регистратор); Запрос.УстановитьПараметр("ВидРасчета", ТребуемыйВидРасчета); Запрос.УстановитьПараметр("СписокСотрудников", СписокСотрудников); ВыборкаРезультата = Запрос.Выполнить().Выбрать(); Для Каждого ЗаписьРегистра Из НаборЗаписейРегистра Цикл СтруктураНомер = Новый Структура("НомерСтроки"); СтруктураНомер.НомерСтроки = ЗаписьРегистра.НомерСтроки; ВыборкаРезультата.Сбросить(); Если ВыборкаРезультата.НайтиСледующий(СтруктураНомер) Тогда Если ВыборкаРезультата.Норма = 0 Тогда Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Вид расчета: Оклад - Нет рабочих дней в заданном периоде"; Сообщение.Сообщить(); ЗаписьРегистра.Результат = 0; Иначе // расчитать оклад по фактическому периоду // и исходным данным. ЗаписьРегистра.Результат = (ЗаписьРегистра.ИсходныеДанные /ВыборкаРезультата.Норма)*ВыборкаРезультата.Факт; Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Выполнен расчет" + ЗаписьРегистра .Регистратор + " - " + ЗаписьРегистра.ВидРасчета + " - " + ЗаписьРегистра.Сотрудник; Сообщение.Сообщить(); КонецЕсли; КонецЕсли; КонецЦикла; //расчитать вторичные записи ИначеЕсли ТребуемыйВидРасчета = ПланыВидовРасчета.ОсновныеНачисления.Премия Тогда Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | НачисленияБазаНачисления.РезультатБаза КАК База, | НачисленияБазаНачисления.НомерСтроки КАК НомерСтроки |ИЗ | РегистрРасчета.Начисления.БазаНачисления(&ИзмеренияОсновного, | ИзмеренияБазового, , Регистратор = &Регистратор И ВидРасчета = &ВидРасчета И | Сотрудник В (&СписокСотрудников)) КАК НачисленияБазаНачисления"; Измер = Новый Массив(1); Измер[0] = "Сотрудник"; Запрос.УстановитьПараметр("ИзмеренияОсновного", Измер); Запрос.УстановитьПараметр("ИзмеренияБазового", Измер); Запрос.УстановитьПараметр("Регистратор", Регистратор); Запрос.УстановитьПараметр("ВидРасчета", ТребуемыйВидРасчета); Запрос.УстановитьПараметр("СписокСотрудников", СписокСотрудников); ВыборкаРезультата = Запрос.Выполнить().Выбрать(); Для Каждого ЗаписьРегистра Из НаборЗаписейРегистра Цикл СтруктураНомер = Новый Структура("НомерСтроки"); СтруктураНомер.НомерСтроки = ЗаписьРегистра.НомерСтроки; ВыборкаРезультата.Сбросить(); Если ВыборкаРезультата.НайтиСледующий(СтруктураНомер) Тогда ЗаписьРегистра.Результат = ВыборкаРезультата.База * (10/100); Сообщение = Новый СообщениеПользователю; Сообщение.Текст = "Выполнен расчет" + ЗаписьРегистра.Регистратор + "-" + ЗаписьРегистра.ВидРасчета + "-" + ЗаписьРегистра.Сотрудник; Сообщение.Сообщить(); КонецЕсли; КонецЦикла; КонецЕсли; КонецПроцедуры Формы, наверное, обычные. Я не знаю что значит УФ форма. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |