diff --git a/addons/account/account.py b/addons/account/account.py index cfba30856a9..15881100441 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -641,8 +641,7 @@ class account_account(osv.osv): return True def _check_allow_type_change(self, cr, uid, ids, new_type, context=None): - group1 = ['payable', 'receivable', 'other'] - group2 = ['consolidation','view'] + restricted_groups = ['consolidation','view'] line_obj = self.pool.get('account.move.line') for account in self.browse(cr, uid, ids, context=context): old_type = account.type @@ -650,14 +649,25 @@ class account_account(osv.osv): if line_obj.search(cr, uid, [('account_id', 'in', account_ids)]): #Check for 'Closed' type if old_type == 'closed' and new_type !='closed': - raise osv.except_osv(_('Warning!'), _("You cannot change the type of account from 'Closed' to any other type which contains journal items!")) - #Check for change From group1 to group2 and vice versa - if (old_type in group1 and new_type in group2) or (old_type in group2 and new_type in group1): - raise osv.except_osv(_('Warning!'), _("You cannot change the type of account from '%s' to '%s' type as it contains journal items!") % (old_type,new_type,)) + raise osv.except_osv(_('Warning !'), _("You cannot change the type of account from 'Closed' to any other type as it contains journal items!")) + # Forbid to change an account type for restricted_groups as it contains journal items (or if one of its children does) + if (new_type in restricted_groups): + raise osv.except_osv(_('Warning !'), _("You cannot change the type of account to '%s' type as it contains journal items!") % (new_type,)) + + return True + + # For legal reason (forbiden to modify journal entries which belongs to a closed fy or period), Forbid to modify + # the code of an account if journal entries have been already posted on this account. This cannot be simply + # 'configurable' since it can lead to a lack of confidence in OpenERP and this is what we want to change. + def _check_allow_code_change(self, cr, uid, ids, context=None): + line_obj = self.pool.get('account.move.line') + for account in self.browse(cr, uid, ids, context=context): + account_ids = self.search(cr, uid, [('id', 'child_of', [account.id])], context=context) + if line_obj.search(cr, uid, [('account_id', 'in', account_ids)], context=context): + raise osv.except_osv(_('Warning !'), _("You cannot change the code of account which contains journal items!")) return True def write(self, cr, uid, ids, vals, context=None): - if context is None: context = {} if not ids: @@ -677,6 +687,8 @@ class account_account(osv.osv): self._check_moves(cr, uid, ids, "write", context=context) if 'type' in vals.keys(): self._check_allow_type_change(cr, uid, ids, vals['type'], context=context) + if 'code' in vals.keys(): + self._check_allow_code_change(cr, uid, ids, context=context) return super(account_account, self).write(cr, uid, ids, vals, context=context) def unlink(self, cr, uid, ids, context=None): @@ -1470,6 +1482,11 @@ class account_move(osv.osv): raise osv.except_osv(_('User Error!'), _('You cannot delete a posted journal entry "%s".') % \ move['name']) + for line in move.line_id: + if line.invoice: + raise osv.except_osv(_('User Error!'), + _("Move cannot be deleted if linked to an invoice. (Invoice: %s - Move ID:%s)") % \ + (line.invoice.number,move.name)) line_ids = map(lambda x: x.id, move.line_id) context['journal_id'] = move.journal_id.id context['period_id'] = move.period_id.id @@ -1678,11 +1695,41 @@ class account_move_reconcile(osv.osv): 'line_id': fields.one2many('account.move.line', 'reconcile_id', 'Entry Lines'), 'line_partial_ids': fields.one2many('account.move.line', 'reconcile_partial_id', 'Partial Entry lines'), 'create_date': fields.date('Creation date', readonly=True), + 'opening_reconciliation': fields.boolean('Opening Entries Reconciliation', help="Is this reconciliation produced by the opening of a new fiscal year ?."), } _defaults = { 'name': lambda self,cr,uid,ctx=None: self.pool.get('ir.sequence').get(cr, uid, 'account.reconcile', context=ctx) or '/', } + + # You cannot unlink a reconciliation if it is a opening_reconciliation one, + # you should use the generate opening entries wizard for that + def unlink(self, cr, uid, ids, context=None): + for move_rec in self.browse(cr, uid, ids, context=context): + if move_rec.opening_reconciliation: + raise osv.except_osv(_('Error!'), _('You cannot unreconcile journal items if they has been generated by the \ + opening/closing fiscal year process.')) + return super(account_move_reconcile, self).unlink(cr, uid, ids, context=context) + + # Look in the line_id and line_partial_ids to ensure the partner is the same or empty + # on all lines. We allow that only for opening/closing period + def _check_same_partner(self, cr, uid, ids, context=None): + for reconcile in self.browse(cr, uid, ids, context=context): + move_lines = [] + if not reconcile.opening_reconciliation: + if reconcile.line_id: + first_partner = reconcile.line_id[0].partner_id.id + move_lines = reconcile.line_id + elif reconcile.line_partial_ids: + first_partner = reconcile.line_partial_ids[0].partner_id.id + move_lines = reconcile.line_partial_ids + if any([line.partner_id.id != first_partner for line in move_lines]): + return False + return True + _constraints = [ + (_check_same_partner, 'You can only reconcile journal items with the same partner.', ['line_id']), + ] + def reconcile_partial_check(self, cr, uid, ids, type='auto', context=None): total = 0.0 for rec in self.browse(cr, uid, ids, context=context): diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py index 4422537007f..e7e3f740067 100644 --- a/addons/account/account_bank_statement.py +++ b/addons/account/account_bank_statement.py @@ -311,7 +311,7 @@ class account_bank_statement(osv.osv): 'statement_id': st_line.statement_id.id, 'journal_id': st_line.statement_id.journal_id.id, 'period_id': st_line.statement_id.period_id.id, - 'currency_id': cur_id, + 'currency_id': amount_currency and cur_id, 'amount_currency': amount_currency, 'analytic_account_id': analytic_id, } diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py index 80a406bb0b7..6804d5116f1 100644 --- a/addons/account/account_invoice.py +++ b/addons/account/account_invoice.py @@ -1073,8 +1073,9 @@ class account_invoice(osv.osv): self.message_post(cr, uid, [inv_id], body=message, context=context) return True - def action_cancel(self, cr, uid, ids, *args): - context = {} # TODO: Use context from arguments + def action_cancel(self, cr, uid, ids, context=None): + if context is None: + context = {} account_move_obj = self.pool.get('account.move') invoices = self.read(cr, uid, ids, ['move_id', 'payment_ids']) move_ids = [] # ones that we will need to remove @@ -1244,12 +1245,15 @@ class account_invoice(osv.osv): ref = invoice.reference else: ref = self._convert_ref(cr, uid, invoice.number) + partner = invoice.partner_id + if partner.parent_id and not partner.is_company: + partner = partner.parent_id # Pay attention to the sign for both debit/credit AND amount_currency l1 = { 'debit': direction * pay_amount>0 and direction * pay_amount, 'credit': direction * pay_amount<0 and - direction * pay_amount, 'account_id': src_account_id, - 'partner_id': invoice.partner_id.id, + 'partner_id': partner.id, 'ref':ref, 'date': date, 'currency_id':currency_id, @@ -1260,7 +1264,7 @@ class account_invoice(osv.osv): 'debit': direction * pay_amount<0 and - direction * pay_amount, 'credit': direction * pay_amount>0 and direction * pay_amount, 'account_id': pay_account_id, - 'partner_id': invoice.partner_id.id, + 'partner_id': partner.id, 'ref':ref, 'date': date, 'currency_id':currency_id, diff --git a/addons/account/account_move_line.py b/addons/account/account_move_line.py index 00fad390282..3b2fe21d95b 100644 --- a/addons/account/account_move_line.py +++ b/addons/account/account_move_line.py @@ -620,12 +620,34 @@ class account_move_line(osv.osv): return False return True + def _check_currency_and_amount(self, cr, uid, ids, context=None): + for l in self.browse(cr, uid, ids, context=context): + if (l.amount_currency and not l.currency_id): + return False + return True + + def _check_currency_amount(self, cr, uid, ids, context=None): + for l in self.browse(cr, uid, ids, context=context): + if l.amount_currency: + if (l.amount_currency > 0.0 and l.credit > 0.0) or (l.amount_currency < 0.0 and l.debit > 0.0): + return False + return True + + def _check_currency_company(self, cr, uid, ids, context=None): + for l in self.browse(cr, uid, ids, context=context): + if l.currency_id.id == l.company_id.currency_id.id: + return False + return True + _constraints = [ (_check_no_view, 'You cannot create journal items on an account of type view.', ['account_id']), (_check_no_closed, 'You cannot create journal items on closed account.', ['account_id']), (_check_company_id, 'Account and Period must belong to the same company.', ['company_id']), (_check_date, 'The date of your Journal Entry is not in the defined period! You should change the date or remove this constraint from the journal.', ['date']), (_check_currency, 'The selected account of your Journal Entry forces to provide a secondary currency. You should remove the secondary currency on the account or select a multi-currency view on the journal.', ['currency_id']), + (_check_currency_and_amount, "You cannot create journal items with a secondary currency without recording both 'currency' and 'amount currency' field.", ['currency_id','amount_currency']), + (_check_currency_amount, 'The amount expressed in the secondary currency must be positif when journal item are debit and negatif when journal item are credit.', ['amount_currency']), + (_check_currency_company, "You cannot provide a secondary currency if it is the same than the company one." , ['currency_id']), ] #TODO: ONCHANGE_ACCOUNT_ID: set account_tax_id @@ -1111,7 +1133,7 @@ class account_move_line(osv.osv): 'has been confirmed.') % res[2]) return res - def _remove_move_reconcile(self, cr, uid, move_ids=None, context=None): + def _remove_move_reconcile(self, cr, uid, move_ids=None, opening_reconciliation=False, context=None): # Function remove move rencocile ids related with moves obj_move_line = self.pool.get('account.move.line') obj_move_rec = self.pool.get('account.move.reconcile') @@ -1126,6 +1148,8 @@ class account_move_line(osv.osv): unlink_ids += rec_ids unlink_ids += part_rec_ids if unlink_ids: + if opening_reconciliation: + obj_move_rec.write(cr, uid, unlink_ids, {'opening_reconciliation': False}) obj_move_rec.unlink(cr, uid, unlink_ids) return True diff --git a/addons/account/i18n/it.po b/addons/account/i18n/it.po index 449810103b2..460104fe4bc 100644 --- a/addons/account/i18n/it.po +++ b/addons/account/i18n/it.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-11-25 23:52+0000\n" -"Last-Translator: Sergio Corato \n" +"PO-Revision-Date: 2012-11-28 19:42+0000\n" +"Last-Translator: Davide Corio - agilebg.com \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: 2012-11-27 05:24+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account #: model:process.transition,name:account.process_transition_supplierreconcilepaid0 @@ -26,6 +26,7 @@ msgstr "Sistema di pagamento" msgid "" "An account fiscal position could be defined only once time on same accounts." msgstr "" +"Una posizione fiscale può essere definita una sola volta per lo stesso conto." #. module: account #: view:account.unreconcile:0 @@ -85,7 +86,7 @@ msgstr "Importa da fatture o pagamenti" #: code:addons/account/account_move_line.py:1303 #, python-format msgid "Bad Account!" -msgstr "" +msgstr "Conto Errato!" #. module: account #: view:account.move:0 @@ -242,7 +243,7 @@ msgstr "Sezionale: %s" #. module: account #: help:account.config.settings,code_digits:0 msgid "No. of digits to use for account code" -msgstr "" +msgstr "N. di cifre da usare per il codice conto" #. module: account #: help:account.analytic.journal,type:0 @@ -394,7 +395,7 @@ msgstr "Annulla Riconciliazione" #. module: account #: field:account.config.settings,module_account_budget:0 msgid "Budget management" -msgstr "" +msgstr "Gestione Budget" #. module: account #: view:product.template:0 @@ -416,7 +417,7 @@ msgstr "" #. module: account #: field:account.config.settings,group_multi_currency:0 msgid "Allow multi currencies" -msgstr "" +msgstr "Consenti valute multiple" #. module: account #: code:addons/account/account_invoice.py:73 @@ -437,12 +438,12 @@ msgstr "Giugno" #: code:addons/account/wizard/account_automatic_reconcile.py:148 #, python-format msgid "You must select accounts to reconcile." -msgstr "" +msgstr "Devi selezionare i conti da riconciliare." #. module: account #: help:account.config.settings,group_analytic_accounting:0 msgid "Allows you to use the analytic accounting." -msgstr "" +msgstr "Abilita la contabilità analitica." #. module: account #: model:ir.actions.act_window,help:account.action_account_moves_bank @@ -462,7 +463,7 @@ msgstr "" #: view:account.invoice.report:0 #: field:account.invoice.report,user_id:0 msgid "Salesperson" -msgstr "" +msgstr "Commerciale" #. module: account #: model:ir.model,name:account.model_account_tax_template @@ -685,12 +686,12 @@ msgstr "Il contabile conferma la registrazione" #: code:addons/account/static/src/xml/account_move_reconciliation.xml:31 #, python-format msgid "Nothing to reconcile" -msgstr "" +msgstr "Nulla da riconciliare" #. module: account #: field:account.config.settings,decimal_precision:0 msgid "Decimal precision on journal entries" -msgstr "" +msgstr "Accuratezza decimale nelle registrazioni sezionale" #. module: account #: selection:account.config.settings,period:0 @@ -725,6 +726,8 @@ msgid "" "Specified journal does not have any account move entries in draft state for " "this period." msgstr "" +"Il sezionale specificato non ha registrazioni in stato bozza per questo " +"periodo." #. module: account #: view:account.fiscal.position:0 diff --git a/addons/account/i18n/nb.po b/addons/account/i18n/nb.po index 73b1e82e244..0a8b6e23ad5 100644 --- a/addons/account/i18n/nb.po +++ b/addons/account/i18n/nb.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-11-27 20:06+0000\n" +"PO-Revision-Date: 2012-11-28 13:31+0000\n" "Last-Translator: Kaare Pettersen \n" "Language-Team: Norwegian Bokmal \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:40+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account #: model:process.transition,name:account.process_transition_supplierreconcilepaid0 @@ -5220,7 +5220,7 @@ msgstr "Fakturaer" #. module: account #: help:account.config.settings,expects_chart_of_accounts:0 msgid "Check this box if this company is a legal entity." -msgstr "" +msgstr "Kryss av denne boksen hvis dette selskapet er en juridisk enhet." #. module: account #: model:account.account.type,name:account.conf_account_type_chk @@ -5453,7 +5453,7 @@ msgstr "" #. module: account #: model:res.groups,name:account.group_account_manager msgid "Financial Manager" -msgstr "" +msgstr "Finansiell ledelse." #. module: account #: field:account.journal,group_invoice_lines:0 @@ -5469,7 +5469,7 @@ msgstr "Bevegelser" #: field:account.bank.statement,details_ids:0 #: view:account.journal:0 msgid "CashBox Lines" -msgstr "" +msgstr "Kontontboks linjer." #. module: account #: model:ir.model,name:account.model_account_vat_declaration @@ -5515,6 +5515,8 @@ msgid "" "There is no period defined for this date: %s.\n" "Please create one." msgstr "" +"Det er ingen periode definert for denne datoen:% s.\n" +"Vennligst opprette en." #. module: account #: help:account.tax,price_include:0 @@ -5616,7 +5618,7 @@ msgstr "" #: code:addons/account/account_invoice.py:1326 #, python-format msgid "%s paid." -msgstr "" +msgstr "%s Betalt." #. module: account #: view:account.financial.report:0 @@ -5759,7 +5761,7 @@ msgstr "Beregningskode (dersom type=kode)" #, python-format msgid "" "Cannot find a chart of accounts for this company, you should create one." -msgstr "" +msgstr "Kan ikke finne en kontoplan for dette selskapet, du bør opprette en." #. module: account #: selection:account.analytic.journal,type:0 @@ -5894,7 +5896,7 @@ msgstr "Inkludert i basisbeløpet" #. module: account #: field:account.invoice,supplier_invoice_number:0 msgid "Supplier Invoice Number" -msgstr "" +msgstr "Leverandør faktura nummer." #. module: account #: help:account.payment.term.line,days:0 @@ -5915,6 +5917,8 @@ msgstr "Beregning" #, python-format msgid "You can not add/modify entries in a closed period %s of journal %s." msgstr "" +"Du kan ikke legge til / endre oppføringer i en lukket periode% s av " +"tidsskriftet% s." #. module: account #: view:account.journal:0 @@ -5939,7 +5943,7 @@ msgstr "Periodestart" #. module: account #: model:account.account.type,name:account.account_type_asset_view1 msgid "Asset View" -msgstr "" +msgstr "Eiendel Vis." #. module: account #: model:ir.model,name:account.model_account_common_account_report @@ -6012,12 +6016,12 @@ msgstr "Årsavslutningsjournal" #. module: account #: view:account.invoice:0 msgid "Draft Refund " -msgstr "" +msgstr "Utkast refusjon. " #. module: account #: view:cash.box.in:0 msgid "Fill in this form if you put money in the cash register:" -msgstr "" +msgstr "Fyll ut dette skjemaet hvis du setter penger i kasse apparatet:" #. module: account #: field:account.payment.term.line,value_amount:0 @@ -6094,7 +6098,7 @@ msgstr "Kundefakturaer og kreditnotaer" #: code:addons/account/wizard/account_move_journal.py:161 #, python-format msgid "This period is already closed." -msgstr "" +msgstr "Denne perioden er allerede lukket." #. module: account #: field:account.analytic.line,amount_currency:0 @@ -6107,7 +6111,7 @@ msgstr "Valutabeløp" #. module: account #: selection:res.company,tax_calculation_rounding_method:0 msgid "Round per Line" -msgstr "" +msgstr "Runde per. linje." #. module: account #: model:ir.actions.act_window,name:account.action_view_move_line @@ -6168,7 +6172,7 @@ msgstr "" #: code:addons/account/wizard/account_report_aged_partner_balance.py:56 #, python-format msgid "You must set a period length greater than 0." -msgstr "" +msgstr "Du må angi en periode lengde større enn 0." #. module: account #: view:account.fiscal.position.template:0 @@ -6179,7 +6183,7 @@ msgstr "Regnskapsstatus Mal" #. module: account #: view:account.invoice:0 msgid "Draft Refund" -msgstr "" +msgstr "Utkast refusjon." #. module: account #: view:account.analytic.chart:0 @@ -6216,7 +6220,7 @@ msgstr "Avstem med nedskriving" #. module: account #: constraint:account.move.line:0 msgid "You cannot create journal items on an account of type view." -msgstr "" +msgstr "Du kan ikke opprette journal elementer på en konto av typen visning." #. module: account #: selection:account.payment.term.line,value:0 @@ -6291,7 +6295,7 @@ msgstr "Flytt navn (id): %s (%s)" #. module: account #: view:account.move.journal:0 msgid "Standard Entries" -msgstr "" +msgstr "Standard oppføringer." #. module: account #: view:account.move.line.reconcile:0 @@ -6364,7 +6368,7 @@ msgstr "Avgiftskartlegging" #. module: account #: view:account.config.settings:0 msgid "Select Company" -msgstr "" +msgstr "Velg Firma." #. module: account #: model:ir.actions.act_window,name:account.action_account_state_open @@ -6438,7 +6442,7 @@ msgstr "Antall linjer" #. module: account #: view:account.invoice:0 msgid "(update)" -msgstr "" +msgstr "(Oppdatering)" #. module: account #: field:account.aged.trial.balance,filter:0 @@ -6480,7 +6484,7 @@ msgstr "" #. module: account #: field:account.journal,loss_account_id:0 msgid "Loss Account" -msgstr "" +msgstr "Tap konto." #. module: account #: field:account.tax,account_collected_id:0 @@ -6742,7 +6746,7 @@ msgstr "" #. module: account #: view:account.config.settings:0 msgid "Bank & Cash" -msgstr "" +msgstr "Bank og kontant." #. module: account #: help:account.fiscalyear.close.state,fy_id:0 @@ -6828,7 +6832,7 @@ msgstr "Fordring" #. module: account #: constraint:account.move.line:0 msgid "You cannot create journal items on closed account." -msgstr "" +msgstr "Du kan ikke opprette journal enmer i en lukker konto." #. module: account #: code:addons/account/account_invoice.py:594 diff --git a/addons/account/i18n/nl.po b/addons/account/i18n/nl.po index 51633c9e660..365e5f20596 100644 --- a/addons/account/i18n/nl.po +++ b/addons/account/i18n/nl.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-11-25 13:43+0000\n" -"Last-Translator: Erwin van der Ploeg (Endian Solutions) \n" +"PO-Revision-Date: 2012-11-28 21:53+0000\n" +"Last-Translator: Thomas Pot (Open2bizz) \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: 2012-11-26 04:41+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #, python-format #~ msgid "Integrity Error !" @@ -155,6 +155,19 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" Klik om de zichtbare kolommen van een dagboek te " +"specificeren.\n" +"

\n" +" Dagboekweergaves bepalen de manier waarop boekingen \n" +" ingevoerd kunnen worden. Selecteer de velden welke zichtbaar " +"\n" +" moeten zijn en bepaald de volgorde daarvan.\n" +"

\n" +" In de dagboekinstellingen kan bepaald worden welke gegevens\n" +" zichtbaar zijn bij boekingen in het betreffende dagboek.\n" +"

\n" +" " #. module: account #: help:account.payment.term,active:0 @@ -205,6 +218,8 @@ msgid "" "which is set after generating opening entries from 'Generate Opening " "Entries'." msgstr "" +"U dient het 'Jaarafsluiting dagboek' te definiëren voor het fiscale jaar, " +"nadat u een openingsbalans heeft gemaakt" #. module: account #: field:account.fiscal.position.account,account_src_id:0 @@ -223,6 +238,15 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" klik hier om een fiscale periode toe te voegen.\n" +"

\n" +" Een fiscale periode is vaak een maand of een kwartaal. " +"Normaal\n" +" zal dit gelijk zijn met de periode van uw Belasting " +"aangifte.\n" +"

\n" +" " #. module: account #: model:ir.actions.act_window,name:account.action_view_created_invoice_dashboard @@ -243,7 +267,7 @@ msgstr "Dagboek: %s" #. module: account #: help:account.config.settings,code_digits:0 msgid "No. of digits to use for account code" -msgstr "" +msgstr "Aantal cijfers voor de rekening code" #. module: account #: help:account.analytic.journal,type:0 @@ -263,6 +287,9 @@ msgid "" "lines for invoices. Leave empty if you don't want to use an analytic account " "on the invoice tax lines by default." msgstr "" +"Geef de kostenplaats welke standaard gebruikt moet worden bij BTW factuur " +"regels. Als u dit veld niet invuld, wordt er standaard geen kostenplaats " +"gebruikt." #. module: account #: model:ir.actions.act_window,name:account.action_account_tax_template_form @@ -298,7 +325,7 @@ msgstr "Belgische overzichten" #. module: account #: model:account.account.type,name:account.account_type_income_view1 msgid "Income View" -msgstr "" +msgstr "View opbrengsten" #. module: account #: help:account.account,user_type:0 @@ -314,7 +341,7 @@ msgstr "" #. module: account #: field:account.config.settings,sale_refund_sequence_next:0 msgid "Next credit note number" -msgstr "" +msgstr "Volgend nummer creditnota" #. module: account #: help:account.config.settings,module_account_voucher:0 @@ -323,6 +350,10 @@ msgid "" "sales, purchase, expense, contra, etc.\n" " This installs the module account_voucher." msgstr "" +"Deze module bevat alle voorzieningen voor registratie van " +"(bank)afschriften.\n" +" " +"hiermee installeert u de module 'account_voucher'" #. module: account #: model:ir.actions.act_window,name:account.action_account_use_model_create_entry @@ -361,6 +392,18 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" Klik hier om een creditnota te maken. \n" +"

\n" +" Een creditnota is een factuur, waarbij u een bestaande " +"factuur volledig of gedeeltelijk \n" +" crediteert.\n" +"

\n" +" In plaats van handmatig kunt u hiermee een creditnota maken " +"\n" +" direct vanaf de originele factuur.\n" +"

\n" +" " #. module: account #: field:account.journal.column,field:0 @@ -426,12 +469,12 @@ msgstr "Juni" #: code:addons/account/wizard/account_automatic_reconcile.py:148 #, python-format msgid "You must select accounts to reconcile." -msgstr "" +msgstr "Selecteer de grootboekrekeningen die afgeletterd moeten worden." #. module: account #: help:account.config.settings,group_analytic_accounting:0 msgid "Allows you to use the analytic accounting." -msgstr "" +msgstr "stelt u in staat kostenplaatsen te gebruiken" #. module: account #: model:ir.actions.act_window,help:account.action_account_moves_bank @@ -531,6 +574,18 @@ msgid "" "should choose 'Round per line' because you certainly want the sum of your " "tax-included line subtotals to be equal to the total amount with taxes." msgstr "" +"Als u 'afronden per regel' selecteert: voor elke BTW rekening , wordt het " +"BTW bedrag eerst berekend en afgerond voor elke factuur regel en vervolgens " +"worden deze afgeronde bedragen opgeteld, wat leidt tot het totale bedrag " +"voor deze belasting. \r\n" +"\r\n" +"Als u 'afronden globaal' selecteert: voor elke BTW rekening wordt het BTW " +"bedrag berekend voor elke factuur regel. vervolgens zullen deze bedragen " +"worden opgeteld en uiteindelijk wordt dit totale BTW bedrag afgerond. \r\n" +"\r\n" +"Als u verkoopt met BTW inbegrepen, moet u kiezen voor 'afronden per regel', " +"omdat U zeker wil zijn dat de subtotalen van \r\n" +"uw (BTW inbegrepen) regels gelijk zijn aan het totale bedrag met BTW." #. module: account #: model:ir.model,name:account.model_wizard_multi_charts_accounts @@ -600,7 +655,7 @@ msgstr "Bovenliggend doel" #. module: account #: help:account.invoice.line,sequence:0 msgid "Gives the sequence of this line when displaying the invoice." -msgstr "" +msgstr "Geeft de volgorde van de factuur regel bij het tonen van de factuur" #. module: account #: field:account.bank.statement,account_id:0 @@ -679,7 +734,7 @@ msgstr "Niets af te letteren" #. module: account #: field:account.config.settings,decimal_precision:0 msgid "Decimal precision on journal entries" -msgstr "" +msgstr "Aantal decimalen van journaalposten" #. module: account #: selection:account.config.settings,period:0 @@ -713,7 +768,7 @@ msgstr "Rapport waarde" msgid "" "Specified journal does not have any account move entries in draft state for " "this period." -msgstr "" +msgstr "Geselecteerd dagboek heeft geen 'concept'boekingen" #. module: account #: view:account.fiscal.position:0 @@ -768,12 +823,16 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" Geen journaalposten gevonden.\n" +"

