![]() |
#1 |
Участник
|
![]()
Доброго времени суток
Прошу подсказки, как начинающий в NAV 2009. Имеется база 6.0 R2 (6.00.32012) с обновлениями до 60060. По созданию и заполнению видов начисления, а также привяки в условиях трудового договора разобрался... Табели заполнены и выпущены. При попытке создания зарплатного документа, т.е. создаем документ, функции - Предложить документы (Report 17401) вроде как отрабатывает, но в какой-то момент выдает сообщение "Наобходимо определить Дата начала действия". Перерыл все модули, в отладчике прошел по коду несколько раз... Ошибку получаем в функции GetSalaryPay в CodeUnit 17404, т.е. при расчете месячного оклада по отработанным дням. PayrollElement.TESTFIELD("Action Starting Date"); По коду получается что при создании строк это поле нигде не заполняется, кроме 17401 в функции UpdateTemlLine, которую я не нашел при каком условии вызывается... Возможно кто-то сталкивался с данными поблемама и знает решение. С уважением, Алексей. |
|
![]() |
#2 |
Участник
|
Цитата:
Может, у Вас уже какие-то кастомизации сделаны? |
|
![]() |
#3 |
Участник
|
Цитата:
В исходном описании я допустил ошибку в описании кода... PayrollElement.GET(PayrollDocLine."Element Code"); PayrollDocLine.TESTFIELD("Action Starting Date"); PayrollDocLine.TESTFIELD("Action Ending Date"); PayrollDocLine.TESTFIELD("Employee Ledger Entry No."); Это таблица 17415 Payroll Document Line. Версия NAVRU6.00.01.01,PS60060. Какие-то кастомизации сделаны, но конкретно в этих таблицах и codeunit ничего не менялось. |
|
![]() |
#4 |
Участник
|
Я думаю, что в табличке "Employee Ledger Entry" (17413) у какого-то сотрудника не указана дата начала действия ставки (Action Starting Date). Именно из этого поля, если ставка начала действовать позднее начала расчетного периода,
в репорте 17401 в процедуре UpdateTempLine заполняется поле PayrollDocLine."Action Starting Date" : ---- IF EmplLedgEntry."Action Starting Date" < PayrollWagePeriod."Starting Date" THEN "Action Starting Date" := PayrollWagePeriod."Starting Date" ELSE "Action Starting Date" := EmplLedgEntry."Action Starting Date"; ---- Ну а у того сотрудника, у которого обнаружится это поле пустым, наверняка и в условиях для строки трудового договора дата начала действия ставки тоже будет пустая. |
|
![]() |
#5 |
Участник
|
Цитата:
Снял с утверждения трудовой договор и в условиях найма сотрудника полностью прошел и заново завел даты начала начислений. Утвердил его, при этом оказалось что надо дозаполнить еще и поля календаря в строке договора, чего небыло ранее и запустил по данному сотруднику заново расчет зарплаты... и ура, все прошло и даже поля заполнились. Расчет заработал ![]() С уважением, Алексей |
|
![]() |
#6 |
Участник
|
Да не за что! Завсегда помогу, если что.
Похоже, я "последний из могикан" на этом форуме, кто модулем "Персонал и зарплата" занимается. ![]() |
|