diff --git a/addons/l10n_in_hr_payroll/l10n_in_hr_payroll_report.xml b/addons/l10n_in_hr_payroll/l10n_in_hr_payroll_report.xml index e3fff82fc38..90a6fd1560c 100644 --- a/addons/l10n_in_hr_payroll/l10n_in_hr_payroll_report.xml +++ b/addons/l10n_in_hr_payroll/l10n_in_hr_payroll_report.xml @@ -10,5 +10,13 @@ rml="l10n_in_hr_payroll/report/report_payslip_details.rml" string="PaySlip Details" /> + + diff --git a/addons/l10n_in_hr_payroll/l10n_in_hr_payroll_view.xml b/addons/l10n_in_hr_payroll/l10n_in_hr_payroll_view.xml index 351908455c0..35e56d9225e 100644 --- a/addons/l10n_in_hr_payroll/l10n_in_hr_payroll_view.xml +++ b/addons/l10n_in_hr_payroll/l10n_in_hr_payroll_view.xml @@ -10,7 +10,7 @@ - + diff --git a/addons/l10n_in_hr_payroll/report/__init__.py b/addons/l10n_in_hr_payroll/report/__init__.py index c90599352c2..5768ce50d05 100644 --- a/addons/l10n_in_hr_payroll/report/__init__.py +++ b/addons/l10n_in_hr_payroll/report/__init__.py @@ -23,5 +23,6 @@ ############################################################################## import report_payslip_details +import report_payroll_advice # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_in_hr_payroll/report/payment_advice.rml b/addons/l10n_in_hr_payroll/report/payment_advice.rml new file mode 100644 index 00000000000..65ce07b56c6 --- /dev/null +++ b/addons/l10n_in_hr_payroll/report/payment_advice.rml @@ -0,0 +1,338 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + [[repeatIn(objects,'o')]] + + + + + + + + + + + + + + + + + + + + + + The Manager + + + + + + + + + + [[ o.bank_id.name ]] Bank + + + + + + + + + + + + + Dear Sir/Madam, + + + + + + + + + + + + Payment Advice: [[ o.name ]] for period [[ get_month(o.date)['mname'] ]] + + + + + + + [[ o.note ]] + + + + + + + + + + SI. No. + + + Name of the Employe + + + By Salary + + + Bank Account No. + + + +
+ [[ repeatIn(get_detail(o.line_ids),'line') ]] + + + + + . + + + + + [[ line['name'] ]] + + + [[formatLang(line['bysal'])]] [[ (company.currency_id and company.currency_id.symbol) or '' ]] + + + [[ line['acc_no'] ]] + + + + + + + + +
+ + + + + + + + + Total: + + + [[ formatLang(get_bysal_total()) ]] [[ (company.currency_id and company.currency_id.symbol) or '' ]] + + + + + + + + + + + + + + + + + + + + Yours Sincerely + + + + + + + + + + For [[ company.name ]] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Authorized Signature + + + + + + + + + + + + + + +
+
diff --git a/addons/l10n_in_hr_payroll/report/report_payroll_advice.py b/addons/l10n_in_hr_payroll/report/report_payroll_advice.py new file mode 100644 index 00000000000..4c634edb3ba --- /dev/null +++ b/addons/l10n_in_hr_payroll/report/report_payroll_advice.py @@ -0,0 +1,70 @@ +#-*- coding:utf-8 -*- + +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2004-2009 Tiny SPRL (). All Rights Reserved +# d$ +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see . +# +############################################################################## + +import time +from datetime import datetime +from report import report_sxw +from tools import amount_to_text_en + +class payroll_advice_report(report_sxw.rml_parse): + def __init__(self, cr, uid, name, context): + super(payroll_advice_report, self).__init__(cr, uid, name, context) + + self.total_bysal = 0.00 + self.localcontext.update({ + 'time': time, + 'get_month': self.get_month, + 'convert': self.convert, + 'get_detail': self.get_detail, + 'get_bysal_total': self.get_bysal_total, + }) + def get_month(self,input_date): + res = { + 'mname': '' + } + date = datetime.strptime(input_date, '%Y-%m-%d') + res['mname']= date.strftime('%B')+'-'+date.strftime('%Y') + return res + + def convert(self,amount, cur): + amt_en = amount_to_text_en.amount_to_text(amount,'en',cur); + return amt_en + + def get_bysal_total(self): + return self.total_bysal + + def get_detail(self,line_ids): + result =[] + if line_ids: + for l in line_ids: + res = {} + res['name'] = l.employee_id.name + res['acc_no'] = l.name + res['bysal'] = l.bysal + self.total_bysal += l.bysal + result.append(res) + return result + +report_sxw.report_sxw('report.payroll.advice', 'hr.payroll.advice', 'l10n_in_hr_payroll/report/payment_advice.rml', parser=payroll_advice_report) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: