diff --git a/addons/l10n_in/account_multi_chart_wizard.py b/addons/l10n_in/account_multi_chart_wizard.py
index 058c2a41617..b9c242312a6 100644
--- a/addons/l10n_in/account_multi_chart_wizard.py
+++ b/addons/l10n_in/account_multi_chart_wizard.py
@@ -18,7 +18,7 @@
# along with this program. If not, see .
#
##############################################################################
-
+from tools.translate import _
from osv import fields, osv
from os.path import join as opj
import tools
@@ -45,45 +45,56 @@ class account_multi_charts_wizard(osv.osv_memory):
elif data.name == 'India - Chart of Accounts for Partnership/Private Firm':
res['value'].update({'sales_tax': True,'vat':True})
return res
-
- def execute(self, cr, uid, ids, context=None):
- multichart_data = self.browse(cr, uid, ids[0], context=context)
- if multichart_data.chart_template_id.name == 'India - Chart of Accounts for Public Firm':
- if multichart_data.sales_tax:
- path = tools.file_open(opj('l10n_in', 'tax', 'public_firm_sales_tax.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
- if multichart_data.vat:
- path = tools.file_open(opj('l10n_in', 'tax', 'public_firm_vat.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
- if multichart_data.service_tax:
- path = tools.file_open(opj('l10n_in', 'tax', 'public_firm_service.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
- if multichart_data.excise_duty:
- path = tools.file_open(opj('l10n_in', 'tax', 'public_firm_excise_duty.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
- elif multichart_data.chart_template_id.name == 'India - Chart of Accounts for Partnership/Private Firm':
- if multichart_data.sales_tax:
- path = tools.file_open(opj('l10n_in', 'tax', 'privete_sale_tax.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
- if multichart_data.vat:
- path = tools.file_open(opj('l10n_in', 'tax', 'private_vat.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
- if multichart_data.service_tax:
- path = tools.file_open(opj('l10n_in', 'tax', 'private_service.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
- if multichart_data.excise_duty:
- path = tools.file_open(opj('l10n_in', 'tax', 'private_exice_duty.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
- res = super(account_multi_charts_wizard, self).execute(cr, uid, ids, context=context)
- return res
+
+ def _load_template(self, cr, uid, template_id, company_id, code_digits=None, obj_wizard=None, account_ref={}, taxes_ref={}, tax_code_ref={}, context=None):
+ res = super(account_multi_charts_wizard, self)._load_template(cr, uid, template_id, company_id, code_digits, obj_wizard, account_ref, taxes_ref, tax_code_ref, context=context)
+ template = self.pool.get('account.chart.template').browse(cr, uid, template_id, context=context)
+ obj_tax_code_template = self.pool.get('account.tax.code.template')
+ obj_tax_temp = self.pool.get('account.tax.template')
+ obj_tax = self.pool.get('account.tax')
+ tax_code_ref.update(obj_tax_code_template.generate_tax_code(cr, uid, template.tax_code_root_id.id, company_id, context=context))
+ if obj_wizard.sales_tax == False and obj_wizard.excise_duty == False and obj_wizard.vat == False and obj_wizard.service_tax == False:
+ raise osv.except_osv(_('Error !'), _('Select Tax to Install'))
+ # Unlink the Tax for current company
+ tax_ids = obj_tax.search(cr, uid, [('company_id','=',company_id)], context=context)
+ obj_tax.unlink(cr, uid, tax_ids, context=context)
+ #Create new Tax as per selected from wizard
+ if obj_wizard.chart_template_id.name == 'India - Chart of Accounts for Public Firm':
+ if obj_wizard.sales_tax:
+ tax_temp_ids = obj_tax_temp.search(cr, uid, [('name','in',['Sale Tax - 15%','Sale Tax - 12%']),('chart_template_id','=',obj_wizard.chart_template_id.id)], context=context)
+ tax_temp_data = obj_tax_temp.browse(cr, uid, tax_temp_ids, context=context)
+ taxes_ref = obj_tax_temp._generate_tax(cr, uid, tax_temp_data, tax_code_ref, company_id, context=context)
+ if obj_wizard.vat:
+ tax_temp_ids = obj_tax_temp.search(cr, uid, [('name','in',['VAT - 5%','VAT - 15%','VAT - 8%']),('chart_template_id','=',obj_wizard.chart_template_id.id)], context=context)
+ tax_temp_data = obj_tax_temp.browse(cr, uid, tax_temp_ids, context=context)
+ taxes_ref = obj_tax_temp._generate_tax(cr, uid, tax_temp_data, tax_code_ref, company_id, context=context)
+ if obj_wizard.service_tax:
+ tax_temp_ids = obj_tax_temp.search(cr, uid, [('name','in',['Service Tax','Service Tax - %2','Service Tax - %1']),('chart_template_id','=',obj_wizard.chart_template_id.id)], context=context)
+ tax_temp_data = obj_tax_temp.browse(cr, uid, tax_temp_ids, context=context)
+ taxes_ref = obj_tax_temp._generate_tax(cr, uid, tax_temp_data, tax_code_ref, company_id, context=context)
+ if obj_wizard.excise_duty:
+ tax_temp_ids = obj_tax_temp.search(cr, uid, [('name','in',['Excise Duty','Excise Duty - %2','Excise Duty - 1%']),('chart_template_id','=',obj_wizard.chart_template_id.id)], context=context)
+ tax_temp_data = obj_tax_temp.browse(cr, uid, tax_temp_ids, context=context)
+ taxes_ref = obj_tax_temp._generate_tax(cr, uid, tax_temp_data, tax_code_ref, company_id, context=context)
+
+ elif obj_wizard.chart_template_id.name == 'India - Chart of Accounts for Partnership/Private Firm':
+ if obj_wizard.sales_tax:
+ tax_temp_ids = obj_tax_temp.search(cr, uid, [('name','in',['Sale Tax - 15%','Sale Tax - 12%']),('chart_template_id','=',obj_wizard.chart_template_id.id)], context=context)
+ tax_temp_data = obj_tax_temp.browse(cr, uid, tax_temp_ids, context=context)
+ taxes_ref = obj_tax_temp._generate_tax(cr, uid, tax_temp_data, tax_code_ref, company_id, context=context)
+ if obj_wizard.vat:
+ tax_temp_ids = obj_tax_temp.search(cr, uid, [('name','in',['VAT - 5%','VAT - 15%','VAT - 8%']),('chart_template_id','=',obj_wizard.chart_template_id.id)], context=context)
+ tax_temp_data = obj_tax_temp.browse(cr, uid, tax_temp_ids, context=context)
+ taxes_ref = obj_tax_temp._generate_tax(cr, uid, tax_temp_data, tax_code_ref, company_id, context=context)
+ if obj_wizard.service_tax:
+ tax_temp_ids = obj_tax_temp.search(cr, uid, [('name','in',['Service Tax', 'Service Tax - %2', 'Service Tax - %1']),('chart_template_id','=',obj_wizard.chart_template_id.id)], context=context)
+ tax_temp_data = obj_tax_temp.browse(cr, uid, tax_temp_ids, context=context)
+ taxes_ref = obj_tax_temp._generate_tax(cr, uid, tax_temp_data, tax_code_ref, company_id, context=context)
+ if obj_wizard.excise_duty:
+ tax_temp_ids = obj_tax_temp.search(cr, uid, [('name','in',['Excise Duty', 'Excise Duty - %2', 'Excise Duty - 1%']),('chart_template_id','=',obj_wizard.chart_template_id.id)], context=context)
+ tax_temp_data = obj_tax_temp.browse(cr, uid, tax_temp_ids, context=context)
+ taxes_ref = obj_tax_temp._generate_tax(cr, uid, tax_temp_data, tax_code_ref, company_id, context=context)
+ return account_ref, taxes_ref, tax_code_ref
account_multi_charts_wizard()
diff --git a/addons/l10n_in/installer.py b/addons/l10n_in/installer.py
index e9e4157a23f..2d9a2a3d39b 100644
--- a/addons/l10n_in/installer.py
+++ b/addons/l10n_in/installer.py
@@ -27,9 +27,9 @@ class l10n_installer(osv.osv_memory):
_inherit = 'account.installer'
_columns = {
'company_type':fields.selection([('partnership_private_company', 'Partnership/Private Firm'),
- ('public_company', 'Public Firm')], 'Company Type', required=True),
+ ('public_company', 'Public Firm')], 'Company Type', required=True,
+ help='Select your company Type according to your need to install account chart'),
}
-
_defaults = {
'company_type': 'public_company',
}
@@ -40,13 +40,22 @@ class l10n_installer(osv.osv_memory):
context = {}
for res in self.read(cr, uid, ids, context=context):
if res['charts'] =='l10n_in' and res['company_type']=='public_company':
- path = tools.file_open(opj('l10n_in', 'l10n_in_public_firm_chart.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
+ acc_file_path = tools.file_open(opj('l10n_in', 'l10n_in_public_firm_chart.xml'))
+ tools.convert_xml_import(cr, 'l10n_in', acc_file_path, {}, 'init', True, None)
+ acc_file_path.close()
+
+ tax_file_path = tools.file_open(opj('l10n_in', 'l10n_in_public_firm_tax_template.xml'))
+ tools.convert_xml_import(cr, 'l10n_in', tax_file_path, {}, 'init', True, None)
+ tax_file_path.close()
+
if res['charts'] =='l10n_in' and res['company_type']=='partnership_private_company':
- path = tools.file_open(opj('l10n_in', 'l10n_in_partnership_private_chart.xml'))
- tools.convert_xml_import(cr, 'l10n_in', path, {}, 'init', True, None)
- path.close()
+ acc_file_path = tools.file_open(opj('l10n_in', 'l10n_in_partnership_private_chart.xml'))
+ tools.convert_xml_import(cr, 'l10n_in', acc_file_path, {}, 'init', True, None)
+ acc_file_path.close()
+
+ tax_file_path = tools.file_open(opj('l10n_in', 'l10n_in_private_firm_tax_template.xml'))
+ tools.convert_xml_import(cr, 'l10n_in', tax_file_path, {}, 'init', True, None)
+ tax_file_path.close()
return res
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_in/l10n_in_private_firm_tax_template.xml b/addons/l10n_in/l10n_in_private_firm_tax_template.xml
new file mode 100644
index 00000000000..564eb41fdfd
--- /dev/null
+++ b/addons/l10n_in/l10n_in_private_firm_tax_template.xml
@@ -0,0 +1,224 @@
+
+
+
+
+
+
+
+ Sales Tax Payable
+ 216
+ payable
+
+
+
+
+
+
+ VAT Payable
+ 217
+ payable
+
+
+
+
+
+
+ Service Tax Payable
+ 218
+ payable
+
+
+
+
+
+
+ Exice Duty Payable
+ 219
+ payable
+
+
+
+
+
+
+
+
+ Sale Tax - 15%
+ Sale Tax - 15%
+
+ 0.15
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+ Sale Tax -12%
+ Sale Tax - 12%
+
+ 0.12
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+
+
+
+ VAT - 5%
+ VAT - 5%
+
+ 0.05
+ percent
+ all
+
+
+
+ 1
+
+ 1
+
+ 1
+
+ 1
+
+
+
+
+
+ VAT - 15%
+ VAT - 15%
+
+ 0.15
+ percent
+ all
+
+
+
+ 1
+
+ 1
+
+ 1
+
+ 1
+
+
+
+
+
+ VAT - 8%
+ VAT - 8%
+
+ 0.8
+ percent
+ all
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Exice Duty - 10.30%
+ Excise Duty
+
+ 0.10
+ percent
+ sale
+
+
+
+ 1
+
+ 1
+
+ 1
+
+ 1
+
+
+
+
+
+ Excise duty -10% -%2
+ Excise Duty - %2
+ 0.02
+ percent
+ sale
+
+
+
+
+
+ Excise duty - 10% - %1
+ Excise Duty - 1%
+ 0.01
+ percent
+ sale
+
+
+
+
+
+
+
+ all
+ Service - 12%
+ Service Tax
+
+ 0.12
+ percent
+
+
+
+
+
+
+
+
+
+
+
+ Service - 12% - %2
+ Service Tax - %2
+ 0.02
+ percent
+ all
+
+
+
+
+
+ Service - 12% - 1%
+ Service Tax - %1
+ 0.01
+ percent
+ all
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/l10n_in/l10n_in_public_firm_tax_template.xml b/addons/l10n_in/l10n_in_public_firm_tax_template.xml
new file mode 100644
index 00000000000..6dd08be944b
--- /dev/null
+++ b/addons/l10n_in/l10n_in_public_firm_tax_template.xml
@@ -0,0 +1,231 @@
+
+
+
+
+
+
+
+
+ Sales Tax Payable
+ 24600
+ payable
+
+
+
+
+
+
+ VAT Payable
+ 24800
+ payable
+
+
+
+
+
+
+ Exice Duty Payable
+ 24900
+ payable
+
+
+
+
+
+
+ Service Tax Payable
+ 24700
+ payable
+
+
+
+
+
+
+
+
+
+ Sale Tax - 15%
+ Sale Tax - 15%
+
+
+
+ 0.15
+ percent
+ sale
+
+
+
+
+
+
+
+
+ Sale Tax - 12%
+ Sale Tax - 12%
+
+
+
+ 0.12
+ percent
+ sale
+
+
+
+
+
+
+
+
+
+
+ VAT - 5%
+ VAT - 5%
+
+
+
+ 0.05
+ percent
+ all
+
+ 1
+
+ 1
+
+ 1
+
+ 1
+
+
+
+
+
+ VAT - 15%
+ VAT - 15%
+
+
+
+ 0.15
+ percent
+ all
+
+ 1
+
+ 1
+
+ 1
+
+ 1
+
+
+
+
+
+ VAT - 8%
+ VAT - 8%
+
+
+
+ 0.08
+ percent
+ all
+
+ 1
+
+ 1
+
+ 1
+
+ 1
+
+
+
+
+
+
+
+ Service - 12%
+ Service Tax
+
+
+
+ 0.12
+ percent
+ all
+
+ 1
+
+ 1
+
+ 1
+
+ 1
+
+
+
+
+
+ Service - 12% - 2%
+ Service Tax - %2
+ 0.02
+ percent
+ all
+
+
+
+
+
+ Service - 12% - 1%
+ Service Tax - %1
+ 0.01
+ percent
+ all
+
+
+
+
+
+
+
+ Excise duty - 10%
+ Excise Duty
+
+
+
+ 0.10
+ percent
+ sale
+
+ 1
+
+ 1
+
+ 1
+
+ 1
+
+
+
+
+
+ Excise duty - 10% - 2%
+ Excise Duty - %2
+ 0.02
+ percent
+ sale
+
+
+
+
+
+ Excise duty - 10% - 1%
+ Excise Duty - 1%
+ 0.01
+ percent
+ sale
+
+
+
+
+
+
\ No newline at end of file
diff --git a/addons/l10n_in/tax/private_exice_duty.xml b/addons/l10n_in/tax/private_exice_duty.xml
deleted file mode 100644
index 14f4636cf32..00000000000
--- a/addons/l10n_in/tax/private_exice_duty.xml
+++ /dev/null
@@ -1,60 +0,0 @@
-
-
-
-
-
-
- Exice Duty Payable
- 219
- payable
-
-
-
-
-
-
- Exice Duty - 10.30%
- 10
- Exice Duty
-
- 0.10
- percent
- sale
-
-
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
- 11
- Excise duty -10% -%2
- Excise duty - 2%
- 0.02
- percent
- sale
-
-
-
-
-
- 11
- Excise duty - 10% - %1
- Excise duty - 1%
- 0.01
- percent
- sale
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/l10n_in/tax/private_service.xml b/addons/l10n_in/tax/private_service.xml
deleted file mode 100644
index 1a36cf4cc0f..00000000000
--- a/addons/l10n_in/tax/private_service.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
- Service Tax Payable
- 218
- payable
-
-
-
-
-
-
- all
- Service - 12%
- Service
-
- 0.12
- percent
-
-
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
- Service - 12% - %2
- Service - 2%
- 0.02
- percent
- all
-
-
-
-
-
- Service - 12% - 1%
- Service - 1%
- 0.01
- percent
- all
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/l10n_in/tax/private_vat.xml b/addons/l10n_in/tax/private_vat.xml
deleted file mode 100644
index 9f917a329f0..00000000000
--- a/addons/l10n_in/tax/private_vat.xml
+++ /dev/null
@@ -1,101 +0,0 @@
-
-
-
-
-
-
- VAT Payable
- 217
- payable
-
-
-
-
-
-
- 30
- VAT - 4%
- VAT
-
- 0.04
- percent
- all
-
-
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
- VAT - 4% - %1
- VAT - %1
- 0.01
- percent
- all
-
-
-
-
-
- VAT - 12.5%
- VAT - 12.5%
-
- 0.125
- percent
- all
-
-
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
- VAT - 12.5%- %2.5
- VAT (%2.5)
- 0.025
- percent
- sale
-
-
-
-
-
- VAT - 8%
- VAT - 8%
-
- 0.8
- percent
- all
-
-
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/l10n_in/tax/privete_sale_tax.xml b/addons/l10n_in/tax/privete_sale_tax.xml
deleted file mode 100644
index a221ff1317b..00000000000
--- a/addons/l10n_in/tax/privete_sale_tax.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
-
-
-
- Sales Tax Payable
- 216
- payable
-
-
-
-
-
-
- Sale Tax - 15%
- Sale Tax - 15%
-
- 0.15
- percent
- sale
-
-
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
- Sale Tax -12%
- Sale Tax - 12%
-
- 0.12
- percent
- sale
-
-
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/l10n_in/tax/public_firm_excise_duty.xml b/addons/l10n_in/tax/public_firm_excise_duty.xml
deleted file mode 100644
index 031c92307fd..00000000000
--- a/addons/l10n_in/tax/public_firm_excise_duty.xml
+++ /dev/null
@@ -1,57 +0,0 @@
-
-
-
-
-
-
- Exice Duty Payable
- 24900
- payable
-
-
-
-
-
-
- Excise duty - 10%
- Excise duty
-
-
-
- 0.10
- percent
- sale
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
- Excise duty - 10% - 2%
- Excise duty - %2
- 0.02
- percent
- sale
-
-
-
-
-
- Excise duty - 10% - 1%
- Excise duty - 1%
- 0.01
- percent
- sale
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/l10n_in/tax/public_firm_sales_tax.xml b/addons/l10n_in/tax/public_firm_sales_tax.xml
deleted file mode 100644
index 27d768aba7a..00000000000
--- a/addons/l10n_in/tax/public_firm_sales_tax.xml
+++ /dev/null
@@ -1,48 +0,0 @@
-
-
-
-
-
-
- Sales Tax Payable
- 24600
- payable
-
-
-
-
-
-
- Sale Tax - 15%
- Sale Tax - 15%
-
-
-
- 0.15
- percent
- sale
-
-
-
-
-
-
-
-
- Sale Tax - 12%
- Sale Tax - 12%
-
-
-
- 0.12
- percent
- sale
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/l10n_in/tax/public_firm_service.xml b/addons/l10n_in/tax/public_firm_service.xml
deleted file mode 100644
index f57eee6796b..00000000000
--- a/addons/l10n_in/tax/public_firm_service.xml
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
-
-
-
- Service Tax Payable
- 24700
- payable
-
-
-
-
-
-
- Service - 12%
- Service
-
-
-
- 0.12
- percent
- all
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
- Service - 12% - 2%
- Service (%2)
- 0.02
- percent
- all
-
-
-
-
-
- Service - 12% - 1%
- Service (%1)
- 0.01
- percent
- all
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/addons/l10n_in/tax/public_firm_vat.xml b/addons/l10n_in/tax/public_firm_vat.xml
deleted file mode 100644
index 9ffe2b9d9ca..00000000000
--- a/addons/l10n_in/tax/public_firm_vat.xml
+++ /dev/null
@@ -1,99 +0,0 @@
-
-
-
-
-
-
- VAT Payable
- 24800
- payable
-
-
-
-
-
-
- VAT - 4%
- VAT - 4%
-
-
-
- 0.04
- percent
- all
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
- VAT - 4% -1%
- VAT - 1%
- 0.01
- percent
- all
-
-
-
-
-
- VAT - 12.5%
- VAT - 12.5%
-
-
-
- 0.125
- percent
- all
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
- VAT - 12.5% - %2.5
- VAT - 12.5% - %2.5
- 0.025
- percent
- all
-
-
-
-
-
- VAT - 8%
- VAT - 8%
-
-
-
- 0.08
- percent
- all
-
- 1
-
- 1
-
- 1
-
- 1
-
-
-
-
-
-
\ No newline at end of file