\n" +" " #. module: account #: code:addons/account/account.py:1606 #, python-format msgid "Cannot create move with currency different from .." -msgstr "" +msgstr "U kunt geen boeking doen met een andere valuta dan ..." #. module: account #: model:email.template,report_name:account.email_template_edi_invoice diff --git a/addons/account/i18n/zh_CN.po b/addons/account/i18n/zh_CN.po index 55d61f5c611..c95e3919012 100644 --- a/addons/account/i18n/zh_CN.po +++ b/addons/account/i18n/zh_CN.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-11-01 08:44+0000\n" +"PO-Revision-Date: 2012-11-28 07:22+0000\n" "Last-Translator: ccdos \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: 2012-11-25 06:01+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account #: model:process.transition,name:account.process_transition_supplierreconcilepaid0 @@ -776,7 +776,7 @@ msgstr "账簿的会计期间" #: constraint:account.move:0 msgid "" "You cannot create more than one move per period on a centralized journal." -msgstr "" +msgstr "在每个会计期间,你不可以创建1个以上的总分类凭证" #. module: account #: help:account.tax,account_analytic_paid_id:0 @@ -784,7 +784,7 @@ msgid "" "Set the analytic account that will be used by default on the invoice tax " "lines for refunds. Leave empty if you don't want to use an analytic account " "on the invoice tax lines by default." -msgstr "" +msgstr "设置辅助核算项,用于退款时发票上默认税科目。如果默认不要在发票的税上 使用辅助核算项,留空。" #. module: account #: view:account.account:0 @@ -6098,7 +6098,7 @@ msgstr "固定金额" #: code:addons/account/account_move_line.py:1151 #, python-format msgid "You cannot change the tax, you should remove and recreate lines." -msgstr "" +msgstr "你不能修改税,你需要删去并且重建这一行" #. module: account #: model:ir.actions.act_window,name:account.action_account_automatic_reconcile diff --git a/addons/account/wizard/account_fiscalyear_close.py b/addons/account/wizard/account_fiscalyear_close.py index dbf815d5218..e11b4dcd34b 100644 --- a/addons/account/wizard/account_fiscalyear_close.py +++ b/addons/account/wizard/account_fiscalyear_close.py @@ -60,7 +60,7 @@ class account_fiscalyear_close(osv.osv_memory): cr.execute('select distinct(company_id) from account_move_line where id in %s',(tuple(ids),)) if len(cr.fetchall()) > 1: raise osv.except_osv(_('Warning!'), _('The entries to reconcile should belong to the same company.')) - r_id = self.pool.get('account.move.reconcile').create(cr, uid, {'type': 'auto'}) + r_id = self.pool.get('account.move.reconcile').create(cr, uid, {'type': 'auto', 'opening_reconciliation': True}) cr.execute('update account_move_line set reconcile_id = %s where id in %s',(r_id, tuple(ids),)) return r_id @@ -107,7 +107,7 @@ class account_fiscalyear_close(osv.osv_memory): ('journal_id', '=', new_journal.id), ('period_id', '=', period.id)]) if move_ids: move_line_ids = obj_acc_move_line.search(cr, uid, [('move_id', 'in', move_ids)]) - obj_acc_move_line._remove_move_reconcile(cr, uid, move_line_ids, context=context) + obj_acc_move_line._remove_move_reconcile(cr, uid, move_line_ids, opening_reconciliation=True, context=context) obj_acc_move_line.unlink(cr, uid, move_line_ids, context=context) obj_acc_move.unlink(cr, uid, move_ids, context=context) diff --git a/addons/account_accountant/i18n/it.po b/addons/account_accountant/i18n/it.po index db12ba122d0..2436e754e50 100644 --- a/addons/account_accountant/i18n/it.po +++ b/addons/account_accountant/i18n/it.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:51+0000\n" -"PO-Revision-Date: 2011-01-17 07:34+0000\n" -"Last-Translator: Nicola Riolini - Micronaet \n" +"PO-Revision-Date: 2012-11-28 19:50+0000\n" +"Last-Translator: Davide Corio - agilebg.com \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:28+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_accountant #: model:ir.actions.client,name:account_accountant.action_client_account_menu msgid "Open Accounting Menu" -msgstr "" +msgstr "Apri Menù Contabilità" #~ msgid "Accountant" #~ msgstr "Contabile" diff --git a/addons/account_analytic_analysis/account_analytic_analysis.py b/addons/account_analytic_analysis/account_analytic_analysis.py index 06e2fd2bb18..466db63e61e 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis.py +++ b/addons/account_analytic_analysis/account_analytic_analysis.py @@ -75,15 +75,21 @@ class account_analytic_account(osv.osv): res[id][f] = 0.0 res2 = {} for account in accounts: - cr.execute("SELECT product_id, user_id, to_invoice, sum(unit_amount), product_uom_id, name " \ - "FROM account_analytic_line as line " \ - "WHERE account_id = %s " \ - "AND invoice_id is NULL AND to_invoice IS NOT NULL " \ - "GROUP BY product_id, user_id, to_invoice, product_uom_id, name", (account.id,)) + cr.execute(""" + SELECT product_id, sum(amount), user_id, to_invoice, sum(unit_amount), product_uom_id, line.name + FROM account_analytic_line line + LEFT JOIN account_analytic_journal journal ON (journal.id = line.journal_id) + WHERE account_id = %s + AND journal.type != 'purchase' + AND invoice_id IS NULL + AND to_invoice IS NOT NULL + GROUP BY product_id, user_id, to_invoice, product_uom_id, line.name""", (account.id,)) res[account.id][f] = 0.0 - for product_id, user_id, factor_id, qty, uom, line_name in cr.fetchall(): - price = self.pool.get('account.analytic.line')._get_invoice_price(cr, uid, account, product_id, user_id, qty, context) + for product_id, price, user_id, factor_id, qty, uom, line_name in cr.fetchall(): + price = -price + if product_id: + price = self.pool.get('account.analytic.line')._get_invoice_price(cr, uid, account, product_id, user_id, qty, context) factor = self.pool.get('hr_timesheet_invoice.factor').browse(cr, uid, factor_id, context=context) res[account.id][f] += price * qty * (100-factor.factor or 0.0) / 100.0 diff --git a/addons/account_analytic_analysis/i18n/es_MX.po b/addons/account_analytic_analysis/i18n/es_MX.po index bf7c124bb91..4c6bde2bcf6 100644 --- a/addons/account_analytic_analysis/i18n/es_MX.po +++ b/addons/account_analytic_analysis/i18n/es_MX.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_analytic_analysis #: view:account.analytic.account:0 diff --git a/addons/account_analytic_analysis/i18n/nb.po b/addons/account_analytic_analysis/i18n/nb.po index fef85e92608..4a446cf3fb7 100644 --- a/addons/account_analytic_analysis/i18n/nb.po +++ b/addons/account_analytic_analysis/i18n/nb.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2011-08-23 11:12+0000\n" -"Last-Translator: Rolv Råen \n" +"PO-Revision-Date: 2012-11-28 13:42+0000\n" +"Last-Translator: Kaare Pettersen \n" "Language-Team: Norwegian Bokmal \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:06+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "No order to invoice, create" -msgstr "" +msgstr "Ingen ordre til å fakturere, opprett." #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -30,12 +30,12 @@ msgstr "Grupper etter ..." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "To Invoice" -msgstr "" +msgstr "Å fakturere." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Remaining" -msgstr "" +msgstr "Gjenstår." #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -74,7 +74,7 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "⇒ Invoice" -msgstr "" +msgstr "⇒ Faktura." #. module: account_analytic_analysis #: field:account.analytic.account,ca_invoiced:0 @@ -109,12 +109,12 @@ msgstr "Beregnet ved hjelp av formelen: Fakturert beløp / Total tid" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Contracts not assigned" -msgstr "" +msgstr "Kontrakter som ikke er tilordnet." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Partner" -msgstr "" +msgstr "Partner." #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -162,7 +162,7 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Expected" -msgstr "" +msgstr "Forventet." #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -185,7 +185,7 @@ msgstr "Fakturert tid" #. module: account_analytic_analysis #: constraint:account.analytic.account:0 msgid "Error! You cannot create recursive analytic accounts." -msgstr "" +msgstr "Feil! Du kan ikke opprette rekursive analytiske kontoer." #. module: account_analytic_analysis #: field:account.analytic.account,real_margin_rate:0 @@ -209,18 +209,18 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Nothing to invoice, create" -msgstr "" +msgstr "Ikke noe å fakturere, opprett." #. module: account_analytic_analysis #: model:ir.actions.act_window,name:account_analytic_analysis.template_of_contract_action #: model:ir.ui.menu,name:account_analytic_analysis.menu_template_of_contract_action msgid "Template of Contract" -msgstr "" +msgstr "Mal av kontrakt." #. module: account_analytic_analysis #: field:account.analytic.account,hours_quantity:0 msgid "Total Worked Time" -msgstr "" +msgstr "Totalt arbeids tid." #. module: account_analytic_analysis #: field:account.analytic.account,real_margin:0 @@ -240,7 +240,7 @@ msgstr "Beregnet etter formelen: (Virkelig margin / Totale kostnader) * 100" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "or view" -msgstr "" +msgstr "Eller vis." #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -257,7 +257,7 @@ msgstr "Måned" #: model:ir.actions.act_window,name:account_analytic_analysis.action_hr_tree_invoiced_all #: model:ir.ui.menu,name:account_analytic_analysis.menu_action_hr_tree_invoiced_all msgid "Time & Materials to Invoice" -msgstr "" +msgstr "Tid og materialer til å fakturere." #. module: account_analytic_analysis #: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_overdue_all @@ -268,7 +268,7 @@ msgstr "Kontrakter" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Start Date" -msgstr "" +msgstr "Startdato." #. module: account_analytic_analysis #: help:account.analytic.account,total_cost:0 @@ -296,13 +296,13 @@ msgstr "Ventende kontrakter til å fornye med dine kunder" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Timesheets" -msgstr "" +msgstr "Timelister." #. module: account_analytic_analysis #: code:addons/account_analytic_analysis/account_analytic_analysis.py:452 #, python-format msgid "Sale Order Lines of %s" -msgstr "" +msgstr "Salgs ordre linjer av %s." #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -317,7 +317,7 @@ msgstr "Forfalt Antall" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Status" -msgstr "" +msgstr "Status." #. module: account_analytic_analysis #: field:account.analytic.account,ca_theorical:0 @@ -339,7 +339,7 @@ msgstr "" #. module: account_analytic_analysis #: model:ir.actions.act_window,name:account_analytic_analysis.action_sales_order msgid "Sales Orders" -msgstr "" +msgstr "Salgsordre." #. module: account_analytic_analysis #: help:account.analytic.account,last_invoice_date:0 @@ -391,7 +391,7 @@ msgstr "Kontrakt" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Invoiced" -msgstr "" +msgstr "Fakturert." #. module: account_analytic_analysis #: help:account.analytic.account,hours_qtt_invoiced:0 @@ -426,12 +426,12 @@ msgstr "" #. module: account_analytic_analysis #: field:account.analytic.account,toinvoice_total:0 msgid "Total to Invoice" -msgstr "" +msgstr "Totalt å fakturere." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Sale Orders" -msgstr "" +msgstr "Salgs ordre." #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -441,7 +441,7 @@ msgstr "Åpen" #. module: account_analytic_analysis #: field:account.analytic.account,invoiced_total:0 msgid "Total Invoiced" -msgstr "" +msgstr "Totalt fakturert." #. module: account_analytic_analysis #: help:account.analytic.account,remaining_ca:0 @@ -451,7 +451,7 @@ msgstr "Beregnet med formelen: Maks. fakturapris - fakturert beløp" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Responsible" -msgstr "" +msgstr "Ansvarlig." #. module: account_analytic_analysis #: field:account.analytic.account,last_invoice_date:0 @@ -504,7 +504,7 @@ msgstr "Kontrakter til å fornye" #. module: account_analytic_analysis #: help:account.analytic.account,toinvoice_total:0 msgid " Sum of everything that could be invoiced for this contract." -msgstr "" +msgstr " Summen av alt som kunne blitt fakturert for denne kontrakten." #. module: account_analytic_analysis #: field:account.analytic.account,theorical_margin:0 @@ -514,7 +514,7 @@ msgstr "Teoretisk margin" #. module: account_analytic_analysis #: field:account.analytic.account,remaining_total:0 msgid "Total Remaining" -msgstr "" +msgstr "Totalt gjenværende." #. module: account_analytic_analysis #: help:account.analytic.account,real_margin:0 @@ -529,7 +529,7 @@ msgstr "" #. module: account_analytic_analysis #: field:account.analytic.account,fix_price_invoices:0 msgid "Fixed Price" -msgstr "" +msgstr "Fikset pris." #. module: account_analytic_analysis #: help:account.analytic.account,last_worked_date:0 diff --git a/addons/account_analytic_analysis/i18n/zh_CN.po b/addons/account_analytic_analysis/i18n/zh_CN.po index a331655d94c..51c94655542 100644 --- a/addons/account_analytic_analysis/i18n/zh_CN.po +++ b/addons/account_analytic_analysis/i18n/zh_CN.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-09 02:53+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-29 02:09+0000\n" +"Last-Translator: digitalsatori \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: 2012-11-25 06:06+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -29,12 +29,12 @@ msgstr "分组..." #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "To Invoice" -msgstr "" +msgstr "开票" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Remaining" -msgstr "" +msgstr "剩余" #. module: account_analytic_analysis #: view:account.analytic.account:0 @@ -111,7 +111,7 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Partner" -msgstr "" +msgstr "业务伙伴" #. module: account_analytic_analysis #: view:account.analytic.account:0 diff --git a/addons/account_analytic_default/i18n/es_MX.po b/addons/account_analytic_default/i18n/es_MX.po index b49ba52c5ec..3e6c5ce6837 100644 --- a/addons/account_analytic_default/i18n/es_MX.po +++ b/addons/account_analytic_default/i18n/es_MX.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_analytic_default #: model:ir.actions.act_window,name:account_analytic_default.analytic_rule_action_partner diff --git a/addons/account_analytic_plans/i18n/es_MX.po b/addons/account_analytic_plans/i18n/es_MX.po index e2f05df843c..0e6ac25281b 100644 --- a/addons/account_analytic_plans/i18n/es_MX.po +++ b/addons/account_analytic_plans/i18n/es_MX.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_analytic_plans #: view:analytic.plan.create.model:0 diff --git a/addons/account_analytic_plans/i18n/zh_CN.po b/addons/account_analytic_plans/i18n/zh_CN.po index 3b59a5409be..80ab2d4a4c8 100644 --- a/addons/account_analytic_plans/i18n/zh_CN.po +++ b/addons/account_analytic_plans/i18n/zh_CN.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-08 04:10+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 07:38+0000\n" +"Last-Translator: ccdos \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: 2012-11-25 06:07+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_analytic_plans #: view:analytic.plan.create.model:0 @@ -95,7 +95,7 @@ msgstr "项 ID" #: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:41 #, python-format msgid "Error!" -msgstr "" +msgstr "错误!" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 @@ -136,7 +136,7 @@ msgstr "BBA传输结构有误!" #: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:41 #, python-format msgid "There is no analytic plan defined." -msgstr "" +msgstr "没有辅助核算计划定义" #. module: account_analytic_plans #: constraint:account.move.line:0 @@ -187,7 +187,7 @@ msgstr "百分比" #: code:addons/account_analytic_plans/wizard/account_crossovered_analytic.py:61 #, python-format msgid "There are no analytic lines related to account %s." -msgstr "" +msgstr "没有辅助核算行关联到科目%s." #. module: account_analytic_plans #: field:account.analytic.plan.instance.line,analytic_account_id:0 @@ -229,7 +229,7 @@ msgstr "辅助核算方案明细" #. module: account_analytic_plans #: constraint:account.move.line:0 msgid "Account and Period must belong to the same company." -msgstr "" +msgstr "科目和会计周期必须属于同一个公司" #. module: account_analytic_plans #: constraint:account.bank.statement:0 @@ -257,7 +257,7 @@ msgstr "币别" #. module: account_analytic_plans #: constraint:account.analytic.line:0 msgid "You cannot create analytic line on view account." -msgstr "" +msgstr "你不能视图科目上面创建辅助核算行。" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 @@ -272,7 +272,7 @@ msgstr "项5 ID" #. module: account_analytic_plans #: constraint:account.move.line:0 msgid "You cannot create journal items on closed account." -msgstr "" +msgstr "你不能在关闭的科目创建账目项目" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_account_analytic_plan_instance_line @@ -294,7 +294,7 @@ msgstr "日期到" #: code:addons/account_analytic_plans/account_analytic_plans.py:486 #, python-format msgid "You have to define an analytic journal on the '%s' journal." -msgstr "" +msgstr "你必须在'%s' 分类账定义一个辅助核算分类账" #. module: account_analytic_plans #: field:account.crossovered.analytic,empty_line:0 @@ -408,7 +408,7 @@ msgstr "项4 ID" #: code:addons/account_analytic_plans/account_analytic_plans.py:234 #, python-format msgid "The total should be between %s and %s." -msgstr "" +msgstr "总计在 %s 和 %s 之间。" #. module: account_analytic_plans #: view:account.analytic.plan.instance.line:0 @@ -461,7 +461,7 @@ msgstr "账簿" msgid "" "Configuration error!\n" "The currency chosen should be shared by the default accounts too." -msgstr "" +msgstr "配置错误" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_analytic_plan_create_model @@ -481,19 +481,19 @@ msgstr "分摊模型" #. module: account_analytic_plans #: constraint:account.move.line:0 msgid "You cannot create journal items on an account of type view." -msgstr "" +msgstr "你不能在视图类型的科目创建账目项目" #. module: account_analytic_plans #: code:addons/account_analytic_plans/wizard/account_crossovered_analytic.py:61 #, python-format msgid "User Error!" -msgstr "" +msgstr "用户错误!" #. module: account_analytic_plans #: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:38 #, python-format msgid "Please put a name and a code before saving the model." -msgstr "" +msgstr "保存模型前请输入名称和代码" #. module: account_analytic_plans #: field:account.crossovered.analytic,date1:0 @@ -505,7 +505,7 @@ msgstr "开始日期" msgid "" "The amount of the voucher must be the same amount as the one on the " "statement line." -msgstr "" +msgstr "单据的金额必须跟对账单其中一行金额相同。" #. module: account_analytic_plans #: field:account.analytic.plan.line,sequence:0 @@ -521,13 +521,13 @@ msgstr "每个公司的账簿名称必须唯一!" #: view:account.crossovered.analytic:0 #: view:analytic.plan.create.model:0 msgid "or" -msgstr "" +msgstr "or" #. module: account_analytic_plans #: code:addons/account_analytic_plans/account_analytic_plans.py:221 #, python-format msgid "A model with this name and code already exists." -msgstr "" +msgstr "这个名称和代码的模型已经存在。" #~ msgid "Select Information" #~ msgstr "选择信息" diff --git a/addons/account_anglo_saxon/i18n/es_MX.po b/addons/account_anglo_saxon/i18n/es_MX.po index ae8e2eb2dee..48ca0408128 100644 --- a/addons/account_anglo_saxon/i18n/es_MX.po +++ b/addons/account_anglo_saxon/i18n/es_MX.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_anglo_saxon #: sql_constraint:purchase.order:0 diff --git a/addons/account_asset/i18n/es_MX.po b/addons/account_asset/i18n/es_MX.po index 7684caf86dc..5caeb5db1b1 100644 --- a/addons/account_asset/i18n/es_MX.po +++ b/addons/account_asset/i18n/es_MX.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_asset #: view:account.asset.asset:0 diff --git a/addons/account_bank_statement_extensions/i18n/es_MX.po b/addons/account_bank_statement_extensions/i18n/es_MX.po index 2abefb1cd5d..20e10de3af1 100644 --- a/addons/account_bank_statement_extensions/i18n/es_MX.po +++ b/addons/account_bank_statement_extensions/i18n/es_MX.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_bank_statement_extensions #: view:account.bank.statement.line:0 diff --git a/addons/account_bank_statement_extensions/i18n/zh_CN.po b/addons/account_bank_statement_extensions/i18n/zh_CN.po index cff59afe339..9ff4a317ead 100644 --- a/addons/account_bank_statement_extensions/i18n/zh_CN.po +++ b/addons/account_bank_statement_extensions/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-09 14:55+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 06:46+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:32+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_bank_statement_extensions #: view:account.bank.statement.line:0 @@ -59,7 +59,7 @@ msgstr "取消所选的表行" #. module: account_bank_statement_extensions #: field:account.bank.statement.line,val_date:0 msgid "Value Date" -msgstr "" +msgstr "起息日" #. module: account_bank_statement_extensions #: constraint:res.partner.bank:0 @@ -109,7 +109,7 @@ msgstr "批量付款信息" #. module: account_bank_statement_extensions #: field:account.bank.statement.line,state:0 msgid "Status" -msgstr "" +msgstr "状态" #. module: account_bank_statement_extensions #: code:addons/account_bank_statement_extensions/account_bank_statement.py:129 @@ -117,12 +117,12 @@ msgstr "" msgid "" "Delete operation not allowed. Please go to the associated bank " "statement in order to delete and/or modify bank statement line." -msgstr "" +msgstr "不允许删除。为了删除和(或)修改银行对账单行,请到关联的银行对账单操作。" #. module: account_bank_statement_extensions #: view:confirm.statement.line:0 msgid "or" -msgstr "" +msgstr "or" #. module: account_bank_statement_extensions #: view:confirm.statement.line:0 @@ -234,7 +234,7 @@ msgstr "手工" #. module: account_bank_statement_extensions #: view:account.bank.statement.line:0 msgid "Bank Transaction" -msgstr "" +msgstr "银行交易" #. module: account_bank_statement_extensions #: view:account.bank.statement.line:0 @@ -303,7 +303,7 @@ msgstr "编号" msgid "" "The amount of the voucher must be the same amount as the one on the " "statement line." -msgstr "" +msgstr "单据的金额必须跟对账单其中一行金额相同。" #. module: account_bank_statement_extensions #: field:account.bank.statement.line,counterparty_name:0 @@ -351,7 +351,7 @@ msgstr "银行单据行" #: code:addons/account_bank_statement_extensions/account_bank_statement.py:129 #, python-format msgid "Warning!" -msgstr "" +msgstr "警告!" #. module: account_bank_statement_extensions #: view:account.bank.statement.line.global:0 diff --git a/addons/account_budget/i18n/es_MX.po b/addons/account_budget/i18n/es_MX.po index 556834afe50..a8db4b573ea 100644 --- a/addons/account_budget/i18n/es_MX.po +++ b/addons/account_budget/i18n/es_MX.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_budget #: view:account.budget.analytic:0 diff --git a/addons/account_budget/i18n/lt.po b/addons/account_budget/i18n/lt.po index a3a3d2c11fc..3b90c1fdf50 100644 --- a/addons/account_budget/i18n/lt.po +++ b/addons/account_budget/i18n/lt.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2010-09-09 07:05+0000\n" -"Last-Translator: Fabien (Open ERP) \n" +"PO-Revision-Date: 2012-11-28 16:01+0000\n" +"Last-Translator: Andrius Preimantas \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: 2012-11-25 06:16+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_budget #: view:account.budget.analytic:0 @@ -27,7 +27,7 @@ msgstr "" #. module: account_budget #: field:crossovered.budget,creating_user_id:0 msgid "Responsible User" -msgstr "" +msgstr "Atsakingas naudotojas" #. module: account_budget #: selection:crossovered.budget,state:0 @@ -38,12 +38,12 @@ msgstr "Patvirtinta" #: model:ir.actions.act_window,name:account_budget.open_budget_post_form #: model:ir.ui.menu,name:account_budget.menu_budget_post_form msgid "Budgetary Positions" -msgstr "" +msgstr "Biudžeto pozicija" #. module: account_budget #: report:account.budget:0 msgid "Printed at:" -msgstr "" +msgstr "Atspausdinta:" #. module: account_budget #: view:crossovered.budget:0 @@ -53,17 +53,17 @@ msgstr "Patvirtinti" #. module: account_budget #: field:crossovered.budget,validating_user_id:0 msgid "Validate User" -msgstr "" +msgstr "Patvirtinti vartotoją" #. module: account_budget #: model:ir.actions.act_window,name:account_budget.action_account_budget_crossvered_summary_report msgid "Print Summary" -msgstr "" +msgstr "Spausdinti suvestinę" #. module: account_budget #: field:crossovered.budget.lines,paid_date:0 msgid "Paid Date" -msgstr "" +msgstr "Apmokėjimo data" #. module: account_budget #: field:account.budget.analytic,date_to:0 @@ -82,7 +82,7 @@ msgstr "Juodraštis" #. module: account_budget #: report:account.budget:0 msgid "at" -msgstr "" +msgstr "ties" #. module: account_budget #: view:account.budget.report:0 @@ -104,12 +104,12 @@ msgstr "" #. module: account_budget #: selection:crossovered.budget,state:0 msgid "Validated" -msgstr "" +msgstr "Patvirtintas" #. module: account_budget #: field:crossovered.budget.lines,percentage:0 msgid "Percentage" -msgstr "" +msgstr "Procentai" #. module: account_budget #: field:crossovered.budget,state:0 @@ -120,7 +120,7 @@ msgstr "Būsena" #: code:addons/account_budget/account_budget.py:119 #, python-format msgid "The Budget '%s' has no accounts!" -msgstr "" +msgstr "Biudžetui '%s' nepriskirtos sąskaitos!" #. module: account_budget #: report:account.budget:0 @@ -131,24 +131,24 @@ msgstr "Aprašas" #. module: account_budget #: report:crossovered.budget.report:0 msgid "Currency" -msgstr "" +msgstr "Valiuta" #. module: account_budget #: report:crossovered.budget.report:0 msgid "Total :" -msgstr "" +msgstr "Iš viso:" #. module: account_budget #: constraint:account.analytic.account:0 msgid "Error! You cannot create recursive analytic accounts." -msgstr "" +msgstr "Klaida! Negalima kurti rekursivių analitinių sąskaitų" #. module: account_budget #: field:account.budget.post,company_id:0 #: field:crossovered.budget,company_id:0 #: field:crossovered.budget.lines,company_id:0 msgid "Company" -msgstr "" +msgstr "Įmonė" #. module: account_budget #: report:crossovered.budget.report:0 @@ -158,20 +158,20 @@ msgstr "iki" #. module: account_budget #: view:crossovered.budget:0 msgid "Reset to Draft" -msgstr "" +msgstr "Atstatyti į juodraštį" #. module: account_budget #: view:account.budget.post:0 #: view:crossovered.budget:0 #: field:crossovered.budget.lines,planned_amount:0 msgid "Planned Amount" -msgstr "" +msgstr "Suplanuota suma" #. module: account_budget #: report:account.budget:0 #: report:crossovered.budget.report:0 msgid "Perc(%)" -msgstr "" +msgstr "Procentai (%)" #. module: account_budget #: view:crossovered.budget:0 @@ -183,7 +183,7 @@ msgstr "Atlikta" #: report:account.budget:0 #: report:crossovered.budget.report:0 msgid "Practical Amt" -msgstr "" +msgstr "Praktinė suma" #. module: account_budget #: view:account.analytic.account:0 @@ -191,7 +191,7 @@ msgstr "" #: view:crossovered.budget:0 #: field:crossovered.budget.lines,practical_amount:0 msgid "Practical Amount" -msgstr "" +msgstr "Praktinė suma" #. module: account_budget #: field:crossovered.budget,date_to:0 @@ -203,12 +203,12 @@ msgstr "Pabaigos data" #: model:ir.model,name:account_budget.model_account_budget_analytic #: model:ir.model,name:account_budget.model_account_budget_report msgid "Account Budget report for analytic account" -msgstr "" +msgstr "Biudžeto ataskaita analitinei sąskaitai" #. module: account_budget #: view:account.analytic.account:0 msgid "Theoritical Amount" -msgstr "" +msgstr "Teorinė suma" #. module: account_budget #: field:account.budget.post,name:0 @@ -219,7 +219,7 @@ msgstr "Pavadinimas" #. module: account_budget #: model:ir.model,name:account_budget.model_crossovered_budget_lines msgid "Budget Line" -msgstr "" +msgstr "Biudžeto eilutė" #. module: account_budget #: report:account.budget:0 @@ -234,12 +234,12 @@ msgstr "Biudžetas" #. module: account_budget #: view:crossovered.budget:0 msgid "To Approve Budgets" -msgstr "" +msgstr "Patvirtinti biudžetą" #. module: account_budget #: view:crossovered.budget:0 msgid "Duration" -msgstr "" +msgstr "Trukmė" #. module: account_budget #: field:account.budget.post,code:0 @@ -251,7 +251,7 @@ msgstr "Kodas" #: view:account.budget.analytic:0 #: view:account.budget.crossvered.report:0 msgid "This wizard is used to print budget" -msgstr "" +msgstr "Šis vedlys naudojamas atspausdinti biudžetui" #. module: account_budget #: model:ir.actions.act_window,name:account_budget.act_crossovered_budget_view @@ -267,7 +267,7 @@ msgstr "Biudžetai" #. module: account_budget #: view:account.budget.crossvered.summary.report:0 msgid "This wizard is used to print summary of budgets" -msgstr "" +msgstr "Šis vedlys naudojamas atspausdinti biudžetų suvestinei" #. module: account_budget #: selection:crossovered.budget,state:0 @@ -277,19 +277,19 @@ msgstr "Nutrauktas" #. module: account_budget #: view:crossovered.budget:0 msgid "Approve" -msgstr "" +msgstr "Patvirtinti" #. module: account_budget #: view:crossovered.budget:0 msgid "To Approve" -msgstr "" +msgstr "Patvirtinti" #. module: account_budget #: view:account.budget.post:0 #: field:crossovered.budget.lines,general_budget_id:0 #: model:ir.model,name:account_budget.model_account_budget_post msgid "Budgetary Position" -msgstr "" +msgstr "Biudžeto pozicija" #. module: account_budget #: field:account.budget.analytic,date_from:0 @@ -308,13 +308,13 @@ msgstr "" #: report:account.budget:0 #: report:crossovered.budget.report:0 msgid "Theoretical Amt" -msgstr "" +msgstr "Teorinė suma" #. module: account_budget #: code:addons/account_budget/account_budget.py:119 #, python-format msgid "Error!" -msgstr "" +msgstr "Klaida!" #. module: account_budget #: view:account.budget.analytic:0 @@ -329,7 +329,7 @@ msgstr "Spausdinti" #: view:crossovered.budget:0 #: field:crossovered.budget.lines,theoritical_amount:0 msgid "Theoretical Amount" -msgstr "" +msgstr "Teorinė suma" #. module: account_budget #: view:account.budget.analytic:0 @@ -337,7 +337,7 @@ msgstr "" #: view:account.budget.crossvered.summary.report:0 #: view:account.budget.report:0 msgid "or" -msgstr "" +msgstr "arba" #. module: account_budget #: field:crossovered.budget.lines,analytic_account_id:0 @@ -348,7 +348,7 @@ msgstr "Analitinė sąskaita" #. module: account_budget #: report:account.budget:0 msgid "Budget :" -msgstr "" +msgstr "Biudžetas:" #. module: account_budget #: model:ir.actions.act_window,help:account_budget.act_crossovered_budget_view @@ -377,7 +377,7 @@ msgstr "" #: report:account.budget:0 #: report:crossovered.budget.report:0 msgid "Planned Amt" -msgstr "" +msgstr "Planuojama suma" #. module: account_budget #: view:account.budget.post:0 @@ -397,7 +397,7 @@ msgstr "Sąskaitos" #: model:ir.actions.act_window,name:account_budget.act_crossovered_budget_lines_view #: model:ir.ui.menu,name:account_budget.menu_act_crossovered_budget_lines_view msgid "Budget Lines" -msgstr "" +msgstr "Biudžeto eilutės" #. module: account_budget #: view:account.budget.analytic:0 @@ -418,12 +418,12 @@ msgstr "Pradžios data" #: report:account.budget:0 #: report:crossovered.budget.report:0 msgid "Analysis from" -msgstr "" +msgstr "Analizė nuo" #. module: account_budget #: view:crossovered.budget:0 msgid "Draft Budgets" -msgstr "" +msgstr "Nepatvirtinti biudžetai" #~ msgid "% performance" #~ msgstr "% vykdymas" diff --git a/addons/account_budget/i18n/zh_CN.po b/addons/account_budget/i18n/zh_CN.po index 34c4352185f..e8c99e31e4c 100644 --- a/addons/account_budget/i18n/zh_CN.po +++ b/addons/account_budget/i18n/zh_CN.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-08 03:50+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 06:47+0000\n" +"Last-Translator: ccdos \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: 2012-11-25 06:16+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_budget #: view:account.budget.analytic:0 @@ -141,7 +141,7 @@ msgstr "合计:" #. module: account_budget #: constraint:account.analytic.account:0 msgid "Error! You cannot create recursive analytic accounts." -msgstr "" +msgstr "错误!你不能递归创建辅助核算项" #. module: account_budget #: field:account.budget.post,company_id:0 @@ -239,7 +239,7 @@ msgstr "待审核的预算" #. module: account_budget #: view:crossovered.budget:0 msgid "Duration" -msgstr "" +msgstr "持续时间" #. module: account_budget #: field:account.budget.post,code:0 @@ -337,7 +337,7 @@ msgstr "理论金额" #: view:account.budget.crossvered.summary.report:0 #: view:account.budget.report:0 msgid "or" -msgstr "" +msgstr "or" #. module: account_budget #: field:crossovered.budget.lines,analytic_account_id:0 diff --git a/addons/account_cancel/i18n/it.po b/addons/account_cancel/i18n/it.po index 153dc063447..fcd3aecdb5b 100644 --- a/addons/account_cancel/i18n/it.po +++ b/addons/account_cancel/i18n/it.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2010-11-21 07:53+0000\n" -"Last-Translator: OpenERP Administrators \n" +"PO-Revision-Date: 2012-11-28 19:46+0000\n" +"Last-Translator: Davide Corio - agilebg.com \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:24+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_cancel #: view:account.invoice:0 msgid "Cancel" -msgstr "Cancella" +msgstr "Annulla" #~ msgid "Account Cancel" #~ msgstr "Account Cancel" diff --git a/addons/account_check_writing/i18n/zh_CN.po b/addons/account_check_writing/i18n/zh_CN.po index b91e5204fbc..9f0ab53eca6 100644 --- a/addons/account_check_writing/i18n/zh_CN.po +++ b/addons/account_check_writing/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-05-10 18:06+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 06:58+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:32+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_check_writing #: selection:res.company,check_layout:0 @@ -110,6 +110,15 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" 单击 创建一个新的支票。\n" +"

