From 90f0071acb93e05f743f05e5e54c1d2541d570fc Mon Sep 17 00:00:00 2001
From: "nel@tinyerp.com" <>
Date: Wed, 7 Apr 2010 08:55:02 +0200
Subject: [PATCH 1/2] Merge and FIX VAT declaration basing on stable sources
bzr revid: nel@tinyerp.com-20100407065502-62cik4iamvtzm4te
---
addons/board_crm_configuration/__terp__.py | 2 +-
addons/event/wizard/event_registration.py | 11 +++-
addons/l10n_be/company.py | 6 ++-
.../wizard/l10n_be_account_vat_declaration.py | 52 ++++++++++---------
.../l10n_be_account_vat_declaration_view.xml | 17 +++---
5 files changed, 52 insertions(+), 36 deletions(-)
diff --git a/addons/board_crm_configuration/__terp__.py b/addons/board_crm_configuration/__terp__.py
index 3c303ee2d1c..09bd6e25bc1 100644
--- a/addons/board_crm_configuration/__terp__.py
+++ b/addons/board_crm_configuration/__terp__.py
@@ -34,7 +34,7 @@ This module implements a dashboard for CRM that includes:
* Jobs Tracking (graph)
""",
'author': 'Tiny',
- 'depends': ['board', 'crm', 'report_crm'],
+ 'depends': ['board', 'crm'],
'update_xml': ['board_crm_statistical_view.xml', 'board_crm_view.xml'],
'demo_xml': ['board_crm_demo.xml'],
'installable': True,
diff --git a/addons/event/wizard/event_registration.py b/addons/event/wizard/event_registration.py
index e7252a1a63d..d8087b7a569 100644
--- a/addons/event/wizard/event_registration.py
+++ b/addons/event/wizard/event_registration.py
@@ -27,6 +27,15 @@ class event_registration_list(osv.osv_memory):
_description = "List Event Registrations"
def open_registration(self, cr, uid, ids, context={}):
+ if not context.get('active_id', None):
+ return {
+ 'name': 'Event Registrations',
+ 'view_type': 'form',
+ 'view_mode': 'tree,form',
+ 'res_model': 'event.registration',
+ 'type': 'ir.actions.act_window'
+ }
+
cr.execute('SELECT section_id FROM event_event WHERE id = %s', (context['active_id'],))
res = cr.fetchone()
return {
@@ -40,4 +49,4 @@ class event_registration_list(osv.osv_memory):
event_registration_list()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_be/company.py b/addons/l10n_be/company.py
index 4395f13380e..30435f0fc49 100644
--- a/addons/l10n_be/company.py
+++ b/addons/l10n_be/company.py
@@ -25,7 +25,7 @@ class res_company(osv.osv):
_description = 'res.company'
def _get_default_ad(self, addresses):
- city = post_code = address = ""
+ city = post_code = address = country_code = ""
for ads in addresses:
if ads.type == 'default':
city = ads.city or ""
@@ -34,7 +34,9 @@ class res_company(osv.osv):
address = ads.street or ""
if ads.street2:
address += " " + ads.street2
- return city, post_code, address
+ if ads.country_id:
+ country_code = ads.country_id and ads.country_id.code or ""
+ return city, post_code, address, country_code
res_company()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
diff --git a/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py b/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py
index 9dd5ea5b269..4b531438171 100644
--- a/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py
+++ b/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py
@@ -18,25 +18,31 @@
# along with this program. If not, see .
#
##############################################################################
-import base64
+import time
+import datetime
+import base64
from osv import osv, fields
from tools.translate import _
class l10n_be_vat_declaration(osv.osv_memory):
- """ Periodical VAT Declaration """
+ """ Vat Declaration """
_name = "l1on_be.vat.declaration"
_description = "Vat Declaration"
_columns = {
'period_id': fields.many2one('account.period','Period', required=True),
'msg': fields.text('File created', size=64, readonly=True),
- 'file_save': fields.binary('Save File'),
- }
+ 'file_save' : fields.binary('Save File'),
+ 'ask_resitution': fields.boolean('Ask Restitution'),
+ 'ask_payment': fields.boolean('Ask Payment'),
+ 'client_nihil': fields.boolean('Last Declaration of Entreprise', help = 'Thick this case only if it concerns only the last statement on the civil or cessation of activity')
+
+ }
_defaults = {
'msg': lambda *a:'''Save the File with '".xml"' extension.''',
- }
+ }
def create_xml(self, cr, uid, ids, context={}):
obj_fyear = self.pool.get('account.fiscalyear')
@@ -46,12 +52,12 @@ class l10n_be_vat_declaration(osv.osv_memory):
obj_comp = self.pool.get('res.company')
obj_data = self.pool.get('ir.model.data')
- list_of_tags=['00','01','02','03','45','46','47','48','49','54','55','56','57','59','61','62','63','64','71','81','82','83','84','85','86','87','91']
+ list_of_tags=['00','01','02','03','44','45','46','47','48','49','54','55','56','57','59','61','62','63','64','71','81','82','83','84','85','86','87','88','91']
obj_company = obj_user.browse(cr, uid, uid, context=context).company_id
user_cmpny = obj_company.name
vat_no=obj_company.partner_id.vat
if not vat_no:
- raise osv.except_osv(_('Data Insufficient'),_('No VAT Number Associated with Main Company!'))
+ raise wizard.except_wizard(_('Data Insufficient'),_('No VAT Number Associated with Main Company!'))
tax_code_ids = obj_tax_code.search(cr, uid, [], context=context)
ctx = context.copy()
@@ -59,50 +65,46 @@ class l10n_be_vat_declaration(osv.osv_memory):
ctx['period_id'] = data['period_id'] #added context here
tax_info = obj_tax_code.read(cr, uid, tax_code_ids, ['code','sum_period'], context=ctx)
- address = post_code = city = ''
- if not obj_company.partner_id.address:
- address = post_code = city = ''
+ address = post_code = city = country_code = ''
+ city, post_code, address, country_code = pooler.get_pool(cr.dbname).get('res.company')._get_default_ad(obj_company.partner_id.address)
+
- city, post_code, address = obj_comp._get_default_ad(obj_company.partner_id.address)
year_id = obj_fyear.find(cr, uid)
account_period = obj_acc_period.browse(cr, uid, data['period_id'], context=context)
- current_year = account_period.fiscalyear_id.name
period_code = account_period.code
- send_ref = user_cmpny
- if period_code:
- send_ref = send_ref + period_code
-
+ send_ref = str(obj_company.partner_id.id) + str(account_period.date_start[5:7]) + str(account_period.date_stop[:4])
data_of_file='\n'
data_of_file +='\n\t\n\t\t'+str(vat_no)+'\n\t\t'+str(obj_company.name)+'\n\t\t'+address+''
- data_of_file +='\n\t\t'+post_code+'\n\t\t'+city+'\n\t\t'+send_ref+'\n\t'
- data_of_file +='\n\t\n\t\t1\n\t\t'+str(vat_no)+'\n\t\t\n\t\t\t'
-
+ data_of_file +='\n\t\t'+post_code+'\n\t\t'+city+'\n\t\t'+country_code+'\n\t\t'+send_ref+'\n\t'
+ data_of_file +='\n\t\n\t\t1\n\t\t'+str(vat_no[2:])+'\n\t\t\n\t\t\t'
+
starting_month = account_period.date_start[5:7]
ending_month = account_period.date_stop[5:7]
if starting_month != ending_month:
#starting month and ending month of selected period are not the same
#it means that the accounting isn't based on periods of 1 month but on quarters
quarter = str(((int(starting_month) - 1) / 3) + 1)
- data_of_file += '' + quarter + '\n\t\t\t'
+ data_of_file += ''+quarter+'\n\t\t\t'
else:
- data_of_file += '' + starting_month + '\n\t\t\t'
+ data_of_file += ''+starting_month+'\n\t\t\t'
data_of_file += '' + str(account_period.date_stop[:4]) + '\n\t\t\n\t\t'
+ data_of_file += '\n\t\t'+ (data['form']['client_nihil'] and 'YES' or 'NO') +''
data_of_file +='\n\t\t\n\t\t\t'
for item in tax_info:
if item['code']:
if item['code'] == '71-72':
- item['code'] = '71'
+ item['code']='71'
if item['code'] in list_of_tags:
- data_of_file +='\n\t\t\t\t' + str(int(item['sum_period']*100)) + ''
+ data_of_file +='\n\t\t\t\t' + str(abs(int(item['sum_period']*100))) + ''
data_of_file +='\n\t\t\t\n\t\t\n\t\n'
data['file_save'] = base64.encodestring(data_of_file)
self.write(cr, uid, ids, {'file_save':data['file_save']}, context=context)
- return True
+
l10n_be_vat_declaration()
-# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file
+# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
diff --git a/addons/l10n_be/wizard/l10n_be_account_vat_declaration_view.xml b/addons/l10n_be/wizard/l10n_be_account_vat_declaration_view.xml
index 56f8b6477f9..62399ae1cba 100644
--- a/addons/l10n_be/wizard/l10n_be_account_vat_declaration_view.xml
+++ b/addons/l10n_be/wizard/l10n_be_account_vat_declaration_view.xml
@@ -3,9 +3,9 @@
+ id="menu_finance_belgian_statement"
+ name="Belgium Statements"
+ parent="account.menu_finance_legal_statement"/>
Select Period
@@ -13,9 +13,12 @@
form
-
\ No newline at end of file
+
From f10bd47d01713067247619964a8c79575ed8d326 Mon Sep 17 00:00:00 2001
From: "HDA (OpenERP)"
Date: Wed, 7 Apr 2010 13:08:17 +0530
Subject: [PATCH 2/2] [FIX] l10n_ch onchange_partner_id defination changed
bzr revid: hda@tinyerp.com-20100407073817-6ihpr948ediozc8h
---
addons/l10n_ch/invoice.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/addons/l10n_ch/invoice.py b/addons/l10n_ch/invoice.py
index 94173609a6f..0cd99338041 100755
--- a/addons/l10n_ch/invoice.py
+++ b/addons/l10n_ch/invoice.py
@@ -152,9 +152,9 @@ class account_invoice(osv.osv):
## @parma date_invoice date of the invoice
## @parma payment_term inoice payment term
## @param partner_bank_id the partner linked invoice bank
- ## @return the dict of values with the partner_bank value updated
+ ## @return the dict of values with the partner_bank value updated
def onchange_partner_id(self, cr, uid, ids, type, partner_id,
- date_invoice=False, payment_term=False, partner_bank_id=False):
+ date_invoice=False, payment_term=False, partner_bank_id=False, company_id=False):
""" Function that is call when the partner of the invoice is changed
it will retriev and set the good bank partner bank"""
res = super(account_invoice, self).onchange_partner_id(