diff --git a/addons/.bzrignore b/addons/.bzrignore new file mode 100644 index 00000000000..8d98f9debde --- /dev/null +++ b/addons/.bzrignore @@ -0,0 +1 @@ +.* diff --git a/addons/account/i18n/ar.po b/addons/account/i18n/ar.po index d67b9c0e8c8..5c74b02b379 100644 --- a/addons/account/i18n/ar.po +++ b/addons/account/i18n/ar.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-02-23 05:05+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account diff --git a/addons/account/i18n/hu.po b/addons/account/i18n/hu.po index 21fbe4cf06d..5a9097ea95b 100644 --- a/addons/account/i18n/hu.po +++ b/addons/account/i18n/hu.po @@ -7,13 +7,13 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.0\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2010-01-30 16:38+0000\n" +"PO-Revision-Date: 2010-02-23 13:20+0000\n" "Last-Translator: Dukai Gábor \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-01-31 04:51+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account @@ -1789,7 +1789,7 @@ msgstr "Értékesítés" #: wizard_button:account.account.balance.report,account_selection,checktype:0 #: wizard_button:account.general.ledger.report,account_selection,checktype:0 msgid "Next" -msgstr "" +msgstr "Tovább" #. module: account #: help:res.partner,property_account_position:0 diff --git a/addons/account/i18n/pl.po b/addons/account/i18n/pl.po index c51ecc45b32..d5abcb0ce40 100644 --- a/addons/account/i18n/pl.po +++ b/addons/account/i18n/pl.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-02-21 04:56+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account diff --git a/addons/account/i18n/pt_BR.po b/addons/account/i18n/pt_BR.po index ecb7e15efc4..6028201e069 100644 --- a/addons/account/i18n/pt_BR.po +++ b/addons/account/i18n/pt_BR.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-02-23 05:05+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account diff --git a/addons/account/i18n/sv.po b/addons/account/i18n/sv.po index 670e2b00756..6f15cd4b369 100644 --- a/addons/account/i18n/sv.po +++ b/addons/account/i18n/sv.po @@ -7,13 +7,13 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.0\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2010-02-16 11:32+0000\n" -"Last-Translator: Treecko \n" +"PO-Revision-Date: 2010-02-24 18:59+0000\n" +"Last-Translator: Anders Eriksson \n" "Language-Team: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-02-17 04:55+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account @@ -73,6 +73,8 @@ msgid "" "This account will be used to value incoming stock for the current product " "category" msgstr "" +"Detta konto kommer att användas användas för inleveranser till lagret för " +"den aktuella produktkategorin" #. module: account #: help:account.invoice,period_id:0 @@ -105,7 +107,7 @@ msgstr "" #: model:ir.actions.wizard,name:account.wizard_vat_declaration #: model:ir.ui.menu,name:account.menu_wizard_vat_declaration msgid "Print Taxes Report" -msgstr "" +msgstr "Skriv ut momsrapport" #. module: account #: field:account.account,parent_id:0 @@ -115,7 +117,7 @@ msgstr "" #. module: account #: selection:account.move,type:0 msgid "Journal Voucher" -msgstr "" +msgstr "Journalverifikat" #. module: account #: field:account.invoice,residual:0 @@ -159,7 +161,7 @@ msgstr "" #. module: account #: model:ir.actions.wizard,name:account.wizard_invoice_state_confirm msgid "Confirm draft invoices" -msgstr "" +msgstr "Godkänn preliminära fakturor" #. module: account #: help:account.payment.term.line,days2:0 @@ -172,12 +174,12 @@ msgstr "" #. module: account #: view:account.move:0 msgid "Total Credit" -msgstr "" +msgstr "Total kredit" #. module: account #: field:account.config.wizard,charts:0 msgid "Charts of Account" -msgstr "" +msgstr "Kontoplan" #. module: account #: model:ir.actions.wizard,name:account.wizard_move_line_select @@ -200,7 +202,7 @@ msgstr "" #. module: account #: field:account.tax.code,sum_period:0 msgid "Period Sum" -msgstr "" +msgstr "Periodtotal" #. module: account #: view:account.tax:0 @@ -235,19 +237,19 @@ msgstr "" #: field:account.tax.template,amount:0 #: xsl:account.transfer:0 msgid "Amount" -msgstr "" +msgstr "Belopp" #. module: account #: model:ir.actions.report.xml,name:account.account_3rdparty_ledger #: model:ir.actions.wizard,name:account.wizard_third_party_ledger #: model:ir.ui.menu,name:account.menu_third_party_ledger msgid "Partner Ledger" -msgstr "" +msgstr "Partnerreskontra" #. module: account #: field:product.template,supplier_taxes_id:0 msgid "Supplier Taxes" -msgstr "" +msgstr "Leverantörsskatter" #. module: account #: view:account.move:0 @@ -282,13 +284,13 @@ msgstr "" #: selection:account.tax,type:0 #: selection:account.tax.template,type:0 msgid "Fixed" -msgstr "" +msgstr "Fast" #. module: account #: model:ir.actions.report.xml,name:account.account_overdue #: view:res.company:0 msgid "Overdue Payments" -msgstr "" +msgstr "Försenade betalningar" #. module: account #: wizard_view:account.account.balance.report,checktype:0 @@ -299,7 +301,7 @@ msgstr "" #: wizard_view:account.analytic.account.quantity_cost_ledger.report,init:0 #: wizard_view:account.vat.declaration,init:0 msgid "Select period" -msgstr "" +msgstr "Välj period" #. module: account #: field:account.invoice,origin:0 @@ -350,7 +352,7 @@ msgstr "" #: field:account.move.line,analytic_account_id:0 #: field:report.hr.timesheet.invoice.journal,account_id:0 msgid "Analytic Account" -msgstr "" +msgstr "Objekt" #. module: account #: field:account.tax,child_depend:0 @@ -363,12 +365,12 @@ msgstr "" #: rml:account.general.journal:0 #: field:account.journal,name:0 msgid "Journal Name" -msgstr "" +msgstr "Journalnamn" #. module: account #: view:account.payment.term:0 msgid "Description on invoices" -msgstr "" +msgstr "Fakturabeskrivning" #. module: account #: constraint:account.analytic.account:0 @@ -410,17 +412,17 @@ msgstr "" #. module: account #: rml:account.overdue:0 msgid "Date:" -msgstr "" +msgstr "Datum:" #. module: account #: selection:account.account.type,sign:0 msgid "Negative" -msgstr "" +msgstr "Negativ" #. module: account #: rml:account.partner.balance:0 msgid "(Account/Partner) Name" -msgstr "" +msgstr "(Konto/Partner) namn" #. module: account #: selection:account.move,type:0 @@ -464,7 +466,7 @@ msgstr "" #. module: account #: rml:account.invoice:0 msgid "Disc.(%)" -msgstr "" +msgstr "Rabatt (%)" #. module: account #: rml:account.general.ledger:0 @@ -473,12 +475,12 @@ msgstr "" #: rml:account.overdue:0 #: field:account.subscription,ref:0 msgid "Ref" -msgstr "" +msgstr "Ref" #. module: account #: field:account.tax.template,type_tax_use:0 msgid "Tax Use In" -msgstr "" +msgstr "Aktuell moms" #. module: account #: help:account.tax.template,include_base_amount:0 @@ -501,12 +503,12 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_account_tax_code_template_form #: model:ir.ui.menu,name:account.menu_action_account_tax_code_template_form msgid "Tax Code Templates" -msgstr "" +msgstr "Momsmallar" #. module: account #: view:account.invoice:0 msgid "Supplier invoice" -msgstr "" +msgstr "Leverantörsfaktura" #. module: account #: model:process.transition,name:account.process_transition_reconcilepaid0 @@ -523,7 +525,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_account_tax_template_form #: model:ir.ui.menu,name:account.menu_action_account_tax_template_form msgid "Tax Templates" -msgstr "" +msgstr "Momsmallar" #. module: account #: field:account.invoice,reconciled:0 @@ -549,7 +551,7 @@ msgstr "" #. module: account #: view:account.invoice.line:0 msgid "Line" -msgstr "" +msgstr "Rad" #. module: account #: rml:account.analytic.account.cost_ledger:0 @@ -560,7 +562,7 @@ msgstr "" #: selection:account.tax,applicable_type:0 #: selection:account.tax.template,applicable_type:0 msgid "True" -msgstr "" +msgstr "Sant" #. module: account #: help:account.payment.term.line,days:0 @@ -577,7 +579,7 @@ msgstr "" #. module: account #: rml:account.central.journal:0 msgid "Printing Date" -msgstr "" +msgstr "Utskriftsdatum" #. module: account #: rml:account.general.ledger:0 @@ -616,7 +618,7 @@ msgstr "" #. module: account #: field:account.analytic.account,contact_id:0 msgid "Contact" -msgstr "" +msgstr "Kontakt" #. module: account #: selection:account.model.line,date:0 @@ -637,7 +639,7 @@ msgstr "" #. module: account #: field:account.invoice.line,discount:0 msgid "Discount (%)" -msgstr "" +msgstr "Rabatt (%)" #. module: account #: wizard_field:account.move.line.reconcile,init_full,writeoff:0 @@ -653,12 +655,12 @@ msgstr "" #. module: account #: model:ir.ui.menu,name:account.menu_analytic_accounting msgid "Analytic Accounting" -msgstr "" +msgstr "Objektsredovisning" #. module: account #: rml:account.overdue:0 msgid "Sub-Total :" -msgstr "" +msgstr "Subtotal :" #. module: account #: field:account.analytic.account,line_ids:0 @@ -671,7 +673,7 @@ msgstr "" #. module: account #: selection:account.subscription,period_type:0 msgid "month" -msgstr "" +msgstr "månad" #. module: account #: field:account.analytic.account,partner_id:0 diff --git a/addons/account/invoice.py b/addons/account/invoice.py index 912095110e7..96f3a0afb40 100644 --- a/addons/account/invoice.py +++ b/addons/account/invoice.py @@ -29,18 +29,6 @@ from mx.DateTime import RelativeDateTime from tools import config from tools.translate import _ -#class fiscalyear_seq(osv.osv): -# _name = "fiscalyear.seq" -# _description = "Maintains Invoice sequences with Fiscal Year" -# _rec_name = 'fiscalyear_id' -# _columns = { -# 'journal_id': fields.many2one('account.journal', 'Journal'), -# 'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscal Year',required=True), -# 'sequence_id':fields.many2one('ir.sequence', 'Sequence',required=True), -# } -# -#fiscalyear_seq() - class account_invoice(osv.osv): def _amount_all(self, cr, uid, ids, name, args, context=None): res = {} @@ -505,21 +493,21 @@ class account_invoice(osv.osv): else: journal_ids=self.pool.get('account.journal').search(cr,uid,[]) dom={'journal_id': [('id','in',journal_ids)]} - + if currency_id and company_id: currency = self.pool.get('res.currency').browse(cr, uid, currency_id) if currency.company_id.id != company_id: val['currency_id'] = False else: val['currency_id'] = currency.id - + if company_id: company = self.pool.get('res.company').browse(cr, uid, company_id) if company.currency_id.company_id.id != company_id: - val['currency_id'] = False + val['currency_id'] = False else: val['currency_id'] = company.currency_id.id - + return {'value' : val, 'domain': dom } # go from canceled state to draft state @@ -631,7 +619,84 @@ class account_invoice(osv.osv): self.write(cr, uid, [inv.id], res['value']) return True + def check_tax_lines(self, cr, uid, inv, compute_taxes, ait_obj): + if not inv.tax_line: + for tax in compute_taxes.values(): + ait_obj.create(cr, uid, tax) + else: + tax_key = [] + for tax in inv.tax_line: + if tax.manual: + continue + key = (tax.tax_code_id.id, tax.base_code_id.id, tax.account_id.id) + tax_key.append(key) + if not key in compute_taxes: + raise osv.except_osv(_('Warning !'), _('Global taxes defined, but are not in invoice lines !')) + base = compute_taxes[key]['base'] + if abs(base - tax.base) > inv.company_id.currency_id.rounding: + raise osv.except_osv(_('Warning !'), _('Tax base different !\nClick on compute to update tax base')) + for key in compute_taxes: + if not key in tax_key: + raise osv.except_osv(_('Warning !'), _('Taxes missing !')) + + def compute_invoice_totals(self, cr, uid, inv, company_currency, ref, invoice_move_lines): + total = 0 + total_currency = 0 + for i in invoice_move_lines: + if inv.currency_id.id != company_currency: + i['currency_id'] = inv.currency_id.id + i['amount_currency'] = i['price'] + i['price'] = cur_obj.compute(cr, uid, inv.currency_id.id, + company_currency, i['price'], + context={'date': inv.date_invoice or time.strftime('%Y-%m-%d')}) + else: + i['amount_currency'] = False + i['currency_id'] = False + i['ref'] = ref + if inv.type in ('out_invoice','in_refund'): + total += i['price'] + total_currency += i['amount_currency'] or i['price'] + i['price'] = - i['price'] + else: + total -= i['price'] + total_currency -= i['amount_currency'] or i['price'] + return total, total_currency, invoice_move_lines + + def inv_line_characteristic_hashcode(self, invoice, invoice_line): + """Overridable hashcode generation for invoice lines. Lines having the same hashcode + will be grouped together if the journal has the 'group line' option. Of course a module + can add fields to invoice lines that would need to be tested too before merging lines + or not.""" + return "%s-%s-%s-%s-%s"%( + invoice_line['account_id'], + invoice_line.get('tax_code_id',"False"), + invoice_line.get('product_id',"False"), + invoice_line.get('analytic_account_id',"False"), + invoice_line.get('date_maturity',"False")) + + def group_lines(self, cr, uid, iml, line, inv): + """Merge account move lines (and hence analytic lines) if invoice line hashcodes are equals""" + if inv.journal_id.group_invoice_lines: + line2 = {} + for x, y, l in line: + tmp = self.inv_line_characteristic_hashcode(inv, l) + + if tmp in line2: + am = line2[tmp]['debit'] - line2[tmp]['credit'] + (l['debit'] - l['credit']) + line2[tmp]['debit'] = (am > 0) and am or 0.0 + line2[tmp]['credit'] = (am < 0) and -am or 0.0 + line2[tmp]['tax_amount'] += l['tax_amount'] + line2[tmp]['analytic_lines'] += l['analytic_lines'] + else: + line2[tmp] = l + line = [] + for key, val in line2.items(): + line.append((0,0,val)) + + return line + def action_move_create(self, cr, uid, ids, *args): + """Creates invoice related analytics and financial move lines""" ait_obj = self.pool.get('account.invoice.tax') cur_obj = self.pool.get('res.currency') context = {} @@ -650,24 +715,7 @@ class account_invoice(osv.osv): context.update({'lang': inv.partner_id.lang}) compute_taxes = ait_obj.compute(cr, uid, inv.id, context=context) - if not inv.tax_line: - for tax in compute_taxes.values(): - ait_obj.create(cr, uid, tax) - else: - tax_key = [] - for tax in inv.tax_line: - if tax.manual: - continue - key = (tax.tax_code_id.id, tax.base_code_id.id, tax.account_id.id) - tax_key.append(key) - if not key in compute_taxes: - raise osv.except_osv(_('Warning !'), _('Global taxes defined, but are not in invoice lines !')) - base = compute_taxes[key]['base'] - if abs(base - tax.base) > inv.company_id.currency_id.rounding: - raise osv.except_osv(_('Warning !'), _('Tax base different !\nClick on compute to update tax base')) - for key in compute_taxes: - if not key in tax_key: - raise osv.except_osv(_('Warning !'), _('Taxes missing !')) + self.check_tax_lines(cr, uid, inv, compute_taxes, ait_obj) if inv.type in ('in_invoice', 'in_refund') and abs(inv.check_total - inv.amount_total) >= (inv.currency_id.rounding/2.0): raise osv.except_osv(_('Bad total !'), _('Please verify the price of the invoice !\nThe real total does not match the computed total.')) @@ -684,24 +732,7 @@ class account_invoice(osv.osv): # create one move line for the total and possibly adjust the other lines amount total = 0 total_currency = 0 - for i in iml: - if inv.currency_id.id != company_currency: - i['currency_id'] = inv.currency_id.id - i['amount_currency'] = i['price'] - i['price'] = cur_obj.compute(cr, uid, inv.currency_id.id, - company_currency, i['price'], - context={'date': inv.date_invoice or time.strftime('%Y-%m-%d')}) - else: - i['amount_currency'] = False - i['currency_id'] = False - i['ref'] = ref - if inv.type in ('out_invoice','in_refund'): - total += i['price'] - total_currency += i['amount_currency'] or i['price'] - i['price'] = - i['price'] - else: - total -= i['price'] - total_currency -= i['amount_currency'] or i['price'] + total, total_currency, iml = self.compute_invoice_totals(cr, uid, inv, company_currency, ref, iml) acc_id = inv.account_id.id name = inv['name'] or '/' @@ -756,26 +787,7 @@ class account_invoice(osv.osv): line = map(lambda x:(0,0,self.line_get_convert(cr, uid, x, part, date, context={})) ,iml) - if inv.journal_id.group_invoice_lines: - line2 = {} - for x, y, l in line: - tmp = str(l['account_id']) - tmp += '-'+str(l.get('tax_code_id',"False")) - tmp += '-'+str(l.get('product_id',"False")) - tmp += '-'+str(l.get('analytic_account_id',"False")) - tmp += '-'+str(l.get('date_maturity',"False")) - - if tmp in line2: - am = line2[tmp]['debit'] - line2[tmp]['credit'] + (l['debit'] - l['credit']) - line2[tmp]['debit'] = (am > 0) and am or 0.0 - line2[tmp]['credit'] = (am < 0) and -am or 0.0 - line2[tmp]['tax_amount'] += l['tax_amount'] - line2[tmp]['analytic_lines'] += l['analytic_lines'] - else: - line2[tmp] = l - line = [] - for key, val in line2.items(): - line.append((0,0,val)) + line = self.group_lines(cr, uid, iml, line, inv) journal_id = inv.journal_id.id #self._get_journal(cr, uid, {'type': inv['type']}) journal = self.pool.get('account.journal').browse(cr, uid, journal_id) @@ -1449,4 +1461,3 @@ class account_invoice_tax(osv.osv): account_invoice_tax() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: - diff --git a/addons/account_analytic_default/account_analytic_default.py b/addons/account_analytic_default/account_analytic_default.py index f22e37e5e71..ab81e7d88fc 100644 --- a/addons/account_analytic_default/account_analytic_default.py +++ b/addons/account_analytic_default/account_analytic_default.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- ############################################################################### -# +# # OpenERP, Open Source Management Solution # Copyright (C) 2004-2010 Tiny SPRL (). # @@ -15,7 +15,7 @@ # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . +# along with this program. If not, see . # ############################################################################## @@ -70,51 +70,51 @@ account_analytic_default() class account_invoice_line(osv.osv): _inherit = 'account.invoice.line' _description = 'account invoice line' - - def product_id_change(self, cr, uid, ids, product, uom, qty=0, name='', type='out_invoice', partner_id=False, fposition=False, price_unit=False, address_invoice_id=False, context={}): - res_prod = super(account_invoice_line,self).product_id_change(cr, uid, ids, product, uom, qty, name, type, partner_id, fposition, price_unit, address_invoice_id, context) + + def product_id_change(self, cr, uid, ids, product, uom, qty=0, name='', type='out_invoice', partner_id=False, fposition=False, price_unit=False, address_invoice_id=False, currency_id=False, context={}): + res_prod = super(account_invoice_line,self).product_id_change(cr, uid, ids, product, uom, qty, name, type, partner_id, fposition, price_unit, address_invoice_id, currency_id=currency_id, context=context) rec = self.pool.get('account.analytic.default').account_get(cr, uid, product, partner_id, uid, time.strftime('%Y-%m-%d'), context) if rec: res_prod['value'].update({'account_analytic_id':rec.analytic_id.id}) else: - res_prod['value'].update({'account_analytic_id':False}) + res_prod['value'].update({'account_analytic_id':False}) return res_prod account_invoice_line() class stock_picking(osv.osv): _inherit = "stock.picking" - + def _get_account_analytic_invoice(self, cursor, user, picking, move_line): partner_id = picking.address_id and picking.address_id.partner_id or False rec = self.pool.get('account.analytic.default').account_get(cursor, user, move_line.product_id.id, partner_id and partner_id.id, user, time.strftime('%Y-%m-%d'), context={}) - + if rec: return rec.analytic_id.id - + return super(stock_picking, self)._get_account_analytic_invoice(cursor, user, picking, move_line) - + stock_picking() class sale_order_line(osv.osv): _inherit = 'sale.order.line' - + # Method overridden to set the analytic account by default on criterion match def invoice_line_create(self, cr, uid, ids, context={}): create_ids = super(sale_order_line,self).invoice_line_create(cr, uid, ids, context) sale_line_obj = self.browse(cr, uid, ids[0], context) pool_inv_line = self.pool.get('account.invoice.line') - + for line in pool_inv_line.browse(cr, uid, create_ids, context): rec = self.pool.get('account.analytic.default').account_get(cr, uid, line.product_id.id, sale_line_obj.order_id.partner_id.id, uid, time.strftime('%Y-%m-%d'), context) - + if rec: pool_inv_line.write(cr, uid, [line.id], {'account_analytic_id':rec.analytic_id.id}, context=context) return create_ids - -sale_order_line() - + +sale_order_line() + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_analytic_default/i18n/pl.po b/addons/account_analytic_default/i18n/pl.po index c1fa0fe36bc..e8d137b0f84 100644 --- a/addons/account_analytic_default/i18n/pl.po +++ b/addons/account_analytic_default/i18n/pl.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-02-21 04:56+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account_analytic_default diff --git a/addons/account_balance/i18n/bs.po b/addons/account_balance/i18n/bs.po index b13ebd52784..c64e580a32d 100644 --- a/addons/account_balance/i18n/bs.po +++ b/addons/account_balance/i18n/bs.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-02-23 05:05+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account_balance diff --git a/addons/account_chart/i18n/nb.po b/addons/account_chart/i18n/nb.po index 9b7d1b3f53b..e02f069f3db 100644 --- a/addons/account_chart/i18n/nb.po +++ b/addons/account_chart/i18n/nb.po @@ -14,7 +14,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-02-22 04:41+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account_chart diff --git a/addons/account_chart/i18n/sv.po b/addons/account_chart/i18n/sv.po index 5ea542a2016..8a31febc9de 100644 --- a/addons/account_chart/i18n/sv.po +++ b/addons/account_chart/i18n/sv.po @@ -13,7 +13,7 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2010-02-22 04:41+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: account_chart diff --git a/addons/account_invoice_layout/.project b/addons/account_invoice_layout/.project deleted file mode 100644 index 9fcfcc5ebf0..00000000000 --- a/addons/account_invoice_layout/.project +++ /dev/null @@ -1,17 +0,0 @@ - - - account_invoice_layout - - - - - - org.python.pydev.PyDevBuilder - - - - - - org.python.pydev.pythonNature - - diff --git a/addons/account_invoice_layout/.pydevproject b/addons/account_invoice_layout/.pydevproject deleted file mode 100644 index b4c1448c08b..00000000000 --- a/addons/account_invoice_layout/.pydevproject +++ /dev/null @@ -1,6 +0,0 @@ - - - - -python 2.4 - diff --git a/addons/account_tax_include/i18n/sk.po b/addons/account_tax_include/i18n/sk.po new file mode 100644 index 00000000000..be869c8f14c --- /dev/null +++ b/addons/account_tax_include/i18n/sk.po @@ -0,0 +1,53 @@ +# Slovak translation for openobject-addons +# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2010. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2009-08-28 16:01+0000\n" +"PO-Revision-Date: 2010-02-23 08:12+0000\n" +"Last-Translator: Radoslav Sloboda \n" +"Language-Team: Slovak \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2010-02-25 04:50+0000\n" +"X-Generator: Launchpad (build Unknown)\n" + +#. module: account_tax_include +#: constraint:ir.ui.view:0 +msgid "Invalid XML for View Architecture!" +msgstr "Neplatný súbor XML pre zobrazenie architektúry!" + +#. module: account_tax_include +#: field:account.invoice,price_type:0 +msgid "Price method" +msgstr "" + +#. module: account_tax_include +#: model:ir.module.module,shortdesc:account_tax_include.module_meta_information +msgid "Invoices and prices with taxes included" +msgstr "Faktúry a ceny zahrnuté s DPH" + +#. module: account_tax_include +#: selection:account.invoice,price_type:0 +msgid "Tax included" +msgstr "" + +#. module: account_tax_include +#: selection:account.invoice,price_type:0 +msgid "Tax excluded" +msgstr "" + +#. module: account_tax_include +#: view:account.tax:0 +msgid "Compute Code for Taxes included prices" +msgstr "" + +#. module: account_tax_include +#: field:account.invoice.line,price_subtotal_incl:0 +msgid "Subtotal" +msgstr "Medzisúčet" diff --git a/addons/account_tax_include/invoice_tax_incl.py b/addons/account_tax_include/invoice_tax_incl.py index d4255bb96a9..94e2871da84 100644 --- a/addons/account_tax_include/invoice_tax_incl.py +++ b/addons/account_tax_include/invoice_tax_incl.py @@ -1,6 +1,6 @@ # -*- coding: utf-8 -*- ############################################################################## -# +# # OpenERP, Open Source Management Solution # Copyright (C) 2004-2010 Tiny SPRL (). # @@ -15,7 +15,7 @@ # GNU Affero General Public License for more details. # # You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see . +# along with this program. If not, see . # ############################################################################## @@ -36,7 +36,7 @@ class account_invoice(osv.osv): _defaults = { 'price_type': lambda *a: 'tax_excluded', } - + def refund(self, cr, uid, ids, date=None, period_id=None, description=None): map_old_new = {} refund_ids = [] @@ -44,12 +44,12 @@ class account_invoice(osv.osv): new_id = super(account_invoice,self).refund(cr, uid, ids, date=date, period_id=period_id, description=description) refund_ids += new_id map_old_new[old_inv_id] = new_id[0] - + for old_inv_id in map_old_new.keys(): old_inv_record = self.read(cr, uid, [old_inv_id], ['price_type'])[0]['price_type'] self.write(cr, uid, [map_old_new[old_inv_id]], {'price_type' : old_inv_record}) return refund_ids - + account_invoice() class account_invoice_line(osv.osv): @@ -156,16 +156,16 @@ class account_invoice_line(osv.osv): else: return super(account_invoice_line, self).product_id_change_unit_price_inv(cr, uid, tax_id, price_unit, qty, address_invoice_id, product, partner_id, context=context) - def product_id_change(self, cr, uid, ids, product, uom, qty=0, name='', type='out_invoice', partner_id=False, fposition_id=False, price_unit=False, address_invoice_id=False, context=None): + def product_id_change(self, cr, uid, ids, product, uom, qty=0, name='', type='out_invoice', partner_id=False, fposition_id=False, price_unit=False, address_invoice_id=False, currency_id=False, context=None): # note: will call product_id_change_unit_price_inv with context... - # Temporary trap, for bad context that came from koo: + # Temporary trap, for bad context that came from koo: # if isinstance(context, str): # print "str context:", context ctx = (context and context.copy()) or {} ctx.update({'price_type': ctx.get('price_type','tax_excluded')}) - return super(account_invoice_line, self).product_id_change(cr, uid, ids, product, uom, qty, name, type, partner_id, fposition_id, price_unit, address_invoice_id, context=ctx) + return super(account_invoice_line, self).product_id_change(cr, uid, ids, product, uom, qty, name, type, partner_id, fposition_id, price_unit, address_invoice_id, currency_id=currency_id, context=ctx) account_invoice_line() class account_invoice_tax(osv.osv): @@ -180,7 +180,7 @@ class account_invoice_tax(osv.osv): cur_obj = self.pool.get('res.currency') cur = inv.currency_id company_currency = inv.company_id.currency_id.id - + for line in inv.invoice_line: data = self.pool.get('account.invoice.line')._amount_line2(cr, uid, [line.id], [], [], context)[line.id] for tax in data['data']: @@ -218,7 +218,7 @@ class account_invoice_tax(osv.osv): t['amount'] = cur_obj.round(cr, uid, cur, t['amount']) t['base_amount'] = cur_obj.round(cr, uid, cur, t['base_amount']) t['tax_amount'] = cur_obj.round(cr, uid, cur, t['tax_amount']) - + return tax_grouped account_invoice_tax() diff --git a/addons/analytic_user_function/i18n/sk.po b/addons/analytic_user_function/i18n/sk.po new file mode 100644 index 00000000000..8e8275d3025 --- /dev/null +++ b/addons/analytic_user_function/i18n/sk.po @@ -0,0 +1,66 @@ +# Slovak translation for openobject-addons +# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2010. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2009-08-28 16:01+0000\n" +"PO-Revision-Date: 2010-02-23 08:09+0000\n" +"Last-Translator: Radoslav Sloboda \n" +"Language-Team: Slovak \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" +"X-Generator: Launchpad (build Unknown)\n" + +#. module: analytic_user_function +#: constraint:ir.ui.view:0 +msgid "Invalid XML for View Architecture!" +msgstr "Neplatný súbor XML pre zobrazenie architektúry!" + +#. module: analytic_user_function +#: model:ir.model,name:analytic_user_function.model_analytic_user_funct_grid +msgid "Relation table between users and products on a analytic account" +msgstr "" + +#. module: analytic_user_function +#: field:analytic_user_funct_grid,product_id:0 +msgid "Product" +msgstr "Produkt" + +#. module: analytic_user_function +#: field:analytic_user_funct_grid,account_id:0 +msgid "Analytic Account" +msgstr "Analytický účet" + +#. module: analytic_user_function +#: view:account.analytic.account:0 +#: field:account.analytic.account,user_product_ids:0 +msgid "Users/Products Rel." +msgstr "" + +#. module: analytic_user_function +#: field:analytic_user_funct_grid,user_id:0 +msgid "User" +msgstr "Užívateľ" + +#. module: analytic_user_function +#: constraint:ir.model:0 +msgid "" +"The Object name must start with x_ and not contain any special character !" +msgstr "" +"Názov objektu musí začínať x_ a nesmie obsahovať žiadne špeciálne znaky!" + +#. module: analytic_user_function +#: model:ir.module.module,shortdesc:analytic_user_function.module_meta_information +msgid "Analytic User Function" +msgstr "" + +#. module: analytic_user_function +#: view:analytic_user_funct_grid:0 +msgid "User's Product for this Analytic Account" +msgstr "" diff --git a/addons/base_calendar/base_calendar.py b/addons/base_calendar/base_calendar.py index e6c39afcaf7..5ec7d36f52d 100644 --- a/addons/base_calendar/base_calendar.py +++ b/addons/base_calendar/base_calendar.py @@ -394,7 +394,7 @@ request was delegated to"), 'language': fields.function(_compute_data, method=True, string='Language', type="selection", selection=_lang_get, multi='language', store=True, help="To specify the language for text values in a property or property parameter."), 'user_id': fields.many2one('res.users', 'User'), 'partner_address_id': fields.many2one('res.partner.address', 'Contact'), - 'partner_id': fields.related('partner_address_id', 'partner_id', type='many2one', relation='res.partner', string='Partner'), + 'partner_id': fields.related('partner_address_id', 'partner_id', type='many2one', relation='res.partner', string='Partner', help="Partner related to contact"), 'email': fields.char('Email', size=124, required=True, help="Email of Invited Person"), 'event_date': fields.function(_compute_data, method=True, string='Event Date', type="datetime", multi='event_date'), 'event_end_date': fields.function(_compute_data, method=True, string='Event End Date', type="datetime", multi='event_end_date'), diff --git a/addons/base_calendar/base_calendar_view.xml b/addons/base_calendar/base_calendar_view.xml index 7bdaaf2a88f..59e426c2c09 100644 --- a/addons/base_calendar/base_calendar_view.xml +++ b/addons/base_calendar/base_calendar_view.xml @@ -71,8 +71,8 @@ - - + + diff --git a/addons/base_setup/__init__.py b/addons/base_setup/__init__.py index 22e81a488b0..e4a4c3c80d8 100644 --- a/addons/base_setup/__init__.py +++ b/addons/base_setup/__init__.py @@ -62,12 +62,13 @@ class base_setup_config_choice(osv.osv_memory): 'type': menu.type, 'view_id': view_id, 'domain': menu.domain, - 'res_users': menu.res_model, + 'res_model': menu.res_model, 'src_model': menu.src_model, 'view_type': menu.view_type, 'view_mode': menu.view_mode, 'views': menu.views, } + def config(self, cr, uid, ids, context=None): menu = self.get_default_menu(cr, uid, context=context) self.set_default_menu(cr, uid, menu, context=context) diff --git a/addons/base_setup/base_setup_demo.xml b/addons/base_setup/base_setup_demo.xml index 364a0773a4c..ce0b4a7bbb6 100644 --- a/addons/base_setup/base_setup_demo.xml +++ b/addons/base_setup/base_setup_demo.xml @@ -1,10 +1,10 @@ - - - - + + + + diff --git a/addons/board_account/i18n/sk.po b/addons/board_account/i18n/sk.po index d18ef8f08ea..3c440b6b02c 100644 --- a/addons/board_account/i18n/sk.po +++ b/addons/board_account/i18n/sk.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2009-08-28 16:01+0000\n" -"PO-Revision-Date: 2009-12-15 11:05+0000\n" +"PO-Revision-Date: 2010-02-23 08:20+0000\n" "Last-Translator: Radoslav Sloboda \n" "Language-Team: Slovak \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2009-12-16 05:21+0000\n" +"X-Launchpad-Export-Date: 2010-02-25 04:51+0000\n" "X-Generator: Launchpad (build Unknown)\n" #. module: board_account #: view:board.board:0 msgid "Analytic accounts to close" -msgstr "" +msgstr "Zatvoriť analytické účty" #. module: board_account #: view:board.board:0 @@ -36,24 +36,24 @@ msgstr "Neplatný súbor XML pre zobrazenie architektúry!" #: model:ir.actions.act_window,name:board_account.open_board_account #: model:ir.ui.menu,name:board_account.menu_board_account msgid "Accounting Dashboard" -msgstr "" +msgstr "Nástenka účtovníctva" #. module: board_account #: model:ir.actions.act_window,name:board_account.action_aged_receivable msgid "Receivable Accounts" -msgstr "" +msgstr "Účty pohľadávok" #. module: board_account #: view:board.board:0 #: model:ir.actions.act_window,name:board_account.act_my_account msgid "Accounts to invoice" -msgstr "" +msgstr "Účty na faktúre" #. module: board_account #: view:board.board:0 #: model:ir.actions.act_window,name:board_account.action_account_analytic_line_to_invoice msgid "Costs to invoice" -msgstr "" +msgstr "Náklady na faktúru" #. module: board_account #: view:board.board:0 @@ -73,17 +73,17 @@ msgstr "" #. module: board_account #: view:board.board:0 msgid "My indicators" -msgstr "" +msgstr "Moja ukazovatele" #. module: board_account #: constraint:ir.actions.act_window:0 msgid "Invalid model name in the action definition." -msgstr "" +msgstr "Neplatný názov modelu v akcii definície." #. module: board_account #: model:ir.ui.menu,name:board_account.next_id_68 msgid "Accounting" -msgstr "" +msgstr "Účtovníctvo" #. module: board_account #: view:board.board:0 diff --git a/addons/crm/crm.py b/addons/crm/crm.py index 179daf03491..87d6c11280f 100644 --- a/addons/crm/crm.py +++ b/addons/crm/crm.py @@ -155,6 +155,7 @@ class crm_case_stage(osv.osv): 'sequence': fields.integer('Sequence', help="Gives the sequence order when displaying a list of case stages."), 'object_id': fields.many2one('ir.model','Object Name'), 'probability': fields.float('Probability (%)', required=True), + 'on_change': fields.boolean('Set Onchange'), } def _find_object_id(self, cr, uid, context=None): object_id = context and context.get('object_id', False) or False diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py index f6197d14ab4..e84dbfd3381 100644 --- a/addons/crm/crm_lead.py +++ b/addons/crm/crm_lead.py @@ -36,7 +36,7 @@ class crm_lead(osv.osv): 'name': fields.char('Lead Subject', size=64), 'categ_id': fields.many2one('crm.case.categ', 'Category', domain="[('section_id','=',section_id),('object_id.model', '=', 'crm.opportunity')]"), 'type_id': fields.many2one('crm.case.resource.type', 'Lead Type Name', domain="[('section_id','=',section_id),('object_id.model', '=', 'crm.lead')]"), - 'partner_name': fields.char("Lead Name", size=64), + 'partner_name': fields.char("Partner Name", size=64), 'partner_name2': fields.char('Contact', size=64), 'partner_phone': fields.char('Phone', size=32), 'partner_mobile': fields.char('Mobile', size=32), @@ -54,6 +54,7 @@ class crm_lead(osv.osv): "the partner mentality in relation to our services.The scale has" \ "to be created with a factor for each level from 0 (Very dissatisfied) to 10 (Extremely satisfied)."), 'opportunity_id': fields.many2one('crm.opportunity', 'Opportunity'), + 'user_id': fields.many2one('res.users', 'Salesman'), } crm_lead() diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index ed8ad6a9153..700da40c9e1 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -28,7 +28,7 @@
- +