\n" +" 支票支付表单允许跟踪用支票支付给供应商的过程。\n" +" 当年选择了一个供应商,Openerp 将自动提供 支付\n" +" 方法和支付金额,用于核销待支付的供应商发票和\n" +" 单据。\n" +"

\n" +" " #. module: account_check_writing #: field:account.voucher,allow_check:0 @@ -131,7 +140,7 @@ msgstr "用预先打印的支票" #. module: account_check_writing #: model:ir.actions.report.xml,name:account_check_writing.account_print_check_bottom msgid "Print Check (Bottom)" -msgstr "" +msgstr "打印支票(底部)" #. module: account_check_writing #: sql_constraint:res.company:0 @@ -148,14 +157,14 @@ msgstr "到期日期" #. module: account_check_writing #: model:ir.actions.report.xml,name:account_check_writing.account_print_check_middle msgid "Print Check (Middle)" -msgstr "" +msgstr "打印支票(中间)" #. module: account_check_writing #: constraint:account.journal:0 msgid "" "Configuration error!\n" "The currency chosen should be shared by the default accounts too." -msgstr "" +msgstr "配置错误!" #. module: account_check_writing #: model:ir.model,name:account_check_writing.model_res_company @@ -171,7 +180,7 @@ msgstr "截止余额" #. module: account_check_writing #: model:ir.actions.report.xml,name:account_check_writing.account_print_check_top msgid "Print Check (Top)" -msgstr "" +msgstr "打印支票(顶部)" #. module: account_check_writing #: report:account.print.check.bottom:0 diff --git a/addons/account_payment/account_invoice.py b/addons/account_payment/account_invoice.py index 7138540fa3b..ec4feca9b81 100644 --- a/addons/account_payment/account_invoice.py +++ b/addons/account_payment/account_invoice.py @@ -20,12 +20,29 @@ ############################################################################## from datetime import datetime - +from tools.translate import _ from osv import fields, osv class Invoice(osv.osv): _inherit = 'account.invoice' + # Forbid to cancel an invoice if the related move lines have already been + # used in a payment order. The risk is that importing the payment line + # in the bank statement will result in a crash cause no more move will + # be found in the payment line + def action_cancel(self, cr, uid, ids, context=None): + payment_line_obj = self.pool.get('payment.line') + for inv in self.browse(cr, uid, ids, context=context): + pl_line_ids = [] + if inv.move_id and inv.move_id.line_id: + inv_mv_lines = [x.id for x in inv.move_id.line_id] + pl_line_ids = payment_line_obj.search(cr, uid, [('move_line_id','in',inv_mv_lines)], context=context) + if pl_line_ids: + pay_line = payment_line_obj.browse(cr, uid, pl_line_ids, context=context) + payment_order_name = ','.join(map(lambda x: x.order_id.reference, pay_line)) + raise osv.except_osv(_('Error!'), _("You cannot cancel an invoice which has already been imported in a payment order. Remove it from the following payment order : %s."%(payment_order_name))) + return super(Invoice, self).action_cancel(cr, uid, ids, context=context) + def _amount_to_pay(self, cursor, user, ids, name, args, context=None): '''Return the amount still to pay regarding all the payment orders''' if not ids: diff --git a/addons/account_sequence/i18n/zh_CN.po b/addons/account_sequence/i18n/zh_CN.po index 30711dedc44..e27fb65f3a5 100644 --- a/addons/account_sequence/i18n/zh_CN.po +++ b/addons/account_sequence/i18n/zh_CN.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-09 04:00+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 07:24+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: account_sequence #: constraint:account.move.line:0 msgid "You cannot create journal items on closed account." -msgstr "" +msgstr "你不能在关闭的科目创建账目项目" #. module: account_sequence #: view:account.sequence.installer:0 @@ -112,14 +112,14 @@ msgstr "名称" #. module: account_sequence #: constraint:account.move.line:0 msgid "You cannot create journal items on an account of type view." -msgstr "" +msgstr "你不能在视图类型的科目创建账目项目" #. module: account_sequence #: constraint:account.journal:0 msgid "" "Configuration error!\n" "The currency chosen should be shared by the default accounts too." -msgstr "" +msgstr "配置错误" #. module: account_sequence #: sql_constraint:account.move.line:0 @@ -130,7 +130,7 @@ msgstr "错误的分录" #: constraint:account.move:0 msgid "" "You cannot create more than one move per period on a centralized journal." -msgstr "" +msgstr "在每个会计期间,你不可以创建1个以上的总分类凭证" #. module: account_sequence #: field:account.journal,internal_sequence_id:0 @@ -140,7 +140,7 @@ msgstr "内部序列" #. module: account_sequence #: constraint:account.move.line:0 msgid "Account and Period must belong to the same company." -msgstr "" +msgstr "科目和会计周期必须属于同一个公司" #. module: account_sequence #: help:account.sequence.installer,prefix:0 diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py index 32be8c34929..ffc7cf1769d 100644 --- a/addons/account_voucher/account_voucher.py +++ b/addons/account_voucher/account_voucher.py @@ -1549,6 +1549,15 @@ class account_bank_statement(osv.osv): return move_line_obj.write(cr, uid, [x.id for x in v.move_ids], {'statement_id': st_line.statement_id.id}, context=context) return super(account_bank_statement, self).create_move_from_st_line(cr, uid, st_line.id, company_currency_id, next_number, context=context) + def write(self, cr, uid, ids, vals, context=None): + # Restrict to modify the journal if we already have some voucher of reconciliation created/generated. + # Because the voucher keeps in memory the journal it was created with. + for bk_st in self.browse(cr, uid, ids, context=context): + if vals.get('journal_id') and bk_st.line_ids: + if any([x.voucher_id and True or False for x in bk_st.line_ids]): + raise osv.except_osv(_('Unable to change journal !'), _('You can not change the journal as you already reconciled some statement lines!')) + return super(account_bank_statement, self).write(cr, uid, ids, vals, context=context) + account_bank_statement() class account_bank_statement_line(osv.osv): diff --git a/addons/account_voucher/test/case5_suppl_usd_usd.yml b/addons/account_voucher/test/case5_suppl_usd_usd.yml index 3cae9667d84..4caeb19c847 100644 --- a/addons/account_voucher/test/case5_suppl_usd_usd.yml +++ b/addons/account_voucher/test/case5_suppl_usd_usd.yml @@ -4,10 +4,10 @@ - I create a cash account with currency USD - - !record {model: account.account, id: account_cash_usd_id}: + !record {model: account.account, id: account_cash_usd_id2}: currency_id: base.USD name: "cash account in usd" - code: "Xcash usd" + code: "Xcash usd2" type: 'liquidity' user_type: "account.data_account_type_cash" @@ -56,8 +56,8 @@ type: bank analytic_journal_id: account.sit sequence_id: account.sequence_bank_journal - default_debit_account_id: account_cash_usd_id - default_credit_account_id: account_cash_usd_id + default_debit_account_id: account_cash_usd_id2 + default_credit_account_id: account_cash_usd_id2 currency: base.USD company_id: base.main_company view_id: account.account_journal_bank_view diff --git a/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py b/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py index 35177ee3a66..ee92b469744 100644 --- a/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py +++ b/addons/analytic_contract_hr_expense/analytic_contract_hr_expense.py @@ -65,39 +65,25 @@ class account_analytic_account(osv.osv): def _expense_to_invoice_calc(self, cr, uid, ids, name, arg, context=None): res = {} - res_final = {} - child_ids = tuple(ids) #We don't want consolidation for each of these fields because those complex computation is resource-greedy. - for i in child_ids: - res[i] = 0.0 - if not child_ids: - return res + #We don't want consolidation for each of these fields because those complex computation is resource-greedy. + for account in self.pool.get('account.analytic.account').browse(cr, uid, ids, context=context): + cr.execute(""" + SELECT product_id, sum(amount), user_id, to_invoice, sum(unit_amount), product_uom_id, line.name + FROM account_analytic_line line + LEFT JOIN account_analytic_journal journal ON (journal.id = line.journal_id) + WHERE account_id = %s + AND journal.type = 'purchase' + AND invoice_id IS NULL + AND to_invoice IS NOT NULL + GROUP BY product_id, user_id, to_invoice, product_uom_id, line.name""", (account.id,)) - if child_ids: - cr.execute("""SELECT account_analytic_account.id, \ - COALESCE(SUM (product_template.list_price * \ - account_analytic_line.unit_amount * \ - ((100-hr_timesheet_invoice_factor.factor)/100)), 0.0) \ - AS ca_to_invoice \ - FROM product_template \ - JOIN product_product \ - ON product_template.id = product_product.product_tmpl_id \ - JOIN account_analytic_line \ - ON account_analytic_line.product_id = product_product.id \ - JOIN account_analytic_journal \ - ON account_analytic_line.journal_id = account_analytic_journal.id \ - JOIN account_analytic_account \ - ON account_analytic_account.id = account_analytic_line.account_id \ - JOIN hr_timesheet_invoice_factor \ - ON hr_timesheet_invoice_factor.id = account_analytic_account.to_invoice \ - WHERE account_analytic_account.id IN %s \ - AND account_analytic_line.invoice_id IS NULL \ - AND account_analytic_line.to_invoice IS NOT NULL \ - AND account_analytic_journal.type = 'purchase' \ - GROUP BY account_analytic_account.id;""",(child_ids,)) - for account_id, sum in cr.fetchall(): - res[account_id] = sum - res_final = res - return res_final + res[account.id] = 0.0 + for product_id, price, user_id, factor_id, qty, uom, line_name in cr.fetchall(): + #the amount to reinvoice is the real cost. We don't use the pricelist + price = -price + factor = self.pool.get('hr_timesheet_invoice.factor').browse(cr, uid, factor_id, context=context) + res[account.id] += price * qty * (100 - factor.factor or 0.0) / 100.0 + return res def _expense_invoiced_calc(self, cr, uid, ids, name, arg, context=None): lines_obj = self.pool.get('account.analytic.line') diff --git a/addons/anonymization/i18n/zh_CN.po b/addons/anonymization/i18n/zh_CN.po index 6ad6b0c1016..0ba47de11c4 100644 --- a/addons/anonymization/i18n/zh_CN.po +++ b/addons/anonymization/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-02 09:55+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 06:50+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: anonymization #: model:ir.model,name:anonymization.model_ir_model_fields_anonymize_wizard @@ -25,17 +25,17 @@ msgstr "ir.model.fields.anonymize.wizard" #. module: anonymization #: model:ir.model,name:anonymization.model_ir_model_fields_anonymization_migration_fix msgid "ir.model.fields.anonymization.migration.fix" -msgstr "" +msgstr "ir.model.fields.anonymization.migration.fix" #. module: anonymization #: field:ir.model.fields.anonymization.migration.fix,target_version:0 msgid "Target Version" -msgstr "" +msgstr "目标版本" #. module: anonymization #: selection:ir.model.fields.anonymization.migration.fix,query_type:0 msgid "sql" -msgstr "" +msgstr "sql" #. module: anonymization #: field:ir.model.fields.anonymization,field_name:0 @@ -62,7 +62,7 @@ msgstr "ir.model.fields.anonymization" #: field:ir.model.fields.anonymization.history,state:0 #: field:ir.model.fields.anonymize.wizard,state:0 msgid "Status" -msgstr "" +msgstr "状态" #. module: anonymization #: field:ir.model.fields.anonymization.history,direction:0 @@ -135,7 +135,7 @@ msgstr "隐藏数据库" #. module: anonymization #: selection:ir.model.fields.anonymization.migration.fix,query_type:0 msgid "python" -msgstr "" +msgstr "python" #. module: anonymization #: view:ir.model.fields.anonymization.history:0 @@ -189,7 +189,7 @@ msgstr "隐藏日志" #. module: anonymization #: field:ir.model.fields.anonymization.migration.fix,model_name:0 msgid "Model" -msgstr "" +msgstr "模型" #. module: anonymization #: model:ir.model,name:anonymization.model_ir_model_fields_anonymization_history @@ -201,7 +201,7 @@ msgstr "ir.model.fields.anonymization.history" msgid "" "This is the file created by the anonymization process. It should have the " "'.pickle' extention." -msgstr "" +msgstr "这个文件有匿名进程创建,他没有 '.pickle' 扩展名" #. module: anonymization #: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymize_wizard @@ -217,7 +217,7 @@ msgstr "文件名" #. module: anonymization #: field:ir.model.fields.anonymization.migration.fix,sequence:0 msgid "Sequence" -msgstr "" +msgstr "编号" #. module: anonymization #: selection:ir.model.fields.anonymization.history,direction:0 @@ -238,7 +238,7 @@ msgstr "完成" #: field:ir.model.fields.anonymization.migration.fix,query:0 #: field:ir.model.fields.anonymization.migration.fix,query_type:0 msgid "Query" -msgstr "" +msgstr "查询" #. module: anonymization #: view:ir.model.fields.anonymization.history:0 diff --git a/addons/audittrail/i18n/zh_CN.po b/addons/audittrail/i18n/zh_CN.po index 79468fdf936..344c8a6bdd9 100644 --- a/addons/audittrail/i18n/zh_CN.po +++ b/addons/audittrail/i18n/zh_CN.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-01-26 05:10+0000\n" -"Last-Translator: Wei \"oldrev\" Li \n" +"PO-Revision-Date: 2012-11-28 06:31+0000\n" +"Last-Translator: ccdos \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: 2012-11-25 06:14+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: audittrail #: view:audittrail.log:0 @@ -44,7 +44,7 @@ msgstr "已订阅" #: code:addons/audittrail/audittrail.py:408 #, python-format msgid "'%s' Model does not exist..." -msgstr "" +msgstr "'%s' 模型不存在..." #. module: audittrail #: view:audittrail.rule:0 @@ -61,7 +61,7 @@ msgstr "审计跟踪规则" #: view:audittrail.rule:0 #: field:audittrail.rule,state:0 msgid "Status" -msgstr "" +msgstr "状态" #. module: audittrail #: view:audittrail.view.log:0 @@ -215,7 +215,7 @@ msgstr "选择您要生成审计日志的对象" #. module: audittrail #: model:ir.ui.menu,name:audittrail.menu_audit msgid "Audit" -msgstr "" +msgstr "审核" #. module: audittrail #: field:audittrail.rule,log_workflow:0 @@ -294,7 +294,7 @@ msgstr "记录删除操作" #: view:audittrail.log:0 #: view:audittrail.rule:0 msgid "Model" -msgstr "" +msgstr "模型" #. module: audittrail #: field:audittrail.log.line,field_description:0 @@ -335,7 +335,7 @@ msgstr "新值" #: code:addons/audittrail/audittrail.py:223 #, python-format msgid "'%s' field does not exist in '%s' model" -msgstr "" +msgstr "字段 '%s' 不存在于模型 '%s'" #. module: audittrail #: view:audittrail.log:0 @@ -387,7 +387,7 @@ msgstr "日志明细" #. module: audittrail #: view:audittrail.view.log:0 msgid "or" -msgstr "" +msgstr "or" #. module: audittrail #: field:audittrail.rule,log_action:0 diff --git a/addons/auth_ldap/i18n/zh_CN.po b/addons/auth_ldap/i18n/zh_CN.po index ae4574e298f..3cd6d465fa5 100644 --- a/addons/auth_ldap/i18n/zh_CN.po +++ b/addons/auth_ldap/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-08 03:35+0000\n" -"Last-Translator: Wei \"oldrev\" Li \n" +"PO-Revision-Date: 2012-11-28 07:07+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:30+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: auth_ldap #: constraint:res.company:0 @@ -30,7 +30,7 @@ msgstr "选择的用户组不在这用允许的用户组" #. module: auth_ldap #: field:res.company.ldap,user:0 msgid "Template User" -msgstr "" +msgstr "用户模版" #. module: auth_ldap #: help:res.company.ldap,ldap_tls:0 @@ -71,7 +71,7 @@ msgstr "LDAP 服务器端口" msgid "" "Automatically create local user accounts for new users authenticating via " "LDAP" -msgstr "" +msgstr "通过LDAP,为新用户自动创建本地用户账户。" #. module: auth_ldap #: field:res.company.ldap,ldap_base:0 @@ -96,7 +96,7 @@ msgstr "LDAP 密码" #. module: auth_ldap #: sql_constraint:res.users:0 msgid "OAuth UID must be unique per provider" -msgstr "" +msgstr "OAuth UID必须是每个提供者唯一的" #. module: auth_ldap #: model:ir.model,name:auth_ldap.model_res_company @@ -116,7 +116,7 @@ msgstr "res.company.ldap" #. module: auth_ldap #: help:res.company.ldap,user:0 msgid "User to copy when creating new users" -msgstr "" +msgstr "当创建新用户时,复制用户" #. module: auth_ldap #: field:res.company.ldap,ldap_tls:0 @@ -164,12 +164,12 @@ msgstr "LDAP 服务器上的用户帐号密码,用于查询该目录服务。" #. module: auth_ldap #: constraint:res.users:0 msgid "Error: Invalid ean code" -msgstr "" +msgstr "错误:无效的(EAN)条码" #. module: auth_ldap #: model:ir.model,name:auth_ldap.model_res_users msgid "Users" -msgstr "" +msgstr "用户" #. module: auth_ldap #: help:res.company.ldap,ldap_binddn:0 diff --git a/addons/auth_oauth/i18n/zh_CN.po b/addons/auth_oauth/i18n/zh_CN.po new file mode 100644 index 00000000000..f8c15e694f9 --- /dev/null +++ b/addons/auth_oauth/i18n/zh_CN.po @@ -0,0 +1,150 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:52+0000\n" +"PO-Revision-Date: 2012-11-28 14:27+0000\n" +"Last-Translator: ccdos \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: auth_oauth +#: field:auth.oauth.provider,validation_endpoint:0 +msgid "Validation URL" +msgstr "验证 URL" + +#. module: auth_oauth +#: sql_constraint:res.users:0 +msgid "You can not have two users with the same login !" +msgstr "两个用户不能使用相同的用户名!" + +#. module: auth_oauth +#: field:auth.oauth.provider,auth_endpoint:0 +msgid "Authentication URL" +msgstr "身份验证URL" + +#. module: auth_oauth +#: model:ir.model,name:auth_oauth.model_base_config_settings +msgid "base.config.settings" +msgstr "base.config.settings" + +#. module: auth_oauth +#: constraint:res.users:0 +msgid "The chosen company is not in the allowed companies for this user" +msgstr "选择的公司不属于此用户允许访问的公司。" + +#. module: auth_oauth +#: field:auth.oauth.provider,scope:0 +msgid "Scope" +msgstr "作用域" + +#. module: auth_oauth +#: field:res.users,oauth_provider_id:0 +msgid "OAuth Provider" +msgstr "OAuth Provider" + +#. module: auth_oauth +#: field:auth.oauth.provider,css_class:0 +msgid "CSS class" +msgstr "CSS class" + +#. module: auth_oauth +#: field:auth.oauth.provider,body:0 +msgid "Body" +msgstr "正文" + +#. module: auth_oauth +#: model:ir.model,name:auth_oauth.model_res_users +msgid "Users" +msgstr "用户" + +#. module: auth_oauth +#: field:auth.oauth.provider,sequence:0 +msgid "unknown" +msgstr "未知" + +#. module: auth_oauth +#: field:res.users,oauth_access_token:0 +msgid "OAuth Access Token" +msgstr "OAuth 访问令牌" + +#. module: auth_oauth +#: field:auth.oauth.provider,client_id:0 +#: field:base.config.settings,auth_oauth_facebook_client_id:0 +#: field:base.config.settings,auth_oauth_google_client_id:0 +msgid "Client ID" +msgstr "Client ID" + +#. module: auth_oauth +#: model:ir.ui.menu,name:auth_oauth.menu_oauth_providers +msgid "OAuth Providers" +msgstr "OAuth Providers" + +#. module: auth_oauth +#: model:ir.model,name:auth_oauth.model_auth_oauth_provider +msgid "OAuth2 provider" +msgstr "OAuth2 provider" + +#. module: auth_oauth +#: field:res.users,oauth_uid:0 +msgid "OAuth User ID" +msgstr "OAuth User ID" + +#. module: auth_oauth +#: field:base.config.settings,auth_oauth_facebook_enabled:0 +msgid "Allow users to sign in with Facebook" +msgstr "允许用户用Facebook登录" + +#. module: auth_oauth +#: sql_constraint:res.users:0 +msgid "OAuth UID must be unique per provider" +msgstr "OAuth UID必须是每个提供者( provider )唯一的" + +#. module: auth_oauth +#: help:res.users,oauth_uid:0 +msgid "Oauth Provider user_id" +msgstr "Oauth Provider user_id" + +#. module: auth_oauth +#: field:auth.oauth.provider,data_endpoint:0 +msgid "Data URL" +msgstr "数据URL" + +#. module: auth_oauth +#: view:auth.oauth.provider:0 +msgid "arch" +msgstr "arch" + +#. module: auth_oauth +#: field:auth.oauth.provider,name:0 +msgid "Provider name" +msgstr "Provider 名称" + +#. module: auth_oauth +#: model:ir.actions.act_window,name:auth_oauth.action_oauth_provider +msgid "Providers" +msgstr "Providers" + +#. module: auth_oauth +#: field:base.config.settings,auth_oauth_google_enabled:0 +msgid "Allow users to sign in with Google" +msgstr "允许用户通过google登录" + +#. module: auth_oauth +#: constraint:res.users:0 +msgid "Error: Invalid ean code" +msgstr "错误:无效的(EAN)条码" + +#. module: auth_oauth +#: field:auth.oauth.provider,enabled:0 +msgid "Allowed" +msgstr "允许" diff --git a/addons/auth_oauth/static/src/js/auth_oauth.js b/addons/auth_oauth/static/src/js/auth_oauth.js index fdf7baf607c..c24dab3d55a 100644 --- a/addons/auth_oauth/static/src/js/auth_oauth.js +++ b/addons/auth_oauth/static/src/js/auth_oauth.js @@ -36,6 +36,9 @@ openerp.auth_oauth = function(instance) { ev.preventDefault(); var index = $(ev.target).data('index'); var provider = this.oauth_providers[index]; + return this.do_oauth_sign_in(provider); + }, + do_oauth_sign_in: function(provider) { var return_url = _.str.sprintf('%s//%s/auth_oauth/signin', location.protocol, location.host); if (instance.session.debug) { return_url += '?debug'; diff --git a/addons/auth_reset_password/i18n/it.po b/addons/auth_reset_password/i18n/it.po new file mode 100644 index 00000000000..c330056fe66 --- /dev/null +++ b/addons/auth_reset_password/i18n/it.po @@ -0,0 +1,74 @@ +# Italian translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:52+0000\n" +"PO-Revision-Date: 2012-11-28 19:58+0000\n" +"Last-Translator: Davide Corio - agilebg.com \n" +"Language-Team: Italian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: auth_reset_password +#: model:email.template,body_html:auth_reset_password.reset_password_email +msgid "" +"\n" +"

A password reset was requested for the OpenERP account linked to this " +"email.

\n" +"\n" +"

You may change your password following this link.

\n" +"\n" +"

Note: If you did not ask for a password reset, you can safely ignore this " +"email.

" +msgstr "" + +#. module: auth_reset_password +#: sql_constraint:res.users:0 +msgid "You can not have two users with the same login !" +msgstr "Non è possibile avere due utenti con lo stesso login!" + +#. module: auth_reset_password +#: model:ir.model,name:auth_reset_password.model_res_users +msgid "Users" +msgstr "Utenti" + +#. module: auth_reset_password +#: sql_constraint:res.users:0 +msgid "OAuth UID must be unique per provider" +msgstr "il UID OAuth deve essere unico per provider" + +#. module: auth_reset_password +#: view:res.users:0 +msgid "Reset Password" +msgstr "Reimposta Password" + +#. module: auth_reset_password +#: model:email.template,subject:auth_reset_password.reset_password_email +msgid "Password reset" +msgstr "Ripristino password" + +#. module: auth_reset_password +#: constraint:res.users:0 +msgid "Error: Invalid ean code" +msgstr "Errore: codice EAN non valido" + +#. module: auth_reset_password +#: constraint:res.users:0 +msgid "The chosen company is not in the allowed companies for this user" +msgstr "L'azienda scelta non è fra le aziende abilitate per questo utente" + +#. module: auth_reset_password +#. openerp-web +#: code:addons/auth_reset_password/static/src/xml/reset_password.xml:7 +#, python-format +msgid "Reset password" +msgstr "Reimposta password" diff --git a/addons/auth_reset_password/i18n/zh_CN.po b/addons/auth_reset_password/i18n/zh_CN.po new file mode 100644 index 00000000000..ee06973b4c6 --- /dev/null +++ b/addons/auth_reset_password/i18n/zh_CN.po @@ -0,0 +1,78 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:52+0000\n" +"PO-Revision-Date: 2012-11-28 07:14+0000\n" +"Last-Translator: ccdos \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: auth_reset_password +#: model:email.template,body_html:auth_reset_password.reset_password_email +msgid "" +"\n" +"

A password reset was requested for the OpenERP account linked to this " +"email.

\n" +"\n" +"

You may change your password following this link.

\n" +"\n" +"

Note: If you did not ask for a password reset, you can safely ignore this " +"email.

" +msgstr "" +"\n" +"一个关联到这个Email地址的Openerp帐号请求复位密码。\n" +"你可以修改你的密码通过下面这个链接 。\n" +"提醒:如果你没请求复位密码,请忽略这封邮件。" + +#. module: auth_reset_password +#: sql_constraint:res.users:0 +msgid "You can not have two users with the same login !" +msgstr "两个用户不能使用相同的用户名!" + +#. module: auth_reset_password +#: model:ir.model,name:auth_reset_password.model_res_users +msgid "Users" +msgstr "用户" + +#. module: auth_reset_password +#: sql_constraint:res.users:0 +msgid "OAuth UID must be unique per provider" +msgstr "OAuth UID必须是每个提供者唯一的" + +#. module: auth_reset_password +#: view:res.users:0 +msgid "Reset Password" +msgstr "重置密码" + +#. module: auth_reset_password +#: model:email.template,subject:auth_reset_password.reset_password_email +msgid "Password reset" +msgstr "重置密码" + +#. module: auth_reset_password +#: constraint:res.users:0 +msgid "Error: Invalid ean code" +msgstr "错误:无效的(EAN)条码" + +#. module: auth_reset_password +#: constraint:res.users:0 +msgid "The chosen company is not in the allowed companies for this user" +msgstr "选择的公司不属于此用户允许访问的公司。" + +#. module: auth_reset_password +#. openerp-web +#: code:addons/auth_reset_password/static/src/xml/reset_password.xml:7 +#, python-format +msgid "Reset password" +msgstr "重设密码" diff --git a/addons/auth_reset_password/res_users.py b/addons/auth_reset_password/res_users.py index b1039031812..cfac20c76f9 100644 --- a/addons/auth_reset_password/res_users.py +++ b/addons/auth_reset_password/res_users.py @@ -21,6 +21,7 @@ from openerp.osv import osv, fields from openerp.tools.misc import DEFAULT_SERVER_DATETIME_FORMAT +from openerp.tools.translate import _ from datetime import datetime, timedelta @@ -54,6 +55,8 @@ class res_users(osv.osv): template = self.pool.get('ir.model.data').get_object(cr, uid, 'auth_reset_password', 'reset_password_email') assert template._name == 'email.template' for user in self.browse(cr, uid, ids, context): + if not user.email: + raise osv.except_osv(_("Cannot send email: user has no email address."), user.name) self.pool.get('email.template').send_mail(cr, uid, template.id, user.id, context=context) return True diff --git a/addons/auth_reset_password/res_users_view.xml b/addons/auth_reset_password/res_users_view.xml index 9952162ae65..628e95b6ff9 100644 --- a/addons/auth_reset_password/res_users_view.xml +++ b/addons/auth_reset_password/res_users_view.xml @@ -7,11 +7,17 @@ res.users +
-
+ + + {} +
diff --git a/addons/auth_signup/i18n/zh_CN.po b/addons/auth_signup/i18n/zh_CN.po new file mode 100644 index 00000000000..20b4ca05e9c --- /dev/null +++ b/addons/auth_signup/i18n/zh_CN.po @@ -0,0 +1,170 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:52+0000\n" +"PO-Revision-Date: 2012-11-28 16:52+0000\n" +"Last-Translator: ccdos \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: auth_signup +#: field:base.config.settings,auth_signup_uninvited:0 +msgid "Allow external users to sign up" +msgstr "允许外部用户登录" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:15 +#, python-format +msgid "Confirm Password" +msgstr "确认密码" + +#. module: auth_signup +#: model:ir.model,name:auth_signup.model_base_config_settings +msgid "base.config.settings" +msgstr "base.config.settings" + +#. module: auth_signup +#: field:base.config.settings,auth_signup_template_user_id:0 +msgid "Template user for new users created through signup" +msgstr "用作通过注册创建的新用户的模版" + +#. module: auth_signup +#: constraint:res.users:0 +msgid "The chosen company is not in the allowed companies for this user" +msgstr "选择的公司不属于此用户允许访问的公司。" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:23 +#, python-format +msgid "Sign Up" +msgstr "注册" + +#. module: auth_signup +#: selection:res.users,state:0 +msgid "New" +msgstr "新建" + +#. module: auth_signup +#: field:res.users,state:0 +msgid "Status" +msgstr "状态" + +#. module: auth_signup +#: model:ir.model,name:auth_signup.model_res_users +msgid "Users" +msgstr "用户" + +#. module: auth_signup +#: field:res.partner,signup_url:0 +msgid "Signup URL" +msgstr "注册 URL" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:20 +#, python-format +msgid "Sign in" +msgstr "登录" + +#. module: auth_signup +#: selection:res.users,state:0 +msgid "Active" +msgstr "启用" + +#. module: auth_signup +#: help:base.config.settings,auth_signup_uninvited:0 +msgid "If unchecked, only invited users may sign up" +msgstr "如果不选中,只有被邀请用户方可注册。" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:11 +#, python-format +msgid "Username" +msgstr "用户名" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:7 +#, python-format +msgid "Name" +msgstr "姓名" + +#. module: auth_signup +#: sql_constraint:res.users:0 +msgid "OAuth UID must be unique per provider" +msgstr "OAuth UID必须是每个提供者( provider )唯一的" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:12 +#, python-format +msgid "Username (Email)" +msgstr "用户名(Email)" + +#. module: auth_signup +#: field:res.partner,signup_expiration:0 +msgid "Signup Expiration" +msgstr "注册过期" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:19 +#, python-format +msgid "Log in" +msgstr "登录" + +#. module: auth_signup +#: field:res.partner,signup_valid:0 +msgid "Signup Token is Valid" +msgstr "注册令牌( Token )是有效的" + +#. module: auth_signup +#: selection:res.users,state:0 +msgid "Resetting Password" +msgstr "复位密码" + +#. module: auth_signup +#: constraint:res.partner:0 +msgid "Error ! You cannot create recursive associated members." +msgstr "错误,您不能创建循环引用的会员用户" + +#. module: auth_signup +#: sql_constraint:res.users:0 +msgid "You can not have two users with the same login !" +msgstr "两个用户不能使用相同的用户名!" + +#. module: auth_signup +#. openerp-web +#: code:addons/auth_signup/static/src/xml/auth_signup.xml:24 +#, python-format +msgid "Back to Login" +msgstr "返回登录页面" + +#. module: auth_signup +#: constraint:res.partner:0 +#: constraint:res.users:0 +msgid "Error: Invalid ean code" +msgstr "错误:无效的(EAN)条码" + +#. module: auth_signup +#: model:ir.model,name:auth_signup.model_res_partner +msgid "Partner" +msgstr "业务伙伴" + +#. module: auth_signup +#: field:res.partner,signup_token:0 +msgid "Signup Token" +msgstr "注册令牌( Token )" diff --git a/addons/auth_signup/res_users.py b/addons/auth_signup/res_users.py index 69ec45b80e5..7dbb19853a2 100644 --- a/addons/auth_signup/res_users.py +++ b/addons/auth_signup/res_users.py @@ -150,8 +150,12 @@ class res_users(osv.Model): _inherit = 'res.users' def _get_state(self, cr, uid, ids, name, arg, context=None): - return dict((user.id, 'new' if not user.login_date else 'reset' if user.signup_token else 'active') - for user in self.browse(cr, uid, ids, context)) + res = {} + for user in self.browse(cr, uid, ids, context): + res[user.id] = ('reset' if user.signup_valid else + 'active' if user.login_date else + 'new') + return res _columns = { 'state': fields.function(_get_state, string='Status', type='selection', diff --git a/addons/base_calendar/crm_meeting_view.xml b/addons/base_calendar/crm_meeting_view.xml index 8590bcb8b49..84c03d68dbd 100644 --- a/addons/base_calendar/crm_meeting_view.xml +++ b/addons/base_calendar/crm_meeting_view.xml @@ -5,7 +5,7 @@ - Mark read + CRM Meeting: Mark read True ir.actions.server @@ -23,7 +23,7 @@ - Mark unread + CRM Meeting: Mark unread True ir.actions.server diff --git a/addons/base_calendar/i18n/zh_CN.po b/addons/base_calendar/i18n/zh_CN.po index 4fb5c3afbca..8d5d3f545f1 100644 --- a/addons/base_calendar/i18n/zh_CN.po +++ b/addons/base_calendar/i18n/zh_CN.po @@ -8,25 +8,25 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-05-10 17:39+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 16:50+0000\n" +"Last-Translator: Joshua Jan(SHINEIT) \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:27+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: base_calendar #: selection:calendar.alarm,trigger_related:0 #: selection:res.alarm,trigger_related:0 msgid "The event starts" -msgstr "事件开始时" +msgstr "活动开始" #. module: base_calendar #: view:calendar.event:0 msgid "My Events" -msgstr "我的事件" +msgstr "我的活动" #. module: base_calendar #: help:calendar.event,exdate:0 @@ -40,14 +40,14 @@ msgstr "这属性定义循环日程的日期/时间异常列表。" #. module: base_calendar #: constraint:res.users:0 msgid "The chosen company is not in the allowed companies for this user" -msgstr "用户无权操作所选择公司数据" +msgstr "选择的公司不属于此用户允许访问的公司。" #. module: base_calendar #: field:calendar.event,we:0 #: field:calendar.todo,we:0 #: field:crm.meeting,we:0 msgid "Wed" -msgstr "周三" +msgstr "星期三" #. module: base_calendar #: selection:calendar.attendee,cutype:0 @@ -64,13 +64,13 @@ msgstr "定期会议" #. module: base_calendar #: model:crm.meeting.type,name:base_calendar.categ_meet5 msgid "Feedback Meeting" -msgstr "" +msgstr "会议反馈" #. module: base_calendar #: code:addons/base_calendar/crm_meeting.py:117 #, python-format msgid "Meeting completed." -msgstr "" +msgstr "会议完成." #. module: base_calendar #: model:ir.actions.act_window,name:base_calendar.action_res_alarm_view @@ -83,7 +83,7 @@ msgstr "提醒" #: selection:calendar.todo,week_list:0 #: selection:crm.meeting,week_list:0 msgid "Sunday" -msgstr "周日" +msgstr "星期天" #. module: base_calendar #: field:calendar.attendee,role:0 @@ -147,14 +147,14 @@ msgstr "指定类型的邀请" #: view:crm.meeting:0 #: field:crm.meeting,message_unread:0 msgid "Unread Messages" -msgstr "" +msgstr "未读信息" #. module: base_calendar #: selection:calendar.event,week_list:0 #: selection:calendar.todo,week_list:0 #: selection:crm.meeting,week_list:0 msgid "Friday" -msgstr "周五" +msgstr "星期五" #. module: base_calendar #: field:calendar.event,allday:0 @@ -182,12 +182,12 @@ msgstr "空闲" #. module: base_calendar #: help:crm.meeting,message_unread:0 msgid "If checked new messages require your attention." -msgstr "" +msgstr "如果要求你关注新消息,勾选此项" #. module: base_calendar #: help:calendar.attendee,rsvp:0 msgid "Indicats whether the favor of a reply is requested" -msgstr "标明是否要求答复赞成" +msgstr "标明是否要求答复" #. module: base_calendar #: field:calendar.alarm,alarm_id:0 @@ -209,7 +209,7 @@ msgstr "事件" #: field:calendar.todo,tu:0 #: field:crm.meeting,tu:0 msgid "Tue" -msgstr "周二" +msgstr "星期二" #. module: base_calendar #: selection:calendar.event,byday:0 @@ -222,7 +222,7 @@ msgstr "第三个" #: selection:calendar.alarm,trigger_related:0 #: selection:res.alarm,trigger_related:0 msgid "The event ends" -msgstr "这事件结束时" +msgstr "这活动结束时" #. module: base_calendar #: selection:calendar.event,byday:0 @@ -234,12 +234,12 @@ msgstr "最近" #. module: base_calendar #: help:crm.meeting,message_ids:0 msgid "Messages and communication history" -msgstr "" +msgstr "消息和通信历史" #. module: base_calendar #: field:crm.meeting,message_ids:0 msgid "Messages" -msgstr "" +msgstr "消息" #. module: base_calendar #: selection:calendar.alarm,trigger_interval:0 @@ -266,7 +266,7 @@ msgstr "主席" #. module: base_calendar #: view:crm.meeting:0 msgid "My Meetings" -msgstr "" +msgstr "我的会议" #. module: base_calendar #: selection:calendar.alarm,action:0 @@ -303,12 +303,12 @@ msgstr "" #. module: base_calendar #: field:crm.meeting,name:0 msgid "Meeting Subject" -msgstr "" +msgstr "会议主题" #. module: base_calendar #: view:calendar.event:0 msgid "End of Recurrence" -msgstr "" +msgstr "循环结束" #. module: base_calendar #: view:calendar.event:0 @@ -329,7 +329,7 @@ msgstr "选择重复会议的日子" #: view:crm.meeting:0 #: model:ir.actions.act_window,name:base_calendar.action_crm_meeting msgid "Meetings" -msgstr "" +msgstr "会议" #. module: base_calendar #: field:calendar.event,recurrent_id:0 @@ -342,19 +342,19 @@ msgstr "循环日期" #: field:calendar.alarm,event_end_date:0 #: field:calendar.attendee,event_end_date:0 msgid "Event End Date" -msgstr "事件结束日期" +msgstr "活动结束日期" #. module: base_calendar #: selection:calendar.attendee,role:0 msgid "Optional Participation" -msgstr "可参与" +msgstr "可选择参与" #. module: base_calendar #: help:crm.meeting,message_summary:0 msgid "" "Holds the Chatter summary (number of messages, ...). This summary is " "directly in html format in order to be inserted in kanban views." -msgstr "" +msgstr "保存复杂的摘要(消息数量,……等)。为了插入到看板视图,这一摘要直接是是HTML格式。" #. module: base_calendar #: code:addons/base_calendar/base_calendar.py:388 diff --git a/addons/base_crypt/i18n/it.po b/addons/base_crypt/i18n/it.po index 1425a8c7924..e82a13db711 100644 --- a/addons/base_crypt/i18n/it.po +++ b/addons/base_crypt/i18n/it.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2011-02-15 15:37+0000\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2012-11-28 19:47+0000\n" +"Last-Translator: Davide Corio - agilebg.com \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: base_crypt #: constraint:res.users:0 msgid "Error: Invalid ean code" -msgstr "" +msgstr "Errore: codice EAN non valido" #. module: base_crypt #: constraint:res.users:0 @@ -30,12 +30,12 @@ msgstr "L'azienda scelta non è fra le aziende abilitate per questo utente" #. module: base_crypt #: model:ir.model,name:base_crypt.model_res_users msgid "Users" -msgstr "" +msgstr "Utenti" #. module: base_crypt #: sql_constraint:res.users:0 msgid "OAuth UID must be unique per provider" -msgstr "" +msgstr "il UID OAuth deve essere unico per provider" #. module: base_crypt #: sql_constraint:res.users:0 diff --git a/addons/base_crypt/i18n/zh_CN.po b/addons/base_crypt/i18n/zh_CN.po index 200f04f2971..25cb55361b9 100644 --- a/addons/base_crypt/i18n/zh_CN.po +++ b/addons/base_crypt/i18n/zh_CN.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2011-06-22 08:19+0000\n" -"Last-Translator: FULL NAME \n" +"PO-Revision-Date: 2012-11-28 06:30+0000\n" +"Last-Translator: mrshelly \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:31+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: base_crypt #: constraint:res.users:0 msgid "Error: Invalid ean code" -msgstr "" +msgstr "错误:无效的(EAN)条码" #. module: base_crypt #: constraint:res.users:0 @@ -30,17 +30,17 @@ msgstr "用户无权操作所选择公司数据" #. module: base_crypt #: model:ir.model,name:base_crypt.model_res_users msgid "Users" -msgstr "" +msgstr "用户" #. module: base_crypt #: sql_constraint:res.users:0 msgid "OAuth UID must be unique per provider" -msgstr "" +msgstr "OAuth UID必须是每个提供者唯一的" #. module: base_crypt #: sql_constraint:res.users:0 msgid "You can not have two users with the same login !" -msgstr "你不能同时登录两个用户!" +msgstr "两个用户不能使用相同的用户名!" #, python-format #~ msgid "Error" diff --git a/addons/base_report_designer/i18n/it.po b/addons/base_report_designer/i18n/it.po index 981a8d63301..514223d74e0 100644 --- a/addons/base_report_designer/i18n/it.po +++ b/addons/base_report_designer/i18n/it.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-05-10 18:17+0000\n" -"Last-Translator: Raphael Collet (OpenERP) \n" +"PO-Revision-Date: 2012-11-28 19:53+0000\n" +"Last-Translator: Davide Corio - agilebg.com \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: 2012-11-25 06:09+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: base_report_designer #: model:ir.model,name:base_report_designer.model_base_report_sxw @@ -180,7 +180,7 @@ msgstr "Annulla" #. module: base_report_designer #: view:base.report.sxw:0 msgid "or" -msgstr "" +msgstr "o" #. module: base_report_designer #: model:ir.model,name:base_report_designer.model_ir_actions_report_xml diff --git a/addons/base_setup/i18n/zh_CN.po b/addons/base_setup/i18n/zh_CN.po index 85494807d9c..7fa74452b03 100644 --- a/addons/base_setup/i18n/zh_CN.po +++ b/addons/base_setup/i18n/zh_CN.po @@ -7,19 +7,19 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-10 03:32+0000\n" +"PO-Revision-Date: 2012-11-28 16:54+0000\n" "Last-Translator: ccdos \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: 2012-11-25 05:52+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: base_setup #: view:sale.config.settings:0 msgid "Emails Integration" -msgstr "" +msgstr "Email 集成" #. module: base_setup #: selection:base.setup.terminology,partner:0 @@ -29,18 +29,18 @@ msgstr "访客" #. module: base_setup #: view:sale.config.settings:0 msgid "Contacts" -msgstr "" +msgstr "联系人" #. module: base_setup #: model:ir.model,name:base_setup.model_base_config_settings msgid "base.config.settings" -msgstr "" +msgstr "base.config.settings" #. module: base_setup #: field:base.config.settings,module_auth_oauth:0 msgid "" "Use external authentication providers, sign in with google, facebook, ..." -msgstr "" +msgstr "使用OpenID登陆(Google, Facebook...)" #. module: base_setup #: view:sale.config.settings:0 @@ -63,24 +63,24 @@ msgstr "会员" #. module: base_setup #: view:base.config.settings:0 msgid "Portal access" -msgstr "" +msgstr "门户访问" #. module: base_setup #: view:base.config.settings:0 msgid "Authentication" -msgstr "" +msgstr "身份验证" #. module: base_setup #: view:sale.config.settings:0 msgid "Quotations and Sales Orders" -msgstr "" +msgstr "报价和销售订单" #. module: base_setup #: view:base.config.settings:0 #: model:ir.actions.act_window,name:base_setup.action_general_configuration #: model:ir.ui.menu,name:base_setup.menu_general_configuration msgid "General Settings" -msgstr "" +msgstr "常规设置" #. module: base_setup #: selection:base.setup.terminology,partner:0 @@ -90,12 +90,12 @@ msgstr "捐助者" #. module: base_setup #: view:base.config.settings:0 msgid "Email" -msgstr "" +msgstr "Email" #. module: base_setup #: field:sale.config.settings,module_crm:0 msgid "CRM" -msgstr "" +msgstr "CRM" #. module: base_setup #: selection:base.setup.terminology,partner:0 @@ -105,12 +105,12 @@ msgstr "病人" #. module: base_setup #: field:base.config.settings,module_base_import:0 msgid "Allow users to import data from CSV files" -msgstr "" +msgstr "允许导入CSV数据" #. module: base_setup #: field:base.config.settings,module_multi_company:0 msgid "Manage multiple companies" -msgstr "" +msgstr "允许多公司操作" #. module: base_setup #: help:base.config.settings,module_portal:0 @@ -120,17 +120,17 @@ msgstr "" #. module: base_setup #: view:sale.config.settings:0 msgid "On Mail Client" -msgstr "" +msgstr "在邮件客户端" #. module: base_setup #: field:sale.config.settings,module_web_linkedin:0 msgid "Get contacts automatically from linkedIn" -msgstr "" +msgstr "自动获取LinkedIn联系人" #. module: base_setup #: field:sale.config.settings,module_plugin_thunderbird:0 msgid "Enable Thunderbird plug-in" -msgstr "" +msgstr "允许 Thunderbird 插件" #. module: base_setup #: view:base.setup.terminology:0 @@ -140,22 +140,22 @@ msgstr "res_config_contents" #. module: base_setup #: view:sale.config.settings:0 msgid "Customer Features" -msgstr "" +msgstr "客户特性" #. module: base_setup #: view:base.config.settings:0 msgid "Import / Export" -msgstr "" +msgstr "导入/导出" #. module: base_setup #: view:sale.config.settings:0 msgid "Sale Features" -msgstr "" +msgstr "销售特性" #. module: base_setup #: field:sale.config.settings,module_plugin_outlook:0 msgid "Enable Outlook plug-in" -msgstr "" +msgstr "允许 Outlook 插件" #. module: base_setup #: view:base.setup.terminology:0 @@ -172,7 +172,7 @@ msgstr "承租人" #. module: base_setup #: help:base.config.settings,module_share:0 msgid "Share or embbed any screen of openerp." -msgstr "" +msgstr "分享或者嵌入任意Openerp屏幕" #. module: base_setup #: selection:base.setup.terminology,partner:0 @@ -193,6 +193,8 @@ msgid "" "companies.\n" " This installs the module multi_company." msgstr "" +"工作在多公司环境,公司之间适当地安全访问\n" +" 为此安装模块multi_company。" #. module: base_setup #: view:base.config.settings:0 @@ -204,7 +206,7 @@ msgstr "" #. module: base_setup #: model:ir.model,name:base_setup.model_sale_config_settings msgid "sale.config.settings" -msgstr "" +msgstr "sale.config.settings" #. module: base_setup #: field:base.setup.terminology,partner:0 @@ -224,7 +226,7 @@ msgstr "客户" #. module: base_setup #: help:base.config.settings,module_auth_anonymous:0 msgid "Enable the public part of openerp, openerp becomes a public website." -msgstr "" +msgstr "启用Openerp的公共部分,Openerp成为一个公共的web站点" #. module: base_setup #: help:sale.config.settings,module_plugin_thunderbird:0 @@ -237,6 +239,9 @@ msgid "" " Partner from the selected emails.\n" " This installs the module plugin_thunderbird." msgstr "" +"插件允许把你的email和附件存档到Openerp对象。你能选择一个业务伙伴、或者线索,并 选择邮件存为 .eml 文件 附加到在选中记录的附件中。\n" +"\n" +"为此要安装模块 plugin_thunderbird." #. module: base_setup #: selection:base.setup.terminology,partner:0 @@ -252,7 +257,7 @@ msgstr "称呼客户的另一种方式" #: model:ir.actions.act_window,name:base_setup.action_sale_config #: view:sale.config.settings:0 msgid "Configure Sales" -msgstr "" +msgstr "销售模块配置" #. module: base_setup #: help:sale.config.settings,module_plugin_outlook:0 @@ -265,36 +270,39 @@ msgid "" " email into an OpenERP mail message with attachments.\n" " This installs the module plugin_outlook." msgstr "" +"Outlook 插件允许你把 邮件和它附件添加到你选择对象里。 你能选择一个业务伙伴或者线索 对象,并且把选择的邮件存档到一个带附件的 Openerp " +"邮件消息中。\n" +"为此要安装模块plugin_outlook." #. module: base_setup #: view:base.config.settings:0 msgid "Options" -msgstr "" +msgstr "选项" #. module: base_setup #: field:base.config.settings,module_portal:0 msgid "Activate the customer/supplier portal" -msgstr "" +msgstr "开启合作伙伴Portal" #. module: base_setup #: field:base.config.settings,module_share:0 msgid "Allow documents sharing" -msgstr "" +msgstr "允许分享单据" #. module: base_setup #: field:base.config.settings,module_auth_anonymous:0 msgid "Activate the public portal" -msgstr "" +msgstr "启用公共门户" #. module: base_setup #: view:base.config.settings:0 msgid "Configure outgoing email servers" -msgstr "" +msgstr "配置邮箱发件服务器" #. module: base_setup #: view:sale.config.settings:0 msgid "Social Network Integration" -msgstr "" +msgstr "集成社交网络" #. module: base_setup #: view:base.config.settings:0 @@ -306,7 +314,7 @@ msgstr "取消" #: view:base.config.settings:0 #: view:sale.config.settings:0 msgid "Apply" -msgstr "" +msgstr "应用" #. module: base_setup #: view:base.setup.terminology:0 @@ -317,12 +325,12 @@ msgstr "指定贵公司所用的术语" #: view:base.config.settings:0 #: view:sale.config.settings:0 msgid "or" -msgstr "" +msgstr "or" #. module: base_setup #: view:base.config.settings:0 msgid "Configure your company data" -msgstr "" +msgstr "配置公司信息" #~ msgid "Report Header" #~ msgstr "报表页眉" diff --git a/addons/base_status/i18n/zh_CN.po b/addons/base_status/i18n/zh_CN.po new file mode 100644 index 00000000000..bfb2e6fcebf --- /dev/null +++ b/addons/base_status/i18n/zh_CN.po @@ -0,0 +1,88 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:52+0000\n" +"PO-Revision-Date: 2012-11-28 07:43+0000\n" +"Last-Translator: ccdos \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: base_status +#: code:addons/base_status/base_state.py:107 +#, python-format +msgid "Error !" +msgstr "错误!" + +#. module: base_status +#: code:addons/base_status/base_stage.py:333 +#: code:addons/base_status/base_state.py:187 +#, python-format +msgid "%s has been opened." +msgstr "%s 已经被 打开." + +#. module: base_status +#: code:addons/base_status/base_stage.py:357 +#: code:addons/base_status/base_state.py:220 +#, python-format +msgid "%s has been renewed." +msgstr "%s 已经被 更新." + +#. module: base_status +#: code:addons/base_status/base_stage.py:215 +#, python-format +msgid "Error!" +msgstr "错误!" + +#. module: base_status +#: code:addons/base_status/base_state.py:107 +#, python-format +msgid "" +"You can not escalate, you are already at the top level regarding your sales-" +"team category." +msgstr "不能上报,你已经在您销售团队类别中的最高级了。" + +#. module: base_status +#: code:addons/base_status/base_stage.py:351 +#: code:addons/base_status/base_state.py:214 +#, python-format +msgid "%s is now pending." +msgstr "%s 现在 待定." + +#. module: base_status +#: code:addons/base_status/base_stage.py:345 +#, python-format +msgid "%s has been cancelled." +msgstr "%s 已经被 取消." + +#. module: base_status +#: code:addons/base_status/base_state.py:208 +#, python-format +msgid "%s has been canceled." +msgstr "%s 已经被 取消." + +#. module: base_status +#: code:addons/base_status/base_stage.py:215 +#, python-format +msgid "" +"You are already at the top level of your sales-team category.\n" +"Therefore you cannot escalate furthermore." +msgstr "" +"你已经在您销售团队类别中的最高级了。\n" +"因此,你不能再上报了。" + +#. module: base_status +#: code:addons/base_status/base_stage.py:339 +#: code:addons/base_status/base_state.py:202 +#, python-format +msgid "%s has been closed." +msgstr "%s 已经被 关闭." diff --git a/addons/contacts/i18n/hu.po b/addons/contacts/i18n/hu.po index 9b414baee4e..eacc9b22406 100644 --- a/addons/contacts/i18n/hu.po +++ b/addons/contacts/i18n/hu.po @@ -14,8 +14,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: contacts #: model:ir.actions.act_window,help:contacts.action_contacts diff --git a/addons/contacts/i18n/it.po b/addons/contacts/i18n/it.po new file mode 100644 index 00000000000..e0d4d816737 --- /dev/null +++ b/addons/contacts/i18n/it.po @@ -0,0 +1,46 @@ +# Italian translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:52+0000\n" +"PO-Revision-Date: 2012-11-28 19:52+0000\n" +"Last-Translator: Davide Corio - agilebg.com \n" +"Language-Team: Italian \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: contacts +#: model:ir.actions.act_window,help:contacts.action_contacts +msgid "" +"

\n" +" Click to add a contact in your address book.\n" +"

\n" +" OpenERP helps you easily track all activities related to\n" +" a customer; discussions, history of business opportunities,\n" +" documents, etc.\n" +"

\n" +" " +msgstr "" +"

\n" +" Premere per creare un contatto in rubrica.\n" +"

\n" +" OpenERP ti aiuta a tenere traccia delle attività legate\n" +" a clienti, discussioni, storia delle opportunità,\n" +" document, etc.\n" +"\n" +"

\n" +" " + +#. module: contacts +#: model:ir.actions.act_window,name:contacts.action_contacts +#: model:ir.ui.menu,name:contacts.menu_contacts +msgid "Contacts" +msgstr "Contatti" diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index 88b2edcd665..c552b1835f2 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -4,7 +4,7 @@ - Mark unread + CRM Lead: Mark unread True ir.actions.server @@ -22,7 +22,7 @@ - Mark read + CRM Lead: Mark read True ir.actions.server diff --git a/addons/crm/crm_phonecall_view.xml b/addons/crm/crm_phonecall_view.xml index 9cb09e71be2..a6e8dbe397a 100644 --- a/addons/crm/crm_phonecall_view.xml +++ b/addons/crm/crm_phonecall_view.xml @@ -4,7 +4,7 @@ - Mark unread + CRM Phonecall: Mark unread True ir.actions.server @@ -22,7 +22,7 @@ - Mark read + CRM Phonecall: Mark read True ir.actions.server diff --git a/addons/decimal_precision/i18n/it.po b/addons/decimal_precision/i18n/it.po index 0880c6e8394..53f4da9eaad 100644 --- a/addons/decimal_precision/i18n/it.po +++ b/addons/decimal_precision/i18n/it.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2011-01-12 19:11+0000\n" -"Last-Translator: OpenERP Administrators \n" +"PO-Revision-Date: 2012-11-28 19:56+0000\n" +"Last-Translator: Davide Corio - agilebg.com \n" "Language-Team: Italian \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:23+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: decimal_precision #: field:decimal.precision,digits:0 @@ -28,6 +28,8 @@ msgid "" "Error! You cannot define the decimal precision of 'Account' as greater than " "the rounding factor of the company's main currency" msgstr "" +"Errore! La precisione decimale di 'Contabilità' non può essere più grande " +"del fattore di arrotondamento della valuta principale dell'azienda" #. module: decimal_precision #: model:ir.actions.act_window,name:decimal_precision.action_decimal_precision_form diff --git a/addons/edi/i18n/zh_CN.po b/addons/edi/i18n/zh_CN.po index 5f9d159b7b3..4a71e45fa8e 100644 --- a/addons/edi/i18n/zh_CN.po +++ b/addons/edi/i18n/zh_CN.po @@ -8,28 +8,28 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-17 03:29+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 07:46+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:32+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: edi #. openerp-web #: code:addons/edi/static/src/js/edi.js:67 #, python-format msgid "Reason:" -msgstr "" +msgstr "原因:" #. module: edi #. openerp-web #: code:addons/edi/static/src/js/edi.js:60 #, python-format msgid "The document has been successfully imported!" -msgstr "" +msgstr "这个单据已经被成功导入!" #. module: edi #: sql_constraint:res.company:0 @@ -46,7 +46,7 @@ msgstr "错误,您不能创建循环引用的会员用户" #: code:addons/edi/static/src/js/edi.js:65 #, python-format msgid "Sorry, the document could not be imported." -msgstr "" +msgstr "对不起,这个单据不能导入!" #. module: edi #: constraint:res.company:0 @@ -61,7 +61,7 @@ msgstr "公司" #. module: edi #: constraint:res.partner:0 msgid "Error: Invalid ean code" -msgstr "" +msgstr "错误:无效的(EAN)条码" #. module: edi #: sql_constraint:res.currency:0 @@ -78,13 +78,13 @@ msgstr "货币" #: code:addons/edi/static/src/js/edi.js:71 #, python-format msgid "Document Import Notification" -msgstr "" +msgstr "单据导入通知" #. module: edi #: code:addons/edi/models/edi.py:130 #, python-format msgid "Missing application." -msgstr "" +msgstr "找不到的应用。" #. module: edi #: code:addons/edi/models/edi.py:131 @@ -111,12 +111,12 @@ msgstr "业务伙伴" msgid "" "Error! You cannot define a rounding factor for the company's main currency " "that is smaller than the decimal precision of 'Account'." -msgstr "" +msgstr "错误!公司本位币的舍入系数不能定义得小于”科目“的小数位数" #. module: edi #: model:ir.model,name:edi.model_edi_edi msgid "EDI Subsystem" -msgstr "" +msgstr "EDI 子系统" #~ msgid "Partner Addresses" #~ msgstr "业务伙伴地址" diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml index 14895f2a1a7..9a548679dd3 100644 --- a/addons/event/event_view.xml +++ b/addons/event/event_view.xml @@ -59,7 +59,7 @@ - Mark unread + Event: Mark unread True ir.actions.server @@ -77,7 +77,7 @@ - Mark read + Event: Mark read True ir.actions.server @@ -377,7 +377,7 @@ - Mark unread + Event registration : Mark unread True ir.actions.server @@ -395,7 +395,7 @@ - Mark read + Event registration : Mark read True ir.actions.server diff --git a/addons/event/i18n/zh_CN.po b/addons/event/i18n/zh_CN.po index 8df0dadcd18..f8ad33aebee 100644 --- a/addons/event/i18n/zh_CN.po +++ b/addons/event/i18n/zh_CN.po @@ -7,30 +7,30 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-16 14:07+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-29 01:57+0000\n" +"Last-Translator: mrshelly \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: 2012-11-25 05:44+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:13+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: event #: view:event.event:0 #: view:report.event.registration:0 msgid "My Events" -msgstr "我的事件" +msgstr "我的活动" #. module: event #: field:event.registration,nb_register:0 msgid "Number of Participants" -msgstr "" +msgstr "参与者数目" #. module: event #: field:event.event,register_attended:0 msgid "# of Participations" -msgstr "" +msgstr "参与编号#" #. module: event #: field:event.event,main_speaker_id:0 @@ -61,12 +61,12 @@ msgstr "" #: code:addons/event/event.py:305 #, python-format msgid "Event has been cancelled." -msgstr "" +msgstr "活动 已经被取消." #. module: event #: field:event.registration,date_open:0 msgid "Registration Date" -msgstr "登记记录日期" +msgstr "活动日期" #. module: event #: help:event.registration,origin:0 @@ -76,7 +76,7 @@ msgstr "" #. module: event #: field:event.event,type:0 msgid "Type of Event" -msgstr "" +msgstr "活动类型" #. module: event #: model:event.event,name:event.event_0 @@ -88,17 +88,17 @@ msgstr "Bon Jovi音乐会" #: selection:event.registration,state:0 #: selection:report.event.registration,registration_state:0 msgid "Attended" -msgstr "" +msgstr "参加" #. module: event #: selection:report.event.registration,month:0 msgid "March" -msgstr "3月" +msgstr "三月" #. module: event #: view:event.registration:0 msgid "Send Email" -msgstr "" +msgstr "发送邮件" #. module: event #: field:event.event,company_id:0 @@ -112,29 +112,29 @@ msgstr "公司" #: field:event.event,email_confirmation_id:0 #: field:event.type,default_email_event:0 msgid "Event Confirmation Email" -msgstr "" +msgstr "活动确认邮件" #. module: event #: field:event.type,default_registration_max:0 msgid "Default Maximum Registration" -msgstr "" +msgstr "默认最多的注册者" #. module: event #: help:event.event,message_unread:0 #: help:event.registration,message_unread:0 msgid "If checked new messages require your attention." -msgstr "" +msgstr "如果要求你关注新消息,勾选此项" #. module: event #: field:event.event,register_avail:0 msgid "Available Registrations" -msgstr "" +msgstr "可注册项目" #. module: event #: view:event.registration:0 #: model:ir.model,name:event.model_event_registration msgid "Event Registration" -msgstr "事件登记记录" +msgstr "活动登记记录" #. module: event #: model:ir.module.category,description:event.module_category_event_management @@ -149,7 +149,7 @@ msgstr "" #. module: event #: view:report.event.registration:0 msgid "Event on Registration" -msgstr "登记记录的事件" +msgstr "登记记录的活动" #. module: event #: view:event.event:0 @@ -167,12 +167,12 @@ msgstr "活动开始日期" #: model:ir.ui.menu,name:event.menu_report_event_registration #: view:report.event.registration:0 msgid "Events Analysis" -msgstr "事件分析" +msgstr "活动分析" #. module: event #: help:event.type,default_registration_max:0 msgid "It will select this default maximum value when you choose this event" -msgstr "" +msgstr "当你选择这个活动,将选择默认最大值" #. module: event #: view:report.event.registration:0 @@ -207,13 +207,13 @@ msgstr "错误!" #. module: event #: view:event.event:0 msgid "Confirm Event" -msgstr "确认事件" +msgstr "确认活动" #. module: event #: view:board.board:0 #: model:ir.actions.act_window,name:event.act_event_view msgid "Next Events" -msgstr "下一个事件" +msgstr "下一个活动" #. module: event #: selection:event.event,state:0 @@ -236,23 +236,23 @@ msgstr "Verdi歌剧" #. module: event #: view:report.event.registration:0 msgid "Display" -msgstr "" +msgstr "显示" #. module: event #: view:report.event.registration:0 #: field:report.event.registration,registration_state:0 msgid "Registration State" -msgstr "" +msgstr "等级状态" #. module: event #: view:event.event:0 msgid "tickets" -msgstr "" +msgstr "门票" #. module: event #: view:res.partner:0 msgid "False" -msgstr "" +msgstr "False" #. module: event #: model:mail.message.subtype,name:event.mt_event_registration @@ -262,7 +262,7 @@ msgstr "" #. module: event #: field:event.registration,event_end_date:0 msgid "Event End Date" -msgstr "" +msgstr "活动结束日期" #. module: event #: help:event.event,message_summary:0 @@ -270,7 +270,7 @@ msgstr "" msgid "" "Holds the Chatter summary (number of messages, ...). This summary is " "directly in html format in order to be inserted in kanban views." -msgstr "" +msgstr "保存复杂的摘要(消息数量,……等)。为了插入到看板视图,这一摘要直接是是HTML格式。" #. module: event #: view:report.event.registration:0 @@ -300,12 +300,12 @@ msgstr "业务伙伴" #. module: event #: help:event.type,default_registration_min:0 msgid "It will select this default minimum value when you choose this event" -msgstr "" +msgstr "当你选择这个活动,将选择默认最小值" #. module: event #: model:ir.model,name:event.model_event_type msgid " Event Type " -msgstr " 事件类型 " +msgstr " 活动类型 " #. module: event #: view:event.registration:0 @@ -315,7 +315,7 @@ msgstr " 事件类型 " #: field:report.event.registration,event_id:0 #: view:res.partner:0 msgid "Event" -msgstr "事件" +msgstr "活动" #. module: event #: view:event.event:0 @@ -346,14 +346,14 @@ msgstr "" #. module: event #: view:event.event:0 msgid "Register with this event" -msgstr "" +msgstr "注册这次活动" #. module: event #: help:event.type,default_email_registration:0 msgid "" "It will select this default confirmation registration mail value when you " "choose this event" -msgstr "" +msgstr "当你选择这个活动,将选择确认登记邮件值" #. module: event #: view:event.event:0 @@ -421,7 +421,7 @@ msgstr "创建日期" #: view:report.event.registration:0 #: field:report.event.registration,user_id:0 msgid "Event Responsible" -msgstr "" +msgstr "活动负责人" #. module: event #: view:event.event:0 @@ -453,7 +453,7 @@ msgstr "" #. module: event #: view:event.event:0 msgid "Event Organization" -msgstr "事件结构" +msgstr "活动组织机构" #. module: event #: view:event.confirm:0 @@ -463,7 +463,7 @@ msgstr "总是确认" #. module: event #: field:report.event.registration,nbevent:0 msgid "Number Of Events" -msgstr "事件数" +msgstr "活动数量" #. module: event #: help:event.event,main_speaker_id:0 @@ -479,7 +479,7 @@ msgstr "" #. module: event #: view:event.event:0 msgid "Cancel Event" -msgstr "取消事件" +msgstr "取消活动" #. module: event #: code:addons/event/event.py:398 @@ -491,12 +491,12 @@ msgstr "" #: model:ir.actions.act_window,name:event.act_event_reg #: view:report.event.registration:0 msgid "Events Filling Status" -msgstr "事件填充状态" +msgstr "活动填充状态" #. module: event #: view:event.event:0 msgid "Event Category" -msgstr "" +msgstr "活动分类" #. module: event #: field:event.event,register_prospect:0 @@ -506,13 +506,13 @@ msgstr "不确认登记记录" #. module: event #: model:ir.actions.client,name:event.action_client_event_menu msgid "Open Event Menu" -msgstr "" +msgstr "打开活动菜单" #. module: event #: view:report.event.registration:0 #: field:report.event.registration,event_state:0 msgid "Event State" -msgstr "" +msgstr "活动状态" #. module: event #: field:event.registration,log_ids:0 @@ -559,7 +559,7 @@ msgstr "" #. module: event #: view:event.event:0 msgid "Finish Event" -msgstr "" +msgstr "结束活动" #. module: event #: model:ir.actions.server,name:event.actions_server_event_event_unread @@ -575,7 +575,7 @@ msgstr "未确认状态的报名者" #. module: event #: view:event.event:0 msgid "Event Description" -msgstr "" +msgstr "活动描述" #. module: event #: field:event.event,date_begin:0 @@ -591,7 +591,7 @@ msgstr "" #: code:addons/event/event.py:315 #, python-format msgid "Event has been done." -msgstr "" +msgstr "活动已经 完成" #. module: event #: help:res.partner,speaker:0 @@ -627,6 +627,12 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" 单击添加一个新的活动\n" +"

\n" +" OpenERP帮你排程并有效地组织活动:跟踪订阅和参与、自动确认邮件、卖票等等。\n" +"

\n" +" " #. module: event #: help:event.event,register_max:0 @@ -634,7 +640,7 @@ msgid "" "You can for each event define a maximum registration level. If you have too " "much registrations you are not able to confirm your event. (put 0 to ignore " "this rule )" -msgstr "" +msgstr "你能为每个活动定义最大的登记水平。如果你有太多的登记,你不能确认你的活动。(输入0忽略这个规则)" #. module: event #: code:addons/event/event.py:462 @@ -649,14 +655,14 @@ msgid "" "The total of confirmed registration for the event '%s' does not meet the " "expected minimum/maximum. Please reconsider those limits before going " "further." -msgstr "" +msgstr "活动 '%s' 的确认登记合计没有遇到最小或最大值。进一步深入前请重新考虑这些限制。" #. module: event #: help:event.event,email_confirmation_id:0 msgid "" "If you set an email template, each participant will receive this email " "announcing the confirmation of the event." -msgstr "" +msgstr "如果你设定了邮件模板,每个参与者将收到邮件公告确认次次活动。" #. module: event #: view:board.board:0 @@ -696,7 +702,7 @@ msgstr "" #: model:ir.ui.menu,name:event.menu_reporting_events #: view:res.partner:0 msgid "Events" -msgstr "事件" +msgstr "活动" #. module: event #: view:event.event:0 @@ -743,7 +749,7 @@ msgid "" "The email address of the organizer which is put in the 'Reply-To' of all " "emails sent automatically at event or registrations confirmation. You can " "also put your email address of your mail gateway if you use one." -msgstr "" +msgstr "在自动发送的活动或者登记确认的email中,组织者的email地址放在'Reply-To' 。你也能放你用的邮件网关的Email地址" #. module: event #: help:event.event,message_ids:0 @@ -787,7 +793,7 @@ msgstr "" msgid "" "Warning: This Event has not reached its Minimum Registration Limit. Are you " "sure you want to confirm it?" -msgstr "警告:这事件没有达到最低登记记录的规定,你肯定要确认它?" +msgstr "警告:这活动没有达到最低登记记录的规定,你肯定要确认它?" #. module: event #: view:event.event:0 @@ -803,7 +809,7 @@ msgstr "我的登记记录" #: code:addons/event/event.py:310 #, python-format msgid "Event has been set to draft." -msgstr "" +msgstr "活动被设置为“草稿”状态" #. module: event #: view:report.event.registration:0 @@ -877,7 +883,7 @@ msgstr "地址" #: model:ir.actions.act_window,name:event.action_event_type #: model:ir.ui.menu,name:event.menu_event_type msgid "Types of Events" -msgstr "事件类型" +msgstr "活动类型" #. module: event #: help:event.event,email_registration_id:0 @@ -889,7 +895,7 @@ msgstr "" #. module: event #: view:event.event:0 msgid "Attended the Event" -msgstr "" +msgstr "参加活动" #. module: event #: constraint:event.event:0 @@ -900,7 +906,7 @@ msgstr "错误!结束日期不能在开始日期前。" #: code:addons/event/event.py:400 #, python-format msgid "You must wait for the starting day of the event to do this action." -msgstr "" +msgstr "你必须等待活动开始才能做这些动作" #. module: event #: field:event.event,user_id:0 @@ -938,7 +944,7 @@ msgstr "" #: model:email.template,subject:event.confirmation_event #: model:email.template,subject:event.confirmation_registration msgid "Your registration at ${object.event_id.name}" -msgstr "" +msgstr "你的登记在${object.event_id.name}" #. module: event #: view:event.registration:0 @@ -977,13 +983,13 @@ msgstr "关注者" #. module: event #: view:event.event:0 msgid "Upcoming events from today" -msgstr "" +msgstr "今天将开始的活动" #. module: event #: code:addons/event/event.py:300 #, python-format msgid "Event has been created." -msgstr "" +msgstr "活动已经被'创建'" #. module: event #: model:event.event,name:event.event_2 @@ -1014,12 +1020,12 @@ msgstr "" #: code:addons/event/event.py:320 #, python-format msgid "Event has been confirmed." -msgstr "" +msgstr "活动已经被'确认'" #. module: event #: view:res.partner:0 msgid "Events Registration" -msgstr "事件登记记录" +msgstr "活动登记记录" #. module: event #: view:event.event:0 @@ -1115,7 +1121,7 @@ msgstr "已确认状态的活动" #: view:report.event.registration:0 #: field:report.event.registration,event_type:0 msgid "Event Type" -msgstr "事件类型" +msgstr "活动类型" #. module: event #: field:event.event,message_summary:0 @@ -1148,7 +1154,7 @@ msgstr "错误,您不能创建循环引用的会员用户" #: field:event.registration,event_begin_date:0 #: field:report.event.registration,event_date:0 msgid "Event Start Date" -msgstr "事件开始日期" +msgstr "活动开始日期" #. module: event #: view:report.event.registration:0 @@ -1203,7 +1209,7 @@ msgstr "错误:无效EAN编码" #: model:ir.actions.act_window,name:event.action_event_confirm #: model:ir.model,name:event.model_event_confirm msgid "Event Confirmation" -msgstr "事件确认" +msgstr "活动确认" #. module: event #: view:report.event.registration:0 diff --git a/addons/event_sale/i18n/zh_CN.po b/addons/event_sale/i18n/zh_CN.po new file mode 100644 index 00000000000..84a135bab6d --- /dev/null +++ b/addons/event_sale/i18n/zh_CN.po @@ -0,0 +1,101 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:52+0000\n" +"PO-Revision-Date: 2012-11-29 01:53+0000\n" +"Last-Translator: mrshelly \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: event_sale +#: model:ir.model,name:event_sale.model_product_product +msgid "Product" +msgstr "产品" + +#. module: event_sale +#: help:product.product,event_ok:0 +msgid "" +"Determine if a product needs to create automatically an event registration " +"at the confirmation of a sale order line." +msgstr "销售订单确认时自动创建产品的相关活动." + +#. module: event_sale +#: help:sale.order.line,event_id:0 +msgid "" +"Choose an event and it will automatically create a registration for this " +"event." +msgstr "选择活动" + +#. module: event_sale +#: sql_constraint:product.product:0 +msgid "Error ! Ending Date cannot be set before Beginning Date." +msgstr "错误!结束日期不能早于开始日期。" + +#. module: event_sale +#: model:event.event,name:event_sale.event_technical_training +msgid "Technical training in Grand-Rosiere" +msgstr "" + +#. module: event_sale +#: help:product.product,event_type_id:0 +msgid "" +"Filter the list of event on this category only, in the sale order lines" +msgstr "仅在此类中过滤." + +#. module: event_sale +#: constraint:product.product:0 +msgid "" +"You provided an invalid \"EAN13 Barcode\" reference. You may use the " +"\"Internal Reference\" field instead." +msgstr "你提供了一个错误的 \"EAN13 条码\" 编号。你可能要用 “编号”字段替代。" + +#. module: event_sale +#: code:addons/event_sale/event_sale.py:88 +#, python-format +msgid "The registration %s has been created from the Sale Order %s." +msgstr "" + +#. module: event_sale +#: field:sale.order.line,event_ok:0 +msgid "event_ok" +msgstr "" + +#. module: event_sale +#: field:product.product,event_ok:0 +msgid "Event Subscription" +msgstr "订阅活动" + +#. module: event_sale +#: field:product.product,event_type_id:0 +msgid "Type of Event" +msgstr "活动类型" + +#. module: event_sale +#: field:sale.order.line,event_type_id:0 +msgid "Event Type" +msgstr "活动类型" + +#. module: event_sale +#: model:product.template,name:event_sale.event_product_product_template +msgid "Technical Training" +msgstr "" + +#. module: event_sale +#: field:sale.order.line,event_id:0 +msgid "Event" +msgstr "活动" + +#. module: event_sale +#: model:ir.model,name:event_sale.model_sale_order_line +msgid "Sales Order Line" +msgstr "销售订单明细" diff --git a/addons/fetchmail/i18n/hu.po b/addons/fetchmail/i18n/hu.po index 6251eb81991..4ccea4d621e 100644 --- a/addons/fetchmail/i18n/hu.po +++ b/addons/fetchmail/i18n/hu.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: fetchmail #: selection:fetchmail.server,state:0 diff --git a/addons/fleet/fleet_view.xml b/addons/fleet/fleet_view.xml index 8c7ceaf8d2d..416ca191a6e 100644 --- a/addons/fleet/fleet_view.xml +++ b/addons/fleet/fleet_view.xml @@ -318,12 +318,7 @@ -
- -
- -
- +
diff --git a/addons/google_base_account/i18n/zh_CN.po b/addons/google_base_account/i18n/zh_CN.po index 40b08fb64c9..391d9f10409 100644 --- a/addons/google_base_account/i18n/zh_CN.po +++ b/addons/google_base_account/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-02-16 12:46+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 15:28+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:32+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: google_base_account #: field:res.users,gmail_user:0 @@ -25,7 +25,7 @@ msgstr "用户名:" #. module: google_base_account #: view:res.users:0 msgid "Synchronization" -msgstr "" +msgstr "同步" #. module: google_base_account #: model:ir.actions.act_window,name:google_base_account.act_google_login_form @@ -41,7 +41,7 @@ msgstr "导入Google联系人失败!" #. module: google_base_account #: model:ir.model,name:google_base_account.model_res_users msgid "Users" -msgstr "" +msgstr "用户" #. module: google_base_account #: constraint:res.users:0 @@ -56,7 +56,7 @@ msgstr "两个用户不能使用相同的用户名!" #. module: google_base_account #: sql_constraint:res.users:0 msgid "OAuth UID must be unique per provider" -msgstr "" +msgstr "OAuth UID必须是每个提供者( provider )唯一的" #. module: google_base_account #: view:google.login:0 @@ -71,13 +71,13 @@ msgstr "Google密码" #. module: google_base_account #: view:google.login:0 msgid "or" -msgstr "" +msgstr "or" #. module: google_base_account #: code:addons/google_base_account/wizard/google_login.py:77 #, python-format msgid "Error!" -msgstr "" +msgstr "错误!" #. module: google_base_account #: view:res.users:0 @@ -87,13 +87,13 @@ msgstr "Google 帐户" #. module: google_base_account #: constraint:res.users:0 msgid "Error: Invalid ean code" -msgstr "" +msgstr "错误:无效的(EAN)条码" #. module: google_base_account #: code:addons/google_base_account/wizard/google_login.py:77 #, python-format msgid "Authentication failed. Check the user and password." -msgstr "" +msgstr "身份授权失败。检查用户名和密码。" #. module: google_base_account #: code:addons/google_base_account/wizard/google_login.py:29 @@ -113,7 +113,7 @@ msgstr "Google联系人" #. module: google_base_account #: view:google.login:0 msgid "Cancel" -msgstr "" +msgstr "取消" #. module: google_base_account #: field:google.login,user:0 diff --git a/addons/hr/i18n/zh_CN.po b/addons/hr/i18n/zh_CN.po index 919cbcc678e..1d55acccbac 100644 --- a/addons/hr/i18n/zh_CN.po +++ b/addons/hr/i18n/zh_CN.po @@ -7,14 +7,19 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:51+0000\n" -"PO-Revision-Date: 2012-11-27 15:32+0000\n" +"PO-Revision-Date: 2012-11-28 16:54+0000\n" "Last-Translator: ccdos \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: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: hr +#: constraint:hr.employee:0 +msgid "Error! You cannot create recursive hierarchy of Employee(s)." +msgstr "错误!,你不能创建循环的员工等级" #. module: hr #: model:process.node,name:hr.process_node_openerpuser0 @@ -148,7 +153,7 @@ msgstr "相关的员工" #. module: hr #: constraint:hr.employee.category:0 msgid "Error! You cannot create recursive Categories." -msgstr "错误!你不能创建递归的分类。" +msgstr "错误!你不能创建循环的分类。" #. module: hr #: help:hr.config.settings,module_hr_recruitment:0 @@ -454,11 +459,6 @@ msgstr "" msgid "This installs the module hr_evaluation." msgstr "为此要安装模块 hr_evaluation." -#. module: hr -#: constraint:hr.employee:0 -msgid "Error! You cannot create recursive hierarchy of Employee(s)." -msgstr "错误!,你不能创建递归的员工层次" - #. module: hr #: help:hr.config.settings,module_hr_attendance:0 msgid "This installs the module hr_attendance." @@ -660,7 +660,7 @@ msgstr "国籍和其他信息" #. module: hr #: constraint:hr.department:0 msgid "Error! You cannot create recursive departments." -msgstr "错误!你不能创建递归的部门" +msgstr "错误!你不能创建循环的部门" #. module: hr #: sql_constraint:res.users:0 diff --git a/addons/hr_evaluation/i18n/zh_CN.po b/addons/hr_evaluation/i18n/zh_CN.po index 4cd9668d803..b143238c2b7 100644 --- a/addons/hr_evaluation/i18n/zh_CN.po +++ b/addons/hr_evaluation/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:52+0000\n" -"PO-Revision-Date: 2012-10-25 17:16+0000\n" +"PO-Revision-Date: 2012-11-28 15:27+0000\n" "Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:19+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: hr_evaluation #: help:hr_evaluation.plan.phase,send_anonymous_manager:0 @@ -83,7 +83,7 @@ msgstr "评估阶段" #. module: hr_evaluation #: view:hr.evaluation.interview:0 msgid "Send Request" -msgstr "" +msgstr "发送请求" #. module: hr_evaluation #: help:hr_evaluation.plan,month_first:0 @@ -96,7 +96,7 @@ msgstr "这个月份将在选择的考评计划里对员工进行首次考评。 #: view:hr.employee:0 #: model:ir.ui.menu,name:hr_evaluation.menu_open_view_hr_evaluation_tree msgid "Appraisals" -msgstr "" +msgstr "评估" #. module: hr_evaluation #: view:hr_evaluation.plan.phase:0 @@ -107,7 +107,7 @@ msgstr "(eval_name)s:评估名称" #: field:hr.evaluation.interview,message_ids:0 #: field:hr_evaluation.evaluation,message_ids:0 msgid "Messages" -msgstr "" +msgstr "消息" #. module: hr_evaluation #: view:hr_evaluation.plan.phase:0 @@ -141,13 +141,13 @@ msgstr "没有达到预期" #: model:ir.actions.act_window,name:hr_evaluation.open_view_hr_evaluation_tree #: model:ir.ui.menu,name:hr_evaluation.menu_eval_hr msgid "Appraisal" -msgstr "考评" +msgstr "评估" #. module: hr_evaluation #: help:hr.evaluation.interview,message_unread:0 #: help:hr_evaluation.evaluation,message_unread:0 msgid "If checked new messages require your attention." -msgstr "" +msgstr "如果要求你关注新消息,勾选此项" #. module: hr_evaluation #: view:hr_evaluation.plan.phase:0 @@ -215,7 +215,7 @@ msgstr "在计划执行阶段的评估" msgid "" "Holds the Chatter summary (number of messages, ...). This summary is " "directly in html format in order to be inserted in kanban views." -msgstr "" +msgstr "保存复杂的摘要(消息数量,……等)。为了插入到看板视图,这一摘要直接是是HTML格式。" #. module: hr_evaluation #: view:hr_evaluation.evaluation:0 @@ -232,7 +232,7 @@ msgstr "截止日期" #: code:addons/hr_evaluation/hr_evaluation.py:326 #, python-format msgid "Warning!" -msgstr "" +msgstr "警告!" #. module: hr_evaluation #: view:hr.evaluation.report:0 @@ -252,7 +252,7 @@ msgstr "(date)s: 当前日期" #. module: hr_evaluation #: model:ir.actions.act_window,name:hr_evaluation.act_hr_employee_2_hr__evaluation_interview msgid "Interviews" -msgstr "" +msgstr "面试" #. module: hr_evaluation #: code:addons/hr_evaluation/hr_evaluation.py:82 @@ -264,13 +264,13 @@ msgstr "关于 " #: field:hr.evaluation.interview,message_follower_ids:0 #: field:hr_evaluation.evaluation,message_follower_ids:0 msgid "Followers" -msgstr "" +msgstr "关注者" #. module: hr_evaluation #: field:hr.evaluation.interview,message_unread:0 #: field:hr_evaluation.evaluation,message_unread:0 msgid "Unread Messages" -msgstr "" +msgstr "未读信息" #. module: hr_evaluation #: view:hr.evaluation.report:0 @@ -391,6 +391,14 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" 单击定义一个评估计划 \n" +"

\n" +" 你能定义评估计划(例如:6个月后首次面谈,然后每年一次).\n" +" 然后每个员工能关联到一个评估计划,这样Openerp 能自动\n" +" 生成一个面谈要求给管理人员和下属.\n" +"

\n" +" " #. module: hr_evaluation #: view:hr_evaluation.plan.phase:0 @@ -405,7 +413,7 @@ msgstr "行动计划" #. module: hr_evaluation #: model:ir.ui.menu,name:hr_evaluation.menu_eval_hr_config msgid "Periodic Appraisal" -msgstr "定义复核" +msgstr "定期评估" #. module: hr_evaluation #: field:hr_evaluation.plan,month_next:0 @@ -438,7 +446,7 @@ msgstr "所有答案" #: view:hr.evaluation.interview:0 #: view:hr_evaluation.evaluation:0 msgid "Answer Survey" -msgstr "" +msgstr "填写问卷" #. module: hr_evaluation #: selection:hr.evaluation.report,month:0 @@ -549,7 +557,7 @@ msgstr " (employee_name)s: 业务伙伴名称" #: field:hr.evaluation.interview,message_is_follower:0 #: field:hr_evaluation.evaluation,message_is_follower:0 msgid "Is a Follower" -msgstr "" +msgstr "是一个关注者" #. module: hr_evaluation #: view:hr.evaluation.report:0 @@ -580,7 +588,7 @@ msgstr "增加筛选条件" #: field:hr_evaluation.evaluation,message_comment_ids:0 #: help:hr_evaluation.evaluation,message_comment_ids:0 msgid "Comments and emails" -msgstr "" +msgstr "评论和电子邮件" #. module: hr_evaluation #: help:hr_evaluation.plan.phase,send_anonymous_employee:0 @@ -733,7 +741,7 @@ msgstr "取消" #. module: hr_evaluation #: constraint:hr.employee:0 msgid "Error! You cannot create recursive hierarchy of Employee(s)." -msgstr "" +msgstr "错误!,你不能创建循环的员工层次" #. module: hr_evaluation #: view:hr.evaluation.report:0 @@ -836,7 +844,7 @@ msgstr "阶段" #. module: hr_evaluation #: selection:hr_evaluation.plan.phase,action:0 msgid "Bottom-Up Appraisal Requests" -msgstr "自下而上的考评申请" +msgstr "自下而上的评估申请" #. module: hr_evaluation #: selection:hr.evaluation.report,month:0 @@ -847,7 +855,7 @@ msgstr "2月" #: view:hr.evaluation.interview:0 #: view:hr_evaluation.evaluation:0 msgid "Interview Appraisal" -msgstr "面谈评估" +msgstr "面谈测评" #. module: hr_evaluation #: field:survey.request,is_evaluation:0 @@ -871,7 +879,7 @@ msgstr "面谈员工" msgid "" "You cannot change state, because some appraisal(s) are in waiting answer or " "draft state." -msgstr "" +msgstr "你不能改变状态,因为有些评估正在等待结果。" #. module: hr_evaluation #: selection:hr.evaluation.report,month:0 @@ -887,7 +895,7 @@ msgstr "评估计划阶段" #: help:hr.evaluation.interview,message_ids:0 #: help:hr_evaluation.evaluation,message_ids:0 msgid "Messages and communication history" -msgstr "" +msgstr "消息和通信历史" #. module: hr_evaluation #: view:hr.evaluation.interview:0 diff --git a/addons/hr_holidays/hr_holidays_view.xml b/addons/hr_holidays/hr_holidays_view.xml index 1914d30ec05..aba6dd36538 100644 --- a/addons/hr_holidays/hr_holidays_view.xml +++ b/addons/hr_holidays/hr_holidays_view.xml @@ -3,7 +3,7 @@ - Mark unread + Holidays: Mark unread True ir.actions.server @@ -21,7 +21,7 @@ - Mark read + Holidays: Mark read True ir.actions.server diff --git a/addons/hr_recruitment/__openerp__.py b/addons/hr_recruitment/__openerp__.py index 63c1cf47ccb..f2ba3d55057 100644 --- a/addons/hr_recruitment/__openerp__.py +++ b/addons/hr_recruitment/__openerp__.py @@ -60,7 +60,6 @@ You can define the different phases of interviews and easily rate the applicant 'hr_recruitment_data.xml' ], 'demo': ['hr_recruitment_demo.yml'], - 'js': ['static/src/js/hr_recruitment.js'], 'test': ['test/recruitment_process.yml'], 'installable': True, 'auto_install': False, diff --git a/addons/hr_recruitment/hr_recruitment_view.xml b/addons/hr_recruitment/hr_recruitment_view.xml index c3281b43b94..8282c5a300c 100644 --- a/addons/hr_recruitment/hr_recruitment_view.xml +++ b/addons/hr_recruitment/hr_recruitment_view.xml @@ -37,7 +37,7 @@ - Mark unread + HR Applicant: Mark unread True ir.actions.server @@ -55,7 +55,7 @@ - Mark read + HR Applicant: Mark read True ir.actions.server @@ -314,9 +314,7 @@
diff --git a/addons/hr_recruitment/static/src/js/hr_recruitment.js b/addons/hr_recruitment/static/src/js/hr_recruitment.js deleted file mode 100644 index d11326ac9de..00000000000 --- a/addons/hr_recruitment/static/src/js/hr_recruitment.js +++ /dev/null @@ -1,35 +0,0 @@ -openerp.hr_recruitment = function(openerp) { - openerp.web_kanban.KanbanView.include({ - applicant_display_categ_names: function() { - /* - * Set proper names to applicant categories. - * In kanban views, many2many fields only return a list of ids. - * Therefore, we have to fetch the matching data by ourselves. - */ - var self = this; - var categ_ids = []; - - // Collect categories ids - self.$el.find('span[data-categ_id]').each(function() { - categ_ids.push($(this).data('categ_id')); - }); - - // Find their matching names - var dataset = new openerp.web.DataSetSearch(self, 'hr.applicant_category', self.session.context, [['id', 'in', _.uniq(categ_ids)]]); - dataset.read_slice(['id', 'name']).done(function(result) { - _.each(result, function(v, k) { - // Set the proper value in the DOM and display the element - self.$el.find('span[data-categ_id=' + v.id + ']').text(v.name); - }); - }); - }, - on_groups_started: function() { - var self = this; - self._super.apply(self, arguments); - - if (self.dataset.model === 'hr.applicant') { - self.applicant_display_categ_names(); - } - } - }); -}; diff --git a/addons/hr_timesheet_invoice/hr_timesheet_invoice.py b/addons/hr_timesheet_invoice/hr_timesheet_invoice.py index a24208d6ce0..161ac761aec 100644 --- a/addons/hr_timesheet_invoice/hr_timesheet_invoice.py +++ b/addons/hr_timesheet_invoice/hr_timesheet_invoice.py @@ -19,8 +19,9 @@ # ############################################################################## -from osv import fields, osv +import time +from osv import fields, osv from tools.translate import _ class hr_timesheet_invoice_factor(osv.osv): @@ -172,6 +173,143 @@ class account_analytic_line(osv.osv): return super(account_analytic_line, self).copy(cursor, user, obj_id, default, context=context) + def _get_invoice_price(self, cr, uid, account, product_id, user_id, qty, context = {}): + pro_price_obj = self.pool.get('product.pricelist') + if account.pricelist_id: + pl = account.pricelist_id.id + price = pro_price_obj.price_get(cr,uid,[pl], product_id, qty or 1.0, account.partner_id.id, context=context)[pl] + else: + price = 0.0 + return price + + def invoice_cost_create(self, cr, uid, ids, data=None, context=None): + analytic_account_obj = self.pool.get('account.analytic.account') + account_payment_term_obj = self.pool.get('account.payment.term') + invoice_obj = self.pool.get('account.invoice') + product_obj = self.pool.get('product.product') + invoice_factor_obj = self.pool.get('hr_timesheet_invoice.factor') + fiscal_pos_obj = self.pool.get('account.fiscal.position') + product_uom_obj = self.pool.get('product.uom') + invoice_line_obj = self.pool.get('account.invoice.line') + invoices = [] + if context is None: + context = {} + if data is None: + data = {} + + journal_types = {} + for line in self.pool.get('account.analytic.line').browse(cr, uid, ids, context=context): + if line.journal_id.type not in journal_types: + journal_types[line.journal_id.type] = set() + journal_types[line.journal_id.type].add(line.account_id.id) + for journal_type, account_ids in journal_types.items(): + for account in analytic_account_obj.browse(cr, uid, list(account_ids), context=context): + partner = account.partner_id + if (not partner) or not (account.pricelist_id): + raise osv.except_osv(_('Analytic Account incomplete !'), + _('Contract incomplete. Please fill in the Customer and Pricelist fields.')) + + date_due = False + if partner.property_payment_term: + pterm_list= account_payment_term_obj.compute(cr, uid, + partner.property_payment_term.id, value=1, + date_ref=time.strftime('%Y-%m-%d')) + if pterm_list: + pterm_list = [line[0] for line in pterm_list] + pterm_list.sort() + date_due = pterm_list[-1] + + curr_invoice = { + 'name': time.strftime('%d/%m/%Y') + ' - '+account.name, + 'partner_id': account.partner_id.id, + 'company_id': account.company_id.id, + 'payment_term': partner.property_payment_term.id or False, + 'account_id': partner.property_account_receivable.id, + 'currency_id': account.pricelist_id.currency_id.id, + 'date_due': date_due, + 'fiscal_position': account.partner_id.property_account_position.id + } + + context2 = context.copy() + context2['lang'] = partner.lang + # set company_id in context, so the correct default journal will be selected + context2['force_company'] = curr_invoice['company_id'] + # set force_company in context so the correct product properties are selected (eg. income account) + context2['company_id'] = curr_invoice['company_id'] + + last_invoice = invoice_obj.create(cr, uid, curr_invoice, context=context2) + invoices.append(last_invoice) + + cr.execute("""SELECT product_id, user_id, to_invoice, sum(unit_amount), product_uom_id + FROM account_analytic_line as line LEFT JOIN account_analytic_journal journal ON (line.journal_id = journal.id) + WHERE account_id = %s + AND line.id IN %s AND journal.type = %s AND to_invoice IS NOT NULL + GROUP BY product_id, user_id, to_invoice, product_uom_id""", (account.id, tuple(ids), journal_type)) + + for product_id, user_id, factor_id, qty, uom in cr.fetchall(): + if data.get('product'): + product_id = data['product'][0] + product = product_obj.browse(cr, uid, product_id, context=context2) + if not product: + raise osv.except_osv(_('Error!'), _('There is no product defined. Please select one or force the product through the wizard.')) + factor = invoice_factor_obj.browse(cr, uid, factor_id, context=context2) + factor_name = product_obj.name_get(cr, uid, [product_id], context=context2)[0][1] + if factor.customer_name: + factor_name += ' - ' + factor.customer_name + + ctx = context.copy() + ctx.update({'uom':uom}) + + price = self._get_invoice_price(cr, uid, account, product_id, user_id, qty, ctx) + + general_account = product.product_tmpl_id.property_account_income or product.categ_id.property_account_income_categ + if not general_account: + raise osv.except_osv(_("Configuration Error!"), _("Please define income account for product '%s'.") % product.name) + taxes = product.taxes_id or general_account.tax_ids + tax = fiscal_pos_obj.map_tax(cr, uid, account.partner_id.property_account_position, taxes) + curr_line = { + 'price_unit': price, + 'quantity': qty, + 'discount':factor.factor, + 'invoice_line_tax_id': [(6,0,tax )], + 'invoice_id': last_invoice, + 'name': factor_name, + 'product_id': product_id, + 'invoice_line_tax_id': [(6,0,tax)], + 'uos_id': uom, + 'account_id': general_account.id, + 'account_analytic_id': account.id, + } + + # + # Compute for lines + # + cr.execute("SELECT * FROM account_analytic_line WHERE account_id = %s and id IN %s AND product_id=%s and to_invoice=%s ORDER BY account_analytic_line.date", (account.id, tuple(ids), product_id, factor_id)) + + line_ids = cr.dictfetchall() + note = [] + for line in line_ids: + # set invoice_line_note + details = [] + if data.get('date', False): + details.append(line['date']) + if data.get('time', False): + if line['product_uom_id']: + details.append("%s %s" % (line['unit_amount'], product_uom_obj.browse(cr, uid, [line['product_uom_id']],context2)[0].name)) + else: + details.append("%s" % (line['unit_amount'], )) + if data.get('name', False): + details.append(line['name']) + note.append(u' - '.join(map(lambda x: unicode(x) or '',details))) + + if note: + curr_line['name'] += "\n" + ("\n".join(map(lambda x: unicode(x) or '',note))) + invoice_line_obj.create(cr, uid, curr_line, context=context) + cr.execute("update account_analytic_line set invoice_id=%s WHERE account_id = %s and id IN %s", (last_invoice, account.id, tuple(ids))) + + invoice_obj.button_reset_taxes(cr, uid, [last_invoice], context) + return invoices + account_analytic_line() diff --git a/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py b/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py index ac799f41364..0a8fd36f469 100644 --- a/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py +++ b/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create.py @@ -19,163 +19,10 @@ # ############################################################################## -import time from osv import osv, fields from tools.translate import _ -## Create an invoice based on selected timesheet lines -# - -class account_analytic_line(osv.osv): - _inherit = "account.analytic.line" - def _get_invoice_price(self, cr, uid, account, product_id, user_id, qty, context = {}): - pro_price_obj = self.pool.get('product.pricelist') - if account.pricelist_id: - pl = account.pricelist_id.id - price = pro_price_obj.price_get(cr,uid,[pl], product_id, qty or 1.0, account.partner_id.id, context=context)[pl] - else: - price = 0.0 - return price - - - # - # data = { - # 'date': boolean - # 'time': boolean - # 'name': boolean - # 'price': boolean - # 'product': many2one id - # } - def invoice_cost_create(self, cr, uid, ids, data=None, context=None): - analytic_account_obj = self.pool.get('account.analytic.account') - account_payment_term_obj = self.pool.get('account.payment.term') - invoice_obj = self.pool.get('account.invoice') - product_obj = self.pool.get('product.product') - invoice_factor_obj = self.pool.get('hr_timesheet_invoice.factor') - fiscal_pos_obj = self.pool.get('account.fiscal.position') - product_uom_obj = self.pool.get('product.uom') - invoice_line_obj = self.pool.get('account.invoice.line') - invoices = [] - if context is None: - context = {} - if data is None: - data = {} - - account_ids = [line.account_id.id for line in self.pool.get('account.analytic.line').browse(cr, uid, ids, context=context)] - for account in analytic_account_obj.browse(cr, uid, account_ids, context=context): - partner = account.partner_id - if (not partner) or not (account.pricelist_id): - raise osv.except_osv(_('Analytic Account incomplete !'), - _('Contract incomplete. Please fill in the Customer and Pricelist fields.')) - - - - date_due = False - if partner.property_payment_term: - pterm_list= account_payment_term_obj.compute(cr, uid, - partner.property_payment_term.id, value=1, - date_ref=time.strftime('%Y-%m-%d')) - if pterm_list: - pterm_list = [line[0] for line in pterm_list] - pterm_list.sort() - date_due = pterm_list[-1] - - curr_invoice = { - 'name': time.strftime('%d/%m/%Y')+' - '+account.name, - 'partner_id': account.partner_id.id, - 'company_id': account.company_id.id, - 'payment_term': partner.property_payment_term.id or False, - 'account_id': partner.property_account_receivable.id, - 'currency_id': account.pricelist_id.currency_id.id, - 'date_due': date_due, - 'fiscal_position': account.partner_id.property_account_position.id - } - - context2 = context.copy() - context2['lang'] = partner.lang - # set company_id in context, so the correct default journal will be selected - context2['force_company'] = curr_invoice['company_id'] - # set force_company in context so the correct product properties are selected (eg. income account) - context2['company_id'] = curr_invoice['company_id'] - - last_invoice = invoice_obj.create(cr, uid, curr_invoice, context=context2) - invoices.append(last_invoice) - - cr.execute("SELECT product_id, user_id, to_invoice, sum(unit_amount), product_uom_id " \ - "FROM account_analytic_line as line " \ - "WHERE account_id = %s " \ - "AND id IN %s AND to_invoice IS NOT NULL " \ - "GROUP BY product_id, user_id, to_invoice, product_uom_id", (account.id, tuple(ids),)) - - for product_id, user_id, factor_id, qty, uom in cr.fetchall(): - if data.get('product'): - product_id = data['product'][0] - product = product_obj.browse(cr, uid, product_id, context=context2) - if not product: - raise osv.except_osv(_('Error!'), _('There is no product defined. Please select one or force the product through the wizard.')) - factor = invoice_factor_obj.browse(cr, uid, factor_id, context=context2) - factor_name = product_obj.name_get(cr, uid, [product_id], context=context2)[0][1] - if factor.customer_name: - factor_name += ' - ' + factor.customer_name - - ctx = context.copy() - ctx.update({'uom':uom}) - - price = self._get_invoice_price(cr, uid, account, product_id, user_id, qty, ctx) - - general_account = product.product_tmpl_id.property_account_income or product.categ_id.property_account_income_categ - if not general_account: - raise osv.except_osv(_("Configuration Error!"), _("Please define income account for product '%s'.") % product.name) - taxes = product.taxes_id or general_account.tax_ids - tax = fiscal_pos_obj.map_tax(cr, uid, account.partner_id.property_account_position, taxes) - curr_line = { - 'price_unit': price, - 'quantity': qty, - 'discount':factor.factor, - 'invoice_line_tax_id': [(6,0,tax )], - 'invoice_id': last_invoice, - 'name': factor_name, - 'product_id': product_id, - 'invoice_line_tax_id': [(6,0,tax)], - 'uos_id': uom, - 'account_id': general_account.id, - 'account_analytic_id': account.id, - } - - # - # Compute for lines - # - cr.execute("SELECT * FROM account_analytic_line WHERE account_id = %s and id IN %s AND product_id=%s and to_invoice=%s ORDER BY account_analytic_line.date", (account.id, tuple(ids), product_id, factor_id)) - - line_ids = cr.dictfetchall() - note = [] - for line in line_ids: - # set invoice_line_note - details = [] - if data.get('date', False): - details.append(line['date']) - if data.get('time', False): - if line['product_uom_id']: - details.append("%s %s" % (line['unit_amount'], product_uom_obj.browse(cr, uid, [line['product_uom_id']],context2)[0].name)) - else: - details.append("%s" % (line['unit_amount'], )) - if data.get('name', False): - details.append(line['name']) - note.append(u' - '.join(map(lambda x: unicode(x) or '',details))) - - if note: - curr_line['name'] += "\n" + ("\n".join(map(lambda x: unicode(x) or '',note))) - invoice_line_obj.create(cr, uid, curr_line, context=context) - cr.execute("update account_analytic_line set invoice_id=%s WHERE account_id = %s and id IN %s", (last_invoice, account.id, tuple(ids))) - - invoice_obj.button_reset_taxes(cr, uid, [last_invoice], context) - return invoices - -# -# TODO: check unit of measure !!! -# - class hr_timesheet_invoice_create(osv.osv_memory): _name = 'hr.timesheet.invoice.create' @@ -189,8 +36,8 @@ class hr_timesheet_invoice_create(osv.osv_memory): } _defaults = { - 'date': lambda *args: 1, - 'name': lambda *args: 1 + 'date': 1, + 'name': 1, } def view_init(self, cr, uid, fields, context=None): @@ -210,6 +57,7 @@ class hr_timesheet_invoice_create(osv.osv_memory): def do_create(self, cr, uid, ids, context=None): data = self.read(cr, uid, ids, [], context=context)[0] + # Create an invoice based on selected timesheet lines invs = self.pool.get('account.analytic.line').invoice_cost_create(cr, uid, context['active_ids'], data, context=context) mod_obj = self.pool.get('ir.model.data') act_obj = self.pool.get('ir.actions.act_window') diff --git a/addons/knowledge/i18n/zh_CN.po b/addons/knowledge/i18n/zh_CN.po index 52b9795996f..8e6896c96a0 100644 --- a/addons/knowledge/i18n/zh_CN.po +++ b/addons/knowledge/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:53+0000\n" -"PO-Revision-Date: 2012-11-26 13:46+0000\n" +"PO-Revision-Date: 2012-11-28 08:39+0000\n" "Last-Translator: hifly \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-27 05:24+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: knowledge #: view:knowledge.config.settings:0 @@ -80,17 +80,17 @@ msgstr "共享库(FTP)" #. module: knowledge #: field:knowledge.config.settings,module_document:0 msgid "Manage documents" -msgstr "" +msgstr "管理文档" #. module: knowledge #: view:knowledge.config.settings:0 msgid "Cancel" -msgstr "" +msgstr "取消" #. module: knowledge #: view:knowledge.config.settings:0 msgid "Apply" -msgstr "" +msgstr "应用" #. module: knowledge #: model:ir.ui.menu,name:knowledge.menu_document_configuration @@ -103,16 +103,18 @@ msgid "" "Access your documents in OpenERP through an FTP interface.\n" " This installs the module document_ftp." msgstr "" +"在OpenERP里通过FTP接口访问你的文档。\n" +"需要安装模块document_ftp。" #. module: knowledge #: view:knowledge.config.settings:0 msgid "or" -msgstr "" +msgstr "或者" #. module: knowledge #: field:knowledge.config.settings,module_document_webdav:0 msgid "Share repositories (WebDAV)" -msgstr "" +msgstr "共享仓库(WebDAV)" #. module: knowledge #: model:ir.ui.menu,name:knowledge.menu_document diff --git a/addons/lunch/i18n/zh_CN.po b/addons/lunch/i18n/zh_CN.po index 924c50893d6..bbdc5865ed5 100644 --- a/addons/lunch/i18n/zh_CN.po +++ b/addons/lunch/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:53+0000\n" -"PO-Revision-Date: 2012-11-26 13:13+0000\n" -"Last-Translator: youring \n" +"PO-Revision-Date: 2012-11-28 11:04+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-27 05:24+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: lunch #: field:lunch.product,category_id:0 @@ -47,7 +47,7 @@ msgstr "分组..." #. module: lunch #: field:lunch.alert,sunday:0 msgid "Sunday" -msgstr "周日" +msgstr "星期日" #. module: lunch #: field:lunch.order.line,supplier:0 @@ -68,22 +68,22 @@ msgstr "3月" #. module: lunch #: view:lunch.cashmove:0 msgid "By Employee" -msgstr "" +msgstr "按员工" #. module: lunch #: field:lunch.alert,friday:0 msgid "Friday" -msgstr "周五" +msgstr "星期五" #. module: lunch #: view:lunch.validation:0 msgid "validate order lines" -msgstr "" +msgstr "核对餐单明细" #. module: lunch #: view:lunch.order.line:0 msgid "Order lines Tree" -msgstr "" +msgstr "餐单明细列表" #. module: lunch #: field:lunch.alert,specific_day:0 @@ -132,7 +132,7 @@ msgstr "订餐单(按供餐单位分)" #. module: lunch #: view:lunch.validation:0 msgid "Receive Meals" -msgstr "" +msgstr "接收食品" #. module: lunch #: view:lunch.cashmove:0 @@ -184,7 +184,7 @@ msgstr "" #. module: lunch #: view:lunch.alert:0 msgid "alert tree" -msgstr "" +msgstr "提醒列表" #. module: lunch #: model:ir.model,name:lunch.model_report_lunch_order_line @@ -194,7 +194,7 @@ msgstr "午餐订单统计" #. module: lunch #: model:ir.model,name:lunch.model_lunch_alert msgid "Lunch Alert" -msgstr "" +msgstr "午餐提醒" #. module: lunch #: code:addons/lunch/lunch.py:182 @@ -205,12 +205,12 @@ msgstr "" #. module: lunch #: selection:lunch.alert,alter_type:0 msgid "Every Week" -msgstr "" +msgstr "每周" #. module: lunch #: model:ir.actions.act_window,name:lunch.action_lunch_cashmove msgid "Register Cash Moves" -msgstr "" +msgstr "登记现金凭证" #. module: lunch #: selection:lunch.order,state:0 @@ -230,7 +230,7 @@ msgstr "确认" #. module: lunch #: model:ir.actions.act_window,name:lunch.action_lunch_cashmove_form msgid "Your Account" -msgstr "" +msgstr "您的帐号" #. module: lunch #: model:ir.ui.menu,name:lunch.menu_lunch_cashmove_form @@ -240,12 +240,12 @@ msgstr "" #. module: lunch #: field:lunch.alert,active_from:0 msgid "Between" -msgstr "" +msgstr "介于" #. module: lunch #: model:ir.model,name:lunch.model_lunch_order_order msgid "Wizard to order a meal" -msgstr "" +msgstr "订购食品的向导" #. module: lunch #: selection:lunch.order,state:0 @@ -257,7 +257,7 @@ msgstr "新建" #: code:addons/lunch/lunch.py:179 #, python-format msgid "This is the first time you order a meal" -msgstr "" +msgstr "这是你第一次订购食品" #. module: lunch #: field:report.lunch.order.line,price_total:0 @@ -267,7 +267,7 @@ msgstr "总价格" #. module: lunch #: model:ir.model,name:lunch.model_lunch_validation msgid "lunch validation for order" -msgstr "" +msgstr "午餐确认" #. module: lunch #: report:lunch.order.line:0 @@ -287,13 +287,13 @@ msgstr "7月" #. module: lunch #: model:ir.ui.menu,name:lunch.menu_lunch_config msgid "Configuration" -msgstr "" +msgstr "设置" #. module: lunch #: field:lunch.order,state:0 #: field:lunch.order.line,state:0 msgid "Status" -msgstr "" +msgstr "状态" #. module: lunch #: view:lunch.order.order:0 @@ -301,6 +301,8 @@ msgid "" "Order a meal doesn't mean that we have to pay it.\n" " A meal should be paid when it is received." msgstr "" +"订购食品并不意味着我们必须支付。\n" +" 食品将在收到后支付。" #. module: lunch #: model:ir.actions.act_window,name:lunch.action_lunch_control_accounts @@ -311,12 +313,12 @@ msgstr "" #. module: lunch #: model:ir.ui.menu,name:lunch.menu_lunch_cashmove msgid "Employee's Payment" -msgstr "" +msgstr "员工的支付" #. module: lunch #: selection:lunch.alert,alter_type:0 msgid "Every Day" -msgstr "" +msgstr "每天" #. module: lunch #: field:lunch.order.line,cashmove:0 @@ -326,12 +328,12 @@ msgstr "现金划拨" #. module: lunch #: model:ir.actions.act_window,name:lunch.order_order_lines msgid "Order meals" -msgstr "" +msgstr "订购食品" #. module: lunch #: view:lunch.alert:0 msgid "Schedule Hour" -msgstr "" +msgstr "预定时间" #. module: lunch #: selection:report.lunch.order.line,month:0 @@ -362,12 +364,12 @@ msgstr "" #. module: lunch #: field:lunch.alert,tuesday:0 msgid "Tuesday" -msgstr "" +msgstr "星期二" #. module: lunch #: model:ir.actions.act_window,name:lunch.action_lunch_order_tree msgid "Your Orders" -msgstr "" +msgstr "你的订单" #. module: lunch #: field:report.lunch.order.line,month:0 @@ -391,7 +393,7 @@ msgstr "" #: view:lunch.alert:0 #: field:lunch.alert,message:0 msgid "Message" -msgstr "" +msgstr "消息" #. module: lunch #: view:lunch.order.order:0 @@ -403,7 +405,7 @@ msgstr "" #: view:lunch.order.order:0 #: view:lunch.validation:0 msgid "or" -msgstr "" +msgstr "or" #. module: lunch #: model:ir.actions.act_window,help:lunch.action_lunch_product_categories @@ -420,7 +422,7 @@ msgstr "" #. module: lunch #: view:lunch.order.order:0 msgid "Order meal" -msgstr "" +msgstr "订购食品" #. module: lunch #: model:ir.actions.act_window,name:lunch.action_lunch_product_categories @@ -436,37 +438,37 @@ msgstr "" #. module: lunch #: view:lunch.alert:0 msgid "Schedule Date" -msgstr "" +msgstr "预定日期" #. module: lunch #: model:ir.actions.act_window,name:lunch.action_lunch_alert #: model:ir.ui.menu,name:lunch.menu_lunch_alert #: field:lunch.order,alerts:0 msgid "Alerts" -msgstr "" +msgstr "警告" #. module: lunch #: field:lunch.order.line,note:0 #: field:report.lunch.order.line,note:0 msgid "Note" -msgstr "" +msgstr "说明" #. module: lunch #: code:addons/lunch/lunch.py:249 #, python-format msgid "Add" -msgstr "" +msgstr "新增" #. module: lunch #: view:lunch.product:0 #: view:lunch.product.category:0 msgid "Products Form" -msgstr "" +msgstr "产品表单" #. module: lunch #: model:ir.actions.act_window,name:lunch.cancel_order_lines msgid "Cancel meals" -msgstr "" +msgstr "取消食品" #. module: lunch #: model:ir.model,name:lunch.model_lunch_cashmove @@ -477,12 +479,12 @@ msgstr "" #. module: lunch #: view:lunch.cancel:0 msgid "Are you sure you want to cancel these meals?" -msgstr "" +msgstr "你确信要取消这些食品?" #. module: lunch #: view:lunch.cashmove:0 msgid "My Account" -msgstr "" +msgstr "我的账户" #. module: lunch #: selection:report.lunch.order.line,month:0 @@ -492,17 +494,17 @@ msgstr "8月" #. module: lunch #: field:lunch.alert,monday:0 msgid "Monday" -msgstr "" +msgstr "星期一" #. module: lunch #: field:lunch.order.line,name:0 msgid "unknown" -msgstr "" +msgstr "未知" #. module: lunch #: model:ir.actions.act_window,name:lunch.validate_order_lines msgid "Receive meals" -msgstr "" +msgstr "收到食品" #. module: lunch #: selection:report.lunch.order.line,month:0 @@ -526,12 +528,12 @@ msgstr "午餐管理" #. module: lunch #: model:ir.model,name:lunch.model_lunch_order_line msgid "lunch order line" -msgstr "" +msgstr "午餐订单行" #. module: lunch #: model:ir.model,name:lunch.model_lunch_product msgid "lunch product" -msgstr "" +msgstr "午餐产品" #. module: lunch #: field:lunch.order.line,user_id:0 @@ -554,18 +556,18 @@ msgstr "11月" #. module: lunch #: view:lunch.order:0 msgid "Orders Tree" -msgstr "" +msgstr "订单树" #. module: lunch #: view:lunch.order:0 msgid "Orders Form" -msgstr "" +msgstr "订单表单" #. module: lunch #: view:lunch.alert:0 #: view:lunch.order.line:0 msgid "Search" -msgstr "" +msgstr "查找" #. module: lunch #: selection:report.lunch.order.line,month:0 @@ -600,27 +602,27 @@ msgstr "1月" #. module: lunch #: selection:lunch.alert,alter_type:0 msgid "Specific Day" -msgstr "" +msgstr "指定日" #. module: lunch #: field:lunch.alert,wednesday:0 msgid "Wednesday" -msgstr "" +msgstr "星期三" #. module: lunch #: view:lunch.product.category:0 msgid "Product Category: " -msgstr "" +msgstr "产品目录: " #. module: lunch #: field:lunch.alert,active_to:0 msgid "And" -msgstr "" +msgstr "And" #. module: lunch #: selection:lunch.order.line,state:0 msgid "Ordered" -msgstr "" +msgstr "已订购" #. module: lunch #: field:report.lunch.order.line,date:0 @@ -630,7 +632,7 @@ msgstr "订单日期" #. module: lunch #: view:lunch.cancel:0 msgid "Cancel Orders" -msgstr "" +msgstr "取消订单" #. module: lunch #: model:ir.actions.act_window,help:lunch.action_lunch_alert @@ -657,17 +659,17 @@ msgstr "" #. module: lunch #: view:lunch.cancel:0 msgid "A cancelled meal should not be paid by employees." -msgstr "" +msgstr "已经取消的食品不会被员工支付。" #. module: lunch #: model:ir.ui.menu,name:lunch.menu_lunch_cash msgid "Administrate Cash Moves" -msgstr "" +msgstr "管理现金凭证" #. module: lunch #: model:ir.model,name:lunch.model_lunch_cancel msgid "cancel lunch order" -msgstr "" +msgstr "取消午餐订单" #. module: lunch #: selection:report.lunch.order.line,month:0 @@ -699,14 +701,14 @@ msgstr "" #: code:addons/lunch/lunch.py:185 #, python-format msgid "Your favorite meals will be created based on your last orders." -msgstr "" +msgstr "你食物收藏夹基于最后一次订单创建。" #. module: lunch #: model:ir.module.category,description:lunch.module_lunch_category msgid "" "Helps you handle your lunch needs, if you are a manager you will be able to " "create new products, cashmoves and to confirm or cancel orders." -msgstr "" +msgstr "帮你处理午餐需要的事务,如果是一个管理者,你能创建产品、现金凭证并确认或者取消餐单。" #. module: lunch #: model:ir.actions.act_window,help:lunch.action_lunch_control_accounts @@ -727,18 +729,18 @@ msgstr "" #. module: lunch #: field:lunch.alert,alter_type:0 msgid "Recurrency" -msgstr "" +msgstr "循环" #. module: lunch #: code:addons/lunch/lunch.py:188 #, python-format msgid "Don't forget the alerts displayed in the reddish area" -msgstr "" +msgstr "不要忘记红色区域显示的提示信息。" #. module: lunch #: field:lunch.alert,thursday:0 msgid "Thursday" -msgstr "" +msgstr "星期四" #. module: lunch #: report:lunch.order.line:0 @@ -772,13 +774,13 @@ msgstr "价格" #. module: lunch #: field:lunch.cashmove,state:0 msgid "Is an order or a Payment" -msgstr "" +msgstr "一个订单或者付款单" #. module: lunch #: model:ir.actions.act_window,name:lunch.action_lunch_order_form #: model:ir.ui.menu,name:lunch.menu_lunch_order_form msgid "New Order" -msgstr "" +msgstr "新的订单" #. module: lunch #: view:lunch.cashmove:0 @@ -788,13 +790,13 @@ msgstr "" #. module: lunch #: view:lunch.cancel:0 msgid "Cancel a meal means that we didn't receive it from the supplier." -msgstr "" +msgstr "取消我们不能从供应商出接收的食物。" #. module: lunch #: view:lunch.cashmove:0 #: selection:lunch.cashmove,state:0 msgid "Payment" -msgstr "" +msgstr "付款" #. module: lunch #: selection:report.lunch.order.line,month:0 @@ -809,12 +811,12 @@ msgstr "年" #. module: lunch #: view:lunch.order:0 msgid "List" -msgstr "" +msgstr "列表" #. module: lunch #: model:ir.ui.menu,name:lunch.menu_lunch_admin msgid "Administrate Orders" -msgstr "" +msgstr "订单管理" #. module: lunch #: selection:report.lunch.order.line,month:0 @@ -824,7 +826,7 @@ msgstr "4月" #. module: lunch #: view:lunch.order:0 msgid "Select your order" -msgstr "" +msgstr "选择你的订单" #. module: lunch #: field:lunch.cashmove,order_id:0 @@ -845,22 +847,22 @@ msgstr "午餐订单" #. module: lunch #: view:lunch.order.order:0 msgid "Are you sure you want to order these meals?" -msgstr "" +msgstr "你确信要订购这些食物?" #. module: lunch #: view:lunch.cancel:0 msgid "cancel order lines" -msgstr "" +msgstr "取消订单行" #. module: lunch #: model:ir.model,name:lunch.model_lunch_product_category msgid "lunch product category" -msgstr "" +msgstr "午餐产品目录" #. module: lunch #: field:lunch.alert,saturday:0 msgid "Saturday" -msgstr "" +msgstr "星期六" #. module: lunch #: model:res.groups,name:lunch.group_lunch_manager @@ -870,17 +872,17 @@ msgstr "经理" #. module: lunch #: view:lunch.validation:0 msgid "Did your received these meals?" -msgstr "" +msgstr "你收到了这些食物吗?" #. module: lunch #: view:lunch.validation:0 msgid "Once a meal is received a new cash move is created for the employee." -msgstr "" +msgstr "一旦食物被收取,这个员工的新的现金凭证被创建" #. module: lunch #: view:lunch.product:0 msgid "Products Tree" -msgstr "" +msgstr "产品列表" #. module: lunch #: view:lunch.cashmove:0 @@ -888,12 +890,12 @@ msgstr "" #: field:lunch.order,total:0 #: view:lunch.order.line:0 msgid "Total" -msgstr "" +msgstr "合计" #. module: lunch #: model:ir.ui.menu,name:lunch.menu_lunch_order_tree msgid "Previous Orders" -msgstr "" +msgstr "之前的订单" #~ msgid "Are you sure you want to cancel this order ?" #~ msgstr "您确定要取消此订单?" diff --git a/addons/mail/i18n/hu.po b/addons/mail/i18n/hu.po index 0377a00a8cf..d0d9836ce8c 100644 --- a/addons/mail/i18n/hu.po +++ b/addons/mail/i18n/hu.po @@ -13,8 +13,8 @@ msgstr "" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=utf-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n" -"X-Generator: Launchpad (build 16309)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: mail #: field:res.partner,notification_email_send:0 diff --git a/addons/membership/membership.py b/addons/membership/membership.py index 12e1c89a04a..4ffd067d73e 100644 --- a/addons/membership/membership.py +++ b/addons/membership/membership.py @@ -483,16 +483,16 @@ class Invoice(osv.osv): '''Invoice''' _inherit = 'account.invoice' - def action_cancel(self, cr, uid, ids, *args): + def action_cancel(self, cr, uid, ids, context=None): '''Create a 'date_cancel' on the membership_line object''' member_line_obj = self.pool.get('membership.membership_line') today = time.strftime('%Y-%m-%d') - for invoice in self.browse(cr, uid, ids): + for invoice in self.browse(cr, uid, ids, context=context): mlines = member_line_obj.search(cr, uid, [('account_invoice_line', 'in', [l.id for l in invoice.invoice_line])]) member_line_obj.write(cr, uid, mlines, {'date_cancel': today}) - return super(Invoice, self).action_cancel(cr, uid, ids) + return super(Invoice, self).action_cancel(cr, uid, ids, context=context) Invoice() diff --git a/addons/mrp/i18n/zh_CN.po b/addons/mrp/i18n/zh_CN.po index 16f18fc034d..e1c5cbb92e2 100644 --- a/addons/mrp/i18n/zh_CN.po +++ b/addons/mrp/i18n/zh_CN.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:51+0000\n" -"PO-Revision-Date: 2012-11-25 16:35+0000\n" -"Last-Translator: ccdos \n" +"PO-Revision-Date: 2012-11-28 14:03+0000\n" +"Last-Translator: hifly \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: 2012-11-26 04:40+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:13+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: mrp #: help:mrp.config.settings,module_mrp_repair:0 @@ -29,13 +29,13 @@ msgid "" " This installs the module mrp_repair." msgstr "" "允许管理所有的产品维修.\n" -" * 添加删除要修复的产品\n" +" * 添加/删除要修复的产品\n" " * 影响库存\n" " * 开票(产品和/或服务)\n" " * 保修\n" " * 修理报价单\n" " * 技术人员和最终客户的说明.\n" -" 这需要安装模块mrp_repair." +" 为此需要安装模块mrp_repair." #. module: mrp #: report:mrp.production.order:0 @@ -45,12 +45,12 @@ msgstr "周期数" #. module: mrp #: help:mrp.production,location_src_id:0 msgid "Location where the system will look for components." -msgstr "系统用于查找部件的位置。" +msgstr "系统用于查找部件的库位。" #. module: mrp #: field:mrp.production,workcenter_lines:0 msgid "Work Centers Utilisation" -msgstr "工作中心利用率" +msgstr "工作中心效率" #. module: mrp #: view:mrp.routing.workcenter:0 @@ -1231,6 +1231,9 @@ msgid "" " cases entail a small performance impact.\n" " This installs the module mrp_jit." msgstr "" +"允许需求计划及时进行排程。\n" +" 所有需求计划将被立即处理。这可能会影响一点效率。\n" +" 为此需要安装模块 mrp_jit." #. module: mrp #: help:mrp.workcenter,costs_hour:0 @@ -1491,6 +1494,15 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" 点击创建一个新的属性。\n" +"

\n" +" OpenERP里的属性用于在制造同一个产品却有不同方法时,选择正确的BoM。\n" +" 你可以为每个BoM设置多个属性。 \n" +" 销售员创建销售订单时,可以关联多个属性,\n" +" 这样OpenERP将根据这些属性自动匹配对应的BoM。\n" +"

\n" +" " #. module: mrp #: model:ir.model,name:mrp.model_procurement_order @@ -1581,7 +1593,7 @@ msgid "" " within your work centers in order to produce a product. They " "are attached to bills of materials\n" " that will define the required raw materials." -msgstr "" +msgstr "工艺路线允许你创建并管理制造工序。为了生产产品,这些工序被分配到工作中心。我们在定义原材料的BoM里可以设置工艺路线。" #. module: mrp #: view:report.workcenter.load:0 @@ -2151,6 +2163,15 @@ msgid "" "

\n" " " msgstr "" +"

\n" +" 点击创建BoM。\n" +"

\n" +" BoM允许你为制造一个产品而定义一组原材料;\n" +" 生产可通过生产订单或者产品包装来完成。\n" +"

\n" +" OpenERP使用这些BoM,依据需求自动给出生产订单建议。\n" +"

\n" +" " #. module: mrp #: field:mrp.routing.workcenter,routing_id:0 @@ -2175,6 +2196,10 @@ msgid "" " With this module: A + B + C -> D + E.\n" " This installs the module mrp_byproduct." msgstr "" +"你可以在BoM里配置副产品。\n" +" 不安装该模块,只能做到: A + B + C -> D.\n" +" 安装该模块后,可以做到: A + B + C -> D + E.\n" +" 为此需要安装模块 mrp_byproduct." #. module: mrp #: field:procurement.order,bom_id:0 diff --git a/addons/mrp_byproduct/i18n/zh_CN.po b/addons/mrp_byproduct/i18n/zh_CN.po index 13da473b1c9..347fe584ee8 100644 --- a/addons/mrp_byproduct/i18n/zh_CN.po +++ b/addons/mrp_byproduct/i18n/zh_CN.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:53+0000\n" -"PO-Revision-Date: 2012-06-14 05:53+0000\n" +"PO-Revision-Date: 2012-11-28 14:12+0000\n" "Last-Translator: ccdos \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: 2012-11-25 06:17+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: mrp_byproduct #: help:mrp.subproduct,subproduct_type:0 @@ -27,6 +27,9 @@ msgid "" "BoM / quantity of manufactured product set on the BoM * quantity of " "manufactured product in the production order.)'" msgstr "" +"使用BoM定义在生产订单上有多少数量的副产品。\r\n" +"“固定的” 描绘了生成的副产品的数量总是等于 BoM设置的,无论生产订单生产了多少产品。\r\n" +"相对的,“可变的”意味着数量是要被计算的:BoM设置的副产品数量 / BoM 上设置的产品生产数量 * 在生产订单中的成品数量。)'" #. module: mrp_byproduct #: field:mrp.subproduct,product_id:0 @@ -41,7 +44,7 @@ msgstr "固定的" #. module: mrp_byproduct #: field:mrp.subproduct,product_uom:0 msgid "Product Unit of Measure" -msgstr "" +msgstr "产品计量单位" #. module: mrp_byproduct #: model:ir.model,name:mrp_byproduct.model_mrp_production @@ -60,17 +63,19 @@ msgid "" "You should install the mrp_byproduct module if you want to manage extra " "products on BoMs !" msgstr "" +"所有的产品数量必须大于0。\n" +"如果你要在BOM上面管理额外的产品,你要安装mrp_byproduct模块。" #. module: mrp_byproduct #: view:mrp.bom:0 #: field:mrp.bom,sub_products:0 msgid "Byproducts" -msgstr "" +msgstr "副产品" #. module: mrp_byproduct #: model:ir.model,name:mrp_byproduct.model_change_production_qty msgid "Change Quantity of Products" -msgstr "" +msgstr "修改产成品数量" #. module: mrp_byproduct #: field:mrp.subproduct,subproduct_type:0 @@ -91,7 +96,7 @@ msgstr "产品数量" #: code:addons/mrp_byproduct/mrp_byproduct.py:62 #, python-format msgid "Warning" -msgstr "" +msgstr "警告" #. module: mrp_byproduct #: field:mrp.subproduct,bom_id:0 @@ -124,9 +129,9 @@ msgstr "错误!你不能创建循环引用的物料清单。" msgid "" "The Product Unit of Measure you chose has a different category than in the " "product form." -msgstr "" +msgstr "你选择的计量单位跟产品表单的计量单位在不同的类别。" #. module: mrp_byproduct #: model:ir.model,name:mrp_byproduct.model_mrp_subproduct msgid "Byproduct" -msgstr "" +msgstr "副产品" diff --git a/addons/pad/i18n/zh_CN.po b/addons/pad/i18n/zh_CN.po index 5a329c44078..08ed2ebf7ba 100644 --- a/addons/pad/i18n/zh_CN.po +++ b/addons/pad/i18n/zh_CN.po @@ -8,26 +8,26 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:53+0000\n" -"PO-Revision-Date: 2012-02-14 09:50+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 08:20+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:30+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: pad #. openerp-web #: code:addons/pad/static/src/xml/pad.xml:27 #, python-format msgid "Ñ" -msgstr "" +msgstr "Ñ" #. module: pad #: model:ir.model,name:pad.model_pad_common msgid "pad.common" -msgstr "" +msgstr "pad.common" #. module: pad #: sql_constraint:res.company:0 @@ -37,7 +37,7 @@ msgstr "公司名称必须唯一!" #. module: pad #: help:res.company,pad_key:0 msgid "Etherpad lite api key." -msgstr "" +msgstr "Etherpad lite api key." #. module: pad #: model:ir.model,name:pad.model_res_company @@ -56,27 +56,27 @@ msgstr "错误!您不能创建递归公司." msgid "" "You must configure the etherpad through the menu Setting > Companies > " "Companies, in the configuration tab of your company." -msgstr "" +msgstr "你必须通过菜单 设置->公司->公司,配置 etherpad ,在你的公司的 配置标签中。" #. module: pad #: view:res.company:0 msgid "Pads" -msgstr "" +msgstr "Pads" #. module: pad #: field:res.company,pad_server:0 msgid "Pad Server" -msgstr "" +msgstr "Pad 服务器" #. module: pad #: field:res.company,pad_key:0 msgid "Pad Api Key" -msgstr "" +msgstr "Pad Api Key" #. module: pad #: help:res.company,pad_server:0 msgid "Etherpad lite server. Example: beta.primarypad.com" -msgstr "" +msgstr "Etherpad lite服务器,例如 beta.primarypad.com" #, python-format #~ msgid "Ok" diff --git a/addons/pad_project/i18n/zh_CN.po b/addons/pad_project/i18n/zh_CN.po index a560305a73c..bd6c2d03e02 100644 --- a/addons/pad_project/i18n/zh_CN.po +++ b/addons/pad_project/i18n/zh_CN.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:53+0000\n" -"PO-Revision-Date: 2012-02-14 09:54+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 07:49+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:32+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: pad_project #: constraint:project.task:0 @@ -25,7 +25,7 @@ msgstr "错误!任务结束日期必须大于任务开始日期" #. module: pad_project #: field:project.task,description_pad:0 msgid "Description PAD" -msgstr "" +msgstr "PAD 说明" #. module: pad_project #: model:ir.model,name:pad_project.model_project_task diff --git a/addons/plugin_outlook/i18n/zh_CN.po b/addons/plugin_outlook/i18n/zh_CN.po index 4a108f01ede..49dbb66611a 100644 --- a/addons/plugin_outlook/i18n/zh_CN.po +++ b/addons/plugin_outlook/i18n/zh_CN.po @@ -8,24 +8,24 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:53+0000\n" -"PO-Revision-Date: 2012-02-14 09:56+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 07:53+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:29+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: plugin_outlook #: field:outlook.installer,plugin32:0 msgid "Outlook Plug-in 32bits" -msgstr "" +msgstr "32位Outlook 插件" #. module: plugin_outlook #: view:sale.config.settings:0 msgid "Download and install the plug-in" -msgstr "" +msgstr "下载并安装插件" #. module: plugin_outlook #: model:ir.model,name:plugin_outlook.model_outlook_installer @@ -35,7 +35,7 @@ msgstr "outlook.installer" #. module: plugin_outlook #: view:outlook.installer:0 msgid "MS .Net Framework 3.5 or above." -msgstr "" +msgstr "MS .net 框架3.5 或以上" #. module: plugin_outlook #: model:ir.actions.act_window,name:plugin_outlook.action_outlook_installer @@ -48,7 +48,7 @@ msgstr "安装Outlook插件" #. module: plugin_outlook #: view:outlook.installer:0 msgid "System requirements:" -msgstr "" +msgstr "系统要求" #. module: plugin_outlook #: view:outlook.installer:0 @@ -60,22 +60,22 @@ msgstr "标题" msgid "" "Click on the link above to download the installer for either 32 or 64 bits, " "and execute it." -msgstr "" +msgstr "在链接上面单击 下载32位或64位安装文件,然后执行。" #. module: plugin_outlook #: view:outlook.installer:0 msgid "MS Outlook 2005 or above." -msgstr "" +msgstr "MS Outlook 2005 或以上" #. module: plugin_outlook #: view:outlook.installer:0 msgid "Close" -msgstr "" +msgstr "关闭" #. module: plugin_outlook #: field:outlook.installer,plugin64:0 msgid "Outlook Plug-in 64bits" -msgstr "" +msgstr "64位Outlook 插件" #. module: plugin_outlook #: view:outlook.installer:0 @@ -86,7 +86,7 @@ msgstr "安装和设置步骤" #: help:outlook.installer,plugin32:0 #: help:outlook.installer,plugin64:0 msgid "Outlook plug-in file. Save this file and install it in Outlook." -msgstr "" +msgstr "Outlook 插件文件,保存,然后在Outlook中安装" #~ msgid "Outlook Plug-in" #~ msgstr "Outlook插件" diff --git a/addons/plugin_thunderbird/i18n/zh_CN.po b/addons/plugin_thunderbird/i18n/zh_CN.po index d7d758a373d..4581f592c4d 100644 --- a/addons/plugin_thunderbird/i18n/zh_CN.po +++ b/addons/plugin_thunderbird/i18n/zh_CN.po @@ -8,29 +8,29 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME \n" "POT-Creation-Date: 2012-11-24 02:53+0000\n" -"PO-Revision-Date: 2012-02-14 10:00+0000\n" -"Last-Translator: 开阖软件 Jeff Wang \n" +"PO-Revision-Date: 2012-11-28 13:58+0000\n" +"Last-Translator: ccdos \n" "Language-Team: Chinese (Simplified) \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2012-11-25 06:18+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 msgid "Restart Thunderbird." -msgstr "" +msgstr "重启Thunderbird。" #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 msgid "Thunderbird plug-in installation:" -msgstr "" +msgstr "Thunderbird 插件安装:" #. module: plugin_thunderbird #: view:sale.config.settings:0 msgid "Download and install the plug-in" -msgstr "" +msgstr "下载并安装插件" #. module: plugin_thunderbird #: model:ir.actions.act_window,name:plugin_thunderbird.action_thunderbird_installer @@ -43,7 +43,7 @@ msgstr "安装 Thunderbird 插件" #: help:plugin_thunderbird.installer,plugin_file:0 msgid "" "Thunderbird plug-in file. Save this file and install it in Thunderbird." -msgstr "" +msgstr "Thunderbird 插件的文件file。保存此文件,然后在Thunderbird 中安装。" #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 @@ -63,7 +63,7 @@ msgstr "文件名" #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 msgid "Click \"Install Now\"." -msgstr "" +msgstr "单击“现在安装”" #. module: plugin_thunderbird #: model:ir.model,name:plugin_thunderbird.model_plugin_thunderbird_installer @@ -79,7 +79,7 @@ msgstr "Thunderbird 插件" #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 msgid "Configure your openerp server." -msgstr "" +msgstr "配置你的 openerp 服务器" #. module: plugin_thunderbird #: help:plugin_thunderbird.installer,thunderbird:0 @@ -91,17 +91,17 @@ msgstr "允许你选择一个你想链接到你电子邮件和它的附件的对 #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 msgid "Save the Thunderbird plug-in." -msgstr "" +msgstr "保存 Thunderbird 插件。" #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 msgid "Close" -msgstr "" +msgstr "关闭" #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 msgid "Select the plug-in (the file named openerp_plugin.xpi)." -msgstr "" +msgstr "选择插件(文件名是 openerp_plugin.xpi )。" #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 @@ -109,11 +109,13 @@ msgid "" "From the Thunderbird menubar: Tools ­> Add-ons -> Screwdriver/Wrench Icon -> " "Install add-on from file..." msgstr "" +"从 Thunderbird 的菜单条:Tools ­> Add-ons -> Screwdriver/Wrench Icon -> Install " +"add-on from file..." #. module: plugin_thunderbird #: view:plugin_thunderbird.installer:0 msgid "From the Thunderbird menubar: OpenERP -> Configuration." -msgstr "" +msgstr "从 Thunderbird 的菜单条 : OpenERP -> Configuration." #~ msgid "Description" #~ msgstr "描述" diff --git a/addons/point_of_sale/i18n/fr.po b/addons/point_of_sale/i18n/fr.po index 8bbc8f67a01..3d47ee53823 100644 --- a/addons/point_of_sale/i18n/fr.po +++ b/addons/point_of_sale/i18n/fr.po @@ -7,19 +7,19 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2012-11-24 02:51+0000\n" -"PO-Revision-Date: 2012-05-10 18:18+0000\n" +"PO-Revision-Date: 2012-11-28 18:29+0000\n" "Last-Translator: Fabien (Open ERP) \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: 2012-11-25 05:45+0000\n" -"X-Generator: Launchpad (build 16293)\n" +"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n" +"X-Generator: Launchpad (build 16319)\n" #. module: point_of_sale #: field:report.transaction.pos,product_nb:0 msgid "Product Nb." -msgstr "Numéro du Produit" +msgstr "N° article" #. module: point_of_sale #: model:ir.actions.act_window,name:point_of_sale.action_trans_pos_tree_today @@ -130,7 +130,7 @@ msgstr "Jour" #: field:report.sales.by.margin.pos,product_name:0 #: field:report.sales.by.margin.pos.month,product_name:0 msgid "Product Name" -msgstr "Nom du Produit" +msgstr "Nom de l'article" #. module: point_of_sale #: model:product.template,name:point_of_sale.pamplemousse_rouge_pamplemousse_product_template @@ -787,7 +787,7 @@ msgstr "Pizza" #: code:addons/point_of_sale/wizard/pos_return.py:240 #, python-format msgid "Add Product" -msgstr "Ajouter un produit" +msgstr "Ajouter un article" #. module: point_of_sale #: field:pos.config,name:0 @@ -992,7 +992,7 @@ msgstr "Mars" #: model:ir.actions.report.xml,name:point_of_sale.pos_users_product_re #: report:pos.user.product:0 msgid "User's Product" -msgstr "Produit utilisateur" +msgstr "Articles utilisateur" #. module: point_of_sale #: code:addons/point_of_sale/point_of_sale.py:1141 @@ -1002,7 +1002,7 @@ msgid "" "Please set one before choosing a product." msgstr "" "Vous devez sélectionner une liste de prix dans le formulaire de vente !\n" -"Veuillez en choisir une avant de choisir un produit" +"Veuillez en choisir une avant de choisir un article" #. module: point_of_sale #: model:product.template,name:point_of_sale.fanta_orange_2l_product_template @@ -1449,7 +1449,7 @@ msgstr "Dr. Oetker Restaurant Funghi" #: model:ir.actions.act_window,name:point_of_sale.pos_category_action #: model:ir.ui.menu,name:point_of_sale.menu_pos_category msgid "Product Categories" -msgstr "" +msgstr "Catégories d'articles" #. module: point_of_sale #: help:pos.config,journal_id:0 @@ -1581,7 +1581,7 @@ msgstr "" #: code:addons/point_of_sale/static/src/xml/pos.xml:348 #, python-format msgid "The scanned product was not recognized" -msgstr "" +msgstr "L'article scanné n'a pas été reconnu" #. module: point_of_sale #: model:ir.model,name:point_of_sale.model_report_transaction_pos @@ -1690,7 +1690,7 @@ msgstr "Annuler" #: code:addons/point_of_sale/static/src/xml/pos.xml:306 #, python-format msgid "Please put your product on the scale" -msgstr "" +msgstr "Veuillez placer l'article sur la balance" #. module: point_of_sale #: model:ir.actions.report.xml,name:point_of_sale.pos_details_summary @@ -1725,7 +1725,7 @@ msgstr "Prix unitaire" #: code:addons/point_of_sale/static/src/xml/pos.xml:184 #, python-format msgid "Product Weighting" -msgstr "" +msgstr "Pesée des articles" #. module: point_of_sale #. openerp-web @@ -1866,7 +1866,7 @@ msgstr "" #. module: point_of_sale #: model:product.template,name:point_of_sale.unreferenced_product_product_template msgid "Unreferenced Products" -msgstr "" +msgstr "Article inconnu" #. module: point_of_sale #: view:pos.ean_wizard:0 @@ -1949,6 +1949,8 @@ msgstr "" msgid "" "Gives the sequence order when displaying a list of product categories." msgstr "" +"Indique l'ordre d'affichage lorsqu'une liste de catégories d'articles est " +"affichée." #. module: point_of_sale #: view:account.bank.statement:0 @@ -2099,7 +2101,7 @@ msgstr "" #: model:ir.ui.menu,name:point_of_sale.menu_pos_products #: view:pos.order:0 msgid "Products" -msgstr "Produits" +msgstr "Articles" #. module: point_of_sale #: model:product.template,name:point_of_sale.oetker_4formaggi_product_template @@ -2283,7 +2285,7 @@ msgstr "" #: report:pos.details:0 #: report:pos.details_summary:0 msgid "Qty of product" -msgstr "Qté de Produits" +msgstr "Qté d'articles" #. module: point_of_sale #: model:product.template,name:point_of_sale.pomme_golden_perlim_product_template @@ -2323,7 +2325,7 @@ msgstr "Coca-Cola Light 50cl" #: code:addons/point_of_sale/static/src/xml/pos.xml:472 #, python-format msgid "Unknown Product" -msgstr "" +msgstr "Article inconnu" #. module: point_of_sale #. openerp-web @@ -2754,7 +2756,7 @@ msgstr "Statistiques des commandes du point de vente" #: view:report.pos.order:0 #: field:report.pos.order,product_id:0 msgid "Product" -msgstr "Produit" +msgstr "Article" #. module: point_of_sale #: model:product.template,name:point_of_sale.oetker_pollo_product_template diff --git a/addons/point_of_sale/static/src/js/db.js b/addons/point_of_sale/static/src/js/db.js index f8ae9cdb56d..0df57759156 100644 --- a/addons/point_of_sale/static/src/js/db.js +++ b/addons/point_of_sale/static/src/js/db.js @@ -213,8 +213,10 @@ function openerp_pos_db(instance, module){ var stored_products = this.load('products',{}); var product_ids = stored_categories[category_id]; var list = []; - for(var i = 0, len = Math.min(product_ids.length,this.limit); i < len; i++){ - list.push(stored_products[product_ids[i]]); + if (product_ids) { + for (var i = 0, len = Math.min(product_ids.length, this.limit); i < len; i++) { + list.push(stored_products[product_ids[i]]); + } } return list; }, diff --git a/addons/portal_event/i18n/zh_CN.po b/addons/portal_event/i18n/zh_CN.po new file mode 100644 index 00000000000..31eb1eaf09b --- /dev/null +++ b/addons/portal_event/i18n/zh_CN.po @@ -0,0 +1,64 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:53+0000\n" +"PO-Revision-Date: 2012-11-28 12:36+0000\n" +"Last-Translator: ccdos \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: portal_event +#: view:event.event:0 +msgid "Portal Settings" +msgstr "门户设置" + +#. module: portal_event +#: model:ir.actions.act_window,help:portal_event.action_event_view +msgid "There are no public events." +msgstr "没有公共的活动。" + +#. module: portal_event +#: selection:event.event,visibility:0 +msgid "Public" +msgstr "公共的" + +#. module: portal_event +#: constraint:event.event:0 +msgid "Error ! Closing Date cannot be set before Beginning Date." +msgstr "错误!结束日期不能在开始日期前。" + +#. module: portal_event +#: selection:event.event,visibility:0 +msgid "Private" +msgstr "私有的" + +#. module: portal_event +#: model:ir.model,name:portal_event.model_event_event +msgid "Event" +msgstr "活动" + +#. module: portal_event +#: field:event.event,visibility:0 +msgid "Visibility" +msgstr "可见性" + +#. module: portal_event +#: help:event.event,visibility:0 +msgid "Event's visibility in the portal's contact page" +msgstr "活动在门户联系人页面的可见性" + +#. module: portal_event +#: model:ir.actions.act_window,name:portal_event.action_event_view +#: model:ir.ui.menu,name:portal_event.portal_company_events +msgid "Events" +msgstr "活动" diff --git a/addons/portal_hr_employees/i18n/zh_CN.po b/addons/portal_hr_employees/i18n/zh_CN.po new file mode 100644 index 00000000000..33f22506e78 --- /dev/null +++ b/addons/portal_hr_employees/i18n/zh_CN.po @@ -0,0 +1,73 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:53+0000\n" +"PO-Revision-Date: 2012-11-28 14:15+0000\n" +"Last-Translator: ccdos \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: portal_hr_employees +#: view:portal_crm.crm_contact_us:0 +msgid "Tel:" +msgstr "电话:" + +#. module: portal_hr_employees +#: field:portal_crm.crm_contact_us,employee_ids:0 +msgid "Employees" +msgstr "员工" + +#. module: portal_hr_employees +#: view:portal_crm.crm_contact_us:0 +msgid "Mobile:" +msgstr "手机:" + +#. module: portal_hr_employees +#: help:hr.employee,visibility:0 +msgid "Employee's visibility in the portal's contact page" +msgstr "员工的可见性在门户联系人页面" + +#. module: portal_hr_employees +#: selection:hr.employee,visibility:0 +msgid "Private" +msgstr "私有的" + +#. module: portal_hr_employees +#: selection:hr.employee,visibility:0 +msgid "Public" +msgstr "公共的" + +#. module: portal_hr_employees +#: field:hr.employee,visibility:0 +msgid "Visibility" +msgstr "可见性" + +#. module: portal_hr_employees +#: model:ir.model,name:portal_hr_employees.model_portal_crm_crm_contact_us +msgid "Contact form for the portal" +msgstr "来自门户的联系方式" + +#. module: portal_hr_employees +#: model:ir.model,name:portal_hr_employees.model_hr_employee +msgid "Employee" +msgstr "员工" + +#. module: portal_hr_employees +#: constraint:hr.employee:0 +msgid "Error! You cannot create recursive hierarchy of Employee(s)." +msgstr "错误!,你不能创建循环的员工层次" + +#. module: portal_hr_employees +#: view:portal_crm.crm_contact_us:0 +msgid "Meet the team" +msgstr "团队集会" diff --git a/addons/portal_project/i18n/zh_CN.po b/addons/portal_project/i18n/zh_CN.po new file mode 100644 index 00000000000..a695b514412 --- /dev/null +++ b/addons/portal_project/i18n/zh_CN.po @@ -0,0 +1,23 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:53+0000\n" +"PO-Revision-Date: 2012-11-28 09:37+0000\n" +"Last-Translator: ccdos \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: portal_project +#: model:ir.ui.menu,name:portal_project.portal_services_tasks +msgid "Tasks" +msgstr "任务" diff --git a/addons/portal_project_issue/i18n/zh_CN.po b/addons/portal_project_issue/i18n/zh_CN.po new file mode 100644 index 00000000000..e8f5cc093da --- /dev/null +++ b/addons/portal_project_issue/i18n/zh_CN.po @@ -0,0 +1,48 @@ +# Chinese (Simplified) translation for openobject-addons +# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR , 2012. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME \n" +"POT-Creation-Date: 2012-11-24 02:53+0000\n" +"PO-Revision-Date: 2012-11-28 14:20+0000\n" +"Last-Translator: ccdos \n" +"Language-Team: Chinese (Simplified) \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n" +"X-Generator: Launchpad (build 16319)\n" + +#. module: portal_project_issue +#: view:project.issue:0 +msgid "Creation:" +msgstr "创建:" + +#. module: portal_project_issue +#: model:ir.actions.act_window,name:portal_project_issue.project_issue_categ_act0 +#: model:ir.ui.menu,name:portal_project_issue.portal_after_sales_issues +msgid "Issues" +msgstr "问题" + +#. module: portal_project_issue +#: model:ir.actions.act_window,help:portal_project_issue.project_issue_categ_act0 +msgid "" +"

\n" +" Click to create an issue.\n" +"

\n" +" OpenERP's kanban view will help you track easily your " +"current \n" +" pipeline of issues to fix.\n" +"

\n" +" " +msgstr "" +"

\n" +" 单击创建一个问题.\n" +"

\n" +" OpenERP的看板视图将帮助你更便于跟踪你的当前问题被修复的途径。\n" +"

\n" +" " diff --git a/addons/portal_project_issue/portal_project_issue_view.xml b/addons/portal_project_issue/portal_project_issue_view.xml index 6502d92b4dc..c943bb3b825 100644 --- a/addons/portal_project_issue/portal_project_issue_view.xml +++ b/addons/portal_project_issue/portal_project_issue_view.xml @@ -24,12 +24,7 @@
diff --git a/addons/project/static/src/js/project.js b/addons/project/static/src/js/project.js index 38578a6226e..ce8be146e54 100644 --- a/addons/project/static/src/js/project.js +++ b/addons/project/static/src/js/project.js @@ -25,37 +25,12 @@ openerp.project = function(openerp) { }); }); }, - project_display_categ_names: function() { - /* - * Set proper names to project categories. - * In kanban views, many2many fields only return a list of ids. - * Therefore, we have to fetch the matching data by ourselves. - */ - var self = this; - var categ_ids = []; - - // Collect categories ids - self.$el.find('span[data-categ_id]').each(function() { - categ_ids.push($(this).data('categ_id')); - }); - - // Find their matching names - var dataset = new openerp.web.DataSetSearch(self, 'project.category', self.session.context, [['id', 'in', _.uniq(categ_ids)]]); - dataset.read_slice(['id', 'name']).done(function(result) { - _.each(result, function(v, k) { - // Set the proper value in the DOM and display the element - self.$el.find('span[data-categ_id=' + v.id + ']').text(v.name); - }); - }); - }, on_groups_started: function() { var self = this; self._super.apply(self, arguments); if (self.dataset.model === 'project.project') { self.project_display_members_names(); - } else if (self.dataset.model === 'project.task') { - self.project_display_categ_names(); } }, on_record_moved: function(record, old_group, old_index, new_group, new_index){ @@ -74,9 +49,5 @@ openerp.project = function(openerp) { this._super.apply(this, arguments); } }, - bind_events: function() { - this._super(); - this.view.project_display_categ_names(); - }, }); }; diff --git a/addons/project_issue/__openerp__.py b/addons/project_issue/__openerp__.py index b2e9197cefd..2c5f311c044 100644 --- a/addons/project_issue/__openerp__.py +++ b/addons/project_issue/__openerp__.py @@ -61,7 +61,6 @@ It allows the manager to quickly check the issues, assign them and decide on the 'installable': True, 'auto_install': False, 'application': True, - 'js': ['static/src/js/project_issue.js'], } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project_issue/project_issue_view.xml b/addons/project_issue/project_issue_view.xml index e3105127c5d..7d026da96a9 100644 --- a/addons/project_issue/project_issue_view.xml +++ b/addons/project_issue/project_issue_view.xml @@ -6,7 +6,7 @@ - Mark unread + Issue: Mark unread True ir.actions.server @@ -24,7 +24,7 @@ - Mark read + Issue: Mark read True ir.actions.server @@ -264,9 +264,7 @@