From 683cf35070c9723099fe3b90ddcbe7de2e0a57c9 Mon Sep 17 00:00:00 2001 From: Antony Lesuisse Date: Tue, 14 Sep 2010 13:36:35 +0000 Subject: [PATCH 001/376] openerp local commit bzr revid: al@openerp.com-20100914133635-9yuqmkxqdkmde2ql --- .../report/account_aged_partner_balance.rml | 2 +- addons/account/report/invoice.rml | 2 -- .../account_report_aged_partner_balance.py | 6 +++--- addons/base_action_rule/base_action_rule.py | 19 +++++++++++++++---- .../base_action_rule_view.xml | 1 + addons/crm/report/crm_lead_report.py | 8 ++++---- addons/crm/wizard/crm_forward_to_partner.py | 16 ++++++++++++++-- addons/document/document.py | 1 + .../security/email_template_security.xml | 2 -- addons/mrp/mrp_view.xml | 2 +- addons/sale/report/sale_order.rml | 10 +++++----- 11 files changed, 45 insertions(+), 24 deletions(-) diff --git a/addons/account/report/account_aged_partner_balance.rml b/addons/account/report/account_aged_partner_balance.rml index bd52f9be4f5..5a74e46a115 100644 --- a/addons/account/report/account_aged_partner_balance.rml +++ b/addons/account/report/account_aged_partner_balance.rml @@ -168,7 +168,7 @@ Partners - [[ data['form']['direction_selection'] == 'future' and 'Due' or 'Not due' ]] [[ formatLang(data['form']['date1'],date=True) ]] + [[ data['form']['direction_selection'] == 'future' and 'Due' or 'Not Due' ]] [[ data['form']['4']['name'] ]] diff --git a/addons/account/report/invoice.rml b/addons/account/report/invoice.rml index f05198876b9..59342941829 100644 --- a/addons/account/report/invoice.rml +++ b/addons/account/report/invoice.rml @@ -239,8 +239,6 @@ - Tel. : [[ o.address_invoice_id.phone or removeParentNode('para') ]] - Fax : [[ o.address_invoice_id.fax or removeParentNode('para') ]] VAT : [[ o.partner_id.vat or removeParentNode('para') ]] diff --git a/addons/account/wizard/account_report_aged_partner_balance.py b/addons/account/wizard/account_report_aged_partner_balance.py index 29867f04d5b..0431bafacb2 100644 --- a/addons/account/wizard/account_report_aged_partner_balance.py +++ b/addons/account/wizard/account_report_aged_partner_balance.py @@ -75,9 +75,9 @@ class account_aged_trial_balance(osv.osv_memory): for i in range(5)[::-1]: stop = start - RelativeDateTime(days=period_length) res[str(i)] = { - 'name' : str((5-(i+1)) * period_length) + '-' + str((5-i) * period_length), + 'name' : (i!=0 and (str((5-(i+1)) * period_length) + '-' + str((5-i) * period_length)) or ('+'+str(4 * period_length))), 'stop': start.strftime('%Y-%m-%d'), - 'start' : stop.strftime('%Y-%m-%d'), + 'start' : (i!=0 and stop.strftime('%Y-%m-%d') or time.strftime('01-01-1900')), } start = stop - RelativeDateTime(days=1) else: @@ -99,4 +99,4 @@ class account_aged_trial_balance(osv.osv_memory): account_aged_trial_balance() -# 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/base_action_rule/base_action_rule.py b/addons/base_action_rule/base_action_rule.py index ff6321e599f..b4cd4f8ec00 100644 --- a/addons/base_action_rule/base_action_rule.py +++ b/addons/base_action_rule/base_action_rule.py @@ -113,6 +113,8 @@ the rule to mark CC(mail to any other person defined in actions)."), 'filter_id':fields.many2one('ir.filters', 'Filter', required=False), 'act_email_from' : fields.char('Email From', size=64, required=False, help="Use a python expression to specify the right field on which one than we will use for the 'From' field of the header"), + 'act_email_to' : fields.char('Email To', size=64, required=False, + help="Use a python expression to specify the right field on which one than we will use for the 'To' field of the header"), } _defaults = { @@ -356,13 +358,22 @@ the rule to mark CC(mail to any other person defined in actions)."), emails += (action.act_email_cc or '').split(',') if action.act_mail_to_email: emails += (action.act_mail_to_email or '').split(',') + import pdb + #pdb.set_trace() + + locals_for_emails = { + 'user' : self.pool.get('res.users').browse(cr, uid, uid, context=context), + 'obj' : obj, + } + + if action.act_email_to: + emails.append(safe_eval(action.act_email_to, {}, locals_for_emails)) + emails = filter(None, emails) + if len(emails) and action.act_mail_body: emails = list(set(emails)) - email_from = safe_eval(action.act_email_from, {}, { - 'user' : self.pool.get('res.users').browse(cr, uid, uid, context=context), - 'obj' : obj, - }) + email_from = safe_eval(action.act_email_from, {}, locals_for_emails) self.email_send(cr, uid, obj, emails, action.act_mail_body, emailfrom=email_from) return True diff --git a/addons/base_action_rule/base_action_rule_view.xml b/addons/base_action_rule/base_action_rule_view.xml index 526fe55f4a3..76620f26fe1 100644 --- a/addons/base_action_rule/base_action_rule_view.xml +++ b/addons/base_action_rule/base_action_rule_view.xml @@ -65,6 +65,7 @@ + diff --git a/addons/crm/report/crm_lead_report.py b/addons/crm/report/crm_lead_report.py index 4f6f39e0690..09a80519cdb 100644 --- a/addons/crm/report/crm_lead_report.py +++ b/addons/crm/report/crm_lead_report.py @@ -127,9 +127,9 @@ class crm_lead_report(osv.osv): CREATE OR REPLACE VIEW crm_lead_report AS ( SELECT id, - to_char(c.create_date, 'YYYY') as name, - to_char(c.create_date, 'MM') as month, - to_char(c.create_date, 'YYYY-MM-DD') as day, + to_char(c.date_deadline, 'YYYY') as name, + to_char(c.date_deadline, 'MM') as month, + to_char(c.date_deadline, 'YYYY-MM-DD') as day, to_char(c.create_date, 'YYYY-MM-DD') as creation_date, to_char(c.date_open, 'YYYY-MM-DD') as opening_date, to_char(c.date_closed, 'YYYY-mm-dd') as date_closed, @@ -145,7 +145,7 @@ class crm_lead_report(osv.osv): c.partner_id, c.country_id, c.planned_revenue, - c.planned_revenue*(c.probability/100) as probable_revenue, + c.planned_revenue*(c.probability/100) as probable_revenue, 1 as nbr, 0 as avg_answers, 0.0 as perc_done, diff --git a/addons/crm/wizard/crm_forward_to_partner.py b/addons/crm/wizard/crm_forward_to_partner.py index aaa26c438b6..8f2d778c973 100644 --- a/addons/crm/wizard/crm_forward_to_partner.py +++ b/addons/crm/wizard/crm_forward_to_partner.py @@ -27,6 +27,18 @@ from osv import osv, fields import tools from tools.translate import _ +FWD_TEMPLATE="""Hello, + +OpenERP Leads are now forwarded to our trusted partners, through the CRM, we hope that they provide you with interesting projects, we know that they have shown keen interest in our software. +Below is an interesting lead for you. + +Please let us know about the advancements of this lead or if you are not able to answer to its requests by replying to this email. This way, we can keep track of closed leads or forward them to other partners. +Don't forget to propose our maintenance at the beginning of your implementation projects, together with your services quotation. The maintenance provides unlimited bugfixing that will avoid you waste time on bugs detected during the implementation. It also provides free migration services for the current stable version at the time of signature; otherwise if we released a new version during your implementation, the customer would not always be able to easily migrate to newer versions. + +Kind regards, OpenERP Team + +""" + class crm_lead_forward_to_partner(osv.osv_memory): """Forwards lead history""" _name = 'crm.lead.forward.to.partner' @@ -110,7 +122,7 @@ class crm_lead_forward_to_partner(osv.osv_memory): res_id = context.get('active_id') msg_val = self._get_case_history(cr, uid, history_type, res_id, context=context) if msg_val: - res = {'value': {'body' : '\n\n' + msg_val}} + res = {'value': {'body' : FWD_TEMPLATE + '\n\n' + msg_val}} return res def _get_case_history(self, cr, uid, history_type, res_id, context=None): @@ -268,7 +280,7 @@ class crm_lead_forward_to_partner(osv.osv_memory): body = self._get_case_history(cr, uid, defaults.get('history', 'latest'), lead.id, context=context) defaults.update({ 'subject' : '%s: %s' % (_('Fwd'), lead.name), - 'body' : body, + 'body' : FWD_TEMPLATE + '\n\n' + body, }) return defaults diff --git a/addons/document/document.py b/addons/document/document.py index 46cf6d189c1..f60531f40ef 100644 --- a/addons/document/document.py +++ b/addons/document/document.py @@ -144,6 +144,7 @@ class document_file(osv.osv): return super(document_file, self).copy(cr, uid, id, default, context) def write(self, cr, uid, ids, vals, context=None): + result = False if not isinstance(ids, list): ids = [ids] res = self.search(cr, uid, [('id', 'in', ids)]) diff --git a/addons/email_template/security/email_template_security.xml b/addons/email_template/security/email_template_security.xml index 7e6c1f4b560..9fcf47d94d8 100755 --- a/addons/email_template/security/email_template_security.xml +++ b/addons/email_template/security/email_template_security.xml @@ -1,10 +1,8 @@ - Marketing / User - diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml index 4504de8a2cf..402d352c174 100644 --- a/addons/mrp/mrp_view.xml +++ b/addons/mrp/mrp_view.xml @@ -6,7 +6,7 @@ groups="group_mrp_user,group_mrp_manager,base.group_system" sequence="8"/> - + Shipping address : - [[ o.partner_id.title or '' ]] [[ o.partner_id.name ]] - [[ o.partner_shipping_id.title or '' ]] [[ o.partner_shipping_id.name ]] + [[ o.partner_id.title.name or '' ]] [[ o.partner_id.name ]] + [[ o.partner_shipping_id.title.name or '' ]] [[ o.partner_shipping_id.name ]] [[ o.partner_shipping_id.street ]] [[ o.partner_shipping_id.street2 or '' ]] [[ o.partner_shipping_id.zip or '' ]] [[ o.partner_shipping_id.city or '' ]] @@ -145,7 +145,7 @@ Invoice address : - [[ o.partner_invoice_id.title or '' ]] [[ o.partner_invoice_id.name or '' ]] + [[ o.partner_invoice_id.title.name or '' ]] [[ o.partner_invoice_id.name or '' ]] [[ o.partner_invoice_id.street ]] [[ o.partner_invoice_id.street2 and (', %s' % o.partner_invoice_id.street2 or '') ]] [[ o.partner_invoice_id.zip or '' ]] [[ o.partner_invoice_id.city or '' ]] [[ o.partner_invoice_id.state_id and o.partner_invoice_id.state_id.name or '' ]][[ o.partner_invoice_id.country_id and o.partner_invoice_id.country_id.name or '' ]] @@ -156,8 +156,8 @@ - [[ o.partner_id.title or '' ]] [[ o.partner_id.name ]] - [[ o.partner_order_id.title or '' ]] [[ o.partner_order_id.name ]] + [[ o.partner_id.title.name or '' ]] [[ o.partner_id.name ]] + [[ o.partner_order_id.title.name or '' ]] [[ o.partner_order_id.name ]] [[ o.partner_order_id.street ]] [[ o.partner_order_id.street2 or '' ]] [[ o.partner_order_id.zip or '' ]] [[ o.partner_order_id.city or '' ]] From 29721236fc1346555a15b8eea322986d82cef46c Mon Sep 17 00:00:00 2001 From: "P. Christeas" Date: Tue, 18 Jan 2011 18:49:50 +0200 Subject: [PATCH 002/376] document: fix matching of names with non-latin chars At a previous fix, the "res_name == name" condition was added, that didn't, however, consider the case where res_name was unicode and name in utf8. Conflicts: document/nodes.py bzr revid: p_christ@hol.gr-20110118164950-avtkxy8dc4u03fu4 --- addons/document/nodes.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/addons/document/nodes.py b/addons/document/nodes.py index 1b7aebcd389..0c4194847c1 100644 --- a/addons/document/nodes.py +++ b/addons/document/nodes.py @@ -23,6 +23,7 @@ import pooler from tools.safe_eval import safe_eval +from tools.misc import ustr import errno # import os import time @@ -808,7 +809,7 @@ class node_res_dir(node_class): return res[0] return None - def _child_get(self, cr, name = None, domain=None): + def _child_get(self, cr, name=None, domain=None): """ return virtual children of resource, based on the foreign object. @@ -868,7 +869,7 @@ class node_res_dir(node_class): # Escape the name for characters not supported in filenames res_name = res_name.replace('/','_') # any other weird char? - if name and (res_name != name): + if name and (res_name != ustr(name)): # we have matched _ to any character, but we only meant to match # the special ones. # Eg. 'a_c' will find 'abc', 'a/c', 'a_c', may only @@ -1044,7 +1045,7 @@ class node_res_obj(node_class): if not res_name: continue res_name = res_name.replace('/', '_') - if name and (res_name != name): + if name and (res_name != ustr(name)): continue # TODO Revise klass = directory.get_node_class(directory, dynamic=True, context=ctx) From e9b56eafe2db066332d0065302ca10befa39f381 Mon Sep 17 00:00:00 2001 From: "P. Christeas" Date: Tue, 18 Jan 2011 18:49:56 +0200 Subject: [PATCH 003/376] docuement: armor the ir.action.report.xml code It was a little careless, better have an assertion there, at least, for the cases we don't cover. Historically, it has been here since commit: efeed12bea5c008ed6 ;) bzr revid: p_christ@hol.gr-20110118164956-vboodk5j4g9eofix --- addons/document/directory_report.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/addons/document/directory_report.py b/addons/document/directory_report.py index 6eb18dae850..1665a7abf68 100644 --- a/addons/document/directory_report.py +++ b/addons/document/directory_report.py @@ -42,8 +42,12 @@ class ir_action_report_xml(osv.osv): def _model_search(self, cr, uid, obj, name, args, context=None): if not len(args): return [] + assert len(args) == 1 and args[0][1] == '=', 'expression is not what we expect: %r' % args model_id= args[0][2] if not model_id: + # a deviation from standard behavior: when searching model_id = False + # we return *all* reports, not just ones with empty model. + # One reason is that 'model' is a required field so far return [] model = self.pool.get('ir.model').read(cr, uid, [model_id])[0]['model'] report_id = self.search(cr, uid, [('model','=',model)]) From d9b74f05e44600f85e0d4f823b36135ccc767462 Mon Sep 17 00:00:00 2001 From: "P. Christeas" Date: Tue, 18 Jan 2011 18:49:59 +0200 Subject: [PATCH 004/376] document_ics: relax domain restriction, it broke PDF reports, too. This whole thing of inheriting the same model for different functionality is a bit problematic. Document ICS is a Frankenstein, too. At least, don't let it break the other document.directory.content entries. bzr revid: p_christ@hol.gr-20110118164959-ctp4l2uj0xvc4v4y --- addons/document_ics/document_view.xml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/document_ics/document_view.xml b/addons/document_ics/document_view.xml index 40174612539..39b6908dc76 100644 --- a/addons/document_ics/document_view.xml +++ b/addons/document_ics/document_view.xml @@ -24,7 +24,7 @@ - + From 6572531524011266b5ddc80c25795332073817e3 Mon Sep 17 00:00:00 2001 From: "P. Christeas" Date: Tue, 18 Jan 2011 18:50:15 +0200 Subject: [PATCH 005/376] caldav: Let the ETag of calendar entries be refreshed Skipped earlier, because it is an expensive operation, the write_date of nodes (aka. calendar entries) was cached. That meant that changes from the Gtk client wouldn't be depicted in CalDAV/GroupDAV clients. Now, go for the expensive operation and let them sync. bzr revid: p_christ@hol.gr-20110118165015-vn7avq6zk4t9g2yg --- addons/caldav/caldav_node.py | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/addons/caldav/caldav_node.py b/addons/caldav/caldav_node.py index 70671507b01..5272d0fc1fd 100644 --- a/addons/caldav/caldav_node.py +++ b/addons/caldav/caldav_node.py @@ -494,6 +494,17 @@ class res_node_calendar(nodes.node_class): res = '%d' % (self.calendar_id) return res + def _get_wtag(self, cr): + uid = self.context.uid + context = self.context.context + if self.model and self.res_id: + mod_obj = self.context._dirobj.pool.get(self.model) + pr = mod_obj.perm_read(cr, uid, [self.res_id], context=context, details=False)[0] + self.write_date = pr.get('write_date') or pr.get('create_date') + + # Super will use self.write_date, so we should be fine. + return super(res_node_calendar, self)._get_wtag(cr) + def rm(self, cr): uid = self.context.uid res = False From 9b0993e74c77282bf0dbe6726421dc1e5450b7d7 Mon Sep 17 00:00:00 2001 From: "P. Christeas" Date: Tue, 18 Jan 2011 18:50:21 +0200 Subject: [PATCH 006/376] webdav: ';' in name not handled correctly [Bug 704444] Reported by: Dr. Ferdinand Gassauer Locations that contain a semicolon are split by the urlparse.urlparse(), thus setting their 'path' and 'params' return fields (rather than just the 'path'). In our syntax, there is no params, so the part after the semicolon needs to be appended back to the patch. bzr revid: p_christ@hol.gr-20110118165021-4knt76njdqnt1eln --- addons/document_webdav/dav_fs.py | 4 ++++ addons/document_webdav/webdav.py | 6 ++++++ 2 files changed, 10 insertions(+) diff --git a/addons/document_webdav/dav_fs.py b/addons/document_webdav/dav_fs.py index 22f50cb8e9a..8c606e4cca0 100644 --- a/addons/document_webdav/dav_fs.py +++ b/addons/document_webdav/dav_fs.py @@ -414,6 +414,8 @@ class openerp_dav_handler(dav_interface): # relative part, because ul is relative, anyway uparts=urlparse.urlparse(turi) turi=uparts[2] + if uparts[3]: + turi += ';' + uparts[3] if turi.startswith(ul): result.append( turi[len(self.parent.davpath):]) else: @@ -440,6 +442,8 @@ class openerp_dav_handler(dav_interface): def uri2local(self, uri): uparts=urlparse.urlparse(uri) reluri=uparts[2] + if uparts[3]: + reluri += ';'+uparts[3] if reluri and reluri[-1]=="/": reluri=reluri[:-1] return reluri diff --git a/addons/document_webdav/webdav.py b/addons/document_webdav/webdav.py index 1b60ade698f..3a68fb04fed 100644 --- a/addons/document_webdav/webdav.py +++ b/addons/document_webdav/webdav.py @@ -167,6 +167,8 @@ def mk_prop_response(self, uri, good_props, bad_props, doc): # write href information uparts=urlparse.urlparse(uri) fileloc=uparts[2] + if uparts[3]: + fileloc += ';' + uparts[3] if isinstance(fileloc, unicode): fileloc = fileloc.encode('utf-8') href=doc.createElement("D:href") @@ -246,6 +248,8 @@ def mk_propname_response(self,uri,propnames,doc): # write href information uparts=urlparse.urlparse(uri) fileloc=uparts[2] + if uparts[3]: + fileloc += ';' + uparts[3] if isinstance(fileloc, unicode): fileloc = fileloc.encode('utf-8') href=doc.createElement("D:href") @@ -303,6 +307,8 @@ def mk_lock_response(self, uri, props): # write href information uparts=urlparse.urlparse(uri) fileloc=uparts[2] + if uparts[3]: + fileloc += ';' + uparts[3] if isinstance(fileloc, unicode): fileloc = fileloc.encode('utf-8') davpath = self.parent.get_davpath() From ad91862c11b1361e7a0aeaaca180cf222f2a2a09 Mon Sep 17 00:00:00 2001 From: "nicolas.bessi@camptocamp.com" <> Date: Wed, 19 Jan 2011 15:50:32 +0100 Subject: [PATCH 007/376] [FIX] bug 704870 webkit_locals bzr revid: nicolas.bessi@camptocamp.com-20110119145032-61kf5gqi281x0br7 --- addons/report_webkit/webkit_report.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/addons/report_webkit/webkit_report.py b/addons/report_webkit/webkit_report.py index 2944b768643..47d3e58482d 100644 --- a/addons/report_webkit/webkit_report.py +++ b/addons/report_webkit/webkit_report.py @@ -123,17 +123,17 @@ class WebKitParser(report_sxw): command.append("--footer-html '%s'"%(foot_file.name)) if webkit_header.margin_top : - command.append('--margin-top %s'%(webkit_header.margin_top)) + command.append('--margin-top %s'%(str(webkit_header.margin_top).replace(',', '.'))) if webkit_header.margin_bottom : - command.append('--margin-bottom %s'%(webkit_header.margin_bottom)) + command.append('--margin-bottom %s'%(str(webkit_header.margin_bottom).replace(',', '.'))) if webkit_header.margin_left : - command.append('--margin-left %s'%(webkit_header.margin_left)) + command.append('--margin-left %s'%(str(webkit_header.margin_left).replace(',', '.'))) if webkit_header.margin_right : - command.append('--margin-right %s'%(webkit_header.margin_right)) + command.append('--margin-right %s'%(str(webkit_header.margin_right).replace(',', '.'))) if webkit_header.orientation : - command.append("--orientation '%s'"%(webkit_header.orientation)) + command.append("--orientation '%s'"%(str(webkit_header.orientation).replace(',', '.'))) if webkit_header.format : - command.append(" --page-size '%s'"%(webkit_header.format)) + command.append(" --page-size '%s'"%(str(webkit_header.format).replace(',', '.'))) count = 0 for html in html_list : html_file = file(os.path.join(tmp_dir, str(time.time()) + str(count) +'.body.html'), 'w') From 4832c55df9d08ae11f0e97ae9104d14ef4d54d09 Mon Sep 17 00:00:00 2001 From: Bogdan Stanciu Date: Wed, 26 Jan 2011 13:57:55 +0100 Subject: [PATCH 008/376] [FIX] COA correction (account_account_type data was missing) for BS and P&L reporting lp bug: https://launchpad.net/bugs/707314 fixed bzr revid: bogdanovidiu.stanciu@gmail.com-20110126125755-urjp29cl0yibs5ur --- addons/l10n_ch/sterchi_chart/account.xml | 30 ++++++++++++++++++++---- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/addons/l10n_ch/sterchi_chart/account.xml b/addons/l10n_ch/sterchi_chart/account.xml index dbc99227c42..8c907653b4a 100644 --- a/addons/l10n_ch/sterchi_chart/account.xml +++ b/addons/l10n_ch/sterchi_chart/account.xml @@ -10,26 +10,31 @@ Bilan : Liquidites et titres cash balance + asset Bilan : Actif de regularisation adjusting_asset balance + asset Bilan : Capitaux propres equity balance + liability PP : Chiffre d'affaires income none + income Bilan : Passifs de regularisation adj_liability balance + liability Autre : Cloture @@ -40,103 +45,123 @@ PP : Amortissement depreciation none + expense PP : Resultat financier financial_result none + income Bilan : Immobilisations financieres financial_asset balance + asset Bilan : Immo corporelles immobilieres building_asset balance + asset Bilan : Actifs hors exploitation non_ope_asset balance + asset PP : Autres charges d'exploitation other_ope_expense none + expense Bilan : Dettes hors exploitation non_ope_debts balance + liability Bilan : Immo corporelles mobilieres fixed_asset balance + asset Bilan : Immo incorporelles intangible_asset balance + asset Bilan : Stocks inventory balance + asset Bilan : Dettes à LT lt_liability balance + liability PP : Resultat activites annexes non_oper_result none + income Bilan : Autres creanciers à CT other_payable balance + liability Bilan : Autres créances other_receivable balance + asset PP : Charge de personnel personnal_exp none + expense Bilan : Provisions et reserves provision_reserve balance + liability PP : Achat de marchandise purchase none + expense Bilan : Resultat reporte report_result balance + liability Bilan : Debiteurs receivable True unreconciled + asset Bilan : Fournisseurs payable True unreconciled + liability Autre : Consolidation @@ -148,11 +173,6 @@ other none - - Autre : Closed - closed - none - Plan comptable 0 From 3d618f2de49325f7b83c65493f6ae0619d3dc90f Mon Sep 17 00:00:00 2001 From: "nicolas.bessi@camptocamp.com" <> Date: Fri, 28 Jan 2011 09:48:01 +0100 Subject: [PATCH 009/376] [FIX] better coding standard bzr revid: nicolas.bessi@camptocamp.com-20110128084801-a2w9hvy2ipl1wzis --- addons/l10n_ch/account_move_line.py | 2 +- addons/l10n_ch/account_wizard.py | 3 ++- addons/l10n_ch/company.py | 9 ++++----- addons/l10n_ch/invoice.py | 1 - addons/l10n_ch/report/report_webkit_html.py | 19 ++++++++++--------- .../report/report_webkit_html_view.xml | 6 +++--- addons/l10n_ch/wizard/create_dta.py | 2 +- 7 files changed, 21 insertions(+), 21 deletions(-) diff --git a/addons/l10n_ch/account_move_line.py b/addons/l10n_ch/account_move_line.py index da9aab741a6..9cf2ea26b6b 100644 --- a/addons/l10n_ch/account_move_line.py +++ b/addons/l10n_ch/account_move_line.py @@ -60,7 +60,7 @@ class AccountMoveLine(osv.osv): _inherit = 'account.move.line' - def line2bank(self, cr, uid, ids, payment_type='manual', context=None): + def __line2bank(self, cr, uid, ids, payment_type='manual', context=None): """add a link to account.move.line in order to link supplier invoice line and bank. The original link was defined in account_payment""" diff --git a/addons/l10n_ch/account_wizard.py b/addons/l10n_ch/account_wizard.py index b2e1ab00924..08c969dd654 100644 --- a/addons/l10n_ch/account_wizard.py +++ b/addons/l10n_ch/account_wizard.py @@ -21,6 +21,7 @@ import tools from osv import osv import addons +import os class WizardMultiChartsAccounts(osv.osv_memory): @@ -35,7 +36,7 @@ class WizardMultiChartsAccounts(osv.osv_memory): def execute(self, cr, uid, ids, context=None): """Override of code in order to be able to link journal with account in XML""" res = super(WizardMultiChartsAccounts, self).execute(cr, uid, ids, context) - path = addons.get_module_resource('l10n_ch/sterchi_chart/account_journal_rel.xml') + path = addons.get_module_resource(os.path.join('l10n_ch','sterchi_chart','account_journal_rel.xml')) tools.convert_xml_import(cr, 'l10n_ch', path, idref=None, mode='init', noupdate=True, report=None) return res diff --git a/addons/l10n_ch/company.py b/addons/l10n_ch/company.py index da8f7b53cc6..20f6b6168ec 100644 --- a/addons/l10n_ch/company.py +++ b/addons/l10n_ch/company.py @@ -27,13 +27,12 @@ class res_company(osv.osv): _inherit = "res.company" _columns = { - ### horiz. delta in mm 1.2 will print the bvz 1.2mm lefter 'bvr_delta_horz': fields.float('BVR Horz. Delta (mm)', - help='horiz. delta in mm 1.2 will print the bvz 1.2mm lefter'), - ### vert. delta in mm 1.2 will print the bvz 1.2mm lefter + help='horiz. delta in mm 1.2 will print the bvr 1.2mm lefter, negative value is possible'), + 'bvr_delta_vert': fields.float('BVR Vert. Delta (mm)', - help='vert. delta in mm 1.2 will print the bvz 1.2mm lefter'), - ### print bvr background image for standard paper or e-mail + help='vert. delta in mm 1.2 will print the bvr 1.2mm lower, negative value is possible'), + 'bvr_background': fields.boolean('Insert BVR background ?'), 'bvr_only': fields.boolean('Separated BVR only ?', diff --git a/addons/l10n_ch/invoice.py b/addons/l10n_ch/invoice.py index aa59a742722..07c62d43d51 100644 --- a/addons/l10n_ch/invoice.py +++ b/addons/l10n_ch/invoice.py @@ -191,7 +191,6 @@ class account_tax_code(osv.osv): _name = 'account.tax.code' _inherit = "account.tax.code" _columns = { - ### The case code of the tax code 'code': fields.char('Case Code', size=512), } diff --git a/addons/l10n_ch/report/report_webkit_html.py b/addons/l10n_ch/report/report_webkit_html.py index 449bcb15051..5e0a1f22995 100644 --- a/addons/l10n_ch/report/report_webkit_html.py +++ b/addons/l10n_ch/report/report_webkit_html.py @@ -33,6 +33,7 @@ import addons import pooler from tools.config import config from mako.template import Template +from tools.translate import _ class l10n_ch_report_webkit_html(report_sxw.rml_parse): @@ -60,12 +61,12 @@ class l10n_ch_report_webkit_html(report_sxw.rml_parse): def police_absolute_path(self, inner_path) : """Will get the ocrb police absolute path""" - path = addons.get_module_resource('l10n_ch/report/'+inner_path) + path = addons.get_module_resource(os.path.join('l10n_ch','report',inner_path)) return path def bvr_absolute_path(self) : """Will get the ocrb police absolute path""" - path = addons.get_module_resource('l10n_ch/report/bvr1.jpg') + path = addons.get_module_resource(os.path.join('l10n_ch','report','bvr1.jpg')) return path def headheight(self): @@ -113,18 +114,18 @@ class l10n_ch_report_webkit_html(report_sxw.rml_parse): ids = [x.id for x in invoices] for invoice in invoice_obj.browse(cursor, self.uid, ids): if not invoice.partner_bank_id: - raise wizard.except_wizard('UserError', - 'No bank specified on invoice:\n' + \ + raise wizard.except_wizard(_('UserError'), + _('No bank specified on invoice:\n' + \ invoice_obj.name_get(cursor, self.uid, [invoice.id], - context={})[0][1]) + context={})[0][1])) if not self._compile_check_bvr.match( invoice.partner_bank_id.bvr_number or ''): - raise wizard.except_wizard('UserError', - "Your bank BVR number should be of the form 0X-XXX-X! " + + raise wizard.except_wizard(_('UserError'), + _("Your bank BVR number should be of the form 0X-XXX-X! " + 'Please check your company ' + 'information for the invoice:\n' + invoice_obj.name_get(cursor, self.uid, [invoice.id], - context={})[0][1]) + context={})[0][1])) if invoice.partner_bank_id.bvr_adherent_num \ and not self._compile_check_bvr_add_num.match( invoice.partner_bank_id.bvr_adherent_num): @@ -198,7 +199,7 @@ class BVRWebKitParser(webkit_report.WebKitParser): #default_filters=['unicode', 'entity'] can be used to set global filter body_mako_tpl = Template(parse_template ,input_encoding='utf-8') #BVR specific - bvr_path = addons.get_module_resource('l10n_ch/report/bvr.mako') + bvr_path = addons.get_module_resource(os.path.join('l10n_ch','report','bvr.mako')) body_bvr_tpl = Template(file(bvr_path).read(), input_encoding='utf-8') helper = report_helper.WebKitHelper(cursor, uid, report_xml.id, context) diff --git a/addons/l10n_ch/report/report_webkit_html_view.xml b/addons/l10n_ch/report/report_webkit_html_view.xml index 8c66b1038c8..c03db709162 100644 --- a/addons/l10n_ch/report/report_webkit_html_view.xml +++ b/addons/l10n_ch/report/report_webkit_html_view.xml @@ -2,8 +2,8 @@ - - + Portrait + A4 - - + + X11006 + Opening Income - (test) + + closed + + + Liabilities - (test) X11 @@ -205,6 +213,14 @@ + + X1114 + Opening Expense - (test) + + closed + + + @@ -430,7 +446,18 @@ - + + Opening Entries Journal - (test) + TOEJ + situation + + + + + + + + diff --git a/addons/account/installer.py b/addons/account/installer.py index 4a4d945f72b..65d8d7fa99f 100644 --- a/addons/account/installer.py +++ b/addons/account/installer.py @@ -424,13 +424,21 @@ class account_installer(osv.osv_memory): 'company_id': company_id.id } seq_id_opening = obj_sequence.create(cr, uid, seq_opening_journal, context=context) + seq_miscellaneous_journal = { + 'name': 'Miscellaneous Journal', + 'code': 'account.journal', + 'prefix': 'MISC/%(year)s/', + 'padding': 3, + 'company_id': company_id.id + } + seq_id_miscellaneous = obj_sequence.create(cr, uid, seq_opening_journal, context=context) else: seq_id_sale = seq_id seq_id_purchase = seq_id seq_id_sale_refund = seq_id seq_id_purchase_refund = seq_id seq_id_opening = seq_id - + seq_id_miscellaneous = seq_id vals_journal['view_id'] = view_id #Sales Journal @@ -517,16 +525,31 @@ class account_installer(osv.osv_memory): }) obj_journal.create(cr, uid, vals_journal, context=context) + # Miscellaneous Journal + vals_journal = { + 'view_id': view_id, + 'name': _('Miscellaneous Journal'), + 'type': 'general', + 'refund_journal': True, + 'code': _('MISC'), + 'sequence_id': seq_id_miscellaneous, + 'analytic_journal_id': analitical_journal_purchase, + 'company_id': company_id.id + } + + obj_journal.create(cr, uid, vals_journal, context=context) + # Opening Entries Journal if obj_multi.property_account_income_opening and obj_multi.property_account_expense_opening: vals_journal = { 'view_id': view_id, 'name': _('Opening Entries Journal'), 'type': 'situation', - 'code': _('TOEJ'), + 'code': _('OPEJ'), 'sequence_id': seq_id_opening, 'analytic_journal_id': analitical_journal_purchase, 'company_id': company_id.id, + 'centralisation': True, 'default_credit_account_id': acc_template_ref[obj_multi.property_account_income_opening.id], 'default_debit_account_id': acc_template_ref[obj_multi.property_account_expense_opening.id] } From c85a9ccf52988e9c8d64fded873a92a9a2031894 Mon Sep 17 00:00:00 2001 From: "Sbh (OpenERP)" Date: Tue, 1 Feb 2011 19:07:34 +0530 Subject: [PATCH 024/376] [Fix] project_planining: fix the demo data bzr revid: sbh@tinyerp.com-20110201133734-ebpyv6evoi1rf52f --- addons/project_planning/project_planning_demo.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/project_planning/project_planning_demo.xml b/addons/project_planning/project_planning_demo.xml index 34ecb58ab02..54c5ec705cb 100644 --- a/addons/project_planning/project_planning_demo.xml +++ b/addons/project_planning/project_planning_demo.xml @@ -7,8 +7,8 @@ Project_Planning 20 - - + + open From e2afe7b13aae0281eeaf4464ba04cf6233b6116a Mon Sep 17 00:00:00 2001 From: mtr Date: Wed, 2 Feb 2011 10:50:09 +0530 Subject: [PATCH 025/376] [IMP] l10n_de,l10n_ec,l10n_gr: correct property account in account.chart.template bzr revid: mtr@mtr-20110202052009-3b1xknulownwwild --- addons/l10n_de/account_chart_template_skr04.xml | 4 ++-- addons/l10n_ec/account_chart.xml | 4 ++-- addons/l10n_gr/account_tax.xml | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/addons/l10n_de/account_chart_template_skr04.xml b/addons/l10n_de/account_chart_template_skr04.xml index cd7f5ca724b..c33c0d415eb 100644 --- a/addons/l10n_de/account_chart_template_skr04.xml +++ b/addons/l10n_de/account_chart_template_skr04.xml @@ -8,8 +8,8 @@ - - + + diff --git a/addons/l10n_ec/account_chart.xml b/addons/l10n_ec/account_chart.xml index b4ab542dc81..3b3be8bc2c0 100644 --- a/addons/l10n_ec/account_chart.xml +++ b/addons/l10n_ec/account_chart.xml @@ -4201,8 +4201,8 @@ - - + + diff --git a/addons/l10n_gr/account_tax.xml b/addons/l10n_gr/account_tax.xml index bd9ca16bfdd..92a2188a8cb 100644 --- a/addons/l10n_gr/account_tax.xml +++ b/addons/l10n_gr/account_tax.xml @@ -19,7 +19,7 @@ - + From ce13b728a35ef138e4c58842c6d257a17a4e5847 Mon Sep 17 00:00:00 2001 From: "Sbh (OpenERP)" Date: Wed, 2 Feb 2011 10:58:36 +0530 Subject: [PATCH 026/376] [FIX] crm :fix the browse error bzr revid: sbh@tinyerp.com-20110202052836-2idkatgyzds85gb0 --- addons/crm/crm.py | 2 ++ 1 file changed, 2 insertions(+) diff --git a/addons/crm/crm.py b/addons/crm/crm.py index d91062b5816..a3cc084d362 100644 --- a/addons/crm/crm.py +++ b/addons/crm/crm.py @@ -745,6 +745,8 @@ class users(osv.osv): def write(self, cr, uid, ids, vals, context=None): res = super(users, self).write(cr, uid, ids, vals, context=context) section_obj=self.pool.get('crm.case.section') + if isinstance(ids, (str, int, long)): + ids = [ids] for user in self.browse(cr, uid, ids, context): if user.context_section_id: section_obj.write(cr, uid, [user.context_section_id.id], {'member_ids':[(4, user.id)]},context) From e0b487ad771c44f9b642aa2ba44422b35b080f5f Mon Sep 17 00:00:00 2001 From: Mustufa Rangwala Date: Wed, 2 Feb 2011 12:53:34 +0530 Subject: [PATCH 027/376] [REVERT] l10n_gr: revert changes for property bzr revid: mra@mra-laptop-20110202072334-givoepuyttwnk5tp --- addons/l10n_gr/account_tax.xml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/addons/l10n_gr/account_tax.xml b/addons/l10n_gr/account_tax.xml index 92a2188a8cb..c3de033869b 100644 --- a/addons/l10n_gr/account_tax.xml +++ b/addons/l10n_gr/account_tax.xml @@ -3,7 +3,7 @@ - + @@ -19,7 +19,7 @@ - + From f529e319f587e7e5bedc05e380bae39f5abaa7ba Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Wed, 2 Feb 2011 14:54:49 +0530 Subject: [PATCH 028/376] [REVERT] crm_helpdesk: Reverted the search view changes on crm_helpdesk. bzr revid: uco@tinyerp.com-20110202092449-gnsqfevmwzxn65a0 --- addons/crm_helpdesk/crm_helpdesk_view.xml | 10 ---------- 1 file changed, 10 deletions(-) diff --git a/addons/crm_helpdesk/crm_helpdesk_view.xml b/addons/crm_helpdesk/crm_helpdesk_view.xml index 90262ac5601..fe2f727c248 100644 --- a/addons/crm_helpdesk/crm_helpdesk_view.xml +++ b/addons/crm_helpdesk/crm_helpdesk_view.xml @@ -234,11 +234,6 @@ search - - From c4e33f20f8d7b96f014b8458608c54482d6be8f2 Mon Sep 17 00:00:00 2001 From: "Sbh (OpenERP)" Date: Wed, 2 Feb 2011 15:19:47 +0530 Subject: [PATCH 029/376] [Fix] Fix buildbot warning bzr revid: sbh@tinyerp.com-20110202094947-a90gv7cemgn6l4jn --- addons/l10n_ch/wizard/create_dta.py | 1 - addons/mrp/mrp.py | 3 +-- 2 files changed, 1 insertion(+), 3 deletions(-) diff --git a/addons/l10n_ch/wizard/create_dta.py b/addons/l10n_ch/wizard/create_dta.py index 90054fdeba0..ae761c61708 100644 --- a/addons/l10n_ch/wizard/create_dta.py +++ b/addons/l10n_ch/wizard/create_dta.py @@ -374,7 +374,6 @@ def _create_dta(obj, cr, uid, data, context=None): raise osv.except_osv(_('Error'), _('No IBAN for the company bank account.')) - dta_line_obj = pool.get('account.dta.line') res_partner_bank_obj = pool.get('res.partner.bank') seq = 1 diff --git a/addons/mrp/mrp.py b/addons/mrp/mrp.py index 3ba8d4bde47..1a927b57a91 100644 --- a/addons/mrp/mrp.py +++ b/addons/mrp/mrp.py @@ -672,7 +672,6 @@ class mrp_production(osv.osv): stock_mov_obj = self.pool.get('stock.move') production = self.browse(cr, uid, production_id, context=context) - final_product_todo = [] produced_qty = 0 if production_mode == 'consume_produce': @@ -714,7 +713,7 @@ class mrp_production(osv.osv): if production_mode == 'consume_produce': # To produce remaining qty of final product - vals = {'state':'confirmed'} + #vals = {'state':'confirmed'} #final_product_todo = [x.id for x in production.move_created_ids] #stock_mov_obj.write(cr, uid, final_product_todo, vals) #stock_mov_obj.action_confirm(cr, uid, final_product_todo, context) From 2caa4c37b357130f6592d2c233613eab6c0a3d36 Mon Sep 17 00:00:00 2001 From: mtr Date: Wed, 2 Feb 2011 15:24:46 +0530 Subject: [PATCH 030/376] [IMP] l10n_lu,l10n_cr: correct property account in account.chart.template bzr revid: mtr@mtr-20110202095446-170cxzgzkm6eijqp --- addons/l10n_cr/data/account_chart_template.xml | 8 ++++---- addons/l10n_lu/l10n_lu_data.xml | 4 ++-- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/addons/l10n_cr/data/account_chart_template.xml b/addons/l10n_cr/data/account_chart_template.xml index bdf09c3dab1..e84ea73fbed 100644 --- a/addons/l10n_cr/data/account_chart_template.xml +++ b/addons/l10n_cr/data/account_chart_template.xml @@ -14,8 +14,8 @@ - - + + Costa Rica - Company 1 @@ -26,8 +26,8 @@ - - + + diff --git a/addons/l10n_lu/l10n_lu_data.xml b/addons/l10n_lu/l10n_lu_data.xml index 940da2177e5..775fc72f02e 100644 --- a/addons/l10n_lu/l10n_lu_data.xml +++ b/addons/l10n_lu/l10n_lu_data.xml @@ -3783,9 +3783,9 @@ - + - + From 36c8648d41237db0f41eec61bc2337d52cff6ef8 Mon Sep 17 00:00:00 2001 From: mtr Date: Wed, 2 Feb 2011 16:10:49 +0530 Subject: [PATCH 031/376] [IMP] hr_attendance:removed print statement bzr revid: mtr@mtr-20110202104049-4g37pfocg7b4wwl8 --- addons/hr_attendance/report/attendance_by_month.py | 2 -- 1 file changed, 2 deletions(-) diff --git a/addons/hr_attendance/report/attendance_by_month.py b/addons/hr_attendance/report/attendance_by_month.py index c70ca8a90df..ced701ac661 100644 --- a/addons/hr_attendance/report/attendance_by_month.py +++ b/addons/hr_attendance/report/attendance_by_month.py @@ -83,9 +83,7 @@ class report_custom(report_rml): # sum up the attendances' durations ldt = None for att in attendences: - print"--att---",att dt = datetime.strptime(att['name'], '%Y-%m-%d %H:%M:%S') - print"--dt---",dt if ldt and att['action'] == 'sign_out': wh += (dt - ldt).seconds/60/60 else: From fe01aaef74566bdc377566e6f96d62ee336a51fa Mon Sep 17 00:00:00 2001 From: Mustufa Rangwala Date: Wed, 2 Feb 2011 17:17:28 +0530 Subject: [PATCH 032/376] [REF] account bzr revid: mra@mra-laptop-20110202114728-3ifqa2gfy6ubka9g --- addons/account/account.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/addons/account/account.py b/addons/account/account.py index 8a2cbdb8451..ca46696ad01 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -1911,7 +1911,7 @@ class account_tax(osv.osv): totalex -= r.get('amount', 0.0) totlex_qty = 0.0 try: - totlex_qty=totalex/quantity + totlex_qty = totalex/quantity except: pass tex = self._compute(cr, uid, tex, totlex_qty, quantity, address_id=address_id, product=product, partner=partner) From 31552ce80de93043b63241a79385da14074a8705 Mon Sep 17 00:00:00 2001 From: Mustufa Rangwala Date: Wed, 2 Feb 2011 17:24:39 +0530 Subject: [PATCH 033/376] [REF] account bzr revid: mra@mra-laptop-20110202115439-e98y2mjze50g5luw --- addons/account/account.py | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/addons/account/account.py b/addons/account/account.py index ca46696ad01..d51f6f8cdfd 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -334,7 +334,7 @@ class account_account(osv.osv): return result def _get_level(self, cr, uid, ids, field_name, arg, context=None): - res={} + res = {} accounts = self.browse(cr, uid, ids, context=context) for account in accounts: level = 0 @@ -475,7 +475,7 @@ class account_account(osv.osv): for record in reads: name = record['name'] if record['code']: - name = record['code'] + ' '+name + name = record['code'] + ' ' + name res.append((record['id'], name)) return res @@ -743,9 +743,7 @@ class account_journal(osv.osv): } res = {} - view_id = type_map.get(type, 'account_journal_view') - user = user_pool.browse(cr, uid, uid) if type in ('cash', 'bank') and currency and user.company_id.currency_id.id != currency: view_id = 'account_journal_bank_view_multi' @@ -756,7 +754,6 @@ class account_journal(osv.osv): 'centralisation':type == 'situation', 'view_id':data.res_id, }) - return { 'value':res } @@ -3052,4 +3049,4 @@ class account_bank_accounts_wizard(osv.osv_memory): account_bank_accounts_wizard() -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: \ No newline at end of file From 3969a984462bc1f8729dc2be9122b38d1acee03d Mon Sep 17 00:00:00 2001 From: "Atul Patel (OpenERP)" Date: Wed, 2 Feb 2011 18:54:29 +0530 Subject: [PATCH 034/376] [FIX]l FIXED bug/710558 and document_ftp url for db name. bzr revid: atp@tinyerp.com-20110202132429-vuhub4kyusnenaag --- addons/document_ftp/wizard/ftp_browse.py | 2 +- addons/project/wizard/project_task_delegate.py | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/addons/document_ftp/wizard/ftp_browse.py b/addons/document_ftp/wizard/ftp_browse.py index 08d3db01703..6e182082aeb 100644 --- a/addons/document_ftp/wizard/ftp_browse.py +++ b/addons/document_ftp/wizard/ftp_browse.py @@ -47,7 +47,7 @@ class document_ftp_browse(osv.osv_memory): url = url[:-1] else: url = '%s:%s' %(ftpserver.HOST, ftpserver.PORT) - res['url'] = 'ftp://%s@%s/%s'%(current_user.login, url, cr.dbname) + res['url'] = 'ftp://%s@%s'%(current_user.login, url) return res def browse_ftp(self, cr, uid, ids, context=None): diff --git a/addons/project/wizard/project_task_delegate.py b/addons/project/wizard/project_task_delegate.py index 72b32f7db68..99dfa3b4d5a 100644 --- a/addons/project/wizard/project_task_delegate.py +++ b/addons/project/wizard/project_task_delegate.py @@ -53,17 +53,17 @@ class project_task_delegate(osv.osv_memory): if 'name' in fields: if task_name.startswith(_('CHECK: ')): - newname = str(task_name).replace(_('CHECK: '), '') + newname = tools.ustr(task_name).replace(_('CHECK: '), '') else: - newname = task_name or '' + newname = tools.ustr(task_name or '') res.update({'name': newname}) if 'planned_hours' in fields: res.update({'planned_hours': task.remaining_hours or 0.0}) if 'prefix' in fields: if task_name.startswith(_('CHECK: ')): - newname = str(task_name).replace(_('CHECK: '), '') + newname = tools.ustr(task_name).replace(_('CHECK: '), '') else: - newname = task_name or '' + newname = tools.ustr(task_name or '') prefix = _('CHECK: ') + newname res.update({'prefix': prefix}) if 'new_task_description' in fields: From 5e988a705726627dd868b963b06b76df64bf5736 Mon Sep 17 00:00:00 2001 From: Mustufa Rangwala Date: Thu, 3 Feb 2011 10:58:27 +0530 Subject: [PATCH 035/376] [FIX] account_analytic_analysis: last_invoice_date field does not include manual invoices => changed the help string lp bug: https://launchpad.net/bugs/711737 fixed bzr revid: mra@mra-laptop-20110203052827-pcd1qdpdwoipuiep --- addons/account_analytic_analysis/account_analytic_analysis.py | 2 +- .../i18n/account_analytic_analysis.pot | 2 +- addons/account_analytic_analysis/i18n/ar.po | 2 +- addons/account_analytic_analysis/i18n/bg.po | 4 ++-- addons/account_analytic_analysis/i18n/bs.po | 4 ++-- addons/account_analytic_analysis/i18n/ca.po | 4 ++-- addons/account_analytic_analysis/i18n/cs.po | 2 +- addons/account_analytic_analysis/i18n/da.po | 2 +- addons/account_analytic_analysis/i18n/de.po | 4 ++-- addons/account_analytic_analysis/i18n/el.po | 2 +- addons/account_analytic_analysis/i18n/es.po | 4 ++-- addons/account_analytic_analysis/i18n/es_AR.po | 4 ++-- addons/account_analytic_analysis/i18n/es_EC.po | 4 ++-- addons/account_analytic_analysis/i18n/et.po | 4 ++-- addons/account_analytic_analysis/i18n/fi.po | 4 ++-- addons/account_analytic_analysis/i18n/fr.po | 2 +- addons/account_analytic_analysis/i18n/gl.po | 4 ++-- addons/account_analytic_analysis/i18n/hr.po | 4 ++-- addons/account_analytic_analysis/i18n/hu.po | 4 ++-- addons/account_analytic_analysis/i18n/id.po | 2 +- addons/account_analytic_analysis/i18n/it.po | 4 ++-- addons/account_analytic_analysis/i18n/ko.po | 4 ++-- addons/account_analytic_analysis/i18n/lt.po | 4 ++-- addons/account_analytic_analysis/i18n/lv.po | 2 +- addons/account_analytic_analysis/i18n/mn.po | 4 ++-- addons/account_analytic_analysis/i18n/nb.po | 2 +- addons/account_analytic_analysis/i18n/nl.po | 4 ++-- addons/account_analytic_analysis/i18n/nl_BE.po | 2 +- addons/account_analytic_analysis/i18n/oc.po | 2 +- addons/account_analytic_analysis/i18n/pl.po | 4 ++-- addons/account_analytic_analysis/i18n/pt.po | 4 ++-- addons/account_analytic_analysis/i18n/pt_BR.po | 4 ++-- addons/account_analytic_analysis/i18n/ro.po | 4 ++-- addons/account_analytic_analysis/i18n/ru.po | 4 ++-- addons/account_analytic_analysis/i18n/sl.po | 4 ++-- addons/account_analytic_analysis/i18n/sq.po | 2 +- addons/account_analytic_analysis/i18n/sr.po | 4 ++-- addons/account_analytic_analysis/i18n/sr@latin.po | 4 ++-- addons/account_analytic_analysis/i18n/sv.po | 4 ++-- addons/account_analytic_analysis/i18n/tlh.po | 2 +- addons/account_analytic_analysis/i18n/tr.po | 4 ++-- addons/account_analytic_analysis/i18n/uk.po | 2 +- addons/account_analytic_analysis/i18n/vi.po | 4 ++-- addons/account_analytic_analysis/i18n/zh_CN.po | 4 ++-- addons/account_analytic_analysis/i18n/zh_TW.po | 2 +- 45 files changed, 74 insertions(+), 74 deletions(-) diff --git a/addons/account_analytic_analysis/account_analytic_analysis.py b/addons/account_analytic_analysis/account_analytic_analysis.py index 8c35b9924e5..11f92614b73 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis.py +++ b/addons/account_analytic_analysis/account_analytic_analysis.py @@ -390,7 +390,7 @@ class account_analytic_account(osv.osv): 'hours_quantity': fields.function(_analysis_all, method=True, multi='analytic_analysis', type='float', string='Hours Tot', help="Number of hours you spent on the analytic account (from timesheet). It computes on all journal of type 'general'."), 'last_invoice_date': fields.function(_analysis_all, method=True, multi='analytic_analysis', type='date', string='Last Invoice Date', - help="Date of the last invoice created for this analytic account."), + help="If invoice from the costs, this is the date of the latest invoiced."), 'last_worked_invoiced_date': fields.function(_analysis_all, method=True, multi='analytic_analysis', type='date', string='Date of Last Invoiced Cost', help="If invoice from the costs, this is the date of the latest work or cost that have been invoiced."), 'last_worked_date': fields.function(_analysis_all, method=True, multi='analytic_analysis', type='date', string='Date of Last Cost/Work', diff --git a/addons/account_analytic_analysis/i18n/account_analytic_analysis.pot b/addons/account_analytic_analysis/i18n/account_analytic_analysis.pot index af5f75c85c3..cc3cf72e6fb 100644 --- a/addons/account_analytic_analysis/i18n/account_analytic_analysis.pot +++ b/addons/account_analytic_analysis/i18n/account_analytic_analysis.pot @@ -39,7 +39,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/ar.po b/addons/account_analytic_analysis/i18n/ar.po index 00aec1e027b..5fd562cb5a2 100644 --- a/addons/account_analytic_analysis/i18n/ar.po +++ b/addons/account_analytic_analysis/i18n/ar.po @@ -42,7 +42,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/bg.po b/addons/account_analytic_analysis/i18n/bg.po index 96055270a4c..9165ac48922 100644 --- a/addons/account_analytic_analysis/i18n/bg.po +++ b/addons/account_analytic_analysis/i18n/bg.po @@ -44,8 +44,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Дата на последната фактура създадена за тази аналитична сметка." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/bs.po b/addons/account_analytic_analysis/i18n/bs.po index 873bb7319c4..9a26a5fb3eb 100644 --- a/addons/account_analytic_analysis/i18n/bs.po +++ b/addons/account_analytic_analysis/i18n/bs.po @@ -45,8 +45,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Datum zadnje fakture stvorene za ovaj analitički račun." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/ca.po b/addons/account_analytic_analysis/i18n/ca.po index 3baf314e1b6..ce58c28a6fa 100644 --- a/addons/account_analytic_analysis/i18n/ca.po +++ b/addons/account_analytic_analysis/i18n/ca.po @@ -45,8 +45,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Data de l'última factura creat per a aquesta compte analític." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/cs.po b/addons/account_analytic_analysis/i18n/cs.po index 02617123dfa..8e727d7a186 100644 --- a/addons/account_analytic_analysis/i18n/cs.po +++ b/addons/account_analytic_analysis/i18n/cs.po @@ -42,7 +42,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/da.po b/addons/account_analytic_analysis/i18n/da.po index 7e3852b3010..06f6f000d5b 100644 --- a/addons/account_analytic_analysis/i18n/da.po +++ b/addons/account_analytic_analysis/i18n/da.po @@ -43,7 +43,7 @@ msgstr "Adgangsfejl" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/de.po b/addons/account_analytic_analysis/i18n/de.po index 38df8864a23..929f8d734b4 100644 --- a/addons/account_analytic_analysis/i18n/de.po +++ b/addons/account_analytic_analysis/i18n/de.po @@ -44,8 +44,8 @@ msgstr "Verbindungsfehler" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Datum der letzten Rechnungserfassung auf diesem analytischen Konto." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/el.po b/addons/account_analytic_analysis/i18n/el.po index 938c05a7565..4a0ac64e6ea 100644 --- a/addons/account_analytic_analysis/i18n/el.po +++ b/addons/account_analytic_analysis/i18n/el.po @@ -48,7 +48,7 @@ msgstr "Πρόβλημα πρόσβασης" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" "Ημερομηνία του τελευταίου τιμολογίου που δημιουργήθηκε για αυτόν τον " "λογαριασμό της αναλυτικής." diff --git a/addons/account_analytic_analysis/i18n/es.po b/addons/account_analytic_analysis/i18n/es.po index f62c01351a8..b9e35edd426 100644 --- a/addons/account_analytic_analysis/i18n/es.po +++ b/addons/account_analytic_analysis/i18n/es.po @@ -45,8 +45,8 @@ msgstr "Error de acceso" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Fecha de la última factura creada para esta cuenta analítica." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/es_AR.po b/addons/account_analytic_analysis/i18n/es_AR.po index 5d50810481f..ced28ccfb59 100644 --- a/addons/account_analytic_analysis/i18n/es_AR.po +++ b/addons/account_analytic_analysis/i18n/es_AR.po @@ -45,8 +45,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Fecha de la última factura creada para esta cuenta analítica." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/es_EC.po b/addons/account_analytic_analysis/i18n/es_EC.po index 27dfbba7567..b94a029c83b 100644 --- a/addons/account_analytic_analysis/i18n/es_EC.po +++ b/addons/account_analytic_analysis/i18n/es_EC.po @@ -45,8 +45,8 @@ msgstr "Error de acceso" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Fecha de la última factura creada para esta cuenta analítica." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/et.po b/addons/account_analytic_analysis/i18n/et.po index 32b01e96735..c91798b545f 100644 --- a/addons/account_analytic_analysis/i18n/et.po +++ b/addons/account_analytic_analysis/i18n/et.po @@ -43,8 +43,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Sellele analüütilisele kontole viimati loodud arve kuupäev." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/fi.po b/addons/account_analytic_analysis/i18n/fi.po index b942f0fd0cd..67fac264de2 100644 --- a/addons/account_analytic_analysis/i18n/fi.po +++ b/addons/account_analytic_analysis/i18n/fi.po @@ -44,8 +44,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Viimeksi luodun laskun päiväys tällä analyyttiselle tilille" +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/fr.po b/addons/account_analytic_analysis/i18n/fr.po index fa91989095b..2916347b49f 100644 --- a/addons/account_analytic_analysis/i18n/fr.po +++ b/addons/account_analytic_analysis/i18n/fr.po @@ -46,7 +46,7 @@ msgstr "Erreur d'accès" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" "Date de la dernière facture créée à partir des prestations liés à ce compte " "analytique (heures sur timesheet, facturation de notes de frais, facturation " diff --git a/addons/account_analytic_analysis/i18n/gl.po b/addons/account_analytic_analysis/i18n/gl.po index c1a54cf0f3b..9093785e033 100644 --- a/addons/account_analytic_analysis/i18n/gl.po +++ b/addons/account_analytic_analysis/i18n/gl.po @@ -46,8 +46,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Data da última factura creada para esta conta analítica." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/hr.po b/addons/account_analytic_analysis/i18n/hr.po index 1c2a880a89b..09ab8dfcb6f 100644 --- a/addons/account_analytic_analysis/i18n/hr.po +++ b/addons/account_analytic_analysis/i18n/hr.po @@ -43,8 +43,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Datum zadnje fakture kreirana za ovaj analitički račun." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/hu.po b/addons/account_analytic_analysis/i18n/hu.po index b96dc6584ff..667cb35fa25 100644 --- a/addons/account_analytic_analysis/i18n/hu.po +++ b/addons/account_analytic_analysis/i18n/hu.po @@ -44,8 +44,8 @@ msgstr "Hozzáférési hiba" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "A gyűjtőkód alapján kiállított utolsó kimenő számla dátuma." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/id.po b/addons/account_analytic_analysis/i18n/id.po index 29aa828acbc..2c8b7337ab0 100644 --- a/addons/account_analytic_analysis/i18n/id.po +++ b/addons/account_analytic_analysis/i18n/id.po @@ -42,7 +42,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/it.po b/addons/account_analytic_analysis/i18n/it.po index aebf270cb06..3a160403bc3 100644 --- a/addons/account_analytic_analysis/i18n/it.po +++ b/addons/account_analytic_analysis/i18n/it.po @@ -45,8 +45,8 @@ msgstr "Errore di Accesso" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Data dell'ultima fattura creata per questo conto analitico" +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/ko.po b/addons/account_analytic_analysis/i18n/ko.po index b9868988252..e32a29a7572 100644 --- a/addons/account_analytic_analysis/i18n/ko.po +++ b/addons/account_analytic_analysis/i18n/ko.po @@ -43,8 +43,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "이 분석 계정에서 처리한 마지막 송장 일자" +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/lt.po b/addons/account_analytic_analysis/i18n/lt.po index 14b957267cf..a2d2e2c472b 100644 --- a/addons/account_analytic_analysis/i18n/lt.po +++ b/addons/account_analytic_analysis/i18n/lt.po @@ -45,8 +45,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Paskutinės sąskaitos data šiai analitinei sąskaitai." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/lv.po b/addons/account_analytic_analysis/i18n/lv.po index 84cca4e8b1d..1a4427e518f 100644 --- a/addons/account_analytic_analysis/i18n/lv.po +++ b/addons/account_analytic_analysis/i18n/lv.po @@ -43,7 +43,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/mn.po b/addons/account_analytic_analysis/i18n/mn.po index 264e31cf53e..203180c8380 100644 --- a/addons/account_analytic_analysis/i18n/mn.po +++ b/addons/account_analytic_analysis/i18n/mn.po @@ -45,8 +45,8 @@ msgstr "ХандалтынАлдаа" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Энэ аналитик дансыг үүсэгсэн сүүлийн нэхэмжлэлийн огноо" +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/nb.po b/addons/account_analytic_analysis/i18n/nb.po index 0a6792d76ed..6e8f6d6adfd 100644 --- a/addons/account_analytic_analysis/i18n/nb.po +++ b/addons/account_analytic_analysis/i18n/nb.po @@ -43,7 +43,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/nl.po b/addons/account_analytic_analysis/i18n/nl.po index 96885382ba9..4ce9833d844 100644 --- a/addons/account_analytic_analysis/i18n/nl.po +++ b/addons/account_analytic_analysis/i18n/nl.po @@ -44,8 +44,8 @@ msgstr "Toegangsfout" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Datum van de laatst aangemaakte factuur voor deze kostenplaats" +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/nl_BE.po b/addons/account_analytic_analysis/i18n/nl_BE.po index ccc1e0e7c03..5275bc2aa7d 100644 --- a/addons/account_analytic_analysis/i18n/nl_BE.po +++ b/addons/account_analytic_analysis/i18n/nl_BE.po @@ -43,7 +43,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/oc.po b/addons/account_analytic_analysis/i18n/oc.po index aa190c8d2bf..aaae78e3e36 100644 --- a/addons/account_analytic_analysis/i18n/oc.po +++ b/addons/account_analytic_analysis/i18n/oc.po @@ -43,7 +43,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/pl.po b/addons/account_analytic_analysis/i18n/pl.po index 39be9add211..ef4c696d43c 100644 --- a/addons/account_analytic_analysis/i18n/pl.po +++ b/addons/account_analytic_analysis/i18n/pl.po @@ -44,8 +44,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Data ostatniej faktury utworzonej dla tego konta analitycznego." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/pt.po b/addons/account_analytic_analysis/i18n/pt.po index 2cca059f6f7..3c967c8cbd7 100644 --- a/addons/account_analytic_analysis/i18n/pt.po +++ b/addons/account_analytic_analysis/i18n/pt.po @@ -45,8 +45,8 @@ msgstr "Erro de acesso" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Data da última factura criada para esta conta analítica." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/pt_BR.po b/addons/account_analytic_analysis/i18n/pt_BR.po index 3869aacdcaf..6060bd7076a 100644 --- a/addons/account_analytic_analysis/i18n/pt_BR.po +++ b/addons/account_analytic_analysis/i18n/pt_BR.po @@ -43,8 +43,8 @@ msgstr "Erro de acesso" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Data da última fatura criada para esta conta analítica." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/ro.po b/addons/account_analytic_analysis/i18n/ro.po index 3e946617224..f89765dc69b 100644 --- a/addons/account_analytic_analysis/i18n/ro.po +++ b/addons/account_analytic_analysis/i18n/ro.po @@ -43,8 +43,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Data ultimei facturi create pentru acest cont analitic." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/ru.po b/addons/account_analytic_analysis/i18n/ru.po index 2023e3cbfaf..7a7ca737d2a 100644 --- a/addons/account_analytic_analysis/i18n/ru.po +++ b/addons/account_analytic_analysis/i18n/ru.po @@ -46,8 +46,8 @@ msgstr "Ошибка доступа" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Дата последнего счета, созданного для этого аналитического счета." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/sl.po b/addons/account_analytic_analysis/i18n/sl.po index fae1bf8431f..a117482b7a1 100644 --- a/addons/account_analytic_analysis/i18n/sl.po +++ b/addons/account_analytic_analysis/i18n/sl.po @@ -44,8 +44,8 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Datum izdaje zadnjega računa za ta analitični konto" +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/sq.po b/addons/account_analytic_analysis/i18n/sq.po index 8a839c85d92..da8ff612073 100644 --- a/addons/account_analytic_analysis/i18n/sq.po +++ b/addons/account_analytic_analysis/i18n/sq.po @@ -43,7 +43,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/sr.po b/addons/account_analytic_analysis/i18n/sr.po index 61a7d1a871d..5f58114a0d6 100644 --- a/addons/account_analytic_analysis/i18n/sr.po +++ b/addons/account_analytic_analysis/i18n/sr.po @@ -44,8 +44,8 @@ msgstr "Greška u pristupu" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Datum zadnje fakture kreirana za ovaj analitički račun." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/sr@latin.po b/addons/account_analytic_analysis/i18n/sr@latin.po index c76aade651c..e1a03369214 100644 --- a/addons/account_analytic_analysis/i18n/sr@latin.po +++ b/addons/account_analytic_analysis/i18n/sr@latin.po @@ -44,8 +44,8 @@ msgstr "Greška u pristupu" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Datum zadnje fakture kreirana za ovaj analitički račun." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/sv.po b/addons/account_analytic_analysis/i18n/sv.po index 9a01d7d9260..17bed46cbe7 100644 --- a/addons/account_analytic_analysis/i18n/sv.po +++ b/addons/account_analytic_analysis/i18n/sv.po @@ -44,8 +44,8 @@ msgstr "Access fel" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/tlh.po b/addons/account_analytic_analysis/i18n/tlh.po index 3d84f4fddc0..8ea31db615a 100644 --- a/addons/account_analytic_analysis/i18n/tlh.po +++ b/addons/account_analytic_analysis/i18n/tlh.po @@ -42,7 +42,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/tr.po b/addons/account_analytic_analysis/i18n/tr.po index a655c1d4a84..143bf9d50d7 100644 --- a/addons/account_analytic_analysis/i18n/tr.po +++ b/addons/account_analytic_analysis/i18n/tr.po @@ -43,8 +43,8 @@ msgstr "Erişim Hatası" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Bu analitik hesap için oluşturulan son fatura tarihi." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/uk.po b/addons/account_analytic_analysis/i18n/uk.po index b7c860a48be..6ab39d5bcd5 100644 --- a/addons/account_analytic_analysis/i18n/uk.po +++ b/addons/account_analytic_analysis/i18n/uk.po @@ -42,7 +42,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis diff --git a/addons/account_analytic_analysis/i18n/vi.po b/addons/account_analytic_analysis/i18n/vi.po index 83bee164489..1a4c0b8fd67 100644 --- a/addons/account_analytic_analysis/i18n/vi.po +++ b/addons/account_analytic_analysis/i18n/vi.po @@ -44,8 +44,8 @@ msgstr "Lỗi truy cập" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "Ngày của hóa đơn mới nhất được tạo cho tài khoản kế toán này." +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/zh_CN.po b/addons/account_analytic_analysis/i18n/zh_CN.po index aaf02e0a84c..98a4540177c 100644 --- a/addons/account_analytic_analysis/i18n/zh_CN.po +++ b/addons/account_analytic_analysis/i18n/zh_CN.po @@ -42,8 +42,8 @@ msgstr "访问错误" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." -msgstr "这辅助核算项的最近开票日期" +msgid "If invoice from the costs, this is the date of the latest invoiced." +msgstr "" #. module: account_analytic_analysis #: model:ir.module.module,description:account_analytic_analysis.module_meta_information diff --git a/addons/account_analytic_analysis/i18n/zh_TW.po b/addons/account_analytic_analysis/i18n/zh_TW.po index b9a0c6492d4..335a4de3826 100644 --- a/addons/account_analytic_analysis/i18n/zh_TW.po +++ b/addons/account_analytic_analysis/i18n/zh_TW.po @@ -42,7 +42,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 -msgid "Date of the last invoice created for this analytic account." +msgid "If invoice from the costs, this is the date of the latest invoiced." msgstr "" #. module: account_analytic_analysis From 1837358d318d23f962ab8cb76243b0afdee53e66 Mon Sep 17 00:00:00 2001 From: "Ujjvala Collins (OpenERP)" Date: Thu, 3 Feb 2011 12:26:14 +0530 Subject: [PATCH 036/376] [IMP] crm: Rewrite merge opportunities wizard. bzr revid: uco@tinyerp.com-20110203065614-6xq0c6qctl7pem85 --- addons/crm/wizard/crm_merge_opportunities.py | 163 +++++++++--------- .../wizard/crm_merge_opportunities_view.xml | 1 - 2 files changed, 80 insertions(+), 84 deletions(-) diff --git a/addons/crm/wizard/crm_merge_opportunities.py b/addons/crm/wizard/crm_merge_opportunities.py index 661180c0874..0b19ca6066f 100644 --- a/addons/crm/wizard/crm_merge_opportunities.py +++ b/addons/crm/wizard/crm_merge_opportunities.py @@ -18,7 +18,6 @@ # along with this program. If not, see . # ############################################################################## -from crm import crm from osv import osv, fields from tools.translate import _ @@ -28,35 +27,9 @@ class crm_merge_opportunity(osv.osv_memory): _name = 'crm.merge.opportunity' _description = 'Merge two Opportunities' - def view_init(self, cr, uid, fields, context=None): - """ - This function checks for precondition before wizard executes - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - - """ - record_id = context and context.get('active_id', False) or False - if record_id: - opp_obj = self.pool.get('crm.lead') - opp = opp_obj.browse(cr, uid, record_id, context=context) - if not opp.partner_id: - raise osv.except_osv(_('Warning!'), _('Opportunity must have Partner assigned before merging with other Opportunity.')) - #Search for Opportunity for the same partner - opp_ids = opp_obj.search(cr, uid, [('partner_id', '=', opp.partner_id.id), ('type', '=', 'opportunity'), ('state', 'in', ('open', 'pending'))]) - # Removing current opportunity - if record_id in opp_ids: - opp_ids.remove(record_id) - if not opp_ids: - raise osv.except_osv(_('Warning!'), _("There are no other 'Open' or 'Pending' Opportunities for the partner '%s'.") % (opp.partner_id.name)) - pass - - def action_merge(self, cr, uid, ids, context=None): """ - This function merges two opportunities + This function merges opportunities @param self: The object pointer @param cr: the current row, from the database cursor, @param uid: the current user’s ID for security checks, @@ -65,54 +38,87 @@ class crm_merge_opportunity(osv.osv_memory): @return : Dictionary value for created Opportunity form """ - record_id = context and context.get('active_id', False) or False - if record_id: - opp_obj = self.pool.get('crm.lead') - message_obj = self.pool.get('mailgate.message') - current_opp = opp_obj.browse(cr, uid, record_id, context=context) + record_ids = context and context.get('active_ids') or False + if len(record_ids) <= 1: + return {'type': 'ir.actions.act_window_close'} + + obj_opportunity = self.browse(cr, uid, ids[0], context=context) + opp_obj = self.pool.get('crm.lead') + first_opp = obj_opportunity.opportunity_ids[0] + op_ids = obj_opportunity.opportunity_ids + first_opp_data = {} - for this in self.browse(cr, uid, ids, context=context): - for opp in this.opportunity_ids: - opp_obj.write(cr, uid, [opp.id], { - 'stage_id': opp.stage_id.id or current_opp.stage_id.id or False, - 'priority': opp.priority or current_opp.priority, - 'email_from': opp.email_from or current_opp.email_from, - 'phone': opp.phone or current_opp.phone, - 'section_id': opp.section_id.id or current_opp.section_id.id or False, - 'categ_id': opp.categ_id.id or current_opp.categ_id.id or False, - 'description': (opp.description or '') + '\n' + (current_opp.description or ''), - 'partner_name': opp.partner_name or current_opp.partner_name, - 'title': opp.title.id or current_opp.title.id or False, - 'function': opp.function or current_opp.function, - 'street': opp.street or current_opp.street, - 'street2': opp.street2 or current_opp.street2, - 'zip': opp.zip or current_opp.zip, - 'city': opp.city or current_opp.city, - 'country_id': opp.country_id.id or current_opp.country_id.id or False, - 'state_id': opp.state_id.id or current_opp.state_id.id or False, - 'fax': opp.fax or current_opp.fax, - 'mobile': opp.mobile or current_opp.mobile, - 'email_cc': ','.join(filter(lambda x: x, [opp.email_cc, current_opp.email_cc])) - }) - for history in current_opp.message_ids: - if history.history: - new_history = message_obj.copy(cr, uid, history.id, default={'res_id': opp.id}) - opp_obj._history(cr, uid, [current_opp], _('Merged into Opportunity: %s') % (opp.id)) + for opp in op_ids[1:]: + first_opp_data = { + 'partner_id': first_opp.partner_id.id or opp.partner_id.id, + 'stage_id': first_opp.stage_id.id or opp.stage_id.id, + 'section_id': first_opp.section_id.id or opp.section_id.id, + 'categ_id': first_opp.categ_id.id or opp.categ_id.id, + 'type_id': first_opp.type_id.id or opp.type_id.id, + 'channel_id': first_opp.channel_id.id or opp.channel_id.id, + 'user_id': first_opp.user_id.id or opp.user_id.id, + 'country_id': first_opp.country_id.id or opp.country_id.id, + 'state_id': first_opp.state_id.id or opp.state_id.id, + 'partner_address_id': first_opp.partner_address_id.id or opp.partner_address_id.id, + 'priority': first_opp.priority or opp.priority, + 'title': first_opp.title.id or opp.title.id, + 'function': first_opp.function or opp.function, + 'email_from': first_opp.email_from or opp.email_from, + 'phone': first_opp.phone or opp.phone, + 'description': first_opp.description or opp.description, + 'partner_name': first_opp.partner_name or opp.partner_name, + 'street': first_opp.street or opp.street, + 'street2': first_opp.street2 or opp.street2, + 'zip': first_opp.zip or opp.zip, + 'city': first_opp.city or opp.city, + 'fax': first_opp.fax or opp.fax, + 'mobile': first_opp.mobile or opp.mobile, + 'email_cc': ','.join(filter(lambda x: x, [opp.email_cc, first_opp.email_cc])), + 'state': 'open' + } + for history in opp.message_ids: + if history.history: + new_history = message_obj.copy(cr, uid, history.id, default={'res_id': opp.id}) + opp_obj._history(cr, uid, [first_opp], _('Merged from Opportunity: %s : Information lost : [Partner: %s, Stage: %s, Section: %s, Salesman: %s]') % (opp.name, opp.partner_id.name or '', opp.stage_id.name or '', opp.section_id.name or '', opp.user_id.name or '')) + - if this.state == 'unchanged': - pass - elif this.state == 'done': - opp_obj.case_close(cr, uid, [record_id]) - elif this.state == 'draft': - opp_obj.case_reset(cr, uid, [record_id]) - elif this.state in ['cancel', 'open', 'pending']: - act = 'case_' + this.state - getattr(opp_obj, act)(cr, uid, [record_id]) - return {'type': 'ir.actions.act_window_close'} + opp_obj.write(cr, uid, [first_opp.id], first_opp_data) + + unlink_ids = map(lambda x: x.id, op_ids[1:]) + opp_obj.unlink(cr, uid, unlink_ids) + + models_data = self.pool.get('ir.model.data') + + # Get Opportunity views + result = models_data._get_id( + cr, uid, 'crm', 'view_crm_case_opportunities_filter') + opportunity_view_form = models_data._get_id( + cr, uid, 'crm', 'crm_case_form_view_oppor') + opportunity_view_tree = models_data._get_id( + cr, uid, 'crm', 'crm_case_tree_view_oppor') + if opportunity_view_form: + opportunity_view_form = models_data.browse( + cr, uid, opportunity_view_form, context=context).res_id + if opportunity_view_tree: + opportunity_view_tree = models_data.browse( + cr, uid, opportunity_view_tree, context=context).res_id + + return { + 'name': _('Opportunity'), + 'view_type': 'form', + 'view_mode': 'tree, form', + 'res_model': 'crm.lead', + 'domain': [('type', '=', 'opportunity')], + 'res_id': int(first_opp.id), + 'view_id': False, + 'views': [(opportunity_view_form, 'form'), + (opportunity_view_tree, 'tree'), + (False, 'calendar'), (False, 'graph')], + 'type': 'ir.actions.act_window', + } _columns = { 'opportunity_ids' : fields.many2many('crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id', 'Opportunities', domain=[('type', '=', 'opportunity')]), - 'state': fields.selection(crm.AVAILABLE_STATES + [('unchanged', 'Unchanged')], string='Set State To', required=True), } def default_get(self, cr, uid, fields, context=None): @@ -126,21 +132,12 @@ class crm_merge_opportunity(osv.osv_memory): @return : default values of fields. """ - record_id = context and context.get('active_id', False) or False + record_ids = context and context.get('active_ids', False) or False res = super(crm_merge_opportunity, self).default_get(cr, uid, fields, context=context) - if record_id: - opp_obj = self.pool.get('crm.lead') - opp = opp_obj.browse(cr, uid, record_id, context=context) - opp_ids = opp_obj.search(cr, uid, [('partner_id', '=', opp.partner_id.id), ('type', '=', 'opportunity'), ('state', 'in', ('open', 'pending'))]) - # Removing current opportunity - if record_id in opp_ids: - opp_ids.remove(record_id) - + if record_ids: if 'opportunity_ids' in fields: - res.update({'opportunity_ids': opp_ids}) - if 'state' in fields: - res.update({'state': u'cancel'}) + res.update({'opportunity_ids': record_ids}) return res diff --git a/addons/crm/wizard/crm_merge_opportunities_view.xml b/addons/crm/wizard/crm_merge_opportunities_view.xml index 153267f0ad1..046cc37cd8f 100644 --- a/addons/crm/wizard/crm_merge_opportunities_view.xml +++ b/addons/crm/wizard/crm_merge_opportunities_view.xml @@ -14,7 +14,6 @@ -