diff --git a/payroll.py b/payroll.py index dd93ef1..064cb20 100644 --- a/payroll.py +++ b/payroll.py @@ -1393,6 +1393,7 @@ class PayrollPaycheckReport(Report): ] payrolls = Payroll.search_read( dom_payroll, fields_names=fields_payroll) + # wage_dict_cache = Payroll.create_cache_wage_types() today = date.today() res = {} wage_type_default = [ @@ -1434,7 +1435,8 @@ class PayrollPaycheckReport(Report): 'wage_type.unit_price_formula', 'wage_type.expense_formula', 'payroll', 'start_date', 'end_date', 'payroll.employee', 'payroll.contract', 'wage_type.salary_constitute', - 'party.code', + 'wage_type.concepts_salary', 'wage_type.month_application', + 'party.code', 'wage_type.round_amounts', 'wage_type.minimal_amount' ] dom_line = [ ('payroll', 'in', payroll_ids), @@ -1472,8 +1474,11 @@ class PayrollPaycheckReport(Report): unit_formula = line['wage_type.']['unit_price_formula'] if unit_formula: - unit_formula = Decimal( - (unit_formula[unit_formula.index('*')+1:]).strip()) + try: + unit_formula = Decimal( + (unit_formula[unit_formula.index('*')+1:]).strip()) + except: + unit_formula = 0 else: unit_formula = 0 @@ -1482,7 +1487,7 @@ class PayrollPaycheckReport(Report): expense_formula = Decimal( (expense_formula[expense_formula.index('*')+1:]).strip()) line_ = PayrollLine(line['id']) - expense_amount = line_.get_expense_amount() + expense_amount = line_.get_expense_amount(line['wage_type.']) res[key][concept + '_amount'] += expense_amount res[key]['subtotal'] += expense_amount total += expense_amount