diff options
| author | Turkesh Patel (Open ERP) <tpa@tinyerp.com> | 2011-12-09 15:02:59 +0530 |
|---|---|---|
| committer | Turkesh Patel (Open ERP) <tpa@tinyerp.com> | 2011-12-09 15:02:59 +0530 |
| commit | 3f976ffd4ed271e649f1d46377a3a8e9f5adc8f5 (patch) | |
| tree | 0605ee70e79db746a6fb3c5ad089c11ae57d11d4 | |
| parent | 952fee34ef8876d08af933bf351991188154433b (diff) | |
| parent | 59b89d88fd3622b4f3f228cde83734ad6861e3c1 (diff) | |
[MRG]
bzr revid: tpa@tinyerp.com-20111209093259-i5fnc2ohguyhab7l
858 files changed, 15493 insertions, 11956 deletions
diff --git a/addons/account/__openerp__.py b/addons/account/__openerp__.py index 81d09b30ae9..08122f5af30 100644 --- a/addons/account/__openerp__.py +++ b/addons/account/__openerp__.py @@ -19,11 +19,11 @@ # ############################################################################## { - "name" : "Accounting and Financial Management", + "name" : "eInvoicing", "version" : "1.1", "author" : "OpenERP SA", "category": 'Accounting & Finance', - 'complexity': "normal", + 'complexity': "easy", "description": """ Accounting and Financial Management. ==================================== @@ -125,6 +125,7 @@ module named account_voucher. "wizard/account_report_balance_sheet_view.xml", "edi/invoice_action_data.xml", "account_bank_view.xml", + "account_pre_install.yml" ], 'demo_xml': [ 'demo/account_demo.xml', @@ -140,7 +141,6 @@ module named account_voucher. 'test/account_change_currency.yml', 'test/chart_of_account.yml', 'test/account_period_close.yml', - 'test/account_fiscalyear_close_state.yml', 'test/account_use_model.yml', 'test/account_validate_account_move.yml', 'test/account_fiscalyear_close.yml', @@ -148,6 +148,7 @@ module named account_voucher. 'test/account_cash_statement.yml', 'test/test_edi_invoice.yml', 'test/account_report.yml', + 'test/account_fiscalyear_close_state.yml', #last test, as it will definitively close the demo fiscalyear ], 'installable': True, 'active': False, diff --git a/addons/account/account.py b/addons/account/account.py index 630735c487f..a15a04dcffe 100644 --- a/addons/account/account.py +++ b/addons/account/account.py @@ -461,7 +461,7 @@ class account_account(osv.osv): } _defaults = { - 'type': 'view', + 'type': 'other', 'reconcile': False, 'active': True, 'currency_mode': 'current', @@ -716,6 +716,19 @@ class account_journal(osv.osv): _order = 'code' + def _check_currency(self, cr, uid, ids, context=None): + for journal in self.browse(cr, uid, ids, context=context): + if journal.currency: + if journal.default_credit_account_id and not journal.default_credit_account_id.currency_id.id == journal.currency.id: + return False + if journal.default_debit_account_id and not journal.default_debit_account_id.currency_id.id == journal.currency.id: + return False + return True + + _constraints = [ + (_check_currency, 'Configuration error! The currency chosen should be shared by the default accounts too.', ['currency','default_debit_account_id','default_credit_account_id']), + ] + def copy(self, cr, uid, id, default={}, context=None, done_list=[], local=False): journal = self.browse(cr, uid, id, context=context) if not default: @@ -776,9 +789,11 @@ class account_journal(osv.osv): result = self.browse(cr, user, ids, context=context) res = [] for rs in result: - name = rs.name if rs.currency: - name = "%s (%s)" % (rs.name, rs.currency.name) + currency = rs.currency + else: + currency = rs.company_id.currency_id + name = "%s (%s)" % (rs.name, currency.name) res += [(rs.id, name)] return res @@ -846,21 +861,8 @@ class account_fiscalyear(osv.osv): 'state': 'draft', 'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id, } - _order = "date_start" - - def _check_fiscal_year(self, cr, uid, ids, context=None): - current_fiscal_yr = self.browse(cr, uid, ids, context=context)[0] - obj_fiscal_ids = self.search(cr, uid, [('company_id', '=', current_fiscal_yr.company_id.id)], context=context) - obj_fiscal_ids.remove(ids[0]) - data_fiscal_yr = self.browse(cr, uid, obj_fiscal_ids, context=context) - - for old_fy in data_fiscal_yr: - if old_fy.company_id.id == current_fiscal_yr['company_id'].id: - # Condition to check if the current fiscal year falls in between any previously defined fiscal year - if old_fy.date_start <= current_fiscal_yr['date_start'] <= old_fy.date_stop or \ - old_fy.date_start <= current_fiscal_yr['date_stop'] <= old_fy.date_stop: - return False - return True + _order = "date_start, id" + def _check_duration(self, cr, uid, ids, context=None): obj_fy = self.browse(cr, uid, ids[0], context=context) @@ -869,8 +871,7 @@ class account_fiscalyear(osv.osv): return True _constraints = [ - (_check_duration, 'Error! The start date of the fiscal year must be before his end date.', ['date_start','date_stop']), - (_check_fiscal_year, 'Error! You can not define overlapping fiscal years for the same company.',['date_start', 'date_stop']) + (_check_duration, 'Error! The start date of the fiscal year must be before his end date.', ['date_start','date_stop']) ] def create_period3(self, cr, uid, ids, context=None): @@ -881,7 +882,7 @@ class account_fiscalyear(osv.osv): for fy in self.browse(cr, uid, ids, context=context): ds = datetime.strptime(fy.date_start, '%Y-%m-%d') period_obj.create(cr, uid, { - 'name': _('Opening Period'), + 'name': "%s %s" % (_('Opening Period'), ds.strftime('%Y')), 'code': ds.strftime('00/%Y'), 'date_start': ds, 'date_stop': ds, @@ -905,6 +906,10 @@ class account_fiscalyear(osv.osv): return True def find(self, cr, uid, dt=None, exception=True, context=None): + res = self.finds(cr, uid, dt, exception, context=context) + return res and res[0] or False + + def finds(self, cr, uid, dt=None, exception=True, context=None): if context is None: context = {} if not dt: dt = time.strftime('%Y-%m-%d') @@ -919,8 +924,8 @@ class account_fiscalyear(osv.osv): if exception: raise osv.except_osv(_('Error !'), _('No fiscal year defined for this date !\nPlease create one.')) else: - return False - return ids[0] + return [] + return ids def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80): if args is None: @@ -1220,7 +1225,7 @@ class account_move(osv.osv): 'period_id': fields.many2one('account.period', 'Period', required=True, states={'posted':[('readonly',True)]}), 'journal_id': fields.many2one('account.journal', 'Journal', required=True, states={'posted':[('readonly',True)]}), 'state': fields.selection([('draft','Unposted'), ('posted','Posted')], 'State', required=True, readonly=True, - help='All manually created new journal entry are usually in the state \'Unposted\', but you can set the option to skip that state on the related journal. In that case, they will be behave as journal entries automatically created by the system on document validation (invoices, bank statements...) and will be created in \'Posted\' state.'), + help='All manually created new journal entries are usually in the state \'Unposted\', but you can set the option to skip that state on the related journal. In that case, they will be behave as journal entries automatically created by the system on document validation (invoices, bank statements...) and will be created in \'Posted\' state.'), 'line_id': fields.one2many('account.move.line', 'move_id', 'Entries', states={'posted':[('readonly',True)]}), 'to_check': fields.boolean('To Review', help='Check this box if you are unsure of that journal entry and if you want to note it as \'to be reviewed\' by an accounting expert.'), 'partner_id': fields.related('line_id', 'partner_id', type="many2one", relation="res.partner", string="Partner", store=True), @@ -1683,13 +1688,15 @@ class account_tax_code(osv.osv): if context.get('state', 'all') == 'all': move_state = ('draft', 'posted', ) if context.get('fiscalyear_id', False): - fiscalyear_id = context['fiscalyear_id'] + fiscalyear_id = [context['fiscalyear_id']] else: - fiscalyear_id = self.pool.get('account.fiscalyear').find(cr, uid, exception=False) + fiscalyear_id = self.pool.get('account.fiscalyear').finds(cr, uid, exception=False) where = '' where_params = () if fiscalyear_id: - pids = map(lambda x: str(x.id), self.pool.get('account.fiscalyear').browse(cr, uid, fiscalyear_id).period_ids) + pids = [] + for fy in fiscalyear_id: + pids += map(lambda x: str(x.id), self.pool.get('account.fiscalyear').browse(cr, uid, fy).period_ids) if pids: where = ' AND line.period_id IN %s AND move.state IN %s ' where_params = (tuple(pids), move_state) @@ -3149,7 +3156,7 @@ class wizard_multi_charts_accounts(osv.osv_memory): 'type': line.account_type == 'cash' and 'cash' or 'bank', 'company_id': company_id, 'analytic_journal_id': False, - 'currency_id': False, + 'currency': False, } if line.currency_id: vals_journal['view_id'] = view_id_cur diff --git a/addons/account/account_bank.py b/addons/account/account_bank.py index acf070a3ad7..02270b94186 100644 --- a/addons/account/account_bank.py +++ b/addons/account/account_bank.py @@ -99,7 +99,6 @@ class bank(osv.osv): 'type': 'bank', 'company_id': bank.company_id.id, 'analytic_journal_id': False, - 'currency_id': False, 'default_credit_account_id': acc_bank_id, 'default_debit_account_id': acc_bank_id, 'view_id': view_id_cash @@ -108,3 +107,5 @@ class bank(osv.osv): self.write(cr, uid, [bank.id], {'journal_id': journal_id}, context=context) return True + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/account_bank_statement.py b/addons/account/account_bank_statement.py index 57472e228ef..85d9805eb32 100644 --- a/addons/account/account_bank_statement.py +++ b/addons/account/account_bank_statement.py @@ -30,10 +30,12 @@ class account_bank_statement(osv.osv): def create(self, cr, uid, vals, context=None): seq = 0 if 'line_ids' in vals: + new_line_ids = [] for line in vals['line_ids']: seq += 1 line[2]['sequence'] = seq - vals[seq - 1] = line + new_line_ids += tuple(line) + vals['line_ids'] = new_line_ids return super(account_bank_statement, self).create(cr, uid, vals, context=context) def write(self, cr, uid, ids, vals, context=None): diff --git a/addons/account/account_installer.xml b/addons/account/account_installer.xml index 230078c4e33..e249f8fa872 100644 --- a/addons/account/account_installer.xml +++ b/addons/account/account_installer.xml @@ -57,7 +57,7 @@ <record id="category_accounting_configuration" model="ir.actions.todo.category"> <field name="name">Accounting</field> <field name="sequence">5</field> - </record> + </record> <record id="account_configuration_installer_todo" model="ir.actions.todo"> <field name="action_id" ref="action_account_configuration_installer"/> diff --git a/addons/account/account_invoice.py b/addons/account/account_invoice.py index 27881bf1280..39cc471c2f6 100644 --- a/addons/account/account_invoice.py +++ b/addons/account/account_invoice.py @@ -207,7 +207,7 @@ class account_invoice(osv.osv): help=' * The \'Draft\' state is used when a user is encoding a new and unconfirmed Invoice. \ \n* The \'Pro-forma\' when invoice is in Pro-forma state,invoice does not have an invoice number. \ \n* The \'Open\' state is used when user create invoice,a invoice number is generated.Its in open state till user does not pay invoice. \ - \n* The \'Paid\' state is set automatically when invoice is paid.\ + \n* The \'Paid\' state is set automatically when the invoice is paid. Its related journal entries may or may not be reconciled. \ \n* The \'Cancelled\' state is used when user cancel invoice.'), 'date_invoice': fields.date('Invoice Date', readonly=True, states={'draft':[('readonly',False)]}, select=True, help="Keep empty to use the current date"), 'date_due': fields.date('Due Date', states={'paid':[('readonly',True)], 'open':[('readonly',True)], 'close':[('readonly',True)]}, select=True, @@ -257,7 +257,7 @@ class account_invoice(osv.osv): 'account.invoice': (lambda self, cr, uid, ids, c={}: ids, None, 50), # Check if we can remove ? 'account.move.line': (_get_invoice_from_line, None, 50), 'account.move.reconcile': (_get_invoice_from_reconcile, None, 50), - }, help="The Journal Entry of the invoice have been totally reconciled with one or several Journal Entries of payment."), + }, help="It indicates that the invoice has been paid and the journal entry of the invoice has been reconciled with one or several journal entries of payment."), 'partner_bank_id': fields.many2one('res.partner.bank', 'Bank Account', help='Bank Account Number, Company bank account if Invoice is customer or supplier refund, otherwise Partner bank account number.', readonly=True, states={'draft':[('readonly',False)]}), 'move_lines':fields.function(_get_lines, type='many2many', relation='account.move.line', string='Entry Lines'), @@ -923,7 +923,6 @@ class account_invoice(osv.osv): 'line_id': line, 'journal_id': journal_id, 'date': date, - 'type': entry_type, 'narration':inv.comment } period_id = inv.period_id and inv.period_id.id or False @@ -1081,7 +1080,8 @@ class account_invoice(osv.osv): del line['invoice_id'] for field in ('company_id', 'partner_id', 'account_id', 'product_id', 'uos_id', 'account_analytic_id', 'tax_code_id', 'base_code_id'): - line[field] = line.get(field, False) and line[field][0] + if line.get(field): + line[field] = line[field][0] if 'invoice_line_tax_id' in line: line['invoice_line_tax_id'] = [(6,0, line.get('invoice_line_tax_id', [])) ] return map(lambda x: (0,0,x), lines) @@ -1209,7 +1209,7 @@ class account_invoice(osv.osv): l2['name'] = name lines = [(0, 0, l1), (0, 0, l2)] - move = {'ref': ref, 'line_id': lines, 'journal_id': pay_journal_id, 'period_id': period_id, 'date': date, 'type': entry_type} + move = {'ref': ref, 'line_id': lines, 'journal_id': pay_journal_id, 'period_id': period_id, 'date': date} move_id = self.pool.get('account.move').create(cr, uid, move, context=context) line_ids = [] diff --git a/addons/account/account_invoice_view.xml b/addons/account/account_invoice_view.xml index efc7a24031c..4cc1a63db61 100644 --- a/addons/account/account_invoice_view.xml +++ b/addons/account/account_invoice_view.xml @@ -153,7 +153,7 @@ <button name="%(action_account_change_currency)d" type="action" icon="terp-stock_effects-object-colorize" string="Change" attrs="{'invisible':[('state','!=','draft')]}" groups="account.group_account_user"/> <newline/> <field string="Supplier" name="partner_id" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank_id,company_id)" context="{'default_customer': 0, 'search_default_supplier': 1, 'default_supplier': 1}"/> - <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/> + <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id" context="{'default_partner_id': partner_id}"/> <field name="fiscal_position" groups="base.group_extended" widget="selection"/> <newline/> <field name="date_invoice"/> @@ -264,7 +264,7 @@ <button name="%(action_account_change_currency)d" type="action" icon="terp-stock_effects-object-colorize" string="Change" attrs="{'invisible':[('state','!=','draft')]}" groups="account.group_account_user"/> <newline/> <field string="Customer" name="partner_id" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank_id,company_id)" groups="base.group_user" context="{'search_default_customer': 1}"/> - <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/> + <field domain="[('partner_id','=',partner_id)]" name="address_invoice_id" context="{'default_partner_id': partner_id}"/> <field name="fiscal_position" groups="base.group_extended" widget="selection"/> <newline/> <field name="date_invoice"/> @@ -432,7 +432,7 @@ <field name="view_mode">tree,form,calendar,graph</field> <field eval="False" name="view_id"/> <field name="domain">[('type','=','out_invoice')]</field> - <field name="context">{'type':'out_invoice', 'journal_type': 'sale'}</field> + <field name="context">{'default_type':'out_invoice', 'type':'out_invoice', 'journal_type': 'sale'}</field> <field name="search_view_id" ref="view_account_invoice_filter"/> <field name="help">With Customer Invoices you can create and manage sales invoices issued to your customers. OpenERP can also generate draft invoices automatically from sales orders or deliveries. You should only confirm them before sending them to your customers.</field> </record> @@ -460,7 +460,7 @@ <field name="view_mode">tree,form,calendar,graph</field> <field eval="False" name="view_id"/> <field name="domain">[('type','=','in_invoice')]</field> - <field name="context">{'type':'in_invoice', 'journal_type': 'purchase'}</field> + <field name="context">{'default_type': 'in_invoice', 'type': 'in_invoice', 'journal_type': 'purchase'}</field> <field name="search_view_id" ref="view_account_invoice_filter"/> <field name="help">With Supplier Invoices you can enter and manage invoices issued by your suppliers. OpenERP can also generate draft invoices automatically from purchase orders or receipts. This way, you can control the invoice from your supplier according to what you purchased or received.</field> </record> @@ -473,7 +473,7 @@ <field name="view_mode">tree,form,calendar,graph</field> <field eval="False" name="view_id"/> <field name="domain">[('type','=','out_refund')]</field> - <field name="context">{'type':'out_refund', 'journal_type': 'sale_refund'}</field> + <field name="context">{'default_type':'out_refund', 'type':'out_refund', 'journal_type': 'sale_refund'}</field> <field name="search_view_id" ref="view_account_invoice_filter"/> <field name="help">With Customer Refunds you can manage the credit notes for your customers. A refund is a document that credits an invoice completely or partially. You can easily generate refunds and reconcile them directly from the invoice form.</field> </record> @@ -499,7 +499,7 @@ <field name="view_mode">tree,form,calendar,graph</field> <field eval="False" name="view_id"/> <field name="domain">[('type','=','in_refund')]</field> - <field name="context">{'type':'in_refund', 'journal_type': 'purchase_refund'}</field> + <field name="context">{'default_type': 'in_refund', 'type': 'in_refund', 'journal_type': 'purchase_refund'}</field> <field name="search_view_id" ref="view_account_invoice_filter"/> <field name="help">With Supplier Refunds you can manage the credit notes you receive from your suppliers. A refund is a document that credits an invoice completely or partially. You can easily generate refunds and reconcile them directly from the invoice form.</field> </record> diff --git a/addons/account/account_pre_install.yml b/addons/account/account_pre_install.yml new file mode 100644 index 00000000000..13adbe8108f --- /dev/null +++ b/addons/account/account_pre_install.yml @@ -0,0 +1,22 @@ +- + I configure automatically if the country is set on the company, mainly for online offers. +- + !python {model: account.installer}: | + modules = self.pool.get('ir.module.module') + wizards = self.pool.get('ir.actions.todo') + wiz = wizards.browse(cr, uid, ref('account.account_configuration_installer_todo')) + part = self.pool.get('res.partner').browse(cr, uid, ref('base.main_partner')) + # if we know the country and the wizard has not yet been executed, we do it + if (part.country.id) and (wiz.state=='open'): + mod = 'l10n_'+part.country.code.lower() + ids = modules.search(cr, uid, [ ('name','=',mod) ], context=context) + if ids: + wizards.write(cr, uid, [ref('account.account_configuration_installer_todo')], { + 'state': 'done' + }) + wiz_id = self.create(cr, uid, { + 'charts': mod + }) + self.execute_simple(cr, uid, [wiz_id]) + modules.state_update(cr, uid, ids, + 'to install', ['uninstalled'], context=context) diff --git a/addons/account/account_view.xml b/addons/account/account_view.xml index 1d336dda460..0d664d45d32 100644 --- a/addons/account/account_view.xml +++ b/addons/account/account_view.xml @@ -171,8 +171,8 @@ <field name="user_type" select="1"/> <field name="active" groups="base.group_extended" /> <newline/> - <field name="debit" invisible="context.get('config_invisible', True)"/> - <field name="credit" invisible="context.get('config_invisible', True)"/> + <field name="debit" invisible="context.get('config_invisible', True)" attrs="{'readonly':[('type','=','view')]}"/> + <field name="credit" invisible="context.get('config_invisible', True)" attrs="{'readonly':[('type','=','view')]}"/> <field name="balance" invisible="context.get('config_invisible', True)"/> </group> <notebook colspan="4"> @@ -1583,7 +1583,12 @@ context="{'search_default_account_id':[active_id], 'search_default_unreconciled':1, 'default_account_id': active_id}" src_model="account.account"/> - <act_window domain="[('reconcile_id', '=', active_id)]" id="act_account_acount_move_line_reconcile_open" name="Reconciled entries" res_model="account.move.line" src_model="account.move.reconcile"/> + <act_window + domain="[('reconcile_id', '=', active_id)]" + id="act_account_acount_move_line_reconcile_open" + name="Reconciled entries" + res_model="account.move.line" + src_model="account.move.reconcile"/> <!-- @@ -2037,7 +2042,14 @@ res_model="account.move.line" src_model="account.journal"/> - <act_window context="{'search_default_reconcile_id':False, 'search_default_partner_id':[active_id], 'default_partner_id': active_id}" domain="[('account_id.reconcile', '=', True),('account_id.type', 'in', ['receivable', 'payable'])]" id="act_account_partner_account_move_all" name="Receivables & Payables" res_model="account.move.line" src_model="res.partner" groups="base.group_extended"/> + <act_window + context="{'search_default_reconcile_id':False, 'search_default_partner_id':[active_id], 'default_partner_id': active_id}" + domain="[('account_id.reconcile', '=', True),('account_id.type', 'in', ['receivable', 'payable'])]" + id="act_account_partner_account_move_all" + name="Receivables & Payables" + res_model="account.move.line" + src_model="res.partner" + groups="base.group_extended"/> <act_window context="{'search_default_partner_id':[active_id], 'default_partner_id': active_id}" id="act_account_partner_account_move" name="Journal Items" res_model="account.move.line" src_model="res.partner" groups="account.group_account_user"/> diff --git a/addons/account/board_account_view.xml b/addons/account/board_account_view.xml index a39892c84d8..5108a62cf3e 100644 --- a/addons/account/board_account_view.xml +++ b/addons/account/board_account_view.xml @@ -30,6 +30,7 @@ <field name="view_type">form</field> <field name="view_mode">graph,tree</field> <field name="domain">[('type','=','liquidity')]</field> + <field name="context">{'default_type': 'liquidity'}</field> <field name="view_id" ref="account.view_treasory_graph"/> </record> <record id="board_account_form" model="ir.ui.view"> diff --git a/addons/account/demo/account_demo.xml b/addons/account/demo/account_demo.xml index 566185c70c3..0bbfa71af62 100644 --- a/addons/account/demo/account_demo.xml +++ b/addons/account/demo/account_demo.xml @@ -7,7 +7,7 @@ --> <record id="data_fiscalyear" model="account.fiscalyear"> - <field eval="'Fiscal Year '+time.strftime('%Y')" name="name"/> + <field eval="'Fiscal Year X '+time.strftime('%Y')" name="name"/> <field eval="'FY'+time.strftime('%Y')" name="code"/> <field eval="time.strftime('%Y')+'-01-01'" name="date_start"/> <field eval="time.strftime('%Y')+'-12-31'" name="date_stop"/> @@ -20,7 +20,7 @@ <record id="period_1" model="account.period"> <field eval="'01/'+time.strftime('%Y')" name="code"/> - <field eval="'01/'+time.strftime('%Y')" name="name"/> + <field eval="'X 01/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-01-01'" name="date_start"/> @@ -29,7 +29,7 @@ </record> <record id="period_2" model="account.period"> <field eval="'02/'+time.strftime('%Y')" name="code"/> - <field eval="'02/'+time.strftime('%Y')" name="name"/> + <field eval="'X 02/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-02-01'" name="date_start"/> @@ -38,7 +38,7 @@ </record> <record id="period_3" model="account.period"> <field eval="'03/'+time.strftime('%Y')" name="code"/> - <field eval="'03/'+time.strftime('%Y')" name="name"/> + <field eval="'X 03/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-03-01'" name="date_start"/> @@ -47,7 +47,7 @@ </record> <record id="period_4" model="account.period"> <field eval="'04/'+time.strftime('%Y')" name="code"/> - <field eval="'04/'+time.strftime('%Y')" name="name"/> + <field eval="'X 04/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-04-01'" name="date_start"/> @@ -56,7 +56,7 @@ </record> <record id="period_5" model="account.period"> <field eval="'05/'+time.strftime('%Y')" name="code"/> - <field eval="'05/'+time.strftime('%Y')" name="name"/> + <field eval="'X 05/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-05-01'" name="date_start"/> @@ -65,7 +65,7 @@ </record> <record id="period_6" model="account.period"> <field eval="'06/'+time.strftime('%Y')" name="code"/> - <field eval="'06/'+time.strftime('%Y')" name="name"/> + <field eval="'X 06/'+time.strftime('%Y')" name="name"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="True" name="special"/> <field eval="time.strftime('%Y')+'-06-01'" name="date_start"/> @@ -74,7 +74,7 @@ </record> <record id="period_7" model="account.period"> <field eval="'07/'+time.strftime('%Y')" name="code"/> - <field eval="'07/'+time.strftime('%Y')" name="name"/> + <field eval="'X 07/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-07-01'" name="date_start"/> @@ -83,7 +83,7 @@ </record> <record id="period_8" model="account.period"> <field eval="'08/'+time.strftime('%Y')" name="code"/> - <field eval="'08/'+time.strftime('%Y')" name="name"/> + <field eval="'X 08/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-08-01'" name="date_start"/> @@ -92,7 +92,7 @@ </record> <record id="period_9" model="account.period"> <field eval="'09/'+time.strftime('%Y')" name="code"/> - <field eval="'09/'+time.strftime('%Y')" name="name"/> + <field eval="'X 09/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-09-01'" name="date_start"/> @@ -101,7 +101,7 @@ </record> <record id="period_10" model="account.period"> <field eval="'10/'+time.strftime('%Y')" name="code"/> - <field eval="'10/'+time.strftime('%Y')" name="name"/> + <field eval="'X 10/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-10-01'" name="date_start"/> @@ -110,7 +110,7 @@ </record> <record id="period_11" model="account.period"> <field eval="'11/'+time.strftime('%Y')" name="code"/> - <field eval="'11/'+time.strftime('%Y')" name="name"/> + <field eval="'X 11/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-11-01'" name="date_start"/> @@ -119,7 +119,7 @@ </record> <record id="period_12" model="account.period"> <field eval="'12/'+time.strftime('%Y')" name="code"/> - <field eval="'12/'+time.strftime('%Y')" name="name"/> + <field eval="'X 12/'+time.strftime('%Y')" name="name"/> <field eval="True" name="special"/> <field name="fiscalyear_id" ref="data_fiscalyear"/> <field eval="time.strftime('%Y')+'-12-01'" name="date_start"/> @@ -129,6 +129,6 @@ <record id="base.user_demo" model="res.users"> <field name="groups_id" eval="[(4,ref('account.group_account_user'))]"/> - </record> + </record> </data> </openerp> diff --git a/addons/account/edi/__init__.py b/addons/account/edi/__init__.py index d86e8a91bf3..a5bf0bbfa2d 100644 --- a/addons/account/edi/__init__.py +++ b/addons/account/edi/__init__.py @@ -20,3 +20,5 @@ ############################################################################## import invoice + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/edi/invoice.py b/addons/account/edi/invoice.py index 061bf8ee97d..d36e9163ba9 100644 --- a/addons/account/edi/invoice.py +++ b/addons/account/edi/invoice.py @@ -271,3 +271,5 @@ class account_invoice_tax(osv.osv, EDIMixin): _inherit = "account.invoice.tax" + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/i18n/ar.po b/addons/account/i18n/ar.po index 3b5edf1e87d..bbd4189dc8a 100644 --- a/addons/account/i18n/ar.po +++ b/addons/account/i18n/ar.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2011-11-15 03:49+0000\n" +"PO-Revision-Date: 2011-12-08 16:20+0000\n" "Last-Translator: kifcaliph <kifcaliph@hotmail.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: 2011-11-16 05:21+0000\n" -"X-Generator: Launchpad (build 14291)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account #: model:process.transition,name:account.process_transition_supplierreconcilepaid0 @@ -24,7 +24,7 @@ msgstr "نظام الدفع" #. module: account #: view:account.journal:0 msgid "Other Configuration" -msgstr "تعديلات أخرى" +msgstr "إعدادات أخرى" #. module: account #: code:addons/account/wizard/account_open_closed_fiscalyear.py:40 @@ -152,7 +152,7 @@ msgstr "الاصل" #: view:account.move.line.reconcile:0 #: view:account.move.line.reconcile.writeoff:0 msgid "Reconcile" -msgstr "توافق" +msgstr "تسوية" #. module: account #: field:account.bank.statement.line,ref:0 @@ -193,7 +193,7 @@ msgstr "مصدر الحساب" #. module: account #: model:ir.actions.act_window,name:account.act_acc_analytic_acc_5_report_hr_timesheet_invoice_journal msgid "All Analytic Entries" -msgstr "كل السندات التحليلية" +msgstr "كل القيود التحليلية" #. module: account #: model:ir.actions.act_window,name:account.action_view_created_invoice_dashboard @@ -209,7 +209,7 @@ msgstr "سالب" #: code:addons/account/wizard/account_move_journal.py:95 #, python-format msgid "Journal: %s" -msgstr "سجل : %s" +msgstr "يومية: %s" #. module: account #: help:account.analytic.journal,type:0 @@ -230,7 +230,7 @@ msgstr "قوالب الضريبة" #. module: account #: model:ir.model,name:account.model_account_tax msgid "account.tax" -msgstr "حساب.ضريبة" +msgstr "account.tax" #. module: account #: code:addons/account/account.py:901 @@ -607,6 +607,8 @@ msgid "" "If you unreconciliate transactions, you must also verify all the actions " "that are linked to those transactions because they will not be disable" msgstr "" +"إذا قمت إلغاء تسوية العمليات، عليك أيضاً التحقق من كل الإجراءات المتعلقة لكل " +"هذه المعاملات لأنهم لن يتم إيقافها" #. module: account #: view:analytic.entries.report:0 @@ -631,12 +633,12 @@ msgstr "سجل مركزي" #. module: account #: sql_constraint:account.sequence.fiscalyear:0 msgid "Main Sequence must be different from current !" -msgstr "" +msgstr "المسلسل الرئيسي لابد أن يختلف من الحالي !" #. module: account #: field:account.invoice.tax,tax_amount:0 msgid "Tax Code Amount" -msgstr "" +msgstr "مبلغ رمز الضريبة" #. module: account #: code:addons/account/account.py:2779 @@ -648,7 +650,7 @@ msgstr "" #. module: account #: help:account.bank.statement,balance_end_real:0 msgid "closing balance entered by the cashbox verifier" -msgstr "" +msgstr "رصيد الإغلاق من محقق النقدية" #. module: account #: view:account.period:0 @@ -659,7 +661,7 @@ msgstr "اقفال الفترة" #. module: account #: model:ir.model,name:account.model_account_common_partner_report msgid "Account Common Partner Report" -msgstr "" +msgstr "تقرير الحساب المشترك للشريك" #. module: account #: field:account.fiscalyear.close,period_id:0 @@ -688,7 +690,7 @@ msgstr "الشركة يجب ان تكون واحدة لجميع المدخلات #: model:ir.actions.act_window,name:account.action_aged_receivable #, python-format msgid "Receivable Accounts" -msgstr "حسابات القبض" +msgstr "حسابات مدينة" #. module: account #: model:ir.model,name:account.model_account_report_general_ledger @@ -756,7 +758,7 @@ msgstr "نوع" #. module: account #: model:ir.model,name:account.model_account_subscription_line msgid "Account Subscription Line" -msgstr "" +msgstr "خط إشتراك الحساب" #. module: account #: help:account.invoice,reference:0 @@ -818,6 +820,8 @@ msgid "" "Can not %s invoice which is already reconciled, invoice should be " "unreconciled first. You can only Refund this invoice" msgstr "" +"لا يمكن لفاتورة %s حيث تمت تسويتها، يجب إلغاء التسوية أولاً. يمكنك رد " +"الفاتورة فقط." #. module: account #: model:ir.actions.act_window,name:account.action_subscription_form_new @@ -840,7 +844,7 @@ msgstr "الشريك التالي للموازنة" msgid "" "You can not do this modification on a confirmed entry ! Please note that you " "can just change some non important fields !" -msgstr "" +msgstr "لا يمكنك التعديلات لقيد مؤكد ! يمكنك تحرير بعض الحقول غير المهمة فقط" #. module: account #: view:account.invoice.report:0 @@ -904,7 +908,7 @@ msgstr "مرشحات مفصلة..." #. module: account #: model:ir.ui.menu,name:account.menu_account_central_journal msgid "Centralizing Journal" -msgstr "مركزية السجل" +msgstr "مركزية اليومية" #. module: account #: selection:account.journal,type:0 @@ -937,7 +941,7 @@ msgstr "مشتريات" #. module: account #: field:account.model,lines_id:0 msgid "Model Entries" -msgstr "" +msgstr "نموذج للقيود" #. module: account #: field:account.account,code:0 @@ -985,7 +989,7 @@ msgstr "اسم الحساب" #: field:account.chart.template,property_reserve_and_surplus_account:0 #: field:res.company,property_reserve_and_surplus_account:0 msgid "Reserve and Profit/Loss Account" -msgstr "" +msgstr "حساب الإحتياطي و الربح و الخسارة" #. module: account #: field:report.account.receivable,name:0 @@ -1020,7 +1024,7 @@ msgstr "" #. module: account #: view:account.tax:0 msgid "Applicability Options" -msgstr "" +msgstr "خيارات التطابق" #. module: account #: report:account.partner.balance:0 @@ -1080,7 +1084,7 @@ msgstr "" #. module: account #: selection:account.move.line,centralisation:0 msgid "Credit Centralisation" -msgstr "" +msgstr "مركزية الدين" #. module: account #: model:ir.actions.act_window,help:account.action_invoice_tree2 @@ -1112,12 +1116,12 @@ msgstr "رمز الضرائب" #. module: account #: field:account.account,currency_mode:0 msgid "Outgoing Currencies Rate" -msgstr "" +msgstr "معدل العملات الصادرة" #. module: account #: help:account.move.line,move_id:0 msgid "The move of this entry line." -msgstr "" +msgstr "الحركة لخط هذا القيد" #. module: account #: field:account.move.line.reconcile,trans_nbr:0 @@ -1143,7 +1147,7 @@ msgstr "لا يمكنك تعديل/مسح يومية بقيود لهذه الفØ #: help:account.invoice,origin:0 #: help:account.invoice.line,origin:0 msgid "Reference of the document that produced this invoice." -msgstr "" +msgstr "مرجع المستند لهذه الفاتورة" #. module: account #: view:account.analytic.line:0 @@ -1253,7 +1257,7 @@ msgstr "رصيد أول المدة" #. module: account #: view:account.invoice:0 msgid "Reset to Draft" -msgstr "" +msgstr "إعادة التعيين لمسودة" #. module: account #: view:wizard.multi.charts.accounts:0 @@ -1335,7 +1339,7 @@ msgstr "بحث الضرائب" #. module: account #: model:ir.model,name:account.model_account_analytic_cost_ledger msgid "Account Analytic Cost Ledger" -msgstr "" +msgstr "حساب تحليل تكاليف الأستاذ" #. module: account #: view:account.model:0 @@ -1429,7 +1433,7 @@ msgstr "المحاسبة الإنجليزية" #: selection:account.fiscalyear,state:0 #: selection:account.period,state:0 msgid "Closed" -msgstr "" +msgstr "مغلق" #. module: account #: model:ir.ui.menu,name:account.menu_finance_recurrent_entries @@ -1485,7 +1489,7 @@ msgstr "ذهاب للشريك التالي" #. module: account #: view:account.bank.statement:0 msgid "Search Bank Statements" -msgstr "بحث كشوف حسابات المصرف" +msgstr "بحث كشوف حساب المصرف" #. module: account #: sql_constraint:account.model.line:0 @@ -1498,7 +1502,7 @@ msgstr "" #: view:account.chart.template:0 #: field:account.chart.template,property_account_payable:0 msgid "Payable Account" -msgstr "حساب الدائن" +msgstr "حساب الدائنون" #. module: account #: field:account.tax,account_paid_id:0 @@ -1510,7 +1514,7 @@ msgstr "" #: view:account.bank.statement:0 #: field:account.bank.statement,line_ids:0 msgid "Statement lines" -msgstr "" +msgstr "سطور القائمة" #. module: account #: model:ir.actions.act_window,help:account.action_bank_statement_tree @@ -1554,7 +1558,7 @@ msgstr "فاتورة" #: model:process.node,note:account.process_node_analytic0 #: model:process.node,note:account.process_node_analyticcost0 msgid "Analytic costs to invoice" -msgstr "تحليل التكاليف للفاتورة" +msgstr "تكاليف تحليلية للفاتورة" #. module: account #: view:ir.sequence:0 @@ -1564,7 +1568,7 @@ msgstr "مسلسل السنة المالية" #. module: account #: field:wizard.multi.charts.accounts,seq_journal:0 msgid "Separated Journal Sequences" -msgstr "" +msgstr "مسلسلات اليومية منفصلة" #. module: account #: field:account.bank.statement,user_id:0 @@ -1597,28 +1601,28 @@ msgstr "الفواتير" #. module: account #: field:account.chart.template,tax_code_root_id:0 msgid "Root Tax Code" -msgstr "" +msgstr "رمز الضريبة الرئيسي" #. module: account #: field:account.partner.ledger,initial_balance:0 #: field:account.report.general.ledger,initial_balance:0 msgid "Include initial balances" -msgstr "" +msgstr "ضم الأرصدة المبدئية" #. module: account #: field:account.tax.code,sum:0 msgid "Year Sum" -msgstr "" +msgstr "جمع السنة" #. module: account #: model:ir.actions.report.xml,name:account.report_account_voucher_new msgid "Print Voucher" -msgstr "" +msgstr "طباعة الوثيقة" #. module: account #: view:account.change.currency:0 msgid "This wizard will change the currency of the invoice" -msgstr "" +msgstr "هذا المعالج لتغيير العملة للفاتورة" #. module: account #: model:ir.actions.act_window,help:account.action_account_chart @@ -1631,13 +1635,13 @@ msgstr "" #. module: account #: constraint:account.fiscalyear:0 msgid "Error! You cannot define overlapping fiscal years" -msgstr "" +msgstr "خطأ! لا يمكنك تعريف سنوات مالية متداخلة" #. module: account #: code:addons/account/account_move_line.py:808 #, python-format msgid "The account is not defined to be reconciled !" -msgstr "" +msgstr "لم يعرف الحساب لتسويته !" #. module: account #: field:account.cashbox.line,pieces:0 @@ -1649,17 +1653,17 @@ msgstr "قيم" msgid "" "If the active field is set to False, it will allow you to hide the journal " "period without removing it." -msgstr "" +msgstr "إذا كان الحقل" #. module: account #: view:res.partner:0 msgid "Supplier Debit" -msgstr "" +msgstr "مورد مدين" #. module: account #: help:account.model.line,quantity:0 msgid "The optional quantity on entries" -msgstr "" +msgstr "الكمية الإختيارية علي القيود" #. module: account #: model:ir.actions.act_window,name:account.act_account_partner_account_move_all @@ -1675,7 +1679,7 @@ msgstr "يجب إعطاء حساب لقيود الإعدام !" #. module: account #: model:ir.model,name:account.model_account_common_journal_report msgid "Account Common Journal Report" -msgstr "" +msgstr "تقرير حساب اليومية المشترك" #. module: account #: selection:account.partner.balance,display_partner:0 @@ -1685,7 +1689,7 @@ msgstr "كل الشركاء" #. module: account #: report:account.move.voucher:0 msgid "Ref. :" -msgstr "" +msgstr "مرجع:" #. module: account #: view:account.analytic.chart:0 @@ -1706,7 +1710,7 @@ msgstr "مرجع العميل" #: code:addons/account/account_cash_statement.py:328 #, python-format msgid "User %s does not have rights to access %s journal !" -msgstr "" +msgstr "المستخدم %s ليس لديه صلاحيات الكتابة و التحرير ليومية %s!" #. module: account #: help:account.period,special:0 @@ -1716,18 +1720,18 @@ msgstr "هذه الفترات يمكن أن تتداخل." #. module: account #: model:process.node,name:account.process_node_draftstatement0 msgid "Draft statement" -msgstr "" +msgstr "قائمة مؤقتة" #. module: account #: view:account.tax:0 msgid "Tax Declaration: Credit Notes" -msgstr "" +msgstr "الإعلان الضريبي: الأوراق الدائنة" #. module: account #: code:addons/account/account.py:499 #, python-format msgid "You cannot deactivate an account that contains account moves." -msgstr "" +msgstr "لا يمكنك إلغاء نشاط حساب إذا كان يحتوي علي حركات حساب." #. module: account #: field:account.move.line.reconcile,credit:0 @@ -1756,7 +1760,7 @@ msgstr "حساب الإحتياطي و الأرباح و الخسائر" #. module: account #: sql_constraint:account.move.line:0 msgid "Wrong credit or debit value in accounting entry !" -msgstr "" +msgstr "قيمة دائنة أو مدينة خاطئة في القيد المحاسبي !" #. module: account #: view:account.invoice.report:0 @@ -1794,7 +1798,7 @@ msgstr "قيد يومية" #. module: account #: view:account.tax:0 msgid "Tax Declaration: Invoices" -msgstr "" +msgstr "الإعلان الضريبي: الفواتير" #. module: account #: field:account.cashbox.line,subtotal:0 @@ -1852,7 +1856,7 @@ msgstr "حساب الإحتياطي و الأرباح و الخسائر" #. module: account #: help:account.bank.statement,balance_end:0 msgid "Closing balance based on Starting Balance and Cash Transactions" -msgstr "" +msgstr "رصيد الإغلاق بناءاً علي رصيد أول المدة و معاملات النقدية" #. module: account #: model:process.node,note:account.process_node_reconciliation0 @@ -1937,7 +1941,7 @@ msgstr "إلغاء تسوية القيود" #. module: account #: field:account.move.reconcile,line_partial_ids:0 msgid "Partial Entry lines" -msgstr "" +msgstr "سطور لقيود جزئية" #. module: account #: view:account.fiscalyear:0 @@ -2287,7 +2291,7 @@ msgstr "تمركز المدين" #: view:account.invoice.confirm:0 #: model:ir.actions.act_window,name:account.action_account_invoice_confirm msgid "Confirm Draft Invoices" -msgstr "" +msgstr "تأكيد الفواتير المسودة" #. module: account #: field:account.entries.report,day:0 @@ -2481,7 +2485,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_bank_statement_tree #: model:ir.ui.menu,name:account.menu_bank_statement_tree msgid "Bank Statements" -msgstr "كشوف حسابات البنك" +msgstr "كشوف حساب البنك" #. module: account #: selection:account.tax.template,applicable_type:0 @@ -2571,7 +2575,7 @@ msgstr "" #: code:addons/account/wizard/account_use_model.py:81 #, python-format msgid "You have to define an analytic journal on the '%s' journal!" -msgstr "" +msgstr "عليك بتعريف يومية تحليلية في يومية '%s' !" #. module: account #: view:account.invoice.tax:0 @@ -2618,7 +2622,7 @@ msgstr "" #. module: account #: report:account.move.voucher:0 msgid "Number:" -msgstr "" +msgstr "رقم:" #. module: account #: selection:account.print.journal,sort_selection:0 @@ -2672,7 +2676,7 @@ msgstr "" #. module: account #: field:account.invoice.tax,base_amount:0 msgid "Base Code Amount" -msgstr "" +msgstr "مبلغ الرمز الرئيسي" #. module: account #: field:wizard.multi.charts.accounts,sale_tax:0 @@ -2756,7 +2760,7 @@ msgstr "" #. module: account #: help:account.journal,user_id:0 msgid "The user responsible for this journal" -msgstr "" +msgstr "الشخص المسؤول لهذه اليومية" #. module: account #: view:account.period:0 @@ -2801,12 +2805,12 @@ msgstr "" #. module: account #: help:wizard.multi.charts.accounts,code_digits:0 msgid "No. of Digits to use for account code" -msgstr "" +msgstr "أعداد الوحدة لرمز الحساب" #. module: account #: field:account.payment.term.line,name:0 msgid "Line Name" -msgstr "" +msgstr "اسم الخط" #. module: account #: view:account.fiscalyear:0 @@ -2863,7 +2867,7 @@ msgstr "" #. module: account #: field:account.move.line,analytic_lines:0 msgid "Analytic lines" -msgstr "" +msgstr "سطور تحليلية" #. module: account #: model:process.node,name:account.process_node_electronicfile0 @@ -2873,12 +2877,12 @@ msgstr "ملف إالكتروني" #. module: account #: view:res.partner:0 msgid "Customer Credit" -msgstr "" +msgstr "دين العميل" #. module: account #: model:ir.model,name:account.model_account_tax_code_template msgid "Tax Code Template" -msgstr "" +msgstr "قالب رمز الضريبة" #. module: account #: view:account.subscription:0 @@ -2898,7 +2902,7 @@ msgstr "" #. module: account #: view:account.tax.template:0 msgid "Tax Declaration" -msgstr "" +msgstr "الإعلان الضريبي" #. module: account #: help:account.account,currency_id:0 @@ -2928,7 +2932,7 @@ msgstr "إنشاء شجرة حسابات من قالب" #. module: account #: model:ir.model,name:account.model_account_unreconcile_reconcile msgid "Account Unreconcile Reconcile" -msgstr "" +msgstr "حساب التسوية / إلغاءها" #. module: account #: help:account.account.type,close_method:0 @@ -3000,7 +3004,7 @@ msgstr "الشركاء الباقيين" #: view:account.subscription:0 #: field:account.subscription,lines_id:0 msgid "Subscription Lines" -msgstr "" +msgstr "خطوط الإشتراك" #. module: account #: selection:account.analytic.journal,type:0 @@ -3019,7 +3023,7 @@ msgstr "شراء" #: model:ir.actions.act_window,name:account.action_account_installer #: view:wizard.multi.charts.accounts:0 msgid "Accounting Application Configuration" -msgstr "" +msgstr "إعداد برنامج المحاسبة" #. module: account #: model:ir.actions.act_window,name:account.open_board_account @@ -3065,7 +3069,7 @@ msgstr "" #. module: account #: report:account.move.voucher:0 msgid "Journal:" -msgstr "" +msgstr "يومية:" #. module: account #: view:account.bank.statement:0 @@ -3117,7 +3121,7 @@ msgstr "سنة" #. module: account #: report:account.move.voucher:0 msgid "Authorised Signatory" -msgstr "" +msgstr "إمضاء المسؤول" #. module: account #: view:validate.account.move.lines:0 @@ -3147,7 +3151,7 @@ msgstr "تحويلات" #. module: account #: view:account.payment.term.line:0 msgid " value amount: n.a" -msgstr "" +msgstr " قيمة المبلغ: غير متاحة" #. module: account #: view:account.chart:0 @@ -3236,7 +3240,7 @@ msgstr "إنشاء حساب" #. module: account #: model:ir.model,name:account.model_report_account_type_sales msgid "Report of the Sales by Account Type" -msgstr "" +msgstr "تقرير المبيعات حسب نوع الحساب" #. module: account #: selection:account.account.type,close_method:0 @@ -3274,7 +3278,7 @@ msgstr "شجرة الحسابات" #. module: account #: view:account.tax.chart:0 msgid "(If you do not select period it will take all open periods)" -msgstr "" +msgstr "( إذا لم تختار فترة فسيتم أخذ كل الفترات المفتوحة )" #. module: account #: field:account.journal,centralisation:0 @@ -3441,7 +3445,7 @@ msgstr "الكمية" #. module: account #: field:account.invoice.report,address_contact_id:0 msgid "Contact Address Name" -msgstr "" +msgstr "اسم عنوان جهة الإتصال" #. module: account #: field:account.move.line,blocked:0 @@ -3451,7 +3455,7 @@ msgstr "تقاضي" #. module: account #: view:account.analytic.line:0 msgid "Search Analytic Lines" -msgstr "" +msgstr "بحث الخطوط التحليلية" #. module: account #: field:res.partner,property_account_payable:0 @@ -3548,7 +3552,7 @@ msgstr "اسم" #. module: account #: model:ir.model,name:account.model_account_aged_trial_balance msgid "Account Aged Trial balance Report" -msgstr "" +msgstr "ميزان المراجعة للحسابات المعمرة" #. module: account #: field:account.move.line,date:0 @@ -3990,7 +3994,7 @@ msgstr "إحصائيات الفواتير" #. module: account #: model:process.transition,note:account.process_transition_paymentorderreconcilation0 msgid "Bank statements are entered in the system." -msgstr "" +msgstr "كشوف حسابات البنك تم إدخالها في النظام." #. module: account #: code:addons/account/wizard/account_reconcile.py:133 @@ -4034,7 +4038,7 @@ msgstr "طباعة الفاتورة" #. module: account #: view:account.tax.template:0 msgid "Credit Notes" -msgstr "" +msgstr "أوراق دائنة" #. module: account #: code:addons/account/account.py:2067 @@ -4136,7 +4140,7 @@ msgstr "" #. module: account #: help:account.partner.ledger,reconcil:0 msgid "Consider reconciled entries" -msgstr "" +msgstr "نظر القيود المسواه" #. module: account #: model:ir.actions.act_window,name:account.action_validate_account_move_line @@ -4162,7 +4166,7 @@ msgstr "" #: constraint:account.account:0 #: constraint:account.tax.code:0 msgid "Error ! You can not create recursive accounts." -msgstr "" +msgstr "خطأ ! لا يمكن إنشاء حسابات تكرارية." #. module: account #: constraint:account.account:0 @@ -4213,7 +4217,7 @@ msgstr "" #: code:addons/account/invoice.py:73 #, python-format msgid "You must define an analytic journal of type '%s' !" -msgstr "" +msgstr "عليك بتعريف يومية تحليلية في يومية '%s' !" #. module: account #: code:addons/account/account.py:1397 @@ -4245,7 +4249,7 @@ msgstr "" #. module: account #: report:account.account.balance.landscape:0 msgid "Account Balance -" -msgstr "" +msgstr "رصيد الحساب -" #. module: account #: field:account.automatic.reconcile,date1:0 @@ -4344,7 +4348,7 @@ msgstr "" #. module: account #: model:process.transition,note:account.process_transition_suppliercustomerinvoice0 msgid "Draft invoices are validated. " -msgstr "" +msgstr "تم التحقق للفواتير المؤقتة. " #. module: account #: view:account.bank.statement:0 @@ -4385,7 +4389,7 @@ msgstr "عناصر اليومية" #. module: account #: selection:account.account.type,report_type:0 msgid "Balance Sheet (Asset Accounts)" -msgstr "" +msgstr "الميزانية العمومية (حسابات الأصول)" #. module: account #: report:account.tax.code.entries:0 @@ -4416,7 +4420,7 @@ msgstr "" #: code:addons/account/wizard/account_report_common.py:126 #, python-format msgid "Error" -msgstr "" +msgstr "خطأ" #. module: account #: field:account.analytic.Journal.report,date2:0 @@ -4510,7 +4514,7 @@ msgstr "" #: code:addons/account/account.py:940 #, python-format msgid "Start period should be smaller then End period" -msgstr "" +msgstr "بداية الفترة يجب أن تكون أقل من نهاية الفترة" #. module: account #: selection:account.automatic.reconcile,power:0 @@ -4629,7 +4633,7 @@ msgstr "" #: code:addons/account/account.py:1167 #, python-format msgid "Integrity Error !" -msgstr "" +msgstr "خطأ بالسلامة !" #. module: account #: field:account.tax.template,description:0 @@ -4815,18 +4819,18 @@ msgstr "" #. module: account #: view:account.move.line:0 msgid "Debit/Credit" -msgstr "" +msgstr "مدين / دائن" #. module: account #: view:report.hr.timesheet.invoice.journal:0 msgid "Analytic Entries Stats" -msgstr "" +msgstr "إحصائيات القيود التحليلية" #. module: account #: model:ir.actions.act_window,name:account.action_account_tax_code_template_form #: model:ir.ui.menu,name:account.menu_action_account_tax_code_template_form msgid "Tax Code Templates" -msgstr "" +msgstr "قوالب رمز الضريبة" #. module: account #: model:ir.model,name:account.model_account_installer @@ -4939,7 +4943,7 @@ msgstr "" #: code:addons/account/wizard/account_move_journal.py:63 #, python-format msgid "Configuration Error !" -msgstr "" +msgstr "خطأ في الإعدادات!" #. module: account #: help:account.partner.reconcile.process,to_reconcile:0 @@ -4952,12 +4956,12 @@ msgstr "" #. module: account #: view:account.subscription.line:0 msgid "Subscription lines" -msgstr "" +msgstr "خطوط الإشتراك" #. module: account #: field:account.entries.report,quantity:0 msgid "Products Quantity" -msgstr "" +msgstr "كمية المنتجات" #. module: account #: view:account.entries.report:0 @@ -4966,14 +4970,14 @@ msgstr "" #: selection:account.move,state:0 #: view:account.move.line:0 msgid "Unposted" -msgstr "" +msgstr "غير مرحله" #. module: account #: view:account.change.currency:0 #: model:ir.actions.act_window,name:account.action_account_change_currency #: model:ir.model,name:account.model_account_change_currency msgid "Change Currency" -msgstr "" +msgstr "تغيير العملة" #. module: account #: model:process.node,note:account.process_node_accountingentries0 @@ -4984,7 +4988,7 @@ msgstr "" #. module: account #: view:account.invoice:0 msgid "Payment Date" -msgstr "" +msgstr "تاريخ الدفع" #. module: account #: selection:account.automatic.reconcile,power:0 @@ -4997,7 +5001,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_analytic_open #: model:ir.ui.menu,name:account.account_analytic_def_account msgid "Analytic Accounts" -msgstr "" +msgstr "حسابات تحليلية" #. module: account #: help:account.account.type,report_type:0 @@ -5024,7 +5028,7 @@ msgstr "" #: field:account.model.line,amount_currency:0 #: field:account.move.line,amount_currency:0 msgid "Amount Currency" -msgstr "" +msgstr "مبلغ العملة" #. module: account #: code:addons/account/wizard/account_validate_account_move.py:39 @@ -5057,7 +5061,7 @@ msgstr "" #. module: account #: view:account.move.line:0 msgid "Number (Move)" -msgstr "" +msgstr "رقم (حركة)" #. module: account #: view:account.invoice.refund:0 @@ -5108,7 +5112,7 @@ msgstr "" #: field:account.print.journal,amount_currency:0 #: field:account.report.general.ledger,amount_currency:0 msgid "With Currency" -msgstr "" +msgstr "مع العملة" #. module: account #: view:account.bank.statement:0 @@ -5134,7 +5138,7 @@ msgstr "" #. module: account #: view:board.board:0 msgid "Aged Receivables" -msgstr "" +msgstr "الديون المشكوك في تحصيلها" #. module: account #: model:ir.actions.act_window,name:account.action_account_automatic_reconcile @@ -5186,7 +5190,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_account_analytic_journal_form #: model:ir.ui.menu,name:account.account_def_analytic_journal msgid "Analytic Journals" -msgstr "" +msgstr "يوميات تحليلية" #. module: account #: field:account.account,child_id:0 @@ -5203,12 +5207,12 @@ msgstr "" #. module: account #: field:res.partner,debit:0 msgid "Total Payable" -msgstr "" +msgstr "إجمالي مستحق الدفع" #. module: account #: model:ir.actions.act_window,name:account.action_account_analytic_account_line_extended_form msgid "account.analytic.line.extended" -msgstr "" +msgstr "account.analytic.line.extended" #. module: account #: selection:account.bank.statement.line,type:0 @@ -5269,7 +5273,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_account_state_open #: model:ir.model,name:account.model_account_state_open msgid "Account State Open" -msgstr "" +msgstr "فتح حالة الحساب" #. module: account #: report:account.analytic.account.quantity_cost_ledger:0 @@ -5323,7 +5327,7 @@ msgstr "" #: field:report.account.sales,period_id:0 #: field:report.account_type.sales,period_id:0 msgid "Force Period" -msgstr "" +msgstr "قوة الفترة" #. module: account #: view:account.invoice.report:0 @@ -5335,7 +5339,7 @@ msgstr "" #: code:addons/account/wizard/account_change_currency.py:60 #, python-format msgid "New currency is not confirured properly !" -msgstr "" +msgstr "العملة الجديدة لم يتم ضبطها بشكل صحيح !" #. module: account #: field:account.aged.trial.balance,filter:0 @@ -5354,7 +5358,7 @@ msgstr "" #: field:account.report.general.ledger,filter:0 #: field:account.vat.declaration,filter:0 msgid "Filter by" -msgstr "" +msgstr "ترشيح بـ" #. module: account #: code:addons/account/account_move_line.py:1131 @@ -5379,7 +5383,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_account_general_journal #: model:ir.model,name:account.model_account_general_journal msgid "Account General Journal" -msgstr "" +msgstr "حساب اليومية العامة" #. module: account #: code:addons/account/report/common_report_header.py:100 @@ -5403,7 +5407,7 @@ msgstr "" #. module: account #: field:account.payment.term.line,days:0 msgid "Number of Days" -msgstr "" +msgstr "عدد الأيام" #. module: account #: selection:account.automatic.reconcile,power:0 @@ -5437,7 +5441,7 @@ msgstr "" #: report:account.analytic.account.cost_ledger:0 #: report:account.analytic.account.quantity_cost_ledger:0 msgid "Printing date" -msgstr "" +msgstr "تاريخ الطباعة" #. module: account #: selection:account.account.type,close_method:0 @@ -5455,7 +5459,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_invoice_tree3 #: model:ir.ui.menu,name:account.menu_action_invoice_tree3 msgid "Customer Refunds" -msgstr "" +msgstr "رد للعملاء" #. module: account #: view:account.payment.term.line:0 @@ -5465,7 +5469,7 @@ msgstr "" #. module: account #: field:account.journal.period,name:0 msgid "Journal-Period Name" -msgstr "" +msgstr "اسم الفترة لليومية" #. module: account #: field:account.invoice.tax,factor_base:0 @@ -5501,7 +5505,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_analytic_entries_report #: model:ir.ui.menu,name:account.menu_action_analytic_entries_report msgid "Analytic Entries Analysis" -msgstr "" +msgstr "تحليل القيود التحليلية" #. module: account #: selection:account.aged.trial.balance,direction_selection:0 @@ -5511,7 +5515,7 @@ msgstr "" #. module: account #: view:account.analytic.line:0 msgid "Analytic Entry" -msgstr "" +msgstr "قيد تحليلي" #. module: account #: view:res.company:0 @@ -5738,7 +5742,7 @@ msgstr "" #. module: account #: field:account.journal,default_credit_account_id:0 msgid "Default Credit Account" -msgstr "" +msgstr "حساب الدائنون الإفتراضي" #. module: account #: view:account.installer:0 @@ -5748,7 +5752,7 @@ msgstr "" #. module: account #: view:account.payment.term.line:0 msgid " number of days: 30" -msgstr "" +msgstr " عدد الأيام: 30" #. module: account #: help:account.analytic.line,currency_id:0 @@ -5793,18 +5797,18 @@ msgstr "" #. module: account #: view:project.account.analytic.line:0 msgid "View Account Analytic Lines" -msgstr "" +msgstr "عرض خطوط الحساب التحليلي" #. module: account #: selection:account.account.type,report_type:0 msgid "Balance Sheet (Liability Accounts)" -msgstr "" +msgstr "الميزانية (لحسابات الأصول)" #. module: account #: field:account.invoice,internal_number:0 #: field:report.invoice.created,number:0 msgid "Invoice Number" -msgstr "" +msgstr "رقم الفاتورة" #. module: account #: help:account.tax,include_base_amount:0 @@ -5822,7 +5826,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_account_analytic_invert_balance #: model:ir.actions.report.xml,name:account.account_analytic_account_inverted_balance msgid "Inverted Analytic Balance" -msgstr "" +msgstr "الرصيد التحليلي المعكوس" #. module: account #: field:account.tax.template,applicable_type:0 @@ -5854,7 +5858,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_account_analytic_journal_open_form #: model:ir.ui.menu,name:account.account_analytic_journal_entries msgid "Analytic Journal Items" -msgstr "" +msgstr "عناصر اليومية التحليلية" #. module: account #: view:account.fiscalyear.close:0 @@ -5900,7 +5904,7 @@ msgstr "" #: code:addons/account/wizard/account_report_aged_partner_balance.py:57 #, python-format msgid "Enter a Start date !" -msgstr "" +msgstr "أدخل تاريخ البدء !" #. module: account #: report:account.invoice:0 @@ -5918,7 +5922,7 @@ msgstr "" #. module: account #: field:account.bank.statement,move_line_ids:0 msgid "Entry lines" -msgstr "" +msgstr "سطور القيود" #. module: account #: field:account.move.line,centralisation:0 @@ -5988,7 +5992,7 @@ msgstr "" #: model:ir.actions.report.xml,name:account.analytic_journal_print #: model:ir.model,name:account.model_account_analytic_journal msgid "Analytic Journal" -msgstr "" +msgstr "يومية تحليلية" #. module: account #: view:account.entries.report:0 @@ -6037,7 +6041,7 @@ msgstr "" #. module: account #: model:ir.model,name:account.model_analytic_entries_report msgid "Analytic Entries Statistics" -msgstr "" +msgstr "إحصائيات القيود التحليلية" #. module: account #: code:addons/account/account_analytic_line.py:143 @@ -6049,7 +6053,7 @@ msgstr "" #. module: account #: view:account.use.model:0 msgid "Create manual recurring entries in a chosen journal." -msgstr "" +msgstr "إنشاء قيد يومية تكرارية يدوياً في يومية مختارة." #. module: account #: code:addons/account/account.py:1393 @@ -6087,7 +6091,7 @@ msgstr "" #: code:addons/account/account_move_line.py:1003 #, python-format msgid "Total debit" -msgstr "" +msgstr "إجمالي الخصم" #. module: account #: code:addons/account/account_move_line.py:781 @@ -6193,7 +6197,7 @@ msgstr "" #. module: account #: selection:account.journal.period,state:0 msgid "Printed" -msgstr "" +msgstr "مطبوع" #. module: account #: view:account.analytic.line:0 @@ -6290,7 +6294,7 @@ msgstr "" #: code:addons/account/wizard/account_change_currency.py:65 #, python-format msgid "Currnt currency is not confirured properly !" -msgstr "" +msgstr "العملة الجديدة لم يتم ضبطها بشكل صحيح !" #. module: account #: model:ir.model,name:account.model_account_move_reconcile @@ -6310,7 +6314,7 @@ msgstr "" #: model:ir.actions.report.xml,name:account.account_general_ledger #: model:ir.ui.menu,name:account.menu_general_ledger msgid "General Ledger" -msgstr "" +msgstr "الأستاذ العام" #. module: account #: model:process.transition,note:account.process_transition_paymentorderbank0 @@ -6358,7 +6362,7 @@ msgstr "" #: report:account.invoice:0 #: report:account.partner.balance:0 msgid "Total:" -msgstr "" +msgstr "الإجمالي:" #. module: account #: code:addons/account/account.py:2050 @@ -6401,7 +6405,7 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_invoice_tree1 #: model:ir.ui.menu,name:account.menu_action_invoice_tree1 msgid "Customer Invoices" -msgstr "فواتير العميل" +msgstr "فواتير العملاء" #. module: account #: field:account.move.line.reconcile,writeoff:0 @@ -6411,7 +6415,7 @@ msgstr "" #. module: account #: view:account.analytic.line:0 msgid "Sales" -msgstr "" +msgstr "المبيعات" #. module: account #: view:account.journal.column:0 @@ -6430,7 +6434,7 @@ msgstr "" #. module: account #: model:process.transition,note:account.process_transition_invoicemanually0 msgid "A statement with manual entries becomes a draft statement." -msgstr "" +msgstr "القائمة ذات القيود اليدوية تصبح مؤقتة." #. module: account #: view:account.aged.trial.balance:0 @@ -6460,7 +6464,7 @@ msgstr "" #. module: account #: model:ir.actions.act_window,name:account.act_account_acount_move_line_open_unreconciled msgid "Unreconciled Entries" -msgstr "" +msgstr "قيود غير مسواه" #. module: account #: model:ir.ui.menu,name:account.menu_menu_Bank_process @@ -6491,7 +6495,7 @@ msgstr "" #: view:analytic.entries.report:0 #: field:analytic.entries.report,product_uom_id:0 msgid "Product UOM" -msgstr "" +msgstr "وحدة قياس المنتج" #. module: account #: model:ir.actions.act_window,help:account.action_view_bank_statement_tree @@ -6528,7 +6532,7 @@ msgstr "" #: view:account.move:0 #: view:account.move.line:0 msgid "Analytic Lines" -msgstr "" +msgstr "سطور تحليلية" #. module: account #: model:ir.actions.act_window,help:account.action_account_analytic_account_tree2 @@ -6579,7 +6583,7 @@ msgstr "" #. module: account #: field:account.account.template,parent_id:0 msgid "Parent Account Template" -msgstr "" +msgstr "قالب حساب رئيسي" #. module: account #: view:account.bank.statement:0 @@ -6638,7 +6642,7 @@ msgstr "" #. module: account #: help:res.partner,credit:0 msgid "Total amount this customer owes you." -msgstr "" +msgstr "إجمالي المبلغ المدين لهذا العميل لك." #. module: account #: model:ir.model,name:account.model_ir_sequence @@ -6660,12 +6664,12 @@ msgstr "" #: code:addons/account/report/account_partner_balance.py:115 #, python-format msgid "Unknown Partner" -msgstr "" +msgstr "شريك مجهول" #. module: account #: view:account.bank.statement:0 msgid "Opening Balance" -msgstr "" +msgstr "رصيد أول المدة" #. module: account #: help:account.journal,centralisation:0 @@ -6678,7 +6682,7 @@ msgstr "" #. module: account #: field:account.bank.statement,closing_date:0 msgid "Closed On" -msgstr "" +msgstr "إقفال يوم" #. module: account #: model:ir.model,name:account.model_account_bank_statement_line @@ -6875,7 +6879,7 @@ msgstr "" #. module: account #: view:account.move.line:0 msgid "Optional Information" -msgstr "" +msgstr "معلومات خيارية" #. module: account #: view:account.analytic.line:0 @@ -6914,13 +6918,13 @@ msgstr "" #: code:addons/account/installer.py:432 #, python-format msgid "Sales Journal" -msgstr "" +msgstr "يومية المبيعات" #. module: account #: code:addons/account/wizard/account_move_journal.py:104 #, python-format msgid "Open Journal Items !" -msgstr "" +msgstr "فتح عناصر اليومية !" #. module: account #: model:ir.model,name:account.model_account_invoice_tax @@ -6937,7 +6941,7 @@ msgstr "" #: view:product.product:0 #: view:product.template:0 msgid "Sales Properties" -msgstr "" +msgstr "خصائص المبيعات" #. module: account #: model:ir.ui.menu,name:account.menu_manual_reconcile @@ -6947,7 +6951,7 @@ msgstr "" #. module: account #: report:account.overdue:0 msgid "Total amount due:" -msgstr "" +msgstr "إجمالي المبلغ المستحق:" #. module: account #: field:account.analytic.chart,to_date:0 @@ -6986,7 +6990,7 @@ msgstr "" #: code:addons/account/report/account_partner_balance.py:304 #, python-format msgid "Payable Accounts" -msgstr "" +msgstr "حسابات الدائنون" #. module: account #: model:ir.model,name:account.model_account_chart_template @@ -7044,7 +7048,7 @@ msgstr "" #. module: account #: model:ir.model,name:account.model_account_bs_report msgid "Account Balance Sheet Report" -msgstr "" +msgstr "تقرير الميزانية للحسابات" #. module: account #: help:account.tax,price_include:0 @@ -7062,7 +7066,7 @@ msgstr "" #. module: account #: view:report.account_type.sales:0 msgid "Sales by Account type" -msgstr "" +msgstr "المبيعات حسب نوع الحساب" #. module: account #: help:account.invoice,move_id:0 @@ -7087,7 +7091,7 @@ msgstr "" #. module: account #: view:account.payment.term.line:0 msgid " number of days: 14" -msgstr "" +msgstr " عدد الأيام: 14" #. module: account #: view:analytic.entries.report:0 @@ -7108,7 +7112,7 @@ msgstr "أصل" #. module: account #: field:account.installer.modules,account_analytic_plans:0 msgid "Multiple Analytic Plans" -msgstr "" +msgstr "خطط تحليلية متعددة" #. module: account #: help:account.payment.term.line,days2:0 @@ -7178,7 +7182,7 @@ msgstr "" #: code:addons/account/invoice.py:720 #, python-format msgid "Warning !" -msgstr "" +msgstr "تحذير !" #. module: account #: field:account.entries.report,move_line_state:0 @@ -7195,7 +7199,7 @@ msgstr "" #: view:account.subscription.generate:0 #: model:ir.model,name:account.model_account_subscription_generate msgid "Subscription Compute" -msgstr "" +msgstr "حساب الإشتراك" #. module: account #: report:account.move.voucher:0 @@ -7229,7 +7233,7 @@ msgstr "" #. module: account #: help:account.change.currency,currency_id:0 msgid "Select a currency to apply on the invoice" -msgstr "" +msgstr "اختر عملة للفاتورة" #. module: account #: code:addons/account/wizard/account_invoice_refund.py:100 @@ -7241,7 +7245,7 @@ msgstr "" #: code:addons/account/invoice.py:787 #, python-format msgid "No Invoice Lines !" -msgstr "" +msgstr "لا سطور للفاتورة !" #. module: account #: view:account.bank.statement:0 @@ -7261,7 +7265,7 @@ msgstr "" #: field:account.subscription,state:0 #: field:report.invoice.created,state:0 msgid "State" -msgstr "" +msgstr "الحالة" #. module: account #: help:account.open.closed.fiscalyear,fyear_id:0 @@ -7324,7 +7328,7 @@ msgstr "" #. module: account #: report:account.analytic.account.inverted.balance:0 msgid "Inverted Analytic Balance -" -msgstr "" +msgstr "رصيد تحليلي معكوس -" #. module: account #: view:account.move.bank.reconcile:0 @@ -7357,7 +7361,7 @@ msgstr "" #: view:account.invoice:0 #: field:account.invoice,comment:0 msgid "Additional Information" -msgstr "" +msgstr "معلومات أضافية" #. module: account #: view:account.installer:0 @@ -7368,7 +7372,7 @@ msgstr "" #: view:account.invoice.report:0 #: field:account.invoice.report,residual:0 msgid "Total Residual" -msgstr "" +msgstr "إجمالي المتبقي" #. module: account #: model:process.node,note:account.process_node_invoiceinvoice0 @@ -7480,7 +7484,7 @@ msgstr "" #. module: account #: report:account.invoice:0 msgid "Net Total:" -msgstr "" +msgstr "صافي الإجمالي:" #. module: account #: model:ir.ui.menu,name:account.menu_finance_generic_reporting @@ -7553,7 +7557,7 @@ msgstr "" #. module: account #: field:account.account,company_currency_id:0 msgid "Company Currency" -msgstr "" +msgstr "عملة الشركة" #. module: account #: model:process.node,name:account.process_node_paymententries0 @@ -7585,12 +7589,12 @@ msgstr "" #. module: account #: model:ir.model,name:account.model_account_analytic_inverted_balance msgid "Account Analytic Inverted Balance" -msgstr "" +msgstr "رصيد للحساب التحليلي المعكوس" #. module: account #: model:ir.model,name:account.model_account_common_report msgid "Account Common Report" -msgstr "" +msgstr "تقرير مشترك للحساب" #. module: account #: model:process.transition,name:account.process_transition_filestatement0 @@ -7612,13 +7616,13 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_account_type_form #: model:ir.ui.menu,name:account.menu_action_account_type_form msgid "Account Types" -msgstr "" +msgstr "أنواع الحساب" #. module: account #: code:addons/account/invoice.py:897 #, python-format msgid "Cannot create invoice move on centralised journal" -msgstr "" +msgstr "لا يمكن إنشاء حركة فاتورة حيث اليومية مركزية" #. module: account #: field:account.account.type,report_type:0 @@ -7643,17 +7647,17 @@ msgstr "" #: view:account.chart.template:0 #: field:account.chart.template,property_account_receivable:0 msgid "Receivable Account" -msgstr "" +msgstr "حساب المدينون" #. module: account #: view:account.bank.statement:0 msgid "CashBox Balance" -msgstr "" +msgstr "رصيد صندوق النقدية" #. module: account #: model:ir.model,name:account.model_account_fiscalyear_close_state msgid "Fiscalyear Close state" -msgstr "" +msgstr "حالة إغلاق السنة المالية" #. module: account #: field:account.invoice.refund,journal_id:0 @@ -7673,7 +7677,7 @@ msgstr "" #: report:pl.account:0 #: report:pl.account.horizontal:0 msgid "Filter By" -msgstr "" +msgstr "ترشيح بـ" #. module: account #: model:ir.actions.act_window,help:account.action_invoice_tree1 @@ -7689,7 +7693,7 @@ msgstr "" #: view:board.board:0 #: model:ir.actions.act_window,name:account.action_company_analysis_tree msgid "Company Analysis" -msgstr "" +msgstr "تحليل الشركة" #. module: account #: help:account.invoice,account_id:0 @@ -7706,14 +7710,14 @@ msgstr "" #. module: account #: model:ir.model,name:account.model_account_payment_term_line msgid "Payment Term Line" -msgstr "" +msgstr "سطر شروط السداد" #. module: account #: code:addons/account/account.py:2794 #: code:addons/account/installer.py:452 #, python-format msgid "Purchase Journal" -msgstr "" +msgstr "يومية المشتريات" #. module: account #: view:account.invoice.refund:0 @@ -7723,17 +7727,17 @@ msgstr "" #. module: account #: field:account.invoice.line,price_subtotal:0 msgid "Subtotal" -msgstr "" +msgstr "المجموع الفرعي" #. module: account #: view:account.vat.declaration:0 msgid "Print Tax Statement" -msgstr "" +msgstr "طباعة كشف الضريبة" #. module: account #: view:account.model.line:0 msgid "Journal Entry Model Line" -msgstr "" +msgstr "خط نموذج قيد اليومية" #. module: account #: view:account.invoice:0 @@ -7742,7 +7746,7 @@ msgstr "" #: field:account.invoice.report,date_due:0 #: field:report.invoice.created,date_due:0 msgid "Due Date" -msgstr "" +msgstr "تاريخ الإستحقاق" #. module: account #: model:ir.ui.menu,name:account.menu_account_supplier @@ -7759,12 +7763,12 @@ msgstr "" #. module: account #: view:account.journal:0 msgid "Accounts Type Allowed (empty for no control)" -msgstr "" +msgstr "أنواع الحسابات المسموحة (فارغ للغير رقابية)" #. module: account #: view:res.partner:0 msgid "Supplier Accounting Properties" -msgstr "" +msgstr "خصائص محاسبة المورد" #. module: account #: help:account.move.line,amount_residual:0 @@ -7776,23 +7780,23 @@ msgstr "" #. module: account #: view:account.payment.term.line:0 msgid " valuation: balance" -msgstr "" +msgstr " التقييم: رصيد" #. module: account #: view:account.tax.code:0 msgid "Statistics" -msgstr "" +msgstr "إحصائيات" #. module: account #: field:account.analytic.chart,from_date:0 #: field:project.account.analytic.line,from_date:0 msgid "From" -msgstr "" +msgstr "من" #. module: account #: model:ir.model,name:account.model_account_fiscalyear_close msgid "Fiscalyear Close" -msgstr "" +msgstr "إغلاق السنة المالية" #. module: account #: sql_constraint:account.account:0 @@ -7802,18 +7806,18 @@ msgstr "" #. module: account #: model:ir.actions.act_window,name:account.act_account_journal_2_account_invoice_opened msgid "Unpaid Invoices" -msgstr "" +msgstr "فواتير غير مدفوعة" #. module: account #: field:account.move.line.reconcile,debit:0 msgid "Debit amount" -msgstr "" +msgstr "المبلغ المدين" #. module: account #: view:board.board:0 #: model:ir.actions.act_window,name:account.action_treasory_graph msgid "Treasury" -msgstr "" +msgstr "الخزينة" #. module: account #: view:account.aged.trial.balance:0 @@ -7824,7 +7828,7 @@ msgstr "" #: view:account.analytic.inverted.balance:0 #: view:account.common.report:0 msgid "Print" -msgstr "" +msgstr "طباعة" #. module: account #: view:account.journal:0 @@ -7836,30 +7840,30 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_account_analytic_chart #: model:ir.ui.menu,name:account.menu_action_analytic_account_tree2 msgid "Chart of Analytic Accounts" -msgstr "" +msgstr "شجرة الحسابات التحليلية" #. module: account #: model:ir.ui.menu,name:account.menu_configuration_misc msgid "Miscellaneous" -msgstr "" +msgstr "متفرقات" #. module: account #: help:res.partner,debit:0 msgid "Total amount you have to pay to this supplier." -msgstr "" +msgstr "إجمالي المبلغ الواجب دفعه لهذا المورد." #. module: account #: model:process.node,name:account.process_node_analytic0 #: model:process.node,name:account.process_node_analyticcost0 msgid "Analytic Costs" -msgstr "" +msgstr "تكاليف تحليلية" #. module: account #: field:account.analytic.journal,name:0 #: report:account.general.journal:0 #: field:account.journal,name:0 msgid "Journal Name" -msgstr "" +msgstr "اسم اليومية" #. module: account #: help:account.invoice,internal_number:0 @@ -7880,12 +7884,12 @@ msgstr "" #: code:addons/account/account_move_line.py:1214 #, python-format msgid "Bad account!" -msgstr "" +msgstr "حساب سئ!" #. module: account #: help:account.chart,fiscalyear:0 msgid "Keep empty for all open fiscal years" -msgstr "" +msgstr "اتركه فارغ لكل السنوات المالية المفتوحة" #. module: account #: code:addons/account/account_move_line.py:1056 @@ -7926,13 +7930,13 @@ msgstr "" #: field:report.account_type.sales,currency_id:0 #: field:report.invoice.created,currency_id:0 msgid "Currency" -msgstr "" +msgstr "عملة" #. module: account #: help:account.bank.statement.line,sequence:0 msgid "" "Gives the sequence order when displaying a list of bank statement lines." -msgstr "" +msgstr "يعطيك ترتيب المسلسل حين يعرض قائمة لسطور كشف حساب البنك" #. module: account #: model:process.transition,note:account.process_transition_validentries0 @@ -7954,12 +7958,12 @@ msgstr "" #. module: account #: model:ir.actions.act_window,name:account.act_account_acount_move_line_reconcile_open msgid "Reconciled entries" -msgstr "" +msgstr "قيود مسواه" #. module: account #: field:account.invoice,address_contact_id:0 msgid "Contact Address" -msgstr "" +msgstr "عنوان جهة الإتصال" #. module: account #: help:account.invoice,state:0 @@ -7977,34 +7981,34 @@ msgstr "" #. module: account #: field:account.invoice.refund,period:0 msgid "Force period" -msgstr "" +msgstr "قوة الفترة" #. module: account #: model:ir.model,name:account.model_account_partner_balance msgid "Print Account Partner Balance" -msgstr "" +msgstr "طباعة رصيد حساب الشريك" #. module: account #: field:res.partner,contract_ids:0 msgid "Contracts" -msgstr "" +msgstr "عقود" #. module: account #: field:account.cashbox.line,ending_id:0 #: field:account.cashbox.line,starting_id:0 #: field:account.entries.report,reconcile_id:0 msgid "unknown" -msgstr "" +msgstr "مجهول" #. module: account #: field:account.fiscalyear.close,journal_id:0 msgid "Opening Entries Journal" -msgstr "" +msgstr "يومية القيود الإفتتاحية" #. module: account #: model:process.transition,note:account.process_transition_customerinvoice0 msgid "Draft invoices are checked, validated and printed." -msgstr "" +msgstr "تم التعليم و التحقق و طباعة الفواتير المؤقتة" #. module: account #: help:account.chart.template,property_reserve_and_surplus_account:0 @@ -8017,12 +8021,12 @@ msgstr "" #. module: account #: field:account.invoice,reference_type:0 msgid "Reference Type" -msgstr "" +msgstr "نوع المرجع" #. module: account #: view:account.analytic.cost.ledger.journal.report:0 msgid "Cost Ledger for period" -msgstr "" +msgstr "أستاذ التكاليف لفترة" #. module: account #: help:account.tax,child_depend:0 @@ -8035,12 +8039,12 @@ msgstr "" #. module: account #: selection:account.tax,applicable_type:0 msgid "Given by Python Code" -msgstr "" +msgstr "معطي بلغة البايثون" #. module: account #: field:account.analytic.journal,code:0 msgid "Journal Code" -msgstr "" +msgstr "رمز اليومية" #. module: account #: help:account.tax.code,sign:0 @@ -8055,19 +8059,19 @@ msgstr "" #: field:account.move.line,amount_residual:0 #: field:account.move.line,amount_residual_currency:0 msgid "Residual Amount" -msgstr "" +msgstr "المبلغ المتبقي" #. module: account #: field:account.invoice,move_lines:0 #: field:account.move.reconcile,line_id:0 msgid "Entry Lines" -msgstr "" +msgstr "سطور القيود" #. module: account #: model:ir.actions.act_window,name:account.action_open_journal_button #: model:ir.actions.act_window,name:account.action_validate_account_move msgid "Open Journal" -msgstr "" +msgstr "فتح اليومية" #. module: account #: report:account.analytic.account.journal:0 @@ -8079,14 +8083,14 @@ msgstr "" #: report:account.analytic.account.journal:0 #: report:account.analytic.account.quantity_cost_ledger:0 msgid "Period from" -msgstr "" +msgstr "من الفترة" #. module: account #: code:addons/account/account.py:2817 #: code:addons/account/installer.py:476 #, python-format msgid "Sales Refund Journal" -msgstr "" +msgstr "يومية رد المبيعات" #. module: account #: code:addons/account/account.py:927 @@ -8101,12 +8105,12 @@ msgstr "" #: view:account.move.line:0 #: view:account.payment.term:0 msgid "Information" -msgstr "" +msgstr "معلومات" #. module: account #: model:process.node,note:account.process_node_bankstatement0 msgid "Registered payment" -msgstr "" +msgstr "دفع مسجل" #. module: account #: view:account.fiscalyear.close.state:0 @@ -8116,7 +8120,7 @@ msgstr "" #. module: account #: view:account.analytic.line:0 msgid "Product Information" -msgstr "" +msgstr "معلومات المنتج" #. module: account #: report:account.analytic.account.journal:0 @@ -8124,34 +8128,34 @@ msgstr "" #: view:account.move.line:0 #: model:ir.ui.menu,name:account.next_id_40 msgid "Analytic" -msgstr "" +msgstr "تحليلي" #. module: account #: model:process.node,name:account.process_node_invoiceinvoice0 #: model:process.node,name:account.process_node_supplierinvoiceinvoice0 msgid "Create Invoice" -msgstr "" +msgstr "إنشاء فاتورة" #. module: account #: field:account.installer,purchase_tax:0 msgid "Purchase Tax(%)" -msgstr "" +msgstr "ضريبة المشتريات (%)" #. module: account #: code:addons/account/invoice.py:787 #, python-format msgid "Please create some invoice lines." -msgstr "" +msgstr "قم بإنشاء سطور للفاتورة." #. module: account #: report:account.overdue:0 msgid "Dear Sir/Madam," -msgstr "" +msgstr "عزيزي سيدي / سيدتي،" #. module: account #: view:account.installer.modules:0 msgid "Configure Your Accounting Application" -msgstr "" +msgstr "إعداد التطبيق المحاسبي الخاص بك" #. module: account #: code:addons/account/account.py:2820 @@ -8180,12 +8184,12 @@ msgstr "" #: field:account.period,date_stop:0 #: model:ir.ui.menu,name:account.menu_account_end_year_treatments msgid "End of Period" -msgstr "" +msgstr "نهاية الفترة" #. module: account #: field:account.installer.modules,account_followup:0 msgid "Followups Management" -msgstr "" +msgstr "إدارة المتابعة" #. module: account #: report:account.account.balance:0 @@ -8203,7 +8207,7 @@ msgstr "" #: report:pl.account:0 #: report:pl.account.horizontal:0 msgid "Start Period" -msgstr "" +msgstr "بداية الفترة" #. module: account #: code:addons/account/account.py:2333 @@ -8214,12 +8218,12 @@ msgstr "" #. module: account #: field:account.aged.trial.balance,direction_selection:0 msgid "Analysis Direction" -msgstr "" +msgstr "إتجاه التحليل" #. module: account #: field:res.partner,ref_companies:0 msgid "Companies that refers to partner" -msgstr "" +msgstr "شركات تشير إلي شركاء" #. module: account #: view:account.journal:0 @@ -8228,14 +8232,14 @@ msgstr "" #: field:account.journal.view,name:0 #: model:ir.model,name:account.model_account_journal_view msgid "Journal View" -msgstr "" +msgstr "عرض اليومية" #. module: account #: view:account.move.line:0 #: code:addons/account/account_move_line.py:1006 #, python-format msgid "Total credit" -msgstr "" +msgstr "إجمالي الإئتمان" #. module: account #: model:process.transition,note:account.process_transition_suppliervalidentries0 @@ -8253,17 +8257,17 @@ msgstr "" #. module: account #: report:account.overdue:0 msgid "Best regards." -msgstr "" +msgstr "مع خالص التحيات." #. module: account #: view:account.invoice:0 msgid "Unpaid" -msgstr "" +msgstr "غير مدفوعة" #. module: account #: report:account.overdue:0 msgid "Document: Customer account statement" -msgstr "" +msgstr "مستند: كشف حساب عميل" #. module: account #: constraint:account.move.line:0 @@ -8274,7 +8278,7 @@ msgstr "" #: code:addons/account/wizard/account_change_currency.py:71 #, python-format msgid "Current currency is not confirured properly !" -msgstr "" +msgstr "العملة الجديدة لم يتم ضبطها بشكل صحيح !" #. module: account #: model:ir.actions.act_window,help:account.action_invoice_tree4 @@ -8288,23 +8292,23 @@ msgstr "" #. module: account #: view:account.account.template:0 msgid "Receivale Accounts" -msgstr "" +msgstr "حسابات المدينون" #. module: account #: report:account.move.voucher:0 msgid "Particulars" -msgstr "" +msgstr "أفراد" #. module: account #: selection:account.account.type,report_type:0 msgid "Profit & Loss (Income Accounts)" -msgstr "" +msgstr "الأرباح و الخسائر (حسابات الدخل)" #. module: account #: view:account.tax:0 #: view:account.tax.template:0 msgid "Keep empty to use the income account" -msgstr "" +msgstr "لإستخدام حساب الدخل اتركه فارغ" #. module: account #: field:account.account,balance:0 @@ -8334,12 +8338,12 @@ msgstr "" #: field:report.account.receivable,balance:0 #: field:report.aged.receivable,balance:0 msgid "Balance" -msgstr "" +msgstr "الرصيد" #. module: account #: model:process.node,note:account.process_node_supplierbankstatement0 msgid "Manually or automatically entered in the system" -msgstr "" +msgstr "تم إدخاله يدوي أو تلقائي في النظام" #. module: account #: report:account.account.balance:0 @@ -8353,22 +8357,22 @@ msgstr "" #: report:pl.account:0 #: report:pl.account.horizontal:0 msgid "Display Account" -msgstr "" +msgstr "عرض الحساب" #. module: account #: report:account.tax.code.entries:0 msgid "(" -msgstr "" +msgstr "(" #. module: account #: selection:account.invoice.refund,filter_refund:0 msgid "Modify" -msgstr "" +msgstr "تعديل" #. module: account #: view:account.account.type:0 msgid "Closing Method" -msgstr "" +msgstr "إسلوب الإغلاق" #. module: account #: model:ir.actions.act_window,help:account.action_account_partner_balance @@ -8382,25 +8386,25 @@ msgstr "" #: selection:account.account.template,type:0 #: selection:account.entries.report,type:0 msgid "Payable" -msgstr "" +msgstr "مدفوعات" #. module: account #: view:report.account.sales:0 #: view:report.account_type.sales:0 #: view:report.hr.timesheet.invoice.journal:0 msgid "This Year" -msgstr "" +msgstr "هذا العام" #. module: account #: view:board.board:0 msgid "Account Board" -msgstr "" +msgstr "لوحة الحسابات" #. module: account #: view:account.model:0 #: field:account.model,legend:0 msgid "Legend" -msgstr "" +msgstr "الدليل" #. module: account #: model:ir.actions.act_window,help:account.action_account_moves_sale @@ -8416,23 +8420,23 @@ msgstr "" #: code:addons/account/account_bank_statement.py:391 #, python-format msgid "Cannot delete bank statement(s) which are already confirmed !" -msgstr "" +msgstr "لا يمكن حذف هذا كشف / كشوف حساب البنك التي تم تأكيدها" #. module: account #: code:addons/account/wizard/account_automatic_reconcile.py:152 #, python-format msgid "You must select accounts to reconcile" -msgstr "" +msgstr "يجب إختيار الحسابات للتسوية" #. module: account #: model:ir.actions.act_window,name:account.action_account_receivable_graph msgid "Balance by Type of Account" -msgstr "" +msgstr "الرصيد حسب نوع الحساب" #. module: account #: model:process.transition,note:account.process_transition_entriesreconcile0 msgid "Accounting entries are the first input of the reconciliation." -msgstr "" +msgstr "قيود المحاسبة هي أول المدخلات للتسوية." #. module: account #: model:ir.actions.act_window,help:account.action_account_period_form @@ -8448,7 +8452,7 @@ msgstr "" #. module: account #: report:account.move.voucher:0 msgid "Receiver's Signature" -msgstr "" +msgstr "إمضاء المستلم" #. module: account #: report:account.general.ledger:0 @@ -8456,13 +8460,13 @@ msgstr "" #: report:account.third_party_ledger:0 #: report:account.third_party_ledger_other:0 msgid "Filters By" -msgstr "" +msgstr "ترشيح بـ" #. module: account #: model:process.node,note:account.process_node_manually0 #: model:process.transition,name:account.process_transition_invoicemanually0 msgid "Manual entry" -msgstr "" +msgstr "قيد يدوي" #. module: account #: report:account.general.ledger:0 @@ -8470,7 +8474,7 @@ msgstr "" #: field:account.move.line,move_id:0 #: field:analytic.entries.report,move_id:0 msgid "Move" -msgstr "" +msgstr "نقل" #. module: account #: code:addons/account/account_move_line.py:1128 @@ -8486,7 +8490,7 @@ msgstr "" #. module: account #: model:ir.actions.act_window,name:account.act_account_journal_2_account_bank_statement msgid "Bank statements" -msgstr "" +msgstr "كشوف حساب البنك" #. module: account #: help:account.addtmpl.wizard,cparent_id:0 @@ -8497,7 +8501,7 @@ msgstr "" #. module: account #: selection:account.model.line,date_maturity:0 msgid "Date of the day" -msgstr "" +msgstr "تاريخ اليوم" #. module: account #: code:addons/account/wizard/account_move_bank_reconcile.py:49 @@ -8510,18 +8514,18 @@ msgstr "" #. module: account #: view:account.move.line.reconcile:0 msgid "Reconciliation transactions" -msgstr "" +msgstr "معاملات التسوية" #. module: account #: model:ir.actions.act_window,name:account.action_account_common_menu msgid "Common Report" -msgstr "" +msgstr "تقرير مشترك" #. module: account #: view:account.account:0 #: field:account.account,child_consol_ids:0 msgid "Consolidated Children" -msgstr "" +msgstr "فرعي موحد" #. module: account #: code:addons/account/wizard/account_fiscalyear_close.py:82 @@ -8536,7 +8540,7 @@ msgstr "" #: model:process.transition,name:account.process_transition_paymentorderbank0 #: model:process.transition,name:account.process_transition_paymentreconcile0 msgid "Payment entries" -msgstr "" +msgstr "قيود المدفوعات" #. module: account #: selection:account.entries.report,month:0 @@ -8545,22 +8549,22 @@ msgstr "" #: selection:report.account.sales,month:0 #: selection:report.account_type.sales,month:0 msgid "July" -msgstr "" +msgstr "يوليو/تموز" #. module: account #: view:account.account:0 msgid "Chart of accounts" -msgstr "" +msgstr "شجرة الحسابات" #. module: account #: field:account.subscription.line,subscription_id:0 msgid "Subscription" -msgstr "" +msgstr "الإشتراك" #. module: account #: model:ir.model,name:account.model_account_analytic_balance msgid "Account Analytic Balance" -msgstr "" +msgstr "رصيد الحساب التحليلي" #. module: account #: report:account.account.balance:0 @@ -8578,7 +8582,7 @@ msgstr "" #: report:pl.account:0 #: report:pl.account.horizontal:0 msgid "End Period" -msgstr "" +msgstr "نهاية الفترة" #. module: account #: field:account.aged.trial.balance,chart_account_id:0 @@ -8597,22 +8601,22 @@ msgstr "" #: field:account.report.general.ledger,chart_account_id:0 #: field:account.vat.declaration,chart_account_id:0 msgid "Chart of account" -msgstr "" +msgstr "شجرة الحساب" #. module: account #: field:account.move.line,date_maturity:0 msgid "Due date" -msgstr "" +msgstr "تاريخ الإستحقاق" #. module: account #: view:account.move.journal:0 msgid "Standard entries" -msgstr "" +msgstr "القيود المعيارية" #. module: account #: model:ir.model,name:account.model_account_subscription msgid "Account Subscription" -msgstr "" +msgstr "إشتراك الحساب" #. module: account #: code:addons/account/invoice.py:717 @@ -8625,7 +8629,7 @@ msgstr "" #. module: account #: view:account.subscription:0 msgid "Entry Subscription" -msgstr "" +msgstr "إشتراك القيد" #. module: account #: report:account.account.balance:0 @@ -8655,30 +8659,30 @@ msgstr "" #: report:account.third_party_ledger_other:0 #: field:account.vat.declaration,date_from:0 msgid "Start Date" -msgstr "" +msgstr "تاريخ البدء" #. module: account #: model:process.node,name:account.process_node_supplierdraftinvoices0 msgid "Draft Invoices" -msgstr "" +msgstr "فواتير مؤقتة" #. module: account #: selection:account.account.type,close_method:0 #: view:account.entries.report:0 #: view:account.move.line:0 msgid "Unreconciled" -msgstr "" +msgstr "غير مسوي" #. module: account #: code:addons/account/invoice.py:804 #, python-format msgid "Bad total !" -msgstr "" +msgstr "إجمالي سئ!" #. module: account #: field:account.journal,sequence_id:0 msgid "Entry Sequence" -msgstr "" +msgstr "مسلسل القيد" #. module: account #: model:ir.actions.act_window,help:account.action_account_period_tree @@ -8695,28 +8699,28 @@ msgstr "" #. module: account #: view:account.analytic.account:0 msgid "Pending" -msgstr "" +msgstr "معلّق" #. module: account #: model:process.transition,name:account.process_transition_analyticinvoice0 #: model:process.transition,name:account.process_transition_supplieranalyticcost0 msgid "From analytic accounts" -msgstr "" +msgstr "من الحسابات التحليلية" #. module: account #: field:account.installer.modules,account_payment:0 msgid "Suppliers Payment Management" -msgstr "" +msgstr "إدارة مدفوعات الموردين" #. module: account #: field:account.period,name:0 msgid "Period Name" -msgstr "" +msgstr "اسم الفترة" #. module: account #: report:account.analytic.account.quantity_cost_ledger:0 msgid "Code/Date" -msgstr "" +msgstr "رمز / تاريخ" #. module: account #: field:account.account,active:0 @@ -8725,13 +8729,13 @@ msgstr "" #: field:account.payment.term,active:0 #: field:account.tax,active:0 msgid "Active" -msgstr "" +msgstr "نشِط" #. module: account #: code:addons/account/invoice.py:354 #, python-format msgid "Unknown Error" -msgstr "" +msgstr "خطأ غير معروف" #. module: account #: code:addons/account/account.py:1167 @@ -8752,19 +8756,19 @@ msgstr "" #. module: account #: field:account.period,special:0 msgid "Opening/Closing Period" -msgstr "" +msgstr "فتح / إغلاق الفترة" #. module: account #: field:account.account,currency_id:0 #: field:account.account.template,currency_id:0 #: field:account.bank.accounts.wizard,currency_id:0 msgid "Secondary Currency" -msgstr "" +msgstr "عملة ثانية" #. module: account #: model:ir.model,name:account.model_validate_account_move msgid "Validate Account Move" -msgstr "" +msgstr "التحقق من حركة الحساب" #. module: account #: field:account.account,credit:0 @@ -8789,7 +8793,7 @@ msgstr "" #: report:account.vat.declaration:0 #: field:report.account.receivable,credit:0 msgid "Credit" -msgstr "" +msgstr "دائن" #. module: account #: help:account.invoice.refund,journal_id:0 @@ -8802,18 +8806,18 @@ msgstr "" #. module: account #: report:account.move.voucher:0 msgid "Through :" -msgstr "" +msgstr "خلال :" #. module: account #: view:account.general.journal:0 #: model:ir.ui.menu,name:account.menu_account_general_journal msgid "General Journals" -msgstr "" +msgstr "اليوميات العامة" #. module: account #: view:account.model:0 msgid "Journal Entry Model" -msgstr "" +msgstr "نموذج قيد اليومية" #. module: account #: code:addons/account/wizard/account_use_model.py:44 @@ -8829,7 +8833,7 @@ msgstr "" #: field:account.invoice,number:0 #: field:account.move,name:0 msgid "Number" -msgstr "" +msgstr "رقم" #. module: account #: report:account.analytic.account.journal:0 @@ -8837,7 +8841,7 @@ msgstr "" #: selection:account.bank.statement.line,type:0 #: selection:account.journal,type:0 msgid "General" -msgstr "" +msgstr "عام" #. module: account #: selection:account.aged.trial.balance,filter:0 @@ -8880,12 +8884,12 @@ msgstr "" #: model:ir.ui.menu,name:account.next_id_23 #, python-format msgid "Periods" -msgstr "" +msgstr "فترات" #. module: account #: field:account.invoice.report,currency_rate:0 msgid "Currency Rate" -msgstr "" +msgstr "معدل العملة" #. module: account #: help:account.payment.term.line,value_amount:0 @@ -8899,12 +8903,12 @@ msgstr "" #: selection:report.account.sales,month:0 #: selection:report.account_type.sales,month:0 msgid "April" -msgstr "" +msgstr "أبريل/ نيسان" #. module: account #: view:account.move.line.reconcile.select:0 msgid "Open for Reconciliation" -msgstr "" +msgstr "مفتوح للتسوية" #. module: account #: field:account.account,parent_left:0 @@ -8927,13 +8931,13 @@ msgstr "" #. module: account #: field:account.installer,sale_tax:0 msgid "Sale Tax(%)" -msgstr "" +msgstr "ضريبة المبيعات (%)" #. module: account #: model:ir.actions.act_window,name:account.action_invoice_tree2 #: model:ir.ui.menu,name:account.menu_action_invoice_tree2 msgid "Supplier Invoices" -msgstr "فواتير الموردون" +msgstr "فواتير الموردين" #. module: account #: view:account.analytic.line:0 @@ -8949,7 +8953,7 @@ msgstr "فواتير الموردون" #: field:report.account.sales,product_id:0 #: field:report.account_type.sales,product_id:0 msgid "Product" -msgstr "" +msgstr "منتج" #. module: account #: model:ir.actions.act_window,help:account.action_validate_account_move @@ -8962,17 +8966,17 @@ msgstr "" #. module: account #: report:account.tax.code.entries:0 msgid ")" -msgstr "" +msgstr ")" #. module: account #: model:ir.model,name:account.model_account_period msgid "Account period" -msgstr "" +msgstr "فترة الحساب" #. module: account #: view:account.subscription:0 msgid "Remove Lines" -msgstr "" +msgstr "إزالة الخطوط" #. module: account #: view:account.report.general.ledger:0 @@ -8986,7 +8990,7 @@ msgstr "" #: selection:account.account.template,type:0 #: selection:account.entries.report,type:0 msgid "Regular" -msgstr "" +msgstr "عادي" #. module: account #: view:account.account:0 @@ -8995,7 +8999,7 @@ msgstr "" #: field:account.account.template,type:0 #: field:account.entries.report,type:0 msgid "Internal Type" -msgstr "" +msgstr "النوع الداخلي" #. module: account #: report:account.move.voucher:0 @@ -9005,14 +9009,14 @@ msgstr "" #. module: account #: model:ir.actions.act_window,name:account.action_subscription_form_running msgid "Running Subscriptions" -msgstr "" +msgstr "إدارة الإشتراكات" #. module: account #: view:report.account.sales:0 #: view:report.account_type.sales:0 #: view:report.hr.timesheet.invoice.journal:0 msgid "This Month" -msgstr "" +msgstr "هذا الشهر" #. module: account #: view:account.analytic.Journal.report:0 @@ -9021,7 +9025,7 @@ msgstr "" #: view:account.analytic.inverted.balance:0 #: model:ir.actions.act_window,name:account.action_account_partner_ledger msgid "Select Period" -msgstr "" +msgstr "اختر فترة" #. module: account #: view:account.entries.report:0 @@ -9031,7 +9035,7 @@ msgstr "" #: view:account.move.line:0 #: report:account.move.voucher:0 msgid "Posted" -msgstr "" +msgstr "مرحَلة" #. module: account #: report:account.account.balance:0 @@ -9060,24 +9064,24 @@ msgstr "" #: report:account.third_party_ledger_other:0 #: field:account.vat.declaration,date_to:0 msgid "End Date" -msgstr "" +msgstr "تاريخ الإنتهاء" #. module: account #: model:ir.actions.act_window,name:account.action_account_open_closed_fiscalyear #: model:ir.ui.menu,name:account.menu_wizard_account_open_closed_fiscalyear msgid "Cancel Opening Entries" -msgstr "" +msgstr "إلغاء القيود المفتوحة" #. module: account #: field:account.payment.term.line,days2:0 msgid "Day of the Month" -msgstr "" +msgstr "يوم من الشهر" #. module: account #: field:account.fiscal.position.tax,tax_src_id:0 #: field:account.fiscal.position.tax.template,tax_src_id:0 msgid "Tax Source" -msgstr "" +msgstr "مصدر الضريبة" #. module: account #: report:account.balancesheet:0 @@ -9085,23 +9089,23 @@ msgstr "" #: report:pl.account:0 #: report:pl.account.horizontal:0 msgid "Net Profit" -msgstr "" +msgstr "صافي الربح" #. module: account #: view:ir.sequence:0 msgid "Fiscal Year Sequences" -msgstr "" +msgstr "مسلسل السنوات المالية" #. module: account #: help:account.model,name:0 msgid "This is a model for recurring accounting entries" -msgstr "" +msgstr "هذا نموذج لقيود حسابات تكرارية" #. module: account #: code:addons/account/account_analytic_line.py:100 #, python-format msgid "There is no income account defined for this product: \"%s\" (id:%d)" -msgstr "" +msgstr "لا يوجد حساب دخل معرّف لهذا المنتج: \"%s\" (id:%d)" #. module: account #: report:account.general.ledger:0 @@ -9113,7 +9117,7 @@ msgstr "" #. module: account #: view:account.payment.term.line:0 msgid " value amount: 0.02" -msgstr "" +msgstr " قيمة المبلغ: 0.02" #. module: account #: view:account.fiscalyear:0 @@ -9135,13 +9139,13 @@ msgstr "" #: field:report.account_type.sales,amount_total:0 #: field:report.invoice.created,amount_total:0 msgid "Total" -msgstr "" +msgstr "الإجمالي" #. module: account #: code:addons/account/wizard/account_move_journal.py:97 #, python-format msgid "Journal: All" -msgstr "" +msgstr "اليومية: الكل" #. module: account #: field:account.account,company_id:0 @@ -9171,22 +9175,22 @@ msgstr "" #: field:analytic.entries.report,company_id:0 #: field:wizard.multi.charts.accounts,company_id:0 msgid "Company" -msgstr "" +msgstr "شركة" #. module: account #: model:ir.ui.menu,name:account.menu_action_subscription_form msgid "Define Recurring Entries" -msgstr "" +msgstr "تعريف قيود تكرارية" #. module: account #: field:account.entries.report,date_maturity:0 msgid "Date Maturity" -msgstr "" +msgstr "تاريخ الإستحقاق" #. module: account #: help:account.bank.statement,total_entry_encoding:0 msgid "Total cash transactions" -msgstr "" +msgstr "إجمالي معاملات النقدية" #. module: account #: help:account.partner.reconcile.process,today_reconciled:0 @@ -9199,7 +9203,7 @@ msgstr "" #. module: account #: view:account.fiscalyear:0 msgid "Create Monthly Periods" -msgstr "" +msgstr "إنشاء فترات شهرية" #. module: account #: field:account.tax.code.template,sign:0 @@ -9209,12 +9213,12 @@ msgstr "" #. module: account #: model:ir.model,name:account.model_account_balance_report msgid "Trial Balance Report" -msgstr "" +msgstr "تقرير ميزان المراجعة" #. module: account #: model:ir.actions.act_window,name:account.action_bank_statement_draft_tree msgid "Draft statements" -msgstr "" +msgstr "قوائم مؤقتة" #. module: account #: model:process.transition,note:account.process_transition_statemententries0 @@ -9225,7 +9229,7 @@ msgstr "" #. module: account #: view:account.invoice:0 msgid "Invoice lines" -msgstr "" +msgstr "سطور الفاتورة" #. module: account #: field:account.aged.trial.balance,period_to:0 @@ -9245,7 +9249,7 @@ msgstr "" #: field:account.report.general.ledger,period_to:0 #: field:account.vat.declaration,period_to:0 msgid "End period" -msgstr "" +msgstr "نهاية الفترة" #. module: account #: code:addons/account/account_move_line.py:738 @@ -9258,7 +9262,7 @@ msgstr "" #: code:addons/account/wizard/account_validate_account_move.py:61 #, python-format msgid "Warning" -msgstr "" +msgstr "تحذير" #. module: account #: help:product.category,property_account_expense_categ:0 @@ -9271,7 +9275,7 @@ msgstr "" #. module: account #: report:account.move.voucher:0 msgid "On Account of :" -msgstr "" +msgstr "علي حساب الـ" #. module: account #: view:account.automatic.reconcile:0 @@ -9282,17 +9286,17 @@ msgstr "حركة الإعدام" #. module: account #: model:process.node,note:account.process_node_paidinvoice0 msgid "Invoice's state is Done" -msgstr "" +msgstr "حالة الفاتورة تمت" #. module: account #: model:ir.model,name:account.model_report_account_sales msgid "Report of the Sales by Account" -msgstr "" +msgstr "تقرير المبيعات بالحساب" #. module: account #: model:ir.model,name:account.model_account_fiscal_position_account msgid "Accounts Fiscal Position" -msgstr "" +msgstr "المركز السنوي للحسابات" #. module: account #: report:account.invoice:0 @@ -9302,7 +9306,7 @@ msgstr "" #: model:process.process,name:account.process_process_supplierinvoiceprocess0 #: selection:report.invoice.created,type:0 msgid "Supplier Invoice" -msgstr "" +msgstr "فاتورة المورد" #. module: account #: field:account.account,debit:0 @@ -9327,12 +9331,12 @@ msgstr "" #: report:account.vat.declaration:0 #: field:report.account.receivable,debit:0 msgid "Debit" -msgstr "" +msgstr "مدين" #. module: account #: field:account.invoice,invoice_line:0 msgid "Invoice Lines" -msgstr "" +msgstr "سطور الفاتورة" #. module: account #: constraint:account.account.template:0 @@ -9350,28 +9354,28 @@ msgstr "" #. module: account #: view:account.subscription:0 msgid "Recurring" -msgstr "" +msgstr "متكرّر" #. module: account #: code:addons/account/account_move_line.py:805 #, python-format msgid "Entry is already reconciled" -msgstr "" +msgstr "قيد اليومية مسوي بالفعل" #. module: account #: model:ir.model,name:account.model_report_account_receivable msgid "Receivable accounts" -msgstr "" +msgstr "حسابات مدينة" #. module: account #: selection:account.model.line,date_maturity:0 msgid "Partner Payment Term" -msgstr "" +msgstr "شروط السداد للشريك" #. module: account #: field:temp.range,name:0 msgid "Range" -msgstr "" +msgstr "مدى" #. module: account #: code:addons/account/account_move_line.py:1246 @@ -9400,22 +9404,22 @@ msgstr "" #: report:pl.account:0 #: report:pl.account.horizontal:0 msgid "With movements" -msgstr "" +msgstr "مع حركات" #. module: account #: view:account.analytic.account:0 msgid "Account Data" -msgstr "" +msgstr "بيانات الحساب" #. module: account #: view:account.tax.code.template:0 msgid "Account Tax Code Template" -msgstr "" +msgstr "قالب حساب رمز الضريبة" #. module: account #: model:process.node,name:account.process_node_manually0 msgid "Manually" -msgstr "" +msgstr "يدوي" #. module: account #: selection:account.entries.report,month:0 @@ -9424,13 +9428,13 @@ msgstr "" #: selection:report.account.sales,month:0 #: selection:report.account_type.sales,month:0 msgid "December" -msgstr "" +msgstr "ديسمبر/ كانون الأول" #. module: account #: model:ir.actions.act_window,name:account.action_account_analytic_journal_tree #: model:ir.ui.menu,name:account.account_analytic_journal_print msgid "Print Analytic Journals" -msgstr "" +msgstr "طباعة اليوميات التحليلية" #. module: account #: view:account.analytic.line:0 @@ -9441,18 +9445,18 @@ msgstr "" #: model:ir.actions.act_window,name:account.action_aged_receivable_graph #: view:report.aged.receivable:0 msgid "Aged Receivable" -msgstr "" +msgstr "الدين المشكوك في تحصيله" #. module: account #: field:account.tax,applicable_type:0 msgid "Applicability" -msgstr "" +msgstr "تطابق" #. module: account #: code:addons/account/wizard/account_move_journal.py:165 #, python-format msgid "This period is already closed !" -msgstr "" +msgstr "هذه الفترة مغلقة !" #. module: account #: help:account.move.line,currency_id:0 @@ -9468,12 +9472,12 @@ msgstr "" #. module: account #: model:ir.ui.menu,name:account.menu_finance_periodical_processing_billing msgid "Billing" -msgstr "" +msgstr "عمليات الفواتير" #. module: account #: view:account.account:0 msgid "Parent Account" -msgstr "" +msgstr "حساب رئيسي" #. module: account #: model:ir.actions.act_window,help:account.action_account_journal_form @@ -9489,24 +9493,24 @@ msgstr "" #. module: account #: model:ir.model,name:account.model_account_analytic_chart msgid "Account Analytic Chart" -msgstr "" +msgstr "حساب مخطط تحليلي" #. module: account #: help:account.invoice,residual:0 msgid "Remaining amount due." -msgstr "" +msgstr "المبلغ المتبقي المستحق" #. module: account #: model:ir.ui.menu,name:account.menu_finance_statistic_report_statement msgid "Statistic Reports" -msgstr "" +msgstr "تقارير إحصائية" #. module: account #: field:account.installer,progress:0 #: field:account.installer.modules,progress:0 #: field:wizard.multi.charts.accounts,progress:0 msgid "Configuration Progress" -msgstr "" +msgstr "سير الإعدادات" #. module: account #: view:account.fiscal.position.template:0 @@ -9517,7 +9521,7 @@ msgstr "" #: code:addons/account/invoice.py:346 #, python-format msgid "Invoice '%s' is waiting for validation." -msgstr "" +msgstr "الفاتورة '%s' منتظرة للتحقق." #. module: account #: selection:account.entries.report,month:0 @@ -9526,12 +9530,12 @@ msgstr "" #: selection:report.account.sales,month:0 #: selection:report.account_type.sales,month:0 msgid "November" -msgstr "" +msgstr "نوفمبر/تشرين الثاني" #. module: account #: model:ir.model,name:account.model_account_installer_modules msgid "account.installer.modules" -msgstr "" +msgstr "account.installer.modules" #. module: account #: help:account.invoice.line,account_id:0 @@ -9542,23 +9546,23 @@ msgstr "" #: code:addons/account/account_move_line.py:1117 #, python-format msgid "The date of your Journal Entry is not in the defined period!" -msgstr "" +msgstr "تاريخ قيد اليومية غير موجود بالفترة المعرفة!" #. module: account #: field:account.subscription,period_total:0 msgid "Number of Periods" -msgstr "" +msgstr "عدد الفترات" #. module: account #: report:account.general.journal:0 #: model:ir.actions.report.xml,name:account.account_general_journal msgid "General Journal" -msgstr "" +msgstr "اليومية العامة" #. module: account #: view:account.invoice:0 msgid "Search Invoice" -msgstr "" +msgstr "بحث الفواتير" #. module: account #: report:account.invoice:0 @@ -9597,7 +9601,7 @@ msgstr "مستندات المحاسبة" #. module: account #: model:ir.model,name:account.model_validate_account_move_lines msgid "Validate Account Move Lines" -msgstr "" +msgstr "خطوط التحقق من حركة الحساب" #. module: account #: model:ir.actions.act_window,name:account.action_account_analytic_cost_ledger_journal @@ -9857,10 +9861,6 @@ msgstr "خصوم" #~ msgid "Move line select" #~ msgstr "تحريك السطر المختار" -#, python-format -#~ msgid "The statement balance is incorrect !\n" -#~ msgstr "رصيد الكشف خطأ\n" - #~ msgid "Balance:" #~ msgstr "الرصيد:" @@ -9870,3 +9870,10 @@ msgstr "خصوم" #~ msgid "Balance Sheet (Assets Accounts)" #~ msgstr "الميزانية العمومية (حسابات الأصول)" + +#, python-format +#~ msgid "The statement balance is incorrect !\n" +#~ msgstr "رصيد الكشف خاطئ !\n" + +#~ msgid "Chart of Account" +#~ msgstr "شجرة الحساب" diff --git a/addons/account/i18n/fr.po b/addons/account/i18n/fr.po index 18f558872bb..62cbf363e3a 100644 --- a/addons/account/i18n/fr.po +++ b/addons/account/i18n/fr.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2011-11-07 12:53+0000\n" -"Last-Translator: OpenERP Administrators <Unknown>\n" +"PO-Revision-Date: 2011-11-25 15:24+0000\n" +"Last-Translator: Numérigraphe <Unknown>\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: 2011-11-08 05:42+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:50+0000\n" +"X-Generator: Launchpad (build 14381)\n" #. module: account #: code:addons/account/account.py:1291 @@ -584,8 +584,6 @@ msgstr "" #: field:account.move.bank.reconcile,journal_id:0 #: view:account.move.line:0 #: field:account.move.line,journal_id:0 -#: report:account.third_party_ledger:0 -#: report:account.third_party_ledger_other:0 #: code:addons/account/account_move_line.py:983 #: view:analytic.entries.report:0 #: field:analytic.entries.report,journal_id:0 @@ -968,7 +966,6 @@ msgstr "Créer des périodes trimestrielles" #. module: account #: report:account.overdue:0 -#: report:account.aged_trial_balance:0 msgid "Due" msgstr "Due" @@ -1063,10 +1060,6 @@ msgstr "Modèle d'écritures" #: field:account.journal,code:0 #: report:account.partner.balance:0 #: field:account.period,code:0 -#: report:account.balancesheet.horizontal:0 -#: report:account.balancesheet:0 -#: report:pl.account.horizontal:0 -#: report:pl.account:0 msgid "Code" msgstr "Code" @@ -1396,7 +1389,6 @@ msgstr "Analyse des écritures comptables" #. module: account #: model:ir.actions.act_window,name:account.action_partner_all #: model:ir.ui.menu,name:account.next_id_22 -#: report:account.aged_trial_balance:0 msgid "Partners" msgstr "Partenaires" @@ -2196,7 +2188,7 @@ msgstr "" #. module: account #: view:account.chart.template:0 -msgid "Search Chart of Accounts Templates" +msgid "Search Chart of Account Templates" msgstr "Chercher un modèle de plan comptable" #. module: account @@ -2305,11 +2297,6 @@ msgstr "Modèle de produit" #: report:account.third_party_ledger_other:0 #: report:account.vat.declaration:0 #: model:ir.model,name:account.model_account_fiscalyear -#: report:account.balancesheet.horizontal:0 -#: report:account.balancesheet:0 -#: report:pl.account.horizontal:0 -#: report:pl.account:0 -#: report:account.aged_trial_balance:0 msgid "Fiscal Year" msgstr "Exercice comptable" @@ -3187,9 +3174,7 @@ msgstr "Laisser vide pour utiliser le compte de dépense" #: field:account.common.report,journal_ids:0 #: report:account.general.journal:0 #: field:account.general.journal,journal_ids:0 -#: report:account.general.ledger_landscape:0 #: view:account.journal.period:0 -#: report:account.partner.balance:0 #: field:account.partner.balance,journal_ids:0 #: field:account.partner.ledger,journal_ids:0 #: field:account.pl.report,journal_ids:0 @@ -3550,7 +3535,6 @@ msgstr "" #: field:account.entries.report,date:0 #: selection:account.general.journal,filter:0 #: report:account.general.ledger:0 -#: report:account.general.ledger_landscape:0 #: field:account.invoice.report,date:0 #: report:account.journal.period.print:0 #: view:account.move:0 @@ -4852,7 +4836,6 @@ msgstr "Balance Analytique -" #: report:account.general.ledger_landscape:0 #: report:pl.account:0 #: report:pl.account.horizontal:0 -#: report:account.aged_trial_balance:0 msgid "Target Moves" msgstr "Mouvements Cibles" @@ -5521,7 +5504,7 @@ msgstr "Ajustement" #. module: account #: field:res.partner,debit:0 msgid "Total Payable" -msgstr "Montant à payer" +msgstr "Total à payer" #. module: account #: model:ir.actions.act_window,name:account.action_account_analytic_account_line_extended_form @@ -5687,16 +5670,6 @@ msgstr "La nouvelle devise n'est pas correctement paramétrée !" #: field:account.print.journal,filter:0 #: field:account.report.general.ledger,filter:0 #: field:account.vat.declaration,filter:0 -#: field:account.account.balance,filter:0 -#: field:account.central.journal,filter:0 -#: field:account.general.journal,filter:0 -#: field:account.partner.balance,filter:0 -#: field:account.balancesheet,filter:0 -#: field:account.balancesheet.horizontal,filter:0 -#: field:account.general.ledger,filter:0 -#: field:account.general.ledger_landscape,filter:0 -#: field:pl.account,filter:0 -#: field:pl.account.horizontal,filter:0 msgid "Filter by" msgstr "Filtrer par" @@ -6569,7 +6542,6 @@ msgstr " valorisation : pourcentage" #: code:addons/account/invoice.py:1008 #: code:addons/account/wizard/account_invoice_refund.py:100 #: code:addons/account/wizard/account_invoice_refund.py:102 -#: code:addons/account/wizard/account_open_closed_fiscalyear.py:40 #: code:addons/account/wizard/account_use_model.py:44 #, python-format msgid "Error !" @@ -6712,7 +6684,6 @@ msgstr "Position fiscale des taxes" #: view:account.report.general.ledger:0 #: model:ir.actions.act_window,name:account.action_account_general_ledger_menu #: model:ir.actions.report.xml,name:account.account_general_ledger -#: model:ir.actions.report.xml,name:account.account_general_ledger_landscape #: model:ir.ui.menu,name:account.menu_general_ledger msgid "General Ledger" msgstr "Grand livre" @@ -6748,8 +6719,8 @@ msgid "" "Account Voucher module includes all the basic requirements of Voucher " "Entries for Bank, Cash, Sales, Purchase, Expenses, Contra, etc... " msgstr "" -"Le module Chèques comprend toutes les fonctionnalités de base pour la " -"Banque, la trésorerie, les ventes, les achats, les frais, etc. " +"Le module \"Justificatifs\" comprend toutes les fonctionnalités de base pour " +"la Banque, la trésorerie, les ventes, les achats, les frais, etc. " #. module: account #: view:account.chart.template:0 @@ -6768,8 +6739,6 @@ msgstr "Plan de taxes comptables" #: report:account.general.journal:0 #: report:account.invoice:0 #: report:account.partner.balance:0 -#: report:pl.account.horizontal:0 -#: report:pl.account:0 msgid "Total:" msgstr "Total :" @@ -6979,7 +6948,7 @@ msgstr "Lignes analytiques" #: model:ir.actions.act_window,help:account.action_account_analytic_account_tree2 msgid "" "The normal chart of accounts has a structure defined by the legal " -"requirement of the country. The analytic chart of accounts structure should " +"requirement of the country. The analytic chart of account structure should " "reflect your own business needs in term of costs/revenues reporting. They " "are usually structured by contracts, projects, products or departements. " "Most of the OpenERP operations (invoices, timesheets, expenses, etc) " @@ -7384,7 +7353,6 @@ msgstr "Information optionnelle" #. module: account #: view:account.analytic.line:0 -#: field:account.bank.statement,user_id:0 #: view:account.journal:0 #: field:account.journal,user_id:0 #: view:analytic.entries.report:0 @@ -7981,7 +7949,6 @@ msgstr "Gestion de la comptabilité et des finances" #: view:account.entries.report:0 #: field:account.entries.report,period_id:0 #: view:account.fiscalyear:0 -#: report:account.general.ledger_landscape:0 #: view:account.invoice:0 #: view:account.invoice.report:0 #: field:account.journal.period,period_id:0 @@ -8103,21 +8070,6 @@ msgid "Company Currency" msgstr "Devise société" #. module: account -#: report:account.account.balance:0 -#: report:account.partner.balance:0 -#: report:account.third_party_ledger:0 -#: report:account.third_party_ledger_other:0 -#: report:account.balancesheet:0 -#: report:account.balancesheet.horizontal:0 -#: report:account.general.ledger:0 -#: report:account.general.ledger_landscape:0 -#: report:pl.account:0 -#: report:pl.account.horizontal:0 -#: report:account.aged_trial_balance:0 -msgid "Chart of Accounts" -msgstr "Plan comptable" - -#. module: account #: model:process.node,name:account.process_node_paymententries0 #: model:process.transition,name:account.process_transition_reconcilepaid0 msgid "Payment" @@ -8233,7 +8185,6 @@ msgstr "Journal d'avoirs" #: report:account.account.balance:0 #: report:account.central.journal:0 #: report:account.general.journal:0 -#: report:account.general.ledger_landscape:0 #: report:account.partner.balance:0 #: report:account.balancesheet:0 #: report:account.balancesheet.horizontal:0 @@ -8298,7 +8249,7 @@ msgstr "" #. module: account #: field:account.invoice.line,price_subtotal:0 msgid "Subtotal" -msgstr "Sous total" +msgstr "Sous-total" #. module: account #: view:account.vat.declaration:0 @@ -8320,12 +8271,6 @@ msgid "Due Date" msgstr "Date d'échéance" #. module: account -#: view:account.print.invoice:0 -#: field:account.print.invoice,date_due:0 -msgid "Due Date" -msgstr "Echéance" - -#. module: account #: model:ir.ui.menu,name:account.menu_account_supplier #: model:ir.ui.menu,name:account.menu_finance_payables msgid "Suppliers" @@ -8461,8 +8406,6 @@ msgid "" "The amount of the voucher must be the same amount as the one on the " "statement line" msgstr "" -"Le montant du justificatif doit être identique à celui de la ligne le " -"concernant" #. module: account #: code:addons/account/account_move_line.py:1131 @@ -8838,7 +8781,6 @@ msgstr "Impossible de trouver le code parent pour le compte modèle !" #. module: account #: field:account.aged.trial.balance,direction_selection:0 -#: report:account.aged_trial_balance:0 msgid "Analysis Direction" msgstr "Direction d'Analyse" @@ -8969,10 +8911,6 @@ msgstr "Laisser vide pour utiliser le compte de revenu" #: report:account.third_party_ledger_other:0 #: field:report.account.receivable,balance:0 #: field:report.aged.receivable,balance:0 -#: report:account.balancesheet.horizontal:0 -#: report:account.balancesheet:0 -#: report:pl.account.horizontal:0 -#: report:pl.account:0 msgid "Balance" msgstr "Balance" @@ -9024,7 +8962,7 @@ msgstr "" #: selection:account.account.template,type:0 #: selection:account.entries.report,type:0 msgid "Payable" -msgstr "Débiteurs" +msgstr "Payable" #. module: account #: view:report.account.sales:0 @@ -9123,7 +9061,6 @@ msgstr "Saisie manuelle" #. module: account #: report:account.general.ledger:0 -#: report:account.general.ledger_landscape:0 #: report:account.journal.period.print:0 #: field:account.move.line,move_id:0 #: field:analytic.entries.report,move_id:0 @@ -9203,7 +9140,7 @@ msgstr "Juillet" #. module: account #: view:account.account:0 -msgid "Chart of Accounts" +msgid "Chart of accounts" msgstr "Plan comptable" #. module: account @@ -9250,7 +9187,7 @@ msgstr "Période de fin" #: field:account.print.journal,chart_account_id:0 #: field:account.report.general.ledger,chart_account_id:0 #: field:account.vat.declaration,chart_account_id:0 -msgid "Chart of Accounts" +msgid "Chart of account" msgstr "Plan comptable" #. module: account @@ -9298,7 +9235,6 @@ msgstr "Écriture d'abonnement" #: report:account.general.journal:0 #: field:account.general.journal,date_from:0 #: report:account.general.ledger:0 -#: report:account.general.ledger_landscape:0 #: field:account.installer,date_start:0 #: report:account.journal.period.print:0 #: report:account.partner.balance:0 @@ -9311,7 +9247,6 @@ msgstr "Écriture d'abonnement" #: report:account.third_party_ledger:0 #: report:account.third_party_ledger_other:0 #: field:account.vat.declaration,date_from:0 -#: report:account.aged_trial_balance:0 msgid "Start Date" msgstr "Date de début" @@ -9508,7 +9443,7 @@ msgstr "" #: field:account.invoice,number:0 #: field:account.move,name:0 msgid "Number" -msgstr "Nombre" +msgstr "Numéro" #. module: account #: report:account.analytic.account.journal:0 @@ -9736,7 +9671,6 @@ msgstr "Validé" #: report:account.general.journal:0 #: field:account.general.journal,date_to:0 #: report:account.general.ledger:0 -#: report:account.general.ledger_landscape:0 #: field:account.installer,date_stop:0 #: report:account.journal.period.print:0 #: report:account.partner.balance:0 @@ -9824,7 +9758,6 @@ msgstr "États" #: field:report.account.sales,amount_total:0 #: field:report.account_type.sales,amount_total:0 #: field:report.invoice.created,amount_total:0 -#: report:account.aged_trial_balance:0 msgid "Total" msgstr "Total" @@ -10259,7 +10192,7 @@ msgstr "La date de la pièce comptable n'est pas dans la période définie." #. module: account #: field:account.subscription,period_total:0 msgid "Number of Periods" -msgstr "Nombre de Périodes" +msgstr "Nombre de périodes" #. module: account #: report:account.general.journal:0 @@ -10355,7 +10288,6 @@ msgstr "account.addtmpl.wizard" #: field:account.partner.ledger,result_selection:0 #: report:account.third_party_ledger:0 #: report:account.third_party_ledger_other:0 -#: report:account.aged_trial_balance:0 msgid "Partner's" msgstr "Du partenaire" @@ -10507,18 +10439,6 @@ msgstr "Actif" msgid "Liabilities" msgstr "Passif" -#. module: account -#: report:pl.account:0 -#: report:pl.account.horizontal:0 -msgid "Expenses" -msgstr "Charges" - -#. module: account -#: report:pl.account:0 -#: report:pl.account.horizontal:0 -msgid "Income" -msgstr "Produits" - #~ msgid "Aged Trial Balance" #~ msgstr "Balance Agée" @@ -10757,6 +10677,9 @@ msgstr "Produits" #~ msgid "Close states" #~ msgstr "Clôturer l'état" +#~ msgid "Income" +#~ msgstr "Produits" + #~ msgid "Print General Journal" #~ msgstr "Imprimer le journal général" @@ -11822,7 +11745,7 @@ msgstr "Produits" #~ msgid "Balance Sheet (Assets Accounts)" #~ msgstr "Bilan (comptes d'actif)" -#~ msgid "Chart of Accounts" +#~ msgid "Chart of Account" #~ msgstr "Plan comptable" #~ msgid "Balance:" diff --git a/addons/account/i18n/hr.po b/addons/account/i18n/hr.po index 9ff165ef150..5f6c47d7d0b 100644 --- a/addons/account/i18n/hr.po +++ b/addons/account/i18n/hr.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2011-11-07 12:52+0000\n" +"PO-Revision-Date: 2011-12-08 15:12+0000\n" "Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-08 05:45+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account #: model:process.transition,name:account.process_transition_supplierreconcilepaid0 msgid "System payment" -msgstr "Poredak plaćanja" +msgstr "System payment" #. module: account #: view:account.journal:0 @@ -39,12 +39,13 @@ msgid "" "You cannot remove/deactivate an account which is set as a property to any " "Partner." msgstr "" -"Ne možete obrisati/deaktivirati konto koji se koristi kao obilježje partnera." +"Konto se koristi kao obilježje partnera, te se ne može brisati ili " +"deaktivirati." #. module: account #: view:account.move.reconcile:0 msgid "Journal Entry Reconcile" -msgstr "Zatvaranje stavke dnevnika" +msgstr "Zatvaranje stavke dnevnika(IOS)" #. module: account #: field:account.installer.modules,account_voucher:0 @@ -69,7 +70,7 @@ msgstr "Ostatak" #: code:addons/account/invoice.py:785 #, python-format msgid "Please define sequence on invoice journal" -msgstr "Definirajte brojač na dnevniku računa" +msgstr "Definirajte brojčanu seriju na dnevniku računa" #. module: account #: constraint:account.period:0 @@ -126,6 +127,8 @@ msgid "" "If you unreconciliate transactions, you must also verify all the actions " "that are linked to those transactions because they will not be disabled" msgstr "" +"Ako otvarate stavke, morate provjeriti/provesti i sve ostale vezane akcije i " +"stanja." #. module: account #: report:account.tax.code.entries:0 @@ -152,7 +155,7 @@ msgstr "Izvor" #: view:account.move.line.reconcile:0 #: view:account.move.line.reconcile.writeoff:0 msgid "Reconcile" -msgstr "Zatvaranje" +msgstr "Zatvaranje IOS-a" #. module: account #: field:account.bank.statement.line,ref:0 @@ -216,8 +219,8 @@ msgid "" "invoice) to create analytic entries, OpenERP will look for a matching " "journal of the same type." msgstr "" -"Tip analitičkog dnevnika. Kada je potrebno kreirati analitičke stavke " -"koristit će se dnevnik odgovarajućeg tipa." +"Tip analitičkog dnevnika. Kod kreiranja analitičkih knjiženja koristi se " +"ovdje definirani analitički dnevnik odgovarajućeg tipa." #. module: account #: model:ir.actions.act_window,name:account.action_account_tax_template_form @@ -269,12 +272,12 @@ msgstr "Račun '%s' je djelomično plaćen: %s%s od %s%s (%s%s preostalo)" #. module: account #: model:process.transition,note:account.process_transition_supplierentriesreconcile0 msgid "Accounting entries are an input of the reconciliation." -msgstr "" +msgstr "Accounting entries are an input of the reconciliation." #. module: account #: model:ir.ui.menu,name:account.menu_finance_management_belgian_reports msgid "Belgian Reports" -msgstr "" +msgstr "Belgian Reports" #. module: account #: code:addons/account/account_move_line.py:1176 @@ -307,7 +310,7 @@ msgstr "Dozvoli otpis" #. module: account #: view:account.analytic.chart:0 msgid "Select the Period for Analysis" -msgstr "Odaberite period analize" +msgstr "Odaberite razdoblje analize" #. module: account #: view:account.move.line:0 @@ -318,7 +321,7 @@ msgstr "St." #: code:addons/account/invoice.py:529 #, python-format msgid "Invoice line account company does not match with invoice company." -msgstr "Konto na retku računa ne pripada tvrtci sa zaglavlja računa." +msgstr "Konto na stavci računa ne pripada organizaciji sa zaglavlja računa." #. module: account #: field:account.journal.column,field:0 @@ -330,7 +333,8 @@ msgstr "Naziv polja" msgid "" "Installs localized accounting charts to match as closely as possible the " "accounting needs of your company based on your country." -msgstr "Instalira lokalizirani kontni plan prema potrebama vaše kompanije." +msgstr "" +"Instalira lokalizirani kontni plan prema potrebama vaše organizacije." #. module: account #: code:addons/account/wizard/account_move_journal.py:63 @@ -341,17 +345,21 @@ msgid "" "You can create one in the menu: \n" "Configuration/Financial Accounting/Accounts/Journals." msgstr "" +"Can't find any account journal of %s type for this company.\n" +"\n" +"You can create one in the menu: \n" +"Configuration/Financial Accounting/Accounts/Journals." #. module: account #: model:ir.model,name:account.model_account_unreconcile msgid "Account Unreconcile" -msgstr "" +msgstr "Account Unreconcile" #. module: account #: view:product.product:0 #: view:product.template:0 msgid "Purchase Properties" -msgstr "Nabava" +msgstr "Svojstva nabave" #. module: account #: view:account.installer:0 @@ -375,11 +383,14 @@ msgid "" "OpenERP. Journal items are created by OpenERP if you use Bank Statements, " "Cash Registers, or Customer/Supplier payments." msgstr "" +"This view is used by accountants in order to record entries massively in " +"OpenERP. Journal items are created by OpenERP if you use Bank Statements, " +"Cash Registers, or Customer/Supplier payments." #. module: account #: model:ir.model,name:account.model_account_tax_template msgid "account.tax.template" -msgstr "account.tax.template" +msgstr "račun.porez.predložak" #. module: account #: model:ir.model,name:account.model_account_bank_accounts_wizard @@ -395,7 +406,7 @@ msgstr "Datum kreiranja" #. module: account #: selection:account.journal,type:0 msgid "Purchase Refund" -msgstr "Povrat nabave" +msgstr "Odobrenja nabave" #. module: account #: selection:account.journal,type:0 @@ -418,6 +429,8 @@ msgid "" "This field contains the informatin related to the numbering of the journal " "entries of this journal." msgstr "" +"Brojčana serija koja će se koristiti za odbrojavanje dokumenata ovog " +"dnevnika." #. module: account #: field:account.journal,default_debit_account_id:0 @@ -437,7 +450,7 @@ msgstr "Pozitivan" #. module: account #: view:account.move.line.unreconcile.select:0 msgid "Open For Unreconciliation" -msgstr "Otvoreno za otvaranje" +msgstr "Otvori za otvaranje IOS-a" #. module: account #: field:account.fiscal.position.template,chart_template_id:0 @@ -449,7 +462,7 @@ msgstr "Predložak kontnog plana" #. module: account #: help:account.model.line,amount_currency:0 msgid "The amount expressed in an optional other currency." -msgstr "Iznos je predstavljen opciono u drugoj valuti" +msgstr "Iznos u drugoj valuti" #. module: account #: help:account.journal.period,state:0 @@ -458,6 +471,9 @@ msgid "" "it comes to 'Printed' state. When all transactions are done, it comes in " "'Done' state." msgstr "" +"When journal period is created. The state is 'Draft'. If a report is printed " +"it comes to 'Printed' state. When all transactions are done, it comes in " +"'Done' state." #. module: account #: model:ir.actions.act_window,help:account.action_account_tax_chart @@ -467,6 +483,10 @@ msgid "" "amount of each area of the tax declaration for your country. It’s presented " "in a hierarchical structure, which can be modified to fit your needs." msgstr "" +"Stablo poreza prikazuje strukturu poreznih grupa sa vrijednostima osnovica i " +"poreza. Jedno stablo sadrži strukturu osnovica i poreza za prijavu PDV-a, a " +"druga možete prilagođavati vašim potrebama i prikazivati druge poreze, " +"trošarine ili npr. ugovorene provizije prodavačima." #. module: account #: view:account.analytic.line:0 @@ -503,7 +523,7 @@ msgstr "Dnevnik" #. module: account #: model:ir.model,name:account.model_account_invoice_confirm msgid "Confirm the selected invoices" -msgstr "Potvrda odabranih računa" +msgstr "Potvrdi odabrane račune" #. module: account #: field:account.addtmpl.wizard,cparent_id:0 @@ -542,12 +562,12 @@ msgstr "Porezi nabave" #. module: account #: model:ir.model,name:account.model_account_invoice_refund msgid "Invoice Refund" -msgstr "Povrat računa" +msgstr "Računi odobrenja" #. module: account #: report:account.overdue:0 msgid "Li." -msgstr "" +msgstr "Li." #. module: account #: field:account.automatic.reconcile,unreconciled:0 @@ -616,7 +636,7 @@ msgstr " 30 Dana " #. module: account #: field:ir.sequence,fiscal_ids:0 msgid "Sequences" -msgstr "Sekvence" +msgstr "Brojčane serije" #. module: account #: view:account.fiscal.position.template:0 @@ -626,17 +646,17 @@ msgstr "Mapiranje poreza" #. module: account #: report:account.central.journal:0 msgid "Centralized Journal" -msgstr "" +msgstr "Centralized Journal" #. module: account #: sql_constraint:account.sequence.fiscalyear:0 msgid "Main Sequence must be different from current !" -msgstr "" +msgstr "Glavna serija mora biti različita od trenutne !" #. module: account #: field:account.invoice.tax,tax_amount:0 msgid "Tax Code Amount" -msgstr "Iznos poreza" +msgstr "Iznos porezne grupe" #. module: account #: code:addons/account/account.py:2779 @@ -648,18 +668,18 @@ msgstr "IRA" #. module: account #: help:account.bank.statement,balance_end_real:0 msgid "closing balance entered by the cashbox verifier" -msgstr "" +msgstr "closing balance entered by the cashbox verifier" #. module: account #: view:account.period:0 #: view:account.period.close:0 msgid "Close Period" -msgstr "Zatvori period" +msgstr "Zatvori razdoblje" #. module: account #: model:ir.model,name:account.model_account_common_partner_report msgid "Account Common Partner Report" -msgstr "" +msgstr "Račun Zajednički Partner Izvješće" #. module: account #: field:account.fiscalyear.close,period_id:0 @@ -676,7 +696,7 @@ msgstr "Period dnevnika" #: code:addons/account/account_move_line.py:776 #, python-format msgid "To reconcile the entries company should be the same for all entries" -msgstr "Sve stavke zatvaranja moraju biti iz iste trvtke" +msgstr "Sve stavke zatvaranja moraju biti iz iste organizacije" #. module: account #: view:account.account:0 @@ -713,7 +733,7 @@ msgstr "Čekovi" #. module: account #: field:account.partner.reconcile.process,today_reconciled:0 msgid "Partners Reconciled Today" -msgstr "Danas zatvoreni partneri" +msgstr "Danas zatvoreni partneri (IOS-i)" #. module: account #: selection:account.payment.term.line,value:0 @@ -737,7 +757,7 @@ msgstr "Analitičke stavke" #: code:addons/account/wizard/account_change_currency.py:39 #, python-format msgid "You can only change currency for Draft Invoice !" -msgstr "" +msgstr "Valuta se može mijenjati samo na računima u stanju 'Nacrt'!" #. module: account #: view:account.analytic.journal:0 @@ -751,7 +771,7 @@ msgstr "" #: field:account.move.reconcile,type:0 #: field:report.invoice.created,type:0 msgid "Type" -msgstr "Tip" +msgstr "Vrsta" #. module: account #: model:ir.model,name:account.model_account_subscription_line @@ -761,7 +781,7 @@ msgstr "Retci knjiženja pretplate" #. module: account #: help:account.invoice,reference:0 msgid "The partner reference of this invoice." -msgstr "Vezna oznaka partnera za ovaj račun(poziv na broj)." +msgstr "Poziv na broj." #. module: account #: view:account.move.line.unreconcile.select:0 @@ -769,7 +789,7 @@ msgstr "Vezna oznaka partnera za ovaj račun(poziv na broj)." #: view:account.unreconcile.reconcile:0 #: model:ir.model,name:account.model_account_move_line_unreconcile_select msgid "Unreconciliation" -msgstr "Poništavanje zatvaranja" +msgstr "Poništavanje zatvaranja IOS-a" #. module: account #: model:ir.model,name:account.model_account_analytic_Journal_report @@ -789,7 +809,7 @@ msgstr "Izračun valute plaćanja" #. module: account #: report:account.analytic.account.quantity_cost_ledger:0 msgid "J.C./Move name" -msgstr "" +msgstr "J.C./Move name" #. module: account #: selection:account.entries.report,month:0 @@ -809,7 +829,7 @@ msgstr "dana" #: help:account.account.template,nocreate:0 msgid "" "If checked, the new chart of accounts will not contain this by default." -msgstr "" +msgstr "Ako je označeno, novi računski plan neće sadržavati ove po defaultu." #. module: account #: code:addons/account/wizard/account_invoice_refund.py:102 @@ -908,12 +928,12 @@ msgstr "Prošireni filtri..." #. module: account #: model:ir.ui.menu,name:account.menu_account_central_journal msgid "Centralizing Journal" -msgstr "" +msgstr "Centralizirani dnevnik" #. module: account #: selection:account.journal,type:0 msgid "Sale Refund" -msgstr "Povrat prodaje" +msgstr "Odobrenje kupcu" #. module: account #: model:process.node,note:account.process_node_accountingstatemententries0 @@ -936,7 +956,7 @@ msgstr "Porez ili osnovica poreza ovisno o poreznoj grupi." #. module: account #: view:account.analytic.line:0 msgid "Purchases" -msgstr "Nabave" +msgstr "Nabava" #. module: account #: field:account.model,lines_id:0 @@ -1001,7 +1021,7 @@ msgstr "Tjedan" #: field:account.pl.report,display_type:0 #: field:account.report.general.ledger,landscape:0 msgid "Landscape Mode" -msgstr "Prosireni način" +msgstr "Položeno (Landscape)" #. module: account #: view:board.board:0 @@ -1020,6 +1040,8 @@ msgid "" "These types are defined according to your country. The type contains more " "information about the account and its specificities." msgstr "" +"These types are defined according to your country. The type contains more " +"information about the account and its specificities." #. module: account #: view:account.tax:0 @@ -1079,7 +1101,7 @@ msgstr "Potvrdi izvod" #: field:account.fiscal.position.tax,tax_dest_id:0 #: field:account.fiscal.position.tax.template,tax_dest_id:0 msgid "Replacement Tax" -msgstr "Promenljiv porez" +msgstr "Zamjenski porez" #. module: account #: selection:account.move.line,centralisation:0 @@ -1094,11 +1116,15 @@ msgid "" "purchase orders or receipts. This way, you can control the invoice from your " "supplier according to what you purchased or received." msgstr "" +"With Supplier Invoices you can enter and manage invoices issued by your " +"suppliers. OpenERP can also generate draft invoices automatically from " +"purchase orders or receipts. This way, you can control the invoice from your " +"supplier according to what you purchased or received." #. module: account #: view:account.invoice.cancel:0 msgid "Cancel Invoices" -msgstr "" +msgstr "Otkaži račune" #. module: account #: view:account.unreconcile.reconcile:0 @@ -1111,7 +1137,7 @@ msgstr "Transakcije poništavanja zatvaranja" #: field:account.tax.template,tax_code_id:0 #: model:ir.model,name:account.model_account_tax_code msgid "Tax Code" -msgstr "Šifra poreza" +msgstr "Porezna grupa" #. module: account #: field:account.account,currency_mode:0 @@ -1126,7 +1152,7 @@ msgstr "Temeljnica" #. module: account #: field:account.move.line.reconcile,trans_nbr:0 msgid "# of Transaction" -msgstr "Broj transakcija" +msgstr "# transakcija" #. module: account #: report:account.general.ledger:0 @@ -1147,7 +1173,7 @@ msgstr "Ne možete mjenjati/brisati dnevnike sa stavkama za ovo razdoblje!" #: help:account.invoice,origin:0 #: help:account.invoice.line,origin:0 msgid "Reference of the document that produced this invoice." -msgstr "Vezna oznaka dokumenta koji je stvorio ovaj račun." +msgstr "Oznaka izvornog dokumenta koji je kreirao ovaj račun." #. module: account #: view:account.analytic.line:0 @@ -1185,7 +1211,7 @@ msgstr "Konto" #. module: account #: field:account.tax,include_base_amount:0 msgid "Included in base amount" -msgstr "Uključeno u iznos osnovice" +msgstr "Uključeno u osnovicu" #. module: account #: view:account.entries.report:0 @@ -1257,7 +1283,7 @@ msgstr "Početni saldo" #. module: account #: view:account.invoice:0 msgid "Reset to Draft" -msgstr "Vrati u pripremu" +msgstr "Vrati u nacrt" #. module: account #: view:wizard.multi.charts.accounts:0 @@ -1309,7 +1335,7 @@ msgstr "Glavni dnevnik" #: code:addons/account/account_move_line.py:1271 #, python-format msgid "You can not use this general account in this journal !" -msgstr "Ne možete koristiti odabrani opći konto u ovon dnevniku!" +msgstr "Ne možete koristiti odabrani opći konto u ovom dnevniku!" #. module: account #: selection:account.balance.report,display_account:0 @@ -1339,7 +1365,7 @@ msgstr "Traži poreze" #. module: account #: model:ir.model,name:account.model_account_analytic_cost_ledger msgid "Account Analytic Cost Ledger" -msgstr "" +msgstr "Account Analytic Cost Ledger" #. module: account #: view:account.model:0 @@ -1359,7 +1385,7 @@ msgstr "Maksimalni iznos otpisa" #. module: account #: view:account.invoice:0 msgid "Compute Taxes" -msgstr "Izračunaj poreze" +msgstr "Iz_računaj poreze" #. module: account #: field:wizard.multi.charts.accounts,code_digits:0 @@ -1369,7 +1395,7 @@ msgstr "Broj znamenki" #. module: account #: field:account.journal,entry_posted:0 msgid "Skip 'Draft' State for Manual Entries" -msgstr "Preskoči stanje 'Priprema' za ručni upis" +msgstr "Preskoči stanje 'Nacrt' za ručni upis" #. module: account #: view:account.invoice.report:0 @@ -1385,6 +1411,9 @@ msgid "" "entry per accounting document: invoice, refund, supplier payment, bank " "statements, etc." msgstr "" +"Temeljnica sadrži više knjigovodstvenih stavaka od kojih je svaka dugovna " +"ili potražna transakcija. OpenERP automatski kreira jednu temeljnicu za " +"jedan knjigovodstveni dokument: račun, plaćanje, izvod, itd." #. module: account #: view:account.entries.report:0 @@ -1406,7 +1435,7 @@ msgstr "Povrat dobavljaču" #: view:account.payment.term.line:0 msgid "" "Example: at 14 net days 2 percents, remaining amount at 30 days end of month." -msgstr "" +msgstr "Primjer: za 14 dana 2%, ostatak za 30 dana ili do kraja mjeseca." #. module: account #: code:addons/account/invoice.py:815 @@ -1416,6 +1445,8 @@ msgid "" "The payment term defined gives a computed amount greater than the total " "invoiced amount." msgstr "" +"Račun nije kreiran !\n" +"Uvjeti plaćanja daju iznos veći od ukupnog iznosa računa." #. module: account #: field:account.installer.modules,account_anglo_saxon:0 @@ -1477,7 +1508,7 @@ msgstr "Grupe" #: field:account.invoice,amount_untaxed:0 #: field:report.invoice.created,amount_untaxed:0 msgid "Untaxed" -msgstr "Bez poreza" +msgstr "Osnovica" #. module: account #: view:account.partner.reconcile.process:0 @@ -1494,6 +1525,8 @@ msgstr "Traži izvode banke" msgid "" "Wrong credit or debit value in model (Credit + Debit Must Be greater \"0\")!" msgstr "" +"Pogrešno kreditna ili debitna vrijednost u modelu (Kreditna + debitna mora " +"biti veći \"0 \")!" #. module: account #: view:account.chart.template:0 @@ -1505,7 +1538,7 @@ msgstr "Konto obveza" #: field:account.tax,account_paid_id:0 #: field:account.tax.template,account_paid_id:0 msgid "Refund Tax Account" -msgstr "Konto povrata poreza" +msgstr "Konto poreza za odobrenja" #. module: account #: view:account.bank.statement:0 @@ -1523,6 +1556,12 @@ msgid "" "the Payment column of a line, you can press F1 to open the reconciliation " "form." msgstr "" +"A bank statement is a summary of all financial transactions occurring over a " +"given period of time on a deposit account, a credit card or any other type " +"of financial account. The starting balance will be proposed automatically " +"and the closing balance is to be found on your statement. When you are in " +"the Payment column of a line, you can press F1 to open the reconciliation " +"form." #. module: account #: report:account.analytic.account.cost_ledger:0 @@ -1565,7 +1604,7 @@ msgstr "Brojač fiskalne godine" #. module: account #: field:wizard.multi.charts.accounts,seq_journal:0 msgid "Separated Journal Sequences" -msgstr "Odvojene sekvence dnevnika" +msgstr "Odvojeni brojači dnevnika" #. module: account #: field:account.bank.statement,user_id:0 @@ -1589,6 +1628,8 @@ msgid "" "Cancel Invoice: Creates the refund invoice, validate and reconcile it to " "cancel the current invoice." msgstr "" +"Storniraj račun: Kreira storno računa, potvrđuje ga i zatvara sa ovim " +"računom." #. module: account #: model:ir.ui.menu,name:account.periodical_processing_invoicing @@ -1598,7 +1639,7 @@ msgstr "Fakturiranje" #. module: account #: field:account.chart.template,tax_code_root_id:0 msgid "Root Tax Code" -msgstr "Šifra korijenskog poreza" +msgstr "Korijenska porezna grupa" #. module: account #: field:account.partner.ledger,initial_balance:0 @@ -1619,7 +1660,7 @@ msgstr "Ispiši potvrdu" #. module: account #: view:account.change.currency:0 msgid "This wizard will change the currency of the invoice" -msgstr "Čarobnjak za promjenu valute računa" +msgstr "Asistent za promjenu valute računa" #. module: account #: model:ir.actions.act_window,help:account.action_account_chart @@ -1628,6 +1669,8 @@ msgid "" "Have a complete tree view of all journal items per account code by clicking " "on an account." msgstr "" +"Prikaži kontni plan poduzeća za fiskalnu godinu sa filterom razdoblja. " +"Mogućnost podpregleda stavaka temeljnice po broju konta, kliknuti na konto." #. module: account #: constraint:account.fiscalyear:0 @@ -1638,7 +1681,7 @@ msgstr "Greška! Fiskalne godine se ne smiju preklapati" #: code:addons/account/account_move_line.py:808 #, python-format msgid "The account is not defined to be reconciled !" -msgstr "" +msgstr "Nije zadano zatvaranje IOS-a na ovom kontu !" #. module: account #: field:account.cashbox.line,pieces:0 @@ -1651,6 +1694,8 @@ msgid "" "If the active field is set to False, it will allow you to hide the journal " "period without removing it." msgstr "" +"If the active field is set to False, it will allow you to hide the journal " +"period without removing it." #. module: account #: view:res.partner:0 @@ -1660,7 +1705,7 @@ msgstr "Dugovanje dobavljaču" #. module: account #: help:account.model.line,quantity:0 msgid "The optional quantity on entries" -msgstr "" +msgstr "The optional quantity on entries" #. module: account #: model:ir.actions.act_window,name:account.act_account_partner_account_move_all @@ -1676,7 +1721,7 @@ msgstr "Morate navesti konto za stavku otpisa!" #. module: account #: model:ir.model,name:account.model_account_common_journal_report msgid "Account Common Journal Report" -msgstr "" +msgstr "Izvješče konta opće temeljnice" #. module: account #: selection:account.partner.balance,display_partner:0 @@ -1722,13 +1767,13 @@ msgstr "Izvod u pripremi" #. module: account #: view:account.tax:0 msgid "Tax Declaration: Credit Notes" -msgstr "" +msgstr "Porezna prijava: Odobrenja" #. module: account #: code:addons/account/account.py:499 #, python-format msgid "You cannot deactivate an account that contains account moves." -msgstr "" +msgstr "Ne možete deaktivirati račun koji sadrži stavke prometa." #. module: account #: field:account.move.line.reconcile,credit:0 @@ -1738,7 +1783,7 @@ msgstr "Potražni iznos" #. module: account #: constraint:account.move.line:0 msgid "You can not create move line on closed account." -msgstr "" +msgstr "Ne možete kreirati stavke prometa za zatvoreni račun." #. module: account #: code:addons/account/account.py:519 @@ -1747,6 +1792,8 @@ msgid "" "You cannot change the type of account from 'Closed' to any other type which " "contains account entries!" msgstr "" +"You cannot change the type of account from 'Closed' to any other type which " +"contains account entries!" #. module: account #: view:res.company:0 @@ -1756,14 +1803,14 @@ msgstr "Konto dobiti/gubitka i rezerve" #. module: account #: sql_constraint:account.move.line:0 msgid "Wrong credit or debit value in accounting entry !" -msgstr "" +msgstr "Pogrešno kreditna ili debitnom vrijednost unešene stavke!" #. module: account #: view:account.invoice.report:0 #: model:ir.actions.act_window,name:account.action_account_invoice_report_all #: model:ir.ui.menu,name:account.menu_action_account_invoice_report_all msgid "Invoices Analysis" -msgstr "analiza računa" +msgstr "Analiza računa" #. module: account #: model:ir.model,name:account.model_account_period_close @@ -1783,7 +1830,7 @@ msgstr "Stavke" #. module: account #: report:account.tax.code.entries:0 msgid "A/c Code" -msgstr "" +msgstr "A/c Code" #. module: account #: field:account.invoice,move_id:0 @@ -1794,7 +1841,7 @@ msgstr "Temeljnica" #. module: account #: view:account.tax:0 msgid "Tax Declaration: Invoices" -msgstr "Porezna prijava" +msgstr "Porezne grupe računa" #. module: account #: field:account.cashbox.line,subtotal:0 @@ -1809,7 +1856,7 @@ msgstr "Analiza blagajne" #. module: account #: constraint:res.company:0 msgid "Error! You can not create recursive companies." -msgstr "Greška! Ne možete stvoriti rekurzivne tvrtke." +msgstr "Pogreška! Ne možete kreirati rekurzivne organizacije." #. module: account #: view:account.analytic.account:0 @@ -1858,7 +1905,7 @@ msgstr "Završni saldo na temelju početnog stanja i transakcija" #: model:process.node,note:account.process_node_reconciliation0 #: model:process.node,note:account.process_node_supplierreconciliation0 msgid "Comparison between accounting and payment entries" -msgstr "Usporedba Cesti Cesti između knjiženja i plaćanja" +msgstr "Usporedba stavki knjiženja i plaćanja" #. module: account #: view:account.tax:0 @@ -1882,6 +1929,8 @@ msgid "" "It adds the currency column if the currency is different then the company " "currency" msgstr "" +"It adds the currency column if the currency is different then the company " +"currency" #. module: account #: help:account.journal,allow_date:0 @@ -1911,7 +1960,7 @@ msgstr "Otkazan" #: view:account.invoice:0 #: view:report.invoice.created:0 msgid "Untaxed Amount" -msgstr "Iznos bez poreza" +msgstr "Osnovica" #. module: account #: help:account.tax,active:0 @@ -1927,13 +1976,16 @@ msgid "" "be with same name as statement name. This allows the statement entries to " "have the same references than the statement itself" msgstr "" +"if you give the Name other then /, its created Accounting Entries Move will " +"be with same name as statement name. This allows the statement entries to " +"have the same references than the statement itself" #. module: account #: model:ir.actions.act_window,name:account.action_account_unreconcile #: model:ir.actions.act_window,name:account.action_account_unreconcile_reconcile #: model:ir.actions.act_window,name:account.action_account_unreconcile_select msgid "Unreconcile Entries" -msgstr "Poništi zatvaranje stavki" +msgstr "Otvori stavke" #. module: account #: field:account.move.reconcile,line_partial_ids:0 @@ -1949,7 +2001,7 @@ msgstr "Fiskalna godina" #: view:account.journal.select:0 #: view:project.account.analytic.line:0 msgid "Open Entries" -msgstr "Otvori stavke" +msgstr "Prikaži stavke" #. module: account #: field:account.automatic.reconcile,account_ids:0 @@ -1996,6 +2048,8 @@ msgid "" "Invalid period ! Some periods overlap or the date period is not in the scope " "of the fiscal year. " msgstr "" +"Neispravano razdoblje! Neki od razdoblja se preklapaju ili datum razdoblja " +"nije u okviru fiskalne godine. " #. module: account #: selection:account.invoice,state:0 @@ -2018,8 +2072,8 @@ msgid "" "There is no default default debit account defined \n" "on journal \"%s\"" msgstr "" -"Nije definiran zadani dugovni konto \n" -"za dnevnikl \"%s\"" +"Nije definiran uobičajeni dugovni konto \n" +"za dnevnik \"%s\"" #. module: account #: help:account.account,type:0 @@ -2032,10 +2086,15 @@ msgid "" "partners accounts (for debit/credit computations), closed for depreciated " "accounts." msgstr "" +"This type is used to differentiate types with special effects in OpenERP: " +"view can not have entries, consolidation are accounts that can have children " +"accounts for multi-company consolidations, payable/receivable are for " +"partners accounts (for debit/credit computations), closed for depreciated " +"accounts." #. module: account #: view:account.chart.template:0 -msgid "Search Chart of Accounts Templates" +msgid "Search Chart of Account Templates" msgstr "Traži predloške kontnog plana" #. module: account @@ -2045,6 +2104,9 @@ msgid "" "certified Chart of Accounts exists for your specified country, a generic one " "can be installed and will be selected by default." msgstr "" +"The default Chart of Accounts is matching your country selection. If no " +"certified Chart of Accounts exists for your specified country, a generic one " +"can be installed and will be selected by default." #. module: account #: view:account.account.type:0 @@ -2070,7 +2132,7 @@ msgstr "Opis" #: code:addons/account/installer.py:498 #, python-format msgid "ECNJ" -msgstr "" +msgstr "ECNJ" #. module: account #: view:account.subscription:0 @@ -2089,7 +2151,7 @@ msgstr "Konto prihoda" #: code:addons/account/invoice.py:352 #, python-format msgid "There is no Accounting Journal of type Sale/Purchase defined!" -msgstr "" +msgstr "Nije definiran dnevnik tipa Prodaja/Nabava!" #. module: account #: view:product.category:0 @@ -2102,7 +2164,7 @@ msgstr "Računovodstveni podaci" #: report:account.general.ledger:0 #: report:account.general.ledger_landscape:0 msgid "Entries Sorted By" -msgstr "Stavke poredane po" +msgstr "Entries Sorted By" #. module: account #: field:account.change.currency,currency_id:0 @@ -2112,7 +2174,7 @@ msgstr "Promjeni u" #. module: account #: view:account.entries.report:0 msgid "# of Products Qty " -msgstr "" +msgstr "# količine proizvoda " #. module: account #: model:ir.model,name:account.model_product_template @@ -2166,12 +2228,12 @@ msgstr "Ostavite prazno za sve otvorene fiskalne godine" #. module: account #: model:ir.model,name:account.model_account_move msgid "Account Entry" -msgstr "Stavka knjiženja" +msgstr "Temeljnica" #. module: account #: field:account.sequence.fiscalyear,sequence_main_id:0 msgid "Main Sequence" -msgstr "Glavna sekvenca" +msgstr "Glavna br. serija" #. module: account #: field:account.invoice,payment_term:0 @@ -2220,7 +2282,7 @@ msgstr "Otvoreno" #: model:process.node,note:account.process_node_draftinvoices0 #: model:process.node,note:account.process_node_supplierdraftinvoices0 msgid "Draft state of an invoice" -msgstr "Stanje računa 'U pripremi'" +msgstr "Stanje računa 'Nacrt'" #. module: account #: help:account.account,reconcile:0 @@ -2238,7 +2300,7 @@ msgstr "Zatvaranje salda konti" #: field:account.tax,tax_code_id:0 #: view:account.tax.code:0 msgid "Account Tax Code" -msgstr "Šifra PDV obrasca" +msgstr "Porezna grupa za porez" #. module: account #: code:addons/account/invoice.py:545 @@ -2249,12 +2311,16 @@ msgid "" "You can create one in the menu: \n" "Configuration\\Financial Accounting\\Accounts\\Journals." msgstr "" +"Can't find any account journal of %s type for this company.\n" +"\n" +"You can create one in the menu: \n" +"Configuration\\Financial Accounting\\Accounts\\Journals." #. module: account #: field:account.invoice.tax,base_code_id:0 #: field:account.tax.template,base_code_id:0 msgid "Base Code" -msgstr "Osnovna Šifra" +msgstr "Grupa osnovice" #. module: account #: help:account.invoice.tax,sequence:0 @@ -2267,7 +2333,7 @@ msgstr "Određuje poredak u popisu poreza na računu." #: field:account.tax.template,base_sign:0 #: field:account.tax.template,ref_base_sign:0 msgid "Base Code Sign" -msgstr "Predznak šifre osnovice" +msgstr "Koef. osnovice" #. module: account #: view:account.vat.declaration:0 @@ -2279,6 +2345,12 @@ msgid "" "useful because it enables you to preview at any time the tax that you owe at " "the start and end of the month or quarter." msgstr "" +"This menu prints a VAT declaration based on invoices or payments. Select one " +"or several periods of the fiscal year. The information required for a tax " +"declaration is automatically generated by OpenERP from invoices (or " +"payments, in some countries). This data is updated in real time. That’s very " +"useful because it enables you to preview at any time the tax that you owe at " +"the start and end of the month or quarter." #. module: account #: selection:account.move.line,centralisation:0 @@ -2289,7 +2361,7 @@ msgstr "Centralizacija Dugovanja" #: view:account.invoice.confirm:0 #: model:ir.actions.act_window,name:account.action_account_invoice_confirm msgid "Confirm Draft Invoices" -msgstr "Porvrdite pripremljene račune" +msgstr "Potvrdi nacrte račune" #. module: account #: field:account.entries.report,day:0 @@ -2356,18 +2428,21 @@ msgstr "Opis knjiženja" msgid "" "The fiscal position will determine taxes and the accounts used for the " "partner." -msgstr "Fiskalna pozicija određuje poreze i konta za partnera." +msgstr "" +"Fiskalna pozicija određuje/mjenja poreze i konta za partnera kad se " +"razlikuju od zadanih poreza i konta proizvoda." #. module: account #: view:account.print.journal:0 msgid "" "This report gives you an overview of the situation of a specific journal" msgstr "" +"This report gives you an overview of the situation of a specific journal" #. module: account #: constraint:product.category:0 msgid "Error ! You can not create recursive categories." -msgstr "Greška! Ne možete stvoriti rekurzivne kategorije." +msgstr "Greška ! Ne možete stvoriti rekurzivne grupe." #. module: account #: report:account.invoice:0 @@ -2423,6 +2498,8 @@ msgid "" "You cannot modify company of this journal as its related record exist in " "Entry Lines" msgstr "" +"You cannot modify company of this journal as its related record exist in " +"Entry Lines" #. module: account #: report:account.journal.period.print:0 @@ -2469,7 +2546,7 @@ msgstr "Odaberite ili poreznu grupu poreza ili poreznu grupu osnovice." #. module: account #: model:ir.ui.menu,name:account.menu_automatic_reconcile msgid "Automatic Reconciliation" -msgstr "Automatsko zatvaranje" +msgstr "Automatsko zatvaranje IOS-a" #. module: account #: field:account.invoice,reconciled:0 @@ -2480,7 +2557,7 @@ msgstr "Plaćeno/Usklađeno" #: field:account.tax,ref_base_code_id:0 #: field:account.tax.template,ref_base_code_id:0 msgid "Refund Base Code" -msgstr "Šifra osnovice povrata" +msgstr "Porezna grupa za osnovicu" #. module: account #: model:ir.actions.act_window,name:account.action_bank_statement_periodic_tree @@ -2514,13 +2591,15 @@ msgid "" "Automatically generate entries based on what has been entered in the system " "before a specific date." msgstr "" +"Automatically generate entries based on what has been entered in the system " +"before a specific date." #. module: account #: view:account.aged.trial.balance:0 #: model:ir.actions.act_window,name:account.action_account_aged_balance_view #: model:ir.ui.menu,name:account.menu_aged_trial_balance msgid "Aged Partner Balance" -msgstr "Struktura potraživanja/obveza partnera" +msgstr "Struktura IOS-a partnera" #. module: account #: model:process.transition,name:account.process_transition_entriesreconcile0 @@ -2542,12 +2621,17 @@ msgid "" "Note that journal entries that are automatically created by the system are " "always skipping that state." msgstr "" +"Check this box if you don't want new journal entries to pass through the " +"'draft' state and instead goes directly to the 'posted state' without any " +"manual validation. \n" +"Note that journal entries that are automatically created by the system are " +"always skipping that state." #. module: account #: model:ir.actions.server,name:account.ir_actions_server_action_wizard_multi_chart #: model:ir.ui.menu,name:account.menu_act_ir_actions_bleble msgid "New Company Financial Setting" -msgstr "" +msgstr "Financijske postavke nove organizacije" #. module: account #: model:ir.actions.act_window,name:account.action_report_account_sales_tree_all @@ -2559,7 +2643,7 @@ msgstr "Prodaje po kontu" #. module: account #: view:account.use.model:0 msgid "This wizard will create recurring accounting entries" -msgstr "" +msgstr "Asistent za kreiranje ponavljajućih temeljnica" #. module: account #: code:addons/account/account.py:1181 @@ -2582,7 +2666,7 @@ msgstr "Morate definirati analitički dnevnik na dnevniku '%s' !" #: model:ir.actions.act_window,name:account.action_tax_code_list #: model:ir.ui.menu,name:account.menu_action_tax_code_list msgid "Tax codes" -msgstr "Šifre poreza" +msgstr "Porezne grupe" #. module: account #: model:ir.ui.menu,name:account.menu_account_customer @@ -2617,7 +2701,7 @@ msgstr "" #. module: account #: model:process.transition,note:account.process_transition_paymentreconcile0 msgid "Payment entries are the second input of the reconciliation." -msgstr "" +msgstr "Payment entries are the second input of the reconciliation." #. module: account #: report:account.move.voucher:0 @@ -2644,6 +2728,8 @@ msgid "" "The optional quantity expressed by this line, eg: number of product sold. " "The quantity is not a legal requirement but is very useful for some reports." msgstr "" +"The optional quantity expressed by this line, eg: number of product sold. " +"The quantity is not a legal requirement but is very useful for some reports." #. module: account #: view:account.payment.term.line:0 @@ -2660,28 +2746,29 @@ msgstr "Obavezno" #: field:product.category,property_account_expense_categ:0 #: field:product.template,property_account_expense:0 msgid "Expense Account" -msgstr "Konto rashoda" +msgstr "Konto troška" #. module: account #: help:account.invoice,period_id:0 msgid "Keep empty to use the period of the validation(invoice) date." -msgstr "Ostavite prazno" +msgstr "Prazno za datum potvrde." #. module: account #: help:account.bank.statement,account_id:0 msgid "" "used in statement reconciliation domain, but shouldn't be used elswhere." msgstr "" +"used in statement reconciliation domain, but shouldn't be used elswhere." #. module: account #: field:account.invoice.tax,base_amount:0 msgid "Base Code Amount" -msgstr "Iznos osnvice" +msgstr "Iznos osnovice" #. module: account #: field:wizard.multi.charts.accounts,sale_tax:0 msgid "Default Sale Tax" -msgstr "Zadani porez prodaje" +msgstr "Uobičajeni porezi prodaje" #. module: account #: help:account.model.line,date_maturity:0 @@ -2690,6 +2777,8 @@ msgid "" "between the creation date or the creation date of the entries plus the " "partner payment terms." msgstr "" +"Datum dospijeća generiranih stavaka modelal. Možete birati između datuma " +"izrade ili datum izrade/unosa plus uvjeta plaćanja partnera." #. module: account #: model:ir.ui.menu,name:account.menu_finance_accounting @@ -2725,6 +2814,8 @@ msgid "" "It adds initial balance row on report which display previous sum amount of " "debit/credit/balance" msgstr "" +"It adds initial balance row on report which display previous sum amount of " +"debit/credit/balance" #. module: account #: view:account.analytic.line:0 @@ -2785,7 +2876,7 @@ msgstr "Uk. transakcije" #. module: account #: view:res.partner:0 msgid "Bank account" -msgstr "Konto banke" +msgstr "Bankovni račun" #. module: account #: field:account.chart.template,tax_template_ids:0 @@ -2801,6 +2892,11 @@ msgid "" "software system you may have to use the rate at date. Incoming transactions " "always use the rate at date." msgstr "" +"This will select how the current currency rate for outgoing transactions is " +"computed. In most countries the legal method is \"average\" but only a few " +"software systems are able to manage this. So if you import from another " +"software system you may have to use the rate at date. Incoming transactions " +"always use the rate at date." #. module: account #: help:wizard.multi.charts.accounts,code_digits:0 @@ -2810,7 +2906,7 @@ msgstr "Broj znamenki za upotrebu u šifri konta" #. module: account #: field:account.payment.term.line,name:0 msgid "Line Name" -msgstr "Naziv redka" +msgstr "Naziv stavke" #. module: account #: view:account.fiscalyear:0 @@ -2877,7 +2973,7 @@ msgstr "Elektronska datoteka" #. module: account #: view:res.partner:0 msgid "Customer Credit" -msgstr "Potraživanja kupca" +msgstr "Potraživanja od kupca" #. module: account #: model:ir.model,name:account.model_account_tax_code_template @@ -2897,7 +2993,7 @@ msgstr "Saldo konti partnera" #. module: account #: help:account.journal.column,sequence:0 msgid "Gives the sequence order to journal column." -msgstr "" +msgstr "Gives the sequence order to journal column." #. module: account #: view:account.tax.template:0 @@ -2909,7 +3005,7 @@ msgstr "Prijava poreza" #: help:account.account.template,currency_id:0 #: help:account.bank.accounts.wizard,currency_id:0 msgid "Forces all moves for this account to have this secondary currency." -msgstr "" +msgstr "Forces all moves for this account to have this secondary currency." #. module: account #: model:ir.actions.act_window,help:account.action_validate_account_move_line @@ -2917,6 +3013,8 @@ msgid "" "This wizard will validate all journal entries of a particular journal and " "period. Once journal entries are validated, you can not update them anymore." msgstr "" +"Ovaj asistent će knjižiti sve neknjižene stavke odabranog dnevnika za " +"odabrani period." #. module: account #: model:ir.actions.act_window,name:account.action_account_chart_template_form @@ -2932,7 +3030,7 @@ msgstr "Generiraj kontni plan iz predloška" #. module: account #: model:ir.model,name:account.model_account_unreconcile_reconcile msgid "Account Unreconcile Reconcile" -msgstr "" +msgstr "Račun Neusklađen Usklađen" #. module: account #: help:account.account.type,close_method:0 @@ -2947,6 +3045,13 @@ msgid "" " 'Unreconciled' will copy only the journal items that were unreconciled on " "the first day of the new fiscal year." msgstr "" +"Postavite metodu knjiženja kod zatvaranja konta na kraju godine.\n" +"Sva konta ovog tipa će se zatvarati prema odabranoj metodi.\n" +"\n" +" 'Ništa' - neće generirati stavke.\n" +" 'Saldo' - koristi se uglavnom za konta banke i blagajne.\n" +" 'Stavke' - sve stavke se prenose u novu godinu(i zatvorene).\n" +" 'Otvorene stavke' - prenose se otvorene stavke (konta kupaca i dobavljača)." #. module: account #: view:account.tax:0 @@ -3023,7 +3128,7 @@ msgstr "Nabava" #: model:ir.actions.act_window,name:account.action_account_installer #: view:wizard.multi.charts.accounts:0 msgid "Accounting Application Configuration" -msgstr "" +msgstr "Accounting Application Configuration" #. module: account #: model:ir.actions.act_window,name:account.open_board_account @@ -3065,6 +3170,8 @@ msgid "" "The amount expressed in the related account currency if not equal to the " "company one." msgstr "" +"The amount expressed in the related account currency if not equal to the " +"company one." #. module: account #: report:account.move.voucher:0 @@ -3111,12 +3218,12 @@ msgstr "Traži dnevnik" #. module: account #: model:ir.actions.act_window,name:account.action_invoice_tree_pending_invoice msgid "Pending Invoice" -msgstr "" +msgstr "Pending Invoice" #. module: account #: selection:account.subscription,period_type:0 msgid "year" -msgstr "godina" +msgstr "year" #. module: account #: report:account.move.voucher:0 @@ -3129,6 +3236,8 @@ msgid "" "All selected journal entries will be validated and posted. It means you " "won't be able to modify their accounting fields anymore." msgstr "" +"Sve odabrane stavke dnevnika će biti potvrđena i objavljena. To znači da " +"nećete moći modificirati svoje računovodstvene polja više." #. module: account #: code:addons/account/invoice.py:370 @@ -3149,7 +3258,7 @@ msgstr "Prijenosi" #. module: account #: view:account.payment.term.line:0 msgid " value amount: n.a" -msgstr "" +msgstr " vrijednost iznos: n.a" #. module: account #: view:account.chart:0 @@ -3181,7 +3290,7 @@ msgstr "Naziv pozicije PDV obrasca" #: report:account.invoice:0 #: model:process.node,name:account.process_node_draftinvoices0 msgid "Draft Invoice" -msgstr "Neodobreni računi" +msgstr "Nacrt računa" #. module: account #: code:addons/account/wizard/account_invoice_state.py:68 @@ -3190,6 +3299,8 @@ msgid "" "Selected Invoice(s) cannot be cancelled as they are already in 'Cancelled' " "or 'Done' state!" msgstr "" +"Odabrani račun(i) se ne mogu otkazati jer su u stanju 'Otkazan' ili " +"'Izvršen'!" #. module: account #: code:addons/account/account.py:522 @@ -3198,6 +3309,8 @@ msgid "" "You cannot change the type of account from '%s' to '%s' type as it contains " "account entries!" msgstr "" +"You cannot change the type of account from '%s' to '%s' type as it contains " +"account entries!" #. module: account #: report:account.general.ledger:0 @@ -3213,13 +3326,13 @@ msgstr "Podaci računa" #. module: account #: field:account.invoice.report,state:0 msgid "Invoice State" -msgstr "Stanje fakture" +msgstr "Stanje računa" #. module: account #: view:account.invoice.report:0 #: field:account.invoice.report,categ_id:0 msgid "Category of Product" -msgstr "Kategorija proizvoda" +msgstr "Grupa proizvoda" #. module: account #: view:account.move:0 @@ -3238,7 +3351,7 @@ msgstr "Kreiraj konto" #. module: account #: model:ir.model,name:account.model_report_account_type_sales msgid "Report of the Sales by Account Type" -msgstr "" +msgstr "Izvještaj o prodaji po vrsti konta" #. module: account #: selection:account.account.type,close_method:0 @@ -3248,7 +3361,7 @@ msgstr "Detalji" #. module: account #: field:account.installer,bank_accounts_id:0 msgid "Your Bank and Cash Accounts" -msgstr "" +msgstr "Your Bank and Cash Accounts" #. module: account #: report:account.invoice:0 @@ -3271,12 +3384,12 @@ msgstr "PDV :" #: report:pl.account:0 #: report:pl.account.horizontal:0 msgid "Chart of Accounts" -msgstr "Kontni plan" +msgstr "Chart of Accounts" #. module: account #: view:account.tax.chart:0 msgid "(If you do not select period it will take all open periods)" -msgstr "" +msgstr "(prazno - sva otvorena razdoblja)" #. module: account #: field:account.journal,centralisation:0 @@ -3286,7 +3399,7 @@ msgstr "Centralizirana stavka zatvaranja" #. module: account #: model:ir.model,name:account.model_account_partner_reconcile_process msgid "Reconcilation Process partner by partner" -msgstr "" +msgstr "Reconcilation Process partner by partner" #. module: account #: selection:account.automatic.reconcile,power:0 @@ -3343,13 +3456,14 @@ msgstr "Datum" #: view:account.unreconcile:0 #: view:account.unreconcile.reconcile:0 msgid "Unreconcile" -msgstr "Poništi zatvaranje" +msgstr "Otvori stavke" #. module: account #: code:addons/account/wizard/account_fiscalyear_close.py:79 #, python-format msgid "The journal must have default credit and debit account" -msgstr "Dnevnik mora imati zadani potražni i dugovni konto." +msgstr "" +"Dnevnik mora imati zadani dugovni i potražni konto radi protu knjiženja." #. module: account #: view:account.chart.template:0 @@ -3364,6 +3478,9 @@ msgid "" "based on partner payment term!\n" "Please define partner on it!" msgstr "" +"Maturity date of entry line generated by model line '%s' of model '%s' is " +"based on partner payment term!\n" +"Please define partner on it!" #. module: account #: code:addons/account/account_move_line.py:810 @@ -3378,6 +3495,8 @@ msgid "" "You cannot validate a Journal Entry unless all journal items are in same " "chart of accounts !" msgstr "" +"Nije dozvoljeno potvrđivanje temeljnice na kojoj stavke pripadaju različitim " +"kontnim planovima!" #. module: account #: view:account.tax:0 @@ -3432,7 +3551,7 @@ msgstr "" #: view:account.tax:0 #: view:account.tax.template:0 msgid "Applicable Code (if type=code)" -msgstr "Primjenjeni kod (ako je tip=Python kod)" +msgstr "Primjenjeni kod (ako je Python kod)" #. module: account #: view:account.invoice.report:0 @@ -3477,12 +3596,12 @@ msgstr "Nalog za plaćanje" msgid "" "Check this option if you want the user to reconcile entries in this account." msgstr "" -"Cekirajte ovde da omogućuite korisniku zatvaranje stavaka za ovaj konto." +"Odaberite ako želite omogućiti zatvaranje stavaka (IOS) za ovaj konto." #. module: account #: model:ir.actions.report.xml,name:account.account_account_balance_landscape msgid "Account balance" -msgstr "Saldo računa" +msgstr "Saldo konta" #. module: account #: report:account.invoice:0 @@ -3519,17 +3638,17 @@ msgstr "Odabrali ste jedinicu mjere koja nije kompatibilna s proizvodom." msgid "" "The Payment Term of Supplier does not have Payment Term Lines(Computation) " "defined !" -msgstr "" +msgstr "Uvjet plaćanja dobavljača nema definirane stavke plaćanja!" #. module: account #: view:account.state.open:0 msgid "Open Invoice" -msgstr "otvoreni računi" +msgstr "Otvori račun" #. module: account #: field:account.invoice.tax,factor_tax:0 msgid "Multipication factor Tax code" -msgstr "" +msgstr "Koeficijent porezne grupe" #. module: account #: view:account.fiscal.position:0 @@ -3552,7 +3671,7 @@ msgstr "Naziv" #. module: account #: model:ir.model,name:account.model_account_aged_trial_balance msgid "Account Aged Trial balance Report" -msgstr "" +msgstr "Bruto bilanca (Aged Trial balance)" #. module: account #: field:account.move.line,date:0 @@ -3589,11 +3708,13 @@ msgid "" "Print Report with the currency column if the currency is different then the " "company currency" msgstr "" +"Print Report with the currency column if the currency is different then the " +"company currency" #. module: account #: view:account.analytic.line:0 msgid "General Accounting" -msgstr "" +msgstr "Glavna knjiga" #. module: account #: report:account.overdue:0 @@ -3608,6 +3729,10 @@ msgid "" "debit/credit accounts, of type 'situation' and with a centralized " "counterpart." msgstr "" +"Najbolja praksa je definirati dnevnik(e) na kojima se knjiže početna stanja " +"svih poslovnih godina. Za ove dnevnike treba definirati dugovni i potražni " +"konto protustavki, a vrsta dnevnika mora biti 'Početno stanje' sa " +"centraliziranom(jednom) protustavkom." #. module: account #: view:account.installer:0 @@ -3621,12 +3746,12 @@ msgstr "naslov" #: view:account.period:0 #: view:account.subscription:0 msgid "Set to Draft" -msgstr "Postavi na neodobreno" +msgstr "Postavi na nacrt" #. module: account #: model:ir.actions.act_window,name:account.action_subscription_form msgid "Recurring Lines" -msgstr "Ponavljajuće linije" +msgstr "Ponavljajuće stavke" #. module: account #: field:account.partner.balance,display_partner:0 @@ -3642,6 +3767,7 @@ msgstr "Potvrdi" #: sql_constraint:account.model.line:0 msgid "Wrong credit or debit value in model (Credit Or Debit Must Be \"0\")!" msgstr "" +"Wrong credit or debit value in model (Credit Or Debit Must Be \"0\")!" #. module: account #: model:ir.actions.act_window,help:account.action_account_invoice_report_all @@ -3650,6 +3776,8 @@ msgid "" "customer as well as payment delays. The tool search can also be used to " "personalise your Invoices reports and so, match this analysis to your needs." msgstr "" +"Pregled fakturiranih iznosa i kašnjenja plaćanja. Za prilagodbu izvještaja " +"vašim potrebama koristite funkcionalnosti traženja i grupiranja." #. module: account #: view:account.invoice.confirm:0 @@ -3734,7 +3862,7 @@ msgstr "Traži predloške poreza" #. module: account #: model:ir.ui.menu,name:account.periodical_processing_journal_entries_validation msgid "Draft Entries" -msgstr "U pripremi" +msgstr "Stavke u stanju \"Nacrt\"" #. module: account #: field:account.account,shortcut:0 @@ -3768,7 +3896,7 @@ msgstr "Bilanca" #. module: account #: model:ir.model,name:account.model_account_invoice_cancel msgid "Cancel the Selected Invoices" -msgstr "" +msgstr "Otkaži odabrane račune" #. module: account #: help:product.category,property_account_income_categ:0 @@ -3789,6 +3917,8 @@ msgid "" "Analytic costs (timesheets, some purchased products, ...) come from analytic " "accounts. These generate draft supplier invoices." msgstr "" +"Analitički troškovi (ev. rada, nabava, ...) dolaze sa analitičkih konta. Oni " +"mogu kreirati nacrte ulaznih računa." #. module: account #: view:account.bank.statement:0 @@ -3810,7 +3940,7 @@ msgstr "Tip konta" #: code:addons/account/invoice.py:714 #, python-format msgid "Global taxes defined, but are not in invoice lines !" -msgstr "" +msgstr "Na stavkama računa nema definiranih poreza!" #. module: account #: field:account.entries.report,month:0 @@ -3837,7 +3967,7 @@ msgstr "Bilješka" #. module: account #: view:account.analytic.account:0 msgid "Overdue Account" -msgstr "" +msgstr "Konto duga" #. module: account #: selection:account.invoice,state:0 @@ -3864,6 +3994,9 @@ msgid "" "the system on document validation (invoices, bank statements...) and will be " "created in 'Posted' state." msgstr "" +"Ručno upisane temeljnice su obično u stanju \"Neažurno\". Ovdje možete " +"zadati opciju preskakanja ovog stanja za pojedini dnevnik. Tada će upisane " +"stavke odmah biti u stanju \"Ažurno\"." #. module: account #: code:addons/account/account_analytic_line.py:91 @@ -3924,7 +4057,7 @@ msgstr "Raspon Mjeseci" #. module: account #: help:account.analytic.balance,empty_acc:0 msgid "Check if you want to display Accounts with 0 balance too." -msgstr "" +msgstr "Check if you want to display Accounts with 0 balance too." #. module: account #: view:account.tax:0 @@ -3934,7 +4067,7 @@ msgstr "Kod izračuna" #. module: account #: view:account.account.template:0 msgid "Default taxes" -msgstr "Zadani porezi" +msgstr "Uobičajeni porezi" #. module: account #: code:addons/account/invoice.py:88 @@ -3953,6 +4086,8 @@ msgid "" "When new move line is created the state will be 'Draft'.\n" "* When all the payments are done it will be in 'Valid' state." msgstr "" +"Nakon upisa stanje stavke je 'Nacrt'.\n" +"* Nakon plaćanja stanje postaje 'Ispravan'." #. module: account #: field:account.journal,view_id:0 @@ -3962,7 +4097,7 @@ msgstr "Način prikaza" #. module: account #: model:process.node,note:account.process_node_importinvoice0 msgid "Statement from invoice or payment" -msgstr "" +msgstr "Izvod iz računa ili plaćanja" #. module: account #: view:account.payment.term.line:0 @@ -3984,7 +4119,7 @@ msgstr "Naziv konta" #. module: account #: help:account.fiscalyear.close,report_name:0 msgid "Give name of the new entries" -msgstr "" +msgstr "Give name of the new entries" #. module: account #: model:ir.model,name:account.model_account_invoice_report @@ -3994,13 +4129,13 @@ msgstr "Statistike računa" #. module: account #: model:process.transition,note:account.process_transition_paymentorderreconcilation0 msgid "Bank statements are entered in the system." -msgstr "" +msgstr "Bank statements are entered in the system." #. module: account #: code:addons/account/wizard/account_reconcile.py:133 #, python-format msgid "Reconcile Writeoff" -msgstr "" +msgstr "Otpis" #. module: account #: field:account.model.line,date_maturity:0 @@ -4038,7 +4173,7 @@ msgstr "Ispiši račun" #. module: account #: view:account.tax.template:0 msgid "Credit Notes" -msgstr "Knjižna odobrenja" +msgstr "Odobrenja" #. module: account #: code:addons/account/account.py:2067 @@ -4050,7 +4185,7 @@ msgstr "Nema odgovarajućih perioda." #. module: account #: report:account.tax.code.entries:0 msgid "Voucher No" -msgstr "Potvrda br." +msgstr "Vaučer br." #. module: account #: view:wizard.multi.charts.accounts:0 @@ -4060,7 +4195,7 @@ msgstr "res_config_contents" #. module: account #: view:account.unreconcile:0 msgid "Unreconciliate transactions" -msgstr "" +msgstr "Unreconciliate transactions" #. module: account #: view:account.use.model:0 @@ -4070,7 +4205,7 @@ msgstr "Stvori stavke iz modela" #. module: account #: field:account.account.template,reconcile:0 msgid "Allow Reconciliation" -msgstr "Dozvoli zatvaranje" +msgstr "Allow Reconciliation" #. module: account #: view:account.analytic.account:0 @@ -4095,7 +4230,7 @@ msgstr "Porez uključen u cijenu" #. module: account #: model:ir.model,name:account.model_account_analytic_cost_ledger_journal_report msgid "Account Analytic Cost Ledger For Journal Report" -msgstr "" +msgstr "Account Analytic Cost Ledger For Journal Report" #. module: account #: model:ir.actions.act_window,name:account.action_model_form @@ -4137,12 +4272,12 @@ msgstr "Kontrola po vrsti kona" #. module: account #: help:account.journal,default_credit_account_id:0 msgid "It acts as a default account for credit amount" -msgstr "Zadani konto za potražni iznos" +msgstr "Uobičajeni potražni konto" #. module: account #: help:account.partner.ledger,reconcil:0 msgid "Consider reconciled entries" -msgstr "" +msgstr "Consider reconciled entries" #. module: account #: model:ir.actions.act_window,name:account.action_validate_account_move_line @@ -4150,19 +4285,19 @@ msgstr "" #: view:validate.account.move:0 #: view:validate.account.move.lines:0 msgid "Post Journal Entries" -msgstr "Proknjiži stavke" +msgstr "Knjiži temeljnicu" #. module: account #: selection:account.invoice,state:0 #: selection:account.invoice.report,state:0 #: selection:report.invoice.created,state:0 msgid "Cancelled" -msgstr "Poništeno" +msgstr "Otkazani" #. module: account #: help:account.bank.statement,balance_end_cash:0 msgid "Closing balance based on cashBox" -msgstr "" +msgstr "Završno stanje blagajne" #. module: account #: constraint:account.account:0 @@ -4213,7 +4348,7 @@ msgstr "Potvrđeno" #. module: account #: report:account.invoice:0 msgid "Cancelled Invoice" -msgstr "Poništeni račun" +msgstr "Otkazani račun" #. module: account #: code:addons/account/invoice.py:73 @@ -4229,6 +4364,9 @@ msgid "" "the account \"%s - %s\". Clear the secondary currency field of the account " "definition if you want to accept all currencies." msgstr "" +"Couldn't create move with currency different from the secondary currency of " +"the account \"%s - %s\". Clear the secondary currency field of the account " +"definition if you want to accept all currencies." #. module: account #: field:account.invoice.refund,date:0 @@ -4239,14 +4377,14 @@ msgstr "Datum postupka" #: field:account.tax,ref_tax_code_id:0 #: field:account.tax.template,ref_tax_code_id:0 msgid "Refund Tax Code" -msgstr "Porezna grupa povrata" +msgstr "Porezna grupa odobrenja" #. module: account #: view:validate.account.move:0 msgid "" "All draft account entries in this journal and period will be validated. It " "means you won't be able to modify their accounting fields anymore." -msgstr "" +msgstr "Potvrđivanje svih nacrta knjiženja za odabrani dnevnik i period." #. module: account #: report:account.account.balance.landscape:0 @@ -4293,8 +4431,8 @@ msgid "" "Please verify the price of the invoice !\n" "The real total does not match the computed total." msgstr "" -"Molimo provjerite cijene na računu!\n" -"Stvarna ukupna vrijednost se ne slaže sa izračunatom vrijednošću." +"Molimo provjerite iznose na računu!\n" +"Ukupna vrijednost se ne slaže sa izračunatom vrijednošću." #. module: account #: view:account.invoice:0 @@ -4322,7 +4460,7 @@ msgstr "Ne" #. module: account #: help:account.invoice.tax,tax_code_id:0 msgid "The tax basis of the tax declaration." -msgstr "" +msgstr "Osnovica za poreznu prijavu." #. module: account #: view:account.addtmpl.wizard:0 @@ -4352,7 +4490,7 @@ msgstr "Bankovni izvod korišten za zatvaranje banke" #. module: account #: model:process.transition,note:account.process_transition_suppliercustomerinvoice0 msgid "Draft invoices are validated. " -msgstr "" +msgstr "Nacrti računa su potvrđeni. " #. module: account #: view:account.bank.statement:0 @@ -4388,7 +4526,7 @@ msgstr "Porez se primjenjuje" #: model:ir.ui.menu,name:account.menu_eaction_account_moves_sale #, python-format msgid "Journal Items" -msgstr "Stavke dnevnika" +msgstr "Stavke glavne knjige" #. module: account #: selection:account.account.type,report_type:0 @@ -4398,7 +4536,7 @@ msgstr "Bilanca (konta imovine)" #. module: account #: report:account.tax.code.entries:0 msgid "Third Party (Country)" -msgstr "" +msgstr "Third Party (Country)" #. module: account #: code:addons/account/account.py:938 @@ -4452,11 +4590,13 @@ msgid "" "To print an analytics (or costs) journal for a given period. The report give " "code, move name, account number, general amount and analytic amount." msgstr "" +"Ispis analitičkog dnevnika za razdoblje. Ispisuje se šifra, naziv stavke, " +"konto, iznos glavne knjige i analitički iznos." #. module: account #: help:account.journal,refund_journal:0 msgid "Fill this if the journal is to be used for refunds of invoices." -msgstr "" +msgstr "Fill this if the journal is to be used for refunds of invoices." #. module: account #: view:account.fiscalyear.close:0 @@ -4503,6 +4643,8 @@ msgid "" "You should set the journal to allow cancelling entries if you want to do " "that." msgstr "" +"Nije dozvoljeno mijenjati knjižene stavke ovog dnevnikal !\n" +"Ako to ipak želite dozvoliti promijenite postavke ovog dnevnika." #. module: account #: model:ir.ui.menu,name:account.account_template_folder @@ -4518,7 +4660,7 @@ msgstr "Podređeni porezi" #: code:addons/account/account.py:940 #, python-format msgid "Start period should be smaller then End period" -msgstr "" +msgstr "Start period should be smaller then End period" #. module: account #: selection:account.automatic.reconcile,power:0 @@ -4610,7 +4752,7 @@ msgstr "Naziv stupca" #: view:account.general.journal:0 msgid "" "This report gives you an overview of the situation of your general journals" -msgstr "" +msgstr "Ovo izvješće daje pregled stanja vaše opće temeljnice" #. module: account #: field:account.entries.report,year:0 @@ -4688,7 +4830,7 @@ msgstr "Bilanca stanja" #. module: account #: model:ir.ui.menu,name:account.final_accounting_reports msgid "Accounting Reports" -msgstr "Izvješća" +msgstr "Računovodstvena izvješća" #. module: account #: field:account.move,line_id:0 @@ -4713,7 +4855,7 @@ msgstr "JM" #: code:addons/account/wizard/account_invoice_refund.py:138 #, python-format msgid "No Period found on Invoice!" -msgstr "" +msgstr "Nije pronađeno razdoblje na računu!" #. module: account #: view:account.tax.template:0 @@ -4750,7 +4892,7 @@ msgstr "Iznos" #: code:addons/account/wizard/account_fiscalyear_close.py:41 #, python-format msgid "End of Fiscal Year Entry" -msgstr "Knjiženja zatvaranja fiskalne godine" +msgstr "Temeljnice zatvaranja fiskalne godine" #. module: account #: model:process.transition,name:account.process_transition_customerinvoice0 @@ -4768,6 +4910,8 @@ msgid "" "The Journal Entry of the invoice have been totally reconciled with one or " "several Journal Entries of payment." msgstr "" +"Stavka računa (potraživanje ili dugovanje) je kompletno zatvorena s jednom " +"ili više stavaka plaćanja." #. module: account #: field:account.tax,child_depend:0 @@ -4791,7 +4935,7 @@ msgstr "Nije nađen period" #. module: account #: field:account.journal,update_posted:0 msgid "Allow Cancelling Entries" -msgstr "Dozvoli storniranje stavki" +msgstr "Dozvoli odažuriranje knjiženja" #. module: account #: field:account.tax.code,sign:0 @@ -4872,7 +5016,7 @@ msgstr "Kontrole unosa" #: view:account.analytic.chart:0 #: view:project.account.analytic.line:0 msgid "(Keep empty to open the current situation)" -msgstr "(Zadržite prazno da biste otvorili trenutno stanje)" +msgstr "(prazno za trenutno stanje)" #. module: account #: field:account.analytic.Journal.report,date1:0 @@ -4896,7 +5040,7 @@ msgstr "" #. module: account #: model:ir.model,name:account.model_account_common_account_report msgid "Account Common Account Report" -msgstr "" +msgstr "Account Common Account Report" #. module: account #: field:account.bank.statement.line,name:0 @@ -4913,14 +5057,14 @@ msgstr "Analitičko računovodstvo" #: selection:account.invoice.report,type:0 #: selection:report.invoice.created,type:0 msgid "Customer Refund" -msgstr "Povrat novca kupcu" +msgstr "Odobrenje kupcu" #. module: account #: view:account.account:0 #: field:account.account,tax_ids:0 #: field:account.account.template,tax_ids:0 msgid "Default Taxes" -msgstr "Zadani porezi" +msgstr "Uobičajeni porezi" #. module: account #: field:account.tax,ref_tax_sign:0 @@ -4928,7 +5072,7 @@ msgstr "Zadani porezi" #: field:account.tax.template,ref_tax_sign:0 #: field:account.tax.template,tax_sign:0 msgid "Tax Code Sign" -msgstr "Predznak u PDV obrascu" +msgstr "Koef. poreza" #. module: account #: model:ir.model,name:account.model_report_invoice_created @@ -4960,6 +5104,9 @@ msgid "" "something to reconcile or not. This figure already count the current partner " "as reconciled." msgstr "" +"This is the remaining partners for who you should check if there is " +"something to reconcile or not. This figure already count the current partner " +"as reconciled." #. module: account #: view:account.subscription.line:0 @@ -4991,7 +5138,7 @@ msgstr "Promjeni valutu" #: model:process.node,note:account.process_node_accountingentries0 #: model:process.node,note:account.process_node_supplieraccountingentries0 msgid "Accounting entries." -msgstr "" +msgstr "Accounting entries." #. module: account #: view:account.invoice:0 @@ -5017,6 +5164,8 @@ msgid "" "According value related accounts will be display on respective reports " "(Balance Sheet Profit & Loss Account)" msgstr "" +"Prema iznosu na koji se račun odnosi biti će prikazan na odgovarajućim " +"izvješćima (Bilanca, Račun dobiti i gubitka)" #. module: account #: field:account.report.general.ledger,sortby:0 @@ -5030,6 +5179,8 @@ msgid "" "There is no default default credit account defined \n" "on journal \"%s\"" msgstr "" +"Nije definiran uobičajeni potražni konto za\n" +"dnevnik \"%s\"" #. module: account #: field:account.entries.report,amount_currency:0 @@ -5045,7 +5196,7 @@ msgid "" "Specified Journal does not have any account move entries in draft state for " "this period" msgstr "" -"Navedeni dnevnik nema niti jednu stavku u stanju pripreme za ovo razdoblje" +"Navedeni dnevnik nema niti jednu stavku u stanju \"Nacrt\" za ovo razdoblje" #. module: account #: model:ir.actions.act_window,name:account.action_view_move_line @@ -5083,6 +5234,8 @@ msgid "" "Number of partial amounts that can be combined to find a balance point can " "be chosen as the power of the automatic reconciliation" msgstr "" +"Višekratnik automatskog zatvaranja je broj pojedinačnih iznosa koji će se " +"kombinirati kod traženja odgovarajućeg iznosa" #. module: account #: help:account.payment.term.line,sequence:0 @@ -5114,6 +5267,9 @@ msgid "" "impossible any new entry record. Close a fiscal year when you need to " "finalize your end of year results definitive " msgstr "" +"Nakon knjiženja svih transakcije jedne poslovne godine, ovdje možete " +"zatvoriti i zaključati poslovnu godinu. Zatvaranje će zatvoriti sve " +"eventualno otvorene periode te godine i onemogućiti upis podataka. " #. module: account #: field:account.central.journal,amount_currency:0 @@ -5154,7 +5310,7 @@ msgstr "Dospjela potraživanja" #. module: account #: model:ir.actions.act_window,name:account.action_account_automatic_reconcile msgid "Account Automatic Reconcile" -msgstr "Automatsko zatvaranje" +msgstr "Automatsko zatvaranje IOS-a" #. module: account #: view:account.move:0 @@ -5190,6 +5346,8 @@ msgid "" "This module will support the Anglo-Saxons accounting methodology by changing " "the accounting logic with stock transactions." msgstr "" +"This module will support the Anglo-Saxons accounting methodology by changing " +"the accounting logic with stock transactions." #. module: account #: field:report.invoice.created,create_date:0 @@ -5259,6 +5417,8 @@ msgid "" "Streamlines invoice payment and creates hooks to plug automated payment " "systems in." msgstr "" +"Streamlines invoice payment and creates hooks to plug automated payment " +"systems in." #. module: account #: field:account.payment.term.line,value:0 @@ -5308,6 +5468,9 @@ msgid "" "document shows your debit and credit taking in consideration some criteria " "you can choose by using the search tool." msgstr "" +"From this view, have an analysis of your different financial accounts. The " +"document shows your debit and credit taking in consideration some criteria " +"you can choose by using the search tool." #. module: account #: model:ir.actions.act_window,help:account.action_tax_code_list @@ -5316,6 +5479,11 @@ msgid "" "OpenERP allows you to define the tax structure and manage it from this menu. " "You can define both numeric and alphanumeric tax codes." msgstr "" +"Definicija poreznih grupa ovisi o poreznim prijavama i poreznim izvještajima " +"pojedine zemlje. Za svako polje porezne prijave potrebno je definirati jednu " +"poreznu grupu, te dodatne grupe za stupce u knjigama URA/IRA kojih nema u " +"poreznoj prijavi. Osim PDV-a porezne grupe je uputno kreirati i za ostale " +"poreze npr. Porez na potrošnju ili razne trošarine koje ste obavezni plaćati." #. module: account #: help:account.partner.reconcile.process,progress:0 @@ -5323,6 +5491,8 @@ msgid "" "Shows you the progress made today on the reconciliation process. Given by \n" "Partners Reconciled Today \\ (Remaining Partners + Partners Reconciled Today)" msgstr "" +"Shows you the progress made today on the reconciliation process. Given by \n" +"Partners Reconciled Today \\ (Remaining Partners + Partners Reconciled Today)" #. module: account #: help:account.payment.term.line,value:0 @@ -5331,6 +5501,8 @@ msgid "" "that you should have your last line with the type 'Balance' to ensure that " "the whole amount will be threated." msgstr "" +"Odaberite način izračuna ove stavke plaćanja. Dobra je praksa navesti " +"posljednji redak tipa 'Saldo' kako bi se izračunao kompletan iznos." #. module: account #: field:account.invoice,period_id:0 @@ -5350,7 +5522,7 @@ msgstr "# linija" #: code:addons/account/wizard/account_change_currency.py:60 #, python-format msgid "New currency is not confirured properly !" -msgstr "" +msgstr "New currency is not confirured properly !" #. module: account #: field:account.aged.trial.balance,filter:0 @@ -5382,7 +5554,7 @@ msgstr "Ne mozete koristiti neaktivan konto!" #: code:addons/account/account_move_line.py:803 #, python-format msgid "Entries are not of the same account or already reconciled ! " -msgstr "Stavke nisu istog konta ili su već usklađene ! " +msgstr "Stavke nisu istog konta ili su već zatvorene! " #. module: account #: field:account.tax,account_collected_id:0 @@ -5470,7 +5642,7 @@ msgstr " 365 dana " #: model:ir.actions.act_window,name:account.action_invoice_tree3 #: model:ir.ui.menu,name:account.menu_action_invoice_tree3 msgid "Customer Refunds" -msgstr "Povrati od kupca" +msgstr "Odobrenja kupcima" #. module: account #: view:account.payment.term.line:0 @@ -5496,7 +5668,7 @@ msgstr "nije implementirano" #. module: account #: help:account.journal,company_id:0 msgid "Company related to this journal" -msgstr "Tvrtka za koju se vodi ovaj dnevnik" +msgstr "Organizacija za koju se vodi ovaj dnevnik" #. module: account #: code:addons/account/wizard/account_invoice_state.py:44 @@ -5505,6 +5677,8 @@ msgid "" "Selected Invoice(s) cannot be confirmed as they are not in 'Draft' or 'Pro-" "Forma' state!" msgstr "" +"Ne mogu se potvrditi odabrani računi jer nisu svi u stanju 'Nacrt' ili 'Pro-" +"Forma'!" #. module: account #: report:account.invoice:0 @@ -5542,6 +5716,11 @@ msgid "" "line of the expense account. OpenERP will propose to you automatically the " "Tax related to this account and the counterpart \"Account Payable\"." msgstr "" +"Ovu karticu koriste knjigovođe za ručni upis knjiženja u OpenERP. Ako želite " +"upisati ulazni račun dobavljača, najprije upišite stavku troška, a program " +"će automatski ponuditi slijedeću stavku(e) poreza prema definiranim porezima " +"na kontu troška, a zatim i stavku ukupnog potraživanja dobavljača na kontu " +"potraživanja partnera." #. module: account #: field:account.entries.report,date_created:0 @@ -5559,11 +5738,12 @@ msgid "" "The code will be used to generate the numbers of the journal entries of this " "journal." msgstr "" +"Ova šifra će se koristiti kao prefiks opisa/broja u stavkama knjiženja." #. module: account #: view:account.invoice:0 msgid "(keep empty to use the current period)" -msgstr "(ostaviti prazno ako želite koristiti tekuće razdoblje)" +msgstr "(ostaviti prazno za trenutno razdoblje)" #. module: account #: model:process.transition,note:account.process_transition_supplierreconcilepaid0 @@ -5571,6 +5751,7 @@ msgid "" "As soon as the reconciliation is done, the invoice's state turns to “done” " "(i.e. paid) in the system." msgstr "" +"Čim je obavljeno zatvaranje, stanje računa prelazi u \"izvršen\" (plaćen)." #. module: account #: code:addons/account/invoice.py:997 @@ -5587,7 +5768,7 @@ msgstr "Korijensko konto" #. module: account #: field:res.partner,last_reconciliation_date:0 msgid "Latest Reconciliation Date" -msgstr "" +msgstr "Zadnje zatvaranje IOS-a" #. module: account #: model:ir.model,name:account.model_account_analytic_line @@ -5613,7 +5794,7 @@ msgstr "Postavke izvještaja" #. module: account #: constraint:account.move.line:0 msgid "Company must be same for its related account and period." -msgstr "" +msgstr "Company must be same for its related account and period." #. module: account #: field:account.tax,type:0 @@ -5635,7 +5816,7 @@ msgstr "Prijava poreza" #. module: account #: model:ir.model,name:account.model_res_company msgid "Companies" -msgstr "Tvrtke" +msgstr "Organizacije" #. module: account #: code:addons/account/account.py:532 @@ -5644,6 +5825,8 @@ msgid "" "You cannot modify Company of account as its related record exist in Entry " "Lines" msgstr "" +"You cannot modify Company of account as its related record exist in Entry " +"Lines" #. module: account #: help:account.fiscalyear.close.state,fy_id:0 @@ -5653,7 +5836,7 @@ msgstr "Odaberite fiskalnu godinu za zatvaranje" #. module: account #: help:account.chart.template,tax_template_ids:0 msgid "List of all the taxes that have to be installed by the wizard" -msgstr "Popis svih poreza koji trebaju biti instalirani od strane čarobnjaka" +msgstr "Popis svih poreza koje asistent treba instalirati" #. module: account #: model:ir.actions.report.xml,name:account.account_intracom @@ -5768,7 +5951,7 @@ msgstr " broj dana: 30" #. module: account #: help:account.analytic.line,currency_id:0 msgid "The related account currency if not equal to the company one." -msgstr "" +msgstr "The related account currency if not equal to the company one." #. module: account #: view:account.analytic.account:0 @@ -5849,7 +6032,7 @@ msgstr "Primjenjivi tip" #: field:account.invoice,reference:0 #: field:account.invoice.line,invoice_id:0 msgid "Invoice Reference" -msgstr "Vezna oznaka računa" +msgstr "Poziv na br." #. module: account #: help:account.tax.template,sequence:0 @@ -5874,7 +6057,7 @@ msgstr "Likvidnost" #: model:ir.actions.act_window,name:account.action_account_analytic_journal_open_form #: model:ir.ui.menu,name:account.account_analytic_journal_entries msgid "Analytic Journal Items" -msgstr "" +msgstr "Stavke analitičkog dnevnika" #. module: account #: view:account.fiscalyear.close:0 @@ -5883,6 +6066,8 @@ msgid "" "year. Note that you can run this wizard many times for the same fiscal year: " "it will simply replace the old opening entries with the new ones." msgstr "" +"Ovaj asistent će kreirati temeljnicu početnog stanja u novoj godini. " +"Najprije će obrisati postojeće knjiženje početnog stanja i kreirati novo." #. module: account #: model:ir.ui.menu,name:account.menu_finance_bank_and_cash @@ -5897,16 +6082,20 @@ msgid "" "the tool search to analyse information about analytic entries generated in " "the system." msgstr "" +"From this view, have an analysis of your different analytic entries " +"following the analytic account you defined matching your business need. Use " +"the tool search to analyse information about analytic entries generated in " +"the system." #. module: account #: sql_constraint:account.journal:0 msgid "The name of the journal must be unique per company !" -msgstr "" +msgstr "Naziv dnevnika mora biti jedinstven za jednu organizaciju!" #. module: account #: field:account.account.template,nocreate:0 msgid "Optional create" -msgstr "" +msgstr "Opcionalno kreiranje" #. module: account #: code:addons/account/invoice.py:406 @@ -5914,7 +6103,7 @@ msgstr "" #: code:addons/account/invoice.py:1348 #, python-format msgid "Can not find account chart for this company, Please Create account." -msgstr "" +msgstr "Can not find account chart for this company, Please Create account." #. module: account #: code:addons/account/wizard/account_report_aged_partner_balance.py:57 @@ -5933,7 +6122,7 @@ msgstr "Povrat URA" #. module: account #: model:ir.ui.menu,name:account.menu_dashboard_acc msgid "Dashboard" -msgstr "Kontrolna ploča" +msgstr "Kokpit" #. module: account #: field:account.bank.statement,move_line_ids:0 @@ -6031,7 +6220,7 @@ msgstr "Naziv modela" #. module: account #: field:account.chart.template,property_account_expense_categ:0 msgid "Expense Category Account" -msgstr "Konto kategorije troška" +msgstr "Konto troška" #. module: account #: view:account.bank.statement:0 @@ -6071,7 +6260,7 @@ msgstr "Stavke: " #. module: account #: view:account.use.model:0 msgid "Create manual recurring entries in a chosen journal." -msgstr "" +msgstr "Ručno kreiraj ponavljajuće temeljnice za odabrani dnevnik." #. module: account #: code:addons/account/account.py:1393 @@ -6090,6 +6279,13 @@ msgid "" "account. From this view, you can create and manage the account types you " "need for your company." msgstr "" +"An account type is used to determine how an account is used in each journal. " +"The deferral method of an account type determines the process for the annual " +"closing. Reports such as the Balance Sheet and the Profit and Loss report " +"use the category (profit/loss or balance sheet). For example, the account " +"type could be linked to an asset account, expense account or payable " +"account. From this view, you can create and manage the account types you " +"need for your company." #. module: account #: model:ir.actions.act_window,help:account.action_account_bank_reconcile_tree @@ -6098,11 +6294,14 @@ msgid "" "corresponds with the entries (or records) of that account in your accounting " "system." msgstr "" +"Bank Reconciliation consists of verifying that your bank statement " +"corresponds with the entries (or records) of that account in your accounting " +"system." #. module: account #: model:process.node,note:account.process_node_draftstatement0 msgid "State is draft" -msgstr "Stanje je 'U pripremi'" +msgstr "Stanje je 'Nacrt'" #. module: account #: view:account.move.line:0 @@ -6134,6 +6333,8 @@ msgid "" "This account will be used instead of the default one as the receivable " "account for the current partner" msgstr "" +"Konto potraživanja od kupaca za ovog partnera, ako je različit od " +"uobičajenog (12...)" #. module: account #: field:account.tax,python_applicable:0 @@ -6152,6 +6353,7 @@ msgstr "Python kod" msgid "" "Please define the Reserve and Profit/Loss account for current user company !" msgstr "" +"Please define the Reserve and Profit/Loss account for current user company !" #. module: account #: help:account.journal,update_posted:0 @@ -6159,6 +6361,8 @@ msgid "" "Check this box if you want to allow the cancellation the entries related to " "this journal or of the invoice related to this journal" msgstr "" +"Označite ako želite dopustiti naknadno otkazivanje proknjiženih (potvrđenih) " +"temeljnica ili računa ovog dnevnika." #. module: account #: view:account.fiscalyear.close:0 @@ -6236,6 +6440,10 @@ msgid "" "reconcile in a series of accounts. It finds entries for each partner where " "the amounts correspond." msgstr "" +"Račun je plaćen kada su sve njegove stavke dugovanja kupca (ili potraživanja " +"dobavljača) zatvorene kontra stavkama, najčešće plaćanjima banke, blagajne " +"ili sl. Funkcija automatskog zatvaranja za svakog partnera pronalazi stavke " +"odgovarajućeg iznosa." #. module: account #: view:account.move:0 @@ -6250,7 +6458,7 @@ msgstr "Za provjeru" #: model:ir.ui.menu,name:account.menu_action_move_journal_line_form #: model:ir.ui.menu,name:account.menu_finance_entries msgid "Journal Entries" -msgstr "Stavke dnevnika" +msgstr "Stavke" #. module: account #: help:account.partner.ledger,page_split:0 @@ -6264,6 +6472,8 @@ msgid "" "This report is an analysis done by a partner. It is a PDF report containing " "one line per partner representing the cumulative credit balance" msgstr "" +"This report is an analysis done by a partner. It is a PDF report containing " +"one line per partner representing the cumulative credit balance" #. module: account #: code:addons/account/wizard/account_validate_account_move.py:61 @@ -6271,6 +6481,7 @@ msgstr "" msgid "" "Selected Entry Lines does not have any account move enties in draft state" msgstr "" +"Selected Entry Lines does not have any account move enties in draft state" #. module: account #: selection:account.aged.trial.balance,target_move:0 @@ -6302,8 +6513,8 @@ msgstr "Sve stavke" msgid "" "Error: The default UOM and the purchase UOM must be in the same category." msgstr "" -"Greška: Zadana jedinica mjere i kupovna jedinica mjere moraju biti u istoj " -"kategoriji." +"Greška: Zadana jedinica mjere i jedinica mjere nabave moraju biti iz iste " +"kategorije jedinica mjera." #. module: account #: view:account.journal.select:0 @@ -6314,7 +6525,7 @@ msgstr "Odabir dnevnika" #: code:addons/account/wizard/account_change_currency.py:65 #, python-format msgid "Currnt currency is not confirured properly !" -msgstr "" +msgstr "Currnt currency is not confirured properly !" #. module: account #: model:ir.model,name:account.model_account_move_reconcile @@ -6339,7 +6550,7 @@ msgstr "Glavna knjiga" #. module: account #: model:process.transition,note:account.process_transition_paymentorderbank0 msgid "The payment order is sent to the bank." -msgstr "" +msgstr "Nalog za plaćanje je poslan u banku." #. module: account #: view:account.balance.report:0 @@ -6349,6 +6560,9 @@ msgid "" "allowing you to quickly check the balance of each of your accounts in a " "single report" msgstr "" +"This report allows you to print or generate a pdf of your trial balance " +"allowing you to quickly check the balance of each of your accounts in a " +"single report" #. module: account #: help:account.move,to_check:0 @@ -6356,6 +6570,8 @@ msgid "" "Check this box if you are unsure of that journal entry and if you want to " "note it as 'to be reviewed' by an accounting expert." msgstr "" +"Označite \"za provjeru\" kada niste sigurni da li je knjiženje ispravno i " +"kada je potrebno ekspertno mišljenje." #. module: account #: help:account.installer.modules,account_voucher:0 @@ -6363,6 +6579,8 @@ msgid "" "Account Voucher module includes all the basic requirements of Voucher " "Entries for Bank, Cash, Sales, Purchase, Expenses, Contra, etc... " msgstr "" +"Account Voucher module includes all the basic requirements of Voucher " +"Entries for Bank, Cash, Sales, Purchase, Expenses, Contra, etc... " #. module: account #: view:account.chart.template:0 @@ -6397,6 +6615,13 @@ msgid "" "\n" "e.g. My model on %(date)s" msgstr "" +"Možete navesti godinu, mjesec i dan u nazivu modela pomoću ovih oznaka:\n" +"\n" +"%(year)s: za godinu \n" +"%(month)s: za mjesec \n" +"%(date)s: tenutni datum\n" +"\n" +"npr. Knjiženje troškova plaće za %(month)s" #. module: account #: model:ir.actions.act_window,name:account.action_aged_income @@ -6406,7 +6631,7 @@ msgstr "Konta prihoda" #. module: account #: help:report.invoice.created,origin:0 msgid "Reference of the document that generated this invoice report." -msgstr "" +msgstr "Oznaka dokumenta koji je kreirao ovaj račun." #. module: account #: field:account.tax.code,child_ids:0 @@ -6425,7 +6650,7 @@ msgstr "Nedovoljni Podaci!" #: model:ir.actions.act_window,name:account.action_invoice_tree1 #: model:ir.ui.menu,name:account.menu_action_invoice_tree1 msgid "Customer Invoices" -msgstr "Računi kupca" +msgstr "Izlazni računi" #. module: account #: field:account.move.line.reconcile,writeoff:0 @@ -6435,7 +6660,7 @@ msgstr "Iznos otpisa" #. module: account #: view:account.analytic.line:0 msgid "Sales" -msgstr "Prodaje" +msgstr "Prodaja" #. module: account #: view:account.journal.column:0 @@ -6449,12 +6674,12 @@ msgstr "Stupac dnevnika" #: selection:account.subscription,state:0 #: selection:report.invoice.created,state:0 msgid "Done" -msgstr "Gotovo" +msgstr "Izvršeno" #. module: account #: model:process.transition,note:account.process_transition_invoicemanually0 msgid "A statement with manual entries becomes a draft statement." -msgstr "" +msgstr "A statement with manual entries becomes a draft statement." #. module: account #: view:account.aged.trial.balance:0 @@ -6466,6 +6691,11 @@ msgid "" "you request an interval of 30 days OpenERP generates an analysis of " "creditors for the past month, past two months, and so on. " msgstr "" +"Struktura dospjelih dugovanja/potraživanja partnera je detaljniji izvještaj " +"o dugovanjima/potraživanjima u intervalima. Za zadani period i broj dana " +"intervala analize OpenERP izračunava tablicu dugovanja po intervalu. Ako " +"zadate interval od 30 dana analiza će pokazati dugovanja do 30, 30 do 60, 60 " +"do 90 dana i tako dalje. " #. module: account #: field:account.invoice,origin:0 @@ -6480,11 +6710,13 @@ msgid "" "reports, so that you can see positive figures instead of negative ones in " "expenses accounts." msgstr "" +"Omogućuje promjenu predznaka salda u izvještajima tako da se mogu prikazati " +"pozitivni iznosi umjesto negativnih (duguje-potražuje)*predznak." #. module: account #: model:ir.actions.act_window,name:account.act_account_acount_move_line_open_unreconciled msgid "Unreconciled Entries" -msgstr "Otvorene stavke" +msgstr "Otvorene stavke IOS-i" #. module: account #: model:ir.ui.menu,name:account.menu_menu_Bank_process @@ -6511,6 +6743,10 @@ msgid "" "an agreement with a customer or a supplier. With Define Recurring Entries, " "you can create such entries to automate the postings in the system." msgstr "" +"A recurring entry is a miscellaneous entry that occurs on a recurrent basis " +"from a specific date, i.e. corresponding to the signature of a contract or " +"an agreement with a customer or a supplier. With Define Recurring Entries, " +"you can create such entries to automate the postings in the system." #. module: account #: field:account.entries.report,product_uom_id:0 @@ -6527,6 +6763,10 @@ msgid "" "basis. You can enter the coins that are in your cash box, and then post " "entries when money comes in or goes out of the cash box." msgstr "" +"A Cash Register allows you to manage cash entries in your cash journals. " +"This feature provides an easy way to follow up cash payments on a daily " +"basis. You can enter the coins that are in your cash box, and then post " +"entries when money comes in or goes out of the cash box." #. module: account #: selection:account.automatic.reconcile,power:0 @@ -6539,6 +6779,7 @@ msgid "" "This date will be used as the invoice date for Refund Invoice and Period " "will be chosen accordingly!" msgstr "" +"Datum računa za odobrenje, a fiskalni period će se odrediti automatski!" #. module: account #: field:account.aged.trial.balance,period_length:0 @@ -6560,18 +6801,26 @@ msgstr "Retci analitike" #: model:ir.actions.act_window,help:account.action_account_analytic_account_tree2 msgid "" "The normal chart of accounts has a structure defined by the legal " -"requirement of the country. The analytic chart of accounts structure should " +"requirement of the country. The analytic chart of account structure should " "reflect your own business needs in term of costs/revenues reporting. They " "are usually structured by contracts, projects, products or departements. " "Most of the OpenERP operations (invoices, timesheets, expenses, etc) " "generate analytic entries on the related account." msgstr "" +"Struktura kontnog plana glavne knjige zadana je zakonskim odredbama države u " +"kojoj poslujemo.\n" +"Struktura analitičkih kontnih planova bi trebala odražavati specifičnosti " +"Vašeg poslovanja u pogledu izvještavanja o troškovima i prihodima. \n" +"Uobičajeno je otvaranje troškovnih/upravljačkih analitičkih planova po " +"odjelima, projektima, ugovorima, linijama proizvoda i slično.Većina " +"aktivnosti u OpenERP-u (računi, ev.rada, troškovi radnika, itd) usput " +"generiraju analitička knjiženja na relevantna analitička konta." #. module: account #: field:account.analytic.journal,line_ids:0 #: field:account.tax.code,line_ids:0 msgid "Lines" -msgstr "Retci" +msgstr "Stavke" #. module: account #: code:addons/account/invoice.py:521 @@ -6579,7 +6828,7 @@ msgstr "Retci" msgid "" "Can not find account chart for this company in invoice line account, Please " "Create account." -msgstr "" +msgstr "Nedostaje kontni plan za ovu organizaciju. Kreirajte konta." #. module: account #: view:account.tax.template:0 @@ -6589,7 +6838,7 @@ msgstr "Predlošci poreza" #. module: account #: view:account.journal.select:0 msgid "Are you sure you want to open Journal Entries?" -msgstr "" +msgstr "Potvrdite otvaranje stavki." #. module: account #: view:account.state.open:0 @@ -6618,7 +6867,7 @@ msgstr "Izvod" #. module: account #: help:account.journal,default_debit_account_id:0 msgid "It acts as a default account for debit amount" -msgstr "" +msgstr "Uobičajeni konto za dugovni iznos" #. module: account #: model:ir.module.module,description:account.module_meta_information @@ -6644,6 +6893,33 @@ msgid "" "module named account_voucher.\n" " " msgstr "" +"Accounting and Financial Management.\n" +"====================================\n" +"\n" +"Financial and accounting module that covers:\n" +"--------------------------------------------\n" +"General accountings\n" +"Cost / Analytic accounting\n" +"Third party accounting\n" +"Taxes management\n" +"Budgets\n" +"Customer and Supplier Invoices\n" +"Bank statements\n" +"Reconciliation process by partner\n" +"\n" +"Creates a dashboard for accountants that includes:\n" +"--------------------------------------------------\n" +"* List of Customer Invoice to Approve\n" +"* Company Analysis\n" +"* Graph of Aged Receivables\n" +"* Graph of Treasury\n" +"\n" +"The processes like maintaining of general ledger is done through the defined " +"financial Journals (entry move line or\n" +"grouping is maintained through journal) for a particular financial year and " +"for preparation of vouchers there is a\n" +"module named account_voucher.\n" +" " #. module: account #: model:ir.actions.act_window,help:account.action_account_journal_period_tree @@ -6651,6 +6927,8 @@ msgid "" "You can search for individual account entries through useful information. To " "search for account entries, open a journal, then select a record line." msgstr "" +"You can search for individual account entries through useful information. To " +"search for account entries, open a journal, then select a record line." #. module: account #: report:account.invoice:0 @@ -6669,7 +6947,7 @@ msgstr "Ukupan iznos dugovanja kupca" #. module: account #: model:ir.model,name:account.model_ir_sequence msgid "ir.sequence" -msgstr "ir.sequence" +msgstr "ir.slijed" #. module: account #: field:account.journal.period,icon:0 @@ -6700,6 +6978,9 @@ msgid "" "new counterpart but will share the same counterpart. This is used in fiscal " "year closing." msgstr "" +"Označite ako ne želite da se kod knjiženja ovog dnevnika za svaku stavku " +"stvara protustavka, već se kreira jedna protustavka za cijelu temeljnicu. " +"Primjer: završna knjiženja kod zatvaranja poslovne godine." #. module: account #: field:account.bank.statement,closing_date:0 @@ -6732,6 +7013,8 @@ msgid "" "Bank Account Number, Company bank account if Invoice is customer or supplier " "refund, otherwise Partner bank account number." msgstr "" +"Broj računa banke, naš žiro rn. ako se radi o izlaznom računu ili odobrenju " +"dobavljača, inače broj računa partnera." #. module: account #: help:account.tax,domain:0 @@ -6747,7 +7030,7 @@ msgstr "" #: code:addons/account/account.py:938 #, python-format msgid "You should have chosen periods that belongs to the same company" -msgstr "" +msgstr "You should have chosen periods that belongs to the same company" #. module: account #: field:account.fiscalyear.close,report_name:0 @@ -6767,7 +7050,7 @@ msgstr "Izvještavanje" #. module: account #: sql_constraint:account.journal:0 msgid "The code of the journal must be unique per company !" -msgstr "" +msgstr "Šifra dnevnika mora biti jedinstvena (za organizaciju) !" #. module: account #: field:account.bank.statement,ending_details_ids:0 @@ -6792,6 +7075,8 @@ msgid "" "the system to go through the reconciliation process, based on the latest day " "it have been reconciled." msgstr "" +"Pokazuje slijedećeg partnera u procesu zatvaranja IOS-a, a prema zadnjem " +"danu zatvaranja IOS-a." #. module: account #: field:account.move.line.reconcile.writeoff,comment:0 @@ -6817,6 +7102,10 @@ msgid "" "line of the expense account, OpenERP will propose to you automatically the " "Tax related to this account and the counter-part \"Account Payable\"." msgstr "" +"Kartica za ručni upis knjiženja u OpenERP. Ako želite upisati ulazni račun, " +"najprije upišite stavku troška, a program će automatski ponuditi slijedeću " +"stavku(e) poreza prema definiranim porezima na kontu troška, a zatim i " +"stavku ukupnog potraživanja dobavljača na kontu potraživanja partnera." #. module: account #: help:res.company,property_reserve_and_surplus_account:0 @@ -6825,13 +7114,16 @@ msgid "" "will be added, Loss : Amount will be deducted.), Which is calculated from " "Profit & Loss Report" msgstr "" +"This Account is used for transferring Profit/Loss(If It is Profit: Amount " +"will be added, Loss : Amount will be deducted.), Which is calculated from " +"Profit & Loss Report" #. module: account #: view:account.invoice.line:0 #: field:account.invoice.tax,invoice_id:0 #: model:ir.model,name:account.model_account_invoice_line msgid "Invoice Line" -msgstr "Redak računa" +msgstr "Stavka računa" #. module: account #: field:account.balance.report,display_account:0 @@ -6861,7 +7153,7 @@ msgstr " dan u mjesecu= -1" #. module: account #: constraint:res.partner:0 msgid "Error ! You can not create recursive associated members." -msgstr "Greška ! Ne možete kreirati rekurzivno pridružene članove." +msgstr "Greška ! Ne možete kreirati rekurzivne pridružene članove." #. module: account #: help:account.journal,type:0 @@ -6873,13 +7165,19 @@ msgid "" "Situation' to be used at the time of new fiscal year creation or end of year " "entries generation." msgstr "" +"Select 'Sale' for Sale journal to be used at the time of making invoice. " +"Select 'Purchase' for Purchase Journal to be used at the time of approving " +"purchase order. Select 'Cash' to be used at the time of making payment. " +"Select 'General' for miscellaneous operations. Select 'Opening/Closing " +"Situation' to be used at the time of new fiscal year creation or end of year " +"entries generation." #. module: account #: report:account.invoice:0 #: view:account.invoice:0 #: report:account.move.voucher:0 msgid "PRO-FORMA" -msgstr "Predračun" +msgstr "Pro-forma" #. module: account #: help:account.installer.modules,account_followup:0 @@ -6887,6 +7185,8 @@ msgid "" "Helps you generate reminder letters for unpaid invoices, including multiple " "levels of reminding and customized per-partner policies." msgstr "" +"Helps you generate reminder letters for unpaid invoices, including multiple " +"levels of reminding and customized per-partner policies." #. module: account #: selection:account.entries.report,move_line_state:0 @@ -6930,6 +7230,7 @@ msgid "" "This field is used for payable and receivable journal entries. You can put " "the limit date for the payment of this line." msgstr "" +"Koristi se za salda konti kupaca i dobavljača. Upišite datum valute plaćanja." #. module: account #: code:addons/account/account_move_line.py:1271 @@ -6948,12 +7249,12 @@ msgstr "Dnevnik prodaje" #: code:addons/account/wizard/account_move_journal.py:104 #, python-format msgid "Open Journal Items !" -msgstr "Otvori stavke dnevnika" +msgstr "Prikaži stavke!" #. module: account #: model:ir.model,name:account.model_account_invoice_tax msgid "Invoice Tax" -msgstr "Porezi tačuna" +msgstr "Porezi računa" #. module: account #: code:addons/account/account_move_line.py:1246 @@ -6993,7 +7294,7 @@ msgstr "Fiskalna godina za zatvaranje" #: view:account.invoice.cancel:0 #: model:ir.actions.act_window,name:account.action_account_invoice_cancel msgid "Cancel Selected Invoices" -msgstr "Poništi odabrane račune" +msgstr "Otkaži odabrane račune" #. module: account #: selection:account.entries.report,month:0 @@ -7030,7 +7331,7 @@ msgstr "Šifra" #. module: account #: view:validate.account.move:0 msgid "Post Journal Entries of a Journal" -msgstr "Proknjiži" +msgstr "Knjiženje temeljnica dnevnika" #. module: account #: view:product.product:0 @@ -7049,7 +7350,7 @@ msgstr "Gotovina" #: field:account.fiscal.position.account,account_dest_id:0 #: field:account.fiscal.position.account.template,account_dest_id:0 msgid "Account Destination" -msgstr "Ciljni račun" +msgstr "Ciljni konto" #. module: account #: model:process.node,note:account.process_node_supplierpaymentorder0 @@ -7080,7 +7381,7 @@ msgstr "Bilanca" msgid "" "Check this if the price you use on the product and invoices includes this " "tax." -msgstr "Označite ovu kućicu ako cena proizvoda i racuna sadrze ovaj porez" +msgstr "Cijena na proizvodu i računu sadrži ovaj porez." #. module: account #: view:account.state.open:0 @@ -7111,6 +7412,11 @@ msgid "" "in which they will appear. Then you can create a new journal and link your " "view to it." msgstr "" +"Here you can customize an existing journal view or create a new view. " +"Journal views determine the way you can record entries in your journal. " +"Select the fields you want to appear in a journal and determine the sequence " +"in which they will appear. Then you can create a new journal and link your " +"view to it." #. module: account #: view:account.payment.term.line:0 @@ -7166,6 +7472,9 @@ msgid "" "to the higher ones. The order is important if you have a tax with several " "tax children. In this case, the evaluation order is important." msgstr "" +"The sequence field is used to order the tax lines from the lowest sequences " +"to the higher ones. The order is important if you have a tax with several " +"tax children. In this case, the evaluation order is important." #. module: account #: model:ir.model,name:account.model_account_cashbox_line @@ -7217,7 +7526,7 @@ msgstr "Stanje stavke" #: model:ir.model,name:account.model_account_move_line_reconcile #: model:ir.model,name:account.model_account_move_line_reconcile_writeoff msgid "Account move line reconcile" -msgstr "" +msgstr "Account move line reconcile" #. module: account #: view:account.subscription.generate:0 @@ -7257,13 +7566,13 @@ msgstr "Partner" #. module: account #: help:account.change.currency,currency_id:0 msgid "Select a currency to apply on the invoice" -msgstr "" +msgstr "Odaberite valutu računa" #. module: account #: code:addons/account/wizard/account_invoice_refund.py:100 #, python-format msgid "Can not %s draft/proforma/cancel invoice." -msgstr "" +msgstr "Nije moguće %s račun u stanju nacrt/proforma/otkazan." #. module: account #: code:addons/account/invoice.py:787 @@ -7297,6 +7606,8 @@ msgid "" "Select Fiscal Year which you want to remove entries for its End of year " "entries journal" msgstr "" +"Select Fiscal Year which you want to remove entries for its End of year " +"entries journal" #. module: account #: field:account.tax.template,type_tax_use:0 @@ -7307,7 +7618,7 @@ msgstr "Primjena poreza za" #: code:addons/account/account_bank_statement.py:346 #, python-format msgid "The account entries lines are not in valid state." -msgstr "" +msgstr "The account entries lines are not in valid state." #. module: account #: field:account.account.type,close_method:0 @@ -7323,7 +7634,7 @@ msgstr "Račun '%s' je plaćen." #. module: account #: model:process.node,note:account.process_node_electronicfile0 msgid "Automatic entry" -msgstr "" +msgstr "Automatski upis" #. module: account #: constraint:account.tax.code.template:0 @@ -7341,8 +7652,8 @@ msgid "" "If this box is checked, the system will try to group the accounting lines " "when generating them from invoices." msgstr "" -"Ako je cekirano, sistem ce probati da grupise konta prilikom generisanja iz " -"racuna." +"Grupiranje istovrsnih redova računa u jednu stavku knjiženja (ako je isti " +"konto, strana, porez ...)" #. module: account #: help:account.period,state:0 @@ -7350,6 +7661,8 @@ msgid "" "When monthly periods are created. The state is 'Draft'. At the end of " "monthly period it is in 'Done' state." msgstr "" +"When monthly periods are created. The state is 'Draft'. At the end of " +"monthly period it is in 'Done' state." #. module: account #: report:account.analytic.account.inverted.balance:0 @@ -7413,11 +7726,14 @@ msgid "" "will see the taxes with codes related to your legal statement according to " "your country." msgstr "" +"The chart of taxes is used to generate your periodical tax statement. You " +"will see the taxes with codes related to your legal statement according to " +"your country." #. module: account #: view:account.installer.modules:0 msgid "Add extra Accounting functionalities to the ones already installed." -msgstr "" +msgstr "Add extra Accounting functionalities to the ones already installed." #. module: account #: report:account.analytic.account.cost_ledger:0 @@ -7447,7 +7763,7 @@ msgstr "Izaberite fiskalnu godinu" #: code:addons/account/installer.py:495 #, python-format msgid "Purchase Refund Journal" -msgstr "Dnevnik povrata nabave" +msgstr "Dnevnik odobrenja dobavljača" #. module: account #: help:account.tax.template,amount:0 @@ -7466,6 +7782,8 @@ msgid "" "Modify Invoice: Cancels the current invoice and creates a new copy of it " "ready for editing." msgstr "" +"Promjeni račun: Kreira storno/odobrenje cijelog računa, zatvara ga i kreira " +"novu kopiju spremnu za izmjene." #. module: account #: model:ir.module.module,shortdesc:account.module_meta_information @@ -7528,7 +7846,7 @@ msgstr "Dnevnik otpisa" msgid "" "This payment term will be used instead of the default one for the current " "partner" -msgstr "Ovi uvjeti plaćanja će se koristiti za ovog partnera." +msgstr "Ovaj uvjet plaćanja će se koristiti kao uobičajeni za ovog partnera." #. module: account #: view:account.tax.template:0 @@ -7538,7 +7856,7 @@ msgstr "Kod za izračun cijena sa uključenim porezima" #. module: account #: field:account.chart.template,property_account_income_categ:0 msgid "Income Category Account" -msgstr "Konto prihoda" +msgstr "Zadani konto prihoda za grupu proizvoda" #. module: account #: model:ir.actions.act_window,name:account.action_account_fiscal_position_template_form @@ -7564,6 +7882,10 @@ msgid "" "can easily generate refunds and reconcile them directly from the invoice " "form." msgstr "" +"With Customer Refunds you can manage the credit notes for your customers. A " +"refund is a document that credits an invoice completely or partially. You " +"can easily generate refunds and reconcile them directly from the invoice " +"form." #. module: account #: model:ir.actions.act_window,help:account.action_account_vat_declaration @@ -7575,6 +7897,12 @@ msgid "" "useful because it enables you to preview at any time the tax that you owe at " "the start and end of the month or quarter." msgstr "" +"This menu print a VAT declaration based on invoices or payments. You can " +"select one or several periods of the fiscal year. Information required for a " +"tax declaration is automatically generated by OpenERP from invoices (or " +"payments, in some countries). This data is updated in real time. That’s very " +"useful because it enables you to preview at any time the tax that you owe at " +"the start and end of the month or quarter." #. module: account #: report:account.invoice:0 @@ -7584,7 +7912,7 @@ msgstr "Tel.:" #. module: account #: field:account.account,company_currency_id:0 msgid "Company Currency" -msgstr "Valuta tvrtke" +msgstr "Valuta organizacije" #. module: account #: model:process.node,name:account.process_node_paymententries0 @@ -7599,6 +7927,9 @@ msgid "" "added, Loss: Amount will be duducted), which is calculated from Profilt & " "Loss Report" msgstr "" +"This Account is used for transfering Profit/Loss (Profit: Amount will be " +"added, Loss: Amount will be duducted), which is calculated from Profilt & " +"Loss Report" #. module: account #: help:account.move.line,blocked:0 @@ -7606,6 +7937,8 @@ msgid "" "You can check this box to mark this journal item as a litigation with the " "associated partner" msgstr "" +"Možete provjeriti ovaj okvir kako bi obilježili stavku temeljnice kao " +"poveznicu s pripadajućim partnerom." #. module: account #: field:account.move.line,reconcile_partial_id:0 @@ -7616,17 +7949,17 @@ msgstr "Djelomično zatvaranje" #. module: account #: model:ir.model,name:account.model_account_analytic_inverted_balance msgid "Account Analytic Inverted Balance" -msgstr "" +msgstr "Account Analytic Inverted Balance" #. module: account #: model:ir.model,name:account.model_account_common_report msgid "Account Common Report" -msgstr "" +msgstr "Računovodstveni izvještaji" #. module: account #: model:process.transition,name:account.process_transition_filestatement0 msgid "Automatic import of the bank sta" -msgstr "" +msgstr "Automatski uvoz bankovnih izvoda" #. module: account #: model:ir.actions.act_window,name:account.action_account_journal_view @@ -7637,19 +7970,19 @@ msgstr "Pogledi dnevnika" #. module: account #: model:ir.model,name:account.model_account_move_bank_reconcile msgid "Move bank reconcile" -msgstr "" +msgstr "Move bank reconcile" #. module: account #: model:ir.actions.act_window,name:account.action_account_type_form #: model:ir.ui.menu,name:account.menu_action_account_type_form msgid "Account Types" -msgstr "Tipovi konta" +msgstr "Account Types" #. module: account #: code:addons/account/invoice.py:897 #, python-format msgid "Cannot create invoice move on centralised journal" -msgstr "" +msgstr "Cannot create invoice move on centralised journal" #. module: account #: field:account.account.type,report_type:0 @@ -7684,7 +8017,7 @@ msgstr "Saldo blagajne" #. module: account #: model:ir.model,name:account.model_account_fiscalyear_close_state msgid "Fiscalyear Close state" -msgstr "" +msgstr "Fiscalyear Close state" #. module: account #: field:account.invoice.refund,journal_id:0 @@ -7714,18 +8047,22 @@ msgid "" "sales orders or deliveries. You should only confirm them before sending them " "to your customers." msgstr "" +"Izlazni računi koje izdajete Vašim kupcima. OpenERP obično kreira račune " +"automatski iz prodajnih naloga ili otpremnica. Vi ih trebate provjeriti i " +"potvrditi prije slanja kupcima. Potvrdom se generira broj računa i " +"automatsko knjiženje dokumenta." #. module: account #: view:account.entries.report:0 #: view:board.board:0 #: model:ir.actions.act_window,name:account.action_company_analysis_tree msgid "Company Analysis" -msgstr "Analiza tvrtke" +msgstr "Analiza organizacije" #. module: account #: help:account.invoice,account_id:0 msgid "The partner account used for this invoice." -msgstr "Konto partnera za ovu fakturu" +msgstr "Konto partnera za ovaj račun" #. module: account #: field:account.tax.code,parent_id:0 @@ -7750,6 +8087,7 @@ msgstr "Dnevnik URA" #: view:account.invoice.refund:0 msgid "Refund Invoice: Creates the refund invoice, ready for editing." msgstr "" +"Račun odobrenja: Kreira nacrt računa odobrenja, spremnog za promjene." #. module: account #: field:account.invoice.line,price_subtotal:0 @@ -7759,12 +8097,12 @@ msgstr "Podzbroj" #. module: account #: view:account.vat.declaration:0 msgid "Print Tax Statement" -msgstr "" +msgstr "Ispis porezne izjave" #. module: account #: view:account.model.line:0 msgid "Journal Entry Model Line" -msgstr "" +msgstr "Stavka modela temeljnice" #. module: account #: view:account.invoice:0 @@ -7786,6 +8124,7 @@ msgstr "Dobavljači" msgid "" "You cannot create more than one move per period on centralized journal" msgstr "" +"You cannot create more than one move per period on centralized journal" #. module: account #: view:account.journal:0 @@ -7795,14 +8134,14 @@ msgstr "Dozvoljene vrste konta (prazno za bez kontrole)" #. module: account #: view:res.partner:0 msgid "Supplier Accounting Properties" -msgstr "Svojstva računovodstva dobavljača" +msgstr "SK Dobavljača" #. module: account #: help:account.move.line,amount_residual:0 msgid "" "The residual amount on a receivable or payable of a journal entry expressed " "in the company currency." -msgstr "" +msgstr "Ostatak iznosa dugovanja ili potraživanja u valuti organizacije." #. module: account #: view:account.payment.term.line:0 @@ -7828,7 +8167,7 @@ msgstr "Fiskalna godina zatvorena" #. module: account #: sql_constraint:account.account:0 msgid "The code of the account must be unique per company !" -msgstr "" +msgstr "Šifra konta mora biti jedinstvena za jednu organizaciju !" #. module: account #: model:ir.actions.act_window,name:account.act_account_journal_2_account_invoice_opened @@ -7905,7 +8244,7 @@ msgstr "" msgid "" "The amount of the voucher must be the same amount as the one on the " "statement line" -msgstr "" +msgstr "Iznos vaučera mora biti jednak iznosu stavke izvoda banke/blagajne." #. module: account #: code:addons/account/account_move_line.py:1131 @@ -7923,14 +8262,14 @@ msgstr "Prazno za sve otvorene fiskalne godine" #: code:addons/account/account_move_line.py:1056 #, python-format msgid "The account move (%s) for centralisation has been confirmed!" -msgstr "" +msgstr "The account move (%s) for centralisation has been confirmed!" #. module: account #: help:account.move.line,amount_currency:0 msgid "" "The amount expressed in an optional other currency if it is a multi-currency " "entry." -msgstr "" +msgstr "Iznos u drugoj valuti ." #. module: account #: view:account.account:0 @@ -7965,11 +8304,12 @@ msgstr "Valuta" msgid "" "Gives the sequence order when displaying a list of bank statement lines." msgstr "" +"Gives the sequence order when displaying a list of bank statement lines." #. module: account #: model:process.transition,note:account.process_transition_validentries0 msgid "Accountant validates the accounting entries coming from the invoice." -msgstr "" +msgstr "Knjigovođa potvrđuje temeljnicu nastalu potvrdom računa." #. module: account #: model:ir.actions.act_window,help:account.action_account_fiscalyear_form @@ -7982,6 +8322,13 @@ msgid "" "would be referred to as FY 2011. You are not obliged to follow the actual " "calendar year." msgstr "" +"Definirajte financijsku godinu poduzeća u skladu s vašim potrebama. " +"Financijska godina je razdoblje na temelju kojeg su postavljeni računi " +"poduzeća (najčešće 12 mjeseci) .Financijska godina obično nazivaju prema " +"datum u kojem ista završava. Na primjer, ako tvrtka je financijskoj godini " +"završava 30. studenoga 2011, sve između 1 prosinca 2010 i 30. studeni 2011 " +"odnositi će se kao FG 2011. Niste dužni slijediti stvarei kalendarske " +"godine." #. module: account #: model:ir.actions.act_window,name:account.act_account_acount_move_line_reconcile_open @@ -8005,6 +8352,15 @@ msgid "" "* The 'Paid' state is set automatically when invoice is paid. \n" "* The 'Cancelled' state is used when user cancel invoice." msgstr "" +" * 'Nacrt' - upis računa je u tijeku, račun još nije potvrđen. \n" +"* 'Pro-forma' - račun još nije pravovaljan - nije mu dodijeljen broj računa. " +" \n" +"* 'Otvoren' - broj računa je dodijeljen, račun je s tim brojem knjižen i " +"ostaje otvoren dok se ne plati. \n" +"* 'Plaćen' - stanje se automatski postavlja zatvaranjem svih IOS-a ovog " +"računa. \n" +"* 'Otkazan' - račun je iz nekog razloga otkazan i ostaje u sistemu radi " +"evidencije." #. module: account #: field:account.invoice.refund,period:0 @@ -8014,7 +8370,7 @@ msgstr "Forsiraj period" #. module: account #: model:ir.model,name:account.model_account_partner_balance msgid "Print Account Partner Balance" -msgstr "" +msgstr "Print Account Partner Balance" #. module: account #: field:res.partner,contract_ids:0 @@ -8036,7 +8392,7 @@ msgstr "Dnevnik početnog stanja" #. module: account #: model:process.transition,note:account.process_transition_customerinvoice0 msgid "Draft invoices are checked, validated and printed." -msgstr "" +msgstr "Nacrti računa se provjeravaju, potvrđuju i ispisuju." #. module: account #: help:account.chart.template,property_reserve_and_surplus_account:0 @@ -8045,6 +8401,9 @@ msgid "" "will be added, Loss: Amount will be deducted.), Which is calculated from " "Profilt & Loss Report" msgstr "" +"Ovaj račun se koristi za prijenos Dobiti / gubitka (ako je Profit: Iznos će " +"biti dodan, gubitak: Iznos će biti odbijen.),Izračunava se iz Izvješća o " +"dobiti / gubitku" #. module: account #: field:account.invoice,reference_type:0 @@ -8083,6 +8442,8 @@ msgid "" "the amount of this case into its parent. For example, set 1/-1 if you want " "to add/substract it." msgstr "" +"Koeficijent zbrajanja na nadređenu grupu. Npr. 1/-1 za zbrajanje/oduzimanje " +"ili 0 za izostavljanje." #. module: account #: view:account.invoice:0 @@ -8106,7 +8467,7 @@ msgstr "Otvori dnevnik" #. module: account #: report:account.analytic.account.journal:0 msgid "KI" -msgstr "" +msgstr "KI" #. module: account #: report:account.analytic.account.cost_ledger:0 @@ -8120,7 +8481,7 @@ msgstr "Od perioda" #: code:addons/account/installer.py:476 #, python-format msgid "Sales Refund Journal" -msgstr "Dnevnik povrata IRA" +msgstr "Dnevnik odobrenja kupcima" #. module: account #: code:addons/account/account.py:927 @@ -8129,6 +8490,8 @@ msgid "" "You cannot modify company of this period as its related record exist in " "Entry Lines" msgstr "" +"You cannot modify company of this period as its related record exist in " +"Entry Lines" #. module: account #: view:account.move:0 @@ -8145,7 +8508,7 @@ msgstr "Registrirana plaćanja" #. module: account #: view:account.fiscalyear.close.state:0 msgid "Close states of Fiscal year and periods" -msgstr "" +msgstr "Close states of Fiscal year and periods" #. module: account #: view:account.analytic.line:0 @@ -8164,7 +8527,7 @@ msgstr "Analitika" #: model:process.node,name:account.process_node_invoiceinvoice0 #: model:process.node,name:account.process_node_supplierinvoiceinvoice0 msgid "Create Invoice" -msgstr "Stvori račun" +msgstr "Kreiraj račun" #. module: account #: field:account.installer,purchase_tax:0 @@ -8192,7 +8555,7 @@ msgstr "Postavke Vaše računovodstvene aplikacije" #: code:addons/account/installer.py:479 #, python-format msgid "SCNJ" -msgstr "" +msgstr "SCNJ" #. module: account #: model:process.transition,note:account.process_transition_analyticinvoice0 @@ -8200,6 +8563,8 @@ msgid "" "Analytic costs (timesheets, some purchased products, ...) come from analytic " "accounts. These generate draft invoices." msgstr "" +"Analitički troškovi (ev. rada, nabava, ...) dolaze sa analitičkih " +"konta(računa). Oni mogu kreirati nacrte računa." #. module: account #: help:account.journal,view_id:0 @@ -8209,6 +8574,10 @@ msgid "" "in which order. You can create your own view for a faster encoding in each " "journal." msgstr "" +"Gives the view used when writing or browsing entries in this journal. The " +"view tells OpenERP which fields should be visible, required or readonly and " +"in which order. You can create your own view for a faster encoding in each " +"journal." #. module: account #: field:account.period,date_stop:0 @@ -8243,7 +8612,7 @@ msgstr "Od perioda" #: code:addons/account/account.py:2333 #, python-format msgid "Cannot locate parent code for template account!" -msgstr "" +msgstr "Cannot locate parent code for template account!" #. module: account #: field:account.aged.trial.balance,direction_selection:0 @@ -8274,7 +8643,7 @@ msgstr "Ukupno potražuje" #. module: account #: model:process.transition,note:account.process_transition_suppliervalidentries0 msgid "Accountant validates the accounting entries coming from the invoice. " -msgstr "" +msgstr "Knjigovođa potvrđuje temeljnicu nastalu potvrdom računa. " #. module: account #: code:addons/account/invoice.py:1008 @@ -8283,6 +8652,7 @@ msgid "" "You cannot cancel the Invoice which is Partially Paid! You need to " "unreconcile concerned payment entries!" msgstr "" +"Ne možete otkazati račun koji je djelomično plaćen, dok ne otvorite stavke!" #. module: account #: report:account.overdue:0 @@ -8308,7 +8678,7 @@ msgstr "Ne može se knjižiti na sintetički konto." #: code:addons/account/wizard/account_change_currency.py:71 #, python-format msgid "Current currency is not confirured properly !" -msgstr "" +msgstr "Current currency is not confirured properly !" #. module: account #: model:ir.actions.act_window,help:account.action_invoice_tree4 @@ -8318,6 +8688,10 @@ msgid "" "partially. You can easily generate refunds and reconcile them directly from " "the invoice form." msgstr "" +"With Supplier Refunds you can manage the credit notes you receive from your " +"suppliers. A refund is a document that credits an invoice completely or " +"partially. You can easily generate refunds and reconcile them directly from " +"the invoice form." #. module: account #: view:account.account.template:0 @@ -8338,7 +8712,7 @@ msgstr "RDG (konta prihoda)" #: view:account.tax:0 #: view:account.tax.template:0 msgid "Keep empty to use the income account" -msgstr "Ostavite prazno za koto prihoda" +msgstr "Ostavite prazno za konto prihoda" #. module: account #: field:account.account,balance:0 @@ -8373,7 +8747,7 @@ msgstr "Saldo" #. module: account #: model:process.node,note:account.process_node_supplierbankstatement0 msgid "Manually or automatically entered in the system" -msgstr "" +msgstr "Manually or automatically entered in the system" #. module: account #: report:account.account.balance:0 @@ -8410,6 +8784,8 @@ msgid "" "This report is analysis by partner. It is a PDF report containing one line " "per partner representing the cumulative credit balance." msgstr "" +"This report is analysis by partner. It is a PDF report containing one line " +"per partner representing the cumulative credit balance." #. module: account #: selection:account.account,type:0 @@ -8445,18 +8821,24 @@ msgid "" "the income account. OpenERP will propose to you automatically the Tax " "related to this account and the counter-part \"Account receivable\"." msgstr "" +"Kartica za ručni upis knjiženja u OpenERP. Ako želite knjižiti izlazni račun " +"kupcu, odaberite dnevnik (vrsta dnevnika - izlazni računi) i fiskalni " +"period. Najprije upišite stavku prihoda, a program će automatski ponuditi " +"slijedeću stavku(e) poreza prema definiranim porezima na kontu troška, a " +"zatim i stavku ukupnog dugovanja kupca na konto dugovanja sa kartice " +"partnera." #. module: account #: code:addons/account/account_bank_statement.py:391 #, python-format msgid "Cannot delete bank statement(s) which are already confirmed !" -msgstr "" +msgstr "Ne možete obrisati bankovni izvod koji je prethodno potvrđen !" #. module: account #: code:addons/account/wizard/account_automatic_reconcile.py:152 #, python-format msgid "You must select accounts to reconcile" -msgstr "" +msgstr "Morate odabrati konta za zatvaranje" #. module: account #: model:ir.actions.act_window,name:account.action_account_receivable_graph @@ -8466,7 +8848,7 @@ msgstr "Saldo po vrsti konta" #. module: account #: model:process.transition,note:account.process_transition_entriesreconcile0 msgid "Accounting entries are the first input of the reconciliation." -msgstr "" +msgstr "Accounting entries are the first input of the reconciliation." #. module: account #: model:ir.actions.act_window,help:account.action_account_period_form @@ -8478,6 +8860,11 @@ msgid "" "closed or left open depending on your company's activities over a specific " "period." msgstr "" +"Ovdje se definiraju fiskalni periodi. Ovi knjigovodstveni periodi bi trebali " +"odgovarati periodima po kojima vaša organizacija ima obvezu prijave poreza " +"na dodanu vrijednost. Najčešće se radi o mjesečnim ili tromjesečnim " +"razdobljima. Zatvaranje perioda zabranjuje daljnja knjiženja za taj period. " +"Preporuča se zatvaranje perioda nakon predaje porezne prijave." #. module: account #: report:account.move.voucher:0 @@ -8510,12 +8897,12 @@ msgstr "Temeljnica" #: code:addons/account/account_move_line.py:1128 #, python-format msgid "You can not change the tax, you should remove and recreate lines !" -msgstr "" +msgstr "You can not change the tax, you should remove and recreate lines !" #. module: account #: report:account.central.journal:0 msgid "A/C No." -msgstr "" +msgstr "A/C No." #. module: account #: model:ir.actions.act_window,name:account.act_account_journal_2_account_bank_statement @@ -8527,11 +8914,12 @@ msgstr "Bankovni izvodi" msgid "" "Creates an account with the selected template under this existing parent." msgstr "" +"Creates an account with the selected template under this existing parent." #. module: account #: selection:account.model.line,date_maturity:0 msgid "Date of the day" -msgstr "" +msgstr "Date of the day" #. module: account #: code:addons/account/wizard/account_move_bank_reconcile.py:49 @@ -8551,7 +8939,7 @@ msgstr "Transakcije zatvaranja" #. module: account #: model:ir.actions.act_window,name:account.action_account_common_menu msgid "Common Report" -msgstr "" +msgstr "Izvještaji" #. module: account #: view:account.account:0 @@ -8566,6 +8954,8 @@ msgid "" "The journal must have centralised counterpart without the Skipping draft " "state option checked!" msgstr "" +"The journal must have centralised counterpart without the Skipping draft " +"state option checked!" #. module: account #: model:process.node,note:account.process_node_paymententries0 @@ -8585,7 +8975,7 @@ msgstr "Srpanj" #. module: account #: view:account.account:0 -msgid "Chart of Accounts" +msgid "Chart of accounts" msgstr "Kontni plan" #. module: account @@ -8632,7 +9022,7 @@ msgstr "Do perioda" #: field:account.print.journal,chart_account_id:0 #: field:account.report.general.ledger,chart_account_id:0 #: field:account.vat.declaration,chart_account_id:0 -msgid "Chart of Accounts" +msgid "Chart of account" msgstr "Kontni plan" #. module: account @@ -8648,7 +9038,7 @@ msgstr "Standardne stavke" #. module: account #: model:ir.model,name:account.model_account_subscription msgid "Account Subscription" -msgstr "" +msgstr "Pretplata" #. module: account #: code:addons/account/invoice.py:717 @@ -8698,7 +9088,7 @@ msgstr "Početni datum" #. module: account #: model:process.node,name:account.process_node_supplierdraftinvoices0 msgid "Draft Invoices" -msgstr "Neodobreni računi" +msgstr "Nacrti računa" #. module: account #: selection:account.account.type,close_method:0 @@ -8716,7 +9106,7 @@ msgstr "Pogrešan ukupni iznos !" #. module: account #: field:account.journal,sequence_id:0 msgid "Entry Sequence" -msgstr "Redoslijed unosa" +msgstr "Brojčana serija" #. module: account #: model:ir.actions.act_window,help:account.action_account_period_tree @@ -8729,6 +9119,13 @@ msgid "" "open period. Close a period when you do not want to record new entries and " "want to lock this period for tax related calculation." msgstr "" +"A period is a fiscal period of time during which accounting entries should " +"be recorded for accounting related activities. Monthly period is the norm " +"but depending on your countries or company needs, you could also have " +"quarterly periods. Closing a period will make it impossible to record new " +"accounting entries, all new entries should then be made on the following " +"open period. Close a period when you do not want to record new entries and " +"want to lock this period for tax related calculation." #. module: account #: view:account.analytic.account:0 @@ -8739,7 +9136,7 @@ msgstr "Na čekanju" #: model:process.transition,name:account.process_transition_analyticinvoice0 #: model:process.transition,name:account.process_transition_supplieranalyticcost0 msgid "From analytic accounts" -msgstr "" +msgstr "Iz analitičkog računa" #. module: account #: field:account.installer.modules,account_payment:0 @@ -8779,6 +9176,9 @@ msgid "" "Make sure you have configured Payment Term properly !\n" "It should contain atleast one Payment Term Line with type \"Balance\" !" msgstr "" +"You cannot validate a non-balanced entry !\n" +"Make sure you have configured Payment Term properly !\n" +"It should contain atleast one Payment Term Line with type \"Balance\" !" #. module: account #: help:res.partner,property_account_payable:0 @@ -8786,6 +9186,8 @@ msgid "" "This account will be used instead of the default one as the payable account " "for the current partner" msgstr "" +"Konto obveza prema dobavljačima za ovog partnera, ako je različit od " +"uobičajenog (22...)" #. module: account #: field:account.period,special:0 @@ -8802,7 +9204,7 @@ msgstr "Sekundarna valuta" #. module: account #: model:ir.model,name:account.model_validate_account_move msgid "Validate Account Move" -msgstr "" +msgstr "Validate Account Move" #. module: account #: field:account.account,credit:0 @@ -8836,6 +9238,8 @@ msgid "" "created. If you leave that field empty, it will use the same journal as the " "current invoice." msgstr "" +"Odaberite dnevnik za račun odobrenja/storna. Ako ostavite prazno, koristiti " +"će se dnevnik ovog računa (isti dnevnik)." #. module: account #: report:account.move.voucher:0 @@ -8846,12 +9250,12 @@ msgstr "" #: view:account.general.journal:0 #: model:ir.ui.menu,name:account.menu_account_general_journal msgid "General Journals" -msgstr "" +msgstr "General Journals" #. module: account #: view:account.model:0 msgid "Journal Entry Model" -msgstr "" +msgstr "Model temeljnice" #. module: account #: code:addons/account/wizard/account_use_model.py:44 @@ -8861,6 +9265,8 @@ msgid "" "payment term!\n" "Please define partner on it!" msgstr "" +"Datum dospijeća stavke unosa generira se od strane modela linije '%s', te se " +"temelji se na roku plaćanja partnera! NMolimo definirati partnera!" #. module: account #: field:account.cashbox.line,number:0 @@ -8942,7 +9348,7 @@ msgstr "Travanj" #. module: account #: view:account.move.line.reconcile.select:0 msgid "Open for Reconciliation" -msgstr "" +msgstr "Open for Reconciliation" #. module: account #: field:account.account,parent_left:0 @@ -8955,12 +9361,15 @@ msgid "" "Refund invoice base on this type. You can not Modify and Cancel if the " "invoice is already reconciled" msgstr "" +"Kreiraj račun odobrenja. Zatvorene (plaćene) račune ne možete mijenjati ili " +"otkazati." #. module: account #: help:account.installer.modules,account_analytic_plans:0 msgid "" "Allows invoice lines to impact multiple analytic accounts simultaneously." msgstr "" +"Allows invoice lines to impact multiple analytic accounts simultaneously." #. module: account #: field:account.installer,sale_tax:0 @@ -8971,7 +9380,7 @@ msgstr "Porez prodaje(%)" #: model:ir.actions.act_window,name:account.action_invoice_tree2 #: model:ir.ui.menu,name:account.menu_action_invoice_tree2 msgid "Supplier Invoices" -msgstr "Računi dobavljača" +msgstr "Ulazni računi" #. module: account #: view:account.analytic.line:0 @@ -8996,6 +9405,9 @@ msgid "" "and is the process of transferring debit and credit amounts from a journal " "of original entry to a ledger book." msgstr "" +"Ažuriranje temeljnice \"knjiženje u gl. knjigu\" je proces prijenosa iznosa " +"duguje i potražuje iz dnevnika u glavnu knjigu. Kod nekih izvještaja možete " +"birati između ažuriranih stavaka ili svih evidentiranih stavaka." #. module: account #: report:account.tax.code.entries:0 @@ -9018,6 +9430,8 @@ msgid "" "This report allows you to print or generate a pdf of your general ledger " "with details of all your account journals" msgstr "" +"This report allows you to print or generate a pdf of your general ledger " +"with details of all your account journals" #. module: account #: selection:account.account,type:0 @@ -9115,7 +9529,7 @@ msgstr "Dan u mjesecu" #: field:account.fiscal.position.tax,tax_src_id:0 #: field:account.fiscal.position.tax.template,tax_src_id:0 msgid "Tax Source" -msgstr "Porez" +msgstr "Iz poreza" #. module: account #: report:account.balancesheet:0 @@ -9133,7 +9547,7 @@ msgstr "Brojači poslovne godine" #. module: account #: help:account.model,name:0 msgid "This is a model for recurring accounting entries" -msgstr "Ovo je model za ponavljajuće računovodstvene unose" +msgstr "Ovo je predložak za ponavljajuće temeljnice" #. module: account #: code:addons/account/account_analytic_line.py:100 @@ -9146,7 +9560,7 @@ msgstr "Ne postoji konto prihoda za ovaj proizvod: \"%s\" (id:%d)" #: report:account.third_party_ledger:0 #: report:account.third_party_ledger_other:0 msgid "JRNL" -msgstr "" +msgstr "JRNL" #. module: account #: view:account.payment.term.line:0 @@ -9209,22 +9623,22 @@ msgstr "Dnevnik: Svi" #: field:analytic.entries.report,company_id:0 #: field:wizard.multi.charts.accounts,company_id:0 msgid "Company" -msgstr "Tvrtka" +msgstr "Organizacija" #. module: account #: model:ir.ui.menu,name:account.menu_action_subscription_form msgid "Define Recurring Entries" -msgstr "" +msgstr "Postava ponavljajućih dok." #. module: account #: field:account.entries.report,date_maturity:0 msgid "Date Maturity" -msgstr "" +msgstr "Datum valute" #. module: account #: help:account.bank.statement,total_entry_encoding:0 msgid "Total cash transactions" -msgstr "" +msgstr "Ukupno transakcije blagajne" #. module: account #: help:account.partner.reconcile.process,today_reconciled:0 @@ -9233,6 +9647,9 @@ msgid "" "reconciliation process today. The current partner is counted as already " "processed." msgstr "" +"This figure depicts the total number of partners that have gone throught the " +"reconciliation process today. The current partner is counted as already " +"processed." #. module: account #: view:account.fiscalyear:0 @@ -9242,12 +9659,12 @@ msgstr "Stvori mjesečna razdoblja" #. module: account #: field:account.tax.code.template,sign:0 msgid "Sign For Parent" -msgstr "Predznak za nadređeni" +msgstr "Predznak za nadređenog" #. module: account #: model:ir.model,name:account.model_account_balance_report msgid "Trial Balance Report" -msgstr "" +msgstr "Izvješće stanja bilance" #. module: account #: model:ir.actions.act_window,name:account.action_bank_statement_draft_tree @@ -9258,12 +9675,12 @@ msgstr "Nepotvrđeni izvodi" #: model:process.transition,note:account.process_transition_statemententries0 msgid "" "Manual or automatic creation of payment entries according to the statements" -msgstr "" +msgstr "Ručno ili automatsko kreiranje stavki plaćanja prema izvodima" #. module: account #: view:account.invoice:0 msgid "Invoice lines" -msgstr "Retci računa" +msgstr "Stavke računa" #. module: account #: field:account.aged.trial.balance,period_to:0 @@ -9320,17 +9737,17 @@ msgstr "Knjiženje otpisa" #. module: account #: model:process.node,note:account.process_node_paidinvoice0 msgid "Invoice's state is Done" -msgstr "" +msgstr "Stanje računa je zatvoreno/plaćeno" #. module: account #: model:ir.model,name:account.model_report_account_sales msgid "Report of the Sales by Account" -msgstr "" +msgstr "Izvještaj o prodaji po kontu" #. module: account #: model:ir.model,name:account.model_account_fiscal_position_account msgid "Accounts Fiscal Position" -msgstr "" +msgstr "Fiskalna pozicija" #. module: account #: report:account.invoice:0 @@ -9340,7 +9757,7 @@ msgstr "" #: model:process.process,name:account.process_process_supplierinvoiceprocess0 #: selection:report.invoice.created,type:0 msgid "Supplier Invoice" -msgstr "Račun Dobavljača" +msgstr "Ulazni račun" #. module: account #: field:account.account,debit:0 @@ -9370,7 +9787,7 @@ msgstr "Duguje" #. module: account #: field:account.invoice,invoice_line:0 msgid "Invoice Lines" -msgstr "Retci računa" +msgstr "Stavke računa" #. module: account #: constraint:account.account.template:0 @@ -9399,7 +9816,7 @@ msgstr "Stavka je već zatvorena" #. module: account #: model:ir.model,name:account.model_report_account_receivable msgid "Receivable accounts" -msgstr "Konta Potraživanja" +msgstr "Konta potraživanja" #. module: account #: selection:account.model.line,date_maturity:0 @@ -9451,7 +9868,7 @@ msgstr "Podatci analitičkog konta" #. module: account #: view:account.tax.code.template:0 msgid "Account Tax Code Template" -msgstr "Predložak šifre poreza" +msgstr "Predložak porezne grupe" #. module: account #: model:process.node,name:account.process_node_manually0 @@ -9476,7 +9893,7 @@ msgstr "Ispiši analitičke dnevnike" #. module: account #: view:account.analytic.line:0 msgid "Fin.Account" -msgstr "" +msgstr "Fin.konto" #. module: account #: model:ir.actions.act_window,name:account.action_aged_receivable_graph @@ -9487,7 +9904,7 @@ msgstr "Stara potraživanja" #. module: account #: field:account.tax,applicable_type:0 msgid "Applicability" -msgstr "" +msgstr "Primjenjivost" #. module: account #: code:addons/account/wizard/account_move_journal.py:165 @@ -9498,18 +9915,18 @@ msgstr "Ovo razdoblje je već zatvoreno !" #. module: account #: help:account.move.line,currency_id:0 msgid "The optional other currency if it is a multi-currency entry." -msgstr "" +msgstr "The optional other currency if it is a multi-currency entry." #. module: account #: model:process.transition,note:account.process_transition_invoiceimport0 msgid "" "Import of the statement in the system from a supplier or customer invoice" -msgstr "" +msgstr "Uvoz naloga u sistem iz ulaznog ili izlaznog računa" #. module: account #: model:ir.ui.menu,name:account.menu_finance_periodical_processing_billing msgid "Billing" -msgstr "Fakturiranje" +msgstr "Billing" #. module: account #: view:account.account:0 @@ -9526,6 +9943,12 @@ msgid "" "may keep several types of specialized journals such as a cash journal, " "purchase journal, sales journal..." msgstr "" +"Upravljanje dnevnicima Vaše organizacije. Dnevnik se koristi za " +"evidentiranje svih knjigovodstvenih transakcija koristeći dvojno " +"knjigovodstvo. Prema naravi aktivnosti i broju transakcija organizacije " +"koristite više tipova specijaliziranih dnevnika kao što su banka, blagajna, " +"ulazni računi, izlazni računi i sl. Možete voditi neograničen broj dnevnika, " +"već prema potrebama." #. module: account #: model:ir.model,name:account.model_account_analytic_chart @@ -9535,7 +9958,7 @@ msgstr "Analitički kontni plan" #. module: account #: help:account.invoice,residual:0 msgid "Remaining amount due." -msgstr "Ostatak dugovnog iznosa." +msgstr "Ostatak dugovanja." #. module: account #: model:ir.ui.menu,name:account.menu_finance_statistic_report_statement @@ -9558,7 +9981,7 @@ msgstr "Mapiranje konta" #: code:addons/account/invoice.py:346 #, python-format msgid "Invoice '%s' is waiting for validation." -msgstr "" +msgstr "Račun '%s' čeka potvrdu." #. module: account #: selection:account.entries.report,month:0 @@ -9583,7 +10006,7 @@ msgstr "Konto prihoda ili troškova vezan za odabrani proizvod." #: code:addons/account/account_move_line.py:1117 #, python-format msgid "The date of your Journal Entry is not in the defined period!" -msgstr "" +msgstr "The date of your Journal Entry is not in the defined period!" #. module: account #: field:account.subscription,period_total:0 @@ -9594,7 +10017,7 @@ msgstr "Broj perioda" #: report:account.general.journal:0 #: model:ir.actions.report.xml,name:account.account_general_journal msgid "General Journal" -msgstr "Glavni dnevnik" +msgstr "Opći dnevnik" #. module: account #: view:account.invoice:0 @@ -9638,7 +10061,7 @@ msgstr "Dokumenti računovodstva" #. module: account #: model:ir.model,name:account.model_validate_account_move_lines msgid "Validate Account Move Lines" -msgstr "" +msgstr "Ažuriraj stavke" #. module: account #: model:ir.actions.act_window,name:account.action_account_analytic_cost_ledger_journal @@ -9649,12 +10072,12 @@ msgstr "Knjiga troškova (Samo količine)" #. module: account #: model:process.node,note:account.process_node_supplierpaidinvoice0 msgid "Invoice's state is Done." -msgstr "" +msgstr "Stanje računa je zatvoreno/plaćeno." #. module: account #: model:process.transition,note:account.process_transition_reconcilepaid0 msgid "As soon as the reconciliation is done, the invoice can be paid." -msgstr "" +msgstr "Čim je obavljeno zatvaranje, račun može biti plaćen." #. module: account #: view:account.account.template:0 @@ -9685,7 +10108,7 @@ msgstr "account.addtmpl.wizard" #: report:account.third_party_ledger:0 #: report:account.third_party_ledger_other:0 msgid "Partner's" -msgstr "partneri" +msgstr "Partneri" #. module: account #: model:ir.actions.act_window,name:account.action_account_fiscalyear_form @@ -9700,6 +10123,8 @@ msgid "" "If the active field is set to False, it will allow you to hide the analytic " "journal without removing it." msgstr "" +"Ako aktivno polje postavljeno na False, to će vam omogućiti da sakrijete " +"analitiku temeljnice bez da ju uklonite." #. module: account #: field:account.analytic.line,ref:0 @@ -9734,7 +10159,7 @@ msgstr "Bankovni račun" #: model:ir.actions.act_window,name:account.action_account_central_journal #: model:ir.model,name:account.model_account_central_journal msgid "Account Central Journal" -msgstr "" +msgstr "Account Central Journal" #. module: account #: report:account.overdue:0 @@ -9749,7 +10174,7 @@ msgstr "Budućnost" #. module: account #: view:account.move.line:0 msgid "Search Journal Items" -msgstr "Traži stavke dnevnika" +msgstr "Traži stavke glavne knjige" #. module: account #: help:account.tax,base_sign:0 @@ -9771,7 +10196,7 @@ msgstr "Predlozak mapiranja konta" #. module: account #: field:account.chart.template,property_account_expense:0 msgid "Expense Account on Product Template" -msgstr "Konto troškova na predlošku proizvoda" +msgstr "Zadani konto troška za proizvode" #. module: account #: field:account.analytic.line,amount_currency:0 @@ -9801,6 +10226,9 @@ msgid "" "certain amount of information. They have to be certified by an external " "auditor annually." msgstr "" +"Kreirajte i upravljajte strukturom kontnih planova i kontima koje će te " +"koristiti za evidenciju knjigovodstvenih dokumenata. Konto je dio glavne " +"knjige koja omogućuje bilježenje poslovnih transakcija." #. module: account #: help:account.move.line,amount_residual_currency:0 @@ -9808,6 +10236,8 @@ msgid "" "The residual amount on a receivable or payable of a journal entry expressed " "in its currency (maybe different of the company currency)." msgstr "" +"Ostatak iznosa dugovanja ili potraživanja u svojoj valuti (ne nužno valuti " +"organizacije)." #. module: account #: report:account.balancesheet:0 @@ -9887,9 +10317,6 @@ msgstr "" #~ msgid "Bank Receipt" #~ msgstr "Bankovni primitak" -#~ msgid "Ending Balance" -#~ msgstr "Završni saldo" - #, python-format #~ msgid "" #~ "The expected balance (%.2f) is different than the computed one. (%.2f)" @@ -10211,6 +10638,9 @@ msgstr "" #~ msgid "Credit Trans." #~ msgstr "Dugovna transakcija" +#~ msgid "JNRL" +#~ msgstr "JNRL" + #~ msgid "Subscription Entries" #~ msgstr "Stavke pretplate" @@ -10339,9 +10769,6 @@ msgstr "" #~ msgid "Invalid model name in the action definition." #~ msgstr "Pogrešno ime modela u definiciji akcije." -#~ msgid "Unreconciled entries" -#~ msgstr "Otvorene stavke" - #~ msgid "Move line select" #~ msgstr "Odabir stavke knjiženja" @@ -10905,5 +11332,15 @@ msgstr "" #~ msgid "Balance Sheet (Assets Accounts)" #~ msgstr "Bilanca (konta imovine)" -#~ msgid "Chart of Accounts" +#~ msgid "Chart of Account" #~ msgstr "Kontni plan" + +#, python-format +#~ msgid "is validated." +#~ msgstr "is validated." + +#~ msgid "Unreconciled entries" +#~ msgstr "Unreconciled entries" + +#~ msgid "Ending Balance" +#~ msgstr "Ending Balance" diff --git a/addons/account/installer.py b/addons/account/installer.py index fcd29e9e323..a0157e51c8e 100644 --- a/addons/account/installer.py +++ b/addons/account/installer.py @@ -111,6 +111,10 @@ class account_installer(osv.osv_memory): return {} def execute(self, cr, uid, ids, context=None): + self.execute_simple(cr, uid, ids, context) + super(account_installer, self).execute(cr, uid, ids, context=context) + + def execute_simple(self, cr, uid, ids, context=None): if context is None: context = {} fy_obj = self.pool.get('account.fiscalyear') @@ -219,7 +223,6 @@ class account_installer(osv.osv_memory): fy_obj.create_period(cr, uid, [fiscal_id]) elif res['period'] == '3months': fy_obj.create_period3(cr, uid, [fiscal_id]) - super(account_installer, self).execute(cr, uid, ids, context=context) def modules_to_install(self, cr, uid, ids, context=None): modules = super(account_installer, self).modules_to_install( diff --git a/addons/account/project/analytic_account_demo.xml b/addons/account/project/analytic_account_demo.xml index 7cf5a59efc1..2661e67cd50 100644 --- a/addons/account/project/analytic_account_demo.xml +++ b/addons/account/project/analytic_account_demo.xml @@ -103,6 +103,7 @@ <field name="type">normal</field> <field name="state">open</field> <field name="partner_id" ref="base.res_partner_seagate"/> + <field name="contact_id" ref="base.res_partner_address_seagate"/> </record> <record id="analytic_seagate_p2" model="account.analytic.account"> <field name="name">Seagate P2</field> @@ -111,6 +112,7 @@ <field name="parent_id" ref="analytic_integration"/> <field name="state">open</field> <field name="partner_id" ref="base.res_partner_seagate"/> + <field name="contact_id" ref="base.res_partner_address_seagate"/> </record> <record id="analytic_magasin_bml_1" model="account.analytic.account"> <field name="name">Magasin BML 1</field> @@ -118,6 +120,7 @@ <field name="parent_id" ref="analytic_integration"/> <field name="type">normal</field> <field name="partner_id" ref="base.res_partner_15"/> + <field name="contact_id" ref="base.res_partner_address_14"/> </record> <record id="analytic_integration_c2c" model="account.analytic.account"> <field name="name">CampToCamp</field> @@ -127,6 +130,7 @@ <field eval="time.strftime('%Y-12-31')" name="date"/> <field name="parent_id" ref="analytic_integration"/> <field name="partner_id" ref="base.res_partner_c2c"/> + <field name="contact_id" ref="base.res_partner_address_Camptocamp"/> <field name="state">open</field> </record> <record id="analytic_agrolait" model="account.analytic.account"> @@ -135,13 +139,15 @@ <field name="parent_id" ref="analytic_customers"/> <field name="type">normal</field> <field name="partner_id" ref="base.res_partner_agrolait"/> + <field name="contact_id" ref="base.res_partner_address_8"/> </record> <record id="analytic_asustek" model="account.analytic.account"> <field name="name">Asustek</field> <field name="code">4</field> <field name="type">normal</field> - <field name="parent_id" ref="analytic_customers"/> + <field name="parent_id" ref="analytic_customers"/> <field name="partner_id" ref="base.res_partner_asus"/> + <field name="contact_id" ref="base.res_partner_address_tang"/> </record> <record id="analytic_distripc" model="account.analytic.account"> <field name="name">DistriPC</field> @@ -149,6 +155,7 @@ <field name="parent_id" ref="analytic_customers"/> <field name="type">normal</field> <field name="partner_id" ref="base.res_partner_4"/> + <field name="contact_id" ref="base.res_partner_address_7"/> </record> <record id="analytic_sednacom" model="account.analytic.account"> <field name="name">Sednacom</field> @@ -158,6 +165,7 @@ <field name="parent_id" ref="analytic_partners"/> <field name="type">normal</field> <field name="partner_id" ref="base.res_partner_sednacom"/> + <field name="contact_id" ref="base.res_partner_address_11"/> <field name="state">open</field> </record> <record id="analytic_thymbra" model="account.analytic.account"> @@ -168,6 +176,7 @@ <field name="type">normal</field> <field name="parent_id" ref="analytic_partners"/> <field name="partner_id" ref="base.res_partner_thymbra"/> + <field name="contact_id" ref="base.res_partner_address_thymbra"/> <field name="state">open</field> </record> <record id="analytic_leclerc" model="account.analytic.account"> @@ -178,6 +187,7 @@ <field name="type">normal</field> <field name="parent_id" ref="analytic_partners"/> <field name="partner_id" ref="base.res_partner_11"/> + <field name="contact_id" ref="base.res_partner_address_15"/> </record> <record id="analytic_desertic_hispafuentes" model="account.analytic.account"> <field name="name">Desertic - Hispafuentes</field> @@ -187,6 +197,7 @@ <field name="type">normal</field> <field name="parent_id" ref="analytic_partners"/> <field name="partner_id" ref="base.res_partner_desertic_hispafuentes"/> + <field name="contact_id" ref="base.res_partner_address_3000"/> </record> <record id="analytic_tiny_at_work" model="account.analytic.account"> <field name="name">OpenERP SA AT Work</field> @@ -194,6 +205,7 @@ <field name="type">normal</field> <field name="parent_id" ref="analytic_partners"/> <field name="partner_id" ref="base.res_partner_tinyatwork"/> + <field name="contact_id" ref="base.res_partner_address_tinyatwork"/> </record> <record id="analytic_partners_camp_to_camp" model="account.analytic.account"> <field name="name">Camp to Camp</field> @@ -203,6 +215,7 @@ <field name="type">normal</field> <field name="parent_id" ref="analytic_partners"/> <field name="partner_id" ref="base.res_partner_c2c"/> + <field name="contact_id" ref="base.res_partner_address_Camptocamp"/> <field name="state">open</field> </record> <record id="analytic_project_2_support" model="account.analytic.account"> diff --git a/addons/account/project/project_view.xml b/addons/account/project/project_view.xml index cc05092688b..d6df834f4e8 100644 --- a/addons/account/project/project_view.xml +++ b/addons/account/project/project_view.xml @@ -8,16 +8,16 @@ <field name="type">tree</field> <field eval="8" name="priority"/> <field name="arch" type="xml"> - <tree toolbar="1" colors="red:(date<current_date);black:(date>=current_date);black:(date==False)" string="Analytic Accounts"> - <field name="code"/> + <tree toolbar="1" colors="red:state=='pending';grey:state in ('cancelled','close');blue:type=='view'" string="Analytic Accounts"> <field name="complete_name"/> + <field name="code"/> <field name="quantity"/> - <field name="quantity_max"/> <field name="date"/> <field name="user_id" invisible="1"/> <field name="parent_id" invisible="1"/> <field name="partner_id" invisible="1"/> <field name="state" invisible="1"/> + <field name="type" invisible="1"/> </tree> </field> </record> @@ -57,11 +57,10 @@ <field name="type">tree</field> <field name="field_parent">child_complete_ids</field> <field name="arch" type="xml"> - <tree colors="blue:type == 'view';red:(date<current_date);black:(date>=current_date);black:(date==False)" string="Analytic account" toolbar="1"> + <tree colors="red:state=='pending';grey:state in ('close','cancelled');blue:type=='view'" string="Analytic account" toolbar="1"> <field name="name"/> <field name="code"/> <field name="quantity"/> - <field name="quantity_max"/> <field name="debit"/> <field name="credit"/> <field name="balance"/> @@ -85,7 +84,7 @@ <group colspan="4" col="6"> <field name="name" select="1" colspan="4"/> <field name="code" select="1"/> - <field name="parent_id" on_change="on_change_parent(parent_id)" groups="base.group_extended" domain="[('type','=','view')]"/> + <field name="parent_id" on_change="on_change_parent(parent_id)" groups="base.group_extended"/> <field name="company_id" on_change="on_change_company(company_id)" select="2" widget="selection" groups="base.group_multi_company" attrs="{'required': [('type','<>','view')]}"/> <field name="type" select="2"/> </group> @@ -194,7 +193,7 @@ <field name="journal_id" invisible="context.get('to_invoice', False)"/> <field name="amount" sum="Total" invisible="context.get('to_invoice', False)"/> <field name="product_id" on_change="on_change_unit_amount(product_id, unit_amount, company_id, product_uom_id, journal_id)" invisible="not context.get('to_invoice', False)"/> - <field name="unit_amount" on_change="on_change_unit_amount(product_id, unit_amount, company_id, product_uom_id)" sum="Total Quantity" invisible="not context.get('to_invoice', False)"/> + <field name="unit_amount" on_change="on_change_unit_amount(product_id, unit_amount, company_id, product_uom_id)" sum="Total Quantity"/> <field name="product_uom_id" on_change="on_change_unit_amount(product_id, unit_amount, company_id, product_uom_id)" invisible="not context.get('to_invoice', False)"/> <field domain="[('type','=','normal')]" name="account_id"/> <field name="general_account_id" invisible="context.get('to_invoice', False)"/> diff --git a/addons/account/report/account_analytic_entries_report.py b/addons/account/report/account_analytic_entries_report.py index f6dfe7cbdb5..1b7e7f9a84b 100644 --- a/addons/account/report/account_analytic_entries_report.py +++ b/addons/account/report/account_analytic_entries_report.py @@ -82,3 +82,5 @@ class analytic_entries_report(osv.osv): ) """) analytic_entries_report() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/report/account_entries_report.py b/addons/account/report/account_entries_report.py index 266b4a056d7..29e40c7d5ad 100644 --- a/addons/account/report/account_entries_report.py +++ b/addons/account/report/account_entries_report.py @@ -153,3 +153,5 @@ class account_entries_report(osv.osv): ) """) account_entries_report() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/report/account_financial_report.py b/addons/account/report/account_financial_report.py index 6b42bb1875d..e9da0a1cd7b 100644 --- a/addons/account/report/account_financial_report.py +++ b/addons/account/report/account_financial_report.py @@ -92,3 +92,5 @@ class report_account_common(report_sxw.rml_parse, common_report_header): report_sxw.report_sxw('report.account.financial.report', 'account.financial.report', 'addons/account/report/account_financial_report.rml', parser=report_account_common, header='internal') + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/report/account_print_invoice.rml b/addons/account/report/account_print_invoice.rml index db8f752a56d..ff2a8e525be 100644 --- a/addons/account/report/account_print_invoice.rml +++ b/addons/account/report/account_print_invoice.rml @@ -162,11 +162,7 @@ </td> <td> <para style="terp_default_8">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.street) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.zip) or '' ]] [[ (o.address_invoice_id and o.address_invoice_id.city) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.state_id and o.address_invoice_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.country_id and o.address_invoice_id.country_id.name) or '' ]]</para> + <para style="terp_default_8">[[ display_address(o.address_invoice_id) ]]</para> <para style="terp_default_8"> <font color="white"> </font> </para> @@ -198,7 +194,7 @@ <para style="terp_tblheader_General_Centre">Origin</para> </td> <td> - <para style="terp_tblheader_General_Centre">Your Reference</para> + <para style="terp_tblheader_General_Centre">Customer Code</para> </td> </tr> </blockTable> diff --git a/addons/account/report/account_treasury_report.py b/addons/account/report/account_treasury_report.py index fce3661b4c4..40d9364981f 100644 --- a/addons/account/report/account_treasury_report.py +++ b/addons/account/report/account_treasury_report.py @@ -79,3 +79,5 @@ class account_treasury_report(osv.osv): ) """) account_treasury_report() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/report/common_report_header.py b/addons/account/report/common_report_header.py index 5769248405f..c0365875bdc 100644 --- a/addons/account/report/common_report_header.py +++ b/addons/account/report/common_report_header.py @@ -141,3 +141,5 @@ class common_report_header(object): return '' #vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/security/account_security.xml b/addons/account/security/account_security.xml index 5c4c9a0a525..c928ff3c8fe 100644 --- a/addons/account/security/account_security.xml +++ b/addons/account/security/account_security.xml @@ -49,13 +49,6 @@ <field name="domain_force">['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]</field> </record> - <record id="analytic_journal_comp_rule_false" model="ir.rule"> - <field name="name">Analytic journal multi-company</field> - <field model="ir.model" name="model_id" ref="model_account_analytic_journal"/> - <field eval="True" name="global"/> - <field name="domain_force">['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]</field> - </record> - <record id="period_comp_rule" model="ir.rule"> <field name="name">Period multi-company</field> <field model="ir.model" name="model_id" ref="model_account_period"/> diff --git a/addons/account/test/account_fiscalyear_close_state.yml b/addons/account/test/account_fiscalyear_close_state.yml index af4d05eba76..18c7dd570ed 100644 --- a/addons/account/test/account_fiscalyear_close_state.yml +++ b/addons/account/test/account_fiscalyear_close_state.yml @@ -1,31 +1,8 @@ - -- - In order to check the Close a Fiscal Year wizard in OpenERP I first create a Fiscalyear -- - !record {model: account.fiscalyear, id: account_fiscalyear_fiscalyear0}: - code: !eval "'FY%s'% (datetime.now().year+1)" - company_id: base.main_company - date_start: !eval "'%s-01-01' %(datetime.now().year+1)" - date_stop: !eval "'%s-12-31' %(datetime.now().year+1)" - name: !eval "'Fiscal Year %s' %(datetime.now().year+1)" -- - I create monthly Periods for this fiscalyear -- - !python {model: account.fiscalyear}: | - self.create_period(cr, uid, [ref("account_fiscalyear_fiscalyear0")], {"lang": - 'en_US', "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_action_account_fiscalyear_form")], - "tz": False, "active_id": ref("account.menu_action_account_fiscalyear_form"), - }) - - I check that the fiscalyear state is "Draft" -- - !assert {model: account.fiscalyear, id: account_fiscalyear_fiscalyear0, string: Fiscal Year is in Draft state}: - - state == 'draft' -- - I run the Close a Fiscalyear wizard to close this fiscalyear + I run the Close a Fiscalyear wizard to close the demo fiscalyear - !record {model: account.fiscalyear.close.state, id: account_fiscalyear_close_state_0}: - fy_id: account_fiscalyear_fiscalyear0 + fy_id: data_fiscalyear - I clicked on Close States Button to close fiscalyear @@ -37,9 +14,6 @@ - I check that the fiscalyear state is now "Done" - - !assert {model: account.fiscalyear, id: account_fiscalyear_fiscalyear0, string: Fiscal Year is in Done state}: + !assert {model: account.fiscalyear, id: data_fiscalyear, string: Fiscal Year is in Done state}: - state == 'done' - - - diff --git a/addons/account/test/account_supplier_invoice.yml b/addons/account/test/account_supplier_invoice.yml index c67979226cc..3683a3e44c9 100644 --- a/addons/account/test/account_supplier_invoice.yml +++ b/addons/account/test/account_supplier_invoice.yml @@ -82,10 +82,10 @@ 'active_model': 'ir.ui.menu', 'journal_type': 'purchase', 'active_ids': [ref('menu_action_invoice_tree2')], 'type': 'in_invoice', 'active_id': ref('menu_action_invoice_tree2')}) except Exception, e: - assert e, _('Warning message has not been raised') + assert e, 'Warning message has not been raised' - - I verify that 'Period Sum' and 'Year sum' of account tax codes gets bind with the values + I verify that 'Period Sum' and 'Year sum' of the tax code are the expected values - !python {model: account.tax.code}: | tax_code = self.browse(cr, uid, ref('tax_case')) - assert(tax_code.sum_period == 100.0 and tax_code.sum == 100.0), _("'Period Sum' and 'Year sum' has not been binded with the correct values") + assert(tax_code.sum_period == 100.0 and tax_code.sum == 100.0), "Incorrect 'Period Sum' / 'Year sum' expected twice 100.0, got period=%r and year=%r)" % (tax_code.sum_period,tax_code.sum) diff --git a/addons/account/test/test_parent_structure.py b/addons/account/test/test_parent_structure.py index 9c3dd2b4c47..99795af311a 100644 --- a/addons/account/test/test_parent_structure.py +++ b/addons/account/test/test_parent_structure.py @@ -47,3 +47,5 @@ for a in account_lists: (a2['parent_right']<a['parent_right'])) if a2['parent_id']==a['id']: assert (a2['parent_left']>a['parent_left']) and (a2['parent_right']<a['parent_right']) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/wizard/account_report_central_journal.py b/addons/account/wizard/account_report_central_journal.py index eed21f976a5..046aec4690d 100644 --- a/addons/account/wizard/account_report_central_journal.py +++ b/addons/account/wizard/account_report_central_journal.py @@ -41,3 +41,5 @@ class account_central_journal(osv.osv_memory): account_central_journal() #vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/wizard/account_report_common_account.py b/addons/account/wizard/account_report_common_account.py index 4e0fe2d6c66..a27241a37ff 100644 --- a/addons/account/wizard/account_report_common_account.py +++ b/addons/account/wizard/account_report_common_account.py @@ -44,3 +44,5 @@ class account_common_account_report(osv.osv_memory): account_common_account_report() #vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/wizard/account_report_common_journal.py b/addons/account/wizard/account_report_common_journal.py index 8e9db058d31..e71d380e837 100644 --- a/addons/account/wizard/account_report_common_journal.py +++ b/addons/account/wizard/account_report_common_journal.py @@ -49,4 +49,4 @@ class account_common_journal_report(osv.osv_memory): account_common_journal_report() -#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/wizard/account_report_common_partner.py b/addons/account/wizard/account_report_common_partner.py index 05003041eeb..a2acdc4b988 100644 --- a/addons/account/wizard/account_report_common_partner.py +++ b/addons/account/wizard/account_report_common_partner.py @@ -44,4 +44,5 @@ class account_common_partner_report(osv.osv_memory): account_common_partner_report() -#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file +#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/wizard/account_report_general_journal.py b/addons/account/wizard/account_report_general_journal.py index 521c4667a80..631de5f1260 100644 --- a/addons/account/wizard/account_report_general_journal.py +++ b/addons/account/wizard/account_report_general_journal.py @@ -37,3 +37,5 @@ class account_general_journal(osv.osv_memory): account_general_journal() #vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/wizard/account_report_print_journal.py b/addons/account/wizard/account_report_print_journal.py index d7e8f11a7f8..1fe350349b6 100644 --- a/addons/account/wizard/account_report_print_journal.py +++ b/addons/account/wizard/account_report_print_journal.py @@ -46,3 +46,5 @@ class account_print_journal(osv.osv_memory): account_print_journal() #vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account/wizard/account_vat.py b/addons/account/wizard/account_vat.py index 186f79cad6d..cbdf18d314a 100644 --- a/addons/account/wizard/account_vat.py +++ b/addons/account/wizard/account_vat.py @@ -59,4 +59,4 @@ class account_vat_declaration(osv.osv_memory): account_vat_declaration() -#vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_accountant/__openerp__.py b/addons/account_accountant/__openerp__.py index d808a38fa18..c1086285f93 100644 --- a/addons/account_accountant/__openerp__.py +++ b/addons/account_accountant/__openerp__.py @@ -19,10 +19,10 @@ # ############################################################################## { - "name" : "Accountant Access", + "name" : "Accounting and Finance", "version" : "1.1", "author" : "OpenERP SA", - "category": 'Hidden', + "category": 'Accounting & Finance', 'complexity': "normal", "description": """ Accounting Access Rights. @@ -45,6 +45,7 @@ user rights to Demo user. 'test': [], 'installable': True, 'active': False, + 'application': True, 'certificate': '00395091383933390541', } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_accountant/i18n/az.po b/addons/account_accountant/i18n/az.po new file mode 100644 index 00000000000..ede1216401d --- /dev/null +++ b/addons/account_accountant/i18n/az.po @@ -0,0 +1,37 @@ +# Azerbaijani translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-12-06 05:22+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Azerbaijani <az@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-07 04:52+0000\n" +"X-Generator: Launchpad (build 14435)\n" + +#. module: account_accountant +#: model:ir.module.module,description:account_accountant.module_meta_information +msgid "" +"\n" +"This module gives the admin user the access to all the accounting features " +"like the journal\n" +"items and the chart of accounts.\n" +" " +msgstr "" +"\n" +"Bu modul jurnal yazıları, hesab qrafikləri kimi mühasibat uçotu " +"funksiyalarına idarəçilik imkanı verir.\n" +" " + +#. module: account_accountant +#: model:ir.module.module,shortdesc:account_accountant.module_meta_information +msgid "Accountant" +msgstr "Mühasib" diff --git a/addons/account_analytic_analysis/__openerp__.py b/addons/account_analytic_analysis/__openerp__.py index 32642caf49c..ee887e1ff6a 100644 --- a/addons/account_analytic_analysis/__openerp__.py +++ b/addons/account_analytic_analysis/__openerp__.py @@ -21,7 +21,7 @@ { - 'name' : 'Sales Contract Management', + 'name' : 'Contracts Management', 'version' : '1.1', 'category' : 'Sales Management', 'complexity': "normal", @@ -46,6 +46,7 @@ user-wise as well as month wise. ], 'demo_xml' : [], 'installable': True, + 'application': True, 'active' : False, 'certificate': '0042927202589', } diff --git a/addons/account_analytic_analysis/account_analytic_analysis.py b/addons/account_analytic_analysis/account_analytic_analysis.py index 36d62e32e63..3fe60e449cd 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis.py +++ b/addons/account_analytic_analysis/account_analytic_analysis.py @@ -406,25 +406,25 @@ class account_analytic_account(osv.osv): 'ca_theorical': fields.function(_analysis_all, multi='analytic_analysis', type='float', string='Theoretical Revenue', help="Based on the costs you had on the project, what would have been the revenue if all these costs have been invoiced at the normal sale price provided by the pricelist.", digits_compute=dp.get_precision('Account')), - 'hours_quantity': fields.function(_analysis_all, multi='analytic_analysis', type='float', string='Hours Tot', - help="Number of hours you spent on the analytic account (from timesheet). It computes on all journal of type 'general'."), + 'hours_quantity': fields.function(_analysis_all, multi='analytic_analysis', type='float', string='Total Time', + help="Number of time you spent on the analytic account (from timesheet). It computes quantities on all journal of type 'general'."), 'last_invoice_date': fields.function(_analysis_all, multi='analytic_analysis', type='date', string='Last Invoice Date', help="If invoice from the costs, this is the date of the latest invoiced."), 'last_worked_invoiced_date': fields.function(_analysis_all, multi='analytic_analysis', type='date', string='Date of Last Invoiced Cost', help="If invoice from the costs, this is the date of the latest work or cost that have been invoiced."), 'last_worked_date': fields.function(_analysis_all, multi='analytic_analysis', type='date', string='Date of Last Cost/Work', help="Date of the latest work done on this account."), - 'hours_qtt_non_invoiced': fields.function(_analysis_all, multi='analytic_analysis', type='float', string='Uninvoiced Hours', - help="Number of hours (from journal of type 'general') that can be invoiced if you invoice based on analytic account."), - 'hours_qtt_invoiced': fields.function(_hours_qtt_invoiced_calc, type='float', string='Invoiced Hours', - help="Number of hours that can be invoiced plus those that already have been invoiced."), - 'remaining_hours': fields.function(_remaining_hours_calc, type='float', string='Remaining Hours', - help="Computed using the formula: Maximum Quantity - Hours Tot."), + 'hours_qtt_non_invoiced': fields.function(_analysis_all, multi='analytic_analysis', type='float', string='Uninvoiced Time', + help="Number of time (hours/days) (from journal of type 'general') that can be invoiced if you invoice based on analytic account."), + 'hours_qtt_invoiced': fields.function(_hours_qtt_invoiced_calc, type='float', string='Invoiced Time', + help="Number of time (hours/days) that can be invoiced plus those that already have been invoiced."), + 'remaining_hours': fields.function(_remaining_hours_calc, type='float', string='Remaining Time', + help="Computed using the formula: Maximum Time - Total Time"), 'remaining_ca': fields.function(_remaining_ca_calc, type='float', string='Remaining Revenue', help="Computed using the formula: Max Invoice Price - Invoiced Amount.", digits_compute=dp.get_precision('Account')), - 'revenue_per_hour': fields.function(_revenue_per_hour_calc, type='float', string='Revenue per Hours (real)', - help="Computed using the formula: Invoiced Amount / Hours Tot.", + 'revenue_per_hour': fields.function(_revenue_per_hour_calc, type='float', string='Revenue per Time (real)', + help="Computed using the formula: Invoiced Amount / Total Time", digits_compute=dp.get_precision('Account')), 'real_margin': fields.function(_real_margin_calc, type='float', string='Real Margin', help="Computed using the formula: Invoiced Amount - Total Costs.", diff --git a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml index 19271cb4af2..1f6444c7351 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis_menu.xml +++ b/addons/account_analytic_analysis/account_analytic_analysis_menu.xml @@ -8,6 +8,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="domain">[('invoice_id','=',False)]</field> + <field name="context">{'search_default_to_invoice': 1}</field> <field name="search_view_id" ref="account.view_account_analytic_line_filter"/> </record> <menuitem action="action_hr_tree_invoiced_all" id="menu_action_hr_tree_invoiced_all" parent="base.menu_invoiced"/> @@ -70,18 +71,6 @@ </record> <menuitem action="action_account_analytic_overdue" id="menu_action_account_analytic_overdue" sequence="50" parent="base.menu_invoiced"/> - <record id="action_account_analytic_overdue" model="ir.actions.act_window"> - <field name="name">Contracts to Renew</field> - <field name="res_model">account.analytic.account</field> - <field name="view_type">form</field> - <field name="view_mode">tree,form,graph</field> - <field name="context">{'search_default_has_partner':1, 'search_default_my_accounts':1, 'search_default_draft':1, 'search_default_pending':1, 'search_default_open':1, 'search_default_renew':1}</field> - <field name="domain">[('type','=','normal')]</field> - <field name="search_view_id" ref="view_account_analytic_account_overdue_search"/> - <field name="help">You will find here the contracts to be renewed because the deadline is passed or the working hours are higher than the allocated hours. OpenERP automatically sets these analytic accounts to the pending state, in order to raise a warning during the timesheets recording. Salesmen should review all pending accounts and reopen or close the according to the negotiation with the customer.</field> - </record> - <menuitem action="action_account_analytic_overdue" id="menu_action_account_analytic_overdue" sequence="50" parent="base.menu_invoiced"/> - <record id="action_account_analytic_overdue_all" model="ir.actions.act_window"> <field name="name">Contracts</field> <field name="res_model">account.analytic.account</field> diff --git a/addons/account_analytic_analysis/account_analytic_analysis_view.xml b/addons/account_analytic_analysis/account_analytic_analysis_view.xml index c59717e8ad4..9bf66c18344 100644 --- a/addons/account_analytic_analysis/account_analytic_analysis_view.xml +++ b/addons/account_analytic_analysis/account_analytic_analysis_view.xml @@ -110,22 +110,5 @@ </field> </record> - <record id="view_account_analytic_simplified" model="ir.ui.view"> - <field name="name">account.analytic.account.simplified.tree</field> - <field name="model">account.analytic.account</field> - <field name="type">tree</field> - <field eval="20" name="priority"/> - <field name="arch" type="xml"> - <tree string="Analytic accounts"> - <field name="code"/> - <field name="complete_name"/> - <field name="hours_qtt_non_invoiced"/> - <field name="remaining_hours"/> - <field name="ca_to_invoice"/> - <field name="last_invoice_date"/> - </tree> - </field> - </record> - </data> </openerp> diff --git a/addons/account_analytic_analysis/cron_account_analytic_account.py b/addons/account_analytic_analysis/cron_account_analytic_account.py index 581bbfe92e1..df022cbd6bd 100644 --- a/addons/account_analytic_analysis/cron_account_analytic_account.py +++ b/addons/account_analytic_analysis/cron_account_analytic_account.py @@ -77,3 +77,5 @@ class analytic_account(osv.osv): return True analytic_account() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_analytic_analysis/i18n/hr.po b/addons/account_analytic_analysis/i18n/hr.po index 7467f5c21c1..6e47a09d215 100644 --- a/addons/account_analytic_analysis/i18n/hr.po +++ b/addons/account_analytic_analysis/i18n/hr.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev_rc3\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-08-02 20:32+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) <Unknown>\n" +"PO-Revision-Date: 2011-12-08 16:13+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-05 05:20+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_analytic_analysis #: help:account.analytic.account,hours_qtt_invoiced:0 @@ -27,7 +27,7 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,remaining_ca:0 msgid "Computed using the formula: Max Invoice Price - Invoiced Amount." -msgstr "Izračunato pomoću formule: Max Cijena Iznos - Iznos dostavnice." +msgstr "Izračun: Max. cijena računa - Fakturirani iznos." #. module: account_analytic_analysis #: help:account.analytic.account,remaining_hours:0 @@ -61,7 +61,7 @@ msgstr "" #. module: account_analytic_analysis #: field:account.analytic.account,last_invoice_date:0 msgid "Last Invoice Date" -msgstr "Zadnji Datum fakture" +msgstr "Zadnji datum računa" #. module: account_analytic_analysis #: help:account.analytic.account,theorical_margin:0 @@ -71,12 +71,12 @@ msgstr "Izračunato pomoću formule: Prihodi Teorijski - Ukupni troškovi" #. module: account_analytic_analysis #: field:account.analytic.account,real_margin_rate:0 msgid "Real Margin Rate (%)" -msgstr "Realna margina Stopa (%)" +msgstr "Realna marža(%)" #. module: account_analytic_analysis #: field:account.analytic.account,ca_theorical:0 msgid "Theoretical Revenue" -msgstr "" +msgstr "Teoretski prihod" #. module: account_analytic_analysis #: help:account.analytic.account,last_worked_invoiced_date:0 @@ -84,8 +84,8 @@ msgid "" "If invoice from the costs, this is the date of the latest work or cost that " "have been invoiced." msgstr "" -"Ako račun od troškova, to je datum najnoviji rad ili cijene koje su " -"fakturirane." +"Ako je račun iz troškova, to je datum najnovijeg rada ili ulaznog troška " +"koji je fakturiran." #. module: account_analytic_analysis #: model:ir.ui.menu,name:account_analytic_analysis.menu_invoicing @@ -95,12 +95,12 @@ msgstr "" #. module: account_analytic_analysis #: field:account.analytic.account,last_worked_date:0 msgid "Date of Last Cost/Work" -msgstr "Datum Zadnja cijena / Posao" +msgstr "Datum zadnjeg troška/rada" #. module: account_analytic_analysis #: field:account.analytic.account,total_cost:0 msgid "Total Costs" -msgstr "" +msgstr "Ukupni troškovi" #. module: account_analytic_analysis #: help:account.analytic.account,hours_quantity:0 @@ -119,7 +119,7 @@ msgstr "Preostalo vrijeme" #. module: account_analytic_analysis #: field:account.analytic.account,theorical_margin:0 msgid "Theoretical Margin" -msgstr "" +msgstr "Teoretski iznos" #. module: account_analytic_analysis #: help:account.analytic.account,ca_theorical:0 @@ -128,25 +128,24 @@ msgid "" "if all these costs have been invoiced at the normal sale price provided by " "the pricelist." msgstr "" -"Na temelju troškova koje ste imali na projektu, što bi bio prihod ako svi " -"ovi troškovi su obračunati po normalnoj prodajnoj cijeni proistekli iz " -"cjenika." +"Na temelju troškova koje ste imali na projektu, što bi bio prihod da su svi " +"ovi troškovi obračunati po normalnoj prodajnoj cijeni iz cjenika." #. module: account_analytic_analysis #: field:account.analytic.account,user_ids:0 #: field:account_analytic_analysis.summary.user,user:0 msgid "User" -msgstr "" +msgstr "Korisnik" #. module: account_analytic_analysis #: field:account.analytic.account,ca_to_invoice:0 msgid "Uninvoiced Amount" -msgstr "" +msgstr "Nefakturirani iznos" #. module: account_analytic_analysis #: help:account.analytic.account,real_margin:0 msgid "Computed using the formula: Invoiced Amount - Total Costs." -msgstr "" +msgstr "Izračun: Iznos računa - Ukupni troškovi." #. module: account_analytic_analysis #: field:account.analytic.account,hours_qtt_non_invoiced:0 @@ -166,12 +165,12 @@ msgstr "" #. module: account_analytic_analysis #: model:ir.model,name:account_analytic_analysis.model_account_analytic_analysis_summary_user msgid "Hours Summary by User" -msgstr "" +msgstr "Uk. sati po korisniku" #. module: account_analytic_analysis #: field:account.analytic.account,ca_invoiced:0 msgid "Invoiced Amount" -msgstr "" +msgstr "Iznos na računu" #. module: account_analytic_analysis #: code:addons/account_analytic_analysis/account_analytic_analysis.py:533 @@ -183,7 +182,7 @@ msgstr "" #. module: account_analytic_analysis #: field:account.analytic.account,last_worked_invoiced_date:0 msgid "Date of Last Invoiced Cost" -msgstr "" +msgstr "Zadnje fakturiranje troška" #. module: account_analytic_analysis #: field:account.analytic.account,hours_qtt_invoiced:0 @@ -193,7 +192,7 @@ msgstr "" #. module: account_analytic_analysis #: field:account.analytic.account,real_margin:0 msgid "Real Margin" -msgstr "Reanal margina" +msgstr "Realna marža" #. module: account_analytic_analysis #: constraint:account.analytic.account:0 @@ -205,17 +204,17 @@ msgstr "" #. module: account_analytic_analysis #: help:account.analytic.account,ca_invoiced:0 msgid "Total customer invoiced amount for this account." -msgstr "" +msgstr "Ukupno fakturirani iznos." #. module: account_analytic_analysis #: model:ir.model,name:account_analytic_analysis.model_account_analytic_analysis_summary_month msgid "Hours summary by month" -msgstr "" +msgstr "Uk. sati po mjesecima" #. module: account_analytic_analysis #: help:account.analytic.account,real_margin_rate:0 msgid "Computes using the formula: (Real Margin / Total Costs) * 100." -msgstr "" +msgstr "Computes using the formula: (Real Margin / Total Costs) * 100." #. module: account_analytic_analysis #: help:account.analytic.account,hours_qtt_non_invoiced:0 @@ -227,12 +226,12 @@ msgstr "" #. module: account_analytic_analysis #: view:account.analytic.account:0 msgid "Analytic accounts" -msgstr "" +msgstr "Analitička konta" #. module: account_analytic_analysis #: field:account.analytic.account,remaining_ca:0 msgid "Remaining Revenue" -msgstr "" +msgstr "Preostali prihod" #. module: account_analytic_analysis #: help:account.analytic.account,ca_to_invoice:0 @@ -240,6 +239,8 @@ msgid "" "If invoice from analytic account, the remaining amount you can invoice to " "the customer based on the total costs." msgstr "" +"Ako fakturirate sa analitičkog konta, preostali iznos kojeg možete " +"fakturirati kupcu prema ukupnim troškovima." #. module: account_analytic_analysis #: help:account.analytic.account,revenue_per_hour:0 @@ -255,20 +256,20 @@ msgstr "" #: field:account_analytic_analysis.summary.month,unit_amount:0 #: field:account_analytic_analysis.summary.user,unit_amount:0 msgid "Total Time" -msgstr "" +msgstr "Ukupno vrijeme" #. module: account_analytic_analysis #: field:account.analytic.account,month_ids:0 #: field:account_analytic_analysis.summary.month,month:0 msgid "Month" -msgstr "" +msgstr "Mjesec" #. module: account_analytic_analysis #: field:account_analytic_analysis.summary.month,account_id:0 #: field:account_analytic_analysis.summary.user,account_id:0 #: model:ir.model,name:account_analytic_analysis.model_account_analytic_account msgid "Analytic Account" -msgstr "" +msgstr "Konto analitike" #. module: account_analytic_analysis #: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_managed_overpassed @@ -280,7 +281,7 @@ msgstr "" #: 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 "All Uninvoiced Entries" -msgstr "" +msgstr "Sve nefakturirane stavke" #. module: account_analytic_analysis #: field:account.analytic.account,hours_quantity:0 @@ -290,7 +291,7 @@ msgstr "" #. module: account_analytic_analysis #: constraint:account.analytic.account:0 msgid "Error! You can not create recursive analytic accounts." -msgstr "" +msgstr "Error! You can not create recursive analytic accounts." #. module: account_analytic_analysis #: help:account.analytic.account,total_cost:0 @@ -298,6 +299,8 @@ msgid "" "Total of costs for this account. It includes real costs (from invoices) and " "indirect costs, like time spent on timesheets." msgstr "" +"Ukupni troškovi ovog konta. Uključuje stvarne troškove (iz računa) i " +"indirektne troškove kao što je vrijeme utrošeno po evidencijama rada" #~ msgid "Invalid XML for View Architecture!" #~ msgstr "Neispravan XML za arhitekturu prikaza!" @@ -330,3 +333,6 @@ msgstr "" #~ "Promijeni račun analitički prikaz \n" #~ "za važne podatke za projekt menadžer od usluznih tvrtki.\n" #~ "Dodaj izbornik za prikaz relevantne informacije za svakog menadžera." + +#~ msgid "My Accounts" +#~ msgstr "My Accounts" diff --git a/addons/account_analytic_default/__openerp__.py b/addons/account_analytic_default/__openerp__.py index e46f285d9c6..a842275cdee 100644 --- a/addons/account_analytic_default/__openerp__.py +++ b/addons/account_analytic_default/__openerp__.py @@ -22,7 +22,7 @@ { 'name' : 'Account Analytic Defaults', 'version' : '1.0', - 'category' : 'Hidden', + "category": 'Accounting & Finance', 'complexity': "normal", 'description': """Set default values for your analytic accounts Allows to automatically select analytic accounts based on criterions: diff --git a/addons/account_analytic_default/i18n/hr.po b/addons/account_analytic_default/i18n/hr.po index 88376676f6d..9fb8cc18a77 100644 --- a/addons/account_analytic_default/i18n/hr.po +++ b/addons/account_analytic_default/i18n/hr.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-08-02 20:44+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) <Unknown>\n" +"PO-Revision-Date: 2011-12-08 16:13+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-05 05:25+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_analytic_default #: model:ir.module.module,shortdesc:account_analytic_default.module_meta_information @@ -28,6 +28,9 @@ msgid "" "default (eg. create new cutomer invoice or Sale order if we select this " "partner, it will automatically take this as an analytical account)" msgstr "" +"select a partner which will use analytical account specified in analytic " +"default (eg. create new cutomer invoice or Sale order if we select this " +"partner, it will automatically take this as an analytical account)" #. module: account_analytic_default #: model:ir.actions.act_window,name:account_analytic_default.analytic_rule_action_partner @@ -39,27 +42,27 @@ msgstr "Pravila analitike" #. module: account_analytic_default #: help:account.analytic.default,analytic_id:0 msgid "Analytical Account" -msgstr "" +msgstr "Analitički konto" #. module: account_analytic_default #: view:account.analytic.default:0 msgid "Current" -msgstr "" +msgstr "Trenutno" #. module: account_analytic_default #: view:account.analytic.default:0 msgid "Group By..." -msgstr "" +msgstr "Grupiraj po..." #. module: account_analytic_default #: help:account.analytic.default,date_stop:0 msgid "Default end date for this Analytical Account" -msgstr "" +msgstr "Zadani krajnji datum za ovaj analitički konto" #. module: account_analytic_default #: model:ir.model,name:account_analytic_default.model_stock_picking msgid "Picking List" -msgstr "" +msgstr "Skladišni dokument" #. module: account_analytic_default #: view:account.analytic.default:0 @@ -73,11 +76,14 @@ msgid "" "default (eg. create new cutomer invoice or Sale order if we select this " "company, it will automatically take this as an analytical account)" msgstr "" +"select a company which will use analytical account specified in analytic " +"default (eg. create new cutomer invoice or Sale order if we select this " +"company, it will automatically take this as an analytical account)" #. module: account_analytic_default #: help:account.analytic.default,date_start:0 msgid "Default start date for this Analytical Account" -msgstr "" +msgstr "Zadani početni datum za ovaj analitički konto" #. module: account_analytic_default #: view:account.analytic.default:0 @@ -88,13 +94,13 @@ msgstr "Proizvod" #. module: account_analytic_default #: model:ir.model,name:account_analytic_default.model_account_analytic_default msgid "Analytic Distribution" -msgstr "" +msgstr "Analytic Distribution" #. module: account_analytic_default #: view:account.analytic.default:0 #: field:account.analytic.default,company_id:0 msgid "Company" -msgstr "Tvrtka" +msgstr "Organizacija" #. module: account_analytic_default #: view:account.analytic.default:0 @@ -110,13 +116,14 @@ msgstr "Stavke" #. module: account_analytic_default #: field:account.analytic.default,date_stop:0 msgid "End Date" -msgstr "Završni datum" +msgstr "Završni Datum" #. module: account_analytic_default #: help:account.analytic.default,user_id:0 msgid "" "select a user which will use analytical account specified in analytic default" msgstr "" +"select a user which will use analytical account specified in analytic default" #. module: account_analytic_default #: view:account.analytic.default:0 @@ -145,33 +152,36 @@ msgid "" "default (eg. create new cutomer invoice or Sale order if we select this " "product, it will automatically take this as an analytical account)" msgstr "" +"odaberite proizvod koji će koristiti analitički račun naveden u analitičkim " +"zadanim računima (npr. stvaranje novih računa kupaca ili prodajnih naloga " +"ukoliko smo odabrali ovaj proizvod, automatski će se uzeti analitički račun)" #. module: account_analytic_default #: field:account.analytic.default,sequence:0 msgid "Sequence" -msgstr "Redoslijed" +msgstr "Sekvenca" #. module: account_analytic_default #: model:ir.model,name:account_analytic_default.model_account_invoice_line msgid "Invoice Line" -msgstr "" +msgstr "Stavka računa" #. module: account_analytic_default #: view:account.analytic.default:0 #: field:account.analytic.default,analytic_id:0 msgid "Analytic Account" -msgstr "Analitički račun" +msgstr "Konto analitike" #. module: account_analytic_default #: view:account.analytic.default:0 msgid "Accounts" -msgstr "" +msgstr "Konta" #. module: account_analytic_default #: view:account.analytic.default:0 #: field:account.analytic.default,partner_id:0 msgid "Partner" -msgstr "Stranka" +msgstr "Partner" #. module: account_analytic_default #: field:account.analytic.default,date_start:0 @@ -183,11 +193,12 @@ msgstr "Početni datum" msgid "" "Gives the sequence order when displaying a list of analytic distribution" msgstr "" +"Gives the sequence order when displaying a list of analytic distribution" #. module: account_analytic_default #: model:ir.model,name:account_analytic_default.model_sale_order_line msgid "Sales Order Line" -msgstr "" +msgstr "Stavka prodajnog naloga" #~ msgid "Invalid XML for View Architecture!" #~ msgstr "Neispravan XML za arhitekturu prikaza!" diff --git a/addons/account_analytic_plans/i18n/hr.po b/addons/account_analytic_plans/i18n/hr.po index f34ae4e36d3..8a203825445 100644 --- a/addons/account_analytic_plans/i18n/hr.po +++ b/addons/account_analytic_plans/i18n/hr.po @@ -7,20 +7,21 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-03 16:56+0000\n" -"PO-Revision-Date: 2011-10-17 21:05+0000\n" -"Last-Translator: Ivan Marijanović <Unknown>\n" +"PO-Revision-Date: 2011-12-08 16:14+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-05 05:21+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_analytic_plans #: view:analytic.plan.create.model:0 msgid "" "This distribution model has been saved.You will be able to reuse it later." msgstr "" +"This distribution model has been saved.You will be able to reuse it later." #. module: account_analytic_plans #: field:account.analytic.plan.instance.line,plan_id:0 @@ -30,7 +31,7 @@ msgstr "Šifra plana" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 msgid "From Date" -msgstr "" +msgstr "From Date" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 @@ -60,7 +61,7 @@ msgstr "" #: view:account.crossovered.analytic:0 #: field:account.crossovered.analytic,journal_ids:0 msgid "Analytic Journal" -msgstr "Analitički Dnevnik" +msgstr "Dnevnik analitike" #. module: account_analytic_plans #: view:account.analytic.plan.line:0 @@ -82,12 +83,12 @@ msgstr "Instanca analitičkog plana" #. module: account_analytic_plans #: view:analytic.plan.create.model:0 msgid "Ok" -msgstr "" +msgstr "U redu" #. module: account_analytic_plans #: constraint:account.move.line:0 msgid "You can not create move line on closed account." -msgstr "" +msgstr "Ne možete kreirati stavke prometa za zatvoreni račun." #. module: account_analytic_plans #: field:account.analytic.plan.instance,plan_id:0 @@ -97,12 +98,12 @@ msgstr "Plan modela" #. module: account_analytic_plans #: field:account.analytic.plan.instance,account2_ids:0 msgid "Account2 Id" -msgstr "Šifra računa 2" +msgstr "Konto2 Id" #. module: account_analytic_plans #: field:account.analytic.plan.instance,account_ids:0 msgid "Account Id" -msgstr "Šifra računa" +msgstr "Account Id" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 @@ -117,37 +118,37 @@ msgstr "Šifra" #. module: account_analytic_plans #: sql_constraint:account.move.line:0 msgid "Wrong credit or debit value in accounting entry !" -msgstr "" +msgstr "Pogrešno kreditna ili debitnom vrijednost unešene stavke!" #. module: account_analytic_plans #: field:account.analytic.plan.instance,account6_ids:0 msgid "Account6 Id" -msgstr "Šifra računa 6" +msgstr "Konto6 Id" #. module: account_analytic_plans #: model:ir.ui.menu,name:account_analytic_plans.menu_account_analytic_multi_plan_action msgid "Multi Plans" -msgstr "" +msgstr "Višestruki planovi" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_account_bank_statement_line msgid "Bank Statement Line" -msgstr "" +msgstr "Redak bankovnog izvoda" #. module: account_analytic_plans #: field:account.analytic.plan.instance.line,analytic_account_id:0 msgid "Analytic Account" -msgstr "Račun analitike" +msgstr "Konto analitike" #. module: account_analytic_plans #: sql_constraint:account.journal:0 msgid "The code of the journal must be unique per company !" -msgstr "" +msgstr "Šifra dnevnika mora biti jedinstvena (za organizaciju) !" #. module: account_analytic_plans #: field:account.crossovered.analytic,ref:0 msgid "Analytic Account Reference" -msgstr "" +msgstr "Analytic Account Reference" #. module: account_analytic_plans #: constraint:account.move.line:0 @@ -158,7 +159,7 @@ msgstr "" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_sale_order_line msgid "Sales Order Line" -msgstr "" +msgstr "Stavka prodajnog naloga" #. module: account_analytic_plans #: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:47 @@ -209,7 +210,7 @@ msgstr "Analitički planovi" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 msgid "Perc(%)" -msgstr "" +msgstr "Perc(%)" #. module: account_analytic_plans #: field:account.analytic.plan.line,max_required:0 @@ -231,17 +232,17 @@ msgstr "Retci analitičkog plana" msgid "" "The amount of the voucher must be the same amount as the one on the " "statement line" -msgstr "" +msgstr "Iznos vaučera mora biti jednak iznosu stavke izvoda banke/blagajne." #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_account_invoice_line msgid "Invoice Line" -msgstr "" +msgstr "Stavka računa" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 msgid "Currency" -msgstr "" +msgstr "Valuta" #. module: account_analytic_plans #: field:account.crossovered.analytic,date1:0 @@ -251,12 +252,12 @@ msgstr "Početni datum" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 msgid "Company" -msgstr "" +msgstr "Organizacija" #. module: account_analytic_plans #: field:account.analytic.plan.instance,account5_ids:0 msgid "Account5 Id" -msgstr "Šifra računa 5" +msgstr "Konto5 Id" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_account_analytic_plan_instance_line @@ -271,7 +272,7 @@ msgstr "Korijensko konto" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 msgid "To Date" -msgstr "" +msgstr "To Date" #. module: account_analytic_plans #: code:addons/account_analytic_plans/account_analytic_plans.py:321 @@ -288,12 +289,12 @@ msgstr "Ne prikazuj prazne retke" #. module: account_analytic_plans #: model:ir.actions.act_window,name:account_analytic_plans.action_analytic_plan_create_model msgid "analytic.plan.create.model.action" -msgstr "" +msgstr "analytic.plan.create.model.action" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 msgid "Analytic Account :" -msgstr "" +msgstr "Konto analitike :" #. module: account_analytic_plans #: model:ir.module.module,description:account_analytic_plans.module_meta_information @@ -336,7 +337,7 @@ msgstr "" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 msgid "Analytic Account Reference:" -msgstr "Veza analitičkog računa:" +msgstr "Analytic Account Reference:" #. module: account_analytic_plans #: field:account.analytic.plan.line,name:0 @@ -346,22 +347,22 @@ msgstr "Naziv plana" #. module: account_analytic_plans #: field:account.analytic.plan,default_instance_id:0 msgid "Default Entries" -msgstr "Zadani unosi" +msgstr "Uobičajene stavke" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_account_move_line msgid "Journal Items" -msgstr "" +msgstr "Stavke glavne knjige" #. module: account_analytic_plans #: field:account.analytic.plan.instance,account1_ids:0 msgid "Account1 Id" -msgstr "Šifra računa 1" +msgstr "Konto1 Id" #. module: account_analytic_plans #: constraint:account.move.line:0 msgid "Company must be same for its related account and period." -msgstr "" +msgstr "Company must be same for its related account and period." #. module: account_analytic_plans #: field:account.analytic.plan.line,min_required:0 @@ -371,7 +372,7 @@ msgstr "Minimalno dozvoljeno (%)" #. module: account_analytic_plans #: help:account.analytic.plan.line,root_analytic_id:0 msgid "Root account of this plan." -msgstr "Korijenski račun ovog plana." +msgstr "Root account of this plan." #. module: account_analytic_plans #: code:addons/account_analytic_plans/account_analytic_plans.py:201 @@ -384,7 +385,7 @@ msgstr "" #. module: account_analytic_plans #: view:analytic.plan.create.model:0 msgid "Save This Distribution as a Model" -msgstr "" +msgstr "Save This Distribution as a Model" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 @@ -400,7 +401,7 @@ msgstr "" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_account_crossovered_analytic msgid "Print Crossovered Analytic" -msgstr "" +msgstr "Print Crossovered Analytic" #. module: account_analytic_plans #: code:addons/account_analytic_plans/account_analytic_plans.py:321 @@ -412,28 +413,28 @@ msgstr "" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_account_bank_statement msgid "Bank Statement" -msgstr "" +msgstr "Izvod banke" #. module: account_analytic_plans #: field:account.analytic.plan.instance,account3_ids:0 msgid "Account3 Id" -msgstr "Šifra računa 3" +msgstr "Konto3 Id" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_account_invoice msgid "Invoice" -msgstr "" +msgstr "Račun" #. module: account_analytic_plans #: view:account.crossovered.analytic:0 #: view:analytic.plan.create.model:0 msgid "Cancel" -msgstr "Poništi" +msgstr "Odustani" #. module: account_analytic_plans #: field:account.analytic.plan.instance,account4_ids:0 msgid "Account4 Id" -msgstr "Šifra računa 4" +msgstr "Konto4 Id" #. module: account_analytic_plans #: view:account.analytic.plan.instance.line:0 @@ -454,7 +455,7 @@ msgstr "na" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 msgid "Account Name" -msgstr "Naziv računa" +msgstr "Naziv konta" #. module: account_analytic_plans #: view:account.analytic.plan.instance.line:0 @@ -469,7 +470,7 @@ msgstr "Šifra raspodjele" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 msgid "%" -msgstr "" +msgstr "%" #. module: account_analytic_plans #: report:account.analytic.account.crossovered.analytic:0 @@ -485,22 +486,22 @@ msgstr "100.00%" #: field:account.move.line,analytics_id:0 #: model:ir.model,name:account_analytic_plans.model_account_analytic_default msgid "Analytic Distribution" -msgstr "Analitička raspodjela" +msgstr "Analytic Distribution" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_account_journal msgid "Journal" -msgstr "" +msgstr "Dnevnik" #. module: account_analytic_plans #: model:ir.model,name:account_analytic_plans.model_analytic_plan_create_model msgid "analytic.plan.create.model" -msgstr "" +msgstr "analytic.plan.create.model" #. module: account_analytic_plans #: field:account.crossovered.analytic,date2:0 msgid "End Date" -msgstr "Završni datum" +msgstr "Završni Datum" #. module: account_analytic_plans #: model:ir.actions.act_window,name:account_analytic_plans.account_analytic_instance_model_open @@ -515,7 +516,7 @@ msgstr "Sekvenca" #. module: account_analytic_plans #: sql_constraint:account.journal:0 msgid "The name of the journal must be unique per company !" -msgstr "" +msgstr "Naziv dnevnika mora biti jedinstven za jednu organizaciju!" #. module: account_analytic_plans #: code:addons/account_analytic_plans/account_analytic_plans.py:214 @@ -526,7 +527,7 @@ msgstr "" #. module: account_analytic_plans #: constraint:account.move.line:0 msgid "You can not create move line on view account." -msgstr "" +msgstr "Ne može se knjižiti na sintetički konto." #~ msgid "Select Information" #~ msgstr "Odaberi informacije" diff --git a/addons/account_anglo_saxon/purchase.py b/addons/account_anglo_saxon/purchase.py index 6bda54dbe17..30d196a84ec 100644 --- a/addons/account_anglo_saxon/purchase.py +++ b/addons/account_anglo_saxon/purchase.py @@ -38,3 +38,5 @@ class purchase_order(osv.osv): line.update({'account_id': new_account_id}) return line purchase_order() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_asset/__openerp__.py b/addons/account_asset/__openerp__.py index f3d00b08893..5ae0629c4eb 100644 --- a/addons/account_asset/__openerp__.py +++ b/addons/account_asset/__openerp__.py @@ -49,6 +49,7 @@ ], "active": False, "installable": True, + "application": True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_asset/account_asset_view.xml b/addons/account_asset/account_asset_view.xml index d28579a6c1a..e986ef4bf0d 100644 --- a/addons/account_asset/account_asset_view.xml +++ b/addons/account_asset/account_asset_view.xml @@ -32,11 +32,11 @@ <field name="prorata"/> <field name="open_asset"/> </group> - <group col="2" colspan="2" groups="analytic.group_analytic_accounting"> - <separator string="Analytic information" colspan="4"/> - <newline/> - <field name="account_analytic_id"/> - </group> + <group col="2" colspan="2" groups="analytic.group_analytic_accounting"> + <separator string="Analytic information" colspan="4"/> + <newline/> + <field name="account_analytic_id"/> + </group> <separator string="Notes" colspan="4"/> <field name="note" colspan="4" nolabel="1"/> </form> @@ -317,7 +317,7 @@ <field name="name">Review Asset Categories</field> <field name="res_model">account.asset.category</field> <field name="view_type">form</field> - <field name="view_mode">form</field> + <field name="view_mode">tree,form</field> </record> <record id="asset_category_form_view_todo" model="ir.actions.todo"> diff --git a/addons/account_asset/i18n/de.po b/addons/account_asset/i18n/de.po index 41ca6dd0fbe..5b6c044d3c2 100755 --- a/addons/account_asset/i18n/de.po +++ b/addons/account_asset/i18n/de.po @@ -8,31 +8,31 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2009-11-24 12:54+0000\n" -"PO-Revision-Date: 2011-07-12 12:04+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"PO-Revision-Date: 2011-11-29 08:00+0000\n" +"Last-Translator: Ferdinand @ Camptocamp <Unknown>\n" "Language-Team: German <de@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-30 05:27+0000\n" +"X-Generator: Launchpad (build 14404)\n" #. module: account_asset #: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_normal #: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list_normal msgid "Open Assets" -msgstr "" +msgstr "Anlage (Entwurf)" #. module: account_asset #: field:account.asset.property,method_end:0 #: field:account.asset.property.history,method_end:0 msgid "Ending date" -msgstr "" +msgstr "Ende Datum" #. module: account_asset #: view:account.asset.asset:0 msgid "Depreciation board" -msgstr "" +msgstr "Abschreibungs-Tableau" #. module: account_asset #: view:account.asset.asset:0 @@ -45,61 +45,61 @@ msgstr "" #: model:ir.model,name:account_asset.model_account_asset_asset #: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_form msgid "Asset" -msgstr "" +msgstr "Anlagegüter" #. module: account_asset #: constraint:ir.actions.act_window:0 msgid "Invalid model name in the action definition." -msgstr "" +msgstr "Ungültiger Modellname in der Aktionsdefinition." #. module: account_asset #: selection:account.asset.property,method:0 msgid "Linear" -msgstr "" +msgstr "Linear" #. module: account_asset #: view:account.asset.asset:0 msgid "Change duration" -msgstr "" +msgstr "Verändere Lebensdauer" #. module: account_asset #: field:account.asset.asset,child_ids:0 msgid "Child assets" -msgstr "" +msgstr "untergeordnete Anlagengüter" #. module: account_asset #: field:account.asset.board,value_asset:0 msgid "Asset Value" -msgstr "" +msgstr "Anlagenwert" #. module: account_asset #: wizard_field:account.asset.modify,init,name:0 msgid "Reason" -msgstr "" +msgstr "Begründung" #. module: account_asset #: view:account.asset.asset:0 #: field:account.asset.asset,entry_ids:0 #: wizard_field:account.asset.compute,asset_compute,move_ids:0 msgid "Entries" -msgstr "" +msgstr "Buchungen" #. module: account_asset #: wizard_view:account.asset.compute,asset_compute:0 msgid "Generated entries" -msgstr "" +msgstr "erzeugte Buchungen" #. module: account_asset #: wizard_field:account.asset.modify,init,method_delay:0 #: field:account.asset.property,method_delay:0 #: field:account.asset.property.history,method_delay:0 msgid "Number of interval" -msgstr "" +msgstr "Anzahl der Intervalle" #. module: account_asset #: wizard_button:account.asset.compute,asset_compute,asset_open:0 msgid "Open entries" -msgstr "" +msgstr "offene Buchungen" #. module: account_asset #: view:account.asset.asset:0 @@ -108,102 +108,102 @@ msgstr "" #: model:ir.ui.menu,name:account_asset.menu_finance_Assets #: model:ir.ui.menu,name:account_asset.menu_finance_config_Assets msgid "Assets" -msgstr "" +msgstr "Anlagegüter" #. module: account_asset #: selection:account.asset.property,method:0 msgid "Progressive" -msgstr "" +msgstr "Progressiv" #. module: account_asset #: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_draft #: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list_draft msgid "Draft Assets" -msgstr "" +msgstr "Anlagegüter (Entwurf)" #. module: account_asset #: wizard_view:account.asset.modify,init:0 #: wizard_field:account.asset.modify,init,note:0 #: view:account.asset.property.history:0 msgid "Notes" -msgstr "" +msgstr "Bemerkungen" #. module: account_asset #: view:account.asset.asset:0 msgid "Change history" -msgstr "" +msgstr "Bearbeitungshistorie" #. module: account_asset #: view:account.asset.asset:0 msgid "Depreciation entries" -msgstr "" +msgstr "Abschreibungsbuchungen" #. module: account_asset #: view:account.asset.asset:0 msgid "Methods" -msgstr "" +msgstr "Methoden" #. module: account_asset #: wizard_view:account.asset.modify,init:0 msgid "Asset properties to modify" -msgstr "" +msgstr "zu verändernde Anlagenmerkmale" #. module: account_asset #: field:account.asset.asset,partner_id:0 msgid "Partner" -msgstr "" +msgstr "Partner" #. module: account_asset #: wizard_field:account.asset.modify,init,method_period:0 #: field:account.asset.property,method_period:0 #: field:account.asset.property.history,method_period:0 msgid "Period per interval" -msgstr "" +msgstr "Perioden pro Intervall" #. module: account_asset #: view:account.asset.asset:0 msgid "Depreciation duration" -msgstr "" +msgstr "Abschreibungsdauer" #. module: account_asset #: field:account.asset.property,account_analytic_id:0 msgid "Analytic account" -msgstr "" +msgstr "Analytisches Konto" #. module: account_asset #: field:account.asset.property,state:0 msgid "State" -msgstr "" +msgstr "Status" #. module: account_asset #: view:account.asset.asset:0 msgid "Depreciation methods" -msgstr "" +msgstr "Abschreibungsmethode" #. module: account_asset #: view:account.asset.asset:0 msgid "Other information" -msgstr "" +msgstr "Andere Informationen" #. module: account_asset #: field:account.asset.board,value_asset_cumul:0 msgid "Cumul. value" -msgstr "" +msgstr "kummulierter Betrag" #. module: account_asset #: view:account.asset.property:0 msgid "Assets methods" -msgstr "" +msgstr "Anlagen Methoden" #. module: account_asset #: constraint:ir.ui.view:0 msgid "Invalid XML for View Architecture!" -msgstr "" +msgstr "Fehlerhafter XML-Code für diese Ansicht!" #. module: account_asset #: model:ir.model,name:account_asset.model_account_asset_property msgid "Asset property" -msgstr "" +msgstr "Anlagenmerkmale" #. module: account_asset #: wizard_view:account.asset.compute,asset_compute:0 @@ -212,30 +212,30 @@ msgstr "" #: model:ir.actions.wizard,name:account_asset.wizard_asset_compute #: model:ir.ui.menu,name:account_asset.menu_wizard_asset_compute msgid "Compute assets" -msgstr "" +msgstr "Berechne Anlagen" #. module: account_asset #: wizard_view:account.asset.modify,init:0 #: wizard_button:account.asset.modify,init,asset_modify:0 #: model:ir.actions.wizard,name:account_asset.wizard_asset_modify msgid "Modify asset" -msgstr "" +msgstr "Verändere Anlagegut" #. module: account_asset #: view:account.asset.asset:0 msgid "Confirm asset" -msgstr "" +msgstr "Anlagegut bestätigen" #. module: account_asset #: view:account.asset.property.history:0 #: model:ir.model,name:account_asset.model_account_asset_property_history msgid "Asset history" -msgstr "" +msgstr "Anlagenhistorie" #. module: account_asset #: field:account.asset.property,date:0 msgid "Date created" -msgstr "" +msgstr "Erstellungsdatum" #. module: account_asset #: model:ir.module.module,description:account_asset.module_meta_information @@ -252,211 +252,213 @@ msgstr "" #: field:account.asset.board,value_gross:0 #: field:account.asset.property,value_total:0 msgid "Gross value" -msgstr "" +msgstr "Anschaffungswert" #. module: account_asset #: selection:account.asset.property,method_time:0 msgid "Ending period" -msgstr "" +msgstr "Periodenende" #. module: account_asset #: field:account.asset.board,name:0 msgid "Asset name" -msgstr "" +msgstr "Anlagenname" #. module: account_asset #: view:account.asset.asset:0 msgid "Accounts information" -msgstr "" +msgstr "Konto Information" #. module: account_asset #: field:account.asset.asset,note:0 #: field:account.asset.category,note:0 #: field:account.asset.property.history,note:0 msgid "Note" -msgstr "" +msgstr "Notiz" #. module: account_asset #: selection:account.asset.asset,state:0 #: selection:account.asset.property,state:0 msgid "Draft" -msgstr "" +msgstr "Entwurf" #. module: account_asset #: field:account.asset.property,type:0 msgid "Depr. method type" -msgstr "" +msgstr "Abschreibungsmethode" #. module: account_asset #: field:account.asset.property,account_asset_id:0 msgid "Asset account" -msgstr "" +msgstr "Anlagenkonto" #. module: account_asset #: field:account.asset.property.history,asset_property_id:0 msgid "Method" -msgstr "" +msgstr "Methode" #. module: account_asset #: selection:account.asset.asset,state:0 msgid "Normal" -msgstr "" +msgstr "Normal" #. module: account_asset #: field:account.asset.property,method_progress_factor:0 msgid "Progressif factor" -msgstr "" +msgstr "Progressionsfaktor" #. module: account_asset #: field:account.asset.asset,localisation:0 msgid "Localisation" -msgstr "" +msgstr "Lokalisation" #. module: account_asset #: field:account.asset.property,method:0 msgid "Computation method" -msgstr "" +msgstr "Berechnungsmethode" #. module: account_asset #: field:account.asset.property,method_time:0 msgid "Time method" -msgstr "" +msgstr "Zeitmethode" #. module: account_asset #: field:account.asset.asset,active:0 msgid "Active" -msgstr "" +msgstr "Aktiv" #. module: account_asset #: field:account.asset.property.history,user_id:0 msgid "User" -msgstr "" +msgstr "Benutzer" #. module: account_asset #: field:account.asset.asset,property_ids:0 msgid "Asset method name" -msgstr "" +msgstr "Anlagenmethoden Bezeichnung" #. module: account_asset #: field:account.asset.asset,date:0 #: field:account.asset.property.history,date:0 msgid "Date" -msgstr "" +msgstr "Datum" #. module: account_asset #: field:account.asset.board,value_net:0 msgid "Net value" -msgstr "" +msgstr "Netto Wert" #. module: account_asset #: wizard_view:account.asset.close,init:0 #: model:ir.actions.wizard,name:account_asset.wizard_asset_close msgid "Close asset" -msgstr "" +msgstr "Anlagegut schliessen" #. module: account_asset #: field:account.asset.property,history_ids:0 msgid "History" -msgstr "" +msgstr "Verlauf" #. module: account_asset #: field:account.asset.property,account_actif_id:0 msgid "Depreciation account" -msgstr "" +msgstr "AfA-Konto" #. module: account_asset #: field:account.asset.asset,period_id:0 #: wizard_field:account.asset.compute,init,period_id:0 msgid "Period" -msgstr "" +msgstr "Periode" #. module: account_asset #: model:ir.actions.act_window,name:account_asset.action_account_asset_category_form #: model:ir.ui.menu,name:account_asset.menu_action_account_asset_category_form msgid "Asset Category" -msgstr "" +msgstr "Anlagenkategorie" #. module: account_asset #: wizard_button:account.asset.close,init,end:0 #: wizard_button:account.asset.compute,init,end:0 #: wizard_button:account.asset.modify,init,end:0 msgid "Cancel" -msgstr "" +msgstr "Abbrechen" #. module: account_asset #: selection:account.asset.asset,state:0 #: wizard_button:account.asset.compute,asset_compute,end:0 #: selection:account.asset.property,state:0 msgid "Close" -msgstr "" +msgstr "Schließen" #. module: account_asset #: selection:account.asset.property,state:0 msgid "Open" -msgstr "" +msgstr "Öffnen" #. module: account_asset #: constraint:ir.model:0 msgid "" "The Object name must start with x_ and not contain any special character !" msgstr "" +"Der Objektname muss mit \"x_\" beginnen und darf keine Sonderzeichen " +"beinhalten!" #. module: account_asset #: model:ir.module.module,shortdesc:account_asset.module_meta_information msgid "Asset management" -msgstr "" +msgstr "Anlagenbuchhaltung" #. module: account_asset #: view:account.asset.board:0 #: field:account.asset.property,board_ids:0 #: model:ir.model,name:account_asset.model_account_asset_board msgid "Asset board" -msgstr "" +msgstr "Anlagenspiegel" #. module: account_asset #: field:account.asset.asset,state:0 msgid "Global state" -msgstr "" +msgstr "Globaler Status" #. module: account_asset #: selection:account.asset.property,method_time:0 msgid "Delay" -msgstr "" +msgstr "Verzögerung" #. module: account_asset #: wizard_view:account.asset.close,init:0 msgid "General information" -msgstr "" +msgstr "Allgemeine Informationen" #. module: account_asset #: field:account.asset.property,journal_analytic_id:0 msgid "Analytic journal" -msgstr "" +msgstr "analytisches Journal" #. module: account_asset #: field:account.asset.property,name:0 msgid "Method name" -msgstr "" +msgstr "Methodenname" #. module: account_asset #: field:account.asset.property,journal_id:0 msgid "Journal" -msgstr "" +msgstr "Journal" #. module: account_asset #: field:account.asset.property.history,name:0 msgid "History name" -msgstr "" +msgstr "Verlauf Bezeichnung" #. module: account_asset #: view:account.asset.asset:0 msgid "Close method" -msgstr "" +msgstr "Abschlussmethode" #. module: account_asset #: field:account.asset.property,entry_asset_ids:0 msgid "Asset Entries" -msgstr "" +msgstr "Anlagen" #. module: account_asset #: field:account.asset.asset,category_id:0 @@ -464,66 +466,66 @@ msgstr "" #: field:account.asset.category,name:0 #: model:ir.model,name:account_asset.model_account_asset_category msgid "Asset category" -msgstr "" +msgstr "Analgenkategorie" #. module: account_asset #: view:account.asset.asset:0 msgid "Depreciation" -msgstr "" +msgstr "Abschreibung" #. module: account_asset #: field:account.asset.asset,code:0 #: field:account.asset.category,code:0 msgid "Asset code" -msgstr "" +msgstr "Kurzbezeichnung" #. module: account_asset #: field:account.asset.asset,value_total:0 msgid "Total value" -msgstr "" +msgstr "Gesamt Wert" #. module: account_asset #: selection:account.asset.asset,state:0 msgid "View" -msgstr "" +msgstr "Ansicht" #. module: account_asset #: view:account.asset.asset:0 msgid "General info" -msgstr "" +msgstr "Allgemeine Informationen" #. module: account_asset #: field:account.asset.asset,sequence:0 msgid "Sequence" -msgstr "" +msgstr "Sequenz" #. module: account_asset #: field:account.asset.property,value_residual:0 msgid "Residual value" -msgstr "" +msgstr "Buchwert" #. module: account_asset #: wizard_button:account.asset.close,init,asset_close:0 msgid "End of asset" -msgstr "" +msgstr "Ende des Anlagegutes" #. module: account_asset #: selection:account.asset.property,type:0 msgid "Direct" -msgstr "" +msgstr "Direkt" #. module: account_asset #: selection:account.asset.property,type:0 msgid "Indirect" -msgstr "" +msgstr "Indirekt" #. module: account_asset #: field:account.asset.asset,parent_id:0 msgid "Parent asset" -msgstr "" +msgstr "übergeordnetes Anlagegut" #. module: account_asset #: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_tree #: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_tree msgid "Asset Hierarchy" -msgstr "" +msgstr "Anlangenhierarchie" diff --git a/addons/account_asset/i18n/es_AR.po b/addons/account_asset/i18n/es_AR.po new file mode 100644 index 00000000000..9102ec58885 --- /dev/null +++ b/addons/account_asset/i18n/es_AR.po @@ -0,0 +1,529 @@ +# Spanish (Argentina) translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2009-11-24 12:54+0000\n" +"PO-Revision-Date: 2011-11-30 23:41+0000\n" +"Last-Translator: Gustavo Earnshaw <gustavoear@gmail.com>\n" +"Language-Team: Spanish (Argentina) <es_AR@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-02 04:47+0000\n" +"X-Generator: Launchpad (build 14414)\n" + +#. module: account_asset +#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_normal +#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list_normal +msgid "Open Assets" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,method_end:0 +#: field:account.asset.property.history,method_end:0 +msgid "Ending date" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Depreciation board" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +#: field:account.asset.asset,name:0 +#: field:account.asset.board,asset_id:0 +#: field:account.asset.property,asset_id:0 +#: field:account.invoice.line,asset_id:0 +#: field:account.move.line,asset_id:0 +#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_form +#: model:ir.model,name:account_asset.model_account_asset_asset +#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_form +msgid "Asset" +msgstr "" + +#. module: account_asset +#: constraint:ir.actions.act_window:0 +msgid "Invalid model name in the action definition." +msgstr "" + +#. module: account_asset +#: selection:account.asset.property,method:0 +msgid "Linear" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Change duration" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,child_ids:0 +msgid "Child assets" +msgstr "" + +#. module: account_asset +#: field:account.asset.board,value_asset:0 +msgid "Asset Value" +msgstr "valor de activos" + +#. module: account_asset +#: wizard_field:account.asset.modify,init,name:0 +msgid "Reason" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +#: field:account.asset.asset,entry_ids:0 +#: wizard_field:account.asset.compute,asset_compute,move_ids:0 +msgid "Entries" +msgstr "" + +#. module: account_asset +#: wizard_view:account.asset.compute,asset_compute:0 +msgid "Generated entries" +msgstr "" + +#. module: account_asset +#: wizard_field:account.asset.modify,init,method_delay:0 +#: field:account.asset.property,method_delay:0 +#: field:account.asset.property.history,method_delay:0 +msgid "Number of interval" +msgstr "" + +#. module: account_asset +#: wizard_button:account.asset.compute,asset_compute,asset_open:0 +msgid "Open entries" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list +#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list +#: model:ir.ui.menu,name:account_asset.menu_finance_Assets +#: model:ir.ui.menu,name:account_asset.menu_finance_config_Assets +msgid "Assets" +msgstr "" + +#. module: account_asset +#: selection:account.asset.property,method:0 +msgid "Progressive" +msgstr "" + +#. module: account_asset +#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_draft +#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_list_draft +msgid "Draft Assets" +msgstr "" + +#. module: account_asset +#: wizard_view:account.asset.modify,init:0 +#: wizard_field:account.asset.modify,init,note:0 +#: view:account.asset.property.history:0 +msgid "Notes" +msgstr "Notas" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Change history" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Depreciation entries" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Methods" +msgstr "" + +#. module: account_asset +#: wizard_view:account.asset.modify,init:0 +msgid "Asset properties to modify" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,partner_id:0 +msgid "Partner" +msgstr "" + +#. module: account_asset +#: wizard_field:account.asset.modify,init,method_period:0 +#: field:account.asset.property,method_period:0 +#: field:account.asset.property.history,method_period:0 +msgid "Period per interval" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Depreciation duration" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,account_analytic_id:0 +msgid "Analytic account" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,state:0 +msgid "State" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Depreciation methods" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Other information" +msgstr "" + +#. module: account_asset +#: field:account.asset.board,value_asset_cumul:0 +msgid "Cumul. value" +msgstr "" + +#. module: account_asset +#: view:account.asset.property:0 +msgid "Assets methods" +msgstr "" + +#. module: account_asset +#: constraint:ir.ui.view:0 +msgid "Invalid XML for View Architecture!" +msgstr "" + +#. module: account_asset +#: model:ir.model,name:account_asset.model_account_asset_property +msgid "Asset property" +msgstr "" + +#. module: account_asset +#: wizard_view:account.asset.compute,asset_compute:0 +#: wizard_view:account.asset.compute,init:0 +#: wizard_button:account.asset.compute,init,asset_compute:0 +#: model:ir.actions.wizard,name:account_asset.wizard_asset_compute +#: model:ir.ui.menu,name:account_asset.menu_wizard_asset_compute +msgid "Compute assets" +msgstr "" + +#. module: account_asset +#: wizard_view:account.asset.modify,init:0 +#: wizard_button:account.asset.modify,init,asset_modify:0 +#: model:ir.actions.wizard,name:account_asset.wizard_asset_modify +msgid "Modify asset" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Confirm asset" +msgstr "" + +#. module: account_asset +#: view:account.asset.property.history:0 +#: model:ir.model,name:account_asset.model_account_asset_property_history +msgid "Asset history" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,date:0 +msgid "Date created" +msgstr "" + +#. module: account_asset +#: model:ir.module.module,description:account_asset.module_meta_information +msgid "" +"Financial and accounting asset management.\n" +" Allows to define\n" +" * Asset category. \n" +" * Assets.\n" +" *Asset usage period and property.\n" +" " +msgstr "" + +#. module: account_asset +#: field:account.asset.board,value_gross:0 +#: field:account.asset.property,value_total:0 +msgid "Gross value" +msgstr "" + +#. module: account_asset +#: selection:account.asset.property,method_time:0 +msgid "Ending period" +msgstr "" + +#. module: account_asset +#: field:account.asset.board,name:0 +msgid "Asset name" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Accounts information" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,note:0 +#: field:account.asset.category,note:0 +#: field:account.asset.property.history,note:0 +msgid "Note" +msgstr "" + +#. module: account_asset +#: selection:account.asset.asset,state:0 +#: selection:account.asset.property,state:0 +msgid "Draft" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,type:0 +msgid "Depr. method type" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,account_asset_id:0 +msgid "Asset account" +msgstr "" + +#. module: account_asset +#: field:account.asset.property.history,asset_property_id:0 +msgid "Method" +msgstr "" + +#. module: account_asset +#: selection:account.asset.asset,state:0 +msgid "Normal" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,method_progress_factor:0 +msgid "Progressif factor" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,localisation:0 +msgid "Localisation" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,method:0 +msgid "Computation method" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,method_time:0 +msgid "Time method" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,active:0 +msgid "Active" +msgstr "" + +#. module: account_asset +#: field:account.asset.property.history,user_id:0 +msgid "User" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,property_ids:0 +msgid "Asset method name" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,date:0 +#: field:account.asset.property.history,date:0 +msgid "Date" +msgstr "" + +#. module: account_asset +#: field:account.asset.board,value_net:0 +msgid "Net value" +msgstr "" + +#. module: account_asset +#: wizard_view:account.asset.close,init:0 +#: model:ir.actions.wizard,name:account_asset.wizard_asset_close +msgid "Close asset" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,history_ids:0 +msgid "History" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,account_actif_id:0 +msgid "Depreciation account" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,period_id:0 +#: wizard_field:account.asset.compute,init,period_id:0 +msgid "Period" +msgstr "" + +#. module: account_asset +#: model:ir.actions.act_window,name:account_asset.action_account_asset_category_form +#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_category_form +msgid "Asset Category" +msgstr "" + +#. module: account_asset +#: wizard_button:account.asset.close,init,end:0 +#: wizard_button:account.asset.compute,init,end:0 +#: wizard_button:account.asset.modify,init,end:0 +msgid "Cancel" +msgstr "" + +#. module: account_asset +#: selection:account.asset.asset,state:0 +#: wizard_button:account.asset.compute,asset_compute,end:0 +#: selection:account.asset.property,state:0 +msgid "Close" +msgstr "" + +#. module: account_asset +#: selection:account.asset.property,state:0 +msgid "Open" +msgstr "" + +#. module: account_asset +#: constraint:ir.model:0 +msgid "" +"The Object name must start with x_ and not contain any special character !" +msgstr "" + +#. module: account_asset +#: model:ir.module.module,shortdesc:account_asset.module_meta_information +msgid "Asset management" +msgstr "" + +#. module: account_asset +#: view:account.asset.board:0 +#: field:account.asset.property,board_ids:0 +#: model:ir.model,name:account_asset.model_account_asset_board +msgid "Asset board" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,state:0 +msgid "Global state" +msgstr "" + +#. module: account_asset +#: selection:account.asset.property,method_time:0 +msgid "Delay" +msgstr "" + +#. module: account_asset +#: wizard_view:account.asset.close,init:0 +msgid "General information" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,journal_analytic_id:0 +msgid "Analytic journal" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,name:0 +msgid "Method name" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,journal_id:0 +msgid "Journal" +msgstr "" + +#. module: account_asset +#: field:account.asset.property.history,name:0 +msgid "History name" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Close method" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,entry_asset_ids:0 +msgid "Asset Entries" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,category_id:0 +#: view:account.asset.category:0 +#: field:account.asset.category,name:0 +#: model:ir.model,name:account_asset.model_account_asset_category +msgid "Asset category" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "Depreciation" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,code:0 +#: field:account.asset.category,code:0 +msgid "Asset code" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,value_total:0 +msgid "Total value" +msgstr "" + +#. module: account_asset +#: selection:account.asset.asset,state:0 +msgid "View" +msgstr "" + +#. module: account_asset +#: view:account.asset.asset:0 +msgid "General info" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,sequence:0 +msgid "Sequence" +msgstr "" + +#. module: account_asset +#: field:account.asset.property,value_residual:0 +msgid "Residual value" +msgstr "" + +#. module: account_asset +#: wizard_button:account.asset.close,init,asset_close:0 +msgid "End of asset" +msgstr "" + +#. module: account_asset +#: selection:account.asset.property,type:0 +msgid "Direct" +msgstr "" + +#. module: account_asset +#: selection:account.asset.property,type:0 +msgid "Indirect" +msgstr "" + +#. module: account_asset +#: field:account.asset.asset,parent_id:0 +msgid "Parent asset" +msgstr "" + +#. module: account_asset +#: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_tree +#: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_tree +msgid "Asset Hierarchy" +msgstr "" diff --git a/addons/account_asset/i18n/hr.po b/addons/account_asset/i18n/hr.po index 28b856aa75f..6bdd13d286c 100644 --- a/addons/account_asset/i18n/hr.po +++ b/addons/account_asset/i18n/hr.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2009-11-24 12:54+0000\n" -"PO-Revision-Date: 2011-10-17 21:09+0000\n" -"Last-Translator: Ivan Marijanović <Unknown>\n" +"PO-Revision-Date: 2011-12-08 16:13+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" "Language-Team: Croatian <hr@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_asset #: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_list_normal @@ -27,12 +27,12 @@ msgstr "" #: field:account.asset.property,method_end:0 #: field:account.asset.property.history,method_end:0 msgid "Ending date" -msgstr "" +msgstr "Završni datum" #. module: account_asset #: view:account.asset.asset:0 msgid "Depreciation board" -msgstr "" +msgstr "Depreciation board" #. module: account_asset #: view:account.asset.asset:0 @@ -45,7 +45,7 @@ msgstr "" #: model:ir.model,name:account_asset.model_account_asset_asset #: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_form msgid "Asset" -msgstr "Imovina" +msgstr "Osnovno sredstvo" #. module: account_asset #: constraint:ir.actions.act_window:0 @@ -55,7 +55,7 @@ msgstr "Pogrešan naziv modela u definiciji akcije." #. module: account_asset #: selection:account.asset.property,method:0 msgid "Linear" -msgstr "Linearno" +msgstr "Linear" #. module: account_asset #: view:account.asset.asset:0 @@ -108,7 +108,7 @@ msgstr "Otvorene stavke" #: model:ir.ui.menu,name:account_asset.menu_finance_Assets #: model:ir.ui.menu,name:account_asset.menu_finance_config_Assets msgid "Assets" -msgstr "Imovina" +msgstr "Osnovna sredstva" #. module: account_asset #: selection:account.asset.property,method:0 @@ -151,7 +151,7 @@ msgstr "" #. module: account_asset #: field:account.asset.asset,partner_id:0 msgid "Partner" -msgstr "" +msgstr "Partner" #. module: account_asset #: wizard_field:account.asset.modify,init,method_period:0 @@ -168,12 +168,12 @@ msgstr "" #. module: account_asset #: field:account.asset.property,account_analytic_id:0 msgid "Analytic account" -msgstr "" +msgstr "Analitički konto" #. module: account_asset #: field:account.asset.property,state:0 msgid "State" -msgstr "" +msgstr "Stanje" #. module: account_asset #: view:account.asset.asset:0 @@ -212,14 +212,14 @@ msgstr "" #: model:ir.actions.wizard,name:account_asset.wizard_asset_compute #: model:ir.ui.menu,name:account_asset.menu_wizard_asset_compute msgid "Compute assets" -msgstr "" +msgstr "Izračunaj amortizaciju" #. module: account_asset #: wizard_view:account.asset.modify,init:0 #: wizard_button:account.asset.modify,init,asset_modify:0 #: model:ir.actions.wizard,name:account_asset.wizard_asset_modify msgid "Modify asset" -msgstr "" +msgstr "Promjeni sredstvo" #. module: account_asset #: view:account.asset.asset:0 @@ -230,7 +230,7 @@ msgstr "" #: view:account.asset.property.history:0 #: model:ir.model,name:account_asset.model_account_asset_property_history msgid "Asset history" -msgstr "" +msgstr "Povijest osnovnog sredstva" #. module: account_asset #: field:account.asset.property,date:0 @@ -274,13 +274,13 @@ msgstr "" #: field:account.asset.category,note:0 #: field:account.asset.property.history,note:0 msgid "Note" -msgstr "" +msgstr "Bilješka" #. module: account_asset #: selection:account.asset.asset,state:0 #: selection:account.asset.property,state:0 msgid "Draft" -msgstr "" +msgstr "Nacrt" #. module: account_asset #: field:account.asset.property,type:0 @@ -325,12 +325,12 @@ msgstr "" #. module: account_asset #: field:account.asset.asset,active:0 msgid "Active" -msgstr "" +msgstr "Aktivan" #. module: account_asset #: field:account.asset.property.history,user_id:0 msgid "User" -msgstr "" +msgstr "Korisnik" #. module: account_asset #: field:account.asset.asset,property_ids:0 @@ -341,7 +341,7 @@ msgstr "" #: field:account.asset.asset,date:0 #: field:account.asset.property.history,date:0 msgid "Date" -msgstr "" +msgstr "Datum" #. module: account_asset #: field:account.asset.board,value_net:0 @@ -352,12 +352,12 @@ msgstr "" #: wizard_view:account.asset.close,init:0 #: model:ir.actions.wizard,name:account_asset.wizard_asset_close msgid "Close asset" -msgstr "" +msgstr "Zatvori sredstvo" #. module: account_asset #: field:account.asset.property,history_ids:0 msgid "History" -msgstr "" +msgstr "Povijest" #. module: account_asset #: field:account.asset.property,account_actif_id:0 @@ -368,27 +368,27 @@ msgstr "" #: field:account.asset.asset,period_id:0 #: wizard_field:account.asset.compute,init,period_id:0 msgid "Period" -msgstr "" +msgstr "Period" #. module: account_asset #: model:ir.actions.act_window,name:account_asset.action_account_asset_category_form #: model:ir.ui.menu,name:account_asset.menu_action_account_asset_category_form msgid "Asset Category" -msgstr "" +msgstr "Grupa o.sredstva" #. module: account_asset #: wizard_button:account.asset.close,init,end:0 #: wizard_button:account.asset.compute,init,end:0 #: wizard_button:account.asset.modify,init,end:0 msgid "Cancel" -msgstr "" +msgstr "Odustani" #. module: account_asset #: selection:account.asset.asset,state:0 #: wizard_button:account.asset.compute,asset_compute,end:0 #: selection:account.asset.property,state:0 msgid "Close" -msgstr "" +msgstr "Zatvori" #. module: account_asset #: selection:account.asset.property,state:0 @@ -441,12 +441,12 @@ msgstr "" #. module: account_asset #: field:account.asset.property,journal_id:0 msgid "Journal" -msgstr "" +msgstr "Dnevnik" #. module: account_asset #: field:account.asset.property.history,name:0 msgid "History name" -msgstr "" +msgstr "Naziv" #. module: account_asset #: view:account.asset.asset:0 @@ -464,7 +464,7 @@ msgstr "" #: field:account.asset.category,name:0 #: model:ir.model,name:account_asset.model_account_asset_category msgid "Asset category" -msgstr "" +msgstr "Asset category" #. module: account_asset #: view:account.asset.asset:0 @@ -526,4 +526,4 @@ msgstr "" #: model:ir.actions.act_window,name:account_asset.action_account_asset_asset_tree #: model:ir.ui.menu,name:account_asset.menu_action_account_asset_asset_tree msgid "Asset Hierarchy" -msgstr "" +msgstr "hijerarhija imovine" diff --git a/addons/account_cancel/__openerp__.py b/addons/account_cancel/__openerp__.py index ac73a2b8c31..647146f98fb 100644 --- a/addons/account_cancel/__openerp__.py +++ b/addons/account_cancel/__openerp__.py @@ -23,7 +23,7 @@ "name" : "Cancel Entries", "version" : "1.1", "author" : "OpenERP SA", - "category": 'Hidden', + "category": 'Accounting & Finance', 'complexity': "normal", "description": """ Allows cancelling accounting entries. diff --git a/addons/account_cancel/i18n/hr.po b/addons/account_cancel/i18n/hr.po index e64a2743ae6..91a5c4c300f 100644 --- a/addons/account_cancel/i18n/hr.po +++ b/addons/account_cancel/i18n/hr.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-09-10 16:28+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"PO-Revision-Date: 2011-12-08 15:10+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.com>\n" "Language-Team: Croatian <hr@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:46+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_cancel #: model:ir.module.module,description:account_cancel.module_meta_information @@ -25,8 +25,12 @@ msgid "" "journal. If set to true it allows user to cancel entries & invoices.\n" " " msgstr "" +"\n" +" Modul dodaje polje \"Dozvoli otkazivanje\" na formi dnevnika. Knjiženja " +"i računi označenih dnevnika će se moći otkazivati.\n" +" " #. module: account_cancel #: model:ir.module.module,shortdesc:account_cancel.module_meta_information msgid "Account Cancel" -msgstr "" +msgstr "Dozvoli otkazivanje" diff --git a/addons/account_chart/__openerp__.py b/addons/account_chart/__openerp__.py index 948f13b5dcb..d476eb1f443 100644 --- a/addons/account_chart/__openerp__.py +++ b/addons/account_chart/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Charts of Accounts', + 'name': 'Template of Charts of Accounts', 'version': '1.1', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'description': """ Remove minimal account chart. ============================= diff --git a/addons/account_coda/__openerp__.py b/addons/account_coda/__openerp__.py index dd604e41aca..a51a9a1ede7 100644 --- a/addons/account_coda/__openerp__.py +++ b/addons/account_coda/__openerp__.py @@ -20,10 +20,10 @@ ############################################################################## { - "name" : "Account CODA - import bank statements from coda file", + "name" : "CODA Bank Statements", "version" : "1.0", "author" : "OpenERP SA", - "category" : "Hidden", + "category": 'Accounting & Finance', 'complexity': "normal", "description": """ Module provides functionality to import bank statements from coda files. diff --git a/addons/account_coda/i18n/hr.po b/addons/account_coda/i18n/hr.po index f18ad9a000f..688d9a3383b 100644 --- a/addons/account_coda/i18n/hr.po +++ b/addons/account_coda/i18n/hr.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-10-15 09:33+0000\n" -"Last-Translator: OpenERP Administrators <Unknown>\n" +"PO-Revision-Date: 2011-12-08 16:14+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.com>\n" "Language-Team: Croatian <hr@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:42+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_coda #: help:account.coda,journal_id:0 @@ -32,37 +32,37 @@ msgstr "Zapisnik" #. module: account_coda #: model:ir.model,name:account_coda.model_account_coda_import msgid "Account Coda Import" -msgstr "" +msgstr "Account Coda Import" #. module: account_coda #: field:account.coda,name:0 msgid "Coda file" -msgstr "" +msgstr "Coda file" #. module: account_coda #: view:account.coda:0 msgid "Group By..." -msgstr "" +msgstr "Grupiraj po..." #. module: account_coda #: field:account.coda.import,awaiting_account:0 msgid "Default Account for Unrecognized Movement" -msgstr "" +msgstr "Konto za nepoznate (konto nep. kupaca)" #. module: account_coda #: help:account.coda,date:0 msgid "Import Date" -msgstr "" +msgstr "Datum uvoza" #. module: account_coda #: field:account.coda,note:0 msgid "Import log" -msgstr "" +msgstr "Import log" #. module: account_coda #: view:account.coda.import:0 msgid "Import" -msgstr "" +msgstr "Uvoz" #. module: account_coda #: view:account.coda:0 @@ -81,12 +81,14 @@ msgid "" "Set here the default account that will be used, if the partner is found but " "does not have the bank account, or if he is domiciled" msgstr "" +"Zadajte uobičajeni konto za slučaj da je partner pronađen, ali nema upisan " +"bankovni račun." #. module: account_coda #: view:account.coda:0 #: field:account.coda,company_id:0 msgid "Company" -msgstr "" +msgstr "Organizacija" #. module: account_coda #: help:account.coda.import,def_payable:0 @@ -94,11 +96,13 @@ msgid "" "Set here the payable account that will be used, by default, if the partner " "is not found" msgstr "" +"Postavite ovdje račun plaćanja koji će se koristiti po defaultu ukoliko " +"partner nije pronađen" #. module: account_coda #: view:account.coda:0 msgid "Search Coda" -msgstr "" +msgstr "Traži Coda" #. module: account_coda #: view:account.coda:0 @@ -110,12 +114,12 @@ msgstr "Korisnik" #: view:account.coda:0 #: field:account.coda,date:0 msgid "Date" -msgstr "" +msgstr "Datum" #. module: account_coda #: model:ir.ui.menu,name:account_coda.menu_account_coda_statement msgid "Coda Import Logs" -msgstr "" +msgstr "Coda Import Logs" #. module: account_coda #: model:ir.model,name:account_coda.model_account_coda @@ -125,22 +129,22 @@ msgstr "coda za jedan nalog" #. module: account_coda #: field:account.coda.import,def_payable:0 msgid "Default Payable Account" -msgstr "Osnovni platni konto" +msgstr "Uobičajeni konto obveza" #. module: account_coda #: help:account.coda,name:0 msgid "Store the detail of bank statements" -msgstr "" +msgstr "Store the detail of bank statements" #. module: account_coda #: view:account.coda.import:0 msgid "Cancel" -msgstr "" +msgstr "Odustani" #. module: account_coda #: view:account.coda.import:0 msgid "Open Statements" -msgstr "" +msgstr "Open Statements" #. module: account_coda #: code:addons/account_coda/wizard/account_coda_import.py:167 @@ -151,13 +155,13 @@ msgstr "" #. module: account_coda #: model:ir.ui.menu,name:account_coda.menu_account_coda_import msgid "Import Coda Statements" -msgstr "" +msgstr "Uvoz Coda izjave" #. module: account_coda #: view:account.coda.import:0 #: model:ir.actions.act_window,name:account_coda.action_account_coda_import msgid "Import Coda Statement" -msgstr "" +msgstr "Import Coda Statement" #. module: account_coda #: model:ir.module.module,description:account_coda.module_meta_information @@ -171,22 +175,22 @@ msgstr "" #. module: account_coda #: view:account.coda:0 msgid "Statements" -msgstr "" +msgstr "Izvodi" #. module: account_coda #: field:account.bank.statement,coda_id:0 msgid "Coda" -msgstr "" +msgstr "Coda" #. module: account_coda #: view:account.coda.import:0 msgid "Results :" -msgstr "" +msgstr "Rezultat :" #. module: account_coda #: view:account.coda.import:0 msgid "Result of Imported Coda Statements" -msgstr "" +msgstr "Rezultat uveženih Coda izvoda" #. module: account_coda #: help:account.coda.import,def_receivable:0 @@ -194,22 +198,24 @@ msgid "" "Set here the receivable account that will be used, by default, if the " "partner is not found" msgstr "" +"Zadajte uobičajeni konto potraživanja od kupaca kada partner nije " +"pronađen/prepoznat sa izvoda." #. module: account_coda #: field:account.coda.import,coda:0 #: model:ir.actions.act_window,name:account_coda.act_account_payment_account_bank_statement msgid "Coda File" -msgstr "" +msgstr "Coda File" #. module: account_coda #: model:ir.model,name:account_coda.model_account_bank_statement msgid "Bank Statement" -msgstr "" +msgstr "Izvod banke" #. module: account_coda #: model:ir.actions.act_window,name:account_coda.action_account_coda msgid "Coda Logs" -msgstr "" +msgstr "Coda Evidencije" #. module: account_coda #: code:addons/account_coda/wizard/account_coda_import.py:311 @@ -220,22 +226,22 @@ msgstr "" #. module: account_coda #: view:account.coda.import:0 msgid "Click on 'New' to select your file :" -msgstr "" +msgstr "Kliknite na \"Novo\" kako bi odabrali svoj file :" #. module: account_coda #: field:account.coda.import,def_receivable:0 msgid "Default Receivable Account" -msgstr "" +msgstr "Uobičajeni konto potraživanja" #. module: account_coda #: view:account.coda.import:0 msgid "Close" -msgstr "" +msgstr "Zatvori" #. module: account_coda #: field:account.coda,statement_ids:0 msgid "Generated Bank Statements" -msgstr "" +msgstr "Generirani bankovni izvodi" #. module: account_coda #: model:ir.module.module,shortdesc:account_coda.module_meta_information @@ -245,18 +251,18 @@ msgstr "" #. module: account_coda #: view:account.coda.import:0 msgid "Configure Your Journal and Account :" -msgstr "" +msgstr "konfigurirajte temeljnicu i račun :" #. module: account_coda #: view:account.coda:0 msgid "Coda Import" -msgstr "" +msgstr "Coda Import" #. module: account_coda #: view:account.coda:0 #: field:account.coda,journal_id:0 msgid "Journal" -msgstr "" +msgstr "Dnevnik" #~ msgid "Clic on 'New' to select your file :" #~ msgstr "Kliknite na \"Novi\" za odabir datoteke" diff --git a/addons/account_followup/i18n/fr.po b/addons/account_followup/i18n/fr.po index 8fd9e42dc5c..06fb9e56e6b 100644 --- a/addons/account_followup/i18n/fr.po +++ b/addons/account_followup/i18n/fr.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2011-11-11 15:22+0000\n" -"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n" +"PO-Revision-Date: 2011-11-25 14:47+0000\n" +"Last-Translator: Numérigraphe <Unknown>\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: 2011-11-12 04:52+0000\n" -"X-Generator: Launchpad (build 14277)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:49+0000\n" +"X-Generator: Launchpad (build 14381)\n" #. module: account_followup #: code:addons/account_followup/wizard/account_followup_print.py:295 @@ -89,6 +89,11 @@ msgid "" "\n" "%s" msgstr "" +"\n" +"\n" +"Courriel envoyé vers les Partenaires suivants :\n" +"\n" +"%s" #. module: account_followup #: view:account_followup.followup:0 @@ -538,6 +543,9 @@ msgid "" "\n" "%s" msgstr "" +"Tous les courriels ont été envoyés correctement vers les Partenaires :\n" +"\n" +"%s" #. module: account_followup #: constraint:res.company:0 @@ -728,6 +736,9 @@ msgid "" "\n" "%s" msgstr "" +"Courriel non envoyé vers les Partenaires suivants (courriel indisponible) !\n" +"\n" +"%s" #. module: account_followup #: view:account.followup.print:0 diff --git a/addons/account_followup/i18n/hr.po b/addons/account_followup/i18n/hr.po index 949e2a81f10..3dca6a73c32 100644 --- a/addons/account_followup/i18n/hr.po +++ b/addons/account_followup/i18n/hr.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-09-04 09:03+0000\n" +"PO-Revision-Date: 2011-12-08 16:15+0000\n" "Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-12 04:52+0000\n" -"X-Generator: Launchpad (build 14277)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_followup #: code:addons/account_followup/wizard/account_followup_print.py:295 @@ -25,7 +25,7 @@ msgstr "" #. module: account_followup #: view:account_followup.followup:0 msgid "Search Followup" -msgstr "" +msgstr "Traži IOS-e" #. module: account_followup #: model:ir.module.module,description:account_followup.module_meta_information @@ -55,7 +55,7 @@ msgstr "" #. module: account_followup #: view:account_followup.stat:0 msgid "Group By..." -msgstr "" +msgstr "Grupiraj po..." #. module: account_followup #: code:addons/account_followup/wizard/account_followup_print.py:290 @@ -72,7 +72,7 @@ msgstr "" #: view:account_followup.followup:0 #: field:account_followup.followup,followup_line:0 msgid "Follow-Up" -msgstr "" +msgstr "Follow-Up" #. module: account_followup #: field:account_followup.followup,company_id:0 @@ -80,12 +80,12 @@ msgstr "" #: field:account_followup.stat,company_id:0 #: field:account_followup.stat.by.partner,company_id:0 msgid "Company" -msgstr "Tvrtka" +msgstr "Organizacija" #. module: account_followup #: report:account_followup.followup.print:0 msgid "Invoice Date" -msgstr "Datum Računa" +msgstr "Datum računa" #. module: account_followup #: field:account.followup.print.all,email_subject:0 @@ -96,87 +96,87 @@ msgstr "Predmet email-a" #: model:ir.actions.act_window,help:account_followup.action_followup_stat msgid "" "Follow up on the reminders sent over to your partners for unpaid invoices." -msgstr "" +msgstr "Izvodi otvorenih stavaka sa neplaćenim računima poslani partnerima." #. module: account_followup #: view:account.followup.print.all:0 #: view:account_followup.followup.line:0 msgid "Legend" -msgstr "" +msgstr "Legenda" #. module: account_followup #: view:account.followup.print.all:0 msgid "Ok" -msgstr "Ok" +msgstr "U redu" #. module: account_followup #: view:account.followup.print.all:0 msgid "Select Partners to Remind" -msgstr "" +msgstr "Select Partners to Remind" #. module: account_followup #: constraint:account.move.line:0 msgid "You can not create move line on closed account." -msgstr "" +msgstr "Ne možete kreirati stavke prometa za zatvoreni račun." #. module: account_followup #: field:account.followup.print,date:0 msgid "Follow-up Sending Date" -msgstr "" +msgstr "Datum slanja IOS-a" #. module: account_followup #: sql_constraint:account.move.line:0 msgid "Wrong credit or debit value in accounting entry !" -msgstr "" +msgstr "Pogrešno kreditna ili debitnom vrijednost unešene stavke!" #. module: account_followup #: selection:account_followup.followup.line,start:0 msgid "Net Days" -msgstr "" +msgstr "Neto dana" #. module: account_followup #: model:ir.actions.act_window,name:account_followup.action_account_followup_definition_form #: model:ir.ui.menu,name:account_followup.account_followup_menu msgid "Follow-Ups" -msgstr "" +msgstr "IOS-i" #. module: account_followup #: view:account_followup.stat.by.partner:0 msgid "Balance > 0" -msgstr "" +msgstr "Balance > 0" #. module: account_followup #: view:account.move.line:0 msgid "Total debit" -msgstr "Ukupni dug" +msgstr "Ukupno duguje" #. module: account_followup #: view:account.followup.print.all:0 msgid "%(heading)s: Move line header" -msgstr "" +msgstr "%(heading)s: Zaglavlje stavke" #. module: account_followup #: view:res.company:0 #: field:res.company,follow_up_msg:0 msgid "Follow-up Message" -msgstr "" +msgstr "Poruka IOS-a" #. module: account_followup #: field:account.followup.print,followup_id:0 msgid "Follow-up" -msgstr "" +msgstr "Pratiti" #. module: account_followup #: report:account_followup.followup.print:0 msgid "VAT:" -msgstr "VAT:" +msgstr "PDV:" #. module: account_followup #: view:account_followup.stat:0 #: field:account_followup.stat,partner_id:0 #: field:account_followup.stat.by.partner,partner_id:0 msgid "Partner" -msgstr "" +msgstr "Partner" #. module: account_followup #: report:account_followup.followup.print:0 @@ -197,7 +197,7 @@ msgstr "" #. module: account_followup #: model:ir.model,name:account_followup.model_account_followup_followup msgid "Account Follow Up" -msgstr "" +msgstr "Upravljanje IOS-ima" #. module: account_followup #: selection:account_followup.followup.line,start:0 @@ -207,7 +207,7 @@ msgstr "Kraj Mjeseca" #. module: account_followup #: view:account_followup.stat:0 msgid "Not Litigation" -msgstr "" +msgstr "Not Litigation" #. module: account_followup #: view:account.followup.print.all:0 @@ -217,7 +217,7 @@ msgstr "%(user_signature)s: Korisničko ime" #. module: account_followup #: field:account_followup.stat,debit:0 msgid "Debit" -msgstr "Dug" +msgstr "Duguje" #. module: account_followup #: view:account.followup.print:0 @@ -226,33 +226,36 @@ msgid "" "You can send them the default message for unpaid invoices or manually enter " "a message should you need to remind them of a specific information." msgstr "" +"This feature allows you to send reminders to partners with pending invoices. " +"You can send them the default message for unpaid invoices or manually enter " +"a message should you need to remind them of a specific information." #. module: account_followup #: report:account_followup.followup.print:0 msgid "Ref" -msgstr "" +msgstr "Vezna oznaka" #. module: account_followup #: help:account_followup.followup.line,sequence:0 msgid "Gives the sequence order when displaying a list of follow-up lines." -msgstr "" +msgstr "Gives the sequence order when displaying a list of follow-up lines." #. module: account_followup #: view:account.followup.print.all:0 #: field:account.followup.print.all,email_body:0 msgid "Email body" -msgstr "" +msgstr "Email sadržaj" #. module: account_followup #: field:account.move.line,followup_line_id:0 msgid "Follow-up Level" -msgstr "" +msgstr "Nivo IOSa" #. module: account_followup #: field:account_followup.stat,date_followup:0 #: field:account_followup.stat.by.partner,date_followup:0 msgid "Latest followup" -msgstr "" +msgstr "Zadnji IOS" #. module: account_followup #: model:account_followup.followup.line,description:account_followup.demo_followup_line2 @@ -281,7 +284,7 @@ msgstr "" #. module: account_followup #: field:account.followup.print.all,partner_lang:0 msgid "Send Email in Partner Language" -msgstr "" +msgstr "Send Email in Partner Language" #. module: account_followup #: constraint:account.move.line:0 @@ -306,18 +309,18 @@ msgstr "Ispisana Poruka" #: model:ir.actions.act_window,name:account_followup.action_account_followup_print_all #: model:ir.ui.menu,name:account_followup.account_followup_print_menu msgid "Send followups" -msgstr "" +msgstr "Pošalji IOS-e" #. module: account_followup #: view:account_followup.stat.by.partner:0 msgid "Partner to Remind" -msgstr "" +msgstr "Partner to Remind" #. module: account_followup #: field:account_followup.followup.line,followup_id:0 #: field:account_followup.stat,followup_id:0 msgid "Follow Ups" -msgstr "" +msgstr "IOS-i" #. module: account_followup #: model:account_followup.followup.line,description:account_followup.demo_followup_line1 @@ -359,7 +362,7 @@ msgstr "" #. module: account_followup #: view:account.followup.print.all:0 msgid "Send Mails" -msgstr "" +msgstr "Send Mails" #. module: account_followup #: report:account_followup.followup.print:0 @@ -369,7 +372,7 @@ msgstr "" #. module: account_followup #: model:ir.model,name:account_followup.model_account_followup_stat_by_partner msgid "Followup Statistics by Partner" -msgstr "" +msgstr "Statistika IOS-a po partneru" #. module: account_followup #: model:ir.module.module,shortdesc:account_followup.module_meta_information @@ -379,13 +382,13 @@ msgstr "" #. module: account_followup #: field:account_followup.stat,blocked:0 msgid "Blocked" -msgstr "" +msgstr "Blocked" #. module: account_followup #: help:account.followup.print,date:0 msgid "" "This field allow you to select a forecast date to plan your follow-ups" -msgstr "" +msgstr "Upišite planirani dan kreiranja IOS-a" #. module: account_followup #: report:account_followup.followup.print:0 @@ -406,12 +409,12 @@ msgstr "Email Postavke" #. module: account_followup #: view:account.followup.print.all:0 msgid "Print Follow Ups" -msgstr "" +msgstr "Ispiši sve IOS-e" #. module: account_followup #: field:account.move.line,followup_date:0 msgid "Latest Follow-up" -msgstr "" +msgstr "Zadnji IOS-i" #. module: account_followup #: report:account_followup.followup.print:0 @@ -426,7 +429,7 @@ msgstr "Saldo:" #. module: account_followup #: model:ir.model,name:account_followup.model_account_followup_stat msgid "Followup Statistics" -msgstr "" +msgstr "Statistika IOS-a" #. module: account_followup #: report:account_followup.followup.print:0 @@ -436,22 +439,22 @@ msgstr "Plaćeno" #. module: account_followup #: view:account_followup.followup.line:0 msgid "%(user_signature)s: User Name" -msgstr "" +msgstr "%(user_signature)s: User Name" #. module: account_followup #: model:ir.model,name:account_followup.model_account_move_line msgid "Journal Items" -msgstr "" +msgstr "Stavke glavne knjige" #. module: account_followup #: constraint:account.move.line:0 msgid "Company must be same for its related account and period." -msgstr "" +msgstr "Company must be same for its related account and period." #. module: account_followup #: field:account.followup.print.all,email_conf:0 msgid "Send email confirmation" -msgstr "" +msgstr "Send email confirmation" #. module: account_followup #: code:addons/account_followup/wizard/account_followup_print.py:287 @@ -465,17 +468,17 @@ msgstr "" #. module: account_followup #: constraint:res.company:0 msgid "Error! You can not create recursive companies." -msgstr "" +msgstr "Pogreška! Ne možete kreirati rekurzivne organizacije." #. module: account_followup #: view:account.followup.print.all:0 msgid "%(company_name)s: User's Company name" -msgstr "" +msgstr "%(poduzeće_naziv)s: User's Company name" #. module: account_followup #: model:ir.model,name:account_followup.model_res_company msgid "Companies" -msgstr "" +msgstr "Organizacije" #. module: account_followup #: view:account_followup.followup:0 @@ -485,34 +488,34 @@ msgstr "" #. module: account_followup #: field:account_followup.stat,credit:0 msgid "Credit" -msgstr "" +msgstr "Potražuje" #. module: account_followup #: report:account_followup.followup.print:0 msgid "Maturity Date" -msgstr "" +msgstr "Maturity Date" #. module: account_followup #: view:account_followup.followup.line:0 msgid "%(partner_name)s: Partner Name" -msgstr "" +msgstr "%(partner_name)s: Partner Name" #. module: account_followup #: view:account_followup.stat:0 msgid "Follow-Up lines" -msgstr "" +msgstr "Stavke IOS-a" #. module: account_followup #: view:account.followup.print.all:0 msgid "%(company_currency)s: User's Company Currency" -msgstr "" +msgstr "%(company_currency)s: Valuta organizacije" #. module: account_followup #: view:account_followup.stat:0 #: field:account_followup.stat,balance:0 #: field:account_followup.stat.by.partner,balance:0 msgid "Balance" -msgstr "" +msgstr "Saldo" #. module: account_followup #: field:account_followup.followup.line,start:0 @@ -523,29 +526,29 @@ msgstr "Tip Uvjeta" #: model:ir.model,name:account_followup.model_account_followup_print #: model:ir.model,name:account_followup.model_account_followup_print_all msgid "Print Followup & Send Mail to Customers" -msgstr "" +msgstr "Print Followup & Send Mail to Customers" #. module: account_followup #: field:account_followup.stat,date_move_last:0 #: field:account_followup.stat.by.partner,date_move_last:0 msgid "Last move" -msgstr "" +msgstr "Zadnja transakcija" #. module: account_followup #: model:ir.actions.report.xml,name:account_followup.account_followup_followup_report msgid "Followup Report" -msgstr "" +msgstr "Izvještaj IOS-a" #. module: account_followup #: field:account_followup.stat,period_id:0 msgid "Period" -msgstr "" +msgstr "Period" #. module: account_followup #: view:account.followup.print:0 #: view:account.followup.print.all:0 msgid "Cancel" -msgstr "" +msgstr "Odustani" #. module: account_followup #: view:account_followup.followup.line:0 @@ -555,22 +558,22 @@ msgstr "" #. module: account_followup #: view:account_followup.stat:0 msgid "Litigation" -msgstr "" +msgstr "Sporno" #. module: account_followup #: field:account_followup.stat.by.partner,max_followup_id:0 msgid "Max Follow Up Level" -msgstr "" +msgstr "Max Follow Up Level" #. module: account_followup #: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_payable_all msgid "Payable Items" -msgstr "" +msgstr "Payable Items" #. module: account_followup #: view:account.followup.print.all:0 msgid "%(followup_amount)s: Total Amount Due" -msgstr "" +msgstr "%(followup_amount)s: Ukupni iznos duga" #. module: account_followup #: view:account.followup.print.all:0 @@ -581,7 +584,7 @@ msgstr "%(date)s: Trenutni Datum" #. module: account_followup #: view:account_followup.stat:0 msgid "Followup Level" -msgstr "" +msgstr "Nivo IOS-a" #. module: account_followup #: view:account_followup.followup:0 @@ -593,12 +596,12 @@ msgstr "Opis" #. module: account_followup #: view:account_followup.stat:0 msgid "This Fiscal year" -msgstr "" +msgstr "This Fiscal year" #. module: account_followup #: view:account.move.line:0 msgid "Partner entries" -msgstr "" +msgstr "Partner entries" #. module: account_followup #: help:account.followup.print.all,partner_lang:0 @@ -606,24 +609,26 @@ msgid "" "Do not change message text, if you want to send email in partner language, " "or configure from company" msgstr "" +"Ne mijenjajte tekstualne poruke, ako želite poslati e-mail u partnerskom " +"jeziku, ili konfigurirati iz tvrtke" #. module: account_followup #: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_all msgid "Receivable Items" -msgstr "" +msgstr "Receivable Items" #. module: account_followup #: view:account_followup.stat:0 #: model:ir.actions.act_window,name:account_followup.action_followup_stat #: model:ir.ui.menu,name:account_followup.menu_action_followup_stat_follow msgid "Follow-ups Sent" -msgstr "" +msgstr "Poslani IOS-i" #. module: account_followup #: field:account_followup.followup,name:0 #: field:account_followup.followup.line,name:0 msgid "Name" -msgstr "Ime" +msgstr "Naziv" #. module: account_followup #: field:account_followup.stat,date_move:0 @@ -653,43 +658,43 @@ msgstr "" #. module: account_followup #: view:account.followup.print:0 msgid "Continue" -msgstr "" +msgstr "Continue" #. module: account_followup #: field:account_followup.followup.line,delay:0 msgid "Days of delay" -msgstr "" +msgstr "Dana kašnjenja" #. module: account_followup #: report:account_followup.followup.print:0 msgid "Document : Customer account statement" -msgstr "" +msgstr "Document : Customer account statement" #. module: account_followup #: view:account.followup.print.all:0 #: field:account.followup.print.all,summary:0 msgid "Summary" -msgstr "" +msgstr "Sažetak" #. module: account_followup #: view:account.move.line:0 msgid "Total credit" -msgstr "" +msgstr "Ukupno potražuje" #. module: account_followup #: view:account.followup.print.all:0 msgid "%(line)s: Ledger Posting lines" -msgstr "" +msgstr "%(line)s: Ledger Posting lines" #. module: account_followup #: field:account_followup.followup.line,sequence:0 msgid "Sequence" -msgstr "" +msgstr "Sekvenca" #. module: account_followup #: view:account_followup.followup.line:0 msgid "%(company_name)s: User's Company Name" -msgstr "" +msgstr "%(company_name)s: Naziv korisnikove organizacije" #. module: account_followup #: report:account_followup.followup.print:0 @@ -699,22 +704,22 @@ msgstr "Poziv na broj" #. module: account_followup #: view:account.followup.print.all:0 msgid "%(partner_name)s: Partner name" -msgstr "" +msgstr "%(partner_name)s: Ime/naziv partnera" #. module: account_followup #: view:account_followup.stat:0 msgid "Latest Followup Date" -msgstr "" +msgstr "Datum zadnjeg IOS-a" #. module: account_followup #: model:ir.model,name:account_followup.model_account_followup_followup_line msgid "Follow-Up Criteria" -msgstr "" +msgstr "Kriterij IOS-a" #. module: account_followup #: constraint:account.move.line:0 msgid "You can not create move line on view account." -msgstr "" +msgstr "Ne može se knjižiti na sintetički konto." #~ msgid "Select partners" #~ msgstr "Odaberi partnere" diff --git a/addons/account_followup/i18n/sr@latin.po b/addons/account_followup/i18n/sr@latin.po index 92024896307..a02336e9bc9 100644 --- a/addons/account_followup/i18n/sr@latin.po +++ b/addons/account_followup/i18n/sr@latin.po @@ -8,25 +8,25 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2011-11-11 15:21+0000\n" -"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n" +"PO-Revision-Date: 2011-11-22 19:07+0000\n" +"Last-Translator: Milan Milosevic <Unknown>\n" "Language-Team: Serbian latin <sr@latin@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-12 04:52+0000\n" -"X-Generator: Launchpad (build 14277)\n" +"X-Launchpad-Export-Date: 2011-11-23 05:20+0000\n" +"X-Generator: Launchpad (build 14336)\n" #. module: account_followup #: code:addons/account_followup/wizard/account_followup_print.py:295 #, python-format msgid "Followup Summary" -msgstr "Sumarno Pracenje" +msgstr "Sumarno praćenje" #. module: account_followup #: view:account_followup.followup:0 msgid "Search Followup" -msgstr "Pretrazi Pracenja" +msgstr "Pretraži praćenja" #. module: account_followup #: model:ir.module.module,description:account_followup.module_meta_information @@ -52,11 +52,31 @@ msgid "" "Sent\n" "\n" msgstr "" +"\n" +" Moduli za automatizovana pisma za neplaćenbe fakture, sa podsećanjem na " +"više nivoa.\n" +"\n" +" Možete definisati višestruke nivoe podsećanja kroz meni:\n" +" Accounting/Configuration/Miscellaneous/Follow-Ups\n" +"\n" +" Jednom kad budu definisani, možete štampati podsećanja svakodnevno\n" +" prostim klikom na meni:\n" +" Accounting/Periodical Processing/Billing/Send followups\n" +"\n" +" Generisaće se PDF datoteka sa svim pismima shodno\n" +" različitim nivoima podsećanja. Možete definisati različite načine\n" +" za različita preduzeća. Možete takođe poslati el.poštu stranci.\n" +"\n" +" Zapazite da ako želite da izmenite nivo praćenja za datog " +"partnera/stavku naloga, možete to uraditi iz menija:\n" +" Accounting/Reporting/Generic Reporting/Partner Accounts/Follow-ups " +"Sent\n" +"\n" #. module: account_followup #: view:account_followup.stat:0 msgid "Group By..." -msgstr "Grupirano po" +msgstr "Grupiši po..." #. module: account_followup #: code:addons/account_followup/wizard/account_followup_print.py:290 @@ -68,12 +88,17 @@ msgid "" "\n" "%s" msgstr "" +"\n" +"\n" +"El.pošta uspešno poslata sledećim partnerim. !\n" +"\n" +"%s" #. module: account_followup #: view:account_followup.followup:0 #: field:account_followup.followup,followup_line:0 msgid "Follow-Up" -msgstr "Следи" +msgstr "Sledi" #. module: account_followup #: field:account_followup.followup,company_id:0 @@ -86,7 +111,7 @@ msgstr "Preduzeće" #. module: account_followup #: report:account_followup.followup.print:0 msgid "Invoice Date" -msgstr "Datum računa" +msgstr "Datum fakture" #. module: account_followup #: field:account.followup.print.all,email_subject:0 @@ -108,27 +133,27 @@ msgstr "Legenda" #. module: account_followup #: view:account.followup.print.all:0 msgid "Ok" -msgstr "U redu" +msgstr "OK" #. module: account_followup #: view:account.followup.print.all:0 msgid "Select Partners to Remind" -msgstr "" +msgstr "Izaberite partnere koje biste hteli podsetiti" #. module: account_followup #: constraint:account.move.line:0 msgid "You can not create move line on closed account." -msgstr "" +msgstr "Ne možete da napravite poteznu liniju na zatvorenim računima." #. module: account_followup #: field:account.followup.print,date:0 msgid "Follow-up Sending Date" -msgstr "Datum Slanja Pracenja" +msgstr "Datum slanja praćenja" #. module: account_followup #: sql_constraint:account.move.line:0 msgid "Wrong credit or debit value in accounting entry !" -msgstr "" +msgstr "Pogrešna vrednost kredita ili debita u ulazu računa !" #. module: account_followup #: selection:account_followup.followup.line,start:0 @@ -139,12 +164,12 @@ msgstr "Neto dana" #: model:ir.actions.act_window,name:account_followup.action_account_followup_definition_form #: model:ir.ui.menu,name:account_followup.account_followup_menu msgid "Follow-Ups" -msgstr "Pracenja" +msgstr "Praćenja" #. module: account_followup #: view:account_followup.stat.by.partner:0 msgid "Balance > 0" -msgstr "" +msgstr "Balans > 0" #. module: account_followup #: view:account.move.line:0 @@ -154,18 +179,18 @@ msgstr "Ukupno duguje" #. module: account_followup #: view:account.followup.print.all:0 msgid "%(heading)s: Move line header" -msgstr "%(heading): Zaglavlje reda prijenosa" +msgstr "%(heading): Zaglavlje reda prenosa" #. module: account_followup #: view:res.company:0 #: field:res.company,follow_up_msg:0 msgid "Follow-up Message" -msgstr "Poruka Pracenja" +msgstr "Poruka praćenja" #. module: account_followup #: field:account.followup.print,followup_id:0 msgid "Follow-up" -msgstr "Pracenje" +msgstr "Praćenje" #. module: account_followup #: report:account_followup.followup.print:0 @@ -198,17 +223,17 @@ msgstr "" #. module: account_followup #: model:ir.model,name:account_followup.model_account_followup_followup msgid "Account Follow Up" -msgstr "Nalog Pracenja" +msgstr "Nalog praćenja" #. module: account_followup #: selection:account_followup.followup.line,start:0 msgid "End of Month" -msgstr "Kraj Meseca" +msgstr "Kraj meseca" #. module: account_followup #: view:account_followup.stat:0 msgid "Not Litigation" -msgstr "Nije Sporno" +msgstr "Nije sporno" #. module: account_followup #: view:account.followup.print.all:0 @@ -227,22 +252,26 @@ msgid "" "You can send them the default message for unpaid invoices or manually enter " "a message should you need to remind them of a specific information." msgstr "" +"Ova funkcija omogućava Vam slanje podsetnika partnerima sa fakturama na " +"čekanju. Možete im poslati podrazumevanu poruku za neplaćene fakture ili " +"ručno uneti poruku, u slučaju da Vam treba da ih podsetite na neku " +"specifičnu informaciju." #. module: account_followup #: report:account_followup.followup.print:0 msgid "Ref" -msgstr "Referenca" +msgstr "Ref" #. module: account_followup #: help:account_followup.followup.line,sequence:0 msgid "Gives the sequence order when displaying a list of follow-up lines." -msgstr "Daje redosled sekvenci pri prikazivanju linija pracenja" +msgstr "Daje redosled sekvenci pri prikazivanju linija praćenja" #. module: account_followup #: view:account.followup.print.all:0 #: field:account.followup.print.all,email_body:0 msgid "Email body" -msgstr "Sadrzaj Email-a" +msgstr "Sadržaj E-mail-a" #. module: account_followup #: field:account.move.line,followup_line_id:0 @@ -279,44 +308,46 @@ msgid "" "Best Regards,\n" msgstr "" "\n" -"Postovani %(partner_name)\n" -"Razocarani smo sto vam se moramo obracati ovako, saljuci vam opomenu, ali " -"vas nalog je u ozbiljnom prekoracenju.\n" +"Poštovani %(partner_name)\n" +"Razočarani smo što je Vaš nalog u ozbiljnom prekoracenju, uprkos poslatom " +"podsetniku.\n" "\n" -"Vrlo je vazno da ispunite vase obaveze ka nama, inace ce mo biti prisiljeni " -"da obustavimo vas nalog, sto u stvari znaci da necemo vise biti\n" -"u mogucnosti da vase preduzece nadalje snabdevamo ( robom / servisiranjem).\n" -"Molimo vas da preduzmete mere kako bi regulisali vasa dugovanja u sledecih 8 " -"dana.\n" +" Vrlo je važno da ispunite svoje obaveze ka nama, inače ćemo biti prisiljeni " +"da obustavimo Vaš nalog, što u stvari znači da nećemo više biti\n" +" u mogućnosti da Vaše preduzeće nadalje snabdevamo ( robom / " +"servisiranjem).\n" +" Molimo vas da preduzmete mere kako biste regulisali svoja dugovanja u " +"sledećih 8 dana.\n" "\n" -"Ukoliko postoji problem, vezan za fakturu, sa kojim nismo upoznati, ne " -"ustrucavajte se da kontaktirate nase racunovodstvo na broj (+32) 20 555 666 " -"kako bi smo razmotrili problem sto je hitnije moguce.\n" +" Ukoliko postoji problem, vezan za fakturu, sa kojim nismo upoznati, ne " +"ustručavajte se da kontaktirate naše računovodstvo na broj (+32) 20 555 666 " +"kako bismo razmotrili problem što je hitnije moguće.\n" "\n" -"Detalji vase fakture su prikazani ispod.\n" +" Detalji Vaše fakture su prikazani ispod.\n" "\n" -"Uz svo postovanje.\n" +" Uz svo poštovanje.\n" #. module: account_followup #: field:account.followup.print.all,partner_lang:0 msgid "Send Email in Partner Language" -msgstr "Posalji Email na jeziku Partnera" +msgstr "Pošalji E-mail na jeziku partnera" #. module: account_followup #: constraint:account.move.line:0 msgid "" "You can not create move line on receivable/payable account without partner" msgstr "" +"Ne možete napraviti poteznu liniju na primaćem/platežnom računu bez partnera" #. module: account_followup #: view:account.followup.print.all:0 msgid "Partner Selection" -msgstr "Selekcija Partnera" +msgstr "Izbor partnera" #. module: account_followup #: field:account_followup.followup.line,description:0 msgid "Printed Message" -msgstr "Ispisana Poruka" +msgstr "Ištampana poruka" #. module: account_followup #: view:account.followup.print:0 @@ -330,7 +361,7 @@ msgstr "Pošalji praćenja" #. module: account_followup #: view:account_followup.stat.by.partner:0 msgid "Partner to Remind" -msgstr "" +msgstr "Partner za podsećanje" #. module: account_followup #: field:account_followup.followup.line,followup_id:0 @@ -355,17 +386,17 @@ msgid "" "Best Regards,\n" msgstr "" "\n" -"postovani %(partner_name)\n" +"Poštovani %(partner_name)\n" "\n" -"Nacinjen je izuzetak ukoliko je ovo nasa greska, ali , cini se da je sledeci " -"iznos ostao neplacen. Molimo vas da preduzmete odgovarajuce mere kako bi se " -"ovo resilo u sledecih 8 dana.\n" +"Načinjen je izuzetak ukoliko je ovo naša greška, ali , čini se da je sledeći " +"iznos ostao neplaćen. Molimo Vas da preduzmete odgovarajuće mere kako bi se " +"ovo rešilo u sledećih 8 dana.\n" "\n" -"Ukoliko ste izvrsili uplatu u medjuvremenu, pre ovog Emaila, molimo " -"smatrajte ga nebitnim. Ne ustrucavajte se da kontaktirate nase racunovodstvo " +" Ukoliko ste izvršili uplatu u međuvremenu, pre ove el.pošte, molimo " +"smatrajte ga nebitnim. Ne ustručavajte se da kontaktirate naše računovodstvo " "na broj (+32) 555 666.\n" "\n" -"Svo Postovanje.\n" +" Svo poštovanje.\n" #. module: account_followup #: model:account_followup.followup.line,description:account_followup.demo_followup_line3 @@ -405,7 +436,7 @@ msgstr "" #. module: account_followup #: view:account.followup.print.all:0 msgid "Send Mails" -msgstr "Slanje Emailova" +msgstr "Pošalji el.poštu" #. module: account_followup #: report:account_followup.followup.print:0 @@ -415,25 +446,24 @@ msgstr "Valuta" #. module: account_followup #: model:ir.model,name:account_followup.model_account_followup_stat_by_partner msgid "Followup Statistics by Partner" -msgstr "" +msgstr "Statistike praćenja po partneru" #. module: account_followup #: model:ir.module.module,shortdesc:account_followup.module_meta_information msgid "Accounting follow-ups management" -msgstr "Menadzment naloga Praćenja" +msgstr "Uređivanje naloga praćenja" #. module: account_followup #: field:account_followup.stat,blocked:0 msgid "Blocked" -msgstr "Blokiran" +msgstr "Blokirano" #. module: account_followup #: help:account.followup.print,date:0 msgid "" "This field allow you to select a forecast date to plan your follow-ups" msgstr "" -"Ovo polje vam omogucava da selektujete udaljeni datum za planiranje vaseg " -"pracenja" +"Ovo polje Vam omogućava izbor udaljenog datuma za planiranje Vaših praćenja" #. module: account_followup #: report:account_followup.followup.print:0 @@ -444,17 +474,17 @@ msgstr "Dospeće" #: code:addons/account_followup/wizard/account_followup_print.py:56 #, python-format msgid "Select Partners" -msgstr "Selektuj Partnere" +msgstr "Izaberi partnere" #. module: account_followup #: view:account.followup.print.all:0 msgid "Email Settings" -msgstr "Email Postavke" +msgstr "Postavke el.pošte" #. module: account_followup #: view:account.followup.print.all:0 msgid "Print Follow Ups" -msgstr "Stampaj Pracenja" +msgstr "Odštampaj praćenja" #. module: account_followup #: field:account.move.line,followup_date:0 @@ -464,17 +494,17 @@ msgstr "Poslednje praćenje" #. module: account_followup #: report:account_followup.followup.print:0 msgid "Sub-Total:" -msgstr "Subtotal" +msgstr "Pod-total" #. module: account_followup #: report:account_followup.followup.print:0 msgid "Balance:" -msgstr "Saldo" +msgstr "Balans:" #. module: account_followup #: model:ir.model,name:account_followup.model_account_followup_stat msgid "Followup Statistics" -msgstr "Statistika Pracenja" +msgstr "Statistika praćenja" #. module: account_followup #: report:account_followup.followup.print:0 @@ -484,22 +514,22 @@ msgstr "Plaćeno" #. module: account_followup #: view:account_followup.followup.line:0 msgid "%(user_signature)s: User Name" -msgstr "%(user_signature): Korisnicko Ime" +msgstr "%(user_signature): Korisničko Ime" #. module: account_followup #: model:ir.model,name:account_followup.model_account_move_line msgid "Journal Items" -msgstr "Sadrzaj Dnevnika" +msgstr "Stavke dnevnika" #. module: account_followup #: constraint:account.move.line:0 msgid "Company must be same for its related account and period." -msgstr "" +msgstr "Preduzeće mora biti isto za sve vezane račune i periode." #. module: account_followup #: field:account.followup.print.all,email_conf:0 msgid "Send email confirmation" -msgstr "Pošalji Email potvrdu" +msgstr "Pošalji E-mail potvrdu" #. module: account_followup #: code:addons/account_followup/wizard/account_followup_print.py:287 @@ -509,26 +539,29 @@ msgid "" "\n" "%s" msgstr "" +"Sva el-pošta uspešno poslata partnerima:.\n" +"\n" +" %s" #. module: account_followup #: constraint:res.company:0 msgid "Error! You can not create recursive companies." -msgstr "" +msgstr "Greška! Ne možete da napravite rekurzivna preduzeća." #. module: account_followup #: view:account.followup.print.all:0 msgid "%(company_name)s: User's Company name" -msgstr "%(company_name)s: Ime preduzeca Korisnika" +msgstr "%(company_name)s: Ime preduzeća korisnika" #. module: account_followup #: model:ir.model,name:account_followup.model_res_company msgid "Companies" -msgstr "Kompanije" +msgstr "Preduzeća" #. module: account_followup #: view:account_followup.followup:0 msgid "Followup Lines" -msgstr "Linije Pracenja" +msgstr "Linije praćenja" #. module: account_followup #: field:account_followup.stat,credit:0 @@ -538,7 +571,7 @@ msgstr "Kredit" #. module: account_followup #: report:account_followup.followup.print:0 msgid "Maturity Date" -msgstr "Datum Dospeća" +msgstr "Datum dospeća" #. module: account_followup #: view:account_followup.followup.line:0 @@ -548,30 +581,30 @@ msgstr "%(partner_name): Partnerovo Ime" #. module: account_followup #: view:account_followup.stat:0 msgid "Follow-Up lines" -msgstr "Redovi Praćenja" +msgstr "Linije praćenja" #. module: account_followup #: view:account.followup.print.all:0 msgid "%(company_currency)s: User's Company Currency" -msgstr "%(company_currency)s: Valuta Preduzeca Korisnika" +msgstr "%(company_currency)s: Valuta preduzeća korisnika" #. module: account_followup #: view:account_followup.stat:0 #: field:account_followup.stat,balance:0 #: field:account_followup.stat.by.partner,balance:0 msgid "Balance" -msgstr "Saldo" +msgstr "Balans" #. module: account_followup #: field:account_followup.followup.line,start:0 msgid "Type of Term" -msgstr "Tip Uslova" +msgstr "Tip uslova" #. module: account_followup #: model:ir.model,name:account_followup.model_account_followup_print #: model:ir.model,name:account_followup.model_account_followup_print_all msgid "Print Followup & Send Mail to Customers" -msgstr "Stampaj Pracenje & Posalji Emailove Strankama" +msgstr "Ištampaj praćenje & pošalji E-mailove strankama" #. module: account_followup #: field:account_followup.stat,date_move_last:0 @@ -582,12 +615,12 @@ msgstr "Poslednji potez" #. module: account_followup #: model:ir.actions.report.xml,name:account_followup.account_followup_followup_report msgid "Followup Report" -msgstr "Izvestaj Pracenja" +msgstr "Izveštaj praćenja" #. module: account_followup #: field:account_followup.stat,period_id:0 msgid "Period" -msgstr "Razdoblje" +msgstr "Period" #. module: account_followup #: view:account.followup.print:0 @@ -598,7 +631,7 @@ msgstr "Otkaži" #. module: account_followup #: view:account_followup.followup.line:0 msgid "Follow-Up Lines" -msgstr "Redovi Praćenja" +msgstr "Linije praćenja" #. module: account_followup #: view:account_followup.stat:0 @@ -608,12 +641,12 @@ msgstr "Sporno" #. module: account_followup #: field:account_followup.stat.by.partner,max_followup_id:0 msgid "Max Follow Up Level" -msgstr "" +msgstr "Maksimalan nivo praćenja" #. module: account_followup #: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_payable_all msgid "Payable Items" -msgstr "Stavke Placanja" +msgstr "Plative stavke" #. module: account_followup #: view:account.followup.print.all:0 @@ -629,7 +662,7 @@ msgstr "%(datum)i: Trenutni Datum" #. module: account_followup #: view:account_followup.stat:0 msgid "Followup Level" -msgstr "Nivo Pracenja" +msgstr "Nivo praćenja" #. module: account_followup #: view:account_followup.followup:0 @@ -641,12 +674,12 @@ msgstr "Opis" #. module: account_followup #: view:account_followup.stat:0 msgid "This Fiscal year" -msgstr "Fiskalna Godina" +msgstr "Ova fiskalna godina" #. module: account_followup #: view:account.move.line:0 msgid "Partner entries" -msgstr "Stavke Partnera" +msgstr "Stavke partnera" #. module: account_followup #: help:account.followup.print.all,partner_lang:0 @@ -654,26 +687,26 @@ msgid "" "Do not change message text, if you want to send email in partner language, " "or configure from company" msgstr "" -"Ne menjajte ovaj text ukoliko zelite da posaljete Email na jeziku Partnera, " -"ili ga konfigurisete po Preduzecu." +"Ne menjajte ovaj tekst, ukoliko želite da posaljete el-poštu na jeziku " +"partnera, ili ga konfigurišete po preduzecu." #. module: account_followup #: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_all msgid "Receivable Items" -msgstr "Prijemne Stavke" +msgstr "Prijemljive stavke" #. module: account_followup #: view:account_followup.stat:0 #: model:ir.actions.act_window,name:account_followup.action_followup_stat #: model:ir.ui.menu,name:account_followup.menu_action_followup_stat_follow msgid "Follow-ups Sent" -msgstr "Pracenja Poslata" +msgstr "Praćenja poslata" #. module: account_followup #: field:account_followup.followup,name:0 #: field:account_followup.followup.line,name:0 msgid "Name" -msgstr "Ime" +msgstr "Naziv" #. module: account_followup #: field:account_followup.stat,date_move:0 @@ -699,6 +732,9 @@ msgid "" "\n" "%s" msgstr "" +"El.pošta nije poslata sledećim partnerima, el.pošta nije dostupna !\n" +"\n" +" %s" #. module: account_followup #: view:account.followup.print:0 @@ -713,13 +749,13 @@ msgstr "Dana kašnjenja" #. module: account_followup #: report:account_followup.followup.print:0 msgid "Document : Customer account statement" -msgstr "Dokument:Korisnicka stavka naloga" +msgstr "Dokument: Izjava korisničkog naloga" #. module: account_followup #: view:account.followup.print.all:0 #: field:account.followup.print.all,summary:0 msgid "Summary" -msgstr "Sumarno" +msgstr "Sažetak" #. module: account_followup #: view:account.move.line:0 @@ -729,7 +765,7 @@ msgstr "Ukupno potražuje" #. module: account_followup #: view:account.followup.print.all:0 msgid "%(line)s: Ledger Posting lines" -msgstr "%(line): Ledger Posting lines" +msgstr "%(linija)e: poslate iz glavnine" #. module: account_followup #: field:account_followup.followup.line,sequence:0 @@ -739,7 +775,7 @@ msgstr "Sekvenca" #. module: account_followup #: view:account_followup.followup.line:0 msgid "%(company_name)s: User's Company Name" -msgstr "%(company_name): Strankino Ime Preduzeca" +msgstr "%(company_name): Naziv preduzeća korisnika" #. module: account_followup #: report:account_followup.followup.print:0 @@ -754,17 +790,17 @@ msgstr "%(partner_name)s: Partnerovo Ime" #. module: account_followup #: view:account_followup.stat:0 msgid "Latest Followup Date" -msgstr "Datum poslednjeg Pracenja" +msgstr "Datum poslednjeg praćenja" #. module: account_followup #: model:ir.model,name:account_followup.model_account_followup_followup_line msgid "Follow-Up Criteria" -msgstr "Kriterijum Pracenja" +msgstr "Kriterijum praćenja" #. module: account_followup #: constraint:account.move.line:0 msgid "You can not create move line on view account." -msgstr "" +msgstr "Ne možete napraviti poteznu liniju na računu po viđenju" #, python-format #~ msgid "Follwoup Summary" diff --git a/addons/account_followup/report/account_followup_print.py b/addons/account_followup/report/account_followup_print.py index f2cf476e674..56004cebde3 100644 --- a/addons/account_followup/report/account_followup_print.py +++ b/addons/account_followup/report/account_followup_print.py @@ -64,9 +64,9 @@ class report_rappel(report_sxw.rml_parse): line_cur = {base_currency.id: {'line': []}} for line in movelines: - if line.account_id.currency_id and (not line.account_id.currency_id.id in line_cur): - line_cur[line.account_id.currency_id.id] = {'line': []} - currency = line.account_id.currency_id or line.company_id.currency_id + if line.currency_id and (not line.currency_id.id in line_cur): + line_cur[line.currency_id.id] = {'line': []} + currency = line.currency_id or line.company_id.currency_id line_data = { 'name': line.move_id.name, 'ref': line.ref, diff --git a/addons/account_invoice_layout/__openerp__.py b/addons/account_invoice_layout/__openerp__.py index 557f3c2e02c..cff01fa768b 100644 --- a/addons/account_invoice_layout/__openerp__.py +++ b/addons/account_invoice_layout/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Improve Invoice Layout', + 'name': 'Invoice Layouts', 'version': '1.0', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'complexity': "easy", 'description': """ This module provides some features to improve the layout of the invoices. diff --git a/addons/account_invoice_layout/i18n/hr.po b/addons/account_invoice_layout/i18n/hr.po index 8c006706eaa..93e3154792a 100644 --- a/addons/account_invoice_layout/i18n/hr.po +++ b/addons/account_invoice_layout/i18n/hr.po @@ -7,37 +7,37 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2009-09-08 14:10+0000\n" +"PO-Revision-Date: 2011-12-08 17:04+0000\n" "Last-Translator: Ivica Perić <ivica.peric@ipsoft-tg.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: 2011-11-05 05:22+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 msgid "Sub Total" -msgstr "Međuzbroj" +msgstr "Podzbroj" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Note:" -msgstr "Bilješka:" +msgstr "Napomena:" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Cancelled Invoice" -msgstr "Poništeni račun" +msgstr "Otkazani račun" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 #: field:notify.message,name:0 msgid "Title" -msgstr "" +msgstr "Naslov" #. module: account_invoice_layout #: model:ir.actions.act_window,name:account_invoice_layout.action_account_invoice_special_msg @@ -49,7 +49,7 @@ msgstr "Fakure sa izgledom i porukom" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Disc. (%)" -msgstr "Popust (%)" +msgstr "Pop.(%)" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 @@ -59,13 +59,13 @@ msgstr "Bilješka" #. module: account_invoice_layout #: model:ir.model,name:account_invoice_layout.model_notify_message msgid "Notify By Messages" -msgstr "" +msgstr "Obavijesti po porukama" #. module: account_invoice_layout #: help:notify.message,msg:0 msgid "" "This notification will appear at the bottom of the Invoices when printed." -msgstr "Ova poruka će se pojaviti na dnu ispisanih faktura." +msgstr "Ova poruka će se ispisati na podnožju računa." #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -97,132 +97,132 @@ msgstr "" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "VAT :" -msgstr "" +msgstr "PDV :" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Tel. :" -msgstr "" +msgstr "Tel.:" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "PRO-FORMA" -msgstr "" +msgstr "Pro-forma" #. module: account_invoice_layout #: field:account.invoice,abstract_line_ids:0 msgid "Invoice Lines" -msgstr "" +msgstr "Stavke računa" #. module: account_invoice_layout #: view:account.invoice.line:0 msgid "Seq." -msgstr "" +msgstr "R.br." #. module: account_invoice_layout #: model:ir.ui.menu,name:account_invoice_layout.menu_finan_config_notify_message msgid "Notification Message" -msgstr "" +msgstr "Notification Message" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 msgid "Product" -msgstr "" +msgstr "Proizvod" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Description" -msgstr "" +msgstr "Opis" #. module: account_invoice_layout #: help:account.invoice.line,sequence:0 msgid "Gives the sequence order when displaying a list of invoice lines." -msgstr "" +msgstr "Gives the sequence order when displaying a list of invoice lines." #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Price" -msgstr "" +msgstr "Cijena" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Invoice Date" -msgstr "" +msgstr "Datum računa" #. module: account_invoice_layout #: report:account.invoice.layout:0 msgid "Taxes:" -msgstr "" +msgstr "Porezi:" #. module: account_invoice_layout #: field:account.invoice.line,functional_field:0 msgid "Source Account" -msgstr "" +msgstr "Konto" #. module: account_invoice_layout #: model:ir.actions.act_window,name:account_invoice_layout.notify_mesage_tree_form msgid "Write Messages" -msgstr "" +msgstr "Write Messages" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Base" -msgstr "" +msgstr "Osnovica" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 msgid "Page Break" -msgstr "" +msgstr "Page Break" #. module: account_invoice_layout #: view:notify.message:0 #: field:notify.message,msg:0 msgid "Special Message" -msgstr "" +msgstr "Posebna poruka" #. module: account_invoice_layout #: help:account.invoice.special.msg,message:0 msgid "Message to Print at the bottom of report" -msgstr "" +msgstr "Poruka na kraju ispisa" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Quantity" -msgstr "" +msgstr "Količina" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Refund" -msgstr "" +msgstr "Povrat novca" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Fax :" -msgstr "" +msgstr "Fax:" #. module: account_invoice_layout #: report:account.invoice.layout:0 msgid "Total:" -msgstr "" +msgstr "Ukupno:" #. module: account_invoice_layout #: view:account.invoice.special.msg:0 msgid "Select Message" -msgstr "" +msgstr "Select Message" #. module: account_invoice_layout #: view:notify.message:0 msgid "Messages" -msgstr "" +msgstr "Messages" #. module: account_invoice_layout #: model:ir.actions.report.xml,name:account_invoice_layout.account_invoices_1 @@ -233,66 +233,66 @@ msgstr "" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Description / Taxes" -msgstr "" +msgstr "Opis/Porezi" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Amount" -msgstr "" +msgstr "Iznos" #. module: account_invoice_layout #: model:notify.message,msg:account_invoice_layout.demo_message1 msgid "ERP & CRM Solutions..." -msgstr "" +msgstr "ERP & CRM Solutions..." #. module: account_invoice_layout #: report:notify_account.invoice:0 msgid "Net Total :" -msgstr "" +msgstr "Net Total :" #. module: account_invoice_layout #: report:notify_account.invoice:0 msgid "Total :" -msgstr "" +msgstr "Ukupno :" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Draft Invoice" -msgstr "" +msgstr "Nacrt računa" #. module: account_invoice_layout #: field:account.invoice.line,sequence:0 msgid "Sequence Number" -msgstr "" +msgstr "Redni br." #. module: account_invoice_layout #: model:ir.model,name:account_invoice_layout.model_account_invoice_special_msg msgid "Account Invoice Special Message" -msgstr "" +msgstr "Posebna poruka na računu" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Origin" -msgstr "" +msgstr "Izvor" #. module: account_invoice_layout #: field:account.invoice.line,state:0 msgid "Type" -msgstr "" +msgstr "Vrsta" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 msgid "Separator Line" -msgstr "" +msgstr "Separator Line" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Your Reference" -msgstr "" +msgstr "Vaša oznaka" #. module: account_invoice_layout #: model:ir.module.module,shortdesc:account_invoice_layout.module_meta_information @@ -303,63 +303,63 @@ msgstr "" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Supplier Invoice" -msgstr "" +msgstr "Ulazni račun" #. module: account_invoice_layout #: view:account.invoice.special.msg:0 msgid "Print" -msgstr "" +msgstr "Ispis" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Tax" -msgstr "" +msgstr "Porez" #. module: account_invoice_layout #: model:ir.model,name:account_invoice_layout.model_account_invoice_line msgid "Invoice Line" -msgstr "" +msgstr "Stavka računa" #. module: account_invoice_layout #: report:account.invoice.layout:0 msgid "Net Total:" -msgstr "" +msgstr "Ukupno netto:" #. module: account_invoice_layout #: view:notify.message:0 msgid "Write a notification or a wishful message." -msgstr "" +msgstr "Write a notification or a wishful message." #. module: account_invoice_layout #: report:account.invoice.layout:0 #: model:ir.model,name:account_invoice_layout.model_account_invoice #: report:notify_account.invoice:0 msgid "Invoice" -msgstr "" +msgstr "Račun" #. module: account_invoice_layout #: view:account.invoice.special.msg:0 msgid "Cancel" -msgstr "" +msgstr "Odustani" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Supplier Refund" -msgstr "" +msgstr "Povrat URA" #. module: account_invoice_layout #: field:account.invoice.special.msg,message:0 msgid "Message" -msgstr "" +msgstr "Poruka" #. module: account_invoice_layout #: report:notify_account.invoice:0 msgid "Taxes :" -msgstr "" +msgstr "Taxes :" #. module: account_invoice_layout #: model:ir.ui.menu,name:account_invoice_layout.menu_notify_mesage_tree_form msgid "All Notification Messages" -msgstr "" +msgstr "Sve poruke" diff --git a/addons/account_invoice_layout/i18n/pt.po b/addons/account_invoice_layout/i18n/pt.po index c458afe704a..480140f8fef 100644 --- a/addons/account_invoice_layout/i18n/pt.po +++ b/addons/account_invoice_layout/i18n/pt.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-12-09 11:41+0000\n" -"Last-Translator: OpenERP Administrators <Unknown>\n" +"PO-Revision-Date: 2011-11-23 12:19+0000\n" +"Last-Translator: Paulino Ascenção <Unknown>\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: 2011-11-05 05:22+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-24 05:00+0000\n" +"X-Generator: Launchpad (build 14336)\n" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 @@ -92,6 +92,20 @@ msgid "" "\n" " " msgstr "" +"\n" +" Este módulo disponibiliza algumas melhorias na apresentação das faturas\n" +"\n" +" Dá a possibilidade de\n" +" * pedir todas as linhas de uma fatura\n" +" * adicionar títulos, linhas de comentário, linhas de sub-total\n" +" * desenhar linhas horizontais e colocar quebras de página\n" +"\n" +" Além do mais, existe uma opção que permite imprimir todas as facturas " +"seleccionadas com uma mensagem especial em baixo. Esta capacidade pode ser " +"muito útil para imprimir facturas com desejos feliz ano novo, condições " +"pontuais especiais, etc...\n" +"\n" +" " #. module: account_invoice_layout #: report:account.invoice.layout:0 diff --git a/addons/account_invoice_layout/i18n/sr@latin.po b/addons/account_invoice_layout/i18n/sr@latin.po index 014ebe5fc60..bc921ebf179 100644 --- a/addons/account_invoice_layout/i18n/sr@latin.po +++ b/addons/account_invoice_layout/i18n/sr@latin.po @@ -8,19 +8,19 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-12-23 15:39+0000\n" -"Last-Translator: Olivier Dony (OpenERP) <Unknown>\n" +"PO-Revision-Date: 2011-11-24 20:33+0000\n" +"Last-Translator: Milan Milosevic <Unknown>\n" "Language-Team: Serbian latin <sr@latin@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:22+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-25 05:22+0000\n" +"X-Generator: Launchpad (build 14376)\n" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 msgid "Sub Total" -msgstr "Subtotal" +msgstr "Podtotal" #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -32,7 +32,7 @@ msgstr "Napomena:" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Cancelled Invoice" -msgstr "Otkazane Fakture" +msgstr "Otkazana faktura" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 @@ -44,7 +44,7 @@ msgstr "Naslov" #: model:ir.actions.act_window,name:account_invoice_layout.action_account_invoice_special_msg #: model:ir.actions.report.xml,name:account_invoice_layout.account_invoices_layout_message msgid "Invoices with Layout and Message" -msgstr "Formatirana Faktura sa Porukom" +msgstr "Formatirana faktura sa porukom" #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -60,19 +60,19 @@ msgstr "Napomena" #. module: account_invoice_layout #: model:ir.model,name:account_invoice_layout.model_notify_message msgid "Notify By Messages" -msgstr "Napomena po porukama" +msgstr "Obaveštenje putem poruke" #. module: account_invoice_layout #: help:notify.message,msg:0 msgid "" "This notification will appear at the bottom of the Invoices when printed." -msgstr "Ova napomena ce se pojaviti na dnu fakture pri stampi" +msgstr "Ova napomena će se pojaviti na dnu faktura kad se odštampa" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Unit Price" -msgstr "Jedinična cijena" +msgstr "Pojedinačna cena" #. module: account_invoice_layout #: model:ir.module.module,description:account_invoice_layout.module_meta_information @@ -93,6 +93,20 @@ msgid "" "\n" " " msgstr "" +"\n" +" Ovaj modul dodaje funkcije za poboljšanje prikaza faktura.\n" +"\n" +" Daje Vam mogućnost da\n" +" *poređate sve linije jedne fakture\n" +" *dodajete naslove, linije komentara, linije podtotala\n" +" *dodajete vodoravne linije i odvajate stranice\n" +"\n" +" Povrh toga, postoji opcija koja Vam omogućava štampu svih faktura sa " +"datom specijalnom porukom\n" +"na dnu. Ova funkcija je veoma korisna za štampu faktura sa čestitkama za " +"Novu godinu, specijalnim uslovima...\n" +"\n" +" " #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -115,7 +129,7 @@ msgstr "Predračun" #. module: account_invoice_layout #: field:account.invoice,abstract_line_ids:0 msgid "Invoice Lines" -msgstr "Stavke računa" +msgstr "Linije računa" #. module: account_invoice_layout #: view:account.invoice.line:0 @@ -125,7 +139,7 @@ msgstr "Sekv." #. module: account_invoice_layout #: model:ir.ui.menu,name:account_invoice_layout.menu_finan_config_notify_message msgid "Notification Message" -msgstr "Poruka Napomene" +msgstr "Poruka obaveštenja" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 @@ -136,12 +150,12 @@ msgstr "Proizvod" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Description" -msgstr "" +msgstr "Opis" #. module: account_invoice_layout #: help:account.invoice.line,sequence:0 msgid "Gives the sequence order when displaying a list of invoice lines." -msgstr "poredja sekvence pri prikazu liste faktura." +msgstr "Daje redosled sekvenci pri prikazu spiska linija fakture" #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -153,7 +167,7 @@ msgstr "Cena" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Invoice Date" -msgstr "Datum Fakture" +msgstr "Datum fakture" #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -163,12 +177,12 @@ msgstr "Porezi:" #. module: account_invoice_layout #: field:account.invoice.line,functional_field:0 msgid "Source Account" -msgstr "Изворни налог" +msgstr "Izvorni nalog" #. module: account_invoice_layout #: model:ir.actions.act_window,name:account_invoice_layout.notify_mesage_tree_form msgid "Write Messages" -msgstr "Napisi Poruke" +msgstr "Napiši poruke" #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -179,18 +193,18 @@ msgstr "Osnova" #. module: account_invoice_layout #: selection:account.invoice.line,state:0 msgid "Page Break" -msgstr "Прелом стране" +msgstr "Kraj stranice" #. module: account_invoice_layout #: view:notify.message:0 #: field:notify.message,msg:0 msgid "Special Message" -msgstr "Specijalna Poruka" +msgstr "Specijalna poruka" #. module: account_invoice_layout #: help:account.invoice.special.msg,message:0 msgid "Message to Print at the bottom of report" -msgstr "Poruka koja se stampa pri dnu izvestaja" +msgstr "Poruka za štampu pri dnu izveštaja" #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -202,7 +216,7 @@ msgstr "Količina" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Refund" -msgstr "Refundiraj" +msgstr "Refundiranje" #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -228,7 +242,7 @@ msgstr "Poruke" #. module: account_invoice_layout #: model:ir.actions.report.xml,name:account_invoice_layout.account_invoices_1 msgid "Invoices with Layout" -msgstr "Formatirana Faktura" +msgstr "Formatirane Fakture" #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -240,33 +254,33 @@ msgstr "Opis / Porezi" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Amount" -msgstr "Iznos" +msgstr "Količina" #. module: account_invoice_layout #: model:notify.message,msg:account_invoice_layout.demo_message1 msgid "ERP & CRM Solutions..." -msgstr "" +msgstr "ERP & CRM Rešenja..." #. module: account_invoice_layout #: report:notify_account.invoice:0 msgid "Net Total :" -msgstr "" +msgstr "Ukupno neto :" #. module: account_invoice_layout #: report:notify_account.invoice:0 msgid "Total :" -msgstr "" +msgstr "Ukupno :" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Draft Invoice" -msgstr "Neodobreni računi" +msgstr "Fakture u pripremi" #. module: account_invoice_layout #: field:account.invoice.line,sequence:0 msgid "Sequence Number" -msgstr "Broj Sekvence" +msgstr "Broj sekvence" #. module: account_invoice_layout #: model:ir.model,name:account_invoice_layout.model_account_invoice_special_msg @@ -277,7 +291,7 @@ msgstr "Specijalna poruka naloga fakture" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Origin" -msgstr "" +msgstr "Poreklo" #. module: account_invoice_layout #: field:account.invoice.line,state:0 @@ -293,18 +307,18 @@ msgstr "Linija za odvajanje" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Your Reference" -msgstr "" +msgstr "Vaš poziv na broj" #. module: account_invoice_layout #: model:ir.module.module,shortdesc:account_invoice_layout.module_meta_information msgid "Invoices Layout Improvement" -msgstr "Unapredjenje izgleda fakture" +msgstr "Unapređenje izgleda fakture" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Supplier Invoice" -msgstr "Račun dobavljača" +msgstr "Faktura dobavljača" #. module: account_invoice_layout #: view:account.invoice.special.msg:0 @@ -320,7 +334,7 @@ msgstr "Porez" #. module: account_invoice_layout #: model:ir.model,name:account_invoice_layout.model_account_invoice_line msgid "Invoice Line" -msgstr "Redak računa" +msgstr "Red fakture" #. module: account_invoice_layout #: report:account.invoice.layout:0 @@ -330,14 +344,14 @@ msgstr "Neto Ukupno" #. module: account_invoice_layout #: view:notify.message:0 msgid "Write a notification or a wishful message." -msgstr "Napisi napomenu ili celu poruku" +msgstr "Napiši obaveštenje ili neku lepu želju" #. module: account_invoice_layout #: report:account.invoice.layout:0 #: model:ir.model,name:account_invoice_layout.model_account_invoice #: report:notify_account.invoice:0 msgid "Invoice" -msgstr "Račun" +msgstr "Faktura" #. module: account_invoice_layout #: view:account.invoice.special.msg:0 @@ -348,7 +362,7 @@ msgstr "Otkaži" #: report:account.invoice.layout:0 #: report:notify_account.invoice:0 msgid "Supplier Refund" -msgstr "Povrat Dobavljaču" +msgstr "Povraćaj dobavljača" #. module: account_invoice_layout #: field:account.invoice.special.msg,message:0 @@ -358,12 +372,12 @@ msgstr "Poruka" #. module: account_invoice_layout #: report:notify_account.invoice:0 msgid "Taxes :" -msgstr "" +msgstr "Porezi :" #. module: account_invoice_layout #: model:ir.ui.menu,name:account_invoice_layout.menu_notify_mesage_tree_form msgid "All Notification Messages" -msgstr "Sve Napomene" +msgstr "Sve poruke obaveštenja" #~ msgid "" #~ "The Object name must start with x_ and not contain any special character !" diff --git a/addons/account_invoice_layout/report/report_account_invoice_layout.rml b/addons/account_invoice_layout/report/report_account_invoice_layout.rml index c2dc0e036bb..6a8a286b66c 100644 --- a/addons/account_invoice_layout/report/report_account_invoice_layout.rml +++ b/addons/account_invoice_layout/report/report_account_invoice_layout.rml @@ -193,11 +193,7 @@ </td> <td> <para style="terp_default_8">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.street) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.zip) or '' ]] [[ (o.address_invoice_id and o.address_invoice_id.city) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.state_id and o.address_invoice_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.country_id and o.address_invoice_id.country_id.name) or '' ]]</para> + <para style="terp_default_8">[[ display_address(o.address_invoice_id) ]]</para> <para style="terp_default_8"> <font color="white"> </font> </para> @@ -235,7 +231,7 @@ <para style="terp_tblheader_General_Centre">Origin</para> </td> <td> - <para style="terp_tblheader_General_Centre">Your Reference</para> + <para style="terp_tblheader_General_Centre">Customer Code</para> </td> </tr> </blockTable> diff --git a/addons/account_invoice_layout/report/special_message_invoice.rml b/addons/account_invoice_layout/report/special_message_invoice.rml index c6fc9d236fc..bfef662db85 100644 --- a/addons/account_invoice_layout/report/special_message_invoice.rml +++ b/addons/account_invoice_layout/report/special_message_invoice.rml @@ -197,11 +197,7 @@ </td> <td> <para style="terp_default_8">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.street) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.zip) or '' ]] [[ (o.address_invoice_id and o.address_invoice_id.city) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.state_id and o.address_invoice_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.country_id and o.address_invoice_id.country_id.name) or '' ]]</para> + <para style="terp_default_8">[[ display_address(o.address_invoice_id) ]]</para> <para style="terp_default_8"> <font color="white"> </font> </para> diff --git a/addons/account_payment/account_payment_view.xml b/addons/account_payment/account_payment_view.xml index 4881adc4ad1..3fc2d716e66 100644 --- a/addons/account_payment/account_payment_view.xml +++ b/addons/account_payment/account_payment_view.xml @@ -322,7 +322,5 @@ </field> </record> - <act_window domain="[('move_line_id.move_id.id', '=', move_id)]" id="act_account_invoice_2_payment_line" name="Payment Lines" res_model="payment.line" src_model="account.invoice"/> - </data> </openerp> diff --git a/addons/account_payment/i18n/hr.po b/addons/account_payment/i18n/hr.po index fbb8a4251ac..02d1ade77aa 100644 --- a/addons/account_payment/i18n/hr.po +++ b/addons/account_payment/i18n/hr.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2011-01-17 01:09+0000\n" +"PO-Revision-Date: 2011-12-08 17:06+0000\n" "Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-05 05:21+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_payment #: field:payment.order,date_scheduled:0 msgid "Scheduled date if fixed" -msgstr "Zakazani datum ako je fiskno" +msgstr "Zakazani datum ako je fiksno" #. module: account_payment #: field:payment.line,currency:0 @@ -29,7 +29,7 @@ msgstr "Valuta partnera" #. module: account_payment #: view:payment.order:0 msgid "Set to draft" -msgstr "Stavi u pripremu" +msgstr "Postavi na nacrt" #. module: account_payment #: help:payment.order,mode:0 @@ -55,7 +55,7 @@ msgstr "" #. module: account_payment #: field:payment.order,line_ids:0 msgid "Payment lines" -msgstr "Retci plaćanja" +msgstr "Redci plaćanja" #. module: account_payment #: view:payment.line:0 @@ -71,6 +71,9 @@ msgid "" " Once the bank is confirmed the state is set to 'Confirmed'.\n" " Then the order is paid the state is 'Done'." msgstr "" +"When an order is placed the state is 'Draft'.\n" +" Once the bank is confirmed the state is set to 'Confirmed'.\n" +" Then the order is paid the state is 'Done'." #. module: account_payment #: help:account.invoice,amount_to_pay:0 @@ -84,7 +87,7 @@ msgstr "" #. module: account_payment #: field:payment.mode,company_id:0 msgid "Company" -msgstr "Tvrtka" +msgstr "Organizacija" #. module: account_payment #: field:payment.order,date_prefered:0 @@ -104,7 +107,7 @@ msgstr "Stavke" #. module: account_payment #: report:payment.order:0 msgid "Used Account" -msgstr "" +msgstr "Used Account" #. module: account_payment #: field:payment.line,ml_maturity_date:0 @@ -115,23 +118,23 @@ msgstr "Datum dospijeća" #. module: account_payment #: constraint:account.move.line:0 msgid "You can not create move line on closed account." -msgstr "" +msgstr "Ne možete kreirati stavke prometa za zatvoreni račun." #. module: account_payment #: view:account.move.line:0 msgid "Account Entry Line" -msgstr "Stavke knjiženja" +msgstr "Stavke" #. module: account_payment #: view:payment.order.create:0 msgid "_Add to payment order" -msgstr "" +msgstr "_Dodaj na nalog za plaćanje" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_account_payment_populate_statement #: model:ir.actions.act_window,name:account_payment.action_account_populate_statement_confirm msgid "Payment Populate statement" -msgstr "" +msgstr "Popuni nalog za plaćanje" #. module: account_payment #: report:payment.order:0 @@ -142,17 +145,17 @@ msgstr "Iznos" #. module: account_payment #: sql_constraint:account.move.line:0 msgid "Wrong credit or debit value in accounting entry !" -msgstr "" +msgstr "Pogrešno kreditna ili debitnom vrijednost unešene stavke!" #. module: account_payment #: view:payment.order:0 msgid "Total in Company Currency" -msgstr "Ukupno u valuti tvrtke" +msgstr "Ukupno u valuti organizacije" #. module: account_payment #: selection:payment.order,state:0 msgid "Cancelled" -msgstr "Poništeno" +msgstr "Otkazani" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_payment_order_tree_new @@ -163,12 +166,12 @@ msgstr "Novi nalog za plaćanje" #: report:payment.order:0 #: field:payment.order,reference:0 msgid "Reference" -msgstr "Veza" +msgstr "Vezna oznaka" #. module: account_payment #: sql_constraint:payment.line:0 msgid "The payment line name must be unique!" -msgstr "" +msgstr "Naziv stavke plaćanja mora biti jedinstven!" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_payment_order_tree @@ -225,7 +228,7 @@ msgstr "Stanje" #: view:payment.line:0 #: view:payment.order:0 msgid "Transaction Information" -msgstr "Podatci o transakciji" +msgstr "Podaci o transakciji" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_payment_mode_form @@ -244,7 +247,7 @@ msgstr "Efektivni datum" #. module: account_payment #: field:payment.line,ml_inv_ref:0 msgid "Invoice Ref." -msgstr "" +msgstr "Poziv na br." #. module: account_payment #: help:payment.order,date_prefered:0 @@ -276,7 +279,7 @@ msgstr "Datum izvršenja" #. module: account_payment #: help:payment.mode,journal:0 msgid "Bank or Cash Journal for the Payment Mode" -msgstr "" +msgstr "Dnevnik banke ili blagajne za način plaćanja" #. module: account_payment #: selection:payment.order,date_prefered:0 @@ -297,7 +300,7 @@ msgstr "Ciljni konto" #. module: account_payment #: view:payment.order:0 msgid "Search Payment Orders" -msgstr "" +msgstr "Traži naloge za plaćanje" #. module: account_payment #: constraint:account.move.line:0 @@ -323,12 +326,12 @@ msgstr "Ukupni iznos u valuti" #. module: account_payment #: view:payment.order:0 msgid "Make Payments" -msgstr "Napravite plaćanja" +msgstr "Kreiraj plaćanja" #. module: account_payment #: field:payment.line,state:0 msgid "Communication Type" -msgstr "Vrsta veze" +msgstr "Vrsta komunikacije" #. module: account_payment #: model:ir.module.module,shortdesc:account_payment.module_meta_information @@ -338,32 +341,32 @@ msgstr "" #. module: account_payment #: field:payment.line,bank_statement_line_id:0 msgid "Bank statement line" -msgstr "" +msgstr "Redak bankovnog izvoda" #. module: account_payment #: selection:payment.order,date_prefered:0 msgid "Due date" -msgstr "" +msgstr "Datum dospijeća" #. module: account_payment #: field:account.invoice,amount_to_pay:0 msgid "Amount to be paid" -msgstr "" +msgstr "Za uplatu" #. module: account_payment #: report:payment.order:0 msgid "Currency" -msgstr "" +msgstr "Valuta" #. module: account_payment #: view:account.payment.make.payment:0 msgid "Yes" -msgstr "" +msgstr "Da" #. module: account_payment #: help:payment.line,info_owner:0 msgid "Address of the Main Partner" -msgstr "" +msgstr "Address of the Main Partner" #. module: account_payment #: help:payment.line,date:0 @@ -371,42 +374,44 @@ msgid "" "If no payment date is specified, the bank will treat this payment line " "directly" msgstr "" +"If no payment date is specified, the bank will treat this payment line " +"directly" #. module: account_payment #: model:ir.model,name:account_payment.model_account_payment_populate_statement msgid "Account Payment Populate Statement" -msgstr "" +msgstr "Popuni izvod plaćanja" #. module: account_payment #: help:payment.mode,name:0 msgid "Mode of Payment" -msgstr "" +msgstr "Način plaćanja" #. module: account_payment #: report:payment.order:0 msgid "Value Date" -msgstr "" +msgstr "Value Date" #. module: account_payment #: report:payment.order:0 msgid "Payment Type" -msgstr "" +msgstr "Uvjet plaćanja" #. module: account_payment #: help:payment.line,amount_currency:0 msgid "Payment amount in the partner currency" -msgstr "" +msgstr "Iznos plaćanja u partnerovoj valuti" #. module: account_payment #: view:payment.order:0 #: selection:payment.order,state:0 msgid "Draft" -msgstr "" +msgstr "Nacrt" #. module: account_payment #: help:payment.line,communication2:0 msgid "The successor message of Communication." -msgstr "" +msgstr "The successor message of Communication." #. module: account_payment #: code:addons/account_payment/account_move_line.py:110 @@ -417,43 +422,43 @@ msgstr "" #. module: account_payment #: help:payment.line,info_partner:0 msgid "Address of the Ordering Customer." -msgstr "" +msgstr "Adresa Uplatitelja" #. module: account_payment #: view:account.payment.populate.statement:0 msgid "Populate Statement:" -msgstr "" +msgstr "Populate Statement:" #. module: account_payment #: view:account.move.line:0 msgid "Total credit" -msgstr "" +msgstr "Ukupno potražuje" #. module: account_payment #: help:payment.order,date_scheduled:0 msgid "Select a date if you have chosen Preferred Date to be fixed." -msgstr "" +msgstr "Select a date if you have chosen Preferred Date to be fixed." #. module: account_payment #: field:payment.order,user_id:0 msgid "User" -msgstr "" +msgstr "Korisnik" #. module: account_payment #: field:account.payment.populate.statement,lines:0 #: model:ir.actions.act_window,name:account_payment.act_account_invoice_2_payment_line msgid "Payment Lines" -msgstr "" +msgstr "Stavke plaćanja" #. module: account_payment #: model:ir.model,name:account_payment.model_account_move_line msgid "Journal Items" -msgstr "" +msgstr "Stavke glavne knjige" #. module: account_payment #: constraint:account.move.line:0 msgid "Company must be same for its related account and period." -msgstr "" +msgstr "Company must be same for its related account and period." #. module: account_payment #: help:payment.line,move_line_id:0 @@ -461,104 +466,106 @@ msgid "" "This Entry Line will be referred for the information of the ordering " "customer." msgstr "" +"This Entry Line will be referred for the information of the ordering " +"customer." #. module: account_payment #: view:payment.order.create:0 msgid "Search" -msgstr "" +msgstr "Search" #. module: account_payment #: model:ir.actions.report.xml,name:account_payment.payment_order1 #: model:ir.model,name:account_payment.model_payment_order msgid "Payment Order" -msgstr "" +msgstr "Nalog za plaćanje" #. module: account_payment #: field:payment.line,date:0 msgid "Payment Date" -msgstr "" +msgstr "Datum plaćanja" #. module: account_payment #: report:payment.order:0 msgid "Total:" -msgstr "" +msgstr "Ukupno:" #. module: account_payment #: field:payment.order,date_created:0 msgid "Creation date" -msgstr "" +msgstr "Datum kreiranja" #. module: account_payment #: view:account.payment.populate.statement:0 msgid "ADD" -msgstr "" +msgstr "ADD" #. module: account_payment #: view:account.bank.statement:0 msgid "Import payment lines" -msgstr "" +msgstr "Uvezi linije plaćanja" #. module: account_payment #: field:account.move.line,amount_to_pay:0 msgid "Amount to pay" -msgstr "" +msgstr "Iznos za platiti" #. module: account_payment #: field:payment.line,amount:0 msgid "Amount in Company Currency" -msgstr "" +msgstr "Iznos u valuti organizacije" #. module: account_payment #: help:payment.line,partner_id:0 msgid "The Ordering Customer" -msgstr "" +msgstr "The Ordering Customer" #. module: account_payment #: model:ir.model,name:account_payment.model_account_payment_make_payment msgid "Account make payment" -msgstr "" +msgstr "Plaćanje" #. module: account_payment #: report:payment.order:0 msgid "Invoice Ref" -msgstr "" +msgstr "Poziv na br." #. module: account_payment #: field:payment.line,name:0 msgid "Your Reference" -msgstr "" +msgstr "Vaša oznaka" #. module: account_payment #: field:payment.order,mode:0 msgid "Payment mode" -msgstr "" +msgstr "Vrsta plaćanja" #. module: account_payment #: view:payment.order:0 msgid "Payment order" -msgstr "" +msgstr "Nalog za plaćanje" #. module: account_payment #: view:payment.line:0 #: view:payment.order:0 msgid "General Information" -msgstr "" +msgstr "Opći podaci" #. module: account_payment #: view:payment.order:0 #: selection:payment.order,state:0 msgid "Done" -msgstr "" +msgstr "Izvršeno" #. module: account_payment #: model:ir.model,name:account_payment.model_account_invoice msgid "Invoice" -msgstr "" +msgstr "Račun" #. module: account_payment #: field:payment.line,communication:0 msgid "Communication" -msgstr "" +msgstr "Veza" #. module: account_payment #: view:account.payment.make.payment:0 @@ -566,13 +573,13 @@ msgstr "" #: view:payment.order:0 #: view:payment.order.create:0 msgid "Cancel" -msgstr "" +msgstr "Odustani" #. module: account_payment #: view:payment.line:0 #: view:payment.order:0 msgid "Information" -msgstr "" +msgstr "Informacija" #. module: account_payment #: model:ir.actions.act_window,help:account_payment.action_payment_order_tree @@ -582,26 +589,30 @@ msgid "" "that should be done, keep track of all payment orders and mention the " "invoice reference and the partner the payment should be done for." msgstr "" +"Nalog za plaćanje je zahtjev za plaćanjem za plaćanjem računa dobavljaču ili " +"odobrenje kupca. Ovdje se mogu prijaviti svi nalozi za plaćanje koje je " +"potrebno izvršiti, omogućuje također praćenje naloga za plaćanje i " +"spomenutih računa i partnera koje je potrebno platiti." #. module: account_payment #: help:payment.line,amount:0 msgid "Payment amount in the company currency" -msgstr "" +msgstr "Iznos plaćanja u valuti organizacije" #. module: account_payment #: view:payment.order.create:0 msgid "Search Payment lines" -msgstr "" +msgstr "Traži stavke naloga za plaćanje" #. module: account_payment #: field:payment.line,amount_currency:0 msgid "Amount in Partner Currency" -msgstr "" +msgstr "Iznos u valuti partnera" #. module: account_payment #: field:payment.line,communication2:0 msgid "Communication 2" -msgstr "" +msgstr "Komunikacija 2" #. module: account_payment #: field:payment.line,bank_id:0 @@ -611,46 +622,46 @@ msgstr "" #. module: account_payment #: view:account.payment.make.payment:0 msgid "Are you sure you want to make payment?" -msgstr "" +msgstr "Želite dodati plaćanje?" #. module: account_payment #: view:payment.mode:0 #: field:payment.mode,journal:0 msgid "Journal" -msgstr "" +msgstr "Dnevnik" #. module: account_payment #: field:payment.mode,bank_id:0 msgid "Bank account" -msgstr "" +msgstr "Bankovni račun" #. module: account_payment #: view:payment.order:0 msgid "Confirm Payments" -msgstr "" +msgstr "Potvrdi plaćanja" #. module: account_payment #: field:payment.line,company_currency:0 #: report:payment.order:0 msgid "Company Currency" -msgstr "" +msgstr "Valuta organizacije" #. module: account_payment #: model:ir.ui.menu,name:account_payment.menu_main_payment #: view:payment.line:0 #: view:payment.order:0 msgid "Payment" -msgstr "" +msgstr "Plaćanje" #. module: account_payment #: report:payment.order:0 msgid "Payment Order / Payment" -msgstr "" +msgstr "Nalog za plaćanje / plaćanje" #. module: account_payment #: field:payment.line,move_line_id:0 msgid "Entry line" -msgstr "" +msgstr "Redak" #. module: account_payment #: help:payment.line,communication:0 @@ -658,61 +669,63 @@ msgid "" "Used as the message between ordering customer and current company. Depicts " "'What do you want to say to the recipient about this order ?'" msgstr "" +"Used as the message between ordering customer and current company. Depicts " +"'What do you want to say to the recipient about this order ?'" #. module: account_payment #: field:payment.mode,name:0 msgid "Name" -msgstr "" +msgstr "Naziv" #. module: account_payment #: report:payment.order:0 msgid "Bank Account" -msgstr "" +msgstr "Bankovni račun" #. module: account_payment #: view:payment.line:0 #: view:payment.order:0 msgid "Entry Information" -msgstr "" +msgstr "Informacije" #. module: account_payment #: model:ir.model,name:account_payment.model_payment_order_create msgid "payment.order.create" -msgstr "" +msgstr "payment.order.create" #. module: account_payment #: field:payment.line,order_id:0 msgid "Order" -msgstr "" +msgstr "Order" #. module: account_payment #: field:payment.order,total:0 msgid "Total" -msgstr "" +msgstr "Ukupno" #. module: account_payment #: view:account.payment.make.payment:0 #: model:ir.actions.act_window,name:account_payment.action_account_payment_make_payment msgid "Make Payment" -msgstr "" +msgstr "Plaćanje" #. module: account_payment #: field:payment.line,partner_id:0 #: report:payment.order:0 msgid "Partner" -msgstr "" +msgstr "Partner" #. module: account_payment #: model:ir.actions.act_window,name:account_payment.action_create_payment_order msgid "Populate Payment" -msgstr "" +msgstr "Popuni plaćanje" #. module: account_payment #: help:payment.mode,bank_id:0 msgid "Bank Account for the Payment Mode" -msgstr "" +msgstr "Račun banke za vrstu plaćanja" #. module: account_payment #: constraint:account.move.line:0 msgid "You can not create move line on view account." -msgstr "" +msgstr "Ne može se knjižiti na sintetički konto." diff --git a/addons/account_sequence/__openerp__.py b/addons/account_sequence/__openerp__.py index 31d4f373e2f..7ad66a5b428 100644 --- a/addons/account_sequence/__openerp__.py +++ b/addons/account_sequence/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'Entries Sequence Numbering', 'version': '1.1', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'complexity': "easy", 'description': """ This module maintains internal sequence number for accounting entries. diff --git a/addons/account_sequence/i18n/hr.po b/addons/account_sequence/i18n/hr.po new file mode 100644 index 00000000000..14005991bb8 --- /dev/null +++ b/addons/account_sequence/i18n/hr.po @@ -0,0 +1,222 @@ +# Croatian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-12-08 15:33+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.com>\n" +"Language-Team: Croatian <hr@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" + +#. module: account_sequence +#: view:account.sequence.installer:0 +#: model:ir.actions.act_window,name:account_sequence.action_account_seq_installer +msgid "Account Sequence Application Configuration" +msgstr "Postave brojčanih serija" + +#. module: account_sequence +#: constraint:account.move:0 +msgid "" +"You cannot create entries on different periods/journals in the same move" +msgstr "" +"Sva knjiženja na jednoj temeljnici moraju imati isti period i dnevnik." + +#. module: account_sequence +#: help:account.move,internal_sequence_number:0 +#: help:account.move.line,internal_sequence_number:0 +msgid "Internal Sequence Number" +msgstr "Interni broj" + +#. module: account_sequence +#: help:account.sequence.installer,number_next:0 +msgid "Next number of this sequence" +msgstr "Slijedeći broj ove brojčane serije" + +#. module: account_sequence +#: field:account.sequence.installer,number_next:0 +msgid "Next Number" +msgstr "Sljedeći broj" + +#. module: account_sequence +#: field:account.sequence.installer,number_increment:0 +msgid "Increment Number" +msgstr "Povećati za broj" + +#. module: account_sequence +#: model:ir.module.module,description:account_sequence.module_meta_information +msgid "" +"\n" +" This module maintains internal sequence number for accounting entries.\n" +" " +msgstr "" + +#. module: account_sequence +#: model:ir.module.module,shortdesc:account_sequence.module_meta_information +msgid "Entries Sequence Numbering" +msgstr "" + +#. module: account_sequence +#: help:account.sequence.installer,number_increment:0 +msgid "The next number of the sequence will be incremented by this number" +msgstr "Korak uvećanja brojača. 1 će uvećavati brojač za jedan, 10 za 10." + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "Configure Your Account Sequence Application" +msgstr "Postavite vaše brojčane serije" + +#. module: account_sequence +#: field:account.sequence.installer,progress:0 +msgid "Configuration Progress" +msgstr "Napredak konfiguracije" + +#. module: account_sequence +#: help:account.sequence.installer,suffix:0 +msgid "Suffix value of the record for the sequence" +msgstr "Sufiks (poslije brojača) za ovu brojčanu seriju" + +#. module: account_sequence +#: field:account.sequence.installer,company_id:0 +msgid "Company" +msgstr "Organizacija" + +#. module: account_sequence +#: help:account.journal,internal_sequence_id:0 +msgid "" +"This sequence will be used to maintain the internal number for the journal " +"entries related to this journal." +msgstr "" + +#. module: account_sequence +#: field:account.sequence.installer,padding:0 +msgid "Number padding" +msgstr "Dopunjavanje na duljinu" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_move_line +msgid "Journal Items" +msgstr "Stavke glavne knjige" + +#. module: account_sequence +#: field:account.move,internal_sequence_number:0 +#: field:account.move.line,internal_sequence_number:0 +msgid "Internal Number" +msgstr "Interni broj" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "Company must be same for its related account and period." +msgstr "" + +#. module: account_sequence +#: help:account.sequence.installer,padding:0 +msgid "" +"OpenERP will automatically adds some '0' on the left of the 'Next Number' to " +"get the required padding size." +msgstr "Potreban broj vodećih \"0\" će se automatski dodati." + +#. module: account_sequence +#: field:account.sequence.installer,name:0 +msgid "Name" +msgstr "Naziv" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "You can not create move line on closed account." +msgstr "Ne možete kreirati stavke prometa za zatvoreni račun." + +#. module: account_sequence +#: constraint:account.move:0 +msgid "" +"You cannot create more than one move per period on centralized journal" +msgstr "" + +#. module: account_sequence +#: sql_constraint:account.move.line:0 +msgid "Wrong credit or debit value in accounting entry !" +msgstr "Pogrešna dugovna ili potražna vrijednost upisane stavke!" + +#. module: account_sequence +#: field:account.journal,internal_sequence_id:0 +msgid "Internal Sequence" +msgstr "Interna brojčana serija" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_sequence_installer +msgid "account.sequence.installer" +msgstr "" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "Configure" +msgstr "Postavke" + +#. module: account_sequence +#: help:account.sequence.installer,prefix:0 +msgid "Prefix value of the record for the sequence" +msgstr "Prefiks za brojčanu seriju" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_move +msgid "Account Entry" +msgstr "Temeljnica" + +#. module: account_sequence +#: field:account.sequence.installer,suffix:0 +msgid "Suffix" +msgstr "Sufiks" + +#. module: account_sequence +#: field:account.sequence.installer,config_logo:0 +msgid "Image" +msgstr "Slika" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "title" +msgstr "naslov" + +#. module: account_sequence +#: sql_constraint:account.journal:0 +msgid "The name of the journal must be unique per company !" +msgstr "Naziv dnevnika mora biti jedinstven za jednu organizaciju!" + +#. module: account_sequence +#: field:account.sequence.installer,prefix:0 +msgid "Prefix" +msgstr "Prefiks" + +#. module: account_sequence +#: sql_constraint:account.journal:0 +msgid "The code of the journal must be unique per company !" +msgstr "Šifra dnevnika mora biti jedinstvena (za organizaciju) !" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "" +"You can not create move line on receivable/payable account without partner" +msgstr "" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_journal +msgid "Journal" +msgstr "Dnevnik" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "You can enhance the Account Sequence Application by installing ." +msgstr "" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "You can not create move line on view account." +msgstr "Ne može se knjižiti na sintetički konto." diff --git a/addons/account_sequence/i18n/sr@latin.po b/addons/account_sequence/i18n/sr@latin.po new file mode 100644 index 00000000000..5bd9511ee9f --- /dev/null +++ b/addons/account_sequence/i18n/sr@latin.po @@ -0,0 +1,233 @@ +# Serbian Latin translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-11-24 21:01+0000\n" +"Last-Translator: Milan Milosevic <Unknown>\n" +"Language-Team: Serbian Latin <sr@latin@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-11-25 05:22+0000\n" +"X-Generator: Launchpad (build 14376)\n" + +#. module: account_sequence +#: view:account.sequence.installer:0 +#: model:ir.actions.act_window,name:account_sequence.action_account_seq_installer +msgid "Account Sequence Application Configuration" +msgstr "Podešavanje aplikacije nizova naloga" + +#. module: account_sequence +#: constraint:account.move:0 +msgid "" +"You cannot create entries on different periods/journals in the same move" +msgstr "" +"Ne možete napraviti ulaze za različite periode/dnevnike u jednom potezu" + +#. module: account_sequence +#: help:account.move,internal_sequence_number:0 +#: help:account.move.line,internal_sequence_number:0 +msgid "Internal Sequence Number" +msgstr "Broj unutrašnjeg niza" + +#. module: account_sequence +#: help:account.sequence.installer,number_next:0 +msgid "Next number of this sequence" +msgstr "Sledeći broj ovog niza" + +#. module: account_sequence +#: field:account.sequence.installer,number_next:0 +msgid "Next Number" +msgstr "Sledeći broj" + +#. module: account_sequence +#: field:account.sequence.installer,number_increment:0 +msgid "Increment Number" +msgstr "Inkrementalni broj" + +#. module: account_sequence +#: model:ir.module.module,description:account_sequence.module_meta_information +msgid "" +"\n" +" This module maintains internal sequence number for accounting entries.\n" +" " +msgstr "" +"\n" +" Ovaj modul održava unutrašnji niz brojeva za odgovarajuće naloge.\n" +" " + +#. module: account_sequence +#: model:ir.module.module,shortdesc:account_sequence.module_meta_information +msgid "Entries Sequence Numbering" +msgstr "Dodeljivanje brojeva nizovima ulaza" + +#. module: account_sequence +#: help:account.sequence.installer,number_increment:0 +msgid "The next number of the sequence will be incremented by this number" +msgstr "Sledeći broj ovog niza biće povećan ovim brojem" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "Configure Your Account Sequence Application" +msgstr "Podesi svoju aplikaciju za niz brojeva" + +#. module: account_sequence +#: field:account.sequence.installer,progress:0 +msgid "Configuration Progress" +msgstr "Napredak podešavanja" + +#. module: account_sequence +#: help:account.sequence.installer,suffix:0 +msgid "Suffix value of the record for the sequence" +msgstr "Sufiksalna vrednost zapisa za niz" + +#. module: account_sequence +#: field:account.sequence.installer,company_id:0 +msgid "Company" +msgstr "Preduzeće" + +#. module: account_sequence +#: help:account.journal,internal_sequence_id:0 +msgid "" +"This sequence will be used to maintain the internal number for the journal " +"entries related to this journal." +msgstr "" +"Ovaj niz će biti iskorišćen za održavanje unutrašnjeg broja za ulaze " +"dnevnika vezane za dnevnik." + +#. module: account_sequence +#: field:account.sequence.installer,padding:0 +msgid "Number padding" +msgstr "Ispunjavanje brojeva" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_move_line +msgid "Journal Items" +msgstr "Stavke dnevnika" + +#. module: account_sequence +#: field:account.move,internal_sequence_number:0 +#: field:account.move.line,internal_sequence_number:0 +msgid "Internal Number" +msgstr "Unutrašnji broj" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "Company must be same for its related account and period." +msgstr "Preduzeće mora biti isto za sve vezane račune i periode." + +#. module: account_sequence +#: help:account.sequence.installer,padding:0 +msgid "" +"OpenERP will automatically adds some '0' on the left of the 'Next Number' to " +"get the required padding size." +msgstr "" +"OpenERP će automatski dodati nekoliko '0' levo od 'Sledećeg broja' za " +"dobijanje tražene veličine ispunjavanja." + +#. module: account_sequence +#: field:account.sequence.installer,name:0 +msgid "Name" +msgstr "Naziv" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "You can not create move line on closed account." +msgstr "Ne možete da napravite poteznu liniju na zatvorenim računima." + +#. module: account_sequence +#: constraint:account.move:0 +msgid "" +"You cannot create more than one move per period on centralized journal" +msgstr "" +"Ne možete napraviti više od jednog pomeranja po periodu u centralizovanom " +"dnevniku" + +#. module: account_sequence +#: sql_constraint:account.move.line:0 +msgid "Wrong credit or debit value in accounting entry !" +msgstr "Pogrešna vrednost kredita ili debita u ulazu računa !" + +#. module: account_sequence +#: field:account.journal,internal_sequence_id:0 +msgid "Internal Sequence" +msgstr "Unutrašnji niz" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_sequence_installer +msgid "account.sequence.installer" +msgstr "account.sequence.installer" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "Configure" +msgstr "Podešavanje" + +#. module: account_sequence +#: help:account.sequence.installer,prefix:0 +msgid "Prefix value of the record for the sequence" +msgstr "Prefiksalna vrednost zapisa za niz" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_move +msgid "Account Entry" +msgstr "Ulaz naloga" + +#. module: account_sequence +#: field:account.sequence.installer,suffix:0 +msgid "Suffix" +msgstr "Sufiks" + +#. module: account_sequence +#: field:account.sequence.installer,config_logo:0 +msgid "Image" +msgstr "Slika" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "title" +msgstr "naslov" + +#. module: account_sequence +#: sql_constraint:account.journal:0 +msgid "The name of the journal must be unique per company !" +msgstr "Naziv dnevnika mora biti jedinstven po preduzeću" + +#. module: account_sequence +#: field:account.sequence.installer,prefix:0 +msgid "Prefix" +msgstr "Prefiks" + +#. module: account_sequence +#: sql_constraint:account.journal:0 +msgid "The code of the journal must be unique per company !" +msgstr "Kod dnevnika mora biti jedinstven po preduzeću !" + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "" +"You can not create move line on receivable/payable account without partner" +msgstr "" +"Ne možete napraviti poteznu liniju na primaćem/platežnom računu bez partnera" + +#. module: account_sequence +#: model:ir.model,name:account_sequence.model_account_journal +msgid "Journal" +msgstr "Dnevnik" + +#. module: account_sequence +#: view:account.sequence.installer:0 +msgid "You can enhance the Account Sequence Application by installing ." +msgstr "" +"Ne možete poboljšati Aplikaciju za nizanje naloga instaliranjem iste." + +#. module: account_sequence +#: constraint:account.move.line:0 +msgid "You can not create move line on view account." +msgstr "Ne možete napraviti poteznu liniju na računu po viđenju" diff --git a/addons/account_voucher/__openerp__.py b/addons/account_voucher/__openerp__.py index 5e6e6ab0513..74e9097b57c 100644 --- a/addons/account_voucher/__openerp__.py +++ b/addons/account_voucher/__openerp__.py @@ -20,7 +20,7 @@ ############################################################################## { - "name" : "Accounting Voucher Entries", + "name" : "eInvoicing & Payments", "version" : "1.0", "author" : 'OpenERP SA', 'complexity': "normal", @@ -32,7 +32,7 @@ Account Voucher module includes all the basic requirements of Voucher Entries fo * Voucher Receipt * Cheque Register """, - "category" : "Hidden", + "category": 'Accounting & Finance', "website" : "http://tinyerp.com", "images" : ["images/customer_payment.jpeg","images/journal_voucher.jpeg","images/sales_receipt.jpeg","images/supplier_voucher.jpeg"], "depends" : ["account"], @@ -68,6 +68,7 @@ Account Voucher module includes all the basic requirements of Voucher Entries fo ], 'certificate': '0037580727101', "active": False, + "application": True, "installable": True, } diff --git a/addons/account_voucher/account_voucher.py b/addons/account_voucher/account_voucher.py index fd6dac9f90d..535f76b8d64 100644 --- a/addons/account_voucher/account_voucher.py +++ b/addons/account_voucher/account_voucher.py @@ -90,6 +90,21 @@ class account_voucher(osv.osv): return tax_id return False + def _get_payment_rate_currency(self, cr, uid, context=None): + ''' + Return the default value for field payment_rate_currency_id: the currency of the journal + if there is one, otherwise the currency of the user's company + ''' + if context is None: context = {} + journal_pool = self.pool.get('account.journal') + journal_id = context.get('journal_id', False) + if journal_id: + journal = journal_pool.browse(cr, uid, journal_id, context=context) + if journal.currency: + return journal.currency.id + #no journal given in the context, use company currency as default + return self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id.currency_id.id + def _get_currency(self, cr, uid, context=None): if context is None: context = {} journal_pool = self.pool.get('account.journal') @@ -143,11 +158,12 @@ class account_voucher(osv.osv): res = super(account_voucher, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar, submenu=submenu) doc = etree.XML(res['arch']) - nodes = doc.xpath("//field[@name='partner_id']") + if context.get('type', 'sale') in ('purchase', 'payment'): + nodes = doc.xpath("//field[@name='partner_id']") for node in nodes: node.set('domain', "[('supplier', '=', True)]") - res['arch'] = etree.tostring(doc) + res['arch'] = etree.tostring(doc) return res def _compute_writeoff_amount(self, cr, uid, line_dr_ids, line_cr_ids, amount): @@ -158,17 +174,25 @@ class account_voucher(osv.osv): credit += l['amount'] return abs(amount - abs(credit - debit)) - def onchange_line_ids(self, cr, uid, ids, line_dr_ids, line_cr_ids, amount, context=None): + def onchange_line_ids(self, cr, uid, ids, line_dr_ids, line_cr_ids, amount, voucher_currency, context=None): context = context or {} if not line_dr_ids and not line_cr_ids: return {'value':{}} line_osv = self.pool.get("account.voucher.line") line_dr_ids = resolve_o2m_operations(cr, uid, line_osv, line_dr_ids, ['amount'], context) line_cr_ids = resolve_o2m_operations(cr, uid, line_osv, line_cr_ids, ['amount'], context) - return {'value': {'writeoff_amount': self._compute_writeoff_amount(cr, uid, line_dr_ids, line_cr_ids, amount)}} + + #loop into the lines to see if there is an amount allocated on a voucher line with a currency different than the voucher currency + is_multi_currency = False + for voucher_line in line_dr_ids+line_cr_ids: + if voucher_line.get('currency_id',False) != voucher_currency: + is_multi_currency = True + break + return {'value': {'writeoff_amount': self._compute_writeoff_amount(cr, uid, line_dr_ids, line_cr_ids, amount), 'is_multi_currency': is_multi_currency}} def _get_writeoff_amount(self, cr, uid, ids, name, args, context=None): if not ids: return {} + currency_obj = self.pool.get('res.currency') res = {} debit = credit = 0.0 for voucher in self.browse(cr, uid, ids, context=context): @@ -176,15 +200,24 @@ class account_voucher(osv.osv): debit += l.amount for l in voucher.line_cr_ids: credit += l.amount - res[voucher.id] = abs(voucher.amount - abs(credit - debit)) + currency = voucher.currency_id or voucher.company_id.currency_id + res[voucher.id] = currency_obj.round(cr, uid, currency, abs(voucher.amount - abs(credit - debit))) return res def _paid_amount_in_company_currency(self, cr, uid, ids, name, args, context=None): if not ids: return {} res = {} - debit = credit = 0.0 + voucher_rate = company_currency_rate = 1.0 for voucher in self.browse(cr, uid, ids, context=context): - res[voucher.id] = voucher.amount / voucher.payment_rate + if voucher.currency_id: + ctx = context.copy() + ctx.update({'date': voucher.date}) + voucher_rate = self.browse(cr, uid, voucher.id, context=ctx).currency_id.rate + if voucher.company_id.currency_id.id == voucher.payment_rate_currency_id.id: + company_currency_rate = voucher.payment_rate + else: + company_currency_rate = voucher.company_id.currency_id.rate + res[voucher.id] = voucher.amount / voucher_rate * company_currency_rate return res _name = 'account.voucher' @@ -241,15 +274,16 @@ class account_voucher(osv.osv): 'payment_option':fields.selection([ ('without_writeoff', 'Keep Open'), ('with_writeoff', 'Reconcile Payment Balance'), - ], 'Payment Difference', required=True, readonly=True, states={'draft': [('readonly', False)]}), - 'exchange_acc_id': fields.many2one('account.account', 'Exchange Diff. Account', readonly=True, states={'draft': [('readonly', False)]}), + ], 'Payment Difference', required=True, readonly=True, states={'draft': [('readonly', False)]}, help="This field helps you to choose what you want to do with the eventual difference between the paid amount and the sum of allocated amounts. You can either choose to keep open this difference on the partner's account, or reconcile it with the payment(s)"), 'writeoff_acc_id': fields.many2one('account.account', 'Counterpart Account', readonly=True, states={'draft': [('readonly', False)]}), 'comment': fields.char('Counterpart Comment', size=64, required=True, readonly=True, states={'draft': [('readonly', False)]}), 'analytic_id': fields.many2one('account.analytic.account','Write-Off Analytic Account', readonly=True, states={'draft': [('readonly', False)]}), - 'writeoff_amount': fields.function(_get_writeoff_amount, string='Reconcile Amount', type='float', readonly=True), - 'payment_rate': fields.float('Payment Rate', digits=(12,6), required=True, readonly=True, states={'draft': [('readonly', False)]}, - help='The rate between the journal currency and the company currency for this particular payment.'), + 'writeoff_amount': fields.function(_get_writeoff_amount, string='Difference Amount', type='float', readonly=True, help="Computed as the difference between the amount stated in the voucher and the sum of allocation on the voucher lines."), + 'payment_rate_currency_id': fields.many2one('res.currency', 'Payment Rate Currency', required=True, readonly=True, states={'draft':[('readonly',False)]}), + 'payment_rate': fields.float('Exchange Rate', digits=(12,6), required=True, readonly=True, states={'draft': [('readonly', False)]}, + help='The specific rate that will be used, in this voucher, between the selected currency (in \'Payment Rate Currency\' field) and the voucher currency.'), 'paid_amount_in_company_currency': fields.function(_paid_amount_in_company_currency, string='Paid Amount in Company Currency', type='float', readonly=True), + 'is_multi_currency': fields.boolean('Multi Currency Voucher', help='Fields with internal purpose only that depicts if the voucher is a multi currency one or not'), } _defaults = { 'period_id': _get_period, @@ -269,6 +303,7 @@ class account_voucher(osv.osv): 'payment_option': 'without_writeoff', 'comment': _('Write-Off'), 'payment_rate': 1.0, + 'payment_rate_currency_id': _get_payment_rate_currency, } def compute_tax(self, cr, uid, ids, context=None): @@ -374,7 +409,7 @@ class account_voucher(osv.osv): }) return {'value':default} - def onchange_journal_voucher(self, cr, uid, ids, line_ids=False, tax_id=False, price=0.0, partner_id=False, journal_id=False, ttype=False, context=None): + def onchange_journal_voucher(self, cr, uid, ids, line_ids=False, tax_id=False, price=0.0, partner_id=False, journal_id=False, ttype=False, company_id=False, context=None): """price Returns a dict that contains new values and context @@ -413,25 +448,78 @@ class account_voucher(osv.osv): default['value']['account_id'] = account_id default['value']['type'] = ttype or tr_type - vals = self.onchange_journal(cr, uid, ids, journal_id, line_ids, tax_id, partner_id, context) + vals = self.onchange_journal(cr, uid, ids, journal_id, line_ids, tax_id, partner_id, company_id, context) default['value'].update(vals.get('value')) return default - def onchange_rate(self, cr, uid, ids, rate, amount, context=None): - res = {'value': {'paid_amount_in_company_currency': 0.0}} - if rate and amount: - res['value']['paid_amount_in_company_currency'] = amount / rate + def onchange_rate(self, cr, uid, ids, rate, amount, currency_id, payment_rate_currency_id, company_id, context=None): + res = {'value': {'paid_amount_in_company_currency': amount}} + company_currency = self.pool.get('res.company').browse(cr, uid, company_id, context=context).currency_id + if rate and amount and currency_id:# and currency_id == payment_rate_currency_id: + voucher_rate = self.pool.get('res.currency').browse(cr, uid, currency_id, context).rate + if company_currency.id == payment_rate_currency_id: + company_rate = rate + else: + company_rate = self.pool.get('res.company').browse(cr, uid, company_id, context=context).currency_id.rate + res['value']['paid_amount_in_company_currency'] = amount / voucher_rate * company_rate return res - def onchange_amount(self, cr, uid, ids, amount, rate, partner_id, journal_id, currency_id, ttype, date, context=None): - res = self.onchange_partner_id(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context=context) - vals = self.onchange_rate(cr, uid, ids, rate, amount, context=context) + def onchange_amount(self, cr, uid, ids, amount, rate, partner_id, journal_id, currency_id, ttype, date, payment_rate_currency_id, company_id, context=None): + if context is None: + context = {} + res = self.recompute_voucher_lines(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context=context) + ctx = context.copy() + ctx.update({'date': date}) + vals = self.onchange_rate(cr, uid, ids, rate, amount, currency_id, payment_rate_currency_id, company_id, context=ctx) for key in vals.keys(): res[key].update(vals[key]) return res - def onchange_partner_id(self, cr, uid, ids, partner_id, journal_id, price, currency_id, ttype, date, context=None): + def recompute_payment_rate(self, cr, uid, ids, vals, currency_id, date, ttype, journal_id, amount, context=None): + if context is None: + context = {} + #on change of the journal, we need to set also the default value for payment_rate and payment_rate_currency_id + currency_obj = self.pool.get('res.currency') + journal = self.pool.get('account.journal').browse(cr, uid, journal_id, context=context) + company_id = journal.company_id.id + payment_rate = 1.0 + payment_rate_currency_id = currency_id + ctx = context.copy() + ctx.update({'date': date}) + o2m_to_loop = False + if ttype == 'receipt': + o2m_to_loop = 'line_cr_ids' + elif ttype == 'payment': + o2m_to_loop = 'line_dr_ids' + if o2m_to_loop and 'value' in vals and o2m_to_loop in vals['value']: + for voucher_line in vals['value'][o2m_to_loop]: + if voucher_line['currency_id'] != currency_id: + # we take as default value for the payment_rate_currency_id, the currency of the first invoice that + # is not in the voucher currency + payment_rate_currency_id = voucher_line['currency_id'] + tmp = currency_obj.browse(cr, uid, payment_rate_currency_id, context=ctx).rate + voucher_currency_id = currency_id or journal.company_id.currency_id.id + payment_rate = tmp / currency_obj.browse(cr, uid, voucher_currency_id, context=ctx).rate + break + res = self.onchange_rate(cr, uid, ids, payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context=ctx) + for key in res.keys(): + vals[key].update(res[key]) + vals['value'].update({'payment_rate': payment_rate}) + if payment_rate_currency_id: + vals['value'].update({'payment_rate_currency_id': payment_rate_currency_id}) + return vals + + def onchange_partner_id(self, cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context=None): + if not journal_id: + return {} + res = self.recompute_voucher_lines(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context=context) + vals = self.recompute_payment_rate(cr, uid, ids, res, currency_id, date, ttype, journal_id, amount, context=context) + for key in vals.keys(): + res[key].update(vals[key]) + return res + + def recompute_voucher_lines(self, cr, uid, ids, partner_id, journal_id, price, currency_id, ttype, date, context=None): """ Returns a dict that contains new values and context @@ -502,9 +590,9 @@ class account_voucher(osv.osv): #order the lines by most old first ids.reverse() - moves = move_line_pool.browse(cr, uid, ids, context=context) + account_move_lines = move_line_pool.browse(cr, uid, ids, context=context) - for line in moves: + for line in account_move_lines: if line.credit and line.reconcile_partial_id and ttype == 'receipt': continue if line.debit and line.reconcile_partial_id and ttype == 'payment': @@ -533,7 +621,7 @@ class account_voucher(osv.osv): total_debit += line.debit and line.amount_currency or 0.0 #voucher line creation - for line in moves: + for line in account_move_lines: if line.credit and line.reconcile_partial_id and ttype == 'receipt': continue if line.debit and line.reconcile_partial_id and ttype == 'payment': @@ -544,6 +632,7 @@ class account_voucher(osv.osv): else: amount_original = currency_pool.compute(cr, uid, company_currency, currency_id, line.credit or line.debit or 0.0) amount_unreconciled = currency_pool.compute(cr, uid, company_currency, currency_id, abs(line.amount_residual)) + line_currency_id = line.currency_id and line.currency_id.id or company_currency rs = { 'name':line.move_id.name, 'type': line.credit and 'dr' or 'cr', @@ -554,11 +643,11 @@ class account_voucher(osv.osv): 'date_original':line.date, 'date_due':line.date_maturity, 'amount_unreconciled': amount_unreconciled, + 'currency_id': line_currency_id, } #split voucher amount by most old first, but only for lines in the same currency if not move_line_found: - line_currency_id = line.currency_id and line.currency_id.id or company_currency if currency_id == line_currency_id: if line.credit: amount = min(amount_unreconciled, abs(total_debit)) @@ -569,7 +658,9 @@ class account_voucher(osv.osv): rs['amount'] = amount total_credit -= amount - default['value']['line_ids'].append(rs) + if rs['amount_unreconciled'] == rs['amount']: + rs['reconcile'] = True + if rs['type'] == 'cr': default['value']['line_cr_ids'].append(rs) else: @@ -582,30 +673,51 @@ class account_voucher(osv.osv): default['value']['writeoff_amount'] = self._compute_writeoff_amount(cr, uid, default['value']['line_dr_ids'], default['value']['line_cr_ids'], price) return default - def onchange_date(self, cr, uid, ids, date, currency_id, amount, context=None): + def onchange_payment_rate_currency(self, cr, uid, ids, currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context=None): + if context is None: + context = {} + res = {'value': {}} + #set the default payment rate of the voucher and compute the paid amount in company currency + if currency_id and currency_id == payment_rate_currency_id: + ctx = context.copy() + ctx.update({'date': date}) + vals = self.onchange_rate(cr, uid, ids, payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context=ctx) + for key in vals.keys(): + res[key].update(vals[key]) + return res + + def onchange_date(self, cr, uid, ids, date, currency_id, payment_rate_currency_id, amount, company_id, context=None): """ @param date: latest value from user input for field date @param args: other arguments @param context: context arguments, like lang, time zone @return: Returns a dict which contains new values, and context """ + if context is None: + context ={} res = {'value': {}} #set the period of the voucher period_pool = self.pool.get('account.period') - pids = period_pool.search(cr, uid, [('date_start', '<=', date), ('date_stop', '>=', date)]) + currency_obj = self.pool.get('res.currency') + ctx = context.copy() + ctx.update({'company_id': company_id}) + pids = period_pool.find(cr, uid, date, context=ctx) if pids: res['value'].update({'period_id':pids[0]}) - #set the default payment rate of the voucher and compute the paid amount in company currency - payment_rate = 1.0 - if currency_id: - payment_rate = self.pool.get('res.currency').browse(cr, uid, currency_id, context={'date': date}).rate - res['value'].update({'payment_rate': payment_rate}) - vals = self.onchange_rate(cr, uid, ids, payment_rate, amount, context=context) - for key in vals.keys(): - res[key].update(vals[key]) + if payment_rate_currency_id: + ctx.update({'date': date}) + payment_rate = 1.0 + if payment_rate_currency_id != currency_id: + tmp = currency_obj.browse(cr, uid, payment_rate_currency_id, context=ctx).rate + voucher_currency_id = currency_id or self.pool.get('res.company').browse(cr, uid, company_id, context=ctx).currency_id.id + payment_rate = tmp / currency_obj.browse(cr, uid, voucher_currency_id, context=ctx).rate + vals = self.onchange_payment_rate_currency(cr, uid, ids, currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context=context) + vals['value'].update({'payment_rate': payment_rate}) + for key in vals.keys(): + res[key].update(vals[key]) return res - def onchange_journal(self, cr, uid, ids, journal_id, line_ids, tax_id, partner_id, date, amount, ttype, context=None): + def onchange_journal(self, cr, uid, ids, journal_id, line_ids, tax_id, partner_id, date, amount, ttype, company_id, context=None): if not journal_id: return False journal_pool = self.pool.get('account.journal') @@ -620,11 +732,6 @@ class account_voucher(osv.osv): currency_id = False if journal.currency: currency_id = journal.currency.id - payment_rate = self.pool.get('res.currency').browse(cr, uid, currency_id, context={'date': date}).rate - vals['value'].update({'payment_rate': payment_rate}) - res = self.onchange_rate(cr, uid, ids, payment_rate, amount, context=context) - for key in res.keys(): - vals[key].update(res[key]) vals['value'].update({'currency_id': currency_id}) res = self.onchange_partner_id(cr, uid, ids, partner_id, journal_id, amount, currency_id, ttype, date, context) for key in res.keys(): @@ -730,9 +837,9 @@ class account_voucher(osv.osv): # TODO: Make this logic available. # -for sale, purchase we have but for the payment and receipt we do not have as based on the bank/cash journal we can not know its payment or receipt if voucher_brw.type in ('purchase', 'payment'): - credit = voucher_brw.amount / voucher_brw.payment_rate + credit = voucher_brw.paid_amount_in_company_currency elif voucher_brw.type in ('sale', 'receipt'): - debit = voucher_brw.amount / voucher_brw.payment_rate + debit = voucher_brw.paid_amount_in_company_currency if debit < 0: credit = -debit; debit = 0.0 if credit < 0: debit = -credit; credit = 0.0 sign = debit - credit < 0 and -1 or 1 @@ -788,9 +895,10 @@ class account_voucher(osv.osv): def _get_exchange_lines(self, cr, uid, line, move_id, amount_residual, company_currency, current_currency, context=None): ''' - Prepare the two lines due to currency rate difference. + Prepare the two lines in company currency due to currency rate difference. - :param line: browse record of the voucher.line for which we want to create currency rate difference accounting entries + :param line: browse record of the voucher.line for which we want to create currency rate difference accounting + entries :param move_id: Account move wher the move lines will be. :param amount_residual: Amount to be posted. :param company_currency: id of currency of the company to which the voucher belong @@ -798,9 +906,17 @@ class account_voucher(osv.osv): :return: the account move line and its counterpart to create, depicted as mapping between fieldname and value :rtype: tuple of dict ''' - if not line.voucher_id.exchange_acc_id.id: - raise osv.except_osv(_('Error!'), _('You must provide an account for the exchange difference.')) - + if amount_residual > 0: + account_id = line.voucher_id.company_id.expense_currency_exchange_account_id + if not account_id: + raise osv.except_osv(_('Warning'),_("Unable to create accounting entry for currency rate difference. You have to configure the field 'Income Currency Rate' on the company! ")) + else: + account_id = line.voucher_id.company_id.income_currency_exchange_account_id + if not account_id: + raise osv.except_osv(_('Warning'),_("Unable to create accounting entry for currency rate difference. You have to configure the field 'Expense Currency Rate' on the company! ")) + # Even if the amount_currency is never filled, we need to pass the foreign currency because otherwise + # the receivable/payable account may have a secondary currency, which render this field mandatory + account_currency_id = company_currency <> current_currency and current_currency or False move_line = { 'journal_id': line.voucher_id.journal_id.id, 'period_id': line.voucher_id.period_id.id, @@ -808,7 +924,7 @@ class account_voucher(osv.osv): 'account_id': line.account_id.id, 'move_id': move_id, 'partner_id': line.voucher_id.partner_id.id, - 'currency_id': company_currency <> current_currency and current_currency or False, + 'currency_id': account_currency_id, 'amount_currency': 0.0, 'quantity': 1, 'credit': amount_residual > 0 and amount_residual or 0.0, @@ -819,11 +935,11 @@ class account_voucher(osv.osv): 'journal_id': line.voucher_id.journal_id.id, 'period_id': line.voucher_id.period_id.id, 'name': _('change')+': '+(line.name or '/'), - 'account_id': line.voucher_id.exchange_acc_id.id, + 'account_id': account_id.id, 'move_id': move_id, 'amount_currency': 0.0, 'partner_id': line.voucher_id.partner_id.id, - 'currency_id': company_currency <> current_currency and current_currency or False, + 'currency_id': account_currency_id, 'quantity': 1, 'debit': amount_residual > 0 and amount_residual or 0.0, 'credit': amount_residual < 0 and -amount_residual or 0.0, @@ -831,6 +947,31 @@ class account_voucher(osv.osv): } return (move_line, move_line_counterpart) + def _convert_amount(self, cr, uid, amount, voucher_id, context=None): + ''' + This function convert the amount given in company currency. It takes either the rate in the voucher (if the + payment_rate_currency_id is relevant) either the rate encoded in the system. + + :param amount: float. The amount to convert + :param voucher: id of the voucher on which we want the conversion + :param context: to context to use for the conversion. It may contain the key 'date' set to the voucher date + field in order to select the good rate to use. + :return: the amount in the currency of the voucher's company + :rtype: float + ''' + currency_obj = self.pool.get('res.currency') + voucher = self.browse(cr, uid, voucher_id, context=context) + res = amount + if voucher.payment_rate_currency_id.id == voucher.company_id.currency_id.id: + # the rate specified on the voucher is for the company currency + rate_between_voucher_and_base = voucher.currency_id.rate or 1.0 + rate_between_base_and_company = voucher.payment_rate or 1.0 + res = currency_obj.round(cr, uid, voucher.company_id.currency_id, (amount / rate_between_voucher_and_base * rate_between_base_and_company)) + else: + # the rate specified on the voucher is not relevant, we use all the rates in the system + res = currency_obj.compute(cr, uid, voucher.currency_id.id, voucher.company_id.currency_id.id, amount, context=context) + return res + def voucher_move_line_create(self, cr, uid, voucher_id, line_total, move_id, company_currency, current_currency, context=None): ''' Create one account move line, on the given account move, per voucher line where amount is not 0.0. @@ -843,25 +984,30 @@ class account_voucher(osv.osv): :param company_currency: id of currency of the company to which the voucher belong :param current_currency: id of currency of the voucher :return: Tuple build as (remaining amount not allocated on voucher lines, list of account_move_line created in this method) - :rtype: tuple(int, list of int) + :rtype: tuple(float, list of int) ''' + if context is None: + context = {} move_line_obj = self.pool.get('account.move.line') currency_obj = self.pool.get('res.currency') tot_line = line_total rec_lst_ids = [] - voucher_brw = self.pool.get('account.voucher').browse(cr,uid,voucher_id,context) + voucher_brw = self.pool.get('account.voucher').browse(cr, uid, voucher_id, context) + ctx = context.copy() + ctx.update({'date': voucher_brw.date}) for line in voucher_brw.line_ids: #create one move line per voucher line where amount is not 0.0 if not line.amount: continue - #we check if the voucher line is fully paid or not and create a move line to balance the payment and initial invoice if needed + # convert the amount set on the voucher line into the currency of the voucher's company + amount = self._convert_amount(cr, uid, line.untax_amount or line.amount, voucher_brw.id, context=ctx) + # if the amount encoded in voucher is equal to the amount unreconciled, we need to compute the + # currency rate difference if line.amount == line.amount_unreconciled: - amount = (line.untax_amount or line.amount) / voucher_brw.payment_rate - amount_residual = line.move_line_id.amount_residual - amount #residual amount in company currency + currency_rate_difference = line.move_line_id.amount_residual - amount else: - amount = (line.untax_amount or line.amount) / voucher_brw.payment_rate - amount_residual = 0.0 + currency_rate_difference = 0.0 move_line = { 'journal_id': voucher_brw.journal_id.id, 'period_id': voucher_brw.period_id.id, @@ -869,7 +1015,7 @@ class account_voucher(osv.osv): 'account_id': line.account_id.id, 'move_id': move_id, 'partner_id': voucher_brw.partner_id.id, - 'currency_id': company_currency <> current_currency and current_currency or False, + 'currency_id': line.move_line_id and (company_currency <> line.move_line_id.currency_id.id and line.move_line_id.currency_id.id) or False, 'analytic_account_id': line.account_analytic_id and line.account_analytic_id.id or False, 'quantity': 1, 'credit': 0.0, @@ -900,18 +1046,58 @@ class account_voucher(osv.osv): if not (tax_data.base_code_id and tax_data.tax_code_id): raise osv.except_osv(_('No Account Base Code and Account Tax Code!'),_("You have to configure account base code and account tax code on the '%s' tax!") % (tax_data.name)) - sign = (move_line['debit'] - move_line['credit']) < 0 and -1 or 1 - move_line['amount_currency'] = company_currency <> current_currency and sign * line.amount or False + # compute the amount in foreign currency + foreign_currency_diff = 0.0 + amount_currency = False + if line.move_line_id: + voucher_currency = voucher_brw.currency_id and voucher_brw.currency_id.id or voucher_brw.journal_id.company_id.currency_id.id + # We want to set it on the account move line as soon as the original line had a foreign currency + if line.move_line_id.currency_id and line.move_line_id.currency_id.id != company_currency: + # we compute the amount in that foreign currency. + if line.move_line_id.currency_id.id == current_currency: + # if the voucher and the voucher line share the same currency, there is no computation to do + sign = (move_line['debit'] - move_line['credit']) < 0 and -1 or 1 + amount_currency = sign * (line.amount) + elif line.move_line_id.currency_id.id == voucher_brw.payment_rate_currency_id.id: + # if the rate is specified on the voucher, we must use it + voucher_rate = currency_obj.browse(cr, uid, voucher_currency, context=ctx).rate + amount_currency = (move_line['debit'] - move_line['credit']) * voucher_brw.payment_rate * voucher_rate + else: + # otherwise we use the rates of the system (giving the voucher date in the context) + amount_currency = currency_obj.compute(cr, uid, company_currency, line.move_line_id.currency_id.id, move_line['debit']-move_line['credit'], context=ctx) + if line.amount == line.amount_unreconciled and line.move_line_id.currency_id.id == voucher_currency: + foreign_currency_diff = line.move_line_id.amount_residual_currency + amount_currency + + move_line['amount_currency'] = amount_currency voucher_line = move_line_obj.create(cr, uid, move_line) rec_ids = [voucher_line, line.move_line_id.id] - if amount_residual: - # Change difference entry - exch_lines = self._get_exchange_lines(cr, uid, line, move_id, amount_residual, company_currency, current_currency, context=context) + if not currency_obj.is_zero(cr, uid, voucher_brw.company_id.currency_id, currency_rate_difference): + # Change difference entry in company currency + exch_lines = self._get_exchange_lines(cr, uid, line, move_id, currency_rate_difference, company_currency, current_currency, context=context) new_id = move_line_obj.create(cr, uid, exch_lines[0],context) move_line_obj.create(cr, uid, exch_lines[1], context) rec_ids.append(new_id) + if line.move_line_id and line.move_line_id.currency_id and not currency_obj.is_zero(cr, uid, line.move_line_id.currency_id, foreign_currency_diff): + # Change difference entry in voucher currency + move_line_foreign_currency = { + 'journal_id': line.voucher_id.journal_id.id, + 'period_id': line.voucher_id.period_id.id, + 'name': _('change')+': '+(line.name or '/'), + 'account_id': line.account_id.id, + 'move_id': move_id, + 'partner_id': line.voucher_id.partner_id.id, + 'currency_id': line.move_line_id.currency_id.id, + 'amount_currency': -1 * foreign_currency_diff, + 'quantity': 1, + 'credit': 0.0, + 'debit': 0.0, + 'date': line.voucher_id.date, + } + new_id = move_line_obj.create(cr, uid, move_line_foreign_currency, context=context) + rec_ids.append(new_id) + if line.move_line_id.id: rec_lst_ids.append(rec_ids) @@ -958,6 +1144,7 @@ class account_voucher(osv.osv): 'debit': diff < 0 and -diff or 0.0, 'amount_currency': company_currency <> current_currency and voucher_brw.writeoff_amount or False, 'currency_id': company_currency <> current_currency and current_currency or False, + 'analytic_account_id': voucher_brw.analytic_id and voucher_brw.analytic_id.id or False, } return move_line @@ -999,28 +1186,32 @@ class account_voucher(osv.osv): continue company_currency = self._get_company_currency(cr, uid, voucher.id, context) current_currency = self._get_current_currency(cr, uid, voucher.id, context) + # we select the context to use accordingly if it's a multicurrency case or not context = self._sel_context(cr, uid, voucher.id, context) - #Create the account move record. + # But for the operations made by _convert_amount, we always need to give the date in the context + ctx = context.copy() + ctx.update({'date': voucher.date}) + # Create the account move record. move_id = move_pool.create(cr, uid, self.account_move_get(cr, uid, voucher.id, context=context), context=context) # Get the name of the account_move just created name = move_pool.browse(cr, uid, move_id, context=context).name - #Create the first line of the voucher + # Create the first line of the voucher move_line_id = move_line_pool.create(cr, uid, self.first_move_line_get(cr,uid,voucher.id, move_id, company_currency, current_currency, context), context) move_line_brw = move_line_pool.browse(cr, uid, move_line_id, context=context) line_total = move_line_brw.debit - move_line_brw.credit rec_list_ids = [] if voucher.type == 'sale': - line_total = line_total - (voucher.tax_amount / voucher.payment_rate) + line_total = line_total - self._convert_amount(cr, uid, voucher.tax_amount, voucher.id, context=ctx) elif voucher.type == 'purchase': - line_total = line_total + (voucher.tax_amount / voucher.payment_rate) - #create one move line per voucher line where amount is not 0.0 + line_total = line_total + self._convert_amount(cr, uid, voucher.tax_amount, voucher.id, context=ctx) + # Create one move line per voucher line where amount is not 0.0 line_total, rec_list_ids = self.voucher_move_line_create(cr, uid, voucher.id, line_total, move_id, company_currency, current_currency, context) - #create the writeoff line if needed + # Create the writeoff line if needed ml_writeoff = self.writeoff_move_line_get(cr, uid, voucher.id, line_total, move_id, name, company_currency, current_currency, context) if ml_writeoff: ml_writeoff_id = move_line_pool.create(cr, uid, ml_writeoff, context) - #We post the voucher. + # We post the voucher. self.write(cr, uid, [voucher.id], { 'move_id': move_id, 'state': 'posted', @@ -1028,10 +1219,10 @@ class account_voucher(osv.osv): }) if voucher.journal_id.entry_posted: move_pool.post(cr, uid, [move_id], context={}) - #We automatically reconcile the account move lines. + # We automatically reconcile the account move lines. for rec_ids in rec_list_ids: if len(rec_ids) >= 2: - move_line_pool.reconcile_partial(cr, uid, rec_ids, writeoff_acc_id=voucher.exchange_acc_id.id, writeoff_period_id=voucher.period_id.id, writeoff_journal_id=voucher.journal_id.id) + move_line_pool.reconcile_partial(cr, uid, rec_ids, writeoff_acc_id=voucher.writeoff_acc_id.id, writeoff_period_id=voucher.period_id.id, writeoff_journal_id=voucher.journal_id.id) return True def copy(self, cr, uid, id, default={}, context=None): @@ -1083,13 +1274,28 @@ class account_voucher_line(osv.osv): rs_data[line.id] = res return rs_data + def _currency_id(self, cr, uid, ids, name, args, context=None): + ''' + This function returns the currency id of a voucher line. It's either the currency of the + associated move line (if any) or the currency of the voucher or the company currency. + ''' + res = {} + for line in self.browse(cr, uid, ids, context=context): + move_line = line.move_line_id + if move_line: + res[line.id] = move_line.currency_id and move_line.currency_id.id or move_line.company_id.currency_id.id + else: + res[line.id] = line.voucher_id.currency_id and line.voucher_id.currency_id.id or line.voucher_id.company_id.currency_id.id + return res + _columns = { 'voucher_id':fields.many2one('account.voucher', 'Voucher', required=1, ondelete='cascade'), 'name':fields.char('Description', size=256), 'account_id':fields.many2one('account.account','Account', required=True), 'partner_id':fields.related('voucher_id', 'partner_id', type='many2one', relation='res.partner', string='Partner'), 'untax_amount':fields.float('Untax Amount'), - 'amount':fields.float('Amount', digits_compute=dp.get_precision('Account')), + 'amount':fields.float('Allocation', digits_compute=dp.get_precision('Account')), + 'reconcile': fields.boolean('Full Reconcile'), 'type':fields.selection([('dr','Debit'),('cr','Credit')], 'Dr/Cr'), 'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic Account'), 'move_line_id': fields.many2one('account.move.line', 'Journal Item'), @@ -1098,11 +1304,24 @@ class account_voucher_line(osv.osv): 'amount_original': fields.function(_compute_balance, multi='dc', type='float', string='Original Amount', store=True), 'amount_unreconciled': fields.function(_compute_balance, multi='dc', type='float', string='Open Balance', store=True), 'company_id': fields.related('voucher_id','company_id', relation='res.company', type='many2one', string='Company', store=True, readonly=True), + 'currency_id': fields.function(_currency_id, string='Currency', type='many2one', relation='res.currency', readonly=True), } _defaults = { - 'name': '' + 'name': '', } + def onchange_reconcile(self, cr, uid, ids, reconcile, amount, amount_unreconciled, context=None): + vals = { 'amount': 0.0} + if reconcile: + vals = { 'amount': amount_unreconciled} + return {'value': vals} + + def onchange_amount(self, cr, uid, ids, amount, amount_unreconciled, context=None): + vals = {} + if amount: + vals['reconcile'] = (amount == amount_unreconciled) + return {'value': vals} + def onchange_move_line_id(self, cr, user, ids, move_line_id, context=None): """ Returns a dict that contains new values and context @@ -1121,10 +1340,10 @@ class account_voucher_line(osv.osv): ttype = 'dr' else: ttype = 'cr' - account_id = move_line.account_id.id res.update({ - 'account_id':account_id, - 'type': ttype + 'account_id': move_line.account_id.id, + 'type': ttype, + 'currency_id': move_line.currency_id and move_line.currency_id.id or move_line.company_id.currency_id.id, }) return { 'value':res, @@ -1261,6 +1480,7 @@ def resolve_o2m_operations(cr, uid, target_osv, operations, fields, context): result = operation[2] elif operation[0] == 1: result = target_osv.read(cr, uid, operation[1], fields, context=context) + if not result: result = {} result.update(operation[2]) elif operation[0] == 4: result = target_osv.read(cr, uid, operation[1], fields, context=context) @@ -1268,4 +1488,19 @@ def resolve_o2m_operations(cr, uid, target_osv, operations, fields, context): results.append(result) return results +class res_company(osv.osv): + _inherit = "res.company" + _columns = { + 'income_currency_exchange_account_id': fields.many2one( + 'account.account', + string="Income Currency Rate", + domain="[('type', '=', 'other')]",), + 'expense_currency_exchange_account_id': fields.many2one( + 'account.account', + string="Expense Currency Rate", + domain="[('type', '=', 'other')]",), + } + +res_company() + # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/account_voucher/account_voucher_report.xml b/addons/account_voucher/account_voucher_report.xml index 8af204efbbe..97de2b89f3a 100644 --- a/addons/account_voucher/account_voucher_report.xml +++ b/addons/account_voucher/account_voucher_report.xml @@ -11,13 +11,14 @@ header = "False" menu="True"/> --> - <report id="report_account_voucher_print" +<!-- This report is awfull so it's better to hide it --> +<!-- <report id="report_account_voucher_print" string="Voucher Print" model="account.voucher" name="voucher.print" rml="account_voucher/report/account_voucher_print.rml" auto="False" header = "False" - menu="True"/> + menu="True"/>--> </data> </openerp> diff --git a/addons/account_voucher/account_voucher_view.xml b/addons/account_voucher/account_voucher_view.xml index 4e218e04714..cbe35b5fc5f 100644 --- a/addons/account_voucher/account_voucher_view.xml +++ b/addons/account_voucher/account_voucher_view.xml @@ -259,5 +259,19 @@ </field> </record> + <!-- res.company form view --> + <record model="ir.ui.view" id="view_company_inherit_currency_xchange_form"> + <field name="name">res.company.form.inherit</field> + <field name="inherit_id" ref="base.view_company_form"/> + <field name="model">res.company</field> + <field name="type">form</field> + <field name="arch" type="xml"> + <field name="currency_id" position="after"> + <field name="income_currency_exchange_account_id" colspan="2"/> + <field name="expense_currency_exchange_account_id" colspan="2"/> + </field> + </field> + </record> + </data> </openerp> diff --git a/addons/account_voucher/i18n/hr.po b/addons/account_voucher/i18n/hr.po index 3b1a5db220d..5904967f99a 100644 --- a/addons/account_voucher/i18n/hr.po +++ b/addons/account_voucher/i18n/hr.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2011-03-03 13:20+0000\n" +"PO-Revision-Date: 2011-12-08 17:08+0000\n" "Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-05 05:33+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: account_voucher #: view:account.voucher.unreconcile:0 msgid "Unreconciliation transactions" -msgstr "" +msgstr "Transakcije poništavanja zatvaranja" #. module: account_voucher #: code:addons/account_voucher/account_voucher.py:247 @@ -30,12 +30,12 @@ msgstr "Otpis" #. module: account_voucher #: view:account.voucher:0 msgid "Payment Ref" -msgstr "" +msgstr "Oznaka plaćanja" #. module: account_voucher #: view:account.voucher:0 msgid "Open Customer Journal Entries" -msgstr "" +msgstr "Otvori temeljnice kupaca" #. module: account_voucher #: view:sale.receipt.report:0 @@ -85,7 +85,7 @@ msgstr "" #: view:account.voucher:0 #: model:ir.actions.act_window,name:account_voucher.act_pay_bills msgid "Bill Payment" -msgstr "" +msgstr "Plaćanje računa" #. module: account_voucher #: code:addons/account_voucher/account_voucher.py:746 @@ -105,7 +105,7 @@ msgstr "Uvoz stavki" #. module: account_voucher #: model:ir.model,name:account_voucher.model_account_voucher_unreconcile msgid "Account voucher unreconcile" -msgstr "Poništi zatvaranja plaćanja" +msgstr "Poništi zatvaranja" #. module: account_voucher #: selection:sale.receipt.report,month:0 @@ -120,11 +120,14 @@ msgid "" "automatically and you can record the customer payment related to this sales " "receipt." msgstr "" +"Kada prodate proizvod kupci dužni ste mu izdati račun. Potvrdom računa " +"kreiraju se knjigovodstvene stavke dugovanja kupca i tada možete " +"evidentirati plaćanje kupca vezano na ovu prodaju." #. module: account_voucher #: view:account.voucher:0 msgid "Pay Bill" -msgstr "" +msgstr "Plati račun" #. module: account_voucher #: field:account.voucher,company_id:0 @@ -132,66 +135,66 @@ msgstr "" #: view:sale.receipt.report:0 #: field:sale.receipt.report,company_id:0 msgid "Company" -msgstr "Tvrtka" +msgstr "Organizacija" #. module: account_voucher #: view:account.voucher:0 msgid "Set to Draft" -msgstr "" +msgstr "Postavi na nacrt" #. module: account_voucher #: help:account.voucher,reference:0 msgid "Transaction reference number." -msgstr "" +msgstr "Transaction reference number." #. module: account_voucher #: model:ir.actions.act_window,name:account_voucher.action_view_account_voucher_unreconcile msgid "Unreconcile entries" -msgstr "" +msgstr "Otvori stavke" #. module: account_voucher #: view:account.voucher:0 msgid "Voucher Statistics" -msgstr "" +msgstr "Statistike vaučera" #. module: account_voucher #: view:account.voucher:0 msgid "Validate" -msgstr "" +msgstr "Potvrdi" #. module: account_voucher #: view:sale.receipt.report:0 #: field:sale.receipt.report,day:0 msgid "Day" -msgstr "" +msgstr "Dan" #. module: account_voucher #: view:account.voucher:0 msgid "Search Vouchers" -msgstr "" +msgstr "Traži vaučere" #. module: account_voucher #: selection:account.voucher,type:0 #: selection:sale.receipt.report,type:0 msgid "Purchase" -msgstr "" +msgstr "Nabava" #. module: account_voucher #: field:account.voucher,account_id:0 #: field:account.voucher.line,account_id:0 #: field:sale.receipt.report,account_id:0 msgid "Account" -msgstr "" +msgstr "Konto" #. module: account_voucher #: field:account.voucher,line_dr_ids:0 msgid "Debits" -msgstr "" +msgstr "Dugovanja" #. module: account_voucher #: view:account.statement.from.invoice.lines:0 msgid "Ok" -msgstr "" +msgstr "U redu" #. module: account_voucher #: model:ir.actions.act_window,help:account_voucher.action_sale_receipt_report_all @@ -200,6 +203,8 @@ msgid "" "customer as well as payment delays. The tool search can also be used to " "personalise your Invoices reports and so, match this analysis to your needs." msgstr "" +"Pregled fakturiranih iznosa i kašnjenja plaćanja. Za prilagodbu izvještaja " +"vašim potrebama koristite funkcionalnosti traženja i grupiranja." #. module: account_voucher #: field:account.voucher,date_due:0 @@ -207,12 +212,12 @@ msgstr "" #: view:sale.receipt.report:0 #: field:sale.receipt.report,date_due:0 msgid "Due Date" -msgstr "" +msgstr "Datum dospijeća" #. module: account_voucher #: field:account.voucher,narration:0 msgid "Notes" -msgstr "" +msgstr "Bilješke" #. module: account_voucher #: model:ir.actions.act_window,help:account_voucher.action_vendor_receipt @@ -223,22 +228,25 @@ msgid "" "to you automatically the reconciliation of this payment with the open " "invoices or sales receipts." msgstr "" +"Uplate kupaca evidentiraju primljena plaćanja kupaca. Upišite kupca, način " +"plaćanja=dnevnik i iznos plaćanja. OpenERP će predložiti zatvaranje plaćanja " +"s otvorenim računom(ima) ili drugim otvorenim stavkama tog partnera." #. module: account_voucher #: selection:account.voucher,type:0 #: selection:sale.receipt.report,type:0 msgid "Sale" -msgstr "" +msgstr "Prodaja" #. module: account_voucher #: field:account.voucher.line,move_line_id:0 msgid "Journal Item" -msgstr "" +msgstr "Stavka dnevnika" #. module: account_voucher #: field:account.voucher,reference:0 msgid "Ref #" -msgstr "" +msgstr "Ref #" #. module: account_voucher #: field:account.voucher.line,amount:0 @@ -249,28 +257,28 @@ msgstr "" #. module: account_voucher #: view:account.voucher:0 msgid "Payment Options" -msgstr "" +msgstr "Opcije plaćanja" #. module: account_voucher #: view:account.voucher:0 msgid "Other Information" -msgstr "" +msgstr "Ostali podaci" #. module: account_voucher #: selection:account.voucher,state:0 #: selection:sale.receipt.report,state:0 msgid "Cancelled" -msgstr "" +msgstr "Otkazani" #. module: account_voucher #: field:account.statement.from.invoice,date:0 msgid "Date payment" -msgstr "" +msgstr "Datum plaćanja" #. module: account_voucher #: model:ir.model,name:account_voucher.model_account_bank_statement_line msgid "Bank Statement Line" -msgstr "" +msgstr "Redak bankovnog izvoda" #. module: account_voucher #: model:ir.actions.act_window,name:account_voucher.action_purchase_receipt @@ -282,12 +290,12 @@ msgstr "" #: view:account.voucher:0 #: view:account.voucher.unreconcile:0 msgid "Unreconcile" -msgstr "" +msgstr "Otvori stavke" #. module: account_voucher #: field:account.voucher,tax_id:0 msgid "Tax" -msgstr "" +msgstr "Porez" #. module: account_voucher #: report:voucher.print:0 @@ -298,32 +306,32 @@ msgstr "" #: view:sale.receipt.report:0 #: field:sale.receipt.report,nbr:0 msgid "# of Voucher Lines" -msgstr "" +msgstr "# linija vaučera" #. module: account_voucher #: field:account.voucher.line,account_analytic_id:0 msgid "Analytic Account" -msgstr "" +msgstr "Konto analitike" #. module: account_voucher #: view:account.voucher:0 msgid "Payment Information" -msgstr "" +msgstr "Informacije uplate" #. module: account_voucher #: view:account.statement.from.invoice:0 msgid "Go" -msgstr "" +msgstr "Go" #. module: account_voucher #: view:account.voucher:0 msgid "Paid Amount" -msgstr "" +msgstr "Plaćeni iznos" #. module: account_voucher #: view:account.bank.statement:0 msgid "Import Invoices" -msgstr "" +msgstr "Uvoz računa" #. module: account_voucher #: report:voucher.print:0 @@ -334,7 +342,7 @@ msgstr "" #: selection:account.voucher,type:0 #: selection:sale.receipt.report,type:0 msgid "Receipt" -msgstr "" +msgstr "Receipt" #. module: account_voucher #: report:voucher.print:0 @@ -349,7 +357,7 @@ msgstr "" #. module: account_voucher #: view:account.voucher:0 msgid "Sales Lines" -msgstr "" +msgstr "Stavke prodaje" #. module: account_voucher #: report:voucher.print:0 @@ -360,14 +368,14 @@ msgstr "" #: view:account.voucher:0 #: field:account.voucher,period_id:0 msgid "Period" -msgstr "" +msgstr "Period" #. module: account_voucher #: view:account.voucher:0 #: field:account.voucher,state:0 #: view:sale.receipt.report:0 msgid "State" -msgstr "" +msgstr "Stanje" #. module: account_voucher #: model:ir.module.module,shortdesc:account_voucher.module_meta_information @@ -378,18 +386,18 @@ msgstr "" #: view:sale.receipt.report:0 #: field:sale.receipt.report,type:0 msgid "Type" -msgstr "" +msgstr "Vrsta" #. module: account_voucher #: field:account.voucher.unreconcile,remove:0 msgid "Want to remove accounting entries too ?" -msgstr "" +msgstr "Želite li ukloniti i knjigovodstvene unose?" #. module: account_voucher #: view:account.voucher:0 #: model:ir.actions.act_window,name:account_voucher.act_journal_voucher_open msgid "Voucher Entries" -msgstr "" +msgstr "Stavke vaučera" #. module: account_voucher #: code:addons/account_voucher/account_voucher.py:645 @@ -400,24 +408,24 @@ msgstr "" #. module: account_voucher #: view:account.voucher:0 msgid "Supplier Voucher" -msgstr "" +msgstr "Vaučer dobavljača" #. module: account_voucher #: model:ir.actions.act_window,name:account_voucher.action_review_voucher_list msgid "Vouchers Entries" -msgstr "" +msgstr "Stavke vaučera" #. module: account_voucher #: field:account.voucher,name:0 msgid "Memo" -msgstr "" +msgstr "Memo" #. module: account_voucher #: view:account.voucher:0 #: model:ir.actions.act_window,name:account_voucher.action_sale_receipt #: model:ir.ui.menu,name:account_voucher.menu_action_sale_receipt msgid "Sales Receipt" -msgstr "" +msgstr "Izdani vaučeri" #. module: account_voucher #: code:addons/account_voucher/account_voucher.py:596 @@ -428,30 +436,30 @@ msgstr "" #. module: account_voucher #: view:account.voucher:0 msgid "Bill Information" -msgstr "" +msgstr "Bill Information" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "July" -msgstr "" +msgstr "Srpanj" #. module: account_voucher #: view:account.voucher.unreconcile:0 msgid "Unreconciliation" -msgstr "" +msgstr "Poništavanje zatvaranja IOS-a" #. module: account_voucher #: view:sale.receipt.report:0 #: field:sale.receipt.report,due_delay:0 msgid "Avg. Due Delay" -msgstr "" +msgstr "Pros. dugovanje" #. module: account_voucher #: view:account.invoice:0 #: code:addons/account_voucher/invoice.py:32 #, python-format msgid "Pay Invoice" -msgstr "" +msgstr "Plaćanje" #. module: account_voucher #: code:addons/account_voucher/account_voucher.py:746 @@ -462,12 +470,12 @@ msgstr "" #. module: account_voucher #: field:account.voucher,tax_amount:0 msgid "Tax Amount" -msgstr "" +msgstr "Iznos poreza" #. module: account_voucher #: view:account.voucher:0 msgid "Voucher Entry" -msgstr "" +msgstr "Stavka vaučera" #. module: account_voucher #: view:account.voucher:0 @@ -476,82 +484,82 @@ msgstr "" #: view:sale.receipt.report:0 #: field:sale.receipt.report,partner_id:0 msgid "Partner" -msgstr "" +msgstr "Partner" #. module: account_voucher #: field:account.voucher,payment_option:0 msgid "Payment Difference" -msgstr "" +msgstr "Razlika plaćanja" #. module: account_voucher #: constraint:account.bank.statement.line:0 msgid "" "The amount of the voucher must be the same amount as the one on the " "statement line" -msgstr "" +msgstr "Iznos vaučera mora biti jednak iznosu stavke izvoda banke/blagajne." #. module: account_voucher #: view:account.voucher:0 msgid "To Review" -msgstr "" +msgstr "Za provjeru" #. module: account_voucher #: view:account.voucher:0 msgid "Expense Lines" -msgstr "" +msgstr "Redak troška" #. module: account_voucher #: field:account.statement.from.invoice,line_ids:0 #: field:account.statement.from.invoice.lines,line_ids:0 msgid "Invoices" -msgstr "" +msgstr "Računi" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "December" -msgstr "" +msgstr "Prosinac" #. module: account_voucher #: field:account.voucher,line_ids:0 #: view:account.voucher.line:0 #: model:ir.model,name:account_voucher.model_account_voucher_line msgid "Voucher Lines" -msgstr "" +msgstr "Linije vaučera" #. module: account_voucher #: view:sale.receipt.report:0 #: field:sale.receipt.report,month:0 msgid "Month" -msgstr "" +msgstr "Mjesec" #. module: account_voucher #: field:account.voucher,currency_id:0 #: field:sale.receipt.report,currency_id:0 msgid "Currency" -msgstr "" +msgstr "Valuta" #. module: account_voucher #: view:account.statement.from.invoice.lines:0 msgid "Payable and Receivables" -msgstr "" +msgstr "Payable and Receivables" #. module: account_voucher #: selection:account.voucher,pay_now:0 #: selection:sale.receipt.report,pay_now:0 msgid "Pay Later or Group Funds" -msgstr "" +msgstr "Pay Later or Group Funds" #. module: account_voucher #: view:sale.receipt.report:0 #: field:sale.receipt.report,user_id:0 msgid "Salesman" -msgstr "" +msgstr "Prodavač" #. module: account_voucher #: view:sale.receipt.report:0 #: field:sale.receipt.report,delay_to_pay:0 msgid "Avg. Delay To Pay" -msgstr "" +msgstr "Pros. kašnjenje" #. module: account_voucher #: view:account.voucher:0 @@ -560,7 +568,7 @@ msgstr "" #: selection:sale.receipt.report,state:0 #: report:voucher.print:0 msgid "Draft" -msgstr "" +msgstr "Nacrt" #. module: account_voucher #: field:account.voucher,writeoff_acc_id:0 @@ -576,7 +584,7 @@ msgstr "" #: view:sale.receipt.report:0 #: field:sale.receipt.report,price_total_tax:0 msgid "Total With Tax" -msgstr "" +msgstr "Ukupno s porezom" #. module: account_voucher #: report:voucher.print:0 @@ -586,7 +594,7 @@ msgstr "" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "August" -msgstr "" +msgstr "Kolovoz" #. module: account_voucher #: model:ir.actions.act_window,help:account_voucher.action_vendor_payment @@ -596,16 +604,19 @@ msgid "" "the payment, OpenERP will propose to reconcile your payment with the open " "supplier invoices or bills." msgstr "" +"Nalozi za plaćanje omogućuju upravljanje plaćanjima obveza. Nakon odabira " +"dobavljača, načina plaćanja i iznosa OpenERP će ponuditi zatvaranje " +"otvorenih računa dobavljača, odnosno svih otvorenih stavki (IOS-a) partnera." #. module: account_voucher #: view:account.voucher:0 msgid "Total Amount" -msgstr "" +msgstr "Ukupni iznos" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "June" -msgstr "" +msgstr "Lipanj" #. module: account_voucher #: field:account.voucher.line,type:0 @@ -620,30 +631,30 @@ msgstr "" #. module: account_voucher #: view:account.voucher:0 msgid "Payment Terms" -msgstr "" +msgstr "Uvjeti plaćanja" #. module: account_voucher #: view:account.voucher:0 msgid "Are you sure to unreconcile this record ?" -msgstr "" +msgstr "Sigurno želite otvoriti ovaj zapis?" #. module: account_voucher #: field:account.voucher,date:0 #: field:account.voucher.line,date_original:0 #: field:sale.receipt.report,date:0 msgid "Date" -msgstr "" +msgstr "Datum" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "November" -msgstr "" +msgstr "Studeni" #. module: account_voucher #: view:account.voucher:0 #: view:sale.receipt.report:0 msgid "Extended Filters..." -msgstr "" +msgstr "Prošireni filtri..." #. module: account_voucher #: report:voucher.print:0 @@ -653,49 +664,49 @@ msgstr "" #. module: account_voucher #: field:account.bank.statement.line,amount_reconciled:0 msgid "Amount reconciled" -msgstr "" +msgstr "Zatvoreni iznos" #. module: account_voucher #: field:account.voucher,analytic_id:0 msgid "Write-Off Analytic Account" -msgstr "" +msgstr "Write-Off Analytic Account" #. module: account_voucher #: selection:account.voucher,pay_now:0 #: selection:sale.receipt.report,pay_now:0 msgid "Pay Directly" -msgstr "" +msgstr "Pay Directly" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "October" -msgstr "" +msgstr "Listopad" #. module: account_voucher #: field:account.voucher,pre_line:0 msgid "Previous Payments ?" -msgstr "" +msgstr "Predhodna plaćanja ?" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "January" -msgstr "" +msgstr "Siječanj" #. module: account_voucher #: model:ir.actions.act_window,name:account_voucher.action_voucher_list #: model:ir.ui.menu,name:account_voucher.menu_encode_entries_by_voucher msgid "Journal Vouchers" -msgstr "" +msgstr "Dnevnik vaučera" #. module: account_voucher #: view:account.voucher:0 msgid "Compute Tax" -msgstr "" +msgstr "Izračunaj porez" #. module: account_voucher #: selection:account.voucher.line,type:0 msgid "Credit" -msgstr "" +msgstr "Potražuje" #. module: account_voucher #: code:addons/account_voucher/account_voucher.py:645 @@ -706,7 +717,7 @@ msgstr "" #. module: account_voucher #: view:account.voucher:0 msgid "Open Supplier Journal Entries" -msgstr "" +msgstr "Otvori temeljnice dobavljača" #. module: account_voucher #: report:voucher.print:0 @@ -717,28 +728,28 @@ msgstr "" #: model:ir.actions.act_window,name:account_voucher.action_vendor_payment #: model:ir.ui.menu,name:account_voucher.menu_action_vendor_payment msgid "Supplier Payment" -msgstr "" +msgstr "Plaćanja dobavljačima" #. module: account_voucher #: view:account.voucher:0 msgid "Post" -msgstr "" +msgstr "Post" #. module: account_voucher #: view:account.voucher:0 msgid "Invoices and outstanding transactions" -msgstr "" +msgstr "Računi i otvorene stavke" #. module: account_voucher #: view:sale.receipt.report:0 #: field:sale.receipt.report,price_total:0 msgid "Total Without Tax" -msgstr "" +msgstr "Uk. prije poreza" #. module: account_voucher #: view:account.voucher:0 msgid "Bill Date" -msgstr "" +msgstr "Datum računa" #. module: account_voucher #: help:account.voucher,state:0 @@ -752,55 +763,61 @@ msgid "" "\n" "* The 'Cancelled' state is used when user cancel voucher." msgstr "" +" * Vaučer je u stanju \"Nacrt\" za vrijeme upisa podataka i stavki vaučera " +"dok se ne potvrdi ili otkaže. \n" +" * U 'Pro-forma' stanju vaučeru još uvijek nije dodijeljen broj. \n" +" * Stanje 'Knjižen' označava vaučer koji je dobio broj i za koji je izrađena " +"temeljnica \n" +" * U stanju 'Otkazan' su nevažeći vaučeri" #. module: account_voucher #: view:account.voucher:0 #: model:ir.model,name:account_voucher.model_account_voucher msgid "Accounting Voucher" -msgstr "" +msgstr "Knjigovodstveni vaučer" #. module: account_voucher #: field:account.voucher,number:0 msgid "Number" -msgstr "" +msgstr "Broj" #. module: account_voucher #: model:ir.model,name:account_voucher.model_account_bank_statement msgid "Bank Statement" -msgstr "" +msgstr "Izvod banke" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "September" -msgstr "" +msgstr "Rujan" #. module: account_voucher #: view:account.voucher:0 msgid "Sales Information" -msgstr "" +msgstr "Informacije o prodaji" #. module: account_voucher #: model:ir.actions.act_window,name:account_voucher.action_sale_receipt_report_all #: model:ir.ui.menu,name:account_voucher.menu_action_sale_receipt_report_all #: view:sale.receipt.report:0 msgid "Sales Receipt Analysis" -msgstr "" +msgstr "Analiza izdanih vaučera" #. module: account_voucher #: field:account.voucher.line,voucher_id:0 #: model:res.request.link,name:account_voucher.req_link_voucher msgid "Voucher" -msgstr "" +msgstr "Vaučer" #. module: account_voucher #: model:ir.model,name:account_voucher.model_account_invoice msgid "Invoice" -msgstr "" +msgstr "Račun" #. module: account_voucher #: view:account.voucher:0 msgid "Voucher Items" -msgstr "" +msgstr "Sadržaj vaučera" #. module: account_voucher #: view:account.statement.from.invoice:0 @@ -808,20 +825,20 @@ msgstr "" #: view:account.voucher:0 #: view:account.voucher.unreconcile:0 msgid "Cancel" -msgstr "" +msgstr "Odustani" #. module: account_voucher #: selection:account.voucher,state:0 #: view:sale.receipt.report:0 #: selection:sale.receipt.report,state:0 msgid "Pro-forma" -msgstr "" +msgstr "Pro-forma" #. module: account_voucher #: view:account.voucher:0 #: field:account.voucher,move_ids:0 msgid "Journal Items" -msgstr "" +msgstr "Stavke glavne knjige" #. module: account_voucher #: view:account.voucher:0 @@ -829,28 +846,28 @@ msgstr "" #: model:ir.actions.act_window,name:account_voucher.action_vendor_receipt #: model:ir.ui.menu,name:account_voucher.menu_action_vendor_receipt msgid "Customer Payment" -msgstr "" +msgstr "Plaćanja kupaca" #. module: account_voucher #: view:account.statement.from.invoice:0 #: model:ir.actions.act_window,name:account_voucher.action_view_account_statement_from_invoice msgid "Import Invoices in Statement" -msgstr "" +msgstr "Uvezi račune na nalog" #. module: account_voucher #: view:account.voucher:0 msgid "Pay" -msgstr "" +msgstr "Pay" #. module: account_voucher #: selection:account.voucher.line,type:0 msgid "Debit" -msgstr "" +msgstr "Duguje" #. module: account_voucher #: view:account.voucher:0 msgid "Are you sure to confirm this record ?" -msgstr "" +msgstr "Are you sure to confirm this record ?" #. module: account_voucher #: selection:account.voucher,payment_option:0 @@ -860,12 +877,12 @@ msgstr "" #. module: account_voucher #: view:account.voucher:0 msgid "Payment Method" -msgstr "" +msgstr "Način plaćanja" #. module: account_voucher #: field:account.voucher.line,name:0 msgid "Description" -msgstr "" +msgstr "Opis" #. module: account_voucher #: report:voucher.print:0 @@ -875,7 +892,7 @@ msgstr "" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "May" -msgstr "" +msgstr "Svibanj" #. module: account_voucher #: field:account.statement.from.invoice,journal_ids:0 @@ -884,23 +901,23 @@ msgstr "" #: view:sale.receipt.report:0 #: field:sale.receipt.report,journal_id:0 msgid "Journal" -msgstr "" +msgstr "Dnevnik" #. module: account_voucher #: view:account.voucher:0 msgid "Internal Notes" -msgstr "" +msgstr "Interne bilješke" #. module: account_voucher #: view:account.voucher:0 #: field:account.voucher,line_cr_ids:0 msgid "Credits" -msgstr "" +msgstr "Potraživanja" #. module: account_voucher #: field:account.voucher.line,amount_original:0 msgid "Original Amount" -msgstr "" +msgstr "Originalni iznos" #. module: account_voucher #: report:voucher.print:0 @@ -916,7 +933,7 @@ msgstr "" #: field:sale.receipt.report,pay_now:0 #: selection:sale.receipt.report,type:0 msgid "Payment" -msgstr "" +msgstr "Plaćanje" #. module: account_voucher #: view:account.voucher:0 @@ -925,22 +942,22 @@ msgstr "" #: selection:sale.receipt.report,state:0 #: report:voucher.print:0 msgid "Posted" -msgstr "" +msgstr "Proknjiženo" #. module: account_voucher #: view:account.voucher:0 msgid "Customer" -msgstr "" +msgstr "Kupac" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "February" -msgstr "" +msgstr "Veljača" #. module: account_voucher #: view:account.voucher:0 msgid "Supplier Invoices and Outstanding transactions" -msgstr "" +msgstr "Ulazni računi i otvorene stavke" #. module: account_voucher #: field:account.voucher,comment:0 @@ -950,38 +967,38 @@ msgstr "" #. module: account_voucher #: selection:sale.receipt.report,month:0 msgid "April" -msgstr "" +msgstr "Travanj" #. module: account_voucher #: field:account.voucher,type:0 msgid "Default Type" -msgstr "" +msgstr "Uobičajeni tip" #. module: account_voucher #: model:ir.model,name:account_voucher.model_account_statement_from_invoice #: model:ir.model,name:account_voucher.model_account_statement_from_invoice_lines msgid "Entries by Statement from Invoices" -msgstr "" +msgstr "Stavke po izvodu iz računa" #. module: account_voucher #: field:account.voucher,move_id:0 msgid "Account Entry" -msgstr "" +msgstr "Temeljnica" #. module: account_voucher #: field:sale.receipt.report,state:0 msgid "Voucher State" -msgstr "" +msgstr "Stanje vaučera" #. module: account_voucher #: help:account.voucher,date:0 msgid "Effective date for accounting entries" -msgstr "" +msgstr "Effective date for accounting entries" #. module: account_voucher #: selection:account.voucher,payment_option:0 msgid "Keep Open" -msgstr "" +msgstr "Ostavi otvoreno" #. module: account_voucher #: view:account.voucher.unreconcile:0 @@ -989,31 +1006,36 @@ msgid "" "If you unreconciliate transactions, you must also verify all the actions " "that are linked to those transactions because they will not be disable" msgstr "" +"Ako želite poništiti zatvaranja transakcija, morate također provjeriti sve " +"radnje koje su povezane sa tim transakcijama jer neće biti onemogućene" #. module: account_voucher #: field:account.voucher.line,untax_amount:0 msgid "Untax Amount" -msgstr "" +msgstr "Osnovica" #. module: account_voucher #: model:ir.model,name:account_voucher.model_sale_receipt_report msgid "Sales Receipt Statistics" -msgstr "" +msgstr "Statistika izdanih vaučera" #. module: account_voucher #: view:sale.receipt.report:0 #: field:sale.receipt.report,year:0 msgid "Year" -msgstr "" +msgstr "Godina" #. module: account_voucher #: view:account.voucher:0 #: field:account.voucher.line,amount_unreconciled:0 msgid "Open Balance" -msgstr "" +msgstr "Otvoreni saldo" #. module: account_voucher #: view:account.voucher:0 #: field:account.voucher,amount:0 msgid "Total" -msgstr "" +msgstr "Ukupno" + +#~ msgid "Dr/Cr" +#~ msgstr "Dr/Cr" diff --git a/addons/account_voucher/test/account_voucher.yml b/addons/account_voucher/test/account_voucher.yml index 33ae609e3f3..7e5482aa931 100644 --- a/addons/account_voucher/test/account_voucher.yml +++ b/addons/account_voucher/test/account_voucher.yml @@ -5,7 +5,6 @@ account_id: account.cash amount: 1000.0 company_id: base.main_company - currency_id: base.EUR journal_id: account.bank_journal name: Voucher for Axelor narration: Basic Pc diff --git a/addons/account_voucher/test/account_voucher_report.yml b/addons/account_voucher/test/account_voucher_report.yml index 39e9c2144a2..85432f747aa 100644 --- a/addons/account_voucher/test/account_voucher_report.yml +++ b/addons/account_voucher/test/account_voucher_report.yml @@ -1,10 +1,9 @@ - Demo for Account Voucher - - !record {model: account.voucher, id: account_voucher_voucheraxelor0}: + !record {model: account.voucher, id: account_voucher_voucheraxelor0again}: account_id: account.cash company_id: base.main_company - currency_id: base.EUR journal_id: account.bank_journal name: Voucher Axelor narration: Basic PC @@ -20,6 +19,6 @@ - !python {model: account.voucher}: | import netsvc, tools, os - (data, format) = netsvc.LocalService('report.voucher.cash_receipt.drcr').create(cr, uid, [ref("account_voucher_voucheraxelor0")], {}, {}) + (data, format) = netsvc.LocalService('report.voucher.cash_receipt.drcr').create(cr, uid, [ref("account_voucher_voucheraxelor0again")], {}, {}) if tools.config['test_report_directory']: file(os.path.join(tools.config['test_report_directory'], 'account_voucher-report.'+format), 'wb+').write(data) diff --git a/addons/account_voucher/test/case1_usd_usd.yml b/addons/account_voucher/test/case1_usd_usd.yml index b37a87405cc..3432d3cf27b 100644 --- a/addons/account_voucher/test/case1_usd_usd.yml +++ b/addons/account_voucher/test/case1_usd_usd.yml @@ -2,6 +2,15 @@ In order to check the Account_voucher module with multi-currency in OpenERP, I create 2 Invoices in USD and make 2 Payments in USD based on the currency rating on that particular date - + I set the income and expense currency accounts on the main company +- + !python {model: res.company}: | + from datetime import datetime + vals = { + 'income_currency_exchange_account_id': ref('account.o_expense'), + 'expense_currency_exchange_account_id': ref('account.o_expense')} + self.write(cr, uid, ref('base.main_company'), vals) +- I create currency USD in OpenERP for January of 1.333333 Rate - !python {model: res.currency.rate}: | @@ -35,6 +44,16 @@ rate: 1.052632 - + I create a cash account with currency USD +- + !record {model: account.account, id: account_cash_usd_id}: + currency_id: base.USD + name: "cash account in usd" + code: "Xcash usd" + type: 'liquidity' + user_type: "account.account_type_cash_moves" + +- I create a bank journal with USD as currency - !record {model: account.journal, id: bank_journal_USD}: @@ -43,8 +62,8 @@ type: bank analytic_journal_id: account.sit sequence_id: account.sequence_bank_journal - default_debit_account_id: account.cash - default_credit_account_id: account.cash + default_debit_account_id: account_cash_usd_id + default_credit_account_id: account_cash_usd_id currency: base.USD company_id: base.main_company view_id: account.account_journal_bank_view @@ -121,39 +140,41 @@ assert (move_line.debit - move_line.credit == 80), "Invoice move is not correct for debtors account" - - I create the first voucher of payment - <create with values 240 USD, journal USD, and fill amounts 180 for the invoice of 200$ and 70 for the invoice of 100$> + I set the context that will be used for the encoding of all the vouchers of this file +- + !context + 'type': 'receipt' +- + I create the first voucher of payment with values 240 USD, journal USD, +- + !record {model: account.voucher, id: account_voucher_1_case1, view: view_vendor_receipt_form}: + account_id: account.cash + amount: 240.0 + company_id: base.main_company + journal_id: bank_journal_USD + name: 'First payment: Case 1 USD/USD' + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-03-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + +- + I fill amounts 180 for the invoice of 200$ and 70 for the invoice of 100$> - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_USD'), 240.00, 2, ttype='receipt', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 240.00, - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.USD'), - 'journal_id': ref('bank_journal_USD'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'receipt', - 'date': time.strftime("%Y-%m-%d"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'comment': 'Write Off', - 'name': 'First payment: Case 1 USD/USD', - } - vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-03-01'), ref('base.USD'), 240)['value']) - if not res['value']['line_cr_ids']: - res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}] - for item in res['value']['line_cr_ids']: - if item['amount_unreconciled'] == 200.00: - item['amount'] = 180.00 + voucher_id = self.browse(cr, uid, ref('account_voucher_1_case1')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 200.00: + data += [(item.id, 180.0)] else: - item['amount'] = 70.00 - vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + data += [(item.id, 70.0)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I check that writeoff amount computed is 10.0 @@ -218,41 +239,35 @@ move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.amount_residual_currency == 30.0) , "Residual amount is not correct for first Invoice" - - I create the second voucher of payment - <create with values 45 USD, journal USD, and fill amounts 20 for the invoice of 200$ and 30 for the invoice of 100$> - + I create the second voucher of payment with values 45 USD, journal USD, +- + !record {model: account.voucher, id: account_voucher_2_case1}: + account_id: account.cash + amount: 45.0 + company_id: base.main_company + journal_id: bank_journal_USD + name: 'Second payment: Case 1' + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-04-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' +- + I fill amounts 20 for the invoice of 200$ and 30 for the invoice of 100$ - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_USD'), 45.00, 2, ttype='receipt', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 45.00, - 'exchange_acc_id': ref('account.o_expense'), - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.USD'), - 'journal_id': ref('bank_journal_USD'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'receipt', - 'date': time.strftime("%Y-%m-%d"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'comment': 'Write Off', - 'name': 'Second payment: Case 1', - } - vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-04-01'), ref('base.USD'), 45.0)['value']) - if not res['value']['line_cr_ids']: - res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}] - for item in res['value']['line_cr_ids']: - if item['amount_unreconciled'] == 20.00: - item['amount'] = 20.00 + voucher_id = self.browse(cr, uid, ref('account_voucher_2_case1')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 20.00: + data += [(item.id, 20.0)] else: - item['amount'] = 30.00 - vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + data += [(item.id, 30.0)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I check that writeoff amount computed is 5.0 diff --git a/addons/account_voucher/test/case2_suppl_usd_eur.yml b/addons/account_voucher/test/case2_suppl_usd_eur.yml index 23f11d28803..0ad523b8004 100644 --- a/addons/account_voucher/test/case2_suppl_usd_eur.yml +++ b/addons/account_voucher/test/case2_suppl_usd_eur.yml @@ -2,6 +2,15 @@ In order to check the Account_voucher module with multi-currency in OpenERP, I create 2 Invoices in USD and make 2 Payments one in USD and another in EUR, based on the currency rating on that particular date - + I set the income and expense currency accounts on the main company +- + !python {model: res.company}: | + from datetime import datetime + vals = { + 'income_currency_exchange_account_id': ref('account.o_expense'), + 'expense_currency_exchange_account_id': ref('account.o_expense')} + self.write(cr, uid, ref('base.main_company'), vals) +- I create a bank journal with EUR as currency - !record {model: account.journal, id: bank_journal_EUR}: @@ -104,38 +113,41 @@ move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.debit - move_line.credit == -80), "Invoice move is incorrect for debtors account" - - I create the first voucher of payment - <create with values 240 EUR, journal EUR, and fills amount 180 for the invoice of 200$ and 70 for the invoice of 100$> + I set the context that will be used for the encoding of all the vouchers of this file +- + !context + 'type': 'payment' +- + I create the first voucher of payment with values 240 EUR, journal EUR +- + !record {model: account.voucher, id: account_voucher_1_case2_suppl, view: view_vendor_payment_form}: + account_id: account.cash + amount: 240.0 + company_id: base.main_company + journal_id: bank_journal_EUR + name: 'First payment: Case 2 SUPPL USD/EUR', + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-03-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + +- + I fill amounts 180 for the invoice of 200$ and 70 for the invoice of 100$ - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 240.0, 2, ttype='payment', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 240.0, - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.EUR'), - 'journal_id': ref('bank_journal_EUR'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'payment', - 'date': time.strftime("%Y-03-01"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'comment': 'Write Off', - 'name': 'First payment: Case 2 SUPPL USD/EUR', - } - if not res['value']['line_dr_ids']: - res['value']['line_dr_ids'] = [{'type': 'dr', 'account_id': ref('account.a_pay'),}] - for item in res['value']['line_dr_ids']: - if item['amount_unreconciled'] == 200.00: - item['amount'] = 180.00 + voucher_id = self.browse(cr, uid, ref('account_voucher_1_case2_suppl')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 200.00: + data += [(item.id, 180.0)] else: - item['amount'] = 70.00 - vals['line_dr_ids'] = [(0,0,i) for i in res['value']['line_dr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + data += [(item.id, 70.0)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I check that writeoff amount computed is -15.0 @@ -201,7 +213,7 @@ move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)]) move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.amount_residual_currency == 20.0 and move_line.amount_residual == 15) , "Residual amount is not correct for first Invoice" -- +- I check the residual amuont of Invoice2, should be 30 in residual currency and 24 in amount_residual - !python {model: account.invoice}: | @@ -210,40 +222,37 @@ move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)]) move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.amount_residual_currency == 30 and move_line.amount_residual == 24) , "Residual amount is not correct for second Invoice" -- - I create the second voucher of payment - <create with values 45 USD, journal USD, and fill amounts 20 for the invoice of 200$ and 30 for the invoice of 100$> +- + I create the second voucher of payment with values 45 USD, journal USD, +- + !record {model: account.voucher, id: account_voucher_2_case2_suppl, view: view_vendor_payment_form}: + account_id: account.cash + amount: 45.0 + company_id: base.main_company + journal_id: bank_journal_USD + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-04-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + name: 'Second payment: Case 2 SUPPL USD/EUR' + +- + I fill amounts 20 for the invoice of 200$ and 30 for the invoice of 100$> - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 45.0, 2, ttype='payment', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 45.0, - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.USD'), - 'journal_id': ref('bank_journal_USD'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'payment', - 'date': time.strftime("%Y-%m-%d"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'comment': 'Write Off', - 'name': 'Second payment: Case 2 SUPPL USD/EUR', - } - vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-04-01'), ref('base.USD'), 45.0)['value']) - if not res['value']['line_dr_ids']: - res['value']['line_dr_ids'] = [{'type': 'dr', 'account_id': ref('account.a_pay'),}] - for item in res['value']['line_dr_ids']: - if item['amount_unreconciled'] == 20.00: - item['amount'] = 20.00 + voucher_id = self.browse(cr, uid, ref('account_voucher_2_case2_suppl')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 20.00: + data += [(item.id, 20.0)] else: - item['amount'] = 30.00 - vals['line_dr_ids'] = [(0,0,i) for i in res['value']['line_dr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + data += [(item.id, 30.0)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I check that writeoff amount computed is -5.0 diff --git a/addons/account_voucher/test/case2_usd_eur_debtor_in_eur.yml b/addons/account_voucher/test/case2_usd_eur_debtor_in_eur.yml index 11e1e3cc0c2..ac77aef622d 100644 --- a/addons/account_voucher/test/case2_usd_eur_debtor_in_eur.yml +++ b/addons/account_voucher/test/case2_usd_eur_debtor_in_eur.yml @@ -2,6 +2,15 @@ In order to check the Account_voucher module with multi-currency in OpenERP, I create 2 Invoices in USD and make 2 Payments one in USD and another in EUR, based on the currency rating on that particular date - + I set the income and expense currency accounts on the main company +- + !python {model: res.company}: | + from datetime import datetime + vals = { + 'income_currency_exchange_account_id': ref('account.o_expense'), + 'expense_currency_exchange_account_id': ref('account.o_expense')} + self.write(cr, uid, ref('base.main_company'), vals) +- I modify the debtor account in order to make sure there is no currency_id linked - !python {model: account.account}: | @@ -49,7 +58,6 @@ sequence_id: account.sequence_bank_journal default_debit_account_id: account.cash default_credit_account_id: account.cash - currency: base.EUR company_id: base.main_company view_id: account.account_journal_bank_view - @@ -61,8 +69,8 @@ type: bank analytic_journal_id: account.sit sequence_id: account.sequence_bank_journal - default_debit_account_id: account.cash - default_credit_account_id: account.cash + default_debit_account_id: account_cash_usd_id + default_credit_account_id: account_cash_usd_id currency: base.USD company_id: base.main_company view_id: account.account_journal_bank_view @@ -137,38 +145,41 @@ move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.debit - move_line.credit == 80), "Invoice move is incorrect for debtors account" - - I create the first voucher of payment - <create with values 200 EUR, journal EUR, and fills amount 130 EUR for the invoice of 200 USD and 70 EUR for the invoice of 100 USD> + I set the context that will be used for the encoding of all the vouchers of this file +- + !context + 'type': 'receipt' +- + I create the first voucher of payment with values 200 EUR, journal EUR +- + !record {model: account.voucher, id: account_voucher_1_case2a, view: view_vendor_receipt_form}: + account_id: account.cash + amount: 200.0 + company_id: base.main_company + journal_id: bank_journal_EUR + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-03-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + name: 'First payment: Case 2 USD/EUR DR EUR' + +- + I fill amounts 130 for the invoice of 200$ and 70 for the invoice of 100$ - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 240.0, False, ttype='receipt', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 200.0, - 'company_id': ref('base.main_company'), - 'currency_id': False, - 'journal_id': ref('bank_journal_EUR'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'receipt', - 'date': time.strftime("%Y-03-01"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'comment': 'Write Off', - 'name': 'First payment: Case 2 USD/EUR DR EUR', - } - if not res['value']['line_cr_ids']: - res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}] - for item in res['value']['line_cr_ids']: - if item['amount_unreconciled'] == 150.00: - item['amount'] = 130.00 + voucher_id = self.browse(cr, uid, ref('account_voucher_1_case2a')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 150.00: + data += [(item.id, 130.0)] else: - item['amount'] = 70.00 - vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + data += [(item.id, 70.0)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I confirm the voucher @@ -189,18 +200,6 @@ for move_line in move_line_obj.browse(cr, uid, move_lines): assert move_line.state == 'valid', "Voucher move is not valid" - - I check that my debtor account is correct -- - I check that the debtor account has 2 new lines with 0 in amount_currency columns and their credit columns are 130 and 70 -- - !python {model: account.voucher}: | - voucher = self.search(cr, uid, [('name', '=', 'First payment: Case 2 USD/EUR DR EUR'), ('partner_id', '=', ref('base.res_partner_seagate'))]) - voucher_id = self.browse(cr, uid, voucher[0]) - move_line_obj = self.pool.get('account.move.line') - move_lines = move_line_obj.search(cr, uid, [('move_id', '=', voucher_id.move_id.id)]) - for move_line in move_line_obj.browse(cr, uid, move_lines): - assert move_line.amount_currency == 0.00, "A line has the 'amount_currency' column filled" -- I check the residual amount of Invoice1, should be 55.56 in residual currency and 20 in amount_residual - !python {model: account.invoice}: | @@ -218,41 +217,37 @@ move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)]) move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.amount_residual_currency == 22.22 and move_line.amount_residual == 10) , "Residual amount is not correct for second Invoice" -- - I create the second voucher of payment - <create with values 80 USD, journal USD, and fully reconcile the 2 invoices> +- + I create the second voucher of payment with values 80 USD, journal USD +- + !record {model: account.voucher, id: account_voucher_2_case2a, view: view_vendor_receipt_form}: + account_id: account.cash + amount: 80 + company_id: base.main_company + journal_id: bank_journal_USD + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-04-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + name: 'Second payment: Case 2 SUPPL USD/EUR DR EUR' + +- + and I fully reconcile the 2 previous invoices - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_USD'), 80.0, 2, ttype='receipt', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 80.0, - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.USD'), - 'journal_id': ref('bank_journal_USD'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'receipt', - 'date': time.strftime("%Y-%m-%d"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'exchange_acc_id': ref('account.o_expense'), - 'comment': 'Write Off', - 'name': 'Second payment: Case 2 SUPPL USD/EUR DR EUR', - } - vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-04-01'), ref('base.USD'), 80.0)['value']) - if not res['value']['line_cr_ids']: - res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}] - for item in res['value']['line_cr_ids']: - if item['amount_unreconciled'] == 55.56: - item['amount'] = 55.56 + voucher_id = self.browse(cr, uid, ref('account_voucher_2_case2a')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 55.56: + data += [(item.id, 55.56)] else: - item['amount'] = 22.22 - vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + data += [(item.id, 22.22)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I check that writeoff amount computed is 2.22 diff --git a/addons/account_voucher/test/case2_usd_eur_debtor_in_usd.yml b/addons/account_voucher/test/case2_usd_eur_debtor_in_usd.yml index c72825cb0c7..a3a32a32082 100644 --- a/addons/account_voucher/test/case2_usd_eur_debtor_in_usd.yml +++ b/addons/account_voucher/test/case2_usd_eur_debtor_in_usd.yml @@ -2,6 +2,15 @@ In order to check the Account_voucher module with multi-currency in OpenERP, I create 2 Invoices in USD and make 2 Payments one in USD and another in EUR, based on the currency rating on that particular date - + I set the income and expense currency accounts on the main company +- + !python {model: res.company}: | + from datetime import datetime + vals = { + 'income_currency_exchange_account_id': ref('account.o_expense'), + 'expense_currency_exchange_account_id': ref('account.o_expense')} + self.write(cr, uid, ref('base.main_company'), vals) +- I modify the debtor account in order to set the currency_id = USD - !python {model: account.account}: | @@ -49,7 +58,6 @@ sequence_id: account.sequence_bank_journal default_debit_account_id: account.cash default_credit_account_id: account.cash - currency: base.EUR company_id: base.main_company view_id: account.account_journal_bank_view - @@ -61,8 +69,8 @@ type: bank analytic_journal_id: account.sit sequence_id: account.sequence_bank_journal - default_debit_account_id: account.cash - default_credit_account_id: account.cash + default_debit_account_id: account_cash_usd_id + default_credit_account_id: account_cash_usd_id currency: base.USD company_id: base.main_company view_id: account.account_journal_bank_view @@ -137,38 +145,41 @@ move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.debit - move_line.credit == 80), "Invoice move is incorrect for debtors account" - - I create the first voucher of payment - <create with values 200 EUR (€), journal EUR, and fills amount 130€ for the invoice of 200$ and 70€ for the invoice of 100$> + I set the context that will be used for the encoding of all the vouchers of this file +- + !context + 'type': 'receipt' +- + I create the first voucher of payment with values 200 EUR, journal EUR +- + !record {model: account.voucher, id: account_voucher_1_case2b, view: view_vendor_receipt_form}: + account_id: account.cash + amount: 200.0 + company_id: base.main_company + journal_id: bank_journal_EUR + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-03-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + name: 'First payment: Case 2 USD/EUR DR USD' + +- + I fill amounts 130 for the invoice of 200$ and 70 for the invoice of 100$> - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 200.0, False, ttype='receipt', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 200.0, - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.EUR'), - 'journal_id': ref('bank_journal_EUR'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'receipt', - 'date': time.strftime("%Y-03-01"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'comment': 'Write Off', - 'name': 'First payment: Case 2 USD/EUR DR USD', - } - if not res['value']['line_cr_ids']: - res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}] - for item in res['value']['line_cr_ids']: - if item['amount_unreconciled'] == 150.00: - item['amount'] = 130.00 + voucher_id = self.browse(cr, uid, ref('account_voucher_1_case2b')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 150.00: + data += [(item.id, 130.0)] else: - item['amount'] = 70.00 - vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + data += [(item.id, 70.0)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I confirm the voucher @@ -212,8 +223,8 @@ move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)]) move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.amount_residual_currency == 55.56 and move_line.amount_residual == 20) , "Residual amount is not correct for first Invoice" -- toto - I check the residual amuont of Invoice2, should be 22.22 in residual currency and 10 in amount_residual +- + I check the residual amount of Invoice2, should be 22.22 in residual currency and 10 in amount_residual - !python {model: account.invoice}: | invoice_id = self.browse(cr, uid, ref("account_second_invoice_feb_michal")) @@ -221,41 +232,37 @@ move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)]) move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.amount_residual_currency == 22.22 and move_line.amount_residual == 10) , "Residual amount is not correct for second Invoice" -- - I create the second voucher of payment - <create with values 80 USD, journal USD, and fully reconcile the 2 invoices> +- + I create the second voucher of payment with values 80 USD, journal USD +- + !record {model: account.voucher, id: account_voucher_2_case2b, view: view_vendor_receipt_form}: + account_id: account.cash + amount: 80.0 + company_id: base.main_company + journal_id: bank_journal_USD + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-04-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + name: 'Second payment: Case 2 SUPPL USD/EUR DR USD' + +- + and I fully reconcil the 2 previous invoices - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_USD'), 80.0, ref('base.USD'), ttype='receipt', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 80.0, - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.USD'), - 'journal_id': ref('bank_journal_USD'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'receipt', - 'date': time.strftime("%Y-%m-%d"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'exchange_acc_id': ref('account.o_expense'), - 'comment': 'Write Off', - 'name': 'Second payment: Case 2 SUPPL USD/EUR DR USD', - } - vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-04-01'), ref('base.USD'), 80.0)['value']) - if not res['value']['line_cr_ids']: - res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}] - for item in res['value']['line_cr_ids']: - if item['amount_unreconciled'] == 55.56: - item['amount'] = 55.56 + voucher_id = self.browse(cr, uid, ref('account_voucher_2_case2b')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 55.56: + data += [(item.id, 55.56)] else: - item['amount'] = 22.22 - vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + data += [(item.id, 22.22)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I check that writeoff amount computed is 2.22 @@ -321,8 +328,8 @@ move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)]) move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.amount_residual_currency == 0.0 and move_line.amount_residual == 0.0 and invoice_id.state == 'paid') , "Residual amount is not correct for first Invoice" -- - I check the residual amuont of invoice 2, should be 0 in residual currency and 0 in amount_residual and paid +- + I check the residual amount of invoice 2, should be 0 in residual currency and 0 in amount_residual and paid - !python {model: account.invoice}: | invoice_id = self.browse(cr, uid, ref("account_second_invoice_feb_michal")) diff --git a/addons/account_voucher/test/case3_eur_eur.yml b/addons/account_voucher/test/case3_eur_eur.yml index 5649bf0d4bb..a2fc39e1844 100644 --- a/addons/account_voucher/test/case3_eur_eur.yml +++ b/addons/account_voucher/test/case3_eur_eur.yml @@ -26,7 +26,6 @@ sequence_id: account.sequence_bank_journal default_debit_account_id: account.cash default_credit_account_id: account.cash - currency: base.EUR company_id: base.main_company view_id: account.account_journal_bank_view - @@ -100,38 +99,41 @@ move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.debit - move_line.credit == 80.00), "Invoice move is incorrect for debtors account" - - I create the first voucher of payment - <create with values 120 EUR, journal EUR, and fill amounts 100 for the invoice of 150 EUR and 20 for the invoice of 80 EUR> + I set the context that will be used for the encoding of all the vouchers of this file +- + !context + 'type': 'receipt' +- + I create the first voucher of payment with values 120 EUR, journal EUR +- + !record {model: account.voucher, id: account_voucher_1_case3, view: view_vendor_receipt_form}: + account_id: account.cash + amount: 120.0 + company_id: base.main_company + journal_id: bank_journal_EUR + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-03-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + name: 'First payment: Case 3' + +- + I fill amounts 100 for the invoice of 150€ and 20 for the invoice of 80€ - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 120.00, False, ttype='receipt', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 120.00, - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.EUR'), - 'journal_id': ref('bank_journal_EUR'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'receipt', - 'date': time.strftime("%Y-03-01"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'comment': 'Write Off', - 'name': 'First payment: Case 3', - } - if not res['value']['line_cr_ids']: - res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}] - for item in res['value']['line_cr_ids']: - if item['amount_unreconciled'] == 150.00: - item['amount'] = 100.00 + voucher_id = self.browse(cr, uid, ref('account_voucher_1_case3')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 150.00: + data += [(item.id, 100.0)] else: - item['amount'] = 20.00 - vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + data += [(item.id, 20.0)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I check that writeoff amount computed is 0.00 @@ -182,7 +184,7 @@ move_lines = move_line_obj.search(cr, uid, [('move_id', '=', invoice_id.move_id.id), ('invoice', '=', invoice_id.id), ('account_id', '=', invoice_id.account_id.id)]) move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.amount_residual_currency == 50.0 and move_line.amount_residual == 50.0) , "Residual amount is not correct for first Invoice" -- +- I check the residual amuont of Invoice2 is 60 - !python {model: account.invoice}: | @@ -192,38 +194,36 @@ move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.amount_residual_currency == 60.0 and move_line.amount_residual == 60.0) , "Residual amount is not correct for second Invoice" - - I create the second voucher of payment and check to let open the debtor overpaid amount. - <create with values 120 EUR, journal EUR, and fill amounts 50 for the invoice of 150 EUR and 70 for the invoice of 80 EUR> + I create the second voucher of payment with values 120€, journal EUR, and check to let open the debtor overpaid amount +- + !record {model: account.voucher, id: account_voucher_2_case3, view: view_vendor_receipt_form}: + account_id: account.cash + amount: 120.0 + company_id: base.main_company + journal_id: bank_journal_EUR + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-04-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + name: 'Second payment: Case 3' + +- + I fill amounts 50 for the invoice of 150€ and 70 for the invoice of 80€ - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_EUR'), 120.00, False, ttype='receipt', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 120.00, - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.EUR'), - 'journal_id': ref('bank_journal_EUR'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'receipt', - 'date': time.strftime("%Y-04-01"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'comment': 'Write Off', - 'name': 'Second payment: Case 3', - } - if not res['value']['line_cr_ids']: - res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}] - for item in res['value']['line_cr_ids']: - if item['amount_unreconciled'] == 50.00: - item['amount'] = 50.00 - elif item['amount_unreconciled'] == 60.00: - item['amount'] = 70.00 - vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + voucher_id = self.browse(cr, uid, ref('account_voucher_2_case3')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 50.00: + data += [(item.id, 50.0)] + elif item.amount_unreconciled == 60.00: + data += [(item.id, 70.00)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I check that writeoff amount computed is 0.00 diff --git a/addons/account_voucher/test/case4_cad_chf.yml b/addons/account_voucher/test/case4_cad_chf.yml index 972b09702be..f31a7393a8e 100644 --- a/addons/account_voucher/test/case4_cad_chf.yml +++ b/addons/account_voucher/test/case4_cad_chf.yml @@ -2,6 +2,15 @@ In order to check the Account_voucher module with multi-currency in OpenERP, I create an invoice in CAD and make its Payment in CHF based on the currency rating on that particular date. - + I set the income and expense currency accounts on the main company +- + !python {model: res.company}: | + from datetime import datetime + vals = { + 'income_currency_exchange_account_id': ref('account.o_expense'), + 'expense_currency_exchange_account_id': ref('account.o_expense')} + self.write(cr, uid, ref('base.main_company'), vals) +- I create currency CAD in OpenERP for January of 1.338800 Rate - !record {model: res.currency.rate, id: jan_cad}: @@ -30,6 +39,16 @@ name: !eval "'%s-03-01' %(datetime.now().year)" rate: 1.25000 - + I create a cash account with currency CHF +- + !record {model: account.account, id: account_cash_chf_id}: + currency_id: base.CHF + name: "cash account in chf" + code: "Xcash chf" + type: 'liquidity' + user_type: "account.account_type_cash_moves" + +- I create a bank journal with CHF as currency - !record {model: account.journal, id: bank_journal_CHF}: @@ -38,8 +57,8 @@ type: bank analytic_journal_id: account.sit sequence_id: account.sequence_bank_journal - default_debit_account_id: account.cash - default_credit_account_id: account.cash + default_debit_account_id: account_cash_chf_id + default_credit_account_id: account_cash_chf_id currency: base.CHF company_id: base.main_company view_id: account.account_journal_bank_view @@ -79,38 +98,40 @@ move_line = move_line_obj.browse(cr, uid, move_lines[0]) assert (move_line.debit - move_line.credit == 149.39), "Invoice move is incorrect for debtors account" - - I create the first voucher of payment - <create with values 200 CHF, journal CHF, and completly pat the invoice of 200 CAD> + I set the context that will be used for the encoding of all the vouchers of this file +- + !context + 'type': 'receipt' +- + I create the first voucher of payment with values 200 CHF, journal CHF +- + !record {model: account.voucher, id: account_voucher_1_case4, view: view_vendor_receipt_form}: + account_id: account.cash + amount: 200 + company_id: base.main_company + journal_id: bank_journal_CHF + partner_id: base.res_partner_seagate + period_id: account.period_3 + date: !eval time.strftime("%Y-03-01") + payment_option: 'with_writeoff' + writeoff_acc_id: account.a_expense + comment: 'Write Off' + name: 'First payment: Case 4' +- + I completly pay the invoice of 200 CAD - !python {model: account.voucher}: | import netsvc, time vals = {} - res = self.onchange_partner_id(cr, uid, [], ref("base.res_partner_seagate"), ref('bank_journal_CHF'), 200.00, ref('base.CHF'), ttype='receipt', date=False) - vals = { - 'account_id': ref('account.cash'), - 'amount': 200.00, - 'company_id': ref('base.main_company'), - 'currency_id': ref('base.CHF'), - 'journal_id': ref('bank_journal_CHF'), - 'partner_id': ref('base.res_partner_seagate'), - 'period_id': ref('account.period_3'), - 'type': 'receipt', - 'date': time.strftime("%Y-%m-%d"), - 'payment_option': 'with_writeoff', - 'writeoff_acc_id': ref('account.a_expense'), - 'exchange_acc_id': ref('account.o_expense'), - 'comment': 'Write Off', - 'name': 'First payment: Case 4', - } - vals.update(self.onchange_date(cr, uid, [], time.strftime('%Y-03-01'), ref('base.CHF'), 200.0)['value']) - if not res['value']['line_cr_ids']: - res['value']['line_cr_ids'] = [{'type': 'cr', 'account_id': ref('account.a_recv'),}] - for item in res['value']['line_cr_ids']: - if item['amount_unreconciled'] == 186.74: - item['amount'] = 186.74 - vals['line_cr_ids'] = [(0,0,i) for i in res['value']['line_cr_ids']] - id = self.create(cr, uid, vals) - voucher_id = self.browse(cr, uid, id) + voucher_id = self.browse(cr, uid, ref('account_voucher_1_case4')) + data = [] + for item in voucher_id.line_cr_ids: + if item.amount_unreconciled == 186.74: + data += [(item.id, 186.74)] + else: + data += [(item.id, 0.0)] + for line_id, amount in data: + self.pool.get('account.voucher.line').write(cr, uid, [line_id], {'amount': amount}) assert (voucher_id.state=='draft'), "Voucher is not in draft state" - I check that writeoff amount computed is 13.26 @@ -141,7 +162,7 @@ - I check that my debtor account is correct - - I check that the debtor account has 1 new line with -186.74 as amount_currency columns and 149.39 of credit and currency is CHF. + I check that the debtor account has 1 new line with -298.78 as amount_currency columns and 149.39 of credit and currency is CAD. - I check that my currency rate difference is correct. 0 in debit with no amount_currency - @@ -155,7 +176,7 @@ for move_line in move_line_obj.browse(cr, uid, move_lines): if move_line.amount_currency == 200: assert move_line.debit == 160.00, "Bank account has wrong entry." - elif move_line.amount_currency == -186.74: + elif move_line.amount_currency == -298.78: assert move_line.credit == 149.39, "Debtor account has wrong entry." elif move_line.debit == 0.00 and move_line.credit == 0.00: assert move_line.amount_currency == 0.00, "Incorrect Currency Difference." diff --git a/addons/account_voucher/test/sales_receipt.yml b/addons/account_voucher/test/sales_receipt.yml index d3fd720ec6d..7ea4f7d1c55 100644 --- a/addons/account_voucher/test/sales_receipt.yml +++ b/addons/account_voucher/test/sales_receipt.yml @@ -5,7 +5,6 @@ account_id: account.a_recv amount: 30000.0 company_id: base.main_company - currency_id: base.EUR journal_id: account.sales_journal line_cr_ids: - account_id: account.a_sale diff --git a/addons/account_voucher/voucher_payment_receipt_view.xml b/addons/account_voucher/voucher_payment_receipt_view.xml index 2c9b2edee6e..5cf9b42be0b 100644 --- a/addons/account_voucher/voucher_payment_receipt_view.xml +++ b/addons/account_voucher/voucher_payment_receipt_view.xml @@ -75,13 +75,13 @@ <form string="Bill Payment"> <group col="6" colspan="4"> <field name="partner_id" required="1" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date, context)" context="{'invoice_currency':currency_id}" string="Supplier"/> - <field name="amount" on_change="onchange_amount(amount, payment_rate, partner_id, journal_id, currency_id, type, date, context)"/> + <field name="amount" on_change="onchange_amount(amount, payment_rate, partner_id, journal_id, currency_id, type, date, payment_rate_currency_id, company_id, context)"/> <field name="journal_id" domain="[('type','in',['bank', 'cash'])]" widget="selection" select="1" - on_change="onchange_journal(journal_id, line_dr_ids, False, partner_id, date, amount, type, context)" + on_change="onchange_journal(journal_id, line_dr_ids, False, partner_id, date, amount, type, company_id, context)" string="Payment Method"/> - <field name="date" select="1" on_change="onchange_date(date, currency_id, amount, context)"/> + <field name="date" select="1" on_change="onchange_date(date, currency_id, payment_rate_currency_id, amount, company_id, context)"/> <field name="reference" select="1" string="Payment Ref"/> <field name="name" colspan="2"/> <field name="account_id" @@ -92,8 +92,8 @@ </group> <notebook colspan="4"> <page string="Payment Information"> - <field name="line_dr_ids" attrs="{'invisible': [('type', '=', 'receipt')]}" default_get="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}" colspan="4" nolabel="1" height="140" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, context)"> - <tree string="Open Supplier Journal Entries" editable="bottom"> + <field name="line_dr_ids" attrs="{'invisible': [('type', '=', 'receipt')]}" default_get="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}" colspan="4" nolabel="1" height="140" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, context)"> + <tree string="Open Supplier Journal Entries" editable="bottom" colors="gray:amount==0"> <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}" on_change="onchange_move_line_id(move_line_id)" domain="[('account_id.type','=','payable'), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]" @@ -102,29 +102,35 @@ <field name="date_original" readonly="1"/> <field name="date_due" readonly="1"/> <field name="amount_original" readonly="1"/> - <field name="amount_unreconciled" sum="Open Balance" readonly="1"/> - <field name="amount" sum="Payment"/> + <field name="amount_unreconciled" readonly="1"/> + <field name="amount" sum="Total Allocation"/> </tree> </field> - <field name="line_cr_ids" colspan="4" nolabel="1" attrs="{'invisible': [('type', '=', 'payment')]}" default_get="{'journal_id':journal_id, 'partner_id':partner_id}" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, context)"> - <tree string="Open Customer Journal Entries" editable="bottom"> - <field name="move_line_id"/> - <field name="account_id" groups="base.group_extended" domain="[('type','=','receivable')]"/> - <field name="date_original"/> - <field name="amount_original"/> - <field name="amount" sum="Payment"/> + <field name="line_cr_ids" colspan="4" nolabel="1" attrs="{'invisible': [('type', '=', 'payment')]}" default_get="{'journal_id':journal_id, 'partner_id':partner_id}" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, context)"> + <tree string="Open Customer Journal Entries" editable="bottom" colors="gray:amount==0"> + <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}" + on_change="onchange_move_line_id(move_line_id)" + domain="[('account_id.type','=','payable'), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]" + /> + <field name="account_id" groups="base.group_extended" domain="[('type','=','payable')]"/> + <field name="date_original" readonly="1"/> + <field name="date_due" readonly="1"/> + <field name="amount_original" readonly="1"/> + <field name="amount_unreconciled" readonly="1"/> + <field name="amount" sum="Total Allocation"/> </tree> </field> <group col="2" colspan="3"> <separator string="Internal Notes" colspan="2"/> <field name="narration" colspan="2" nolabel="1"/> </group> - <group col="2" colspan="1"> - <separator string="Other Information" colspan="2"/> - <field name="currency_id"/> - <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, context)" groups='base.group_extended'/> - <field name="paid_amount_in_company_currency" groups='base.group_extended'/> - <field name="number"/> + <group col="4" colspan="1"> + <separator string="Other Information" colspan="4"/> + <field name="currency_id" colspan="4"/> + <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" groups='base.group_extended' colspan="3"/> + <field name="payment_rate_currency_id" groups='base.group_extended' colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)"/> + <field name="paid_amount_in_company_currency" groups='base.group_extended' colspan="4" invisible="1"/> + <field name="number" colspan="4"/> </group> </page> </notebook> @@ -140,14 +146,14 @@ <form string="Bill Payment"> <group col="6" colspan="4"> <field name="partner_id" domain="[('supplier','=',True)]" required="1" invisible="context.get('line_type', False)" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date, context)" context="{'invoice_currency':currency_id}" string="Supplier"/> - <field name="amount" invisible="context.get('line_type', False)" on_change="onchange_amount(amount, payment_rate, partner_id, journal_id, currency_id, type, date, context)"/> + <field name="amount" invisible="context.get('line_type', False)" on_change="onchange_amount(amount, payment_rate, partner_id, journal_id, currency_id, type, date, payment_rate_currency_id, company_id, context)"/> <field name="journal_id" domain="[('type','in',['bank', 'cash'])]" invisible="context.get('line_type', False)" widget="selection" select="1" - on_change="onchange_journal(journal_id, line_dr_ids, False, partner_id, date, amount, type, context)" + on_change="onchange_journal(journal_id, line_dr_ids, False, partner_id, date, amount, type, company_id, context)" string="Payment Method"/> - <field name="date" select="1" invisible="context.get('line_type', False)" on_change="onchange_date(date, currency_id, amount, context)"/> + <field name="date" select="1" invisible="context.get('line_type', False)" on_change="onchange_date(date, currency_id, payment_rate_currency_id, amount, company_id, context)"/> <field name="reference" select="1" invisible="context.get('line_type', False)" string="Payment Ref"/> <field name="name" colspan="2" invisible="context.get('line_type', False)"/> <field name="company_id" widget="selection" groups="base.group_multi_company"/> @@ -156,11 +162,12 @@ invisible="True"/> <field name="pre_line" invisible="1"/> <field name="type" invisible="True"/> + <field name="currency_id" invisible="1" colspan="4"/> </group> <notebook colspan="4"> <page string="Payment Information"> <field name="line_dr_ids" default_get="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}" colspan="4" nolabel="1" height="140"> - <tree string="Supplier Invoices and Outstanding transactions" editable="bottom"> + <tree string="Supplier Invoices and Outstanding transactions" editable="bottom" colors="gray:amount==0"> <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}" on_change="onchange_move_line_id(move_line_id)" domain="[('account_id.type','=','payable'), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]" @@ -170,17 +177,25 @@ <field name="date_original" readonly="1"/> <field name="date_due" readonly="1"/> <field name="amount_original" readonly="1"/> - <field name="amount_unreconciled" sum="Open Balance" readonly="1"/> - <field name="amount" sum="Payment"/> + <field name="amount_unreconciled" readonly="1"/> + <field name="reconcile" on_change="onchange_reconcile(reconcile, amount, amount_unreconciled, context)"/> + <field name="amount" sum="Total Allocation" on_change="onchange_amount(amount, amount_unreconciled, context)"/> </tree> </field> <field name="line_cr_ids" colspan="4" nolabel="1" attrs="{'invisible': [('pre_line','=',False)]}" default_get="{'journal_id':journal_id, 'partner_id':partner_id}"> - <tree string="Credits" editable="bottom"> - <field name="move_line_id"/> - <field name="account_id" groups="base.group_extended" domain="[('type','=','receivable')]"/> - <field name="date_original"/> - <field name="amount_original"/> - <field name="amount" sum="Payment"/> + <tree string="Credits" editable="bottom" colors="gray:amount==0"> + <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}" + on_change="onchange_move_line_id(move_line_id)" + domain="[('account_id.type','=','payable'), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]" + required="1" + /> + <field name="account_id" groups="base.group_no_one" domain="[('type','=','payable')]"/> + <field name="date_original" readonly="1"/> + <field name="date_due" readonly="1"/> + <field name="amount_original" readonly="1"/> + <field name="amount_unreconciled" readonly="1"/> + <field name="reconcile" on_change="onchange_reconcile(reconcile, amount, amount_unreconciled, context)"/> + <field name="amount" sum="Total Allocation" on_change="onchange_amount(amount, amount_unreconciled, context)"/> </tree> </field> <group col="2" colspan="3"> @@ -188,18 +203,16 @@ <field name="narration" colspan="2" nolabel="1"/> </group> <group col="2" colspan="1"> - <group col="2" colspan="1" attrs="{'invisible':[('currency_id','=',False)]}"> - <separator string="Currency Options" colspan="2"/> - <field name="exchange_acc_id" - domain="[('type','=','other')]"/> - <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, context)" groups='base.group_extended'/> - <field name="paid_amount_in_company_currency" groups='base.group_extended'/> + <group col="4" colspan="1" attrs="{'invisible':[('currency_id','=',False),('is_multi_currency','=',False)]}"> + <separator string="Currency Options" colspan="4"/> + <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" groups='base.group_extended' colspan="3"/> + <field name="payment_rate_currency_id" groups='base.group_extended' colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)"/> + <field name="paid_amount_in_company_currency" groups='base.group_extended' colspan="4" invisible="1"/> </group> <group col="2" colspan="1"> <separator string="Payment Options" colspan="2"/> + <field name="writeoff_amount"/> <field name="payment_option" required="1"/> - <field name="writeoff_amount" - attrs="{'invisible':[('payment_option','!=','with_writeoff')]}"/> <field name="writeoff_acc_id" attrs="{'invisible':[('payment_option','!=','with_writeoff')], 'required':[('payment_option','=','with_writeoff')]}" domain="[('type','=','other')]"/> @@ -208,11 +221,6 @@ <field name="analytic_id" groups="analytic.group_analytic_accounting"/> </group> - <group col="4" colspan="2"> - <separator string="Other Information" colspan="4"/> - <field name="number" colspan="4"/> - <field name="currency_id" invisible="1" colspan="4"/> - </group> </group> </page> <page string="Journal Items" groups="base.group_extended" attrs="{'invisible': [('state','!=','posted')]}"> @@ -220,6 +228,7 @@ <field name="period_id"/> <field name="audit"/> </group> + <field name="number" colspan="4"/> <field name="move_ids" colspan="4" nolabel="1" readonly="1"> <tree string="Journal Items"> <field name="move_id"/> @@ -242,7 +251,7 @@ <group col="10" colspan="4"> <field name="state" widget="statusbar" statusbar_visible="draft,posted" statusbar_colors='{"proforma":"blue"}'/> <button name="cancel_voucher" string="Cancel" states="draft,proforma" icon="gtk-cancel" invisible="context.get('line_type', False)"/> - <button name="cancel_voucher" string="Unreconcile" type="object" states="posted" icon="terp-stock_effects-object-colorize" invisible="context.get('line_type', False)" confirm="Are you sure to unreconcile this record ?"/> + <button name="cancel_voucher" string="Unreconcile" type="object" states="posted" icon="terp-stock_effects-object-colorize" invisible="context.get('line_type', False)" confirm="Are you sure to unreconcile and cancel this record ?"/> <button name="action_cancel_draft" type="object" states="cancel" string="Set to Draft" icon="terp-stock_effects-object-colorize" invisible="context.get('line_type', False)"/> <button name="proforma_voucher" string="Validate" states="draft" icon="gtk-go-forward" invisible="context.get('line_type', False)"/> </group> @@ -289,14 +298,14 @@ <field name="amount" invisible="context.get('line_type', False)" string="Paid Amount" - on_change="onchange_amount(amount, payment_rate, partner_id, journal_id, currency_id, type, date, context)"/> + on_change="onchange_amount(amount, payment_rate, partner_id, journal_id, currency_id, type, date, payment_rate_currency_id, company_id, context)"/> <field name="journal_id" domain="[('type','in',['bank', 'cash'])]" invisible="context.get('line_type', False)" widget="selection" select="1" - on_change="onchange_journal(journal_id, line_cr_ids, False, partner_id, date, amount, type, context)" + on_change="onchange_journal(journal_id, line_cr_ids, False, partner_id, date, amount, type, company_id, context)" string="Payment Method"/> - <field name="date" select="1" invisible="context.get('line_type', False)" on_change="onchange_date(date, currency_id, amount, context)"/> + <field name="date" select="1" invisible="context.get('line_type', False)" on_change="onchange_date(date, currency_id, payment_rate_currency_id, amount, company_id, context)"/> <field name="reference" select="1" invisible="context.get('line_type', False)" string="Payment Ref"/> <field name="name" colspan="2" invisible="context.get('line_type', False)"/> <field name="company_id" widget="selection" groups="base.group_multi_company"/> @@ -308,8 +317,8 @@ </group> <notebook colspan="4"> <page string="Payment Information"> - <field name="line_cr_ids" default_get="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}" colspan="4" nolabel="1" height="140" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, context)"> - <tree string="Invoices and outstanding transactions" editable="bottom"> + <field name="line_cr_ids" default_get="{'journal_id':journal_id, 'type':type, 'partner_id':partner_id}" colspan="4" nolabel="1" height="140" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, context)"> + <tree string="Invoices and outstanding transactions" editable="bottom" colors="gray:amount==0"> <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}" on_change="onchange_move_line_id(move_line_id)" domain="[('account_id.type','in',('receivable','payable')), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]" @@ -319,17 +328,25 @@ <field name="date_original" readonly="1"/> <field name="date_due" readonly="1"/> <field name="amount_original" readonly="1"/> - <field name="amount_unreconciled" sum="Open Balance" readonly="1"/> - <field name="amount" sum="Payment"/> + <field name="amount_unreconciled" readonly="1"/> + <field name="reconcile" on_change="onchange_reconcile(reconcile, amount, amount_unreconciled, context)"/> + <field name="amount" sum="Total Allocation" on_change="onchange_amount(amount, amount_unreconciled, context)"/> </tree> </field> - <field name="line_dr_ids" colspan="4" nolabel="1" attrs="{'invisible': [('pre_line','=',False)]}" default_get="{'journal_id':journal_id, 'partner_id':partner_id}" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, context)"> - <tree string="Credits" editable="bottom"> - <field name="move_line_id"/> - <field name="account_id" groups="base.group_extended" domain="[('type','=','receivable')]"/> - <field name="date_original"/> - <field name="amount_original"/> - <field name="amount" sum="Payment"/> + <field name="line_dr_ids" colspan="4" nolabel="1" attrs="{'invisible': [('pre_line','=',False)]}" default_get="{'journal_id':journal_id, 'partner_id':partner_id}" on_change="onchange_line_ids(line_dr_ids, line_cr_ids, amount, currency_id, context)"> + <tree string="Credits" editable="bottom" colors="gray:amount==0"> + <field name="move_line_id" context="{'journal_id':parent.journal_id, 'partner_id':parent.partner_id}" + on_change="onchange_move_line_id(move_line_id)" + domain="[('account_id.type','in',('receivable','payable')), ('reconcile_id','=', False), ('partner_id','=',parent.partner_id)]" + required="1" + /> + <field name="account_id" groups="base.group_no_one" domain="[('type','=','receivable')]"/> + <field name="date_original" readonly="1"/> + <field name="date_due" readonly="1"/> + <field name="amount_original" readonly="1"/> + <field name="amount_unreconciled" readonly="1"/> + <field name="reconcile" on_change="onchange_reconcile(reconcile, amount, amount_unreconciled, context)"/> + <field name="amount" sum="Total Allocation" on_change="onchange_amount(amount, amount_unreconciled, context)"/> </tree> </field> <group col="2" colspan="3"> @@ -337,18 +354,16 @@ <field name="narration" colspan="2" nolabel="1"/> </group> <group col="2" colspan="1"> - <group col="2" colspan="1" attrs="{'invisible':[('currency_id','=',False)]}"> - <separator string="Currency Options" colspan="2"/> - <field name="exchange_acc_id" - domain="[('type','=','other')]"/> - <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, context)" groups='base.group_extended'/> - <field name="paid_amount_in_company_currency" groups='base.group_extended'/> + <group col="4" colspan="1" attrs="{'invisible':[('currency_id','=',False),('is_multi_currency','=',False)]}"> + <separator string="Currency Options" colspan="4"/> + <field name="payment_rate" required="1" on_change="onchange_rate(payment_rate, amount, currency_id, payment_rate_currency_id, company_id, context)" groups='base.group_extended' colspan="3"/> + <field name="payment_rate_currency_id" groups='base.group_extended' colspan="1" nolabel="1" on_change="onchange_payment_rate_currency(currency_id, payment_rate, payment_rate_currency_id, date, amount, company_id, context)"/> + <field name="paid_amount_in_company_currency" groups='base.group_extended' colspan="4" invisible="1"/> </group> <group col="2" colspan="1"> <separator string="Payment Options" colspan="2"/> + <field name="writeoff_amount"/> <field name="payment_option" required="1"/> - <field name="writeoff_amount" - attrs="{'invisible':[('payment_option','!=','with_writeoff')]}"/> <field name="writeoff_acc_id" attrs="{'invisible':[('payment_option','!=','with_writeoff')], 'required':[('payment_option','=','with_writeoff')]}" domain="[('type','=','other')]"/> @@ -357,10 +372,6 @@ <field name="analytic_id" groups="analytic.group_analytic_accounting"/> </group> - <group col="4" colspan="2"> - <separator string="Other Information" colspan="4"/> - <field name="number" colspan="4"/> - </group> </group> </page> <page string="Journal Items" groups="base.group_extended" attrs="{'invisible': [('state','!=','posted')]}"> @@ -368,6 +379,7 @@ <field name="period_id"/> <field name="audit"/> </group> + <field name="number" colspan="4"/> <field name="move_ids" colspan="4" nolabel="1" readonly="1"> <tree string="Journal Items"> <field name="move_id"/> @@ -390,7 +402,7 @@ <group col="10" colspan="4"> <field name="state" widget="statusbar" statusbar_visible="draft,posted" statusbar_colors='{"proforma":"blue"}'/> <button name="cancel_voucher" string="Cancel" states="draft,proforma" icon="gtk-cancel" invisible="context.get('line_type', False)"/> - <button name="cancel_voucher" string="Unreconcile" type="object" states="posted" invisible="context.get('line_type', False)" icon="terp-stock_effects-object-colorize" confirm="Are you sure to unreconcile this record ?"/> + <button name="cancel_voucher" string="Unreconcile" type="object" states="posted" invisible="context.get('line_type', False)" icon="terp-stock_effects-object-colorize" confirm="Are you sure to unreconcile and cancel this record ?"/> <button name="action_cancel_draft" type="object" states="cancel" string="Set to Draft" icon="terp-stock_effects-object-colorize" invisible="context.get('line_type', False)"/> <button name="proforma_voucher" string="Validate" states="draft" icon="gtk-go-forward" invisible="context.get('line_type', False)"/> </group> diff --git a/addons/account_voucher/voucher_sales_purchase_view.xml b/addons/account_voucher/voucher_sales_purchase_view.xml index db21b4ce86a..f016e008bc0 100644 --- a/addons/account_voucher/voucher_sales_purchase_view.xml +++ b/addons/account_voucher/voucher_sales_purchase_view.xml @@ -83,8 +83,8 @@ <form string="Sales Receipt"> <group col="6" colspan="4"> <field name="partner_id" required="1" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date, context)" string="Customer"/> - <field name="date" on_change="onchange_date(date, currency_id, amount, context)"/> - <field name="journal_id" domain="[('type','in',['sale','sale_refund'])]" widget="selection" on_change="onchange_journal(journal_id, line_cr_ids, tax_id, partner_id, date, amount, type, context)"/> + <field name="date" on_change="onchange_date(date, currency_id, currency_id, amount, company_id, context)"/> + <field name="journal_id" domain="[('type','in',['sale','sale_refund'])]" widget="selection" on_change="onchange_journal(journal_id, line_cr_ids, tax_id, partner_id, date, amount, type, company_id, context)"/> <field name="number"/> <field name="name" colspan="2"/> <field name="company_id" select="1" widget="selection" groups="base.group_multi_company"/> @@ -168,7 +168,7 @@ <field name="res_model">account.voucher</field> <field name="view_type">form</field> <field name="domain">[('journal_id.type','in',['sale','sale_refund']), ('type','=','sale')]</field> - <field name="context">{'type':'sale'}</field> + <field name="context">{'default_type': 'sale', 'type': 'sale'}</field> <field name="view_id" eval="False"/> <field name="search_view_id" ref="view_voucher_filter_sale"/> <field name="target">current</field> @@ -198,7 +198,7 @@ <field name="res_model">account.voucher</field> <field name="view_type">form</field> <field name="domain">[('journal_id.type', 'in', ['bank', 'cash']), ('type','=','payment'), ('partner_id','=',partner_id)]</field> - <field name="context">{'type':'payment', 'partner_id': partner_id, 'default_reference':reference}</field> + <field name="context">{'default_type':'payment', 'type':'payment', 'default_partner_id': partner_id, 'partner_id': partner_id, 'default_reference':reference}</field> <field name="view_id" ref="view_vendor_payment_form"/> <field name="target">current</field> </record> @@ -210,8 +210,8 @@ <form string="Supplier Voucher"> <group col="6" colspan="4"> <field name="partner_id" domain="[('supplier','=',True)]" required="1" string="Supplier" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date, context)"/> - <field name="date" string="Bill Date" select="1" on_change="onchange_date(date, currency_id, amount, context)"/> - <field name="journal_id" domain="[('type','in',['purchase','purchase_refund'])]" widget="selection" select="1" on_change="onchange_journal(journal_id, line_dr_ids, tax_id, partner_id, date, amount, type, context)"/> + <field name="date" string="Bill Date" select="1" on_change="onchange_date(date, currency_id, currency_id, amount, company_id, context)"/> + <field name="journal_id" domain="[('type','in',['purchase','purchase_refund'])]" widget="selection" select="1" on_change="onchange_journal(journal_id, line_dr_ids, tax_id, partner_id, date, amount, type, company_id, context)"/> <field name="number"/> <field name="name" colspan="2"/> <field name="reference" select="1"/> @@ -287,7 +287,7 @@ <field name="res_model">account.voucher</field> <field name="view_type">form</field> <field name="domain">[('journal_id.type','in',['purchase','purchase_refund']), ('type','=','purchase')]</field> - <field name="context">{'type':'purchase'}</field> + <field name="context">{'default_type': 'purchase', 'type': 'purchase'}</field> <field name="view_id" eval="False"/> <field name="search_view_id" eval="view_voucher_filter_vendor"/> <field name="target">current</field> diff --git a/addons/analytic/__openerp__.py b/addons/analytic/__openerp__.py index 65f6588a1e3..4e10e243d61 100644 --- a/addons/analytic/__openerp__.py +++ b/addons/analytic/__openerp__.py @@ -24,7 +24,7 @@ "version": "1.1", "author" : "OpenERP SA", "website" : "http://www.openerp.com", - "category" : "Hidden", + "category": 'Accounting & Finance', "depends" : ["base", "decimal_precision"], "description": """ Module for defining analytic accounting object. diff --git a/addons/analytic/analytic.py b/addons/analytic/analytic.py index 114653d473e..2ecaeee0f15 100644 --- a/addons/analytic/analytic.py +++ b/addons/analytic/analytic.py @@ -161,7 +161,7 @@ class account_analytic_account(osv.osv): 'debit': fields.function(_debit_credit_bal_qtty, type='float', string='Debit', multi='debit_credit_bal_qtty', digits_compute=dp.get_precision('Account')), 'credit': fields.function(_debit_credit_bal_qtty, type='float', string='Credit', multi='debit_credit_bal_qtty', digits_compute=dp.get_precision('Account')), 'quantity': fields.function(_debit_credit_bal_qtty, type='float', string='Quantity', multi='debit_credit_bal_qtty'), - 'quantity_max': fields.float('Maximum Quantity', help='Sets the higher limit of quantity of hours.'), + 'quantity_max': fields.float('Maximum Time', help='Sets the higher limit of time to work on the contract.'), 'partner_id': fields.many2one('res.partner', 'Partner'), 'contact_id': fields.many2one('res.partner.address', 'Contact'), 'user_id': fields.many2one('res.users', 'Account Manager'), @@ -242,6 +242,13 @@ class account_analytic_account(osv.osv): res['value']['partner_id'] = partner return res + def onchange_partner_id(self, cr, uid, ids, partner, context=None): + partner_obj = self.pool.get('res.partner') + if not partner: + return {'value':{'contact_id': False}} + address = partner_obj.address_get(cr, uid, [partner], ['contact']) + return {'value':{'contact_id': address['contact']}} + def name_search(self, cr, uid, name, args=None, operator='ilike', context=None, limit=100): if not args: args=[] diff --git a/addons/analytic/i18n/hr.po b/addons/analytic/i18n/hr.po new file mode 100644 index 00000000000..2ff7a50e37b --- /dev/null +++ b/addons/analytic/i18n/hr.po @@ -0,0 +1,255 @@ +# Croatian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-12-08 15:42+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.com>\n" +"Language-Team: Croatian <hr@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" + +#. module: analytic +#: field:account.analytic.account,child_ids:0 +msgid "Child Accounts" +msgstr "Podređena konta" + +#. module: analytic +#: field:account.analytic.account,name:0 +msgid "Account Name" +msgstr "Naziv konta" + +#. module: analytic +#: help:account.analytic.line,unit_amount:0 +msgid "Specifies the amount of quantity to count." +msgstr "" + +#. module: analytic +#: model:ir.module.module,description:analytic.module_meta_information +msgid "" +"Module for defining analytic accounting object.\n" +" " +msgstr "" + +#. module: analytic +#: field:account.analytic.account,state:0 +msgid "State" +msgstr "Stanje" + +#. module: analytic +#: field:account.analytic.account,user_id:0 +msgid "Account Manager" +msgstr "Voditelj računovodstva" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Draft" +msgstr "Nacrt" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Closed" +msgstr "Zatvoren" + +#. module: analytic +#: field:account.analytic.account,debit:0 +msgid "Debit" +msgstr "Duguje" + +#. module: analytic +#: help:account.analytic.account,state:0 +msgid "" +"* When an account is created its in 'Draft' state. " +" \n" +"* If any associated partner is there, it can be in 'Open' state. " +" \n" +"* If any pending balance is there it can be in 'Pending'. " +" \n" +"* And finally when all the transactions are over, it can be in 'Close' " +"state. \n" +"* The project can be in either if the states 'Template' and 'Running'.\n" +" If it is template then we can make projects based on the template projects. " +"If its in 'Running' state it is a normal project. " +" \n" +" If it is to be reviewed then the state is 'Pending'.\n" +" When the project is completed the state is set to 'Done'." +msgstr "" + +#. module: analytic +#: field:account.analytic.account,type:0 +msgid "Account Type" +msgstr "Vrsta konta" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Template" +msgstr "Predložak" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Pending" +msgstr "U toku" + +#. module: analytic +#: model:ir.model,name:analytic.model_account_analytic_line +msgid "Analytic Line" +msgstr "Analitičke stavke" + +#. module: analytic +#: field:account.analytic.account,description:0 +#: field:account.analytic.line,name:0 +msgid "Description" +msgstr "Opis" + +#. module: analytic +#: selection:account.analytic.account,type:0 +msgid "Normal" +msgstr "Običan" + +#. module: analytic +#: field:account.analytic.account,company_id:0 +#: field:account.analytic.line,company_id:0 +msgid "Company" +msgstr "Organizacija" + +#. module: analytic +#: field:account.analytic.account,quantity_max:0 +msgid "Maximum Quantity" +msgstr "Maksimalna količina" + +#. module: analytic +#: field:account.analytic.line,user_id:0 +msgid "User" +msgstr "Korisnik" + +#. module: analytic +#: field:account.analytic.account,parent_id:0 +msgid "Parent Analytic Account" +msgstr "Nadređeni analitički konto" + +#. module: analytic +#: field:account.analytic.line,date:0 +msgid "Date" +msgstr "Datum" + +#. module: analytic +#: field:account.analytic.account,currency_id:0 +msgid "Account currency" +msgstr "Valuta konta" + +#. module: analytic +#: field:account.analytic.account,quantity:0 +#: field:account.analytic.line,unit_amount:0 +msgid "Quantity" +msgstr "Količina" + +#. module: analytic +#: help:account.analytic.line,amount:0 +msgid "" +"Calculated by multiplying the quantity and the price given in the Product's " +"cost price. Always expressed in the company main currency." +msgstr "" + +#. module: analytic +#: help:account.analytic.account,quantity_max:0 +msgid "Sets the higher limit of quantity of hours." +msgstr "" + +#. module: analytic +#: field:account.analytic.account,credit:0 +msgid "Credit" +msgstr "Potražuje" + +#. module: analytic +#: field:account.analytic.line,amount:0 +msgid "Amount" +msgstr "Iznos" + +#. module: analytic +#: field:account.analytic.account,contact_id:0 +msgid "Contact" +msgstr "Kontakt" + +#. module: analytic +#: constraint:account.analytic.account:0 +msgid "" +"Error! The currency has to be the same as the currency of the selected " +"company" +msgstr "Greška! Valuta ne odgovara valuti organizacije." + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Cancelled" +msgstr "Otkazano" + +#. module: analytic +#: field:account.analytic.account,balance:0 +msgid "Balance" +msgstr "Saldo" + +#. module: analytic +#: constraint:account.analytic.account:0 +msgid "Error! You can not create recursive analytic accounts." +msgstr "Greška! Ne možete kreirati rekurzivna analitička konta." + +#. module: analytic +#: help:account.analytic.account,type:0 +msgid "" +"If you select the View Type, it means you won't allow to create journal " +"entries using that account." +msgstr "" + +#. module: analytic +#: field:account.analytic.account,date:0 +msgid "Date End" +msgstr "Završni datum" + +#. module: analytic +#: field:account.analytic.account,code:0 +msgid "Account Code" +msgstr "Šifra konta" + +#. module: analytic +#: field:account.analytic.account,complete_name:0 +msgid "Full Account Name" +msgstr "Puni naziv konta" + +#. module: analytic +#: field:account.analytic.line,account_id:0 +#: model:ir.model,name:analytic.model_account_analytic_account +#: model:ir.module.module,shortdesc:analytic.module_meta_information +msgid "Analytic Account" +msgstr "Analitički konto" + +#. module: analytic +#: selection:account.analytic.account,type:0 +msgid "View" +msgstr "Pogled" + +#. module: analytic +#: field:account.analytic.account,partner_id:0 +msgid "Partner" +msgstr "Partner" + +#. module: analytic +#: field:account.analytic.account,date_start:0 +msgid "Date Start" +msgstr "Početni datum" + +#. module: analytic +#: selection:account.analytic.account,state:0 +msgid "Open" +msgstr "Otvoren" + +#. module: analytic +#: field:account.analytic.account,line_ids:0 +msgid "Analytic Entries" +msgstr "Stavke analitike" diff --git a/addons/analytic_journal_billing_rate/__openerp__.py b/addons/analytic_journal_billing_rate/__openerp__.py index 059e85d9367..f29e19147d1 100644 --- a/addons/analytic_journal_billing_rate/__openerp__.py +++ b/addons/analytic_journal_billing_rate/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Analytic Journal Billing Rate, Define the default invoicing rate for a specific journal', + 'name': 'Billing Rates on Contracts', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'description': """ This module allows you to define what is the default invoicing rate for a specific journal on a given account. ============================================================================================================== diff --git a/addons/analytic_journal_billing_rate/i18n/hr.po b/addons/analytic_journal_billing_rate/i18n/hr.po index f4074f5bcf3..e7aa86189c2 100644 --- a/addons/analytic_journal_billing_rate/i18n/hr.po +++ b/addons/analytic_journal_billing_rate/i18n/hr.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: 2011-01-03 16:56+0000\n" -"PO-Revision-Date: 2009-09-08 15:52+0000\n" -"Last-Translator: Ivica Perić <ivica.peric@ipsoft-tg.com>\n" +"PO-Revision-Date: 2011-12-08 15:46+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-05 05:34+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: analytic_journal_billing_rate #: model:ir.module.module,description:analytic_journal_billing_rate.module_meta_information @@ -36,28 +36,28 @@ msgstr "" #. module: analytic_journal_billing_rate #: field:analytic_journal_rate_grid,journal_id:0 msgid "Analytic Journal" -msgstr "" +msgstr "Dnevnik analitike" #. module: analytic_journal_billing_rate #: model:ir.model,name:analytic_journal_billing_rate.model_account_invoice msgid "Invoice" -msgstr "" +msgstr "Račun" #. module: analytic_journal_billing_rate #: view:analytic_journal_rate_grid:0 msgid "Billing Rate per Journal for this Analytic Account" -msgstr "" +msgstr "Stupanj naplate po temeljnici za ovaj analitički račun" #. module: analytic_journal_billing_rate #: field:analytic_journal_rate_grid,account_id:0 #: model:ir.model,name:analytic_journal_billing_rate.model_account_analytic_account msgid "Analytic Account" -msgstr "" +msgstr "Analitički konto" #. module: analytic_journal_billing_rate #: model:ir.model,name:analytic_journal_billing_rate.model_analytic_journal_rate_grid msgid "Relation table between journals and billing rates" -msgstr "" +msgstr "Relacijska tablica između temeljnica i stupnjeva naplate" #. module: analytic_journal_billing_rate #: field:account.analytic.account,journal_rate_ids:0 @@ -76,7 +76,7 @@ msgstr "" msgid "" "Error! The currency has to be the same as the currency of the selected " "company" -msgstr "" +msgstr "Greška! Valuta ne odgovara valuti organizacije." #. module: analytic_journal_billing_rate #: field:analytic_journal_rate_grid,rate_id:0 @@ -86,7 +86,7 @@ msgstr "" #. module: analytic_journal_billing_rate #: constraint:account.analytic.account:0 msgid "Error! You can not create recursive analytic accounts." -msgstr "" +msgstr "Greška! Ne možete kreirati rekurzivna analitička konta." #. module: analytic_journal_billing_rate #: model:ir.model,name:analytic_journal_billing_rate.model_hr_analytic_timesheet diff --git a/addons/analytic_user_function/__openerp__.py b/addons/analytic_user_function/__openerp__.py index bb3ca084be7..d7f97c1b158 100644 --- a/addons/analytic_user_function/__openerp__.py +++ b/addons/analytic_user_function/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Human Resources', + 'name': 'Jobs on Contracts', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'description': """ This module allows you to define what is the default function of a specific user on a given account. ==================================================================================================== diff --git a/addons/analytic_user_function/analytic_user_function.py b/addons/analytic_user_function/analytic_user_function.py index 030a45db393..cfb1aba10d1 100644 --- a/addons/analytic_user_function/analytic_user_function.py +++ b/addons/analytic_user_function/analytic_user_function.py @@ -143,3 +143,5 @@ class hr_analytic_timesheet(osv.osv): hr_analytic_timesheet() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/analytic_user_function/i18n/hr.po b/addons/analytic_user_function/i18n/hr.po index 8f795e66fcc..fc425f5a69f 100644 --- a/addons/analytic_user_function/i18n/hr.po +++ b/addons/analytic_user_function/i18n/hr.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev_rc3\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-03 16:56+0000\n" -"PO-Revision-Date: 2010-08-03 02:55+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) <Unknown>\n" +"PO-Revision-Date: 2011-12-08 15:51+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.com>\n" "Language-Team: Vinteh\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:36+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" "Language: hr\n" #. module: analytic_user_function @@ -27,7 +27,7 @@ msgstr "Proizvod" #: code:addons/analytic_user_function/analytic_user_function.py:131 #, python-format msgid "Error !" -msgstr "" +msgstr "Greška !" #. module: analytic_user_function #: model:ir.model,name:analytic_user_function.model_hr_analytic_timesheet @@ -56,19 +56,19 @@ msgstr "Korisnik" msgid "" "Error! The currency has to be the same as the currency of the selected " "company" -msgstr "" +msgstr "Greška! Valuta ne odgovara valuti organizacije." #. module: analytic_user_function #: code:addons/analytic_user_function/analytic_user_function.py:97 #: code:addons/analytic_user_function/analytic_user_function.py:132 #, python-format msgid "There is no expense account define for this product: \"%s\" (id:%d)" -msgstr "" +msgstr "nije definiran konto troška za ovaj proizvod: \"%s\" (id:%d)" #. module: analytic_user_function #: model:ir.model,name:analytic_user_function.model_analytic_user_funct_grid msgid "Relation table between users and products on a analytic account" -msgstr "Vza između korisnika i proizvoda kod Analitičkog konta." +msgstr "Veza između korisnika i proizvoda na analitičkom kontu." #. module: analytic_user_function #: model:ir.module.module,description:analytic_user_function.module_meta_information @@ -95,12 +95,12 @@ msgstr "Funkcija Analitičkog Korisnika" #. module: analytic_user_function #: constraint:account.analytic.account:0 msgid "Error! You can not create recursive analytic accounts." -msgstr "" +msgstr "Greška! Ne možete kreirati rekurzivna analitička konta." #. module: analytic_user_function #: view:analytic_user_funct_grid:0 msgid "User's Product for this Analytic Account" -msgstr "Korisnikov Proizvod za ovaj Analitički konto." +msgstr "Proizvod rada" #~ msgid "Invalid XML for View Architecture!" #~ msgstr "Nepravilan XML format za View Architecture!" diff --git a/addons/anonymization/__init__.py b/addons/anonymization/__init__.py index 7be1a934c5a..4ddf3009947 100644 --- a/addons/anonymization/__init__.py +++ b/addons/anonymization/__init__.py @@ -22,3 +22,5 @@ import anonymization + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/anonymization/__openerp__.py b/addons/anonymization/__openerp__.py index 41e906c078a..91b6686c621 100644 --- a/addons/anonymization/__openerp__.py +++ b/addons/anonymization/__openerp__.py @@ -24,7 +24,7 @@ { 'name': 'Database Anonymization', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ This module allows you to anonymize a database. @@ -57,3 +57,5 @@ anonymization process to recover your previous data. 'images': ['images/anonymization1.jpeg','images/anonymization2.jpeg','images/anonymization3.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/anonymization/anonymization.py b/addons/anonymization/anonymization.py index 4af387a5c02..39fb415e9e1 100644 --- a/addons/anonymization/anonymization.py +++ b/addons/anonymization/anonymization.py @@ -578,3 +578,5 @@ class ir_model_fields_anonymize_wizard(osv.osv_memory): ir_model_fields_anonymize_wizard() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/anonymization/i18n/hr.po b/addons/anonymization/i18n/hr.po new file mode 100644 index 00000000000..24208ceb18c --- /dev/null +++ b/addons/anonymization/i18n/hr.po @@ -0,0 +1,226 @@ +# Croatian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:14+0000\n" +"PO-Revision-Date: 2011-12-08 15:53+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.com>\n" +"Language-Team: Croatian <hr@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" + +#. module: anonymization +#: model:ir.model,name:anonymization.model_ir_model_fields_anonymize_wizard +msgid "ir.model.fields.anonymize.wizard" +msgstr "" + +#. module: anonymization +#: field:ir.model.fields.anonymization,field_name:0 +msgid "Field Name" +msgstr "Naziv polja" + +#. module: anonymization +#: field:ir.model.fields.anonymization,field_id:0 +msgid "Field" +msgstr "Polje" + +#. module: anonymization +#: field:ir.model.fields.anonymization.history,state:0 +#: field:ir.model.fields.anonymize.wizard,state:0 +msgid "State" +msgstr "Stanje" + +#. module: anonymization +#: field:ir.model.fields.anonymize.wizard,file_import:0 +msgid "Import" +msgstr "Uvoz" + +#. module: anonymization +#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization +msgid "ir.model.fields.anonymization" +msgstr "" + +#. module: anonymization +#: model:ir.module.module,shortdesc:anonymization.module_meta_information +msgid "Database anonymization module" +msgstr "" + +#. module: anonymization +#: field:ir.model.fields.anonymization.history,direction:0 +msgid "Direction" +msgstr "Smjer" + +#. module: anonymization +#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymization_tree +#: view:ir.model.fields.anonymization:0 +#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_fields +msgid "Anonymized Fields" +msgstr "" + +#. module: anonymization +#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization +msgid "Database anonymization" +msgstr "" + +#. module: anonymization +#: code:addons/anonymization/anonymization.py:55 +#: sql_constraint:ir.model.fields.anonymization:0 +#, python-format +msgid "You cannot have two records having the same model and the same field" +msgstr "" + +#. module: anonymization +#: selection:ir.model.fields.anonymization,state:0 +#: selection:ir.model.fields.anonymize.wizard,state:0 +msgid "Anonymized" +msgstr "" + +#. module: anonymization +#: field:ir.model.fields.anonymization,state:0 +msgid "unknown" +msgstr "nepoznato" + +#. module: anonymization +#: field:ir.model.fields.anonymization,model_id:0 +msgid "Object" +msgstr "Objekt" + +#. module: anonymization +#: field:ir.model.fields.anonymization.history,filepath:0 +msgid "File path" +msgstr "Putanja datoteke" + +#. module: anonymization +#: field:ir.model.fields.anonymization.history,date:0 +msgid "Date" +msgstr "Datum" + +#. module: anonymization +#: field:ir.model.fields.anonymize.wizard,file_export:0 +msgid "Export" +msgstr "Izvoz" + +#. module: anonymization +#: view:ir.model.fields.anonymize.wizard:0 +msgid "Reverse the Database Anonymization" +msgstr "" + +#. module: anonymization +#: view:ir.model.fields.anonymize.wizard:0 +msgid "Database Anonymization" +msgstr "" + +#. module: anonymization +#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_wizard +msgid "Anonymize database" +msgstr "" + +#. module: anonymization +#: view:ir.model.fields.anonymization.history:0 +#: field:ir.model.fields.anonymization.history,field_ids:0 +msgid "Fields" +msgstr "Polja" + +#. module: anonymization +#: selection:ir.model.fields.anonymization,state:0 +#: selection:ir.model.fields.anonymize.wizard,state:0 +msgid "Clear" +msgstr "Očisti" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,direction:0 +msgid "clear -> anonymized" +msgstr "" + +#. module: anonymization +#: view:ir.model.fields.anonymize.wizard:0 +#: field:ir.model.fields.anonymize.wizard,summary:0 +msgid "Summary" +msgstr "Sažetak" + +#. module: anonymization +#: view:ir.model.fields.anonymization:0 +msgid "Anonymized Field" +msgstr "" + +#. module: anonymization +#: model:ir.module.module,description:anonymization.module_meta_information +msgid "" +"\n" +"This module allows you to anonymize a database.\n" +" " +msgstr "" + +#. module: anonymization +#: selection:ir.model.fields.anonymize.wizard,state:0 +msgid "Unstable" +msgstr "" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,state:0 +msgid "Exception occured" +msgstr "" + +#. module: anonymization +#: selection:ir.model.fields.anonymization,state:0 +#: selection:ir.model.fields.anonymize.wizard,state:0 +msgid "Not Existing" +msgstr "" + +#. module: anonymization +#: field:ir.model.fields.anonymization,model_name:0 +msgid "Object Name" +msgstr "Naziv objekta" + +#. module: anonymization +#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymization_history_tree +#: view:ir.model.fields.anonymization.history:0 +#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_history +msgid "Anonymization History" +msgstr "" + +#. module: anonymization +#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization_history +msgid "ir.model.fields.anonymization.history" +msgstr "" + +#. module: anonymization +#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymize_wizard +#: view:ir.model.fields.anonymize.wizard:0 +msgid "Anonymize Database" +msgstr "" + +#. module: anonymization +#: field:ir.model.fields.anonymize.wizard,name:0 +msgid "File Name" +msgstr "" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,direction:0 +msgid "anonymized -> clear" +msgstr "" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,state:0 +msgid "Started" +msgstr "" + +#. module: anonymization +#: selection:ir.model.fields.anonymization.history,state:0 +msgid "Done" +msgstr "" + +#. module: anonymization +#: view:ir.model.fields.anonymization.history:0 +#: field:ir.model.fields.anonymization.history,msg:0 +#: field:ir.model.fields.anonymize.wizard,msg:0 +msgid "Message" +msgstr "" diff --git a/addons/anonymization/security/ir.model.access.csv b/addons/anonymization/security/ir.model.access.csv index b558227df24..5531738338b 100644 --- a/addons/anonymization/security/ir.model.access.csv +++ b/addons/anonymization/security/ir.model.access.csv @@ -3,5 +3,3 @@ "access_ir_model_fields_anonymization_user","ir_model_fields_anonymization user","model_ir_model_fields_anonymization",,1,0,0,0 "access_ir_model_fields_anonymization_history_group_system","ir_model_fields_anonymization_history group_user","model_ir_model_fields_anonymization_history","base.group_system",1,1,1,1 "access_ir_model_fields_anonymization_history_user","ir_model_fields_anonymization_history user","model_ir_model_fields_anonymization_history",,1,0,0,0 -"access_ir_model_fields_anonymize_wizard_group_system","ir_model_fields_anonymize_wizard group_user","model_ir_model_fields_anonymize_wizard","base.group_system",1,1,1,1 -"access_ir_model_fields_anonymize_wizard_user","ir_model_fields_anonymize_wizard user","model_ir_model_fields_anonymize_wizard",,1,0,0,0 diff --git a/addons/association/__openerp__.py b/addons/association/__openerp__.py index 3dc6c03f94e..8aad18575ff 100644 --- a/addons/association/__openerp__.py +++ b/addons/association/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Association profile', + 'name': 'Associations Management', 'version': '0.1', 'category': 'Specific Industry Applications', 'complexity': "normal", @@ -37,6 +37,7 @@ It installs the profile for associations to manage events, registrations, member 'demo_xml': [], 'installable': True, 'active': False, + 'application': True, 'certificate': '0078696047261', 'images': ['images/association1.jpeg'], } diff --git a/addons/association/i18n/cs.po b/addons/association/i18n/cs.po index 5690d14c17e..08431ed8d93 100644 --- a/addons/association/i18n/cs.po +++ b/addons/association/i18n/cs.po @@ -4,17 +4,18 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 6.0dev\n" +"Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-11-12 11:51+0000\n" -"Last-Translator: Kuvaly [LCT] <kuvaly@seznam.cz>\n" -"Language-Team: \n" +"PO-Revision-Date: 2011-11-25 12:34+0000\n" +"Last-Translator: Jiří Hajda <robie@centrum.cz>\n" +"Language-Team: Czech <openerp-i18n-czech@lists.launchpad.net >\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:52+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:50+0000\n" +"X-Generator: Launchpad (build 14381)\n" +"X-Poedit-Language: Czech\n" #. module: association #: field:profile.association.config.install_modules_wizard,wiki:0 @@ -24,22 +25,22 @@ msgstr "Wiki" #. module: association #: view:profile.association.config.install_modules_wizard:0 msgid "Event Management" -msgstr "" +msgstr "Správa událostí" #. module: association #: field:profile.association.config.install_modules_wizard,project_gtd:0 msgid "Getting Things Done" -msgstr "" +msgstr "Mít vše hotovo (GTD)" #. module: association #: model:ir.module.module,description:association.module_meta_information msgid "This module is to create Profile for Associates" -msgstr "" +msgstr "Tento modul je k vytváření profilů asociací." #. module: association #: field:profile.association.config.install_modules_wizard,progress:0 msgid "Configuration Progress" -msgstr "" +msgstr "Proces nastavení" #. module: association #: view:profile.association.config.install_modules_wizard:0 @@ -47,21 +48,22 @@ msgid "" "Here are specific applications related to the Association Profile you " "selected." msgstr "" +"Zde jsou specifické aplikace vztažené k vámi vybraným profilům asociací." #. module: association #: view:profile.association.config.install_modules_wizard:0 msgid "title" -msgstr "" +msgstr "titulek" #. module: association #: help:profile.association.config.install_modules_wizard,event_project:0 msgid "Helps you to manage and organize your events." -msgstr "" +msgstr "Pomůže vám spravovat a organizovat vaše události." #. module: association #: field:profile.association.config.install_modules_wizard,config_logo:0 msgid "Image" -msgstr "" +msgstr "Obrázek" #. module: association #: help:profile.association.config.install_modules_wizard,hr_expense:0 @@ -69,6 +71,8 @@ msgid "" "Tracks and manages employee expenses, and can automatically re-invoice " "clients if the expenses are project-related." msgstr "" +"Sleduje a spravuje útraty zaměstnanců a může automaticky znovu fakturovat " +"klientům, pokud útraty jsou vztažené k projektu." #. module: association #: help:profile.association.config.install_modules_wizard,project_gtd:0 @@ -76,27 +80,29 @@ msgid "" "GTD is a methodology to efficiently organise yourself and your tasks. This " "module fully integrates GTD principle with OpenERP's project management." msgstr "" +"GTD je metodologie k efektivní organizaci váš a vašich úkolů. Tento modul " +"plně integruje principy GTD se správou projektů OpenERP." #. module: association #: view:profile.association.config.install_modules_wizard:0 msgid "Resources Management" -msgstr "" +msgstr "Správa zdrojů" #. module: association #: model:ir.module.module,shortdesc:association.module_meta_information msgid "Association profile" -msgstr "" +msgstr "Profil asociací" #. module: association #: field:profile.association.config.install_modules_wizard,hr_expense:0 msgid "Expenses Tracking" -msgstr "" +msgstr "Sledování útrat" #. module: association #: model:ir.actions.act_window,name:association.action_config_install_module #: view:profile.association.config.install_modules_wizard:0 msgid "Association Application Configuration" -msgstr "" +msgstr "Nastavení aplikace asociací" #. module: association #: help:profile.association.config.install_modules_wizard,wiki:0 @@ -104,6 +110,8 @@ msgid "" "Lets you create wiki pages and page groups in order to keep track of " "business knowledge and share it with and between your employees." msgstr "" +"Umožní vám vytvářet wiki stránky a skupiny stránek pro udržení přehledu o " +"obchodních znalostích a sdílet je s a mezi vašimi zaměstnanci." #. module: association #: help:profile.association.config.install_modules_wizard,project:0 @@ -111,16 +119,18 @@ msgid "" "Helps you manage your projects and tasks by tracking them, generating " "plannings, etc..." msgstr "" +"Pomůže vám spravovat vaše projekty a úkoly pomocí jejich sledování, " +"generování plánování, atd..." #. module: association #: model:ir.model,name:association.model_profile_association_config_install_modules_wizard msgid "profile.association.config.install_modules_wizard" -msgstr "" +msgstr "profile.association.config.install_modules_wizard" #. module: association #: field:profile.association.config.install_modules_wizard,event_project:0 msgid "Events" -msgstr "" +msgstr "Události" #. module: association #: view:profile.association.config.install_modules_wizard:0 @@ -131,4 +141,4 @@ msgstr "Správa projektů" #. module: association #: view:profile.association.config.install_modules_wizard:0 msgid "Configure" -msgstr "" +msgstr "Nastavit" diff --git a/addons/association/i18n/hr.po b/addons/association/i18n/hr.po index 9951ce3dd25..080d41d3e30 100644 --- a/addons/association/i18n/hr.po +++ b/addons/association/i18n/hr.po @@ -7,29 +7,29 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-11-12 11:37+0000\n" -"Last-Translator: <>\n" +"PO-Revision-Date: 2011-12-08 15:58+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-05 05:52+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: association #: field:profile.association.config.install_modules_wizard,wiki:0 msgid "Wiki" -msgstr "" +msgstr "Wiki" #. module: association #: view:profile.association.config.install_modules_wizard:0 msgid "Event Management" -msgstr "" +msgstr "Upravljanje eventima" #. module: association #: field:profile.association.config.install_modules_wizard,project_gtd:0 msgid "Getting Things Done" -msgstr "" +msgstr "Getting Things Done" #. module: association #: model:ir.module.module,description:association.module_meta_information @@ -39,7 +39,7 @@ msgstr "" #. module: association #: field:profile.association.config.install_modules_wizard,progress:0 msgid "Configuration Progress" -msgstr "" +msgstr "Napredak konfiguracije" #. module: association #: view:profile.association.config.install_modules_wizard:0 @@ -51,7 +51,7 @@ msgstr "" #. module: association #: view:profile.association.config.install_modules_wizard:0 msgid "title" -msgstr "" +msgstr "naslov" #. module: association #: help:profile.association.config.install_modules_wizard,event_project:0 @@ -61,7 +61,7 @@ msgstr "" #. module: association #: field:profile.association.config.install_modules_wizard,config_logo:0 msgid "Image" -msgstr "" +msgstr "Slika" #. module: association #: help:profile.association.config.install_modules_wizard,hr_expense:0 @@ -69,6 +69,8 @@ msgid "" "Tracks and manages employee expenses, and can automatically re-invoice " "clients if the expenses are project-related." msgstr "" +"Prati i upravlja troškove djelatnika , moguće je automatski ponovno " +"fakturirati klijente ako su troškovi povezani sa projektom." #. module: association #: help:profile.association.config.install_modules_wizard,project_gtd:0 @@ -80,7 +82,7 @@ msgstr "" #. module: association #: view:profile.association.config.install_modules_wizard:0 msgid "Resources Management" -msgstr "" +msgstr "Upravljanje resursima" #. module: association #: model:ir.module.module,shortdesc:association.module_meta_information @@ -90,7 +92,7 @@ msgstr "" #. module: association #: field:profile.association.config.install_modules_wizard,hr_expense:0 msgid "Expenses Tracking" -msgstr "" +msgstr "Praćenje troškova" #. module: association #: model:ir.actions.act_window,name:association.action_config_install_module @@ -120,15 +122,15 @@ msgstr "" #. module: association #: field:profile.association.config.install_modules_wizard,event_project:0 msgid "Events" -msgstr "" +msgstr "Eventi" #. module: association #: view:profile.association.config.install_modules_wizard:0 #: field:profile.association.config.install_modules_wizard,project:0 msgid "Project Management" -msgstr "" +msgstr "Upravljanje Projektima" #. module: association #: view:profile.association.config.install_modules_wizard:0 msgid "Configure" -msgstr "" +msgstr "Postavke" diff --git a/addons/association/profile_association.xml b/addons/association/profile_association.xml index 8ce97cb2e43..5f81769eb1a 100644 --- a/addons/association/profile_association.xml +++ b/addons/association/profile_association.xml @@ -6,7 +6,6 @@ id="base.menu_association" icon="terp-calendar" sequence="9" - groups="base.group_extended" web_icon="images/association.png" web_icon_hover="images/association-hover.png"/> <menuitem name="Configuration" id="base.menu_event_config" parent="base.menu_association" sequence="30" groups="base.group_extended"/> diff --git a/addons/auction/__openerp__.py b/addons/auction/__openerp__.py index 3f6c6c35e31..0475890e1e9 100644 --- a/addons/auction/__openerp__.py +++ b/addons/auction/__openerp__.py @@ -68,6 +68,7 @@ The dashboard for auction includes: ], 'installable': True, + 'auction': True, 'active': False, 'certificate': '0039333102717', 'images': ['images/auction1.jpeg','images/auction2.jpeg','images/auction3.jpeg'], diff --git a/addons/auction/report/buyer_form_report.rml b/addons/auction/report/buyer_form_report.rml index c917a931fd3..3421bf27d12 100644 --- a/addons/auction/report/buyer_form_report.rml +++ b/addons/auction/report/buyer_form_report.rml @@ -99,9 +99,7 @@ </td> <td> <para style="Addressee">[[ o['partner'] and o['partner'].name or False]]</para> - <para style="Addressee">[[o['partner'] and o['partner'].address[0].street or False]]</para> - <para style="Addressee">[[o['partner'] and o['partner'].address[0].zip or False]][[o['partner'] and o['partner'].address[0].city or False]]</para> - <para style="Addressee">[[o['partner'] and o['partner'].address[0].country_id.name or False]]</para> + <para style="Addressee">[[o['partner'] and o['partner'].address and display_address(o['partner'].address[0]) ]]</para> </td> </tr> </blockTable> diff --git a/addons/auction/report/deposit_seller.rml b/addons/auction/report/deposit_seller.rml index 3adc1152067..518f1f441df 100644 --- a/addons/auction/report/deposit_seller.rml +++ b/addons/auction/report/deposit_seller.rml @@ -84,9 +84,7 @@ </para> <para style="P5">[[o.bord_vnd_id.partner_id.title]]</para> <para style="P5">[[o.bord_vnd_id.partner_id.name]]</para> - <para style="P5">[[o.bord_vnd_id.partner_id.address[0].street]]</para> - <para style="P5">[[o.bord_vnd_id.partner_id.address[0].zip]],[[o.bord_vnd_id.partner_id.address[0].city]]</para> - <para style="P5">[[o.bord_vnd_id.partner_id.address[0].country_id.name]]</para> + <para style="P5">[[o.bord_vnd_id.partner_id.address and display_address(o.bord_vnd_id.partner_id.address[0]) ]] </para> <para style="P6"> <font color="white"> </font> </para> diff --git a/addons/auction/report/report_auction.py b/addons/auction/report/report_auction.py index 012ea3c891e..af5d76b6076 100644 --- a/addons/auction/report/report_auction.py +++ b/addons/auction/report/report_auction.py @@ -209,3 +209,5 @@ class report_object_encoded(osv.osv): report_object_encoded() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auction/report/seller_form_report.rml b/addons/auction/report/seller_form_report.rml index c2d724eb259..d9cc1adaadf 100644 --- a/addons/auction/report/seller_form_report.rml +++ b/addons/auction/report/seller_form_report.rml @@ -74,9 +74,7 @@ </td> <td> <para style="Addressee">[[ o['partner'] and o['partner'].name or False]]</para> - <para style="Addressee">[[o['partner'] and o['partner'].address[0].street or False]]</para> - <para style="Addressee">[[o['partner'] and o['partner'].address[0].zip or False]][[o['partner'] and o['partner'].address[0].city or False]]</para> - <para style="P11">[[o['partner'] and o['partner'].address[0].country_id.name or False]]</para> + <para style="Addressee">[[ o['partner'] and o['partner'].address and display_address(o['partner'].address[0]) </para> <para style="P4"> <font color="white"> </font> </para> diff --git a/addons/auction/wizard/auction_lots_able.py b/addons/auction/wizard/auction_lots_able.py index 8604d691456..37d8374aad4 100644 --- a/addons/auction/wizard/auction_lots_able.py +++ b/addons/auction/wizard/auction_lots_able.py @@ -44,3 +44,5 @@ class auction_lots_able(osv.osv_memory): return {'type': 'ir.actions.act_window_close'} auction_lots_able() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auction/wizard/auction_lots_cancel.py b/addons/auction/wizard/auction_lots_cancel.py index 3974241a071..7157ac8abea 100644 --- a/addons/auction/wizard/auction_lots_cancel.py +++ b/addons/auction/wizard/auction_lots_cancel.py @@ -53,4 +53,5 @@ class auction_lots_cancel(osv.osv): _columns = { } -auction_lots_cancel()
\ No newline at end of file +auction_lots_cancel() +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auction/wizard/auction_lots_enable.py b/addons/auction/wizard/auction_lots_enable.py index 290664ba697..c4c8792f76a 100644 --- a/addons/auction/wizard/auction_lots_enable.py +++ b/addons/auction/wizard/auction_lots_enable.py @@ -41,3 +41,5 @@ class auction_lots_enable(osv.osv_memory): return {'type': 'ir.actions.act_window_close'} auction_lots_enable() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auction/wizard/auction_lots_make_invoice.py b/addons/auction/wizard/auction_lots_make_invoice.py index 3a87a202b74..19c39dc2c04 100644 --- a/addons/auction/wizard/auction_lots_make_invoice.py +++ b/addons/auction/wizard/auction_lots_make_invoice.py @@ -89,3 +89,5 @@ class auction_lots_make_invoice(osv.osv_memory): } auction_lots_make_invoice() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auction/wizard/auction_lots_make_invoice_buyer.py b/addons/auction/wizard/auction_lots_make_invoice_buyer.py index dc39ccbb717..253a5b317ff 100644 --- a/addons/auction/wizard/auction_lots_make_invoice_buyer.py +++ b/addons/auction/wizard/auction_lots_make_invoice_buyer.py @@ -89,3 +89,5 @@ class auction_lots_make_invoice_buyer(osv.osv_memory): } auction_lots_make_invoice_buyer() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auction/wizard/auction_pay_sel.py b/addons/auction/wizard/auction_pay_sel.py index 77484bbe988..42ea08e8094 100644 --- a/addons/auction/wizard/auction_pay_sel.py +++ b/addons/auction/wizard/auction_pay_sel.py @@ -55,3 +55,5 @@ class auction_pay_sel(osv.osv_memory): return {'type': 'ir.actions.act_window_close'} auction_pay_sel() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auction/wizard/auction_taken.py b/addons/auction/wizard/auction_taken.py index 8ada436ae5d..38ac6dca2fe 100644 --- a/addons/auction/wizard/auction_taken.py +++ b/addons/auction/wizard/auction_taken.py @@ -51,3 +51,5 @@ class auction_taken(osv.osv_memory): return {'lot_ids': []} auction_taken() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auction/wizard/auction_transfer_unsold_object.py b/addons/auction/wizard/auction_transfer_unsold_object.py index f593a36de2e..0e52199e566 100644 --- a/addons/auction/wizard/auction_transfer_unsold_object.py +++ b/addons/auction/wizard/auction_transfer_unsold_object.py @@ -84,4 +84,5 @@ class auction_transfer_unsold_object(osv.osv): 'state':'draft'}) return {'type': 'ir.actions.act_window_close'} -auction_transfer_unsold_object()
\ No newline at end of file +auction_transfer_unsold_object() +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/audittrail/__openerp__.py b/addons/audittrail/__openerp__.py index 7d2a5955ac0..5bfd023ac39 100644 --- a/addons/audittrail/__openerp__.py +++ b/addons/audittrail/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Audit Trail', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module lets administrator track every user operation on all the objects of the system. =========================================================================================== diff --git a/addons/audittrail/i18n/hr.po b/addons/audittrail/i18n/hr.po index ce60dcea9cc..9d9a378c7fe 100644 --- a/addons/audittrail/i18n/hr.po +++ b/addons/audittrail/i18n/hr.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: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2009-09-08 13:23+0000\n" +"PO-Revision-Date: 2011-12-08 17:09+0000\n" "Last-Translator: Ivica Perić <ivica.peric@ipsoft-tg.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: 2011-11-05 05:32+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: audittrail #: model:ir.module.module,shortdesc:audittrail.module_meta_information msgid "Audit Trail" -msgstr "" +msgstr "Audit Trail" #. module: audittrail #: code:addons/audittrail/audittrail.py:81 @@ -30,18 +30,18 @@ msgstr "" #. module: audittrail #: field:audittrail.log.line,log_id:0 msgid "Log" -msgstr "Dnevnik izmjena" +msgstr "Zapisnik" #. module: audittrail #: view:audittrail.rule:0 #: selection:audittrail.rule,state:0 msgid "Subscribed" -msgstr "Pretplaćeno" +msgstr "Pretplaćen" #. module: audittrail #: model:ir.model,name:audittrail.model_audittrail_rule msgid "Audittrail Rule" -msgstr "" +msgstr "Audittrail Pravila" #. module: audittrail #: view:audittrail.view.log:0 @@ -54,7 +54,7 @@ msgstr "Dnevnik izmjena" #: view:audittrail.log:0 #: view:audittrail.rule:0 msgid "Group By..." -msgstr "" +msgstr "Grupiraj po..." #. module: audittrail #: view:audittrail.rule:0 @@ -65,7 +65,7 @@ msgstr "Stanje" #. module: audittrail #: view:audittrail.rule:0 msgid "_Subscribe" -msgstr "" +msgstr "_Pretplati" #. module: audittrail #: view:audittrail.rule:0 @@ -89,6 +89,8 @@ msgid "" "Select this if you want to keep track of read/open on any record of the " "object of this rule" msgstr "" +"Select this if you want to keep track of read/open on any record of the " +"object of this rule" #. module: audittrail #: field:audittrail.log,method:0 @@ -98,22 +100,22 @@ msgstr "Metoda" #. module: audittrail #: field:audittrail.view.log,from:0 msgid "Log From" -msgstr "" +msgstr "Logiraj od" #. module: audittrail #: field:audittrail.log.line,log:0 msgid "Log ID" -msgstr "" +msgstr "Log ID" #. module: audittrail #: field:audittrail.log,res_id:0 msgid "Resource Id" -msgstr "" +msgstr "Id resursa" #. module: audittrail #: help:audittrail.rule,user_id:0 msgid "if User is not added then it will applicable for all users" -msgstr "" +msgstr "if User is not added then it will applicable for all users" #. module: audittrail #: help:audittrail.rule,log_workflow:0 @@ -121,6 +123,8 @@ msgid "" "Select this if you want to keep track of workflow on any record of the " "object of this rule" msgstr "" +"Odaberite ovu opciju ukoliko želite pratiti tijek rada na bilo koji zapis " +"predmeta iz ovog pravila" #. module: audittrail #: field:audittrail.rule,user_id:0 @@ -130,14 +134,14 @@ msgstr "Korisnici" #. module: audittrail #: view:audittrail.log:0 msgid "Log Lines" -msgstr "" +msgstr "Log Lines" #. module: audittrail #: view:audittrail.log:0 #: field:audittrail.log,object_id:0 #: field:audittrail.rule,object_id:0 msgid "Object" -msgstr "Objekt" +msgstr "Object" #. module: audittrail #: view:audittrail.rule:0 @@ -147,7 +151,7 @@ msgstr "Pravilo praćenja promjena" #. module: audittrail #: field:audittrail.view.log,to:0 msgid "Log To" -msgstr "" +msgstr "Log To" #. module: audittrail #: view:audittrail.log:0 @@ -157,13 +161,13 @@ msgstr "Tekst nove vrijednosti: " #. module: audittrail #: view:audittrail.rule:0 msgid "Search Audittrail Rule" -msgstr "" +msgstr "Search Audittrail Rule" #. module: audittrail #: model:ir.actions.act_window,name:audittrail.action_audittrail_rule_tree #: model:ir.ui.menu,name:audittrail.menu_action_audittrail_rule_tree msgid "Audit Rules" -msgstr "" +msgstr "Pravila revizije" #. module: audittrail #: view:audittrail.log:0 @@ -173,7 +177,7 @@ msgstr "Stara vrijednost : " #. module: audittrail #: field:audittrail.log,name:0 msgid "Resource Name" -msgstr "" +msgstr "Resource Name" #. module: audittrail #: view:audittrail.log:0 @@ -187,16 +191,18 @@ msgid "" "Select this if you want to keep track of modification on any record of the " "object of this rule" msgstr "" +"Select this if you want to keep track of modification on any record of the " +"object of this rule" #. module: audittrail #: field:audittrail.rule,log_create:0 msgid "Log Creates" -msgstr "" +msgstr "Log Creates" #. module: audittrail #: help:audittrail.rule,object_id:0 msgid "Select object for which you want to generate log." -msgstr "" +msgstr "Select object for which you want to generate log." #. module: audittrail #: view:audittrail.log:0 @@ -206,7 +212,7 @@ msgstr "Tekst stare vrijednosti : " #. module: audittrail #: field:audittrail.rule,log_workflow:0 msgid "Log Workflow" -msgstr "" +msgstr "Log Workflow" #. module: audittrail #: model:ir.module.module,description:audittrail.module_meta_information @@ -224,7 +230,7 @@ msgstr "" #. module: audittrail #: field:audittrail.rule,log_read:0 msgid "Log Reads" -msgstr "" +msgstr "Log Reads" #. module: audittrail #: code:addons/audittrail/audittrail.py:82 @@ -235,7 +241,7 @@ msgstr "" #. module: audittrail #: field:audittrail.log,line_ids:0 msgid "Log lines" -msgstr "Retci dnevnika" +msgstr "Reci dnevnika" #. module: audittrail #: field:audittrail.log.line,field_id:0 @@ -253,6 +259,8 @@ msgid "" "Select this if you want to keep track of deletion on any record of the " "object of this rule" msgstr "" +"Select this if you want to keep track of deletion on any record of the " +"object of this rule" #. module: audittrail #: view:audittrail.log:0 @@ -263,47 +271,47 @@ msgstr "Korisnik" #. module: audittrail #: field:audittrail.rule,action_id:0 msgid "Action ID" -msgstr "" +msgstr "Action ID" #. module: audittrail #: view:audittrail.rule:0 msgid "Users (if User is not added then it will applicable for all users)" -msgstr "" +msgstr "Korisnici (ako se ne upišu - vrijedi za sve korisnike)" #. module: audittrail #: view:audittrail.rule:0 msgid "UnSubscribe" -msgstr "" +msgstr "UnSubscribe" #. module: audittrail #: field:audittrail.rule,log_unlink:0 msgid "Log Deletes" -msgstr "" +msgstr "Log Deletes" #. module: audittrail #: field:audittrail.log.line,field_description:0 msgid "Field Description" -msgstr "" +msgstr "Field Description" #. module: audittrail #: view:audittrail.log:0 msgid "Search Audittrail Log" -msgstr "" +msgstr "Search Audittrail Log" #. module: audittrail #: field:audittrail.rule,log_write:0 msgid "Log Writes" -msgstr "" +msgstr "Log Writes" #. module: audittrail #: view:audittrail.view.log:0 msgid "Open Logs" -msgstr "" +msgstr "Open Logs" #. module: audittrail #: field:audittrail.log.line,new_value_text:0 msgid "New value Text" -msgstr "" +msgstr "New value Text" #. module: audittrail #: field:audittrail.rule,name:0 @@ -313,28 +321,29 @@ msgstr "Naziv pravila" #. module: audittrail #: field:audittrail.log.line,new_value:0 msgid "New Value" -msgstr "" +msgstr "New Value" #. module: audittrail #: view:audittrail.log:0 msgid "AuditTrail Logs" -msgstr "" +msgstr "AuditTrail Logs" #. module: audittrail #: model:ir.model,name:audittrail.model_audittrail_log msgid "Audittrail Log" -msgstr "" +msgstr "Audittrail Log" #. module: audittrail #: help:audittrail.rule,log_action:0 msgid "" "Select this if you want to keep track of actions on the object of this rule" msgstr "" +"Select this if you want to keep track of actions on the object of this rule" #. module: audittrail #: view:audittrail.log:0 msgid "New Value : " -msgstr "" +msgstr "Nova vrijednost : " #. module: audittrail #: sql_constraint:audittrail.rule:0 @@ -351,22 +360,22 @@ msgstr "Tekst stare vrijednosti" #. module: audittrail #: view:audittrail.view.log:0 msgid "Cancel" -msgstr "Otkaži" +msgstr "Odustani" #. module: audittrail #: model:ir.model,name:audittrail.model_audittrail_view_log msgid "View Log" -msgstr "" +msgstr "Pogledaj Log" #. module: audittrail #: model:ir.model,name:audittrail.model_audittrail_log_line msgid "Log Line" -msgstr "" +msgstr "Redak Prijave" #. module: audittrail #: field:audittrail.rule,log_action:0 msgid "Log Action" -msgstr "" +msgstr "Log Action" #. module: audittrail #: help:audittrail.rule,log_create:0 @@ -374,6 +383,8 @@ msgid "" "Select this if you want to keep track of creation on any record of the " "object of this rule" msgstr "" +"Select this if you want to keep track of creation on any record of the " +"object of this rule" #~ msgid "Name" #~ msgstr "Naziv" diff --git a/addons/audittrail/wizard/audittrail_view_log.py b/addons/audittrail/wizard/audittrail_view_log.py index 65165c1d2d8..76284e75511 100644 --- a/addons/audittrail/wizard/audittrail_view_log.py +++ b/addons/audittrail/wizard/audittrail_view_log.py @@ -62,3 +62,5 @@ class audittrail_view_log(osv.osv_memory): return result audittrail_view_log() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auth_openid/__openerp__.py b/addons/auth_openid/__openerp__.py index 040a96a3995..6fa802b94e3 100644 --- a/addons/auth_openid/__openerp__.py +++ b/addons/auth_openid/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'OpenID', + 'name': 'OpenID Authentification', 'version': '2.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """Allow users to login through OpenID.""", 'author': 'OpenERP s.a.', 'maintainer': 'OpenERP s.a.', diff --git a/addons/auth_openid/controllers/__init__.py b/addons/auth_openid/controllers/__init__.py index 2d3be24431f..c5f359681b9 100644 --- a/addons/auth_openid/controllers/__init__.py +++ b/addons/auth_openid/controllers/__init__.py @@ -18,3 +18,5 @@ # ############################################################################## import main + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auth_openid/controllers/main.py b/addons/auth_openid/controllers/main.py index 78b8609e765..0c1274ba05a 100644 --- a/addons/auth_openid/controllers/main.py +++ b/addons/auth_openid/controllers/main.py @@ -223,3 +223,5 @@ class OpenIDController(openerpweb.Controller): session = getattr(req.session, 'openid_session', {}) return {'status': session.get('status'), 'message': session.get('message')} + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auth_openid/res_users.py b/addons/auth_openid/res_users.py index 3278184474c..c9b5bfc7b26 100644 --- a/addons/auth_openid/res_users.py +++ b/addons/auth_openid/res_users.py @@ -92,3 +92,5 @@ class res_users(osv.osv): res_users() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/auth_openid/utils.py b/addons/auth_openid/utils.py index 2761f3d0e1d..444b5eeaa05 100644 --- a/addons/auth_openid/utils.py +++ b/addons/auth_openid/utils.py @@ -44,3 +44,5 @@ def cursor(db): finally: cr.close() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_action_rule/__openerp__.py b/addons/base_action_rule/__openerp__.py index 18af8d09459..a8788bdddcb 100644 --- a/addons/base_action_rule/__openerp__.py +++ b/addons/base_action_rule/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'Action Rule', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'description': """ This module allows to implement action rules for any object. ============================================================ diff --git a/addons/base_action_rule/i18n/pt.po b/addons/base_action_rule/i18n/pt.po index 106ba16af9d..d894a6b799b 100644 --- a/addons/base_action_rule/i18n/pt.po +++ b/addons/base_action_rule/i18n/pt.po @@ -8,25 +8,26 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-12-15 20:31+0000\n" -"Last-Translator: OpenERP Administrators <Unknown>\n" +"PO-Revision-Date: 2011-11-23 12:16+0000\n" +"Last-Translator: Paulino Ascenção <Unknown>\n" "Language-Team: Portuguese <pt@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:51+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-24 05:00+0000\n" +"X-Generator: Launchpad (build 14336)\n" #. module: base_action_rule #: help:base.action.rule,act_mail_to_user:0 msgid "" "Check this if you want the rule to send an email to the responsible person." msgstr "" +"Assinale aqui se pretender que a regra envie um e-mail à pessoa responsável." #. module: base_action_rule #: field:base.action.rule,act_remind_partner:0 msgid "Remind Partner" -msgstr "Alertar parceiro" +msgstr "Relembrar parceiro" #. module: base_action_rule #: field:base.action.rule,trg_partner_categ_id:0 @@ -259,7 +260,7 @@ msgstr "Chamar o método do objeto" #. module: base_action_rule #: field:base.action.rule,act_email_to:0 msgid "Email To" -msgstr "" +msgstr "E-mail para" #. module: base_action_rule #: help:base.action.rule,act_mail_to_watchers:0 @@ -369,12 +370,12 @@ msgstr "Erro: A mensagem não está bem formatada" #. module: base_action_rule #: view:base.action.rule:0 msgid "Email Actions" -msgstr "" +msgstr "Ações do e-mail" #. module: base_action_rule #: view:base.action.rule:0 msgid "Email Information" -msgstr "" +msgstr "Informação sobre o e-mail" #. module: base_action_rule #: model:ir.model,name:base_action_rule.model_base_action_rule @@ -432,7 +433,7 @@ msgstr "" #. module: base_action_rule #: field:base.action.rule,act_email_cc:0 msgid "Add Watchers (Cc)" -msgstr "" +msgstr "Acdicionar observadores (CC)" #. module: base_action_rule #: view:base.action.rule:0 diff --git a/addons/base_calendar/__openerp__.py b/addons/base_calendar/__openerp__.py index 0dd72a17038..6edb978301f 100644 --- a/addons/base_calendar/__openerp__.py +++ b/addons/base_calendar/__openerp__.py @@ -34,7 +34,7 @@ It supports: - Recurring events - Invitations to people""", "author" : "OpenERP SA", - 'category': 'Hidden', + 'category': 'Tools', 'website': 'http://www.openerp.com', "init_xml" : [ 'base_calendar_data.xml' diff --git a/addons/crm/test/test_crm_recurrent_meeting_case2.yml b/addons/base_calendar/test/test_crm_recurrent_meeting_case2.yml index b6afeb6906e..b6afeb6906e 100644 --- a/addons/crm/test/test_crm_recurrent_meeting_case2.yml +++ b/addons/base_calendar/test/test_crm_recurrent_meeting_case2.yml diff --git a/addons/base_contact/__openerp__.py b/addons/base_contact/__openerp__.py index 5537d6f91eb..f5969b6e309 100644 --- a/addons/base_contact/__openerp__.py +++ b/addons/base_contact/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Base Contact', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'complexity': "expert", 'description': """ This module allows you to manage your contacts entirely. diff --git a/addons/base_contact/base_contact_demo.xml b/addons/base_contact/base_contact_demo.xml index 393c318015c..35390caca77 100644 --- a/addons/base_contact/base_contact_demo.xml +++ b/addons/base_contact/base_contact_demo.xml @@ -146,7 +146,11 @@ <field eval=""""Grand-Rosière"""" name="city"/> <field eval=""""+32.81.73.35.01"""" name="fax"/> <field eval=""""1367"""" name="zip"/> - <field name="country_id" ref="base.be"/> + <!-- The partner associated with the main company should not have a country specified in the demo data, + as it may conflicts with the accounting installing chart wizard. This wizard will indeed try to + install the localization module accordingly to this variable automatically. Thus, in demo data, + everyone would have the belgian chart of account by default, what should be avoided. --> + <!-- <field name="country_id" ref="base.be"/> --> <field eval=""""+32.81.81.37.00"""" name="phone"/> <field eval=""""Chaussée de Namur, 40"""" name="street"/> </record> @@ -154,7 +158,11 @@ <field eval=""""Louvain-La-Neuve"""" name="city"/> <field eval=""""1348"""" name="zip"/> <field eval=""""contact"""" name="type"/> - <field name="country_id" ref="base.be"/> + <!-- The partner associated with the main company should not have a country specified in the demo data, + as it may conflicts with the accounting installing chart wizard. This wizard will indeed try to + install the localization module accordingly to this variable automatically. Thus, in demo data, + everyone would have the belgian chart of account by default, what should be avoided. --> + <!-- <field name="country_id" ref="base.be"/> --> <field eval=""""rue du pré, 115"""" name="street"/> <field eval="1" name="active"/> </record> @@ -162,7 +170,11 @@ <field eval=""""Charleroi"""" name="city"/> <field eval=""""6000"""" name="zip"/> <field eval=""""contact"""" name="type"/> - <field name="country_id" ref="base.be"/> + <!-- The partner associated with the main company should not have a country specified in the demo data, + as it may conflicts with the accounting installing chart wizard. This wizard will indeed try to + install the localization module accordingly to this variable automatically. Thus, in demo data, + everyone would have the belgian chart of account by default, what should be avoided. --> + <!-- <field name="country_id" ref="base.be"/> --> <field eval=""""Boulevars Tirou, 32"""" name="street"/> <field eval="1" name="active"/> </record> diff --git a/addons/base_contact/i18n/ar.po b/addons/base_contact/i18n/ar.po index 6264b1aa32d..e5610421181 100644 --- a/addons/base_contact/i18n/ar.po +++ b/addons/base_contact/i18n/ar.po @@ -7,104 +7,104 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.4\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2009-02-03 06:25+0000\n" -"Last-Translator: <>\n" +"PO-Revision-Date: 2011-12-03 15:19+0000\n" +"Last-Translator: kifcaliph <kifcaliph@hotmail.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: 2011-11-05 05:04+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-04 04:43+0000\n" +"X-Generator: Launchpad (build 14418)\n" #. module: base_contact #: field:res.partner.contact,title:0 msgid "Title" -msgstr "" +msgstr "اللقب" #. module: base_contact #: view:res.partner.address:0 msgid "# of Contacts" -msgstr "" +msgstr "عدد جهات الاتصال" #. module: base_contact #: field:res.partner.job,fax:0 msgid "Fax" -msgstr "" +msgstr "فاكس" #. module: base_contact #: view:base.contact.installer:0 msgid "title" -msgstr "" +msgstr "الاسم" #. module: base_contact #: help:res.partner.job,date_start:0 msgid "Start date of job(Joining Date)" -msgstr "" +msgstr "تاريخ الالتحاق بالوظيفة" #. module: base_contact #: view:base.contact.installer:0 msgid "Select the Option for Addresses Migration" -msgstr "" +msgstr "حدد الخيار لنقل العناوين" #. module: base_contact #: help:res.partner.job,function:0 msgid "Function of this contact with this partner" -msgstr "" +msgstr "مهمة جهة الاتصال هذه عند هذا الشريك" #. module: base_contact #: help:res.partner.job,state:0 msgid "Status of Address" -msgstr "" +msgstr "حالة العنوان" #. module: base_contact #: help:res.partner.job,name:0 msgid "" "You may enter Address first,Partner will be linked " "automatically if any." -msgstr "" +msgstr "يمكنك إدخال العنوان أولاً، وسيتمّ ربط الشريك تلقائياً إن وُجِد." #. module: base_contact #: help:res.partner.job,fax:0 msgid "Job FAX no." -msgstr "" +msgstr "فاكس العمل" #. module: base_contact #: field:res.partner.contact,mobile:0 msgid "Mobile" -msgstr "" +msgstr "الجوال" #. module: base_contact #: view:res.partner.contact:0 #: field:res.partner.contact,comment:0 msgid "Notes" -msgstr "" +msgstr "ملاحظات" #. module: base_contact #: model:process.node,note:base_contact.process_node_contacts0 msgid "People you work with." -msgstr "" +msgstr "أشخاص تعمل معهم." #. module: base_contact #: model:process.transition,note:base_contact.process_transition_functiontoaddress0 msgid "Define functions and address." -msgstr "" +msgstr "تعريف المهام والعنوان" #. module: base_contact #: help:res.partner.job,date_stop:0 msgid "Last date of job" -msgstr "" +msgstr "تاريخ ترك الوظيفة" #. module: base_contact #: view:base.contact.installer:0 #: field:base.contact.installer,migrate:0 msgid "Migrate" -msgstr "" +msgstr "نقل" #. module: base_contact #: view:res.partner.contact:0 #: field:res.partner.job,name:0 msgid "Partner" -msgstr "" +msgstr "الشريك" #. module: base_contact #: model:process.node,note:base_contact.process_node_function0 @@ -114,12 +114,12 @@ msgstr "" #. module: base_contact #: model:process.node,name:base_contact.process_node_partners0 msgid "Partners" -msgstr "" +msgstr "الشركاء" #. module: base_contact #: field:res.partner.job,state:0 msgid "State" -msgstr "" +msgstr "المحافظة" #. module: base_contact #: help:res.partner.contact,active:0 @@ -151,27 +151,42 @@ msgid "" "an other object.\n" " " msgstr "" +"\n" +" تمكنك هذه الوحدة البرمجية من إدارة جهات الاتصال بشكل كامل.\n" +" فهي تسمح لك بـتعرف:\n" +" * جهات اتصال غير ذات صلة بشريك،\n" +" * جهات اتصال ذات عناوين عمل متعددة (ربما لارتباطها بشركاء مختلفين)،\n" +" * جهات اتصال ذات مهام مختلفة لكل عنوان من عناوين وظائفها\n" +"\n" +" كذلك تضيف هذه الوحدة البرمجية عناصر جديدة إلى القائمة تحت\n" +" الشركاء / جهات الاتصال\n" +" الشركاء / المهام\n" +"\n" +" تنبه إلى أن هذه الوحدة البرمجية تقوم بتحويل العناوين الموجودة مسبقاً إلى " +"\"عناوين\" و \"جهات اتصال\"، مما يعني أن بعض حقول العناوين سيتم حذفها (مثل " +"اسم جهة الاتصال) لأنه من المفترض أن يتم تعريفها في كائن آخر.\n" +" " #. module: base_contact #: model:ir.module.module,shortdesc:base_contact.module_meta_information #: model:process.process,name:base_contact.process_process_basecontactprocess0 msgid "Base Contact" -msgstr "" +msgstr "جهة الاتصال الأساسية" #. module: base_contact #: field:res.partner.job,date_stop:0 msgid "Date Stop" -msgstr "" +msgstr "تاريخ التوقف" #. module: base_contact #: model:ir.actions.act_window,name:base_contact.action_res_partner_job msgid "Contact's Jobs" -msgstr "" +msgstr "الوظائف" #. module: base_contact #: view:res.partner:0 msgid "Categories" -msgstr "" +msgstr "الفئات" #. module: base_contact #: help:res.partner.job,sequence_partner:0 @@ -179,70 +194,72 @@ msgid "" "Order of importance of this job title in the list of job " "title of the linked partner" msgstr "" +"ترتيب المسمى الوظيفي هذا حسب الأهمية بين المسميات الوظيغية المستخدمة لدى " +"الشريك" #. module: base_contact #: field:res.partner.job,extension:0 msgid "Extension" -msgstr "" +msgstr "الامتداد" #. module: base_contact #: help:res.partner.job,extension:0 msgid "Internal/External extension phone number" -msgstr "" +msgstr "امتداد رقم الهاتف الداخلي/الخارجي" #. module: base_contact #: help:res.partner.job,phone:0 msgid "Job Phone no." -msgstr "" +msgstr "هاتف العمل" #. module: base_contact #: view:res.partner.contact:0 #: field:res.partner.contact,job_ids:0 msgid "Functions and Addresses" -msgstr "" +msgstr "المهام والعناوين" #. module: base_contact #: model:ir.model,name:base_contact.model_res_partner_contact #: field:res.partner.job,contact_id:0 msgid "Contact" -msgstr "" +msgstr "جهة الاتصال" #. module: base_contact #: help:res.partner.job,email:0 msgid "Job E-Mail" -msgstr "" +msgstr "البريد الإلكتروني للعمل" #. module: base_contact #: field:res.partner.job,sequence_partner:0 msgid "Partner Seq." -msgstr "" +msgstr "رقم الشريك" #. module: base_contact #: model:process.transition,name:base_contact.process_transition_functiontoaddress0 msgid "Function to address" -msgstr "" +msgstr "مهمة إلى عنوان" #. module: base_contact #: field:base.contact.installer,progress:0 msgid "Configuration Progress" -msgstr "" +msgstr "سير الإعدادات" #. module: base_contact #: field:res.partner.contact,name:0 msgid "Last Name" -msgstr "" +msgstr "اسم العائلة" #. module: base_contact #: view:res.partner:0 #: view:res.partner.contact:0 msgid "Communication" -msgstr "" +msgstr "التواصل" #. module: base_contact #: field:base.contact.installer,config_logo:0 #: field:res.partner.contact,photo:0 msgid "Image" -msgstr "" +msgstr "صورة" #. module: base_contact #: selection:res.partner.job,state:0 @@ -252,7 +269,7 @@ msgstr "" #. module: base_contact #: model:ir.model,name:base_contact.model_res_partner_address msgid "Partner Addresses" -msgstr "" +msgstr "عناوين الشريك" #. module: base_contact #: view:base.contact.installer:0 @@ -262,12 +279,12 @@ msgstr "" #. module: base_contact #: field:res.partner.job,sequence_contact:0 msgid "Contact Seq." -msgstr "" +msgstr "رقم جهة الاتصال" #. module: base_contact #: view:res.partner.address:0 msgid "Search Contact" -msgstr "" +msgstr "بحث جهة الإتصال" #. module: base_contact #: model:ir.actions.act_window,name:base_contact.action_partner_contact_form @@ -277,7 +294,7 @@ msgstr "" #: view:res.partner:0 #: field:res.partner.address,job_ids:0 msgid "Contacts" -msgstr "" +msgstr "جهات الاتصال" #. module: base_contact #: view:base.contact.installer:0 @@ -289,58 +306,58 @@ msgstr "" #. module: base_contact #: model:process.node,note:base_contact.process_node_addresses0 msgid "Working and private addresses." -msgstr "" +msgstr "عناوين العمل والعناوين الخاصة" #. module: base_contact #: help:res.partner.job,address_id:0 msgid "Address which is linked to the Partner" -msgstr "" +msgstr "العنوان المرتبط بالشريك" #. module: base_contact #: field:res.partner.job,function:0 msgid "Partner Function" -msgstr "" +msgstr "مهمة الشريك" #. module: base_contact #: help:res.partner.job,other:0 msgid "Additional phone field" -msgstr "" +msgstr "حقل هاتف إضافي" #. module: base_contact #: field:res.partner.contact,website:0 msgid "Website" -msgstr "" +msgstr "الموقع الإلكتروني" #. module: base_contact #: view:base.contact.installer:0 msgid "Otherwise these details will not be visible from address/contact." -msgstr "" +msgstr "وإلا فلن تظهر هذه التفاصيل في العنوان/جهة الاتصال." #. module: base_contact #: view:base.contact.installer:0 msgid "Configure" -msgstr "" +msgstr "ضبط الإعدادات" #. module: base_contact #: field:res.partner.contact,email:0 #: field:res.partner.job,email:0 msgid "E-Mail" -msgstr "" +msgstr "البريد الإلكتروني" #. module: base_contact #: model:ir.model,name:base_contact.model_base_contact_installer msgid "base.contact.installer" -msgstr "" +msgstr "base.contact.installer" #. module: base_contact #: view:res.partner.job:0 msgid "Contact Functions" -msgstr "" +msgstr "مهام جهة الاتصال" #. module: base_contact #: field:res.partner.job,phone:0 msgid "Phone" -msgstr "" +msgstr "هاتف" #. module: base_contact #: view:base.contact.installer:0 @@ -350,164 +367,164 @@ msgstr "" #. module: base_contact #: field:res.partner.contact,active:0 msgid "Active" -msgstr "" +msgstr "نشِط" #. module: base_contact #: field:res.partner.contact,function:0 msgid "Main Function" -msgstr "" +msgstr "المهمة الرئيسية" #. module: base_contact #: model:process.transition,note:base_contact.process_transition_partnertoaddress0 msgid "Define partners and their addresses." -msgstr "" +msgstr "تعريف الشركاء وعناوينهم" #. module: base_contact #: view:res.partner.contact:0 msgid "Seq." -msgstr "" +msgstr "رقم" #. module: base_contact #: field:res.partner.contact,lang_id:0 msgid "Language" -msgstr "" +msgstr "اللغة" #. module: base_contact #: view:res.partner.contact:0 msgid "Extra Information" -msgstr "" +msgstr "معلومات إضافية" #. module: base_contact #: model:process.node,note:base_contact.process_node_partners0 msgid "Companies you work with." -msgstr "" +msgstr "الشركات التي تتعامل معها." #. module: base_contact #: view:res.partner.contact:0 msgid "Partner Contact" -msgstr "" +msgstr "جهة الاتصال بالشريك" #. module: base_contact #: view:res.partner.contact:0 msgid "General" -msgstr "" +msgstr "عام" #. module: base_contact #: view:res.partner.contact:0 msgid "Photo" -msgstr "" +msgstr "صورة" #. module: base_contact #: field:res.partner.contact,birthdate:0 msgid "Birth Date" -msgstr "" +msgstr "تاريخ الميلاد" #. module: base_contact #: help:base.contact.installer,migrate:0 msgid "If you select this, all addresses will be migrated." -msgstr "" +msgstr "إذا اخترت هذا الخيار، سيتم نقل جميع العناوين." #. module: base_contact #: selection:res.partner.job,state:0 msgid "Current" -msgstr "" +msgstr "الحالي" #. module: base_contact #: field:res.partner.contact,first_name:0 msgid "First Name" -msgstr "" +msgstr "الاسم الأول" #. module: base_contact #: model:ir.model,name:base_contact.model_res_partner_job msgid "Contact Partner Function" -msgstr "" +msgstr "مهمة الشريك" #. module: base_contact #: field:res.partner.job,other:0 msgid "Other" -msgstr "" +msgstr "غير ذلك" #. module: base_contact #: model:process.node,name:base_contact.process_node_function0 msgid "Function" -msgstr "" +msgstr "المهمة" #. module: base_contact #: field:res.partner.address,job_id:0 #: field:res.partner.contact,job_id:0 msgid "Main Job" -msgstr "" +msgstr "الوظيفة الرئيسية" #. module: base_contact #: model:process.transition,note:base_contact.process_transition_contacttofunction0 msgid "Defines contacts and functions." -msgstr "" +msgstr "تعريف جهات الاتصال والمهام." #. module: base_contact #: model:process.transition,name:base_contact.process_transition_contacttofunction0 msgid "Contact to function" -msgstr "" +msgstr "جهة اتصال إلى مهمة" #. module: base_contact #: view:res.partner:0 #: field:res.partner.job,address_id:0 msgid "Address" -msgstr "" +msgstr "العنوان" #. module: base_contact #: field:res.partner.contact,country_id:0 msgid "Nationality" -msgstr "" +msgstr "الجنسية" #. module: base_contact #: model:ir.actions.act_window,name:base_contact.act_res_partner_jobs msgid "Open Jobs" -msgstr "" +msgstr "الوظائف المفتوحة" #. module: base_contact #: field:base.contact.installer,name:0 msgid "Name" -msgstr "" +msgstr "الاسم" #. module: base_contact #: view:base.contact.installer:0 msgid "You can migrate Partner's current addresses to the contact." -msgstr "" +msgstr "يمكنك نقل العناوين الحالية للشريك إلى جهة الاتصال" #. module: base_contact #: field:res.partner.contact,partner_id:0 msgid "Main Employer" -msgstr "" +msgstr "صاحب العمل الرئيسي" #. module: base_contact #: model:ir.actions.act_window,name:base_contact.action_base_contact_installer msgid "Address Migration" -msgstr "" +msgstr "نقل العنوان" #. module: base_contact #: view:res.partner:0 msgid "Postal Address" -msgstr "" +msgstr "العنوان البريدي" #. module: base_contact #: model:process.node,name:base_contact.process_node_addresses0 #: view:res.partner:0 msgid "Addresses" -msgstr "" +msgstr "العناوين" #. module: base_contact #: model:process.transition,name:base_contact.process_transition_partnertoaddress0 msgid "Partner to address" -msgstr "" +msgstr "شريك إلى عنوان" #. module: base_contact #: field:res.partner.job,date_start:0 msgid "Date Start" -msgstr "" +msgstr "تاريخ البدء" #. module: base_contact #: help:res.partner.job,sequence_contact:0 msgid "" "Order of importance of this address in the list of " "addresses of the linked contact" -msgstr "" +msgstr "ترتيب هذا العنوان حسب الأهمية بين عناوين جهة الاتصال" diff --git a/addons/base_contact/i18n/cs.po b/addons/base_contact/i18n/cs.po index c93c7f7f7ba..2e4b8e18e42 100644 --- a/addons/base_contact/i18n/cs.po +++ b/addons/base_contact/i18n/cs.po @@ -4,17 +4,18 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 6.0dev\n" +"Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:14+0000\n" -"PO-Revision-Date: 2010-08-03 00:58+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) <Unknown>\n" -"Language-Team: \n" +"PO-Revision-Date: 2011-11-25 12:34+0000\n" +"Last-Translator: Jiří Hajda <robie@centrum.cz>\n" +"Language-Team: Czech <openerp-i18n-czech@lists.launchpad.net >\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:04+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:49+0000\n" +"X-Generator: Launchpad (build 14381)\n" +"X-Poedit-Language: Czech\n" #. module: base_contact #: field:res.partner.contact,title:0 @@ -24,7 +25,7 @@ msgstr "Název" #. module: base_contact #: view:res.partner.address:0 msgid "# of Contacts" -msgstr "" +msgstr "# z kontaktů" #. module: base_contact #: field:res.partner.job,fax:0 @@ -34,27 +35,27 @@ msgstr "Fax" #. module: base_contact #: view:base.contact.installer:0 msgid "title" -msgstr "" +msgstr "nadpis" #. module: base_contact #: help:res.partner.job,date_start:0 msgid "Start date of job(Joining Date)" -msgstr "" +msgstr "Datum zahájení práce (datum připojení)" #. module: base_contact #: view:base.contact.installer:0 msgid "Select the Option for Addresses Migration" -msgstr "" +msgstr "Vyberte volbu pro přesun adres" #. module: base_contact #: help:res.partner.job,function:0 msgid "Function of this contact with this partner" -msgstr "" +msgstr "Funkce tohoto kontaktu s tímto partnerem" #. module: base_contact #: help:res.partner.job,state:0 msgid "Status of Address" -msgstr "" +msgstr "Stav adresy" #. module: base_contact #: help:res.partner.job,name:0 @@ -62,64 +63,66 @@ msgid "" "You may enter Address first,Partner will be linked " "automatically if any." msgstr "" +"Můžete zadat nejdříve adresu. Pokud je nějaký partner, " +"bude napojen automaticky." #. module: base_contact #: help:res.partner.job,fax:0 msgid "Job FAX no." -msgstr "" +msgstr "Číslo FAXu do práce" #. module: base_contact #: field:res.partner.contact,mobile:0 msgid "Mobile" -msgstr "" +msgstr "Mobil" #. module: base_contact #: view:res.partner.contact:0 #: field:res.partner.contact,comment:0 msgid "Notes" -msgstr "" +msgstr "Poznámky" #. module: base_contact #: model:process.node,note:base_contact.process_node_contacts0 msgid "People you work with." -msgstr "" +msgstr "Lidé, s kterými pracujete." #. module: base_contact #: model:process.transition,note:base_contact.process_transition_functiontoaddress0 msgid "Define functions and address." -msgstr "" +msgstr "Určit funkce a adresu." #. module: base_contact #: help:res.partner.job,date_stop:0 msgid "Last date of job" -msgstr "" +msgstr "Poslední datum práce" #. module: base_contact #: view:base.contact.installer:0 #: field:base.contact.installer,migrate:0 msgid "Migrate" -msgstr "" +msgstr "Přesunout" #. module: base_contact #: view:res.partner.contact:0 #: field:res.partner.job,name:0 msgid "Partner" -msgstr "" +msgstr "Partner" #. module: base_contact #: model:process.node,note:base_contact.process_node_function0 msgid "Jobs at a same partner address." -msgstr "" +msgstr "Pracovní pozice u stejné adresy partnera." #. module: base_contact #: model:process.node,name:base_contact.process_node_partners0 msgid "Partners" -msgstr "" +msgstr "Partneři" #. module: base_contact #: field:res.partner.job,state:0 msgid "State" -msgstr "" +msgstr "Stav" #. module: base_contact #: help:res.partner.contact,active:0 @@ -127,6 +130,8 @@ msgid "" "If the active field is set to False, it will allow you to " "hide the partner contact without removing it." msgstr "" +"Pokud je aktivní pole nastaveno na Nepravda, umožní vám to " +"skrýt kontakt partnera bez jeho odstranění." #. module: base_contact #: model:ir.module.module,description:base_contact.module_meta_information @@ -151,22 +156,40 @@ msgid "" "an other object.\n" " " msgstr "" +"\n" +" Tento modul umožňuje úplně spravovat vaše kontakty.\n" +"\n" +" Nechá vás určit\n" +" *kontakty nevztažené k partnerovi,\n" +" *kontakty pracující na několika adresách (případně i pro různé " +"partnery),\n" +" *kontakty s možnými různými funkcemi pro každou jeho pracovní " +"adresu\n" +"\n" +" Také přidává nové položky nabídky umístěné v\n" +" Partneři \\ Kontakty\n" +" Partneři \\ Funkce\n" +"\n" +" Berte na vědomí, že tento modul převádí existující adresy na \"adresy + " +"kontakty\". To znamená, že některé pole adres budou chybět (jako jméno " +"kontaktu), protože ty jsou definovány v jiném objektu.\n" +" " #. module: base_contact #: model:ir.module.module,shortdesc:base_contact.module_meta_information #: model:process.process,name:base_contact.process_process_basecontactprocess0 msgid "Base Contact" -msgstr "" +msgstr "Základní kontakt" #. module: base_contact #: field:res.partner.job,date_stop:0 msgid "Date Stop" -msgstr "" +msgstr "Datum zastavení" #. module: base_contact #: model:ir.actions.act_window,name:base_contact.action_res_partner_job msgid "Contact's Jobs" -msgstr "" +msgstr "Pozice kontaktu" #. module: base_contact #: view:res.partner:0 @@ -179,95 +202,97 @@ msgid "" "Order of importance of this job title in the list of job " "title of the linked partner" msgstr "" +"Pořadí důležitosti této pracovní pozice v seznamu titulů " +"pozic napojeného partnera" #. module: base_contact #: field:res.partner.job,extension:0 msgid "Extension" -msgstr "" +msgstr "Rozšíření" #. module: base_contact #: help:res.partner.job,extension:0 msgid "Internal/External extension phone number" -msgstr "" +msgstr "Vnitřní/vnější telefoní číslo klapky" #. module: base_contact #: help:res.partner.job,phone:0 msgid "Job Phone no." -msgstr "" +msgstr "Telefoní číslo do práce." #. module: base_contact #: view:res.partner.contact:0 #: field:res.partner.contact,job_ids:0 msgid "Functions and Addresses" -msgstr "" +msgstr "Funkce a adresy" #. module: base_contact #: model:ir.model,name:base_contact.model_res_partner_contact #: field:res.partner.job,contact_id:0 msgid "Contact" -msgstr "" +msgstr "Kontakt" #. module: base_contact #: help:res.partner.job,email:0 msgid "Job E-Mail" -msgstr "" +msgstr "Pracovní E-Mail" #. module: base_contact #: field:res.partner.job,sequence_partner:0 msgid "Partner Seq." -msgstr "" +msgstr "Poř. parnera" #. module: base_contact #: model:process.transition,name:base_contact.process_transition_functiontoaddress0 msgid "Function to address" -msgstr "" +msgstr "Funkce na adresu" #. module: base_contact #: field:base.contact.installer,progress:0 msgid "Configuration Progress" -msgstr "" +msgstr "Průběh nastavení" #. module: base_contact #: field:res.partner.contact,name:0 msgid "Last Name" -msgstr "" +msgstr "Příjmení" #. module: base_contact #: view:res.partner:0 #: view:res.partner.contact:0 msgid "Communication" -msgstr "" +msgstr "Komunikace" #. module: base_contact #: field:base.contact.installer,config_logo:0 #: field:res.partner.contact,photo:0 msgid "Image" -msgstr "" +msgstr "Obrázek" #. module: base_contact #: selection:res.partner.job,state:0 msgid "Past" -msgstr "" +msgstr "Minulý" #. module: base_contact #: model:ir.model,name:base_contact.model_res_partner_address msgid "Partner Addresses" -msgstr "" +msgstr "Adresy partnerů" #. module: base_contact #: view:base.contact.installer:0 msgid "Address's Migration to Contacts" -msgstr "" +msgstr "Stěhování adresy na kontakty" #. module: base_contact #: field:res.partner.job,sequence_contact:0 msgid "Contact Seq." -msgstr "" +msgstr "Poř. kontaktu" #. module: base_contact #: view:res.partner.address:0 msgid "Search Contact" -msgstr "" +msgstr "Hledat kontakt" #. module: base_contact #: model:ir.actions.act_window,name:base_contact.action_partner_contact_form @@ -277,7 +302,7 @@ msgstr "" #: view:res.partner:0 #: field:res.partner.address,job_ids:0 msgid "Contacts" -msgstr "Kotakty" +msgstr "Kontakty" #. module: base_contact #: view:base.contact.installer:0 @@ -285,52 +310,54 @@ msgid "" "Due to changes in Address and Partner's relation, some of the details from " "address are needed to be migrated into contact information." msgstr "" +"Kvůli změnám v adrese a vztahu partnera, některé podrobnosti adresy jsou " +"potřebné, aby byly přesunuty do informací účtu." #. module: base_contact #: model:process.node,note:base_contact.process_node_addresses0 msgid "Working and private addresses." -msgstr "" +msgstr "Pracovní a soukromé adresy." #. module: base_contact #: help:res.partner.job,address_id:0 msgid "Address which is linked to the Partner" -msgstr "" +msgstr "Adresa, která je napojena na partnera" #. module: base_contact #: field:res.partner.job,function:0 msgid "Partner Function" -msgstr "" +msgstr "Funkce partnera" #. module: base_contact #: help:res.partner.job,other:0 msgid "Additional phone field" -msgstr "" +msgstr "Doplňující pole telefonu" #. module: base_contact #: field:res.partner.contact,website:0 msgid "Website" -msgstr "" +msgstr "Webová stránka" #. module: base_contact #: view:base.contact.installer:0 msgid "Otherwise these details will not be visible from address/contact." -msgstr "" +msgstr "Jinak tyto podrobnosti nebudou viditelné z adresy/kontaktu." #. module: base_contact #: view:base.contact.installer:0 msgid "Configure" -msgstr "" +msgstr "Nastavit" #. module: base_contact #: field:res.partner.contact,email:0 #: field:res.partner.job,email:0 msgid "E-Mail" -msgstr "" +msgstr "E-mail" #. module: base_contact #: model:ir.model,name:base_contact.model_base_contact_installer msgid "base.contact.installer" -msgstr "" +msgstr "base.contact.installer" #. module: base_contact #: view:res.partner.job:0 @@ -345,27 +372,27 @@ msgstr "Telefon" #. module: base_contact #: view:base.contact.installer:0 msgid "Do you want to migrate your Address data in Contact Data?" -msgstr "" +msgstr "Chcete stěhovat vaše data adresy v datech kontaktu?" #. module: base_contact #: field:res.partner.contact,active:0 msgid "Active" -msgstr "" +msgstr "Aktivní" #. module: base_contact #: field:res.partner.contact,function:0 msgid "Main Function" -msgstr "" +msgstr "Hlavní funkce" #. module: base_contact #: model:process.transition,note:base_contact.process_transition_partnertoaddress0 msgid "Define partners and their addresses." -msgstr "" +msgstr "Určuje partnery a jejich adresy." #. module: base_contact #: view:res.partner.contact:0 msgid "Seq." -msgstr "" +msgstr "Poř." #. module: base_contact #: field:res.partner.contact,lang_id:0 @@ -375,37 +402,37 @@ msgstr "Jazyk" #. module: base_contact #: view:res.partner.contact:0 msgid "Extra Information" -msgstr "" +msgstr "Speciální informace" #. module: base_contact #: model:process.node,note:base_contact.process_node_partners0 msgid "Companies you work with." -msgstr "" +msgstr "Společnosti, se kterými pracujete." #. module: base_contact #: view:res.partner.contact:0 msgid "Partner Contact" -msgstr "" +msgstr "Kontakt partnera" #. module: base_contact #: view:res.partner.contact:0 msgid "General" -msgstr "" +msgstr "Obecný" #. module: base_contact #: view:res.partner.contact:0 msgid "Photo" -msgstr "" +msgstr "Fotka" #. module: base_contact #: field:res.partner.contact,birthdate:0 msgid "Birth Date" -msgstr "" +msgstr "Datum narození" #. module: base_contact #: help:base.contact.installer,migrate:0 msgid "If you select this, all addresses will be migrated." -msgstr "" +msgstr "Pokud toto vyberete, všechny adresy budou přesunuty." #. module: base_contact #: selection:res.partner.job,state:0 @@ -420,12 +447,12 @@ msgstr "Křestní jméno" #. module: base_contact #: model:ir.model,name:base_contact.model_res_partner_job msgid "Contact Partner Function" -msgstr "" +msgstr "Kontakt funkce partnera" #. module: base_contact #: field:res.partner.job,other:0 msgid "Other" -msgstr "" +msgstr "Jiné" #. module: base_contact #: model:process.node,name:base_contact.process_node_function0 @@ -436,17 +463,17 @@ msgstr "Funkce" #: field:res.partner.address,job_id:0 #: field:res.partner.contact,job_id:0 msgid "Main Job" -msgstr "" +msgstr "Hlavní práce" #. module: base_contact #: model:process.transition,note:base_contact.process_transition_contacttofunction0 msgid "Defines contacts and functions." -msgstr "" +msgstr "Určuje kontakty a funkce." #. module: base_contact #: model:process.transition,name:base_contact.process_transition_contacttofunction0 msgid "Contact to function" -msgstr "" +msgstr "Kontakt na funkci" #. module: base_contact #: view:res.partner:0 @@ -457,53 +484,53 @@ msgstr "Adresa" #. module: base_contact #: field:res.partner.contact,country_id:0 msgid "Nationality" -msgstr "" +msgstr "Národnost" #. module: base_contact #: model:ir.actions.act_window,name:base_contact.act_res_partner_jobs msgid "Open Jobs" -msgstr "" +msgstr "Otevřené pozice" #. module: base_contact #: field:base.contact.installer,name:0 msgid "Name" -msgstr "" +msgstr "Jméno" #. module: base_contact #: view:base.contact.installer:0 msgid "You can migrate Partner's current addresses to the contact." -msgstr "" +msgstr "Můžete stěhovat partnerovu aktuální adresu do kontaktu." #. module: base_contact #: field:res.partner.contact,partner_id:0 msgid "Main Employer" -msgstr "" +msgstr "Hlavní zaměstnavatel" #. module: base_contact #: model:ir.actions.act_window,name:base_contact.action_base_contact_installer msgid "Address Migration" -msgstr "" +msgstr "Stěhování adresy" #. module: base_contact #: view:res.partner:0 msgid "Postal Address" -msgstr "" +msgstr "Poštovní adresa" #. module: base_contact #: model:process.node,name:base_contact.process_node_addresses0 #: view:res.partner:0 msgid "Addresses" -msgstr "" +msgstr "Adresy" #. module: base_contact #: model:process.transition,name:base_contact.process_transition_partnertoaddress0 msgid "Partner to address" -msgstr "" +msgstr "Partner na adresu" #. module: base_contact #: field:res.partner.job,date_start:0 msgid "Date Start" -msgstr "" +msgstr "Počáteční datum" #. module: base_contact #: help:res.partner.job,sequence_contact:0 @@ -511,6 +538,8 @@ msgid "" "Order of importance of this address in the list of " "addresses of the linked contact" msgstr "" +"Pořadí podle důležitosti této adresy v seznamu adres napojeného " +"kontaktu" #~ msgid "Invalid XML for View Architecture!" #~ msgstr "Invalidní XML pro zobrazení architektury!" diff --git a/addons/base_contact/test/base_contact00.yml b/addons/base_contact/test/base_contact00.yml index c6a4ed9e057..775b5636caa 100644 --- a/addons/base_contact/test/base_contact00.yml +++ b/addons/base_contact/test/base_contact00.yml @@ -64,7 +64,7 @@ country_id: base.be first_name: Nicolas job_ids: - - address_id: base.main_address + - address_id: base.res_partner_address_1 function: CTO state: current - address_id: base.res_partner_address_3000 diff --git a/addons/base_crypt/__init__.py b/addons/base_crypt/__init__.py index a8b9a6b0740..921c536b575 100644 --- a/addons/base_crypt/__init__.py +++ b/addons/base_crypt/__init__.py @@ -21,3 +21,5 @@ from service import security import crypt + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_crypt/__openerp__.py b/addons/base_crypt/__openerp__.py index 025f7db0704..fc85100b41c 100644 --- a/addons/base_crypt/__openerp__.py +++ b/addons/base_crypt/__openerp__.py @@ -19,12 +19,12 @@ # ############################################################################## { - "name" : "Base - Password Encryption", + "name" : "DB Password Encryption", "version" : "1.1", "author" : ['OpenERP SA', "FS3"], "maintainer" : "OpenERP SA", "website" : "http://www.openerp.com", - "category" : "Hidden", + "category" : "Tools", 'complexity': "easy", "description": """ Replaces cleartext passwords in the database with a secure hash @@ -62,3 +62,5 @@ will disable LDAP authentication completely if installed at the same time. "installable": True, "certificate" : "00721290471310299725", } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_iban/__openerp__.py b/addons/base_iban/__openerp__.py index c9bc3866b4f..2692e63e55d 100644 --- a/addons/base_iban/__openerp__.py +++ b/addons/base_iban/__openerp__.py @@ -19,9 +19,9 @@ # ############################################################################## { - 'name': 'Create IBAN bank accounts', + 'name': 'IBAN Bank Accounts', 'version': '1.0', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'complexity': "easy", 'description': """ This module installs the base for IBAN (International Bank Account Number) bank accounts and checks for its validity. diff --git a/addons/base_module_doc_rst/__init__.py b/addons/base_module_doc_rst/__init__.py index f306de84dba..87582ff4c7c 100644 --- a/addons/base_module_doc_rst/__init__.py +++ b/addons/base_module_doc_rst/__init__.py @@ -21,3 +21,5 @@ import base_module_doc_rst import wizard import report + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_module_doc_rst/__openerp__.py b/addons/base_module_doc_rst/__openerp__.py index 41425f77749..5e3674269d7 100644 --- a/addons/base_module_doc_rst/__openerp__.py +++ b/addons/base_module_doc_rst/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Module Technical Guide in Restructured Text ', + 'name': 'Generate Docs of Modules', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module generates the Technical Guides of selected modules in Restructured Text format (RST). ================================================================================================= @@ -42,3 +42,5 @@ This module generates the Technical Guides of selected modules in Restructured T 'images': ['images/base_module_doc_rst1.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_module_doc_rst/report/report_proximity_graph.py b/addons/base_module_doc_rst/report/report_proximity_graph.py index d14d709f501..b17d4bb517f 100644 --- a/addons/base_module_doc_rst/report/report_proximity_graph.py +++ b/addons/base_module_doc_rst/report/report_proximity_graph.py @@ -78,4 +78,5 @@ class report_graph(report.interface.report_int): pdf_string = self.get_proximity_graph(cr, uid, data['id']) return (pdf_string, 'pdf') -report_graph('report.proximity.graph', 'ir.module.module')
\ No newline at end of file +report_graph('report.proximity.graph', 'ir.module.module') +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_module_doc_rst/wizard/__init__.py b/addons/base_module_doc_rst/wizard/__init__.py index 6f6e62e8767..c6614aacbc1 100644 --- a/addons/base_module_doc_rst/wizard/__init__.py +++ b/addons/base_module_doc_rst/wizard/__init__.py @@ -22,3 +22,5 @@ import wizard_tech_guide_rst import generate_relation_graph + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_module_doc_rst/wizard/wizard_tech_guide_rst.py b/addons/base_module_doc_rst/wizard/wizard_tech_guide_rst.py index b7a5d6da397..bb02d7c33d2 100644 --- a/addons/base_module_doc_rst/wizard/wizard_tech_guide_rst.py +++ b/addons/base_module_doc_rst/wizard/wizard_tech_guide_rst.py @@ -507,3 +507,5 @@ class wizard_tech_guide_rst(wizard.interface): wizard_tech_guide_rst('tech.guide.rst') + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_module_quality/__openerp__.py b/addons/base_module_quality/__openerp__.py index 02d09e0919d..df57b88fcc2 100644 --- a/addons/base_module_quality/__openerp__.py +++ b/addons/base_module_quality/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Base module quality - To check the quality of other modules' , + 'name': 'Analyse Module Quality' , 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ The aim of this module is to check the quality of other modules. ================================================================ diff --git a/addons/base_module_record/__openerp__.py b/addons/base_module_record/__openerp__.py index 3e1cf79792a..fdb576e0ddd 100644 --- a/addons/base_module_record/__openerp__.py +++ b/addons/base_module_record/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Module Record', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module allows you to create a new module without any development. ====================================================================== diff --git a/addons/base_report_creator/security/ir.model.access.csv b/addons/base_report_creator/security/ir.model.access.csv index 24e5a1c4cee..c9e78315b67 100644 --- a/addons/base_report_creator/security/ir.model.access.csv +++ b/addons/base_report_creator/security/ir.model.access.csv @@ -2,3 +2,4 @@ "access_base_report_creator_report","base_report_creator.report","model_base_report_creator_report","base.group_system",1,1,1,1 "access_base_report_creator_report_fields","base_report_creator.report.fields","model_base_report_creator_report_fields","base.group_system",1,1,1,1 "access_base_report_creator_report_filter","base_report_creator.report.filter","model_base_report_creator_report_filter","base.group_system",1,1,1,1 +"access_base_report_creator_report_result","base_report_creator.report.result","model_base_report_creator_report_result","base.group_system",1,1,1,1 diff --git a/addons/base_report_designer/base_report_designer.py b/addons/base_report_designer/base_report_designer.py index 90c48f7f17c..46a6e1fe870 100644 --- a/addons/base_report_designer/base_report_designer.py +++ b/addons/base_report_designer/base_report_designer.py @@ -59,13 +59,21 @@ class report_xml(osv.osv): return True def report_get(self, cr, uid, report_id, context=None): + if context is None: + context = {} + # skip osv.fields.sanitize_binary_value() because we want the raw bytes in all cases + context.update(bin_raw=True) report = self.browse(cr, uid, report_id, context=context) - sxw_data=(report.report_sxw_content).encode("iso-8859-1", "replace") - rml_data= (report.report_rml_content).encode("iso-8859-1", "replace") + sxw_data = report.report_sxw_content + rml_data = report.report_rml_content + if isinstance(sxw_data, unicode): + sxw_data = sxw_data.encode("iso-8859-1", "replace") + if isinstance(rml_data, unicode): + rml_data = rml_data.encode("iso-8859-1", "replace") return { - 'file_type' : report.report_type, - 'report_sxw_content': report.report_sxw_content and base64.encodestring(sxw_data) or False, - 'report_rml_content': report.report_rml_content and base64.encodestring(rml_data) or False + 'file_type' : report.report_type, + 'report_sxw_content': sxw_data and base64.encodestring(sxw_data) or False, + 'report_rml_content': rml_data and base64.encodestring(rml_data) or False } report_xml() diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/About.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/About.py index b31065ce37e..401cf88b418 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/About.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/About.py @@ -109,3 +109,5 @@ if __name__<>"package" and __name__=="__main__": elif __name__=="package": g_ImplementationHelper.addImplementation( About, "org.openoffice.openerp.report.about", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/AddAttachment.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/AddAttachment.py index 4dbb28a30c0..c65ba32e6bf 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/AddAttachment.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/AddAttachment.py @@ -275,3 +275,5 @@ if __name__<>"package" and __name__=="__main__": AddAttachment(None) elif __name__=="package": g_ImplementationHelper.addImplementation( AddAttachment, "org.openoffice.openerp.report.addattachment", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Change.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Change.py index 0b68ab10b01..cdc5c7553b1 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Change.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Change.py @@ -137,3 +137,5 @@ if __name__<>"package" and __name__=="__main__": elif __name__=="package": g_ImplementationHelper.addImplementation( Change, "org.openoffice.openerp.report.change", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertBracesToField.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertBracesToField.py index 59b7d32b529..bb80c3ecd61 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertBracesToField.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertBracesToField.py @@ -283,3 +283,5 @@ if __name__<>"package": else: g_ImplementationHelper.addImplementation( ConvertBracesToField, "org.openoffice.openerp.report.convertBF", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertFieldsToBraces.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertFieldsToBraces.py index d804405c990..892061c56b4 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertFieldsToBraces.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ConvertFieldsToBraces.py @@ -83,3 +83,5 @@ if __name__<>"package": else: g_ImplementationHelper.addImplementation( ConvertFieldsToBraces, "org.openoffice.openerp.report.convertFB", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ExportToRML.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ExportToRML.py index e2720c1e803..dd00f1719e1 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ExportToRML.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ExportToRML.py @@ -130,3 +130,5 @@ if __name__<>"package" and __name__=="__main__": ExportToRML(None) elif __name__=="package": g_ImplementationHelper.addImplementation( ExportToRML, "org.openoffice.openerp.report.exporttorml", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Expression.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Expression.py index 074a3bd020e..ecdf13454dc 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Expression.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Expression.py @@ -113,3 +113,5 @@ if __name__<>"package" and __name__=="__main__": elif __name__=="package": g_ImplementationHelper.addImplementation( Expression, "org.openoffice.openerp.report.expression", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Fields.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Fields.py index cfe65d61022..92044f78fe1 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Fields.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Fields.py @@ -289,3 +289,5 @@ if __name__<>"package" and __name__=="__main__": elif __name__=="package": g_ImplementationHelper.addImplementation( Fields, "org.openoffice.openerp.report.fields", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/LoginTest.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/LoginTest.py index 012c6f896a2..85059d7712c 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/LoginTest.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/LoginTest.py @@ -53,3 +53,5 @@ class LoginTest: if not loginstatus: Change(None) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ModifyExistingReport.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ModifyExistingReport.py index 138513475bb..2ccd8358c97 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ModifyExistingReport.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ModifyExistingReport.py @@ -211,3 +211,5 @@ if __name__<>"package" and __name__=="__main__": elif __name__=="package": g_ImplementationHelper.addImplementation( ModifyExistingReport, "org.openoffice.openerp.report.modifyreport", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/NewReport.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/NewReport.py index 0e4a18c3b10..6022e44df7a 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/NewReport.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/NewReport.py @@ -117,3 +117,5 @@ elif __name__=="package": NewReport, "org.openoffice.openerp.report.opennewreport", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Repeatln.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Repeatln.py index d8458be027d..0eab6d1710c 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Repeatln.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Repeatln.py @@ -298,3 +298,5 @@ if __name__<>"package" and __name__=="__main__": elif __name__=="package": g_ImplementationHelper = unohelper.ImplementationHelper() g_ImplementationHelper.addImplementation( RepeatIn, "org.openoffice.openerp.report.repeatln", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/SendToServer.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/SendToServer.py index 896f3cfcac2..3a6d799f8a5 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/SendToServer.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/SendToServer.py @@ -239,3 +239,5 @@ if __name__<>"package" and __name__=="__main__": SendtoServer(None) elif __name__=="package": g_ImplementationHelper.addImplementation( SendtoServer, "org.openoffice.openerp.report.sendtoserver", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ServerParameter.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ServerParameter.py index 245cd1dc7ce..9b69e4a5c15 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ServerParameter.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/ServerParameter.py @@ -172,3 +172,5 @@ if __name__<>"package" and __name__=="__main__": elif __name__=="package": g_ImplementationHelper.addImplementation( ServerParameter, "org.openoffice.openerp.report.serverparam", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Translation.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Translation.py index 54343d02d7f..73146f1b68a 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Translation.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/Translation.py @@ -272,3 +272,5 @@ if __name__<>"package" and __name__=="__main__": elif __name__=="package": g_ImplementationHelper.addImplementation( AddLang, "org.openoffice.openerp.report.langtag", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/__init__.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/__init__.py index d2192cd5ddd..0ccd1c9d011 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/__init__.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/__init__.py @@ -59,3 +59,5 @@ import ConvertBracesToField import ConvertFieldsToBraces import ExportToRML import SendtoServer + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/compile_all.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/compile_all.py index acafd5f549e..4740c61b178 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/compile_all.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/compile_all.py @@ -47,3 +47,5 @@ import compileall compileall.compile_dir('package') + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/__init__.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/__init__.py index 2a732da8226..a60ae586303 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/__init__.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/__init__.py @@ -26,3 +26,5 @@ import gui import logreport import rpc import tiny_socket + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/actions.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/actions.py index 56a83159e4a..8511bb8343d 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/actions.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/actions.py @@ -109,3 +109,5 @@ class TextListenerProcAdapter( unohelper.Base, XTextListener ): apply( self.oProcToCall, (oTextEvent,) + self.tParams ) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/error.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/error.py index a6cfe9215a3..c0a3e5b5d63 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/error.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/error.py @@ -58,3 +58,5 @@ class ErrorDialog: def btnOkOrCancel_clicked( self, oActionEvent ): self.win.endExecute() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/functions.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/functions.py index db1f15b1fc5..29f1cd87e46 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/functions.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/functions.py @@ -262,3 +262,5 @@ def GetAFileName(): return sPath + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/gui.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/gui.py index 79f2ae370de..975aa387193 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/gui.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/gui.py @@ -820,3 +820,5 @@ class DBModalDialog: """ self.oDialogControl.endExecute() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/logreport.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/logreport.py index dfcc78374c9..2aab8596862 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/logreport.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/logreport.py @@ -46,3 +46,5 @@ class Logger(object): def shutdown(self): logging.shutdown() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/rpc.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/rpc.py index f211c6309f4..f7c7f636485 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/rpc.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/rpc.py @@ -202,3 +202,5 @@ class NETRPCGateway(RPCGateway): info = reduce(lambda x, y: x+y, traceback.format_exception(sys.exc_type, sys.exc_value, sys.exc_traceback)) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tiny_socket.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tiny_socket.py index 415e4b3c91e..30a2079433a 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tiny_socket.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tiny_socket.py @@ -91,3 +91,5 @@ class mysocket: + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tools.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tools.py index 8c9a8c9a1a8..ef22a3a0d51 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tools.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/lib/tools.py @@ -38,3 +38,5 @@ def write_data_to_file( filename, data ): fp.write( data ) fp.close() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/modify.py b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/modify.py index fa7874cff45..fc3d6672b79 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/bin/script/modify.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/bin/script/modify.py @@ -136,3 +136,5 @@ if __name__<>"package": else: g_ImplementationHelper.addImplementation( modify, "org.openoffice.openerp.report.modify", ("com.sun.star.task.Job",),) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/plugin/openerp_report_designer/test/test_fields.py b/addons/base_report_designer/plugin/openerp_report_designer/test/test_fields.py index 8afd773b3fb..8954aa8d7a8 100644 --- a/addons/base_report_designer/plugin/openerp_report_designer/test/test_fields.py +++ b/addons/base_report_designer/plugin/openerp_report_designer/test/test_fields.py @@ -30,3 +30,5 @@ print print 'Field selection for a repeatIn', '='*40 get('account.invoice', level=0, ending=['one2many','many2many'], recur=['many2one']) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_report_designer/wizard/base_report_designer_modify.py b/addons/base_report_designer/wizard/base_report_designer_modify.py index d0790cdc0ad..03d1ac19d7e 100644 --- a/addons/base_report_designer/wizard/base_report_designer_modify.py +++ b/addons/base_report_designer/wizard/base_report_designer_modify.py @@ -148,3 +148,5 @@ class base_report_rml_save(osv.osv_memory): } base_report_rml_save() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_setup/__openerp__.py b/addons/base_setup/__openerp__.py index 4417ebf2439..bd62a097934 100644 --- a/addons/base_setup/__openerp__.py +++ b/addons/base_setup/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Base Setup', + 'name': 'Initial Setup Tools', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ This module helps to configure the system at the installation of a new database. diff --git a/addons/base_setup/base_setup.py b/addons/base_setup/base_setup.py index ecb9b5bf3c4..c10dee7b14b 100644 --- a/addons/base_setup/base_setup.py +++ b/addons/base_setup/base_setup.py @@ -28,290 +28,6 @@ from osv import fields, osv from tools.translate import _ from lxml import etree -#Application and feature chooser, this could be done by introspecting ir.modules -DEFAULT_MODULES = { - 'Customer Relationship Management' : ['crm',], - 'Sales Management' : ['sale',], - 'Project Management' : ['project',], - 'Knowledge Management' : ['document',], - 'Warehouse Management' : ['stock',], - 'Manufacturing' : ['mrp'], - 'Accounting & Finance' : ['account'], - 'Purchase Management' : ['purchase'], - 'Human Resources' : ['hr',], - 'Point of Sale' : ['point_of_sale',], - 'Marketing' : ['marketing',], -} - -class base_setup_installer(osv.osv_memory): - _name = 'base.setup.installer' - _inherit = 'res.config.installer' - - _columns = { - 'selection' : fields.text('Selection'), - } - - def fields_get(self, cr, uid, fields=None, context=None): - if context is None: - context = {} - if fields is None: - fields = {} - - fields = {} - category_proxy = self.pool.get('ir.module.category') - domain = [('parent_id', '=', False), - ('name', '!=', 'Uncategorized'), - ('visible', '=', True)] - category_ids = category_proxy.search(cr, uid, domain, context=context) - for category in category_proxy.browse(cr, uid, category_ids, context=context): - category_name = 'category_%d' % (category.id,) - fields[category_name] = { - 'type' : 'boolean', - 'string' : category.name, - 'name' : category_name, - 'help' : category.description, - } - - module_proxy = self.pool.get('ir.module.module') - module_ids = module_proxy.search(cr, uid, [], context=context) - for module in module_proxy.browse(cr, uid, module_ids, context=context): - module_name = 'module_%d' % (module.id,) - module_is_installed = module.state == 'installed' - - fields[module_name] = { - 'type' : 'boolean', - 'string' : module.shortdesc, - 'name' : module_name, - 'help' : module.description, - } - - return fields - - def default_get(self, cr, uid, fields=None, context=None): - if context is None: - context = {} - if fields is None: - fields = {} - - result = {} - - if 'dont_compute_virtual_attributes' not in context: - module_proxy = self.pool.get('ir.module.module') - module_ids = module_proxy.search(cr, uid, [], context=context) - for module in module_proxy.browse(cr, uid, module_ids, context=context): - result['module_%d' % (module.id,)] = module.state == 'installed' - - cat_proxy = self.pool.get('ir.module.category') - cat_ids = cat_proxy.search(cr, uid, [], context=context) - for cat in cat_proxy.browse(cr, uid, cat_ids, context=context): - m = DEFAULT_MODULES.get(cat.name,[]) - r = module_proxy.search(cr, uid, [('state','=','installed'),('name','in',m)]) - - result['category_%d' % (cat.id,)] = bool(r) and (len(r) == len(m)) - - return result - - def fields_view_get(self, cr, uid, view_id=None, view_type='from', context=None, toolbar=False, submenu=False): - def in_extended_view_group(cr, uid, context=None): - try: - model, group_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'base', 'group_extended') - except ValueError: - return False - return group_id in self.pool.get('res.users').read(cr, uid, uid, ['groups_id'], context=context)['groups_id'] - - result = super(base_setup_installer, self).fields_view_get(cr, uid, view_id, view_type, context, toolbar, submenu) - - module_category_proxy = self.pool.get('ir.module.category') - domain = [('parent_id', '=', False), - ('name', '!=', 'Uncategorized'), - ('visible', '=', True)] - module_category_ids = module_category_proxy.search(cr, uid, domain, context=context, order='sequence asc') - - arch = ['<form string="%s">' % _('Automatic Base Setup')] - arch.append('<separator string="%s" colspan="4" />' % _('Install Applications')) - module_proxy = self.pool.get('ir.module.module') - - extended_view = in_extended_view_group(cr, uid, context=context) - - for module_category in module_category_proxy.browse(cr, uid, module_category_ids, context=context): - domain = [('category_id', '=', module_category.id)] - if not extended_view: - domain.append(('complexity', '!=', 'expert')) - - modules = module_proxy.browse(cr, uid, module_proxy.search(cr, uid, domain, context=context), context=context) - if not modules: - continue - - m = DEFAULT_MODULES.get(module_category.name, []) - r = module_proxy.search(cr, uid, [('state', '=', 'installed'),('name', 'in', m)], context=context) - readonly = bool(r) - - attributes = { - 'name' : 'category_%d' % (module_category.id,), - 'on_change' : 'on_change_%s_%d(category_%d)' % ('category', module_category.id, module_category.id,), - } - if readonly: - attributes['modifiers'] = simplejson.dumps({'readonly' : True}) - - arch.append("""<field %s />""" % (" ".join(["%s='%s'" % (key, value,) - for key, value in attributes.iteritems()]),)) - - # Compute the modules to show - for module_category in module_category_proxy.browse(cr, uid, module_category_ids, context=context): - domain = [('category_id', '=', module_category.id)] - - if not extended_view: - domain.append(('complexity', '!=', 'expert')) - - default_modules = DEFAULT_MODULES.get(module_category.name, False) - if default_modules: - domain.append(('name', 'not in', default_modules)) - - modules = module_proxy.browse(cr, uid, module_proxy.search(cr, uid, domain, context=context), context=context) - - if not modules: - continue - - modifiers = { - 'invisible' : [('category_%d' % (module_category.id), '=', False)], - } - module_modifiers = dict(modifiers) - - arch.append("""<separator string="%s Features" colspan="4" modifiers='%s'/>""" % ( - cgi.escape(module_category.name), - simplejson.dumps(modifiers)) - ) - - for module in modules: - #module_modifiers['readonly'] = module.state == 'installed' - - arch.append("""<field name="module_%d" modifiers='%s' />""" % ( - module.id, - simplejson.dumps(module_modifiers)) - ) - - arch.append( - '<separator colspan="4" />' - '<group colspan="4" col="2">' - '<button special="cancel" string="Cancel" icon="gtk-cancel" />' - '<button string="Install Modules" type="object" name="apply_cb" icon="gtk-apply" />' - '</group>' - ) - - arch.append('</form>') - - result['arch'] = ''.join(arch) - return result - - def __getattr__(self, name): - if name.startswith('on_change_category_'): - def proxy(cr, uid, ids, value, context=None): - item = 'category_%s' % name[len('on_change_category_'):] - return self._on_change_selection(cr, uid, ids, item, value, context=context) - return proxy - return getattr(super(base_setup_installer, self), name) - - def _on_change_selection(self, cr, uid, ids, item, value, context=None): - if not isinstance(item, basestring) or not value: - return {} - - if item.startswith('category_') or item.startswith('module_'): - object_name, identifier = item.split('_') - else: - return {} - - values = { - } - - #if object_name == 'category': - # module_ids = self.pool.get('ir.module.module').search(cr, uid, [('category_id', '=', int(identifier))], context=context) - # for module_id in module_ids: - # values['module_%d' % module_id] = 1 - - return {'value': values} - - def create(self, cr, uid, values, context=None): - to_install = {'categories' : [], 'modules' : []} - - for key, value in values.iteritems(): - if value == 1 and (key.startswith('module_') or key.startswith('category_')): - kind, identifier = key.split('_') - if kind == 'category': - to_install['categories'].append(long(identifier)) - if kind == 'module': - to_install['modules'].append(long(identifier)) - - values = { - 'selection' : simplejson.dumps(to_install), - } - context.update(dont_compute_virtual_attributes=True) - return super(base_setup_installer, self).create(cr, uid, values, context=context) - - def apply_cb(self, cr, uid, ids, context=None): - category_proxy = self.pool.get('ir.module.category') - for installer in self.browse(cr, uid, ids, context=context): - to_install = simplejson.loads(installer.selection) - - proxy = self.pool.get('ir.module.module') - - module_ids = proxy.search(cr, uid, [('id', 'in', to_install['modules'])], context=context) - modules = set(record['name'] - for record in proxy.read(cr, uid, module_ids, ['name'], context=context)) - - category_ids = category_proxy.search(cr, uid, [('id', 'in', to_install['categories'])], context=context) - selected_categories = set(record['name'] - for record in category_proxy.read(cr, uid, category_ids, ['name'], context=context)) - - # FIXME: Use a workaround, but can do better - for category_name, default_modules in DEFAULT_MODULES.iteritems(): - if category_name in selected_categories: - modules.update(default_modules) - - # Special Cases: - # * project_mrp: the dependencies are sale, project, procurement, mrp_jit - if 'sale' in modules and 'project' in modules: - modules.add('project_mrp') - - need_update = False - module_ids = proxy.search(cr, uid, [('name', 'in', list(modules))], context=context) - if module_ids: - proxy.state_update(cr, uid, module_ids, 'to install', ['uninstalled'], context=context) - need_update = True - - category_id = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'base', 'module_category_hidden_link') - while True and category_id: - cr.execute("select id, name from ir_module_module m where category_id = %s \ - and (select count(d.id) from ir_module_module_dependency d \ - where d.module_id = m.id) = (select count(d.id) from \ - ir_module_module_dependency d inner join ir_module_module m2 on d.name = m2.name \ - where d.module_id=m.id and m2.state in %s ) and state = %s", - (category_id[1], ('installed', 'to install', 'to upgrade', ), 'uninstalled',)) - inner_modules = [name for _, name in cr.fetchall()] - - module_ids = proxy.search(cr, uid, [('name', 'in', inner_modules)], context=context) - if not module_ids: - break - - modules.update(inner_modules) - - proxy.state_update(cr, uid, module_ids, 'to install', ['uninstalled'], context=context) - need_update = True - - - domain = [('name', 'in', list(modules)), - ('state', '=', 'installed')] - for module in proxy.browse(cr, uid, proxy.search(cr, uid, domain, context=context), context): - cr.execute("update ir_actions_todo set state='open' \ - from ir_model_data as data where data.res_id = ir_actions_todo.id \ - and ir_actions_todo.type='special'\ - and data.model = 'ir.actions.todo' and data.module=%s", (module.name, )) - - if need_update: - cr.commit() - self.pool = pooler.restart_pool(cr.dbname, update_module=True)[1] - - return self.pool.get('res.config').next(cr, uid, [], context=context) - #Migrate data from another application Conf wiz class migrade_application_installer_modules(osv.osv_memory): diff --git a/addons/base_setup/base_setup_views.xml b/addons/base_setup/base_setup_views.xml index 165e1c6d12a..9450057f53f 100644 --- a/addons/base_setup/base_setup_views.xml +++ b/addons/base_setup/base_setup_views.xml @@ -1,36 +1,6 @@ <openerp> <data> - <record model="ir.actions.act_window" id="action_base_setup_installer_beta"> - <field name="name">Install Applications</field> - <field name="res_model">base.setup.installer</field> - <field name="view_type">form</field> - <field name="view_mode">form</field> - <field name="target">new</field> - </record> - - - <record id="base_setup_installer_todo" model="ir.actions.todo"> - <field name="action_id" ref="action_base_setup_installer_beta" /> - <field name="category_id" ref="base.category_administration_config"/> - <field name="sequence">2</field> - </record> - - <record id="action_start_configurator" model="ir.actions.server"> - <field name="name">Start Configuration</field> - <field name="model_id" ref="base.model_ir_actions_todo"/> - <field name="state">code</field> - <field name="code" eval="'# obj is a browse_record and will provide stupid ids to method\n' 'action = pool.get(\'ir.actions.todo\').action_launch(cr, uid, ' + str([ref('base_setup_installer_todo')]) + ', context=context)'"/> - </record> - - <menuitem name="Add More Features" action="action_start_configurator" id="menu_view_base_module_configuration" parent="base.menu_config" type="server" icon="STOCK_EXECUTE" sequence="100"/> - <record id="ir_ui_view_sc_configuration" model="ir.ui.view_sc"> - <field name="name">Add More Features</field> - <field name="resource">ir.ui.menu</field> - <field name="user_id" ref="base.user_root"/> - <field name="res_id" ref="menu_view_base_module_configuration" /> - </record> - <!-- Import or create customers configartion view --> <record id="action_import_create_installer" model="ir.actions.act_window"> <field name="name">Create or Import Customers</field> @@ -139,7 +109,7 @@ </field> </record> <record id="action_partner_terminology_config_form" model="ir.actions.act_window"> - <field name="name">Specify Your Terminology for Customers</field> + <field name="name">Use another word to say "Customer"</field> <field name="type">ir.actions.act_window</field> <field name="res_model">base.setup.terminology</field> <field name="view_type">form</field> @@ -162,6 +132,7 @@ <field name="view_type">form</field> <field name="view_mode">form</field> <field name="context">{'res_id': user.company_id.id}</field> + <field name="help">Fill in your company data (address, logo, bank accounts) so that it's printed on your reports. You can click on the button 'Preview Header' in order to check the header/footer of PDF documents.</field> </record> <record id="base_setup_company_todo" model="ir.actions.todo"> <field name="action_id" ref="action_base_setup_company"/> diff --git a/addons/base_synchro/__openerp__.py b/addons/base_synchro/__openerp__.py index fba793e0473..a9fd08bccf6 100644 --- a/addons/base_synchro/__openerp__.py +++ b/addons/base_synchro/__openerp__.py @@ -20,10 +20,10 @@ ############################################################################## { - "name":"Server Object Synchronization", + "name":"Multi-DB Synchronization", "version":"0.1", "author":"OpenERP SA", - "category":"Hidden", + "category":"Tools", "description": """ Synchronization with all objects. ================================= diff --git a/addons/base_tools/__init__.py b/addons/base_tools/__init__.py index 50a14119520..4c241b72be9 100644 --- a/addons/base_tools/__init__.py +++ b/addons/base_tools/__init__.py @@ -1 +1,3 @@ # Debian packaging removes blank files, so this comment is added. + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_tools/__openerp__.py b/addons/base_tools/__openerp__.py index ec32805533e..d3c8a4716e0 100644 --- a/addons/base_tools/__openerp__.py +++ b/addons/base_tools/__openerp__.py @@ -4,7 +4,7 @@ "author": "OpenERP SA", "version": "1.0", "depends": ["base"], - "category" : "Hidden", + "category" : "Tools", 'complexity': "easy", 'description': """ Common base for tools modules. @@ -19,3 +19,5 @@ Creates menu link for Tools from where tools like survey, lunch, idea, etc. are "installable": True, "certificate" : "00571588675379342237" } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/base_vat/__init__.py b/addons/base_vat/__init__.py index 43dbd0c1418..1d7c143b7dc 100644 --- a/addons/base_vat/__init__.py +++ b/addons/base_vat/__init__.py @@ -19,6 +19,7 @@ # ############################################################################## +import res_company import base_vat # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file diff --git a/addons/base_vat/__openerp__.py b/addons/base_vat/__openerp__.py index 5f7c1d2d86d..858b5c2c070 100644 --- a/addons/base_vat/__openerp__.py +++ b/addons/base_vat/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'VAT Number Validation', 'version': '1.0', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'complexity': "easy", 'description': """ VAT validation for Partners' VAT numbers @@ -33,6 +33,21 @@ be validated for all supported countries. The country is inferred from the 2-letter country code that prefixes the VAT number, e.g. ``BE0477472701`` will be validated using the Belgian rules. +There are two different levels of VAT number validation: + + * By default, a simple off-line check is performed using the known validation + rules for the country, usually a simple check digit. This is quick and + always available, but allows numbers that are perhaps not truly allocated, + or not valid anymore. + * When the "VAT VIES Check" option is enabled (in the configuration of the user's + Company), VAT numbers will be instead submitted to the online EU VIES + database, which will truly verify that the number is valid and currently + allocated to a EU company. This is a little bit slower than the simple + off-line check, requires an Internet connection, and may not be available + all the time. If the service is not available or does not support the + requested country (e.g. for non-EU countries), a simple check will be performed + instead. + Supported countries currently include EU countries, and a few non-EU countries such as Chile, Colombia, Mexico, Norway or Russia. For unsupported countries, only the country code will be validated. diff --git a/addons/base_vat/base_vat.py b/addons/base_vat/base_vat.py index ba858d10e64..02471f67442 100644 --- a/addons/base_vat/base_vat.py +++ b/addons/base_vat/base_vat.py @@ -61,27 +61,48 @@ class res_partner(osv.osv): vat_country, vat_number = vat[:2].lower(), vat[2:].replace(' ', '') return vat_country, vat_number - def check_vat(self, cr, uid, ids, context=None): + def simple_vat_check(self, cr, uid, country_code, vat_number, context=None): ''' Check the VAT number depending of the country. http://sima-pc.com/nif.php ''' - country_obj = self.pool.get('res.country') + check_func_name = 'check_vat_' + country_code + check_func = getattr(self, check_func_name, None) or \ + getattr(vatnumber, check_func_name, None) + if not check_func: + # No VAT validation available, default to check that the country code exists + res_country = self.pool.get('res.country') + return bool(res_country.search(cr, uid, [('code', '=ilike', country_code)], context=context)) + return check_func(vat_number) + + def vies_vat_check(self, cr, uid, country_code, vat_number, context=None): + try: + # Validate against VAT Information Exchange System (VIES) + # see also http://ec.europa.eu/taxation_customs/vies/ + return vatnumber.check_vies(country_code.upper()+vat_number) + except Exception: + # see http://ec.europa.eu/taxation_customs/vies/checkVatService.wsdl + # Fault code may contain INVALID_INPUT, SERVICE_UNAVAILABLE, MS_UNAVAILABLE, + # TIMEOUT or SERVER_BUSY. There is no way we can validate the input + # with VIES if any of these arise, including the first one (it means invalid + # country code or empty VAT number), so we fall back to the simple check. + return self.simple_vat_check(cr, uid, country_code, vat_number, context=context) + + def check_vat(self, cr, uid, ids, context=None): + user_company = self.pool.get('res.users').browse(cr, uid, uid).company_id + if user_company.vat_check_vies: + # force full VIES online check + check_func = self.vies_vat_check + else: + # quick and partial off-line checksum validation + check_func = self.simple_vat_check + for partner in self.browse(cr, uid, ids, context=context): if not partner.vat: continue vat_country, vat_number = self._split_vat(partner.vat) - check_func_name = 'check_vat_' + vat_country - check_func = getattr(self, check_func_name, None) or \ - getattr(vatnumber, check_func_name, None) - if not check_func: - # No VAT validation available, default to check that the country code - # exists. - if country_obj.search(cr, uid, [('code', 'ilike', vat_country)], context=context): - continue - # Country code not found, considered invalid + if not check_func(cr, uid, vat_country, vat_number, context=context): return False - return check_func(vat_number) return True def vat_change(self, cr, uid, ids, value, context=None): diff --git a/addons/base_vat/base_vat_view.xml b/addons/base_vat/base_vat_view.xml index 69a1870ea72..fa53906d667 100644 --- a/addons/base_vat/base_vat_view.xml +++ b/addons/base_vat/base_vat_view.xml @@ -7,12 +7,23 @@ <field name="model">res.partner</field> <field name="inherit_id" ref="account.view_partner_property_form"/> <field name="arch" type="xml"> - <field name="property_account_payable" position="after"> - <group colspan="2" col="6"> - <field name="vat" on_change="vat_change(vat)" colspan="4" /> - <field name="vat_subjected" colspan="1" groups="base.group_extended" /> - </group> + <field name="property_account_payable" position="after"> + <group colspan="2" col="6"> + <field name="vat" on_change="vat_change(vat)" colspan="4" /> + <field name="vat_subjected" colspan="1" groups="base.group_extended" /> + </group> + </field> </field> + </record> + + <record id="company_form_vat" model="ir.ui.view"> + <field name="name">res.company.form.vat.inherit</field> + <field name="model">res.company</field> + <field name="inherit_id" ref="base.view_company_form"/> + <field name="arch" type="xml"> + <field name="currency_id" position="after"> + <field name="vat_check_vies" groups="base.group_extended" /> + </field> </field> </record> diff --git a/addons/base_vat/res_company.py b/addons/base_vat/res_company.py new file mode 100644 index 00000000000..e7641db9c68 --- /dev/null +++ b/addons/base_vat/res_company.py @@ -0,0 +1,32 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Business Applications +# Copyright (c) 2011 OpenERP S.A. <http://openerp.com> +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +############################################################################## + +from osv import osv, fields + +class res_company_vat (osv.osv): + _inherit = 'res.company' + _columns = { + 'vat_check_vies': fields.boolean('VIES VAT Check', + help="If checked, Partners VAT numbers will be fully validated against EU's VIES service " + "rather than via a simple format validation (checksum)."), + } + +
\ No newline at end of file diff --git a/addons/board/__openerp__.py b/addons/board/__openerp__.py index 6cb0e3ecce7..afb8cc42a95 100644 --- a/addons/board/__openerp__.py +++ b/addons/board/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Dashboard Creator', + 'name': 'Dashboards', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "normal", 'description': """ Lets the user create a custom dashboard. diff --git a/addons/board/board_data_home.xml b/addons/board/board_data_home.xml index accb112673b..8a0f150d5be 100644 --- a/addons/board/board_data_home.xml +++ b/addons/board/board_data_home.xml @@ -44,14 +44,10 @@ <field name="type">form</field> <field name="arch" type="xml"> <form string=""> - <board style="2-1"> + <board style="1"> <column> <action name="%(action_application_tiles)d"/> </column> - <column> - <action name="%(action_res_widgets_tweets)d"/> - <action name="%(action_res_widgets_events)d"/> - </column> </board> </form> </field> diff --git a/addons/board/security/ir.model.access.csv b/addons/board/security/ir.model.access.csv index 8661750bfb8..34bc2169016 100644 --- a/addons/board/security/ir.model.access.csv +++ b/addons/board/security/ir.model.access.csv @@ -1,6 +1,6 @@ "id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" -"access_board_board","board.board","model_board_board","base.group_user",1,1,1,1 -"access_board_board_line","board.board.line","model_board_board_line","base.group_user",1,1,1,1 -"access_res_log_report","res.log.report","model_res_log_report","base.group_user",1,1,1,1 -"access_res_log_report_system","res.log.report system","model_res_log_report",base.group_system,1,0,0,0 -"access_res_log_report_erp_manager","res.log.report erp_manager","model_res_log_report",base.group_erp_manager,1,0,0,0 +"access_board_board all","board.board","model_board_board",,1,0,0,0 +"access_board_board_line all","board.board.line","model_board_board_line",,1,0,0,0 +"access_board_board system","board.board system","model_board_board",base.group_system,1,1,1,1 +"access_board_board_line system","board.board.line system","model_board_board_line",base.group_system,1,1,1,1 +"access_res_log_report all","res.log.report","model_res_log_report",,1,0,0,0 diff --git a/addons/caldav/__openerp__.py b/addons/caldav/__openerp__.py index 53bee3d0e94..edf852e4d5e 100644 --- a/addons/caldav/__openerp__.py +++ b/addons/caldav/__openerp__.py @@ -49,7 +49,7 @@ To access OpenERP Calendar using WebCal to remote site use the URL like: DATABASE_NAME: Name of database on which OpenERP Calendar is created CALENDAR_NAME: Name of calendar to access """, - 'category': 'Hidden', + 'category': 'Tools', "author" : "OpenERP SA", 'website': 'http://www.openerp.com', "init_xml" : ["caldav_data.xml"], diff --git a/addons/caldav/caldav.py b/addons/caldav/caldav.py index 2517f88f789..0f0f5ddd762 100644 --- a/addons/caldav/caldav.py +++ b/addons/caldav/caldav.py @@ -25,3 +25,5 @@ urlparse.uses_netloc.append('caldav') urlparse.uses_netloc.append('caldavs') #EOF + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/caldav/caldav_view.xml b/addons/caldav/caldav_view.xml index d8025ef578e..72e88a6c7b4 100644 --- a/addons/caldav/caldav_view.xml +++ b/addons/caldav/caldav_view.xml @@ -45,6 +45,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="domain">[('calendar_collection','=',True)]</field> + <field name="context">{'default_calendar_collection': True}</field> </record> <record model="ir.actions.act_window" id="document.action_document_directory_form"> diff --git a/addons/caldav/calendar_collection.py b/addons/caldav/calendar_collection.py index 1258ba5bf18..1abbf573ef0 100644 --- a/addons/caldav/calendar_collection.py +++ b/addons/caldav/calendar_collection.py @@ -86,3 +86,5 @@ class calendar_collection(osv.osv): return self.get_schedule_inbox_URL(cr, uid, ids, context=context) calendar_collection() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/caldav/orm_utils.py b/addons/caldav/orm_utils.py index 00521831e0f..b154d54d1aa 100644 --- a/addons/caldav/orm_utils.py +++ b/addons/caldav/orm_utils.py @@ -46,3 +46,5 @@ if True: # we need this indentation level ;) return res[0][0] #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/caldav/wizard/caldav_browse.py b/addons/caldav/wizard/caldav_browse.py index 5b78c480d07..f4bb8aeaabc 100644 --- a/addons/caldav/wizard/caldav_browse.py +++ b/addons/caldav/wizard/caldav_browse.py @@ -275,3 +275,5 @@ class user_preference(osv.osv_memory): } user_preference() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/claim_from_delivery/__openerp__.py b/addons/claim_from_delivery/__openerp__.py index c3eec37a229..178da7d1913 100644 --- a/addons/claim_from_delivery/__openerp__.py +++ b/addons/claim_from_delivery/__openerp__.py @@ -21,7 +21,7 @@ "name" : "Claim from Delivery", "version" : "1.0", "author" : "OpenERP SA", - "category" : "Hidden", + 'category': 'Sales Management', "depends" : ["base", "crm_claim", "stock"], "init_xml" : [], "demo_xml" : [], diff --git a/addons/crm/__openerp__.py b/addons/crm/__openerp__.py index 54dfc335a2b..29a1f6107b3 100644 --- a/addons/crm/__openerp__.py +++ b/addons/crm/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Customer & Supplier Relationship Management', + 'name': 'Customer Relationship Management', 'version': '1.0', 'category': 'Customer Relationship Management', 'complexity': "easy", @@ -61,7 +61,8 @@ Creates a dashboard for CRM that includes: 'mail', 'base_calendar', 'resource', - 'board' + 'board', + 'fetchmail' ], 'init_xml': [ 'crm_data.xml', @@ -118,20 +119,17 @@ Creates a dashboard for CRM that includes: 'crm_phonecall_demo.xml', ], 'test': [ - 'test/test_crm_lead.yml', - 'test/test_crm_meeting.yml', - 'test/test_crm_opportunity.yml', - 'test/test_crm_phonecall.yml', - 'test/test_crm_recurrent_meeting.yml', - 'test/test_crm_stage_changes.yml', - 'test/test_crm_recurrent_meeting_case2.yml', - 'test/test_crm_lead_case2.yml', - 'test/test_crm_opportunity_case2.yml', - 'test/test_crm_phonecall_case2.yml', - 'test/test_crm_partner2opportunity.yml', - 'test/test_crm_segmentation.yml', + 'test/process/communication_with_customer.yml', + 'test/process/lead2opportunity2win.yml', + 'test/process/merge_opportunity.yml', + 'test/process/cancel_lead.yml', + 'test/process/segmentation.yml', + 'test/ui/crm_demo.yml', + 'test/ui/duplicate_lead.yml', + 'test/ui/delete_lead.yml' ], 'installable': True, + 'application': True, 'active': False, 'certificate': '0079056041421', 'images': ['images/sale_crm_crm_dashboard.png', 'images/crm_dashboard.jpeg','images/leads.jpeg','images/meetings.jpeg','images/opportunities.jpeg','images/outbound_calls.jpeg','images/stages.jpeg'], diff --git a/addons/crm/board_crm_view.xml b/addons/crm/board_crm_view.xml index 12d24d452cc..3418dc99423 100644 --- a/addons/crm/board_crm_view.xml +++ b/addons/crm/board_crm_view.xml @@ -62,10 +62,11 @@ <record model="ir.actions.act_window" id="act_my_oppor"> <field name="name">My Open Opportunities</field> - <field name="res_model">crm.lead</field> - <field name="view_type">form</field> - <field name="view_mode">tree,form</field> - <field name="domain">[('user_id','=',uid),('state','=','open'), ('type', '=', 'opportunity')]</field> + <field name="res_model">crm.lead</field> + <field name="view_type">form</field> + <field name="view_mode">tree,form</field> + <field name="domain">[('user_id','=',uid),('state','=','open'), ('type', '=', 'opportunity')]</field> + <field name="context">{'default_user_id': uid, 'default_type': 'opportunity'}</field> </record> <record model="ir.actions.act_window.view" id="act_my_oppor_tree_view"> @@ -88,7 +89,8 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="view_id" ref="crm.crm_case_tree_view_meet"/> - <field name="domain">[('user_id','=',uid),('state','not in',('cancel','done'))]</field> + <field name="domain">[('user_id','=',uid),('state','not in',('cancel','done'))]</field> + <field name="context">{'default_user_id': uid}</field> </record> <record model="ir.actions.act_window" id="act_my_oppor_stage"> @@ -119,10 +121,10 @@ <board style="1-1"> <column> <action string="My Open Opportunities" - name="%(act_my_oppor)d"/> + name="%(act_my_oppor)d" creatable="true"/> <action string="My Meetings" - name="%(act_my_meetings)d"/> + name="%(act_my_meetings)d" creatable="true"/> </column> <column> <action string="My Planned Revenues by Stage" diff --git a/addons/crm/crm.py b/addons/crm/crm.py index 1c1784e961d..bee1e48ada2 100644 --- a/addons/crm/crm.py +++ b/addons/crm/crm.py @@ -468,10 +468,12 @@ class crm_case(crm_base): self._action(cr, uid, cases, state) return True + #DEAD Code def remind_partner(self, cr, uid, ids, context=None, attach=False): return self.remind_user(cr, uid, ids, context, attach, destination=False) + #DEAD Code def remind_user(self, cr, uid, ids, context=None, attach=False, destination=True): mail_message = self.pool.get('mail.message') for case in self.browse(cr, uid, ids, context=context): @@ -578,3 +580,5 @@ class users(osv.osv): return res users() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm/crm_demo.xml b/addons/crm/crm_demo.xml index 16ae0e73129..f345d86d030 100644 --- a/addons/crm/crm_demo.xml +++ b/addons/crm/crm_demo.xml @@ -1,6 +1,6 @@ <?xml version="1.0" encoding="utf-8"?> <openerp> - <data noupdate="1"> + <data> <record id="base.user_demo" model="res.users"> <field name="groups_id" eval="[(4,ref('base.group_sale_salesman'))]"/> </record> @@ -12,5 +12,17 @@ <field name="res_id" ref="crm.menu_crm_case_categ_meet"/> </record> + <record model="crm.case.section" id="section_sales_marketing_department"> + <field name="name">Sales Marketing Department</field> + <field name="code">Sales Marketing</field> + <field name="parent_id" ref="crm.section_sales_department"></field> + </record> + + <record model="crm.segmentation" id="crm_segmentation0"> + <field name="name">OpenERP partners</field> + <field name="exclusif">True</field> + <field name="categ_id" ref="base.res_partner_category_2"/> + </record> + </data> </openerp> diff --git a/addons/crm/crm_lead.py b/addons/crm/crm_lead.py index e72358a79a5..49272c97576 100644 --- a/addons/crm/crm_lead.py +++ b/addons/crm/crm_lead.py @@ -27,7 +27,7 @@ from tools.translate import _ from crm import crm_case import binascii import tools - +from mail.mail_message import to_email CRM_LEAD_PENDING_STATES = ( crm.AVAILABLE_STATES[2][0], # Cancelled @@ -42,14 +42,16 @@ class crm_lead(crm_case, osv.osv): _order = "priority,date_action,id desc" _inherit = ['mail.thread','res.partner.address'] - def _read_group_stage_ids(self, cr, uid, ids, domain, read_group_order=None, context=None): + def _read_group_stage_ids(self, cr, uid, ids, domain, read_group_order=None, access_rights_uid=None, context=None): + access_rights_uid = access_rights_uid or uid stage_obj = self.pool.get('crm.case.stage') order = stage_obj._order if read_group_order == 'stage_id desc': # lame hack to allow reverting search, should just work in the trivial case order = "%s desc" % order - stage_ids = stage_obj.search(cr, uid, ['|', ('id','in',ids),('case_default','=',1)], order=order, context=context) - result = stage_obj.name_get(cr, uid, stage_ids, context=context) + stage_ids = stage_obj._search(cr, uid, ['|', ('id','in',ids),('case_default','=',1)], order=order, + access_rights_uid=access_rights_uid, context=context) + result = stage_obj.name_get(cr, access_rights_uid, stage_ids, context=context) # restore order of the search result.sort(lambda x,y: cmp(stage_ids.index(x[0]), stage_ids.index(y[0]))) return result @@ -204,6 +206,7 @@ class crm_lead(crm_case, osv.osv): 'stage_id': fields.many2one('crm.case.stage', 'Stage', domain="[('section_ids', '=', section_id)]"), 'color': fields.integer('Color Index'), 'partner_address_name': fields.related('partner_address_id', 'name', type='char', string='Partner Contact Name', readonly=True), + 'partner_address_email': fields.related('partner_address_id', 'email', type='char', string='Partner Contact Email', readonly=True), 'company_currency': fields.related('company_id', 'currency_id', 'symbol', type='char', string='Company Currency', readonly=True), 'user_email': fields.related('user_id', 'user_email', type='char', string='User Email', readonly=True), 'user_login': fields.related('user_id', 'login', type='char', string='User Login', readonly=True), @@ -349,36 +352,380 @@ class crm_lead(crm_case, osv.osv): """ return self.set_priority(cr, uid, ids, '3') - def convert_opportunity(self, cr, uid, ids, context=None): - """ Precomputation for converting lead to opportunity - """ + + def _merge_data(self, cr, uid, ids, oldest, fields, context=None): + # prepare opportunity data into dictionary for merging + opportunities = self.browse(cr, uid, ids, context=context) + def _get_first_not_null(attr): + if hasattr(oldest, attr): + return getattr(oldest, attr) + for opportunity in opportunities: + if hasattr(opportunity, attr): + return getattr(opportunity, attr) + return False + + def _get_first_not_null_id(attr): + res = _get_first_not_null(attr) + return res and res.id or False + + def _concat_all(attr): + return ', '.join(filter(lambda x: x, [getattr(opportunity, attr) or '' for opportunity in opportunities if hasattr(opportunity, attr)])) + + data = {} + for field_name in fields: + field_info = self._all_columns.get(field_name) + if field_info is None: + continue + field = field_info.column + if field._type in ('many2many', 'one2many'): + continue + elif field._type == 'many2one': + data[field_name] = _get_first_not_null_id(field_name) # !! + elif field._type == 'text': + data[field_name] = _concat_all(field_name) #not lost + else: + data[field_name] = _get_first_not_null(field_name) #not lost + return data + + def _merge_find_oldest(self, cr, uid, ids, context=None): if context is None: context = {} - context.update({'active_ids': ids}) - - data_obj = self.pool.get('ir.model.data') - value = {} + #TOCHECK: where pass 'convert' in context ? + if context.get('convert'): + ids = list(set(ids) - set(context.get('lead_ids', False)) ) + + #search opportunities order by create date + opportunity_ids = self.search(cr, uid, [('id', 'in', ids)], order='create_date' , context=context) + oldest_id = opportunity_ids[0] + return self.browse(cr, uid, oldest_id, context=context) + + def _mail_body_text(self, cr, uid, lead, fields, title=False, context=None): + body = [] + if title: + body.append("%s\n" % (title)) + for field_name in fields: + field_info = self._all_columns.get(field_name) + if field_info is None: + continue + field = field_info.column + value = None + + if field._type == 'selection': + if hasattr(field.selection, '__call__'): + key = field.selection(self, cr, uid, context=context) + else: + key = field.selection + value = dict(key).get(lead[field_name], lead[field_name]) + elif field._type == 'many2one': + if lead[field_name]: + value = lead[field_name].name_get()[0][1] + else: + value = lead[field_name] + + body.append("%s: %s" % (field.string, value or '')) + return "\n".join(body + ['---']) + + def _merge_notification(self, cr, uid, opportunity_id, opportunities, context=None): + #TOFIX: mail template should be used instead of fix body, subject text + details = [] + merge_message = _('Merged opportunities') + subject = [merge_message] + fields = ['name', 'partner_id', 'stage_id', 'section_id', 'user_id', 'categ_id', 'channel_id', 'company_id', 'contact_name', + 'email_from', 'phone', 'fax', 'mobile', 'state_id', 'description', 'probability', 'planned_revenue', + 'country_id', 'city', 'street', 'street2', 'zip'] + for opportunity in opportunities: + subject.append(opportunity.name) + title = "%s : %s" % (merge_message, opportunity.name) + details.append(self._mail_body_text(cr, uid, opportunity, fields, title=title, context=context)) + + subject = subject[0] + ", ".join(subject[1:]) + details = "\n\n".join(details) + return self.message_append(cr, uid, [opportunity_id], subject, body_text=details, context=context) + + def _merge_opportunity_history(self, cr, uid, opportunity_id, opportunities, context=None): + message = self.pool.get('mail.message') + for opportunity in opportunities: + for history in opportunity.message_ids: + message.write(cr, uid, history.id, { + 'res_id': opportunity_id, + 'subject' : _("From %s : %s") % (opportunity.name, history.subject) + }, context=context) + + return True + + def _merge_opportunity_attachments(self, cr, uid, opportunity_id, opportunities, context=None): + attachment = self.pool.get('ir.attachment') + + # return attachments of opportunity + def _get_attachments(opportunity_id): + attachment_ids = attachment.search(cr, uid, [('res_model', '=', self._name), ('res_id', '=', opportunity_id)], context=context) + return attachment.browse(cr, uid, attachment_ids, context=context) + + count = 1 + first_attachments = _get_attachments(opportunity_id) + for opportunity in opportunities: + attachments = _get_attachments(opportunity.id) + for first in first_attachments: + for attachment in attachments: + if attachment.name == first.name: + values = dict( + name = "%s (%s)" % (attachment.name, count,), + res_id = opportunity_id, + ) + attachment.write(values) + count+=1 + + return True + def merge_opportunity(self, cr, uid, ids, context=None): + """ + To merge opportunities + :param ids: list of opportunities ids to merge + """ + if context is None: context = {} + + #TOCHECK: where pass lead_ids in context? + lead_ids = context and context.get('lead_ids', []) or [] + + if len(ids) <= 1: + raise osv.except_osv(_('Warning !'),_('Please select more than one opportunities.')) + + ctx_opportunities = self.browse(cr, uid, lead_ids, context=context) + opportunities = self.browse(cr, uid, ids, context=context) + opportunities_list = list(set(opportunities) - set(ctx_opportunities)) + oldest = self._merge_find_oldest(cr, uid, ids, context=context) + if ctx_opportunities : + first_opportunity = ctx_opportunities[0] + tail_opportunities = opportunities_list + else: + first_opportunity = opportunities_list[0] + tail_opportunities = opportunities_list[1:] + + fields = ['partner_id', 'title', 'name', 'categ_id', 'channel_id', 'city', 'company_id', 'contact_name', 'country_id', + 'partner_address_id', 'type_id', 'user_id', 'section_id', 'state_id', 'description', 'email', 'fax', 'mobile', + 'partner_name', 'phone', 'probability', 'planned_revenue', 'street', 'street2', 'zip', 'create_date', 'date_action_last', + 'date_action_next', 'email_from', 'email_cc', 'partner_name'] + + data = self._merge_data(cr, uid, ids, oldest, fields, context=context) + + # merge data into first opportunity + self.write(cr, uid, [first_opportunity.id], data, context=context) + + #copy message and attachements into the first opportunity + self._merge_opportunity_history(cr, uid, first_opportunity.id, tail_opportunities, context=context) + self._merge_opportunity_attachments(cr, uid, first_opportunity.id, tail_opportunities, context=context) + + #Notification about loss of information + self._merge_notification(cr, uid, first_opportunity, opportunities, context=context) + #delete tail opportunities + self.unlink(cr, uid, [x.id for x in tail_opportunities], context=context) + + #open first opportunity + self.case_open(cr, uid, [first_opportunity.id]) + return first_opportunity.id + + def _convert_opportunity_data(self, cr, uid, lead, customer, section_id=False, context=None): + crm_stage = self.pool.get('crm.case.stage') + contact_id = False + if customer: + contact_id = self.pool.get('res.partner').address_get(cr, uid, [customer.id])['default'] + if not section_id: + section_id = lead.section_id and lead.section_id.id or False + if section_id: + stage_ids = crm_stage.search(cr, uid, [('sequence','>=',1), ('section_ids','=', section_id)]) + else: + stage_ids = crm_stage.search(cr, uid, [('sequence','>=',1)]) + stage_id = stage_ids and stage_ids[0] or False + return { + 'planned_revenue': lead.planned_revenue, + 'probability': lead.probability, + 'name': lead.name, + 'partner_id': customer and customer.id or False, + 'user_id': (lead.user_id and lead.user_id.id), + 'type': 'opportunity', + 'stage_id': stage_id or False, + 'date_action': time.strftime('%Y-%m-%d %H:%M:%S'), + 'partner_address_id': contact_id + } + def _convert_opportunity_notification(self, cr, uid, lead, context=None): + success_message = _("Lead '%s' has been converted to an opportunity.") % lead.name + self.message_append(cr, uid, [lead.id], success_message, body_text=success_message, context=context) + self.log(cr, uid, lead.id, success_message) + self._send_mail_to_salesman(cr, uid, lead, context=context) + return True + + def convert_opportunity(self, cr, uid, ids, partner_id, user_ids=False, section_id=False, context=None): + partner = self.pool.get('res.partner') + mail_message = self.pool.get('mail.message') + customer = False + if partner_id: + customer = partner.browse(cr, uid, partner_id, context=context) + for lead in self.browse(cr, uid, ids, context=context): + if lead.state in ('done', 'cancel'): + continue + if user_ids or section_id: + self.allocate_salesman(cr, uid, [lead.id], user_ids, section_id, context=context) + + vals = self._convert_opportunity_data(cr, uid, lead, customer, section_id, context=context) + self.write(cr, uid, [lead.id], vals, context=context) + + self._convert_opportunity_notification(cr, uid, lead, context=context) + #TOCHECK: why need to change partner details in all messages of lead ? + if lead.partner_id: + msg_ids = [ x.id for x in lead.message_ids] + mail_message.write(cr, uid, msg_ids, { + 'partner_id': lead.partner_id.id + }, context=context) + return True + + def _lead_create_partner(self, cr, uid, lead, context=None): + partner = self.pool.get('res.partner') + partner_id = partner.create(cr, uid, { + 'name': lead.partner_name or lead.contact_name or lead.name, + 'user_id': lead.user_id.id, + 'comment': lead.description, + 'section_id': lead.section_id.id or False, + 'address': [] + }) + return partner_id + + def _lead_set_partner(self, cr, uid, lead, partner_id, context=None): + res = False + res_partner = self.pool.get('res.partner') + if partner_id: + res_partner.write(cr, uid, partner_id, {'section_id': lead.section_id.id or False}) + contact_id = res_partner.address_get(cr, uid, [partner_id])['default'] + res = lead.write({'partner_id' : partner_id, 'partner_address_id': contact_id}, context=context) + + return res - for case in self.browse(cr, uid, ids, context=context): - context.update({'active_id': case.id}) - data_id = data_obj._get_id(cr, uid, 'crm', 'view_crm_lead2opportunity_partner') - view_id1 = False - if data_id: - view_id1 = data_obj.browse(cr, uid, data_id, context=context).res_id - value = { - 'name': _('Create Partner'), - 'view_type': 'form', - 'view_mode': 'form,tree', - 'res_model': 'crm.lead2opportunity.partner', - 'view_id': False, - 'context': context, - 'views': [(view_id1, 'form')], - 'type': 'ir.actions.act_window', - 'target': 'new', - 'nodestroy': True + def _lead_create_partner_address(self, cr, uid, lead, partner_id, context=None): + address = self.pool.get('res.partner.address') + return address.create(cr, uid, { + 'partner_id': partner_id, + 'name': lead.contact_name, + 'phone': lead.phone, + 'mobile': lead.mobile, + 'email': lead.email_from and to_email(lead.email_from)[0], + 'fax': lead.fax, + 'title': lead.title and lead.title.id or False, + 'function': lead.function, + 'street': lead.street, + 'street2': lead.street2, + 'zip': lead.zip, + 'city': lead.city, + 'country_id': lead.country_id and lead.country_id.id or False, + 'state_id': lead.state_id and lead.state_id.id or False, + }) + + def convert_partner(self, cr, uid, ids, action='create', partner_id=False, context=None): + """ + This function convert partner based on action. + if action is 'create', create new partner with contact and assign lead to new partner_id. + otherwise assign lead to specified partner_id + """ + if context is None: + context = {} + partner_ids = {} + for lead in self.browse(cr, uid, ids, context=context): + if action == 'create': + if not partner_id: + partner_id = self._lead_create_partner(cr, uid, lead, context=context) + self._lead_create_partner_address(cr, uid, lead, partner_id, context=context) + self._lead_set_partner(cr, uid, lead, partner_id, context=context) + partner_ids[lead.id] = partner_id + return partner_ids + + def _send_mail_to_salesman(self, cr, uid, lead, context=None): + """ + Send mail to salesman with updated Lead details. + @ lead: browse record of 'crm.lead' object. + """ + #TOFIX: mail template should be used here instead of fix subject, body text. + message = self.pool.get('mail.message') + email_to = lead.user_id and lead.user_id.user_email + if not email_to: + return False + + email_from = lead.section_id and lead.section_id.user_id and lead.section_id.user_id.user_email or email_to + partner = lead.partner_id and lead.partner_id.name or lead.partner_name + subject = "lead %s converted into opportunity" % lead.name + body = "Info \n Id : %s \n Subject: %s \n Partner: %s \n Description : %s " % (lead.id, lead.name, lead.partner_id.name, lead.description) + return message.schedule_with_attach(cr, uid, email_from, [email_to], subject, body) + + + def allocate_salesman(self, cr, uid, ids, user_ids, team_id=False, context=None): + index = 0 + for lead_id in ids: + value = {} + if team_id: + value['section_id'] = team_id + if index < len(user_ids): + value['user_id'] = user_ids[index] + index += 1 + if value: + self.write(cr, uid, [lead_id], value, context=context) + return True + + def schedule_phonecall(self, cr, uid, ids, schedule_time, call_summary, desc, phone, contact_name, user_id=False, section_id=False, categ_id=False, action='schedule', context=None): + """ + action :('schedule','Schedule a call'), ('log','Log a call') + """ + phonecall = self.pool.get('crm.phonecall') + model_data = self.pool.get('ir.model.data') + phonecall_dict = {} + if not categ_id: + res_id = model_data._get_id(cr, uid, 'crm', 'categ_phone2') + if res_id: + categ_id = model_data.browse(cr, uid, res_id, context=context).res_id + for lead in self.browse(cr, uid, ids, context=context): + if not section_id: + section_id = lead.section_id and lead.section_id.id or False + if not user_id: + user_id = lead.user_id and lead.user_id.id or False + vals = { + 'name' : call_summary, + 'opportunity_id' : lead.id, + 'user_id' : user_id or False, + 'categ_id' : categ_id or False, + 'description' : desc or '', + 'date' : schedule_time, + 'section_id' : section_id or False, + 'partner_id': lead.partner_id and lead.partner_id.id or False, + 'partner_address_id': lead.partner_address_id and lead.partner_address_id.id or False, + 'partner_phone' : phone or lead.phone or (lead.partner_address_id and lead.partner_address_id.phone or False), + 'partner_mobile' : lead.partner_address_id and lead.partner_address_id.mobile or False, + 'priority': lead.priority, } - return value + + new_id = phonecall.create(cr, uid, vals, context=context) + phonecall.case_open(cr, uid, [new_id]) + if action == 'log': + phonecall.case_close(cr, uid, [new_id]) + phonecall_dict[lead.id] = new_id + return phonecall_dict + + + def redirect_opportunity_view(self, cr, uid, opportunity_id, context=None): + models_data = self.pool.get('ir.model.data') + + # Get Opportunity views + form_view = models_data.get_object_reference(cr, uid, 'crm', 'crm_case_form_view_oppor') + tree_view = models_data.get_object_reference(cr, uid, 'crm', 'crm_case_tree_view_oppor') + return { + 'name': _('Opportunity'), + 'view_type': 'form', + 'view_mode': 'tree, form', + 'res_model': 'crm.lead', + 'domain': [('type', '=', 'opportunity')], + 'res_id': int(opportunity_id), + 'view_id': False, + 'views': [(form_view and form_view[1] or False, 'form'), + (tree_view and tree_view[1] or False, 'tree'), + (False, 'calendar'), (False, 'graph')], + 'type': 'ir.actions.act_window', + } + def message_new(self, cr, uid, msg, custom_values=None, context=None): """Automatically calls when new email message arrives""" @@ -438,24 +785,17 @@ class crm_lead(crm_case, osv.osv): This opens Meeting's calendar view to schedule meeting on current Opportunity @return : Dictionary value for created Meeting view """ + if context is None: + context = {} value = {} + data_obj = self.pool.get('ir.model.data') for opp in self.browse(cr, uid, ids, context=context): - data_obj = self.pool.get('ir.model.data') - # Get meeting views - result = data_obj._get_id(cr, uid, 'crm', 'view_crm_case_meetings_filter') - res = data_obj.read(cr, uid, result, ['res_id']) - id1 = data_obj._get_id(cr, uid, 'crm', 'crm_case_calendar_view_meet') - id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_form_view_meet') - id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_tree_view_meet') - if id1: - id1 = data_obj.browse(cr, uid, id1, context=context).res_id - if id2: - id2 = data_obj.browse(cr, uid, id2, context=context).res_id - if id3: - id3 = data_obj.browse(cr, uid, id3, context=context).res_id - - context = { + tree_view = data_obj.get_object_reference(cr, uid, 'crm', 'crm_case_tree_view_meet') + form_view = data_obj.get_object_reference(cr, uid, 'crm', 'crm_case_form_view_meet') + calander_view = data_obj.get_object_reference(cr, uid, 'crm', 'crm_case_calendar_view_meet') + search_view = data_obj.get_object_reference(cr, uid, 'crm', 'view_crm_case_meetings_filter') + context.update({ 'default_opportunity_id': opp.id, 'default_partner_id': opp.partner_id and opp.partner_id.id or False, 'default_user_id': uid, @@ -463,7 +803,7 @@ class crm_lead(crm_case, osv.osv): 'default_email_from': opp.email_from, 'default_state': 'open', 'default_name': opp.name - } + }) value = { 'name': _('Meetings'), 'context': context, @@ -471,9 +811,9 @@ class crm_lead(crm_case, osv.osv): 'view_mode': 'calendar,form,tree', 'res_model': 'crm.meeting', 'view_id': False, - 'views': [(id1, 'calendar'), (id2, 'form'), (id3, 'tree')], + 'views': [(calander_view and calander_view[1] or False, 'calendar'), (form_view and form_view[1] or False, 'form'), (tree_view and tree_view[1] or False, 'tree')], 'type': 'ir.actions.act_window', - 'search_view_id': res['res_id'], + 'search_view_id': search_view and search_view[1] or False, 'nodestroy': True } return value diff --git a/addons/crm/crm_lead_demo.xml b/addons/crm/crm_lead_demo.xml index 576f258facc..830b572676d 100644 --- a/addons/crm/crm_lead_demo.xml +++ b/addons/crm/crm_lead_demo.xml @@ -1,6 +1,6 @@ <?xml version="1.0"?> <openerp> - <data noupdate="1"> + <data> <!-- Demo Leads --> <record id="crm_case_itisatelesalescampaign0" model="crm.lead"> <field name="type_id" ref="crm.type_lead1"/> @@ -9,8 +9,8 @@ <field name="user_id" ref="base.user_root"/> <field eval="'The Oil Company'" name="partner_name"/> <field eval="'draft'" name="state"/> - <field name="section_id" ref="crm.section_sales_department"/> - <field eval="'Luc Latour'" name="contact_name"/> + <field name="section_id" ref="crm.section_sales_marketing_department"/> + <field eval="'Luc Latour'" name="contact_name"/> <field name="title" ref="base.res_partner_title_sir"/> <field eval="'Training Manager'" name="function"/> <field eval="'Paris'" name="city"/> @@ -92,7 +92,7 @@ <field eval="'Bruxelles'" name="city"/> <field name="country_id" ref="base.be"/> <field eval="'draft'" name="state"/> - <field name="section_id" ref="crm.section_sales_department"/> + <field name="section_id" ref="crm.section_sales_marketing_department"/> <field eval="'(333) 715-1450'" name="mobile"/> <field eval="1" name="active"/> <field name="categ_id" ref="crm.categ_oppor1"/> diff --git a/addons/crm/crm_lead_menu.xml b/addons/crm/crm_lead_menu.xml index 9b0581844a5..d0197fd82cd 100644 --- a/addons/crm/crm_lead_menu.xml +++ b/addons/crm/crm_lead_menu.xml @@ -60,16 +60,23 @@ <record model="ir.actions.act_window" id="crm_case_category_act_oppor11"> <field name="name">Opportunities</field> <field name="res_model">crm.lead</field> - <field name="view_mode">tree,form,graph,calendar,kanban</field> + <field name="view_mode">kanban,tree,form,graph,calendar</field> <field name="domain">[('type','=','opportunity')]</field> <field name="context">{'search_default_user_id':uid,'search_default_new':1, 'search_default_open':1, 'search_default_section_id':section_id, 'stage_type': 'opportunity', 'default_type': 'opportunity'}</field> - <field name="view_id" ref="crm_case_tree_view_oppor"/> + <field name="view_id" eval="False"/> <field name="search_view_id" ref="crm.view_crm_case_opportunities_filter"/> <field name="help">With opportunities you can manage and keep track of your sales pipeline by creating specific customer- or prospect-related sales documents to follow up potential sales. Information such as expected revenue, opportunity stage, expected closing date, communication history and much more can be stored. Opportunities can be connected to the email gateway: new emails may create opportunities, each of them automatically gets the history of the conversation with the customer. You and your team(s) will be able to plan meetings and phone calls from opportunities, convert them into quotations, manage related documents, track all customer related activities, and much more.</field> </record> + <record model="ir.actions.act_window.view" id="action_crm_tag_kanban_view_oppor11"> + <field name="sequence" eval="0"/> + <field name="view_mode">kanban</field> + <field name="view_id" ref="crm_case_kanban_view_leads"/> + <field name="act_window_id" ref="crm_case_category_act_oppor11"/> + </record> + <record model="ir.actions.act_window.view" id="action_crm_tag_tree_view_oppor11"> <field name="sequence" eval="1"/> <field name="view_mode">tree</field> diff --git a/addons/crm/crm_lead_view.xml b/addons/crm/crm_lead_view.xml index 16a90e4e44d..e9c77b3bdc6 100644 --- a/addons/crm/crm_lead_view.xml +++ b/addons/crm/crm_lead_view.xml @@ -35,7 +35,7 @@ <field name="res_model">crm.case.categ</field> <field name="view_type">form</field> <field name="view_id" ref="crm_case_categ_tree-view"/> - <field name="context">{'object_id': 'crm.lead'}</field> + <field name="context" eval="{'object_id': ref('model_crm_lead')}"/> <field name="domain">[('object_id.model', '=', 'crm.lead')]</field> <field name="help">Create specific categories that fit your company's activities to better classify and analyse your leads and opportunities. Such categories could for instance reflect your product structure or the different types of sales you do.</field> </record> @@ -59,10 +59,11 @@ widget="selection" domain="[('object_id.model','=','crm.lead')]"/> <button - name="convert_opportunity" + name="%(crm.action_crm_lead2opportunity_partner)d" string="Convert to Opportunity" help="Convert to Opportunity" icon="gtk-go-forward" - type="object"/> + type="action" + /> <newline /> <field name="user_id" /> <field name="section_id" widget="selection" /> @@ -142,6 +143,29 @@ type="object" icon="gtk-convert" /> </group> </page> + <page string="Communication & History" groups="base.group_extended"> + <group colspan="4"> + <field colspan="4" name="email_cc" widget="char" size="512"/> + </group> + <field name="message_ids" colspan="4" nolabel="1" mode="tree" readonly="1"> + <tree string="History"> + <field name="display_text" string="History Information"/> + <field name="email_from" invisible="1"/> + <button + string="Reply" attrs="{'invisible': [('email_from', '=', False)]}" + name="%(mail.action_email_compose_message_wizard)d" + context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" + icon="terp-mail-replied" type="action" /> + </tree> + </field> + <button string="Add Internal Note" + name="%(crm.action_crm_add_note)d" + context="{'model': 'crm.lead' }" + icon="terp-document-new" type="action" /> + <button string="Send New Email" + name="%(mail.action_email_compose_message_wizard)d" + icon="terp-mail-message-new" type="action"/> + </page> <page string="Extra Info" groups="base.group_extended"> <group colspan="2" col="2"> <separator string="Categorization" colspan="2" col="2"/> @@ -170,58 +194,6 @@ <field name="day_close"/> </group> </page> - <page string="Communication & History" groups="base.group_extended"> - <group colspan="4"> - <field colspan="4" name="email_cc" widget="char" size="512"/> - </group> - <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1"> - <tree string="History"> - <field name="display_text" string="History Information"/> - <field name="email_from" invisible="1"/> - <button - string="Reply" attrs="{'invisible': [('email_from', '=', False)]}" - name="%(mail.action_email_compose_message_wizard)d" - context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" - icon="terp-mail-replied" type="action" /> - </tree> - <form string="History"> - <group col="4" colspan="4"> - <group col="2" colspan="2" attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="email_from"/> - <field name="email_to" size="512"/> - </group> - <group col="2" colspan="2"> - <field name="date"/> - <field name="email_cc" size="512" attrs="{'invisible': [('email_from', '=', False)]}"/> - </group> - <field name="subject" colspan="4" widget="char" attrs="{'invisible': [('email_from', '=', False)]}" size="512"/> - <field name="display_text" colspan="4" attrs="{'invisible': [('email_from', '!=', False)]}"/> - </group> - <notebook colspan="4"> - <page string="Details" attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="body_text" colspan="4" nolabel="1"/> - <group attrs="{'invisible': [('email_from', '=', False)]}"> - <button colspan="4" string="Reply" - name="%(mail.action_email_compose_message_wizard)d" - context="{'mail.compose.message.mode':'reply'}" - icon="terp-mail-replied" type="action"/> - </group> - - </page> - <page string="Attachments" attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/> - </page> - </notebook> - </form> - </field> - <button string="Add Internal Note" - name="%(crm.action_crm_add_note)d" - context="{'model': 'crm.lead' }" - icon="terp-document-new" type="action" /> - <button string="Send New Email" - name="%(mail.action_email_compose_message_wizard)d" - icon="terp-mail-message-new" type="action"/> - </page> </notebook> </form> </field> @@ -304,31 +276,46 @@ <field name="priority"/> <field name="planned_revenue" sum="Expected Revenues"/> <field name="user_email"/> + <field name="user_id"/> + <field name="partner_address_email"/> <templates> + <t t-name="lead_details"> + <ul class="oe_kanban_tooltip"> + <li t-if="record.phone.raw_value"><b>Phone:</b> <field name="phone"/></li> + <li><b>Probability:</b> <field name="probability"/>%%</li> + <li><b>Creation date:</b> <field name="create_date"/></li> + <li t-if="record.date_deadline.raw_value"><b>Date Deadline:</b> <field name="date_deadline"/></li> + </ul> + </t> <t t-name="kanban-box"> - <t t-set="color" t-value="kanban_color(record.color.raw_value)"/> - <div t-att-class="color + (record.priority.raw_value == 1 ? ' oe_kanban_color_alert' : '')"> + <t t-if="record.date_deadline.raw_value and record.date_deadline.raw_value lt (new Date())" t-set="border">oe_kanban_color_red</t> + <div t-attf-class="#{kanban_color(record.color.raw_value)} #{border || ''}"> <div class="oe_kanban_box oe_kanban_color_border"> <table class="oe_kanban_table oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle"> <tr> - <td class="oe_kanban_title3" align="left" valign="middle"> + <td align="left" valign="middle" width="16"> <a t-if="record.priority.raw_value == 1" icon="star-on" type="object" name="set_normal_priority"/> <a t-if="record.priority.raw_value != 1" icon="star-off" type="object" name="set_high_priority" style="opacity:0.6; filter:alpha(opacity=60);"/> - <field name="partner_id"/> </td> - <td class="oe_kanban_title2" align="right" valign="middle" t-if="record.planned_revenue.raw_value" nowrap="nowrap"> - <t t-esc="Math.round(record.planned_revenue.value)"/> <field name="company_currency"/> + <td align="left" valign="middle" class="oe_kanban_title" tooltip="lead_details"> + <field name="partner_id"/> + <t t-if="record.planned_revenue.raw_value"> + - <t t-esc="Math.round(record.planned_revenue.value)"/> + <field name="company_currency"/> + </t> </td> - <td valign="top" width="22"><img t-att-src="kanban_gravatar(record.user_email.value, 22)" class="oe_kanban_gravatar"/></td> + <td valign="top" width="22"><img t-att-src="kanban_gravatar(record.user_email.value, 22)" class="oe_kanban_gravatar" t-att-title="record.user_id.value"/></td> </tr> </table> <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger"> - <div class="oe_kanban_right oe_kanban_small"> - <field name="user_login"/> - </div> <div> - <b><field name="partner_address_name"/></b> + <b> + <a t-if="record.partner_address_email.raw_value" t-attf-href="mailto:#{record.partner_address_email.raw_value}"> + <field name="partner_address_name"/> + </a> + <field t-if="!record.partner_address_email.raw_value" name="partner_address_name"/> + </b> </div> <div> <field name="name"/> @@ -344,13 +331,14 @@ <a string="Change Color" icon="color-picker" type="color" name="color"/> <a string="Send New Email" name="%(mail.action_email_compose_message_wizard)d" icon="terp-mail-message-new" type="action"/> <a string="Schedule/Log Call" name="%(opportunity2phonecall_act)d" icon="terp-call-start" type="action"/> - <a string="Add Internal Note" name="%(crm.action_crm_add_note)d" context="{'model': 'crm.lead' }" icon="terp-document-new" type="action"/> <a string="Schedule Meeting" name="action_makeMeeting" type="object" icon="stock_calendar"/> + <a string="Add Internal Note" name="%(crm.action_crm_add_note)d" context="{'model': 'crm.lead' }" icon="terp-document-new" type="action"/> </div> <div class="oe_kanban_right"> - <a name="case_pending" string="Pending" states="draft,open" type="object" icon="lead-stage-pending" /> - <a name="case_mark_won" string="Mark Won" states="open,pending" type="object" icon="lead-stage-won" /> - <a name="case_mark_lost" string="Mark Lost" states="open,pending" type="object" icon="lead-stage-lost" /> + <a name="case_mark_lost" string="Mark Lost" states="open,pending" type="object" icon="kanban-stop" /> + <a name="case_pending" string="Pending" states="draft,open" type="object" icon="kanban-pause" /> + <a name="case_open" string="Open" states="pending" type="object" icon="gtk-media-play" /> + <a name="case_mark_won" string="Mark Won" states="open,pending" type="object" icon="kanban-apply" /> </div> <br class="oe_kanban_clear"/> </div> @@ -443,7 +431,7 @@ <field name="name">Opportunities</field> <field name="model">crm.lead</field> <field name="type">form</field> - <field name="priority">10</field> + <field name="priority">20</field> <field name="arch" type="xml"> <form string="Opportunities"> <group colspan="4" col="7"> @@ -561,7 +549,7 @@ <group colspan="4"> <field colspan="4" name="email_cc" widget="char" size="512"/> </group> - <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1"> + <field name="message_ids" colspan="4" nolabel="1" mode="tree" readonly="1"> <tree string="History"> <field name="display_text" string="History Information"/> <field name="email_from" invisible="1"/> @@ -571,34 +559,6 @@ context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" icon="terp-mail-replied" type="action" /> </tree> - <form string="History"> - <group col="4" colspan="4"> - <group col="2" colspan="2" attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="email_from"/> - <field name="email_to" size="512"/> - </group> - <group col="2" colspan="2"> - <field name="date"/> - <field name="email_cc" size="512" attrs="{'invisible': [('email_from', '=', False)]}"/> - </group> - <field name="subject" colspan="4" widget="char" attrs="{'invisible': [('email_from', '=', False)]}" size="512"/> - <field name="display_text" colspan="4" attrs="{'invisible': [('email_from', '!=', False)]}"/> - </group> - <notebook colspan="4"> - <page string="Details" attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="body_text" colspan="4" nolabel="1"/> - <group attrs="{'invisible': [('email_from', '=', False)]}"> - <button colspan="4" string="Reply" - name="%(mail.action_email_compose_message_wizard)d" - context="{'mail.compose.message.mode':'reply'}" - icon="terp-mail-replied" type="action"/> - </group> - </page> - <page string="Attachments" attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/> - </page> - </notebook> - </form> </field> <button string="Add Internal Note" name="%(crm.action_crm_add_note)d" @@ -689,6 +649,7 @@ domain="[('state','=','pending')]"/> <separator orientation="vertical"/> <field name="name" string="Opportunity / Customer" filter_domain="['|','|','|',('partner_id','ilike',self),('partner_name','ilike',self),('email_from','ilike',self),('name', 'ilike', self)]"/> + <field name="partner_id" string="Customer / Email" filter_domain="['|','|',('partner_id','ilike',self),('partner_name','ilike',self),('email_from','ilike',self)]"/> <field name="user_id"> <filter icon="terp-personal-" domain="[('user_id','=', False)]" diff --git a/addons/crm/crm_meeting_menu.xml b/addons/crm/crm_meeting_menu.xml index 1aca651958b..19ca9266332 100644 --- a/addons/crm/crm_meeting_menu.xml +++ b/addons/crm/crm_meeting_menu.xml @@ -14,7 +14,7 @@ <record model="ir.actions.act_window" id="crm_case_categ_meet_create_partner"> <field name="name">Schedule a Meeting</field> - <field name="context" eval="{'default_state':'draft'}"/> + <field name="context">{'default_partner_id': active_id}</field> </record> diff --git a/addons/crm/crm_meeting_view.xml b/addons/crm/crm_meeting_view.xml index 636cb8289fb..ad2c31f7b12 100644 --- a/addons/crm/crm_meeting_view.xml +++ b/addons/crm/crm_meeting_view.xml @@ -10,7 +10,7 @@ <field name="view_type">form</field> <field name="view_id" ref="crm.crm_case_categ_tree-view"/> <field name="domain">[('object_id.model', '=', 'crm.meeting')]</field> - <field name="context">{'object_id':'crm.meeting'}</field> + <field name="context" eval="{'object_id': ref('model_crm_meeting')}"/> <field name="help">Create different meeting categories to better organize and classify your meetings.</field> </record> @@ -294,14 +294,18 @@ <field name="arch" type="xml"> <search string="Search Meetings"> <group> - <field name="name" string="Subject"/> - <field name="partner_id"/> - <field name="section_id" widget="selection"> + <field name="name" string="Meeting / Partner" + domain="[('name','ilike',self), ('partner_id','ilike', self)]"/> + <field name="user_id" groups="base.group_extended"> + <filter icon="terp-personal" groups="base.group_extended" + domain="[('user_id','=',uid)]" + help="My Meetings" /> + </field> + <field name="section_id" widget="selection" groups="base.group_extended"> <filter icon="terp-personal+" groups="base.group_extended" - domain="['|', ('section_id', '=', context.get('section_id')), '|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]" + domain="['|', ('section_id.user_id','=',uid), ('section_id.member_ids', 'in', [uid])]" help="My Sales Team(s)" /> </field> - <field name="user_id"/> </group> </search> </field> diff --git a/addons/crm/crm_phonecall.py b/addons/crm/crm_phonecall.py index 9cfdddf159c..b9bb6d359b1 100644 --- a/addons/crm/crm_phonecall.py +++ b/addons/crm/crm_phonecall.py @@ -102,11 +102,6 @@ class crm_phonecall(crm_base, osv.osv): def case_close(self, cr, uid, ids, *args): """Overrides close for crm_case for setting close date - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of case Ids - @param *args: Tuple Value for additional Params """ res = True for phone in self.browse(cr, uid, ids): @@ -121,11 +116,6 @@ class crm_phonecall(crm_base, osv.osv): def case_reset(self, cr, uid, ids, *args): """Resets case as Todo - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of case Ids - @param *args: Tuple Value for additional Params """ res = super(crm_phonecall, self).case_reset(cr, uid, ids, args, 'crm.phonecall') self.write(cr, uid, ids, {'duration': 0.0}) @@ -134,25 +124,147 @@ class crm_phonecall(crm_base, osv.osv): def case_open(self, cr, uid, ids, *args): """Overrides cancel for crm_case for setting Open Date - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of case's Ids - @param *args: Give Tuple Value """ res = super(crm_phonecall, self).case_open(cr, uid, ids, *args) self.write(cr, uid, ids, {'date_open': time.strftime('%Y-%m-%d %H:%M:%S')}) return res + def schedule_another_phonecall(self, cr, uid, ids, schedule_time, call_summary, \ + user_id=False, section_id=False, categ_id=False, action='schedule', context=None): + """ + action :('schedule','Schedule a call'), ('log','Log a call') + """ + model_data = self.pool.get('ir.model.data') + phonecall_dict = {} + if not categ_id: + res_id = model_data._get_id(cr, uid, 'crm', 'categ_phone2') + if res_id: + categ_id = model_data.browse(cr, uid, res_id, context=context).res_id + for call in self.browse(cr, uid, ids, context=context): + if not section_id: + section_id = call.section_id and call.section_id.id or False + if not user_id: + user_id = call.user_id and call.user_id.id or False + vals = { + 'name' : call_summary, + 'user_id' : user_id or False, + 'categ_id' : categ_id or False, + 'description' : call.description or False, + 'date' : schedule_time, + 'section_id' : section_id or False, + 'partner_id': call.partner_id and call.partner_id.id or False, + 'partner_address_id': call.partner_address_id and call.partner_address_id.id or False, + 'partner_phone' : call.partner_phone, + 'partner_mobile' : call.partner_mobile, + 'priority': call.priority, + } + + new_id = self.create(cr, uid, vals, context=context) + self.case_open(cr, uid, [new_id]) + if action == 'log': + self.case_close(cr, uid, [new_id]) + phonecall_dict[call.id] = new_id + return phonecall_dict + + def _call_create_partner(self, cr, uid, phonecall, context=None): + partner = self.pool.get('res.partner') + partner_id = partner.create(cr, uid, { + 'name': phonecall.name, + 'user_id': phonecall.user_id.id, + 'comment': phonecall.description, + 'address': [] + }) + return partner_id + + def _call_set_partner(self, cr, uid, ids, partner_id, context=None): + return self.write(cr, uid, ids, {'partner_id' : partner_id}, context=context) + + def _call_create_partner_address(self, cr, uid, phonecall, partner_id, context=None): + address = self.pool.get('res.partner.address') + return address.create(cr, uid, { + 'partner_id': partner_id, + 'name': phonecall.name, + 'phone': phonecall.partner_phone, + }) + + def convert_partner(self, cr, uid, ids, action='create', partner_id=False, context=None): + """ + This function convert partner based on action. + if action is 'create', create new partner with contact and assign lead to new partner_id. + otherwise assign lead to specified partner_id + """ + if context is None: + context = {} + partner_ids = {} + for call in self.browse(cr, uid, ids, context=context): + if action == 'create': + if not partner_id: + partner_id = self._call_create_partner(cr, uid, call, context=context) + self._call_create_partner_address(cr, uid, call, partner_id, context=context) + self._call_set_partner(cr, uid, [call.id], partner_id, context=context) + partner_ids[call.id] = partner_id + return partner_ids + + + def redirect_phonecall_view(self, cr, uid, phonecall_id, context=None): + model_data = self.pool.get('ir.model.data') + # Select the view + tree_view = model_data.get_object_reference(cr, uid, 'crm', 'crm_case_phone_tree_view') + form_view = model_data.get_object_reference(cr, uid, 'crm', 'crm_case_phone_form_view') + search_view = model_data.get_object_reference(cr, uid, 'crm', 'view_crm_case_phonecalls_filter') + value = { + 'name': _('Phone Call'), + 'view_type': 'form', + 'view_mode': 'tree,form', + 'res_model': 'crm.phonecall', + 'res_id' : int(phonecall_id), + 'views': [(form_view and form_view[1] or False, 'form'), (tree_view and tree_view[1] or False, 'tree'), (False, 'calendar')], + 'type': 'ir.actions.act_window', + 'search_view_id': search_view and search_view[1] or False, + } + return value + + + def convert_opportunity(self, cr, uid, ids, opportunity_summary=False, partner_id=False, planned_revenue=0.0, probability=0.0, context=None): + partner = self.pool.get('res.partner') + address = self.pool.get('res.partner.address') + opportunity = self.pool.get('crm.lead') + opportunity_dict = {} + default_contact = False + for call in self.browse(cr, uid, ids, context=context): + if not partner_id: + partner_id = call.partner_id and call.partner_id.id or False + if partner_id: + address_id = partner.address_get(cr, uid, [partner_id])['default'] + if address_id: + default_contact = address.browse(cr, uid, address_id, context=context) + opportunity_id = opportunity.create(cr, uid, { + 'name': opportunity_summary or call.name, + 'planned_revenue': planned_revenue, + 'probability': probability, + 'partner_id': partner_id or False, + 'partner_address_id': default_contact and default_contact.id, + 'phone': default_contact and default_contact.phone, + 'mobile': default_contact and default_contact.mobile, + 'section_id': call.section_id and call.section_id.id or False, + 'description': call.description or False, + 'priority': call.priority, + 'type': 'opportunity', + 'phone': call.partner_phone or False, + }) + vals = { + 'partner_id': partner_id, + 'opportunity_id' : opportunity_id, + } + self.write(cr, uid, [call.id], vals) + self.case_close(cr, uid, [call.id]) + opportunity.case_open(cr, uid, [opportunity_id]) + opportunity_dict[call.id] = opportunity_id + return opportunity_dict + def action_make_meeting(self, cr, uid, ids, context=None): """ This opens Meeting's calendar view to schedule meeting on current Phonecall - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Phonecall to Meeting IDs - @param context: A standard dictionary for contextual values - @return : Dictionary value for created Meeting view """ value = {} diff --git a/addons/crm/crm_phonecall_demo.xml b/addons/crm/crm_phonecall_demo.xml index 8f0661ab8be..e80930284f4 100644 --- a/addons/crm/crm_phonecall_demo.xml +++ b/addons/crm/crm_phonecall_demo.xml @@ -83,9 +83,6 @@ <field eval="2.08" name="duration"/> </record> <record id="crm_case_phone06" model="crm.phonecall"> - <field name="partner_address_id" ref="base.res_partner_address_1"/> - <field eval="1" name="active"/> - <field name="partner_id" ref="base.res_partner_9"/> <field eval=""3"" name="priority"/> <field name="user_id" ref="base.user_root"/> <field eval=""Bad time"" name="name"/> diff --git a/addons/crm/crm_phonecall_view.xml b/addons/crm/crm_phonecall_view.xml index 54ea8bd7dfc..23f871d1581 100644 --- a/addons/crm/crm_phonecall_view.xml +++ b/addons/crm/crm_phonecall_view.xml @@ -10,7 +10,7 @@ <field name="view_type">form</field> <field name="view_id" ref="crm.crm_case_categ_tree-view"/> <field name="domain">[('object_id.model', '=', 'crm.phonecall')]</field> - <field name="context">{'object_id':'crm.phonecall'}</field> + <field name="context" eval="{'object_id': ref('model_crm_phonecall')}"/> <field name="help">Create specific phone call categories to better define the type of calls tracked in the system.</field> </record> diff --git a/addons/crm/report/crm_lead_report.py b/addons/crm/report/crm_lead_report.py index 24f48e7de86..a2215d28740 100644 --- a/addons/crm/report/crm_lead_report.py +++ b/addons/crm/report/crm_lead_report.py @@ -147,6 +147,7 @@ class crm_lead_report(osv.osv): extract('epoch' from (c.date_open-c.create_date))/(3600*24) as delay_open FROM crm_lead c + WHERE c.active = 'true' )""") crm_lead_report() diff --git a/addons/crm/report/crm_phonecall_report.py b/addons/crm/report/crm_phonecall_report.py index f68bea03880..ef3bcccdc9a 100644 --- a/addons/crm/report/crm_phonecall_report.py +++ b/addons/crm/report/crm_phonecall_report.py @@ -99,3 +99,5 @@ class crm_phonecall_report(osv.osv): crm_phonecall c )""") crm_phonecall_report() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm/res_partner.py b/addons/crm/res_partner.py index cbb05ee3e74..e2016f6d8aa 100644 --- a/addons/crm/res_partner.py +++ b/addons/crm/res_partner.py @@ -33,6 +33,44 @@ class res_partner(osv.osv): 'phonecall_ids': fields.one2many('crm.phonecall', 'partner_id',\ 'Phonecalls'), } + + def redirect_partner_form(self, cr, uid, partner_id, context=None): + search_view = self.pool.get('ir.model.data').get_object_reference(cr, uid, 'base', 'view_res_partner_filter') + value = { + 'domain': "[]", + 'view_type': 'form', + 'view_mode': 'form,tree', + 'res_model': 'res.partner', + 'res_id': int(partner_id), + 'view_id': False, + 'context': context, + 'type': 'ir.actions.act_window', + 'search_view_id': search_view and search_view[1] or False + } + return value + + def make_opportunity(self, cr, uid, ids, opportunity_summary, planned_revenue=0.0, probability=0.0, partner_id=None, context=None): + categ = self.pool.get('crm.case.categ') + address = self.address_get(cr, uid, ids) + categ_ids = categ.search(cr, uid, [('object_id.model','=','crm.lead')]) + lead = self.pool.get('crm.lead') + opportunity_ids = {} + for partner in self.browse(cr, uid, ids, context=context): + address = self.address_get(cr, uid, [partner.id])['default'] + if not partner_id: + partner_id = partner.id + opportunity_id = lead.create(cr, uid, { + 'name' : opportunity_summary, + 'planned_revenue' : planned_revenue, + 'probability' : probability, + 'partner_id' : partner_id, + 'partner_address_id' : address, + 'categ_id' : categ_ids and categ_ids[0] or '', + 'state' :'draft', + 'type': 'opportunity' + }) + opportunity_ids[partner_id] = opportunity_id + return opportunity_ids res_partner() diff --git a/addons/crm/test/customer_request.eml b/addons/crm/test/customer_request.eml new file mode 100644 index 00000000000..2c6c5e8110d --- /dev/null +++ b/addons/crm/test/customer_request.eml @@ -0,0 +1,30 @@ +Return-Path: <info@customer.com>
+X-Original-To: info@customer.com
+Delivered-To: sales@my.com
+Received: by mail.my.com (Postfix, from userid xxx)
+ id 822ECBFB67; Mon, 24 Oct 2011 07:36:51 +0200 (CEST)
+X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.my.com
+X-Spam-Level:
+X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED autolearn=ham
+ version=3.3.1
+Received: from [192.168.1.146]
+ (Authenticated sender: info@mail.customer.com)
+ by mail.customer.com (Postfix) with ESMTPSA id 07A30BFAB4
+ for <sales@my.com>; Mon, 24 Oct 2011 07:36:50 +0200 (CEST)
+Message-ID: <4EA4F95D.904@customer.com>
+Date: Mon, 24 Oct 2011 11:06:29 +0530
+From: Mr. John Right <info@customer.com>
+User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.14) Gecko/20110223 Lightning/1.0b2 Thunderbird/3.1.8
+MIME-Version: 1.0
+To: sales@my.com
+Subject: Fournir votre devis avec le meilleur prix.
+Content-Type: text/plain; charset=ISO-8859-1; format=flowed
+Content-Transfer-Encoding: 8bit
+
+Bonjour l'équipe de vente,
+
+Je veux acheter vos produits et services.
+
+S'il vous plaît fournir votre cotation avec le meilleur prix.
+
+Merci
diff --git a/addons/crm/test/process/cancel_lead.yml b/addons/crm/test/process/cancel_lead.yml new file mode 100644 index 00000000000..a5f85a14058 --- /dev/null +++ b/addons/crm/test/process/cancel_lead.yml @@ -0,0 +1,53 @@ +- + I cancel unqualified lead. +- + !python {model: crm.lead}: | + self.case_cancel(cr, uid, [ref("crm_case_itisatelesalescampaign0")]) +- + I check cancelled lead. +- + !assert {model: crm.lead, id: crm.crm_case_itisatelesalescampaign0, string: Lead is in cancel state}: + - state == "cancel" +- + I reset cancelled lead into unqualified lead. +- + !python {model: crm.lead}: | + self.case_reset(cr, uid, [ref("crm_case_itisatelesalescampaign0")]) +- + I check unqualified lead after reset. +- + !assert {model: crm.lead, id: crm.crm_case_itisatelesalescampaign0, string: Lead is in draft state}: + - state == "draft" +- + I put unqualified lead into pending. +- + !python {model: crm.lead}: | + self.case_pending(cr, uid, [ref("crm_case_itisatelesalescampaign0")]) +- + I check status of pending lead. +- + !assert {model: crm.lead, id: crm.crm_case_itisatelesalescampaign0, string: Lead is in pending state}: + - state == "pending" +- + I Escalate the Lead to Parent Team. +- + !python {model: crm.lead}: | + self.case_escalate(cr, uid, [ref("crm_case_itisatelesalescampaign0")]) +- + I check lead escalate to Parent Team. +- + !assert {model: crm.lead, id: crm.crm_case_itisatelesalescampaign0, string: Escalate lead to parent team}: + - section_id.name == "Sales Department" +- + I mark as lost the opportunity. +- + !python {model: crm.lead}: | + self.case_mark_lost(cr, uid, [ref("crm_case_itisatelesalescampaign0")]) +- + I check opportunity after lost. +- + !python {model: crm.lead}: | + lead = self.browse(cr, uid, ref('crm_case_itisatelesalescampaign0')) + assert lead.state == 'done', "lead is not done state" + assert lead.stage_id.id == ref('crm.stage_lead6'), 'Stage is not changed!' + assert lead.probability == 0.0, 'Probability is wrong!' diff --git a/addons/crm/test/process/communication_with_customer.yml b/addons/crm/test/process/communication_with_customer.yml new file mode 100644 index 00000000000..92e711ce016 --- /dev/null +++ b/addons/crm/test/process/communication_with_customer.yml @@ -0,0 +1,56 @@ +- + Customer interested in our product. so He send request by email to get more details. +- + Mail script will be fetched him request from mail server. so I process that mail after read EML file +- + !python {model: mail.thread}: | + import addons + request_file = open(addons.get_module_resource('crm','test', 'customer_request.eml'),'rb') + request_message = request_file.read() + self.message_process(cr, uid, 'crm.lead', request_message) +- + After getting the mail, I check details of new lead of that customer. +- + !python {model: crm.lead}: | + lead_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + assert lead_ids and len(lead_ids), "Lead is not created after getting request" + lead = self.browse(cr, uid, lead_ids[0], context=context) + assert not lead.partner_id, "Customer should be a new" + assert lead.name == "Fournir votre devis avec le meilleur prix.", "Subject does not match" +- + I reply him request with welcome message. +- + !python {model: mail.compose.message}: | + lead_ids = self.pool.get('crm.lead').search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + context.update({'active_model': 'crm.lead','active_id': lead_ids[0]}) + id = self.create(cr, uid, {'body_text': "Merci à l'intérêt pour notre produit.nous vous contacterons bientôt. Merci", 'email_from': 'sales@mycompany.com'}, context=context) + try: + self.send_mail(cr, uid, [id], context=context) + except: + pass +- + Now, I convert him into customer and put into regular customer list. +- + !python {model: crm.lead}: | + lead_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + self.convert_partner(cr, uid, lead_ids, context=context) +- + Now, I search customer in regular customer list. +- + !python {model: crm.lead}: | + partner_ids = self.message_partner_by_email(cr, uid, 'Mr. John Right <info@customer.com>') + assert partner_ids.get('partner_id'), "Customer is not found in regular customer list." +- + I convert one phonecall request as a customer and put into regular customer list. +- + !python {model: crm.phonecall}: | + self.convert_partner(cr, uid, [ref('crm.crm_case_phone06')], context=context) +- + I check converted phonecall to partner. +- + !python {model: res.partner}: | + partner_id = self.search(cr, uid, [('phonecall_ids', '=', ref('crm.crm_case_phone06'))]) + assert partner_id, "Customer is not found in regular customer list." + data = self.browse(cr, uid, partner_id, context=context)[0] + assert data.user_id.id == ref("base.user_root"), "User not assign properly" + assert data.name == "Bad time", "User not assign properly" diff --git a/addons/crm/test/process/lead2opportunity2win.yml b/addons/crm/test/process/lead2opportunity2win.yml new file mode 100644 index 00000000000..dbc04abae19 --- /dev/null +++ b/addons/crm/test/process/lead2opportunity2win.yml @@ -0,0 +1,90 @@ +- + In order to test convert customer lead into opportunity, +- + I open customer lead. +- + !python {model: crm.lead}: | + self.case_open(cr, uid, [ref("crm_case_qrecorp0")]) +- + I check lead state is "Open". +- + !assert {model: crm.lead, id: crm.crm_case_qrecorp0, string: Lead in open state}: + - state == "open" +- + I convert lead into opportunity for exiting customer. +- + !python {model: crm.lead}: | + self.convert_opportunity(cr, uid ,[ref("crm_case_qrecorp0")], ref("base.res_partner_agrolait")) +- + I check details of converted opportunity. +- + !python {model: crm.lead}: | + lead = self.browse(cr, uid, ref('crm_case_qrecorp0')) + assert lead.type == 'opportunity', 'Lead is not converted to opportunity!' + assert lead.partner_id.id == ref("base.res_partner_agrolait"), 'Partner missmatch!' + assert lead.stage_id.id == ref("stage_lead1"), 'Stage of opportunity is incorrect!' +- + Now I begin communication and schedule a phone call with the customer. +- + !python {model: crm.opportunity2phonecall}: | + import time + context.update({'active_model': 'crm.lead', 'active_ids': [ref('crm_case_qrecorp0')]}) + call_id = self.create(cr, uid, {'date': time.strftime('%Y-%m-%d %H:%M:%S'), + 'name': "Bonjour M. Jean, Comment êtes-vous? J'ai obtenu votre demande. peut-on parler au sujet de ce pour quelques minutes?"}, context=context) + self.action_schedule(cr, uid, [call_id], context=context) +- + I check that phonecall is scheduled for that opportunity. +- + !python {model: crm.phonecall}: | + ids = self.search(cr, uid, [('opportunity_id', '=', ref('crm_case_qrecorp0'))]) + assert len(ids), 'phonecall is not scheduled' +- + Now I schedule Meeting with Customer. +- + !python {model: crm.lead}: | + self.action_makeMeeting(cr, uid, [ref('crm_case_qrecorp0')]) + +- + After communicated with customer, I put some notes with Contract details. +- + !python {model: crm.add.note}: | + context.update({'active_model': 'crm.lead', 'active_id': ref('crm_case_qrecorp0')}) + note_id = self.create(cr, uid, {'body': "ces détails envoyés par le client sur le FAX pour la qualité"}) + self.action_add(cr, uid, [note_id], context=context) +- + Finally, I won this opportunity, so I close this opportunity. +- + !python {model: crm.lead}: | + self.case_mark_won(cr, uid, [ref("crm_case_qrecorp0")]) +- + I check details of the opportunity After won the opportunity. +- + !python {model: crm.lead}: | + lead = self.browse(cr, uid, ref('crm_case_qrecorp0')) + assert lead.state == 'done', 'Opportunity is not in done state!' + assert lead.stage_id.name == 'Won', ' Stage of Opportunity is not win!' + assert lead.probability == 100.0, 'probability revenue should not be 100.0!' +- + I convert mass lead into opportunity customer. +- + !python {model: crm.lead2opportunity.partner.mass}: | + context.update({'active_model': 'crm.lead', 'active_ids': [ref("crm_case_employee0"), ref("crm_case_electonicgoodsdealer0")], 'active_id': ref("crm_case_qrecorp0")}) + id = self.create(cr, uid, {'user_ids': [ref('base.user_root')], 'section_id': ref('crm.section_sales_department')}, context=context) + self.mass_convert(cr, uid, [id], context=context) +- + Now I check First lead converted on opportunity. +- + !python {model: crm.lead}: | + opp = self.browse(cr, uid, ref('crm_case_employee0')) + assert opp.name == "Need Info about Onsite Intervention", "Opportunity name not correct" + assert opp.type == 'opportunity', 'Lead is not converted to opportunity!' + assert opp.partner_id.name == "Agrolait", 'Partner missmatch!' + assert opp.stage_id.id == ref("stage_lead1"), 'Stage of probability is incorrect!' +- + Then check for Second lead converted on opportunity. +- + !python {model: crm.lead}: | + opp = self.browse(cr, uid, ref('crm_case_electonicgoodsdealer0')) + assert opp.name == "Interest in Your New Product", "Opportunity name not correct" + assert opp.type == 'opportunity', 'Lead is not converted to opportunity!' + assert opp.stage_id.id == ref("stage_lead1"), 'Stage of probability is incorrect!'
\ No newline at end of file diff --git a/addons/crm/test/process/merge_opportunity.yml b/addons/crm/test/process/merge_opportunity.yml new file mode 100644 index 00000000000..463e330fc10 --- /dev/null +++ b/addons/crm/test/process/merge_opportunity.yml @@ -0,0 +1,51 @@ +- + I make direct opportunity for Customer. +- + !python {model: crm.partner2opportunity}: | + context.update({'active_model': 'res.partner', 'active_ids': [ref("base.res_partner_9")]}) + res_id = self.create(cr, uid, {'name': "enquête pour l'achat de services"}, context=context) + self.make_opportunity(cr, uid, [res_id], context=context) +- + I make another opportunity from phonecall for same customer. +- + !python {model: crm.phonecall2opportunity}: | + context.update({'active_model': 'crm.phonecall', 'active_ids': [ref("crm.crm_case_phone06")]}) + res_id = self.create(cr, uid, {'name': "Quoi de prix de votre autre service?", 'partner_id': ref("base.res_partner_9")}, context=context) + self.make_opportunity(cr, uid, [res_id], context=context) +- + Now I merge all opportunities of customer. +- + !python {model: crm.lead}: | + opportunity_ids = self.search(cr, uid, [('partner_id','=', ref("base.res_partner_9"))]) + self.merge_opportunity(cr, uid, opportunity_ids, context=context) +- + I check for merged opportunities for customer. +- + !python {model: crm.lead}: | + merge_id = self.search(cr, uid, [('partner_id','=', ref("base.res_partner_9"))]) + assert merge_id, 'Fail to create Merge opportunity' + merge_data = self.browse(cr, uid, merge_id)[0] + assert merge_data.type == 'opportunity', 'Merged opportunity type not change!' + assert merge_data.partner_id.id == ref("base.res_partner_9"), 'Partner missmatch!' +- + Now I schedule another phonecall to customer after merged. +- + !python {model: crm.phonecall2phonecall}: | + context.update({'active_model': 'crm.phonecall', 'active_ids': [ref("crm.crm_case_phone06")]}) + res_id = self.create(cr, uid, {'name': "vos chances sont fusionnés en un seul"}, context=context) + self.action_schedule(cr, uid, [res_id], context=context) +- + I schedule Meeting on this phonecall. +- + !python {model: crm.phonecall}: | + self.action_make_meeting(cr, uid, [ref("crm.crm_case_phone06")]) +- + I setting Phone call to Held (Done). +- + !python {model: crm.phonecall}: | + self.case_close(cr, uid, [ref("crm.crm_case_phone06")]) +- + I check that the phone call is in 'Held' state. +- + !assert {model: crm.phonecall, id: crm.crm_case_phone06, string: Phone call Helded}: + - state == "done" diff --git a/addons/crm/test/process/segmentation.yml b/addons/crm/test/process/segmentation.yml new file mode 100644 index 00000000000..74500049290 --- /dev/null +++ b/addons/crm/test/process/segmentation.yml @@ -0,0 +1,16 @@ +- + In order to test segmentation process which create specific partner categories criteria, +- + I start the process. +- + !python {model: crm.segmentation}: | + self.process_start(cr, uid, [ref("crm_segmentation0")],context) + #Todo: Need to check after segmentation started + +- + I create rule Segmentation line record for partner . +- + !python {model: crm.segmentation.line}: | + id = self.create(cr, uid, {'name': "OpenERP partners",'expr_value': 25}) + self.test(cr, uid, [id],partner_id=0) + #Todo: Need to test segmantation line record
\ No newline at end of file diff --git a/addons/crm/test/test_crm_lead.yml b/addons/crm/test/test_crm_lead.yml deleted file mode 100644 index d5d3c6b933b..00000000000 --- a/addons/crm/test/test_crm_lead.yml +++ /dev/null @@ -1,154 +0,0 @@ -- - In order to test the CRM in OpenERP, I will do a customer qualification - process that starts with a fist contact with a customer (a lead), which will - be converted to a business opportunity and a partner. -- - I create a two new users "user_crm" and I assign the group "salesman". -- - !record {model: res.users, id: res_users_usercrm0}: - company_id: base.main_company - context_lang: en_US - context_section_id: crm.section_sales_department - groups_id: - - base.group_sale_salesman - login: user_crm - name: user_crm - password: user_crm - -- | - I start by creating a new lead "New Customer" and I provide an address to this - new customer, as well as an email "info@mycustomer.com". -- - !record {model: crm.lead, id: crm_lead_newcustomer0}: - email_from: info@mycustomer.com - name: New Customer - partner_name: Capegemini - partner_id: base.res_partner_9 - phone: (855) 924-4364 - mobile: (333) 715-1450 - section_id: crm.section_sales_department - referred: False -- | - I check that the lead is in 'draft' state. -- - !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in Draft}: - - state == "draft" -- - I open lead by click on "Open" button. -- - !python {model: crm.lead}: | - self.case_open(cr, uid, [ref("crm_lead_newcustomer0")]) - fields={ - 'day_open': 0.0, - 'day_close': 0.0 - } - self._compute_day(cr, uid, [ref("crm_lead_newcustomer0")], fields, context) -- | - I check that lead is now in 'open' state. -- - !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in open state}: - - state == "open" -- - I search id for case object. -- - !python {model: crm.case.categ}: | - self._find_object_id(cr, uid, context) -- | - As the lead seems to be a real business opportunity, I will convert it to a - partner - and a business opportunity by clicking on the "Convert" button. -- - !python {model: crm.lead}: | - lead = self.browse(cr, uid, ref('crm_lead_newcustomer0')) - action = self.convert_opportunity(cr, uid, [ref("crm_lead_newcustomer0")], {'active_ids': [ref("crm_lead_newcustomer0")]}) - assert action['res_model'] == 'crm.lead2opportunity.partner' -- - | - I select "create a new partner" option. -- - !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner_create_0}: - action: 'create' - name: 'convert' -- - Then, Click on "Create Opportunity" button. -- - !python {model: crm.lead2opportunity.partner}: | - self.action_apply(cr, uid, [ref("crm_lead2opportunity_partner_create_0")], {'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")}) -- - | - I select "Link to an existing partner" option. -- - !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner_create_1}: - action: 'exist' -- - Then, Click on "Create Opportunity" button. -- - !python {model: crm.lead2opportunity.partner}: | - self.action_apply(cr, uid, [ref("crm_lead2opportunity_partner_create_1")], {'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")}) -- - | - I select "Do not link to a partner" option. -- - !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner_create_2}: - action: 'nothing' -- - Then, Click on "Create Opportunity" button. -- - !python {model: crm.lead2opportunity.partner}: | - self.action_apply(cr, uid, [ref("crm_lead2opportunity_partner_create_2")], {'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")}) -- | - In order to check the opportunity is created or not, I check type. -- - !python {model: crm.lead}: | - lead = self.browse(cr, uid, ref("crm_lead_newcustomer0")) - assert lead.type == 'opportunity' - -- - I create mass report of lead to opprtunity partner. -- - !record {model: crm.lead2opportunity.partner.mass, id: crm_lead2opportunity_partner_mass0}: - user_ids: - - base.user_root - section_id: crm.section_sales_department -- - Then, execute that mass wizard. -- - !python {model: crm.lead2opportunity.partner.mass}: | - self.mass_convert(cr, uid, [ref("crm_lead2opportunity_partner_mass0")],{'active_ids': [ref("crm_lead_newcustomer0")], 'active_id': ref("crm_lead_newcustomer0")}) -- - I close lead by click on "close" button. -- - !python {model: crm.lead}: | - self.case_close(cr, uid, [ref("crm_lead_newcustomer0")]) -- | - I check that lead is now in 'done' state. -- - !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in done state}: - - state == "done" -- - I cancel lead by click on "cancel" button. -- - !python {model: crm.lead}: | - self.case_cancel(cr, uid, [ref("crm_lead_newcustomer0")]) -- | - I check that lead is now in 'cancel' state. -- - !assert {model: crm.lead, id: crm_lead_newcustomer0, string: Lead in cancel state}: - - state == "cancel" - -#- -# | -# yaml is also not working with smtp server and send new email. - -- | - I configure with smtp server. -- | - And I communicate with lead through send New mail to Lead using its email address from the user who is logged in. -- | - I check that communication history generated when send email to lead. -- | - Then, I add a cc which receive copy of future communication between partner and users by mail. - -- | - I Reply to last Email to lead with some document attached.and check that communication history generated or not. - diff --git a/addons/crm/test/test_crm_lead_case2.yml b/addons/crm/test/test_crm_lead_case2.yml deleted file mode 100644 index 23a654d31a8..00000000000 --- a/addons/crm/test/test_crm_lead_case2.yml +++ /dev/null @@ -1,151 +0,0 @@ -- - In order to do complete test the CRM in OpenERP, - I will create new full configured record and carry test on it. -- | - I Start by creating "Test Sales Team" with No Unlink. - I create a crm.case.section record. -- - !record {model: crm.case.section, id: crm_case_section_demosalesteam}: - code: DEMO - complete_name: Test Sales Team - name: Test Sales Team - allow_unlink: False - member_ids: - - base.user_admin - stage_ids: - - crm.stage_lead1 - - crm.stage_lead2 - - crm.stage_lead3 - - crm.stage_lead4 - - crm.stage_lead5 - - crm.stage_lead6 - working_hours: 0.0 - resource_calendar_id: resource.timesheet_group1 - parent_id: crm.section_sales_department -- - I assign segmentation. -- - !record {model: res.users, id: res_users_usercrm0}: - context_section_id: crm_case_section_demosalesteam -- | - I create a new lead "Test Customer" and I provide an address to this - demo customer and email "info@democustomer.com" and Also "Test Sales Team". -- - !record {model: crm.lead, id: crm_lead_democustomer}: - email_from: info@democustomer.com - name: Test Customer - partner_name: NotSoTinySARL - phone: (+32).81.81.37.00 - mobile: (+32).81.81.37.00 - section_id: crm_case_section_demosalesteam - referred: False - type: lead -- - I check that the lead is in 'draft' state. -- - !assert {model: crm.lead, id: crm_lead_democustomer, string: Lead in Draft}: - - state == "draft" -- - I create categories. -- - !record {model: crm.case.categ, id: crm_case_categ0}: - name: crm_case_section_demosalesteam - section_id: crm_case_section_demosalesteam -- - I assigning contact detail to the Lead "Test Customer" without address. -- - !python {model: crm.lead}: | - self.onchange_partner_address_id(cr, uid, ref("crm_lead_democustomer"), None, email=False) - -- - I assigning contact detail to the Lead "Test Customer" with address. -- - !python {model: crm.lead}: | - self.onchange_partner_address_id(cr, uid, ref("crm_lead_democustomer"), ref("base.res_partner_address_notsotinysarl0"), email=False) - -- - I selecting email "Opt-out" option for the "Test Customer" Lead. -- - !python {model: crm.lead}: | - self.on_change_optout(cr, uid, ref("crm_lead_democustomer"), True) - -- - I change the Opt-out to Opt-in to show email receive preference. -- - !python {model: crm.lead}: | - self.on_change_optin(cr, uid, ref("crm_lead_democustomer"), True) -- - I open lead by click on "Open" button. -- - !python {model: crm.lead}: | - self.case_open(cr, uid, [ref("crm_lead_democustomer")]) -- - I check that lead "Test Customer" is now in 'open' state. -- - !assert {model: crm.lead, id: crm_lead_democustomer, string: Lead in open state}: - - state == "open" -- - I reset the lead "Test Customer". -- - !python {model: crm.lead}: | - self.case_reset(cr, uid, [ref("crm_lead_democustomer")]) -- - I again opening lead by click on "Open" button. -- - !python {model: crm.lead}: | - self.case_open(cr, uid, [ref("crm_lead_democustomer")]) -- - I setting stage "New" for the lead "Test Customer". -- - !python {model: crm.lead}: | - self.stage_next(cr, uid, [ref("crm_lead_democustomer")], context={'stage_type': 'lead'}) -- - I try to Unlink the Lead "Test Customer" demo Lead. -- - !python {model: crm.lead}: | - try: - self.unlink(cr, uid, [ref("crm_lead_democustomer")]) - except: - pass -- - I setting Lead "Test Customer" to Pending State. -- - !python {model: crm.lead}: | - self.case_pending(cr, uid, [ref("crm_lead_democustomer")]) -- - I check that lead "Test Customer" is now in 'Pending' state. -- - !assert {model: crm.lead, id: crm_lead_democustomer, string: Lead in Pending state}: - - state == "pending" -- - I Escalate the Lead "Test Customer" Parent "Sales Team". -- - !python {model: crm.lead}: | - self.case_escalate(cr, uid, [ref("crm_lead_democustomer")]) -- - I add Internal Note Saying Escalated Reason. -- - !record {model: crm.add.note, id: crm_add_note_0}: - body: Sales Lead Has Been Escalated Due to Some Technical reason to the parent 'Sales - Team' - state: unchanged -- - I click a note button to attach the record. -- - !python {model: crm.add.note}: | - context['active_model'] = "crm.lead" - context['active_ids'] = [ref("crm_lead_democustomer")] - self.action_add(cr, uid, [ref("crm_add_note_0")], context=context) - -- - I Copying this lead "Test Customer" to New Lead. -- - !python {model: crm.lead}: | - self.copy(cr, uid, ref("crm_lead_democustomer")) -- - I checking the Lead Copied or Not. -- - !python {model: crm.lead}: | - sid = self.search(cr, uid, [('name', '=', 'Test Customer'),('state', '=', 'draft')]) - if not sid: - raise AssertionError("Lead is not copied Successfully") diff --git a/addons/crm/test/test_crm_meeting.yml b/addons/crm/test/test_crm_meeting.yml deleted file mode 100644 index 1aee11463dd..00000000000 --- a/addons/crm/test/test_crm_meeting.yml +++ /dev/null @@ -1,97 +0,0 @@ -- | - I will test Meetings which may be customer meeting or phonecall meeting or - internal Meeting. -- | - I start by creating a new Meeting. -- - !record {model: crm.meeting, id: crm_meeting_regardingpresentation0}: - categ_id: crm.categ_meet2 - date: !eval time.strftime('%Y-%m-%d 16:04:00') - date_deadline: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 00:04:00')" - duration: 8.0 - email_from: info@balmerinc.be - location: Ahmedabad - name: Regarding Presentation - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - rrule_type: weekly - section_id: crm.section_sales_department -- | - I check that the Meetings is in 'UnConfirmed' state. -- - !assert {model: crm.meeting, id: crm_meeting_regardingpresentation0}: - - state == "draft" -- | - I can set reminder on meeting if I put reminder "40 minutes before" . -- | - For that, I first create alarm. -- - !record {model: res.alarm, id: res_alarm_minituesbefore0}: - name: 40 minutes before - trigger_duration: 40 - trigger_interval: minutes - trigger_occurs: before - trigger_related: start -- | - I will assign this reminder. - -- !python {model: crm.meeting}: | - self.write(cr, uid, [ref('crm_meeting_regardingpresentation0')], {'alarm_id': ref("res_alarm_minituesbefore0")}) -- | - In order to check recurrence on meetings I will set Recurrency to Custom - and I set the fields so that the meeting will occur weekly on Monday and Friday 10 times. -- - !python {model: crm.meeting}: | - self.write(cr, uid, [ref("crm_meeting_regardingpresentation0")], {'fr': 1, 'mo': 1, 'th': 1, 'tu': 1, 'we':1, 'count':10, 'interval': 1, 'rrule_type': 'weekly', 'recurrency' : True}) - -- | - I can see from the calendar view that the meeting is scheduled on Monday and Friday - for 10 times. - -- - !python {model: crm.meeting}: | - self.fields_view_get(cr, uid, False, 'calendar', context) -- | - I will search for one of the recurrent event and count the number of meeting. -- - !python {model: crm.meeting}: | - import time - from datetime import datetime, date, timedelta - ids = self.search(cr, uid, [('date', '>=', time.strftime('%Y-%m-%d 00:00:00')), ('date', '<=', (datetime.now()+timedelta(31)).strftime('%Y-%m-%d 00:00:00')), ('name', '=', 'Regarding Presentation')], context={'virtual_id': True}) - assert len(ids) == 10 - -- | - If I want to edit meetings information for all occurrence I click on "Edit All" button. -- - !python {model: crm.meeting}: | - self.write(cr, uid, [ref('crm_meeting_regardingpresentation0')], {'edit_all':'True'},context) -- | - I can see that new meeting form is opened with same value. - I change some data for meeting and save it. - I can see from meeting's calendar view that all meeting occurrences are changed accordingly. -- - !record {model: crm.meeting, id: crm.crm_meeting_regardingpresentation0}: - alarm_id: base_calendar.alarm9 - rrule_type: weekly - -- | - In order to invite people for this meetings, I click on "Invite People" button - I can invite internal user. -- - !record {model: base_calendar.invite.attendee, id: base_calendar_invite_attendee_0}: - type: internal - send_mail: False - partner_id: base.res_partner_9 - user_ids: - - base.user_demo -- - I click on "Invite" button of "Invite attendee" wizard. -- - !python {model: base_calendar.invite.attendee}: | - self.do_invite(cr, uid, [ref('base_calendar_invite_attendee_0')], {'active_id': ref('crm_meeting_regardingpresentation0'), 'model' : 'crm.meeting', 'attendee_field':'attendee_ids'}) - -- | - After direct/indirect confirmation for meetings I can confirm meeting. -- - !python {model: crm.meeting}: | - self.case_open(cr, uid, [ref('crm_meeting_regardingpresentation0')]) diff --git a/addons/crm/test/test_crm_opportunity.yml b/addons/crm/test/test_crm_opportunity.yml deleted file mode 100644 index 734a1cae46c..00000000000 --- a/addons/crm/test/test_crm_opportunity.yml +++ /dev/null @@ -1,113 +0,0 @@ -- | - I start by creating a new Opportunity. And I select partner for opportunity. - I can see that after selecting partner his contact and email is automatically filled. -- - !record {model: crm.lead, id: crm_opportunity_abcfuelcounits0}: - email_from: info@balmerinc.be - name: 'ABC FUEL CO 829264 - 10002 units' - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - probability: 1.0 - stage_id: crm.stage_lead1 - categ_id: crm.categ_oppor2 - section_id: crm.section_sales_department -- | - I check that the opportunity is in 'New' state. -- - !assert {model: crm.lead, id: crm_opportunity_abcfuelcounits0}: - - state == "draft" - -- | - I check that phonecall record is created for that opportunity. -- - !python {model: crm.phonecall}: | - phone_obj = self.pool.get('crm.phonecall') -- | - I schedule Meeting on this current opportunity by clicking on "schedule - Meeting". -- - !python {model: crm.lead}: | - self.action_makeMeeting(cr, uid, [ref("crm_opportunity_abcfuelcounits0")]) - -- | - I can see that Meeting's calendar view is shown. - then I click on the date on which I want to schedule meeting. - I fill proper data for that meeting and save it. -- - !record {model: crm.meeting, id: crm_meeting_abcfuelcounits0}: - date: !eval time.strftime('%Y-%m-%d 00:00:00') - date_deadline: !eval time.strftime('%Y-%m-%d 08:00:00') - duration: 8.0 - email_from: info@balmerinc.be - name: 'ABC FUEL CO 829264 - 10002 units' - opportunity_id: 'crm_opportunity_abcfuelcounits0' - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - section_id: crm.section_sales_department - state: open -- | - In order to schedule a phonecall to the partner - I click on "schedule call" button and select planned date for the call. -- - !record {model: crm.opportunity2phonecall, id: crm_opportunity2phonecall_abcfuelcounits0}: - date: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 11:15:00')" - name: 'ABC FUEL CO 829264 - 10002 units' - section_id: crm.section_sales_department - user_id: base.user_demo - categ_id: crm.categ_phone1 -- | - schedule phonecall by opportunity2phoncall wizard. -- - !python {model: crm.opportunity2phonecall}: | - self.action_apply(cr, uid, [ref('crm_opportunity2phonecall_abcfuelcounits0')], {'active_ids': [ref("crm_opportunity_abcfuelcounits0")]}) -- | - I check that phonecall record is created for that opportunity. -- - !python {model: crm.phonecall}: | - phone_obj = self.pool.get('crm.phonecall') - ids = phone_obj.search(cr, uid, [('name', '=', 'ABC FUEL CO 829264 - 10002 units')]) - assert len(ids) -- | - I can see phonecall record after click on "Schedule call" wizard. -- - !record {model: crm.phonecall, id: crm_phonecall_abcfuelcounits0}: - date: !eval "(datetime.now() + timedelta(1)).strftime('%Y-%m-%d 11:15:00')" - duration: 3.0 - name: 'ABC FUEL CO 829264 - 10002 units' - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - section_id: crm.section_sales_department -- | - I Merge the opportunities. -- - for that create two opportunities first opportunity 'Test FUEL CO'. -- - !record {model: crm.lead, id: crm_opportunity_1}: - email_from: info@balmerinc.be - name: 'Test FUEL CO 829264 - 10002 units' - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - probability: 1.0 - stage_id: crm.stage_lead1 - categ_id: crm.categ_oppor2 - section_id: crm.section_sales_department -- - I create the opportunity 'FUEL CO'. -- - !record {model: crm.lead, id: crm_opportunity_2}: - email_from: info@balmerinc.be - name: 'FUEL CO 829264 - 10002 units' - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - probability: 1.0 - stage_id: crm.stage_lead1 - categ_id: crm.categ_oppor2 - section_id: crm.section_sales_department -- | - I Merge two Opportunities. -- - !python {model: crm.merge.opportunity}: | - op_list = [ref('crm_opportunity_1'),ref('crm_opportunity_2')] - op_ids=self.pool.get('crm.lead').browse(cr,uid,op_list) - lead_ids = [ref('crm_lead_newcustomer0')] - self.merge(cr, uid, op_ids, {'lead_ids': lead_ids}) diff --git a/addons/crm/test/test_crm_opportunity_case2.yml b/addons/crm/test/test_crm_opportunity_case2.yml deleted file mode 100644 index dc0dbe517f1..00000000000 --- a/addons/crm/test/test_crm_opportunity_case2.yml +++ /dev/null @@ -1,45 +0,0 @@ -- | - I start by creating a new Opportunity. And I select partner for opportunity. - I can see that after selecting partner his contact and email is automatically filled. -- - !record {model: crm.lead, id: crm_opportunity_demotestopportunity}: - email_from: info@balmerinc.be - name: 'Demo Test Opportunity' - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - probability: 1.0 - categ_id: crm.categ_oppor2 - section_id: crm.section_sales_department - type: opportunity -- - I check that the opportunity is in 'New' state. -- - !assert {model: crm.lead, id: crm_opportunity_demotestopportunity, string: Opportunity in Draft}: - - state == "draft" -- - I open opportunity by click on "Open" button. -- - !python {model: crm.lead}: | - self.case_open(cr, uid, [ref("crm_opportunity_demotestopportunity")]) -- - I change partner of the opportunity. -- - !python {model: crm.lead}: | - self.onchange_partner_id(cr, uid, [ref("crm_opportunity_demotestopportunity")], ref("base.res_partner_agrolait")) - -- - I change Contact Detail of the opportunity. -- - !python {model: crm.lead}: | - self.onchange_partner_address_id(cr, uid,[ref("crm_opportunity_demotestopportunity")], ref("base.res_partner_address_8invoice")) - -- - I change Opportunity to Won State. -- - !python {model: crm.lead}: | - self.case_mark_won(cr, uid, [ref("crm_opportunity_demotestopportunity")]) -- - I check that the opportunity is in 'Done' state. -- - !assert {model: crm.lead, id: crm_opportunity_demotestopportunity, string: Opportunity is Won}: - - state == "done" diff --git a/addons/crm/test/test_crm_partner2opportunity.yml b/addons/crm/test/test_crm_partner2opportunity.yml deleted file mode 100644 index fe026074f4f..00000000000 --- a/addons/crm/test/test_crm_partner2opportunity.yml +++ /dev/null @@ -1,25 +0,0 @@ -- | - I start by creating a new opportunity from partner. -- - !record {model: crm.partner2opportunity, id: crm_partner2opportunity_id_0}: - name: test - planned_revenue: 0.0 - partner_id: base.res_partner_9 - probability: 0.0 -- - I click on "Create Opportunity" button of this wizard. -- - !python {model: crm.partner2opportunity}: | - fields = { - 'name': 'test', - 'planned_revenue': '0.0', - 'partner_id': ref('base.res_partner_9'), - 'probability': '0.0' - } - self.default_get(cr, uid, fields, {"active_ids": [ref("crm_partner2opportunity_id_0")]}) -- | - In order to check the opportunity is created or not, I check type. -- - !python {model: crm.partner2opportunity}: | - opportunity = self.make_opportunity(cr, uid, [ref("crm_partner2opportunity_id_0")], {"active_ids": [ref("crm_partner2opportunity_id_0")]}) - assert True diff --git a/addons/crm/test/test_crm_phonecall.yml b/addons/crm/test/test_crm_phonecall.yml deleted file mode 100644 index 0754a5b9544..00000000000 --- a/addons/crm/test/test_crm_phonecall.yml +++ /dev/null @@ -1,116 +0,0 @@ -- | - I start by creating a new phonecall. -- - !record {model: crm.phonecall, id: crm_phonecall_interviewcall0}: - date: !eval time.strftime('%Y-%m-%d 08:00:00') - name: Interview call - duration: 2.0 - section_id: crm.section_sales_department -- - I select partner by click on "Create a Partner" button. -- - !record {model: crm.phonecall2partner, id: crm_phonecall2partner_1}: - action: exist - partner_id: base.res_partner_9 - -- - I click on "Continue" button of this wizard and make partner. -- - !python {model: crm.phonecall2partner}: | - - self._select_partner(cr, uid,{"active_ids": [ref("crm_phonecall_interviewcall0")]}) - self.open_create_partner(cr, uid, [ref("crm_phonecall2partner_1")], {"active_ids": [ref("crm_phonecall_interviewcall0")]}) - self.make_partner(cr, uid, [ref("crm_phonecall2partner_1")], {"active_ids": [ref("crm_phonecall_interviewcall0")]}) - -- | - As the success of phonecall seems to be a real business opportunity, I will convert - it to opportunity by clicking on the "Convert to Opportunity" button. -- - !record {model: crm.phonecall2opportunity, id: crm_phonecall2opportunity_interviewcall0}: - name: Interview call - partner_id: base.res_partner_9 - planned_revenue: 0.0 - probability: 0.0 -- | - I can see that a business opportunity is now assigned to this phonecall -- - !assert {model: crm.phonecall, id: crm_phonecall_interviewcall0}: - - opportunity_id != False -- - I click on "Convert" button of this wizard. -- - !python {model: crm.phonecall2opportunity}: | - self.action_apply(cr, uid, [ref("crm_phonecall2opportunity_interviewcall0")], {"active_id": ref("crm_phonecall_interviewcall0")}) -- | - And I check that the phonecall and the newly created business opportunity is linked - to same partner. -- - !python {model: crm.phonecall}: | - obj_phonecall = self.browse(cr, uid, ref('crm_phonecall_interviewcall0')) - ids = self.pool.get('crm.lead').search(cr, uid, [('name', '=', obj_phonecall.opportunity_id.name)]) - obj_opp = self.pool.get('crm.lead').browse(cr, uid, ids)[0] - assert obj_phonecall.partner_id == obj_opp.partner_id -- | - I schedule Meeting on this current phonecall by clicking on "schedule - Meeting". -- - !python {model: crm.phonecall}: | - self.action_make_meeting(cr, uid, [ref('crm_phonecall_interviewcall0')]) - -- | - I can see that Meeting's calendar view is shown. - then I click on the date on which I want schedule meeting. - I fill proper data for that meeting and save it. -- - !record {model: crm.meeting, id: crm_meeting_interviewcall0}: - alarm_id: base_calendar.alarm3 - date: !eval "'%s-%s-%s 09:00:00' %(datetime.now().year,datetime.now().month,datetime.now().day)" - date_deadline: !eval "'%s-%s-%s 17:00:00' %(datetime.now().year,datetime.now().month,datetime.now().day)" - duration: 8.0 - email_from: info@balmerinc.be - name: Interview call - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - phonecall_id: 'crm_phonecall_interviewcall0' - state: open - -- | - In order to schedule other phonecall to the partner - I click on "schedule other call" button. and plan for other call - I can see that it will open other phonecall view with some data same as current - phonecall. -- - !record {model: crm.phonecall2phonecall, id: crm_phonecall2phonecall_interviewcall0}: - date: !eval "'%s-%s-%s 19:49:00' %(datetime.now().year,datetime.now().month,datetime.now().day)" - name: Interview call - section_id: crm.section_sales_department - user_id: base.user_root - action: schedule - categ_id: crm.categ_phone1 -- - I click on "schedule other call" button. and plan for other call. -- - !record {model: crm.phonecall2phonecall, id: crm_phonecall2phonecall_interviewcall1}: - date: !eval "'%s-%s-%s 19:49:00' %(datetime.now().year,datetime.now().month,datetime.now().day)" - name: Interview call - section_id: crm.section_sales_department - user_id: base.user_root - action: log - categ_id: crm.categ_phone1 -- | - I click on "Schedule" button of this wizard. -- - !python {model: crm.phonecall2phonecall}: | - fields = { - 'name': 'Interview call', - 'section_id': ref('crm.section_sales_department'), - 'user_id': ref('base.user_root'), - 'categ_id': ref('crm.categ_phone1') - } - self.default_get(cr, uid, fields,{'active_id': ref('crm_phonecall_interviewcall0')}) - self.action_apply(cr, uid, [ref('crm_phonecall2phonecall_interviewcall0')], {'active_id': ref('crm_phonecall_interviewcall0')}) -- | - I click on "Schedule" button of this wizard with log option. -- - !python {model: crm.phonecall2phonecall}: | - self.action_apply(cr, uid, [ref('crm_phonecall2phonecall_interviewcall1')], {'active_id': ref('crm_phonecall_interviewcall0')}) diff --git a/addons/crm/test/test_crm_phonecall_case2.yml b/addons/crm/test/test_crm_phonecall_case2.yml deleted file mode 100644 index 1b07121183c..00000000000 --- a/addons/crm/test/test_crm_phonecall_case2.yml +++ /dev/null @@ -1,26 +0,0 @@ -- | - I start by creating a new phonecall. -- - !record {model: crm.phonecall, id: crm_phonecall_dummycall}: - date: !eval time.strftime('%Y-%m-%d 08:00:00') - name: Dummy call - duration: 0.0 - section_id: crm.section_sales_department - partner_id: base.res_partner_agrolait - state: open -- - I change Contact Detail of the Partner. -- - !python {model: crm.phonecall}: | - self.onchange_partner_address_id(cr, uid,[ref("crm_phonecall_dummycall")], ref("base.res_partner_address_8invoice")) - -- - I setting Phone call to Held (Done). -- - !python {model: crm.phonecall}: | - self.case_close(cr, uid, [ref("crm_phonecall_dummycall")]) -- - I check that the hone call is in 'Held' state. -- - !assert {model: crm.phonecall, id: crm_phonecall_dummycall, string: Phone call Helded}: - - state == "done" diff --git a/addons/crm/test/test_crm_recurrent_meeting.yml b/addons/crm/test/test_crm_recurrent_meeting.yml deleted file mode 100644 index 297ca8d5e4e..00000000000 --- a/addons/crm/test/test_crm_recurrent_meeting.yml +++ /dev/null @@ -1,106 +0,0 @@ -- - In order to test recurrent meetings in OpenERP, I create meetings with different recurrency. -- - I create a customer meeting record with daily recurrency. -- - !record {model: crm.meeting, id: crm_meeting_pricelistdiscussion0}: - categ_id: crm.categ_meet1 - count: 0.0 - date: '2011-01-05 00:00:00' - date_deadline: '2011-01-05 01:00:00' - day: 0.0 - duration: 1.0 - end_date: '2011-01-12' - end_type: end_date - name: Pricelist Discussion - recurrency: true - recurrent_uid: 0.0 - rrule: FREQ=DAILY;INTERVAL=1;UNTIL=20110112T235959Z - rrule_type: daily - sequence: 0.0 -- - I create another meeting record with weekly recurrency. -- - !record {model: crm.meeting, id: crm_meeting_changesindesigning0}: - categ_id: crm.categ_meet2 - count: 15 - date: '2011-01-22 11:05:05' - date_deadline: '2011-01-22 16:05:05' - day: 0.0 - duration: 5.0 - email_from: info@opensides.be - end_type: count - fr: true - mo: true - name: Changes in Designing - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - recurrency: true - recurrent_uid: 0.0 - rrule: FREQ=WEEKLY;BYDAY=FR,TU,TH,WE,MO;INTERVAL=1;COUNT=15 - rrule_type: weekly - section_id: crm.section_sales_department - sequence: 0.0 - th: true - tu: true - user_id: base.user_demo - we: true -- - I create a meeting record with monthly recurrency. -- - !record {model: crm.meeting, id: crm_meeting_reviewneeds0}: - categ_id: crm.categ_meet3 - count: 0.0 - date: '2011-01-20 10:02:02' - date_deadline: '2011-01-20 16:02:02' - day: 15 - duration: 6.0 - end_date: '2011-05-31' - end_type: end_date - name: Review needs - partner_address_id: base.res_partner_address_15 - partner_id: base.res_partner_11 - recurrency: true - recurrent_uid: 0.0 - rrule: FREQ=MONTHLY;INTERVAL=1;UNTIL=20110531T235959Z;BYMONTHDAY=15 - rrule_type: monthly - section_id: crm.section_sales_department - sequence: 0.0 - user_id: base.user_demo -- - I create a record for daily scrum meeting. -- - !record {model: crm.meeting, id: crm_meeting_scrummeeting0}: - categ_id: crm.categ_meet2 - count: 0.0 - date: '2011-01-06 00:00:00' - date_deadline: '2011-01-06 01:00:00' - day: 0.0 - duration: 1.0 - name: Scrum meeting - recurrency: true - recurrent_uid: 0.0 - rrule: FREQ=DAILY;INTERVAL=1 - rrule_type: daily - sequence: 0.0 -- - I create a meeting record for yearly recurrency. -- - !record {model: crm.meeting, id: crm_meeting_updatethedata0}: - categ_id: crm.categ_meet2 - count: 0.0 - date: '2011-01-18 13:12:49' - date_deadline: '2011-01-19 02:30:49' - day: 0.0 - duration: 13.300000000000001 - end_date: '2015-01-06' - end_type: end_date - name: Update the data - partner_address_id: base.res_partner_address_7 - partner_id: base.res_partner_4 - recurrency: true - recurrent_uid: 0.0 - rrule: FREQ=YEARLY;INTERVAL=1;UNTIL=20150106T235959Z - rrule_type: yearly - section_id: crm.section_sales_department - sequence: 0.0 diff --git a/addons/crm/test/test_crm_segmentation.yml b/addons/crm/test/test_crm_segmentation.yml deleted file mode 100644 index 5563f1ce52f..00000000000 --- a/addons/crm/test/test_crm_segmentation.yml +++ /dev/null @@ -1,38 +0,0 @@ -- | - I will test segmentation which create specific partner categories criteria. -- - I create a new segmentation record. -- - !record {model: crm.segmentation, id: crm_segmentation_id_0}: - categ_id: base.res_partner_category_5 - exclusif: true - name: segment - som_interval: 0.0 - sales_purchase_active : True -- - I start the process. -- - !python {model: crm.segmentation}: | - self.process_start(cr, uid, [ref("crm_segmentation_id_0")],context) -- - I continue the segmentation process. -- - !python {model: crm.segmentation}: | - context.update({'start': True}) - self.process_continue(cr, uid, [ref("crm_segmentation_id_0")], context) -- - I create the segmentation line. -- - !record {model: crm.segmentation.line, id: crm_segmentation_line_id_0}: - expr_name: sale - expr_operator: '>' - expr_value: 1000.0 - name: Rule1 - operator: or - segmentation_id: crm_segmentation_id_0 - -- - I check the Segmentation line record. -- - !python {model: crm.segmentation.line}: | - self.test(cr, uid, [ref("crm_segmentation_line_id_0")],partner_id=0) diff --git a/addons/crm/test/test_crm_stage_changes.yml b/addons/crm/test/test_crm_stage_changes.yml deleted file mode 100644 index 391a328bffe..00000000000 --- a/addons/crm/test/test_crm_stage_changes.yml +++ /dev/null @@ -1,96 +0,0 @@ -- - In order to test the changes on stage of a lead or an opportunity with OpenERP, - I create some leads and test the stage changes. -- - I want to change the probability to 0.0 when the opportunity is marked as lost. - So I set its Change probability automatically true. -- - !record {model: crm.case.stage, id: crm.stage_lead6}: - name: Lost - on_change: true - probability: 0.0 - section_ids: - - crm.section_sales_department - sequence: 0 -- - I create a lead 'Test Lead1'. -- - !record {model: crm.lead, id: crm_lead_openerppresentation0}: - categ_id: crm.categ_oppor4 - day_close: 0.0 - day_open: 0.0 - name: Test Lead1 - planned_revenue: 0.0 - probability: 10.0 - section_id: crm.section_sales_department -- - I open the lead. -- - !python {model: crm.lead}: | - self.case_open(cr, uid, [ref('crm_lead_openerppresentation0')]) -- - I assigning stage. -- - !python {model: crm.lead}: | - self.onchange_stage_id(cr, uid, [ref('crm_lead_openerppresentation0')], [], context) -- - I assigning percent. -- - !python {model: crm.lead}: | - self.stage_find_percent(cr, uid, 10.0, []) -- - I find that this lead can be converted to opportunity. -- - !record {model: crm.lead2opportunity.partner, id: crm_lead2opportunity_partner0}: - action: 'create' - name: 'convert' -- - So I convert the lead to opportunity. -- - !python {model: crm.lead2opportunity.partner}: | - self.action_apply(cr, uid, [ref('crm_lead2opportunity_partner0')], context={'active_ids': [ref('crm_lead_openerppresentation0')]}) -- - I check that lead is now converted to opportunity. -- - !python {model: crm.lead}: | - lead = self.browse(cr, uid, ref('crm_lead_openerppresentation0')) - assert lead.type == 'opportunity', 'Lead is not converted to opportunity!' -- - I mark this opportunity as lost. -- - !python {model: crm.lead}: | - self.case_mark_lost(cr, uid, [ref('crm_lead_openerppresentation0')]) -- - I check whether the probability is set according to stage change or not. -- - !python {model: crm.lead}: | - opportunity = self.browse(cr, uid, ref('crm_lead_openerppresentation0')) - assert opportunity.stage_id.id == ref('crm.stage_lead6'), 'Stage is not changed!' - assert opportunity.probability == 0.0, 'Probability is wrong!' -- - I create one more opportunity. -- - !record {model: crm.lead, id: crm_lead_test2}: - name: Partner Demo - type: opportunity - categ_id: crm.categ_oppor3 - planned_revenue: 50000.0 - probability: 100.0 - section_id: crm.section_sales_department -- - I open this opportunity. -- - !python {model: crm.lead}: | - self.case_open(cr, uid, [ref('crm_lead_test2')]) -- - I mark this opportunity as won. -- - !python {model: crm.lead}: | - self.case_mark_won(cr, uid, [ref('crm_lead_test2')]) -- - I check whether the stage is changed to 'Won' and probability is 100.0 or not. -- - !python {model: crm.lead}: | - opportunity = self.browse(cr, uid, ref('crm_lead_test2')) - assert opportunity.stage_id.id == ref('crm.stage_lead5'), 'Stage is not changed!' - assert opportunity.probability == 100.0, 'Probability is wrong!' diff --git a/addons/crm/test/ui/crm_demo.yml b/addons/crm/test/ui/crm_demo.yml new file mode 100644 index 00000000000..5ef40838466 --- /dev/null +++ b/addons/crm/test/ui/crm_demo.yml @@ -0,0 +1,29 @@ +- + I create lead record to call of partner onchange, stage onchange and Mailing opt-in onchange method. +- + !record {model: crm.lead, id: crm_case_shelvehouse}: + name: 'Need more info about your pc2' + partner_id: base.res_partner_theshelvehouse0 + type: opportunity + stage_id: crm.stage_lead1 + state: draft + optin: True +- + I create lead record to call Mailing opt-out onchange method. +- + !record {model: crm.lead, id: crm_case_mediapoleunits0}: + name: 'Need 20 Days of Consultancy' + type: opportunity + state: draft + optout: True +- + I create phonecall record to call partner onchange method. +- + !record {model: crm.phonecall, id: crm_case_phone05}: + name: 'Bad time' + partner_id: base.res_partner_5 +- + I setting next stage "New" for the lead. +- + !python {model: crm.lead}: | + self.stage_next(cr, uid, [ref("crm_case_qrecorp0")], context={'stage_type': 'lead'}) diff --git a/addons/crm/test/ui/delete_lead.yml b/addons/crm/test/ui/delete_lead.yml new file mode 100644 index 00000000000..472b22d0d2d --- /dev/null +++ b/addons/crm/test/ui/delete_lead.yml @@ -0,0 +1,5 @@ +- + I Unlink the Lead. +- + !python {model: crm.lead}: | + self.unlink(cr, uid, [ref("crm_case_qrecorp0")]) diff --git a/addons/crm/test/ui/duplicate_lead.yml b/addons/crm/test/ui/duplicate_lead.yml new file mode 100644 index 00000000000..6b349ca350c --- /dev/null +++ b/addons/crm/test/ui/duplicate_lead.yml @@ -0,0 +1,5 @@ +- + I make duplicate the Lead. +- + !python {model: crm.lead}: | + self.copy(cr, uid, ref("crm_case_qrecorp0")) diff --git a/addons/crm/wizard/__init__.py b/addons/crm/wizard/__init__.py index 3ebdceda437..2fc39c51505 100644 --- a/addons/crm/wizard/__init__.py +++ b/addons/crm/wizard/__init__.py @@ -24,11 +24,11 @@ import crm_add_note import crm_lead_to_partner import crm_lead_to_opportunity -import crm_opportunity_to_phonecall import crm_phonecall_to_phonecall +import crm_opportunity_to_phonecall import crm_phonecall_to_partner -import crm_phonecall_to_opportunity import crm_partner_to_opportunity +import crm_phonecall_to_opportunity import crm_merge_opportunities diff --git a/addons/crm/wizard/crm_add_note.py b/addons/crm/wizard/crm_add_note.py index 478f051fe58..6bd84bda21d 100644 --- a/addons/crm/wizard/crm_add_note.py +++ b/addons/crm/wizard/crm_add_note.py @@ -49,3 +49,5 @@ class crm_add_note(osv.osv_memory): return {'type': 'ir.actions.act_window_close'} crm_add_note() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm/wizard/crm_lead_to_opportunity.py b/addons/crm/wizard/crm_lead_to_opportunity.py index 87ab9229d26..52a79e4514c 100644 --- a/addons/crm/wizard/crm_lead_to_opportunity.py +++ b/addons/crm/wizard/crm_lead_to_opportunity.py @@ -54,6 +54,8 @@ class crm_lead2opportunity_partner(osv.osv_memory): email = False for lead in lead_obj.browse(cr, uid, opportunities, context=context): partner_id = lead.partner_id and lead.partner_id.id or False + + #TOFIX: use mail.mail_message.to_mail email = re.findall(r'([^ ,<@]+@[^> ,]+)', lead.email_from or '') email = map(lambda x: "'" + x + "'", email) @@ -93,139 +95,51 @@ class crm_lead2opportunity_partner(osv.osv_memory): def view_init(self, cr, uid, fields, context=None): """ This function checks for precondition before wizard executes - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values """ if context is None: context = {} lead_obj = self.pool.get('crm.lead') - for lead in lead_obj.browse(cr, uid, context.get('active_ids', []), context=context): if lead.state in ['done', 'cancel']: raise osv.except_osv(_("Warning !"), _("Closed/Cancelled Leads can not be converted into Opportunity")) return False - def _convert(self, cr, uid, ids, lead, partner_id, stage_ids, context=None): - leads = self.pool.get('crm.lead') - address_id = False - if partner_id: - address_id = self.pool.get('res.partner.address').search(cr, uid, - [('partner_id', '=', partner_id)], - order='create_date desc', - limit=1) - vals = { - 'planned_revenue': lead.planned_revenue, - 'probability': lead.probability, - 'name': lead.name, - 'partner_id': partner_id, - 'user_id': (lead.user_id and lead.user_id.id), - 'type': 'opportunity', - 'stage_id': stage_ids and stage_ids[0] or False, - 'date_action': time.strftime('%Y-%m-%d %H:%M:%S'), - } - if partner_id and address_id: - vals['partner_address_id'] = address_id[0] - else: - vals['partner_address_id'] = False - - lead.write(vals, context=context) - text = _('Converted to opportunity') - leads.message_append(cr, uid, [lead], text, body_text=text, context=context) - if lead.partner_id: - msg_ids = [ x.id for x in lead.message_ids] - self.pool.get('mail.message').write(cr, uid, msg_ids, { - 'partner_id': lead.partner_id.id - }, context=context) - leads.log(cr, uid, lead.id, _("Lead '%s' has been converted to an opportunity.") % lead.name) - - def send_mail_to_salesman(self, cr, uid, lead): - email_to = lead.user_id and lead.user_id.user_email - if not email_to: - return False - message_pool = self.pool.get('mail.message') - email_from = lead.section_id and lead.section_id.user_id and lead.section_id.user_id.user_email or email_to - partner = lead.partner_id and lead.partner_id.name or lead.partner_name - subject = "lead %s converted into opportunity" % lead.name - body = "Info \n Id : %s \n Subject: %s \n Partner: %s \n Description : %s " % (lead.id, lead.name, lead.partner_id.name, lead.description) - return message_pool.schedule_with_attach(cr, uid, email_from, [email_to], subject, body) + def _convert_opportunity(self, cr, uid, ids, vals, context=None): + if context is None: + context = {} + lead = self.pool.get('crm.lead') + partner_id = self._create_partner(cr, uid, ids, context=context) + lead_ids = vals.get('lead_ids', []) + user_ids = vals.get('user_ids', False) + team_id = vals.get('section_id', False) + return lead.convert_opportunity(cr, uid, lead_ids, partner_id, user_ids, team_id, context=context) + + def _merge_opportunity(self, cr, uid, ids, opportunity_ids, action='merge', context=None): + #TOFIX: is it usefully ? + if context is None: + context = {} + merge_opportunity = self.pool.get('crm.merge.opportunity') + res = False + #If we convert in mass, don't merge if there is no other opportunity but no warning + if action == 'merge' and (len(opportunity_ids) > 1 or not context.get('mass_convert') ): + self.write(cr, uid, ids, {'opportunity_ids' : [(6,0, [opportunity_ids[0].id])]}, context=context) + context.update({'lead_ids' : record_id, "convert" : True}) + res = merge_opportunity.merge(cr, uid, data.opportunity_ids, context=context) + return res def action_apply(self, cr, uid, ids, context=None): """ This converts lead to opportunity and opens Opportunity view - @param ids: ids of the leads to convert to opportunities - - @return : View dictionary opening the Opportunity form view """ if not context: context = {} - - record_id = context and context.get('active_ids') or False - if not record_id: - return {'type': 'ir.actions.act_window_close'} - - leads = self.pool.get('crm.lead') - models_data = self.pool.get('ir.model.data') - - # Get Opportunity views - result = models_data._get_id( - cr, uid, 'crm', 'view_crm_case_opportunities_filter') - opportunity_view_search = models_data.browse( - cr, uid, result, context=context).res_id - opportunity_view_form = models_data._get_id( - cr, uid, 'crm', 'crm_case_form_view_oppor') - opportunity_view_tree = models_data._get_id( - cr, uid, 'crm', 'crm_case_tree_view_oppor') - if opportunity_view_form: - opportunity_view_form = models_data.browse( - cr, uid, opportunity_view_form, context=context).res_id - if opportunity_view_tree: - opportunity_view_tree = models_data.browse( - cr, uid, opportunity_view_tree, context=context).res_id - - for lead in leads.browse(cr, uid, record_id, context=context): - if lead.section_id: - stage_ids = self.pool.get('crm.case.stage').search(cr, uid, [('sequence','>=',1), ('section_ids','=', lead.section_id.id)]) - else: - stage_ids = self.pool.get('crm.case.stage').search(cr, uid, [('sequence','>=',1)]) - - data = self.browse(cr, uid, ids[0], context=context) - - - if data.action == 'create': - partner_ids = [] - partner_ids = self._create_partner(cr, uid, ids, context=context) - partner_id = partner_ids and partner_ids[0] - elif data.action == 'exist': - partner_id = data.partner_id and data.partner_id.id - else: - partner_id = False - - self._convert(cr, uid, ids, lead, partner_id, stage_ids, context=context) - self.send_mail_to_salesman(cr, uid, lead) - #If we convert in mass, don't merge if there is no other opportunity but no warning - if data.name == 'merge' and (len(data.opportunity_ids) > 1 or not context.get('mass_convert') ): - merge_obj = self.pool.get('crm.merge.opportunity') - self.write(cr, uid, ids, {'opportunity_ids' : [(6,0, [data.opportunity_ids[0].id])]}, context=context) - context.update({'lead_ids' : record_id, "convert" : True}) - return merge_obj.merge(cr, uid, data.opportunity_ids, context=context) - - return { - 'name': _('Opportunity'), - 'view_type': 'form', - 'view_mode': 'form,tree', - 'res_model': 'crm.lead', - 'domain': [('type', '=', 'opportunity')], - 'res_id': int(lead.id), - 'view_id': False, - 'views': [(opportunity_view_form, 'form'), - (opportunity_view_tree, 'tree'), - (False, 'calendar'), (False, 'graph')], - 'type': 'ir.actions.act_window', - 'search_view_id': opportunity_view_search - } + + lead = self.pool.get('crm.lead') + lead_ids = context.get('active_ids', []) + data = self.browse(cr, uid, ids, context=context)[0] + self._convert_opportunity(cr, uid, ids, {'lead_ids': lead_ids}, context=context) + self._merge_opportunity(cr, uid, ids, data.opportunity_ids, data.action, context=context) + return lead.redirect_opportunity_view(cr, uid, lead_ids[0], context=context) crm_lead2opportunity_partner() @@ -240,55 +154,19 @@ class crm_lead2opportunity_mass_convert(osv.osv_memory): 'section_id': fields.many2one('crm.case.section', 'Sales Team'), } - - def mass_convert(self, cr, uid, ids, context=None): - lead_obj = self.pool.get('crm.lead') - if not context: - context = {} - - active_ids = context.get('active_ids') + def _convert_opportunity(self, cr, uid, ids, vals, context=None): data = self.browse(cr, uid, ids, context=context)[0] - - salesteam = data.section_id and data.section_id.id + salesteam_id = data.section_id and data.section_id.id or False + salesman = [] if data.user_ids: - salesmans = map(lambda x : x.id, data.user_ids) - index = 0 - else: - salesmans = False - - for lead_id in active_ids: - value = {} - if salesteam: - value['section_id'] = salesteam - if salesmans: - value['user_id'] = salesmans[index] - index += 1 - index = index < len(salesmans) and index or 0 - if value: - lead_obj.write(cr, uid, [lead_id], value, context=context) - - context['active_ids'] = [lead_id] - value = self.default_get(cr, uid, ['partner_id', 'opportunity_ids'], context=context) - value['opportunity_ids'] = [(6, 0, value['opportunity_ids'])] - self.write(cr, uid, ids, value, context=context) - - self.action_apply(cr, uid, ids, context=context) - - - - models_data = self.pool.get('ir.model.data') - result = models_data._get_id(cr, uid, 'crm', 'view_crm_case_opportunities_filter') - opportunity_view_search = models_data.browse(cr, uid, result, context=context).res_id - - return { - 'name': _('Opportunity'), - 'view_type': 'form', - 'view_mode': 'tree,form', - 'res_model': 'crm.lead', - 'domain': [('type', '=', 'opportunity'), ('id', 'in', active_ids)], - 'type': 'ir.actions.act_window', - 'search_view_id': opportunity_view_search, - } + salesman = [x.id for x in data.user_ids] + vals.update({'user_ids': salesman, 'section_id': salesteam_id}) + return super(crm_lead2opportunity_mass_convert, self)._convert_opportunity(cr, uid, ids, vals, context=context) + def mass_convert(self, cr, uid, ids, context=None): + value = self.default_get(cr, uid, ['partner_id', 'opportunity_ids'], context=context) + value['opportunity_ids'] = [(6, 0, value['opportunity_ids'])] + self.write(cr, uid, ids, value, context=context) + return self.action_apply(cr, uid, ids, context=context) crm_lead2opportunity_mass_convert() # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm/wizard/crm_lead_to_opportunity_view.xml b/addons/crm/wizard/crm_lead_to_opportunity_view.xml index 833c04c3575..5f8453768c0 100644 --- a/addons/crm/wizard/crm_lead_to_opportunity_view.xml +++ b/addons/crm/wizard/crm_lead_to_opportunity_view.xml @@ -65,6 +65,15 @@ </form> </field> </record> + + <record id="action_crm_lead2opportunity_partner" model="ir.actions.act_window"> + <field name="name">Create a Partner</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">crm.lead2opportunity.partner</field> + <field name="view_type">form</field> + <field name="view_id" ref="view_crm_lead2opportunity_partner"/> + <field name="target">new</field> + </record> <act_window id="action_crm_send_mass_convert" multi="True" diff --git a/addons/crm/wizard/crm_lead_to_partner.py b/addons/crm/wizard/crm_lead_to_partner.py index 861472949e2..c424d511639 100644 --- a/addons/crm/wizard/crm_lead_to_partner.py +++ b/addons/crm/wizard/crm_lead_to_partner.py @@ -21,11 +21,9 @@ from osv import osv, fields from tools.translate import _ -import re class crm_lead2partner(osv.osv_memory): """ Converts lead to partner """ - _name = 'crm.lead2partner' _description = 'Lead to Partner' @@ -35,171 +33,89 @@ class crm_lead2partner(osv.osv_memory): 'Action', required=True), 'partner_id': fields.many2one('res.partner', 'Partner'), } - def view_init(self, cr, uid, fields, context=None): """ This function checks for precondition before wizard executes - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - """ - - lead_obj = self.pool.get('crm.lead') + if context is None: + context = {} + model = context.get('active_model') + model = self.pool.get(model) rec_ids = context and context.get('active_ids', []) - for lead in lead_obj.browse(cr, uid, rec_ids, context=context): - if lead.partner_id: + for this in model.browse(cr, uid, rec_ids, context=context): + if this.partner_id: raise osv.except_osv(_('Warning !'), - _('A partner is already defined on this lead.')) + _('A partner is already defined.')) + + def _select_partner(self, cr, uid, context=None): + if context is None: + context = {} + lead = self.pool.get('crm.lead') + partner = self.pool.get('res.partner') + lead_ids = list(context and context.get('active_ids', []) or []) + if not len(lead_ids): + return False + this = lead.browse(cr, uid, lead_ids[0], context=context) + # Find partner address matches the email_from of the lead + res = lead.message_partner_by_email(cr, uid, this.email_from, context=context) + partner_id = res.get('partner_id', False) + # Find partner name that matches the name of the lead + if not partner_id and this.partner_name: + partner_ids = partner.search(cr, uid, [('name', '=', this.partner_name)], context=context) + if partner_ids and len(partner_ids): + partner_id = partner_ids[0] + return partner_id def default_get(self, cr, uid, fields, context=None): """ This function gets default values - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - - @return : default values of fields. """ - - lead_obj = self.pool.get('crm.lead') - partner_obj = self.pool.get('res.partner') - partner_id = False - - data = list(context and context.get('active_ids', []) or []) - res = super(crm_lead2partner, self).default_get(cr, uid, fields, context=context) - for lead in lead_obj.browse(cr, uid, data, context=context): - partner_ids = [] - # Find partner address matches the email_from of the lead - email = re.findall(r'([^ ,<@]+@[^> ,]+)', lead.email_from or '') - email = map(lambda x: "'" + x + "'", email) - if email: - cr.execute("""select partner_id from res_partner_address - where - substring(email from '([^ ,<@]+@[^> ,]+)') in (%s)""" % (','.join(email))) - partner_ids = map(lambda x: x[0], cr.fetchall()) - - # Find partner name that matches the name of the lead - if not partner_ids and lead.partner_name: - partner_ids = partner_obj.search(cr, uid, [('name', '=ilike', lead.partner_name)], context=context) - - partner_id = partner_ids and partner_ids[0] or False - if 'partner_id' in fields: - res.update({'partner_id': partner_id}) - if 'action' in fields: - res.update({'action': partner_id and 'exist' or 'create'}) - if 'opportunity_ids' in fields: - res.update({'opportunity_ids': data}) - + res = super(crm_lead2partner, self).default_get(cr, uid, fields, context=context) + partner_id = self._select_partner(cr, uid, context=context) + + if 'partner_id' in fields: + res.update({'partner_id': partner_id}) + if 'action' in fields: + res.update({'action': partner_id and 'exist' or 'create'}) + return res def open_create_partner(self, cr, uid, ids, context=None): """ This function Opens form of create partner. - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Lead to Partner's IDs - @param context: A standard dictionary for contextual values - - @return : Dictionary value for next form. """ - if context is None: - context = {} - view_obj = self.pool.get('ir.ui.view') - view_id = view_obj.search(cr, uid, [('model', '=', 'crm.lead2partner'), \ - ('name', '=', 'crm.lead2partner.view')]) + view_id = view_obj.search(cr, uid, [('model', '=', self._name), \ + ('name', '=', self._name+'.view')]) return { 'view_mode': 'form', 'view_type': 'form', 'view_id': view_id or False, - 'res_model': 'crm.lead2partner', + 'res_model': self._name, 'context': context, 'type': 'ir.actions.act_window', 'target': 'new', - } - + } def _create_partner(self, cr, uid, ids, context=None): """ This function Creates partner based on action. - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Lead to Partner's IDs - @param context: A standard dictionary for contextual values - - @return : Dictionary {}. """ if context is None: context = {} - - lead_obj = self.pool.get('crm.lead') - partner_obj = self.pool.get('res.partner') - contact_obj = self.pool.get('res.partner.address') - partner_ids = [] - partner_id = False - rec_ids = context and context.get('active_ids', []) - - for data in self.browse(cr, uid, ids, context=context): - for lead in lead_obj.browse(cr, uid, rec_ids, context=context): - if data.action == 'create': - partner_id = partner_obj.create(cr, uid, { - 'name': lead.partner_name or lead.contact_name or lead.name, - 'user_id': lead.user_id.id, - 'comment': lead.description, - 'address': [] - }) - contact_obj.create(cr, uid, { - 'partner_id': partner_id, - 'name': lead.contact_name, - 'phone': lead.phone, - 'mobile': lead.mobile, - 'email': lead.email_from, - 'fax': lead.fax, - 'title': lead.title and lead.title.id or False, - 'function': lead.function, - 'street': lead.street, - 'street2': lead.street2, - 'zip': lead.zip, - 'city': lead.city, - 'country_id': lead.country_id and lead.country_id.id or False, - 'state_id': lead.state_id and lead.state_id.id or False, - }) - - else: - if data.partner_id: - partner_id = data.partner_id.id - self.assign_partner(cr, uid, lead.id, partner_id) - partner_ids.append(partner_id) - return partner_ids - - - def assign_partner(self, cr, uid, lead_id, partner_id): - self.pool.get("crm.lead").write(cr, uid, [lead_id], {'partner_id' : partner_id}) - + lead = self.pool.get('crm.lead') + lead_ids = context and context.get('active_ids') or [] + data = self.browse(cr, uid, ids, context=context)[0] + partner_id = data.partner_id and data.partner_id.id or False + partner_ids = lead.convert_partner(cr, uid, lead_ids, data.action, partner_id, context=context) + return partner_ids[lead_ids[0]] def make_partner(self, cr, uid, ids, context=None): """ This function Makes partner based on action. - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Lead to Partner's IDs - @param context: A standard dictionary for contextual values - - @return : Dictionary value for created Partner form. """ - if context is None: - context = {} - - partner_ids = self._create_partner(cr, uid, ids, context=context) - return {'type': 'ir.actions.act_window_close'} + partner_id = self._create_partner(cr, uid, ids, context=context) + return self.pool.get('res.partner').redirect_partner_form(cr, uid, partner_id, context=context) crm_lead2partner() diff --git a/addons/crm/wizard/crm_merge_opportunities.py b/addons/crm/wizard/crm_merge_opportunities.py index f092d6ad0b6..381bb9871ea 100644 --- a/addons/crm/wizard/crm_merge_opportunities.py +++ b/addons/crm/wizard/crm_merge_opportunities.py @@ -26,195 +26,16 @@ class crm_merge_opportunity(osv.osv_memory): _name = 'crm.merge.opportunity' _description = 'Merge two Opportunities' - def _get_first_not_null_id(self, attr, ops, oldest): - if hasattr(oldest, attr) and getattr(oldest, attr): - return getattr(oldest, attr).id - - for op in ops: - if hasattr(op, attr) and getattr(op, attr): - return getattr(op, attr).id - return False - - def _get_first_not_null(self, attr, ops, oldest): - if hasattr(oldest, attr) and getattr(oldest, attr): - return getattr(oldest, attr) - - for op in ops: - if hasattr(op, attr) and getattr(op, attr): - return getattr(op, attr) - return False - - def _concat_all(self, attr, ops): - return ', '.join([getattr(op, attr) for op in ops if hasattr(op, attr) and getattr(op, attr)]) - - - def get_attachments(self, cr, uid, id, context=None): - proxy = self.pool.get('ir.attachment') - ids = proxy.search(cr, uid, [('res_model', '=', 'crm.lead'), ('res_id', '=', id)], context=context) - return proxy.browse(cr, uid, ids, context=context) - - def find_oldest(self, cr, uid, op_ids, context=None): - if not context: - context = {} - ids = [op_id.id for op_id in op_ids] - if context.get('convert'): - ids = list(set(ids) - set(context.get('lead_ids', False)) ) - lead_obj = self.pool.get('crm.lead') - op_id = lead_obj.search(cr, uid, [('id', 'in', ids)], order='create_date' , context=context) - if not op_id: - return False - opps = lead_obj.browse(cr, uid, [op_id[0]], context=context) - return opps[0] - - def _update_data(self, op_ids, oldest_opp): - data = { - 'partner_id': self._get_first_not_null_id('partner_id', op_ids, oldest_opp), # !! - 'title': self._get_first_not_null_id('title', op_ids, oldest_opp), - 'name' : self._get_first_not_null('name', op_ids, oldest_opp), #not lost - 'categ_id' : self._get_first_not_null_id('categ_id', op_ids, oldest_opp), # !! - 'channel_id' : self._get_first_not_null_id('channel_id', op_ids, oldest_opp), # !! - 'city' : self._get_first_not_null('city', op_ids, oldest_opp), # !! - 'company_id' : self._get_first_not_null_id('company_id', op_ids, oldest_opp), #!! - 'contact_name' : self._get_first_not_null('contact_name', op_ids, oldest_opp), #not lost - 'country_id' : self._get_first_not_null_id('country_id', op_ids, oldest_opp), #!! - 'partner_address_id' : self._get_first_not_null_id('partner_address_id', op_ids, oldest_opp), #!! - 'type_id' : self._get_first_not_null_id('type_id', op_ids, oldest_opp), #!! - 'user_id' : self._get_first_not_null_id('user_id', op_ids, oldest_opp), #!! - 'section_id' : self._get_first_not_null_id('section_id', op_ids, oldest_opp), #!! - 'state_id' : self._get_first_not_null_id('state_id', op_ids, oldest_opp), - 'description' : self._concat_all('description', op_ids), #not lost - 'email' : self._get_first_not_null('email', op_ids, oldest_opp), # !! - 'fax' : self._get_first_not_null('fax', op_ids, oldest_opp), - 'mobile' : self._get_first_not_null('mobile', op_ids, oldest_opp), - 'partner_name' : self._get_first_not_null('partner_name', op_ids, oldest_opp), - 'phone' : self._get_first_not_null('phone', op_ids, oldest_opp), - 'probability' : self._get_first_not_null('probability', op_ids, oldest_opp), - 'planned_revenue' : self._get_first_not_null('planned_revenue', op_ids, oldest_opp), - 'street' : self._get_first_not_null('street', op_ids, oldest_opp), - 'street2' : self._get_first_not_null('street2', op_ids, oldest_opp), - 'zip' : self._get_first_not_null('zip', op_ids, oldest_opp), - 'state' : 'open', - 'create_date' : self._get_first_not_null('create_date', op_ids, oldest_opp), - 'date_action_last': self._get_first_not_null('date_action_last', op_ids, oldest_opp), - 'date_action_next': self._get_first_not_null('date_action_next', op_ids, oldest_opp), - 'email_from' : self._get_first_not_null('email_from', op_ids, oldest_opp), - 'email_cc' : self._get_first_not_null('email_cc', op_ids, oldest_opp), - 'partner_name' : self._get_first_not_null('partner_name', op_ids, oldest_opp), - } - return data - - def merge(self, cr, uid, op_ids, context=None): - """ - :param opp_ids: list of opportunities ids to merge - """ - opp_obj = self.pool.get('crm.lead') - message_obj = self.pool.get('mail.message') - - lead_ids = context and context.get('lead_ids', []) or [] - - if len(op_ids) <= 1: - raise osv.except_osv(_('Warning !'),_('Please select more than one opportunities.')) - - opportunities = opp_obj.browse(cr, uid, lead_ids, context=context) - opportunities_list = list(set(op_ids) - set(opportunities)) - oldest_opp = self.find_oldest(cr, uid, op_ids, context=context) - if opportunities : - first_opportunity = opportunities[0] - tail_opportunities = opportunities_list - else: - first_opportunity = opportunities_list[0] - tail_opportunities = opportunities_list[1:] - data = self._update_data(op_ids, oldest_opp) - - #copy message into the first opportunity + merge attachement - count = 1 - first_attachments = self.get_attachments(cr, uid, first_opportunity, context=context) - for opp in tail_opportunities: - attachments = self.get_attachments(cr, uid, opp, context=context) - for first in first_attachments: - for attachment in attachments: - if attachment.name == first.name: - values = dict( - name = "%s (%s)" % (attachment.name, count,), - res_id = first_opportunity.id, - ) - attachment.write(values) - count+=1 - - for history in opp.message_ids: - message_obj.write(cr, uid, history.id, {'res_id': first_opportunity.id, 'subject' : _("From %s : %s") % (opp.name, history.subject) }, context=context) - - #Notification about loss of information - details = [] - subject = ['Merged opportunities :'] - for opp in op_ids: - subject.append(opp.name) - details.append(_('Merged Opportunity: %s\n Partner: %s\n Stage: %s\n Section: %s\n Salesman: %s\n Category: %s\n Channel: %s\n Company: %s\n Contact name: %s\n Email: %s\n Phone number: %s\n Fax: %s\n Mobile: %s\n State: %s\n Description: %s\n Probability: %s\n Planned revennue: %s\n Country: %s\n City: %s\n Street: %s\n Street 2: %s\n Zip 2: %s') % ( opp.name, opp.partner_id.name or '', - opp.stage_id.name or '', - opp.section_id.name or '', - opp.user_id.name or '', - opp.categ_id.name or '', - opp.channel_id.name or '', - opp.company_id.name or '', - opp.contact_name or '', - opp.email_from or '', - opp.phone or '', - opp.fax or '', - opp.mobile or '', - opp.state_id.name or '', - opp.description or '', - opp.probability or '', - opp.planned_revenue or '', - opp.country_id.name or '', - opp.city or '', - opp.street or '', - opp.street2 or '', - opp.zip or '', - )) - subject = subject[0] + ", ".join(subject[1:]) - details = "\n\n".join(details) - - opp_obj.message_append(cr, uid, [first_opportunity], subject, body_text=details) - #data.update({'message_ids' : [(6, 0 ,self._concat_o2m('message_ids', op_ids))]}) - opp_obj.write(cr, uid, [first_opportunity.id], data, context=context) - unlink_ids = map(lambda x: x.id, tail_opportunities) - opp_obj.unlink(cr, uid, unlink_ids, context=context) - - models_data = self.pool.get('ir.model.data') - - # Get Opportunity views - opportunity_view_form = models_data._get_id( - cr, uid, 'crm', 'crm_case_form_view_oppor') - opportunity_view_tree = models_data._get_id( - cr, uid, 'crm', 'crm_case_tree_view_oppor') - if opportunity_view_form: - opportunity_view_form = models_data.browse( - cr, uid, opportunity_view_form, context=context).res_id - if opportunity_view_tree: - opportunity_view_tree = models_data.browse( - cr, uid, opportunity_view_tree, context=context).res_id - - return { - 'name': _('Opportunity'), - 'view_type': 'form', - 'view_mode': 'tree, form', - 'res_model': 'crm.lead', - 'domain': [('type', '=', 'opportunity')], - 'res_id': int(first_opportunity.id), - 'view_id': False, - 'views': [(opportunity_view_form, 'form'), - (opportunity_view_tree, 'tree'), - (False, 'calendar'), (False, 'graph')], - 'type': 'ir.actions.act_window', - } - - def action_merge(self, cr, uid, ids, context=None): - obj_opportunity = self.browse(cr, uid, ids[0], context=context) - op_ids = obj_opportunity.opportunity_ids - self.write(cr, uid, ids, {'opportunity_ids' : [(6,0, [op_ids[0].id])]}, context=context) - context['lead_ids'] = [op_ids[0].id] - return self.merge(cr, uid, op_ids, context) + lead = self.pool.get('crm.lead') + record = self.browse(cr, uid, ids[0], context=context) + opportunities = record.opportunity_ids + #TOFIX: why need to check lead_ids here + lead_ids = [opportunities[0].id] + self.write(cr, uid, ids, {'opportunity_ids' : [(6,0, lead_ids)]}, context=context) + context['lead_ids'] = lead_ids + merge_id = lead.merge_opportunity(cr, uid, [x.id for x in opportunities], context=context) + return lead.redirect_opportunity_view(cr, uid, merge_id, context=context) _columns = { 'opportunity_ids' : fields.many2many('crm.lead', 'merge_opportunity_rel', 'merge_id', 'opportunity_id', 'Opportunities', domain=[('type', '=', 'opportunity')]), @@ -223,13 +44,6 @@ class crm_merge_opportunity(osv.osv_memory): def default_get(self, cr, uid, fields, context=None): """ This function gets default values - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current users ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - - @return : default values of fields. """ record_ids = context and context.get('active_ids', False) or False res = super(crm_merge_opportunity, self).default_get(cr, uid, fields, context=context) diff --git a/addons/crm/wizard/crm_opportunity_to_phonecall.py b/addons/crm/wizard/crm_opportunity_to_phonecall.py index b0bfbf3b817..a45c87b1a6f 100644 --- a/addons/crm/wizard/crm_opportunity_to_phonecall.py +++ b/addons/crm/wizard/crm_opportunity_to_phonecall.py @@ -28,36 +28,11 @@ import time class crm_opportunity2phonecall(osv.osv_memory): """Converts Opportunity to Phonecall""" - + _inherit = 'crm.phonecall2phonecall' _name = 'crm.opportunity2phonecall' _description = 'Opportunity to Phonecall' - _columns = { - 'name' : fields.char('Call summary', size=64, required=True, select=1), - 'user_id' : fields.many2one('res.users', "Assign To"), - 'contact_name':fields.char('Contact', size=64), - 'phone':fields.char('Phone', size=64), - 'partner_id' : fields.many2one('res.partner', "Partner"), - 'date': fields.datetime('Date'), - 'section_id': fields.many2one('crm.case.section', 'Sales Team'), - 'categ_id': fields.many2one('crm.case.categ', 'Category', \ - domain="['|',('section_id','=',False),('section_id','=',section_id),\ - ('object_id.model', '=', 'crm.phonecall')]"), - 'action': fields.selection([('schedule','Schedule a call'), ('log','Log a call')], 'Action', required=True), - 'note':fields.text('Note'), - } - def default_get(self, cr, uid, fields, context=None): - """ - This function gets default values - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - - @return : default values of fields. - """ opp_obj = self.pool.get('crm.lead') categ_id = False data_obj = self.pool.get('ir.model.data') @@ -66,8 +41,8 @@ class crm_opportunity2phonecall(osv.osv_memory): categ_id = data_obj.browse(cr, uid, res_id, context=context).res_id record_ids = context and context.get('active_ids', []) or [] - res = super(crm_opportunity2phonecall, self).default_get(cr, uid, fields, context=context) - res.update({'action': 'log', 'date': time.strftime('%Y-%m-%d %H:%M:%S')}) + res = {} + res.update({'action': 'schedule', 'date': time.strftime('%Y-%m-%d %H:%M:%S')}) for opp in opp_obj.browse(cr, uid, record_ids, context=context): if 'name' in fields: res.update({'name': opp.name}) @@ -87,84 +62,20 @@ class crm_opportunity2phonecall(osv.osv_memory): res.update({'phone': opp.phone or (opp.partner_address_id and opp.partner_address_id.phone or False)}) return res - def action_cancel(self, cr, uid, ids, context=None): - """ - Closes Opportunity to Phonecall form - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Opportunity to Phonecall's IDs - @param context: A standard dictionary for contextual values - """ - return {'type': 'ir.actions.act_window_close'} - - def action_apply(self, cr, uid, ids, context=None): - """ - This converts Opportunity to Phonecall and opens Phonecall view - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user's ID for security checks, - @param ids: List of Opportunity to Phonecall IDs - @param context: A standard dictionary for contextual values - - @return : Dictionary value for created Opportunity form - """ + def action_schedule(self, cr, uid, ids, context=None): value = {} - record_ids = context and context.get('active_ids', []) or [] - - phonecall_obj = self.pool.get('crm.phonecall') - opp_obj = self.pool.get('crm.lead') - mod_obj = self.pool.get('ir.model.data') - result = mod_obj._get_id(cr, uid, 'crm', 'view_crm_case_phonecalls_filter') - res = mod_obj.read(cr, uid, result, ['res_id']) - - data_obj = self.pool.get('ir.model.data') - - # Select the view - id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_tree_view') - id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_form_view') - if id2: - id2 = data_obj.browse(cr, uid, id2, context=context).res_id - if id3: - id3 = data_obj.browse(cr, uid, id3, context=context).res_id - - for this in self.browse(cr, uid, ids, context=context): - for opp in opp_obj.browse(cr, uid, record_ids, context=context): - vals = { - 'name' : opp.name, - 'case_id' : opp.id, - 'user_id' : this.user_id and this.user_id.id or False, - 'categ_id' : this.categ_id.id, - 'description' : opp.description or False, - 'date' : this.date, - 'section_id' : this.section_id.id or False, - 'partner_id': opp.partner_id and opp.partner_id.id or False, - 'partner_address_id': opp.partner_address_id and opp.partner_address_id.id or False, - 'partner_phone' : opp.phone or (opp.partner_address_id and opp.partner_address_id.phone or False), - 'partner_mobile' : opp.partner_address_id and opp.partner_address_id.mobile or False, - 'priority': opp.priority, - 'opportunity_id': opp.id, - 'date_open': time.strftime('%Y-%m-%d %H:%M:%S') - } - - new_case = phonecall_obj.create(cr, uid, vals, context=context) - - if this.action == 'log': - phonecall_obj.case_close(cr, uid, [new_case]) - return {'type': 'ir.actions.act_window_close'} - - value = { - 'name': _('Phone Call'), - 'domain': "[('user_id','=',%s),('opportunity_id','=',%s)]" % (uid,opp.id), - 'view_type': 'form', - 'view_mode': 'tree,form', - 'res_model': 'crm.phonecall', - 'res_id' : new_case, - 'views': [(id3, 'form'), (id2, 'tree'), (False, 'calendar')], - 'type': 'ir.actions.act_window', - 'search_view_id': res['res_id'], - } - return value + if context is None: + context = {} + phonecall = self.pool.get('crm.phonecall') + opportunity_ids = context and context.get('active_ids') or [] + opportunity = self.pool.get('crm.lead') + data = self.browse(cr, uid, ids, context=context)[0] + call_ids = opportunity.schedule_phonecall(cr, uid, opportunity_ids, data.date, data.name, \ + data.note, data.phone, data.contact_name, data.user_id and data.user_id.id or False, \ + data.section_id and data.section_id.id or False, \ + data.categ_id and data.categ_id.id or False, \ + action=data.action, context=context) + return phonecall.redirect_phonecall_view(cr, uid, call_ids[opportunity_ids[0]], context=context) crm_opportunity2phonecall() diff --git a/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml b/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml index 980b93500d2..a12bd92115c 100644 --- a/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml +++ b/addons/crm/wizard/crm_opportunity_to_phonecall_view.xml @@ -16,24 +16,19 @@ <field name="name"/> <field name="date" string="Planned Date" attrs="{'invisible': [('action','=','log')]}"/> <newline/> - <group colspan="4"> - <field name="partner_id" readonly="True"/> - <field name="categ_id" string="Type" widget="selection" domain="[('object_id.model', '=', 'crm.phonecall')]"/> - <field name="contact_name"/> - <field name="phone"/> - </group> - <group colspan="4"> - <field name="user_id" attrs="{'invisible': [('action','=','log')]}"/> - <field name="section_id" widget="selection" attrs="{'invisible': [('action','=','log')]}"/> - </group> - <group colspan="4"> - <field name="note"/> - </group> + <field name="partner_id" readonly="True"/> + <field name="categ_id" string="Type" widget="selection" domain="[('object_id.model', '=', 'crm.phonecall')]"/> + <field name="contact_name"/> + <field name="phone"/> + <field name="user_id" attrs="{'invisible': [('action','=','log')]}"/> + <field name="section_id" widget="selection" attrs="{'invisible': [('action','=','log')]}"/> + <separator string="Notes" colspan="4"/> + <field name="note" colspan="4" nolabel="1"/> <separator string="" colspan="4"/> <group colspan="4" col="3"> <button name="action_cancel" string="_Cancel" icon="gtk-cancel" special="cancel" /> - <button name="action_apply" type="object" string="Log call" icon="gtk-ok" attrs="{'invisible' : [('action', '!=', 'log')]}" /> - <button name="action_apply" type="object" string="Schedule call" icon="gtk-ok" attrs="{'invisible' : [('action', '!=', 'schedule')]}" /> + <button name="action_schedule" type="object" string="Log call" icon="gtk-ok" attrs="{'invisible' : [('action', '!=', 'log')]}" /> + <button name="action_schedule" type="object" string="Schedule call" icon="gtk-ok" attrs="{'invisible' : [('action', '!=', 'schedule')]}" /> </group> </form> </field> diff --git a/addons/crm/wizard/crm_partner_to_opportunity.py b/addons/crm/wizard/crm_partner_to_opportunity.py index 4d24bd5b78f..6322d0341c1 100644 --- a/addons/crm/wizard/crm_partner_to_opportunity.py +++ b/addons/crm/wizard/crm_partner_to_opportunity.py @@ -35,16 +35,15 @@ class crm_partner2opportunity(osv.osv_memory): 'partner_id': fields.many2one('res.partner', 'Partner'), } + def action_cancel(self, cr, uid, ids, context=None): + """ + Closes Partner 2 Opportunity + """ + return {'type':'ir.actions.act_window_close'} + def default_get(self, cr, uid, fields, context=None): """ This function gets default values - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - - @return : default values of fields. """ partner_obj = self.pool.get('res.partner') data = context and context.get('active_ids', []) or [] @@ -58,56 +57,17 @@ class crm_partner2opportunity(osv.osv_memory): return res def make_opportunity(self, cr, uid, ids, context=None): - """ - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param context: A standard dictionary for contextual values - """ - - data = context and context.get('active_ids', []) or [] - make_opportunity = self.pool.get('crm.partner2opportunity') - data_obj = self.pool.get('ir.model.data') - part_obj = self.pool.get('res.partner') - categ_obj = self.pool.get('crm.case.categ') - case_obj = self.pool.get('crm.lead') - - for make_opportunity_obj in make_opportunity.browse(cr, uid, ids, context=context): - result = data_obj._get_id(cr, uid, 'crm', 'view_crm_case_opportunities_filter') - res = data_obj.read(cr, uid, result, ['res_id']) - - id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_form_view_oppor') - id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_tree_view_oppor') - if id2: - id2 = data_obj.browse(cr, uid, id2, context=context).res_id - if id3: - id3 = data_obj.browse(cr, uid, id3, context=context).res_id - - address = part_obj.address_get(cr, uid, data) - categ_ids = categ_obj.search(cr, uid, [('object_id.model','=','crm.lead')]) - - opp_id = case_obj.create(cr, uid, { - 'name' : make_opportunity_obj.name, - 'planned_revenue' : make_opportunity_obj.planned_revenue, - 'probability' : make_opportunity_obj.probability, - 'partner_id' : make_opportunity_obj.partner_id.id, - 'partner_address_id' : address['default'], - 'categ_id' : categ_ids and categ_ids[0] or '', - 'state' :'draft', - 'type': 'opportunity' - }) - value = { - 'name' : _('Opportunity'), - 'view_type' : 'form', - 'view_mode' : 'form,tree', - 'res_model' : 'crm.lead', - 'res_id' : opp_id, - 'view_id' : False, - 'views' : [(id2, 'form'), (id3, 'tree'), (False, 'calendar'), (False, 'graph')], - 'type' : 'ir.actions.act_window', - 'search_view_id' : res['res_id'] - } - return value + partner_ids = context and context.get('active_ids', []) or [] + partner = self.pool.get('res.partner') + lead = self.pool.get('crm.lead') + data = self.browse(cr, uid, ids, context=context)[0] + opportunity_ids = partner.make_opportunity(cr, uid, partner_ids, + data.name, + data.planned_revenue, + data.probability, + ) + opportunity_id = opportunity_ids[partner_ids[0]] + return lead.redirect_opportunity_view(cr, uid, opportunity_id, context=context) crm_partner2opportunity() diff --git a/addons/crm/wizard/crm_partner_to_opportunity_view.xml b/addons/crm/wizard/crm_partner_to_opportunity_view.xml index 1111bbbbc50..f75f3d5b90e 100644 --- a/addons/crm/wizard/crm_partner_to_opportunity_view.xml +++ b/addons/crm/wizard/crm_partner_to_opportunity_view.xml @@ -16,7 +16,7 @@ <field name="probability"/> <separator string="" colspan="4" /> <group col="4" colspan="4"> - <button special="cancel" string="_Cancel" icon="gtk-cancel"/> + <button special="cancel" string="Cancel" icon="gtk-cancel"/> <button name="make_opportunity" string="Create Opportunity" type="object" icon="gtk-ok"/> </group> </form> diff --git a/addons/crm/wizard/crm_phonecall_to_opportunity.py b/addons/crm/wizard/crm_phonecall_to_opportunity.py index 549afa0559b..7305cbd8b5f 100644 --- a/addons/crm/wizard/crm_phonecall_to_opportunity.py +++ b/addons/crm/wizard/crm_phonecall_to_opportunity.py @@ -26,97 +26,31 @@ class crm_phonecall2opportunity(osv.osv_memory): """ Converts Phonecall to Opportunity""" _name = 'crm.phonecall2opportunity' + _inherit = 'crm.partner2opportunity' _description = 'Phonecall To Opportunity' - def action_cancel(self, cr, uid, ids, context=None): - """ - Closes Phonecall to Opportunity form - """ - - return {'type':'ir.actions.act_window_close'} - - - def action_apply(self, cr, uid, ids, context=None): + def make_opportunity(self, cr, uid, ids, context=None): """ This converts Phonecall to Opportunity and opens Phonecall view """ - record_id = context and context.get('active_id', False) or False - if record_id: - opp_obj = self.pool.get('crm.lead') - phonecall_obj = self.pool.get('crm.phonecall') - case = phonecall_obj.browse(cr, uid, record_id, context=context) - data_obj = self.pool.get('ir.model.data') - result = data_obj._get_id(cr, uid, 'crm', 'view_crm_case_opportunities_filter') - res = data_obj.read(cr, uid, result, ['res_id']) - id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_form_view_oppor') - id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_tree_view_oppor') - if id2: - id2 = data_obj.browse(cr, uid, id2, context=context).res_id - if id3: - id3 = data_obj.browse(cr, uid, id3, context=context).res_id - - for this in self.browse(cr, uid, ids, context=context): - address = None - if this.partner_id: - address_id = self.pool.get('res.partner').address_get(cr, uid, [this.partner_id.id]) - if address_id['default']: - address = self.pool.get('res.partner.address').browse(cr, uid, address_id['default'], context=context) - new_opportunity_id = opp_obj.create(cr, uid, { - 'name': this.name, - 'planned_revenue': this.planned_revenue, - 'probability': this.probability, - 'partner_id': this.partner_id and this.partner_id.id or False, - 'partner_address_id': address and address.id, - 'phone': address and address.phone, - 'mobile': address and address.mobile, - 'section_id': case.section_id and case.section_id.id or False, - 'description': case.description or False, - 'phonecall_id': case.id, - 'priority': case.priority, - 'type': 'opportunity', - 'phone': case.partner_phone or False, - }) - vals = { - 'partner_id': this.partner_id.id, - 'opportunity_id' : new_opportunity_id, - } - phonecall_obj.write(cr, uid, [case.id], vals) - phonecall_obj.case_close(cr, uid, [case.id]) - opp_obj.case_open(cr, uid, [new_opportunity_id]) - - value = { - 'name': _('Opportunity'), - 'view_type': 'form', - 'view_mode': 'form,tree', - 'res_model': 'crm.lead', - 'res_id': int(new_opportunity_id), - 'view_id': False, - 'views': [(id2, 'form'), (id3, 'tree'), (False, 'calendar'), (False, 'graph')], - 'type': 'ir.actions.act_window', - 'search_view_id': res['res_id'] - } - return value - - _columns = { - 'name' : fields.char('Opportunity Summary', size=64, required=True, select=1), - 'probability': fields.float('Success Probability'), - 'planned_revenue': fields.float('Expected Revenue'), - 'partner_id': fields.many2one('res.partner', 'Partner'), - } + if not len(ids): + return False + call_ids = context and context.get('active_ids', False) or False + this = self.browse(cr, uid, ids[0], context=context) + if not call_ids: + return {} + opportunity = self.pool.get('crm.lead') + phonecall = self.pool.get('crm.phonecall') + opportunity_ids = phonecall.convert_opportunity(cr, uid, call_ids, this.name, this.partner_id and this.partner_id.id or False, \ + this.planned_revenue, this.probability, context=context) + return opportunity.redirect_opportunity_view(cr, uid, opportunity_ids[call_ids[0]], context=context) def default_get(self, cr, uid, fields, context=None): """ This function gets default values - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - - @return : default values of fields. """ record_id = context and context.get('active_id', False) or False - res = super(crm_phonecall2opportunity, self).default_get(cr, uid, fields, context=context) + res = {} if record_id: phonecall = self.pool.get('crm.phonecall').browse(cr, uid, record_id, context=context) @@ -127,3 +61,5 @@ class crm_phonecall2opportunity(osv.osv_memory): return res crm_phonecall2opportunity() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm/wizard/crm_phonecall_to_opportunity_view.xml b/addons/crm/wizard/crm_phonecall_to_opportunity_view.xml index ea024831b54..d3c59f89433 100644 --- a/addons/crm/wizard/crm_phonecall_to_opportunity_view.xml +++ b/addons/crm/wizard/crm_phonecall_to_opportunity_view.xml @@ -19,7 +19,7 @@ <group colspan="4" col="3" > <label string=" " /> <button name="action_cancel" string="_Cancel" icon="gtk-cancel" special="cancel" /> - <button name="action_apply" type="object" string="_Convert" icon="gtk-convert" /> + <button name="make_opportunity" type="object" string="_Convert" icon="gtk-convert" /> </group> </form> </field> diff --git a/addons/crm/wizard/crm_phonecall_to_partner.py b/addons/crm/wizard/crm_phonecall_to_partner.py index 38e673108e4..0fa077bbf42 100644 --- a/addons/crm/wizard/crm_phonecall_to_partner.py +++ b/addons/crm/wizard/crm_phonecall_to_partner.py @@ -26,42 +26,12 @@ class crm_phonecall2partner(osv.osv_memory): """ Converts phonecall to partner """ _name = 'crm.phonecall2partner' + _inherit = 'crm.lead2partner' _description = 'Phonecall to Partner' - - _columns = { - 'action': fields.selection([('exist', 'Link to an existing partner'), \ - ('create', 'Create a new partner')], \ - 'Action', required=True), - 'partner_id': fields.many2one('res.partner', 'Partner') - } - - def view_init(self, cr, uid, fields, context=None): - """ - This function checks for precondition before wizard executes - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - - """ - phonecall_obj = self.pool.get('crm.phonecall') - rec_ids = context and context.get('active_ids', []) - for phonecall in phonecall_obj.browse(cr, uid, rec_ids, context=context): - if phonecall.partner_id: - raise osv.except_osv(_('Warning !'), - _('A partner is already defined on this phonecall.')) - + def _select_partner(self, cr, uid, context=None): """ This function Searches for Partner from selected phonecall. - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - - @return : Partner id if any for selected phonecall. """ if context is None: context = {} @@ -75,7 +45,7 @@ class crm_phonecall2partner(osv.osv_memory): for phonecall in phonecall_obj.browse(cr, uid, rec_ids, context=context): partner_ids = partner_obj.search(cr, uid, [('name', '=', phonecall.name or phonecall.name)]) if not partner_ids and phonecall.email_from: - address_ids = contact_obj.search(cr, uid, [('email', '=', phonecall.email_from)]) + address_ids = contact_obj.search(cr, uid, ['|', ('phone', '=', phonecall.partner_phone), ('mobile','=',phonecall.partner_mobile)]) if address_ids: addresses = contact_obj.browse(cr, uid, address_ids) partner_ids = addresses and [addresses[0].partner_id.id] or False @@ -83,117 +53,20 @@ class crm_phonecall2partner(osv.osv_memory): partner_id = partner_ids and partner_ids[0] or False return partner_id - _defaults = { - 'action': lambda *a:'exist', - 'partner_id': _select_partner - } - - def open_create_partner(self, cr, uid, ids, context=None): - """ - This function Opens form of create partner. - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Phonecall to Partner's IDs - @param context: A standard dictionary for contextual values - - @return : Dictionary value for next form. - """ - - view_obj = self.pool.get('ir.ui.view') - view_id = view_obj.search(cr, uid, [('model', '=', 'crm.phonecall2partner'), \ - ('name', '=', 'crm.phonecall2partner.view')]) - return { - 'view_mode': 'form', - 'view_type': 'form', - 'view_id': view_id or False, - 'res_model': 'crm.phonecall2partner', - 'context': context, - 'type': 'ir.actions.act_window', - 'target': 'new', - } - def _create_partner(self, cr, uid, ids, context=None): """ This function Creates partner based on action. - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Phonecall to Partner's IDs - @param context: A standard dictionary for contextual values - - @return : Dictionary {}. """ if context is None: context = {} + phonecall = self.pool.get('crm.phonecall') - phonecall_obj = self.pool.get('crm.phonecall') - partner_obj = self.pool.get('res.partner') - contact_obj = self.pool.get('res.partner.address') - partner_ids = [] - contact_id = False - - rec_ids = context and context.get('active_ids', []) - - for data in self.browse(cr, uid, ids, context=context): - for phonecall in phonecall_obj.browse(cr, uid, rec_ids, context=context): - if data.action == 'create': - partner_id = partner_obj.create(cr, uid, { - 'name': phonecall.name or phonecall.name, - 'user_id': phonecall.user_id.id, - 'comment': phonecall.description, - }) - contact_id = contact_obj.create(cr, uid, { - 'partner_id': partner_id, - 'name': phonecall.name, - 'phone': phonecall.partner_phone, - }) - - else: - if data.partner_id: - partner_id = data.partner_id.id - contact_id = partner_obj.address_get(cr, uid, [partner_id])['default'] - - partner_ids.append(partner_id) - - vals = {} - if partner_id: - vals.update({'partner_id': partner_id}) - if contact_id: - vals.update({'partner_address_id': contact_id}) - phonecall_obj.write(cr, uid, [phonecall.id], vals) - return partner_ids - - def make_partner(self, cr, uid, ids, context=None): - """ - This function Makes partner based on action. - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Phonecall to Partner's IDs - @param context: A standard dictionary for contextual values - - @return : Dictionary value for created Partner form. - """ - - partner_ids = self._create_partner(cr, uid, ids, context=context) - mod_obj = self.pool.get('ir.model.data') - result = mod_obj._get_id(cr, uid, 'base', 'view_res_partner_filter') - res = mod_obj.read(cr, uid, result, ['res_id']) - - value = { - 'domain': "[]", - 'view_type': 'form', - 'view_mode': 'form,tree', - 'res_model': 'res.partner', - 'res_id': partner_ids and int(partner_ids[0]) or False, - 'view_id': False, - 'context': context, - 'type': 'ir.actions.act_window', - 'search_view_id': res['res_id'] - } - return value + data = self.browse(cr, uid, ids, context=context)[0] + call_ids = context and context.get('active_ids') or [] + partner_id = data.partner_id and data.partner_id.id or False + partner_ids = phonecall.convert_partner(cr, uid, call_ids, data.action, partner_id, context=context) + return partner_ids[call_ids[0]] crm_phonecall2partner() diff --git a/addons/crm/wizard/crm_phonecall_to_phonecall.py b/addons/crm/wizard/crm_phonecall_to_phonecall.py index 2872acad4eb..d68591ab0b7 100644 --- a/addons/crm/wizard/crm_phonecall_to_phonecall.py +++ b/addons/crm/wizard/crm_phonecall_to_phonecall.py @@ -25,108 +25,50 @@ from tools.translate import _ import time class crm_phonecall2phonecall(osv.osv_memory): - """ Converts Phonecall to Phonecall""" - _name = 'crm.phonecall2phonecall' _description = 'Phonecall To Phonecall' + _columns = { + 'name' : fields.char('Call summary', size=64, required=True, select=1), + 'user_id' : fields.many2one('res.users',"Assign To"), + 'contact_name':fields.char('Contact', size=64), + 'phone':fields.char('Phone', size=64), + 'categ_id': fields.many2one('crm.case.categ', 'Category', \ + domain="['|',('section_id','=',False),('section_id','=',section_id),\ + ('object_id.model', '=', 'crm.phonecall')]"), + 'date': fields.datetime('Date'), + 'section_id':fields.many2one('crm.case.section','Sales Team'), + 'action': fields.selection([('schedule','Schedule a call'), ('log','Log a call')], 'Action', required=True), + 'partner_id' : fields.many2one('res.partner', "Partner"), + 'note':fields.text('Note') + } + + def action_cancel(self, cr, uid, ids, context=None): """ Closes Phonecall to Phonecall form - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Phonecall to Phonecall's IDs - @param context: A standard dictionary for contextual values """ return {'type':'ir.actions.act_window_close'} - def action_apply(self, cr, uid, ids, context=None): - """ - This converts Phonecall to Phonecall and opens Phonecall view - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Phonecall to Phonecall IDs - @param context: A standard dictionary for contextual values - - @return : Dictionary value for created Opportunity form - """ - res = {} - record_id = context and context.get('active_id', False) or False - phonecall_obj = self.pool.get('crm.phonecall') - - if record_id: - data_obj = self.pool.get('ir.model.data') - - # Get Phonecall views - result = data_obj._get_id(cr, uid, 'crm', 'view_crm_case_phonecalls_filter') - res = data_obj.read(cr, uid, result, ['res_id']) - id2 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_form_view') - id3 = data_obj._get_id(cr, uid, 'crm', 'crm_case_phone_tree_view') - if id2: - id2 = data_obj.browse(cr, uid, id2, context=context).res_id - if id3: - id3 = data_obj.browse(cr, uid, id3, context=context).res_id - - phonecall = phonecall_obj.browse(cr, uid, record_id, context=context) - - for this in self.browse(cr, uid, ids, context=context): - values = { - 'name': this.name, - 'user_id': this.user_id and this.user_id.id, - 'categ_id': this.categ_id.id, - 'section_id': this.section_id.id or (phonecall.section_id and phonecall.section_id.id), - 'description': phonecall.description or '', - 'partner_id': phonecall.partner_id.id, - 'partner_address_id': phonecall.partner_address_id.id, - 'partner_mobile': phonecall.partner_mobile or False, - 'priority': phonecall.priority, - 'partner_phone': phonecall.partner_phone or False, - 'date': this.date - } - phonecall_id = phonecall_obj.create(cr, uid, values, context=context) - if this.action == 'schedule': - phonecall_obj.case_open(cr, uid, [phonecall_id]) - elif this.action == 'log': - phonecall_obj.case_close(cr, uid, [phonecall_id]) - - res = { - 'name': _('Phone Call'), - 'view_type': 'form', - 'view_mode': 'form', - 'res_model': 'crm.phonecall', - 'view_id': False, - 'views': [(id2, 'form'), (id3, 'tree'), (False, 'calendar'), (False, 'graph')], - 'type': 'ir.actions.act_window', - 'res_id': phonecall_id, - 'domain': [('id', '=', phonecall_id)], - 'search_view_id': res['res_id'] - } - return res - - _columns = { - 'name' : fields.char('Call summary', size=64, required=True, select=1), - 'user_id' : fields.many2one('res.users',"Assign To"), - 'categ_id': fields.many2one('crm.case.categ', 'Category', \ - domain="['|',('section_id','=',False),('section_id','=',section_id),\ - ('object_id.model', '=', 'crm.phonecall')]"), - 'date': fields.datetime('Date'), - 'section_id':fields.many2one('crm.case.section','Sales Team'), - 'action': fields.selection([('schedule','Schedule a call'), ('log','Log a call')], 'Action', required=True), - 'partner_id' : fields.many2one('res.partner', "Partner"), - } - + def action_schedule(self, cr, uid, ids, context=None): + value = {} + if context is None: + context = {} + phonecall = self.pool.get('crm.phonecall') + phonecall_ids = context and context.get('active_ids') or [] + for this in self.browse(cr, uid, ids, context=context): + phocall_ids = phonecall.schedule_another_phonecall(cr, uid, phonecall_ids, this.date, this.name, \ + this.user_id and this.user_id.id or False, \ + this.section_id and this.section_id.id or False, \ + this.categ_id and this.categ_id.id or False, \ + action=this.action, context=context) + + return phonecall.redirect_phonecall_view(cr, uid, phocall_ids[phonecall_ids[0]], context=context) + def default_get(self, cr, uid, fields, context=None): """ This function gets default values - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param fields: List of fields for default value - @param context: A standard dictionary for contextual values - - @return : default values of fields. + """ res = super(crm_phonecall2phonecall, self).default_get(cr, uid, fields, context=context) record_id = context and context.get('active_id', False) or False diff --git a/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml b/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml index 794634da4f1..572fbb8b9a1 100644 --- a/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml +++ b/addons/crm/wizard/crm_phonecall_to_phonecall_view.xml @@ -22,8 +22,8 @@ <separator string=" " colspan="4"/> <group colspan="4" col="3" > <button name="action_cancel" string="_Cancel" icon="gtk-cancel" special="cancel" /> - <button name="action_apply" type="object" string="Log call" icon="gtk-ok" attrs="{'invisible' : [('action', '!=', 'log')]}" /> - <button name="action_apply" type="object" string="Schedule call" icon="gtk-ok" attrs="{'invisible' : [('action', '!=', 'schedule')]}" /> + <button name="action_schedule" type="object" string="Log call" icon="gtk-ok" attrs="{'invisible' : [('action', '!=', 'log')]}" /> + <button name="action_schedule" type="object" string="Schedule call" icon="gtk-ok" attrs="{'invisible' : [('action', '!=', 'schedule')]}" /> </group> </form> </field> diff --git a/addons/crm_caldav/i18n/ar.po b/addons/crm_caldav/i18n/ar.po new file mode 100644 index 00000000000..7865b4a8797 --- /dev/null +++ b/addons/crm_caldav/i18n/ar.po @@ -0,0 +1,46 @@ +# Arabic translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:15+0000\n" +"PO-Revision-Date: 2011-12-05 08:17+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Arabic <ar@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-06 05:28+0000\n" +"X-Generator: Launchpad (build 14435)\n" + +#. module: crm_caldav +#: model:ir.actions.act_window,name:crm_caldav.action_caldav_browse +msgid "Caldav Browse" +msgstr "" + +#. module: crm_caldav +#: model:ir.model,name:crm_caldav.model_crm_meeting +msgid "Meeting" +msgstr "إجتماعات" + +#. module: crm_caldav +#: model:ir.module.module,shortdesc:crm_caldav.module_meta_information +msgid "Extended Module to Add CalDav feature on Meeting" +msgstr "" + +#. module: crm_caldav +#: model:ir.module.module,description:crm_caldav.module_meta_information +msgid "" +"\n" +" New Features in Meeting:\n" +" * Share meeting with other calendar clients like sunbird\n" +msgstr "" + +#. module: crm_caldav +#: model:ir.ui.menu,name:crm_caldav.menu_caldav_browse +msgid "Synchronyze this calendar" +msgstr "" diff --git a/addons/crm_claim/__openerp__.py b/addons/crm_claim/__openerp__.py index ae493c5dac2..8c21fee5de0 100644 --- a/addons/crm_claim/__openerp__.py +++ b/addons/crm_claim/__openerp__.py @@ -48,8 +48,11 @@ automatically new claims based on incoming emails. 'demo_xml': [ 'crm_claim_demo.xml', ], - 'test': ['test/test_crm_claim.yml'], + 'test': ['test/process/claim.yml', + 'test/ui/claim_demo.yml' + ], 'installable': True, + 'application': True, 'active': False, 'certificate' : '00612027414703404749', 'images': ['images/claim_categories.jpeg','images/claim_stages.jpeg','images/claims.jpeg'], diff --git a/addons/crm_claim/crm_claim.py b/addons/crm_claim/crm_claim.py index b5cd2009698..7875d6a2f1a 100644 --- a/addons/crm_claim/crm_claim.py +++ b/addons/crm_claim/crm_claim.py @@ -46,6 +46,7 @@ class crm_claim(crm.crm_case, osv.osv): _columns = { 'id': fields.integer('ID', readonly=True), 'name': fields.char('Claim Subject', size=128, required=True), + 'active': fields.boolean('Active'), 'action_next': fields.char('Next Action', size=200), 'date_action_next': fields.datetime('Next Action Date'), 'description': fields.text('Description'), @@ -95,6 +96,7 @@ class crm_claim(crm.crm_case, osv.osv): 'date': lambda *a: time.strftime('%Y-%m-%d %H:%M:%S'), 'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'crm.case', context=c), 'priority': lambda *a: crm.AVAILABLE_PRIORITIES[2][0], + 'active': lambda *a: 1 } def onchange_partner_id(self, cr, uid, ids, part, email=False): @@ -129,8 +131,6 @@ class crm_claim(crm.crm_case, osv.osv): if l.state == 'draft': message = _("The claim '%s' has been opened.") % l.name self.log(cr, uid, l.id, message) - value = {'date_open': time.strftime('%Y-%m-%d %H:%M:%S')} - self.write(cr, uid, [l.id], value) stage_id = self.stage_find(cr, uid, l.section_id.id or False, [('sequence','>',0)]) if stage_id: self.stage_set(cr, uid, [l.id], stage_id) diff --git a/addons/crm_claim/crm_claim_demo.xml b/addons/crm_claim/crm_claim_demo.xml index 0f8488628b5..8279e04eb6f 100644 --- a/addons/crm_claim/crm_claim_demo.xml +++ b/addons/crm_claim/crm_claim_demo.xml @@ -15,8 +15,6 @@ <field eval=""Problem with the delivery of goods"" name="name"/> <field eval=""open"" name="state"/> <field name="section_id" ref="crm.section_sales_department"/> - <field eval=""(726) 782-0636"" name="partner_mobile"/> - <field eval="1" name="active"/> <field name="categ_id" ref="crm_claim.categ_claim1"/> <field name="stage_id" ref="crm_claim.stage_claim1"/> <field eval=""(769) 703-274"" name="partner_phone"/> @@ -31,8 +29,6 @@ <field eval=""Damaged Products"" name="name"/> <field eval=""open"" name="state"/> <field name="section_id" ref="crm.section_sales_department"/> - <field eval=""(392) 895-7917"" name="partner_mobile"/> - <field eval="1" name="active"/> <field name="categ_id" ref="crm_claim.categ_claim2"/> <field name="stage_id" ref="crm_claim.stage_claim5"/> <field eval=""(956) 293-2595"" name="partner_phone"/> @@ -47,8 +43,6 @@ <field eval=""Document related problems"" name="name"/> <field eval=""done"" name="state"/> <field name="section_id" ref="crm.section_sales_department"/> - <field eval=""(820) 167-3208"" name="partner_mobile"/> - <field eval="1" name="active"/> <field name="categ_id" ref="crm_claim.categ_claim3"/> <field name="stage_id" ref="crm_claim.stage_claim2"/> <field eval=""(079) 681-2139"" name="partner_phone"/> @@ -63,8 +57,6 @@ <field eval=""Product quality not maintained"" name="name"/> <field eval=""draft"" name="state"/> <field name="section_id" ref="crm.section_sales_department"/> - <field eval=""(077) 582-4035"" name="partner_mobile"/> - <field eval="1" name="active"/> <field name="categ_id" ref="crm_claim.categ_claim1"/> <field name="stage_id" ref="crm_claim.stage_claim5"/> <field eval=""(514) 698-4118"" name="partner_phone"/> @@ -79,8 +71,6 @@ <field eval=""Some products missing"" name="name"/> <field eval=""pending"" name="state"/> <field name="section_id" ref="crm.section_sales_department"/> - <field eval=""(333) 715-1450"" name="partner_mobile"/> - <field eval="1" name="active"/> <field name="categ_id" ref="crm_claim.categ_claim3"/> <field name="stage_id" ref="crm_claim.stage_claim3"/> <field eval=""(855) 924-4364"" name="partner_phone"/> @@ -88,14 +78,12 @@ <record id="crm_case_claim06" model="crm.claim"> <field name="partner_address_id" ref="base.res_partner_address_1"/> - <field eval="1" name="active"/> <field name="partner_id" ref="base.res_partner_9"/> <field eval=""3"" name="priority"/> <field name="user_id" ref="base.user_root"/> <field eval=""Problem with the delivery of assignments"" name="name"/> <field eval=""cancel"" name="state"/> <field name="section_id" ref="crm.section_sales_department"/> - <field eval=""(468) 017-2684"" name="partner_mobile"/> <field eval="time.strftime('%Y-%m-28 14:15:30')" name="date"/> <field name="categ_id" ref="crm_claim.categ_claim1"/> <field name="stage_id" ref="crm_claim.stage_claim5"/> @@ -104,14 +92,12 @@ </record> <record id="crm_case_claims07" model="crm.claim"> - <field eval="1" name="active"/> <field name="partner_id" ref="base.res_partner_seagate"/> <field eval=""3"" name="priority"/> <field name="user_id" ref="base.user_root"/> <field eval=""Documents unclear"" name="name"/> <field eval=""done"" name="state"/> <field name="section_id" ref="crm.section_sales_department"/> - <field eval="" (463) 014-1208"" name="partner_mobile"/> <field eval="time.strftime('%Y-%m-19 13:01:05')" name="date"/> <field name="categ_id" ref="crm_claim.categ_claim3"/> <field name="stage_id" ref="crm_claim.stage_claim2"/> diff --git a/addons/crm_claim/crm_claim_view.xml b/addons/crm_claim/crm_claim_view.xml index a2ad01e0651..08237d06094 100644 --- a/addons/crm_claim/crm_claim_view.xml +++ b/addons/crm_claim/crm_claim_view.xml @@ -14,7 +14,7 @@ <field name="view_type">form</field> <field name="view_id" ref="crm.crm_case_categ_tree-view"/> <field name="domain">[('object_id.model', '=', 'crm.claim')]</field> - <field name="context">{'object_id':'crm.claim'}</field> + <field name="context" eval="{'object_id': ref('model_crm_claim')}"/> <field name="help">Create claim categories to better manage and classify your claims. Some example of claims can be: preventive action, corrective action.</field> </record> @@ -151,7 +151,7 @@ <group colspan="4"> <field colspan="4" name="email_cc" string="Global CC" widget="char"/> </group> - <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1"> + <field name="message_ids" colspan="4" nolabel="1" mode="tree" readonly="1"> <tree string="History"> <field name="display_text" string="History Information"/> <field name="email_from" invisible="1"/> @@ -161,32 +161,6 @@ context="{'mail.compose.message.mode':'reply'}" icon="terp-mail-replied" type="action" /> </tree> - <form string="Communication & History"> - <group col="4" colspan="4"> - <field name="email_from"/> - <field name="date"/> - <field name="email_to" widget="char" size="512"/> - <field name="email_cc" widget="char" size="512"/> - <field name="subject" colspan="4" widget="char" size="512"/> - </group> - <notebook colspan="4"> - <page string="Details"> - <group attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="body_text" colspan="4" nolabel="1" height="250"/> - <button colspan="4" string="Reply" - name="%(mail.action_email_compose_message_wizard)d" - context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" - icon="terp-mail-replied" type="action"/> - </group> - <group attrs="{'invisible': [('email_from', '!=', False)]}"> - <field name="display_text" colspan="4" nolabel="1" height="250"/> - </group> - </page> - <page string="Attachments"> - <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/> - </page> - </notebook> - </form> </field> <button string="Add Internal Note" name="%(crm.action_crm_add_note)d" @@ -318,7 +292,7 @@ <act_window domain="[('partner_address_id', '=', active_id)]" - context="{'default_partner_id': partner_id}" + context="{'default_partner_address_id': active_id}" id="act_claim_partner_address" name="Claims" view_mode="tree,form" diff --git a/addons/crm_claim/test/customer_claim.eml b/addons/crm_claim/test/customer_claim.eml new file mode 100644 index 00000000000..ff3c45b9142 --- /dev/null +++ b/addons/crm_claim/test/customer_claim.eml @@ -0,0 +1,17 @@ +Message-ID: <4EA66F25.7080001@customer.com>
+Date: Tue, 25 Oct 2011 13:41:17 +0530
+From: Mr. John Right <info@customer.com>
+User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.14) Gecko/20110223 Lightning/1.0b2 Thunderbird/3.1.8
+MIME-Version: 1.0
+To: claims@my.com
+Subject: demande de =?ISO-8859-1?Q?r=E8glement_de_votre_produit=2E?=
+Content-Type: text/plain; charset=ISO-8859-1; format=flowed
+Content-Transfer-Encoding: 8bit
+
+J'ai acheté votre produit il ya quelques jours. maintenant certains
+problèmes sont survenus sur votre produit.
+je demande donc à convertir cette demande que la réclamation et de
+résoudre les problèmes le plus tôt possible.
+
+Merci
+
diff --git a/addons/crm_claim/test/process/claim.yml b/addons/crm_claim/test/process/claim.yml new file mode 100644 index 00000000000..e20436cd3c6 --- /dev/null +++ b/addons/crm_claim/test/process/claim.yml @@ -0,0 +1,46 @@ +- + Customer requests a claim after the sale of our product. He sends claim request by email. +- + Mail script will be fetched him request from mail server. so I process that mail after read EML file +- + !python {model: mail.thread}: | + import addons + request_file = open(addons.get_module_resource('crm_claim','test', 'customer_claim.eml'),'rb') + request_message = request_file.read() + self.message_process(cr, uid, 'crm.claim', request_message) +- + After getting the mail, I check details of new claim of that customer. +- + !python {model: crm.claim}: | + from openerp import tools + claim_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + assert claim_ids and len(claim_ids), "Claim is not created after getting request" + claim = self.browse(cr, uid, claim_ids[0], context=context) + assert claim.name == tools.ustr("demande derèglement de votre produit."), "Subject does not match" +- + I open customer claim. +- + !python {model: crm.claim}: | + claim_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + self.case_open(cr, uid, claim_ids) +- + I check Claim Details after open. +- + !python {model: crm.claim}: | + claim_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + claim = self.browse(cr, uid, claim_ids[0]) + assert claim.state == "open", "Claim is not in Open state" + assert claim.stage_id.id == ref("crm.stage_lead1"), "Claim is not in New stage" +- + After complete all service from our side, I close this claim. +- + !python {model: crm.claim}: | + claim_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + self.case_close(cr, uid, claim_ids) +- + I check Claim details after closed. +- + !python {model: crm.claim}: | + claim_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + claim = self.browse(cr, uid, claim_ids[0]) + assert claim.state == "done", "Claim is not in close state" diff --git a/addons/crm_claim/test/test_crm_claim.yml b/addons/crm_claim/test/test_crm_claim.yml deleted file mode 100644 index 9ee130329a7..00000000000 --- a/addons/crm_claim/test/test_crm_claim.yml +++ /dev/null @@ -1,44 +0,0 @@ -- | - I check claims which contain customer claim information about document - related problem, product related problem. -- | - I start by creating new claims for Damaged product as Value Claims with priority High and specify - date of claim at which claim is created. -- - !record {model: crm.claim, id: crm_claim_damagedproduct0}: - categ_id: crm_claim.categ_claim2 - date: !eval time.strftime('%Y-%m-%d %H:%M:%S') - email_from: info@balmerinc.be - name: 'Damaged product ' - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - priority: '2' - section_id: crm.section_sales_department - -- | - I check that the claims is in 'draft' state. -- - !assert {model: crm.claim, id: crm_claim_damagedproduct0}: - - state == 'draft' -- | - I can change that stage by next button right on it. -- - !python {model: crm.claim}: | - self.stage_next(cr, uid, [ref('crm_claim_damagedproduct0')]) -- | - I make this claim as Open. -- - !python {model: crm.claim}: | - self.case_open(cr, uid, [ref('crm_claim_damagedproduct0')]) -- | - I am changing partner Assigned to the Claim. -- - !python {model: crm.claim}: | - self.onchange_partner_id(cr, uid, [ref('crm_claim_damagedproduct0')], []) - self.onchange_partner_id(cr, uid, [ref('crm_claim_damagedproduct0')], ref('base.res_partner_10')) -- | - I am changing partner Address to the Claim. -- - !python {model: crm.claim}: | - self.onchange_partner_address_id(cr, uid, [ref('crm_claim_damagedproduct0')], [], email = False) - diff --git a/addons/crm_claim/test/ui/claim_demo.yml b/addons/crm_claim/test/ui/claim_demo.yml new file mode 100644 index 00000000000..520434fcd90 --- /dev/null +++ b/addons/crm_claim/test/ui/claim_demo.yml @@ -0,0 +1,15 @@ +- + I create claim record to call of partner onchange method. +- + !record {model: crm.claim, id: crm_case_claim04}: + name: 'Damaged Product' + partner_id: base.res_partner_6 +- + I Update the message for claim. +- + !python {model: crm.claim}: | + try: + self.message_update(cr, uid,[ref('crm_case_claim04')], {'subject': 'Claim Update record','body_text': 'first training session completed',}) + except: + pass +
\ No newline at end of file diff --git a/addons/crm_fundraising/__openerp__.py b/addons/crm_fundraising/__openerp__.py index 2d75f9e69b7..d5f97c26647 100644 --- a/addons/crm_fundraising/__openerp__.py +++ b/addons/crm_fundraising/__openerp__.py @@ -51,8 +51,9 @@ fund status. 'demo_xml': [ 'crm_fundraising_demo.xml', ], - 'test': ['test/test_crm_fund.yml'], + 'test': ['test/process/fund-rising.yml'], 'installable': True, + 'application': True, 'active': False, 'certificate' : '00871545204231528989', 'images': ['images/fundraising_analysis.jpeg','images/fundraising_categories.jpeg','images/funds.jpeg'], diff --git a/addons/crm_fundraising/crm_fundraising.py b/addons/crm_fundraising/crm_fundraising.py index 07ba7460dec..37c5bb8ccee 100644 --- a/addons/crm_fundraising/crm_fundraising.py +++ b/addons/crm_fundraising/crm_fundraising.py @@ -112,3 +112,5 @@ class crm_fundraising(crm.crm_case, osv.osv): } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm_fundraising/crm_fundraising_view.xml b/addons/crm_fundraising/crm_fundraising_view.xml index 7c89b68590a..cc58b793c17 100644 --- a/addons/crm_fundraising/crm_fundraising_view.xml +++ b/addons/crm_fundraising/crm_fundraising_view.xml @@ -14,7 +14,7 @@ <field name="view_type">form</field> <field name="view_id" ref="crm.crm_case_categ_tree-view"/> <field name="domain">[('object_id.model', '=', 'crm.fundraising')]</field> - <field name="context">{'object_id':'crm.fundraising'}</field> + <field name="context" eval="{'object_id': ref('model_crm_fundraising')}"/> <field name="help">Manage and define the fund raising categories you want to be maintained in the system.</field> </record> @@ -136,7 +136,7 @@ <group colspan="4"> <field colspan="4" name="email_cc" string="Global CC" widget="char"/> </group> - <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1"> + <field name="message_ids" colspan="4" nolabel="1" mode="tree" readonly="1"> <tree string="History"> <field name="display_text" string="History Information"/> <field name="email_from" invisible="1"/> @@ -146,32 +146,6 @@ context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" icon="terp-mail-replied" type="action" /> </tree> - <form string="History"> - <group col="4" colspan="4"> - <field name="email_from"/> - <field name="date"/> - <field name="email_to" widget="char" size="512"/> - <field name="email_cc" widget="char" size="512"/> - <field name="subject" colspan="4" widget="char" size="512"/> - </group> - <notebook colspan="4"> - <page string="Details"> - <group attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="body_text" colspan="4" nolabel="1" height="250"/> - <button colspan="4" string="Reply" - name="%(mail.action_email_compose_message_wizard)d" - context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" - icon="terp-mail-replied" type="action"/> - </group> - <group attrs="{'invisible': [('email_from', '!=', False)]}"> - <field name="display_text" colspan="4" nolabel="1" height="250"/> - </group> - </page> - <page string="Attachments"> - <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/> - </page> - </notebook> - </form> </field> <button string="Add Internal Note" name="%(crm.action_crm_add_note)d" diff --git a/addons/crm_fundraising/report/crm_fundraising_report.py b/addons/crm_fundraising/report/crm_fundraising_report.py index 107ebf06bf5..c0f3ec8c3a6 100644 --- a/addons/crm_fundraising/report/crm_fundraising_report.py +++ b/addons/crm_fundraising/report/crm_fundraising_report.py @@ -97,6 +97,7 @@ class crm_fundraising_report(osv.osv): avg(extract('epoch' from (c.date_closed-c.create_date)))/(3600*24) as delay_close from crm_fundraising c + where c.active = 'true' group by to_char(c.date, 'YYYY'), to_char(c.date, 'MM'),\ c.state, c.user_id,c.section_id,c.categ_id,type_id,c.partner_id,c.company_id, c.create_date,to_char(c.date, 'YYYY-MM-DD') diff --git a/addons/crm_fundraising/test/customer_fundraising.eml b/addons/crm_fundraising/test/customer_fundraising.eml new file mode 100644 index 00000000000..e7cd3f9482e --- /dev/null +++ b/addons/crm_fundraising/test/customer_fundraising.eml @@ -0,0 +1,14 @@ +Message-ID: <4EA66F25.7080010@customer.com>
+Date: Tue, 25 Oct 2011 13:41:17 +0530
+From: Mr. John Right <info@customer.com>
+User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.14) Gecko/20110223 Lightning/1.0b2 Thunderbird/3.1.8
+MIME-Version: 1.0
+To: contribute@my.com
+Subject: Demande de controbute dans votre fonds.
+Content-Type: text/plain; charset=ISO-8859-1; format=flowed
+Content-Transfer-Encoding: 8bit
+
+Client est très heureux d'utiliser notre produit et il l'intérêt de donner une partie des fonds dans notre produit. Il a donc envoyé la demande par courriel pour les collectes de fonds.
+
+Merci
+
diff --git a/addons/crm_fundraising/test/process/fund-rising.yml b/addons/crm_fundraising/test/process/fund-rising.yml new file mode 100644 index 00000000000..b49f1f5c1bd --- /dev/null +++ b/addons/crm_fundraising/test/process/fund-rising.yml @@ -0,0 +1,19 @@ +- + Customer is very happy with our service and he interest to contribute into our fund. so He sent request by email for Fundraising. +- + Mail script will be fetched him request from mail server. so I process that mail after read EML file +- + !python {model: mail.thread}: | + import addons + request_file = open(addons.get_module_resource('crm_fundraising','test', 'customer_fundraising.eml'),'rb') + request_message = request_file.read() + self.message_process(cr, uid, 'crm.fundraising', request_message) +- + After getting the mail, I check details of new fundraising of that customer. +- + !python {model: crm.fundraising}: | + from openerp import tools + fund_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + assert fund_ids and len(fund_ids), "Fund is not created after getting request" + fund = self.browse(cr, uid, fund_ids[0], context=context) + assert fund.name == tools.ustr("Demande de controbute dans votre fonds."), "Subject does not match" diff --git a/addons/crm_fundraising/test/test_crm_fund.yml b/addons/crm_fundraising/test/test_crm_fund.yml deleted file mode 100644 index ef81afeb563..00000000000 --- a/addons/crm_fundraising/test/test_crm_fund.yml +++ /dev/null @@ -1,45 +0,0 @@ -- | - I start test Fund Raising which contain information about Donation or charity - given by user. -- | - I start by creating new Funds entry for donation for books to poor school children - with cost 500000.00 and category as "Learning And Education" - I make payment by Cheque so I make sure that the mode on fund is selected as cheque. -- - !record {model: crm.fundraising, id: crm_fundraising_donationforbookstopoorschoolchildren0}: - categ_id: crm_fundraising.categ_fund2 - email_from: info@balmerinc.be - name: Donation for books to poor school children - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - planned_cost: 500000.0 - section_id: crm.section_sales_department - type_id: crm_fundraising.type_fund2 -- | - I check that the Funds is in 'draft' state. -- - !assert {model: crm.fundraising, id: crm_fundraising_donationforbookstopoorschoolchildren0}: - - state == 'draft' -- | - I open Funds by click on "Open" button. -- - !python {model: crm.fundraising}: | - self.case_open(cr, uid, [ref('crm_fundraising_donationforbookstopoorschoolchildren0')]) -- - I create the message regarding the all details of fundraising. -- - !python {model: crm.fundraising}: | - msg = { - 'subject': 'fundraising_email', - 'body_text': 'fundraising details', - 'from': 'Administrator <admin@openerp.com>', - 'priority':'3', - } - context = None - self.message_new(cr, uid,msg,context) - -- | - After a request via email now I close this fundraising Request by clicking on "Done" button. -- - !python {model: crm.fundraising}: | - self.case_close(cr, uid, [ref('crm_fundraising_donationforbookstopoorschoolchildren0')]) diff --git a/addons/crm_helpdesk/__openerp__.py b/addons/crm_helpdesk/__openerp__.py index 5124c3c5817..01abdef2147 100644 --- a/addons/crm_helpdesk/__openerp__.py +++ b/addons/crm_helpdesk/__openerp__.py @@ -49,8 +49,9 @@ and categorize your interventions with a channel and a priority level. 'demo_xml': [ 'crm_helpdesk_demo.xml', ], - 'test': ['test/test_crm_helpdesk.yml'], + 'test': ['test/process/help-desk.yml'], 'installable': True, + 'application': True, 'active': False, 'certificate' : '00830691522781519309', 'images': ['images/helpdesk_analysis.jpeg','images/helpdesk_categories.jpeg','images/helpdesk_requests.jpeg'], diff --git a/addons/crm_helpdesk/crm_helpdesk_view.xml b/addons/crm_helpdesk/crm_helpdesk_view.xml index 5b3203f19d0..3d48a3b88ac 100644 --- a/addons/crm_helpdesk/crm_helpdesk_view.xml +++ b/addons/crm_helpdesk/crm_helpdesk_view.xml @@ -14,7 +14,7 @@ <field name="view_type">form</field> <field name="view_id" ref="crm.crm_case_categ_tree-view"/> <field name="domain">[('object_id.model', '=', 'crm.helpdesk')]</field> - <field name="context">{'object_id':'crm.helpdesk'}</field> + <field name="context" eval="{'object_id': ref('model_crm_helpdesk')}"/> <field name="help">Create and manage helpdesk categories to better manage and classify your support requests.</field> </record> @@ -96,7 +96,7 @@ <group colspan="4"> <field colspan="4" name="email_cc" string="Global CC" widget="char"/> </group> - <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1"> + <field name="message_ids" colspan="4" nolabel="1" mode="tree" readonly="1"> <tree string="History"> <field name="display_text" string="History Information"/> <field name="email_from" invisible="1"/> @@ -106,32 +106,6 @@ context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" icon="terp-mail-replied" type="action" /> </tree> - <form string="History"> - <group col="4" colspan="4"> - <field name="email_from"/> - <field name="date"/> - <field name="email_to" widget="char" size="512"/> - <field name="email_cc" widget="char" size="512"/> - <field name="subject" colspan="4" widget="char" size="512"/> - </group> - <notebook colspan="4"> - <page string="Details"> - <group attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="body_text" colspan="4" nolabel="1" height="250"/> - <button colspan="4" string="Reply" - name="%(mail.action_email_compose_message_wizard)d" - context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" - icon="terp-mail-replied" type="action"/> - </group> - <group attrs="{'invisible': [('email_from', '!=', False)]}"> - <field name="display_text" colspan="4" nolabel="1" height="250"/> - </group> - </page> - <page string="Attachments"> - <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/> - </page> - </notebook> - </form> </field> <button string="Add Internal Note" name="%(crm.action_crm_add_note)d" diff --git a/addons/crm_helpdesk/report/crm_helpdesk_report.py b/addons/crm_helpdesk/report/crm_helpdesk_report.py index 80fc07db38d..55643d9b0f8 100644 --- a/addons/crm_helpdesk/report/crm_helpdesk_report.py +++ b/addons/crm_helpdesk/report/crm_helpdesk_report.py @@ -101,6 +101,7 @@ class crm_helpdesk_report(osv.osv): abs(avg(extract('epoch' from (c.date_deadline - c.date_closed)))/(3600*24)) as delay_expected from crm_helpdesk c + where c.active = 'true' group by to_char(c.date, 'YYYY'), to_char(c.date, 'MM'),to_char(c.date, 'YYYY-MM-DD'),\ c.state, c.user_id,c.section_id,c.priority,\ c.partner_id,c.company_id,c.date_deadline,c.create_date,c.date,c.date_closed,\ diff --git a/addons/crm_helpdesk/test/customer_question.eml b/addons/crm_helpdesk/test/customer_question.eml new file mode 100644 index 00000000000..38a4c95fb0c --- /dev/null +++ b/addons/crm_helpdesk/test/customer_question.eml @@ -0,0 +1,15 @@ +Message-ID: <4EA66F25.7080013@customer.com>
+Date: Tue, 25 Oct 2011 13:41:17 +0530
+From: Mr. John Right <info@customer.com>
+User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.14) Gecko/20110223 Lightning/1.0b2 Thunderbird/3.1.8
+MIME-Version: 1.0
+To: info@my.com
+Subject: Where is download link of user manual of your product ?
+Content-Type: text/plain; charset=ISO-8859-1; format=flowed
+Content-Transfer-Encoding: 8bit
+
+I want to download user manual of your product.
+can you provide download link?
+
+Thanks
+
diff --git a/addons/crm_helpdesk/test/process/help-desk.yml b/addons/crm_helpdesk/test/process/help-desk.yml new file mode 100644 index 00000000000..320bd61c2af --- /dev/null +++ b/addons/crm_helpdesk/test/process/help-desk.yml @@ -0,0 +1,30 @@ +- + Customer has Questions regarding our service. so He sent questions list by email. +- + Mail script will be fetched him request from mail server. so I process that mail after read EML file +- + !python {model: mail.thread}: | + import addons + request_file = open(addons.get_module_resource('crm_helpdesk','test', 'customer_question.eml'),'rb') + request_message = request_file.read() + self.message_process(cr, uid, 'crm.helpdesk', request_message) +- + After getting the mail, I check details of new question of that customer. +- + !python {model: crm.helpdesk}: | + from openerp import tools + question_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + assert question_ids and len(question_ids), "Question is not created after getting request" + question = self.browse(cr, uid, question_ids[0], context=context) + assert question.name == tools.ustr("Where is download link of user manual of your product ? "), "Subject does not match" +- + Now I Update message according to provide services. +- + !python {model: crm.helpdesk}: | + question_ids = self.search(cr, uid, [('email_from','=', 'Mr. John Right <info@customer.com>')]) + try: + self.message_update(cr, uid, question_ids, {'subject': 'Link of product', 'body_text': 'www.openerp.com'}) + except: + pass + + diff --git a/addons/crm_helpdesk/test/test_crm_helpdesk.yml b/addons/crm_helpdesk/test/test_crm_helpdesk.yml deleted file mode 100644 index eb0a25d2110..00000000000 --- a/addons/crm_helpdesk/test/test_crm_helpdesk.yml +++ /dev/null @@ -1,57 +0,0 @@ -- - | - I start by creating New helpdesk request regarding some functional questions. - I select Date at which helpdesk request is created. -- - !record {model: crm.helpdesk, id: crm_helpdesk_somefunctionalquestion0}: - date: !eval time.strftime('%Y-%m-%d %H:%M:%S') - email_from: info@balmerinc.be - name: Some functional question. - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - section_id: crm.section_sales_department -- - I create the message. -- - !python {model: crm.helpdesk}: | - msg = { - 'subject': 'test_email', - 'body_text': 'Testing', - 'from': 'Administrator <admin@openerp.com>', - } - context = None - self.message_new(cr, uid,msg,context) - -- | - I check that the Helpdesk request is in 'Draft' state. -- - !assert {model: crm.helpdesk, id: crm_helpdesk_somefunctionalquestion0}: - - state == 'draft' -- | - I make it "Open". -- - !python {model: crm.helpdesk}: | - self.case_open(cr, uid, [ref('crm_helpdesk_somefunctionalquestion0')]) -- - Update the created message. -- - !python {model: crm.helpdesk}: | - vals = {} - msg = { - 'subject': 'test_email', - 'body_text': 'Testing', - 'from': 'Administrator <admin@openerp.com>', - 'priority': 'done' - } - context = None - default_act = 'pending' - try: - self.message_update(cr, uid,[ref('crm_helpdesk_somefunctionalquestion0')], msg,context) - except: - pass -- | - After a proper communication for the request via email I make sure that the request is fulfilled and - I close this HelpDesk Request by clicking on "Close" button. -- - !python {model: crm.helpdesk}: | - self.case_close(cr, uid, [ref('crm_helpdesk_somefunctionalquestion0')]) diff --git a/addons/crm_partner_assign/__init__.py b/addons/crm_partner_assign/__init__.py index 3bb196d3193..8d4bf993aff 100644 --- a/addons/crm_partner_assign/__init__.py +++ b/addons/crm_partner_assign/__init__.py @@ -22,3 +22,5 @@ import partner_geo_assign import wizard import report + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm_partner_assign/__openerp__.py b/addons/crm_partner_assign/__openerp__.py index 9e72204e31d..60a51c1a0b9 100644 --- a/addons/crm_partner_assign/__openerp__.py +++ b/addons/crm_partner_assign/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Partner Geo-Localization', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'complexity': "normal", 'description': """ This is the module used by OpenERP SA to redirect customers to its partners, based on geolocalization. @@ -38,6 +38,9 @@ You can also use the geolocalization without using the GPS coordinates. """, 'author': 'OpenERP SA', 'depends': ['crm'], + 'demo_xml': [ + 'res_partner_demo.xml', + ], 'update_xml': [ 'security/ir.model.access.csv', 'res_partner_view.xml', @@ -46,9 +49,13 @@ You can also use the geolocalization without using the GPS coordinates. 'report/crm_lead_report_view.xml', 'report/crm_partner_report_view.xml', ], - 'test': ['test/test_crm_partner_assign.yml'], + 'test': [ + 'test/process/partner_assign.yml', + ], 'installable': True, 'active': False, 'certificate': '00503409558942442061', 'images': ['images/partner_geo_localization.jpeg','images/partner_grade.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm_partner_assign/crm_lead_view.xml b/addons/crm_partner_assign/crm_lead_view.xml index 2ec3c85353b..14e160fb397 100644 --- a/addons/crm_partner_assign/crm_lead_view.xml +++ b/addons/crm_partner_assign/crm_lead_view.xml @@ -8,7 +8,7 @@ <field name="inherit_id" ref="crm.crm_case_form_view_oppor"/> <field name="arch" type="xml"> <data> - <xpath expr="//notebook[last()]" position="inside"> + <xpath expr="//notebook/page[@string='Lead']" position="after"> <page string="Assignation" groups="base.group_extended"> <group name="partner_assign_group" col="5" colspan="4"> <separator string="Partner Assignation" colspan="5"/> @@ -27,7 +27,7 @@ <field name="partner_latitude"/> <field name="partner_longitude"/> <group colspan="1" col="1"> - <button string="Geo Assign" name="assign_partner" type="object" colspan="1" + <button string="Geo Assign" name="action_assign_partner" type="object" colspan="1" icon="gtk-apply"/> </group> </group> diff --git a/addons/crm_partner_assign/partner_geo_assign.py b/addons/crm_partner_assign/partner_geo_assign.py index 2b67f80c066..08c4f7d23b6 100644 --- a/addons/crm_partner_assign/partner_geo_assign.py +++ b/addons/crm_partner_assign/partner_geo_assign.py @@ -24,22 +24,25 @@ from osv import fields import urllib,re import random, time from tools.translate import _ +import tools def geo_find(addr): + addr = addr.encode('utf8') + regex = '<coordinates>([+-]?[0-9\.]+),([+-]?[0-9\.]+),([+-]?[0-9\.]+)</coordinates>' + url = 'http://maps.google.com/maps/geo?q=' + urllib.quote(addr) + '&output=xml&oe=utf8&sensor=false' try: - regex = '<coordinates>([+-]?[0-9\.]+),([+-]?[0-9\.]+),([+-]?[0-9\.]+)</coordinates>' - url = 'http://maps.google.com/maps/geo?q=' + urllib.quote(addr) + '&output=xml&oe=utf8&sensor=false' xml = urllib.urlopen(url).read() - if '<error>' in xml: - return None - result = re.search(regex, xml, re.M|re.I) - if not result: - return None - return float(result.group(2)),float(result.group(1)) except Exception, e: raise osv.except_osv(_('Network error'), _('Could not contact geolocation servers, please make sure you have a working internet connection (%s)') % e) + if '<error>' in xml: + return None + result = re.search(regex, xml, re.M|re.I) + if not result: + return None + return float(result.group(2)),float(result.group(1)) + class res_partner_grade(osv.osv): _order = 'sequence' @@ -74,9 +77,13 @@ class res_partner(osv.osv): for partner in self.browse(cr, uid, ids, context=context): if not partner.address: continue - part = partner.address[0] - addr = ', '.join(filter(None, [part.street, (part.zip or '')+' '+(part.city or ''), part.state_id and part.state_id.name, part.country_id and part.country_id.name])) - result = geo_find(addr.encode('utf8')) + contact = partner.address[0] #TOFIX: should be get latitude and longitude for default contact? + addr = ', '.join(filter(None, [ + contact.street, + "%s %s" % (contact.zip , contact.city), + contact.state_id and contact.state_id.name, + contact.country_id and contact.country_id.name])) + result = geo_find(tools.ustr(addr)) if result: self.write(cr, uid, [partner.id], { 'partner_latitude': result[0], @@ -94,14 +101,13 @@ class crm_lead(osv.osv): 'partner_assigned_id': fields.many2one('res.partner', 'Assigned Partner', help="Partner this case has been forwarded/assigned to.", select=True), 'date_assign': fields.date('Assignation Date', help="Last date this case was forwarded/assigned to a partner"), } + def _merge_data(self, cr, uid, ids, oldest, fields, context=None): + fields += ['partner_latitude', 'partner_longitude', 'partner_assigned_id', 'date_assign'] + return super(crm_lead, self)._merge_data(cr, uid, ids, oldest, fields, context=context) + def onchange_assign_id(self, cr, uid, ids, partner_assigned_id, context=None): """This function updates the "assignation date" automatically, when manually assign a partner in the geo assign tab - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of stage’s IDs - @stage_id: change state id on run time """ - + """ if not partner_assigned_id: return {'value':{'date_assign': False}} else: @@ -112,72 +118,114 @@ class crm_lead(osv.osv): 'user_id' : user_id} } - def assign_partner(self, cr, uid, ids, context=None): - ok = False - for part in self.browse(cr, uid, ids, context=context): - if not part.country_id: + def action_assign_partner(self, cr, uid, ids, context=None): + return self.assign_partner(cr, uid, ids, partner_id=False, context=context) + + def assign_partner(self, cr, uid, ids, partner_id=False, context=None): + partner_ids = {} + res = False + res_partner = self.pool.get('res.partner') + if not partner_id: + partner_ids = self.search_geo_partner(cr, uid, ids, context=context) + for lead in self.browse(cr, uid, ids, context=context): + if not partner_id: + partner_id = partner_ids.get(lead.id, False) + if not partner_id: continue - addr = ', '.join(filter(None, [part.street, (part.zip or '')+' '+(part.city or ''), part.state_id and part.state_id.name, part.country_id and part.country_id.name])) - result = geo_find(addr.encode('utf8')) - if result: - self.write(cr, uid, [part.id], { - 'partner_latitude': result[0], - 'partner_longitude': result[1] - }, context=context) - + self.assign_geo_localize(cr, uid, [lead.id], lead.partner_latitude, lead.partner_longitude, context=context) + partner = res_partner.browse(cr, uid, partner_id, context=context) + if partner.user_id: + for lead_id in ids: + self.allocate_salesman(cr, uid, [lead_id], [partner.user_id.id], context=context) + self.write(cr, uid, [lead.id], {'date_assign': time.strftime('%Y-%m-%d'), 'partner_assigned_id': partner_id}, context=context) + return res + + + def assign_geo_localize(self, cr, uid, ids, latitude=False, longitude=False, context=None): + for lead in self.browse(cr, uid, ids, context=context): + if not lead.country_id: + continue + addr = ', '.join(filter(None, [ + lead.street, + "%s %s" % (lead.zip, lead.city), + lead.state_id and lead.state_id.name or '', + lead.country_id and lead.country_id.name or '' + ])) + result = geo_find(tools.ustr(addr)) + if not latitude and result: + latitude = result[0] + if not longitude and result: + longitude = result[1] + self.write(cr, uid, [lead.id], { + 'partner_latitude': latitude, + 'partner_longitude': longitude + }, context=context) + return True + + def search_geo_partner(self, cr, uid, ids, context=None): + res_partner = self.pool.get('res.partner') + res_partner_ids = {} + self.assign_geo_localize(cr, uid, ids, context=context) + for lead in self.browse(cr, uid, ids, context=context): + partner_ids = [] + if not lead.country_id: + continue + latitude = lead.partner_latitude + longitude = lead.partner_longitude + if latitude and longitude: # 1. first way: in the same country, small area - part_ids = self.pool.get('res.partner').search(cr, uid, [ - ('partner_weight','>',0), - ('partner_latitude','>',result[0]-2), ('partner_latitude','<',result[0]+2), - ('partner_longitude','>',result[1]-1.5), ('partner_longitude','<',result[1]+1.5), - ('country', '=', part.country_id.id), + partner_ids = res_partner.search(cr, uid, [ + ('partner_weight', '>', 0), + ('partner_latitude', '>', latitude - 2), ('partner_latitude', '<', latitude + 2), + ('partner_longitude', '>', longitude - 1.5), ('partner_longitude', '<', longitude + 1.5), + ('country', '=', lead.country_id.id), ], context=context) # 2. second way: in the same country, big area - if not part_ids: - part_ids = self.pool.get('res.partner').search(cr, uid, [ - ('partner_weight','>',0), - ('partner_latitude','>',result[0]-4), ('partner_latitude','<',result[0]+4), - ('partner_longitude','>',result[1]-3), ('partner_longitude','<',result[1]+3), - ('country', '=', part.country_id.id), + if not partner_ids: + partner_ids = res_partner.search(cr, uid, [ + ('partner_weight', '>', 0), + ('partner_latitude', '>', latitude - 4), ('partner_latitude', '<', latitude + 4), + ('partner_longitude', '>', longitude - 3), ('partner_longitude', '<' , longitude + 3), + ('country', '=', lead.country_id.id), ], context=context) # 5. fifth way: anywhere in same country - if not part_ids: + if not partner_ids: # still haven't found any, let's take all partners in the country! - part_ids = self.pool.get('res.partner').search(cr, uid, [ - ('partner_weight','>',0), - ('country', '=', part.country_id.id), + partner_ids = res_partner.search(cr, uid, [ + ('partner_weight', '>', 0), + ('country', '=', lead.country_id.id), ], context=context) # 6. sixth way: closest partner whatsoever, just to have at least one result - if not part_ids: + if not partner_ids: # warning: point() type takes (longitude, latitude) as parameters in this order! cr.execute("""SELECT id, distance FROM (select id, (point(partner_longitude, partner_latitude) <-> point(%s,%s)) AS distance FROM res_partner WHERE partner_longitude is not null AND partner_latitude is not null AND partner_weight > 0) AS d - ORDER BY distance LIMIT 1""", (result[1],result[0])) + ORDER BY distance LIMIT 1""", (longitude, latitude)) res = cr.dictfetchone() if res: - part_ids.append(res['id']) + partner_ids.append(res['id']) - total = 0 + total_weight = 0 toassign = [] - for part2 in self.pool.get('res.partner').browse(cr, uid, part_ids, context=context): - total += part2.partner_weight - toassign.append( (part2.id, total) ) + for partner in res_partner.browse(cr, uid, partner_ids, context=context): + total_weight += partner.partner_weight + toassign.append( (partner.id, total_weight) ) + random.shuffle(toassign) # avoid always giving the leads to the first ones in db natural order! - mypartner = random.randint(0,total) - for t in toassign: - if mypartner<=t[1]: - vals = self.onchange_assign_id(cr,uid, ids, t[0], context=context)['value'] - vals.update({'partner_assigned_id': t[0], 'date_assign': time.strftime('%Y-%m-%d')}) - self.write(cr, uid, [part.id], vals, context=context) + nearest_weight = random.randint(0, total_weight) + for partner_id, weight in toassign: + if nearest_weight <= weight: + res_partner_ids[lead.id] = partner_id break - ok = True - return ok + return res_partner_ids crm_lead() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm_partner_assign/report/__init__.py b/addons/crm_partner_assign/report/__init__.py index a211aeede1e..45065314b25 100644 --- a/addons/crm_partner_assign/report/__init__.py +++ b/addons/crm_partner_assign/report/__init__.py @@ -22,3 +22,5 @@ import crm_lead_report import crm_partner_report + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm_partner_assign/report/crm_lead_report_view.xml b/addons/crm_partner_assign/report/crm_lead_report_view.xml index 01bbefb84d4..a0bbd62c131 100644 --- a/addons/crm_partner_assign/report/crm_lead_report_view.xml +++ b/addons/crm_partner_assign/report/crm_lead_report_view.xml @@ -141,7 +141,7 @@ <field name="name">Opp. Assignment Analysis</field> <field name="res_model">crm.lead.report.assign</field> <field name="view_type">form</field> - <field name="context">{"search_default_group_partner_date": 1, "search_default_group_grade":1,'group_by_no_leaf':1,'group_by':[]}</field> + <field name="context">{'default_type': 'opportunity', "search_default_group_partner_date": 1, "search_default_group_grade":1,'group_by_no_leaf':1,'group_by':[]}</field> <field name="view_mode">tree</field> <field name="domain">[('type', '=', 'opportunity')]</field> </record> diff --git a/addons/crm_partner_assign/report/crm_partner_report.py b/addons/crm_partner_assign/report/crm_partner_report.py index 10e74a34b76..c5afe9b5b82 100644 --- a/addons/crm_partner_assign/report/crm_partner_report.py +++ b/addons/crm_partner_assign/report/crm_partner_report.py @@ -61,3 +61,5 @@ class crm_partner_report_assign(osv.osv): )""") crm_partner_report_assign() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm_partner_assign/res_partner_demo.xml b/addons/crm_partner_assign/res_partner_demo.xml new file mode 100644 index 00000000000..66ee1fbd5e7 --- /dev/null +++ b/addons/crm_partner_assign/res_partner_demo.xml @@ -0,0 +1,13 @@ +<?xml version="1.0" encoding="UTF-8"?> +<openerp> + <data> + <record id="res_partner_grade_first" model="res.partner.grade"> + <field name="name">First</field> + <field name="sequence">1</field> + </record> + <record id="base.res_partner_ericdubois0" model="res.partner"> + <field name="grade_id" ref="res_partner_grade_first"/> + <field name="partner_weight">10</field> + </record> + </data> +</openerp> diff --git a/addons/crm_partner_assign/test/process/partner_assign.yml b/addons/crm_partner_assign/test/process/partner_assign.yml new file mode 100644 index 00000000000..18f03c9d41c --- /dev/null +++ b/addons/crm_partner_assign/test/process/partner_assign.yml @@ -0,0 +1,37 @@ +- + In order to test find nearest Partner functionality and assign to opportunity , +- + I Set Geo Lattitude and Longitude according to partner address. +- + !python {model: res.partner}: | + self.geo_localize(cr, uid, [ref('base.res_partner_ericdubois0')], context) +- + I check Geo Latitude and Longitude of partner after set +- + !python {model: res.partner}: | + partner = self.browse(cr, uid, ref('base.res_partner_ericdubois0')) + assert partner.partner_latitude == 50.4530495 , "Latitude is wrong" + assert partner.partner_longitude == 3.9693885 , "Longitude is wrong" +- + I assign nearest partner to opportunity. +- + !python {model: crm.lead}: | + self.assign_partner(cr, uid, [ref('crm.crm_case_abcfuelcounits0')], context=context) +- + I check assigned partner of opportunity who is nearest Geo Latitude and Longitude of opportunity. +- + !python {model: crm.lead}: | + lead = self.browse(cr, uid, ref('crm.crm_case_abcfuelcounits0')) + assert lead.partner_assigned_id.id == ref('base.res_partner_ericdubois0') , "Opportuniy is not assigned nearest partner" + assert lead.partner_latitude == 50.8495239 , "Latitude is wrong" + assert lead.partner_longitude == 4.3667002 , "Longitude is wrong" +- + I forward this opportunity to its nearest partner. +- + !python {model: crm.lead.forward.to.partner}: | + context.update({'active_model': 'crm.lead', 'active_id': ref('crm.crm_case_abcfuelcounits0'), 'active_ids': [ref('crm.crm_case_abcfuelcounits0')]}) + forward_id = self.create(cr, uid, {'email_from': 'test@openerp.com', 'send_to': 'partner'}, context=context) + try: + self.action_forward(cr, uid, [forward_id], context=context) + except: + pass diff --git a/addons/crm_partner_assign/test/test_crm_partner_assign.yml b/addons/crm_partner_assign/test/test_crm_partner_assign.yml deleted file mode 100644 index 359fa8454f6..00000000000 --- a/addons/crm_partner_assign/test/test_crm_partner_assign.yml +++ /dev/null @@ -1,137 +0,0 @@ -- - In order to test Forward Partner functionality, I create an opportunity and forward it to partner. -- - I assign an email address to Administrator. -- - !record {model: res.users, id: base.user_root}: - user_email: admin@openerp.com -- - I create some partner grades. -- - I create a grade 'First'. -- - !record {model: res.partner.grade, id: res_partner_grade_first0}: - name: First - sequence: 1 -- - I create another grade 'Second'. -- - !record {model: res.partner.grade, id: res_partner_grade_second0}: - name: Second - sequence: 2 -- - I create one more grade 'Third'. -- - !record {model: res.partner.grade, id: res_partner_grade_third0}: - name: Third - sequence: 3 -- - I assign grade 'First' to the partner 'Axelor'. -- - !record {model: res.partner, id: base.res_partner_desertic_hispafuentes}: - grade_id: res_partner_grade_first0 -- - I change the User email id or partner if needed. -- - !python {model: res.partner}: | - self.geo_localize(cr, uid, [ref('base.res_partner_desertic_hispafuentes')], context) -- - I assgin a reply-to email address to Sales Team. -- - !record {model: crm.case.section, id: crm.section_sales_department}: - reply_to: sales_openerp@openerp.com -- - I create an opportunity 'Questionnaire on OpenERP'. -- - !record {model: crm.lead, id: crm_lead_questionnaireonopenerp0}: - categ_id: crm.categ_oppor7 - section_id: crm.section_sales_department - country_id: base.fr - date_assign: '2011-02-07' - day_close: 0.0 - day_open: 0.0 - email_from: info@axelor.com - name: Questionnaire on OpenERP - partner_address_id: base.res_partner_address_3000 - partner_assigned_id: base.res_partner_desertic_hispafuentes - partner_id: base.res_partner_desertic_hispafuentes - partner_latitude: 0.0 - partner_longitude: 0.0 - phone: +33 1 64 61 04 01 - planned_revenue: 0.0 - probability: 0.0 - type: opportunity -- - I change the assigned partner. -- - !python {model: crm.lead}: | - self.onchange_assign_id(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], ref('base.res_partner_desertic_hispafuentes'), context) - self.assign_partner(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], context) -- - I change the User email id or partner if needed. -- - !python {model: crm.lead.forward.to.partner}: | - context.update({'history': 'latest', }) - user = ref('base.user_root') - self.on_change_email(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], user) - self.on_change_partner(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], ref('base.res_partner_desertic_hispafuentes')) -- - I change in history define. -- - !python {model: crm.lead.forward.to.partner}: | - context.update({'history': 'info', }) - self.on_change_history(cr, uid, [ref('crm_lead_questionnaireonopenerp0')], context.get('history'), context) -- - I check the case history. -- - !python {model: crm.lead.forward.to.partner}: | - context.update({'history': 'latest', }) - self._get_case_history(cr, uid, context.get('history'), ref('crm_lead_questionnaireonopenerp0'), context=context) - - context.update({'history': 'info', }) - self._get_case_history(cr, uid, context.get('history'), ref('crm_lead_questionnaireonopenerp0'), context=context) - - context.update({'history': 'whole', }) - self._get_case_history(cr, uid, context.get('history'), ref('crm_lead_questionnaireonopenerp0'), context=context) -- - I get lead details. -- - !python {model: crm.lead.forward.to.partner}: | - self.get_lead_details(cr, uid, ref('crm_lead_questionnaireonopenerp0'), context) -- - I click on Forward button. -- - !python {model: crm.lead.forward.to.partner}: | - from tools import config - vals = { - 'subject': 'email', - 'email_to': 'info@axelor.com', - 'email_from': 'Administrator <admin@openerp.com>', - 'reply_to': 'sales_openerp@openerp.com', - 'state': 'draft', - 'history': 'latest', - } - ids = self.create(cr, uid, vals, context={'active_id': ref('crm_lead_questionnaireonopenerp0'), 'active_model': 'crm.lead'}) - host = config.get('smtp_user', '127.0.0.1') - assert config.get(host, True), 'SMTP not configured !' - try: - self.action_forward(cr, uid, [ids], context={'active_id': ref('crm_lead_questionnaireonopenerp0'), 'active_model': 'crm.lead'}) - except: - pass -- - I create the opportunity. -- - !record {model: crm.lead, id: crm_opportunity2}: - email_from: info@balmerinc.be - name: 'FUEL CO 829264 - 10002 units' - partner_address_id: base.res_partner_address_1 - partner_id: base.res_partner_9 - probability: 1.0 - stage_id: crm.stage_lead1 - categ_id: crm.categ_oppor2 - section_id: crm.section_sales_department -- | - I Update the data. -- - !python {model: crm.merge.opportunity}: | - self._update_data([ref('crm_opportunity2')], ref('crm_lead_questionnaireonopenerp0')) diff --git a/addons/crm_partner_assign/wizard/__init__.py b/addons/crm_partner_assign/wizard/__init__.py index be6c1533722..9224173145b 100644 --- a/addons/crm_partner_assign/wizard/__init__.py +++ b/addons/crm_partner_assign/wizard/__init__.py @@ -20,4 +20,3 @@ ############################################################################## import crm_forward_to_partner -import crm_merge_opportunity diff --git a/addons/crm_partner_assign/wizard/crm_forward_to_partner.py b/addons/crm_partner_assign/wizard/crm_forward_to_partner.py index cdaf8f19b12..565f99b9db1 100644 --- a/addons/crm_partner_assign/wizard/crm_forward_to_partner.py +++ b/addons/crm_partner_assign/wizard/crm_forward_to_partner.py @@ -24,6 +24,7 @@ import time import re from osv import osv, fields from tools.translate import _ +from mail.mail_message import to_email class crm_lead_forward_to_partner(osv.osv_memory): """Forwards lead history""" @@ -34,6 +35,7 @@ class crm_lead_forward_to_partner(osv.osv_memory): 'send_to': fields.selection([('user', 'User'), ('partner', 'Partner'), \ ('email', 'Email Address')], 'Send to', required=True), 'user_id': fields.many2one('res.users', "User"), + 'attachment_ids': fields.many2many('ir.attachment','lead_forward_to_partner_attachment_rel', 'wizard_id', 'attachment_id', 'Attachments'), 'partner_id' : fields.many2one('res.partner', 'Partner'), 'address_id' : fields.many2one('res.partner.address', 'Address'), 'history': fields.selection([('info', 'Case Information'), ('latest', 'Latest email'), ('whole', 'Whole Story')], 'Send history', required=True), @@ -46,48 +48,8 @@ class crm_lead_forward_to_partner(osv.osv_memory): } - def get_whole_history(self, cr, uid, ids, context=None): - """This function gets whole communication history and returns as top posting style - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of history IDs - @param context: A standard dictionary for contextual values - """ - whole = [] - for hist_id in ids: - whole.append(self.get_latest_history(cr, uid, hist_id, context=context)) - whole = '\n\n'.join(whole) - return whole or '' - - def get_latest_history(self, cr, uid, hist_id, context=None): - """This function gets latest communication and returns as top posting style - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param hist_id: Id of latest history - @param context: A standard dictionary for contextual values - """ - log_pool = self.pool.get('mail.message') - hist = log_pool.browse(cr, uid, hist_id, context=context) - header = '-------- Original Message --------' - sender = 'From: %s' %(hist.email_from or '') - to = 'To: %s' % (hist.email_to or '') - sentdate = 'Date: %s' % (hist.date or '') - desc = '\n%s'%(hist.body_text) - original = [header, sender, to, sentdate, desc] - original = '\n'.join(original) - return original - + def on_change_email(self, cr, uid, ids, user): - """This function fills email information based on user selected - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Mail’s IDs - @param user: Changed User id - @param partner: Changed Partner id - """ if not user: return {'value': {'email_to': False}} email = self.pool.get('res.users')._get_email_from(cr, uid, [user])[user] @@ -98,54 +60,19 @@ class crm_lead_forward_to_partner(osv.osv_memory): * info: Forward the case information * whole: Send the whole history * latest: Send the latest histoy - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of history IDs - @param context: A standard dictionary for contextual values """ #TODO: ids and context are not comming - res = False + res = {} res_id = context.get('active_id') - msg_val = self._get_case_history(cr, uid, history_type, res_id, context=context) - if msg_val: - res = {'value': {'body_text' : '\n\n' + msg_val}} + model = context.get('active_model') + lead = self.pool.get(model).browse(cr, uid, res_id, context) + body_text = self._get_message_body_text(cr, uid, lead, history_type, context=context) + if body_text: + res = {'value': {'body_text' : body_text}} return res - - def _get_case_history(self, cr, uid, history_type, res_id, context=None): - if not res_id: - return - - msg_val = '' - case_info = self.get_lead_details(cr, uid, res_id, context=context) - model_pool = self.pool.get('crm.lead') - - if history_type == 'info': - msg_val = case_info - - elif history_type == 'whole': - log_ids = model_pool.browse(cr, uid, res_id, context=context).message_ids - log_ids = map(lambda x: x.id, filter(lambda x: x.email_from, log_ids)) - msg_val = case_info + '\n\n' + self.get_whole_history(cr, uid, log_ids, context=context) - - elif history_type == 'latest': - log_ids = model_pool.browse(cr, uid, res_id, context=context).message_ids - log_ids = filter(lambda x: x.email_from and x.id, log_ids) - if not log_ids: - msg_val = case_info - else: - msg_val = case_info + '\n\n' + self.get_latest_history(cr, uid, log_ids[0].id, context=context) - - return msg_val - + def on_change_partner(self, cr, uid, ids, partner_id): """This function fills address information based on partner/user selected - @param self: The object pointer - @param cr: the current row, from the database cursor, - @param uid: the current user’s ID for security checks, - @param ids: List of Mail’s IDs - @param user: Changed User id - @param partner: Changed Partner id """ if not partner_id: return {'value' : {'email_to' : False, 'address_id': False}} @@ -158,11 +85,11 @@ class crm_lead_forward_to_partner(osv.osv_memory): partner = partner_obj.browse(cr, uid, [partner_id]) user_id = partner and partner[0].user_id or False email = user_id and user_id.user_email or '' - data.update({'email_cc' : email}) + data.update({'email_cc' : email, 'user_id': user_id and user_id.id or False}) return { 'value' : data, 'domain' : {'address_id' : partner_id and "[('partner_id', '=', partner_id)]" or "[]"} - } + } def on_change_address(self, cr, uid, ids, address_id): email = '' @@ -170,155 +97,125 @@ class crm_lead_forward_to_partner(osv.osv_memory): email = self.pool.get('res.partner.address').browse(cr, uid, address_id).email return {'value': {'email_to' : email}} - def send_mail(self, cr, uid, ids, context=None): - if context is None: - context = {} - super(crm_lead_forward_to_partner, self).send_mail(cr, uid, ids, context=context) - self.action_forward(cr, uid, ids, context) - return {'type': 'ir.actions.act_window_close'} - def action_forward(self, cr, uid, ids, context=None): """ Forward the lead to a partner """ if context is None: context = {} - this = self.browse(cr, uid, ids[0], context=context) - case_pool = self.pool.get(context.get('active_model')) - res_id = context and context.get('active_id', False) or False - case = case_pool.browse(cr, uid, res_id, context=context) - context.update({'mail': 'forward'}) - - to_write = {'date_assign': time.strftime('%Y-%m-%d')} - if (this.send_to == 'partner' and this.partner_id): - to_write['partner_assigned_id'] = this.partner_id.id - - if this.send_to == 'user': - to_write.update({'user_id' : this.user_id.id}) - email_re = r'([^ ,<@]+@[^> ,]+)' - email_cc = re.findall(email_re, case.email_cc or '') - new_cc = [] - if case.email_cc: - new_cc.append(case.email_cc) - for to in this.email_to.split(','): - email_to = re.findall(email_re, to) - email_to = email_to and email_to[0] or '' - if email_to not in email_cc: - new_cc.append(to) - to_write.update({'email_cc' : ', '.join(new_cc) }) - case_pool.write(cr, uid, case.id, to_write, context=context) - return {'type': 'ir.actions.act_window_close'} + res = {'type': 'ir.actions.act_window_close'} + model = context.get('active_model') + if model not in ('crm.lead'): + return res - def get_lead_details(self, cr, uid, lead_id, context=None): - body = [] - lead_proxy = self.pool.get('crm.lead') - lead = lead_proxy.browse(cr, uid, lead_id, context=context) - if not lead.type or lead.type == 'lead' or not lead.partner_address_id: - field_names = [ - 'partner_name', 'title', 'function', 'street', 'street2', - 'zip', 'city', 'country_id', 'state_id', 'email_from', - 'phone', 'fax', 'mobile', 'categ_id', 'description', - ] - - for field_name in field_names: - field_definition = lead_proxy._columns[field_name] - value = None - - if field_definition._type == 'selection': - if hasattr(field_definition.selection, '__call__'): - key = field_definition.selection(lead_proxy, cr, uid, context=context) - else: - key = field_definition.selection - value = dict(key).get(lead[field_name], lead[field_name]) - elif field_definition._type == 'many2one': - if lead[field_name]: - value = lead[field_name].name_get()[0][1] - else: - value = lead[field_name] - - body.append("%s: %s" % (field_definition.string, value or '')) - elif lead.type == 'opportunity': - pa = lead.partner_address_id - body += [ - "Partner: %s" % (lead.partner_id and lead.partner_id.name_get()[0][1]), - "Contact: %s" % (pa.name or ''), - "Title: %s" % (pa.title or ''), - "Function: %s" % (pa.function or ''), - "Street: %s" % (pa.street or ''), - "Street2: %s" % (pa.street2 or ''), - "Zip: %s" % (pa.zip or ''), - "City: %s" % (pa.city or ''), - "Country: %s" % (pa.country_id and pa.country_id.name_get()[0][1] or ''), - "State: %s" % (pa.state_id and pa.state_id.name_get()[0][1] or ''), - "Email: %s" % (pa.email or ''), - "Phone: %s" % (pa.phone or ''), - "Fax: %s" % (pa.fax or ''), - "Mobile: %s" % (pa.mobile or ''), - "Lead Category: %s" % (lead.categ_id and lead.categ_id.name or ''), - "Details: %s" % (lead.description or ''), - ] - return "\n".join(body + ['---']) + this = self.browse(cr, uid, ids[0], context=context) + lead = self.pool.get(model) + lead_id = context and context.get('active_id', False) or False + lead_ids = lead_id and [lead_id] or [] + mode = context.get('mail.compose.message.mode') + if mode == 'mass_mail': + lead_ids = context and context.get('active_ids', []) or [] + value = self.default_get(cr, uid, ['body_text', 'email_to', 'email_cc', 'subject', 'history'], context=context) + self.write(cr, uid, ids, value, context=context) + context['mail.compose.message.mode'] = mode + + self.send_mail(cr, uid, ids, context=context) + for case in lead.browse(cr, uid, lead_ids, context=context): + if (this.send_to == 'partner' and this.partner_id): + lead.assign_partner(cr, uid, [case.id], this.partner_id.id, context=context) + + if this.send_to == 'user': + lead.allocate_salesman(cr, uid, [case.id], [this.user_id.id], context=context) + + email_cc = to_email(case.email_cc) + email_cc = email_cc and email_cc[0] or '' + new_cc = [] + if email_cc: + new_cc.append(email_cc) + for to in this.email_to.split(','): + email_to = to_email(to) + email_to = email_to and email_to[0] or '' + if email_to not in new_cc: + new_cc.append(to) + update_vals = {'email_cc' : ', '.join(new_cc) } + lead.write(cr, uid, case.id, update_vals, context=context) + return res - def default_get(self, cr, uid, fields, context=None): - """ - This function gets default values + def _get_info_body_text(self, cr, uid, lead, context=None): + field_names = [] + proxy = self.pool.get(lead._name) + if lead.type == 'opportunity': + field_names += ['partner_id'] + field_names += [ + 'partner_name' , 'title', 'function', 'street', 'street2', + 'zip', 'city', 'country_id', 'state_id', 'email_from', + 'phone', 'fax', 'mobile', 'categ_id', 'description', + ] + return proxy._mail_body_text(cr, uid, lead, field_names, context=context) + + def _get_message_body_text(self, cr, uid, lead, mode='whole', context=None): + """This function gets whole communication history and returns as top posting style """ - + mail_message = self.pool.get('mail.message') + message_ids = [] + body = self._get_info_body_text(cr, uid, lead, context=context) + if mode in ('whole', 'latest'): + message_ids = lead.message_ids + message_ids = map(lambda x: x.id, filter(lambda x: x.email_from, message_ids)) + if mode == 'latest' and len(message_ids): + message_ids = [message_ids[0]] + for message in mail_message.browse(cr, uid, message_ids, context=context): + header = '-------- Original Message --------' + sender = 'From: %s' %(message.email_from or '') + to = 'To: %s' % (message.email_to or '') + sentdate = 'Date: %s' % (message.date or '') + desc = '\n%s'%(message.body_text) + original = [header, sender, to, sentdate, desc, '\n'] + original = '\n'.join(original) + body += original + return body or '' + + def get_value(self, cr, uid, model, res_id, context=None): if context is None: context = {} + res = super(crm_lead_forward_to_partner, self).get_value(cr, uid, model, res_id, context=context) + if model not in ("crm.lead"): + return res + proxy = self.pool.get(model) + partner = self.pool.get('res.partner') + lead = proxy.browse(cr, uid, res_id, context=context) + mode = context.get('mail.compose.message.mode') + if mode == "forward": + body_type = context.get('mail.compose.message.body') + email_cc = res.get('email_cc', "") + email = res.get('email_to', "") + subject = '%s: %s - %s' % (_('Fwd'), 'Lead forward', lead.name) + body = self._get_message_body_text(cr, uid, lead, body_type, context=context) + partner_assigned_id = lead.partner_assigned_id and lead.partner_assigned_id.id or False + user_id = False + if not partner_assigned_id: + partner_assigned_id = proxy.search_geo_partner(cr, uid, [lead.id], context=None).get(lead.id, False) + if partner_assigned_id: + assigned_partner = partner.browse(cr, uid, partner_assigned_id, context=context) + user_id = assigned_partner.user_id and assigned_partner.user_id.id or False + email_cc = assigned_partner.user_id and assigned_partner.user_id.user_email or '' + email = assigned_partner.email + + res.update({ + 'subject' : subject, + 'body_text' : body, + 'email_cc' : email_cc, + 'email_to' : email, + 'partner_assigned_id': partner_assigned_id, + 'user_id': user_id, + }) + return res + - defaults = super(crm_lead_forward_to_partner, self).default_get(cr, uid, fields, context=context) - active_id = context.get('active_id') - if not active_id: - return defaults - - lead_proxy = self.pool.get('crm.lead') - partner_obj = self.pool.get('res.partner') - lead = lead_proxy.browse(cr, uid, active_id, context=context) - - email_cc = '' - email = '' - if lead.partner_assigned_id: - partner = partner_obj.browse(cr, uid, [lead.partner_assigned_id.id]) - user_id = partner and partner[0].user_id or False - email_cc = user_id and user_id.user_email or '' - - addr = partner_obj.address_get(cr, uid, [partner[0].id], ['contact']) - email = self.pool.get('res.partner.address').browse(cr, uid, addr['contact']).email - - body = self._get_case_history(cr, uid, defaults.get('history', 'latest'), lead.id, context=context) - defaults.update({ - 'subject' : '%s: %s - %s' % (_('Fwd'), 'Openerp lead forward', lead.name), - 'body_text' : body, - 'email_cc' : email_cc, - 'email_to' : email or 'dummy@dummy.ly' - }) - return defaults - -class crm_lead_mass_forward_to_partner(osv.osv_memory): - _name = 'crm.lead.mass.forward.to.partner' - _inherit = 'crm.lead.forward.to.partner' - - def action_mass_forward(self, cr, uid, ids, context=None): - if not context: + def default_get(self, cr, uid, fields, context=None): + if context is None: context = {} - - active_ids = context.get('active_ids') - case_obj = self.pool.get('crm.lead') - for case in case_obj.browse(cr, uid, active_ids, context=context): - if not case.partner_assigned_id: - case_obj.assign_partner(cr,uid, [case.id], context=context) - case = case_obj.browse(cr, uid, case.id, context=context) - - if not case.partner_assigned_id: - continue - - context.update({'active_id' : case.id}) - value = self.default_get(cr, uid, ['body_text', 'email_to', 'email_cc', 'subject', 'history'], context=context) - self.write(cr, uid, ids, value, context=context) - self.action_forward(cr,uid, ids, context=context) - - return {'type': 'ir.actions.act_window_close'} - - + context['mail.compose.message.mode'] = 'forward' + context['mail.compose.message.body'] = 'info' + return super(crm_lead_forward_to_partner, self).default_get(cr, uid, fields, context=context) # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm_partner_assign/wizard/crm_forward_to_partner_view.xml b/addons/crm_partner_assign/wizard/crm_forward_to_partner_view.xml index 8bdb03cf962..645c729b164 100644 --- a/addons/crm_partner_assign/wizard/crm_forward_to_partner_view.xml +++ b/addons/crm_partner_assign/wizard/crm_forward_to_partner_view.xml @@ -35,7 +35,7 @@ <separator string="" colspan="4"/> <notebook colspan="4"> <page string="Body"> - <field name="body" colspan="4" nolabel="1"/> + <field name="body_text" colspan="4" nolabel="1"/> </page> <page string="Attachments"> <label string="Add here all attachments of the current document you want to include in the Email." colspan="4"/> @@ -45,7 +45,7 @@ <group col="4" colspan="4"> <label string="" colspan="1"/> <button icon="gtk-close" special="cancel" string="Close"/> - <button icon="gtk-ok" name="send_mail" string="Send" type="object"/> + <button name="action_forward" string="Send" type="object" icon="gtk-go-forward"/> </group> </form> </field> @@ -61,56 +61,14 @@ </record> - <record model="ir.ui.view" id="crm_forward_mass_mail_view"> - <field name="name">crm.new.mass.forward.mail.form</field> - <field name="model">crm.lead.mass.forward.to.partner</field> - <field name="type">form</field> - <field name="arch" type="xml"> - <form string="Send Mail" col="4"> - <group colspan="4" col="2"> - <separator string="Forward to Partner" colspan="4" /> - - <field name="history" colspan="2" on_change="on_change_history(history, context)" invisible="1"/> - <field name="email_from"/> - <field name="reply_to"/> - <field name="email_to" invisible="1" /> - <field name="email_cc" invisible="1" /> - <field name="subject" invisible="1" /> - <field name="html"/> - </group> - <notebook colspan="6" > - <page string="Message" > - <field name="body" nolabel="1" colspan="4" default_focus="1" readonly="1"/> - </page> - <page string="Attachments" > - <field name="attachment_ids" colspan="4" nolabel="1"> - <form string="Attachment"> - <field name="binary" filename="name" /> - <field name="name" /> - </form> - <tree string="Attachments"> - <field name="name" /> - </tree> - </field> - </page> - </notebook> - <separator string="" colspan="6"/> - <group colspan="6" col="4" > - <field name="state" /> - <button string="_Cancel" icon="gtk-cancel" special="cancel" /> - <button name="action_mass_forward" type="object" string="_Mass forward" icon="gtk-go-forward" /> - </group> - </form> - </field> - </record> - + <act_window id="action_crm_send_mass_forward" multi="True" key2="client_action_multi" name="Mass forward to partner" - res_model="crm.lead.mass.forward.to.partner" src_model="crm.lead" + res_model="crm.lead.forward.to.partner" src_model="crm.lead" view_mode="form" target="new" view_type="form" - context="{'mass_forward' : True}" - view_id="crm_forward_mass_mail_view" + context="{'mail.compose.message.mode' : 'mass_mail'}" + view_id="crm_lead_forward_to_partner_form" /> diff --git a/addons/crm_profiling/__openerp__.py b/addons/crm_profiling/__openerp__.py index 656f8360f0b..1d8f9f7ee79 100644 --- a/addons/crm_profiling/__openerp__.py +++ b/addons/crm_profiling/__openerp__.py @@ -41,7 +41,9 @@ It also has been merged with the earlier CRM & SRM segmentation tool because the 'init_xml': [], 'update_xml': ['security/ir.model.access.csv', 'crm_profiling_view.xml'], 'demo_xml': ['crm_profiling_demo.xml'], - 'test': ['test/test_crm_profiling.yml'], + 'test': [ + #'test/process/profiling.yml', #TODO:It's not debuging because problem to write data for open.questionnaire from partner section. + ], 'installable': True, 'active': False, 'certificate': '0033984979005', diff --git a/addons/crm_profiling/crm_profiling_demo.xml b/addons/crm_profiling/crm_profiling_demo.xml index 1789e8bace8..6a0ca130ec3 100644 --- a/addons/crm_profiling/crm_profiling_demo.xml +++ b/addons/crm_profiling/crm_profiling_demo.xml @@ -102,7 +102,7 @@ Profiles / crm.segmentation --> - <record model="crm.segmentation" id="crm_segmentation0"> + <record model="crm.segmentation" id="crm.crm_segmentation0"> <field name="name">OpenERP partners</field> <field name="answer_yes" eval="[(6,0,[partner_tiny1])]" /> <field name="categ_id" ref="base.res_partner_category_2"/> @@ -111,22 +111,23 @@ <record model="crm.segmentation" id="crm_segmentation1"> <field name="name">Bronze partners</field> <field name="answer_yes" eval="[(6,0,[partner_quality1])]" /> - <field name="parent_id" ref="crm_segmentation0"/> + <field name="parent_id" ref="crm.crm_segmentation0"/> <field name="categ_id" ref="base.res_partner_category_3"/> <field name="profiling_active">True</field> </record> <record model="crm.segmentation" id="crm_segmentation2"> <field name="name">Silver partners</field> <field name="answer_yes" eval="[(6,0,[partner_quality2])]" /> - <field name="parent_id" ref="crm_segmentation0"/> + <field name="parent_id" ref="crm.crm_segmentation0"/> <field name="categ_id" ref="base.res_partner_category_4"/> <field name="profiling_active">True</field> </record> <record model="crm.segmentation" id="crm_segmentation3"> <field name="name">Gold partners</field> <field name="answer_yes" eval="[(6,0,[partner_quality3])]" /> - <field name="parent_id" ref="crm_segmentation0"/> + <field name="parent_id" ref="crm.crm_segmentation0"/> <field name="categ_id" ref="base.res_partner_category_5"/> + <field name="exclusif">True</field> <field name="profiling_active">True</field> </record> <record model="crm.segmentation" id="crm_segmentation4"> diff --git a/addons/crm_profiling/test/process/profiling.yml b/addons/crm_profiling/test/process/profiling.yml new file mode 100644 index 00000000000..91c48410f8d --- /dev/null +++ b/addons/crm_profiling/test/process/profiling.yml @@ -0,0 +1,10 @@ +- + I check segmentation which allows users to perform segmentation within partners + and set the category according to question, so first compute questions(answers) + scenario with parther and check that category set according to questions. +- + !python {model: res.partner}: | + data ={'form': {'quest_form3': ref("partner_quality3"), 'quest_form2': ref("nb_employees2"),'quest_form1': ref("sector1"),'questionnaire_name': ref('questionnaire1')}, 'ids': [ref('base.res_partner_ericdubois0')], 'report_type': 'pdf', 'model': 'res.partner', 'id': ref('base.res_partner_ericdubois0')} + data = self._questionnaire_compute(cr, uid, data, context) + partner = self.browse(cr, uid, ref('base.res_partner_ericdubois0')) + assert partner.category_id[0].id == ref("base.res_partner_category_17"), "Category not assign properly" diff --git a/addons/crm_profiling/test/test_crm_profiling.yml b/addons/crm_profiling/test/test_crm_profiling.yml deleted file mode 100644 index 2b70cac592b..00000000000 --- a/addons/crm_profiling/test/test_crm_profiling.yml +++ /dev/null @@ -1,77 +0,0 @@ -- | - I check segmentation which allows users to perform segmentation within partners. -- - I create a crm profiling question record. -- - !record {model: crm_profiling.question, id: crm_profiling_question_openerppartner0}: - answers_ids: - - name: 'no' - name: OpenERP partner? -- - I create a crm profiling answer record. -- - !record {model: crm_profiling.answer, id: crm_profiling_answer_openerppartner0}: - name: 'yes' - question_id: crm_profiling_question_openerppartner0 -- - I create Partner category Customers. -- - !record {model: res.partner.category, id: res_partner_category_customers0}: - name: Customers -- | - I'm creating new partner "John" with his email "info@mycustomer.com". -- - !record {model: res.partner, id: res_partner_john0}: - address: - - city: Bruxelles - country_id: base.be - street: Rue des Palais 51, bte 33 - type: default - zip: '1000' - email: 'info@mycustomer.com' - name: John - category_id: - - res_partner_category_customers0 - answers_ids: - - crm_profiling_answer_openerppartner0 - -- - Define the answers and category to partner. -- - !python {model: res.partner}: | - data ={'form': {'questionnaire_name': ref('res_partner_john0')}, 'ids': [ref('res_partner_john0')], 'report_type': 'pdf', 'model': 'res.partner', 'id': ref('res_partner_john0')} - self._questionnaire_compute(cr, uid, data, context) -- | - I start by creating new Questionnaire. -- - !record {model: crm_profiling.questionnaire, id: crm_profiling_questionnaire_basequestionnaire0}: - description: First questionnaire. - name: Base questionnaire - questions_ids: - - crm_profiling.activity_sector - - crm_profiling.nb_employees - - crm_profiling.partner_level -- | - I create the form for the "Base questionnaire". -- - !python {model: crm_profiling.questionnaire}: | - context.update({'active_id':ref('res_partner_john0')}) - data ={'form': {'questionnaire_name': ref('res_partner_john0')}, 'ids': [ref('res_partner_john0')], 'report_type': 'pdf', 'model': 'res.partner', 'id': ref('res_partner_john0')} - self.build_form(cr, uid, data, context) -- - I create a segmentation record. -- - !record {model: crm.segmentation, id: crm_segmentation_test1}: - answer_yes: - - crm_profiling_answer_openerppartner0 - categ_id: res_partner_category_customers0 - name: test - parent_id: crm_profiling.crm_segmentation0 - profiling_active: true - som_interval: 0.0 -- | - I continue the process of segmentation. -- - !python {model: crm.segmentation}: | - self.process_continue(cr, uid, [ref('crm_segmentation_test1')], start=False) - diff --git a/addons/crm_todo/__init__.py b/addons/crm_todo/__init__.py index 891c71db7ff..528f4b2d439 100644 --- a/addons/crm_todo/__init__.py +++ b/addons/crm_todo/__init__.py @@ -20,3 +20,5 @@ ############################################################################## import crm_todo + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm_todo/__openerp__.py b/addons/crm_todo/__openerp__.py index 9a57a24cf27..01f66160b0b 100644 --- a/addons/crm_todo/__openerp__.py +++ b/addons/crm_todo/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'To Do List', + 'name': 'CRM Todo Lists', 'version': '1.0', - 'category': 'Customer Relationship Management', + "category": 'Hidden/Link', 'complexity': "easy", 'description': """ Todo list for CRM leads and opportunities. @@ -39,3 +39,5 @@ Todo list for CRM leads and opportunities. 'installable': True, 'active': False, } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/crm_todo/crm_todo.py b/addons/crm_todo/crm_todo.py index ba7445ecef1..b1f6aa05af0 100644 --- a/addons/crm_todo/crm_todo.py +++ b/addons/crm_todo/crm_todo.py @@ -35,3 +35,5 @@ class crm_todo(osv.osv): + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/decimal_precision/__init__.py b/addons/decimal_precision/__init__.py index 708ad26bbe1..ea6c1b4d1ca 100644 --- a/addons/decimal_precision/__init__.py +++ b/addons/decimal_precision/__init__.py @@ -22,3 +22,5 @@ #import decimal_precision from decimal_precision import get_precision + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/decimal_precision/__openerp__.py b/addons/decimal_precision/__openerp__.py index b8ac25eb379..303d42558b3 100644 --- a/addons/decimal_precision/__openerp__.py +++ b/addons/decimal_precision/__openerp__.py @@ -30,7 +30,7 @@ The decimal precision is configured per company. "author": "OpenERP SA", "version": "0.1", "depends": ["base"], - "category" : "Hidden", + "category" : "Tools", 'complexity': "easy", "init_xml": [], "update_xml": [ @@ -44,3 +44,5 @@ The decimal precision is configured per company. } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/delivery/delivery_view.xml b/addons/delivery/delivery_view.xml index deb13679355..c46253777d2 100644 --- a/addons/delivery/delivery_view.xml +++ b/addons/delivery/delivery_view.xml @@ -233,7 +233,7 @@ <field name="view_mode">tree,form</field> <field name="domain">[('invoice_state','=','2binvoiced'),('state','=','done'),('type','=','out')]</field> <field name="filter" eval="True"/> - <field name="context">{'contact_display': 'partner'}</field> + <field name="context">{'default_invoice_state': '2binvoiced', 'default_type': 'out', 'contact_display': 'partner'}</field> <field name="search_view_id" ref="stock.view_picking_out_search"/> </record> diff --git a/addons/delivery/i18n/cs.po b/addons/delivery/i18n/cs.po index b703e4b42c8..7cb6f787ed1 100644 --- a/addons/delivery/i18n/cs.po +++ b/addons/delivery/i18n/cs.po @@ -4,111 +4,112 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 5.0.4\n" +"Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2009-02-03 19:47+0000\n" -"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n" -"Language-Team: \n" +"PO-Revision-Date: 2011-11-25 14:16+0000\n" +"Last-Translator: Jiří Hajda <robie@centrum.cz>\n" +"Language-Team: Czech <openerp-i18n-czech@lists.launchpad.net >\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 04:55+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:49+0000\n" +"X-Generator: Launchpad (build 14381)\n" +"X-Poedit-Language: Czech\n" #. module: delivery #: report:sale.shipping:0 msgid "Order Ref." -msgstr "" +msgstr "Odkaz objednávky" #. module: delivery #: model:product.template,name:delivery.delivery_product_product_template msgid "Delivery by Poste" -msgstr "" +msgstr "Dodání podle zaslání" #. module: delivery #: view:delivery.grid:0 msgid "Destination" -msgstr "" +msgstr "Cíl" #. module: delivery #: field:stock.move,weight_net:0 msgid "Net weight" -msgstr "" +msgstr "Čistá hmotnost" #. module: delivery #: view:stock.picking:0 msgid "Delivery Order" -msgstr "" +msgstr "Objednávka doručení" #. module: delivery #: code:addons/delivery/delivery.py:141 #, python-format msgid "No price available !" -msgstr "" +msgstr "Žádná dostupná cena !" #. module: delivery #: model:ir.model,name:delivery.model_delivery_grid_line msgid "Delivery Grid Line" -msgstr "" +msgstr "Řádek dodací sítě" #. module: delivery #: view:delivery.grid:0 msgid "Delivery grids" -msgstr "" +msgstr "Dodací sítě" #. module: delivery #: selection:delivery.grid.line,type:0 #: selection:delivery.grid.line,variable_factor:0 #: field:stock.picking,volume:0 msgid "Volume" -msgstr "" +msgstr "Objem" #. module: delivery #: sql_constraint:sale.order:0 msgid "Order Reference must be unique !" -msgstr "" +msgstr "Odkaz objednávky musí být jedinečný !" #. module: delivery #: field:delivery.grid,line_ids:0 msgid "Grid Line" -msgstr "" +msgstr "Řádek sítě" #. module: delivery #: model:ir.actions.report.xml,name:delivery.report_shipping msgid "Delivery order" -msgstr "" +msgstr "Objednávka doručení" #. module: delivery #: view:res.partner:0 msgid "Deliveries Properties" -msgstr "" +msgstr "Vlastnosti doručení" #. module: delivery #: model:ir.actions.act_window,name:delivery.action_picking_tree4 msgid "Picking to be invoiced" -msgstr "" +msgstr "Navádění k fakturaci" #. module: delivery #: help:delivery.grid,sequence:0 msgid "Gives the sequence order when displaying a list of delivery grid." -msgstr "" +msgstr "Dává pořadí posloupnosti, když zobrazuje seznam dodací sítě." #. module: delivery #: view:delivery.grid:0 #: field:delivery.grid,country_ids:0 msgid "Countries" -msgstr "" +msgstr "Země" #. module: delivery #: report:sale.shipping:0 msgid "Delivery Order :" -msgstr "" +msgstr "Objednávka doručení :" #. module: delivery #: field:delivery.grid.line,variable_factor:0 msgid "Variable Factor" -msgstr "" +msgstr "Proměnný koeficient" #. module: delivery #: model:ir.actions.act_window,help:delivery.action_delivery_grid_form @@ -118,11 +119,15 @@ msgid "" "can define several price lists for one delivery method, per country or a " "zone in a specific country defined by a postal code range." msgstr "" +"Ceník dodání vám umožní spočítat cenu a prodejní cenu přepravy podle " +"hmotnosti výrobků a dalších kritérií. Můžete určit několik ceníků pro jednu " +"dodací metodu podle země nebo zóny ve specifické zemi určené podle rozsahu " +"počtovního kódu." #. module: delivery #: selection:delivery.grid.line,price_type:0 msgid "Fixed" -msgstr "" +msgstr "Pevné" #. module: delivery #: view:delivery.sale.order:0 @@ -137,23 +142,24 @@ msgstr "Způsob doručení" #. module: delivery #: model:ir.model,name:delivery.model_stock_move msgid "Stock Move" -msgstr "" +msgstr "Přesun zásob" #. module: delivery #: code:addons/delivery/delivery.py:141 #, python-format msgid "No line matched this order in the choosed delivery grids !" msgstr "" +"Neodpovídají žádné řádky této objednávce, pokud je vybrána dodací síť !" #. module: delivery #: field:stock.picking,carrier_tracking_ref:0 msgid "Carrier Tracking Ref" -msgstr "" +msgstr "Odkaz sledování přepravce" #. module: delivery #: field:stock.picking,weight_net:0 msgid "Net Weight" -msgstr "" +msgstr "Čistá hmotnost" #. module: delivery #: model:ir.actions.act_window,help:delivery.action_delivery_carrier_form @@ -162,57 +168,60 @@ msgid "" "Each delivery method can be assigned to a price list which computes the " "price of the delivery according to the products sold or delivered." msgstr "" +"Vytvořit a spravovat dodací metody, které chcete pro vaše prodejní aktivity. " +"Každá dodací metoda může být přiřazena k ceníku, který spočítá cenu přepravy " +"podle výrobků prodaných nebo dodaných." #. module: delivery #: code:addons/delivery/stock.py:98 #, python-format msgid "Warning" -msgstr "" +msgstr "Varování" #. module: delivery #: view:delivery.grid:0 msgid "Grid definition" -msgstr "" +msgstr "Určení sítě" #. module: delivery #: view:delivery.sale.order:0 msgid "_Cancel" -msgstr "" +msgstr "_Zrušit" #. module: delivery #: field:delivery.grid.line,operator:0 msgid "Operator" -msgstr "" +msgstr "Operátor" #. module: delivery #: model:ir.model,name:delivery.model_res_partner msgid "Partner" -msgstr "" +msgstr "Partner" #. module: delivery #: model:ir.model,name:delivery.model_sale_order msgid "Sales Order" -msgstr "" +msgstr "Prodejní objednávka" #. module: delivery #: model:ir.model,name:delivery.model_delivery_grid msgid "Delivery Grid" -msgstr "" +msgstr "Dodací síť" #. module: delivery #: report:sale.shipping:0 msgid "Invoiced to" -msgstr "" +msgstr "Fakturováno" #. module: delivery #: model:ir.model,name:delivery.model_stock_picking msgid "Picking List" -msgstr "" +msgstr "Naváděcí seznam" #. module: delivery #: model:ir.model,name:delivery.model_delivery_sale_order msgid "Make Delievery" -msgstr "" +msgstr "Provést dodání" #. module: delivery #: model:ir.module.module,description:delivery.module_meta_information @@ -224,16 +233,22 @@ msgid "" "\n" " " msgstr "" +"Umožní vám přidat dodací metody v prodejním příkazu a navádění.\n" +" Můžete určit vaše ceny přepravce and dodací sítě.\n" +" Když vytváříte faktury z navádění, OpenERP je schopný přidat a spočítat " +"dodací řádky.\n" +"\n" +" " #. module: delivery #: view:delivery.grid.line:0 msgid "Grid Lines" -msgstr "" +msgstr "Řádky sítě" #. module: delivery #: field:delivery.grid.line,grid_id:0 msgid "Grid" -msgstr "" +msgstr "Síť" #. module: delivery #: help:delivery.grid,active:0 @@ -241,31 +256,33 @@ msgid "" "If the active field is set to False, it will allow you to hide the delivery " "grid without removing it." msgstr "" +"Pokud je aktivní pole nastaveno na Nepravda, umožní vám to skrýt dodací síť " +"bez jejího odebrání." #. module: delivery #: field:delivery.grid,zip_to:0 msgid "To Zip" -msgstr "" +msgstr "Na PSČ" #. module: delivery #: report:sale.shipping:0 msgid "Order Date" -msgstr "" +msgstr "Datum objednání" #. module: delivery #: field:delivery.grid,name:0 msgid "Grid Name" -msgstr "" +msgstr "Jméno sítě" #. module: delivery #: view:stock.move:0 msgid "Weights" -msgstr "" +msgstr "Váhy" #. module: delivery #: field:stock.picking,number_of_packages:0 msgid "Number of Packages" -msgstr "" +msgstr "Počet balíků" #. module: delivery #: selection:delivery.grid.line,type:0 @@ -274,7 +291,7 @@ msgstr "" #: field:stock.move,weight:0 #: field:stock.picking,weight:0 msgid "Weight" -msgstr "" +msgstr "Váha" #. module: delivery #: help:delivery.carrier,active:0 @@ -282,179 +299,181 @@ msgid "" "If the active field is set to False, it will allow you to hide the delivery " "carrier without removing it." msgstr "" +"Pokud je aktivní pole nastaveno na Nepravda, umožní vám to skrýt dodacího " +"přepravce bez jeho odebrání." #. module: delivery #: code:addons/delivery/wizard/delivery_sale_order.py:95 #, python-format msgid "No grid available !" -msgstr "" +msgstr "Žádná dostupná síť !" #. module: delivery #: selection:delivery.grid.line,operator:0 msgid ">=" -msgstr "" +msgstr ">=" #. module: delivery #: code:addons/delivery/wizard/delivery_sale_order.py:66 #: code:addons/delivery/wizard/delivery_sale_order.py:98 #, python-format msgid "Order not in draft state !" -msgstr "" +msgstr "Objednávka není ve stavu koncept !" #. module: delivery #: constraint:res.partner:0 msgid "Error ! You can not create recursive associated members." -msgstr "" +msgstr "Chyba ! Nemůžete vytvořit rekurzivní asociované členy." #. module: delivery #: report:sale.shipping:0 msgid "Lot" -msgstr "" +msgstr "Dávka" #. module: delivery #: constraint:stock.move:0 msgid "You try to assign a lot which is not from the same product" -msgstr "" +msgstr "Snažíte se přiřadit dávku, která není ze stejného výrobku" #. module: delivery #: field:delivery.carrier,active:0 #: field:delivery.grid,active:0 msgid "Active" -msgstr "" +msgstr "Aktivní" #. module: delivery #: report:sale.shipping:0 msgid "Shipping Date" -msgstr "" +msgstr "Datum expedice" #. module: delivery #: field:delivery.carrier,product_id:0 msgid "Delivery Product" -msgstr "" +msgstr "Dodání výrobku" #. module: delivery #: view:delivery.grid.line:0 msgid "Condition" -msgstr "" +msgstr "Podmínka" #. module: delivery #: field:delivery.grid.line,standard_price:0 msgid "Cost Price" -msgstr "" +msgstr "Výrobní cena" #. module: delivery #: selection:delivery.grid.line,price_type:0 #: field:delivery.grid.line,type:0 msgid "Variable" -msgstr "" +msgstr "Proměnné" #. module: delivery #: help:res.partner,property_delivery_carrier:0 msgid "This delivery method will be used when invoicing from picking." -msgstr "" +msgstr "Dodací metoda bude použita při fakturaci z nasvádění." #. module: delivery #: field:delivery.grid.line,max_value:0 msgid "Maximum Value" -msgstr "" +msgstr "Maximální hodnota" #. module: delivery #: report:sale.shipping:0 msgid "Quantity" -msgstr "" +msgstr "Množství" #. module: delivery #: field:delivery.grid,zip_from:0 msgid "Start Zip" -msgstr "" +msgstr "Počáteční PSČ" #. module: delivery #: help:sale.order,carrier_id:0 msgid "" "Complete this field if you plan to invoice the shipping based on picking." -msgstr "" +msgstr "Vyplňte toto pole, pokud plánujete fakturovat přepravu při navádění." #. module: delivery #: field:delivery.carrier,partner_id:0 msgid "Carrier Partner" -msgstr "" +msgstr "Přepravní partner" #. module: delivery #: view:res.partner:0 msgid "Sales & Purchases" -msgstr "" +msgstr "Prodeje & Nákupy" #. module: delivery #: selection:delivery.grid.line,operator:0 msgid "<=" -msgstr "" +msgstr "<=" #. module: delivery #: constraint:stock.move:0 msgid "You must assign a production lot for this product" -msgstr "" +msgstr "Pro tento výrobek musíte přiřadit výrobní dávku." #. module: delivery #: view:delivery.sale.order:0 msgid "Create Deliveries" -msgstr "" +msgstr "Vytvořit dodání" #. module: delivery #: model:ir.actions.act_window,name:delivery.action_delivery_cost #: view:sale.order:0 msgid "Delivery Costs" -msgstr "" +msgstr "Ceny dodání" #. module: delivery #: report:sale.shipping:0 msgid "Description" -msgstr "" +msgstr "Popis" #. module: delivery #: model:ir.actions.act_window,name:delivery.action_delivery_grid_form #: model:ir.ui.menu,name:delivery.menu_action_delivery_grid_form msgid "Delivery Pricelist" -msgstr "" +msgstr "Ceník dodání" #. module: delivery #: field:delivery.carrier,price:0 #: selection:delivery.grid.line,type:0 #: selection:delivery.grid.line,variable_factor:0 msgid "Price" -msgstr "" +msgstr "Cena" #. module: delivery #: code:addons/delivery/wizard/delivery_sale_order.py:95 #, python-format msgid "No grid matching for this carrier !" -msgstr "" +msgstr "Žádná síť odpovídající tomuto přepravci !" #. module: delivery #: model:ir.ui.menu,name:delivery.menu_delivery msgid "Delivery" -msgstr "" +msgstr "Dodací" #. module: delivery #: selection:delivery.grid.line,type:0 #: selection:delivery.grid.line,variable_factor:0 msgid "Weight * Volume" -msgstr "" +msgstr "Hmotnost * Objem" #. module: delivery #: selection:delivery.grid.line,operator:0 msgid "=" -msgstr "" +msgstr "=" #. module: delivery #: code:addons/delivery/stock.py:99 #, python-format msgid "The carrier %s (id: %d) has no delivery grid!" -msgstr "" +msgstr "Přepravce %s (id: %d) nemá dodací síť!" #. module: delivery #: field:delivery.grid.line,name:0 msgid "Name" -msgstr "" +msgstr "Jméno" #. module: delivery #: view:delivery.carrier:0 @@ -464,55 +483,55 @@ msgstr "" #: report:sale.shipping:0 #: field:stock.picking,carrier_id:0 msgid "Carrier" -msgstr "" +msgstr "Přepravce" #. module: delivery #: view:delivery.sale.order:0 msgid "_Apply" -msgstr "" +msgstr "_Použít" #. module: delivery #: field:sale.order,id:0 msgid "ID" -msgstr "" +msgstr "ID" #. module: delivery #: code:addons/delivery/wizard/delivery_sale_order.py:66 #: code:addons/delivery/wizard/delivery_sale_order.py:98 #, python-format msgid "The order state have to be draft to add delivery lines." -msgstr "" +msgstr "Stav objednávky musí být koncept pro přidání dodacích řádků." #. module: delivery #: model:ir.module.module,shortdesc:delivery.module_meta_information msgid "Carriers and deliveries" -msgstr "" +msgstr "Přepravci a doručení" #. module: delivery #: field:delivery.carrier,grids_id:0 msgid "Delivery Grids" -msgstr "" +msgstr "Dodací síť" #. module: delivery #: field:delivery.grid,sequence:0 msgid "Sequence" -msgstr "" +msgstr "Posloupnost" #. module: delivery #: field:delivery.grid.line,list_price:0 msgid "Sale Price" -msgstr "" +msgstr "Prodejní cena" #. module: delivery #: view:delivery.grid:0 #: field:delivery.grid,state_ids:0 msgid "States" -msgstr "" +msgstr "Stavy" #. module: delivery #: field:delivery.grid.line,price_type:0 msgid "Price Type" -msgstr "" +msgstr "Typ ceny" #~ msgid "Cancel" #~ msgstr "Storno" diff --git a/addons/delivery/report/shipping.rml b/addons/delivery/report/shipping.rml index 563c3bda826..1ed7e7098bc 100644 --- a/addons/delivery/report/shipping.rml +++ b/addons/delivery/report/shipping.rml @@ -131,19 +131,11 @@ <td> <para style="terp_default_Bold_9">Invoiced to</para> <para style="terp_default_9">[[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.name or '']]</para> - <para style="terp_default_9">[[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.street or '']]</para> - <para style="terp_default_9">[[ (o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.street2) or removeParentNode('para')]]</para> - <para style="terp_default_9">[[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.zip or '']] [[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.city or '' ]]</para> - <para style="terp_default_9">[[ (o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.state_id and o.sale_id.partner_invoice_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ o.sale_id and o.sale_id.partner_invoice_id and o.sale_id.partner_invoice_id.country_id and o.sale_id.partner_invoice_id.country_id.name or '']]</para> + <para style="terp_default_9">[[ o.sale_id and o.sale_id.partner_invoice_id and display_address(o.sale_id.partner_invoice_id) ]]</para> </td> <td> <para style="terp_default_9">[[ o.address_id and o.address_id.partner_id and o.address_id.partner_id.name or '' ]]</para> - <para style="terp_default_9">[[ o.address_id and o.address_id.street or '']]</para> - <para style="terp_default_9">[[ o.address_id and o.address_id.street2 or removeParentNode('para')]]</para> - <para style="terp_default_9">[[ o.address_id and o.address_id.zip or '']] [[ o.address_id and o.address_id.city or '']]</para> - <para style="terp_default_9">[[ (o.address_id and o.address_id.state_id and o.address_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ o.address_id and o.address_id.country_id and o.address_id.country_id.name or '']]</para> + <para style="terp_default_9">[[ o.address_id and o.address_id and display_address(o.address_id) ]]</para> </td> </tr> </blockTable> diff --git a/addons/document/dict_tools.py b/addons/document/dict_tools.py index 10d2fdc69f3..e117b429f83 100644 --- a/addons/document/dict_tools.py +++ b/addons/document/dict_tools.py @@ -55,3 +55,5 @@ def dict_filter(srcdic, keys, res=None): return res #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/directory_content.py b/addons/document/directory_content.py index e690e50d4b4..5b8ec3ddd93 100644 --- a/addons/document/directory_content.py +++ b/addons/document/directory_content.py @@ -120,4 +120,5 @@ class document_directory_content(osv.osv): return pdf document_directory_content() -#eof
\ No newline at end of file +#eof +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/directory_report.py b/addons/document/directory_report.py index 2726fcd5462..202725a1d3f 100644 --- a/addons/document/directory_report.py +++ b/addons/document/directory_report.py @@ -60,3 +60,5 @@ class ir_action_report_xml(osv.osv): } ir_action_report_xml() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/document.py b/addons/document/document.py index 774c4e53a80..36b10b34e4b 100644 --- a/addons/document/document.py +++ b/addons/document/document.py @@ -254,7 +254,6 @@ class document_file(osv.osv): del vals['file_size'] if ids and vals: result = super(document_file,self).write(cr, uid, ids, vals, context=context) - cr.commit() # ? return result def create(self, cr, uid, vals, context=None): @@ -299,7 +298,6 @@ class document_file(osv.osv): else: #raise osv.except_osv(_('ValidateError'), _('File name must be unique!')) result = super(document_file, self).create(cr, uid, vals, context) - cr.commit() # ? return result def __get_partner_id(self, cr, uid, res_model, res_id, context=None): @@ -349,3 +347,5 @@ class document_file(osv.osv): document_file() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/document_directory.py b/addons/document/document_directory.py index 2a3f54f53ba..d09d2cc86d5 100644 --- a/addons/document/document_directory.py +++ b/addons/document/document_directory.py @@ -307,3 +307,5 @@ class document_directory_node(osv.osv): 'directory_id': fields.many2one('document.directory', 'Document directory', ondelete="set null"), } document_directory_node() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/document_storage.py b/addons/document/document_storage.py index b61b7fd65fc..fe757e7876d 100644 --- a/addons/document/document_storage.py +++ b/addons/document/document_storage.py @@ -786,3 +786,5 @@ document_storage() #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/document_view.xml b/addons/document/document_view.xml index 0e00531f5b5..05e49ae89ad 100644 --- a/addons/document/document_view.xml +++ b/addons/document/document_view.xml @@ -413,6 +413,7 @@ </record> <act_window domain="[('partner_id', '=', active_id)]" + context="{'default_partner_id': active_id}" id="act_res_partner_document" name="Related Documents" res_model="ir.attachment" src_model="res.partner" @@ -420,6 +421,7 @@ <act_window domain="[('parent_id', '=', active_id)]" + context="{'default_parent_id': active_id}" id="zoom_directory" name="Related Documents" res_model="ir.attachment" src_model="document.directory"/> diff --git a/addons/document/nodes.py b/addons/document/nodes.py index 0c4194847c1..ee89f3d4c6c 100644 --- a/addons/document/nodes.py +++ b/addons/document/nodes.py @@ -1557,4 +1557,5 @@ class nodefd_static(StringIO, node_descriptor): cr.close() StringIO.close(self) -#eof
\ No newline at end of file +#eof +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/report/__init__.py b/addons/document/report/__init__.py index bfdeacdaae8..f5b827f04b0 100644 --- a/addons/document/report/__init__.py +++ b/addons/document/report/__init__.py @@ -18,4 +18,6 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## -import document_report
\ No newline at end of file +import document_report + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/std_index.py b/addons/document/std_index.py index 4f939aab4df..fe42cfb1795 100644 --- a/addons/document/std_index.py +++ b/addons/document/std_index.py @@ -209,3 +209,5 @@ cntIndex.register(OpenDoc()) #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/test/document_test2.yml b/addons/document/test/document_test2.yml index 65312eaf10d..be91bfb3644 100644 --- a/addons/document/test/document_test2.yml +++ b/addons/document/test/document_test2.yml @@ -80,4 +80,3 @@ - !python {model: document.directory}: | self.unlink(cr, uid, [ref('dir_tests')]) - cr.commit() diff --git a/addons/document/test_cindex.py b/addons/document/test_cindex.py index 05101a7a491..a257c2c43a5 100755 --- a/addons/document/test_cindex.py +++ b/addons/document/test_cindex.py @@ -51,3 +51,5 @@ for fname in args: print "Keyboard interrupt" #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/wizard/__init__.py b/addons/document/wizard/__init__.py index b143b583426..c4decc58fba 100644 --- a/addons/document/wizard/__init__.py +++ b/addons/document/wizard/__init__.py @@ -19,3 +19,5 @@ # ############################################################################## import document_configuration + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document/wizard/document_configuration.py b/addons/document/wizard/document_configuration.py index 97eda4e2d62..6a69e638b4e 100644 --- a/addons/document/wizard/document_configuration.py +++ b/addons/document/wizard/document_configuration.py @@ -110,3 +110,5 @@ class document_configuration(osv.osv_memory): 'ressource_tree': 1 }) document_configuration() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_ftp/__openerp__.py b/addons/document_ftp/__openerp__.py index 499a928c077..a7b5a65e227 100644 --- a/addons/document_ftp/__openerp__.py +++ b/addons/document_ftp/__openerp__.py @@ -49,6 +49,7 @@ FTP client. ], 'installable': True, 'active': False, + 'application': True, 'certificate': '00934787762705016005', 'images': ['images/1_configure_ftp.jpeg','images/2_document_browse.jpeg','images/3_document_ftp.jpeg'], 'post_load': 'post_load', diff --git a/addons/document_ftp/test/document_ftp_test2.yml b/addons/document_ftp/test/document_ftp_test2.yml index 33ce1416ec8..eb86a99407d 100644 --- a/addons/document_ftp/test/document_ftp_test2.yml +++ b/addons/document_ftp/test/document_ftp_test2.yml @@ -100,11 +100,11 @@ fdata = StringIO('abcd') ftp.storbinary('STOR test2.txt', fdata) ftp.close() - cr.commit() - I look for the "test2.txt" file at the server - !python {model: ir.attachment }: | + cr.rollback() # restart transaction to see changes (FTP-FS uses its own cursor) ids = self.search(cr, uid, [('name', '=', 'test2.txt')]) assert ids, "No test2.txt file found." - @@ -116,11 +116,11 @@ ftp = te.get_ftp_folder(cr, uid, self, 'Documents') ftp.delete('test2.txt') ftp.close() - cr.commit() - I check at the server that test2.txt is deleted - !python {model: ir.attachment }: | + cr.rollback() # restart transaction to see changes (FTP-FS uses its own cursor) ids = self.search(cr, uid, [('name', '=', 'test2.txt')]) assert not ids, "test2.txt file can still be found." - @@ -133,7 +133,7 @@ fdata = StringIO('abcd') ftp.storbinary('STOR test2.txt', fdata) ftp.close() - cr.commit() + cr.rollback() # restart transaction to see changes (FTP-FS uses its own cursor) - I delete the test2.txt from the server (RPC). - diff --git a/addons/document_ftp/test/document_ftp_test4.yml b/addons/document_ftp/test/document_ftp_test4.yml index 0a3ff33333e..9b311f64605 100644 --- a/addons/document_ftp/test/document_ftp_test4.yml +++ b/addons/document_ftp/test/document_ftp_test4.yml @@ -4,7 +4,6 @@ !python {model: ir.attachment}: | from document_ftp import test_easyftp as te ftp = te.get_plain_ftp(timeout=1.0) - cr.commit() - | I create two partners 'Partner1' and 'Partner2'. I create three partner categories: 'none', 'pat1' and 'all' @@ -54,7 +53,6 @@ dirs = ftp.nlst() for dir in [ 'All Partner1+2', 'No partners', 'Pat 1' ]: assert dir in dirs, "Dir %s not in folder" % dir - cr.commit() - I create a 'partners' folder by the first resource one. - @@ -66,6 +64,8 @@ domain: "[('category_id','in',[active_id])]" ressource_parent_type_id : base.model_res_partner_category - + I commit (because FTP operations are on different transaction) +- !python {model: document.directory, id: }: | cr.commit() - @@ -81,7 +81,6 @@ for dir in correct: res = ftp.nlst(dir+'/Partners of Test') assert res == correct[dir], "Dir %s falsely contains %s" %(dir, res) - cr.commit() - I create an ir.attachment, attached (not related) to Partner1 - @@ -90,6 +89,11 @@ res_model: res.partner res_id: !eval ref("tpartner1") - + I commit (because FTP operations are on different transaction) +- + !python {model: document.directory, id: }: | + cr.commit() +- I check that pat1/Partner1 folder has the file. I check that all/Partner1 folder has the file - @@ -109,6 +113,7 @@ ftp = te.get_ftp_folder(cr, uid, self, 'Documents/Partners Testing/Pat 1/Partners of Test/Partner 1') fdata = StringIO('abcd') ftp.storbinary('STOR pat1-dynamic.txt', fdata) + cr.rollback() # restart transaction to see changes (FTP-FS uses its own cursor) - I check at the server that the file is attached to Partner1 - @@ -159,7 +164,8 @@ from cStringIO import StringIO ftp = te.get_ftp_folder(cr, uid, self, 'Documents/Partners Testing/Pat 1/Partners of Test/Partner 1') ftp.delete('pat1-dynamic.txt') - ftp.close() + ftp.close() + cr.rollback() # restart transaction to see changes (FTP-FS uses its own cursor) - I delete the Partners Testing folder, "File of pat1" file, Partner and Partner category. @@ -177,5 +183,5 @@ partner_categ_pool.unlink(cr, uid, [ref('tpat_categ_all')]) partner_pool.unlink(cr, uid, [ref('tpartner1')]) partner_pool.unlink(cr, uid, [ref('tpartner_2')]) - cr.commit() + cr.commit() #required because all the operations via FTP were committed diff --git a/addons/document_ftp/test_easyftp.py b/addons/document_ftp/test_easyftp.py index 74890b1a333..16bace4b167 100644 --- a/addons/document_ftp/test_easyftp.py +++ b/addons/document_ftp/test_easyftp.py @@ -68,3 +68,5 @@ def get_ftp_fulldata(ftp, fname, limit=8192): return ''.join(data) #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_ftp/wizard/ftp_browse.py b/addons/document_ftp/wizard/ftp_browse.py index 6e182082aeb..e8f127c3c3b 100644 --- a/addons/document_ftp/wizard/ftp_browse.py +++ b/addons/document_ftp/wizard/ftp_browse.py @@ -61,3 +61,5 @@ class document_ftp_browse(osv.osv_memory): } document_ftp_browse() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_ftp/wizard/ftp_configuration.py b/addons/document_ftp/wizard/ftp_configuration.py index 0ae133bb92a..5da2ddf11e8 100644 --- a/addons/document_ftp/wizard/ftp_configuration.py +++ b/addons/document_ftp/wizard/ftp_configuration.py @@ -48,3 +48,5 @@ class document_ftp_configuration(osv.osv_memory): {'url': 'ftp://'+(conf.host or 'localhost:8021')+'/' + cr.dbname+'/'}) document_ftp_configuration() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_ics/__openerp__.py b/addons/document_ics/__openerp__.py index 7d718266d6a..679a6adabb6 100644 --- a/addons/document_ics/__openerp__.py +++ b/addons/document_ics/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Support for iCal based on Document Management System', + 'name': 'iCal Support', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "normal", 'description': """ Allows to synchronise calendars with others applications. diff --git a/addons/document_webdav/__init__.py b/addons/document_webdav/__init__.py index ac417e18087..7cd1a38fc80 100644 --- a/addons/document_webdav/__init__.py +++ b/addons/document_webdav/__init__.py @@ -24,4 +24,5 @@ import webdav_server import document_webdav -#eof
\ No newline at end of file +#eof +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_webdav/__openerp__.py b/addons/document_webdav/__openerp__.py index 5576c17ba64..303f5c70e2c 100644 --- a/addons/document_webdav/__openerp__.py +++ b/addons/document_webdav/__openerp__.py @@ -72,3 +72,5 @@ which needs explicit configuration in openerp-server.conf, too. "certificate" : "001236490750845657973", 'images': ['images/dav_properties.jpeg','images/directories_structure_principals.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_webdav/cache.py b/addons/document_webdav/cache.py index 7f03aa6da13..95ff9d31f62 100644 --- a/addons/document_webdav/cache.py +++ b/addons/document_webdav/cache.py @@ -37,3 +37,5 @@ def memoize(maxsize): return wrapper return decorating_function + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_webdav/dav_fs.py b/addons/document_webdav/dav_fs.py index c167d90ba42..772b7600f20 100644 --- a/addons/document_webdav/dav_fs.py +++ b/addons/document_webdav/dav_fs.py @@ -1023,3 +1023,5 @@ class openerp_dav_handler(dav_interface): if cr: cr.close() #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_webdav/document_webdav.py b/addons/document_webdav/document_webdav.py index f5fa7b591d8..da463c9eb1b 100644 --- a/addons/document_webdav/document_webdav.py +++ b/addons/document_webdav/document_webdav.py @@ -127,4 +127,5 @@ class dav_file_property(osv.osv): dav_file_property() -#eof
\ No newline at end of file +#eof +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_webdav/nodes.py b/addons/document_webdav/nodes.py index 5927eade899..d6ceca458cd 100644 --- a/addons/document_webdav/nodes.py +++ b/addons/document_webdav/nodes.py @@ -400,3 +400,5 @@ node_descriptor = nodes.node_descriptor #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_webdav/redirect.py b/addons/document_webdav/redirect.py index 71af3271ab7..7bc0883f9e8 100644 --- a/addons/document_webdav/redirect.py +++ b/addons/document_webdav/redirect.py @@ -106,3 +106,5 @@ class RedirectHTTPHandler(HttpLogHandler, FixSendError, HttpOptions, HTTPHandler #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_webdav/test_davclient.py b/addons/document_webdav/test_davclient.py index b4317282c6a..3c20cfed5b8 100755 --- a/addons/document_webdav/test_davclient.py +++ b/addons/document_webdav/test_davclient.py @@ -704,4 +704,5 @@ class DAVClient(object): etag = m.getheader('ETag') return etag or True -#eof
\ No newline at end of file +#eof +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_webdav/webdav.py b/addons/document_webdav/webdav.py index 3a68fb04fed..baa394e94a1 100644 --- a/addons/document_webdav/webdav.py +++ b/addons/document_webdav/webdav.py @@ -341,3 +341,5 @@ def create_prop(self): REPORT.create_prop = create_prop #eof + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/document_webdav/webdav_server.py b/addons/document_webdav/webdav_server.py index aeff0a23f25..81435a72137 100644 --- a/addons/document_webdav/webdav_server.py +++ b/addons/document_webdav/webdav_server.py @@ -649,3 +649,5 @@ init_principals_redirect() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/edi/__init__.py b/addons/edi/__init__.py index f0f96a936ec..b4a80c0f1dd 100644 --- a/addons/edi/__init__.py +++ b/addons/edi/__init__.py @@ -32,3 +32,5 @@ except ImportError: """Could not load openerp-web section of EDI, EDI will not behave correctly To fix, launch openerp-web in embedded mode""") + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/edi/controllers/__init__.py b/addons/edi/controllers/__init__.py index 8ee9bae18d9..9f828025b8e 100644 --- a/addons/edi/controllers/__init__.py +++ b/addons/edi/controllers/__init__.py @@ -1 +1,3 @@ import main + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/edi/controllers/main.py b/addons/edi/controllers/main.py index 00787cdc374..83c3a1608e9 100644 --- a/addons/edi/controllers/main.py +++ b/addons/edi/controllers/main.py @@ -82,3 +82,5 @@ class EDI(openerpweb.Controller): return True # + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/edi/edi_service.py b/addons/edi/edi_service.py index 296b3006525..074720a03e9 100644 --- a/addons/edi/edi_service.py +++ b/addons/edi/edi_service.py @@ -67,4 +67,5 @@ class edi(netsvc.ExportService): fn = getattr(self, 'exp_'+method) return fn(*params) -edi()
\ No newline at end of file +edi() +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/edi/models/__init__.py b/addons/edi/models/__init__.py index cf8c0ff2eb0..a1e61299334 100644 --- a/addons/edi/models/__init__.py +++ b/addons/edi/models/__init__.py @@ -22,4 +22,6 @@ import edi import res_partner import res_company -import res_currency
\ No newline at end of file +import res_currency + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/edi/models/res_company.py b/addons/edi/models/res_company.py index 665dfb9487d..cf5efe997e0 100644 --- a/addons/edi/models/res_company.py +++ b/addons/edi/models/res_company.py @@ -56,3 +56,5 @@ class res_company(osv.osv): res_partner_bank.browse(cr, uid, bank_ids, context=context), context=context) return result + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/edi/models/res_currency.py b/addons/edi/models/res_currency.py index d057f4e5bbc..0f56bc83f45 100644 --- a/addons/edi/models/res_currency.py +++ b/addons/edi/models/res_currency.py @@ -61,4 +61,6 @@ class res_currency(osv.osv, EDIMixin): if rate: self.pool.get('res.currency.rate').create(cr, SUPERUSER_ID, {'currency_id': currency_id, 'rate': rate}, context=context) - return currency_id
\ No newline at end of file + return currency_id + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/edi/models/res_partner.py b/addons/edi/models/res_partner.py index 18ec01eb765..7c40a5c7354 100644 --- a/addons/edi/models/res_partner.py +++ b/addons/edi/models/res_partner.py @@ -101,4 +101,5 @@ class res_partner_address(osv.osv, EDIMixin): logging.getLogger('edi.res_partner').warning('Failed to import bank account using' 'bank type: %s, ignoring', import_ctx['default_state'], exc_info=True) - return address_id
\ No newline at end of file + return address_id +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/email_template/html2text.py b/addons/email_template/html2text.py index 2479843777a..745381850e3 100755 --- a/addons/email_template/html2text.py +++ b/addons/email_template/html2text.py @@ -453,3 +453,5 @@ if __name__ == "__main__": data = sys.stdin.read().decode('utf8') wrapwrite(html2text(data, baseurl)) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/email_template/res_partner.py b/addons/email_template/res_partner.py index 74d8b4e0693..a451b171b70 100644 --- a/addons/email_template/res_partner.py +++ b/addons/email_template/res_partner.py @@ -34,4 +34,6 @@ class res_partner(osv.osv): _defaults = { 'opt_out': False, - }
\ No newline at end of file + } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/email_template/security/ir.model.access.csv b/addons/email_template/security/ir.model.access.csv index f5f61240a96..3903a95f9ce 100644 --- a/addons/email_template/security/ir.model.access.csv +++ b/addons/email_template/security/ir.model.access.csv @@ -2,3 +2,4 @@ "access_email_template","email.template","model_email_template",,1,0,0,0 "access_email_template_system","email.template system","model_email_template","base.group_system",1,1,1,1 "access_email_template_manager","email.template","model_email_template",,1,1,1,1 +"access_email_template_preview_system","email.template.preview system","model_email_template_preview","base.group_system",1,1,1,1 diff --git a/addons/email_template/wizard/__init__.py b/addons/email_template/wizard/__init__.py index b9ac29ec4c2..c979c90acd0 100644 --- a/addons/email_template/wizard/__init__.py +++ b/addons/email_template/wizard/__init__.py @@ -22,3 +22,5 @@ import email_template_preview import mail_compose_message + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/event/__openerp__.py b/addons/event/__openerp__.py index 1890ed7bf84..abd3f6393b5 100644 --- a/addons/event/__openerp__.py +++ b/addons/event/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Event', + 'name': 'Events Organisation', 'version': '0.1', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ Organization and management of Events. @@ -56,6 +56,7 @@ Note that: 'demo_xml': ['event_demo.xml'], 'test': ['test/test_event.yml'], 'installable': True, + 'application': True, 'active': False, 'certificate': '0083059161581', 'images': ['images/1_event_type_list.jpeg','images/2_events.jpeg','images/3_registrations.jpeg'], diff --git a/addons/event/event_view.xml b/addons/event/event_view.xml index 6a057fe204d..31fb353c113 100644 --- a/addons/event/event_view.xml +++ b/addons/event/event_view.xml @@ -388,7 +388,7 @@ <group colspan="4"> <field colspan="4" name="email_cc" string="CC" widget="char" size="512"/> </group> - <field name="message_ids" colspan="4" nolabel="1" mode="tree,form"> + <field name="message_ids" colspan="4" nolabel="1" mode="tree"> <tree string="History"> <field name="display_text" string="History Information"/> <field name="email_from" invisible="1"/> @@ -398,32 +398,6 @@ context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" icon="terp-mail-replied" type="action" /> </tree> - <form string="History"> - <group col="4" colspan="4"> - <field name="email_from"/> - <field name="date"/> - <field name="email_to" widget="char" size="512"/> - <field name="email_cc" widget="char" size="512"/> - <field name="subject" colspan="4" widget="char" size="512"/> - </group> - <notebook colspan="4"> - <page string="Details"> - <group attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="body_text" colspan="4" nolabel="1" height="250"/> - <button colspan="4" string="Reply" - name="%(mail.action_email_compose_message_wizard)d" - context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" - icon="terp-mail-replied" type="action"/> - </group> - <group attrs="{'invisible': [('email_from', '!=', False)]}"> - <field name="display_text" colspan="4" nolabel="1" height="250"/> - </group> - </page> - <page string="Attachments"> - <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/> - </page> - </notebook> - </form> </field> <button string="Add Internal Note" name="%(crm.action_crm_add_note)d" diff --git a/addons/event/i18n/cs.po b/addons/event/i18n/cs.po index 95ba2ab5cc9..616838be295 100644 --- a/addons/event/i18n/cs.po +++ b/addons/event/i18n/cs.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-09-06 06:14+0000\n" +"PO-Revision-Date: 2011-11-25 10:45+0000\n" "Last-Translator: Jiří Hajda <robie@centrum.cz>\n" "Language-Team: Czech <cs@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 04:58+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:49+0000\n" +"X-Generator: Launchpad (build 14381)\n" "X-Poedit-Language: Czech\n" #. module: event @@ -220,7 +220,7 @@ msgstr "Odpovědět" #. module: event #: model:ir.actions.act_window,name:event.open_board_associations_manager msgid "Event Dashboard" -msgstr "Nástěnka uválosti" +msgstr "Nástěnka události" #. module: event #: model:event.event,name:event.event_1 diff --git a/addons/event/report/report_event_registration.py b/addons/event/report/report_event_registration.py index e78179b9b5e..3ef6ecb6e3d 100644 --- a/addons/event/report/report_event_registration.py +++ b/addons/event/report/report_event_registration.py @@ -100,6 +100,7 @@ class report_event_registration(osv.osv): event_registration c ON (e.id=c.event_id) LEFT JOIN event_type t ON (e.type=t.id) + WHERE c.active = 'true' GROUP BY to_char(e.date_begin, 'YYYY'), to_char(e.date_begin, 'MM'), diff --git a/addons/event_project/__openerp__.py b/addons/event_project/__openerp__.py index e8d110bc4f8..359a5a70ae3 100644 --- a/addons/event_project/__openerp__.py +++ b/addons/event_project/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Event Project - Create Retro-Planning to manage your Events', + 'name': 'Retro-Planning on Events', 'version': '0.1', - 'category': 'Hidden/Link', + 'category': 'Tools', 'complexity': "easy", 'description': """ Organization and management of events. diff --git a/addons/fetchmail/__init__.py b/addons/fetchmail/__init__.py index f9c384ce103..934df9846dd 100644 --- a/addons/fetchmail/__init__.py +++ b/addons/fetchmail/__init__.py @@ -21,3 +21,5 @@ ############################################################################## import fetchmail + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/fetchmail/__openerp__.py b/addons/fetchmail/__openerp__.py index ae082aacacd..b50c33b2394 100644 --- a/addons/fetchmail/__openerp__.py +++ b/addons/fetchmail/__openerp__.py @@ -74,3 +74,5 @@ mail. 'certificate' : '00692978332890137453', 'images': ['images/1_email_servers.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/fetchmail/fetchmail_installer_view.xml b/addons/fetchmail/fetchmail_installer_view.xml index b5bd7df80ca..918b7ecd430 100644 --- a/addons/fetchmail/fetchmail_installer_view.xml +++ b/addons/fetchmail/fetchmail_installer_view.xml @@ -1,19 +1,5 @@ <openerp> <data> - <record model="ir.actions.act_window" id="view_email_server_form_installer"> - <field name="name">Setup Incoming Mail Servers</field> - <field name="type">ir.actions.act_window</field> - <field name="res_model">fetchmail.server</field> - <field name="view_type">form</field> - <field name="view_mode">tree,form</field> - <field name="view_id" eval="False"/> - <field name="help">You can connect OpenERP to your incoming mail server so that documents (leads, tasks, issues, etc) are synchronized automatically with your incoming emails.</field> - </record> - <record id="view_email_server_form_installer_todo" model="ir.actions.todo"> - <field name="action_id" ref="view_email_server_form_installer"/> - <field name="category_id" ref="base.category_sales_management_config"/> - <field name="sequence">4</field> - </record> </data> </openerp> diff --git a/addons/fetchmail/fetchmail_view.xml b/addons/fetchmail/fetchmail_view.xml index 4cd182c0818..0b9720a7503 100644 --- a/addons/fetchmail/fetchmail_view.xml +++ b/addons/fetchmail/fetchmail_view.xml @@ -32,7 +32,7 @@ </group> <notebook colspan="4"> <page string="Server & Login"> - <group col="4" colspan="2" attrs="{'invisible' : [('type', '=', 'local')]}"> + <group col="2" colspan="2" attrs="{'invisible' : [('type', '=', 'local')]}"> <separator string="Server Information" colspan="2"/> <field name="server" colspan="4" attrs="{'required' : [('type', '!=', 'local')]}" /> <field name="port" required="1" attrs="{'required' : [('type', '!=', 'local')]}" /> @@ -132,7 +132,7 @@ </record> <act_window - context="{'search_default_server_id': active_id, 'default_server_id': active_id}" + context="{'search_default_server_id': active_id, 'default_fetchmail_server_id': active_id}" id="act_server_history" name="Messages" domain="[('email_from', '!=', False), ('fetchmail_server_id', '=', active_id)]" res_model="mail.message" src_model="fetchmail.server"/> diff --git a/addons/fetchmail/i18n/sl.po b/addons/fetchmail/i18n/sl.po new file mode 100644 index 00000000000..2cdcd56b63d --- /dev/null +++ b/addons/fetchmail/i18n/sl.po @@ -0,0 +1,308 @@ +# Slovenian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:15+0000\n" +"PO-Revision-Date: 2011-11-22 16:44+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Slovenian <sl@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-11-23 05:20+0000\n" +"X-Generator: Launchpad (build 14336)\n" + +#. module: fetchmail +#: constraint:email.server:0 +msgid "" +"Warning! Record for selected Model can not be created\n" +"Please choose valid Model" +msgstr "" + +#. module: fetchmail +#: selection:email.server,state:0 +msgid "Confirmed" +msgstr "Potrjeno" + +#. module: fetchmail +#: view:email.server:0 +msgid "Confirm" +msgstr "Potrdi" + +#. module: fetchmail +#: view:email.server:0 +msgid "Group By..." +msgstr "Združi po ..." + +#. module: fetchmail +#: view:email.server:0 +#: field:email.server,state:0 +msgid "State" +msgstr "Država" + +#. module: fetchmail +#: view:email.server:0 +msgid "POP" +msgstr "POP" + +#. module: fetchmail +#: selection:email.server,state:0 +msgid "Not Confirmed" +msgstr "Nepotrjeno" + +#. module: fetchmail +#: field:email.server,user:0 +msgid "User Name" +msgstr "Uporabniško Ime" + +#. module: fetchmail +#: view:email.server:0 +msgid "Type" +msgstr "Tip" + +#. module: fetchmail +#: view:email.server:0 +msgid "POP/IMAP Servers" +msgstr "POP/IMAP Strežniki" + +#. module: fetchmail +#: model:ir.module.module,shortdesc:fetchmail.module_meta_information +msgid "Fetchmail Server" +msgstr "" + +#. module: fetchmail +#: view:email.server:0 +#: field:email.server,note:0 +msgid "Description" +msgstr "Opis" + +#. module: fetchmail +#: help:email.server,object_id:0 +msgid "" +"OpenObject Model. Generates a record of this model.\n" +"Select Object with message_new attrbutes." +msgstr "" + +#. module: fetchmail +#: field:email.server,attach:0 +msgid "Add Attachments ?" +msgstr "Dodaj Priloge ?" + +#. module: fetchmail +#: view:email.server:0 +msgid "# of emails" +msgstr "# od emalov" + +#. module: fetchmail +#: model:ir.actions.act_window,name:fetchmail.act_server_history +msgid "Email History" +msgstr "" + +#. module: fetchmail +#: field:email.server,user_id:0 +msgid "User" +msgstr "Uporabnik" + +#. module: fetchmail +#: field:email.server,date:0 +msgid "Date" +msgstr "Datum" + +#. module: fetchmail +#: selection:email.server,state:0 +msgid "Waiting for Verification" +msgstr "Čaka na Potrditev" + +#. module: fetchmail +#: field:email.server,password:0 +msgid "Password" +msgstr "Geslo" + +#. module: fetchmail +#: model:ir.actions.act_window,name:fetchmail.act_server_history +#: view:mailgate.message:0 +msgid "Emails" +msgstr "E-pošte" + +#. module: fetchmail +#: view:email.server:0 +msgid "Search Email Servers" +msgstr "Poišči Email Strežnik" + +#. module: fetchmail +#: view:email.server:0 +msgid "Server & Login" +msgstr "Strežnik in Prijava" + +#. module: fetchmail +#: view:email.server:0 +msgid "Auto Reply?" +msgstr "Avtomatski Odzivnik?" + +#. module: fetchmail +#: field:email.server,name:0 +msgid "Name" +msgstr "Ime" + +#. module: fetchmail +#: model:ir.model,name:fetchmail.model_mailgate_message +msgid "Mailgateway Message" +msgstr "" + +#. module: fetchmail +#: model:ir.actions.act_window,name:fetchmail.action_email_server_tree +msgid "POP Servers" +msgstr "" + +#. module: fetchmail +#: view:email.server:0 +msgid "Set to Draft" +msgstr "" + +#. module: fetchmail +#: field:email.server,message_ids:0 +#: model:ir.actions.act_window,name:fetchmail.action_view_mail_message_emails +msgid "Messages" +msgstr "Sporočila" + +#. module: fetchmail +#: model:ir.ui.menu,name:fetchmail.menu_action_fetchmail_server_tree +msgid "Fetchmail Services" +msgstr "" + +#. module: fetchmail +#: field:email.server,server:0 +msgid "Server" +msgstr "Strežnik" + +#. module: fetchmail +#: field:email.server,active:0 +msgid "Active" +msgstr "Aktiven" + +#. module: fetchmail +#: view:email.server:0 +msgid "Process Parameter" +msgstr "Parametri Procesa" + +#. module: fetchmail +#: field:email.server,is_ssl:0 +msgid "SSL ?" +msgstr "SSL ?" + +#. module: fetchmail +#: selection:email.server,type:0 +#: selection:mailgate.message,server_type:0 +msgid "IMAP Server" +msgstr "IMAP Strežnik" + +#. module: fetchmail +#: field:email.server,object_id:0 +msgid "Model" +msgstr "" + +#. module: fetchmail +#: view:email.server:0 +msgid "IMAP" +msgstr "IMAP" + +#. module: fetchmail +#: view:email.server:0 +#: model:ir.model,name:fetchmail.model_email_server +msgid "POP/IMAP Server" +msgstr "POP/IMAP Strežnik" + +#. module: fetchmail +#: constraint:email.server:0 +msgid "Warning! Can't have duplicate server configuration!" +msgstr "Opozorilo! Ne morete podvojiti konfiguracije strežnika!" + +#. module: fetchmail +#: field:email.server,type:0 +#: field:mailgate.message,server_type:0 +msgid "Server Type" +msgstr "Tip Strežnika" + +#. module: fetchmail +#: view:email.server:0 +msgid "Login Information" +msgstr "Prijavni podatki" + +#. module: fetchmail +#: view:email.server:0 +msgid "Server Information" +msgstr "Podatki o strežniku" + +#. module: fetchmail +#: help:email.server,attach:0 +msgid "Fetches mail with attachments if true." +msgstr "" + +#. module: fetchmail +#: selection:email.server,type:0 +#: selection:mailgate.message,server_type:0 +msgid "POP Server" +msgstr "POP Strežnik" + +#. module: fetchmail +#: field:email.server,port:0 +msgid "Port" +msgstr "Vrata" + +#. module: fetchmail +#: model:ir.module.module,description:fetchmail.module_meta_information +msgid "" +"Fetchmail: \n" +" * Fetch email from Pop / IMAP server\n" +" * Support SSL\n" +" * Integrated with all Modules\n" +" * Automatic Email Receive\n" +" * Email based Records (Add, Update)\n" +" " +msgstr "" + +#. module: fetchmail +#: view:email.server:0 +msgid "SSL" +msgstr "SSL" + +#. module: fetchmail +#: help:email.server,action_id:0 +msgid "" +"An Email Server Action. It will be run whenever an e-mail is fetched from " +"server." +msgstr "" + +#. module: fetchmail +#: help:email.server,priority:0 +msgid "Priority between 0 to 10, select define the order of Processing" +msgstr "" + +#. module: fetchmail +#: field:email.server,action_id:0 +msgid "Email Server Action" +msgstr "" + +#. module: fetchmail +#: field:email.server,priority:0 +msgid "Server Priority" +msgstr "" + +#. module: fetchmail +#: view:mailgate.message:0 +#: field:mailgate.message,server_id:0 +msgid "Mail Server" +msgstr "Poštni Strežnik" + +#. module: fetchmail +#: view:email.server:0 +msgid "Fetch Emails" +msgstr "" + +#~ msgid "Email Servers" +#~ msgstr "Email Strežniki" diff --git a/addons/fetchmail_crm/__init__.py b/addons/fetchmail_crm/__init__.py index 5831b3284bb..b5b36afb7e9 100644 --- a/addons/fetchmail_crm/__init__.py +++ b/addons/fetchmail_crm/__init__.py @@ -18,3 +18,5 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/fetchmail_crm/__openerp__.py b/addons/fetchmail_crm/__openerp__.py index 66cff346d0a..24eddf235ab 100644 --- a/addons/fetchmail_crm/__openerp__.py +++ b/addons/fetchmail_crm/__openerp__.py @@ -20,11 +20,11 @@ ############################################################################## { - "name" : "Fetchmail for CRM", + "name" : "eMail Gateway for Leads", "version" : "1.0", "depends" : ["fetchmail", "crm"], "author" : "OpenERP SA", - "category": 'Hidden/Link', + "category": 'Tools', "description": """ """, 'website': 'http://www.openerp.com', @@ -37,3 +37,5 @@ 'installable': True, 'active': False, } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/fetchmail_crm_claim/__init__.py b/addons/fetchmail_crm_claim/__init__.py index 5831b3284bb..b5b36afb7e9 100644 --- a/addons/fetchmail_crm_claim/__init__.py +++ b/addons/fetchmail_crm_claim/__init__.py @@ -18,3 +18,5 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/fetchmail_crm_claim/__openerp__.py b/addons/fetchmail_crm_claim/__openerp__.py index cfe6a675d20..4fdd1671a28 100644 --- a/addons/fetchmail_crm_claim/__openerp__.py +++ b/addons/fetchmail_crm_claim/__openerp__.py @@ -20,11 +20,11 @@ ############################################################################## { - "name" : "Fetchmail for CRM Claim", + "name" : "eMail Gateway for CRM Claim", "version" : "1.0", "depends" : ["fetchmail", "crm_claim"], "author" : "OpenERP SA", - "category": 'Hidden/Link', + 'category': 'Sales Management', "description": """ """, 'website': 'http://www.openerp.com', @@ -37,3 +37,5 @@ 'installable': True, 'active': False, } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/fetchmail_hr_recruitment/__init__.py b/addons/fetchmail_hr_recruitment/__init__.py index 5831b3284bb..b5b36afb7e9 100644 --- a/addons/fetchmail_hr_recruitment/__init__.py +++ b/addons/fetchmail_hr_recruitment/__init__.py @@ -18,3 +18,5 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/fetchmail_hr_recruitment/__openerp__.py b/addons/fetchmail_hr_recruitment/__openerp__.py index 75531097645..77d5cb93585 100644 --- a/addons/fetchmail_hr_recruitment/__openerp__.py +++ b/addons/fetchmail_hr_recruitment/__openerp__.py @@ -20,11 +20,11 @@ ############################################################################## { - "name" : "Fetchmail for Applicants", + "name" : "eMail Gateway for Applicants", "version" : "1.0", "depends" : ["fetchmail", "hr_recruitment"], "author" : "OpenERP SA", - "category": 'Hidden/Link', + "category": "Human Resources", "description": """ """, 'website': 'http://www.openerp.com', @@ -37,3 +37,5 @@ 'installable': True, 'active': False, } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/fetchmail_project_issue/__init__.py b/addons/fetchmail_project_issue/__init__.py index 5831b3284bb..b5b36afb7e9 100644 --- a/addons/fetchmail_project_issue/__init__.py +++ b/addons/fetchmail_project_issue/__init__.py @@ -18,3 +18,5 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/fetchmail_project_issue/__openerp__.py b/addons/fetchmail_project_issue/__openerp__.py index 1165949108a..043a68def62 100644 --- a/addons/fetchmail_project_issue/__openerp__.py +++ b/addons/fetchmail_project_issue/__openerp__.py @@ -20,11 +20,11 @@ ############################################################################## { - "name" : "Fetchmail for Project Issue", + "name" : "eMail Gateway for Project Issues", "version" : "1.0", "depends" : ["fetchmail", "project_issue"], "author" : "OpenERP SA", - "category": 'Hidden/Link', + "category": "Project Management", "description": """ """, 'website': 'http://www.openerp.com', @@ -37,3 +37,5 @@ 'installable': True, 'active': False, } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/google_base_account/__openerp__.py b/addons/google_base_account/__openerp__.py index 19afc18bf09..ed5700b3116 100644 --- a/addons/google_base_account/__openerp__.py +++ b/addons/google_base_account/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Google user', + 'name': 'Google Users', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """The module adds google user in res user""", 'author': 'OpenERP SA', 'website': 'http://www.openerp.com', diff --git a/addons/google_map/__openerp__.py b/addons/google_map/__openerp__.py index 48c393409e4..f8001c918c6 100644 --- a/addons/google_map/__openerp__.py +++ b/addons/google_map/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Google Map', + 'name': 'Google Maps on Customers', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ The module adds Google Map field in partner address. ==================================================== diff --git a/addons/hr/hr.py b/addons/hr/hr.py index f641a425e18..e903f03d974 100644 --- a/addons/hr/hr.py +++ b/addons/hr/hr.py @@ -79,12 +79,28 @@ class hr_job(osv.osv): } return res + def _get_job_position(self, cr, uid, ids, context=None): + res = [] + for employee in self.pool.get('hr.employee').browse(cr, uid, ids, context=context): + if employee.job_id: + res.append(employee.job_id.id) + return res + _name = "hr.job" _description = "Job Description" _columns = { 'name': fields.char('Job Name', size=128, required=True, select=True), - 'expected_employees': fields.function(_no_of_employee, string='Expected Employees', help='Required number of Employees in total for that job.', multi="no_of_employee", store=True), - 'no_of_employee': fields.function(_no_of_employee, string="No of Employee", help='Number of employee with that job.', multi="no_of_employee", store=True), + 'expected_employees': fields.function(_no_of_employee, string='Expected Employees', help='Required number of employees in total for that job.', + store = { + 'hr.job': (lambda self,cr,uid,ids,c=None: ids, ['no_of_recruitment'], 10), + 'hr.employee': (_get_job_position, ['job_id'], 10), + }, + multi='no_of_employee'), + 'no_of_employee': fields.function(_no_of_employee, string="Number of Employees", help='Number of employees with that job.', + store = { + 'hr.employee': (_get_job_position, ['job_id'], 10), + }, + multi='no_of_employee'), 'no_of_recruitment': fields.float('Expected in Recruitment'), 'employee_ids': fields.one2many('hr.employee', 'job_id', 'Employees'), 'description': fields.text('Job Description'), @@ -98,7 +114,7 @@ class hr_job(osv.osv): 'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'hr.job', context=c), 'state': 'open', } - + _sql_constraints = [ ('name_company_uniq', 'unique(name, company_id)', 'The name of the job position must be unique per company!'), ] @@ -242,7 +258,7 @@ class res_users(osv.osv): def create(self, cr, uid, data, context=None): user_id = super(res_users, self).create(cr, uid, data, context=context) - + # add shortcut unless 'noshortcut' is True in context if not(context and context.get('noshortcut', False)): data_obj = self.pool.get('ir.model.data') @@ -254,7 +270,7 @@ class res_users(osv.osv): except: # Tolerate a missing shortcut. See product/product.py for similar code. logging.getLogger('orm').debug('Skipped meetings shortcut for user "%s"', data.get('name','<new')) - + return user_id res_users() diff --git a/addons/hr/hr_board.xml b/addons/hr/hr_board.xml index 620f1f51c88..977ca710e52 100644 --- a/addons/hr/hr_board.xml +++ b/addons/hr/hr_board.xml @@ -9,10 +9,8 @@ <field name="arch" type="xml"> <form string="My Board"> <board style="2-1"> - <column> - </column> - <column> - </column> + <column/> + <column/> </board> </form> </field> @@ -39,10 +37,8 @@ <field name="arch" type="xml"> <form string="HR Manager Board"> <board style="2-1"> - <column> - </column> - <column> - </column> + <column/> + <column/> </board> </form> </field> diff --git a/addons/hr/hr_department_view.xml b/addons/hr/hr_department_view.xml index 9fdb64651f5..a48103ad2e0 100644 --- a/addons/hr/hr_department_view.xml +++ b/addons/hr/hr_department_view.xml @@ -19,14 +19,6 @@ <field name="manager_id" select="1"/> <field name="company_id" select="1" widget="selection" groups="base.group_multi_company"/> </group> - <notebook colspan="4" > - <page string="Members"> - <field colspan="4" name="member_ids" nolabel="1"/> - </page> - <page string="Notes"> - <field colspan="4" name="note" nolabel="1"/> - </page> - </notebook> </form> </field> </record> diff --git a/addons/hr/hr_view.xml b/addons/hr/hr_view.xml index bbe2d00ff6f..f51280f4465 100644 --- a/addons/hr/hr_view.xml +++ b/addons/hr/hr_view.xml @@ -131,45 +131,46 @@ <field name="model">hr.employee</field> <field name="type">kanban</field> <field name="arch" type="xml"> - <kanban default_group_by="department_id"> + <kanban> <field name="color"/> <templates> + <t t-name="employee_details"> + <ul class="oe_kanban_tooltip" t-if="record.job_id.raw_value"> + <li><b>Job:</b> <field name="job_id"/></li> + </ul> + </t> <t t-name="kanban-box"> - <t t-set="color" t-value="kanban_color(record.color.raw_value || record.name.raw_value)"/> - <div t-att-class="color + (record.color.raw_value == 1 ? ' oe_kanban_color_alert' : '')"> + <div t-attf-class="#{kanban_color(record.color.raw_value)}"> <div class="oe_kanban_box oe_kanban_color_border"> - <div class="oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle"> - <div class="oe_kanban_title1"><field name="name"/></div> + <div class="oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle oe_kanban_title" tooltip="employee_details"> + <field name="name"/> </div> <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger oe_kanban_color_border"> - <table class="oe_kanban_table"> - <tr> - <td valign="top" width="22"> - <img t-att-src="kanban_image('hr.employee', 'photo', record.id.value)" width="48"/> - </td> - <td> - <div class="oe_kanban_title2"><field name="job_id"/></div> - <div class="oe_kanban_title3"> - <field name="department_id"/> - <t t-if="record.department_id.raw_value && record.city.raw_value">,</t> - <field name="city"/> - </div> - <div class="oe_kanban_title3"> - <i><field name="work_email"/> - <t t-if="record.work_phone.raw_value && record.work_email.raw_value">,</t> - <field name="work_phone"/></i> - </div> - </td> - </tr> - </table> + <img t-att-src="kanban_image('hr.employee', 'photo', record.id.value)" width="48" style="float: left;"/> + <span t-if="record.parent_id.raw_value" class="oe_kanban_highlight"> + ❖ <field name="parent_id"/> + </span> + <span t-if="record.work_location.raw_value" class="oe_kanban_highlight"> + ✜ <field name="work_location"/> + </span> + <span t-if="record.work_email.raw_value" class="oe_kanban_highlight"> + ✉ <a t-attf-href="mailto:#{record.work_email.value}"><field name="work_email"/></a> + </span> + <span t-if="record.mobile_phone.raw_value" class="oe_kanban_highlight"> + ☎ <field name="mobile_phone"/> + </span> + <span t-if="record.work_phone.raw_value" class="oe_kanban_highlight"> + ☏ <field name="work_phone"/> + </span> + <div class="oe_kanban_clear"/> </div> <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick"> <div class="oe_kanban_left"> - <a string="Edit" icon="gtk-edit" type="edit"/> + <a string="Edit" icon="gtk-edit" type="edit"/> <a string="Change Color" icon="color-picker" type="color" name="color"/> <a string="Send New Email" name="%(mail.action_email_compose_message_wizard)d" icon="terp-mail-message-new" type="action"/> </div> - <br class="oe_kanban_clear"/> + <div class="oe_kanban_clear"/> </div> </div> </div> @@ -184,7 +185,7 @@ <field name="view_type">tree</field> <field name="view_mode">tree,form</field> <field name="view_id" ref="view_employee_tree"/> - <field name="domain">[('parent_id','=',False),('user_id','=',uid)]</field> + <field name="domain">[('parent_id','=',False)]</field> <field name="search_view_id" ref="view_employee_filter"/> </record> @@ -201,21 +202,26 @@ <field name="name">Employees</field> <field name="res_model">hr.employee</field> <field name="view_type">form</field> - <field name="view_mode">tree,form,kanban</field> + <field name="view_mode">kanban,tree,form</field> <field name="domain">[]</field> <field name="context">{"search_default_department_id": department_id,"search_default_active":eval('True')}</field> - <field name="view_id" ref="view_employee_tree"/> + <field name="view_id" eval="False"/> <field name="search_view_id" ref="view_employee_filter"/> <field name="help">Here you can manage your work force by creating employees and assigning them specific properties in the system. Maintain all employee related information and keep track of anything that needs to be recorded for them. The personal information tab will help you maintain their identity data. The Categories tab gives you the opportunity to assign them related employee categories depending on their position and activities within the company. A category can be a seniority level within the company or a department. The Timesheets tab allows to assign them a specific timesheet and analytic journal where they will be able to enter time through the system. In the note tab, you can enter text data that should be recorded for a specific employee.</field> </record> - + + <record id="open_view_employee_list_my_kanban" model="ir.actions.act_window.view"> + <field name="sequence" eval="0"/> + <field name="view_mode">kanban</field> + <field name="act_window_id" ref="open_view_employee_list_my"/> + </record> <record id="open_view_employee_list_my_tree2" model="ir.actions.act_window.view"> <field name="sequence" eval="1"/> <field name="view_mode">tree</field> <field name="view_id" ref="view_employee_tree"/> <field name="act_window_id" ref="open_view_employee_list_my"/> </record> - + <record id="open_view_employee_list_my_form2" model="ir.actions.act_window.view"> <field name="sequence" eval="2"/> <field name="view_mode">form</field> diff --git a/addons/hr/i18n/fr_CH.po b/addons/hr/i18n/fr_CH.po new file mode 100644 index 00000000000..650fcdb8b92 --- /dev/null +++ b/addons/hr/i18n/fr_CH.po @@ -0,0 +1,29 @@ +# French (Switzerland) translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <bogdanovidiu.stanciu@gmail.com>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:15:13+0000\n" +"PO-Revision-Date: 2011-11-06 15:15+0000\n" +"Last-Translator: Bogdan Stanciu (bstanciu)\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: 2011-11-05 05:31+0000\n" +"X-Generator: Launchpad (build 14231)\n" + +#. module: hr +#: field:hr.employee,ssnid:0 +msgid "SSN No" +msgstr "No. AVS" + +#. module: hr +#: help:hr.employee,ssnid:0 +msgid "Social Security Number" +msgstr "Numéro de sécurité sociale (AVS)" + diff --git a/addons/hr_attendance/hr_attendance_demo.xml b/addons/hr_attendance/hr_attendance_demo.xml index a1f42eb1004..f478e099b87 100644 --- a/addons/hr_attendance/hr_attendance_demo.xml +++ b/addons/hr_attendance/hr_attendance_demo.xml @@ -122,21 +122,5 @@ <field name="employee_id" ref="hr.employee1"/> </record> -<!-- FIXME! Commented out to enable installation without creating conflicts - during the first days of a month. To be properly fixed, see - launchpad bug 791087! - - <record id="attendance21" model="hr.attendance"> - <field eval="time.strftime('%Y-%m-%d 10:00')" name="name"/> - <field name="action">sign_in</field> - <field name="employee_id" ref="hr.employee1"/> - </record> - - <record id="attendance22" model="hr.attendance"> - <field eval="time.strftime('%Y-%m-%d 18:00')" name="name"/> - <field name="action">sign_out</field> - <field name="employee_id" ref="hr.employee1"/> - </record> ---> </data> </openerp> diff --git a/addons/hr_evaluation/__openerp__.py b/addons/hr_evaluation/__openerp__.py index 720c49302d4..4c1b32e1395 100644 --- a/addons/hr_evaluation/__openerp__.py +++ b/addons/hr_evaluation/__openerp__.py @@ -27,7 +27,7 @@ 'complexity': "easy", "website": "http://www.openerp.com", "images": ["images/hr_evaluation_analysis.jpeg","images/hr_evaluation.jpeg"], - "depends": ["hr",'hr_recruitment','survey'], + "depends": ["hr","base_calendar","survey"], "description": """ Ability to create employees evaluation. ======================================= @@ -54,6 +54,7 @@ in the form of pdf file. Implements a dashboard for My Current Evaluations "active": False, "installable": True, "certificate" : "00883207679172998429", + 'application': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_evaluation/board_hr_evaluation_view.xml b/addons/hr_evaluation/board_hr_evaluation_view.xml index 7f6d3142db5..3e437833c2d 100644 --- a/addons/hr_evaluation/board_hr_evaluation_view.xml +++ b/addons/hr_evaluation/board_hr_evaluation_view.xml @@ -2,7 +2,7 @@ <openerp> <data> <record id="act_hr_evaluation_tree" model="ir.actions.act_window"> - <field name="name">My Evaluation Remaining</field> + <field name="name">My Appraisal Remaining</field> <field name="type">ir.actions.act_window</field> <field name="res_model">hr_evaluation.evaluation</field> <field name="view_type">form</field> @@ -17,8 +17,8 @@ <field name="inherit_id" ref="hr.board_hr_form"/> <field name="type">form</field> <field name="arch" type="xml"> - <xpath expr="/form/board/column" position="inside"> - <action name="%(act_hr_evaluation_tree)d" string="My Evaluation Remaining"/> + <xpath expr="/form/board/column[1]" position="inside"> + <action name="%(act_hr_evaluation_tree)d" string="My Appraisal Remaining"/> </xpath> </field> </record> diff --git a/addons/hr_evaluation/hr_evaluation_data.xml b/addons/hr_evaluation/hr_evaluation_data.xml index 40ff397534e..ec4b46f8a62 100644 --- a/addons/hr_evaluation/hr_evaluation_data.xml +++ b/addons/hr_evaluation/hr_evaluation_data.xml @@ -2,7 +2,7 @@ <openerp> <data noupdate="1"> <record id="survey_2" model="survey"> - <field name="title">Employee Evaluation</field> + <field name="title">Employee Appraisal</field> <field name="max_response_limit">20</field> <field eval="[(6,0,[])]" name="users"/> <field name="type" ref="survey.survey_type1"/> @@ -11,7 +11,7 @@ <field name="state">open</field> </record> <record id="survey_page_1" model="survey.page"> - <field name="title">Employee Evaluation Form</field> + <field name="title">Employee Appraisal Form</field> <field name="survey_id" ref="survey_2"/> <field eval="1" name="sequence"/> </record> @@ -128,7 +128,7 @@ <field eval="0" name="is_require_answer"/> <field name="type">descriptive_text</field> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> - <field name="descriptive_text">* The employee will be responsible for completing a draft of the Appraisal Form as a tool for self-evaluation and a starting point for the supervisor’s evaluation. The employee can add examples of achievements for each criterion. + <field name="descriptive_text">* The employee will be responsible for completing a draft of the Appraisal Form as a tool for self-appraisal and a starting point for the supervisor’s evaluation. The employee can add examples of achievements for each criterion. Once the form had been filled, the employee send it to his supervisor. * It is the primary responsibility of the supervisor to gather the necessary input from the appropriate sources of feedback (internal and/or external customers, peers). In case of collaboration with OpenERP SA Belgium, the supervisor must receive completed evaluation form from the employee's Belgian project manager. @@ -204,7 +204,7 @@ Once the form had been filled, the employee send it to his supervisor. <field name="question">Subject</field> <field eval="0" name="is_require_answer"/> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="column_name">Recommendations / Evaluations</field> + <field name="column_name">Recommendations / Appraisals</field> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> <field eval="0" name="in_visible_menu_choice"/> @@ -227,7 +227,7 @@ Once the form had been filled, the employee send it to his supervisor. <field name="question">Supervisors only : </field> <field eval="0" name="is_require_answer"/> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="column_name">Recommendations / Evaluations</field> + <field name="column_name">Recommendations / Appraisals</field> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> <field eval="0" name="in_visible_menu_choice"/> @@ -1150,7 +1150,7 @@ Once the form had been filled, the employee send it to his supervisor. <record id="hr_evaluation_plan_managersevaluationplan0" model="hr_evaluation.plan"> <field eval="1" name="active"/> <field eval="6" name="month_next"/> - <field name="name">Manager's Evaluation Plan</field> + <field name="name">Manager's Appraisal Plan</field> <field eval="3" name="month_first"/> <field name="company_id" ref="base.main_company"/> </record> @@ -1205,7 +1205,7 @@ Once the form had been filled, the employee send it to his supervisor. <field name="action">final</field> <field eval="0" name="send_anonymous_employee"/> <field eval="0" name="send_answer_employee"/> - <field name="survey_id" ref="hr_recruitment.survey_job_0"/> + <field name="survey_id" ref="hr_evaluation.survey_2"/> <field eval="0" name="send_answer_manager"/> <field eval="1" name="wait"/> </record> @@ -1219,7 +1219,7 @@ Once the form had been filled, the employee send it to his supervisor. <data> <record forcecreate="True" id="ir_cron_scheduler_evaluation" model="ir.cron"> - <field name="name">Run Employee Evaluation</field> + <field name="name">Run Employee Appraisal</field> <field eval="True" name="active" /> <field name="user_id" ref="base.user_root" /> <field name="interval_number">1</field> diff --git a/addons/hr_evaluation/hr_evaluation_installer.xml b/addons/hr_evaluation/hr_evaluation_installer.xml index 842363559a9..10e7773bc62 100644 --- a/addons/hr_evaluation/hr_evaluation_installer.xml +++ b/addons/hr_evaluation/hr_evaluation_installer.xml @@ -2,11 +2,12 @@ <openerp> <data> <record model="ir.actions.act_window" id="action_evaluation_plans_installer"> - <field name="name">Review Evaluation Plans</field> + <field name="name">Review Appraisal Plans</field> <field name="type">ir.actions.act_window</field> <field name="res_model">hr_evaluation.plan</field> <field name="view_type">form</field> <field name="view_mode">tree,form</field> + <field name="help">You can define appraisal plans (ex: first interview after 6 months, then every year). Then, each employee can be linked to an appraisal plan so that OpenERP can automatically generate interview requests to managers and/or subordinates.</field> </record> <record id="todo_evaluation_plans_installer" model="ir.actions.todo"> diff --git a/addons/hr_evaluation/hr_evaluation_view.xml b/addons/hr_evaluation/hr_evaluation_view.xml index e15b461d2e2..d8dfa7e40ca 100644 --- a/addons/hr_evaluation/hr_evaluation_view.xml +++ b/addons/hr_evaluation/hr_evaluation_view.xml @@ -381,7 +381,7 @@ <field name="view_type">form</field> <field name="view_id" ref="view_hr_evaluation_interview_form"/> <field name="domain">[('is_evaluation' ,'=', True)]</field> - <field name="context">{"search_default_todo":1,"search_default_user_id":uid}</field> + <field name="context">{'default_is_evaluation': True, "search_default_todo":1,"search_default_user_id":uid}</field> <field name="search_view_id" ref="view_hr_evaluation_interview_search"/> <field name="help">Interview Requests are generated automatically by OpenERP according to an employee's Appraisal Plan. Each user receives automatic emails and requests to evaluate their colleagues periodically.</field> </record> diff --git a/addons/hr_expense/__openerp__.py b/addons/hr_expense/__openerp__.py index 4a22f00e076..e0a8a002a6a 100644 --- a/addons/hr_expense/__openerp__.py +++ b/addons/hr_expense/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Expenses', + 'name': 'Expenses Management', 'version': '1.0', 'category': 'Human Resources', 'complexity': "easy", @@ -68,5 +68,6 @@ re-invoice your customer's expenses if your work by project. 'installable': True, 'active': False, 'certificate': '0062479841789', + 'application': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_expense/board_hr_expense_view.xml b/addons/hr_expense/board_hr_expense_view.xml index 5d6ad4dbd6b..3383f734f7d 100644 --- a/addons/hr_expense/board_hr_expense_view.xml +++ b/addons/hr_expense/board_hr_expense_view.xml @@ -7,6 +7,7 @@ <field name="res_model">hr.expense.expense</field> <field name="view_type">form</field> <field name="domain">[('state','in',('confirm', 'accepted')),('user_id','=',uid)]</field> + <field name="context">{'default_user_id': uid}</field> <field name="view_id" ref="hr_expense.view_editable_expenses_tree"/> </record> @@ -16,7 +17,7 @@ <field name="inherit_id" ref="hr.board_hr_form"/> <field name="type">form</field> <field name="arch" type="xml"> - <xpath expr="/form/board/column" position="inside"> + <xpath expr="/form/board/column[1]" position="inside"> <action name="%(action_my_expense)d" string="My Expenses"/> </xpath> </field> diff --git a/addons/hr_holidays/__openerp__.py b/addons/hr_holidays/__openerp__.py index ec12b884201..61d613ad0c5 100644 --- a/addons/hr_holidays/__openerp__.py +++ b/addons/hr_holidays/__openerp__.py @@ -21,9 +21,9 @@ { - "name": "Leave Management", + "name": "Leaves Management", "version": "1.5", - "author": ['OpenERP SA', 'Axelor'], + "author": "OpenERP SA", "category": "Human Resources", 'complexity': "easy", "website": "http://www.openerp.com", @@ -72,6 +72,7 @@ Note that: 'test/hr_holidays_report.yml', ], 'installable': True, + 'application': True, 'active': False, 'certificate': '0086579209325', } diff --git a/addons/hr_holidays/board_hr_holidays_view.xml b/addons/hr_holidays/board_hr_holidays_view.xml index f0a0ab0741a..178602725ae 100644 --- a/addons/hr_holidays/board_hr_holidays_view.xml +++ b/addons/hr_holidays/board_hr_holidays_view.xml @@ -16,7 +16,7 @@ <field name="type">form</field> <field name="inherit_id" ref="hr.board_hr_form"/> <field name="arch" type="xml"> - <xpath expr="/form/board/column" position="inside"> + <xpath expr="/form/board/column[1]" position="inside"> <action name="%(action_hr_holidays_leaves_by_month)d" string="Leaves"/> </xpath> </field> diff --git a/addons/hr_holidays/hr_holidays.py b/addons/hr_holidays/hr_holidays.py index d22c5b9f1bb..746c2764315 100644 --- a/addons/hr_holidays/hr_holidays.py +++ b/addons/hr_holidays/hr_holidays.py @@ -262,7 +262,7 @@ class hr_holidays(osv.osv): 'name': record.name, 'categ_id': record.holiday_status_id.categ_id.id, 'duration': record.number_of_days_temp * 8, - 'note': record.notes, + 'description': record.notes, 'user_id': record.user_id.id, 'date': record.date_from, 'end_date': record.date_to, diff --git a/addons/hr_holidays/hr_holidays_view.xml b/addons/hr_holidays/hr_holidays_view.xml index a43378b1c95..8af2392f6e4 100644 --- a/addons/hr_holidays/hr_holidays_view.xml +++ b/addons/hr_holidays/hr_holidays_view.xml @@ -59,7 +59,7 @@ <form string="Leave Request"> <group col="8" colspan="4"> <field name="name" attrs="{'readonly':[('state','!=','draft'),('state','!=','confirm')]}"/> - <field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" width="130" groups="base.group_hr_manager"/> + <field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" width="130" string="Mode" groups="base.group_hr_manager"/> <group attrs="{'invisible':[('holiday_type','=','employee')]}"> <field name="category_id" attrs="{'required':[('holiday_type','=','category')], 'readonly':[('state','!=','draft')]}"/> </group> @@ -104,7 +104,7 @@ <form string="Allocation Request"> <group col="8" colspan="4"> <field name="name"/> - <field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" string="Allocation Category" groups="base.group_hr_manager"/> + <field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" string="Allocation Mode" groups="base.group_hr_manager"/> <group attrs="{'invisible':[('holiday_type','=','category')]}"> <field name="employee_id" attrs="{'required':[('holiday_type','=','employee')]}"/> </group> @@ -285,8 +285,8 @@ <field name="name">Requests Approve</field> <field name="res_model">hr.holidays</field> <field name="view_type">form</field> - <field name="context">{'search_default_approve':1,"search_default_department_id": department_id}</field> - <field name="domain">[('type','=','add')]</field> + <field name="context">{'default_type': 'add', 'search_default_approve':1,"search_default_department_id": department_id}</field> + <field name="domain">[('type','=','remove')]</field> <field name="view_id" ref="edit_holiday_new"/> <field name="search_view_id" ref="view_hr_holidays_filter"/> </record> diff --git a/addons/hr_holidays/report/available_holidays.py b/addons/hr_holidays/report/available_holidays.py index 26c654db9dd..cb3a89eeb3e 100644 --- a/addons/hr_holidays/report/available_holidays.py +++ b/addons/hr_holidays/report/available_holidays.py @@ -19,3 +19,5 @@ # ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_payroll/__openerp__.py b/addons/hr_payroll/__openerp__.py index 5c78b80f095..c659444551e 100644 --- a/addons/hr_payroll/__openerp__.py +++ b/addons/hr_payroll/__openerp__.py @@ -71,6 +71,7 @@ Generic Payroll system. 'installable': True, 'active': False, 'certificate' : '001046261404562128861', + 'application': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_payroll/hr_payroll.py b/addons/hr_payroll/hr_payroll.py index affd81cce6d..aaf215c87f5 100644 --- a/addons/hr_payroll/hr_payroll.py +++ b/addons/hr_payroll/hr_payroll.py @@ -298,6 +298,14 @@ class hr_payslip(osv.osv): context=context).company_id.id, } + def _check_dates(self, cr, uid, ids, context=None): + for payslip in self.browse(cr, uid, ids, context=context): + if payslip.date_from > payslip.date_to: + return False + return True + + _constraints = [(_check_dates, "Payslip 'Date From' must be before 'Date To'.", ['date_from', 'date_to'])] + def copy(self, cr, uid, id, default=None, context=None): if not default: default = {} diff --git a/addons/hr_payroll/hr_payroll_demo.xml b/addons/hr_payroll/hr_payroll_demo.xml index e888ad6f133..7d670d6cafa 100644 --- a/addons/hr_payroll/hr_payroll_demo.xml +++ b/addons/hr_payroll/hr_payroll_demo.xml @@ -146,7 +146,7 @@ <field name="employee_id" ref="hr_employee_bonamy0"/> <field name="notes">Default contract for marketing executives</field> <field eval="4000.0" name="wage"/> - <field eval="5" name="working_days_per_week"/> + <field name="working_hours" ref="resource.timesheet_group1"/> </record> <record id="hr_contract_quentin_paolino" model="hr.contract"> @@ -158,7 +158,6 @@ <field name="employee_id" ref="hr.employee2"/> <field name="notes">This is Quentin Paolino's contract</field> <field eval="5000.0" name="wage"/> - <field eval="5" name="working_days_per_week"/> <field name="working_hours" ref="resource.timesheet_group1"/> </record> diff --git a/addons/hr_payroll/hr_payroll_report.xml b/addons/hr_payroll/hr_payroll_report.xml index a0027d70e0d..a1b3587313a 100644 --- a/addons/hr_payroll/hr_payroll_report.xml +++ b/addons/hr_payroll/hr_payroll_report.xml @@ -6,7 +6,7 @@ auto="False" id="payslip_report" model="hr.payslip" - name="test.pdf" + name="payslip" rml="hr_payroll/report/report_payslip.rml" string="Employee PaySlip" /> diff --git a/addons/hr_payroll/hr_payroll_view.xml b/addons/hr_payroll/hr_payroll_view.xml index 01fe270710d..5f2e977f116 100644 --- a/addons/hr_payroll/hr_payroll_view.xml +++ b/addons/hr_payroll/hr_payroll_view.xml @@ -262,7 +262,7 @@ <group col="6" colspan="4"> <field name="employee_id" on_change="onchange_employee_id(date_from, date_to, employee_id, contract_id)"/> <field name="number"/> - <field name="date_from"/> + <field name="date_from" on_change="onchange_employee_id(date_from, date_to, employee_id, contract_id)"/> <field name="contract_id" groups="base.group_extended" domain="[('employee_id','=',employee_id)]" on_change="onchange_contract_id(date_from, date_to, employee_id, contract_id)"/> <field name="struct_id" groups="base.group_extended" attrs="{'required':[('contract_id','<>',False)]}"/> <field name="date_to"/> @@ -759,13 +759,14 @@ <act_window name="Payslip Computation Details" domain="[('slip_id', '=', active_id)]" + context="{'default_slip_id': active_id}" res_model="hr.payslip.line" src_model="hr.payslip" id="act_payslip_lines"/> <act_window name="Payslip Lines" domain="[('register_id', '=', active_id)]" - context="{'search_default_register_id': 1}" + context="{'default_register_id': active_id, 'search_default_register_id': 1}" res_model="hr.payslip.line" src_model="hr.contribution.register" id="act_contribution_reg_payslip_lines"/> diff --git a/addons/hr_payroll/i18n/cs.po b/addons/hr_payroll/i18n/cs.po new file mode 100644 index 00000000000..bf9a6b2bddd --- /dev/null +++ b/addons/hr_payroll/i18n/cs.po @@ -0,0 +1,1636 @@ +# Czech translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:15+0000\n" +"PO-Revision-Date: 2011-11-29 13:31+0000\n" +"Last-Translator: Jiří Hajda <robie@centrum.cz>\n" +"Language-Team: Czech <openerp-i18n-czech@lists.launchpad.net >\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-11-30 05:27+0000\n" +"X-Generator: Launchpad (build 14404)\n" +"X-Poedit-Language: Czech\n" + +#. module: hr_payroll +#: report:employees.salary:0 +msgid "E-mail Address" +msgstr "E-mailová adresa" + +#. module: hr_payroll +#: view:hr.allounce.deduction.categoty:0 +msgid "Based" +msgstr "Založeno" + +#. module: hr_payroll +#: field:hr.contract,net:0 +#: field:hr.employee,net:0 +#: field:hr.payroll.register,net:0 +#: field:hr.payslip,net:0 +#: report:salary.structure:0 +msgid "Net Salary" +msgstr "Čistý plat" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Recompute Sheet" +msgstr "Přepočítat list" + +#. module: hr_payroll +#: report:employees.salary:0 +msgid "Employees Salary Details" +msgstr "Podrobnosti platu zaměstnance" + +#. module: hr_payroll +#: report:employees.salary:0 +msgid "Allowances with Basic:" +msgstr "Odměny se základem:" + +#. module: hr_payroll +#: report:employees.salary:0 +#: report:salary.structure:0 +msgid "Department" +msgstr "Oddělení" + +#. module: hr_payroll +#: report:employees.salary:0 +msgid "Deductions:" +msgstr "Odpočty" + +#. module: hr_payroll +#: field:company.contribution,gratuity:0 +msgid "Use for Gratuity ?" +msgstr "Použití pro prémie ?" + +#. module: hr_payroll +#: field:hr.contract,working_days_per_week:0 +#: field:hr.payslip,working_days:0 +#: report:payslip.pdf:0 +msgid "Working Days" +msgstr "Pracovní dny" + +#. module: hr_payroll +#: selection:hr.allounce.deduction.categoty,type:0 +#: selection:hr.payslip.line,type:0 +msgid "Loan" +msgstr "Půjčka" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +msgid "Salary Payment Register" +msgstr "Registr placení mzdy" + +#. module: hr_payroll +#: field:hr.employee,slip_ids:0 +#: view:hr.payroll.register:0 +#: field:hr.payroll.register,line_ids:0 +#: model:ir.actions.act_window,name:hr_payroll.act_hr_employee_payslip_list +msgid "Payslips" +msgstr "Výplatní pásky" + +#. module: hr_payroll +#: model:ir.actions.report.xml,name:hr_payroll.year_salary_report +msgid "Year Salary Report" +msgstr "Roční výkaz platu" + +#. module: hr_payroll +#: selection:hr.payroll.register,state:0 +#: selection:hr.payslip,state:0 +msgid "Paid Salary" +msgstr "Zaplacený plat" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "(" +msgstr "(" + +#. module: hr_payroll +#: field:company.contribution,company_id:0 +#: field:hr.allounce.deduction.categoty,company_id:0 +#: field:hr.contibution.register,company_id:0 +#: field:hr.holidays.status,company_id:0 +#: field:hr.payroll.advice,company_id:0 +#: field:hr.payroll.register,company_id:0 +#: field:hr.payroll.structure,company_id:0 +#: field:hr.payslip,company_id:0 +msgid "Company" +msgstr "Společnost" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "The Manager" +msgstr "Správce" + +#. module: hr_payroll +#: view:hr.payroll.advice:0 +msgid "Letter Details" +msgstr "Podrobnosti dopisu" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +#: report:payslip.pdf:0 +msgid "," +msgstr "," + +#. module: hr_payroll +#: view:hr.payroll.advice:0 +#: view:hr.payroll.register:0 +#: view:hr.payslip:0 +msgid "Set to Draft" +msgstr "Nastavit na koncept" + +#. module: hr_payroll +#: code:addons/hr_payroll/hr_payroll.py:180 +#: code:addons/hr_payroll/hr_payroll.py:195 +#: code:addons/hr_payroll/hr_payroll.py:285 +#: code:addons/hr_payroll/hr_payroll.py:835 +#: code:addons/hr_payroll/hr_payroll.py:1111 +#: code:addons/hr_payroll/hr_payroll.py:1126 +#: code:addons/hr_payroll/hr_payroll.py:1410 +#, python-format +msgid "Variable Error: %s " +msgstr "Chyba proměnné: %s " + +#. module: hr_payroll +#: view:hr.passport:0 +msgid "Expire" +msgstr "Vyprší" + +#. module: hr_payroll +#: selection:hr.holidays.status,type:0 +msgid "Half-Pay Holiday" +msgstr "Na půl placená dovolená" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +#: field:hr.payslip,other_pay:0 +msgid "Others" +msgstr "Jiné" + +#. module: hr_payroll +#: field:hr.payslip.line,slip_id:0 +#: model:ir.model,name:hr_payroll.model_hr_payslip +#: report:payslip.pdf:0 +msgid "Pay Slip" +msgstr "Mzdový list" + +#. module: hr_payroll +#: report:salary.structure:0 +msgid "Contract Detail:" +msgstr "Podrobnosti smlouvy:" + +#. module: hr_payroll +#: field:hr.payslip,igross:0 +#: field:hr.payslip,inet:0 +msgid "Calculaton Field" +msgstr "Výpočtové pole" + +#. module: hr_payroll +#: help:hr.payroll.advice,bank_id:0 +#: help:hr.payroll.register,bank_id:0 +msgid "Select the Bank Address from whcih the salary is going to be paid" +msgstr "Vyberte adresu banky, z které bude vyplacen plat" + +#. module: hr_payroll +#: view:hr.payroll.advice:0 +#: field:hr.payroll.advice.line,advice_id:0 +msgid "Bank Advice" +msgstr "Bankovní návěští" + +#. module: hr_payroll +#: selection:hr.payroll.advice,state:0 +#: selection:hr.payroll.register,state:0 +#: selection:hr.payslip,state:0 +msgid "Reject" +msgstr "Zamítnout" + +#. module: hr_payroll +#: selection:hr.allounce.deduction.categoty,type:0 +#: selection:hr.payslip.line,type:0 +msgid "Leaves" +msgstr "Uvolnění" + +#. module: hr_payroll +#: field:hr.contibution.register.line,register_id:0 +#: view:hr.payslip:0 +#: field:hr.payslip,register_id:0 +#: report:payslip.pdf:0 +msgid "Register" +msgstr "Registrace" + +#. module: hr_payroll +#: constraint:hr.employee:0 +msgid "" +"Error ! You cannot select a department for which the employee is the manager." +msgstr "Chyba ! Nemůžete vybrat oddělení, kterého je zaměstnanec vedoucí." + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Total Deductions" +msgstr "Celkem odpočty" + +#. module: hr_payroll +#: field:company.contribution.line,value:0 +#: field:hr.payslip.line.line,value:0 +msgid "Value" +msgstr "Hodnota" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "Name of the Employee" +msgstr "Jméno zaměstnance" + +#. module: hr_payroll +#: view:hr.contibution.register:0 +msgid "Register Lines" +msgstr "Řádky registru" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Salary Computation" +msgstr "Výpočet mzdy" + +#. module: hr_payroll +#: field:hr.payroll.advice.line,amount:0 +#: report:payroll.advice:0 +#: report:salary.structure:0 +msgid "Amount" +msgstr "Částka" + +#. module: hr_payroll +#: code:addons/hr_payroll/hr_payroll.py:1225 +#, python-format +msgid "Please check configuration of %s, payroll head is missing" +msgstr "Prosíme zkontrolujte nastavení %s, chybí hlavička výplatního listu" + +#. module: hr_payroll +#: selection:company.contribution,amount_type:0 +msgid "Percentage" +msgstr "Procenta" + +#. module: hr_payroll +#: view:company.contribution:0 +#: view:hr.allounce.deduction.categoty:0 +msgid "Other Information" +msgstr "Jiné informace" + +#. module: hr_payroll +#: field:hr.passport,country_id:0 +msgid "Country of Issue" +msgstr "Vydávající země" + +#. module: hr_payroll +#: field:hr.contibution.register.line,emp_deduction:0 +msgid "Employee Deduction" +msgstr "Odpočty zaměstnance" + +#. module: hr_payroll +#: selection:hr.allounce.deduction.categoty,type:0 +#: selection:hr.payslip.line,type:0 +msgid "Other Deduction" +msgstr "Jiné odpočty" + +#. module: hr_payroll +#: selection:hr.holidays.status,type:0 +msgid "Paid Holiday" +msgstr "Placená dovolená" + +#. module: hr_payroll +#: view:company.contribution:0 +#: view:hr.allounce.deduction.categoty:0 +#: view:hr.passport:0 +#: view:hr.payslip:0 +msgid "Group By..." +msgstr "Seskupit podle..." + +#. module: hr_payroll +#: field:hr.passport,date_expire:0 +msgid "Passport Expire Date" +msgstr "Datum vypršení pasu" + +#. module: hr_payroll +#: selection:hr.holidays.status,type:0 +msgid "Un-Paid Holiday" +msgstr "Neplacená dovolená" + +#. module: hr_payroll +#: view:hr.passport:0 +msgid "Valid From" +msgstr "Platné od" + +#. module: hr_payroll +#: help:hr.payslip,igross:0 +#: help:hr.payslip,inet:0 +msgid "" +"Calculation field used for internal calculation, do not place this on form" +msgstr "" +"Výpočtové pole použité pro vnitřní výpočty, neumísťujte jej do formuláře" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Amount (in words) :" +msgstr "Částka (slovně) :" + +#. module: hr_payroll +#: field:hr.holidays.status,type:0 +msgid "Payment" +msgstr "Patba" + +#. module: hr_payroll +#: view:hr.payroll.structure:0 +#: view:hr.payslip:0 +#: field:hr.payslip,line_ids:0 +#: view:hr.payslip.line:0 +#: model:ir.model,name:hr_payroll.model_hr_payslip_line +msgid "Payslip Line" +msgstr "Řádek výplatní pásky" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Identification No" +msgstr "Identifikační č." + +#. module: hr_payroll +#: view:hr.allounce.deduction.categoty:0 +#: field:hr.allounce.deduction.categoty,base:0 +msgid "Based on" +msgstr "Založeno na" + +#. module: hr_payroll +#: selection:hr.payroll.register,state:0 +#: selection:hr.payslip,state:0 +msgid "Wating for Verification" +msgstr "Čekající na ověření" + +#. module: hr_payroll +#: model:ir.module.module,shortdesc:hr_payroll.module_meta_information +msgid "Human Resource Payroll" +msgstr "Mzdy lidských zdrojů" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "Total:" +msgstr "Celkem:" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Posted" +msgstr "Zasláno" + +#. module: hr_payroll +#: model:ir.module.module,description:hr_payroll.module_meta_information +msgid "" +"Generic Payroll system\n" +" * Employee Details\n" +" * Employee Contracts\n" +" * Passport based Contract\n" +" * Allowances / Deductions\n" +" * Allow to configure Basic / Grows / Net Salary\n" +" * Employee Payslip\n" +" * Monthly Payroll Register\n" +" * Integrated with Holiday Management\n" +" " +msgstr "" +"Obecný mzdový systém\n" +" * Podrobnosti zaměstnance\n" +" * Smlouvy zaměstnance\n" +" * Smlouvy založené na pasu\n" +" * Přídavky / Odpočty\n" +" * Umožňuje nastavit základní / hrubé /čisté mzdy\n" +" * Výplatní pásky zaměstnanců\n" +" * Měsíční registr mezd\n" +" * Integrováno se správou dovolených\n" +" " + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_holidays_status +msgid "Leave Type" +msgstr "Typ uvolnění" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +msgid "Date :" +msgstr "Datum:" + +#. module: hr_payroll +#: field:hr.payslip.line,total:0 +msgid "Sub Total" +msgstr "Mezivýsledek" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Payments -" +msgstr "Platby -" + +#. module: hr_payroll +#: field:hr.contract,visa_no:0 +msgid "Visa No" +msgstr "Č. víza" + +#. module: hr_payroll +#: field:company.contribution.line,from_val:0 +#: report:employees.salary:0 +#: field:hr.payslip.line.line,from_val:0 +#: report:year.salary:0 +msgid "From" +msgstr "Od" + +#. module: hr_payroll +#: field:hr.payroll.advice.line,bysal:0 +#: report:payroll.advice:0 +msgid "By Salary" +msgstr "Podle platu" + +#. module: hr_payroll +#: field:hr.payroll.employees.detail,date_to:0 +#: field:hr.payroll.year.salary,date_to:0 +#: report:salary.structure:0 +msgid "End Date" +msgstr "Koncové datum" + +#. module: hr_payroll +#: model:ir.actions.report.xml,name:hr_payroll.salary_payslip +msgid "Employee PaySlip" +msgstr "Výplatní páska zaměstnance" + +#. module: hr_payroll +#: field:hr.payslip,leaves:0 +msgid "Leave Deductions" +msgstr "Odvody uvolnění" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +#: report:payroll.advice:0 +msgid "Authorised Signature" +msgstr "Oprávněný podpis" + +#. module: hr_payroll +#: selection:hr.payslip.line,amount_type:0 +msgid "Function Value" +msgstr "Hodnota funkce" + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_contibution_register_line +msgid "Contribution Register Line" +msgstr "Řádek registru příspěvků" + +#. module: hr_payroll +#: report:salary.structure:0 +msgid "Notes:" +msgstr "Poznámky:" + +#. module: hr_payroll +#: field:hr.payroll.advice,state:0 +#: field:hr.payroll.register,state:0 +#: field:hr.payslip,state:0 +msgid "State" +msgstr "Stav" + +#. module: hr_payroll +#: view:hr.payroll.advice:0 +msgid "Paymeny Lines" +msgstr "Řádky platby" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Other Lines" +msgstr "Jiné řádky" + +#. module: hr_payroll +#: view:company.contribution:0 +#: view:hr.allounce.deduction.categoty:0 +#: view:hr.payroll.structure:0 +#: view:hr.payslip:0 +#: view:hr.payslip.line:0 +msgid "Function Arguments" +msgstr "Parametry funkce" + +#. module: hr_payroll +#: model:ir.actions.act_window,name:hr_payroll.action_hr_company_contribution_tree +#: model:ir.ui.menu,name:hr_payroll.menu_hr_company_contribution_tree +msgid "Company Contributions" +msgstr "Příspěvky společnosti" + +#. module: hr_payroll +#: field:hr.contibution.register.line,employee_id:0 +#: field:hr.passport,employee_id:0 +#: field:hr.payroll.advice.line,employee_id:0 +#: field:hr.payslip,employee_id:0 +#: field:hr.payslip.line,employee_id:0 +#: model:ir.model,name:hr_payroll.model_hr_employee +msgid "Employee" +msgstr "Zaměstnanec" + +#. module: hr_payroll +#: field:hr.payslip.line,base:0 +msgid "Formula" +msgstr "Vzorec" + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_payroll_advice_line +msgid "Bank Advice Lines" +msgstr "Řádky bankovního avíza" + +#. module: hr_payroll +#: view:company.contribution:0 +#: view:hr.allounce.deduction.categoty:0 +#: field:hr.allounce.deduction.categoty,type:0 +#: field:hr.payslip.line,type:0 +#: report:salary.structure:0 +msgid "Type" +msgstr "Typ" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Email" +msgstr "Email" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +msgid "#" +msgstr "#" + +#. module: hr_payroll +#: code:addons/hr_payroll/hr_payroll.py:469 +#: code:addons/hr_payroll/hr_payroll.py:1225 +#, python-format +msgid "Error !" +msgstr "Chyba !" + +#. module: hr_payroll +#: view:hr.payroll.register:0 +#: view:hr.payslip:0 +msgid "Verify Sheet" +msgstr "Ověřovací list" + +#. module: hr_payroll +#: help:hr.contract,working_days_per_week:0 +msgid "No of Working days / week for an employee" +msgstr "Poč. pracovních dnů / týdnů pro zaměstnance" + +#. module: hr_payroll +#: selection:hr.payroll.register,state:0 +#: selection:hr.payslip,state:0 +msgid "New Slip" +msgstr "Nový list" + +#. module: hr_payroll +#: field:hr.payslip,basic:0 +msgid "Net Basic" +msgstr "Základ čistého" + +#. module: hr_payroll +#: field:hr.contract,gross:0 +#: field:hr.employee,gross:0 +#: field:hr.payroll.register,grows:0 +#: field:hr.payslip,grows:0 +#: report:salary.structure:0 +msgid "Gross Salary" +msgstr "Hrubá mzda" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Total Earnings" +msgstr "Výdělek celkem" + +#. module: hr_payroll +#: model:ir.actions.act_window,name:hr_payroll.action_hr_payroll_employees_detail +#: model:ir.ui.menu,name:hr_payroll.menu_hr_payroll_employees_detail +msgid "Employee Salary Statement" +msgstr "Příkaz mzdy zaměstnance" + +#. module: hr_payroll +#: selection:hr.allounce.deduction.categoty,type:0 +#: selection:hr.payslip.line,type:0 +msgid "Other Payment" +msgstr "Jiné platby" + +#. module: hr_payroll +#: field:hr.employee,advantages_net:0 +#: report:payslip.pdf:0 +#: report:salary.structure:0 +msgid "Deductions" +msgstr "Odpočty" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "C/D" +msgstr "C/D" + +#. module: hr_payroll +#: field:hr.contract,permit_no:0 +msgid "Work Permit No" +msgstr "Č. pracovního povolení" + +#. module: hr_payroll +#: field:hr.payroll.advice,line_ids:0 +msgid "Employee Salary" +msgstr "Mzda zaměstnance" + +#. module: hr_payroll +#: field:hr.payroll.advice,chaque_nos:0 +msgid "Chaque Nos" +msgstr "Č. poukázek" + +#. module: hr_payroll +#: field:hr.contibution.register,monthly_total_by_emp:0 +msgid "Total By Employee" +msgstr "Celkem podle zaměstnance" + +#. module: hr_payroll +#: view:company.contribution:0 +#: selection:company.contribution,amount_type:0 +#: selection:company.contribution.line,amount_type:0 +#: selection:hr.payslip.line,amount_type:0 +#: selection:hr.payslip.line.line,amount_type:0 +msgid "Fixed Amount" +msgstr "Pevná částka" + +#. module: hr_payroll +#: field:company.contribution.line,to_val:0 +#: report:employees.salary:0 +#: field:hr.payslip.line.line,to_val:0 +#: report:year.salary:0 +msgid "To" +msgstr "Komu" + +#. module: hr_payroll +#: code:addons/hr_payroll/hr_payroll.py:180 +#: code:addons/hr_payroll/hr_payroll.py:195 +#: code:addons/hr_payroll/hr_payroll.py:285 +#: code:addons/hr_payroll/hr_payroll.py:835 +#: code:addons/hr_payroll/hr_payroll.py:1111 +#: code:addons/hr_payroll/hr_payroll.py:1126 +#: code:addons/hr_payroll/hr_payroll.py:1410 +#, python-format +msgid "Variable Error !" +msgstr "Chyba proměnné !" + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_payroll_employees_detail +msgid "hr.payroll.employees.detail" +msgstr "hr.payroll.employees.detail" + +#. module: hr_payroll +#: view:hr.payroll.register:0 +#: view:hr.payslip:0 +msgid "Pay Salary" +msgstr "Vyplatit mzdu" + +#. module: hr_payroll +#: field:hr.payroll.advice.line,name:0 +msgid "Bank Account A/C" +msgstr "Bankovní účet A/C" + +#. module: hr_payroll +#: view:hr.contibution.register:0 +msgid "Contribution Lines" +msgstr "Řádky příspěvků" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +msgid "For the month of" +msgstr "Pro měsíc z" + +#. module: hr_payroll +#: view:hr.allounce.deduction.categoty:0 +#: selection:hr.allounce.deduction.categoty,type:0 +#: field:hr.payroll.register,deduction:0 +#: report:hr.payroll.register.sheet:0 +#: field:hr.payslip,deduction:0 +#: selection:hr.payslip.line,type:0 +msgid "Deduction" +msgstr "Odpočty" + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_payroll_advice +msgid "Bank Advice Note" +msgstr "Poznámka bankovního avíza" + +#. module: hr_payroll +#: view:hr.payroll.register:0 +#: view:hr.payslip:0 +msgid "Payslip" +msgstr "Výplatní list" + +#. module: hr_payroll +#: constraint:hr.contract:0 +msgid "Error! contract start-date must be lower then contract end-date." +msgstr "Chyba! Počáteční datum smlouvy musí být nižší než konečné datum." + +#. module: hr_payroll +#: selection:hr.allounce.deduction.categoty,type:0 +#: selection:hr.payslip.line,type:0 +msgid "Loan Installment" +msgstr "Půjčovací zřízení" + +#. module: hr_payroll +#: view:hr.payroll.register:0 +msgid "Complete HR Checking" +msgstr "Celková kontrola HR" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "Yours Sincerely" +msgstr "S přátelským pozdravem" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "SI. No." +msgstr "Č. SI." + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Net Amount" +msgstr "Částka čistkého" + +#. module: hr_payroll +#: report:salary.structure:0 +msgid "Salary Structure:" +msgstr "Struktura platu:" + +#. module: hr_payroll +#: model:ir.actions.report.xml,name:hr_payroll.year_employees_detail +msgid "Employees Salary Detail" +msgstr "Podrobnosti mezd zaměstnanců" + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_payslip_line_line +msgid "Function Line" +msgstr "Řádek funkce" + +#. module: hr_payroll +#: view:hr.payroll.advice:0 +#: selection:hr.payroll.advice,state:0 +#: selection:hr.payroll.register,state:0 +#: selection:hr.payslip,state:0 +msgid "Confirm Sheet" +msgstr "Potvrzovací list" + +#. module: hr_payroll +#: report:employees.salary:0 +msgid "Others:" +msgstr "Jiné:" + +#. module: hr_payroll +#: view:company.contribution:0 +#: selection:company.contribution,amount_type:0 +msgid "Function Calculation" +msgstr "Výpoče funkce" + +#. module: hr_payroll +#: field:hr.payslip,worked_days:0 +#: report:payslip.pdf:0 +msgid "Worked Day" +msgstr "Pracovních dnů" + +#. module: hr_payroll +#: field:hr.contibution.register,monthly_total_by_comp:0 +msgid "Total By Company" +msgstr "Celkem podle společnosti" + +#. module: hr_payroll +#: field:hr.payroll.advice.line,flag:0 +msgid "D/C" +msgstr "D/C" + +#. module: hr_payroll +#: view:hr.passport:0 +msgid "Country & Address" +msgstr "Zěmě & Adresa" + +#. module: hr_payroll +#: report:employees.salary:0 +msgid "Employee Code" +msgstr "Kód zaměstnance" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Basic Salary – Leaves" +msgstr "Základní mzda - uvolnění" + +#. module: hr_payroll +#: field:company.contribution,amount_type:0 +#: field:company.contribution.line,amount_type:0 +#: field:hr.payslip.line,amount_type:0 +#: field:hr.payslip.line.line,amount_type:0 +#: report:salary.structure:0 +msgid "Amount Type" +msgstr "Typ částky" + +#. module: hr_payroll +#: view:company.contribution:0 +#: field:hr.payslip.line,category_id:0 +msgid "Category" +msgstr "Kategorie" + +#. module: hr_payroll +#: view:company.contribution:0 +#: view:hr.allounce.deduction.categoty:0 +#: field:hr.payslip.line,company_contrib:0 +#: model:ir.model,name:hr_payroll.model_company_contribution +msgid "Company Contribution" +msgstr "Příspěvek společnosti" + +#. module: hr_payroll +#: field:company.contribution,category_id:0 +msgid "Heads" +msgstr "Hlavičky" + +#. module: hr_payroll +#: model:ir.actions.report.xml,name:hr_payroll.year_payroll_register +msgid "Print Statement" +msgstr "Tiskový příkaz" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Draft" +msgstr "Koncept" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Earnings" +msgstr "Výdělek" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +#: report:salary.structure:0 +msgid "Basic" +msgstr "Základní" + +#. module: hr_payroll +#: model:ir.actions.act_window,name:hr_payroll.action_hr_passport_tree +msgid "All Passports" +msgstr "Všechny průkazy" + +#. module: hr_payroll +#: model:ir.actions.act_window,name:hr_payroll.action_hr_payroll_year_salary +#: model:ir.ui.menu,name:hr_payroll.menu_wizard_print_year_salary +msgid "Salary Register" +msgstr "Registr mezd" + +#. module: hr_payroll +#: report:employees.salary:0 +#: report:hr.payroll.register.sheet:0 +msgid "Employee Name" +msgstr "Jméno zaměstnance" + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_passport +msgid "Passport Detail" +msgstr "Podrobnosti pasu" + +#. module: hr_payroll +#: selection:hr.payslip.line,amount_type:0 +msgid "Percentage (%)" +msgstr "Procenta (%)" + +#. module: hr_payroll +#: field:hr.payroll.advice,register_id:0 +#: view:hr.payroll.register:0 +#: model:ir.actions.act_window,name:hr_payroll.action_view_hr_payroll_register_form +#: model:ir.model,name:hr_payroll.model_hr_payroll_register +#: model:ir.ui.menu,name:hr_payroll.hr_menu_payroll_register +msgid "Payroll Register" +msgstr "Registr výplat" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +#: report:payroll.advice:0 +msgid "For" +msgstr "Pro" + +#. module: hr_payroll +#: field:hr.passport,contracts_ids:0 +msgid "Contracts" +msgstr "Smlouvy" + +#. module: hr_payroll +#: view:hr.payroll.structure:0 +msgid "Employee Function" +msgstr "Funkce zaměstnance" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Paid" +msgstr "Placeno" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Approve Sheet" +msgstr "Schvalovací list" + +#. module: hr_payroll +#: field:hr.payslip,paid:0 +msgid "Paid ? " +msgstr "Placeno ? " + +#. module: hr_payroll +#: view:hr.holidays.status:0 +msgid "Validation" +msgstr "Ověření" + +#. module: hr_payroll +#: report:employees.salary:0 +msgid "Title" +msgstr "Oslovení" + +#. module: hr_payroll +#: view:company.contribution:0 +msgid "Search Company Contribution" +msgstr "Hledat příspěvky společnosti" + +#. module: hr_payroll +#: field:hr.allounce.deduction.categoty,user_id:0 +msgid "User" +msgstr "Uživatel" + +#. module: hr_payroll +#: view:hr.payroll.advice:0 +msgid "Payment Lines" +msgstr "Platební řádky" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Compute Sheet" +msgstr "Výpočtový list" + +#. module: hr_payroll +#: field:company.contribution,active:0 +#: field:hr.payroll.register,active:0 +msgid "Active" +msgstr "Aktivní" + +#. module: hr_payroll +#: help:hr.allounce.deduction.categoty,condition:0 +msgid "Applied this head for calculation if condition is true" +msgstr "Tato hlavička použita pro výpočty, pokud je pravda" + +#. module: hr_payroll +#: report:year.salary:0 +msgid "Yearly Salary Details" +msgstr "Roční podrobnosti platu" + +#. module: hr_payroll +#: constraint:hr.employee:0 +msgid "Error ! You cannot create recursive Hierarchy of Employees." +msgstr "Chyba ! Nemůžete vytvořit rekurzivní Hierarchii zaměstnanců" + +#. module: hr_payroll +#: field:hr.allounce.deduction.categoty,condition:0 +msgid "Condition" +msgstr "Podmínka" + +#. module: hr_payroll +#: selection:hr.payroll.register,state:0 +#: selection:hr.payslip,state:0 +msgid "Wating for HR Verification" +msgstr "Čekající na ověření HR" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "Payment Advice:" +msgstr "Platební avízo:" + +#. module: hr_payroll +#: view:hr.payroll.register:0 +msgid "Compute" +msgstr "Spočítat" + +#. module: hr_payroll +#: report:employees.salary:0 +#: field:hr.payslip,deg_id:0 +#: report:payslip.pdf:0 +#: report:salary.structure:0 +msgid "Designation" +msgstr "Zařazení" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +msgid "HR Manager" +msgstr "Správce HR" + +#. module: hr_payroll +#: field:hr.contract,basic:0 +#: field:hr.employee,basic:0 +#: field:hr.payslip,basic_before_leaves:0 +#: report:payslip.pdf:0 +msgid "Basic Salary" +msgstr "Základní plat" + +#. module: hr_payroll +#: field:hr.allounce.deduction.categoty,code:0 +msgid "Category Code" +msgstr "Kód kategorie" + +#. module: hr_payroll +#: view:hr.payroll.register:0 +msgid "Salary Information" +msgstr "Mzdové informace" + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_allounce_deduction_categoty +#: model:ir.model,name:hr_payroll.model_hr_allounce_deduction_categoty_line +msgid "Allowance Deduction Categoty" +msgstr "Kategorie přídavků a odpočtů" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Companies" +msgstr "Společnosti" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Authorized Signature" +msgstr "Oprávněný podpis" + +#. module: hr_payroll +#: field:hr.payslip,contract_id:0 +#: model:ir.model,name:hr_payroll.model_hr_contract +msgid "Contract" +msgstr "Smlouva" + +#. module: hr_payroll +#: selection:hr.payroll.advice,state:0 +msgid "Draft Sheet" +msgstr "Návrhový list" + +#. module: hr_payroll +#: selection:hr.payroll.year.salary,salary_on:0 +msgid "Next Month Date" +msgstr "Datum dalšího měsíce" + +#. module: hr_payroll +#: field:hr.contibution.register.line,date:0 +#: field:hr.payroll.advice,date:0 +#: field:hr.payroll.register,date:0 +#: field:hr.payslip,date:0 +msgid "Date" +msgstr "Datum" + +#. module: hr_payroll +#: field:hr.contract,visa_expire:0 +msgid "Visa Expire Date" +msgstr "Datum vypršení víza" + +#. module: hr_payroll +#: view:hr.passport:0 +msgid "Search Passport" +msgstr "Hledat pas" + +#. module: hr_payroll +#: report:employees.salary:0 +#: report:salary.structure:0 +msgid "Phone No." +msgstr "Č. telefonu" + +#. module: hr_payroll +#: field:company.contribution,contribute_per:0 +#: field:company.contribution.line,contribution_id:0 +#: view:hr.allounce.deduction.categoty:0 +#: view:hr.contibution.register:0 +#: view:hr.contibution.register.line:0 +msgid "Contribution" +msgstr "Příspěvky" + +#. module: hr_payroll +#: field:hr.allounce.deduction.categoty,state:0 +msgid "Label" +msgstr "Označení" + +#. module: hr_payroll +#: view:hr.payroll.structure:0 +#: view:hr.payslip:0 +#: view:hr.payslip.line:0 +msgid "Company contribution" +msgstr "Příspěvky společnosti" + +#. module: hr_payroll +#: report:employees.salary:0 +#: report:salary.structure:0 +msgid "Other No." +msgstr "Jiné č." + +#. module: hr_payroll +#: field:company.contribution,code:0 +#: field:hr.contibution.register.line,code:0 +#: field:hr.holidays.status,code:0 +#: field:hr.payroll.structure,code:0 +#: field:hr.payslip.line,code:0 +#: report:payslip.pdf:0 +#: report:salary.structure:0 +msgid "Code" +msgstr "Kód" + +#. module: hr_payroll +#: model:ir.actions.act_window,name:hr_payroll.action_view_hr_bank_advice_tree +#: model:ir.ui.menu,name:hr_payroll.hr_menu_payment_advice +msgid "Payment Advice" +msgstr "Platební avízo" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +msgid "Number :" +msgstr "Číslo :" + +#. module: hr_payroll +#: help:hr.allounce.deduction.categoty,base:0 +msgid "" +"This will use to computer the % fields values, in general its on basic, but " +"You can use all heads code field in small letter as a variable name i.e. " +"hra, ma, lta, etc...., also you can use, static varible basic" +msgstr "" +"Toto bude použito pro výpočet hodnot polí %s , obecně je na základě, ale " +"můžete použít všechny pole kódů v malých písmenných jako jména proměnných " +"např. hra, ma, lta, atd..., také můžete použít základní statické proměnné." + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Computation Overview" +msgstr "Přehled výpočtů" + +#. module: hr_payroll +#: field:hr.payroll.year.salary,salary_on:0 +msgid "Salary On" +msgstr "Mzda na" + +#. module: hr_payroll +#: field:hr.payroll.advice,number:0 +#: field:hr.payroll.register,number:0 +#: field:hr.payslip,number:0 +msgid "Number" +msgstr "Číslo" + +#. module: hr_payroll +#: field:hr.contract,struct_id:0 +#: field:hr.employee,line_ids:0 +#: view:hr.payroll.structure:0 +#: field:hr.payroll.structure,line_ids:0 +#: view:hr.payslip:0 +#: view:hr.payslip.line:0 +#: model:ir.actions.act_window,name:hr_payroll.action_view_hr_employee_grade_form +#: model:ir.actions.report.xml,name:hr_payroll.salary_structure_register +#: model:ir.model,name:hr_payroll.model_hr_payroll_structure +#: model:ir.ui.menu,name:hr_payroll.menu_hr_employee_function +msgid "Salary Structure" +msgstr "Struktura platu" + +#. module: hr_payroll +#: field:hr.contibution.register,register_line_ids:0 +msgid "Register Line" +msgstr "Řádek registru" + +#. module: hr_payroll +#: view:hr.payroll.register:0 +#: view:hr.payslip:0 +msgid "Cancel" +msgstr "Zrušit" + +#. module: hr_payroll +#: view:hr.payroll.employees.detail:0 +#: view:hr.payroll.year.salary:0 +msgid "Close" +msgstr "Uzavřít" + +#. module: hr_payroll +#: field:hr.payslip.line,amount:0 +msgid "Amount / Percentage" +msgstr "Částka / Procenta" + +#. module: hr_payroll +#: field:hr.employee,advantages_gross:0 +#: report:hr.payroll.register.sheet:0 +#: report:salary.structure:0 +msgid "Allowances" +msgstr "Dávky" + +#. module: hr_payroll +#: selection:hr.payroll.year.salary,salary_on:0 +msgid "Current Month Date" +msgstr "Datum aktuálního měsíce" + +#. module: hr_payroll +#: report:salary.structure:0 +msgid "Salary" +msgstr "Plat" + +#. module: hr_payroll +#: field:hr.contract,passport_id:0 +#: field:hr.passport,name:0 +msgid "Passport No" +msgstr "Číslo pasu" + +#. module: hr_payroll +#: view:hr.passport:0 +msgid "Passport" +msgstr "Pas" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +msgid "Total Salary" +msgstr "Celkový plat" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "for period" +msgstr "pro období" + +#. module: hr_payroll +#: field:hr.holidays.status,head_id:0 +msgid "Payroll Head" +msgstr "Hlavička výplatního listu" + +#. module: hr_payroll +#: field:company.contribution,register_id:0 +#: model:ir.actions.act_window,name:hr_payroll.action_contibution_register_form +#: model:ir.model,name:hr_payroll.model_hr_contibution_register +#: model:ir.ui.menu,name:hr_payroll.menu_action_hr_contibution_register_form +msgid "Contribution Register" +msgstr "Registr příspěvků" + +#. module: hr_payroll +#: report:salary.structure:0 +msgid "E-mail" +msgstr "E-mail" + +#. module: hr_payroll +#: view:hr.allounce.deduction.categoty:0 +#: model:ir.actions.act_window,name:hr_payroll.hr_allounce_deduction_tree +#: model:ir.ui.menu,name:hr_payroll.menu_hr_allounce_deduction_tree +msgid "Salary Heads" +msgstr "Hlavičky platu" + +#. module: hr_payroll +#: view:hr.payroll.employees.detail:0 +#: view:hr.payroll.year.salary:0 +msgid "Print Report" +msgstr "Tisknout výkaz" + +#. module: hr_payroll +#: field:company.contribution,line_ids:0 +#: view:hr.payroll.structure:0 +#: view:hr.payslip:0 +#: view:hr.payslip.line:0 +#: field:hr.payslip.line,line_ids:0 +msgid "Calculations" +msgstr "Výpočty" + +#. module: hr_payroll +#: help:company.contribution,contribute_per:0 +msgid "" +"Define Company contribution ratio 1.00=100% contribution, If Employee " +"Contribute 5% then company will and here 0.50 defined then company will " +"contribute 50% on employee 5% contribution" +msgstr "" +"Určuje poměř příspěvků společnosti 1,00=100% příspěvků. Pokud je zaměstnance " +"přispěje 5%, pak spoleřnost bude a zde 0,5 určeno, pak společnost přispěje " +"50% na 5% příspěvek zaměstnance." + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Other Informations" +msgstr "Jiné informace" + +#. module: hr_payroll +#: view:hr.contibution.register:0 +msgid "Month" +msgstr "Měsíc" + +#. module: hr_payroll +#: view:hr.passport:0 +msgid "Issue" +msgstr "Vydano" + +#. module: hr_payroll +#: view:hr.allounce.deduction.categoty:0 +msgid "Dynamic Computation" +msgstr "Dynamický výpočet" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Basic Salary without Leave:" +msgstr "Základní mzda bez uvolnění:" + +#. module: hr_payroll +#: view:company.contribution:0 +#: view:hr.allounce.deduction.categoty:0 +#: view:hr.payroll.structure:0 +#: view:hr.payslip:0 +#: view:hr.payslip.line:0 +#: field:hr.payslip.line,function_id:0 +msgid "Function" +msgstr "Funkce" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "States" +msgstr "Stavy" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "Dear Sir/Madam," +msgstr "Vážený pane/paní," + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_allounce_deduction_categoty +msgid "Allowance Deduction Heads" +msgstr "Hlavičky přídavků a odpočtů" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +msgid "Gross Sal." +msgstr "Hrubá mzda" + +#. module: hr_payroll +#: view:company.contribution:0 +#: field:company.contribution,note:0 +#: view:hr.allounce.deduction.categoty:0 +#: field:hr.allounce.deduction.categoty,note:0 +#: view:hr.contibution.register:0 +#: field:hr.contibution.register,note:0 +#: view:hr.passport:0 +#: field:hr.passport,note:0 +#: field:hr.payroll.advice,note:0 +#: field:hr.payroll.register,note:0 +#: view:hr.payroll.structure:0 +#: field:hr.payroll.structure,note:0 +#: view:hr.payslip:0 +#: field:hr.payslip,note:0 +#: view:hr.payslip.line:0 +#: field:hr.payslip.line,note:0 +msgid "Description" +msgstr "Popis" + +#. module: hr_payroll +#: field:hr.payroll.employees.detail,date_from:0 +#: field:hr.payroll.year.salary,date_from:0 +#: report:salary.structure:0 +msgid "Start Date" +msgstr "Počáteční datum" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Deduction -" +msgstr "Odpočty -" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid ")" +msgstr ")" + +#. module: hr_payroll +#: view:hr.contibution.register:0 +msgid "Contribution Registers" +msgstr "Registr příspěvků" + +#. module: hr_payroll +#: model:ir.ui.menu,name:hr_payroll.menu_hr_payroll_reporting +#: model:ir.ui.menu,name:hr_payroll.menu_hr_root_payroll +#: model:ir.ui.menu,name:hr_payroll.payroll_configure +msgid "Payroll" +msgstr "Mzdy" + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_contract_wage_type +msgid "Wage Type" +msgstr "Typ mzdy" + +#. module: hr_payroll +#: report:hr.payroll.register.sheet:0 +msgid "Net Sal." +msgstr "Čistá mzda" + +#. module: hr_payroll +#: sql_constraint:hr.passport:0 +msgid "The Passport No must be unique !" +msgstr "Číslo pasu musí být jedinečné !" + +#. module: hr_payroll +#: field:hr.allounce.deduction.categoty,name:0 +msgid "Category Name" +msgstr "Název kategorie" + +#. module: hr_payroll +#: model:ir.model,name:hr_payroll.model_hr_payroll_year_salary +msgid "hr.payroll.year.salary" +msgstr "hr.payroll.year.salary" + +#. module: hr_payroll +#: report:employees.salary:0 +#: field:hr.passport,address_id:0 +#: report:payslip.pdf:0 +#: report:salary.structure:0 +msgid "Address" +msgstr "Adresa" + +#. module: hr_payroll +#: field:hr.payslip.line.line,slipline_id:0 +msgid "Slip Line" +msgstr "Řádek listu" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Number of Leaves" +msgstr "Počet uvolnění" + +#. module: hr_payroll +#: report:employees.salary:0 +#: field:hr.payroll.advice,bank_id:0 +#: field:hr.payroll.register,bank_id:0 +#: report:salary.structure:0 +msgid "Bank" +msgstr "Banka" + +#. module: hr_payroll +#: view:hr.payroll.advice:0 +msgid "Cancel Sheet" +msgstr "Zrušit list" + +#. module: hr_payroll +#: selection:hr.allounce.deduction.categoty,type:0 +#: selection:hr.payslip.line,type:0 +msgid "Advance" +msgstr "Záloha" + +#. module: hr_payroll +#: report:salary.structure:0 +msgid "Special Allowances and Deductions For Employee:" +msgstr "Speciální přídavky a odpočty pro zaměstnance:" + +#. module: hr_payroll +#: field:company.contribution,name:0 +#: field:company.contribution.line,name:0 +#: field:hr.contibution.register,name:0 +#: field:hr.contibution.register.line,name:0 +#: field:hr.payroll.advice,name:0 +#: field:hr.payroll.register,name:0 +#: field:hr.payroll.structure,name:0 +#: field:hr.payslip,name:0 +#: field:hr.payslip.line,name:0 +#: field:hr.payslip.line.line,name:0 +#: report:payslip.pdf:0 +#: report:salary.structure:0 +#: report:year.salary:0 +msgid "Name" +msgstr "Jméno" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Leaved Deduction" +msgstr "Odpočty uvolnění" + +#. module: hr_payroll +#: view:hr.passport:0 +msgid "Country" +msgstr "Země" + +#. module: hr_payroll +#: view:hr.passport:0 +#: view:hr.payroll.employees.detail:0 +#: field:hr.payroll.employees.detail,employee_ids:0 +#: view:hr.payroll.year.salary:0 +#: field:hr.payroll.year.salary,employee_ids:0 +#: view:hr.payslip:0 +msgid "Employees" +msgstr "Zaměstnanci" + +#. module: hr_payroll +#: report:payroll.advice:0 +msgid "Bank Account" +msgstr "Bankovní účet" + +#. module: hr_payroll +#: help:company.contribution,register_id:0 +msgid "Contribution register based on company" +msgstr "Registr příspěvků založený na spoleřnosti" + +#. module: hr_payroll +#: help:hr.allounce.deduction.categoty,sequence:0 +msgid "Use to arrange calculation sequence" +msgstr "Použijte pro uspořádání pořadí výpočtů" + +#. module: hr_payroll +#: field:hr.payslip,total_pay:0 +msgid "Total Payment" +msgstr "Celková platba" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Leave Deductions Line:" +msgstr "Řádek odpočtu uvolnění:" + +#. module: hr_payroll +#: selection:hr.payroll.register,state:0 +#: selection:hr.payslip,state:0 +msgid "Wating for Account Verification" +msgstr "Čekající na ověření účtu" + +#. module: hr_payroll +#: field:hr.contibution.register.line,comp_deduction:0 +msgid "Company Deduction" +msgstr "Odpočty společnosti" + +#. module: hr_payroll +#: view:hr.holidays.status:0 +msgid "Payroll Configurtion" +msgstr "Nastavení mezd" + +#. module: hr_payroll +#: code:addons/hr_payroll/hr_payroll.py:469 +#, python-format +msgid "Please define bank account for the %s employee" +msgstr "Prosíme zkontrolujte bankovní účet zaměstnance %s" + +#. module: hr_payroll +#: field:hr.passport,date_issue:0 +msgid "Passport Issue Date" +msgstr "Datum vydání pasu" + +#. module: hr_payroll +#: view:hr.allounce.deduction.categoty:0 +#: selection:hr.allounce.deduction.categoty,type:0 +#: field:hr.payroll.register,allounce:0 +#: field:hr.payslip,allounce:0 +#: selection:hr.payslip.line,type:0 +msgid "Allowance" +msgstr "Přídavky" + +#. module: hr_payroll +#: field:hr.payslip,holiday_days:0 +msgid "No of Leaves" +msgstr "Poč. uvolnění" + +#. module: hr_payroll +#: field:hr.employee,otherid:0 +msgid "Other Id" +msgstr "Jiné Id" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Bank Details" +msgstr "Bankovní podrobnosti" + +#. module: hr_payroll +#: report:payslip.pdf:0 +msgid "Slip ID" +msgstr "ID výplatní pásky" + +#. module: hr_payroll +#: field:company.contribution.line,sequence:0 +#: field:hr.allounce.deduction.categoty,sequence:0 +#: field:hr.payslip.line,sequence:0 +#: field:hr.payslip.line.line,sequence:0 +msgid "Sequence" +msgstr "Posloupnost" + +#. module: hr_payroll +#: model:ir.actions.act_window,name:hr_payroll.action_view_hr_payslip_form +#: model:ir.ui.menu,name:hr_payroll.menu_department_tree +msgid "Employee Payslip" +msgstr "Výplatní list zaměstnance" + +#. module: hr_payroll +#: view:hr.payroll.advice:0 +msgid "Letter Content" +msgstr "Obsah dopisu" + +#. module: hr_payroll +#: view:hr.payroll.employees.detail:0 +#: view:hr.payroll.year.salary:0 +msgid "Year Salary" +msgstr "Roční plat" + +#. module: hr_payroll +#: view:hr.payroll.register:0 +msgid "Allowance / Deduction" +msgstr "Přídavky / odpočty" + +#. module: hr_payroll +#: model:ir.actions.report.xml,name:hr_payroll.payroll_advice +msgid "Bank Payment Advice" +msgstr "Avízo bankovní platby" + +#. module: hr_payroll +#: view:hr.payslip:0 +msgid "Search Payslips" +msgstr "Hledat výplatní pásky" + +#. module: hr_payroll +#: report:employees.salary:0 +#: field:hr.contibution.register.line,total:0 +#: report:year.salary:0 +msgid "Total" +msgstr "Celkem" + +#. module: hr_payroll +#: view:company.contribution:0 +#: view:hr.allounce.deduction.categoty:0 +#: field:hr.allounce.deduction.categoty,contribute_ids:0 +msgid "Contributions" +msgstr "Příspěvky" diff --git a/addons/hr_payroll/report/report_payslip.py b/addons/hr_payroll/report/report_payslip.py index 0fc37b44ac7..e2ef7dab974 100644 --- a/addons/hr_payroll/report/report_payslip.py +++ b/addons/hr_payroll/report/report_payslip.py @@ -44,6 +44,6 @@ class payslip_report(report_sxw.rml_parse): res = payslip_line.browse(self.cr, self.uid, ids) return res -report_sxw.report_sxw('report.test.pdf', 'hr.payslip', 'hr_payroll/report/report_payslip.rml', parser=payslip_report) +report_sxw.report_sxw('report.payslip', 'hr.payslip', 'hr_payroll/report/report_payslip.rml', parser=payslip_report) # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file diff --git a/addons/hr_payroll_account/hr_payroll_account.py b/addons/hr_payroll_account/hr_payroll_account.py index 3463713d37d..a022cac05b1 100644 --- a/addons/hr_payroll_account/hr_payroll_account.py +++ b/addons/hr_payroll_account/hr_payroll_account.py @@ -40,6 +40,17 @@ class hr_payslip(osv.osv): 'move_id': fields.many2one('account.move', 'Accounting Entry', readonly=True), } + def _get_default_journal(self, cr, uid, context=None): + model_data = self.pool.get('ir.model.data') + res = model_data.search(cr, uid, [('name', '=', 'expenses_journal')]) + if res: + return model_data.browse(cr, uid, res[0]).res_id + return False + + _defaults = { + 'journal_id': _get_default_journal, + } + def copy(self, cr, uid, id, default=None, context=None): if default is None: default = {} @@ -171,7 +182,7 @@ class hr_payslip(osv.osv): line_ids.append(adjust_debit) move.update({'line_id': line_ids}) move_id = move_pool.create(cr, uid, move, context=context) - self.write(cr, uid, [slip.id], {'move_id': move_id}, context=context) + self.write(cr, uid, [slip.id], {'move_id': move_id, 'period_id' : period_id}, context=context) if slip.journal_id.entry_posted: move_pool.post(cr, uid, [move_id], context=context) return super(hr_payslip, self).process_sheet(cr, uid, [slip.id], context=context) diff --git a/addons/hr_recruitment/__openerp__.py b/addons/hr_recruitment/__openerp__.py index 4797ef14044..637bd45abd1 100644 --- a/addons/hr_recruitment/__openerp__.py +++ b/addons/hr_recruitment/__openerp__.py @@ -37,7 +37,7 @@ system to store and search in your CV base. 'author': 'OpenERP SA', 'website': 'http://www.openerp.com', 'images': ['images/hr_recruitment_analysis.jpeg','images/hr_recruitment_applicants.jpeg'], - 'depends': ['decimal_precision', 'hr', 'survey', 'crm'], + 'depends': ['decimal_precision', 'hr', 'survey', 'crm', 'fetchmail'], 'update_xml': [ 'wizard/hr_recruitment_phonecall_view.xml', 'wizard/hr_recruitment_employee_hired.xml', @@ -60,6 +60,7 @@ system to store and search in your CV base. 'installable': True, 'active': False, 'certificate' : '001073437025460275621', + 'application': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_recruitment/hr_recruitment.py b/addons/hr_recruitment/hr_recruitment.py index d9438e9beee..dbf0930c6bd 100644 --- a/addons/hr_recruitment/hr_recruitment.py +++ b/addons/hr_recruitment/hr_recruitment.py @@ -181,6 +181,7 @@ class hr_applicant(crm.crm_case, osv.osv): 'day_close': fields.function(_compute_day, string='Days to Close', \ multi='day_close', type="float", store=True), 'color': fields.integer('Color Index'), + 'user_email': fields.related('user_id', 'user_email', type='char', string='User Email', readonly=True), } def _get_stage(self, cr, uid, context=None): @@ -197,14 +198,16 @@ class hr_applicant(crm.crm_case, osv.osv): 'color': 0, } - def _read_group_stage_ids(self, cr, uid, ids, domain, read_group_order=None, context=None): + def _read_group_stage_ids(self, cr, uid, ids, domain, read_group_order=None, access_rights_uid=None, context=None): + access_rights_uid = access_rights_uid or uid stage_obj = self.pool.get('hr.recruitment.stage') order = stage_obj._order if read_group_order == 'stage_id desc': # lame hack to allow reverting search, should just work in the trivial case order = "%s desc" % order - stage_ids = stage_obj.search(cr, uid, ['|',('id','in',ids),('department_id','=',False)], order=order, context=context) - result = stage_obj.name_get(cr, uid, stage_ids, context=context) + stage_ids = stage_obj._search(cr, uid, ['|',('id','in',ids),('department_id','=',False)], order=order, + access_rights_uid=access_rights_uid, context=context) + result = stage_obj.name_get(cr, access_rights_uid, stage_ids, context=context) # restore order of the search result.sort(lambda x,y: cmp(stage_ids.index(x[0]), stage_ids.index(y[0]))) return result @@ -471,19 +474,19 @@ class hr_applicant(crm.crm_case, osv.osv): res = super(hr_applicant, self).case_reset(cr, uid, ids, *args) self.write(cr, uid, ids, {'date_open': False, 'date_closed': False}) return res - - def set_priority(self, cr, uid, ids, priority): - """Set lead priority + + def set_priority(self, cr, uid, ids, priority, *args): + """Set applicant priority """ return self.write(cr, uid, ids, {'priority' : priority}) def set_high_priority(self, cr, uid, ids, *args): - """Set lead priority to high + """Set applicant priority to high """ return self.set_priority(cr, uid, ids, '1') def set_normal_priority(self, cr, uid, ids, *args): - """Set lead priority to normal + """Set applicant priority to normal """ return self.set_priority(cr, uid, ids, '3') diff --git a/addons/hr_recruitment/hr_recruitment_menu.xml b/addons/hr_recruitment/hr_recruitment_menu.xml index 7fe746f580b..04d73dcd2a8 100644 --- a/addons/hr_recruitment/hr_recruitment_menu.xml +++ b/addons/hr_recruitment/hr_recruitment_menu.xml @@ -6,13 +6,20 @@ <record model="ir.actions.act_window" id="crm_case_categ0_act_job"> <field name="name">Applicants</field> <field name="res_model">hr.applicant</field> - <field name="view_mode">tree,form,graph,calendar,kanban</field> - <field name="view_id" ref="crm_case_tree_view_job"/> + <field name="view_mode">kanban,tree,form,graph,calendar</field> + <field name="view_id" eval="False"/> <field name="context">{'search_default_filter_inprogress':1,'search_default_filter_new':1,"search_default_department_id": department_id}</field> <field name="search_view_id" ref="view_crm_case_jobs_filter"/> <field name="help">From this menu you can track applicants in the recruitment process and manage all operations: meetings, interviews, phone calls, etc. If you setup the email gateway, applicants and their attached CV are created automatically when an email is sent to jobs@yourcompany.com. If you install the document management modules, all documents (CV and motivation letters) are indexed automatically, so that you can easily search through their content.</field> </record> + <record model="ir.actions.act_window.view" id="action_hr_sec_kanban_view_act_job"> + <field name="sequence" eval="0"/> + <field name="view_mode">kanban</field> + <field name="view_id" ref="hr_kanban_view_applicant"/> + <field name="act_window_id" ref="crm_case_categ0_act_job"/> + </record> + <record model="ir.actions.act_window.view" id="action_hr_sec_tree_view_act_job"> <field name="sequence" eval="1"/> <field name="view_mode">tree</field> diff --git a/addons/hr_recruitment/hr_recruitment_view.xml b/addons/hr_recruitment/hr_recruitment_view.xml index 4ccfcbe48a2..4bd68949bd5 100644 --- a/addons/hr_recruitment/hr_recruitment_view.xml +++ b/addons/hr_recruitment/hr_recruitment_view.xml @@ -17,7 +17,7 @@ <field name="view_type">form</field> <field name="view_id" ref="crm.crm_case_categ_tree-view"/> <field name="domain">[('object_id.model', '=', 'hr.applicant')]</field> - <field name="context">{'object_id':'hr.applicant'}</field> + <field name="context" eval="{'object_id': ref('model_hr_applicant')}"/> </record> # ------------------------------------------------------ # Stage @@ -145,7 +145,7 @@ <group colspan="4"> <field colspan="4" name="email_cc" string="Global CC" widget="char"/> </group> - <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1"> + <field name="message_ids" colspan="4" nolabel="1" mode="tree" readonly="1"> <tree string="History"> <field name="display_text" string="History Information"/> <field name="email_from" invisible="1"/> @@ -155,32 +155,6 @@ context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" icon="terp-mail-replied" type="action" /> </tree> - <form string="History"> - <group col="4" colspan="4"> - <field name="email_from"/> - <field name="date"/> - <field name="email_to" widget="char" size="512"/> - <field name="email_cc" widget="char" size="512"/> - <field name="subject" colspan="4" widget="char" size="512"/> - </group> - <notebook colspan="4"> - <page string="Details"> - <group attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="body_text" colspan="4" nolabel="1" height="250"/> - <button colspan="4" string="Reply" - name="%(mail.action_email_compose_message_wizard)d" - context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" - icon="terp-mail-replied" type="action"/> - </group> - <group attrs="{'invisible': [('email_from', '!=', False)]}"> - <field name="display_text" colspan="4" nolabel="1" height="250"/> - </group> - </page> - <page string="Attachments"> - <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/> - </page> - </notebook> - </form> </field> <button string="Add Internal Note" name="%(crm.action_crm_add_note)d" @@ -278,9 +252,9 @@ </field> </record> - <!-- hr Applicant Kanban View --> + <!-- hr Applicant Kanban View --> - <record model="ir.ui.view" id="hr_kanban_view_applicant"> + <record model="ir.ui.view" id="hr_kanban_view_applicant"> <field name="name">Hr Applicants kanban</field> <field name="model">hr.applicant</field> <field name="type">kanban</field> @@ -290,47 +264,70 @@ <field name="state"/> <field name="priority"/> <field name="survey"/> + <field name="user_id"/> + <field name="user_email"/> <templates> + <t t-name="partner-infos"> + <div t-if="record.partner_phone.raw_value"> + Phone: <field name="partner_phone"/> + </div> + <div t-if="record.partner_mobile.raw_value"> + Mobile: <field name="partner_mobile"/> + </div> + </t> <t t-name="kanban-box"> - <t t-set="color" t-value="kanban_color(record.color.raw_value || record.state.raw_value)"/> - <div t-att-class="color + (record.priority.raw_value == 1 ? ' oe_kanban_color_alert' : '')"> + <t t-if="record.priority.raw_value == 1" t-set="border">oe_kanban_color_red</t> + <div t-attf-class="#{kanban_color(record.color.raw_value)} #{border || ''}"> <div class="oe_kanban_box oe_kanban_color_border"> - <div class="oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle"> - <div class="oe_kanban_title1"> - <a t-if="record.priority.raw_value == 1" icon="star-on" type="object" name="set_normal_priority" /> - <a t-if="record.priority.raw_value != 1" icon="star-off" type="object" name="set_high_priority" style="opacity:0.6; filter:alpha(opacity=60);"/> + <table class="oe_kanban_table oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle"> + <tr> + <td align="left" valign="middle" class="oe_kanban_title" tooltip="partner-infos"> <field name="partner_name"/> - </div> - </div> + <t t-if="!record.partner_name.raw_value"> + <field name="email_from"/> + </t> + </td> + <td valign="top" width="22"><img t-att-src="kanban_gravatar(record.user_email.value, 22)" class="oe_kanban_gravatar" t-att-title="record.user_id.value"/></td> + </tr> + </table> <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger oe_kanban_color_border"> - <table class="oe_kanban_table"> - <tr> - <td> - <div class="oe_kanban_right oe_kanban_small"> - <field name="user_id"/> - </div> - <div class="oe_kanban_title2"> - <field name="job_id"/> - <t t-if="record.priority.raw_value == 0"></t> - <t t-if="record.priority.raw_value == 5">(Not Good)</t> - <t t-if="record.priority.raw_value == 4">(On Average)</t> - <t t-if="record.priority.raw_value == 3">(Good)</t> - <t t-if="record.priority.raw_value == 2">(Very Good)</t> - <t t-if="record.priority.raw_value == 1">(Excellent)</t> - </div> - <div class="oe_kanban_title3"> - <field name="type_id"/> - </div> - <div class="oe_kanban_title3"> - <i><field name="date_action"/><field name="title_action"/></i> - </div> - </td> - </tr> - </table> + <div style="white-space: nowrap"> + <field name="job_id"/> + <t t-if="!record.job_id.raw_value"> + <field name="name"/> + </t> + <span class="oe_kanban_highlight"> + <t t-set="priority" t-value="record.priority.raw_value || 5"/> + <a type="object" name="set_priority" args="['3']" t-if="priority gt 3"> + <img src="/web/static/src/img/icons/star-off.png" width="16" height="16"/> + </a> + <a type="object" name="set_priority" args="['5']" t-if="priority lte 3"> + <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 3 ? 'on' : 'off'}.png" width="16" height="16"/> + </a> + <a type="object" name="set_priority" args="['2']"> + <img t-attf-src="/web/static/src/img/icons/star-#{priority lte 2 ? 'on' : 'off'}.png" width="16" height="16"/> + </a> + <a type="object" name="set_priority" args="['1']"> + <img t-attf-src="/web/static/src/img/icons/star-#{priority == 1 ? 'on' : 'off'}.png" width="16" height="16"/> + </a> + </span> + </div> + <div t-if="record.type_id.raw_value or record.source_id.raw_value"> + <span t-if="record.type_id.raw_value" class="oe_kanban_highlight oe_kanban_button" style="font-size: 100%%"> + <field name="type_id"/> + </span> + <span t-if="record.source_id.raw_value" class="oe_kanban_highlight oe_kanban_button" style="font-size: 100%%"> + <field name="source_id"/> + </span> + </div> + <div t-if="record.date_action.raw_value or record.title_action.raw_value"> + <i t-if="record.date_action.raw_value"><field name="date_action"/> :</i> <field name="title_action"/> + </div> </div> <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick"> <div class="oe_kanban_left"> <a string="Edit" icon="gtk-edit" type="edit"/> + <a string="Delete" icon="gtk-close" type="delete"/> <a string="Change Color" icon="color-picker" type="color" name="color"/> <a string="Send New Email" name="%(mail.action_email_compose_message_wizard)d" icon="terp-mail-message-new" type="action"/> <a string="Add Internal Note" name="%(crm.action_crm_add_note)d" context="{'model': 'crm.lead' }" icon="terp-document-new" type="action"/> @@ -338,8 +335,8 @@ <a t-if="record.survey.raw_value" name="action_print_survey" type="object" string="Print Interview" icon="gtk-print" /> </div> <div class="oe_kanban_right"> - <a name="case_open" string="Mark Won" states="pending,draft" type="object" icon="lead-stage-won" /> - <a name="case_pending" string="Mark Lost" states="draft,open" type="object" icon="lead-stage-lost" /> + <a name="case_open" string="In Progress" states="draft,pending" type="object" icon="kanban-apply"/> + <a name="case_pending" string="Pending" states="draft,open" type="object" icon="kanban-pause"/> </div> <br class="oe_kanban_clear"/> </div> diff --git a/addons/hr_timesheet/__openerp__.py b/addons/hr_timesheet/__openerp__.py index 76886a45aaf..43f5e62e37c 100644 --- a/addons/hr_timesheet/__openerp__.py +++ b/addons/hr_timesheet/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Human Resources (Timesheet encoding)', 'version': '1.0', - 'category': 'Hidden', + "category": "Human Resources", 'complexity': "easy", 'description': """ This module implements a timesheet system. diff --git a/addons/hr_timesheet/report/__init__.py b/addons/hr_timesheet/report/__init__.py index 98e34ed92d4..8304c90421d 100644 --- a/addons/hr_timesheet/report/__init__.py +++ b/addons/hr_timesheet/report/__init__.py @@ -22,3 +22,5 @@ import user_timesheet import users_timesheet + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_timesheet/report/user_timesheet.py b/addons/hr_timesheet/report/user_timesheet.py index 533989210d6..7699f94f41b 100644 --- a/addons/hr_timesheet/report/user_timesheet.py +++ b/addons/hr_timesheet/report/user_timesheet.py @@ -118,3 +118,5 @@ class report_custom(report_rml): report_custom('report.hr.analytical.timesheet', 'hr.employee', '', 'addons/hr_timesheet/report/user_timesheet.xsl') + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_timesheet_invoice/__openerp__.py b/addons/hr_timesheet_invoice/__openerp__.py index d4237baf36c..bd5c58fde1b 100644 --- a/addons/hr_timesheet_invoice/__openerp__.py +++ b/addons/hr_timesheet_invoice/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Invoice on analytic lines', + 'name': 'Invoice on Analytic Lines', 'version': '1.0', - 'category': 'Hidden/Link', + 'category': 'Sales Management', 'description': """Generate your Invoices from Expenses, Timesheet Entries, ... Module to generate invoices based on costs (human resources, expenses, ...). ============================================================================ diff --git a/addons/hr_timesheet_invoice/report/hr_timesheet_invoice_report.py b/addons/hr_timesheet_invoice/report/hr_timesheet_invoice_report.py index eb1437534d4..6b6dd9f6e52 100644 --- a/addons/hr_timesheet_invoice/report/hr_timesheet_invoice_report.py +++ b/addons/hr_timesheet_invoice/report/hr_timesheet_invoice_report.py @@ -217,3 +217,5 @@ class report_timesheet_invoice(osv.osv): """) report_timesheet_invoice() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_timesheet_invoice/wizard/hr_timesheet_analytic_profit.py b/addons/hr_timesheet_invoice/wizard/hr_timesheet_analytic_profit.py index 7d5d7a36867..518bb981df9 100644 --- a/addons/hr_timesheet_invoice/wizard/hr_timesheet_analytic_profit.py +++ b/addons/hr_timesheet_invoice/wizard/hr_timesheet_analytic_profit.py @@ -31,18 +31,18 @@ class account_analytic_profit(osv.osv_memory): 'date_to': fields.date('To', required=True), 'journal_ids': fields.many2many('account.analytic.journal', 'analytic_profit_journal_rel', 'analytic_id', 'journal_id', 'Journal', required=True), 'employee_ids': fields.many2many('res.users', 'analytic_profit_emp_rel', 'analytic_id', 'emp_id', 'User', required=True), - } + } def _date_from(*a): - return datetime.datetime.today().strftime('%Y-%m-1') + return datetime.date.today().replace(day=1).strftime('%Y-%m-%d') def _date_to(*a): - return datetime.datetime.today().strftime('%Y-%m-%d') + return datetime.date.today().strftime('%Y-%m-%d') _defaults = { - 'date_from': _date_from, - 'date_to': _date_to - } + 'date_from': _date_from, + 'date_to': _date_to + } def print_report(self, cr, uid, ids, context=None): line_obj = self.pool.get('account.analytic.line') @@ -72,4 +72,4 @@ class account_analytic_profit(osv.osv_memory): account_analytic_profit() -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
\ No newline at end of file +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create_final_view.xml b/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create_final_view.xml index d366e795c15..514996816cc 100644 --- a/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create_final_view.xml +++ b/addons/hr_timesheet_invoice/wizard/hr_timesheet_invoice_create_final_view.xml @@ -13,7 +13,6 @@ <record model="ir.values" id="hr_timesheet_invoice_create_final_values"> <field name="model_id" ref="model_account_analytic_account" /> - <field name="object" eval="1" /> <field name="name">Invoice</field> <field name="key2">client_action_multi</field> <field name="value" eval="'ir.actions.act_window,' + str(ref('action_hr_timesheet_invoice_create_final'))" /> diff --git a/addons/hr_timesheet_sheet/__openerp__.py b/addons/hr_timesheet_sheet/__openerp__.py index 403d435df71..3421083a1cc 100644 --- a/addons/hr_timesheet_sheet/__openerp__.py +++ b/addons/hr_timesheet_sheet/__openerp__.py @@ -69,5 +69,6 @@ The validation can be configured in the company: 'installable': True, 'active': False, 'certificate': '0073297700829', + 'application': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_timesheet_sheet/board_hr_timesheet_view.xml b/addons/hr_timesheet_sheet/board_hr_timesheet_view.xml index 39ab5fe3482..74530b81859 100644 --- a/addons/hr_timesheet_sheet/board_hr_timesheet_view.xml +++ b/addons/hr_timesheet_sheet/board_hr_timesheet_view.xml @@ -40,7 +40,7 @@ <field name="inherit_id" ref="hr.board_hr_form"/> <field name="type">form</field> <field name="arch" type="xml"> - <xpath expr="/form/board/column" position="inside"> + <xpath expr="/form/board/column[2]" position="inside"> <action name="%(action_week_attendance_graph)d" string="My Total Attendance By Week"/> </xpath> </field> diff --git a/addons/hr_timesheet_sheet/report/hr_timesheet_report.py b/addons/hr_timesheet_sheet/report/hr_timesheet_report.py index d20ad3a5f4c..49b18f75e4b 100644 --- a/addons/hr_timesheet_sheet/report/hr_timesheet_report.py +++ b/addons/hr_timesheet_sheet/report/hr_timesheet_report.py @@ -80,3 +80,5 @@ class hr_timesheet_report(osv.osv): ) """) hr_timesheet_report() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/hr_timesheet_sheet/report/timesheet_report.py b/addons/hr_timesheet_sheet/report/timesheet_report.py index a8c0440a053..986beb453eb 100644 --- a/addons/hr_timesheet_sheet/report/timesheet_report.py +++ b/addons/hr_timesheet_sheet/report/timesheet_report.py @@ -120,3 +120,5 @@ class timesheet_report(osv.osv): ) """) timesheet_report() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/html_view/__init__.py b/addons/html_view/__init__.py index 465ad75ffe0..12bd1af21b1 100644 --- a/addons/html_view/__init__.py +++ b/addons/html_view/__init__.py @@ -1 +1,3 @@ -import html_view
\ No newline at end of file +import html_view + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/html_view/__openerp__.py b/addons/html_view/__openerp__.py index 3deceff9d6f..c4a7f033993 100644 --- a/addons/html_view/__openerp__.py +++ b/addons/html_view/__openerp__.py @@ -2,7 +2,7 @@ "name" : "Html View", "version" : "1.1", "author" : "OpenERP SA", - "category" : "Hidden", + "category" : "Tools", "depends" : ['base'], "init_xml" : ['html_view.xml'], "demo_xml" : [], diff --git a/addons/html_view/html_view.py b/addons/html_view/html_view.py index 79f4bd7d0b9..09201b23121 100644 --- a/addons/html_view/html_view.py +++ b/addons/html_view/html_view.py @@ -10,4 +10,6 @@ class html_view(osv.osv): 'bank_ids': fields.one2many('res.partner.bank', 'partner_id', 'Banks'), } -html_view()
\ No newline at end of file +html_view() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/idea/__openerp__.py b/addons/idea/__openerp__.py index 66709824c4a..e482aa18d3a 100644 --- a/addons/idea/__openerp__.py +++ b/addons/idea/__openerp__.py @@ -53,6 +53,7 @@ Once installed, check the menu 'Ideas' in the 'Tools' main menu.""", 'test/test_idea.yml' ], 'installable': True, + 'application': True, 'certificate': '0071515601309', 'images': ['images/1_ideas.jpeg','images/2_idea_categories.jpeg','images/3_vote_idea.jpeg'], } diff --git a/addons/import_base/__init__.py b/addons/import_base/__init__.py index 0a5d7fb20b7..52366e5128a 100644 --- a/addons/import_base/__init__.py +++ b/addons/import_base/__init__.py @@ -20,4 +20,6 @@ ############################################################################## import import_framework -import mapper
\ No newline at end of file +import mapper + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_base/__openerp__.py b/addons/import_base/__openerp__.py index 6d4f4374dfe..78988d00fec 100644 --- a/addons/import_base/__openerp__.py +++ b/addons/import_base/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Base framework for module that need to import complex data', + 'name': 'Framework for complex import', 'version': '0.9', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module provide a class import_framework to help importing complex data from other software @@ -37,3 +37,5 @@ 'installable': True, 'active': False, } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_base/import_framework.py b/addons/import_base/import_framework.py index 1f627d2ad58..ecc5f54e461 100644 --- a/addons/import_base/import_framework.py +++ b/addons/import_base/import_framework.py @@ -498,3 +498,5 @@ class import_framework(Thread): def intialize_test(self): pass + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_base/mapper.py b/addons/import_base/mapper.py index 0827509ffab..d68447ad3dd 100644 --- a/addons/import_base/mapper.py +++ b/addons/import_base/mapper.py @@ -167,3 +167,5 @@ class call(mapper): else: args.append(arg) return self.fun(external_values, *args) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_google/wizard/google_import_message.py b/addons/import_google/wizard/google_import_message.py index 5e2b2b6f4b1..bba58cd2250 100644 --- a/addons/import_google/wizard/google_import_message.py +++ b/addons/import_google/wizard/google_import_message.py @@ -40,3 +40,5 @@ class google_import_message(osv.osv): return res google_import_message() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_google/wizard/import_google.py b/addons/import_google/wizard/import_google.py index 87155c806c6..936a6d17649 100644 --- a/addons/import_google/wizard/import_google.py +++ b/addons/import_google/wizard/import_google.py @@ -353,3 +353,5 @@ class google_import(import_framework): } } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_sugarcrm/__init__.py b/addons/import_sugarcrm/__init__.py index 250589105b0..8fdd9aec302 100644 --- a/addons/import_sugarcrm/__init__.py +++ b/addons/import_sugarcrm/__init__.py @@ -23,3 +23,5 @@ import import_sugarcrm import sugar import wizard + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_sugarcrm/__openerp__.py b/addons/import_sugarcrm/__openerp__.py index 927a4b542ed..c0ad1ba250b 100644 --- a/addons/import_sugarcrm/__openerp__.py +++ b/addons/import_sugarcrm/__openerp__.py @@ -28,10 +28,12 @@ 'author': 'OpenERP SA', 'website': 'http://www.openerp.com', 'depends': ['import_base','crm', 'document'], - 'init_xml': [], - 'update_xml': ["wizard/import_message_view.xml", - "import_sugarcrm_view.xml"], - 'demo_xml': [], + 'data': [ + "wizard/import_message_view.xml", + "import_sugarcrm_view.xml", + "security/ir.model.access.csv", + ], + 'demo': [], 'test': [], 'installable': True, 'active': False, diff --git a/addons/import_sugarcrm/import_sugarcrm.py b/addons/import_sugarcrm/import_sugarcrm.py index d5f487c5377..b3908be0050 100644 --- a/addons/import_sugarcrm/import_sugarcrm.py +++ b/addons/import_sugarcrm/import_sugarcrm.py @@ -1147,3 +1147,5 @@ class import_sugarcrm(osv.osv): } import_sugarcrm() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_sugarcrm/import_sugarcrm_view.xml b/addons/import_sugarcrm/import_sugarcrm_view.xml index 1f12a8fde57..3c1f9df60fb 100644 --- a/addons/import_sugarcrm/import_sugarcrm_view.xml +++ b/addons/import_sugarcrm/import_sugarcrm_view.xml @@ -1,105 +1,104 @@ <?xml version="1.0"?> <openerp> - <data> + <data> <!-- Import Sugarcrm Form View --> - <record model="ir.ui.view" id="view_import_sugarcrm_form"> - <field name="name">import.sugarcrm.form</field> - <field name="model">import.sugarcrm</field> - <field name="type">form</field> - <field name="arch" type="xml"> - <form string="Import Data From SugarCRM"> - <group col="8" > - <group colspan="2" col="1" width="200"> - <label colspan="2" string="Import your data from SugarCRM :"/> - <label colspan="2" string="" /> - <label colspan="2" string="Use the SugarSoap API URL (read tooltip) and a full access SugarCRM login."/> - <label colspan="2" string="" /> - <label colspan="2" string="Choose data you want to import. Click 'Import' to get data manually or 'Schedule Reccurent Imports' to get recurrently and automatically data."/> - <label colspan="2" string="" /> - <label colspan="2" string="If you make recurrent or ponctual import, data already in OpenERP will be updated by SugarCRM data."/> - <label colspan="2" string="" /> - <label colspan="2" string="Do not forget the email address to be notified of the success of the import."/> - <label colspan="2" /> - <label colspan="2" string="Online documentation:"/> - <label colspan="2" string="(Comming Soon)"/> - <label colspan="2" string=""/> - </group> - <separator string="" orientation="vertical" colspan="1" rowspan="24" /> - <group colspan="4"> - <separator string="Login Information" colspan="3"/> - <field name="url" colspan="4" widget="url"/> - <field name="username"/> - <newline/> - <field name="password" password="True" /> - <separator string="" colspan="4"/> - <group colspan="4" col="6"> - <group colspan="1" col="2"> - <separator string="Address Book" colspan="4"/> - <field name="user" /> - <field name= "account" /> - <field name= "contact" /> - </group> - <group colspan="1" col="1"> - <separator string="CRM" colspan="4"/> - <field name="opportunity" /> - <field name= "call" /> - <field name= "meeting" /> - <field name= "claim" /> - - </group> - - <group colspan="2" col="2"> - <separator string="Project" colspan="4"/> - <field name= "project" /> - <field name= "project_task" /> - <field name= "bug"/> - </group> - <group colspan="1" col="2"> - <separator string="HR" colspan="4"/> - <field name="employee" /> - <separator string="Document" colspan="4"/> - <field name="email_history"/> - <field name= "document" /> - </group> - </group> - <group colspan="4"> - <separator string="Email Notification When Import is finished" colspan="4"/> - <field name="email_from" widget="email" string="Email Address to Notify"/> - </group> - <group colspan="4" groups="base.group_no_one"> - <separator string="Multi Instance Management" colspan="4"/> - <field name="instance_name"/> - </group> - <separator string="" colspan="4" /> - <group colspan="4" col="6"> - <label string="" colspan="2"/> - <button icon="gtk-cancel" special="cancel" string="_Cancel"/> - <button name="import_from_scheduler_all" groups="base.group_extended" string="_Schedule Recurrent Imports" - type="object" icon="gtk-execute" /> - <button name="import_all" string="_Import" - type="object" icon="terp-camera_test"/> - </group> - </group> - </group> - </form> - </field> - </record> + <record model="ir.ui.view" id="view_import_sugarcrm_form"> + <field name="name">import.sugarcrm.form</field> + <field name="model">import.sugarcrm</field> + <field name="type">form</field> + <field name="arch" type="xml"> + <form string="Import Data From SugarCRM"> + <group col="8" > + <group colspan="2" col="2" width="200"> + <label colspan="2" string="Import your data from SugarCRM :"/> + <label colspan="2" string="" /> + <label colspan="2" string="Use the SugarSoap API URL (read tooltip) and a full access SugarCRM login."/> + <label colspan="2" string="" /> + <label colspan="2" string="Choose data you want to import. Click 'Import' to get data manually or 'Schedule Reccurent Imports' to get recurrently and automatically data."/> + <label colspan="2" string="" /> + <label colspan="2" string="If you make recurrent or ponctual import, data already in OpenERP will be updated by SugarCRM data."/> + <label colspan="2" string="" /> + <label colspan="2" string="Do not forget the email address to be notified of the success of the import."/> + <label colspan="2" /> + <label colspan="2" string="Online documentation:"/> + <label colspan="2" string="(Coming Soon)"/> + <label colspan="2" string=""/> + </group> + <separator string="" orientation="vertical" colspan="1" rowspan="24" /> + <group colspan="5"> + <separator string="Login Information" colspan="4"/> + <field name="url" colspan="4" widget="url"/> + <field name="username" colspan="4"/> + <field name="password" password="True" colspan="4"/> - <!-- Import Sugarcrm Action --> + <group colspan="4"> + <group colspan="1" col="2"> + <separator string="Address Book" colspan="2"/> + <field name="user" /> + <field name= "account" /> + <field name= "contact" /> + </group> + <group colspan="1" col="2"> + <separator string="CRM" colspan="2"/> + <field name="opportunity" /> + <field name= "call" /> + <field name= "meeting" /> + <field name= "claim" /> + </group> + <group colspan="1" col="2"> + <separator string="Project" colspan="2"/> + <field name= "project" /> + <field name= "project_task" /> + <field name= "bug"/> + </group> + <group colspan="1" col="2"> + <separator string="HR" colspan="2"/> + <field name="employee" /> + <separator string="Document" colspan="2"/> + <field name="email_history"/> + <field name= "document" /> + </group> + </group> + + <group colspan="4"> + <separator string="Email Notification When Import is finished" colspan="4"/> + <field name="email_from" widget="email" string="Email Address to Notify" colspan="4"/> + </group> + + <group colspan="4" groups="base.group_no_one"> + <separator string="Multi Instance Management" colspan="4"/> + <field name="instance_name" colspan="4"/> + </group> + + <separator string="" colspan="4" /> + <group colspan="4" col="6"> + <label string="" colspan="2"/> + <button icon="gtk-cancel" special="cancel" string="_Cancel"/> + <button name="import_from_scheduler_all" groups="base.group_extended" string="_Schedule Recurrent Imports" + type="object" icon="gtk-execute" /> + <button name="import_all" string="_Import" + type="object" icon="terp-camera_test"/> + </group> + </group> + </group> + </form> + </field> + </record> + + <!-- Import Sugarcrm Action --> <record model="ir.actions.act_window" id="action_import_sugarcrm"> - <field name="name">Import SugarCRM</field> - <field name="res_model">import.sugarcrm</field> - <field name="view_type">form</field> - <field name="view_mode">tree,form</field> - <field name="view_id" ref="view_import_sugarcrm_form"/> - <field name="target">new</field> + <field name="name">Import SugarCRM</field> + <field name="res_model">import.sugarcrm</field> + <field name="view_type">form</field> + <field name="view_mode">tree,form</field> + <field name="view_id" ref="view_import_sugarcrm_form"/> + <field name="target">new</field> </record> - + <menuitem name="Import SugarCRM" id="menu_sugarcrm_import" parent="import_base.menu_import_crm" action="action_import_sugarcrm" icon="STOCK_EXECUTE"/> - </data> + </data> </openerp> - diff --git a/addons/import_sugarcrm/security/ir.model.access.csv b/addons/import_sugarcrm/security/ir.model.access.csv new file mode 100644 index 00000000000..20e93035b6c --- /dev/null +++ b/addons/import_sugarcrm/security/ir.model.access.csv @@ -0,0 +1,3 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" +"access_import_sugarcrm_system","import.sugarcrm system","model_import_sugarcrm","base.group_system",1,1,1,1 +"access_import_message_system","import.message system","model_import_message","base.group_system",1,1,1,1 diff --git a/addons/import_sugarcrm/sugar.py b/addons/import_sugarcrm/sugar.py index 4ce5e0048ea..35103a41173 100644 --- a/addons/import_sugarcrm/sugar.py +++ b/addons/import_sugarcrm/sugar.py @@ -176,3 +176,5 @@ def search(portType, sessionid, module_name, offset, max_results, query=None, or ans_list.append(ans_dir) #end for return ans_list + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_sugarcrm/sugarsoap_services.py b/addons/import_sugarcrm/sugarsoap_services.py index a80102e5081..b42eb4041c1 100644 --- a/addons/import_sugarcrm/sugarsoap_services.py +++ b/addons/import_sugarcrm/sugarsoap_services.py @@ -1418,3 +1418,5 @@ class get_attendee_listResponse: self._return = None return get_attendee_listResponse.typecode.pyclass = get_attendee_listResponse + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_sugarcrm/sugarsoap_services_types.py b/addons/import_sugarcrm/sugarsoap_services_types.py index acd22bbb97f..182e9ce4c37 100644 --- a/addons/import_sugarcrm/sugarsoap_services_types.py +++ b/addons/import_sugarcrm/sugarsoap_services_types.py @@ -644,3 +644,5 @@ class ns0: self.pyclass = Holder # end class ns0 (tns: http://www.sugarcrm.com/sugarcrm) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_sugarcrm/wizard/__init__.py b/addons/import_sugarcrm/wizard/__init__.py index 6910c3981bd..08b611401b1 100644 --- a/addons/import_sugarcrm/wizard/__init__.py +++ b/addons/import_sugarcrm/wizard/__init__.py @@ -20,3 +20,5 @@ ############################################################################## import import_message + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/import_sugarcrm/wizard/import_message.py b/addons/import_sugarcrm/wizard/import_message.py index 7c9f1703282..1d2e765580b 100644 --- a/addons/import_sugarcrm/wizard/import_message.py +++ b/addons/import_sugarcrm/wizard/import_message.py @@ -27,3 +27,5 @@ class import_message(osv.osv): _description = __doc__ import_message() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/knowledge/__openerp__.py b/addons/knowledge/__openerp__.py index 2ca58e9861f..27333f59c41 100644 --- a/addons/knowledge/__openerp__.py +++ b/addons/knowledge/__openerp__.py @@ -21,11 +21,11 @@ { - "name" : "Knowledge Management System", + "name" : "Document Management System", "version" : "1.0", "depends" : ["base","base_setup"], "author" : "OpenERP SA", - "category": 'Hidden', + 'category': 'Knowledge Management', 'complexity': "easy", "description": """ Installer for knowledge-based Hidden. diff --git a/addons/l10n_at/__init__.py b/addons/l10n_at/__init__.py index b3516a699d9..a295fe1bd73 100644 --- a/addons/l10n_at/__init__.py +++ b/addons/l10n_at/__init__.py @@ -19,4 +19,6 @@ # ############################################################################## -import account_wizard
\ No newline at end of file +import account_wizard + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_at/__openerp__.py b/addons/l10n_at/__openerp__.py index d28598c1ed2..570841374d8 100644 --- a/addons/l10n_at/__openerp__.py +++ b/addons/l10n_at/__openerp__.py @@ -33,3 +33,5 @@ "installable": True } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_at/account_wizard.py b/addons/l10n_at/account_wizard.py index cf63b2c5dc3..15b0735b9ca 100644 --- a/addons/l10n_at/account_wizard.py +++ b/addons/l10n_at/account_wizard.py @@ -32,3 +32,5 @@ class AccountWizard_cd(osv.osv_memory): AccountWizard_cd() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_be/__openerp__.py b/addons/l10n_be/__openerp__.py index 26c9837a8bf..d4300186660 100644 --- a/addons/l10n_be/__openerp__.py +++ b/addons/l10n_be/__openerp__.py @@ -42,27 +42,27 @@ Wizards provided by this module: """, 'author': 'OpenERP SA', 'depends': [ - 'account', - 'base_vat', - 'base_iban', - 'account_chart', - 'account_coda', - ], + 'account', + 'base_vat', + 'base_iban', + 'account_chart', + 'account_coda', + ], 'init_xml': [], 'update_xml': [ - 'account_pcmn_belgium.xml', - 'account_tax_code_template.xml', - 'account_chart_template.xml', - 'account_tax_template.xml', - 'l10n_be_wizard.xml', - 'wizard/l10n_be_account_vat_declaration_view.xml', - 'wizard/l10n_be_vat_intra_view.xml', - 'wizard/l10n_be_partner_vat_listing.xml', - 'l10n_be_sequence.xml', - 'fiscal_templates.xml', - 'account_fiscal_position_tax_template.xml', - 'security/ir.model.access.csv' - ], + 'account_pcmn_belgium.xml', + 'account_tax_code_template.xml', + 'account_chart_template.xml', + 'account_tax_template.xml', + 'wizard/l10n_be_account_vat_declaration_view.xml', + 'wizard/l10n_be_vat_intra_view.xml', + 'wizard/l10n_be_partner_vat_listing.xml', + 'l10n_be_sequence.xml', + 'fiscal_templates.xml', + 'account_fiscal_position_tax_template.xml', + 'security/ir.model.access.csv', + 'l10n_be_wizard.yml' + ], 'demo_xml': [], 'installable': True, 'certificate': '0031977724637', diff --git a/addons/l10n_be/l10n_be_wizard.xml b/addons/l10n_be/l10n_be_wizard.xml deleted file mode 100644 index 194e2881d1b..00000000000 --- a/addons/l10n_be/l10n_be_wizard.xml +++ /dev/null @@ -1,11 +0,0 @@ -<openerp> - <data> - - <record id="config_call_account_template" model="ir.actions.todo"> - <field name="action_id" ref="account.action_wizard_multi_chart"/> - <field name="category_id" ref="account.category_accounting_configuration"/> - <field name="type">automatic</field> - </record> - - </data> -</openerp> diff --git a/addons/l10n_be/l10n_be_wizard.yml b/addons/l10n_be/l10n_be_wizard.yml new file mode 100644 index 00000000000..5acc10c629f --- /dev/null +++ b/addons/l10n_be/l10n_be_wizard.yml @@ -0,0 +1,19 @@ +- + !record {model: ir.actions.todo, id: config_call_account_template}: + action_id: account.action_wizard_multi_chart + category_id: account.category_accounting_configuration + type: automatic +- + !python {model: ir.actions.todo}: | + install_todo = self.browse(cr, uid, ref('l10n_be.config_call_account_template')) + if install_todo.state == 'open': + wiz = self.pool.get('wizard.multi.charts.accounts') + values = { + 'chart_template_id': ref('l10n_be.l10nbe_chart_template') + } + values.update( + wiz.onchange_chart_template_id(cr, uid, False, ref('l10n_be.l10nbe_chart_template')).get('value', {}) + ) + wiz_id = wiz.create(cr, uid, values) + wiz.execute(cr, uid, [wiz_id]) + install_todo.write({'state':'done'}) diff --git a/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py b/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py index 77d8515d78b..138f6f668f8 100644 --- a/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py +++ b/addons/l10n_be/wizard/l10n_be_account_vat_declaration.py @@ -70,9 +70,10 @@ class l10n_be_vat_declaration(osv.osv_memory): obj_company = data_tax.tax_code_id.company_id else: obj_company = obj_user.browse(cr, uid, uid, context=context).company_id - vat_no = obj_company.partner_id.vat.replace(' ','').upper() + vat_no = obj_company.partner_id.vat if not vat_no: raise osv.except_osv(_('Data Insufficient'), _('No VAT Number Associated with Main Company!')) + vat_no = vat_no.replace(' ','').upper() tax_code_ids = obj_tax_code.search(cr, uid, [], context=context) ctx = context.copy() diff --git a/addons/l10n_be_hr_payroll/l10n_be_hr_payroll_data.xml b/addons/l10n_be_hr_payroll/l10n_be_hr_payroll_data.xml index 799c544a0c8..5acb2729abb 100644 --- a/addons/l10n_be_hr_payroll/l10n_be_hr_payroll_data.xml +++ b/addons/l10n_be_hr_payroll/l10n_be_hr_payroll_data.xml @@ -165,7 +165,7 @@ <field name="code">car</field> <field name="amount_select">fix</field> <field name="sequence">15</field> - <field name="condtion_select">none</field> + <field name="condition_select">none</field> <field name="appears_on_payslip" eval="False"/> </record> <record id="hr_payroll_rules_parent_company_car" model="hr.salary.rule"> @@ -266,7 +266,7 @@ <field name="sequence">165</field> <field name="condition_select">python</field> <field name="condition_python">result = bool(contract.insurance_employee_deduction)</field> - <field name="amount_pyton_compute">result = -contract.insurance_employee_deduction</field> + <field name="amount_python_compute">result = -contract.insurance_employee_deduction</field> </record> <record id="hr_payroll_rules_advantage" model="hr.salary.rule"> <field name="category_id" ref="hr_payroll.ALW"/> diff --git a/addons/l10n_be_invoice_bba/__init__.py b/addons/l10n_be_invoice_bba/__init__.py index 176d1b9a904..48cd4bc0347 100644 --- a/addons/l10n_be_invoice_bba/__init__.py +++ b/addons/l10n_be_invoice_bba/__init__.py @@ -22,3 +22,5 @@ import partner import invoice + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_be_invoice_bba/__openerp__.py b/addons/l10n_be_invoice_bba/__openerp__.py index e4b209317d0..c18f49817b5 100644 --- a/addons/l10n_be_invoice_bba/__openerp__.py +++ b/addons/l10n_be_invoice_bba/__openerp__.py @@ -53,3 +53,5 @@ A 'random' Structured Communication will generated if no algorithm is specified ], 'active': False, 'installable': True,} + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_be_invoice_bba/invoice.py b/addons/l10n_be_invoice_bba/invoice.py index 947ccb6f71c..997036c0cec 100644 --- a/addons/l10n_be_invoice_bba/invoice.py +++ b/addons/l10n_be_invoice_bba/invoice.py @@ -215,3 +215,5 @@ class account_invoice(osv.osv): ]
account_invoice()
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_be_invoice_bba/partner.py b/addons/l10n_be_invoice_bba/partner.py index 194ae39ed86..04a51c3a6ab 100644 --- a/addons/l10n_be_invoice_bba/partner.py +++ b/addons/l10n_be_invoice_bba/partner.py @@ -50,3 +50,5 @@ class res_partner(osv.osv): 'out_inv_comm_type': 'none', } res_partner() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_br/account.py b/addons/l10n_br/account.py index 965ff500829..6e38aaa690f 100644 --- a/addons/l10n_br/account.py +++ b/addons/l10n_br/account.py @@ -124,15 +124,6 @@ class account_tax(osv.osv): account_tax() -class account_journal(osv.osv): - _inherit = "account.journal" - - _columns = { - 'internal_sequence': fields.many2one('ir.sequence', 'Internal Sequence'), - } - -account_journal() - class wizard_multi_charts_accounts(osv.osv_memory): _inherit = 'wizard.multi.charts.accounts' @@ -174,4 +165,6 @@ class wizard_multi_charts_accounts(osv.osv_memory): if tax.tax_code_id: obj_acc_tax.write(cr, uid, tax.id, {'domain': tax.tax_code_id.domain,'tax_discount': tax.tax_code_id.tax_discount}) -wizard_multi_charts_accounts()
\ No newline at end of file +wizard_multi_charts_accounts() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_br/account_view.xml b/addons/l10n_br/account_view.xml index da2ab84d4ab..0b038fddd82 100644 --- a/addons/l10n_br/account_view.xml +++ b/addons/l10n_br/account_view.xml @@ -96,18 +96,6 @@ </field> </record> - <record id="view_l10n_br_journal_form_inherit" model="ir.ui.view"> - <field name="name">l10n_br.journal.form.inherit</field> - <field name="model">account.journal</field> - <field name="type">form</field> - <field name="inherit_id" ref="account.view_account_journal_form"/> - <field name="arch" type="xml"> - <field name="sequence_id" position="after"> - <field name="internal_sequence"/> - </field> - </field> - </record> - </data> </openerp> diff --git a/addons/l10n_br/data/account_tax_template.xml b/addons/l10n_br/data/account_tax_template.xml index 58f860e0d90..fcdcb4d30e6 100644 --- a/addons/l10n_br/data/account_tax_template.xml +++ b/addons/l10n_br/data/account_tax_template.xml @@ -5,7 +5,6 @@ <record id="tax_template_1" model="account.tax.template"> <field name="description">IPI</field> <field name="name">IPI</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -21,7 +20,6 @@ <record id="tax_template_3" model="account.tax.template"> <field name="description">IPI 2%</field> <field name="name">IPI 2%</field> - <field name="tax_group">vat</field> <field name="amount">0.02</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -37,7 +35,6 @@ <record id="tax_template_4" model="account.tax.template"> <field name="description">IPI 3%</field> <field name="name">IPI 3%</field> - <field name="tax_group">vat</field> <field name="amount">0.03</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -53,7 +50,6 @@ <record id="tax_template_5" model="account.tax.template"> <field name="description">IPI 4%</field> <field name="name">IPI 4%</field> - <field name="tax_group">vat</field> <field name="amount">0.04</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -69,7 +65,6 @@ <record id="tax_template_6" model="account.tax.template"> <field name="description">IPI 5%</field> <field name="name">IPI 5%</field> - <field name="tax_group">vat</field> <field name="amount">0.05</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -85,7 +80,6 @@ <record id="tax_template_7" model="account.tax.template"> <field name="description">IPI 7%</field> <field name="name">IPI 7%</field> - <field name="tax_group">vat</field> <field name="amount">0.07</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -101,7 +95,6 @@ <record id="tax_template_8" model="account.tax.template"> <field name="description">IPI 8%</field> <field name="name">IPI 8%</field> - <field name="tax_group">vat</field> <field name="amount">0.08</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -117,7 +110,6 @@ <record id="tax_template_9" model="account.tax.template"> <field name="description">IPI 10%</field> <field name="name">IPI 10%</field> - <field name="tax_group">vat</field> <field name="amount">0.10</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -133,7 +125,6 @@ <record id="tax_template_10" model="account.tax.template"> <field name="description">IPI 12%</field> <field name="name">IPI 12%</field> - <field name="tax_group">vat</field> <field name="amount">0.12</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -149,7 +140,6 @@ <record id="tax_template_11" model="account.tax.template"> <field name="description">IPI 13%</field> <field name="name">IPI 13%</field> - <field name="tax_group">vat</field> <field name="amount">0.13</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -165,7 +155,6 @@ <record id="tax_template_12" model="account.tax.template"> <field name="description">IPI 15%</field> <field name="name">IPI 15%</field> - <field name="tax_group">vat</field> <field name="amount">0.15</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -181,7 +170,6 @@ <record id="tax_template_13" model="account.tax.template"> <field name="description">IPI 16%</field> <field name="name">IPI 16%</field> - <field name="tax_group">vat</field> <field name="amount">0.16</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -197,7 +185,6 @@ <record id="tax_template_14" model="account.tax.template"> <field name="description">IPI 18%</field> <field name="name">IPI 18%</field> - <field name="tax_group">vat</field> <field name="amount">0.18</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -213,7 +200,6 @@ <record id="tax_template_15" model="account.tax.template"> <field name="description">IPI 20%</field> <field name="name">IPI 20%</field> - <field name="tax_group">vat</field> <field name="amount">0.20</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -229,7 +215,6 @@ <record id="tax_template_16" model="account.tax.template"> <field name="description">IPI 22%</field> <field name="name">IPI 22%</field> - <field name="tax_group">vat</field> <field name="amount">0.22</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -245,7 +230,6 @@ <record id="tax_template_17" model="account.tax.template"> <field name="description">IPI 25%</field> <field name="name">IPI 25%</field> - <field name="tax_group">vat</field> <field name="amount">0.25</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -261,7 +245,6 @@ <record id="tax_template_18" model="account.tax.template"> <field name="description">IPI 27%</field> <field name="name">IPI 27%</field> - <field name="tax_group">vat</field> <field name="amount">0.27</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -277,7 +260,6 @@ <record id="tax_template_19" model="account.tax.template"> <field name="description">IPI 30%</field> <field name="name">IPI 30%</field> - <field name="tax_group">vat</field> <field name="amount">0.30</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -293,7 +275,6 @@ <record id="tax_template_20" model="account.tax.template"> <field name="description">IPI 35%</field> <field name="name">IPI 35%</field> - <field name="tax_group">vat</field> <field name="amount">0.35</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -309,7 +290,6 @@ <record id="tax_template_21" model="account.tax.template"> <field name="description">IPI 40%</field> <field name="name">IPI 40%</field> - <field name="tax_group">vat</field> <field name="amount">0.40</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -325,7 +305,6 @@ <record id="tax_template_22" model="account.tax.template"> <field name="description">IPI 42%</field> <field name="name">IPI 42%</field> - <field name="tax_group">vat</field> <field name="amount">0.42</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -341,7 +320,6 @@ <record id="tax_template_23" model="account.tax.template"> <field name="description">IPI 45%</field> <field name="name">IPI 45%</field> - <field name="tax_group">vat</field> <field name="amount">0.45</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -357,7 +335,6 @@ <record id="tax_template_24" model="account.tax.template"> <field name="description">IPI 50%</field> <field name="name">IPI 50%</field> - <field name="tax_group">vat</field> <field name="amount">0.50</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -373,7 +350,6 @@ <record id="tax_template_25" model="account.tax.template"> <field name="description">IPI 60%</field> <field name="name">IPI 60%</field> - <field name="tax_group">vat</field> <field name="amount">0.60</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -389,7 +365,6 @@ <record id="tax_template_26" model="account.tax.template"> <field name="description">IPI 330%</field> <field name="name">IPI 330%</field> - <field name="tax_group">vat</field> <field name="amount">3.30</field> <field ref="account_template_244" name="account_collected_id"/> <field ref="account_template_44" name="account_paid_id"/> @@ -405,7 +380,6 @@ <record id="tax_template_27" model="account.tax.template"> <field name="description">ICMS Interno</field> <field name="name">ICMS Interno</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field ref="account_template_241" name="account_collected_id"/> <field ref="account_template_42" name="account_paid_id"/> @@ -421,7 +395,6 @@ <record id="tax_template_28" model="account.tax.template"> <field name="description">ICMS Externo</field> <field name="name">ICMS Externo</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field ref="account_template_241" name="account_collected_id"/> <field ref="account_template_42" name="account_paid_id"/> @@ -437,7 +410,6 @@ <record id="tax_template_29" model="account.tax.template"> <field name="description">ICMS Subist</field> <field name="name">ICMS Subist</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field eval="0" name="price_include"/> <field eval="0" name="tax_discount"/> @@ -451,7 +423,6 @@ <record id="tax_template_30" model="account.tax.template"> <field name="description">ICMS Externo 7%</field> <field name="name">ICMS Externo 7%</field> - <field name="tax_group">vat</field> <field name="amount">0.07</field> <field ref="account_template_241" name="account_collected_id"/> <field ref="account_template_42" name="account_paid_id"/> @@ -467,7 +438,6 @@ <record id="tax_template_31" model="account.tax.template"> <field name="description">ICMS Externo 12%</field> <field name="name">ICMS Externo 12%</field> - <field name="tax_group">vat</field> <field name="amount">0.12</field> <field ref="account_template_241" name="account_collected_id"/> <field ref="account_template_42" name="account_paid_id"/> @@ -483,7 +453,6 @@ <record id="tax_template_32" model="account.tax.template"> <field name="description">ICMS Interno 19%</field> <field name="name">ICMS Interno 19%</field> - <field name="tax_group">vat</field> <field name="amount">0.19</field> <field ref="account_template_241" name="account_collected_id"/> <field ref="account_template_42" name="account_paid_id"/> @@ -499,7 +468,6 @@ <record id="tax_template_33" model="account.tax.template"> <field name="description">ICMS Interno 26%</field> <field name="name">ICMS Interno 26%</field> - <field name="tax_group">vat</field> <field name="amount">0.26</field> <field ref="account_template_241" name="account_collected_id"/> <field ref="account_template_42" name="account_paid_id"/> @@ -515,7 +483,6 @@ <record id="tax_template_34" model="account.tax.template"> <field name="description">PIS</field> <field name="name">PIS</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field ref="account_template_243" name="account_collected_id"/> <field ref="account_template_49" name="account_paid_id"/> @@ -531,7 +498,6 @@ <record id="tax_template_35" model="account.tax.template"> <field name="description">PIS 0,65%</field> <field name="name">PIS 0,65%</field> - <field name="tax_group">vat</field> <field name="amount">0.0065</field> <field ref="account_template_243" name="account_collected_id"/> <field ref="account_template_49" name="account_paid_id"/> @@ -547,7 +513,6 @@ <record id="tax_template_36" model="account.tax.template"> <field name="description">COFINS</field> <field name="name">COFINS</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field ref="account_template_242" name="account_collected_id"/> <field ref="account_template_39" name="account_paid_id"/> @@ -563,7 +528,6 @@ <record id="tax_template_37" model="account.tax.template"> <field name="description">COFINS 3%</field> <field name="name">COFINS 3%</field> - <field name="tax_group">vat</field> <field name="amount">0.03</field> <field ref="account_template_242" name="account_collected_id"/> <field ref="account_template_39" name="account_paid_id"/> @@ -579,7 +543,6 @@ <record id="tax_template_38" model="account.tax.template"> <field name="description">IRPJ</field> <field name="name">IRPJ</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field eval="0" name="price_include"/> <field eval="1" name="tax_discount"/> @@ -593,7 +556,6 @@ <record id="tax_template_39" model="account.tax.template"> <field name="description">IR</field> <field name="name">IR</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field eval="0" name="price_include"/> <field eval="1" name="tax_discount"/> @@ -607,7 +569,6 @@ <record id="tax_template_40" model="account.tax.template"> <field name="description">ISS</field> <field name="name">ISS</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field eval="0" name="price_include"/> <field eval="1" name="tax_discount"/> @@ -621,7 +582,6 @@ <record id="tax_template_41" model="account.tax.template"> <field name="description">ISS 1%</field> <field name="name">ISS 1%</field> - <field name="tax_group">vat</field> <field name="amount">0.01</field> <field eval="0" name="price_include"/> <field eval="1" name="tax_discount"/> @@ -635,7 +595,6 @@ <record id="tax_template_42" model="account.tax.template"> <field name="description">ISS 2%</field> <field name="name">ISS 2%</field> - <field name="tax_group">vat</field> <field name="amount">0.02</field> <field eval="0" name="price_include"/> <field eval="1" name="tax_discount"/> @@ -649,7 +608,6 @@ <record id="tax_template_43" model="account.tax.template"> <field name="description">ISS 3%</field> <field name="name">ISS 3%</field> - <field name="tax_group">vat</field> <field name="amount">0.03</field> <field eval="0" name="price_include"/> <field eval="1" name="tax_discount"/> @@ -663,7 +621,6 @@ <record id="tax_template_44" model="account.tax.template"> <field name="description">ISS 4%</field> <field name="name">ISS 4%</field> - <field name="tax_group">vat</field> <field name="amount">0.04</field> <field eval="0" name="price_include"/> <field eval="1" name="tax_discount"/> @@ -677,7 +634,6 @@ <record id="tax_template_45" model="account.tax.template"> <field name="description">ISS 5%</field> <field name="name">ISS 5%</field> - <field name="tax_group">vat</field> <field name="amount">0.05</field> <field eval="0" name="price_include"/> <field eval="1" name="tax_discount"/> @@ -691,7 +647,6 @@ <record id="tax_template_46" model="account.tax.template"> <field name="description">CSLL</field> <field name="name">CSLL</field> - <field name="tax_group">vat</field> <field name="amount">0.00</field> <field eval="0" name="price_include"/> <field eval="1" name="tax_discount"/> @@ -703,4 +658,4 @@ </record> </data> -</openerp>
\ No newline at end of file +</openerp> diff --git a/addons/l10n_br/data/l10n_br_account_chart_template.xml b/addons/l10n_br/data/l10n_br_account_chart_template.xml index 9dbcb4d558f..89ccee11edc 100644 --- a/addons/l10n_br/data/l10n_br_account_chart_template.xml +++ b/addons/l10n_br/data/l10n_br_account_chart_template.xml @@ -19,7 +19,7 @@ This is the same wizard that runs from Financial Management/Configuration/Financial Accounting/Financial Accounts/Generate Chart of Accounts from a Chart Template.</field> <field name="action_id" ref="account.action_wizard_multi_chart"/> <field name="state">open</field> - <field name="restart">onskip</field> + <field name="type">once</field> </record> </data> diff --git a/addons/l10n_ch/__openerp__.py b/addons/l10n_ch/__openerp__.py index cabd15e42de..cde4d7d496d 100644 --- a/addons/l10n_ch/__openerp__.py +++ b/addons/l10n_ch/__openerp__.py @@ -99,8 +99,9 @@ TODO : 'test' : [ 'test/l10n_ch_report.yml', 'test/l10n_ch_dta.yml', - 'test/l10n_ch_v11.yml', - 'test/l10n_ch_v11_part.yml', + #TODO: uncomment the 2 following tests once they are fixed + #'test/l10n_ch_v11.yml', + #'test/l10n_ch_v11_part.yml', ], "active": False, "installable": True, diff --git a/addons/l10n_ch/account_wizard.py b/addons/l10n_ch/account_wizard.py index f9b2600adca..7b80e3697ee 100644 --- a/addons/l10n_ch/account_wizard.py +++ b/addons/l10n_ch/account_wizard.py @@ -42,3 +42,5 @@ class WizardMultiChartsAccounts(osv.osv_memory): WizardMultiChartsAccounts() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_ch/bank.py b/addons/l10n_ch/bank.py index 6b9294bea13..fd69dec625f 100644 --- a/addons/l10n_ch/bank.py +++ b/addons/l10n_ch/bank.py @@ -77,3 +77,5 @@ class ResPartnerBank(osv.osv): 'The BVR adherent number must be unique !')] ResPartnerBank() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_ch/bank_view.xml b/addons/l10n_ch/bank_view.xml index f8c66c16000..e23be1bb6ac 100644 --- a/addons/l10n_ch/bank_view.xml +++ b/addons/l10n_ch/bank_view.xml @@ -6,7 +6,6 @@ <field name="name">res.bank.form</field> <field name="model">res.bank</field> <field name="type">form</field> - <field name="sequence" eval="9" /> <field name="inherit_id" ref="base.view_res_bank_form"/> <field name="arch" type="xml"> <field name="name" position="after"> @@ -23,7 +22,6 @@ <field name="name">res.bank.tree</field> <field name="model">res.bank</field> <field name="type">tree</field> - <field name="sequence" eval="9" /> <field name="inherit_id" ref="base.view_res_bank_tree"/> <field name="arch" type="xml"> <field name="name" position="after"> @@ -40,7 +38,6 @@ <field name="name">res.partner_bank.form.hide.f1</field> <field name="model">res.partner</field> <field name="type">form</field> - <field name="sequence" eval="9" /> <field name="inherit_id" ref="account.view_partner_property_form"/> <field name="arch" type="xml"> <field name="acc_number" position="replace"> @@ -51,7 +48,6 @@ <field name="name">res.partner_bank.form.hide.f2</field> <field name="model">res.partner</field> <field name="type">form</field> - <field name="sequence" eval="9" /> <field name="inherit_id" ref="account.view_partner_property_form"/> <field name="arch" type="xml"> <field name="bank" position="replace"> @@ -63,7 +59,6 @@ <field name="name">res.partner_bank.form.hide.f2</field> <field name="model">res.partner</field> <field name="type">form</field> - <field name="sequence" eval="10" /> <field name="inherit_id" ref="account.view_partner_property_form"/> <field name="arch" type="xml"> <field name="state" position="after"> @@ -94,7 +89,6 @@ <field name="name">res.partner_bank.form.hide.acc_number.frominvoice</field> <field name="model">res.partner.bank</field> <field name="type">form</field> - <field name="sequence" eval="9" /> <field name="inherit_id" ref="base.view_partner_bank_form"/> <field name="arch" type="xml"> <field name="acc_number" position="replace"> @@ -106,7 +100,6 @@ <field name="name">res.partner_bank.form.hide.bank.frominvoice</field> <field name="model">res.partner.bank</field> <field name="type">form</field> - <field name="sequence" eval="9" /> <field name="inherit_id" ref="base.view_partner_bank_form"/> <field name="arch" type="xml"> <field name="bank" position="replace"> @@ -118,7 +111,6 @@ <field name="name">res.partner_bank.form.hide.frominvoice</field> <field name="model">res.partner.bank</field> <field name="type">form</field> - <field name="sequence" eval="10"/> <field name="inherit_id" ref="base.view_partner_bank_form"/> <field name="arch" type="xml"> <field name="state" position="after"> @@ -138,7 +130,7 @@ </group> <separator colspan="4" string="Financial institute infos"/> <newline/> - <field name="my_bank" attrs="{'invisible': [('company_id', '!=', True)]}" colspan="4"/> + <field name="my_bank" attrs="{'invisible': [('company_id', '=', False)]}" colspan="4"/> <group string="BVR print options" colspan="4" attrs="{'invisible': [('my_bank', '!=', True)]}" > <field name="bvr_adherent_num"/> <field name="print_bank"/> diff --git a/addons/l10n_ch/report/__init__.py b/addons/l10n_ch/report/__init__.py index 04cc14f1d80..e8703f10d03 100644 --- a/addons/l10n_ch/report/__init__.py +++ b/addons/l10n_ch/report/__init__.py @@ -29,4 +29,6 @@ # ############################################################################## -import report_webkit_html
\ No newline at end of file +import report_webkit_html + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_ch/report/report_webkit_html.py b/addons/l10n_ch/report/report_webkit_html.py index b551845322f..8b179e7ae58 100644 --- a/addons/l10n_ch/report/report_webkit_html.py +++ b/addons/l10n_ch/report/report_webkit_html.py @@ -322,3 +322,5 @@ BVRWebKitParser('report.invoice_web_bvr', 'account.invoice', 'addons/l10n_ch/report/report_webkit_html.mako', parser=l10n_ch_report_webkit_html) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_ch/sterchi_chart/account.xml b/addons/l10n_ch/sterchi_chart/account.xml index f642b800493..8fdd29fe8a8 100644 --- a/addons/l10n_ch/sterchi_chart/account.xml +++ b/addons/l10n_ch/sterchi_chart/account.xml @@ -177,14 +177,12 @@ <record model="account.account.type" id="account_type_receivable"> <field name="name">Bilan : Debiteurs</field> <field name="code">receivable</field> - <field name="partner_account">True</field> <field name="close_method">unreconciled</field> <field name="report_type">none</field> </record> <record model="account.account.type" id="account_type_payable"> <field name="name">Bilan : Fournisseurs</field> <field name="code">payable</field> - <field name="partner_account">True</field> <field name="close_method">unreconciled</field> <field name="report_type">none</field> </record> @@ -359,11 +357,12 @@ </record> <record id="ch_1024" model="account.account.template"> <field name="type">other</field> - <field name="name">Compte en devise A</field> + <field name="name">Compte en devise EUR</field> <field name="code">1024</field> <field name="user_type" ref="account_type_cash"/> <field name="note"/> <field ref="ch_102_0" name="parent_id"/> + <field name="currency_id" ref="base.EUR"/> </record> <record id="ch_1025" model="account.account.template"> <field name="type">other</field> diff --git a/addons/l10n_ch/wizard/bvr_import.py b/addons/l10n_ch/wizard/bvr_import.py index 31c1e9ab96f..e98053513cd 100644 --- a/addons/l10n_ch/wizard/bvr_import.py +++ b/addons/l10n_ch/wizard/bvr_import.py @@ -168,7 +168,7 @@ def _import(self, cursor, user, data, context=None): # line2reconcile = line.id account_id = line.account_id.id break - result = voucher_obj.onchange_partner_id(cursor, user, [], partner_id, journal_id=statement.journal_id.id, price=abs(record['amount']), currency_id= statement.currency.id, ttype='receipt', date=statement.date ,context=context) + result = voucher_obj.onchange_partner_id(cursor, user, [], partner_id, journal_id=statement.journal_id.id, amount=abs(record['amount']), currency_id= statement.currency.id, ttype='receipt', date=statement.date ,context=context) voucher_res = { 'type': 'receipt' , 'name': values['name'], diff --git a/addons/l10n_ch/wizard/unicode2ascii.py b/addons/l10n_ch/wizard/unicode2ascii.py index 7d95a4ab714..1cec519420c 100644 --- a/addons/l10n_ch/wizard/unicode2ascii.py +++ b/addons/l10n_ch/wizard/unicode2ascii.py @@ -590,3 +590,5 @@ if __name__ == '__main__': if argz: parser.error('Only stdin -> stdout conversion suported') uc_filter(sys.stdin, sys.stdout, bs=optz.bs, in_enc=optz.src_enc, out_enc=optz.dst_enc) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_cr/__init__.py b/addons/l10n_cr/__init__.py index c4c6ee3e380..88b86329a8d 100644 --- a/addons/l10n_cr/__init__.py +++ b/addons/l10n_cr/__init__.py @@ -32,3 +32,5 @@ # ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_cr/data/account_tax_template.xml b/addons/l10n_cr/data/account_tax_template.xml index 7626b25b5ad..42b5ca03a13 100644 --- a/addons/l10n_cr/data/account_tax_template.xml +++ b/addons/l10n_cr/data/account_tax_template.xml @@ -11,7 +11,6 @@ <field name="sequence">10</field> <field name="amount">13</field> <field name="type">percent</field> - <!-- <field name="tax_group">vat</field> --> <field name="type_tax_use">all</field> <field name="applicable_type">true</field> <field name="child_depend" eval="False"/> @@ -34,7 +33,6 @@ <field name="sequence">10</field> <field name="amount">13</field> <field name="type">percent</field> - <!-- <field name="tax_group">vat</field> --> <field name="type_tax_use">all</field> <field name="applicable_type">true</field> <field name="child_depend" eval="False"/> diff --git a/addons/l10n_de/__openerp__.py b/addons/l10n_de/__openerp__.py index 8cbdaa3b6ee..646836eba2a 100644 --- a/addons/l10n_de/__openerp__.py +++ b/addons/l10n_de/__openerp__.py @@ -152,3 +152,5 @@ German accounting chart and localization. "certificate": "00517849017945584893", 'images': ['images/config_chart_l10n_de.jpeg','images/l10n_de_chart.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_ec/__init__.py b/addons/l10n_ec/__init__.py index e59e7efc423..d9537494d6e 100644 --- a/addons/l10n_ec/__init__.py +++ b/addons/l10n_ec/__init__.py @@ -18,3 +18,5 @@ # ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_ec/__openerp__.py b/addons/l10n_ec/__openerp__.py index 0e93a3ac57b..f3dbf88289b 100644 --- a/addons/l10n_ec/__openerp__.py +++ b/addons/l10n_ec/__openerp__.py @@ -47,3 +47,5 @@ Accounting chart and localization for Ecuador. 'certificate' : '001226484516187330589', 'images': ['images/config_chart_l10n_ec.jpeg','images/l10n_ec_chart.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_es/__init__.py b/addons/l10n_es/__init__.py index 297d923f6bb..bec854aac95 100644 --- a/addons/l10n_es/__init__.py +++ b/addons/l10n_es/__init__.py @@ -24,3 +24,5 @@ ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_es/__openerp__.py b/addons/l10n_es/__openerp__.py index 3cdc521ad60..e2f5ad3402d 100644 --- a/addons/l10n_es/__openerp__.py +++ b/addons/l10n_es/__openerp__.py @@ -59,3 +59,5 @@ for yearly account reporting (balance, profit & losses). "certificate" : "00408828172062583229", 'images': ['images/config_chart_l10n_es.jpeg','images/l10n_es_chart.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_fr_rib/__init__.py b/addons/l10n_fr_rib/__init__.py new file mode 100644 index 00000000000..a061d3f40a2 --- /dev/null +++ b/addons/l10n_fr_rib/__init__.py @@ -0,0 +1,25 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2011 Numérigraphe SARL. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +############################################################################## + +import bank + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: + diff --git a/addons/l10n_fr_rib/__openerp__.py b/addons/l10n_fr_rib/__openerp__.py new file mode 100644 index 00000000000..16d26995dc4 --- /dev/null +++ b/addons/l10n_fr_rib/__openerp__.py @@ -0,0 +1,49 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2011 Numérigraphe SARL. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +############################################################################## + +{ + 'name': 'French RIB Bank Details', + 'version': '1.0', + "category": 'Accounting & Finance', + 'description': ''' +This module lets users enter the banking details of Partners in the RIB format (French standard for bank accounts details). +RIB Bank Accounts can be entered in the "Accounting" tab of the Partner form by specifying the account type "RIB". The four standard RIB fields will then become mandatory: +- Bank Code +- Office Code +- Account number +- RIB key +As a safety measure, OpenERP will check the RIB key whenever a RIB is saved, and will refuse to record the data if the key is incorrect. Please bear in mind that this can only happen when the user presses the "save" button, for example on the Partner Form. +Since each bank account may relate to a Bank, users may enter the RIB Bank Code in the Bank form - it will the pre-fill the Bank Code on the RIB when they select the Bank. +To make this easier, this module will also let users find Banks using their RIB code. + +The module base_iban can be a useful addition to this module, because French banks are now progressively adopting the international IBAN format instead of the RIB format. +The RIB and IBAN codes for a single account can be entered by recording two Bank Accounts in OpenERP: the first with the type "RIB", the second with the type "IBAN". +''', + 'author' : u'Numérigraphe SARL', + 'depends': ['base', 'account'], + 'init_xml': ['bank_data.xml', ], + 'update_xml': ['bank_view.xml', ], + 'installable': True, + 'certificate': '003407950790', + 'active': False, +} + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_fr_rib/bank.py b/addons/l10n_fr_rib/bank.py new file mode 100644 index 00000000000..03f71f60dee --- /dev/null +++ b/addons/l10n_fr_rib/bank.py @@ -0,0 +1,118 @@ +# -*- encoding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2011 Numérigraphe SARL. +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +############################################################################## + +import netsvc +from osv import fields, osv +from tools.translate import _ + +class res_partner_bank(osv.osv): + """Add fields and behavior for French RIB""" + _inherit = "res.partner.bank" + + def _check_key(self, cr, uid, ids): + """Check the RIB key""" + for bank_acc in self.browse(cr, uid, ids): + # Ignore the accounts of type other than rib + if bank_acc.state !='rib': + continue + # Fail if the needed values are empty of too short + if (not bank_acc.bank_code + or len(bank_acc.bank_code) != 5 + or not bank_acc.office or len(bank_acc.office) != 5 + or not bank_acc.acc_number or len(bank_acc.acc_number) != 11 + or not bank_acc.key or len(bank_acc.key) != 2): + return False + # Get the rib data (without the key) + rib = "%s%s%s" % (bank_acc.bank_code, bank_acc.office, + bank_acc.acc_number) + # Translate letters into numbers according to a specific table + # (notice how s -> 2) + table = dict((ord(a), b) for a, b in zip( + u'abcdefghijklmnopqrstuvwxyz', u'12345678912345678923456789')) + rib = rib.lower().translate(table) + # compute the key + key = 97 - (100 * int(rib)) % 97 + if int(bank_acc.key) != key: + return False + return True + + def onchange_bank_id(self, cr, uid, ids, bank_id, context=None): + """Change the bank code""" + result = super(res_partner_bank, self).onchange_bank_id(cr, uid, ids, bank_id, + context=context) + if bank_id: + value = result.setdefault('value', {}) + bank = self.pool.get('res.bank').browse(cr, uid, bank_id, + context=context) + value['bank_code'] = bank.rib_code + return result + + _columns = { + 'bank_code': fields.char('Bank Code', size=64, readonly=True,), + 'office': fields.char('Office Code', size=5, readonly=True,), + 'key': fields.char('Key', size=2, readonly=True, + help="The key is a number allowing to check the " + "correctness of the other codes."), + } + + def _construct_constraint_msg(self, cr, uid, ids, context=None): + """Quote the data in the warning message""" + # Only process the first id + if type(ids) not in (int, long): + id = ids[0] + rib = self.browse(cr, uid, id, context=context) + if rib: + return (_("\nThe RIB key %s does not correspond to the other " + "codes: %s %s %s.") % + (rib.key, + rib.bank_code, + rib.office, + rib.acc_number) ) + + _constraints = [(_check_key, + _construct_constraint_msg, + ["key"])] + +res_partner_bank() + +class res_bank(osv.osv): + """Add the bank code to make it easier to enter RIB data""" + _inherit = 'res.bank' + + def name_search(self, cr, user, name, args=None, operator='ilike', + context=None, limit=80): + """Search by bank code in addition to the standard search""" + # Get the standard results + results = super(res_bank, self).name_search(cr, user, + name, args=args ,operator=operator, context=context, limit=limit) + # Get additional results using the RIB code + ids = self.search(cr, user, [('rib_code', operator, name)], + limit=limit, context=context) + # Merge the results + results = list(set(results + self.name_get(cr, user, ids, context))) + return results + + _columns = { + 'rib_code': fields.char('RIB Bank Code', size=64), + } +res_bank() +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: + diff --git a/addons/l10n_fr_rib/bank_data.xml b/addons/l10n_fr_rib/bank_data.xml new file mode 100644 index 00000000000..1dc9f4c88fd --- /dev/null +++ b/addons/l10n_fr_rib/bank_data.xml @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="utf-8"?> +<openerp> + <data> + + <!-- + RIB bank details + --> + <record id="bank_rib" model="res.partner.bank.type"> + <field name="name">RIB Bank Details</field> + <field name="code">rib</field> + </record> + + <record id="rib_bank_code_field" model="res.partner.bank.type.field"> + <field name="name">bank_code</field> + <field name="bank_type_id" ref="bank_rib"/> + <field eval="True" name="required"/> + <field eval="False" name="readonly"/> + </record> + <record id="rib_office_field" model="res.partner.bank.type.field"> + <field name="name">office</field> + <field name="bank_type_id" ref="bank_rib"/> + <field eval="True" name="required"/> + <field eval="False" name="readonly"/> + </record> + <record id="bank_acc_number_field" model="res.partner.bank.type.field"> + <field name="name">acc_number</field> + <field name="bank_type_id" ref="bank_rib"/> + <field eval="True" name="required"/> + <field eval="False" name="readonly"/> + <field name="size">11</field> + </record> + <record id="rib_key_field" model="res.partner.bank.type.field"> + <field name="name">key</field> + <field name="bank_type_id" ref="bank_rib"/> + <field eval="True" name="required"/> + <field eval="False" name="readonly"/> + </record> + <record id="rib_bic_field" model="res.partner.bank.type.field"> + <field name="name">bank_bic</field> + <field name="bank_type_id" ref="bank_rib"/> + <field name="required" eval="0"/> + </record> + </data> +</openerp> diff --git a/addons/l10n_fr_rib/bank_view.xml b/addons/l10n_fr_rib/bank_view.xml new file mode 100644 index 00000000000..56eb8393aef --- /dev/null +++ b/addons/l10n_fr_rib/bank_view.xml @@ -0,0 +1,44 @@ +<?xml version="1.0" encoding="utf-8"?> +<openerp> + <data> + <!-- add the fields for French RIB to the partner form (subform)--> + <record id="view_partner_rib1_form" model="ir.ui.view"> + <field name="name">res.partner.form.rib1.inherit</field> + <field name="model">res.partner</field> + <field name="inherit_id" ref="base.view_partner_form" /> + <field name="type">form</field> + <field name="arch" type="xml"> + <field name="acc_number" position="before"> + <newline /> + <field name="bank_code" /> + <field name="office" /> + <newline /> + </field> + </field> + </record> + <record id="view_partner_rib2_form" model="ir.ui.view"> + <field name="name">res.partner.form.rib2.inherit</field> + <field name="model">res.partner</field> + <field name="inherit_id" ref="base.view_partner_form" /> + <field name="type">form</field> + <field name="arch" type="xml"> + <field name="acc_number" position="after"> + <field name="key" /> + </field> + </field> + </record> + + <!-- add the bank code--> + <record id="view_res_bank_form" model="ir.ui.view"> + <field name="name">res.bank.form.rib.inherit</field> + <field name="model">res.bank</field> + <field name="inherit_id" ref="base.view_res_bank_form" /> + <field name="type">form</field> + <field name="arch" type="xml"> + <field name="bic" position="before"> + <field name="rib_code" /> + </field> + </field> + </record> + </data> +</openerp> diff --git a/addons/l10n_fr_rib/i18n/fr.po b/addons/l10n_fr_rib/i18n/fr.po new file mode 100644 index 00000000000..4057dafb803 --- /dev/null +++ b/addons/l10n_fr_rib/i18n/fr.po @@ -0,0 +1,116 @@ +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# * l10n_fr_rib +# +msgid "" +msgstr "" +"Project-Id-Version: OpenERP Server 6.1beta\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-11-21 12:37+0000\n" +"PO-Revision-Date: 2011-11-21 12:37+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: l10n_fr_rib +#: constraint:res.partner.bank:0 +msgid "\n" +"Please define BIC/Swift code on bank for bank type IBAN Account to make valid payments" +msgstr "\n" +"Please define BIC/Swift code on bank for bank type IBAN Account to make valid payments" + +#. module: l10n_fr_rib +#: model:ir.model,name:l10n_fr_rib.model_res_partner_bank +msgid "Bank Accounts" +msgstr "Comptes bancaires" + +#. module: l10n_fr_rib +#: field:res.partner.bank,bank_code:0 +msgid "Bank Code" +msgstr "Code banque" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bic_field +msgid "bank_bic" +msgstr "bank_bic" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_office_field +msgid "office" +msgstr "Agence" + +#. module: l10n_fr_rib +#: field:res.bank,rib_code:0 +msgid "RIB Bank Code" +msgstr "Code banque RIB" + +#. module: l10n_fr_rib +#: model:ir.module.module,description:l10n_fr_rib.module_meta_information +msgid "\n" +"This module installs the base for RIB bank accounts (French standard for bank accounts). \n" +"To make it easier to enter RIB data, it will also allow to search for banks by code." +msgstr "\n" +"Ce module installe la base pour les comptes bancaires RIB (norme française pour les n° de compte). \n" +"Pour faciliter la saisie des RIBs, il permet aussi de chercher les banques par code." + +#. module: l10n_fr_rib +#: field:res.partner.bank,office:0 +msgid "Office Code" +msgstr "Code agence" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type,name:l10n_fr_rib.bank_rib +msgid "RIB Bank Details" +msgstr "Relevé d'identité bancaire (RIB)" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bank_code_field +msgid "bank_code" +msgstr "bank_code" + +#. module: l10n_fr_rib +#: code:addons/l10n_fr_rib/bank.py:109 +#, python-format +msgid "\n" +"The RIB key %s does not correspond to the other codes: %s %s %s." +msgstr "\n" +"La clé RIB %s ne correspond pas aux autres codes : %s %s %s." + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_key_field +msgid "key" +msgstr "key" + +#. module: l10n_fr_rib +#: model:ir.module.module,shortdesc:l10n_fr_rib.module_meta_information +msgid "French RIB Bank Details" +msgstr "Relevés d'identité bancaire français (RIB)" + +#. module: l10n_fr_rib +#: help:res.partner.bank,key:0 +msgid "The key is a number allowing to check the correctness of the other codes." +msgstr "La clé est un nombre permettant de vérifier que les autres codes sont corrects." + +#. module: l10n_fr_rib +#: field:res.partner.bank,key:0 +msgid "Key" +msgstr "Clé" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type,format_layout:l10n_fr_rib.bank_rib +msgid "%(bank_name)s: %(acc_number)s" +msgstr "%(bank_name)s: %(acc_number)s" + +#. module: l10n_fr_rib +#: model:ir.model,name:l10n_fr_rib.model_res_bank +msgid "Bank" +msgstr "Banque" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.bank_acc_number_field +msgid "acc_number" +msgstr "acc_number" + diff --git a/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot b/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot new file mode 100644 index 00000000000..5db922fe20f --- /dev/null +++ b/addons/l10n_fr_rib/i18n/l10n_fr_rib.pot @@ -0,0 +1,112 @@ +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# * l10n_fr_rib +# +msgid "" +msgstr "" +"Project-Id-Version: OpenERP Server 6.1beta\n" +"Report-Msgid-Bugs-To: \n" +"POT-Creation-Date: 2011-11-21 12:36+0000\n" +"PO-Revision-Date: 2011-11-21 12:36+0000\n" +"Last-Translator: <>\n" +"Language-Team: \n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: \n" +"Plural-Forms: \n" + +#. module: l10n_fr_rib +#: constraint:res.partner.bank:0 +msgid "\n" +"Please define BIC/Swift code on bank for bank type IBAN Account to make valid payments" +msgstr "" + +#. module: l10n_fr_rib +#: model:ir.model,name:l10n_fr_rib.model_res_partner_bank +msgid "Bank Accounts" +msgstr "" + +#. module: l10n_fr_rib +#: field:res.partner.bank,bank_code:0 +msgid "Bank Code" +msgstr "" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bic_field +msgid "bank_bic" +msgstr "" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_office_field +msgid "office" +msgstr "" + +#. module: l10n_fr_rib +#: field:res.bank,rib_code:0 +msgid "RIB Bank Code" +msgstr "" + +#. module: l10n_fr_rib +#: model:ir.module.module,description:l10n_fr_rib.module_meta_information +msgid "\n" +"This module installs the base for RIB bank accounts (French standard for bank accounts). \n" +"To make it easier to enter RIB data, it will also allow to search for banks by code." +msgstr "" + +#. module: l10n_fr_rib +#: field:res.partner.bank,office:0 +msgid "Office Code" +msgstr "" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type,name:l10n_fr_rib.bank_rib +msgid "RIB Bank Details" +msgstr "" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_bank_code_field +msgid "bank_code" +msgstr "" + +#. module: l10n_fr_rib +#: code:addons/l10n_fr_rib/bank.py:109 +#, python-format +msgid "\n" +"The RIB key %s does not correspond to the other codes: %s %s %s." +msgstr "" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.rib_key_field +msgid "key" +msgstr "" + +#. module: l10n_fr_rib +#: model:ir.module.module,shortdesc:l10n_fr_rib.module_meta_information +msgid "French RIB Bank Details" +msgstr "" + +#. module: l10n_fr_rib +#: help:res.partner.bank,key:0 +msgid "The key is a number allowing to check the correctness of the other codes." +msgstr "" + +#. module: l10n_fr_rib +#: field:res.partner.bank,key:0 +msgid "Key" +msgstr "" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type,format_layout:l10n_fr_rib.bank_rib +msgid "%(bank_name)s: %(acc_number)s" +msgstr "" + +#. module: l10n_fr_rib +#: model:ir.model,name:l10n_fr_rib.model_res_bank +msgid "Bank" +msgstr "" + +#. module: l10n_fr_rib +#: model:res.partner.bank.type.field,name:l10n_fr_rib.bank_acc_number_field +msgid "acc_number" +msgstr "" + diff --git a/addons/l10n_gt/l10n_gt_base.xml b/addons/l10n_gt/l10n_gt_base.xml index c52e7e94532..5238d7b4f23 100644 --- a/addons/l10n_gt/l10n_gt_base.xml +++ b/addons/l10n_gt/l10n_gt_base.xml @@ -16,7 +16,6 @@ <record id="GTQ" model="res.currency"> <field name="name">GTQ</field> - <field name="code">GTQ</field> <field name="symbol">Q</field> <field name="rounding">0.01</field> <field name="accuracy">4</field> diff --git a/addons/l10n_it/__init__.py b/addons/l10n_it/__init__.py index 026004bfa0f..491d2cc7b66 100644 --- a/addons/l10n_it/__init__.py +++ b/addons/l10n_it/__init__.py @@ -1,13 +1,15 @@ -# -*- encoding: utf-8 -*- ############################################################################## # # OpenERP, Open Source Management Solution # Copyright (C) 2010 -# Italian OpenERP Community (<http://www.openerp-italia.com>) +# OpenERP Italian Community (<http://www.openerp-italia.org>) # Servabit srl # Agile Business Group sagl # Domsense srl -# Albatos srl +# Albatos srl +# +# Copyright (C) 2011 +# Associazione OpenERP Italia (<http://www.openerp-italia.org>) # # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as @@ -23,6 +25,3 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## - -import libroIVA -import report diff --git a/addons/l10n_it/__openerp__.py b/addons/l10n_it/__openerp__.py index d6138608aa2..2c5811a6915 100644 --- a/addons/l10n_it/__openerp__.py +++ b/addons/l10n_it/__openerp__.py @@ -3,12 +3,15 @@ # # OpenERP, Open Source Management Solution # Copyright (C) 2010 -# Italian OpenERP Community (<http://www.openerp-italia.org>) +# OpenERP Italian Community (<http://www.openerp-italia.org>) # Servabit srl # Agile Business Group sagl # Domsense srl # Albatos srl # +# Copyright (C) 2011 +# Associazione OpenERP Italia (<http://www.openerp-italia.org>) +# # This program is free software: you can redistribute it and/or modify # it under the terms of the GNU Affero General Public License as # published by the Free Software Foundation, either version 3 of the @@ -39,9 +42,6 @@ Italian accounting chart and localization. "category" : "Localization/Account Charts", 'website': 'http://www.openerp-italia.org/', 'init_xml': [ - 'report.xml', - 'libroIVA_view.xml', - 'libroIVA_menu.xml', ], 'update_xml': [ 'data/account.account.type.csv', @@ -51,7 +51,6 @@ Italian accounting chart and localization. 'data/account.tax.template.csv', 'data/account.fiscal.position.template.csv', 'l10n_chart_it_generic.xml', - 'security/ir.model.access.csv', ], 'demo_xml': [ ], diff --git a/addons/l10n_it/data/account.account.template.csv b/addons/l10n_it/data/account.account.template.csv index 388d037ad4e..a1db05a3da9 100644 --- a/addons/l10n_it/data/account.account.template.csv +++ b/addons/l10n_it/data/account.account.template.csv @@ -1,234 +1,235 @@ "id","code","name","parent_id:id","user_type:id","type","reconcile" -0,0,"Azienda",,"account_type_view","view",FALSE -1,1,"ATTIVO ",0,"account_type_view","view",TRUE -11,11,"IMMOBILIZZAZIONI IMMATERIALI ",1,"account_type_view","view",TRUE -1101,1101,"costi di impianto ",11,"account_type_view","other",TRUE -1106,1106,"software ",11,"account_type_view","other",TRUE -1108,1108,"avviamento ",11,"account_type_view","other",TRUE -1111,1111,"fondo ammortamento costi di impianto ",11,"account_type_view","other",TRUE -1116,1116,"fondo ammortamento software ",11,"account_type_view","other",TRUE -1118,1118,"fondo ammortamento avviamento ",11,"account_type_view","other",TRUE -12,12,"IMMOBILIZZAZIONI MATERIALI ",1,"account_type_view","view",TRUE -1201,1201,"fabbricati ",12,"account_type_view","other",TRUE -1202,1202,"impianti e macchinari ",12,"account_type_view","other",TRUE -1204,1204,"attrezzature commerciali ",12,"account_type_view","other",TRUE -1205,1205,"macchine d'ufficio ",12,"account_type_view","other",TRUE -1206,1206,"arredamento ",12,"account_type_view","other",TRUE -1207,1207,"automezzi ",12,"account_type_view","other",TRUE -1208,1208,"imballaggi durevoli ",12,"account_type_view","other",TRUE -1211,1211,"fondo ammortamento fabbricati ",12,"account_type_view","other",TRUE -1212,1212,"fondo ammortamento impianti e macchinari ",12,"account_type_view","other",TRUE -1214,1214,"fondo ammortamento attrezzature commerciali ",12,"account_type_view","other",TRUE -1215,1215,"fondo ammortamento macchine d'ufficio ",12,"account_type_view","other",TRUE -1216,1216,"fondo ammortamento arredamento ",12,"account_type_view","other",TRUE -1217,1217,"fondo ammortamento automezzi ",12,"account_type_view","other",TRUE -1218,1218,"fondo ammortamento imballaggi durevoli ",12,"account_type_view","other",TRUE -1220,1220,"fornitori immobilizzazioni c/acconti ",12,"account_type_view","other",TRUE -13,13,"IMMOBILIZZAZIONI FINANZIARIE ",1,"account_type_view","view",TRUE -1301,1301,"mutui attivi ",13,"account_type_view","other",TRUE -14,14,"RIMANENZE ",1,"account_type_view","view",TRUE -1401,1401,"materie di consumo ",14,"account_type_view","other",TRUE -1404,1404,"merci ",14,"account_type_view","other",TRUE -1410,1410,"fornitori c/acconti ",14,"account_type_view","other",TRUE -15,15,"CREDITI COMMERCIALI ",1,"account_type_view","view",TRUE -1501,1501,"crediti v/clienti ",15,"account_type_receivable","receivable",TRUE -1502,1502,"crediti commerciali diversi ",15,"account_type_receivable","other",TRUE -1503,1503,"clienti c/spese anticipate ",15,"account_type_receivable","receivable",TRUE -1505,1505,"cambiali attive ",15,"account_type_receivable","other",TRUE -1506,1506,"cambiali allo sconto ",15,"account_type_receivable","other",TRUE -1507,1507,"cambiali all'incasso ",15,"account_type_receivable","other",TRUE -1509,1509,"fatture da emettere ",15,"account_type_receivable","other",TRUE -1510,1510,"crediti insoluti ",15,"account_type_receivable","other",TRUE -1511,1511,"cambiali insolute ",15,"account_type_receivable","other",TRUE -1531,1531,"crediti da liquidare ",15,"account_type_receivable","other",TRUE -1540,1540,"fondo svalutazione crediti ",15,"account_type_receivable","other",TRUE -1541,1541,"fondo rischi su crediti ",15,"account_type_receivable","other",TRUE -16,16,"CREDITI DIVERSI ",1,"account_type_view","view",TRUE -1601,1601,"IVA n/credito ",16,"account_type_receivable","other",TRUE -1602,1602,"IVA c/acconto ",16,"account_type_receivable","other",TRUE -1605,1605,"crediti per IVA ",16,"account_type_receivable","other",TRUE -1607,1607,"imposte c/acconto ",16,"account_type_receivable","other",TRUE -1608,1608,"crediti per imposte ",16,"account_type_receivable","other",TRUE -1609,1609,"crediti per ritenute subite ",16,"account_type_receivable","other",TRUE -1610,1610,"crediti per cauzioni ",16,"account_type_receivable","other",TRUE -1620,1620,"personale c/acconti ",16,"account_type_receivable","other",TRUE -1630,1630,"crediti v/istituti previdenziali ",16,"account_type_receivable","other",TRUE -1640,1640,"debitori diversi ",16,"account_type_receivable","receivable",TRUE -18,18,"DISPONIBILITÀ LIQUIDE ",1,"account_type_view","view",TRUE -1801,1801,"banche c/c ",18,"account_type_bank","liquidity",TRUE -1810,1810,"c/c postali ",18,"account_type_cash","liquidity",TRUE -1820,1820,"denaro in cassa ",18,"account_type_cash","liquidity",TRUE -1821,1821,"assegni ",18,"account_type_cash","liquidity",TRUE -1822,1822,"valori bollati ",18,"account_type_cash","liquidity",TRUE -19,19,"RATEI E RISCONTI ATTIVI ",1,"account_type_view","view",TRUE -1901,1901,"ratei attivi ",19,"account_type_view","other",TRUE -1902,1902,"risconti attivi ",19,"account_type_view","other",TRUE -2,2,"PASSIVO ",0,"account_type_view","view",TRUE -20,20,"PATRIMONIO NETTO ",2,"account_type_view","view",TRUE -2101,2101,"patrimonio netto ",20,"account_type_view","other",TRUE -2102,2102,"utile d'esercizio ",20,"account_type_receivable","receivable",TRUE -2103,2103,"perdita d'esercizio ",20,"account_type_payable","payable",TRUE -2104,2104,"prelevamenti extra gestione ",20,"account_type_view","other",TRUE -2105,2105,"titolare c/ritenute subite ",20,"account_type_view","other",TRUE -22,22,"FONDI PER RISCHI E ONERI ",2,"account_type_view","view",TRUE -2201,2201,"fondo per imposte ",22,"account_type_view","other",TRUE -2204,2204,"fondo responsabilità civile ",22,"account_type_view","other",TRUE -2205,2205,"fondo spese future ",22,"account_type_view","other",TRUE -2211,2211,"fondo manutenzioni programmate ",22,"account_type_view","other",TRUE -23,23,"TRATTAMENTO FINE RAPPORTO DI LAVORO ",2,"account_type_view","view",TRUE -2301,2301,"debiti per TFRL ",23,"account_type_view","other",TRUE -24,24,"DEBITI FINANZIARI ",2,"account_type_view","view",TRUE -2410,2410,"mutui passivi ",24,"account_type_payable","other",TRUE -2411,2411,"banche c/sovvenzioni ",24,"account_type_payable","other",TRUE -2420,2420,"banche c/c passivi ",24,"account_type_payable","other",TRUE -2421,2421,"banche c/RIBA all'incasso ",24,"account_type_payable","other",TRUE -2422,2422,"banche c/cambiali all'incasso ",24,"account_type_payable","other",TRUE -2423,2423,"banche c/anticipi su fatture ",24,"account_type_payable","other",TRUE -2440,2440,"debiti v/altri finanziatori ",24,"account_type_payable","other",TRUE -25,25,"DEBITI COMMERCIALI ",2,"account_type_view","view",TRUE -2501,2501,"debiti v/fornitori ",25,"account_type_payable","payable",TRUE -2503,2503,"cambiali passive ",25,"account_type_payable","other",TRUE -2520,2520,"fatture da ricevere ",25,"account_type_payable","other",TRUE -2521,2521,"debiti da liquidare ",25,"account_type_payable","other",TRUE -2530,2530,"clienti c/acconti ",25,"account_type_payable","payable",TRUE -26,26,"DEBITI DIVERSI ",2,"account_type_view","view",TRUE -2601,2601,"IVA n/debito ",26,"account_type_payable","other",TRUE -2602,2602,"debiti per ritenute da versare ",26,"account_type_payable","other",TRUE -2605,2605,"erario c/IVA ",26,"account_type_payable","other",TRUE -2606,2606,"debiti per imposte ",26,"account_type_payable","other",TRUE -2619,2619,"debiti per cauzioni ",26,"account_type_payable","other",TRUE -2620,2620,"personale c/retribuzioni ",26,"account_type_payable","other",TRUE -2621,2621,"personale c/liquidazioni ",26,"account_type_payable","other",TRUE -2622,2622,"clienti c/cessione ",26,"account_type_payable","other",TRUE -2630,2630,"debiti v/istituti previdenziali ",26,"account_type_payable","other",TRUE -2640,2640,"creditori diversi ",26,"account_type_payable","payable",TRUE -27,27,"RATEI E RISCONTI PASSIVI ",2,"account_type_view","view",TRUE -2701,2701,"ratei passivi ",27,"account_type_view","other",TRUE -2702,2702,"risconti passivi ",27,"account_type_view","other",TRUE -28,28,"CONTI TRANSITORI E DIVERSI ",2,"account_type_view","view",TRUE -2801,2801,"bilancio di apertura ",28,"account_type_view","other",TRUE -2802,2802,"bilancio di chiusura ",28,"account_type_view","other",TRUE -2810,2810,"IVA c/liquidazioni ",28,"account_type_view","other",TRUE -2811,2811,"istituti previdenziali ",28,"account_type_view","other",TRUE -2820,2820,"banca ... c/c ",28,"account_type_view","other",TRUE -2821,2821,"banca ... c/c ",28,"account_type_view","other",TRUE -2822,2822,"banca ... c/c ",28,"account_type_view","other",TRUE -29,29,"CONTI DEI SISTEMI SUPPLEMENTARI ",2,"account_type_view","view",TRUE -2901,2901,"beni di terzi ",29,"account_type_view","other",TRUE -2902,2902,"depositanti beni ",29,"account_type_view","other",TRUE -2911,2911,"merci da ricevere ",29,"account_type_view","other",TRUE -2912,2912,"fornitori c/impegni ",29,"account_type_view","other",TRUE -2913,2913,"impegni per beni in leasing ",29,"account_type_view","other",TRUE -2914,2914,"creditori c/leasing ",29,"account_type_view","other",TRUE -2916,2916,"clienti c/impegni ",29,"account_type_view","other",TRUE -2917,2917,"merci da consegnare ",29,"account_type_view","other",TRUE -2921,2921,"rischi per effetti scontati ",29,"account_type_view","other",TRUE -2922,2922,"banche c/effetti scontati ",29,"account_type_view","other",TRUE -2926,2926,"rischi per fideiussioni ",29,"account_type_view","other",TRUE -2927,2927,"creditori per fideiussioni ",29,"account_type_view","other",TRUE -2931,2931,"rischi per avalli ",29,"account_type_view","other",TRUE -2932,2932,"creditori per avalli ",29,"account_type_view","other",TRUE -3,3,"VALORE DELLA PRODUZIONE ",0,"account_type_view","view",TRUE -31,31,"VENDITE E PRESTAZIONI ",3,"account_type_view","view",TRUE -3101,3101,"merci c/vendite ",31,"account_type_income","other",TRUE -3103,3103,"rimborsi spese di vendita ",31,"account_type_income","other",TRUE -3110,3110,"resi su vendite ",31,"account_type_income","other",TRUE -3111,3111,"ribassi e abbuoni passivi ",31,"account_type_income","other",TRUE -3112,3112,"premi su vendite ",31,"account_type_income","other",TRUE -32,32,"RICAVI E PROVENTI DIVERSI ",3,"account_type_view","view",TRUE -3201,3201,"fitti attivi ",32,"account_type_income","other",TRUE -3202,3202,"proventi vari ",32,"account_type_income","other",TRUE -3210,3210,"arrotondamenti attivi ",32,"account_type_income","other",TRUE -3220,3220,"plusvalenze ordinarie diverse ",32,"account_type_income","other",TRUE -3230,3230,"sopravvenienze attive ordinarie diverse ",32,"account_type_income","other",TRUE -3240,3240,"insussistenze attive ordinarie diverse ",32,"account_type_income","other",TRUE -4,4,"COSTI DELLA PRODUZIONE ",0,"account_type_view","view",TRUE -41,41,"COSTO DEL VENDUTO ",4,"account_type_view","view",TRUE -4101,4101,"merci c/acquisti ",41,"account_type_expense","other",TRUE -4102,4102,"materie di consumo c/acquisti ",41,"account_type_expense","other",TRUE -4105,4105,"merci c/apporti ",41,"account_type_expense","other",TRUE -4110,4110,"resi su acquisti ",41,"account_type_expense","other",TRUE -4111,4111,"ribassi e abbuoni attivi ",41,"account_type_expense","other",TRUE -4112,4112,"premi su acquisti ",41,"account_type_expense","other",TRUE -4121,4121,"merci c/esistenze iniziali ",41,"account_type_expense","other",TRUE -4122,4122,"materie di consumo c/esistenze iniziali ",41,"account_type_expense","other",TRUE -4131,4131,"merci c/rimanenze finali ",41,"account_type_expense","other",TRUE -4132,4132,"materie di consumo c/rimanenze finali ",41,"account_type_expense","other",TRUE -42,42,"COSTI PER SERVIZI ",4,"account_type_view","view",TRUE -4201,4201,"costi di trasporto ",42,"account_type_expense","other",TRUE -4202,4202,"costi per energia ",42,"account_type_expense","other",TRUE -4203,4203,"costi di pubblicità ",42,"account_type_expense","other",TRUE -4204,4204,"costi di consulenze ",42,"account_type_expense","other",TRUE -4205,4205,"costi postali ",42,"account_type_expense","other",TRUE -4206,4206,"costi telefonici ",42,"account_type_expense","other",TRUE -4207,4207,"costi di assicurazione ",42,"account_type_expense","other",TRUE -4208,4208,"costi di vigilanza ",42,"account_type_expense","other",TRUE -4209,4209,"costi per i locali ",42,"account_type_expense","other",TRUE -4210,4210,"costi di esercizio automezzi ",42,"account_type_expense","other",TRUE -4211,4211,"costi di manutenzione e riparazione ",42,"account_type_expense","other",TRUE -4212,4212,"provvigioni passive ",42,"account_type_expense","other",TRUE -4213,4213,"spese di incasso ",42,"account_type_expense","other",TRUE -43,43,"COSTI PER GODIMENTO BENI DI TERZI ",4,"account_type_view","view",TRUE -4301,4301,"fitti passivi ",43,"account_type_expense","other",TRUE -4302,4302,"canoni di leasing ",43,"account_type_expense","other",TRUE -44,44,"COSTI PER IL PERSONALE ",4,"account_type_view","view",TRUE -4401,4401,"salari e stipendi ",44,"account_type_expense","other",TRUE -4402,4402,"oneri sociali ",44,"account_type_expense","other",TRUE -4403,4403,"TFRL ",44,"account_type_expense","other",TRUE -4404,4404,"altri costi per il personale ",44,"account_type_expense","other",TRUE -45,45,"AMMORTAMENTI IMMOBILIZZAZIONI IMMATERIALI ",4,"account_type_view","view",TRUE -4501,4501,"ammortamento costi di impianto ",45,"account_type_view","other",TRUE -4506,4506,"ammortamento software ",45,"account_type_view","other",TRUE -4508,4508,"ammortamento avviamento ",45,"account_type_view","other",TRUE -46,46,"AMMORTAMENTI IMMOBILIZZAZIONI MATERIALI ",4,"account_type_view","view",TRUE -4601,4601,"ammortamento fabbricati ",46,"account_type_view","other",TRUE -4602,4602,"ammortamento impianti e macchinari ",46,"account_type_view","other",TRUE -4604,4604,"ammortamento attrezzature commerciali ",46,"account_type_view","other",TRUE -4605,4605,"ammortamento macchine d'ufficio ",46,"account_type_view","other",TRUE -4606,4606,"ammortamento arredamento ",46,"account_type_view","other",TRUE -4607,4607,"ammortamento automezzi ",46,"account_type_view","other",TRUE -4608,4608,"ammortamento imballaggi durevoli ",46,"account_type_view","other",TRUE -47,47,"SVALUTAZIONI ",4,"account_type_view","view",TRUE -4701,4701,"svalutazioni immobilizzazioni immateriali ",47,"account_type_view","other",TRUE -4702,4702,"svalutazioni immobilizzazioni materiali ",47,"account_type_view","other",TRUE -4706,4706,"svalutazione crediti ",47,"account_type_view","other",TRUE -48,48,"ACCANTONAMENTI ",4,"account_type_view","view",TRUE -481,481,"ACCANTONAMENTI PER RISCHI ",48,"account_type_view","view",TRUE -4814,4814,"accantonamento per responsabilità civile ",481,"account_type_view","other",TRUE -482,482,"ALTRI ACCANTONAMENTI ",48,"account_type_view","view",TRUE -4821,4821,"accantonamento per spese future ",482,"account_type_view","other",TRUE -4823,4823,"accantonamento per manutenzioni programmate ",482,"account_type_view","other",TRUE -49,49,"ONERI DIVERSI ",4,"account_type_view","view",TRUE -4901,4901,"oneri fiscali diversi ",49,"account_type_view","other",TRUE -4903,4903,"oneri vari ",49,"account_type_view","other",TRUE -4905,4905,"perdite su crediti ",49,"account_type_view","other",TRUE -4910,4910,"arrotondamenti passivi ",49,"account_type_view","other",TRUE -4920,4920,"minusvalenze ordinarie diverse ",49,"account_type_view","other",TRUE -4930,4930,"sopravvenienze passive ordinarie diverse ",49,"account_type_view","other",TRUE -4940,4940,"insussistenze passive ordinarie diverse ",49,"account_type_view","other",TRUE -5,5,"PROVENTI E ONERI FINANZIARI ",0,"account_type_view","view",TRUE -51,51,"PROVENTI FINANZIARI ",5,"account_type_view","view",TRUE -5110,5110,"interessi attivi v/clienti ",51,"account_type_view","other",TRUE -5115,5115,"interessi attivi bancari ",51,"account_type_view","other",TRUE -5116,5116,"interessi attivi postali ",51,"account_type_view","other",TRUE -5140,5140,"proventi finanziari diversi ",51,"account_type_view","other",TRUE -52,52,"ONERI FINANZIARI ",5,"account_type_view","view",TRUE -5201,5201,"interessi passivi v/fornitori ",52,"account_type_view","other",TRUE -5202,5202,"interessi passivi bancari ",52,"account_type_view","other",TRUE -5203,5203,"sconti passivi bancari ",52,"account_type_view","other",TRUE -5210,5210,"interessi passivi su mutui ",52,"account_type_view","other",TRUE -5240,5240,"oneri finanziari diversi ",52,"account_type_view","other",TRUE -7,7,"PROVENTI E ONERI STRAORDINARI ",0,"account_type_view","view",TRUE -71,71,"PROVENTI STRAORDINARI ",7,"account_type_view","view",TRUE -7101,7101,"plusvalenze straordinarie ",71,"account_type_view","other",TRUE -7102,7102,"sopravvenienze attive straordinarie ",71,"account_type_view","other",TRUE -7103,7103,"insussistenze attive straordinarie ",71,"account_type_view","other",TRUE -72,72,"ONERI STRAORDINARI ",7,"account_type_view","view",TRUE -7201,7201,"minusvalenze straordinarie ",72,"account_type_view","other",TRUE -7202,7202,"sopravvenienze passive straordinarie ",72,"account_type_view","other",TRUE -7203,7203,"insussistenze passive straordinarie ",72,"account_type_view","other",TRUE -7204,7204,"imposte esercizi precedenti ",72,"account_type_view","other",TRUE -81,81,"IMPOSTE DELL'ESERCIZIO ",7,"account_type_view","view",TRUE -8101,8101,"imposte dell'esercizio ",81,"account_type_view","other",TRUE -91,91,"CONTI DI RISULTATO ",7,"account_type_view","view",TRUE -9101,9101,"conto di risultato economico ",91,"account_type_view","other",TRUE +"0","0","Azienda",,"account_type_view","view","FALSE" +"1","1","ATTIVO ","0","account_type_view","view","TRUE" +"11","11","IMMOBILIZZAZIONI IMMATERIALI ","1","account_type_view","view","TRUE" +"1101","1101","costi di impianto ","11","account_type_asset","other","TRUE" +"1106","1106","software ","11","account_type_asset","other","TRUE" +"1108","1108","avviamento ","11","account_type_asset","other","TRUE" +"1111","1111","fondo ammortamento costi di impianto ","11","account_type_asset","other","TRUE" +"1116","1116","fondo ammortamento software ","11","account_type_asset","other","TRUE" +"1118","1118","fondo ammortamento avviamento ","11","account_type_asset","other","TRUE" +"12","12","IMMOBILIZZAZIONI MATERIALI ","1","account_type_view","view","TRUE" +"1201","1201","fabbricati ","12","account_type_asset","other","TRUE" +"1202","1202","impianti e macchinari ","12","account_type_asset","other","TRUE" +"1204","1204","attrezzature commerciali ","12","account_type_asset","other","TRUE" +"1205","1205","macchine d'ufficio ","12","account_type_asset","other","TRUE" +"1206","1206","arredamento ","12","account_type_asset","other","TRUE" +"1207","1207","automezzi ","12","account_type_asset","other","TRUE" +"1208","1208","imballaggi durevoli ","12","account_type_asset","other","TRUE" +"1211","1211","fondo ammortamento fabbricati ","12","account_type_asset","other","TRUE" +"1212","1212","fondo ammortamento impianti e macchinari ","12","account_type_asset","other","TRUE" +"1214","1214","fondo ammortamento attrezzature commerciali ","12","account_type_asset","other","TRUE" +"1215","1215","fondo ammortamento macchine d'ufficio ","12","account_type_asset","other","TRUE" +"1216","1216","fondo ammortamento arredamento ","12","account_type_asset","other","TRUE" +"1217","1217","fondo ammortamento automezzi ","12","account_type_asset","other","TRUE" +"1218","1218","fondo ammortamento imballaggi durevoli ","12","account_type_asset","other","TRUE" +"1220","1220","fornitori immobilizzazioni c/acconti ","12","account_type_asset","other","TRUE" +"13","13","IMMOBILIZZAZIONI FINANZIARIE ","1","account_type_view","view","TRUE" +"1301","1301","mutui attivi ","13","account_type_asset","other","TRUE" +"14","14","RIMANENZE ","1","account_type_view","view","TRUE" +"1401","1401","materie di consumo ","14","account_type_asset","other","TRUE" +"1404","1404","merci ","14","account_type_asset","other","TRUE" +"1410","1410","fornitori c/acconti ","14","account_type_asset","other","TRUE" +"15","15","CREDITI COMMERCIALI ","1","account_type_view","view","TRUE" +"1501","1501","crediti v/clienti ","15","account_type_receivable","receivable","TRUE" +"1502","1502","crediti commerciali diversi ","15","account_type_receivable","other","TRUE" +"1503","1503","clienti c/spese anticipate ","15","account_type_receivable","receivable","TRUE" +"1505","1505","cambiali attive ","15","account_type_receivable","other","TRUE" +"1506","1506","cambiali allo sconto ","15","account_type_receivable","other","TRUE" +"1507","1507","cambiali all'incasso ","15","account_type_receivable","other","TRUE" +"1509","1509","fatture da emettere ","15","account_type_receivable","other","TRUE" +"1510","1510","crediti insoluti ","15","account_type_receivable","other","TRUE" +"1511","1511","cambiali insolute ","15","account_type_receivable","other","TRUE" +"1531","1531","crediti da liquidare ","15","account_type_receivable","other","TRUE" +"1540","1540","fondo svalutazione crediti ","15","account_type_receivable","other","TRUE" +"1541","1541","fondo rischi su crediti ","15","account_type_receivable","other","TRUE" +"16","16","CREDITI DIVERSI ","1","account_type_view","view","TRUE" +"1601","1601","IVA n/credito ","16","account_type_tax","other","TRUE" +"1602","1602","IVA c/acconto ","16","account_type_tax","other","TRUE" +"1605","1605","crediti per IVA ","16","account_type_tax","other","TRUE" +"1607","1607","imposte c/acconto ","16","account_type_tax","other","TRUE" +"1608","1608","crediti per imposte ","16","account_type_tax","other","TRUE" +"1609","1609","crediti per ritenute subite ","16","account_type_asset","other","TRUE" +"1610","1610","crediti per cauzioni ","16","account_type_asset","other","TRUE" +"1620","1620","personale c/acconti ","16","account_type_asset","other","TRUE" +"1630","1630","crediti v/istituti previdenziali ","16","account_type_asset","other","TRUE" +"1640","1640","debitori diversi ","16","account_type_receivable","receivable","TRUE" +"18","18","DISPONIBILITÀ LIQUIDE ","1","account_type_view","view","TRUE" +"1801","1801","banche c/c ","18","account_type_bank","liquidity","TRUE" +"1810","1810","c/c postali ","18","account_type_cash","liquidity","TRUE" +"1820","1820","denaro in cassa ","18","account_type_cash","liquidity","TRUE" +"1821","1821","assegni ","18","account_type_cash","liquidity","TRUE" +"1822","1822","valori bollati ","18","account_type_cash","liquidity","TRUE" +"19","19","RATEI E RISCONTI ATTIVI ","1","account_type_view","view","TRUE" +"1901","1901","ratei attivi ","19","account_type_asset","other","TRUE" +"1902","1902","risconti attivi ","19","account_type_asset","other","TRUE" +"2","2","PASSIVO ","0","account_type_view","view","TRUE" +"20","20","PATRIMONIO NETTO ","2","account_type_view","view","TRUE" +"2101","2101","patrimonio netto ","20","account_type_asset","other","TRUE" +"2102","2102","utile d'esercizio ","20","account_type_asset","other","TRUE" +"2103","2103","perdita d'esercizio ","20","account_type_asset","other","TRUE" +"2104","2104","prelevamenti extra gestione ","20","account_type_asset","other","TRUE" +"2105","2105","titolare c/ritenute subite ","20","account_type_asset","other","TRUE" +"22","22","FONDI PER RISCHI E ONERI ","2","account_type_view","view","TRUE" +"2201","2201","fondo per imposte ","22","account_type_asset","other","TRUE" +"2204","2204","fondo responsabilità civile ","22","account_type_asset","other","TRUE" +"2205","2205","fondo spese future ","22","account_type_asset","other","TRUE" +"2211","2211","fondo manutenzioni programmate ","22","account_type_asset","other","TRUE" +"23","23","TRATTAMENTO FINE RAPPORTO DI LAVORO ","2","account_type_view","view","TRUE" +"2301","2301","debiti per TFRL ","23","account_type_asset","other","TRUE" +"24","24","DEBITI FINANZIARI ","2","account_type_view","view","TRUE" +"2410","2410","mutui passivi ","24","account_type_asset","other","TRUE" +"2411","2411","banche c/sovvenzioni ","24","account_type_asset","other","TRUE" +"2420","2420","banche c/c passivi ","24","account_type_asset","other","TRUE" +"2421","2421","banche c/RIBA all'incasso ","24","account_type_asset","other","TRUE" +"2422","2422","banche c/cambiali all'incasso ","24","account_type_asset","other","TRUE" +"2423","2423","banche c/anticipi su fatture ","24","account_type_asset","other","TRUE" +"2440","2440","debiti v/altri finanziatori ","24","account_type_asset","other","TRUE" +"25","25","DEBITI COMMERCIALI ","2","account_type_view","view","TRUE" +"2501","2501","debiti v/fornitori ","25","account_type_payable","payable","TRUE" +"2503","2503","cambiali passive ","25","account_type_asset","other","TRUE" +"2520","2520","fatture da ricevere ","25","account_type_asset","other","TRUE" +"2521","2521","debiti da liquidare ","25","account_type_asset","other","TRUE" +"2530","2530","clienti c/acconti ","25","account_type_payable","payable","TRUE" +"26","26","DEBITI DIVERSI ","2","account_type_view","view","TRUE" +"2601","2601","IVA n/debito ","26","account_type_tax","other","TRUE" +"2602","2602","debiti per ritenute da versare ","26","account_type_tax","other","TRUE" +"2605","2605","erario c/IVA ","26","account_type_tax","other","TRUE" +"2606","2606","debiti per imposte ","26","account_type_tax","other","TRUE" +"2619","2619","debiti per cauzioni ","26","account_type_asset","other","TRUE" +"2620","2620","personale c/retribuzioni ","26","account_type_asset","other","TRUE" +"2621","2621","personale c/liquidazioni ","26","account_type_asset","other","TRUE" +"2622","2622","clienti c/cessione ","26","account_type_asset","other","TRUE" +"2630","2630","debiti v/istituti previdenziali ","26","account_type_asset","other","TRUE" +"2640","2640","creditori diversi ","26","account_type_payable","payable","TRUE" +"27","27","RATEI E RISCONTI PASSIVI ","2","account_type_view","view","TRUE" +"2701","2701","ratei passivi ","27","account_type_asset","other","TRUE" +"2702","2702","risconti passivi ","27","account_type_asset","other","TRUE" +"28","28","CONTI TRANSITORI E DIVERSI ","2","account_type_view","view","TRUE" +"2801","2801","bilancio di apertura ","28","account_type_asset","other","TRUE" +"2802","2802","bilancio di chiusura ","28","account_type_asset","other","TRUE" +"2810","2810","IVA c/liquidazioni ","28","account_type_asset","other","TRUE" +"2811","2811","istituti previdenziali ","28","account_type_asset","other","TRUE" +"2820","2820","banca ... c/c ","28","account_type_asset","other","TRUE" +"2821","2821","banca ... c/c ","28","account_type_asset","other","TRUE" +"2822","2822","banca ... c/c ","28","account_type_asset","other","TRUE" +"29","29","CONTI DEI SISTEMI SUPPLEMENTARI ","2","account_type_view","view","TRUE" +"2901","2901","beni di terzi ","29","account_type_asset","other","TRUE" +"2902","2902","depositanti beni ","29","account_type_asset","other","TRUE" +"2911","2911","merci da ricevere ","29","account_type_asset","other","TRUE" +"2912","2912","fornitori c/impegni ","29","account_type_asset","other","TRUE" +"2913","2913","impegni per beni in leasing ","29","account_type_asset","other","TRUE" +"2914","2914","creditori c/leasing ","29","account_type_asset","other","TRUE" +"2916","2916","clienti c/impegni ","29","account_type_asset","other","TRUE" +"2917","2917","merci da consegnare ","29","account_type_asset","other","TRUE" +"2921","2921","rischi per effetti scontati ","29","account_type_asset","other","TRUE" +"2922","2922","banche c/effetti scontati ","29","account_type_asset","other","TRUE" +"2926","2926","rischi per fideiussioni ","29","account_type_asset","other","TRUE" +"2927","2927","creditori per fideiussioni ","29","account_type_asset","other","TRUE" +"2931","2931","rischi per avalli ","29","account_type_asset","other","TRUE" +"2932","2932","creditori per avalli ","29","account_type_asset","other","TRUE" +"3","3","VALORE DELLA PRODUZIONE ","0","account_type_view","view","TRUE" +"31","31","VENDITE E PRESTAZIONI ","3","account_type_view","view","TRUE" +"3101","3101","merci c/vendite ","31","account_type_income","other","TRUE" +"3103","3103","rimborsi spese di vendita ","31","account_type_income","other","TRUE" +"3110","3110","resi su vendite ","31","account_type_income","other","TRUE" +"3111","3111","ribassi e abbuoni passivi ","31","account_type_income","other","TRUE" +"3112","3112","premi su vendite ","31","account_type_income","other","TRUE" +"32","32","RICAVI E PROVENTI DIVERSI ","3","account_type_view","view","TRUE" +"3201","3201","fitti attivi ","32","account_type_income","other","TRUE" +"3202","3202","proventi vari ","32","account_type_income","other","TRUE" +"3210","3210","arrotondamenti attivi ","32","account_type_income","other","TRUE" +"3220","3220","plusvalenze ordinarie diverse ","32","account_type_income","other","TRUE" +"3230","3230","sopravvenienze attive ordinarie diverse ","32","account_type_income","other","TRUE" +"3240","3240","insussistenze attive ordinarie diverse ","32","account_type_income","other","TRUE" +"4","4","COSTI DELLA PRODUZIONE ","0","account_type_view","view","TRUE" +"41","41","COSTO DEL VENDUTO ","4","account_type_view","view","TRUE" +"4101","4101","merci c/acquisti ","41","account_type_expense","other","TRUE" +"4102","4102","materie di consumo c/acquisti ","41","account_type_expense","other","TRUE" +"4105","4105","merci c/apporti ","41","account_type_expense","other","TRUE" +"4110","4110","resi su acquisti ","41","account_type_expense","other","TRUE" +"4111","4111","ribassi e abbuoni attivi ","41","account_type_expense","other","TRUE" +"4112","4112","premi su acquisti ","41","account_type_expense","other","TRUE" +"4121","4121","merci c/esistenze iniziali ","41","account_type_expense","other","TRUE" +"4122","4122","materie di consumo c/esistenze iniziali ","41","account_type_expense","other","TRUE" +"4131","4131","merci c/rimanenze finali ","41","account_type_expense","other","TRUE" +"4132","4132","materie di consumo c/rimanenze finali ","41","account_type_expense","other","TRUE" +"42","42","COSTI PER SERVIZI ","4","account_type_view","view","TRUE" +"4201","4201","costi di trasporto ","42","account_type_expense","other","TRUE" +"4202","4202","costi per energia ","42","account_type_expense","other","TRUE" +"4203","4203","costi di pubblicità ","42","account_type_expense","other","TRUE" +"4204","4204","costi di consulenze ","42","account_type_expense","other","TRUE" +"4205","4205","costi postali ","42","account_type_expense","other","TRUE" +"4206","4206","costi telefonici ","42","account_type_expense","other","TRUE" +"4207","4207","costi di assicurazione ","42","account_type_expense","other","TRUE" +"4208","4208","costi di vigilanza ","42","account_type_expense","other","TRUE" +"4209","4209","costi per i locali ","42","account_type_expense","other","TRUE" +"4210","4210","costi di esercizio automezzi ","42","account_type_expense","other","TRUE" +"4211","4211","costi di manutenzione e riparazione ","42","account_type_expense","other","TRUE" +"4212","4212","provvigioni passive ","42","account_type_expense","other","TRUE" +"4213","4213","spese di incasso ","42","account_type_expense","other","TRUE" +"43","43","COSTI PER GODIMENTO BENI DI TERZI ","4","account_type_view","view","TRUE" +"4301","4301","fitti passivi ","43","account_type_expense","other","TRUE" +"4302","4302","canoni di leasing ","43","account_type_expense","other","TRUE" +"44","44","COSTI PER IL PERSONALE ","4","account_type_view","view","TRUE" +"4401","4401","salari e stipendi ","44","account_type_expense","other","TRUE" +"4402","4402","oneri sociali ","44","account_type_expense","other","TRUE" +"4403","4403","TFRL ","44","account_type_expense","other","TRUE" +"4404","4404","altri costi per il personale ","44","account_type_expense","other","TRUE" +"45","45","AMMORTAMENTI IMMOBILIZZAZIONI IMMATERIALI ","4","account_type_view","view","TRUE" +"4501","4501","ammortamento costi di impianto ","45","account_type_p_l","other","TRUE" +"4506","4506","ammortamento software ","45","account_type_p_l","other","TRUE" +"4508","4508","ammortamento avviamento ","45","account_type_p_l","other","TRUE" +"46","46","AMMORTAMENTI IMMOBILIZZAZIONI MATERIALI ","4","account_type_view","view","TRUE" +"4601","4601","ammortamento fabbricati ","46","account_type_p_l","other","TRUE" +"4602","4602","ammortamento impianti e macchinari ","46","account_type_p_l","other","TRUE" +"4604","4604","ammortamento attrezzature commerciali ","46","account_type_p_l","other","TRUE" +"4605","4605","ammortamento macchine d'ufficio ","46","account_type_p_l","other","TRUE" +"4606","4606","ammortamento arredamento ","46","account_type_p_l","other","TRUE" +"4607","4607","ammortamento automezzi ","46","account_type_p_l","other","TRUE" +"4608","4608","ammortamento imballaggi durevoli ","46","account_type_p_l","other","TRUE" +"47","47","SVALUTAZIONI ","4","account_type_view","view","TRUE" +"4701","4701","svalutazioni immobilizzazioni immateriali ","47","account_type_p_l","other","TRUE" +"4702","4702","svalutazioni immobilizzazioni materiali ","47","account_type_p_l","other","TRUE" +"4706","4706","svalutazione crediti ","47","account_type_p_l","other","TRUE" +"48","48","ACCANTONAMENTI ","4","account_type_view","view","TRUE" +"481","481","ACCANTONAMENTI PER RISCHI ","48","account_type_view","view","TRUE" +"4814","4814","accantonamento per responsabilità civile ","481","account_type_p_l","other","TRUE" +"482","482","ALTRI ACCANTONAMENTI ","48","account_type_view","view","TRUE" +"4821","4821","accantonamento per spese future ","482","account_type_p_l","other","TRUE" +"4823","4823","accantonamento per manutenzioni programmate ","482","account_type_p_l","other","TRUE" +"49","49","ONERI DIVERSI ","4","account_type_view","view","TRUE" +"4901","4901","oneri fiscali diversi ","49","account_type_p_l","other","TRUE" +"4903","4903","oneri vari ","49","account_type_p_l","other","TRUE" +"4905","4905","perdite su crediti ","49","account_type_p_l","other","TRUE" +"4910","4910","arrotondamenti passivi ","49","account_type_p_l","other","TRUE" +"4920","4920","minusvalenze ordinarie diverse ","49","account_type_p_l","other","TRUE" +"4930","4930","sopravvenienze passive ordinarie diverse ","49","account_type_p_l","other","TRUE" +"4940","4940","insussistenze passive ordinarie diverse ","49","account_type_p_l","other","TRUE" +"5","5","PROVENTI E ONERI FINANZIARI ","0","account_type_view","view","TRUE" +"51","51","PROVENTI FINANZIARI ","5","account_type_view","view","TRUE" +"5110","5110","interessi attivi v/clienti ","51","account_type_p_l","other","TRUE" +"5115","5115","interessi attivi bancari ","51","account_type_p_l","other","TRUE" +"5116","5116","interessi attivi postali ","51","account_type_p_l","other","TRUE" +"5140","5140","proventi finanziari diversi ","51","account_type_p_l","other","TRUE" +"52","52","ONERI FINANZIARI ","5","account_type_view","view","TRUE" +"5201","5201","interessi passivi v/fornitori ","52","account_type_p_l","other","TRUE" +"5202","5202","interessi passivi bancari ","52","account_type_p_l","other","TRUE" +"5203","5203","sconti passivi bancari ","52","account_type_p_l","other","TRUE" +"5210","5210","interessi passivi su mutui ","52","account_type_p_l","other","TRUE" +"5240","5240","oneri finanziari diversi ","52","account_type_p_l","other","TRUE" +"7","7","PROVENTI E ONERI STRAORDINARI ","0","account_type_view","view","TRUE" +"71","71","PROVENTI STRAORDINARI ","7","account_type_view","view","TRUE" +"7101","7101","plusvalenze straordinarie ","71","account_type_p_l","other","TRUE" +"7102","7102","sopravvenienze attive straordinarie ","71","account_type_p_l","other","TRUE" +"7103","7103","insussistenze attive straordinarie ","71","account_type_p_l","other","TRUE" +"72","72","ONERI STRAORDINARI ","7","account_type_view","view","TRUE" +"7201","7201","minusvalenze straordinarie ","72","account_type_p_l","other","TRUE" +"7202","7202","sopravvenienze passive straordinarie ","72","account_type_p_l","other","TRUE" +"7203","7203","insussistenze passive straordinarie ","72","account_type_p_l","other","TRUE" +"7204","7204","imposte esercizi precedenti ","72","account_type_p_l","other","TRUE" +"8","8","IMPOSTE DELL'ESERCIZIO ","0","account_type_view","view","TRUE" +"8101","8101","imposte dell'esercizio ","8","account_type_p_l","other","TRUE" +"9","9","CONTI DI RISULTATO ","0","account_type_view","view","TRUE" +"9101","9101","conto di risultato economico ","9","account_type_p_l","other","TRUE" +"9102","9102","stato patrimoniale","9","account_type_p_l","other","TRUE" diff --git a/addons/l10n_it/data/account.account.type.csv b/addons/l10n_it/data/account.account.type.csv index 273ff71eb05..36eeebbbe89 100644 --- a/addons/l10n_it/data/account.account.type.csv +++ b/addons/l10n_it/data/account.account.type.csv @@ -1,11 +1,11 @@ "id","code","name","close_method","report_type" -"account_type_receivable","receivable","Debiti","unreconciled","liability" -"account_type_payable","payable","Crediti","unreconciled","asset" +"account_type_receivable","receivable","Crediti","unreconciled","asset" +"account_type_payable","payable","Debiti","unreconciled","liability" "account_type_view","view","Gerarchia","none", "account_type_income","income","Entrate","none","income" "account_type_expense","expense","Uscite","none","expense" -"account_type_tax","tax","Tasse","none", +"account_type_tax","tax","Tasse","balance", "account_type_cash","cash","Liquidità","balance","asset" -"account_type_asset","asset","Beni","none","asset" +"account_type_asset","asset","Beni","balance","asset" "account_type_bank","bank","Banca","balance","asset" -"account_type_equity","equity","Capitale","none","asset" +"account_type_p_l","p_l","Conto Economico","none", diff --git a/addons/l10n_it/data/account.tax.code.template.csv b/addons/l10n_it/data/account.tax.code.template.csv index 288f169f4ab..40f0545aff9 100644 --- a/addons/l10n_it/data/account.tax.code.template.csv +++ b/addons/l10n_it/data/account.tax.code.template.csv @@ -26,6 +26,8 @@ "IVC4Idet50","template_impcode_pagata_4det50","IVA a credito 4% detraibile 50% (imponibile)","template_impcode_pagata" "IVC20","template_ivacode_pagata_20","IVA a credito 20%","template_ivacode_pagata" "IVC20I","template_impcode_pagata_20","IVA a credito 20% (imponibile)","template_impcode_pagata" +"IVC21","template_ivacode_pagata_21","IVA a credito 21%","template_ivacode_pagata" +"IVC21I","template_impcode_pagata_21","IVA a credito 21% (imponibile)","template_impcode_pagata" "IVC4","template_ivacode_pagata_4","IVA a credito 4%","template_ivacode_pagata" "IVC4I","template_impcode_pagata_4","IVA a credito 4% (imponibile)","template_impcode_pagata" "IVC12","template_ivacode_pagata_12","IVA a credito 12%","template_ivacode_pagata" @@ -40,9 +42,21 @@ "IVD10I","template_impcode_riscossa_10","IVA a debito 10% (imponibile)","template_impcode_riscossa" "IVD20","template_ivacode_riscossa_20","IVA a debito 20%","template_ivacode_riscossa" "IVD20I","template_impcode_riscossa_20","IVA a debito 20% (imponibile)","template_impcode_riscossa" +"IVD21","template_ivacode_riscossa_21","IVA a debito 21%","template_ivacode_riscossa" +"IVD21I","template_impcode_riscossa_21","IVA a debito 21% (imponibile)","template_impcode_riscossa" "IVD4","template_ivacode_riscossa_4","IVA a debito 4%","template_ivacode_riscossa" "IVD4I","template_impcode_riscossa_4","IVA a debito 4% (imponibile)","template_impcode_riscossa" "IVD12","template_ivacode_riscossa_12","IVA a debito 12%","template_ivacode_riscossa" "IVD12I","template_impcode_riscossa_12","IVA a debito 12% (imponibile)","template_impcode_riscossa" "IVD2","template_ivacode_riscossa_2","IVA a debito 2%","template_ivacode_riscossa" "IVD2I","template_impcode_riscossa_2","IVA a debito 2% (imponibile)","template_impcode_riscossa" +"IVC21ind","template_ivacode_pagata_21ind","IVA a credito 21% indetraibile","template_ivacode_pagata" +"IVC21Iind","template_impcode_pagata_21ind","IVA a credito 21% indetraibile (imponibile)","template_impcode_pagata" +"IVC21det10","template_ivacode_pagata_21det10","IVA a credito 21% detraibile 10%","template_ivacode_pagata" +"IVC21Idet10","template_impcode_pagata_21det10","IVA a credito 21% detraibile 10% (imponibile)","template_impcode_pagata" +"IVC21det15","template_ivacode_pagata_21det15","IVA a credito 21% detraibile 15%","template_ivacode_pagata" +"IVC21Idet15","template_impcode_pagata_21det15","IVA a credito 21% detraibile 15% (imponibile)","template_impcode_pagata" +"IVC21det40","template_ivacode_pagata_21det40","IVA a credito 21% detraibile 40%","template_ivacode_pagata" +"IVC21Idet40","template_impcode_pagata_21det40","IVA a credito 21% detraibile 40% (imponibile)","template_impcode_pagata" +"IVC21det50","template_ivacode_pagata_21det50","IVA a credito 21% detraibile 50%","template_ivacode_pagata" +"IVC21Idet50","template_impcode_pagata_21det50","IVA a credito 21% detraibile 50% (imponibile)","template_impcode_pagata" diff --git a/addons/l10n_it/data/account.tax.template.csv b/addons/l10n_it/data/account.tax.template.csv index cf9caeeb0d4..641f495dd72 100644 --- a/addons/l10n_it/data/account.tax.template.csv +++ b/addons/l10n_it/data/account.tax.template.csv @@ -1,40 +1,64 @@ -"id","description","chart_template_id:id","name","amount","parent_id:id","child_depend","type","account_collected_id:id","account_paid_id:id","type_tax_use","base_code_id:id","tax_code_id:id","ref_base_code_id:id","ref_tax_code_id:id" -"20a","20a","l10n_it_chart_template_generic","Iva al 20% (debito)","0.2",,"False","percent","2601","2601","sale","template_impcode_riscossa_20","template_ivacode_riscossa_20","template_impcode_riscossa_20","template_ivacode_riscossa_20" -"20b","20b","l10n_it_chart_template_generic","Iva al 20% (credito)","0.2",,"False","percent","1601","1601","purchase","template_impcode_pagata_20","template_ivacode_pagata_20","template_impcode_pagata_20","template_ivacode_pagata_20" -"10a","10a","l10n_it_chart_template_generic","Iva al 10% (debito)","0.1",,"False","percent","2601","2601","sale","template_impcode_riscossa_10","template_ivacode_riscossa_10","template_impcode_riscossa_10","template_ivacode_riscossa_10" -"10b","10b","l10n_it_chart_template_generic","Iva al 10% (credito)","0.1",,"False","percent","1601","1601","purchase","template_impcode_pagata_10","template_ivacode_pagata_10","template_impcode_pagata_10","template_ivacode_pagata_10" -"10AO","10AO","l10n_it_chart_template_generic","Iva al 10% indetraibile","1",,"True","percent",,,"purchase",,,, -"10AOa","10AOa","l10n_it_chart_template_generic","Iva al 10% indetraibile (1)","0","10AO","False","percent","1601","1601","purchase","template_impcode_pagata_10ind","template_ivacode_pagata_10ind","template_impcode_pagata_10ind","template_ivacode_pagata_10ind" -"10AOb","10AOb","l10n_it_chart_template_generic","Iva al 10% indetraibile (2)","0.1","10AO","False","percent",,,"purchase",,,, -"12a","12a","l10n_it_chart_template_generic","Iva 12% (debito)","0.12",,"False","percent","2601","2601","sale","template_impcode_riscossa_12","template_ivacode_riscossa_12","template_impcode_riscossa_12","template_ivacode_riscossa_12" -"12b","12b","l10n_it_chart_template_generic","Iva 12% (credito)","0.12",,"False","percent","1601","1601","purchase","template_impcode_pagata_12","template_ivacode_pagata_12","template_impcode_pagata_12","template_ivacode_pagata_12" -"2010","2010","l10n_it_chart_template_generic","Iva al 20% detraibile 10%","1",,"True","percent",,,"purchase",,,, -"2010a","2010a","l10n_it_chart_template_generic","Iva al 20% detraibile 10% (1)","0.02","2010","False","percent","1601","1601","purchase","template_impcode_pagata_20det10","template_ivacode_pagata_20det10","template_impcode_pagata_20det10","template_ivacode_pagata_20det10" -"2010b","2010b","l10n_it_chart_template_generic","Iva al 20% detraibile 10% (2)","0.18","2010","False","percent",,,"purchase",,,, -"2015","2015","l10n_it_chart_template_generic","Iva al 20% detraibile 15%","1",,"True","percent",,,"purchase",,,, -"2015a","2015a","l10n_it_chart_template_generic","Iva al 20% detraibile 15% (1)","0.03","2015","False","percent","1601","1601","purchase","template_impcode_pagata_20det15","template_ivacode_pagata_20det15","template_impcode_pagata_20det15","template_ivacode_pagata_20det15" -"2015b","2015b","l10n_it_chart_template_generic","Iva al 20% detraibile 15% (2)","0.17","2015","False","percent",,,"purchase",,,, -"2040","2040","l10n_it_chart_template_generic","Iva al 20% detraibile 40%","1",,"True","percent",,,"purchase",,,, -"2040a","2040a","l10n_it_chart_template_generic","Iva al 20% detraibile 40% (1)","0.08","2040","False","percent","1601","1601","purchase","template_impcode_pagata_20det40","template_ivacode_pagata_20det40","template_impcode_pagata_20det40","template_ivacode_pagata_20det40" -"2040b","2040b","l10n_it_chart_template_generic","Iva al 20% detraibile 40% (2)","0.12","2040","False","percent",,,"purchase",,,, -"20AO","20AO","l10n_it_chart_template_generic","Iva al 20% indetraibile","1",,"True","percent",,,"purchase",,,, -"20AOa","20AOa","l10n_it_chart_template_generic","Iva al 20% indetraibile (1)","0","20AO","False","percent","1601","1601","purchase","template_impcode_pagata_20ind","template_ivacode_pagata_20ind","template_impcode_pagata_20ind","template_ivacode_pagata_20ind" -"20AOb","20AOb","l10n_it_chart_template_generic","Iva al 20% indetraibile (2)","0.2","20AO","False","percent",,,"purchase",,,, -"20I5","20I5","l10n_it_chart_template_generic","IVA al 20% detraibile al 50%","1",,"True","percent",,,"purchase",,,, -"20I5a","20I5a","l10n_it_chart_template_generic","IVA al 20% detraibile al 50% (1)","0.1","20I5","False","percent","1601","1601","purchase","template_impcode_pagata_20det50","template_ivacode_pagata_20det50","template_impcode_pagata_20det50","template_ivacode_pagata_20det50" -"20I5b","20I5b","l10n_it_chart_template_generic","IVA al 20% detraibile al 50% (2)","0.1","20I5","False","percent",,,"purchase",,,, -"22a","22a","l10n_it_chart_template_generic","Iva 2% (debito)","0.02",,"False","percent","2601","2601","sale","template_impcode_riscossa_2","template_ivacode_riscossa_2","template_impcode_riscossa_2","template_ivacode_riscossa_2" -"22b","22b","l10n_it_chart_template_generic","Iva 2% (credito)","0.02",,"False","percent","1601","1601","purchase","template_impcode_pagata_2","template_ivacode_pagata_2","template_impcode_pagata_2","template_ivacode_pagata_2" -"4a","4a","l10n_it_chart_template_generic","Iva 4% (debito)","0.04",,"False","percent","2601","2601","sale","template_impcode_riscossa_4","template_ivacode_riscossa_4","template_impcode_riscossa_4","template_ivacode_riscossa_4" -"4b","4b","l10n_it_chart_template_generic","Iva 4% (credito)","0.04",,"False","percent","1601","1601","purchase","template_impcode_pagata_4","template_ivacode_pagata_4","template_impcode_pagata_4","template_ivacode_pagata_4" -"4AO","4AO","l10n_it_chart_template_generic","Iva al 4% indetraibile","1",,"True","percent",,,"purchase",,,, -"4AOa","4AOa","l10n_it_chart_template_generic","Iva al 4% indetraibile (1)","0","4AO","False","percent","1601","1601","purchase","template_impcode_pagata_4ind","template_ivacode_pagata_4ind","template_impcode_pagata_4ind","template_ivacode_pagata_4ind" -"4AOb","4AOb","l10n_it_chart_template_generic","Iva al 4% indetraibile (2)","0.04","4AO","False","percent",,,"purchase",,,, -"10I5","10I5","l10n_it_chart_template_generic","IVA al 10% detraibile al 50%","1",,"True","percent",,,"purchase",,,, -"10I5a","10I5a","l10n_it_chart_template_generic","IVA al 10% detraibile al 50% (1)","0.05","10I5","False","percent","1601","1601","purchase","template_impcode_pagata_10det50","template_ivacode_pagata_10det50","template_impcode_pagata_10det50","template_ivacode_pagata_10det50" -"10I5b","10I5b","l10n_it_chart_template_generic","IVA al 10% detraibile al 50% (2)","0.05","10I5","False","percent",,,"purchase",,,, -"4I5","4I5","l10n_it_chart_template_generic","IVA al 4% detraibile al 50%","1",,"True","percent",,,"purchase",,,, -"4I5a","4I5a","l10n_it_chart_template_generic","IVA al 4% detraibile al 50% (1)","0.02","4I5","False","percent","1601","1601","purchase","template_impcode_pagata_4det50","template_ivacode_pagata_4det50","template_impcode_pagata_4det50","template_ivacode_pagata_4det50" -"4I5b","4I5b","l10n_it_chart_template_generic","IVA al 4% detraibile al 50% (2)","0.02","4I5","False","percent",,,"purchase",,,, -"00a","00a","l10n_it_chart_template_generic","Esente IVA (debito)","0",,"False","percent","2601","2601","sale","template_impcode_riscossa_0","template_ivacode_riscossa_0","template_impcode_riscossa_0","template_ivacode_riscossa_0" -"00b","00b","l10n_it_chart_template_generic","Esente IVA (credito)","0",,"False","percent","1601","1601","purchase","template_impcode_pagata_0","template_ivacode_pagata_0","template_impcode_pagata_0","template_ivacode_pagata_0" +id,description,chart_template_id:id,name,sequence,amount,parent_id:id,child_depend,type,account_collected_id:id,account_paid_id:id,type_tax_use,base_code_id:id,tax_code_id:id,ref_base_code_id:id,ref_tax_code_id:id,ref_base_sign,ref_tax_sign,price_include,base_sign,tax_sign +21a,21a,l10n_it_chart_template_generic,Iva al 21% (debito),,0.21,,False,percent,2601,2601,sale,template_impcode_riscossa_21,template_ivacode_riscossa_21,template_impcode_riscossa_21,template_ivacode_riscossa_21,-1,-1,False,, +21b,21b,l10n_it_chart_template_generic,Iva al 21% (credito),,0.21,,False,percent,1601,1601,purchase,template_impcode_pagata_21,template_ivacode_pagata_21,template_impcode_pagata_21,template_ivacode_pagata_21,,,False,-1,-1 +20a,20a,l10n_it_chart_template_generic,Iva al 20% (debito),,0.2,,False,percent,2601,2601,sale,template_impcode_riscossa_20,template_ivacode_riscossa_20,template_impcode_riscossa_20,template_ivacode_riscossa_20,-1,-1,False,, +20b,20b,l10n_it_chart_template_generic,Iva al 20% (credito),,0.2,,False,percent,1601,1601,purchase,template_impcode_pagata_20,template_ivacode_pagata_20,template_impcode_pagata_20,template_ivacode_pagata_20,,,False,-1,-1 +10a,10a,l10n_it_chart_template_generic,Iva al 10% (debito),,0.1,,False,percent,2601,2601,sale,template_impcode_riscossa_10,template_ivacode_riscossa_10,template_impcode_riscossa_10,template_ivacode_riscossa_10,-1,-1,False,, +10b,10b,l10n_it_chart_template_generic,Iva al 10% (credito),,0.1,,False,percent,1601,1601,purchase,template_impcode_pagata_10,template_ivacode_pagata_10,template_impcode_pagata_10,template_ivacode_pagata_10,,,False,-1,-1 +10AO,10AO,l10n_it_chart_template_generic,Iva al 10% indetraibile,,0.1,,True,percent,,,purchase,template_impcode_pagata_10ind,,template_impcode_pagata_10ind,,,,False,-1,-1 +10AOa,10AOa,l10n_it_chart_template_generic,Iva al 10% indetraibile (D),2,0,10AO,False,balance,1601,1601,purchase,,template_ivacode_pagata_10ind,,template_ivacode_pagata_10ind,,,False,, +10AOb,10AOb,l10n_it_chart_template_generic,Iva al 10% indetraibile (I),1,1,10AO,False,percent,,,purchase,,,,,,,False,, +12a,12a,l10n_it_chart_template_generic,Iva 12% (debito),,0.12,,False,percent,2601,2601,sale,template_impcode_riscossa_12,template_ivacode_riscossa_12,template_impcode_riscossa_12,template_ivacode_riscossa_12,-1,-1,False,, +12b,12b,l10n_it_chart_template_generic,Iva 12% (credito),,0.12,,False,percent,1601,1601,purchase,template_impcode_pagata_12,template_ivacode_pagata_12,template_impcode_pagata_12,template_ivacode_pagata_12,,,False,-1,-1 +2010,2010,l10n_it_chart_template_generic,Iva al 20% detraibile 10%,,0.2,,True,percent,,,purchase,template_impcode_pagata_20det10,,template_impcode_pagata_20det10,,,,False,-1,-1 +2010a,2010a,l10n_it_chart_template_generic,Iva al 20% detraibile 10% (D),2,0,2010,False,balance,1601,1601,purchase,,template_ivacode_pagata_20det10,,template_ivacode_pagata_20det10,,,False,, +2010b,2010b,l10n_it_chart_template_generic,Iva al 20% detraibile 10% (I),1,0.9,2010,False,percent,,,purchase,,,,,,,False,, +2015,2015,l10n_it_chart_template_generic,Iva al 20% detraibile 15%,,0.2,,True,percent,,,purchase,template_impcode_pagata_20det15,,template_impcode_pagata_20det15,,,,False,-1,-1 +2015a,2015a,l10n_it_chart_template_generic,Iva al 20% detraibile 15% (D),2,0,2015,False,balance,1601,1601,purchase,,template_ivacode_pagata_20det15,,template_ivacode_pagata_20det15,,,False,, +2015b,2015b,l10n_it_chart_template_generic,Iva al 20% detraibile 15% (I),1,0.85,2015,False,percent,,,purchase,,,,,,,False,, +2040,2040,l10n_it_chart_template_generic,Iva al 20% detraibile 40%,,0.2,,True,percent,,,purchase,template_impcode_pagata_20det40,,template_impcode_pagata_20det40,,,,False,-1,-1 +2040a,2040a,l10n_it_chart_template_generic,Iva al 20% detraibile 40% (D),2,0,2040,False,balance,1601,1601,purchase,,template_ivacode_pagata_20det40,,template_ivacode_pagata_20det40,,,False,, +2040b,2040b,l10n_it_chart_template_generic,Iva al 20% detraibile 40% (I),1,0.6,2040,False,percent,,,purchase,,,,,,,False,, +20AO,20AO,l10n_it_chart_template_generic,Iva al 20% indetraibile,,0.2,,True,percent,,,purchase,template_impcode_pagata_20ind,,template_impcode_pagata_20ind,,,,False,-1,-1 +20AOa,20AOa,l10n_it_chart_template_generic,Iva al 20% indetraibile (D),2,0,20AO,False,balance,1601,1601,purchase,,template_ivacode_pagata_20ind,,template_ivacode_pagata_20ind,,,False,, +20AOb,20AOb,l10n_it_chart_template_generic,Iva al 20% indetraibile (I),1,1,20AO,False,percent,,,purchase,,,,,,,False,, +20I5,20I5,l10n_it_chart_template_generic,IVA al 20% detraibile al 50%,,0.2,,True,percent,,,purchase,template_impcode_pagata_20det50,,template_impcode_pagata_20det50,,,,False,-1,-1 +20I5b,20I5b,l10n_it_chart_template_generic,IVA al 20% detraibile al 50% (I),1,0.5,20I5,False,percent,,,purchase,,,,,,,False,, +20I5a,20I5a,l10n_it_chart_template_generic,IVA al 20% detraibile al 50% (D),2,0,20I5,False,balance,1601,1601,purchase,,template_ivacode_pagata_20det50,,template_ivacode_pagata_20det50,,,False,, +22a,22a,l10n_it_chart_template_generic,Iva 2% (debito),,0.02,,False,percent,2601,2601,sale,template_impcode_riscossa_2,template_ivacode_riscossa_2,template_impcode_riscossa_2,template_ivacode_riscossa_2,-1,-1,False,, +22b,22b,l10n_it_chart_template_generic,Iva 2% (credito),,0.02,,False,percent,1601,1601,purchase,template_impcode_pagata_2,template_ivacode_pagata_2,template_impcode_pagata_2,template_ivacode_pagata_2,,,False,-1,-1 +4a,4a,l10n_it_chart_template_generic,Iva 4% (debito),,0.04,,False,percent,2601,2601,sale,template_impcode_riscossa_4,template_ivacode_riscossa_4,template_impcode_riscossa_4,template_ivacode_riscossa_4,-1,-1,False,, +4b,4b,l10n_it_chart_template_generic,Iva 4% (credito),,0.04,,False,percent,1601,1601,purchase,template_impcode_pagata_4,template_ivacode_pagata_4,template_impcode_pagata_4,template_ivacode_pagata_4,,,False,-1,-1 +4AO,4AO,l10n_it_chart_template_generic,Iva al 4% indetraibile,,0.04,,True,percent,,,purchase,template_impcode_pagata_4ind,,template_impcode_pagata_4ind,,,,False,-1,-1 +4AOa,4AOa,l10n_it_chart_template_generic,Iva al 4% indetraibile (D),2,0,4AO,False,balance,1601,1601,purchase,,template_ivacode_pagata_4ind,,template_ivacode_pagata_4ind,,,False,, +4AOb,4AOb,l10n_it_chart_template_generic,Iva al 4% indetraibile (I),1,1,4AO,False,percent,,,purchase,,,,,,,False,, +10I5,10I5,l10n_it_chart_template_generic,IVA al 10% detraibile al 50%,,0.1,,True,percent,,,purchase,template_impcode_pagata_10det50,,template_impcode_pagata_10det50,,,,False,-1,-1 +10I5a,10I5a,l10n_it_chart_template_generic,IVA al 10% detraibile al 50% (D),2,0,10I5,False,balance,1601,1601,purchase,,template_ivacode_pagata_10det50,,template_ivacode_pagata_10det50,,,False,, +10I5b,10I5b,l10n_it_chart_template_generic,IVA al 10% detraibile al 50% (I),1,0.5,10I5,False,percent,,,purchase,,,,,,,False,, +4I5,4I5,l10n_it_chart_template_generic,IVA al 4% detraibile al 50%,,0.04,,True,percent,,,purchase,template_impcode_pagata_4det50,,template_impcode_pagata_4det50,,,,False,-1,-1 +4I5a,4I5a,l10n_it_chart_template_generic,IVA al 4% detraibile al 50% (D),2,0,4I5,False,balance,1601,1601,purchase,,template_ivacode_pagata_4det50,,template_ivacode_pagata_4det50,,,False,, +4I5b,4I5b,l10n_it_chart_template_generic,IVA al 4% detraibile al 50% (I),1,0.5,4I5,False,percent,,,purchase,,,,,,,False,, +00a,00a,l10n_it_chart_template_generic,Esente IVA (debito),,0,,False,percent,2601,2601,sale,template_impcode_riscossa_0,template_ivacode_riscossa_0,template_impcode_riscossa_0,template_ivacode_riscossa_0,-1,-1,False,, +00b,00b,l10n_it_chart_template_generic,Esente IVA (credito),,0,,False,percent,1601,1601,purchase,template_impcode_pagata_0,template_ivacode_pagata_0,template_impcode_pagata_0,template_ivacode_pagata_0,,,False,-1,-1 +21a INC,21a INC,l10n_it_chart_template_generic,Iva al 21% (debito) INC,,0.21,,False,percent,l10n_it.2601,l10n_it.2601,sale,l10n_it.template_impcode_riscossa_21,l10n_it.template_ivacode_riscossa_21,l10n_it.template_impcode_riscossa_21,l10n_it.template_ivacode_riscossa_21,-1,-1,True,, +20a INC,20a INC,l10n_it_chart_template_generic,Iva al 20% (debito) INC,,0.2,,False,percent,l10n_it.2601,l10n_it.2601,sale,l10n_it.template_impcode_riscossa_20,l10n_it.template_ivacode_riscossa_20,l10n_it.template_impcode_riscossa_20,l10n_it.template_ivacode_riscossa_20,-1,-1,True,, +10a INC,10a INC,l10n_it_chart_template_generic,Iva al 10% (debito) INC,,0.1,,False,percent,l10n_it.2601,l10n_it.2601,sale,l10n_it.template_impcode_riscossa_10,l10n_it.template_ivacode_riscossa_10,l10n_it.template_impcode_riscossa_10,l10n_it.template_ivacode_riscossa_10,-1,-1,True,, +12a INC,12a INC,l10n_it_chart_template_generic,Iva 12% (debito) INC,,0.12,,False,percent,l10n_it.2601,l10n_it.2601,sale,l10n_it.template_impcode_riscossa_12,l10n_it.template_ivacode_riscossa_12,l10n_it.template_impcode_riscossa_12,l10n_it.template_ivacode_riscossa_12,-1,-1,True,, +22a INC,22a INC,l10n_it_chart_template_generic,Iva 2% (debito) INC,,0.02,,False,percent,l10n_it.2601,l10n_it.2601,sale,l10n_it.template_impcode_riscossa_2,l10n_it.template_ivacode_riscossa_2,l10n_it.template_impcode_riscossa_2,l10n_it.template_ivacode_riscossa_2,-1,-1,True,, +4a INC,4a INC,l10n_it_chart_template_generic,Iva 4% (debito) INC,,0.04,,False,percent,l10n_it.2601,l10n_it.2601,sale,l10n_it.template_impcode_riscossa_4,l10n_it.template_ivacode_riscossa_4,l10n_it.template_impcode_riscossa_4,l10n_it.template_ivacode_riscossa_4,-1,-1,True,, +00a INC,00a INC,l10n_it_chart_template_generic,Esente IVA (debito) INC,,0,,False,percent,l10n_it.2601,l10n_it.2601,sale,l10n_it.template_impcode_riscossa_0,l10n_it.template_ivacode_riscossa_0,l10n_it.template_impcode_riscossa_0,l10n_it.template_ivacode_riscossa_0,-1,-1,True,, +2110,2110,l10n_it_chart_template_generic,Iva al 21% detraibile 10%,,0.21,,True,percent,,,purchase,template_impcode_pagata_21det10,,template_impcode_pagata_21det10,,,,False,-1,-1 +2110a,2110a,l10n_it_chart_template_generic,Iva al 21% detraibile 10% (D),2,0,2110,False,balance,1601,1601,purchase,,template_ivacode_pagata_21det10,,template_ivacode_pagata_21det10,,,False,, +2110b,2110b,l10n_it_chart_template_generic,Iva al 21% detraibile 10% (I),1,0.9,2110,False,percent,,,purchase,,,,,,,False,, +2115,2115,l10n_it_chart_template_generic,Iva al 21% detraibile 15%,,0.21,,True,percent,,,purchase,template_impcode_pagata_21det15,,template_impcode_pagata_21det15,,,,False,-1,-1 +2115a,2115a,l10n_it_chart_template_generic,Iva al 21% detraibile 15% (D),2,0,2115,False,balance,1601,1601,purchase,,template_ivacode_pagata_21det15,,template_ivacode_pagata_21det15,,,False,, +2115b,2115b,l10n_it_chart_template_generic,Iva al 21% detraibile 15% (I),1,0.85,2115,False,percent,,,purchase,,,,,,,False,, +2140,2140,l10n_it_chart_template_generic,Iva al 21% detraibile 40%,,0.21,,True,percent,,,purchase,template_impcode_pagata_21det40,,template_impcode_pagata_21det40,,,,False,-1,-1 +2140a,2140a,l10n_it_chart_template_generic,Iva al 21% detraibile 40% (D),2,0,2140,False,balance,1601,1601,purchase,,template_ivacode_pagata_21det40,,template_ivacode_pagata_21det40,,,False,, +2140b,2140b,l10n_it_chart_template_generic,Iva al 21% detraibile 40% (I),1,0.6,2140,False,percent,,,purchase,,,,,,,False,, +21AO,21AO,l10n_it_chart_template_generic,Iva al 21% indetraibile,,0.21,,True,percent,,,purchase,template_impcode_pagata_21ind,,template_impcode_pagata_21ind,,,,False,-1,-1 +21AOa,21AOa,l10n_it_chart_template_generic,Iva al 21% indetraibile (D),2,0,21AO,False,balance,1601,1601,purchase,,template_ivacode_pagata_21ind,,template_ivacode_pagata_21ind,,,False,, +21AOb,21AOb,l10n_it_chart_template_generic,Iva al 21% indetraibile (I),1,1,21AO,False,percent,,,purchase,,,,,,,False,, +21I5,21I5,l10n_it_chart_template_generic,IVA al 21% detraibile al 50%,,0.21,,True,percent,,,purchase,template_impcode_pagata_21det50,,template_impcode_pagata_21det50,,,,False,-1,-1 +21I5b,21I5b,l10n_it_chart_template_generic,IVA al 21% detraibile al 50% (I),1,0.5,21I5,False,percent,,,purchase,,,,,,,False,, +21I5a,21I5a,l10n_it_chart_template_generic,IVA al 21% detraibile al 50% (D),2,0,21I5,False,balance,1601,1601,purchase,,template_ivacode_pagata_21det50,,template_ivacode_pagata_21det50,,,False,, diff --git a/addons/l10n_it/i18n/ca.po b/addons/l10n_it/i18n/ca.po index 67dff86ef1b..13ba50a2b99 100644 --- a/addons/l10n_it/i18n/ca.po +++ b/addons/l10n_it/i18n/ca.po @@ -7,20 +7,31 @@ msgid "" msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2011-01-07 06:04+0000\n" +"POT-Creation-Date: 2011-08-11 20:06+0000\n" "PO-Revision-Date: 2011-02-15 15:37+0000\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: Catalan <ca@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-25 05:22+0000\n" +"X-Generator: Launchpad (build 14376)\n" #. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_debit -msgid "Registro acquisti" -msgstr "Resgistre de compres" +#: model:ir.module.module,description:l10n_it.module_meta_information +msgid "" +"\n" +" Piano dei conti italiano di un'impresa generica\n" +" " +msgstr "" +"\n" +" Pla comptable italià d'una empresa genèrica\n" +" " + +#. module: l10n_it +#: model:ir.module.module,shortdesc:l10n_it.module_meta_information +msgid "Italy - Generic Chart of Accounts" +msgstr "Itàlia - Pla general comptable" #. module: l10n_it #: model:ir.actions.todo,note:l10n_it.config_call_account_template_generic @@ -43,132 +54,63 @@ msgstr "" "pla comptable des d'una plantilla de pla comptable." #. module: l10n_it -#: view:account.report_libroiva:0 -msgid "Anno Fiscale" -msgstr "Exercici fiscal" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.it -msgid "Italia" -msgstr "Itàlia" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "REGISTRO IVA" -msgstr "REGISTRE D'IVA" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Protocollo" -msgstr "Protocol" +#: model:ir.model,name:l10n_it.model_account_tax +msgid "account.tax" +msgstr "" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.extra -msgid "Regime Extra comunitario" -msgstr "Règim extra comunitari" +#~ msgid "VENDITE" +#~ msgstr "VENDES" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "VENDITE" -msgstr "VENDES" +#~ msgid "Aliquota" +#~ msgstr "Taxa" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Aliquota" -msgstr "Taxa" +#~ msgid "Registro acquisti" +#~ msgstr "Resgistre de compres" -#. module: l10n_it -#: field:account.report_libroiva,company_id:0 -msgid "Company" -msgstr "Companyia" +#~ msgid "Protocollo" +#~ msgstr "Protocol" -#. module: l10n_it -#: field:account.report_libroiva,name:0 -msgid "Fiscal year" -msgstr "Exercici fiscal" +#~ msgid "REGISTRO IVA" +#~ msgstr "REGISTRE D'IVA" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Numero" -msgstr "Número" +#~ msgid "Fornitore" +#~ msgstr "Proveïdor" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Fornitore" -msgstr "Proveïdor" +#~ msgid "Numero" +#~ msgstr "Número" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "ACQUISTI" -msgstr "COMPRA" +#~ msgid "Cliente" +#~ msgstr "Client" -#. module: l10n_it -#: model:ir.module.module,description:l10n_it.module_meta_information -msgid "" -"\n" -" Piano dei conti italiano di un'impresa generica\n" -" " -msgstr "" -"\n" -" Pla comptable italià d'una empresa genèrica\n" -" " +#~ msgid "Periodo" +#~ msgstr "Període" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "Cliente" -msgstr "Client" +#~ msgid "Registro vendite" +#~ msgstr "Registre de vendes" -#. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_credit -msgid "Registro vendite" -msgstr "Registre de vendes" +#~ msgid "Imposta" +#~ msgstr "Impost" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Periodo" -msgstr "Període" +#~ msgid "Data fattura" +#~ msgstr "Data de la factura" -#. module: l10n_it -#: view:account.report_libroiva:0 -#: model:ir.actions.act_window,name:l10n_it.l10n_chart_it_report_libroIVA_action -#: model:ir.ui.menu,name:l10n_it.menu_report_l10n_chart_it_libroIVA -msgid "Registri IVA" -msgstr "Registre d'IVA" +#~ msgid "Imponibile" +#~ msgstr "Imponible" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imposta" -msgstr "Impost" +#~ msgid "SQL view for libro IVA" +#~ msgstr "Vista SQL pel llibre d'IVA" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.intra -msgid "Regime Intra comunitario" -msgstr "Règim intra comunitari" +#~ msgid "Company" +#~ msgstr "Companyia" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Data fattura" -msgstr "Data de la factura" +#~ msgid "Anno Fiscale" +#~ msgstr "Exercici fiscal" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imponibile" -msgstr "Imponible" +#~ msgid "ACQUISTI" +#~ msgstr "COMPRA" -#. module: l10n_it -#: model:ir.module.module,shortdesc:l10n_it.module_meta_information -msgid "Italy - Generic Chart of Accounts" -msgstr "Itàlia - Pla general comptable" +#~ msgid "Fiscal year" +#~ msgstr "Exercici fiscal" -#. module: l10n_it -#: model:ir.model,name:l10n_it.model_account_report_libroiva -msgid "SQL view for libro IVA" -msgstr "Vista SQL pel llibre d'IVA" +#~ msgid "Registri IVA" +#~ msgstr "Registre d'IVA" diff --git a/addons/l10n_it/i18n/es.po b/addons/l10n_it/i18n/es.po index aac5be72b68..ec8abd28572 100644 --- a/addons/l10n_it/i18n/es.po +++ b/addons/l10n_it/i18n/es.po @@ -7,20 +7,31 @@ msgid "" msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2011-01-07 06:04+0000\n" +"POT-Creation-Date: 2011-08-11 20:06+0000\n" "PO-Revision-Date: 2011-02-15 15:37+0000\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: Spanish <es@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-25 05:22+0000\n" +"X-Generator: Launchpad (build 14376)\n" #. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_debit -msgid "Registro acquisti" -msgstr "Registro de compras" +#: model:ir.module.module,description:l10n_it.module_meta_information +msgid "" +"\n" +" Piano dei conti italiano di un'impresa generica\n" +" " +msgstr "" +"\n" +" Plan contable italiano de una empresa genérica\n" +" " + +#. module: l10n_it +#: model:ir.module.module,shortdesc:l10n_it.module_meta_information +msgid "Italy - Generic Chart of Accounts" +msgstr "Italia - Plan General Contable" #. module: l10n_it #: model:ir.actions.todo,note:l10n_it.config_call_account_template_generic @@ -43,132 +54,63 @@ msgstr "" "Financiera/Generar Plan Contable a partir de una Plantilla de Plan." #. module: l10n_it -#: view:account.report_libroiva:0 -msgid "Anno Fiscale" -msgstr "Año Fiscal" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.it -msgid "Italia" -msgstr "Italia" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "REGISTRO IVA" -msgstr "REGISTRO IVA" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Protocollo" -msgstr "Protocolo" +#: model:ir.model,name:l10n_it.model_account_tax +msgid "account.tax" +msgstr "" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.extra -msgid "Regime Extra comunitario" -msgstr "Régimen Extra comunitario" +#~ msgid "Company" +#~ msgstr "Compañía" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "VENDITE" -msgstr "VENTAS" +#~ msgid "Aliquota" +#~ msgstr "Tasa" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Aliquota" -msgstr "Tasa" +#~ msgid "VENDITE" +#~ msgstr "VENTAS" -#. module: l10n_it -#: field:account.report_libroiva,company_id:0 -msgid "Company" -msgstr "Compañía" +#~ msgid "Anno Fiscale" +#~ msgstr "Año Fiscal" -#. module: l10n_it -#: field:account.report_libroiva,name:0 -msgid "Fiscal year" -msgstr "Ejercicio fiscal" +#~ msgid "Protocollo" +#~ msgstr "Protocolo" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Numero" -msgstr "Número" +#~ msgid "REGISTRO IVA" +#~ msgstr "REGISTRO IVA" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Fornitore" -msgstr "Proveedor" +#~ msgid "Fornitore" +#~ msgstr "Proveedor" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "ACQUISTI" -msgstr "COMPRA" +#~ msgid "Numero" +#~ msgstr "Número" -#. module: l10n_it -#: model:ir.module.module,description:l10n_it.module_meta_information -msgid "" -"\n" -" Piano dei conti italiano di un'impresa generica\n" -" " -msgstr "" -"\n" -" Plan contable italiano de una empresa genérica\n" -" " +#~ msgid "Cliente" +#~ msgstr "Cliente" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "Cliente" -msgstr "Cliente" +#~ msgid "Periodo" +#~ msgstr "Período" -#. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_credit -msgid "Registro vendite" -msgstr "Registro de ventas" +#~ msgid "Registro vendite" +#~ msgstr "Registro de ventas" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Periodo" -msgstr "Período" +#~ msgid "Imposta" +#~ msgstr "Impuesto" -#. module: l10n_it -#: view:account.report_libroiva:0 -#: model:ir.actions.act_window,name:l10n_it.l10n_chart_it_report_libroIVA_action -#: model:ir.ui.menu,name:l10n_it.menu_report_l10n_chart_it_libroIVA -msgid "Registri IVA" -msgstr "Registro del IVA" +#~ msgid "Registri IVA" +#~ msgstr "Registro del IVA" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imposta" -msgstr "Impuesto" +#~ msgid "Data fattura" +#~ msgstr "Fecha de la factura" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.intra -msgid "Regime Intra comunitario" -msgstr "Régimen Intra Comunitario" +#~ msgid "Imponibile" +#~ msgstr "Imponible" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Data fattura" -msgstr "Fecha de la factura" +#~ msgid "SQL view for libro IVA" +#~ msgstr "Vista SQL para el libro del IVA" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imponibile" -msgstr "Imponible" +#~ msgid "Registro acquisti" +#~ msgstr "Registro de compras" -#. module: l10n_it -#: model:ir.module.module,shortdesc:l10n_it.module_meta_information -msgid "Italy - Generic Chart of Accounts" -msgstr "Italia - Plan General Contable" +#~ msgid "ACQUISTI" +#~ msgstr "COMPRA" -#. module: l10n_it -#: model:ir.model,name:l10n_it.model_account_report_libroiva -msgid "SQL view for libro IVA" -msgstr "Vista SQL para el libro del IVA" +#~ msgid "Fiscal year" +#~ msgstr "Ejercicio fiscal" diff --git a/addons/l10n_it/i18n/es_PY.po b/addons/l10n_it/i18n/es_PY.po index ad857a18836..d05f707c30c 100644 --- a/addons/l10n_it/i18n/es_PY.po +++ b/addons/l10n_it/i18n/es_PY.po @@ -7,20 +7,31 @@ msgid "" msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2011-01-07 06:04+0000\n" +"POT-Creation-Date: 2011-08-11 20:06+0000\n" "PO-Revision-Date: 2011-03-21 16:24+0000\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: Spanish (Paraguay) <es_PY@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-25 05:22+0000\n" +"X-Generator: Launchpad (build 14376)\n" #. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_debit -msgid "Registro acquisti" -msgstr "Registro de compras" +#: model:ir.module.module,description:l10n_it.module_meta_information +msgid "" +"\n" +" Piano dei conti italiano di un'impresa generica\n" +" " +msgstr "" +"\n" +" Plan contable italiano de una empresa genérica\n" +" " + +#. module: l10n_it +#: model:ir.module.module,shortdesc:l10n_it.module_meta_information +msgid "Italy - Generic Chart of Accounts" +msgstr "Italia - Plan General Contable" #. module: l10n_it #: model:ir.actions.todo,note:l10n_it.config_call_account_template_generic @@ -43,132 +54,63 @@ msgstr "" "plan contable a partir de una plantilla de plan contable." #. module: l10n_it -#: view:account.report_libroiva:0 -msgid "Anno Fiscale" -msgstr "Año Fiscal" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.it -msgid "Italia" -msgstr "Italia" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "REGISTRO IVA" -msgstr "REGISTRO IVA" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Protocollo" -msgstr "Protocolo" +#: model:ir.model,name:l10n_it.model_account_tax +msgid "account.tax" +msgstr "" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.extra -msgid "Regime Extra comunitario" -msgstr "Régimen Extra comunitario" +#~ msgid "Aliquota" +#~ msgstr "Tasa" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "VENDITE" -msgstr "VENTAS" +#~ msgid "Company" +#~ msgstr "Compañía" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Aliquota" -msgstr "Tasa" +#~ msgid "VENDITE" +#~ msgstr "VENTAS" -#. module: l10n_it -#: field:account.report_libroiva,company_id:0 -msgid "Company" -msgstr "Compañía" +#~ msgid "Anno Fiscale" +#~ msgstr "Año Fiscal" -#. module: l10n_it -#: field:account.report_libroiva,name:0 -msgid "Fiscal year" -msgstr "Ejercicio fiscal" +#~ msgid "Registro acquisti" +#~ msgstr "Registro de compras" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Numero" -msgstr "Número" +#~ msgid "Protocollo" +#~ msgstr "Protocolo" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Fornitore" -msgstr "Proveedor" +#~ msgid "REGISTRO IVA" +#~ msgstr "REGISTRO IVA" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "ACQUISTI" -msgstr "COMPRA" +#~ msgid "Fornitore" +#~ msgstr "Proveedor" -#. module: l10n_it -#: model:ir.module.module,description:l10n_it.module_meta_information -msgid "" -"\n" -" Piano dei conti italiano di un'impresa generica\n" -" " -msgstr "" -"\n" -" Plan contable italiano de una empresa genérica\n" -" " +#~ msgid "ACQUISTI" +#~ msgstr "COMPRA" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "Cliente" -msgstr "Cliente" +#~ msgid "Fiscal year" +#~ msgstr "Ejercicio fiscal" -#. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_credit -msgid "Registro vendite" -msgstr "Registro de ventas" +#~ msgid "Numero" +#~ msgstr "Número" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Periodo" -msgstr "Período" +#~ msgid "Cliente" +#~ msgstr "Cliente" -#. module: l10n_it -#: view:account.report_libroiva:0 -#: model:ir.actions.act_window,name:l10n_it.l10n_chart_it_report_libroIVA_action -#: model:ir.ui.menu,name:l10n_it.menu_report_l10n_chart_it_libroIVA -msgid "Registri IVA" -msgstr "Registro del IVA" +#~ msgid "Periodo" +#~ msgstr "Período" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imposta" -msgstr "Impuesto" +#~ msgid "Registro vendite" +#~ msgstr "Registro de ventas" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.intra -msgid "Regime Intra comunitario" -msgstr "Régimen Intra Comunitario" +#~ msgid "Imposta" +#~ msgstr "Impuesto" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Data fattura" -msgstr "Fecha de la factura" +#~ msgid "Registri IVA" +#~ msgstr "Registro del IVA" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imponibile" -msgstr "Imponible" +#~ msgid "Data fattura" +#~ msgstr "Fecha de la factura" -#. module: l10n_it -#: model:ir.module.module,shortdesc:l10n_it.module_meta_information -msgid "Italy - Generic Chart of Accounts" -msgstr "Italia - Plan General Contable" +#~ msgid "SQL view for libro IVA" +#~ msgstr "Vista SQL para el libro del IVA" -#. module: l10n_it -#: model:ir.model,name:l10n_it.model_account_report_libroiva -msgid "SQL view for libro IVA" -msgstr "Vista SQL para el libro del IVA" +#~ msgid "Imponibile" +#~ msgstr "Imponible" diff --git a/addons/l10n_it/i18n/fr.po b/addons/l10n_it/i18n/fr.po index 251c958420f..1582f87c77c 100644 --- a/addons/l10n_it/i18n/fr.po +++ b/addons/l10n_it/i18n/fr.po @@ -7,19 +7,27 @@ msgid "" msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2011-01-07 06:04+0000\n" +"POT-Creation-Date: 2011-08-11 20:06+0000\n" "PO-Revision-Date: 2011-05-22 17:04+0000\n" "Last-Translator: lholivier <olivier.lenoir@free.fr>\n" "Language-Team: French <fr@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-25 05:22+0000\n" +"X-Generator: Launchpad (build 14376)\n" #. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_debit -msgid "Registro acquisti" +#: model:ir.module.module,description:l10n_it.module_meta_information +msgid "" +"\n" +" Piano dei conti italiano di un'impresa generica\n" +" " +msgstr "" + +#. module: l10n_it +#: model:ir.module.module,shortdesc:l10n_it.module_meta_information +msgid "Italy - Generic Chart of Accounts" msgstr "" #. module: l10n_it @@ -35,129 +43,12 @@ msgid "" msgstr "" #. module: l10n_it -#: view:account.report_libroiva:0 -msgid "Anno Fiscale" -msgstr "" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.it -msgid "Italia" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "REGISTRO IVA" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Protocollo" -msgstr "" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.extra -msgid "Regime Extra comunitario" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "VENDITE" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Aliquota" -msgstr "" - -#. module: l10n_it -#: field:account.report_libroiva,company_id:0 -msgid "Company" -msgstr "Société" - -#. module: l10n_it -#: field:account.report_libroiva,name:0 -msgid "Fiscal year" -msgstr "Exercice fiscal" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Numero" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Fornitore" +#: model:ir.model,name:l10n_it.model_account_tax +msgid "account.tax" msgstr "" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "ACQUISTI" -msgstr "" +#~ msgid "Company" +#~ msgstr "Société" -#. module: l10n_it -#: model:ir.module.module,description:l10n_it.module_meta_information -msgid "" -"\n" -" Piano dei conti italiano di un'impresa generica\n" -" " -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "Cliente" -msgstr "" - -#. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_credit -msgid "Registro vendite" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Periodo" -msgstr "" - -#. module: l10n_it -#: view:account.report_libroiva:0 -#: model:ir.actions.act_window,name:l10n_it.l10n_chart_it_report_libroIVA_action -#: model:ir.ui.menu,name:l10n_it.menu_report_l10n_chart_it_libroIVA -msgid "Registri IVA" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imposta" -msgstr "" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.intra -msgid "Regime Intra comunitario" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Data fattura" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imponibile" -msgstr "" - -#. module: l10n_it -#: model:ir.module.module,shortdesc:l10n_it.module_meta_information -msgid "Italy - Generic Chart of Accounts" -msgstr "" - -#. module: l10n_it -#: model:ir.model,name:l10n_it.model_account_report_libroiva -msgid "SQL view for libro IVA" -msgstr "" +#~ msgid "Fiscal year" +#~ msgstr "Exercice fiscal" diff --git a/addons/l10n_it/i18n/gl.po b/addons/l10n_it/i18n/gl.po index eede14878ce..a8cf6c6609e 100644 --- a/addons/l10n_it/i18n/gl.po +++ b/addons/l10n_it/i18n/gl.po @@ -7,20 +7,31 @@ msgid "" msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2011-01-07 06:04+0000\n" +"POT-Creation-Date: 2011-08-11 20:06+0000\n" "PO-Revision-Date: 2011-02-25 11:41+0000\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Language-Team: Galician <gl@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-25 05:22+0000\n" +"X-Generator: Launchpad (build 14376)\n" #. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_debit -msgid "Registro acquisti" -msgstr "Rexistro de compras" +#: model:ir.module.module,description:l10n_it.module_meta_information +msgid "" +"\n" +" Piano dei conti italiano di un'impresa generica\n" +" " +msgstr "" +"\n" +" Plan contable Italiano\n" +" " + +#. module: l10n_it +#: model:ir.module.module,shortdesc:l10n_it.module_meta_information +msgid "Italy - Generic Chart of Accounts" +msgstr "Italia - Plan Xeral Contable" #. module: l10n_it #: model:ir.actions.todo,note:l10n_it.config_call_account_template_generic @@ -42,132 +53,63 @@ msgstr "" "financeira/Xerar Plan Contable a partir dun modelo de plan." #. module: l10n_it -#: view:account.report_libroiva:0 -msgid "Anno Fiscale" -msgstr "Exercicio fiscal" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.it -msgid "Italia" -msgstr "Italia" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "REGISTRO IVA" -msgstr "REXISTRO IVE" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Protocollo" -msgstr "Protocolo" +#: model:ir.model,name:l10n_it.model_account_tax +msgid "account.tax" +msgstr "" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.extra -msgid "Regime Extra comunitario" -msgstr "Rexime Extra comunitario" +#~ msgid "REGISTRO IVA" +#~ msgstr "REXISTRO IVE" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "VENDITE" -msgstr "VENDAS" +#~ msgid "Aliquota" +#~ msgstr "Taxa" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Aliquota" -msgstr "Taxa" +#~ msgid "Company" +#~ msgstr "Compañía" -#. module: l10n_it -#: field:account.report_libroiva,company_id:0 -msgid "Company" -msgstr "Compañía" +#~ msgid "VENDITE" +#~ msgstr "VENDAS" -#. module: l10n_it -#: field:account.report_libroiva,name:0 -msgid "Fiscal year" -msgstr "Exercicio fiscal" +#~ msgid "Anno Fiscale" +#~ msgstr "Exercicio fiscal" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Numero" -msgstr "Número" +#~ msgid "Registro acquisti" +#~ msgstr "Rexistro de compras" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Fornitore" -msgstr "Provedor" +#~ msgid "Protocollo" +#~ msgstr "Protocolo" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "ACQUISTI" -msgstr "Mercar" +#~ msgid "Fornitore" +#~ msgstr "Provedor" -#. module: l10n_it -#: model:ir.module.module,description:l10n_it.module_meta_information -msgid "" -"\n" -" Piano dei conti italiano di un'impresa generica\n" -" " -msgstr "" -"\n" -" Plan contable Italiano\n" -" " +#~ msgid "ACQUISTI" +#~ msgstr "Mercar" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "Cliente" -msgstr "Cliente" +#~ msgid "Fiscal year" +#~ msgstr "Exercicio fiscal" -#. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_credit -msgid "Registro vendite" -msgstr "Rexistro de vendas" +#~ msgid "Numero" +#~ msgstr "Número" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Periodo" -msgstr "Período" +#~ msgid "Periodo" +#~ msgstr "Período" -#. module: l10n_it -#: view:account.report_libroiva:0 -#: model:ir.actions.act_window,name:l10n_it.l10n_chart_it_report_libroIVA_action -#: model:ir.ui.menu,name:l10n_it.menu_report_l10n_chart_it_libroIVA -msgid "Registri IVA" -msgstr "Rexistro do IVE" +#~ msgid "Cliente" +#~ msgstr "Cliente" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imposta" -msgstr "Imposto" +#~ msgid "Registro vendite" +#~ msgstr "Rexistro de vendas" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.intra -msgid "Regime Intra comunitario" -msgstr "Rexime Intra Comunitario" +#~ msgid "Imposta" +#~ msgstr "Imposto" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Data fattura" -msgstr "Data da factura" +#~ msgid "Registri IVA" +#~ msgstr "Rexistro do IVE" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imponibile" -msgstr "Impoñible" +#~ msgid "Data fattura" +#~ msgstr "Data da factura" -#. module: l10n_it -#: model:ir.module.module,shortdesc:l10n_it.module_meta_information -msgid "Italy - Generic Chart of Accounts" -msgstr "Italia - Plan Xeral Contable" +#~ msgid "Imponibile" +#~ msgstr "Impoñible" -#. module: l10n_it -#: model:ir.model,name:l10n_it.model_account_report_libroiva -msgid "SQL view for libro IVA" -msgstr "Vista SQL para o libro do IVE" +#~ msgid "SQL view for libro IVA" +#~ msgstr "Vista SQL para o libro do IVE" diff --git a/addons/l10n_it/i18n/it.po b/addons/l10n_it/i18n/it.po index 6035a0b7306..b12fa0ca4d3 100644 --- a/addons/l10n_it/i18n/it.po +++ b/addons/l10n_it/i18n/it.po @@ -1,26 +1,36 @@ -# Italian translation for openobject-addons -# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 -# This file is distributed under the same license as the openobject-addons package. -# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# Translation of OpenERP Server. +# This file contains the translation of the following modules: +# * l10n_it # msgid "" msgstr "" -"Project-Id-Version: openobject-addons\n" -"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2011-01-07 06:04+0000\n" -"PO-Revision-Date: 2011-02-15 15:37+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Italian <it@li.org>\n" +"Project-Id-Version: OpenERP Server 6.0.2\n" +"Report-Msgid-Bugs-To: support@openerp.com\n" +"POT-Creation-Date: 2011-08-11 20:06+0000\n" +"PO-Revision-Date: 2011-11-24 10:54+0000\n" +"Last-Translator: Olivier Dony (OpenERP) <Unknown>\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: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-25 05:22+0000\n" +"X-Generator: Launchpad (build 14376)\n" #. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_debit -msgid "Registro acquisti" -msgstr "Registro acquisti" +#: model:ir.module.module,description:l10n_it.module_meta_information +msgid "" +"\n" +" Piano dei conti italiano di un'impresa generica\n" +" " +msgstr "" +"\n" +" Piano dei conti italiano di un'impresa generica\n" +" " + +#. module: l10n_it +#: model:ir.module.module,shortdesc:l10n_it.module_meta_information +msgid "Italy - Generic Chart of Accounts" +msgstr "Italia - Piano dei conti generico" #. module: l10n_it #: model:ir.actions.todo,note:l10n_it.config_call_account_template_generic @@ -33,142 +43,72 @@ msgid "" "Management/Configuration/Financial Accounting/Financial Accounts/Generate " "Chart of Accounts from a Chart Template." msgstr "" -"Genera il Piano dei Conti da un Modello. Vi verrà richiesto di passare il " -"nome dell'azienda, il modello da seguire, il numero di decimali per generare " -"il codice dei tuoi conti e, per il conto della Banca, la valuta per creare " -"il Libro Giornale. Così una copia vergine del Piano dei Conti, derivatante " -"dal modello, viene generata.\n" -"\tQuesto è la stessa procedura automatica che viene lanciata da: Gestione " -"Finanziaria / Configurazione / Contabilità / Conti finanziari / Genera il " -"Piano dei conti da un modello." +"Genera il piano dei conti da un template. Verrà chiesto di indicare il nome " +"dell'azienda, il piano dei conti da seguire, il numero di cifre per generare " +"il codice dei conti, la valuta per creare i sezionali. Quindi, una semplice " +"copia del template verrà generata.\n" +"\tQuesto è lo stesso wizard che viene eseguito da " +"Contabilità/Configurazione/Contabilità Generale/Assetto finanziario della " +"nuova azienda" #. module: l10n_it -#: view:account.report_libroiva:0 -msgid "Anno Fiscale" -msgstr "Anno Fiscale" +#: model:ir.model,name:l10n_it.model_account_tax +msgid "account.tax" +msgstr "account.tax" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.it -msgid "Italia" -msgstr "Italia" +#~ msgid "Aliquota" +#~ msgstr "Aliquota" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "REGISTRO IVA" -msgstr "REGISTRO IVA" +#~ msgid "Company" +#~ msgstr "Azienda" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Protocollo" -msgstr "Protocollo" +#~ msgid "VENDITE" +#~ msgstr "VENDITE" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.extra -msgid "Regime Extra comunitario" -msgstr "Regime Extra comunitario" +#~ msgid "Anno Fiscale" +#~ msgstr "Anno Fiscale" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "VENDITE" -msgstr "VENDITE" +#~ msgid "Registro acquisti" +#~ msgstr "Registro acquisti" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Aliquota" -msgstr "Aliquota" +#~ msgid "Protocollo" +#~ msgstr "Protocollo" -#. module: l10n_it -#: field:account.report_libroiva,company_id:0 -msgid "Company" -msgstr "Azienda" +#~ msgid "REGISTRO IVA" +#~ msgstr "REGISTRO IVA" -#. module: l10n_it -#: field:account.report_libroiva,name:0 -msgid "Fiscal year" -msgstr "Anno fiscale" +#~ msgid "Fornitore" +#~ msgstr "Fornitore" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Numero" -msgstr "Numero" +#~ msgid "ACQUISTI" +#~ msgstr "ACQUISTI" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Fornitore" -msgstr "Fornitore" +#~ msgid "Fiscal year" +#~ msgstr "Anno fiscale" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "ACQUISTI" -msgstr "ACQUISTI" +#~ msgid "Numero" +#~ msgstr "Numero" -#. module: l10n_it -#: model:ir.module.module,description:l10n_it.module_meta_information -msgid "" -"\n" -" Piano dei conti italiano di un'impresa generica\n" -" " -msgstr "" -"\n" -" Piano dei conti italiano di un'impresa generica\n" -" " +#~ msgid "Cliente" +#~ msgstr "Cliente" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "Cliente" -msgstr "Cliente" +#~ msgid "Periodo" +#~ msgstr "Periodo" -#. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_credit -msgid "Registro vendite" -msgstr "Registro vendite" +#~ msgid "Registro vendite" +#~ msgstr "Registro vendite" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Periodo" -msgstr "Periodo" +#~ msgid "Imposta" +#~ msgstr "Imposta" -#. module: l10n_it -#: view:account.report_libroiva:0 -#: model:ir.actions.act_window,name:l10n_it.l10n_chart_it_report_libroIVA_action -#: model:ir.ui.menu,name:l10n_it.menu_report_l10n_chart_it_libroIVA -msgid "Registri IVA" -msgstr "Registri IVA" +#~ msgid "Registri IVA" +#~ msgstr "Registri IVA" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imposta" -msgstr "Imposta" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.intra -msgid "Regime Intra comunitario" -msgstr "Regime Intra comunitario" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Data fattura" -msgstr "Data fattura" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imponibile" -msgstr "Imponibile" +#~ msgid "Data fattura" +#~ msgstr "Data fattura" -#. module: l10n_it -#: model:ir.module.module,shortdesc:l10n_it.module_meta_information -msgid "Italy - Generic Chart of Accounts" -msgstr "Italia - Piano dei conti generico" +#~ msgid "Imponibile" +#~ msgstr "Imponibile" -#. module: l10n_it -#: model:ir.model,name:l10n_it.model_account_report_libroiva -msgid "SQL view for libro IVA" -msgstr "Vista SQL per registro IVA" +#~ msgid "SQL view for libro IVA" +#~ msgstr "Vista SQL per registro IVA" diff --git a/addons/l10n_it/i18n/l10n_it.pot b/addons/l10n_it/i18n/l10n_it.pot index 7f210e4cd75..1c46674bb28 100644 --- a/addons/l10n_it/i18n/l10n_it.pot +++ b/addons/l10n_it/i18n/l10n_it.pot @@ -4,10 +4,10 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 6.0.0-rc2\n" +"Project-Id-Version: OpenERP Server 6.0.2\n" "Report-Msgid-Bugs-To: support@openerp.com\n" -"POT-Creation-Date: 2011-01-07 06:04:30+0000\n" -"PO-Revision-Date: 2011-01-07 06:04:30+0000\n" +"POT-Creation-Date: 2011-08-11 20:06+0000\n" +"PO-Revision-Date: 2011-08-11 20:06+0000\n" "Last-Translator: <>\n" "Language-Team: \n" "MIME-Version: 1.0\n" @@ -16,81 +16,6 @@ msgstr "" "Plural-Forms: \n" #. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_debit -msgid "Registro acquisti" -msgstr "" - -#. module: l10n_it -#: model:ir.actions.todo,note:l10n_it.config_call_account_template_generic -msgid "Generate Chart of Accounts from a Chart Template. You will be asked to pass the name of the company, the chart template to follow, the no. of digits to generate the code for your accounts and Bank account, currency to create Journals. Thus,the pure copy of chart Template is generated.\n" -" This is the same wizard that runs from Financial Management/Configuration/Financial Accounting/Financial Accounts/Generate Chart of Accounts from a Chart Template." -msgstr "" - -#. module: l10n_it -#: view:account.report_libroiva:0 -msgid "Anno Fiscale" -msgstr "" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.it -msgid "Italia" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "REGISTRO IVA" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Protocollo" -msgstr "" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.extra -msgid "Regime Extra comunitario" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "VENDITE" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Aliquota" -msgstr "" - -#. module: l10n_it -#: field:account.report_libroiva,company_id:0 -msgid "Company" -msgstr "" - -#. module: l10n_it -#: field:account.report_libroiva,name:0 -msgid "Fiscal year" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Numero" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Fornitore" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "ACQUISTI" -msgstr "" - -#. module: l10n_it #: model:ir.module.module,description:l10n_it.module_meta_information msgid "\n" " Piano dei conti italiano di un'impresa generica\n" @@ -98,58 +23,18 @@ msgid "\n" msgstr "" #. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "Cliente" -msgstr "" - -#. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_credit -msgid "Registro vendite" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Periodo" -msgstr "" - -#. module: l10n_it -#: view:account.report_libroiva:0 -#: model:ir.actions.act_window,name:l10n_it.l10n_chart_it_report_libroIVA_action -#: model:ir.ui.menu,name:l10n_it.menu_report_l10n_chart_it_libroIVA -msgid "Registri IVA" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imposta" -msgstr "" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.intra -msgid "Regime Intra comunitario" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Data fattura" -msgstr "" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imponibile" +#: model:ir.module.module,shortdesc:l10n_it.module_meta_information +msgid "Italy - Generic Chart of Accounts" msgstr "" #. module: l10n_it -#: model:ir.module.module,shortdesc:l10n_it.module_meta_information -msgid "Italy - Generic Chart of Accounts" +#: model:ir.actions.todo,note:l10n_it.config_call_account_template_generic +msgid "Generate Chart of Accounts from a Chart Template. You will be asked to pass the name of the company, the chart template to follow, the no. of digits to generate the code for your accounts and Bank account, currency to create Journals. Thus,the pure copy of chart Template is generated.\n" +" This is the same wizard that runs from Financial Management/Configuration/Financial Accounting/Financial Accounts/Generate Chart of Accounts from a Chart Template." msgstr "" #. module: l10n_it -#: model:ir.model,name:l10n_it.model_account_report_libroiva -msgid "SQL view for libro IVA" +#: model:ir.model,name:l10n_it.model_account_tax +msgid "account.tax" msgstr "" diff --git a/addons/l10n_it/i18n/pt_BR.po b/addons/l10n_it/i18n/pt_BR.po index 7cabe3a4653..df9315127ae 100644 --- a/addons/l10n_it/i18n/pt_BR.po +++ b/addons/l10n_it/i18n/pt_BR.po @@ -7,20 +7,31 @@ msgid "" msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" -"POT-Creation-Date: 2011-01-07 06:04+0000\n" +"POT-Creation-Date: 2011-08-11 20:06+0000\n" "PO-Revision-Date: 2011-03-10 23:11+0000\n" "Last-Translator: Emerson <Unknown>\n" "Language-Team: Brazilian Portuguese <pt_BR@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-25 05:22+0000\n" +"X-Generator: Launchpad (build 14376)\n" #. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_debit -msgid "Registro acquisti" -msgstr "Registro acquisti" +#: model:ir.module.module,description:l10n_it.module_meta_information +msgid "" +"\n" +" Piano dei conti italiano di un'impresa generica\n" +" " +msgstr "" +"\n" +" Piano dei conti italiano di un'impresa generica\n" +" " + +#. module: l10n_it +#: model:ir.module.module,shortdesc:l10n_it.module_meta_information +msgid "Italy - Generic Chart of Accounts" +msgstr "Italy - Generic Chart of Accounts" #. module: l10n_it #: model:ir.actions.todo,note:l10n_it.config_call_account_template_generic @@ -42,132 +53,63 @@ msgstr "" "Chart of Accounts from a Chart Template." #. module: l10n_it -#: view:account.report_libroiva:0 -msgid "Anno Fiscale" -msgstr "Anno Fiscale" - -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.it -msgid "Italia" -msgstr "Italia" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "REGISTRO IVA" -msgstr "REGISTRO IVA" - -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Protocollo" -msgstr "Protocollo" +#: model:ir.model,name:l10n_it.model_account_tax +msgid "account.tax" +msgstr "" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.extra -msgid "Regime Extra comunitario" -msgstr "Regime Extra comunitario" +#~ msgid "Aliquota" +#~ msgstr "Aliquota" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "VENDITE" -msgstr "VENDITE" +#~ msgid "VENDITE" +#~ msgstr "VENDITE" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Aliquota" -msgstr "Aliquota" +#~ msgid "Company" +#~ msgstr "Company" -#. module: l10n_it -#: field:account.report_libroiva,company_id:0 -msgid "Company" -msgstr "Company" +#~ msgid "Anno Fiscale" +#~ msgstr "Anno Fiscale" -#. module: l10n_it -#: field:account.report_libroiva,name:0 -msgid "Fiscal year" -msgstr "Fiscal year" +#~ msgid "Registro acquisti" +#~ msgstr "Registro acquisti" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Numero" -msgstr "Numero" +#~ msgid "Protocollo" +#~ msgstr "Protocollo" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Fornitore" -msgstr "Fornitore" +#~ msgid "REGISTRO IVA" +#~ msgstr "REGISTRO IVA" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_debito:0 -msgid "ACQUISTI" -msgstr "ACQUISTI" +#~ msgid "Fiscal year" +#~ msgstr "Fiscal year" -#. module: l10n_it -#: model:ir.module.module,description:l10n_it.module_meta_information -msgid "" -"\n" -" Piano dei conti italiano di un'impresa generica\n" -" " -msgstr "" -"\n" -" Piano dei conti italiano di un'impresa generica\n" -" " +#~ msgid "Fornitore" +#~ msgstr "Fornitore" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -msgid "Cliente" -msgstr "Cliente" +#~ msgid "Numero" +#~ msgstr "Numero" -#. module: l10n_it -#: model:ir.actions.report.xml,name:l10n_it.account_ita_libroIVA_credit -msgid "Registro vendite" -msgstr "Registro vendite" +#~ msgid "Cliente" +#~ msgstr "Cliente" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Periodo" -msgstr "Periodo" +#~ msgid "Imposta" +#~ msgstr "Imposta" -#. module: l10n_it -#: view:account.report_libroiva:0 -#: model:ir.actions.act_window,name:l10n_it.l10n_chart_it_report_libroIVA_action -#: model:ir.ui.menu,name:l10n_it.menu_report_l10n_chart_it_libroIVA -msgid "Registri IVA" -msgstr "Registri IVA" +#~ msgid "Periodo" +#~ msgstr "Periodo" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imposta" -msgstr "Imposta" +#~ msgid "Registri IVA" +#~ msgstr "Registri IVA" -#. module: l10n_it -#: model:account.fiscal.position.template,name:l10n_it.intra -msgid "Regime Intra comunitario" -msgstr "Regime Intra comunitario" +#~ msgid "ACQUISTI" +#~ msgstr "ACQUISTI" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Data fattura" -msgstr "Data fattura" +#~ msgid "Data fattura" +#~ msgstr "Data fattura" -#. module: l10n_it -#: report:l10n_it.report.libroIVA_credito:0 -#: report:l10n_it.report.libroIVA_debito:0 -msgid "Imponibile" -msgstr "Imponibile" +#~ msgid "Imponibile" +#~ msgstr "Imponibile" -#. module: l10n_it -#: model:ir.module.module,shortdesc:l10n_it.module_meta_information -msgid "Italy - Generic Chart of Accounts" -msgstr "Italy - Generic Chart of Accounts" +#~ msgid "Registro vendite" +#~ msgstr "Registro vendite" -#. module: l10n_it -#: model:ir.model,name:l10n_it.model_account_report_libroiva -msgid "SQL view for libro IVA" -msgstr "SQL view for libro IVA" +#~ msgid "SQL view for libro IVA" +#~ msgstr "SQL view for libro IVA" diff --git a/addons/l10n_it/libroIVA.py b/addons/l10n_it/libroIVA.py deleted file mode 100644 index a78c81ffdb3..00000000000 --- a/addons/l10n_it/libroIVA.py +++ /dev/null @@ -1,54 +0,0 @@ -# -*- encoding: utf-8 -*- -############################################################################## -# -# OpenERP, Open Source Management Solution -# Copyright (C) 2010 -# Italian OpenERP Community (<http://www.openerp-italia.com>) -# Servabit srl -# Agile Business Group sagl -# Domsense srl -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as -# published by the Free Software Foundation, either version 3 of the -# License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. -# -############################################################################## - - -# ################################################################################## -# Questa vista SQL viene usata solo per far scegliere l'anno di pianificazione all'utente -# Viene infatti costruita una vista XML di tipo tree che contiene solo i diversi anni per i quali stata fatta almeno una pianificazione -# ################################################################################## - -from osv import fields, osv - -class l10n_chart_it_report_libroIVA (osv.osv): - _name = "account.report_libroiva" - _description = "SQL view for libro IVA" - _auto = False - _rec_name = "name" - #_order = "fiscal_year"; - - _columns = { - 'name': fields.char('Fiscal year',size=64), - 'company_id': fields.many2one('res.company', 'Company'), - } - - def init (self, cr) : - cr.execute("""DROP VIEW IF EXISTS account_report_libroiva""") - cr.execute(""" - CREATE VIEW account_report_libroiva AS ( - SELECT id, name, company_id FROM account_fiscalyear - )""") -l10n_chart_it_report_libroIVA() - - diff --git a/addons/l10n_it/libroIVA_menu.xml b/addons/l10n_it/libroIVA_menu.xml deleted file mode 100644 index 51e581ac11c..00000000000 --- a/addons/l10n_it/libroIVA_menu.xml +++ /dev/null @@ -1,16 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<!DOCTYPE terp SYSTEM "openerp-view.dtd"> -<openerp> - <data> - - <!-- **************************** - MENU REPORT LIBRI IVA - **************************** --> - <menuitem name="Registri IVA" - id="menu_report_l10n_chart_it_libroIVA" - sequence="20" - parent="account.menu_finance_reporting" - action="l10n_chart_it_report_libroIVA_action" - /> - </data> -</openerp> diff --git a/addons/l10n_it/libroIVA_view.xml b/addons/l10n_it/libroIVA_view.xml deleted file mode 100644 index bbc905e6da0..00000000000 --- a/addons/l10n_it/libroIVA_view.xml +++ /dev/null @@ -1,47 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<openerp> - <data> - - <!-- **************************** - REGISTRI IVA TREE VIEW - ****************************--> - <record model="ir.ui.view" id="l10n_chart_it_report_libroIVA_tree"> - <field name="name">l10n_chart_it_report_libroIVA_tree</field> - <field name="model">account.report_libroiva</field> - <field name="type">tree</field> - <field name="arch" type="xml"> - <tree string="Registri IVA" limit="80"> - <field name="name" string="Anno Fiscale" readonly="True" select="1" /> - </tree> - </field> - </record> - - - <!-- **************************** - REGISTRI IVA FORM VIEW - ****************************--> - <record model="ir.ui.view" id="l10n_chart_it_report_libroIVA_form"> - <field name="name">l10n_chart_it_report_libroIVA_form</field> - <field name="model">account.report_libroiva</field> - <field name="type">form</field> - <field name="arch" type="xml"> - <form string="Registri IVA" > - <field name="name" string="Anno Fiscale" readonly="True" /> - </form> - </field> - </record> - - <!-- **************************** - REGISTRI IVA ACTION - ****************************--> - <record model="ir.actions.act_window" id="l10n_chart_it_report_libroIVA_action"> - <field name="name">Registri IVA</field> - <field name="res_model">account.report_libroiva</field> - <field name="view_id" ref="l10n_chart_it_report_libroIVA_tree"/> - <field name="view_type">form</field> - <field name="view_mode">tree,form</field> - </record> - - - </data> -</openerp> diff --git a/addons/l10n_it/report.xml b/addons/l10n_it/report.xml deleted file mode 100644 index e0ba4a33daf..00000000000 --- a/addons/l10n_it/report.xml +++ /dev/null @@ -1,24 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<openerp> - <data> - - <report name="l10n_it.report.libroIVA_credito" - id="account_ita_libroIVA_credit" - string="Registro vendite" - model="account.report_libroiva" - rml="addons/l10n_it/report/libroIVA_credito.rml" - auto="False" - header="False" - /> - - <report name="l10n_it.report.libroIVA_debito" - id="account_ita_libroIVA_debit" - string="Registro acquisti" - model="account.report_libroiva" - rml="addons/l10n_it/report/libroIVA_debito.rml" - auto="False" - header="False" - /> - - </data> -</openerp> diff --git a/addons/l10n_it/report/__init__.py b/addons/l10n_it/report/__init__.py deleted file mode 100644 index be32155c675..00000000000 --- a/addons/l10n_it/report/__init__.py +++ /dev/null @@ -1,2 +0,0 @@ -import libroIVA_credito -import libroIVA_debito
\ No newline at end of file diff --git a/addons/l10n_it/report/libroIVA_credito.py b/addons/l10n_it/report/libroIVA_credito.py deleted file mode 100644 index b48c81d2475..00000000000 --- a/addons/l10n_it/report/libroIVA_credito.py +++ /dev/null @@ -1,79 +0,0 @@ -import datetime -import time -from report import report_sxw -from osv import osv -import pooler - - -class l10n_chart_it_report_libroIVA_credito(report_sxw.rml_parse): - - def __init__(self, cr, uid, name, context): - super(l10n_chart_it_report_libroIVA_credito,self).__init__(cr,uid,name,context) - self.localcontext.update({ - 'time' : time, - 'get_company' : self.get_company, - 'get_periods' : self.get_periods, - 'get_lines' : self.get_lines, - }) - - - def get_company(self,fiscal_year): - #print 'COMP = ',fiscal_year - return "" - - def get_periods(self,fiscal_year): - #print 'Fiscal year id:',fiscal_year.id - obj=pooler.get_pool(self.cr.dbname).get('account.fiscalyear') - fy=obj.browse(self.cr,self.uid,fiscal_year.id) - #print 'Periods = ',fy.period_ids - res=[rec for rec in fy.period_ids] - #return fy.periods => non funziona?!? bool object !?!? - return res - - def get_invoices(self,period): - #print 'PERIOD = ',period.name - obj=pooler.get_pool(self.cr.dbname).get('account.invoice') - # Selezione tutte le fatture emesse nel periodo - self.cr.execute( """ - SELECT id FROM account_invoice - WHERE (state='open' OR state='paid') AND - period_id="""+str(period.id)+""" - AND (type='out_invoice' OR type='out_refund') - """) - ids=self.cr.fetchall() - #print 'IDS = ', - if ids: - ids=[id[0] for id in ids ] - invoices=obj.browse(self.cr,self.uid,ids) - #print 'INVOICES = ',invoices - return invoices - - def get_lines(self,fiscal_year): - res=[] - obj_fy=pooler.get_pool(self.cr.dbname).get('account.fiscalyear') - fy=obj_fy.browse(self.cr,self.uid,fiscal_year.id) - for period in fy.period_ids: - invoices=self.get_invoices(period) - for invoice in invoices: - d={'periodo': period.name} - d['protocollo']=invoice.number - #print 'PARTNER ',invoice.partner_id.name - causale=invoice.partner_id.name - #print 'CAUSALE = ',causale - d['causale']=causale - d['numero']=invoice.reference - d['data_doc']=invoice.date_invoice - for tax in invoice.tax_line: - #print '\tTAX: ',tax - d['aliquota']=tax.tax_code_id.name - d['imponibile']=tax.base - d['imposta']=tax.amount - res.append(d) - d={'periodo':'', 'protocollo':'', 'causale':'', 'numero':'', 'data_doc':'', } - return res - - - -report_sxw.report_sxw('report.l10n_it.report.libroIVA_credito','account.report_libroiva', - 'l10n_it/report/libroIVA_credito.rml', - parser=l10n_chart_it_report_libroIVA_credito,header=False) diff --git a/addons/l10n_it/report/libroIVA_credito.rml b/addons/l10n_it/report/libroIVA_credito.rml deleted file mode 100644 index 2b282f760b4..00000000000 --- a/addons/l10n_it/report/libroIVA_credito.rml +++ /dev/null @@ -1,203 +0,0 @@ -<?xml version="1.0"?> -<document filename="test.pdf"> - <template pageSize="(612.0,792.0)" title="Test" author="Martin Simon" allowSplitting="20"> - <pageTemplate id="first"> - <frame id="first" x1="57.0" y1="57.0" width="498" height="678"/> - </pageTemplate> - </template> - <stylesheet> - <blockTableStyle id="Standard_Outline"> - <blockAlignment value="LEFT"/> - <blockValign value="TOP"/> - </blockTableStyle> - <blockTableStyle id="Table1"> - <blockAlignment value="LEFT"/> - <blockValign value="TOP"/> - </blockTableStyle> - <blockTableStyle id="Table2"> - <blockAlignment value="LEFT"/> - <blockValign value="TOP"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="0,0" stop="0,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="0,0" stop="0,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="1,0" stop="1,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="1,0" stop="1,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="2,0" stop="2,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="2,0" stop="2,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="3,0" stop="3,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="3,0" stop="3,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="4,0" stop="4,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="4,0" stop="4,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="5,0" stop="5,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="5,0" stop="5,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="6,0" stop="6,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="6,0" stop="6,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="7,0" stop="7,-1"/> - <lineStyle kind="LINEAFTER" colorName="#000000" start="7,0" stop="7,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="7,0" stop="7,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="0,1" stop="0,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="1,1" stop="1,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="2,1" stop="2,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="3,1" stop="3,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="4,1" stop="4,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="5,1" stop="5,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="6,1" stop="6,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="7,1" stop="7,-1"/> - <lineStyle kind="LINEAFTER" colorName="#000000" start="7,1" stop="7,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/> - <blockBackground colorName="#ffcc99" start="0,0" stop="0,-1"/> - <blockBackground colorName="#ffcc99" start="1,0" stop="1,-1"/> - <blockBackground colorName="#ffcc99" start="2,0" stop="2,-1"/> - <blockBackground colorName="#ffcc99" start="3,0" stop="3,-1"/> - <blockBackground colorName="#ffcc99" start="4,0" stop="4,-1"/> - <blockBackground colorName="#ffcc99" start="5,0" stop="5,-1"/> - <blockBackground colorName="#ffcc99" start="6,0" stop="6,-1"/> - <blockBackground colorName="#ffcc99" start="7,0" stop="7,-1"/> - <blockBackground colorName="#ffffff" start="0,1" stop="0,-1"/> - <blockBackground colorName="#ffffff" start="1,1" stop="1,-1"/> - <blockBackground colorName="#ffffff" start="2,1" stop="2,-1"/> - <blockBackground colorName="#ffffff" start="3,1" stop="3,-1"/> - <blockBackground colorName="#ffffff" start="4,1" stop="4,-1"/> - <blockBackground colorName="#ffffff" start="5,1" stop="5,-1"/> - <blockBackground colorName="#ffffff" start="6,1" stop="6,-1"/> - <blockBackground colorName="#ffffff" start="7,1" stop="7,-1"/> - </blockTableStyle> - <initialize> - <paraStyle name="all" alignment="justify"/> - </initialize> - <paraStyle name="P1" fontName="Times-Roman" alignment="RIGHT"/> - <paraStyle name="P2" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT"/> - <paraStyle name="P3" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER"/> - <paraStyle name="P4" fontName="Helvetica" fontSize="12.0" leading="15" alignment="CENTER"/> - <paraStyle name="P5" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT"/> - <paraStyle name="P6" rightIndent="0.0" leftIndent="71.0" fontName="Helvetica" fontSize="10.0" leading="13" alignment="RIGHT"/> - <paraStyle name="P7" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER"/> - <paraStyle name="P8" fontName="Helvetica" fontSize="12.0" leading="15" alignment="CENTER"/> - <paraStyle name="P9" fontName="Helvetica" fontSize="12.0" leading="15" alignment="LEFT"/> - <paraStyle name="P10" fontName="Helvetica" fontSize="12.0" leading="15" alignment="LEFT"/> - <paraStyle name="P11" fontName="Helvetica" fontSize="12.0" leading="15" alignment="CENTER"/> - <paraStyle name="P12" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT"/> - <paraStyle name="P13" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER"/> - <paraStyle name="P14" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT"/> - <paraStyle name="P15" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT"/> - <paraStyle name="P16" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="10.0" leading="13" alignment="RIGHT"/> - <paraStyle name="P17" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER"/> - <paraStyle name="Standard" fontName="Times-Roman"/> - <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/> - <paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/> - <paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/> - <paraStyle name="Caption" fontName="Times-Roman" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/> - <paraStyle name="Index" fontName="Times-Roman"/> - <paraStyle name="Table Contents" fontName="Times-Roman"/> - <paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER"/> - <paraStyle name="Footer" fontName="Times-Roman"/> - <paraStyle name="MP1" fontName="Times-Roman" alignment="RIGHT"/> - </stylesheet> - <images/> - <story> - <para style="P2">[[ repeatIn(objects, 'o') ]]</para> - <blockTable colWidths="249.0,249.0" style="Table1"> - <tr> - <td> - <para style="P10"> - <font face="Times-Roman" size="10.0">[[ get_company(o) ]]</font> - </para> - </td> - <td> - <para style="P16"> - <font face="Times-Roman">REGISTRO IVA </font> - </para> - <para style="P16"> - <font face="Times-Roman">VENDITE </font> - </para> - </td> - </tr> - </blockTable> - <para style="P2"> - <font color="white"> </font> - </para> - <para style="P11">[[ o.name ]] </para> - <para style="P2"> - <font color="white"> </font> - </para> - <blockTable colWidths="39.0,50.0,92.0,45.0,54.0,76.0,69.0,74.0" repeatRows="1" style="Table2"> - <tr> - <td> - <para style="P7">Periodo</para> - </td> - <td> - <para style="P7">Protocollo</para> - </td> - <td> - <para style="P7">Cliente</para> - </td> - <td> - <para style="P7">Numero</para> - </td> - <td> - <para style="P7">Data fattura</para> - </td> - <td> - <para style="P7">Aliquota</para> - </td> - <td> - <para style="P7">Imponibile</para> - </td> - <td> - <para style="P7">Imposta</para> - </td> - </tr> - <tr> - <td> - <para style="P3">[[ repeatIn(get_lines(o), 'line') ]]</para> - <para style="P3">[[ line['periodo'] ]]</para> - </td> - <td> - <para style="P3">[[ line['protocollo'] ]]</para> - </td> - <td> - <para style="P3">[[ line['causale'] ]]</para> - </td> - <td> - <para style="P3">[[ line['numero'] ]]</para> - </td> - <td> - <para style="P3">[[ line['data_doc'] ]]</para> - </td> - <td> - <para style="P14">[[ line['aliquota'] ]]</para> - </td> - <td> - <para style="P15">[[ line['imponibile'] ]]</para> - </td> - <td> - <para style="P15">[[ line['imposta'] ]]</para> - </td> - </tr> - </blockTable> - <para style="P9"> - <font color="white"> </font> - </para> - <para style="P4"> - <font color="white"> </font> - </para> - <para style="P4"> - <font color="white"> </font> - </para> - </story> -</document> - diff --git a/addons/l10n_it/report/libroIVA_debito.py b/addons/l10n_it/report/libroIVA_debito.py deleted file mode 100644 index c7720ab69a1..00000000000 --- a/addons/l10n_it/report/libroIVA_debito.py +++ /dev/null @@ -1,80 +0,0 @@ -import datetime -import time -from report import report_sxw -from osv import osv -import pooler - - -class l10n_chart_it_report_libroIVA_debito(report_sxw.rml_parse): - - def __init__(self, cr, uid, name, context): - super(l10n_chart_it_report_libroIVA_debito,self).__init__(cr,uid,name,context) - self.localcontext.update({ - 'time' : time, - 'get_company' : self.get_company, - 'get_periods' : self.get_periods, - 'get_lines' : self.get_lines, - }) - - - def get_company(self,fiscal_year): - #print 'COMP = ',fiscal_year - return "" - - - def get_periods(self,fiscal_year): - #print 'Fiscal year id:',fiscal_year.id - obj=pooler.get_pool(self.cr.dbname).get('account.fiscalyear') - fy=obj.browse(self.cr,self.uid,fiscal_year.id) - #print 'Periods = ',fy.period_ids - res=[rec for rec in fy.period_ids] - #return fy.periods => non funziona?!? bool object !?!? - return res - - def get_invoices(self,period): - #print 'PERIOD = ',period.name - obj=pooler.get_pool(self.cr.dbname).get('account.invoice') - # Selezione tutte le fatture emesse nel periodo - self.cr.execute( """ - SELECT id FROM account_invoice - WHERE (state='open' OR state='paid') AND - period_id="""+str(period.id)+""" - AND (type='in_invoice' OR type='in_refund') - """) - ids=self.cr.fetchall() - #print 'IDS = ', - if ids: - ids=[id[0] for id in ids ] - invoices=obj.browse(self.cr,self.uid,ids) - #print 'INVOICES = ',invoices - return invoices - - def get_lines(self,fiscal_year): - res=[] - obj_fy=pooler.get_pool(self.cr.dbname).get('account.fiscalyear') - fy=obj_fy.browse(self.cr,self.uid,fiscal_year.id) - for period in fy.period_ids: - invoices=self.get_invoices(period) - for invoice in invoices: - d={'periodo': period.name} - d['protocollo']=invoice.number - #print 'PARTNER ',invoice.partner_id.name - causale=invoice.partner_id.name - #print 'CAUSALE = ',causale - d['causale']=causale - d['numero']=invoice.reference - d['data_doc']=invoice.date_invoice - for tax in invoice.tax_line: - #print '\tTAX: ',tax - d['aliquota']=tax.tax_code_id.name - d['imponibile']=tax.base - d['imposta']=tax.amount - res.append(d) - d={'periodo':'', 'protocollo':'', 'causale':'', 'numero':'', 'data_doc':'', } - return res - - - -report_sxw.report_sxw('report.l10n_it.report.libroIVA_debito','account.report_libroiva', - 'l10n_it/report/libroIVA_debito.rml', - parser=l10n_chart_it_report_libroIVA_debito,header=False) diff --git a/addons/l10n_it/report/libroIVA_debito.rml b/addons/l10n_it/report/libroIVA_debito.rml deleted file mode 100644 index ced847722af..00000000000 --- a/addons/l10n_it/report/libroIVA_debito.rml +++ /dev/null @@ -1,195 +0,0 @@ -<?xml version="1.0"?> -<document filename="test.pdf"> - <template pageSize="(612.0,792.0)" title="Test" author="Martin Simon" allowSplitting="20"> - <pageTemplate id="first"> - <frame id="first" x1="57.0" y1="57.0" width="498" height="678"/> - </pageTemplate> - </template> - <stylesheet> - <blockTableStyle id="Standard_Outline"> - <blockAlignment value="LEFT"/> - <blockValign value="TOP"/> - </blockTableStyle> - <blockTableStyle id="Table2"> - <blockAlignment value="LEFT"/> - <blockValign value="TOP"/> - </blockTableStyle> - <blockTableStyle id="Table1"> - <blockAlignment value="LEFT"/> - <blockValign value="TOP"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="0,0" stop="0,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="0,0" stop="0,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="1,0" stop="1,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="1,0" stop="1,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="2,0" stop="2,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="2,0" stop="2,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="3,0" stop="3,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="3,0" stop="3,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="4,0" stop="4,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="4,0" stop="4,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="5,0" stop="5,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="5,0" stop="5,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="6,0" stop="6,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="6,0" stop="6,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="7,0" stop="7,-1"/> - <lineStyle kind="LINEAFTER" colorName="#000000" start="7,0" stop="7,-1"/> - <lineStyle kind="LINEABOVE" colorName="#000000" start="7,0" stop="7,0"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="0,1" stop="0,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="0,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="1,1" stop="1,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="1,-1" stop="1,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="2,1" stop="2,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="2,-1" stop="2,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="3,1" stop="3,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="3,-1" stop="3,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="4,1" stop="4,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="4,-1" stop="4,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="5,1" stop="5,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="5,-1" stop="5,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="6,1" stop="6,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="6,-1" stop="6,-1"/> - <lineStyle kind="LINEBEFORE" colorName="#000000" start="7,1" stop="7,-1"/> - <lineStyle kind="LINEAFTER" colorName="#000000" start="7,1" stop="7,-1"/> - <lineStyle kind="LINEBELOW" colorName="#000000" start="7,-1" stop="7,-1"/> - <blockBackground colorName="#ffcc99" start="0,0" stop="0,-1"/> - <blockBackground colorName="#ffcc99" start="1,0" stop="1,-1"/> - <blockBackground colorName="#ffcc99" start="2,0" stop="2,-1"/> - <blockBackground colorName="#ffcc99" start="3,0" stop="3,-1"/> - <blockBackground colorName="#ffcc99" start="4,0" stop="4,-1"/> - <blockBackground colorName="#ffcc99" start="5,0" stop="5,-1"/> - <blockBackground colorName="#ffcc99" start="6,0" stop="6,-1"/> - <blockBackground colorName="#ffcc99" start="7,0" stop="7,-1"/> - <blockBackground colorName="#ffffff" start="0,1" stop="0,-1"/> - <blockBackground colorName="#ffffff" start="1,1" stop="1,-1"/> - <blockBackground colorName="#ffffff" start="2,1" stop="2,-1"/> - <blockBackground colorName="#ffffff" start="3,1" stop="3,-1"/> - <blockBackground colorName="#ffffff" start="4,1" stop="4,-1"/> - <blockBackground colorName="#ffffff" start="5,1" stop="5,-1"/> - <blockBackground colorName="#ffffff" start="6,1" stop="6,-1"/> - <blockBackground colorName="#ffffff" start="7,1" stop="7,-1"/> - </blockTableStyle> - <initialize> - <paraStyle name="all" alignment="justify"/> - </initialize> - <paraStyle name="P1" fontName="Times-Roman" alignment="RIGHT"/> - <paraStyle name="P2" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER"/> - <paraStyle name="P3" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT"/> - <paraStyle name="P4" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT"/> - <paraStyle name="P5" fontName="Helvetica" fontSize="12.0" leading="15" alignment="LEFT"/> - <paraStyle name="P6" fontName="Helvetica" fontSize="12.0" leading="15" alignment="CENTER"/> - <paraStyle name="P7" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT"/> - <paraStyle name="P8" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER"/> - <paraStyle name="P9" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT"/> - <paraStyle name="P10" fontName="Helvetica" fontSize="12.0" leading="15" alignment="LEFT"/> - <paraStyle name="P11" fontName="Helvetica" fontSize="12.0" leading="15" alignment="CENTER"/> - <paraStyle name="P12" rightIndent="0.0" leftIndent="0.0" fontName="Helvetica" fontSize="10.0" leading="13" alignment="RIGHT"/> - <paraStyle name="Standard" fontName="Times-Roman"/> - <paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/> - <paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/> - <paraStyle name="List" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/> - <paraStyle name="Caption" fontName="Times-Roman" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/> - <paraStyle name="Index" fontName="Times-Roman"/> - <paraStyle name="Table Contents" fontName="Times-Roman"/> - <paraStyle name="Table Heading" fontName="Times-Roman" alignment="CENTER"/> - <paraStyle name="Footer" fontName="Times-Roman"/> - <paraStyle name="MP1" fontName="Times-Roman" alignment="RIGHT"/> - </stylesheet> - <images/> - <story> - <para style="P7">[[ repeatIn(objects, 'o') ]]</para> - <blockTable colWidths="249.0,249.0" style="Table2"> - <tr> - <td> - <para style="P10"> - <font face="Times-Roman" size="10.0">[[ get_company(o) ]]</font> - </para> - </td> - <td> - <para style="P12"> - <font face="Times-Roman">REGISTRO IVA</font> - </para> - <para style="P12"> - <font face="Times-Roman">ACQUISTI</font> - </para> - </td> - </tr> - </blockTable> - <para style="P7"> - <font color="white"> </font> - </para> - <para style="P11">[[ o.name ]] </para> - <para style="P7"> - <font color="white"> </font> - </para> - <blockTable colWidths="39.0,50.0,92.0,45.0,54.0,76.0,69.0,74.0" repeatRows="1" style="Table1"> - <tr> - <td> - <para style="P8">Periodo</para> - </td> - <td> - <para style="P8">Protocollo</para> - </td> - <td> - <para style="P8">Fornitore</para> - </td> - <td> - <para style="P8">Numero</para> - </td> - <td> - <para style="P8">Data fattura</para> - </td> - <td> - <para style="P8">Aliquota</para> - </td> - <td> - <para style="P8">Imponibile</para> - </td> - <td> - <para style="P8">Imposta</para> - </td> - </tr> - <tr> - <td> - <para style="P2">[[ repeatIn(get_lines(o), 'line') ]]</para> - <para style="P2">[[ line['periodo'] ]]</para> - </td> - <td> - <para style="P2">[[ line['protocollo'] ]]</para> - </td> - <td> - <para style="P2">[[ line['causale'] ]]</para> - </td> - <td> - <para style="P2">[[ line['numero'] ]]</para> - </td> - <td> - <para style="P2">[[ line['data_doc'] ]]</para> - </td> - <td> - <para style="P3">[[ line['aliquota'] ]]</para> - </td> - <td> - <para style="P4">[[ line['imponibile'] ]]</para> - </td> - <td> - <para style="P4">[[ line['imposta'] ]]</para> - </td> - </tr> - </blockTable> - <para style="P5"> - <font color="white"> </font> - </para> - <para style="P6"> - <font color="white"> </font> - </para> - </story> -</document> - diff --git a/addons/l10n_it/report/normalized_oo2rml.xsl b/addons/l10n_it/report/normalized_oo2rml.xsl deleted file mode 100644 index 14fcf598e54..00000000000 --- a/addons/l10n_it/report/normalized_oo2rml.xsl +++ /dev/null @@ -1,696 +0,0 @@ -<?xml version="1.0" encoding="utf-8"?> -<xsl:stylesheet - version="1.0" - xmlns:xsl="http://www.w3.org/1999/XSL/Transform" - xmlns:fo="http://www.w3.org/1999/XSL/Format" - xmlns:office="http://openoffice.org/2000/office" - xmlns:style="http://openoffice.org/2000/style" - xmlns:text="http://openoffice.org/2000/text" - xmlns:table="http://openoffice.org/2000/table" - xmlns:draw="http://openoffice.org/2000/drawing" - xmlns:xlink="http://www.w3.org/1999/xlink" - xmlns:number="http://openoffice.org/2000/datastyle" - xmlns:svg="http://www.w3.org/2000/svg" - xmlns:chart="http://openoffice.org/2000/chart" - xmlns:dr3d="http://openoffice.org/2000/dr3d" - xmlns:math="http://www.w3.org/1998/Math/MathML" - xmlns:form="http://openoffice.org/2000/form" - xmlns:script="http://openoffice.org/2000/script" - office:class="text" office:version="1.0" - exclude-result-prefixes = "xsl fo office style text table draw xlink number svg chart dr3d math form script"> - - <!--TODO's: indent, picture cache (trml2pdf) --> - -<xsl:output method="xml" indent="yes" /> -<xsl:strip-space elements="*"/> - -<xsl:key name="text_style" match="style:style[@style:family='text']" use="@style:name" /> -<xsl:key name="page_break_before" match="style:style[@style:family='paragraph' and ./style:properties/@fo:break-before='page']" use="@style:name" /> -<xsl:key name="page_break_after" match="style:style[@style:family='paragraph' and ./style:properties/@fo:break-after='page']" use="@style:name" /> -<xsl:key name="table_column_style" match="style:style[@style:family='table-column']" use="@style:name" /> -<xsl:key name="table_cell_style" match="style:style[@style:family='table-cell']" use="@style:name" /> -<xsl:key name="paragraph_style" match="style:style[@style:family='paragraph']" use="@style:name" /> - -<xsl:template match="office:document-content"> - <document filename="test.pdf"> - <xsl:apply-templates select="office:automatic-styles" /> - <xsl:apply-templates select="office:body" /> - </document> -</xsl:template> - -<xsl:template name="page_size"> - <xsl:attribute name="pageSize"> - <xsl:text>(</xsl:text> - <xsl:value-of select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:page-width" /> - <xsl:text>,</xsl:text> - <xsl:value-of select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:page-height" /> - <xsl:text>)</xsl:text> - </xsl:attribute> -</xsl:template> - -<xsl:template name="fixed_frame"> - <xsl:for-each select="//draw:text-box"> - <frame> - <xsl:attribute name="id"><xsl:value-of select="./@draw:name" /></xsl:attribute> - <xsl:attribute name="x1"><xsl:value-of select="./@svg:x" /></xsl:attribute> - <xsl:attribute name="y1"> - <xsl:value-of - select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:page-height - ./@svg:y - ./@fo:min-height" /> - </xsl:attribute> - <xsl:attribute name="width"> - <xsl:value-of select="./@svg:width" /> - </xsl:attribute> - <xsl:attribute name="height"> - <xsl:value-of select="./@fo:min-height" /> - </xsl:attribute> - </frame> - </xsl:for-each> -</xsl:template> - -<xsl:template name="margin_sizes"> - <xsl:variable name="margin_left" select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:margin-left" /> - <xsl:variable name="margin_right" select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:margin-right" /> - <xsl:variable name="margin_top" select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:margin-top" /> - <xsl:variable name="margin_bottom" select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:margin-bottom" /> - <xsl:variable name="page_width" select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:page-width" /> - <xsl:variable name="page_height" select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:page-height" /> - <xsl:attribute name="x1"><xsl:value-of select="$margin_left" /></xsl:attribute> - <xsl:attribute name="y1"><xsl:value-of select="$margin_bottom" /></xsl:attribute> - <xsl:attribute name="width"><xsl:value-of select="$page_width - $margin_left - $margin_right"/></xsl:attribute> - <xsl:attribute name="height"><xsl:value-of select="$page_height - $margin_bottom - $margin_top"/></xsl:attribute> -</xsl:template> - -<xsl:template name="text_width"> - <!-- You need this for the workaround to make primitive outlines--> - <xsl:variable name="margin_left" select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:margin-left" /> - <xsl:variable name="margin_right" select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:margin-right" /> - <xsl:variable name="page_width" select="//transferredfromstylesxml/style:page-master[1]/style:properties/@fo:page-width" /> - <xsl:value-of select="$page_width - $margin_left - $margin_right - 18"/> -</xsl:template> - - - -<xsl:template match="office:automatic-styles"> - <!--<template pageSize="(21cm, 29.7cm)" leftMargin="1.0cm" rightMargin="2.0cm" topMargin="1.0cm" bottomMargin="1.0cm" title="Test" author="Martin Simon" allowSplitting="20">--> - <template pageSize="(21cm, 29.7cm)" title="Test" author="Martin Simon" allowSplitting="20"> - <xsl:call-template name="page_size" /> - <pageTemplate id="first"> - <xsl:call-template name="fixed_frame" /> - <frame id="first" x1="2cm" y1="2cm" width="17cm" height="26cm"> - <xsl:call-template name="margin_sizes" /> - </frame> - </pageTemplate> - </template> - <stylesheet> - <!--A table style to simulate primitive outlines -till the <addOutline> tag is implemented in trml2pdf --> - <blockTableStyle id="Standard_Outline"> - <blockAlignment value="LEFT"/> - <blockValign value="TOP"/> - </blockTableStyle> - <!--use two standard table grid styles like PyOpenOffice "Old Way": with and without a grid--> - <!--TODO insert table cell colors here, not within the <td> tag - otherwise - it will not work with flowables as cell content--> - <xsl:call-template name="make_blocktablestyle" /> - <initialize> - <paraStyle name="all" alignment="justify" /> - </initialize> - <xsl:apply-templates select="style:style" /> - </stylesheet> -</xsl:template> - -<xsl:template name="make_blocktablestyle"> - <xsl:for-each select="//table:table"> - <xsl:variable name="test"> - <xsl:value-of select="./@table:name" /> - </xsl:variable> - <xsl:if test="not(boolean(count(preceding-sibling::table:table[@table:name=$test])))"> - <!--Test if this is the first table with this style, nested tables not counted--> - <blockTableStyle id="{@table:name}"> - <xsl:if test=".//draw:image"> - <blockTopPadding value="0"/> - <blockBottomPadding value="0"/> - </xsl:if> - <blockAlignment value="LEFT" /> - <blockValign value="TOP" /> - <xsl:call-template name="make_linestyle" /> - <xsl:call-template name="make_tablebackground" /> - </blockTableStyle> - </xsl:if> - </xsl:for-each> -</xsl:template> - -<xsl:template name="make_linestyle"> - <xsl:for-each select=".//table:table-row"> - <xsl:variable name="row" select="position() - 1"/> - <xsl:for-each select=".//table:table-cell"> - <xsl:variable name="col" select="position() - 1"/> - <xsl:variable name="linebefore"> - <xsl:value-of select="key('table_cell_style',@table:style-name)/style:properties/@fo:border-left"/> - </xsl:variable> - <xsl:if test="not($linebefore='') and not($linebefore='none')"> - <xsl:variable name="colorname"> - <xsl:value-of select="substring-after($linebefore,'#')"/> - </xsl:variable> - <lineStyle kind="LINEBEFORE" colorName="#{$colorname}" start="{$col},{$row}" stop="{$col},-1"/> - </xsl:if> - <xsl:variable name="lineafter"> - <xsl:value-of select="key('table_cell_style',@table:style-name)/style:properties/@fo:border-right"/> - </xsl:variable> - <xsl:if test="not($lineafter='') and not($lineafter='none')"> - <xsl:variable name="colorname"> - <xsl:value-of select="substring-after($lineafter,'#')"/> - </xsl:variable> - <lineStyle kind="LINEAFTER" colorName="#{$colorname}" start="{$col},{$row}" stop="{$col},-1"/> - </xsl:if> - <xsl:variable name="lineabove"> - <xsl:value-of select="key('table_cell_style',@table:style-name)/style:properties/@fo:border-top"/> - </xsl:variable> - <xsl:if test="not($lineabove='') and not($lineabove='none')"> - <xsl:variable name="colorname"> - <xsl:value-of select="substring-after($lineabove,'#')"/> - </xsl:variable> - <lineStyle kind="LINEABOVE" colorName="#{$colorname}" start="{$col},{$row}" stop="{$col},{$row}"/> - </xsl:if> - <xsl:variable name="linebelow"> - <xsl:value-of select="key('table_cell_style',@table:style-name)/style:properties/@fo:border-bottom"/> - </xsl:variable> - <xsl:if test="not($linebelow='') and not($linebelow='none')"> - <xsl:variable name="colorname"> - <xsl:value-of select="substring-after($linebelow,'#')"/> - </xsl:variable> - <lineStyle kind="LINEBELOW" colorName="#{$colorname}" start="{$col},{-1}" stop="{$col},{-1}"/> - </xsl:if> - <xsl:variable name="grid"> - <xsl:value-of select="key('table_cell_style',@table:style-name)/style:properties/@fo:border"/> - </xsl:variable> - <xsl:if test="not($grid='') and not($grid='none')"> - <xsl:variable name="colorname"> - <xsl:value-of select="substring-after($grid,'#')"/> - </xsl:variable> - <!-- Don't use grid because we don't need a line between each rows --> - <lineStyle kind="LINEBEFORE" colorName="#{$colorname}" start="{$col},{$row}" stop="{$col},-1"/> - <lineStyle kind="LINEAFTER" colorName="#{$colorname}" start="{$col},{$row}" stop="{$col},-1"/> - <lineStyle kind="LINEABOVE" colorName="#{$colorname}" start="{$col},{$row}" stop="{$col},{$row}"/> - <lineStyle kind="LINEBELOW" colorName="#{$colorname}" start="{$col},{-1}" stop="{$col},{-1}"/> - </xsl:if> - </xsl:for-each> - </xsl:for-each> -</xsl:template> - -<!-- Was needed to simulate bulleted lists: -<xsl:template match="text:ordered-list|text:unordered-list"> - <xsl:variable name = "text_width"> - <xsl:call-template name="text_width" /> - </xsl:variable> - <blockTable style="Standard_Outline" colWidths="18,{$text_width}"> - <xsl:apply-templates match="text:list-item" /> -</blockTable> -</xsl:template> - -<xsl:template match="text:list-item"> - <tr> - <td><para><font face="Helvetica-Bold" size="10">*</font></para></td> - <td> - <xsl:apply-templates /> - </td> - </tr> -</xsl:template> - ---> - - -<xsl:template match="office:body"> - <story> - <xsl:apply-templates /> - <xsl:for-each select="//draw:text-box"> - <currentFrame> - <xsl:attribute name="name"> - <xsl:value-of select="./@draw:name" /> - </xsl:attribute> - </currentFrame> - <xsl:apply-templates> - <xsl:with-param name="skip_draw" select="0" /> - </xsl:apply-templates> - <frameEnd /> - </xsl:for-each> - <xsl:for-each select="//text:ordered-list"> - <para><seqReset id="{//text:ordered-list/@text:style-name}"/></para> - </xsl:for-each> - </story> -</xsl:template> - -<xsl:template match="table:table"> - <blockTable> - <xsl:attribute name="colWidths"> - <xsl:call-template name="make_columns" /> - </xsl:attribute> - <xsl:call-template name="make_tableheaders" /> - <xsl:attribute name="style"> - <xsl:value-of select="@table:name" /> - </xsl:attribute> - <xsl:apply-templates /> - </blockTable> -</xsl:template> - -<xsl:template name="make_tableheaders"> - <xsl:if test="boolean(count(table:table-header-rows))"> - <xsl:attribute name="repeatRows">1</xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template name="make_tablebackground"> - <xsl:for-each select=".//table:table-row"> - <!--Be careful when there are table:table-header-rows as - parent node of table:table-row --> - <xsl:variable name="row" select="position() - 1" /> - <xsl:for-each select="./table:table-cell"> - <xsl:variable name="col" select="position() - 1" /> - <xsl:variable name="background"> - <xsl:value-of select="key('table_cell_style',@table:style-name)/style:properties/@fo:background-color" /> - </xsl:variable> - <xsl:if test="not($background='') and boolean(key('table_cell_style',@table:style-name)/style:properties/@fo:background-color) and starts-with($background,'#')"> - <!--only RGB hexcolors are accepted --> - <blockBackground colorName="{$background}" start="{$col},{$row}" stop="{$col},-1" /> - </xsl:if> - </xsl:for-each> - </xsl:for-each> -</xsl:template> - -<xsl:template name="make_columns"> - <xsl:variable name="columns" > - <xsl:for-each select="table:table-column"> - <xsl:value-of select="key('table_column_style',@table:style-name)/style:properties/@style:column-width" /> - <xsl:text>,</xsl:text> - </xsl:for-each> - </xsl:variable> - <xsl:value-of select="substring($columns,1,string-length($columns) - 1)" /> - <!--strip the last comma--> -</xsl:template> - -<xsl:template match="table:table-row"> - <tr> - <xsl:apply-templates /> - </tr> -</xsl:template> - -<xsl:template match="table:table-cell"> - <td> - <xsl:apply-templates /> - </td> -</xsl:template> - -<xsl:template match="text:section"> - <section> - <xsl:apply-templates /> - </section> -</xsl:template> - - -<xsl:template match="text:span"> - <font> - <xsl:call-template name="make_fontnames_span" /> - <xsl:call-template name="make_fontsize_span" /> - <xsl:apply-templates /> - </font> -</xsl:template> - -<xsl:template name="make_fontsize_span"> - <xsl:variable name ="fontsize"> - <xsl:value-of select="key('text_style',@text:style-name)/style:properties/@fo:font-size" /> - </xsl:variable> - <xsl:if test="not($fontsize='') and boolean(key('text_style',@text:style-name)/style:properties/@fo:font-size)" > - <xsl:attribute name="size"> - <xsl:value-of select="$fontsize" /> - </xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template name="make_fontnames_span"> - <xsl:attribute name="face"> - <xsl:call-template name="make_fontnames"> - <xsl:with-param name="fontName" select="key('text_style',@text:style-name)/style:properties/@style:font-name" /> - <xsl:with-param name="fontWeight" select="key('text_style',@text:style-name)/style:properties/@fo:font-weight" /> - <xsl:with-param name="fontStyle" select="key('text_style',@text:style-name)/style:properties/@fo:font-style" /> - </xsl:call-template> - </xsl:attribute> -</xsl:template> - -<xsl:template name="make_image"> - <illustration height="{.//draw:image/@svg:height}" width="{.//draw:image/@svg:width}"> - <image x="0" y="0" file="{substring-after(.//draw:image/@xlink:href,'#Pictures/')}" height="{.//draw:image/@svg:height}" width="{.//draw:image/@svg:width}" /> - </illustration> -</xsl:template> - -<xsl:template name="empty_paragraph"> - <xsl:if test="not(boolean(count(descendant::node())))"> - <xsl:call-template name="distance_point"> - <xsl:with-param name="background" select="key('paragraph_style',@text:style-name)/style:properties/@fo:background-color" /> - </xsl:call-template> - </xsl:if> -</xsl:template> - -<xsl:template name="distance_point"> - <xsl:param name="background" /> - <xsl:param name="tab_stop"></xsl:param> - <xsl:variable name="local_back"> - <xsl:choose> - <xsl:when test="not(boolean($background)) or not(contains($background,'#'))"> - <!-- Do not accept OO colors like "transparent", only hex-colors --> - <xsl:text>white</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:value-of select="$background" /> - </xsl:otherwise> - </xsl:choose> - </xsl:variable> - <font color="{$local_back}"> - <xsl:text> </xsl:text> - <xsl:if test="boolean($tab_stop)"> - <!-- simulate a tabstop with white/background-color points --> - <xsl:text>.........</xsl:text> - </xsl:if> - </font> -</xsl:template> - -<xsl:template match="text:ordered-list"> - <xsl:apply-templates /> - - <!-- Reset the counter. seqreset is not a trml2pdf tag, but a Platypus Intra Paragraph Markup, - so it needs a dummy paragraph to enclose it --> -</xsl:template> - -<xsl:template name="make_listitem"> - <xsl:if test="(name(..)='text:list-item')"> - <xsl:attribute name="leftIndent">15</xsl:attribute> - <xsl:attribute name="bulletIndent">0</xsl:attribute> - <xsl:choose> - <xsl:when test="(name(../..)='text:unordered-list')"> - <xsl:variable name="fontsize"> - <xsl:value-of select="number(key('paragraph_style',@text:style-name)/style:properties/@fo:font-size)" /> - </xsl:variable> - <xsl:choose> - <xsl:when test="$fontsize='NaN'"> - <!-- you should exclude non-numerical values for bulletFontSize. <== Sometimes the preprocessing went wrong.--> - <!--use a default bullet font size--> - <xsl:attribute name="bulletFontSize">6</xsl:attribute> - </xsl:when> - <xsl:otherwise> - <xsl:attribute name="bulletFontSize"><xsl:value-of select="floor(($fontsize div 2) + 1)" /></xsl:attribute> - </xsl:otherwise> - </xsl:choose> - <xsl:attribute name="bulletFontName">ZapfDingbats</xsl:attribute> - <xsl:attribute name="bulletText">l</xsl:attribute> - </xsl:when> - <xsl:otherwise> - <!-- Generate the numbers for an ordered list --> - <xsl:variable name="size"> - <xsl:value-of select="key('paragraph_style',@text:style-name)/style:properties/@fo:font-size" /> - </xsl:variable> - <!-- For ordered lists we use the bullet tag from Platypus Intra Paragraph Markup --> - <bullet> - <xsl:if test="not($size='') and boolean(key('paragraph_style',@text:style-name)/style:properties/@fo:font-size)"> - <xsl:attribute name="size"> - <!-- adapt the fontsize to the fontsize of the current paragraph --> - <xsl:value-of select="$size" /> - </xsl:attribute> - </xsl:if> - <seq id="{../../@text:style-name}"/>.</bullet> - - </xsl:otherwise> - </xsl:choose> - </xsl:if> -</xsl:template> - -<xsl:template match="text:drop-down"> - <xsl:value-of select="text:label[2]/@text:value" /> -</xsl:template> - - -<xsl:template match="text:p|text:h"> - <xsl:param name="skip_draw" select="1" /> - <xsl:if test="boolean(key('page_break_before',@text:style-name))" > - <pageBreak /> - </xsl:if> - <xsl:choose> - <xsl:when test="boolean(.//draw:image)"> - <xsl:call-template name="make_image" /> - </xsl:when> - <xsl:when test="boolean(name(..) = 'draw:text-box') and boolean($skip_draw)"> - </xsl:when> - <xsl:otherwise> - <para> - <xsl:attribute name="style"> - <xsl:value-of select="@text:style-name" /> - </xsl:attribute> - <xsl:call-template name="make_listitem" /> - <xsl:apply-templates /> - <xsl:call-template name="empty_paragraph" /> - </para> - </xsl:otherwise> - </xsl:choose> - <xsl:if test="boolean(key('page_break_after',@text:style-name))" > - <pageBreak /> - </xsl:if> -</xsl:template> - -<xsl:template match="text:p/text:tab-stop"> - <!-- simulate a tabstop --> - <xsl:call-template name="distance_point"> - <xsl:with-param name="background" select="key('paragraph_style',@text:style-name)/style:properties/@fo:background-color" /> - <xsl:with-param name="tab_stop">yes</xsl:with-param> - </xsl:call-template> -</xsl:template> - -<!-- experimental - switched off -<xsl:template match="text:h"> - <para> - <xsl:attribute name="style"> - <xsl:value-of select="@text:style-name" /> - </xsl:attribute> - <xsl:call-template name="make_number" /> - <xsl:apply-templates /> - <xsl:call-template name="empty_paragraph" /> - </para> -</xsl:template> - -<xsl:template name="make_number"> - <xsl:choose> - <xsl:when test="@text:level='1'"> - <xsl:number format="1. " /> - </xsl:when> - <xsl:when test="@text:level='2'"> - <xsl:number count="text:h[@text:level='1']|text:h[text:level='2']" level="any" format="1.1." /> - </xsl:when> - </xsl:choose> -</xsl:template> - ---> - -<xsl:template match="style:style[@style:family='paragraph']"> - <paraStyle> - <xsl:attribute name="name"> - <xsl:value-of select="@style:name" /> - </xsl:attribute> - <xsl:call-template name="make_indent_paragraph" /> - <xsl:call-template name="make_fontnames_paragraph" /> - <xsl:call-template name="make_fontsize" /> - <!--<xsl:call-template name="make_parent" /> not necessary - - parent styles processed by PyOpenOffice --> - <xsl:call-template name="make_alignment" /> - <xsl:call-template name="make_background" /> - <xsl:call-template name="make_space_beforeafter" /> - <xsl:call-template name="make_fontcolor" /> - </paraStyle> -</xsl:template> - -<xsl:template name="make_indent_paragraph"> - <xsl:variable name="right_indent"><xsl:value-of select="style:properties/@fo:margin-right" /></xsl:variable> - <xsl:variable name="left_indent"><xsl:value-of select="style:properties/@fo:margin-left" /></xsl:variable> - <xsl:if test="not($right_indent='') and boolean(style:properties/@fo:margin-right)"> - <xsl:attribute name="rightIndent"> - <xsl:value-of select="$right_indent" /> - </xsl:attribute> - </xsl:if> - <xsl:if test="not($left_indent='') and boolean(style:properties/@fo:margin-left)"> - <xsl:attribute name="leftIndent"> - <xsl:value-of select="$left_indent" /> - </xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template name="make_background"> - <xsl:variable name="background"> - <xsl:value-of select="style:properties/@fo:background-color" /> - </xsl:variable> - <xsl:if test="not($background='') and boolean(style:properties/@fo:background-color) and starts-with($background,'#')" > - <xsl:attribute name="backColor"> - <xsl:value-of select="$background" /> - </xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template name="make_space_beforeafter"> - <xsl:variable name="before"> - <xsl:value-of select="style:properties/@fo:margin-top" /> - </xsl:variable> - <xsl:variable name="after"> - <xsl:value-of select="style:properties/@fo:margin-bottom" /> - </xsl:variable> - <xsl:if test="not($before='') and boolean(style:properties/@fo:margin-top)" > - <xsl:attribute name="spaceBefore"> - <xsl:value-of select="$before" /> - </xsl:attribute> - </xsl:if> - <xsl:if test="not($after='') and boolean(style:properties/@fo:margin-bottom)" > - <xsl:attribute name="spaceAfter"> - <xsl:value-of select="$after" /> - </xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template name="make_fontsize"> - <xsl:variable name="fontSize"> - <xsl:value-of select="style:properties/@fo:font-size" /> - </xsl:variable> - <xsl:if test="not($fontSize='') and boolean(style:properties/@fo:font-size)"> - <xsl:attribute name="fontSize"> - <xsl:value-of select="$fontSize" /> - </xsl:attribute> - <xsl:attribute name="leading"> - <xsl:value-of select="$fontSize + floor($fontSize div 5) + 1" /> - <!--use a standard leading related to the font size --> - </xsl:attribute> - </xsl:if> -</xsl:template> - -<!--this template is not needed anymore for "normalized" sxw files --> -<xsl:template name="make_parent"> - <xsl:variable name="parent"> - <xsl:value-of select="@style:parent-style-name" /> - </xsl:variable> - <xsl:if test="not($parent='') and boolean(@style:parent-style-name)"> - <xsl:attribute name="parent"> - <xsl:value-of select="$parent" /> - </xsl:attribute> - </xsl:if> -</xsl:template> - -<xsl:template name="make_alignment"> - <xsl:variable name="alignment"> - <xsl:value-of select="style:properties/@fo:text-align" /> - </xsl:variable> - <xsl:if test="not($alignment='') and boolean(style:properties/@fo:text-align)"> - <xsl:choose> - <xsl:when test="$alignment='start'"> - <xsl:attribute name="alignment">LEFT</xsl:attribute> - </xsl:when> - <xsl:when test="$alignment='center'"> - <xsl:attribute name="alignment">CENTER</xsl:attribute> - </xsl:when> - <xsl:when test="$alignment='end'"> - <xsl:attribute name="alignment">RIGHT</xsl:attribute> - </xsl:when> - <xsl:when test="$alignment='justify'"> - <xsl:attribute name="alignment">JUSTIFY</xsl:attribute> - </xsl:when> - </xsl:choose> - </xsl:if> -</xsl:template> - -<xsl:template name="make_fontnames_paragraph"> - <xsl:attribute name="fontName"> - <xsl:call-template name="make_fontnames"> - <xsl:with-param name="fontName" select="style:properties/@style:font-name" /> - <xsl:with-param name="fontWeight" select="style:properties/@fo:font-weight" /> - <xsl:with-param name="fontStyle" select="style:properties/@fo:font-style" /> - </xsl:call-template> - </xsl:attribute> -</xsl:template> - -<xsl:template name="make_fontnames"> - <!--much too verbose, needs improvement--> -<xsl:param name="fontName" /> -<xsl:param name="fontWeight" /> -<xsl:param name="fontStyle" /> -<xsl:choose> -<xsl:when test="not($fontName='') and boolean($fontName)"> - <xsl:choose> - <xsl:when test="contains($fontName,'Courier')"> - <xsl:choose> - <xsl:when test="($fontWeight='bold') and ($fontStyle='italic')"> - <xsl:text>Courier-BoldOblique</xsl:text> - </xsl:when> - <xsl:when test="($fontWeight='bold') and not ($fontStyle='italic')"> - <xsl:text>Courier-Bold</xsl:text> - </xsl:when> - <xsl:when test="not($fontWeight='bold') and ($fontStyle='italic')"> - <xsl:text>Courier-Oblique</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>Courier</xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:when test="contains($fontName,'Helvetica') or contains($fontName,'Arial') or contains($fontName,'Sans')"> - <xsl:choose> - <xsl:when test="($fontWeight='bold') and ($fontStyle='italic')"> - <xsl:text>Helvetica-BoldOblique</xsl:text> - </xsl:when> - <xsl:when test="($fontWeight='bold') and not ($fontStyle='italic')"> - <xsl:text>Helvetica-Bold</xsl:text> - </xsl:when> - <xsl:when test="not($fontWeight='bold') and ($fontStyle='italic')"> - <xsl:text>Helvetica-Oblique</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>Helvetica</xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:when> - <xsl:otherwise> - <xsl:choose> - <xsl:when test="($fontWeight='bold') and ($fontStyle='italic')"> - <xsl:text>Times-BoldItalic</xsl:text> - </xsl:when> - <xsl:when test="($fontWeight='bold') and not ($fontStyle='italic')"> - <xsl:text>Times-Bold</xsl:text> - </xsl:when> - <xsl:when test="not($fontWeight='bold') and ($fontStyle='italic')"> - <xsl:text>Times-Italic</xsl:text> - </xsl:when> - <xsl:otherwise> - <xsl:text>Times-Roman</xsl:text> - </xsl:otherwise> - </xsl:choose> - </xsl:otherwise> - </xsl:choose> -</xsl:when> -<xsl:otherwise> - <!--Use this as default --> - <xsl:text>Times-Roman</xsl:text> -</xsl:otherwise> -</xsl:choose> -</xsl:template> -<xsl:template name="make_fontcolor"> - <xsl:variable name="textColor"> - <xsl:value-of select="style:properties/@fo:color"/> - </xsl:variable> - <xsl:if test="not($textColor='') and boolean(style:properties/@fo:color)"> - <xsl:attribute name="textColor"> - <xsl:value-of select="$textColor" /> - </xsl:attribute> - </xsl:if> -</xsl:template> - -<!-- -This stylesheet is part of: -PyOpenOffice Version 0.4 -Copyright (C) 2005: Martin Simon -Homepage: www.bezirksreiter.de - -GNU LESSER GENERAL PUBLIC LICENSE Version 2.1, February 1999 ---> - -</xsl:stylesheet> - - diff --git a/addons/l10n_it/security/ir.model.access.csv b/addons/l10n_it/security/ir.model.access.csv deleted file mode 100644 index 8a8908511db..00000000000 --- a/addons/l10n_it/security/ir.model.access.csv +++ /dev/null @@ -1,3 +0,0 @@ -"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" -"access_l10n_it_report_manager","l10n_it.report account manager","model_account_report_libroiva","account.group_account_manager",1,1,1,1 -"access_l10n_it_report_user","l10n_it_report account user","model_account_report_libroiva","account.group_account_user",1,1,1,1 diff --git a/addons/l10n_ma/__init__.py b/addons/l10n_ma/__init__.py index 35aef5a2c44..070b09bdf33 100644 --- a/addons/l10n_ma/__init__.py +++ b/addons/l10n_ma/__init__.py @@ -21,3 +21,5 @@ import l10n_ma import report import wizard + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_ro/res_partner.py b/addons/l10n_ro/res_partner.py index f5521844a49..009aa76b62f 100644 --- a/addons/l10n_ro/res_partner.py +++ b/addons/l10n_ro/res_partner.py @@ -30,3 +30,5 @@ class res_partner(osv.osv): 'nrc' : fields.char('NRC', size=16, help='Registration number at the Registry of Commerce'), } res_partner() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_th/__init__.py b/addons/l10n_th/__init__.py index 45de899ed49..a4a5d907c6b 100644 --- a/addons/l10n_th/__init__.py +++ b/addons/l10n_th/__init__.py @@ -18,3 +18,5 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_th/__openerp__.py b/addons/l10n_th/__openerp__.py index 1b2c4771aee..4ab8f7d355c 100644 --- a/addons/l10n_th/__openerp__.py +++ b/addons/l10n_th/__openerp__.py @@ -38,3 +38,5 @@ Thai accounting chart and localization. 'certificate' : '00722263103978957725', 'images': ['images/config_chart_l10n_th.jpeg','images/l10n_th_chart.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/l10n_uk/l10n_uk_wizard.xml b/addons/l10n_uk/l10n_uk_wizard.xml index b7da2ee5c6b..b4f96afc700 100644 --- a/addons/l10n_uk/l10n_uk_wizard.xml +++ b/addons/l10n_uk/l10n_uk_wizard.xml @@ -34,7 +34,7 @@ <record id="l10n_uk_latest_wizard_id" model="ir.actions.todo">
<field name="action_id" ref="action_wizard_multi_chart_uk"/>
<field name="sequence">10</field>
- <field name="restart">onskip</field>
+ <field name="type">once</field>
<field name="state">open</field>
</record>
diff --git a/addons/lunch/__openerp__.py b/addons/lunch/__openerp__.py index 6d5cd576912..02092ffd366 100644 --- a/addons/lunch/__openerp__.py +++ b/addons/lunch/__openerp__.py @@ -20,7 +20,7 @@ ############################################################################## { - "name": "Lunch", + "name": "Lunch Orders", "author": "OpenERP SA", 'complexity': "easy", "Description": """ @@ -55,6 +55,7 @@ "demo_xml": ['lunch_demo.xml'], "test": ['test/test_lunch.yml', 'test/lunch_report.yml'], "installable": True, + 'application': True, "certificate" : "001292377792581874189", 'images': ['images/cash_moves.jpeg','images/lunch_orders.jpeg','images/products.jpeg'], } diff --git a/addons/lunch/report/report_lunch_order.py b/addons/lunch/report/report_lunch_order.py index 05f730db740..7e2b8de9f49 100644 --- a/addons/lunch/report/report_lunch_order.py +++ b/addons/lunch/report/report_lunch_order.py @@ -64,3 +64,5 @@ class report_lunch_order(osv.osv): ) """) report_lunch_order() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/mail/__openerp__.py b/addons/mail/__openerp__.py index 1cb97ce182e..94f2361d05d 100644 --- a/addons/mail/__openerp__.py +++ b/addons/mail/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Email Subsystem', + 'name': 'Emails Management', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ A generic email subsystem with message storage and queuing diff --git a/addons/mail/mail_message_view.xml b/addons/mail/mail_message_view.xml index 3169bca76c2..2bf2756869e 100644 --- a/addons/mail/mail_message_view.xml +++ b/addons/mail/mail_message_view.xml @@ -136,6 +136,7 @@ </record> <act_window domain="[('partner_id', '=', active_id), ('email_from', '!=', False)]" + context="{'default_partner_id': active_id}" id="act_res_partner_emails" name="Emails" res_model="mail.message" src_model="res.partner" diff --git a/addons/mail/mail_thread_view.xml b/addons/mail/mail_thread_view.xml index bd10a72faf2..3a7ed8f46fe 100644 --- a/addons/mail/mail_thread_view.xml +++ b/addons/mail/mail_thread_view.xml @@ -8,29 +8,10 @@ <field name="arch" type="xml"> <form string="Email Thread"> <separator string="Communication History" colspan="4"/> - <field name="message_ids" nolabel="1" colspan="4" mode="tree,form"> + <field name="message_ids" nolabel="1" colspan="4" mode="tree"> <tree string="Communication History"> <field name="display_text"/> </tree> - <form string="Message"> - <field name="subject" widget="char"/> - <field name="date"/> - <field name="user_id"/> - <notebook colspan="4"> - <page string="Email Details"> - <group col="4" colspan="4"> - <separator string="Email Details" colspan="4"/> - <field name="email_from"/> - <field name="email_to"/> - <field name="email_cc"/> - <field name="email_bcc"/> - </group> - </page> - <page string="Attachments"> - <field name="attachment_ids" nolabel="1" colspan="4" /> - </page> - </notebook> - </form> </field> </form> </field> diff --git a/addons/mail/wizard/mail_compose_message.py b/addons/mail/wizard/mail_compose_message.py index 93bf0b004d8..f5906d2b186 100644 --- a/addons/mail/wizard/mail_compose_message.py +++ b/addons/mail/wizard/mail_compose_message.py @@ -236,7 +236,7 @@ class mail_compose_message(osv.osv_memory): attachments=attachment, references=references, res_id=int(mail.res_id), subtype=mail.subtype, headers=headers, context=context) # in normal mode, we send the email immediately, as the user expects us to (delay should be sufficiently small) - mail_message.send(cr, uid, [msg_id], context) + mail_message.send(cr, uid, [msg_id], context=context) return {'type': 'ir.actions.act_window_close'} diff --git a/addons/marketing_campaign/__openerp__.py b/addons/marketing_campaign/__openerp__.py index 44a2f1e30bd..61492300c97 100644 --- a/addons/marketing_campaign/__openerp__.py +++ b/addons/marketing_campaign/__openerp__.py @@ -60,6 +60,7 @@ Note: If you need demo data, you can install the marketing_campaign_crm_demo mod 'demo_xml': [ ], 'installable': True, + 'application': True, 'active': False, 'certificate' : '00421723279617928365', 'images': ['images/campaign.png', 'images/campaigns.jpeg','images/email_account.jpeg','images/email_templates.jpeg','images/segments.jpeg'], diff --git a/addons/marketing_campaign/marketing_campaign.py b/addons/marketing_campaign/marketing_campaign.py index 547281911c4..82832134c27 100644 --- a/addons/marketing_campaign/marketing_campaign.py +++ b/addons/marketing_campaign/marketing_campaign.py @@ -844,3 +844,5 @@ class report_xml(osv.osv): report_xml() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/marketing_campaign/report/campaign_analysis.py b/addons/marketing_campaign/report/campaign_analysis.py index af04a7e6dff..ebbb6034a1a 100644 --- a/addons/marketing_campaign/report/campaign_analysis.py +++ b/addons/marketing_campaign/report/campaign_analysis.py @@ -99,3 +99,5 @@ class campaign_analysis(osv.osv): ) """) campaign_analysis() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/marketing_campaign_crm_demo/__init__.py b/addons/marketing_campaign_crm_demo/__init__.py index 50a14119520..4c241b72be9 100644 --- a/addons/marketing_campaign_crm_demo/__init__.py +++ b/addons/marketing_campaign_crm_demo/__init__.py @@ -1 +1,3 @@ # Debian packaging removes blank files, so this comment is added. + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/marketing_campaign_crm_demo/__openerp__.py b/addons/marketing_campaign_crm_demo/__openerp__.py index 4841cc1a2e8..d394088aca5 100644 --- a/addons/marketing_campaign_crm_demo/__openerp__.py +++ b/addons/marketing_campaign_crm_demo/__openerp__.py @@ -21,13 +21,13 @@ { - "name" : "Demo data for Marketing Campaign", + "name" : "Marketing Campaign, demo data", "version" : "1.0", "depends" : ["marketing_campaign", "crm", ], "author" : "OpenERP SA", - "category": 'Hidden', + "category": 'Marketing', "description": """ Demo data for the module marketing_campaign. ============================================ diff --git a/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml b/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml index ee11fbcdb75..abf29f2c011 100644 --- a/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml +++ b/addons/marketing_campaign_crm_demo/marketing_campaign_demo.xml @@ -34,137 +34,113 @@ <!-- Email tempalte --> <record id="email_template_1" model="email.template"> - <field name="def_subject">Thanks for showing interest in OpenERP</field> - <field name="def_to">info@tinyerp.com</field> - <field eval="[(6,0,[])]" name="allowed_groups"/> + <field name="subject">Thanks for showing interest in OpenERP</field> + <field name="email_to">info@tinyerp.com</field> <field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/> <field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/> - <field name="object_name" ref="crm.model_crm_lead"/> - <field eval="0" name="use_sign"/> - <field name="def_body_text">Hello,Thanks for generous interest you have shown in the openERP.Regards,OpenERP Team,</field> - <field name="template_language">mako</field> + <field name="model_id" ref="crm.model_crm_lead"/> + <field eval="0" name="user_signature"/> + <field name="body_text">Hello,Thanks for generous interest you have shown in the openERP.Regards,OpenERP Team,</field> <field name="name">For OpenERP OnDemand Free Trial 2010</field> - <field name="model_int_name">crm.lead</field> </record> <record id="email_template_2" model="email.template"> - <field name="def_subject">Propose to subscribe to the OpenERP Discovery Day on May 2010</field> - <field name="def_to">info@tinyerp.com</field> - <field eval="[(6,0,[])]" name="allowed_groups"/> + <field name="subject">Propose to subscribe to the OpenERP Discovery Day on May 2010</field> + <field name="email_to">info@tinyerp.com</field> <field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/> <field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/> - <field name="object_name" ref="crm.model_crm_lead"/> - <field eval="0" name="use_sign"/> - <field name="def_body_text">Hello,We have very good offer that might suit you. + <field name="model_id" ref="crm.model_crm_lead"/> + <field eval="0" name="user_signature"/> + <field name="body_text">Hello,We have very good offer that might suit you. We propose you to subscribe to the OpenERP Discovery Day on May 2010. If any further information required kindly revert back. We really appreciate your co-operation on this. Regards,OpenERP Team,</field> - <field name="template_language">mako</field> <field name="name">For OpenERP Discovery Day on May 2010</field> - <field name="model_int_name">crm.lead</field> </record> <record id="email_template_3" model="email.template"> - <field name="def_subject">Thanks for subscribing to the OpenERP Discovery Day</field> - <field name="def_to">info@tinyerp.com</field> - <field eval="[(6,0,[])]" name="allowed_groups"/> + <field name="subject">Thanks for subscribing to the OpenERP Discovery Day</field> + <field name="email_to">info@tinyerp.com</field> <field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/> <field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/> - <field name="object_name" ref="crm.model_crm_lead"/> - <field eval="0" name="use_sign"/> - <field name="def_body_text">Hello,Thanks for showing intrest and for subscribing to the OpenERP Discovery Day. + <field name="model_id" ref="crm.model_crm_lead"/> + <field eval="0" name="user_signature"/> + <field name="body_text">Hello,Thanks for showing intrest and for subscribing to the OpenERP Discovery Day. If any further information required kindly revert back. I really appreciate your co-operation on this. Regards,OpenERP Team,</field> - <field name="template_language">mako</field> <field name="name">For OpenERP Discovery Day</field> - <field name="model_int_name">crm.lead</field> </record> <record id="email_template_4" model="email.template"> - <field name="def_subject">Thanks for buying the OpenERP book</field> - <field name="def_to">info@tinyerp.com</field> - <field eval="[(6,0,[])]" name="allowed_groups"/> + <field name="subject">Thanks for buying the OpenERP book</field> + <field name="email_to">info@tinyerp.com</field> <field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/> <field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/> - <field name="object_name" ref="crm.model_crm_lead"/> - <field eval="0" name="use_sign"/> - <field name="def_body_text">Hello,Thanks for showing intrest and buying the OpenERP book. + <field name="model_id" ref="crm.model_crm_lead"/> + <field eval="0" name="user_signature"/> + <field name="body_text">Hello,Thanks for showing intrest and buying the OpenERP book. If any further information required kindly revert back. I really appreciate your co-operation on this. Regards,OpenERP Team,</field> - <field name="template_language">mako</field> <field name="name">For OpenERP book</field> - <field name="model_int_name">crm.lead</field> </record> <record id="email_template_5" model="email.template"> - <field name="def_subject">Propose a free technical training to Gold partners</field> - <field name="def_to">info@tinyerp.com</field> - <field eval="[(6,0,[])]" name="allowed_groups"/> + <field name="subject">Propose a free technical training to Gold partners</field> + <field name="email_to">info@tinyerp.com</field> <field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/> <field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/> - <field name="object_name" ref="crm.model_crm_lead"/> - <field eval="0" name="use_sign"/> - <field name="def_body_text">Hello, We have very good offer that might suit you. + <field name="model_id" ref="crm.model_crm_lead"/> + <field eval="0" name="user_signature"/> + <field name="body_text">Hello, We have very good offer that might suit you. For our gold partners,We are arranging free technical training on june,2010. If any further information required kindly revert back. I really appreciate your co-operation on this. Regards,OpenERP Team,</field> - <field name="template_language">mako</field> <field name="name">For technical training to Gold partners</field> - <field name="model_int_name">crm.lead</field> </record> <record id="email_template_6" model="email.template"> - <field name="def_subject">Propose paid training to Silver partners</field> - <field name="def_to">info@tinyerp.com</field> - <field eval="[(6,0,[])]" name="allowed_groups"/> + <field name="subject">Propose paid training to Silver partners</field> + <field name="email_to">info@tinyerp.com</field> <field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/> <field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/> - <field name="object_name" ref="crm.model_crm_lead"/> - <field eval="0" name="use_sign"/> - <field name="def_body_text">Hello, We have very good offer that might suit you. + <field name="model_id" ref="crm.model_crm_lead"/> + <field eval="0" name="user_signature"/> + <field name="body_text">Hello, We have very good offer that might suit you. For our silver partners,We are paid technical training on june,2010. If any further information required kindly revert back. I really appreciate your co-operation on this. Regards,OpenERP Team,</field> - <field name="template_language">mako</field> <field name="name">For training to Silver partners</field> - <field name="model_int_name">crm.lead</field> </record> <record id="email_template_7" model="email.template"> - <field name="def_subject">Propose gold partnership to silver partners</field> - <field name="def_to">info@tinyerp.com</field> - <field eval="[(6,0,[])]" name="allowed_groups"/> + <field name="subject">Propose gold partnership to silver partners</field> + <field name="email_to">info@tinyerp.com</field> <field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/> <field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/> - <field name="object_name" ref="crm.model_crm_lead"/> - <field eval="0" name="use_sign"/> - <field name="def_body_text">Hello, We have very good offer that might suit you. + <field name="model_id" ref="crm.model_crm_lead"/> + <field eval="0" name="user_signature"/> + <field name="body_text">Hello, We have very good offer that might suit you. For our silver partners,We are offering Gold partnership. If any further information required kindly revert back. I really appreciate your co-operation on this. Regards,OpenERP Team,</field> - <field name="template_language">mako</field> <field name="name">For gold partnership to silver partners</field> - <field name="model_int_name">crm.lead</field> </record> <record id="email_template_8" model="email.template"> - <field name="def_subject">Thanks for subscribing to technical training</field> - <field name="def_to">info@tinyerp.com</field> - <field eval="[(6,0,[])]" name="allowed_groups"/> + <field name="subject">Thanks for subscribing to technical training</field> + <field name="email_to">info@tinyerp.com</field> <field model="ir.actions.act_window" name="ref_ir_act_window" search="[('name', '=', u'For OpenERP OnDemand Free Trial 2010 Mail Form')]"/> <field model="ir.values" name="ref_ir_value" search="[('name', '=', u'Send Mail (For OpenERP OnDemand Free Trial 2010)')]"/> - <field name="object_name" ref="crm.model_crm_lead"/> - <field eval="0" name="use_sign"/> - <field name="def_body_text">Hello, Thanks for showing intrest and for subscribing to technical training.If any further information required kindly revert back.I really appreciate your co-operation on this. + <field name="model_id" ref="crm.model_crm_lead"/> + <field eval="0" name="user_signature"/> + <field name="body_text">Hello, Thanks for showing intrest and for subscribing to technical training.If any further information required kindly revert back.I really appreciate your co-operation on this. Regards,OpenERP Team,</field> - <field name="template_language">mako</field> <field name="name">For subscribing to technical training</field> - <field name="model_int_name">crm.lead</field> </record> <!-- Report --> diff --git a/addons/membership/__openerp__.py b/addons/membership/__openerp__.py index 20d01b6a60e..3e78b4775ab 100644 --- a/addons/membership/__openerp__.py +++ b/addons/membership/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Membership', 'version': '0.1', - 'category': 'Hidden', + 'category': 'Association', 'description': """ This module allows you to manage all operations for managing memberships. ========================================================================= diff --git a/addons/membership/i18n/cs.po b/addons/membership/i18n/cs.po index c8e38a4a997..14aad66209a 100644 --- a/addons/membership/i18n/cs.po +++ b/addons/membership/i18n/cs.po @@ -4,77 +4,78 @@ # msgid "" msgstr "" -"Project-Id-Version: OpenERP Server 6.0dev\n" +"Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2009-09-30 08:29+0000\n" -"Last-Translator: Kuvaly [LCT] <kuvaly@seznam.cz>\n" -"Language-Team: \n" +"PO-Revision-Date: 2011-11-25 12:33+0000\n" +"Last-Translator: Jiří Hajda <robie@centrum.cz>\n" +"Language-Team: Czech <openerp-i18n-czech@lists.launchpad.net >\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 04:59+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:49+0000\n" +"X-Generator: Launchpad (build 14381)\n" +"X-Poedit-Language: Czech\n" #. module: membership #: model:process.transition,name:membership.process_transition_invoicetoassociate0 msgid "invoice to associate" -msgstr "" +msgstr "faktura k přidružení" #. module: membership #: model:process.process,name:membership.process_process_membershipprocess0 msgid "Membership Process" -msgstr "" +msgstr "Proces členství" #. module: membership #: selection:membership.membership_line,state:0 #: selection:report.membership,membership_state:0 #: selection:res.partner,membership_state:0 msgid "Paid Member" -msgstr "" +msgstr "Zaplacený člen" #. module: membership #: view:report.membership:0 #: view:res.partner:0 msgid "Group By..." -msgstr "" +msgstr "Seskupit podle..." #. module: membership #: field:report.membership,num_paid:0 msgid "# Paid" -msgstr "" +msgstr "# Zaplaceno" #. module: membership #: field:report.membership,tot_earned:0 msgid "Earned Amount" -msgstr "" +msgstr "Vydělaná částka" #. module: membership #: model:ir.model,name:membership.model_report_membership msgid "Membership Analysis" -msgstr "" +msgstr "Analýza členství" #. module: membership #: selection:report.membership,month:0 msgid "March" -msgstr "" +msgstr "Březen" #. module: membership #: model:process.node,note:membership.process_node_setassociation0 msgid "Set an associate member of partner." -msgstr "" +msgstr "Nastavit přidruženého člena k partnerovi" #. module: membership #: model:process.transition,note:membership.process_transition_invoicetopaid0 msgid "Invoice is be paid." -msgstr "" +msgstr "Faktura je zaplacena" #. module: membership #: field:membership.membership_line,company_id:0 #: view:report.membership:0 #: field:report.membership,company_id:0 msgid "Company" -msgstr "" +msgstr "Společnost" #. module: membership #: field:product.product,membership_date_to:0 @@ -84,84 +85,84 @@ msgstr "Datum do" #. module: membership #: model:process.transition,name:membership.process_transition_waitingtoinvoice0 msgid "Waiting to invoice" -msgstr "" +msgstr "Čekající na fakturu" #. module: membership #: help:report.membership,date_to:0 msgid "End membership date" -msgstr "" +msgstr "Datum ukončení členství" #. module: membership #: view:res.partner:0 msgid "Suppliers" -msgstr "" +msgstr "Dodavatelé" #. module: membership #: view:res.partner:0 msgid "All Members" -msgstr "" +msgstr "Všichni členové" #. module: membership #: field:res.partner,membership_stop:0 msgid "Stop membership date" -msgstr "" +msgstr "Datum pozastavení členství" #. module: membership #: model:process.transition,name:membership.process_transition_producttomember0 msgid "Product to member" -msgstr "" +msgstr "Výrobek pro člena" #. module: membership #: model:ir.actions.act_window,name:membership.action_membership_invoice_view #: view:res.partner:0 msgid "Join Membership" -msgstr "" +msgstr "Připojit členství" #. module: membership #: field:res.partner,associate_member:0 msgid "Associate member" -msgstr "" +msgstr "Přidružený člen" #. module: membership #: model:process.node,note:membership.process_node_associatedmember0 msgid "Member is associated." -msgstr "" +msgstr "Člen je přidružený." #. module: membership #: field:report.membership,tot_pending:0 msgid "Pending Amount" -msgstr "" +msgstr "Čekající částka" #. module: membership #: model:process.transition,note:membership.process_transition_associationpartner0 msgid "Associated partner." -msgstr "" +msgstr "Přidruženého partnera" #. module: membership #: field:report.membership,num_invoiced:0 msgid "# Invoiced" -msgstr "" +msgstr "# Fakturováno" #. module: membership #: model:ir.ui.menu,name:membership.menu_report_membership msgid "Members Analysis" -msgstr "" +msgstr "Analýza členů" #. module: membership #: view:res.partner:0 msgid "End Membership Date" -msgstr "" +msgstr "Datum ukončení členství" #. module: membership #: field:product.product,membership_date_from:0 msgid "Date from" -msgstr "" +msgstr "Počáteční datum" #. module: membership #: code:addons/membership/membership.py:414 #, python-format msgid "Partner doesn't have an address to make the invoice." -msgstr "" +msgstr "Partner nemá adresu pro vytvoření faktury." #. module: membership #: model:ir.model,name:membership.model_res_partner @@ -172,7 +173,7 @@ msgstr "Partner" #. module: membership #: model:process.transition,name:membership.process_transition_invoicetopaid0 msgid "Invoice to paid" -msgstr "" +msgstr "Faktura k zaplacení" #. module: membership #: view:res.partner:0 @@ -182,12 +183,12 @@ msgstr "Partneři" #. module: membership #: field:membership.membership_line,date_from:0 msgid "From" -msgstr "" +msgstr "Od" #. module: membership #: constraint:membership.membership_line:0 msgid "Error, this membership product is out of date" -msgstr "" +msgstr "Chyba, tento výrobek členství je zastaralý" #. module: membership #: help:res.partner,membership_state:0 @@ -206,6 +207,15 @@ msgid "" " -Paid Member: A member who has paid the membership " "amount." msgstr "" +"Označuje stav členství.\n" +" -Nečlen: Člen, který nepožádál o žádné členství.\n" +" -Zrušené členství: Člen, který má zrušené své členství.\n" +" -Starý člen: Člen, kterému vypršelo členství.\n" +" -Čekající člen: Člen, který požádal o členství, a " +"kterému bude vytvořena faktura.\n" +" -Fakturovaný člen: Člen, kterému byla vytvořena " +"faktura.\n" +" -Placený člen: Člen, který zaplatil částku za členství." #. module: membership #: model:process.transition.action,name:membership.process_transition_action_create0 @@ -215,30 +225,30 @@ msgstr "Vytvořit" #. module: membership #: model:ir.model,name:membership.model_membership_membership_line msgid "Member line" -msgstr "" +msgstr "Řádek člena" #. module: membership #: help:report.membership,date_from:0 #: field:res.partner,membership_start:0 msgid "Start membership date" -msgstr "" +msgstr "Počáteční datum členství" #. module: membership #: code:addons/membership/membership.py:410 #: code:addons/membership/membership.py:413 #, python-format msgid "Error !" -msgstr "" +msgstr "Chyba !" #. module: membership #: model:process.node,name:membership.process_node_paidmember0 msgid "Paid member" -msgstr "" +msgstr "Zaplacený člen" #. module: membership #: field:report.membership,num_waiting:0 msgid "# Waiting" -msgstr "" +msgstr "# Čekající" #. module: membership #: model:ir.actions.act_window,name:membership.action_membership_members @@ -252,22 +262,22 @@ msgstr "Členové" #: selection:report.membership,membership_state:0 #: selection:res.partner,membership_state:0 msgid "Non Member" -msgstr "" +msgstr "Nečlen" #. module: membership #: model:process.node,note:membership.process_node_invoicedmember0 msgid "Open invoice." -msgstr "" +msgstr "Otevřít fakturu" #. module: membership #: selection:report.membership,month:0 msgid "July" -msgstr "" +msgstr "Červenec" #. module: membership #: model:product.template,name:membership.membership_0_product_template msgid "Golden Membership" -msgstr "" +msgstr "Zlaté členství" #. module: membership #: help:res.partner,associate_member:0 @@ -275,79 +285,81 @@ msgid "" "A member with whom you want to associate your membership.It will consider " "the membership state of the associated member." msgstr "" +"Člen, s kterým chcete asociovat vaše členství. Vezme v úvahu stav členství " +"asociovaného člena." #. module: membership #: field:membership.membership_line,membership_id:0 #: view:report.membership:0 #: field:report.membership,membership_id:0 msgid "Membership Product" -msgstr "" +msgstr "Výrobek členství" #. module: membership #: model:process.transition,note:membership.process_transition_producttomember0 msgid "Define product for membership." -msgstr "" +msgstr "Určit výrobek pro členství." #. module: membership #: model:process.transition,note:membership.process_transition_invoicetoassociate0 msgid "Invoiced member may be Associated member." -msgstr "" +msgstr "Fakturovaný člen může být přidružený člen." #. module: membership #: view:membership.invoice:0 msgid "Join" -msgstr "" +msgstr "Připojit" #. module: membership #: help:product.product,membership_date_to:0 #: help:res.partner,membership_stop:0 msgid "Date until which membership remains active." -msgstr "" +msgstr "Datum, do kterého členství zůstává aktivní." #. module: membership #: view:product.product:0 msgid "Membership products" -msgstr "" +msgstr "Výrobky členství" #. module: membership #: field:membership.membership_line,date:0 msgid "Join Date" -msgstr "" +msgstr "Datum připojení" #. module: membership #: help:res.partner,free_member:0 msgid "Select if you want to give membership free of cost." -msgstr "" +msgstr "Vyberte, pokud chcete dát členovi cenu zdarma." #. module: membership #: model:process.node,name:membership.process_node_setassociation0 msgid "Set association" -msgstr "" +msgstr "Nastavit přiřazení" #. module: membership #: view:res.partner:0 msgid " Membership State" -msgstr "" +msgstr " Stav členství" #. module: membership #: view:res.partner:0 msgid "Memberships" -msgstr "" +msgstr "Členství" #. module: membership #: model:process.node,note:membership.process_node_paidmember0 msgid "Membership invoice paid." -msgstr "" +msgstr "Faktura členství zaplacena." #. module: membership #: model:ir.model,name:membership.model_product_template msgid "Product Template" -msgstr "" +msgstr "Šablona výrobku" #. module: membership #: selection:report.membership,month:0 msgid "September" -msgstr "" +msgstr "Září" #. module: membership #: model:ir.module.module,description:membership.module_meta_information @@ -365,11 +377,23 @@ msgid "" "invoice and send propositions for membership renewal.\n" " " msgstr "" +"\n" +"Tento modul vám umožňuje spravovat všechny operace pro správu členství.\n" +"Podporuje různé druhy členství:\n" +"* volné členství\n" +"* Přidružený člen (ex: skupinové zapsání pro členství pro všechnyl\n" +" pobočjy)\n" +"* Zaplacený člen,\n" +"* Speciální ceny členů, ...\n" +"\n" +"Je integrován s prodejem a účetnictvím, aby vám umožnil automaticky\n" +"fakturovat a odesílat návrhy pro obnovení členství.\n" +" " #. module: membership #: model:ir.model,name:membership.model_account_invoice_line msgid "Invoice Line" -msgstr "" +msgstr "Řádek faktury" #. module: membership #: help:membership.membership_line,state:0 @@ -388,74 +412,85 @@ msgid "" " -Paid Member: A member who has paid the membership " "amount." msgstr "" +"Označuje stav členství.\n" +" -Nečlen: Člen, který nepožádál o žádné členství.\n" +" -Zrušené členství: Člen, který má zrušené své " +"členství.\n" +" -Starý člen: Člen, kterému vypršelo členství.\n" +" -Čekající člen: Člen, který požádal o členství, a " +"kterému bude vytvořena faktura.\n" +" -Fakturovaný člen: Člen, kterému byla vytvořena " +"faktura.\n" +" -Placený člen: Člen, který zaplatil částku za " +"členství." #. module: membership #: view:report.membership:0 #: field:report.membership,month:0 msgid "Month" -msgstr "" +msgstr "Měsíc" #. module: membership #: view:product.product:0 msgid "Group by..." -msgstr "" +msgstr "Seskupit podle..." #. module: membership #: code:addons/membership/membership.py:411 #, python-format msgid "Partner is a free Member." -msgstr "" +msgstr "Partner je volný člen." #. module: membership #: model:product.pricelist,name:membership.list1m msgid "Member Sale Pricelist" -msgstr "" +msgstr "Prodejní ceník člena" #. module: membership #: field:report.membership,associate_member_id:0 #: view:res.partner:0 msgid "Associate Member" -msgstr "" +msgstr "Přiřadit člena" #. module: membership #: help:product.product,membership_date_from:0 #: help:res.partner,membership_start:0 msgid "Date from which membership becomes active." -msgstr "" +msgstr "Datum, od kterého se stává členství aktivním." #. module: membership #: view:report.membership:0 msgid "Associated Partner" -msgstr "" +msgstr "Přidruženého partnera" #. module: membership #: model:ir.model,name:membership.model_membership_invoice #: view:membership.invoice:0 msgid "Membership Invoice" -msgstr "" +msgstr "Členská faktura" #. module: membership #: view:report.membership:0 #: field:report.membership,user_id:0 #: view:res.partner:0 msgid "Salesman" -msgstr "" +msgstr "Obchodník" #. module: membership #: model:process.node,note:membership.process_node_membershipproduct0 msgid "Define membership product." -msgstr "" +msgstr "Určit výrobek členství." #. module: membership #: view:product.product:0 msgid "Category" -msgstr "" +msgstr "Kategorie" #. module: membership #: model:ir.model,name:membership.model_account_invoice #: field:membership.membership_line,account_invoice_id:0 msgid "Invoice" -msgstr "" +msgstr "Faktura" #. module: membership #: selection:membership.membership_line,state:0 @@ -467,70 +502,70 @@ msgstr "Volný člen" #. module: membership #: model:product.pricelist.version,name:membership.ver1m msgid "Member Sale Pricelist Version" -msgstr "" +msgstr "Verze prodejního ceníku člena" #. module: membership #: constraint:product.template:0 msgid "" "Error: The default UOM and the purchase UOM must be in the same category." -msgstr "" +msgstr "Chyba: Výchozí MJ a nákupní MJ musí být ve stejné kategorii." #. module: membership #: view:report.membership:0 msgid "Forecast" -msgstr "" +msgstr "Předpověď" #. module: membership #: field:report.membership,partner_id:0 msgid "Member" -msgstr "" +msgstr "Člen" #. module: membership #: constraint:res.partner:0 msgid "Error ! You can not create recursive associated members." -msgstr "" +msgstr "Chyba ! Nemůžete vytvořit rekurzivní asociované členy." #. module: membership #: view:product.product:0 msgid "Date From" -msgstr "" +msgstr "Datum od" #. module: membership #: model:process.node,name:membership.process_node_associatedmember0 msgid "Associated member" -msgstr "" +msgstr "Přiřazený člen" #. module: membership #: view:product.product:0 msgid "Accounting Info" -msgstr "" +msgstr "Účetní informace" #. module: membership #: field:res.partner,membership_cancel:0 msgid "Cancel membership date" -msgstr "" +msgstr "Datum zrušení členství" #. module: membership #: view:res.partner:0 msgid "Customers" -msgstr "" +msgstr "Zákazníci" #. module: membership #: selection:report.membership,month:0 msgid "August" -msgstr "" +msgstr "Srpen" #. module: membership #: model:ir.actions.act_window,name:membership.action_membership_products #: model:ir.ui.menu,name:membership.menu_membership_products #: view:product.product:0 msgid "Membership Products" -msgstr "" +msgstr "Výrobky členství" #. module: membership #: selection:report.membership,month:0 msgid "June" -msgstr "" +msgstr "Červen" #. module: membership #: model:ir.module.module,shortdesc:membership.module_meta_information @@ -542,145 +577,145 @@ msgstr "" #: view:res.partner:0 #: field:res.partner,member_lines:0 msgid "Membership" -msgstr "" +msgstr "Členství" #. module: membership #: selection:membership.membership_line,state:0 #: selection:report.membership,membership_state:0 #: selection:res.partner,membership_state:0 msgid "Invoiced Member" -msgstr "" +msgstr "Fakturovaný člen" #. module: membership #: help:membership.membership_line,date:0 msgid "Date on which member has joined the membership" -msgstr "" +msgstr "Datum, kdy se člen připojil k členství" #. module: membership #: selection:membership.membership_line,state:0 #: selection:report.membership,membership_state:0 #: selection:res.partner,membership_state:0 msgid "Waiting Member" -msgstr "" +msgstr "Čekající člen" #. module: membership #: model:process.transition,name:membership.process_transition_associationpartner0 msgid "Association Partner" -msgstr "" +msgstr "Přiřazený partner" #. module: membership #: selection:report.membership,month:0 msgid "November" -msgstr "" +msgstr "Listopad" #. module: membership #: view:product.product:0 msgid "Extended Filters..." -msgstr "" +msgstr "Rozšířené filtry..." #. module: membership #: field:membership.membership_line,state:0 msgid "Membership State" -msgstr "" +msgstr "Stav členství" #. module: membership #: selection:report.membership,month:0 msgid "October" -msgstr "" +msgstr "Říjen" #. module: membership #: view:product.product:0 msgid "Sale Description" -msgstr "" +msgstr "Popis prodeje" #. module: membership #: selection:report.membership,month:0 msgid "January" -msgstr "" +msgstr "Leden" #. module: membership #: view:product.product:0 msgid "Membership Fee" -msgstr "" +msgstr "Členský poplatek" #. module: membership #: field:res.partner,membership_amount:0 msgid "Membership amount" -msgstr "" +msgstr "Částka členství" #. module: membership #: help:res.partner,membership_amount:0 msgid "The price negotiated by the partner" -msgstr "" +msgstr "Cena vyjednaná partnerem" #. module: membership #: model:product.template,name:membership.membership_2_product_template msgid "Basic Membership" -msgstr "" +msgstr "Základní členství" #. module: membership #: help:product.product,membership:0 msgid "Select if a product is a membership product." -msgstr "" +msgstr "Vyberte, pokud výrobek je výrobek členství." #. module: membership #: selection:membership.membership_line,state:0 #: selection:report.membership,membership_state:0 #: selection:res.partner,membership_state:0 msgid "Old Member" -msgstr "" +msgstr "Starý člen" #. module: membership #: field:membership.membership_line,date_to:0 msgid "To" -msgstr "" +msgstr "Do" #. module: membership #: view:report.membership:0 #: field:report.membership,membership_state:0 #: field:res.partner,membership_state:0 msgid "Current Membership State" -msgstr "" +msgstr "Aktuální stav členství" #. module: membership #: view:report.membership:0 msgid "Last 365 Days" -msgstr "" +msgstr "Posledních 365 dní" #. module: membership #: view:product.product:0 msgid "General" -msgstr "" +msgstr "Obecný" #. module: membership #: model:process.transition,note:membership.process_transition_waitingtoinvoice0 msgid "Draft invoice is now open." -msgstr "" +msgstr "Koncept faktury je nyní otevřen." #. module: membership #: view:product.product:0 msgid "Inactive" -msgstr "" +msgstr "Neaktivní" #. module: membership #: view:report.membership:0 msgid "Last 30 Days" -msgstr "" +msgstr "Posledních 30 dní" #. module: membership #: selection:report.membership,month:0 msgid "December" -msgstr "" +msgstr "Prosinec" #. module: membership #: view:membership.invoice:0 msgid "Close" -msgstr "" +msgstr "Uzavřít" #. module: membership #: view:res.partner:0 msgid "All non Members" -msgstr "" +msgstr "Všichni nečlenové" #. module: membership #: view:product.product:0 @@ -690,17 +725,17 @@ msgstr "Informace" #. module: membership #: field:membership.membership_line,account_invoice_line:0 msgid "Account Invoice line" -msgstr "" +msgstr "Účetní řádek faktury" #. module: membership #: view:product.product:0 msgid "Categorization" -msgstr "" +msgstr "Členění" #. module: membership #: model:process.node,note:membership.process_node_waitingmember0 msgid "Draft invoice for membership." -msgstr "" +msgstr "Koncept faktury pro členství." #. module: membership #: field:membership.invoice,member_price:0 @@ -708,117 +743,117 @@ msgstr "" #: model:product.price.type,name:membership.product_price_type_memberprice #: field:product.template,member_price:0 msgid "Member Price" -msgstr "" +msgstr "Cena člena" #. module: membership #: view:product.product:0 msgid "Purchase Description" -msgstr "" +msgstr "Popis nákupu" #. module: membership #: model:ir.model,name:membership.model_product_product msgid "Product" -msgstr "" +msgstr "Výrobek" #. module: membership #: view:product.product:0 msgid "Description" -msgstr "" +msgstr "Popis" #. module: membership #: field:res.partner,free_member:0 msgid "Free member" -msgstr "" +msgstr "Volný člen" #. module: membership #: selection:report.membership,month:0 msgid "May" -msgstr "" +msgstr "Květen" #. module: membership #: model:product.template,name:membership.membership_1_product_template msgid "Silver Membership" -msgstr "" +msgstr "Stříbrné členství" #. module: membership #: view:product.product:0 msgid "Sale Taxes" -msgstr "" +msgstr "Prodejní daně" #. module: membership #: field:report.membership,date_to:0 #: view:res.partner:0 msgid "End Date" -msgstr "" +msgstr "Datum ukončení" #. module: membership #: selection:report.membership,month:0 msgid "February" -msgstr "" +msgstr "Únor" #. module: membership #: model:process.node,name:membership.process_node_invoicedmember0 msgid "Invoiced member" -msgstr "" +msgstr "Fakturovaný člen" #. module: membership #: selection:report.membership,month:0 msgid "April" -msgstr "" +msgstr "Duben" #. module: membership #: help:res.partner,membership_cancel:0 msgid "Date on which membership has been cancelled" -msgstr "" +msgstr "Datum, kdy bylo zrušeno členství" #. module: membership #: field:membership.membership_line,date_cancel:0 msgid "Cancel date" -msgstr "" +msgstr "Datum zrušení" #. module: membership #: model:process.node,name:membership.process_node_waitingmember0 msgid "Waiting member" -msgstr "" +msgstr "Čekající člen" #. module: membership #: field:report.membership,date_from:0 #: view:res.partner:0 msgid "Start Date" -msgstr "" +msgstr "Počáteční datum" #. module: membership #: model:process.node,name:membership.process_node_membershipproduct0 msgid "Membership product" -msgstr "" +msgstr "Výrobek členství" #. module: membership #: help:membership.membership_line,member_price:0 msgid "Amount for the membership" -msgstr "" +msgstr "Částka pro členství" #. module: membership #: selection:membership.membership_line,state:0 #: selection:report.membership,membership_state:0 #: selection:res.partner,membership_state:0 msgid "Cancelled Member" -msgstr "" +msgstr "Zrušený člen" #. module: membership #: constraint:product.product:0 msgid "Error: Invalid ean code" -msgstr "" +msgstr "Chyba: Neplatný kód ean" #. module: membership #: view:report.membership:0 #: field:report.membership,year:0 msgid "Year" -msgstr "" +msgstr "Rok" #. module: membership #: view:report.membership:0 msgid "Revenue Done" -msgstr "" +msgstr "Příjem proveden" #~ msgid "Configuration" #~ msgstr "Konfigurace" diff --git a/addons/membership/i18n/pt.po b/addons/membership/i18n/pt.po index 4e956c14e09..8d6d58052ec 100644 --- a/addons/membership/i18n/pt.po +++ b/addons/membership/i18n/pt.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2010-12-12 07:51+0000\n" -"Last-Translator: Madalena_prime <madalena.barreto@prime.cv>\n" +"PO-Revision-Date: 2011-11-23 12:23+0000\n" +"Last-Translator: Stephane Wirtel (OpenERP) <Unknown>\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: 2011-11-05 04:59+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-24 05:00+0000\n" +"X-Generator: Launchpad (build 14336)\n" #. module: membership #: model:process.transition,name:membership.process_transition_invoicetoassociate0 @@ -474,7 +474,7 @@ msgstr "Versão da Lista de Preço de Venda do Membro" msgid "" "Error: The default UOM and the purchase UOM must be in the same category." msgstr "" -"Erro: O UOM por defeito e o UOM de compra devem estar na mesma categoria." +"Erro: A UdM pré-defenida e a UdM de compra devem ser da mesma categoria." #. module: membership #: view:report.membership:0 diff --git a/addons/membership/report/report_membership.py b/addons/membership/report/report_membership.py index c5d82332fc1..631acab46b1 100644 --- a/addons/membership/report/report_membership.py +++ b/addons/membership/report/report_membership.py @@ -109,7 +109,7 @@ class report_membership(osv.osv): LEFT JOIN membership_membership_line ml ON (ml.partner = p.id) LEFT JOIN account_invoice_line il ON (ml.account_invoice_line = il.id) LEFT JOIN account_invoice ai ON (il.invoice_id = ai.id) - WHERE p.membership_state != 'none' + WHERE p.membership_state != 'none' and p.active = 'true' GROUP BY p.id, p.user_id, diff --git a/addons/mrp/__openerp__.py b/addons/mrp/__openerp__.py index 38c5fa9a9d1..c9311b701a2 100644 --- a/addons/mrp/__openerp__.py +++ b/addons/mrp/__openerp__.py @@ -101,6 +101,7 @@ Dashboard provided by this module: ], 'installable': True, + 'application': True, 'active': False, 'certificate': '0032052481373', } diff --git a/addons/mrp/board_manufacturing_view.xml b/addons/mrp/board_manufacturing_view.xml index 427780f344c..ea6d44026ab 100644 --- a/addons/mrp/board_manufacturing_view.xml +++ b/addons/mrp/board_manufacturing_view.xml @@ -7,9 +7,9 @@ <field name="type">form</field> <field name="arch" type="xml"> <form string="Manufacturing board"> - <board style="1-2"> + <board style="2-1"> <column> - <action name="%(mrp.mrp_production_action2)d" string="Next Production Orders"/> + <action name="%(mrp.mrp_production_action2)d" string="Next Production Orders" creatable="true"/> <action name="%(procurement.procurement_exceptions)d" string="Procurements in Exception" domain="[('state','=','exception')]"/> </column> <column> diff --git a/addons/mrp/i18n/ar.po b/addons/mrp/i18n/ar.po index c8a56267090..0a13682d76e 100644 --- a/addons/mrp/i18n/ar.po +++ b/addons/mrp/i18n/ar.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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -715,7 +715,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -728,7 +728,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1240,7 +1240,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1294,7 +1294,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1305,7 +1305,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1624,7 +1624,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/bg.po b/addons/mrp/i18n/bg.po index cc97c80360f..2dbb5ea5340 100644 --- a/addons/mrp/i18n/bg.po +++ b/addons/mrp/i18n/bg.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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -748,7 +748,7 @@ msgid "Per month" msgstr "За месец" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -761,7 +761,7 @@ msgid "Product Name" msgstr "Име на продукт" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Невалидно действие !" @@ -1273,7 +1273,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1327,7 +1327,7 @@ msgid "Month -1" msgstr "Месец -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1338,7 +1338,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1567,7 +1567,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1657,7 +1657,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Копиране" @@ -2146,7 +2146,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/bs.po b/addons/mrp/i18n/bs.po index f5106281e27..9a78c360f43 100644 --- a/addons/mrp/i18n/bs.po +++ b/addons/mrp/i18n/bs.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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -715,7 +715,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -728,7 +728,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1240,7 +1240,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1294,7 +1294,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1305,7 +1305,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1624,7 +1624,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/ca.po b/addons/mrp/i18n/ca.po index c6d359150ec..a81bfdc6da6 100644 --- a/addons/mrp/i18n/ca.po +++ b/addons/mrp/i18n/ca.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-08-17 22:02+0000\n" -"Last-Translator: mgaja (GrupoIsep.com) <Unknown>\n" +"PO-Revision-Date: 2011-12-06 11:07+0000\n" +"Last-Translator: Fabien (Open ERP) <fp@tinyerp.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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -758,7 +758,7 @@ msgid "Per month" msgstr "Per mes" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -771,7 +771,7 @@ msgid "Product Name" msgstr "Nom producte" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Acció no vàlida!" @@ -1320,7 +1320,7 @@ msgstr "Ubicació on el sistema emmagatzemarà els productes finalitzats." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Aquest és l'albarà intern que porta el producte acabat cap al pla de " @@ -1380,7 +1380,7 @@ msgid "Month -1" msgstr "Mes -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Ordre de producció '%s' planificada pel '%s'" @@ -1391,7 +1391,7 @@ msgid "Production Order N° :" msgstr "Núm. ordre producció :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Ordre de fabricació '%s' està preparada per produir" @@ -1635,7 +1635,7 @@ msgid "Manufacturing Orders To Start" msgstr "Ordres de producció a iniciar" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "No es pot eliminar ordre/s de producció que estan en estat %s!" @@ -1728,7 +1728,7 @@ msgid "Production Analysis" msgstr "Anàlisi de producció" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copieu" @@ -2254,7 +2254,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Tipus de producte és emmagatzemable o consumible." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3322,6 +3322,13 @@ msgstr "Any" #~ msgstr "Us del centre de producció" #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Aquest és l'albarà intern que porta el producte acabat cap al pla de " +#~ "producció." + +#~ msgid "" #~ "Routing indicates all the workcenters used, for how long and/or cycles.If " #~ "Routing is indicated then,the third tab of a production order (workcenters) " #~ "will be automatically pre-completed." diff --git a/addons/mrp/i18n/cs.po b/addons/mrp/i18n/cs.po index 5244b3928c6..57c6e3b019b 100644 --- a/addons/mrp/i18n/cs.po +++ b/addons/mrp/i18n/cs.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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" "X-Poedit-Language: Czech\n" #. module: mrp @@ -727,7 +727,7 @@ msgid "Per month" msgstr "Za měsíc" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -740,7 +740,7 @@ msgid "Product Name" msgstr "Jméno výrobku" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Neplatná akce !" @@ -1257,7 +1257,7 @@ msgstr "Umístění kde systém naskladní hotové výrobky." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1311,7 +1311,7 @@ msgid "Month -1" msgstr "Měsíc -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Výrobní příkaz '%s' je naplánován pro %s." @@ -1322,7 +1322,7 @@ msgid "Production Order N° :" msgstr "Výrobní příkaz N° :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Výrobní příkaz '%s' je připraven k výrobě." @@ -1551,7 +1551,7 @@ msgid "Manufacturing Orders To Start" msgstr "Výrobní příkazy pro spuštění" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1641,7 +1641,7 @@ msgid "Production Analysis" msgstr "Analýza výroby" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Kopírovat" @@ -2136,7 +2136,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Typ výrobku je Skladový nebo Spotřební." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/da.po b/addons/mrp/i18n/da.po index 17a13380616..59fe0907efe 100644 --- a/addons/mrp/i18n/da.po +++ b/addons/mrp/i18n/da.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: 2011-11-10 04:57+0000\n" -"X-Generator: Launchpad (build 14263)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -716,7 +716,7 @@ msgid "Per month" msgstr "Pr. måned" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -729,7 +729,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1241,7 +1241,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1295,7 +1295,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1306,7 +1306,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1625,7 +1625,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/de.po b/addons/mrp/i18n/de.po index 73f62cd257d..99e1b5f1f59 100644 --- a/addons/mrp/i18n/de.po +++ b/addons/mrp/i18n/de.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-04-03 09:21+0000\n" -"Last-Translator: Ferdinand @ Camptocamp <Unknown>\n" +"PO-Revision-Date: 2011-12-06 11:05+0000\n" +"Last-Translator: Ferdinand-camptocamp <Unknown>\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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -758,7 +758,7 @@ msgid "Per month" msgstr "Pro Monat" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -771,7 +771,7 @@ msgid "Product Name" msgstr "Produkt Bezeichnung" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Fehlerhafte Aktion !" @@ -1323,7 +1323,7 @@ msgstr "Ort, an dem das System die Fertigprodukte einlagern wird." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Dies ist ein interner Lieferauftrag, der die gefertigten Produkte in den " @@ -1382,7 +1382,7 @@ msgid "Month -1" msgstr "Monat -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Fertigungsauftrag '%s' ist geplant für %s." @@ -1393,7 +1393,7 @@ msgid "Production Order N° :" msgstr "Fertigungsauftragsnr." #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Fertigungsauftrag '%s' ist Startbereit." @@ -1635,7 +1635,7 @@ msgid "Manufacturing Orders To Start" msgstr "Fertigungsaufträge (Startbereit)" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "Fertigungsaufträge im Status %s können nicht gelöscht werden" @@ -1728,7 +1728,7 @@ msgid "Production Analysis" msgstr "Statistik Fertigungsaufträge" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Duplizieren" @@ -2257,7 +2257,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Produkttyp ist 'Lagerprodukt' oder 'Verbrauchsmaterial'." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3351,6 +3351,13 @@ msgstr "Jahr" #~ "Kapazität pro Zyklus bei 5." #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Dies ist ein interner Lieferauftrag, der die gefertigten Produkte in den " +#~ "Fertigungsplan eintragen wird" + +#~ msgid "" #~ "Description of the work center. Explain here what's a cycle according to " #~ "this work center." #~ msgstr "" diff --git a/addons/mrp/i18n/el.po b/addons/mrp/i18n/el.po index 8120ac8bb2f..7d85bf2de57 100644 --- a/addons/mrp/i18n/el.po +++ b/addons/mrp/i18n/el.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2010-11-27 12:17+0000\n" +"PO-Revision-Date: 2011-12-06 11:08+0000\n" "Last-Translator: qdp (OpenERP) <qdp-launchpad@tinyerp.com>\n" "Language-Team: l10n_chart_gr <l10n_chart_gr>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" "X-Poedit-Country: GREECE\n" "X-Poedit-Language: Greek\n" "X-Poedit-SourceCharset: utf-8\n" @@ -724,7 +724,7 @@ msgid "Per month" msgstr "Ανά μήνα" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -737,7 +737,7 @@ msgid "Product Name" msgstr "Όνομα Προϊόντος" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Άκυρη ενέργεια!" @@ -1249,7 +1249,7 @@ msgstr "Τοποθεσία όπου το σύστημα θα αποθηκεύσÎ #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1303,7 +1303,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1314,7 +1314,7 @@ msgid "Production Order N° :" msgstr "Νο Εντολής Παραγωγής:" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1543,7 +1543,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1633,7 +1633,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2123,7 +2123,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/es.po b/addons/mrp/i18n/es.po index bb45000dc25..76bfff76f74 100644 --- a/addons/mrp/i18n/es.po +++ b/addons/mrp/i18n/es.po @@ -7,15 +7,15 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-03-12 16:35+0000\n" +"PO-Revision-Date: 2011-12-06 11:03+0000\n" "Last-Translator: Jordi Esteve (www.zikzakmedia.com) " "<jesteve@zikzakmedia.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -760,7 +760,7 @@ msgid "Per month" msgstr "Por mes" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -773,7 +773,7 @@ msgid "Product Name" msgstr "Nombre producto" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "¡Acción no válida!" @@ -1321,7 +1321,7 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Este es el albarán interno que trae el producto terminado hacia el plan de " @@ -1381,7 +1381,7 @@ msgid "Month -1" msgstr "Mes -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Órden de producción '%s' planificada para el '%s'" @@ -1392,7 +1392,7 @@ msgid "Production Order N° :" msgstr "Núm. orden producción :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Orden fabricación '%s' está preparada para producir." @@ -1635,7 +1635,7 @@ msgid "Manufacturing Orders To Start" msgstr "Órdenes de producción a iniciar" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1729,7 +1729,7 @@ msgid "Production Analysis" msgstr "Análisis de producción" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copiar" @@ -2258,7 +2258,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Tipo de producto es almacenable o consumible." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3324,6 +3324,13 @@ msgstr "Año" #~ "futuras cargas de los centros de producción a partir de la planificación de " #~ "la producción." +#~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Este es el albarán interno que trae el producto terminado hacia el plan de " +#~ "producción." + #~ msgid "Workcenter Usage" #~ msgstr "Uso centro de producción" diff --git a/addons/mrp/i18n/es_AR.po b/addons/mrp/i18n/es_AR.po index f3c9ec67c23..eadea6dfc48 100644 --- a/addons/mrp/i18n/es_AR.po +++ b/addons/mrp/i18n/es_AR.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: 2011-11-05 04:55+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -749,7 +749,7 @@ msgid "Per month" msgstr "Por mes" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -762,7 +762,7 @@ msgid "Product Name" msgstr "Nombre del Producto" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "¡Acción no válida!" @@ -1295,7 +1295,7 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1353,7 +1353,7 @@ msgid "Month -1" msgstr "Mes -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1364,7 +1364,7 @@ msgid "Production Order N° :" msgstr "Orden de producción Nº :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1601,7 +1601,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1692,7 +1692,7 @@ msgid "Production Analysis" msgstr "Análisis de la producción" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copiar" @@ -2202,7 +2202,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Tipo de producto es almacenable o consumible." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/es_CL.po b/addons/mrp/i18n/es_CL.po index 5b574d2578d..55a2771ced5 100644 --- a/addons/mrp/i18n/es_CL.po +++ b/addons/mrp/i18n/es_CL.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: 2011-11-05 04:55+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -759,7 +759,7 @@ msgid "Per month" msgstr "Por mes" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -772,7 +772,7 @@ msgid "Product Name" msgstr "Nombre producto" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "¡Acción no válida!" @@ -1320,11 +1320,9 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" -"Este es el albarán interno que trae el producto terminado hacia el plan de " -"producción." #. module: mrp #: field:stock.change.standard.price,change_parent_price:0 @@ -1380,7 +1378,7 @@ msgid "Month -1" msgstr "Mes -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Órden de producción '%s' planificada para el '%s'" @@ -1391,7 +1389,7 @@ msgid "Production Order N° :" msgstr "Núm. orden producción :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Orden fabricación '%s' está preparada para producir." @@ -1628,7 +1626,7 @@ msgid "Manufacturing Orders To Start" msgstr "Órdenes de producción a iniciar" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1722,7 +1720,7 @@ msgid "Production Analysis" msgstr "Análisis de producción" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copiar" @@ -2251,7 +2249,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Tipo de producto es almacenable o consumible." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -2568,6 +2566,13 @@ msgstr "Año" #~ "la capacidad por ciclo es de 5." #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Este es el albarán interno que trae el producto terminado hacia el plan de " +#~ "producción." + +#~ msgid "" #~ "Routing indicates all the workcenters used, for how long and/or cycles.If " #~ "Routing is indicated then,the third tab of a production order (workcenters) " #~ "will be automatically pre-completed." diff --git a/addons/mrp/i18n/es_EC.po b/addons/mrp/i18n/es_EC.po index a11178e0c8e..0cd26845cbf 100644 --- a/addons/mrp/i18n/es_EC.po +++ b/addons/mrp/i18n/es_EC.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: 2011-11-05 04:55+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:52+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -759,7 +759,7 @@ msgid "Per month" msgstr "Por mes" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -772,7 +772,7 @@ msgid "Product Name" msgstr "Nombre producto" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "¡Acción inválida!" @@ -1320,11 +1320,9 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" -"Este es el albarán interno que trae el producto terminado hacia el plan de " -"producción." #. module: mrp #: field:stock.change.standard.price,change_parent_price:0 @@ -1380,7 +1378,7 @@ msgid "Month -1" msgstr "Mes -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Órden de producción '%s' planificada para el '%s'" @@ -1391,7 +1389,7 @@ msgid "Production Order N° :" msgstr "Núm. orden producción :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Orden fabricación '%s' está preparada para producir." @@ -1634,7 +1632,7 @@ msgid "Manufacturing Orders To Start" msgstr "Órdenes de producción a iniciar" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1728,7 +1726,7 @@ msgid "Production Analysis" msgstr "Análisis de producción" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copiar" @@ -2257,7 +2255,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Tipo de producto es almacenable o consumible." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3329,6 +3327,13 @@ msgstr "Año" #~ " " #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Este es el albarán interno que trae el producto terminado hacia el plan de " +#~ "producción." + +#~ msgid "" #~ "Routing indicates all the workcenters used, for how long and/or cycles.If " #~ "Routing is indicated then,the third tab of a production order (workcenters) " #~ "will be automatically pre-completed." diff --git a/addons/mrp/i18n/es_MX.po b/addons/mrp/i18n/es_MX.po index 4504a8e2f95..82d584be219 100644 --- a/addons/mrp/i18n/es_MX.po +++ b/addons/mrp/i18n/es_MX.po @@ -1321,7 +1321,7 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Este es el albarán interno que trae el producto terminado hacia el plan de " @@ -2803,7 +2803,7 @@ msgstr "Año" #~ "producción." #~ msgid "" -#~ "This is the internal picking list take bring the raw materials to the " +#~ "This is the Internal Picking List take bring the raw materials to the " #~ "production plan." #~ msgstr "" #~ "Ésta es la lista de empaquetado interna que lleva las materias primas a la " diff --git a/addons/mrp/i18n/es_VE.po b/addons/mrp/i18n/es_VE.po index 4504a8e2f95..82d584be219 100644 --- a/addons/mrp/i18n/es_VE.po +++ b/addons/mrp/i18n/es_VE.po @@ -1321,7 +1321,7 @@ msgstr "Ubicación donde el sistema almacenará los productos finalizados." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Este es el albarán interno que trae el producto terminado hacia el plan de " @@ -2803,7 +2803,7 @@ msgstr "Año" #~ "producción." #~ msgid "" -#~ "This is the internal picking list take bring the raw materials to the " +#~ "This is the Internal Picking List take bring the raw materials to the " #~ "production plan." #~ msgstr "" #~ "Ésta es la lista de empaquetado interna que lleva las materias primas a la " diff --git a/addons/mrp/i18n/et.po b/addons/mrp/i18n/et.po index 8e2648993cb..39bae390026 100644 --- a/addons/mrp/i18n/et.po +++ b/addons/mrp/i18n/et.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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -715,7 +715,7 @@ msgid "Per month" msgstr "Kuus" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -728,7 +728,7 @@ msgid "Product Name" msgstr "Toote nimi" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Vigane tegevus !" @@ -1240,7 +1240,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1294,7 +1294,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1305,7 +1305,7 @@ msgid "Production Order N° :" msgstr "tootmiskorralduse N° :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1624,7 +1624,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/fi.po b/addons/mrp/i18n/fi.po index 78a0b3583b9..bfcdf990112 100644 --- a/addons/mrp/i18n/fi.po +++ b/addons/mrp/i18n/fi.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-01-19 12:22+0000\n" -"Last-Translator: Pekka Pylvänäinen <Unknown>\n" +"PO-Revision-Date: 2011-12-06 09:50+0000\n" +"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n" "Language-Team: Finnish <fi@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -749,7 +749,7 @@ msgid "Per month" msgstr "Kuukaudessa" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -762,7 +762,7 @@ msgid "Product Name" msgstr "Tuotteen nimi" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Virheellinen toiminto!" @@ -1285,7 +1285,7 @@ msgstr "Paikka jonne järjestelmä varastoi valmiit tuotteet." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Tämä on sisäinen keräilyslista joka tuo lopputuotteen tuontatosuunnitelmaan" @@ -1343,7 +1343,7 @@ msgid "Month -1" msgstr "edellinen kk" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Valmistustilaus '%s' on aikataulutettu '%s':lle." @@ -1354,7 +1354,7 @@ msgid "Production Order N° :" msgstr "Tuotantotilaus nro:" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Valmistustilaus '%s'on valmis tuotantoon." @@ -1589,7 +1589,7 @@ msgid "Manufacturing Orders To Start" msgstr "Aloitettavat valmistustilaukset" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "Valmistustilauksia, jotka ovat %s tilassa, ei voi poistaa!" @@ -1682,7 +1682,7 @@ msgid "Production Analysis" msgstr "Tuotannon analyysi" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Kopioi" @@ -2185,7 +2185,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Tuotetyyppi on varastoitava tai käytettävä" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3220,6 +3220,12 @@ msgstr "Vuosi" #~ "henkilöstö on 5 työntekijää, kapasiteetti sykliä kohti on 5." #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Tämä on sisäinen keräilyslista joka tuo lopputuotteen tuontatosuunnitelmaan" + +#~ msgid "" #~ "Description of the work center. Explain here what's a cycle according to " #~ "this work center." #~ msgstr "Työpisteen kuvaus. Kuvaa tähän mikä on työpisteen työnkulku." diff --git a/addons/mrp/i18n/fr.po b/addons/mrp/i18n/fr.po index 884c885b019..628aeae9449 100644 --- a/addons/mrp/i18n/fr.po +++ b/addons/mrp/i18n/fr.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-09-26 12:16+0000\n" +"PO-Revision-Date: 2011-12-06 10:24+0000\n" "Last-Translator: lholivier <olivier.lenoir@free.fr>\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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.bom,product_uos:0 @@ -776,7 +776,7 @@ msgid "Per month" msgstr "Par mois" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -789,7 +789,7 @@ msgid "Product Name" msgstr "Nom du Produit" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Action non valide !" @@ -1374,7 +1374,7 @@ msgstr "Emplacement où le système stockera les produits finis." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "C'est le bon de transfert interne qui fournit les produits finis au plan de " @@ -1434,7 +1434,7 @@ msgid "Month -1" msgstr "Mois -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Ordre de production '%s' est planifié pour le %s." @@ -1445,7 +1445,7 @@ msgid "Production Order N° :" msgstr "Ordre de Production N° :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "L'ordre de production '%s' est pret a être produit." @@ -1688,7 +1688,7 @@ msgid "Manufacturing Orders To Start" msgstr "Ordres de fabrication à lancer" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "Impossible de supprimer l'ordre de production à l'état %s !" @@ -1767,7 +1767,7 @@ msgid "Production Analysis" msgstr "Analyse de la production" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copier" @@ -2295,7 +2295,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Le type produit est stockable ou consommable." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3340,6 +3340,13 @@ msgstr "Année" #~ "Le nom de l'objet doit commencer par x_ et ne doit contenir aucun caractère " #~ "spécial!" +#~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "C'est le bon de transfert interne qui fournit les produits finis au plan de " +#~ "production" + #~ msgid "A cycle is defined in the workcenter definition." #~ msgstr "Un cycle est défini dans la définition du Centre de Production." diff --git a/addons/mrp/i18n/gl.po b/addons/mrp/i18n/gl.po index 3ba7c6c8c85..7410d5e6ece 100644 --- a/addons/mrp/i18n/gl.po +++ b/addons/mrp/i18n/gl.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-06-09 15:28+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"PO-Revision-Date: 2011-12-06 10:31+0000\n" +"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n" "Language-Team: Galician <gl@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -757,7 +757,7 @@ msgid "Per month" msgstr "Por mes" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -770,7 +770,7 @@ msgid "Product Name" msgstr "Nome produto" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Acción non válida!" @@ -1314,7 +1314,7 @@ msgstr "Lugar onde almacenará o sistema os produtos rematados" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Este é o albará interno que trae o produto rematado ó plan de produción." @@ -1373,7 +1373,7 @@ msgid "Month -1" msgstr "Mes -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Orde de produción '%s' planificada para o '%s'" @@ -1384,7 +1384,7 @@ msgid "Production Order N° :" msgstr "Nº orde produción:" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "A orde de fabricación '%s' está preparada para producir." @@ -1626,7 +1626,7 @@ msgid "Manufacturing Orders To Start" msgstr "Ordes de produción a iniciar" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1720,7 +1720,7 @@ msgid "Production Analysis" msgstr "Análise de produción" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copiar" @@ -2243,7 +2243,7 @@ msgid "Product type is Stockable or Consumable." msgstr "O Tipo de produto é almacenable ou consumible." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -2615,6 +2615,12 @@ msgstr "Ano" #~ " " #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Este é o albará interno que trae o produto rematado ó plan de produción." + +#~ msgid "" #~ "Routing indicates all the workcenters used, for how long and/or cycles.If " #~ "Routing is indicated then,the third tab of a production order (workcenters) " #~ "will be automatically pre-completed." diff --git a/addons/mrp/i18n/hi.po b/addons/mrp/i18n/hi.po index 40199555bbc..9ece8255329 100644 --- a/addons/mrp/i18n/hi.po +++ b/addons/mrp/i18n/hi.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -716,7 +716,7 @@ msgid "Per month" msgstr "प्रति माह" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -729,7 +729,7 @@ msgid "Product Name" msgstr "वस्तु का नाम" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1241,7 +1241,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1295,7 +1295,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1306,7 +1306,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1625,7 +1625,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/hr.po b/addons/mrp/i18n/hr.po index 0f488328de2..feee2db4426 100644 --- a/addons/mrp/i18n/hr.po +++ b/addons/mrp/i18n/hr.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -717,7 +717,7 @@ msgid "Per month" msgstr "Mjesečno" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -730,7 +730,7 @@ msgid "Product Name" msgstr "Ime Proizvoda" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Pogrešna akcija !" @@ -1242,7 +1242,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1296,7 +1296,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Nalog za Proizvodnju '%s' je planiran za %s." @@ -1307,7 +1307,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Nalog za Proizvodnju '%s' je spreman za proizvodnju." @@ -1536,7 +1536,7 @@ msgid "Manufacturing Orders To Start" msgstr "Naloz za Proizvodnju Za Pokrenuti" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1626,7 +1626,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2115,7 +2115,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/hu.po b/addons/mrp/i18n/hu.po index 85e7187ff40..0a3432b2fc5 100644 --- a/addons/mrp/i18n/hu.po +++ b/addons/mrp/i18n/hu.po @@ -7,15 +7,15 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-02-09 14:35+0000\n" +"PO-Revision-Date: 2011-12-06 11:04+0000\n" "Last-Translator: NOVOTRADE RENDSZERHÁZ ( novotrade.hu ) " "<openerp@novotrade.hu>\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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -32,26 +32,31 @@ msgid "" "raw materials (stock decrease) and the production of the finished products " "(stock increase) when the order is processed." msgstr "" +"A gyártási rendeléseket általában az OpenERP automatikusan javasolja " +"anyagjegyzékek és beszerzési szabályok alapján, azonban lehetősége van " +"manuálisan is felvinni gyártási rendeléseket. Az OpenERP kezeli a " +"nyersanyagok fogyását (készlet csökkenése) és a kész termékek gyártását " +"(készlet csökkenése), amikor a rendelést végrehajtja." #. module: mrp #: help:mrp.production,location_src_id:0 msgid "Location where the system will look for components." -msgstr "" +msgstr "A hozzávalókat ezen a helyen keresi majd a rendszer." #. module: mrp #: field:mrp.production,workcenter_lines:0 msgid "Work Centers Utilisation" -msgstr "" +msgstr "Munkaállomások használata" #. module: mrp #: view:mrp.routing.workcenter:0 msgid "Routing Work Centers" -msgstr "" +msgstr "Eljárás munkaállomásai" #. module: mrp #: model:ir.module.module,shortdesc:mrp.module_meta_information msgid "Manufacturing Resource Planning" -msgstr "Gyártási források tervezése" +msgstr "Erőforrások tervezése" #. module: mrp #: report:mrp.production.order:0 @@ -88,12 +93,12 @@ msgstr "Óránkénti költség" #: code:addons/mrp/report/price.py:130 #, python-format msgid "Cost Price per Uom" -msgstr "Önköltség" +msgstr "Mértékenységenkénti költség" #. module: mrp #: view:mrp.production:0 msgid "Scrap Products" -msgstr "" +msgstr "Selejt termék" #. module: mrp #: view:mrp.production.order:0 @@ -105,22 +110,22 @@ msgstr "Nap" #: model:ir.actions.act_window,name:mrp.mrp_routing_action #: model:ir.ui.menu,name:mrp.menu_mrp_routing_action msgid "Routings" -msgstr "" +msgstr "Eljárás" #. module: mrp #: field:mrp.workcenter,product_id:0 msgid "Work Center Product" -msgstr "" +msgstr "Munkaállomás-termék" #. module: mrp #: view:mrp.bom:0 msgid "Search Bill Of Material" -msgstr "" +msgstr "Anyagjegyzék keresése" #. module: mrp #: model:process.node,note:mrp.process_node_stockproduct1 msgid "For stockable products and consumables" -msgstr "" +msgstr "Raktározható és felhasználható termékekhez" #. module: mrp #: model:process.transition,name:mrp.process_transition_stockproduction0 @@ -133,6 +138,8 @@ msgid "" "Number of iterations this work center has to do in the specified operation " "of the routing." msgstr "" +"Megadja, hogy az eljárás adott műveletnél ezt a munkaállomást hányszor kell " +"igénybe venni." #. module: mrp #: view:mrp.bom:0 @@ -156,7 +163,7 @@ msgstr "Vásárolni" #. module: mrp #: view:mrp.production.order:0 msgid "Raw Material Location" -msgstr "" +msgstr "Alapanyagok helye" #. module: mrp #: help:mrp.installer,mrp_operations:0 @@ -164,26 +171,30 @@ msgid "" "Enhances production orders with readiness states as well as the start date " "and end date of execution of the order." msgstr "" +"Ellátja a gyártási rendeléseket a készültség állapotával és a rendelés " +"végrehajtásának kezdési, illetve a befejezési idejével." #. module: mrp #: model:process.transition,note:mrp.process_transition_purchaseprocure0 msgid "The system launches automatically a RFQ to the preferred supplier." msgstr "" +"A rendszer automatikusan kiküld egy ajánlatkérési felhívást a kiválasztott " +"beszállítónak." #. module: mrp #: view:mrp.production:0 msgid "Products to Finish" -msgstr "" +msgstr "Befejezendő termékek" #. module: mrp #: selection:mrp.bom,method:0 msgid "Set / Pack" -msgstr "" +msgstr "Csomag" #. module: mrp #: field:mrp.installer,mrp_subproduct:0 msgid "MRP Subproducts" -msgstr "" +msgstr "MRP altermékek modul" #. module: mrp #: view:mrp.production:0 @@ -204,6 +215,8 @@ msgid "" "In case the Supply method of the product is Produce, the system creates a " "production order." msgstr "" +"Ha a termék ellátási módja \"Gyártás\", a rendszer gyártási rendelést hoz " +"létre." #. module: mrp #: view:mrp.production:0 @@ -218,7 +231,7 @@ msgstr "ME" #: field:mrp.production.order,product_qty:0 #: field:mrp.production.product.line,product_qty:0 msgid "Product Qty" -msgstr "Termékmenny." +msgstr "Termékmennyiség" #. module: mrp #: help:mrp.workcenter,product_id:0 @@ -227,22 +240,22 @@ msgid "" "accounting." msgstr "" "Töltse ki ezt a terméket, hogy könnyen nyomon kövesse a gyártási költségeket " -"a vezetői számvitelben." +"az analitikus könyvelésben." #. module: mrp #: model:process.node,note:mrp.process_node_purchaseprocure0 msgid "For purchased material" -msgstr "" +msgstr "Vásárolt termékhez" #. module: mrp #: field:mrp.bom.revision,indice:0 msgid "Revision" -msgstr "Revízió" +msgstr "Felülvizsgálat" #. module: mrp #: model:ir.ui.menu,name:mrp.next_id_77 msgid "Reporting" -msgstr "Jelentés" +msgstr "Jelentéskészítés" #. module: mrp #: field:mrp.workcenter,costs_cycle_account_id:0 @@ -263,7 +276,7 @@ msgstr "[" #. module: mrp #: model:process.transition,name:mrp.process_transition_procureserviceproduct0 msgid "Procurement of services" -msgstr "" +msgstr "Szolgáltatások beszerzése" #. module: mrp #: view:mrp.workcenter:0 @@ -278,7 +291,7 @@ msgstr "Célállomás helye" #. module: mrp #: view:mrp.installer:0 msgid "title" -msgstr "Pozíció" +msgstr "pozíció" #. module: mrp #: model:ir.ui.menu,name:mrp.menu_mrp_bom @@ -291,6 +304,9 @@ msgid "" "The system waits for the products to be available in the stock. These " "products are typically procured manually or through a minimum stock rule." msgstr "" +"A rendszer termékekre vár, hogy elérhetővé válljanak a raktárban. Ezeket a " +"termékeket általában manuálisan kell beszerezni vagy minimális " +"készletszabályok beállításával." #. module: mrp #: report:mrp.production.order:0 @@ -300,7 +316,7 @@ msgstr "Partner hiv." #. module: mrp #: selection:mrp.workcenter.load,measure_unit:0 msgid "Amount in hours" -msgstr "" +msgstr "Mennyiség órában" #. module: mrp #: field:mrp.production,product_lines:0 @@ -310,12 +326,12 @@ msgstr "Tervezett áruk" #. module: mrp #: selection:mrp.bom,type:0 msgid "Sets / Phantom" -msgstr "" +msgstr "Csomagok" #. module: mrp #: help:mrp.bom,position:0 msgid "Reference to a position in an external plan." -msgstr "" +msgstr "Hivatkozás egy külső területre." #. module: mrp #: selection:mrp.production.order,month:0 @@ -326,6 +342,8 @@ msgstr "Augusztus" #: constraint:stock.move:0 msgid "You try to assign a lot which is not from the same product" msgstr "" +"Egy olyan tételt próbál hozzárendelni, amely nem ugyanabból a termékfajtából " +"való." #. module: mrp #: model:ir.model,name:mrp.model_mrp_production_order @@ -340,7 +358,7 @@ msgstr "Június" #. module: mrp #: model:ir.model,name:mrp.model_mrp_product_produce msgid "Product Produce" -msgstr "Termék előállítása" +msgstr "Termék gyártása" #. module: mrp #: selection:mrp.production.order,month:0 @@ -351,12 +369,12 @@ msgstr "Október" #: code:addons/mrp/report/price.py:177 #, python-format msgid "Components Cost of " -msgstr "" +msgstr "Hozzávalók költsége " #. module: mrp #: model:process.transition,name:mrp.process_transition_procurestockableproduct0 msgid "Procurement of stockable Product" -msgstr "" +msgstr "Raktározható termékek beszerzése" #. module: mrp #: view:mrp.bom:0 @@ -388,6 +406,8 @@ msgid "" "The system creates an order (production or purchased) depending on the sold " "quantity and the products parameters." msgstr "" +"A rendszer a termék tulajdonságai és az értékesített mennyiség alapján " +"létrehoz egy - gyártási vagy beszerzési - rendelést." #. module: mrp #: model:process.transition,note:mrp.process_transition_servicemts0 @@ -395,6 +415,8 @@ msgid "" "This is used in case of a service without any impact in the system, a " "training session for instance." msgstr "" +"Ezt használhatjuk olyan szolgálatásokra, amelyek semmilyen hatással " +"sincsenek a rendszerre (például egy belső képzés)." #. module: mrp #: field:mrp.installer,mrp_repair:0 @@ -404,7 +426,7 @@ msgstr "Javítások" #. module: mrp #: field:mrp.installer,stock_location:0 msgid "Advanced Routes" -msgstr "" +msgstr "Előrehaladott eljárások" #. module: mrp #: model:ir.ui.menu,name:mrp.menu_view_resource_calendar_search_mrp @@ -422,6 +444,8 @@ msgid "" "Enables warranty and repair management (and their impact on stocks and " "invoicing)." msgstr "" +"Lehetővé teszi a garancia- és szervízkezelést, és ezek hatását a " +"raktározásra és a számlázásra." #. module: mrp #: field:mrp.production,date_planned_date:0 @@ -442,6 +466,9 @@ msgid "" "needed.Set a location if you produce at a fixed location. This can be a " "partner location if you subcontract the manufacturing operations." msgstr "" +"Hagyja üresen, ha a gyártást ugyanazon a helyen végzi, ahol a késztermékre " +"szüksége van. Válasszon egy helyszínt, ha fix helyen gyárt. Ez lehet egy " +"partner székhelye is, amennyiben a gyártási eljárást kiszervezi." #. module: mrp #: view:board.board:0 @@ -451,12 +478,12 @@ msgstr "Készletérték változása" #. module: mrp #: model:ir.actions.act_window,name:mrp.action2 msgid "Bill of Materials Structure" -msgstr "" +msgstr "Anyagjegyzék-struktúra" #. module: mrp #: model:process.node,note:mrp.process_node_serviceproduct0 msgid "Product type is service" -msgstr "A termék típusa szolgáltatás." +msgstr "A termék típusa szolgáltatás" #. module: mrp #: model:ir.actions.act_window,help:mrp.mrp_property_group_action @@ -464,16 +491,18 @@ msgid "" "Define specific property groups that can be assigned to the properties of " "your bill of materials." msgstr "" +"Adjon meg egyedi tulajdonság-csoportokat, amelyeket az anyagjegyzékek " +"tulajdonságaihoz rendelhet." #. module: mrp #: model:process.transition,name:mrp.process_transition_bom0 msgid "Manufacturing decomposition" -msgstr "" +msgstr "Gyártás lebontása" #. module: mrp #: model:process.node,note:mrp.process_node_serviceproduct1 msgid "For Services." -msgstr "" +msgstr "Szolgáltatásokhoz." #. module: mrp #: field:mrp.bom.revision,date:0 @@ -487,8 +516,8 @@ msgid "" "Complete this only if you want automatic analytic accounting entries on " "production orders." msgstr "" -"Csak akkor töltse ki, ha automatikus gyűjtőkód tételeket akar a termelési " -"utasítások alapján." +"Csak akkor töltse ki, ha analitikus könyvelési tételek automatikus bevitelét " +"szeretné a gyártási rendelések alapján." #. module: mrp #: field:mrp.production.workcenter.line,cycle:0 @@ -507,6 +536,8 @@ msgid "" "The Bill of Material is linked to a routing, i.e. the succession of work " "centers." msgstr "" +"Az anyagjegyzék egy gyártási eljáráshoz kapcsolódik, vagyis a munkaállomások " +"sorozatához." #. module: mrp #: constraint:product.product:0 @@ -522,12 +553,12 @@ msgstr "Gyártási hely" #. module: mrp #: view:mrp.production:0 msgid "Change Qty" -msgstr "" +msgstr "Mennyiség változtatása" #. module: mrp #: view:mrp.production:0 msgid "Force Reservation" -msgstr "" +msgstr "Foglalás erőltetése" #. module: mrp #: field:mrp.bom.revision,author_id:0 @@ -542,12 +573,12 @@ msgstr "Készletérték" #. module: mrp #: model:ir.actions.act_window,name:mrp.action_product_bom_structure msgid "Product BoM Structure" -msgstr "" +msgstr "Termék anyagjegyzék-struktúrája" #. module: mrp #: view:mrp.production:0 msgid "Search Production" -msgstr "" +msgstr "Gyártás keresése" #. module: mrp #: code:addons/mrp/report/price.py:130 @@ -563,14 +594,14 @@ msgstr "Március" #. module: mrp #: field:mrp.bom,child_complete_ids:0 msgid "BoM Hierarchy" -msgstr "" +msgstr "Anyagjegyzék hierarchia" #. module: mrp #: model:ir.actions.act_window,name:mrp.act_mrp_product_produce #: view:mrp.product.produce:0 #: view:mrp.production:0 msgid "Produce" -msgstr "Gyártás" +msgstr "Gyártani" #. module: mrp #: help:mrp.workcenter,costs_cycle:0 @@ -582,17 +613,17 @@ msgstr "" #: view:mrp.production.order:0 #: selection:mrp.production.order,state:0 msgid "Picking Exception" -msgstr "Kiszedési kivétel" +msgstr "Kiszedési hiba" #. module: mrp #: field:mrp.bom,bom_lines:0 msgid "BoM Lines" -msgstr "" +msgstr "Anyagjegyzék sorok" #. module: mrp #: field:mrp.workcenter,time_start:0 msgid "Time before prod." -msgstr "" +msgstr "Gyártás előkészületi idő" #. module: mrp #: help:mrp.routing,active:0 @@ -600,11 +631,13 @@ msgid "" "If the active field is set to False, it will allow you to hide the routing " "without removing it." msgstr "" +"Ha az aktív mezőt \"Hamis\"-ra állítja, akkor törlés nélkül el tudja rejteni " +"a gyártási eljárást." #. module: mrp #: model:process.transition,name:mrp.process_transition_billofmaterialrouting0 msgid "Material Routing" -msgstr "" +msgstr "Termék útja" #. module: mrp #: view:mrp.production:0 @@ -612,31 +645,31 @@ msgstr "" #: report:mrp.production.order:0 #: field:mrp.production.order,consumed_products:0 msgid "Consumed Products" -msgstr "" +msgstr "Felhasznált termékek" #. module: mrp #: constraint:mrp.bom:0 msgid "Error ! You can not create recursive BoM." -msgstr "" +msgstr "Hiba! Rekurzív anyagjegyzék nem hozható létre." #. module: mrp #: model:ir.actions.act_window,name:mrp.action_mrp_workcenter_load_wizard #: model:ir.model,name:mrp.model_mrp_workcenter_load #: model:ir.model,name:mrp.model_report_workcenter_load msgid "Work Center Load" -msgstr "" +msgstr "Munkaállomás terheltsége" #. module: mrp #: code:addons/mrp/procurement.py:45 #, python-format msgid "No BoM defined for this product !" -msgstr "" +msgstr "Az adott termékhez nincsen anyagjegyzék megadva!" #. module: mrp #: model:ir.actions.act_window,name:mrp.mrp_bom_form_action2 #: model:ir.ui.menu,name:mrp.menu_mrp_bom_form_action2 msgid "Bill of Material Components" -msgstr "" +msgstr "Anyagjegyzék hozzávalói" #. module: mrp #: field:mrp.production.order,nbr:0 @@ -661,6 +694,10 @@ msgid "" "operations and to plan future loads on work centers based on production " "plannification." msgstr "" +"A késztermék létrehozásához szükséges műveletek (munkaállomások) listája. A " +"gyártási eljárások fő funkciója a munkaállomások működési költségeinek " +"számítása és a munkaállomások terheltségének tervezése a gyártási tervezésén " +"keresztül." #. module: mrp #: help:mrp.workcenter,time_cycle:0 @@ -670,7 +707,7 @@ msgstr "Idő (órában), ami egy ciklus elvégzéséhez szükséges" #. module: mrp #: report:bom.structure:0 msgid "BOM Ref" -msgstr "" +msgstr "Anyagjegyzék hivatkozás" #. module: mrp #: view:mrp.production:0 @@ -683,7 +720,7 @@ msgstr "Gyártás alatt" #. module: mrp #: model:ir.ui.menu,name:mrp.menu_mrp_property msgid "Master Bill of Materials" -msgstr "" +msgstr "Fő anyagjegyzékek" #. module: mrp #: help:mrp.bom,product_uos:0 @@ -691,6 +728,8 @@ msgid "" "Product UOS (Unit of Sale) is the unit of measurement for the invoicing and " "promotion of stock." msgstr "" +"A termék eladási mértékegysége a számlázásban és a kiszállításban használt " +"mértékegység." #. module: mrp #: view:mrp.product_price:0 @@ -715,6 +754,7 @@ msgstr "Összes költsége " #: model:process.node,note:mrp.process_node_minimumstockrule0 msgid "Linked to the 'Minimum stock rule' supplying method." msgstr "" +"A \"minimális raktárkezelési szabály\" ellátási módszeréhez kapcsolódik." #. module: mrp #: selection:mrp.workcenter.load,time_unit:0 @@ -722,12 +762,12 @@ msgid "Per month" msgstr "Havonta" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format msgid "Couldn't find bill of material for product" -msgstr "" +msgstr "A termékhez nem található anyagjegyzék" #. module: mrp #: report:bom.structure:0 @@ -735,15 +775,15 @@ msgid "Product Name" msgstr "Termék neve" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" -msgstr "Érvénytelen művelet !" +msgstr "Érvénytelen művelet!" #. module: mrp #: help:mrp.bom,product_efficiency:0 msgid "A factor of 0.9 means a loss of 10% within the production process." -msgstr "" +msgstr "A 0,9-es érték 10%-os veszteséget jelent a gyártási folyamatban." #. module: mrp #: view:mrp.installer:0 @@ -751,6 +791,8 @@ msgid "" "Add more functionalities to the core Manufacturing Application with the " "following addons." msgstr "" +"Bővitse további funkciókkal az alap gyártási alkalmazást az alábbi addonok " +"használatával." #. module: mrp #: report:mrp.production.order:0 @@ -771,7 +813,7 @@ msgstr "Beszerzési szabály" #. module: mrp #: help:mrp.workcenter,costs_hour:0 msgid "Specify Cost of Work center per hour." -msgstr "" +msgstr "Adja meg a munkaállomás egy órára eső költségét." #. module: mrp #: view:mrp.production:0 @@ -786,7 +828,7 @@ msgstr "Szeptember" #. module: mrp #: report:mrp.production.order:0 msgid "WorkCenter" -msgstr "" +msgstr "Munkaállomás" #. module: mrp #: model:process.transition,note:mrp.process_transition_procureserviceproduct0 @@ -795,6 +837,9 @@ msgid "" "order creates a RFQ for a subcontracting purchase order or waits until the " "service is done (= the delivery of the products)." msgstr "" +"A szolgáltatásnál megadott ellátási módtól függően, a beszerzési rendelés " +"vagy egy alvállalkozónak szóló ajánlatkérést hoz létre, vagy várakozik, míg " +"a szolgáltatás (azaz a termék kiszállítása) be nem fejeződik." #. module: mrp #: selection:mrp.production,priority:0 @@ -815,7 +860,7 @@ msgstr "Gyártási rendelés" #. module: mrp #: model:process.transition,name:mrp.process_transition_productionprocureproducts0 msgid "Procurement of raw material" -msgstr "" +msgstr "Alapanyag-beszerzés" #. module: mrp #: help:mrp.routing.workcenter,hour_nbr:0 @@ -823,6 +868,8 @@ msgid "" "Time in hours for this work center to achieve the operation of the specified " "routing." msgstr "" +"A megadott munkaállomásnak szükséges idő (órákban), amivel az eljárásban " +"megadott műveletet el tudja végezni." #. module: mrp #: view:mrp.production:0 @@ -835,7 +882,7 @@ msgstr "Összes ciklus" #: view:mrp.production.order:0 #: selection:mrp.production.order,state:0 msgid "Ready to Produce" -msgstr "" +msgstr "Gyártásra kész" #. module: mrp #: field:mrp.bom.revision,name:0 @@ -852,7 +899,7 @@ msgstr "Dátum" #. module: mrp #: field:mrp.bom,type:0 msgid "BoM Type" -msgstr "" +msgstr "Anyagjegyzék tipusa" #. module: mrp #: view:mrp.production.order:0 @@ -865,6 +912,7 @@ msgstr "Kiterjesztett szűrők…" msgid "" "Procurement '%s' has an exception: 'No BoM defined for this product !'" msgstr "" +"A %s beszerzés hibát jelzett: \"A termékhez nem található anyagjegyzék!\"" #. module: mrp #: view:mrp.production.order:0 @@ -896,7 +944,7 @@ msgstr "Vezérlőpult" #. module: mrp #: view:board.board:0 msgid "Work Center Future Load" -msgstr "" +msgstr "Munkaállomások jövőbeli terheltsége" #. module: mrp #: model:process.node,name:mrp.process_node_stockproduct0 @@ -909,7 +957,7 @@ msgstr "Készletezhető termék" #: code:addons/mrp/report/price.py:121 #, python-format msgid "Work Center name" -msgstr "" +msgstr "Munkaállomás neve" #. module: mrp #: field:mrp.routing,code:0 @@ -924,18 +972,18 @@ msgstr "Órák száma" #. module: mrp #: field:mrp.installer,mrp_jit:0 msgid "Just In Time Scheduling" -msgstr "" +msgstr "Just In Time ütemezés" #. module: mrp #: view:mrp.property:0 #: view:mrp.property.group:0 msgid "Property Group" -msgstr "" +msgstr "Tulajdonságcsoport" #. module: mrp #: view:mrp.production:0 msgid "Qty" -msgstr "Menny." +msgstr "Mennyiség" #. module: mrp #: model:process.node,note:mrp.process_node_production0 @@ -954,6 +1002,8 @@ msgid "" "Enables multiple product output from a single production order: without " "this, a production order can have only one output product." msgstr "" +"Lehetővét teszi több termék kibocsátását egyetlen gyártási rendelésből. " +"Enélkül a gyártási rendelés csak egy terméket bocsátana ki." #. module: mrp #: view:change.production.qty:0 @@ -982,6 +1032,8 @@ msgid "" "If the service has a 'Buy' supply method, this creates a RFQ, a " "subcontracting demand for instance." msgstr "" +"Ha a szolgáltatás ellátási módja \"Vásárlás\", akkor a rendszer egy " +"ajánlatkérést hoz létre." #. module: mrp #: field:mrp.production,move_prod_id:0 @@ -996,18 +1048,20 @@ msgstr "Később" #. module: mrp #: model:process.node,name:mrp.process_node_servicemts0 msgid "Make to stock" -msgstr "Készletre gyártás" +msgstr "Beszerzés készletből" #. module: mrp #: help:mrp.routing.workcenter,sequence:0 msgid "" "Gives the sequence order when displaying a list of routing work centers." msgstr "" +"Megadja a sorrendet, amikor az eljárásban lévő munkaállomások listáját " +"kiállítjuk." #. module: mrp #: report:bom.structure:0 msgid "BOM Name" -msgstr "" +msgstr "Anyagjegyzék név" #. module: mrp #: view:mrp.production:0 @@ -1036,6 +1090,8 @@ msgid "" "Manages product routes and paths within and between locations (e.g. " "warehouses)." msgstr "" +"Kezeli a termékeljárásokat és a termékútvonalakat a helyeken és a helyek " +"között (pl.: raktárak között)." #. module: mrp #: model:process.node,note:mrp.process_node_billofmaterial0 @@ -1054,7 +1110,7 @@ msgstr "Név" #. module: mrp #: view:mrp.installer:0 msgid "MRP Application Configuration" -msgstr "" +msgstr "Gyártási modul alkalmazás konfigurálás" #. module: mrp #: help:mrp.installer,mrp_jit:0 @@ -1065,6 +1121,11 @@ msgid "" "avoids having to wait for the procurement scheduler to run or having to run " "the procurement scheduler manually." msgstr "" +"Lehetővé teszi a Just in Time számításokat a beszerzési rendelésekben. \n" +"\n" +"Míg ez erőforrás igényesebb, mint az alapértelmezett beállítás, a Just in " +"Time modul kikerüli azt, hogy a beszerzési ütemező futtatására várjunk, vagy " +"hogy a beszerzési ütemezőt manuálisan futtassuk." #. module: mrp #: field:mrp.product.produce,mode:0 @@ -1079,7 +1140,7 @@ msgstr "]" #. module: mrp #: field:mrp.workcenter.load,measure_unit:0 msgid "Amount measuring unit" -msgstr "" +msgstr "Érték mértékegysége" #. module: mrp #: model:ir.actions.act_window,help:mrp.mrp_production_action_planning @@ -1091,11 +1152,18 @@ msgid "" "materials have been defined, OpenERP is capable of automatically deciding on " "the manufacturing route depending on the needs of the company." msgstr "" +"Gyártási rendelések meghatározzák azokat a műveleteket, amelyeket el kell " +"végezni, illetve az alapanyag-felhasználást minden egyes gyártási fázisban. " +"Használjon specifikációkat (anyagjegyzékek), hogy meghatározza az alapanyag-" +"szükségletek és a késztermékek elkészítéséhez szükséges gyártási " +"rendeléseket. Ha az anyagjegyzékeket egyszer már megadta, az OpenERP képes " +"automatiklusan eldönteni, hogy melyik gyártási eljárást alkalmazza, függően " +"a vállalat szükségleteitől." #. module: mrp #: constraint:mrp.production:0 msgid "Order quantity cannot be negative or zero !" -msgstr "Rendelési mennyiség nem lehet negatív vagy nulla !" +msgstr "Rendelési mennyiség nem lehet negatív vagy nulla!" #. module: mrp #: model:ir.actions.act_window,name:mrp.mrp_production_action3 @@ -1144,7 +1212,7 @@ msgstr "" #. module: mrp #: model:ir.actions.act_window,name:mrp.mrp_production_action4 msgid "Manufacturing Orders Waiting Products" -msgstr "" +msgstr "Árura várakozó gyártási rendelések" #. module: mrp #: view:mrp.bom:0 @@ -1160,36 +1228,36 @@ msgstr "Csoportosítás..." #: code:addons/mrp/report/price.py:121 #, python-format msgid "Cycles Cost" -msgstr "Ciklus költsége" +msgstr "Ciklus költség" #. module: mrp #: selection:mrp.workcenter.load,measure_unit:0 msgid "Amount in cycles" -msgstr "" +msgstr "Érték ciklusokban" #. module: mrp #: field:mrp.production,location_dest_id:0 #: view:mrp.production.order:0 #: field:mrp.production.order,location_dest_id:0 msgid "Finished Products Location" -msgstr "" +msgstr "Késztermékek helye" #. module: mrp #: model:ir.ui.menu,name:mrp.menu_pm_resources_config msgid "Resources" -msgstr "Források" +msgstr "Erőforrások" #. module: mrp #: field:mrp.workcenter,costs_journal_id:0 msgid "Analytic Journal" -msgstr "Gyűjtőnapló" +msgstr "Analitikus napló" #. module: mrp #: model:ir.actions.act_window,name:mrp.mrp_workcenter_action #: model:ir.ui.menu,name:mrp.menu_view_resource_search_mrp #: field:mrp.routing,workcenter_lines:0 msgid "Work Centers" -msgstr "" +msgstr "Munkaállomások" #. module: mrp #: selection:mrp.workcenter.load,time_unit:0 @@ -1204,6 +1272,10 @@ msgid "" "They are attached to bills of materials that will define the required raw " "materials." msgstr "" +"A gyártási eljárások lehetővé teszik Önnek, hogy létrehozza és kezelje " +"azokat a gyártási műveleteket, amelyeket a termék legyártásához követni kell " +"a munkaállomásokon. Az eljárások az anyagjegyzékekhez kapcsolódnak, amelyek " +"meghatározzák a szükséges alapanyagokat." #. module: mrp #: field:report.workcenter.load,hour:0 @@ -1213,7 +1285,7 @@ msgstr "Óra száma" #. module: mrp #: view:mrp.routing:0 msgid "Work Center Operations" -msgstr "" +msgstr "Munkaállomás műveletei" #. module: mrp #: view:mrp.routing:0 @@ -1237,24 +1309,24 @@ msgstr "Időegység kiválasztása" #. module: mrp #: view:report.workcenter.load:0 msgid "Work Center load" -msgstr "" +msgstr "Munkaállomás terheltsége" #. module: mrp #: help:mrp.production,location_dest_id:0 msgid "Location where the system will stock the finished products." -msgstr "" +msgstr "A késztermékek tárolásának helye." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" #. module: mrp #: field:stock.change.standard.price,change_parent_price:0 msgid "Change Parent Price" -msgstr "" +msgstr "Fölérendelt ár megváltoztatása" #. module: mrp #: model:ir.model,name:mrp.model_stock_move @@ -1268,6 +1340,9 @@ msgid "" "maxi quantity. It's available in the Inventory management menu and " "configured by product." msgstr "" +"A minimális készlet szabály egy automatikus beszerzési szabály, amely a " +"minimum és maximum árumennyiségre épül. Elérhető a leltárkezelés menüben, " +"illetve az egyes termékeknél állítható be." #. module: mrp #: selection:mrp.workcenter.load,time_unit:0 @@ -1282,7 +1357,7 @@ msgstr "Felülvizsgálatok" #. module: mrp #: view:mrp.installer:0 msgid "Configure Your Manufacturing Resource Planning Application" -msgstr "" +msgstr "Állítsa be a gyártási modul alkalmazását." #. module: mrp #: field:mrp.production,priority:0 @@ -1301,38 +1376,38 @@ msgid "Month -1" msgstr "Előző hónap" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." -msgstr "" +msgstr "A %s gyártási rendelést a rendszer a következőre ütemezte: %s" #. module: mrp #: report:mrp.production.order:0 msgid "Production Order N° :" -msgstr "Gyártási rendelés száma" +msgstr "Gyártási rendelés száma:" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." -msgstr "" +msgstr "A %s gyártási rendelés gyártásra kész." #. module: mrp #: model:ir.model,name:mrp.model_mrp_production_product_line msgid "Production Scheduled Product" -msgstr "" +msgstr "Gyártásra ütemezett termék" #. module: mrp #: help:res.company,manufacturing_lead:0 msgid "Security days for each manufacturing operation." -msgstr "" +msgstr "Minden gyártási művelet biztonsági ideje." #. module: mrp #: model:process.node,name:mrp.process_node_mts0 #: model:process.transition,name:mrp.process_transition_servicemts0 #: model:process.transition,name:mrp.process_transition_stockmts0 msgid "Make to Stock" -msgstr "Készletre gyártás" +msgstr "Beszerzés készletből" #. module: mrp #: selection:mrp.production.order,month:0 @@ -1348,6 +1423,12 @@ msgid "" "product needs. You can either create a bill of materials to define specific " "production steps or define a single multi-level bill of materials." msgstr "" +"A fő anyagjegyzékek lehetővé teszik Önnek, hogy létrehozza és kezelje a " +"késztermék előállításához szükséges alapanyagok listáját. Az OpenERP " +"használja ezeket az anyagjegyzékeket, hogy automatikusan javasoljon gyártási " +"rendeléseket a termékszükségleteknek megfelelően. Létrehozhat " +"anyagjegyzékeket, hogy meghatározzon speciális gyártási lépéseket vagy " +"megadhat egy több szintű anyagjegyzék-struktúrát is." #. module: mrp #: model:process.transition,note:mrp.process_transition_stockrfq0 @@ -1355,8 +1436,8 @@ msgid "" "In case the Supply method of the product is Buy, the system creates a " "purchase order." msgstr "" -"Ha a termék ellátási módszere vásárlás, a rendszer szállítói megrendelést " -"hoz létre." +"Ha a termék ellátási módszere \"Vásárlás\", a rendszer szállítói " +"megrendelést hoz létre." #. module: mrp #: model:ir.model,name:mrp.model_procurement_order @@ -1373,7 +1454,7 @@ msgstr "Termék költségszerkezete" #: code:addons/mrp/report/price.py:130 #, python-format msgid "Components suppliers" -msgstr "Alkatrészek beszállítói" +msgstr "Hozzávalók beszállítói" #. module: mrp #: model:ir.model,name:mrp.model_mrp_installer @@ -1383,7 +1464,7 @@ msgstr "mrp.installer" #. module: mrp #: view:mrp.production:0 msgid "Production Work Centers" -msgstr "" +msgstr "Gyártási munkaállomások" #. module: mrp #: view:mrp.production.order:0 @@ -1400,12 +1481,12 @@ msgstr "Aktív ID nem található" #. module: mrp #: view:mrp.workcenter:0 msgid "Search for mrp workcenter" -msgstr "" +msgstr "Munkaállomás keresése" #. module: mrp #: view:mrp.bom:0 msgid "BoM Structure" -msgstr "" +msgstr "Anyagjegyzék struktúra" #. module: mrp #: field:mrp.production,date_start:0 @@ -1416,12 +1497,12 @@ msgstr "Kezdő dátum" #. module: mrp #: field:mrp.workcenter,costs_hour_account_id:0 msgid "Hour Account" -msgstr "Óra gyűjtőkód" +msgstr "Óra számla" #. module: mrp #: view:mrp.production:0 msgid "Destination Loc." -msgstr "" +msgstr "Célállomás helye" #. module: mrp #: field:mrp.production.order,product_id2:0 @@ -1442,13 +1523,13 @@ msgstr "aktív" #. module: mrp #: model:process.node,name:mrp.process_node_procureproducts0 msgid "Procure Products" -msgstr "" +msgstr "Termékek beszerzése" #. module: mrp #: model:ir.actions.act_window,name:mrp.action_report_workcenter_load_tree #: view:report.workcenter.load:0 msgid "Work Center Loads" -msgstr "" +msgstr "Munkaállomások terheltsége" #. module: mrp #: model:ir.actions.act_window,name:mrp.mrp_property_action @@ -1466,6 +1547,7 @@ msgstr "Tulajdonságok" msgid "" "Reference of the document that generated this production order request." msgstr "" +"A dokumentum hivatkozása hozta létre ezt a gyártási rendelési megbízást." #. module: mrp #: sql_constraint:mrp.bom:0 @@ -1474,6 +1556,9 @@ msgid "" "You should install the mrp_subproduct module if you want to manage extra " "products on BoMs !" msgstr "" +"Minden termékmennyiségnek pozitívnak kell lennie.\n" +"Telepítse az altermékek modult, amennyiben több terméket is szeretnénk egy " +"anyagjegyzékkel legyártani." #. module: mrp #: view:mrp.production:0 @@ -1483,12 +1568,12 @@ msgstr "Extra információ" #. module: mrp #: model:ir.model,name:mrp.model_change_production_qty msgid "Change Quantity of Products" -msgstr "" +msgstr "Termékek mennyiségének megváltoztatása" #. module: mrp #: model:process.node,note:mrp.process_node_productionorder0 msgid "Drives the procurement orders for raw material." -msgstr "" +msgstr "Kezeli az alapanyagok beszerzési rendeléseit." #. module: mrp #: view:mrp.production.order:0 @@ -1503,7 +1588,7 @@ msgstr "Főkönyvi számla" #. module: mrp #: report:mrp.production.order:0 msgid "SO Number" -msgstr "" +msgstr "Értékesítési megbízás száma" #. module: mrp #: selection:mrp.production,state:0 @@ -1536,17 +1621,19 @@ msgid "" "This will change the price of parent products also according to the BoM " "structure specified for the product." msgstr "" +"Ez megváltoztatja a fölérendelt termékek árát is a termék anyagjegyzék-" +"struktúrájának megfelelően." #. module: mrp #: model:ir.actions.act_window,name:mrp.mrp_production_action2 msgid "Manufacturing Orders To Start" -msgstr "" +msgstr "Elkezdésre váró gyártási rendelések" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" -msgstr "" +msgstr "A %s állapotban lévő gyártási rendelések nem törölhetőek!" #. module: mrp #: model:ir.model,name:mrp.model_mrp_workcenter @@ -1555,12 +1642,12 @@ msgstr "" #: view:mrp.workcenter:0 #: field:report.workcenter.load,workcenter_id:0 msgid "Work Center" -msgstr "" +msgstr "Munkaállomás" #. module: mrp #: field:mrp.workcenter,capacity_per_cycle:0 msgid "Capacity per Cycle" -msgstr "" +msgstr "Ciklusonkénti kapacitás" #. module: mrp #: model:ir.model,name:mrp.model_product_product @@ -1585,7 +1672,7 @@ msgstr "Összes óra" #: field:mrp.production,location_src_id:0 #: field:mrp.production.order,location_src_id:0 msgid "Raw Materials Location" -msgstr "" +msgstr "Alapanyagok helye" #. module: mrp #: view:mrp.product_price:0 @@ -1605,11 +1692,14 @@ msgid "" "of one or more persons and/or machines that can be considered as a unit for " "capacity and planning forecasting." msgstr "" +"A munkaállomások lehetővé teszik Önnek, hogy létrehozza és kezelje az egy " +"vagy több személyből vagy gépből álló gyártási egységeket, amelyek a " +"kapacitástervezés és -előrejelzés alapegységeit képezik." #. module: mrp #: view:mrp.production:0 msgid "Consume Products" -msgstr "" +msgstr "Termékek felhasználása" #. module: mrp #: field:mrp.bom,product_uom:0 @@ -1624,16 +1714,16 @@ msgstr "Termék ME" #: model:process.transition,name:mrp.process_transition_servicemto0 #: model:process.transition,name:mrp.process_transition_stockproduct0 msgid "Make to Order" -msgstr "Rendelésre gyártás" +msgstr "Beszerzés megrendelésből" #. module: mrp #: model:ir.actions.act_window,name:mrp.action_report_mrp_production_order #: model:ir.ui.menu,name:mrp.menu_report_mrp_production_orders_tree msgid "Production Analysis" -msgstr "Gyártás elemzése" +msgstr "Gyártáselemzés" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Másolás" @@ -1647,18 +1737,20 @@ msgstr "Gyártási termékek" #: field:mrp.production,date_finished:0 #: field:mrp.production.order,date_finished:0 msgid "End Date" -msgstr "Befejezés dátuma" +msgstr "Befejezési dátum" #. module: mrp #: field:mrp.workcenter,resource_id:0 msgid "Resource" -msgstr "Forrás" +msgstr "Erőforrás" #. module: mrp #: help:mrp.bom,date_start:0 #: help:mrp.bom,date_stop:0 msgid "Validity of this BoM or component. Keep empty if it's always valid." msgstr "" +"Az anyagjegyzék vagy hozzávaló érvényessége. Hagyja üresen, ha mindig " +"érvényes." #. module: mrp #: field:mrp.production,product_uos:0 @@ -1684,21 +1776,25 @@ msgid "" "operations and to plan future loads on work centers based on production " "planning." msgstr "" +"A késztermék gyártásához szükséges műveletek listája (munkaállomások " +"listája). Az eljárás főleg arra szolgál, hogy a műveletek alatt a " +"munkaállomások költségei ki legyenek számítva, és hogy a munkaállomások " +"jövőbeni terheltsége meg legyen tervezve a gyártási terv alapján." #. module: mrp #: view:change.production.qty:0 msgid "Approve" -msgstr "Jóváhagy" +msgstr "Jóváhagyás" #. module: mrp #: view:mrp.property.group:0 msgid "Properties categories" -msgstr "" +msgstr "Tulajdonság-kategóriák" #. module: mrp #: help:mrp.production.workcenter.line,sequence:0 msgid "Gives the sequence order when displaying a list of work orders." -msgstr "" +msgstr "Megadja a sorrendet, amikor a munka megbízások listáját kiállítjuk." #. module: mrp #: report:mrp.production.order:0 @@ -1714,7 +1810,7 @@ msgstr "Tervezett termékek" #. module: mrp #: view:mrp.production.lot.line:0 msgid "Production Products Consommation" -msgstr "" +msgstr "Gyártási termékek felhasználása" #. module: mrp #: model:ir.actions.act_window,name:mrp.mrp_production_action @@ -1734,12 +1830,17 @@ msgid "" "the quantity selected and it will finish the production order when total " "ordered quantities are produced." msgstr "" +"A \"Csak felhasználás\" mód csak a kijelölt mennyiségű termékeket használja " +"fel.\n" +"A \"Felhasználás és gyártás\" mód a kijelölt mennyiségű termékeket " +"használja fel és gyártja is, és csak akkor fejezi be a gyártási rendelést, " +"amikor a teljes megrendelt mennyiség legyártásra került." #. module: mrp #: view:mrp.production:0 #: report:mrp.production.order:0 msgid "Work Orders" -msgstr "" +msgstr "Munka megbízások" #. module: mrp #: field:mrp.workcenter,costs_cycle:0 @@ -1761,13 +1862,13 @@ msgstr "Törölt" #. module: mrp #: view:mrp.production.order:0 msgid "BOM" -msgstr "" +msgstr "Anyagjegyzék" #. module: mrp #: help:mrp.bom,product_uom:0 msgid "" "UoM (Unit of Measure) is the unit of measurement for the inventory control" -msgstr "" +msgstr "A mértékegység leltárellenőrzés mértékegysége." #. module: mrp #: model:process.transition,note:mrp.process_transition_bom0 @@ -1776,6 +1877,9 @@ msgid "" "are products themselves) can also have their own Bill of Material (multi-" "level)." msgstr "" +"Az anyagjegyzék a termék szétbontása összetevőkre. Az összetevőknek, amelyek " +"maguk is termékek, rendelkezhetnek saját anyagjegyzékkel (több szintű " +"anyagjegyzék)." #. module: mrp #: field:mrp.bom,company_id:0 @@ -1828,7 +1932,7 @@ msgstr "Összetevők" #: report:bom.structure:0 #: model:ir.actions.report.xml,name:mrp.report_bom_structure msgid "BOM Structure" -msgstr "" +msgstr "Anyagjegyzék struktúra" #. module: mrp #: field:mrp.bom,date_stop:0 @@ -1843,7 +1947,7 @@ msgstr "Érvényesség kezdete" #. module: mrp #: selection:mrp.bom,type:0 msgid "Normal BoM" -msgstr "" +msgstr "Normál anyagjegyzék" #. module: mrp #: field:res.company,manufacturing_lead:0 @@ -1863,6 +1967,9 @@ msgid "" "linked to manufacturing activities, receptions of products and delivery " "orders." msgstr "" +"A heti készlet érték változtatása lehetővé teszi Önnek, hogy kövesse a " +"gyártási tevékenységekhez, a termékek beérkezéséhez és a kiszállítási " +"megbízásokhoz kapcsolódó készletérték fejlődését." #. module: mrp #: view:mrp.product.produce:0 @@ -1872,7 +1979,7 @@ msgstr "Megerősítés" #. module: mrp #: field:mrp.bom,product_efficiency:0 msgid "Manufacturing Efficiency" -msgstr "" +msgstr "Gyártási hatékonyság" #. module: mrp #: constraint:res.company:0 @@ -1885,17 +1992,19 @@ msgid "" "If the active field is set to False, it will allow you to hide the bills of " "material without removing it." msgstr "" +"Ha az aktív mező \"Hamis\"-ra van állítva, ez lehetővé teszi, hogy elrejtse " +"az anyagjegyzékeket, anélkül, hogy törölné azokat." #. module: mrp #: field:mrp.bom,product_rounding:0 msgid "Product Rounding" -msgstr "" +msgstr "Termék kerekítése" #. module: mrp #: model:ir.model,name:mrp.model_mrp_production_workcenter_line #: field:mrp.production.workcenter.line,name:0 msgid "Work Order" -msgstr "" +msgstr "Munka megbízás" #. module: mrp #: model:ir.actions.act_window,help:mrp.action_report_mrp_production_order @@ -1903,16 +2012,18 @@ msgid "" "This reporting allows you to analyse your manufacturing activities and " "performance." msgstr "" +"A riport készítés lehetővé teszi Önnek, hogy elemezze a gyártási " +"tevékenységét és teljesítményét." #. module: mrp #: selection:mrp.product.produce,mode:0 msgid "Consume Only" -msgstr "" +msgstr "Csak felhasználás" #. module: mrp #: view:mrp.production:0 msgid "Recreate Picking" -msgstr "" +msgstr "Kiszedés újrakészítése" #. module: mrp #: help:mrp.bom,type:0 @@ -1923,6 +2034,12 @@ msgid "" "product, it will be sold and shipped as a set of components, instead of " "being produced." msgstr "" +"Ha egy altermék több termékben is használatban van, hasznos lehet " +"megcsinálni a saját anyagjegyzékét. Ha nem szeretne különböző gyártási " +"rendeléseket erre az altermékre, akkor válassza a fantom anyagjegyzék " +"beállítását, mint anyagjegyzék típust. Ha a fantom anyagjegyzék kiinduló " +"termékként van használatban, akkor azt a rendszer összetevők egységeként " +"értékesíti és szállítja, ahelyett, hogy gyártaná." #. module: mrp #: field:mrp.bom,method:0 @@ -1940,6 +2057,14 @@ msgid "" " When the production gets started then the state is set to 'In Production'.\n" " When the production is over, the state is set to 'Done'." msgstr "" +"Amikor a gyártási rendelés létrejön, a gyártás állapota \"Tervezet\" lesz.\n" +"Amikor a rendelés megerősítésre kerül, a gyártás állapota \"Várakozás az " +"árura\" lesz.\n" +"Ha bármilyen hiba felmerül, a gyártás állapota \"Kiszedési hiba\" lesz. \n" +"Ha a készlet elérhető, akkor a gyártás állapota \"Gyártásra kész\" lesz. \n" +"Amikor a gyártás elkezdődik, akkor a gyártás állapota \"Gyártás alatt\" " +"lesz.\n" +"Amikor a gyártás befejeződik, a a gyártás állapota \"Kész\" lesz." #. module: mrp #: selection:mrp.bom,method:0 @@ -1950,12 +2075,12 @@ msgstr "Rendelésre" #: model:ir.ui.menu,name:mrp.menu_mrp_configuration #: view:res.company:0 msgid "Configuration" -msgstr "Beállítások" +msgstr "Beállítás" #. module: mrp #: field:mrp.workcenter,time_stop:0 msgid "Time after prod." -msgstr "" +msgstr "Gyártás utáni idő" #. module: mrp #: field:mrp.workcenter.load,time_unit:0 @@ -1965,7 +2090,7 @@ msgstr "Időszak típusa" #. module: mrp #: view:mrp.production:0 msgid "Total Qty" -msgstr "Összmenny." +msgstr "Összmennyiség" #. module: mrp #: field:mrp.routing.workcenter,hour_nbr:0 @@ -1975,7 +2100,7 @@ msgstr "Órák száma" #. module: mrp #: view:mrp.workcenter:0 msgid "Costing Information" -msgstr "" +msgstr "Költségszámítási információk" #. module: mrp #: model:process.node,name:mrp.process_node_purchaseprocure0 @@ -1985,27 +2110,27 @@ msgstr "Beszerzési megrendelések" #. module: mrp #: help:mrp.bom,product_rounding:0 msgid "Rounding applied on the product quantity." -msgstr "" +msgstr "A termékmennyiségen alkalmazott kerekítés." #. module: mrp #: model:process.node,note:mrp.process_node_stock0 msgid "Assignment from Production or Purchase Order." -msgstr "" +msgstr "Ellátás gyártási vagy beszerzési megrendelésből." #. module: mrp #: field:mrp.routing.workcenter,routing_id:0 msgid "Parent Routing" -msgstr "" +msgstr "Fölérendelt eljárás" #. module: mrp #: view:mrp.installer:0 msgid "Configure" -msgstr "Beállítás" +msgstr "Beállít" #. module: mrp #: help:mrp.workcenter,time_start:0 msgid "Time in hours for the setup." -msgstr "" +msgstr "A beállításhoz szükséges idő órákban megadva." #. module: mrp #: selection:mrp.production.order,month:0 @@ -2021,19 +2146,19 @@ msgstr "Kép" #: field:mrp.bom.revision,bom_id:0 #: field:procurement.order,bom_id:0 msgid "BoM" -msgstr "" +msgstr "Anyagjegyzék" #. module: mrp #: model:ir.model,name:mrp.model_report_mrp_inout #: view:report.mrp.inout:0 msgid "Stock value variation" -msgstr "" +msgstr "Készletérték változás" #. module: mrp #: model:process.node,note:mrp.process_node_mts0 #: model:process.node,note:mrp.process_node_servicemts0 msgid "Assignment from stock." -msgstr "" +msgstr "Ellátás raktárból" #. module: mrp #: selection:mrp.production,state:0 @@ -2045,13 +2170,13 @@ msgstr "Várakozás az árura" #. module: mrp #: field:mrp.bom.revision,last_indice:0 msgid "last indice" -msgstr "" +msgstr "utolsó jelzőszám" #. module: mrp #: field:mrp.bom,revision_ids:0 #: view:mrp.bom.revision:0 msgid "BoM Revisions" -msgstr "" +msgstr "Anyagjegyzék felülvizsgálatok" #. module: mrp #: selection:mrp.production,state:0 @@ -2091,7 +2216,7 @@ msgstr "Költségszerkezet" #. module: mrp #: selection:mrp.product.produce,mode:0 msgid "Consume & Produce" -msgstr "" +msgstr "Felhasználás és gyártás" #. module: mrp #: selection:mrp.production.order,month:0 @@ -2101,7 +2226,7 @@ msgstr "November" #. module: mrp #: field:mrp.bom,bom_id:0 msgid "Parent BoM" -msgstr "" +msgstr "Fölérendelt anyagjegyzék" #. module: mrp #: model:ir.actions.act_window,help:mrp.mrp_bom_form_action2 @@ -2110,6 +2235,9 @@ msgid "" "master bills of materials. Use this menu to search in which BoM a specific " "component is used." msgstr "" +"Az anyagjegyzék összetevők azok összetevők és altermékek, amelyek fő " +"anyagjegyzékek létrehozására szolgálnak. Használja ezt a menüt annak " +"megkeresésére, hogy egy speciális összetevőt mely anyagjegyzék használ." #. module: mrp #: selection:mrp.production.order,month:0 @@ -2119,10 +2247,10 @@ msgstr "Január" #. module: mrp #: model:process.node,note:mrp.process_node_stockproduct0 msgid "Product type is Stockable or Consumable." -msgstr "A termék típusa készletezhető vagy felhasználható." +msgstr "A termék típusa raktározható vagy felhasználható." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -2140,7 +2268,7 @@ msgstr "Mennyiség kiválasztása" #: model:ir.ui.menu,name:mrp.menu_mrp_bom_form_action #: field:product.product,bom_ids:0 msgid "Bill of Materials" -msgstr "" +msgstr "Anyagjegyzékek" #. module: mrp #: help:mrp.routing.workcenter,routing_id:0 @@ -2153,7 +2281,7 @@ msgstr "" #. module: mrp #: model:ir.model,name:mrp.model_mrp_bom_revision msgid "Bill of Material Revision" -msgstr "" +msgstr "Anyagjegyzék felülvizsgálat" #. module: mrp #: view:mrp.routing.workcenter:0 @@ -2164,13 +2292,13 @@ msgstr "Általános információ" #. module: mrp #: view:mrp.production:0 msgid "Productions" -msgstr "Gyártás" +msgstr "Gyártások" #. module: mrp #: code:addons/mrp/report/price.py:194 #, python-format msgid "Work Cost of " -msgstr "" +msgstr "Munkaköltsége " #. module: mrp #: help:mrp.workcenter,note:0 @@ -2189,7 +2317,7 @@ msgstr "" #: view:mrp.routing:0 #: model:process.node,name:mrp.process_node_routing0 msgid "Routing" -msgstr "" +msgstr "Gyártási eljárás" #. module: mrp #: field:mrp.installer,mrp_operations:0 @@ -2204,7 +2332,7 @@ msgstr "Tervezett dátum" #. module: mrp #: constraint:stock.move:0 msgid "You must assign a production lot for this product" -msgstr "" +msgstr "Rendeljen hozzá egy gyártási tételt ehhez a termékhez!" #. module: mrp #: model:ir.actions.act_window,help:mrp.mrp_property_action @@ -2215,6 +2343,12 @@ msgid "" "sales person creates a sales order, he can relate it to several properties " "and OpenERP will automatically select the BoM to use according the the needs." msgstr "" +"A Tulajdonságok az OpenERP-ben arra szolgál, hogy kiválassza a megfelelő " +"anyagjegyzéket egy termék gyártásához, amikor különböző módokon is " +"gyárthatja ugyanazt a terméket. Számos tulajdonságot hozzárendelhet minden " +"egyes anyagjegyzékhez. Amikor egy értékesítő létrehoz egy értékesítési " +"megbízást, összekapcsolhatja azt számos tulajdonsággal, és az OpenERP " +"automatikusan kiválasztja a megfelelő anyagjegyzéket az igények alapján." #. module: mrp #: view:mrp.production.order:0 @@ -2225,12 +2359,12 @@ msgstr "Gyártás" #. module: mrp #: view:board.board:0 msgid "Procurements in Exception" -msgstr "" +msgstr "Hibás beszerzések" #. module: mrp #: model:process.transition,name:mrp.process_transition_minimumstockprocure0 msgid "'Minimum stock rule' material" -msgstr "" +msgstr "\"Minimális készlet szabály\" tárgya" #. module: mrp #: model:ir.model,name:mrp.model_mrp_product_price @@ -2240,7 +2374,7 @@ msgstr "Termék ára" #. module: mrp #: model:ir.actions.act_window,name:mrp.action_mrp_installer msgid "MRP Applications Configuration" -msgstr "" +msgstr "Gyártási modul alkalmazások beállítása" #. module: mrp #: model:ir.model,name:mrp.model_stock_move_split @@ -2250,13 +2384,13 @@ msgstr "Gyártási tételek részekre osztása" #. module: mrp #: view:change.production.qty:0 msgid "Change Quantity" -msgstr "" +msgstr "Mennyiség változtatása" #. module: mrp #: view:change.production.qty:0 #: model:ir.actions.act_window,name:mrp.action_change_production_qty msgid "Change Product Qty" -msgstr "" +msgstr "Mennyiség változtatása" #. module: mrp #: view:mrp.bom.revision:0 @@ -2279,7 +2413,7 @@ msgstr "Május" #. module: mrp #: view:board.board:0 msgid "Manufacturing board" -msgstr "" +msgstr "Gyártás áttekintő" #. module: mrp #: field:mrp.production,date_planned_end:0 @@ -2293,6 +2427,9 @@ msgid "" "specified period. It is expressed in number of hours and machine related " "cycles." msgstr "" +"A munkaállomások terheltsége menü ad egy előrejelzést a munkaállomások " +"terheltségéről egy megadott időszakban. Ez óraszámokban és géphez kapcsolt " +"ciklusokban kerül kifejezésre." #. module: mrp #: model:process.node,note:mrp.process_node_procureproducts0 @@ -2318,7 +2455,7 @@ msgstr "Február" #: model:ir.actions.act_window,name:mrp.mrp_property_group_action #: model:ir.ui.menu,name:mrp.menu_mrp_property_group_action msgid "Property Groups" -msgstr "" +msgstr "Tulajdonság-csoportok" #. module: mrp #: selection:mrp.production.order,month:0 @@ -2331,16 +2468,19 @@ msgid "" "Depending on the chosen method to supply the stockable products, the " "procurement order creates a RFQ, a production order, ... " msgstr "" +"Függően a raktározható termékek ellátásra kiválasztott módszertől a " +"beszerzési megrendelés létrehoz egy ajánlatkérést, egy gyártási " +"rendelést,... " #. module: mrp #: help:mrp.workcenter,time_stop:0 msgid "Time in hours for the cleaning." -msgstr "" +msgstr "A tisztítás ideje (órákban)." #. module: mrp #: model:process.transition,name:mrp.process_transition_purchaseprocure0 msgid "Automatic RFQ" -msgstr "" +msgstr "Automatikus ajánlatkérés" #. module: mrp #: model:process.transition,note:mrp.process_transition_servicemto0 @@ -2348,6 +2488,8 @@ msgid "" "If the service has a 'Produce' supply method, this creates a task in the " "project management module of OpenERP." msgstr "" +"Ha a szolgáltatás ellátási módszere \"Gyártás\", a rendszer feladatokat hoz " +"létre az OpenERP projektmenedzsment moduljában." #. module: mrp #: model:process.transition,note:mrp.process_transition_productionprocureproducts0 @@ -2356,6 +2498,9 @@ msgid "" "production order creates as much procurement orders as components listed in " "the BOM, through a run of the schedulers (MRP)." msgstr "" +"Az alapanyagok ellátása érdekében (lehet beszerzés vagy gyártás útján), a " +"gyártási rendelés létrehoz annyi további gyártási rendelést, amennyi " +"összetevő az anyagjegyzékben van, az ütemező futtatásán keresztül." #. module: mrp #: help:mrp.product_price,number:0 @@ -2363,11 +2508,13 @@ msgid "" "Specify quantity of products to produce or buy. Report of Cost structure " "will be displayed base on this quantity." msgstr "" +"Speciális termékmennyiség gyártásra vagy vásárlásra. A költségstruktúra " +"riport e mennyiség alapján lesz kiállítva." #. module: mrp #: selection:mrp.bom,method:0 msgid "On Stock" -msgstr "Készletre" +msgstr "Raktáron" #. module: mrp #: field:mrp.bom,sequence:0 @@ -2380,12 +2527,12 @@ msgstr "Sorszám" #. module: mrp #: model:ir.ui.menu,name:mrp.menu_view_resource_calendar_leaves_search_mrp msgid "Resource Leaves" -msgstr "" +msgstr "Erőforrás leadás" #. module: mrp #: help:mrp.bom,sequence:0 msgid "Gives the sequence order when displaying a list of bills of material." -msgstr "" +msgstr "Megadja a sorrendet, amikor az anyagjegyzékek listáját kiállítjuk." #. module: mrp #: view:mrp.production:0 @@ -2400,3 +2547,116 @@ msgstr "Felhasználandó termékek" #: field:mrp.production.order,year:0 msgid "Year" msgstr "Év" + +#~ msgid "Specify Cost of Work center per cycle." +#~ msgstr "Adja meg a munkaállomás egy ciklusra számított költségét." + +#~ msgid "Workcenter Usage" +#~ msgstr "Munkaállomás kihasználtsága" + +#~ msgid "" +#~ "Number of operations this work center can do in parallel. If this work " +#~ "center represents a team of 5 workers, the capacity per cycle is 5." +#~ msgstr "" +#~ "Műveletek száma, amelyeket a megadott munkaállomás párhuzamosan tud végezni. " +#~ "Ha ez a munkaállomás 5 munka munkavállalóból álló csoportot jelent, akkor a " +#~ "ciklusonkénti kapacitás 5." + +#~ msgid "" +#~ "\n" +#~ " This is the base module to manage the manufacturing process in OpenERP.\n" +#~ "\n" +#~ " Features:\n" +#~ " * Make to Stock / Make to Order (by line)\n" +#~ " * Multi-level BoMs, no limit\n" +#~ " * Multi-level routing, no limit\n" +#~ " * Routing and work center integrated with analytic accounting\n" +#~ " * Scheduler computation periodically / Just In Time module\n" +#~ " * Multi-pos, multi-warehouse\n" +#~ " * Different reordering policies\n" +#~ " * Cost method by product: standard price, average price\n" +#~ " * Easy analysis of troubles or needs\n" +#~ " * Very flexible\n" +#~ " * Allows to browse Bill of Materials in complete structure\n" +#~ " that include child and phantom BoMs\n" +#~ " It supports complete integration and planification of stockable goods,\n" +#~ " consumable of services. Services are completely integrated with the " +#~ "rest\n" +#~ " of the software. For instance, you can set up a sub-contracting service\n" +#~ " in a BoM to automatically purchase on order the assembly of your " +#~ "production.\n" +#~ "\n" +#~ " Reports provided by this module:\n" +#~ " * Bill of Material structure and components\n" +#~ " * Load forecast on workcenters\n" +#~ " * Print a production order\n" +#~ " * Stock forecasts\n" +#~ " Dashboard provided by this module::\n" +#~ " * List of next production orders\n" +#~ " * List of deliveries (out picking)\n" +#~ " * Graph of work center load\n" +#~ " * List of procurement in exception\n" +#~ " " +#~ msgstr "" +#~ "\n" +#~ " Ez az alapmodul az OpenERP-ben a gyártási folyamatok kezelésére. \n" +#~ "\n" +#~ " Funkciók:\n" +#~ " * Beszerzés raktárból és beszerzés megrendelésből (soronként " +#~ "különbözően)\n" +#~ " * Többszintű anyagjegyzékek (nincs korlátozás)\n" +#~ " * Többszintű eljárások (nincs korlátozás)\n" +#~ " * Gyártási eljárás és munkaállomás integráció az analitikus " +#~ "könyveléssel\n" +#~ " * Ütemező számítások periódikusan / Just In Time modul\n" +#~ " * Több értékesítési hely, több raktár kezelése\n" +#~ " * Különböző újrarendező eljárások\n" +#~ " * Különböző költségkalkulációk termékenként: elszámoló ár, átlagár\n" +#~ " * Könnyen kezelhető szükséglet felmérés és hiba felmérés\n" +#~ " * Nagyon rugalmas\n" +#~ " * Lehetővé teszi, hogy az anyagjegyzékeket a teljes struktúrájukban " +#~ "böngésszük,\n" +#~ " amely magába foglalja az alárendelt és fölérendelt anyagjegyzékeket " +#~ "is.\n" +#~ " Támogatja a raktározható áruk és a fogyasztható szolgáltatások teljes " +#~ "integrációját\n" +#~ " és a velük való tervezést. A szolgáltatások nem teljesen integráltak\n" +#~ " a szoftver többi részével. Létrehozhat például egy alárendelt " +#~ "szolgáltatást \n" +#~ " egy anyagjegyzékben, hogy automatikusan beszerezze rendelésre a " +#~ "gyártásának tételeit.\n" +#~ "\n" +#~ " A modul által nyújtott riportok:\n" +#~ " * Anyagjegyzék struktúra és összetevők\n" +#~ " * Munkaállomások terheltségének előrejelzése\n" +#~ " * Gyártási rendelés nyomtatása\n" +#~ " * Raktár előrejelzések\n" +#~ "\n" +#~ " A modul által nyújtott vezérlőpultok:\n" +#~ " * Következő gyártási rendelések listája\n" +#~ " * Szállítások listája\n" +#~ " * Grafikon a munkaállomás terheltségéről\n" +#~ " * Beszerzési hibák listája\n" +#~ " " + +#~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Ez a belső kiszedési lista, ami a késztermékeket a termelés tervbe viszi" + +#~ msgid "" +#~ "Routing indicates all the workcenters used, for how long and/or cycles.If " +#~ "Routing is indicated then,the third tab of a production order (workcenters) " +#~ "will be automatically pre-completed." +#~ msgstr "" +#~ "A gyártási eljárás jelzi, hogy az összes munkaállomás milyen hosszan és/vagy " +#~ "hány ciklusra van használatban. Ha a gyártási eljárás be van kapcsolva, a " +#~ "gyártási rendelés 3. füle (munkaállomások) automatikusan kitöltésre kerül." + +#~ msgid "" +#~ "Description of the work center. Explain here what's a cycle according to " +#~ "this work center." +#~ msgstr "" +#~ "Munkaállomás leírása. Elmagyarázásra kerül itt, hogy mit jelent egy ciklus a " +#~ "munkaállomás összefüggésében." diff --git a/addons/mrp/i18n/id.po b/addons/mrp/i18n/id.po index f59cf77019d..7741a302045 100644 --- a/addons/mrp/i18n/id.po +++ b/addons/mrp/i18n/id.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -715,7 +715,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -728,7 +728,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1240,7 +1240,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1294,7 +1294,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1305,7 +1305,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1624,7 +1624,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/it.po b/addons/mrp/i18n/it.po index 3b238fffc78..8cddef0977b 100644 --- a/addons/mrp/i18n/it.po +++ b/addons/mrp/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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-01-17 09:33+0000\n" +"PO-Revision-Date: 2011-12-06 10:31+0000\n" "Last-Translator: Davide Corio - agilebg.com <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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -763,7 +763,7 @@ msgid "Per month" msgstr "Mensile" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -776,7 +776,7 @@ msgid "Product Name" msgstr "Descrizione Prodotto" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Azione non valida !" @@ -1316,7 +1316,7 @@ msgstr "Ubicazione dove il sistema stoccherà i prodotti finiti" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Questa è la lista dei prelievi interni necessari per la pianificazione della " @@ -1375,7 +1375,7 @@ msgid "Month -1" msgstr "Mese -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "L'ordine di produzione '%s' è pianificato per il %s." @@ -1386,7 +1386,7 @@ msgid "Production Order N° :" msgstr "Ordine di produzione N° :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "L'ordine di produzione '%s' è pronto per essere eseguito." @@ -1627,7 +1627,7 @@ msgid "Manufacturing Orders To Start" msgstr "Ordini di Produzione da Eseguire" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1721,7 +1721,7 @@ msgid "Production Analysis" msgstr "Analisi della produzione" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copia" @@ -2252,7 +2252,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Il tipo prodotto è Stoccabile o Consumabile" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3256,6 +3256,13 @@ msgstr "Anno" #~ "ciclo sarà 5." #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Questa è la lista dei prelievi interni necessari per la pianificazione della " +#~ "produzione del prodotto finito" + +#~ msgid "" #~ "Description of the work center. Explain here what's a cycle according to " #~ "this work center." #~ msgstr "" diff --git a/addons/mrp/i18n/ko.po b/addons/mrp/i18n/ko.po index 3fbc4c82d4c..92e42f8f80d 100644 --- a/addons/mrp/i18n/ko.po +++ b/addons/mrp/i18n/ko.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2010-11-27 12:18+0000\n" +"PO-Revision-Date: 2011-12-06 11:08+0000\n" "Last-Translator: qdp (OpenERP) <qdp-launchpad@tinyerp.com>\n" "Language-Team: Korean <ko@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -718,7 +718,7 @@ msgid "Per month" msgstr "월별" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -731,7 +731,7 @@ msgid "Product Name" msgstr "상품 이름" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "유효하지 않은 액션 !" @@ -1243,7 +1243,7 @@ msgstr "완제품을 보관할 시스템의 위치" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1297,7 +1297,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1308,7 +1308,7 @@ msgid "Production Order N° :" msgstr "생산 주문 번호:" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1537,7 +1537,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1627,7 +1627,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2116,7 +2116,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/lt.po b/addons/mrp/i18n/lt.po index 44665d98443..4c776d8c9fc 100644 --- a/addons/mrp/i18n/lt.po +++ b/addons/mrp/i18n/lt.po @@ -7,15 +7,15 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2010-07-20 22:46+0000\n" +"PO-Revision-Date: 2011-12-06 10:26+0000\n" "Last-Translator: Giedrius Slavinskas - inovera.lt " "<giedrius.slavinskas@gmail.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" "Language: lt\n" #. module: mrp @@ -722,7 +722,7 @@ msgid "Per month" msgstr "Per mėnesį" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -735,7 +735,7 @@ msgid "Product Name" msgstr "Produkto pavadinimas" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Neleistinas veiksmas!" @@ -1247,7 +1247,7 @@ msgstr "Vieta, kurioje talpinami pabaigti produktai ." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1301,7 +1301,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1312,7 +1312,7 @@ msgid "Production Order N° :" msgstr "Gamybos užsakymo Nr. :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1541,7 +1541,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1631,7 +1631,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2121,7 +2121,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/mrp.pot b/addons/mrp/i18n/mrp.pot index 25a8bea531d..937fd9f45c4 100644 --- a/addons/mrp/i18n/mrp.pot +++ b/addons/mrp/i18n/mrp.pot @@ -1165,7 +1165,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 -msgid "This is the internal picking list that brings the finished product to the production plan" +msgid "This is the Internal Picking List that brings the finished product to the production plan" msgstr "" #. module: mrp diff --git a/addons/mrp/i18n/nb.po b/addons/mrp/i18n/nb.po index 2bd9cc375b1..efa8612a315 100644 --- a/addons/mrp/i18n/nb.po +++ b/addons/mrp/i18n/nb.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-01-30 22:16+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"PO-Revision-Date: 2011-12-06 11:04+0000\n" +"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n" "Language-Team: Norwegian Bokmal <nb@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -756,7 +756,7 @@ msgid "Per month" msgstr "Per måned" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -769,7 +769,7 @@ msgid "Product Name" msgstr "Produktnavn" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Ugyldig hendelse !" @@ -1306,7 +1306,7 @@ msgstr "Lokasjon hvor systemet vil plassere de ferdige produktene." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Dette er den interne plukklisten som flytter det ferdige produktet til " @@ -1364,7 +1364,7 @@ msgid "Month -1" msgstr "Måned -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Produksjonsordren '%s' er planlagt for %s." @@ -1375,7 +1375,7 @@ msgid "Production Order N° :" msgstr "Produksjonsordre nr :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Produksjonsordre '%s' er klar for produksjon ." @@ -1617,7 +1617,7 @@ msgid "Manufacturing Orders To Start" msgstr "Produksjonsordre å starte" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "Kan ikke slette Produksjonsordre(r) som er i %s Status!" @@ -1710,7 +1710,7 @@ msgid "Production Analysis" msgstr "Produktanalyser" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Kopier" @@ -2211,7 +2211,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -2574,3 +2574,10 @@ msgstr "År" #~ " * Graf over arbeidssenter belastning\n" #~ " * Liste over anskaffelser med unntak\n" #~ " " + +#~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Dette er den interne plukklisten som flytter det ferdige produktet til " +#~ "produksjonsplanen" diff --git a/addons/mrp/i18n/nl.po b/addons/mrp/i18n/nl.po index a54013b441c..16f363355a5 100644 --- a/addons/mrp/i18n/nl.po +++ b/addons/mrp/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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2010-11-27 12:23+0000\n" +"PO-Revision-Date: 2011-12-06 11:07+0000\n" "Last-Translator: qdp (OpenERP) <qdp-launchpad@tinyerp.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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:50+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -720,7 +720,7 @@ msgid "Per month" msgstr "Per maand" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -733,7 +733,7 @@ msgid "Product Name" msgstr "Naam product" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Ongeldige actie!" @@ -1245,7 +1245,7 @@ msgstr "Locatie waar de eindproducten opgeslagen worden" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1299,7 +1299,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1310,7 +1310,7 @@ msgid "Production Order N° :" msgstr "Productie opdracht nr :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1539,7 +1539,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1629,7 +1629,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2120,7 +2120,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/nl_BE.po b/addons/mrp/i18n/nl_BE.po index bf55c83626f..da909aadf80 100644 --- a/addons/mrp/i18n/nl_BE.po +++ b/addons/mrp/i18n/nl_BE.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: 2011-11-05 04:55+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -715,7 +715,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -728,7 +728,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1240,7 +1240,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1294,7 +1294,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1305,7 +1305,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1624,7 +1624,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/pl.po b/addons/mrp/i18n/pl.po index fd8dd6e2272..c9017dfec60 100644 --- a/addons/mrp/i18n/pl.po +++ b/addons/mrp/i18n/pl.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-01-22 13:12+0000\n" +"PO-Revision-Date: 2011-12-06 11:05+0000\n" "Last-Translator: Grzegorz Grzelak (OpenGLOBE.pl) <grzegorz@openglobe.pl>\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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -746,7 +746,7 @@ msgid "Per month" msgstr "Na miesiąc" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -759,7 +759,7 @@ msgid "Product Name" msgstr "Nazwa produktu" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Niedozwolona akcja !" @@ -1280,7 +1280,7 @@ msgstr "Strefa, w której system umieści gotowe produkty." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "To jest wewnętrzne pobranie, które przenosi gotowe produkty do planu " @@ -1339,7 +1339,7 @@ msgid "Month -1" msgstr "Miesiąc -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Zamówienie produkcji '%s' zostało zaplanowane dla %s." @@ -1350,7 +1350,7 @@ msgid "Production Order N° :" msgstr "Nr zamówienia produkcji" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Zamówienie produkcji '%s' jest gotowe do produkcji." @@ -1583,7 +1583,7 @@ msgid "Manufacturing Orders To Start" msgstr "Zamówienia produkcji do rozpoczęcia" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "Nie można usuwać zamówień produkcji, które są w stanie %s !" @@ -1673,7 +1673,7 @@ msgid "Production Analysis" msgstr "Analiza produkcji" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Kopiuj" @@ -2164,7 +2164,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3149,6 +3149,13 @@ msgstr "Rok" #~ msgid "Procure Stockable Product" #~ msgstr "Zapotrzebowanie na produkty rejestrowane" +#~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "To jest wewnętrzne pobranie, które przenosi gotowe produkty do planu " +#~ "produkcji" + #~ msgid "Workcenter Usage" #~ msgstr "Użycie centrum roboczego" diff --git a/addons/mrp/i18n/pt.po b/addons/mrp/i18n/pt.po index f67b9afca9c..478295f6d66 100644 --- a/addons/mrp/i18n/pt.po +++ b/addons/mrp/i18n/pt.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-11-09 17:38+0000\n" -"Last-Translator: DReis <Unknown>\n" +"PO-Revision-Date: 2011-12-06 10:51+0000\n" +"Last-Translator: Fabien (Open ERP) <fp@tinyerp.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: 2011-11-10 04:57+0000\n" -"X-Generator: Launchpad (build 14263)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -734,7 +734,7 @@ msgid "Per month" msgstr "Por mês" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -747,7 +747,7 @@ msgid "Product Name" msgstr "Nome de produção" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Acção inválida !" @@ -1259,7 +1259,7 @@ msgstr "Locais onde o sistema vai armazenar os produtos acabados." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1313,7 +1313,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1324,7 +1324,7 @@ msgid "Production Order N° :" msgstr "Nº de Ordem de Produção :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1553,7 +1553,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1643,7 +1643,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -1801,7 +1801,7 @@ msgstr "Empresa" #. module: mrp #: field:mrp.workcenter,time_cycle:0 msgid "Time for 1 cycle (hour)" -msgstr "Tempo de um ciclo" +msgstr "Tempo por ciclo (horas)" #. module: mrp #: model:ir.actions.report.xml,name:mrp.report_mrp_production_report @@ -2132,7 +2132,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/pt_BR.po b/addons/mrp/i18n/pt_BR.po index e55389cc1ec..9748020a3c2 100644 --- a/addons/mrp/i18n/pt_BR.po +++ b/addons/mrp/i18n/pt_BR.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-03-07 18:35+0000\n" +"PO-Revision-Date: 2011-12-06 10:51+0000\n" "Last-Translator: Alexsandro Haag <alexsandro.haag@gmail.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: 2011-11-05 04:55+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -758,7 +758,7 @@ msgid "Per month" msgstr "Por mês" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -771,7 +771,7 @@ msgid "Product Name" msgstr "Nome do Produto" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Ação inválida!" @@ -1315,7 +1315,7 @@ msgstr "Local onde o sistema estocará os produtos acabados" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Esta é a Lista de Separação Interna que traz o produto acabado para o plano " @@ -1375,7 +1375,7 @@ msgid "Month -1" msgstr "Mês -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "A Ordem de Produção '%s' esta agendada para %s" @@ -1386,7 +1386,7 @@ msgid "Production Order N° :" msgstr "Ordem Produção N °:" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "A Ordem de Produção '%s' está pronta para produzir." @@ -1628,7 +1628,7 @@ msgid "Manufacturing Orders To Start" msgstr "Ordens de Produção para Iniciar" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1722,7 +1722,7 @@ msgid "Production Analysis" msgstr "Análise de Produção" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copiar" @@ -2249,7 +2249,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Produto é Estocável ou Consumível." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3185,6 +3185,13 @@ msgstr "Ano" #~ "Centro de Trabalho." #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Esta é a Lista de Separação Interna que traz o produto acabado para o plano " +#~ "de produção" + +#~ msgid "" #~ "Routing indicates all the workcenters used, for how long and/or cycles.If " #~ "Routing is indicated then,the third tab of a production order (workcenters) " #~ "will be automatically pre-completed." diff --git a/addons/mrp/i18n/ro.po b/addons/mrp/i18n/ro.po index e8e13f497d1..e39c78fd393 100644 --- a/addons/mrp/i18n/ro.po +++ b/addons/mrp/i18n/ro.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -756,7 +756,7 @@ msgid "Per month" msgstr "Pe lună" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -769,7 +769,7 @@ msgid "Product Name" msgstr "Nume produs" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Acţiune invalidă !" @@ -1308,7 +1308,7 @@ msgstr "Locația în care sistemul va stoca produsele finite." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1365,7 +1365,7 @@ msgid "Month -1" msgstr "Luna - 1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Comanda de producție '%s' este programată pentru %s." @@ -1376,7 +1376,7 @@ msgid "Production Order N° :" msgstr "Nr comandă producţie" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Comanda de producție '%s' este gata să producă." @@ -1618,7 +1618,7 @@ msgid "Manufacturing Orders To Start" msgstr "Comenzi de producție gata de start" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1712,7 +1712,7 @@ msgid "Production Analysis" msgstr "Analize producție" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Copiaţi" @@ -2227,7 +2227,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Tipul produsului este stocabil sau consumabile." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/ru.po b/addons/mrp/i18n/ru.po index 0c804f401be..8af7ec344ce 100644 --- a/addons/mrp/i18n/ru.po +++ b/addons/mrp/i18n/ru.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-03-24 16:01+0000\n" -"Last-Translator: Viktor Prokopiev <Unknown>\n" +"PO-Revision-Date: 2011-12-06 10:16+0000\n" +"Last-Translator: Fabien (Open ERP) <fp@tinyerp.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -745,7 +745,7 @@ msgid "Per month" msgstr "В месяц" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -758,7 +758,7 @@ msgid "Product Name" msgstr "Название продукции" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Неверное действие !" @@ -1293,7 +1293,7 @@ msgstr "Местоположение, в которое помещаются гÐ #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" "Это внутренняя комплектовочная ведомость, которая соотносит готовую " @@ -1349,7 +1349,7 @@ msgid "Month -1" msgstr "Месяц -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "Производственный заказ '%s' запланирован на %s." @@ -1360,7 +1360,7 @@ msgid "Production Order N° :" msgstr "Заказ на производство №" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "Производственный заказ '%s' готов для производства." @@ -1592,7 +1592,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1684,7 +1684,7 @@ msgid "Production Analysis" msgstr "Анализ производства" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Копировать" @@ -2177,7 +2177,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Тип продукта — Складируемый или Потребляемый." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -2941,6 +2941,13 @@ msgstr "Год" #~ "Количество параллельных операций для этого рабочегоцентра. Если этот центр " #~ "представлен 5-ю работниками - производительность за цикл равна 5." +#~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "" +#~ "Это внутренняя комплектовочная ведомость, которая соотносит готовую " +#~ "продукцию к производственному плану" + #~ msgid "Human Resource" #~ msgstr "Людские ресурсы" diff --git a/addons/mrp/i18n/sk.po b/addons/mrp/i18n/sk.po index c74a1d09c53..e62a78dff86 100644 --- a/addons/mrp/i18n/sk.po +++ b/addons/mrp/i18n/sk.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -716,7 +716,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -729,7 +729,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1241,7 +1241,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1295,7 +1295,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1306,7 +1306,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1625,7 +1625,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/sl.po b/addons/mrp/i18n/sl.po index 29d4f7054ae..25818e929aa 100644 --- a/addons/mrp/i18n/sl.po +++ b/addons/mrp/i18n/sl.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -716,7 +716,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -729,7 +729,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1241,7 +1241,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1295,7 +1295,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1306,7 +1306,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1625,7 +1625,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/sq.po b/addons/mrp/i18n/sq.po index b6dea6d1b6c..cc4573e644e 100644 --- a/addons/mrp/i18n/sq.po +++ b/addons/mrp/i18n/sq.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: 2011-11-05 04:53+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:49+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -716,7 +716,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -729,7 +729,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1241,7 +1241,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1295,7 +1295,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1306,7 +1306,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1625,7 +1625,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/sr@latin.po b/addons/mrp/i18n/sr@latin.po index 3fac861858b..1e5aba0e23f 100644 --- a/addons/mrp/i18n/sr@latin.po +++ b/addons/mrp/i18n/sr@latin.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: 2011-11-05 04:55+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:52+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -716,7 +716,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -729,7 +729,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1241,7 +1241,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1295,7 +1295,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1306,7 +1306,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1625,7 +1625,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/sv.po b/addons/mrp/i18n/sv.po index f9a8fa1318b..fd85b918c51 100644 --- a/addons/mrp/i18n/sv.po +++ b/addons/mrp/i18n/sv.po @@ -7,14 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.14\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-08-03 23:21+0000\n" -"Last-Translator: Stefan Lind <Unknown>\n" +"PO-Revision-Date: 2011-12-06 11:07+0000\n" +"Last-Translator: Fabien (Open ERP) <fp@tinyerp.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -720,7 +720,7 @@ msgid "Per month" msgstr "Per månad" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -733,7 +733,7 @@ msgid "Product Name" msgstr "Produktnamn" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Invalid action !" @@ -1245,7 +1245,7 @@ msgstr "Location where the system will stock the finished products." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1299,7 +1299,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1310,7 +1310,7 @@ msgid "Production Order N° :" msgstr "Production Order N° :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1539,7 +1539,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1629,7 +1629,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2118,7 +2118,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/tlh.po b/addons/mrp/i18n/tlh.po index fd83fcb2f40..bf42bdfa3fa 100644 --- a/addons/mrp/i18n/tlh.po +++ b/addons/mrp/i18n/tlh.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -715,7 +715,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -728,7 +728,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1240,7 +1240,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1294,7 +1294,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1305,7 +1305,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1624,7 +1624,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/tr.po b/addons/mrp/i18n/tr.po index 21e0a1a9dfc..8d567981684 100644 --- a/addons/mrp/i18n/tr.po +++ b/addons/mrp/i18n/tr.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-06-27 18:38+0000\n" -"Last-Translator: Ayhan KIZILTAN <Unknown>\n" +"PO-Revision-Date: 2011-12-06 10:17+0000\n" +"Last-Translator: Fabien (Open ERP) <fp@tinyerp.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -754,7 +754,7 @@ msgid "Per month" msgstr "Ay başına" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -767,7 +767,7 @@ msgid "Product Name" msgstr "Stok Adı" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "Geçersiz eylem !" @@ -1311,7 +1311,7 @@ msgstr "Sistemin bitmiş ürünleri stokladığı lokasyon." #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "Bu, bitmiş ürünü üretim planına getiren dahili toplama listesidir" @@ -1367,7 +1367,7 @@ msgid "Month -1" msgstr "Ay -1" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "'%s' üretim emri %s için planlandı." @@ -1378,7 +1378,7 @@ msgid "Production Order N° :" msgstr "Üretim Emri N° :" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "'%s' üretim emri üretime hazırdır." @@ -1618,7 +1618,7 @@ msgid "Manufacturing Orders To Start" msgstr "Başlatılacak Üretim Emirleri" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "%s Durumundaki Üretim Emri/Emirleri silinemez!" @@ -1711,7 +1711,7 @@ msgid "Production Analysis" msgstr "Üretim Analizi" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "Kopyala" @@ -2229,7 +2229,7 @@ msgid "Product type is Stockable or Consumable." msgstr "Ürün tipi Stoklanabilir veya Sarf Edilebilir'dir." #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -2995,6 +2995,11 @@ msgstr "Yıl" #~ " " #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "Bu, bitmiş ürünü üretim planına getiren dahili toplama listesidir" + +#~ msgid "" #~ "Routing indicates all the workcenters used, for how long and/or cycles.If " #~ "Routing is indicated then,the third tab of a production order (workcenters) " #~ "will be automatically pre-completed." diff --git a/addons/mrp/i18n/uk.po b/addons/mrp/i18n/uk.po index 1d2995b8ad3..96133154ea3 100644 --- a/addons/mrp/i18n/uk.po +++ b/addons/mrp/i18n/uk.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -715,7 +715,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -728,7 +728,7 @@ msgid "Product Name" msgstr "Назва Продукту" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1240,7 +1240,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1294,7 +1294,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1305,7 +1305,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1624,7 +1624,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/vi.po b/addons/mrp/i18n/vi.po index 59662a9b576..bf8f8978a06 100644 --- a/addons/mrp/i18n/vi.po +++ b/addons/mrp/i18n/vi.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: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -721,7 +721,7 @@ msgid "Per month" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -734,7 +734,7 @@ msgid "Product Name" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1246,7 +1246,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1300,7 +1300,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1311,7 +1311,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1540,7 +1540,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1630,7 +1630,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2119,7 +2119,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/zh_CN.po b/addons/mrp/i18n/zh_CN.po index ebad1e0e44c..88629751eb7 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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-07-02 15:27+0000\n" +"PO-Revision-Date: 2011-12-06 10:16+0000\n" "Last-Translator: Wei \"oldrev\" Li <oldrev@gmail.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: 2011-11-05 04:55+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:52+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -716,7 +716,7 @@ msgid "Per month" msgstr "每月" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -729,7 +729,7 @@ msgid "Product Name" msgstr "产品名称" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "无效动作" @@ -1245,7 +1245,7 @@ msgstr "系统存储成品的库位" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "这是一张移库单的编号,是把产成品从生产线上移动到库房里" @@ -1299,7 +1299,7 @@ msgid "Month -1" msgstr "上个月" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "生产订单 '%s' 已创建,要生产的是 %s" @@ -1310,7 +1310,7 @@ msgid "Production Order N° :" msgstr "生产单号:" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "生产订单 '%s' 已可以开始生产" @@ -1543,7 +1543,7 @@ msgid "Manufacturing Orders To Start" msgstr "未开始的生产订单" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "不能删除状态是 %s 的生产订单" @@ -1633,7 +1633,7 @@ msgid "Production Analysis" msgstr "生产分析" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "副本" @@ -2132,7 +2132,7 @@ msgid "Product type is Stockable or Consumable." msgstr "产品类型是可库存或消耗品" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -3112,6 +3112,11 @@ msgstr "年" #~ msgstr "使用的工作中心" #~ msgid "" +#~ "This is the internal picking list that brings the finished product to the " +#~ "production plan" +#~ msgstr "这是一张移库单的编号,是把产成品从生产线上移动到库房里" + +#~ msgid "" #~ "\n" #~ " This is the base module to manage the manufacturing process in OpenERP.\n" #~ "\n" diff --git a/addons/mrp/i18n/zh_HK.po b/addons/mrp/i18n/zh_HK.po index 5c395b63b99..484e6c7318c 100644 --- a/addons/mrp/i18n/zh_HK.po +++ b/addons/mrp/i18n/zh_HK.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2010-11-27 13:27+0000\n" +"PO-Revision-Date: 2011-12-06 10:26+0000\n" "Last-Translator: qdp (OpenERP) <qdp-launchpad@tinyerp.com>\n" "Language-Team: Chinese (Hong Kong) <zh_HK@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 04:54+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:51+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -716,7 +716,7 @@ msgid "Per month" msgstr "每月" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -729,7 +729,7 @@ msgid "Product Name" msgstr "貨品名稱" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1241,7 +1241,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1295,7 +1295,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1306,7 +1306,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1535,7 +1535,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1625,7 +1625,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2114,7 +2114,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/i18n/zh_TW.po b/addons/mrp/i18n/zh_TW.po index 7afc22bac08..866cc587475 100644 --- a/addons/mrp/i18n/zh_TW.po +++ b/addons/mrp/i18n/zh_TW.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2010-11-27 13:27+0000\n" +"PO-Revision-Date: 2011-12-06 10:25+0000\n" "Last-Translator: qdp (OpenERP) <qdp-launchpad@tinyerp.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: 2011-11-05 04:55+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-07 04:52+0000\n" +"X-Generator: Launchpad (build 14435)\n" #. module: mrp #: field:mrp.production,move_created_ids:0 @@ -715,7 +715,7 @@ msgid "Per month" msgstr "每月" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format @@ -728,7 +728,7 @@ msgid "Product Name" msgstr "貨品名稱" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Invalid action !" msgstr "" @@ -1240,7 +1240,7 @@ msgstr "" #. module: mrp #: help:mrp.production,picking_id:0 msgid "" -"This is the internal picking list that brings the finished product to the " +"This is the Internal Picking List that brings the finished product to the " "production plan" msgstr "" @@ -1294,7 +1294,7 @@ msgid "Month -1" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:924 +#: code:addons/mrp/mrp.py:914 #, python-format msgid "Manufacturing order '%s' is scheduled for the %s." msgstr "" @@ -1305,7 +1305,7 @@ msgid "Production Order N° :" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:640 +#: code:addons/mrp/mrp.py:630 #, python-format msgid "Manufacturing order '%s' is ready to produce." msgstr "" @@ -1534,7 +1534,7 @@ msgid "Manufacturing Orders To Start" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:495 +#: code:addons/mrp/mrp.py:491 #, python-format msgid "Cannot delete Production Order(s) which are in %s State!" msgstr "" @@ -1624,7 +1624,7 @@ msgid "Production Analysis" msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:349 +#: code:addons/mrp/mrp.py:345 #, python-format msgid "Copy" msgstr "" @@ -2113,7 +2113,7 @@ msgid "Product type is Stockable or Consumable." msgstr "" #. module: mrp -#: code:addons/mrp/mrp.py:595 +#: code:addons/mrp/mrp.py:591 #: code:addons/mrp/wizard/change_production_qty.py:77 #: code:addons/mrp/wizard/change_production_qty.py:82 #, python-format diff --git a/addons/mrp/mrp.py b/addons/mrp/mrp.py index 356a762c0c5..dea664f6fd6 100644 --- a/addons/mrp/mrp.py +++ b/addons/mrp/mrp.py @@ -176,7 +176,7 @@ class mrp_bom(osv.osv): @param arg: User defined argument @return: Dictionary of values """ - res = dict(map(lambda x: (x,''), ids)) + res = dict.fromkeys(ids, False) for line in self.browse(cr, uid, ids, context=context): if line.type == 'phantom' and not line.bom_id: res[line.id] = 'set' @@ -467,7 +467,7 @@ class mrp_production(osv.osv): 'bom_id': fields.many2one('mrp.bom', 'Bill of Material', domain=[('bom_id','=',False)], readonly=True, states={'draft':[('readonly',False)]}), 'routing_id': fields.many2one('mrp.routing', string='Routing', on_delete='set null', readonly=True, states={'draft':[('readonly',False)]}, help="The list of operations (list of work centers) to produce the finished product. The routing is mainly used to compute work center costs during operations and to plan future loads on work centers based on production plannification."), 'picking_id': fields.many2one('stock.picking', 'Picking list', readonly=True, ondelete="restrict", - help="This is the internal picking list that brings the finished product to the production plan"), + help="This is the Internal Picking List that brings the finished product to the production plan"), 'move_prod_id': fields.many2one('stock.move', 'Move product', readonly=True), 'move_lines': fields.many2many('stock.move', 'mrp_production_move_ids', 'production_id', 'move_id', 'Products to Consume', domain=[('state','not in', ('done', 'cancel'))], states={'done':[('readonly',True)]}), 'move_lines2': fields.many2many('stock.move', 'mrp_production_move_ids', 'production_id', 'move_id', 'Consumed Products', domain=[('state','in', ('done', 'cancel'))]), diff --git a/addons/mrp/mrp_view.xml b/addons/mrp/mrp_view.xml index 67890b42134..dafe399b583 100644 --- a/addons/mrp/mrp_view.xml +++ b/addons/mrp/mrp_view.xml @@ -985,6 +985,7 @@ id="action_product_bom_structure" name="Product BoM Structure" domain="[('product_id', '=', active_id),('bom_id','=',False)]" + context="{'default_product_id': active_id}" view_type="tree" view_id="mrp_bom_tree_view" res_model="mrp.bom" diff --git a/addons/mrp/product.py b/addons/mrp/product.py index 9731d93f84b..c3f9ee855df 100644 --- a/addons/mrp/product.py +++ b/addons/mrp/product.py @@ -66,3 +66,5 @@ class product_product(osv.osv): product_product() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/mrp/report/mrp_production_order.py b/addons/mrp/report/mrp_production_order.py index 4bb525db1ff..d0ff7ba7970 100644 --- a/addons/mrp/report/mrp_production_order.py +++ b/addons/mrp/report/mrp_production_order.py @@ -20,3 +20,5 @@ ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/mrp/report/price.py b/addons/mrp/report/price.py index a12c580e378..c072b821196 100644 --- a/addons/mrp/report/price.py +++ b/addons/mrp/report/price.py @@ -219,3 +219,5 @@ class report_custom(report_rml): return xml report_custom('report.product.price', 'product.product', '', 'addons/mrp/report/price.xsl') + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/mrp_operations/__openerp__.py b/addons/mrp_operations/__openerp__.py index d965ca5160c..caa33cc6556 100644 --- a/addons/mrp_operations/__openerp__.py +++ b/addons/mrp_operations/__openerp__.py @@ -62,7 +62,8 @@ So that we can compare the theoretic delay and real delay. 'mrp_operations_view.xml', 'mrp_operations_report.xml', 'report/mrp_workorder_analysis_view.xml', - 'process/mrp_operation_process.xml' + 'process/mrp_operation_process.xml', + 'mrp_operations_workflow_instance.xml' ], 'demo_xml': ['mrp_operation_data.xml'], 'test': ['test/mrp_operations.yml', 'test/mrp_operations_report.yml','test/mrp_operation_test.yml'], diff --git a/addons/mrp_operations/mrp_operations.py b/addons/mrp_operations/mrp_operations.py index 7dc93731b03..e6f5aa00f28 100644 --- a/addons/mrp_operations/mrp_operations.py +++ b/addons/mrp_operations/mrp_operations.py @@ -86,10 +86,10 @@ class mrp_production_workcenter_line(osv.osv): _order = "sequence, date_planned" _columns = { - 'state': fields.selection([('draft','Draft'),('startworking', 'In Progress'),('pause','Pause'),('cancel','Cancelled'),('done','Finished')],'State', readonly=True, + 'state': fields.selection([('draft','Draft'),('startworking', 'In Progress'),('pause','Pending'),('cancel','Cancelled'),('done','Finished')],'State', readonly=True, help="* When a work order is created it is set in 'Draft' state.\n" \ "* When user sets work order in start mode that time it will be set in 'In Progress' state.\n" \ - "* When work order is in running mode, during that time if user wants to stop or to make changes in order then can set in 'Pause' state.\n" \ + "* When work order is in running mode, during that time if user wants to stop or to make changes in order then can set in 'Pending' state.\n" \ "* When the user cancels the work order it will be set in 'Canceled' state.\n" \ "* When order is completely processed that time it is set in 'Finished' state."), 'date_start_date': fields.function(_get_date_date, string='Start Date', type='date'), @@ -552,6 +552,13 @@ class mrp_operations_operation(osv.osv): return super(mrp_operations_operation, self).create(cr, uid, vals, context=context) + def initialize_workflow_instance(self, cr, uid, context=None): + wf_service = netsvc.LocalService("workflow") + line_ids = self.pool.get('mrp.production.workcenter.line').search(cr, uid, [], context=context) + for line_id in line_ids: + wf_service.trg_create(uid, 'mrp.production.workcenter.line', line_id, cr) + return True + _columns={ 'production_id':fields.many2one('mrp.production','Production',required=True), 'workcenter_id':fields.many2one('mrp.workcenter','Work Center',required=True), diff --git a/addons/mrp_operations/mrp_operations_view.xml b/addons/mrp_operations/mrp_operations_view.xml index 377a57d6121..e7decebbf4b 100644 --- a/addons/mrp_operations/mrp_operations_view.xml +++ b/addons/mrp_operations/mrp_operations_view.xml @@ -16,7 +16,7 @@ <button name="button_draft" string="Set Draft" states="cancel" icon="gtk-convert" help="Set to Draft"/> <button name="button_start_working" string="Start" states="draft" icon="terp-gtk-jump-to-ltr" help="Start Working"/> <button name="button_resume" string="Resume" states="pause" icon="gtk-media-pause" help="Resume Work Order"/> - <button name="button_pause" string="Pause" states="startworking" icon="gtk-media-pause" help="Pause Work Order"/> + <button name="button_pause" string="Pending" states="startworking" icon="gtk-media-pause" help="Pause Work Order"/> <button name="button_done" string="Finished" states="startworking" icon="terp-check" help="Finish Order"/> </group> </xpath> @@ -30,13 +30,12 @@ <field name="inherit_id" ref="mrp.mrp_production_form_view"/> <field name="arch" type="xml"> <xpath expr="/form/notebook/page/field[@name='workcenter_lines']/tree/field[@name='hour']" position="after"> - <button name="button_cancel" string="Cancel" states="draft,startworking" icon="gtk-stop"/> + <field name="state"/> <button name="button_draft" string="Set Draft" states="cancel" icon="gtk-convert"/> <button name="button_start_working" string="Start" states="draft" icon="terp-gtk-jump-to-ltr"/> <button name="button_resume" string="Resume" states="pause" icon="gtk-media-pause"/> - <button name="button_pause" string="Pause" states="startworking" icon="gtk-media-pause"/> + <button name="button_pause" string="Pending" states="startworking" icon="gtk-media-pause"/> <button name="button_done" string="Finished" states="startworking" icon="terp-check"/> - <field name="state"/> </xpath> </field> </record> @@ -58,11 +57,9 @@ <field name="cycle"/> <field name="hour"/> <field name="state" /> - <button name="button_draft" string="Set Draft" states="cancel" icon="gtk-convert" help="Set to Draft"/> <button name="button_start_working" string="Start" states="draft" icon="terp-gtk-jump-to-ltr" help="Start Working"/> <button name="button_resume" string="Resume" states="pause" icon="gtk-media-pause" help="Resume Work Order"/> - <button name="button_cancel" string="Cancel" states="draft,startworking" icon="gtk-stop" help="Cancel Order"/> - <button name="button_pause" string="Pause" states="startworking" icon="gtk-media-pause" help="Pause Work Order"/> + <button name="button_pause" string="Pending" states="startworking" icon="gtk-media-pause" help="Pause Work Order"/> <button name="button_done" string="Finished" states="startworking" icon="terp-check" help="Finish Order"/> </tree> </field> @@ -116,7 +113,7 @@ <button name="button_draft" string="Set Draft" states="cancel" icon="gtk-convert"/> <button name="button_start_working" string="Start" states="draft" icon="terp-gtk-jump-to-ltr"/> <button name="button_resume" string="Resume" states="pause" icon="gtk-media-pause"/> - <button name="button_pause" string="Pause" states="startworking" icon="gtk-media-pause"/> + <button name="button_pause" string="Pending" states="startworking" icon="gtk-media-pause"/> <button name="button_done" string="Finished" states="startworking" icon="terp-check"/> </group> </page> diff --git a/addons/mrp_operations/mrp_operations_workflow_instance.xml b/addons/mrp_operations/mrp_operations_workflow_instance.xml new file mode 100644 index 00000000000..b8239c18ccf --- /dev/null +++ b/addons/mrp_operations/mrp_operations_workflow_instance.xml @@ -0,0 +1,10 @@ +<?xml version="1.0"?> +<openerp> + <data noupdate="1"> + + <!-- Initialize workflow instance --> + <function model="mrp_operations.operation" name="initialize_workflow_instance"/> + + </data> +</openerp> + diff --git a/addons/mrp_repair/__openerp__.py b/addons/mrp_repair/__openerp__.py index a1f060cf7c3..cf141b61978 100644 --- a/addons/mrp_repair/__openerp__.py +++ b/addons/mrp_repair/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Repairs', + 'name': 'Repairs Management', 'version': '1.0', 'category': 'Manufacturing', 'description': """ @@ -51,6 +51,7 @@ The aim is to have a complete module to manage all products repairs. The followi 'demo_xml': [], 'test': ['test/test_mrp_repair.yml', 'test/mrp_repair_report.yml','test/mrp_repair_cancel.yml'], 'installable': True, + 'application': True, 'active': False, 'certificate': '0060814381277', } diff --git a/addons/mrp_repair/report/order.rml b/addons/mrp_repair/report/order.rml index b72f3d7a130..ecec220edbb 100644 --- a/addons/mrp_repair/report/order.rml +++ b/addons/mrp_repair/report/order.rml @@ -189,21 +189,13 @@ <td> <para style="P5">Shipping address :</para> <para style="P3">[[ o.partner_id.name ]]</para> - <para style="P3">[[ o.address_id.street ]]</para> - <para style="P3">[[ o.address_id.street2 or removeParentNode('para') ]]</para> - <para style="P3">[[ o.address_id.city or '' ]] [[ o.address_id.zip or '' ]]</para> - <para style="P3">[[ (o.address_id.state_id and o.address_id.state_id.name) or removeParentNode('para') ]] </para> - <para style="P3">[[ o.address_id.country_id and o.address_id.country_id.name or '' ]]</para> + <para style="P3">[[ o.address_id and display_address(o.address_id) ]] </para> <para style="P3"> <font color="white"> </font> </para> <para style="P13">Invoice address :</para> <para style="P3">[[ o.partner_id and o.partner_id.property_payment_term.name ]]</para> - <para style="P3">[[ o.partner_invoice_id.street ]]</para> - <para style="P3">[[ o.partner_invoice_id.street2 or removeParentNode('para') ]]</para> - <para style="P3">[[ o.partner_invoice_id.zip or '' ]] [[ o.partner_invoice_id.city or '' ]]</para> - <para style="P3">[[ (o.partner_invoice_id.state_id and o.partner_invoice_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="P3">[[ o.partner_invoice_id.country_id and o.partner_invoice_id.country_id.name or '' ]]</para> + <para style="P3">[[ o.partner_invoice_id and display_address(o.partner_invoice_id) ]] </para> </td> <td> <para style="P12"> @@ -212,11 +204,7 @@ </td> <td> <para style="P3">[[ o.partner_id.name or removeParentNode('para') ]]</para> - <para style="P3">[[ o.default_address_id and o.default_address_id.street or removeParentNode('para') ]]</para> - <para style="P3">[[ o.default_address_id and o.default_address_id.street2 or removeParentNode('para') ]]</para> - <para style="P3">[[ o.default_address_id and o.default_address_id.zip or removeParentNode('para') ]][[ o.default_address_id and o.default_address_id.city or removeParentNode('para') ]]</para> - <para style="P3">[[ o.default_address_id and o.default_address_id.state_id and o.default_address_id.state_id.name or removeParentNode('para') ]]</para> - <para style="P3">[[ o.default_address_id and o.default_address_id.country_id and o.default_address_id.country_id.name or removeParentNode('para') ]]</para> + <para style="P3">[[ o.default_address_id and display_address(o.default_address_id) ]] </para> <para style="P3"> <font color="white"> </font> </para> diff --git a/addons/multi_company/__openerp__.py b/addons/multi_company/__openerp__.py index 636ff1cac29..d82f0e1eb7c 100644 --- a/addons/multi_company/__openerp__.py +++ b/addons/multi_company/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Multi-Company', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "expert", 'description': """ This module is for managing a multicompany environment. diff --git a/addons/outlook/__init__.py b/addons/outlook/__init__.py index 0190f2f396f..7f5a7a9a9f1 100644 --- a/addons/outlook/__init__.py +++ b/addons/outlook/__init__.py @@ -20,3 +20,5 @@ ############################################################################## import installer + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/installer.py b/addons/outlook/installer.py index 2be0c243037..061c27da5e5 100644 --- a/addons/outlook/installer.py +++ b/addons/outlook/installer.py @@ -65,3 +65,5 @@ Please refer to the README file for dependencies (external link: openobject-addo """ } outlook_installer() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/addin.py b/addons/outlook/plugin/openerp-outlook-plugin/addin.py index 5872ed0291a..c720c5e417d 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/addin.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/addin.py @@ -297,3 +297,5 @@ if __name__ == '__main__': #mngr = manager.GetManager()
#mngr.ShowManager("IDD_MANAGER")
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/chilkat.py b/addons/outlook/plugin/openerp-outlook-plugin/chilkat.py index 1afd9f85fdd..3aa329807ef 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/chilkat.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/chilkat.py @@ -5605,3 +5605,5 @@ CkDirTree_swigregister(CkDirTree) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/__init__.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/__init__.py index 3b3d8973497..a19f2d59cff 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/__init__.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/__init__.py @@ -79,3 +79,5 @@ def MakePropertyPage(parent, manager, config, idd, yoffset=24): import dlgutils
SetWaitCursor = dlgutils.SetWaitCursor
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dialog_map.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dialog_map.py index 87138554e16..8576a3526ff 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dialog_map.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dialog_map.py @@ -1806,3 +1806,5 @@ dialog_map = { (CommandButtonProcessor, "IDPB_SELECT_STATE IDC_LIST_STATE IDD_SELECT_STATE" , SelectStateFromList,()),
),
}
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dlgcore.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dlgcore.py index efccf4f494e..bce802b5ed1 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dlgcore.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dlgcore.py @@ -321,3 +321,5 @@ class ProcessorPage(ProcessorDialog): self.template[0][2] = self.template[0][2] & ~(win32con.DS_MODALFRAME|win32con.WS_POPUP|win32con.WS_OVERLAPPED|win32con.WS_CAPTION)
self.template[0][2] = self.template[0][2] | win32con.WS_CHILD
return win32gui.CreateDialogIndirect(self.hinst, self.template, self.parent, message_map)
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dlgutils.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dlgutils.py index 8ffc4e62d22..bede3cd63c2 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dlgutils.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/dlgutils.py @@ -16,3 +16,5 @@ def SetWaitCursor(wait): else:
hCursor = win32gui.LoadCursor(0, 0)
win32gui.SetCursor(hCursor)
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/opt_processors.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/opt_processors.py index 7a4970491b0..0a129423e29 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/opt_processors.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/opt_processors.py @@ -316,3 +316,5 @@ class ProtocolComboProcessor(ComboProcessor): if sel == -1:
win32gui.SendMessage(combo, win32con.CB_SETCURSEL, 1, 0)
self.active_control_id = self.control_id
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/processors.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/processors.py index 0b427852c89..34af9e073a4 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/processors.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/processors.py @@ -143,3 +143,5 @@ class CommandButtonProcessor(ButtonProcessor): if doc is None:
return ""
return " ".join(doc.split())
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/__init__.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/__init__.py index abeff9ae69b..cf3e416c209 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/__init__.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/__init__.py @@ -28,3 +28,5 @@ def GetImageParamsFromBitmapID(rc_parser, bmpid): filename = os.path.join( os.path.dirname( __file__ ), filename)
return 0, filename, win32con.LR_LOADFROMFILE
assert 0, "not reached"
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/dialogs.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/dialogs.py index aa417b2cd59..e1e8bac21d7 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/dialogs.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/dialogs.py @@ -9,3 +9,5 @@ class FakeParser: bitmaps = {'IDB_OPENERPLOGO': 'OpenERP_Logo.bmp'}
def ParseDialogs(s):
return FakeParser()
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/rc2py.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/rc2py.py index d944fc2dd99..68d62fc7060 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/rc2py.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/rc2py.py @@ -37,3 +37,5 @@ if __name__=="__main__": convert(sys.argv[1], sys.argv[2])
else:
convert()
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/rcparser.py b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/rcparser.py index 0b05af3f0be..ed20f80e3d4 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/rcparser.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/dialogs/resources/rcparser.py @@ -375,3 +375,5 @@ if __name__=='__main__': print "Dialog %s (%d controls)" % (id, len(ddef))
pprint.pprint(ddef)
print
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/eml.py b/addons/outlook/plugin/openerp-outlook-plugin/eml.py index fe455c91117..47e66689c71 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/eml.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/eml.py @@ -90,4 +90,6 @@ def generateEML(mail): if (success == False):
print cemail.lastErrorText()
sys.exit()
- return new_mail, eml_path
\ No newline at end of file + return new_mail, eml_path + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/manager.py b/addons/outlook/plugin/openerp-outlook-plugin/manager.py index 0c7e0e640fe..643a5c40e58 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/manager.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/manager.py @@ -191,3 +191,5 @@ if __name__=='__main__': else:
usage()
sys.exit(main(verbose))
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/outlook/plugin/openerp-outlook-plugin/tiny_xmlrpc.py b/addons/outlook/plugin/openerp-outlook-plugin/tiny_xmlrpc.py index 41346fe7cf9..9cbcb14d40e 100644 --- a/addons/outlook/plugin/openerp-outlook-plugin/tiny_xmlrpc.py +++ b/addons/outlook/plugin/openerp-outlook-plugin/tiny_xmlrpc.py @@ -569,3 +569,5 @@ class XMLRpcConn(object): name = ustr(rec['name'])
res.append((obj,rec['id'],name,obj))
return res
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/pad/__init__.py b/addons/pad/__init__.py index 445f0f9dd9f..663cac2cbf0 100644 --- a/addons/pad/__init__.py +++ b/addons/pad/__init__.py @@ -1,3 +1,5 @@ # -*- coding: utf-8 -*- import res_company import ir_attachment + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/pad/__openerp__.py b/addons/pad/__openerp__.py index 1abf8f0ebfa..14ee68334a8 100644 --- a/addons/pad/__openerp__.py +++ b/addons/pad/__openerp__.py @@ -1,8 +1,8 @@ # -*- coding: utf-8 -*- { - 'name': 'Collaborative Note Pad', + 'name': 'Collaborative Pads', 'version': '2.0', - 'category': 'Hidden', + "category": "Project Management", 'complexity': "easy", 'description': """ Adds enhanced support for (Ether)Pad attachments in the web client. @@ -27,3 +27,5 @@ Lets the company customize which Pad installation should be used to link to new ], 'images': ['static/src/img/pad_link_companies.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/pad/ir_attachment.py b/addons/pad/ir_attachment.py index efcf1817289..ba8c88632dd 100644 --- a/addons/pad/ir_attachment.py +++ b/addons/pad/ir_attachment.py @@ -33,3 +33,5 @@ class ir_attachment(osv.osv): 'url' : url, }) return url + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/pad/res_company.py b/addons/pad/res_company.py index fe822e213c2..0c1dc7c4929 100644 --- a/addons/pad/res_company.py +++ b/addons/pad/res_company.py @@ -11,3 +11,5 @@ class company_pad(osv.osv): 'pad_url_template': 'http://ietherpad.com/%(db)s-%(model)s-%(id)d-%(salt)s-%(name)s' } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/pad/static/src/img/pad-icon.png b/addons/pad/static/src/img/pad-icon.png Binary files differdeleted file mode 100644 index ad64c5aea0e..00000000000 --- a/addons/pad/static/src/img/pad-icon.png +++ /dev/null diff --git a/addons/pad_project/__openerp__.py b/addons/pad_project/__openerp__.py index a9ec6282ab7..be7cb82af2e 100644 --- a/addons/pad_project/__openerp__.py +++ b/addons/pad_project/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Project PAD', + 'name': 'Project Specs as PADs', 'version': '1.0', - 'category': 'Hidden/Link', + "category": "Project Management", 'complexity': "easy", 'description': """ This module adds a PAD in all project kanban views diff --git a/addons/pad_project/models/project_task.xml b/addons/pad_project/models/project_task.xml index de944b603b5..3c734cf3b97 100644 --- a/addons/pad_project/models/project_task.xml +++ b/addons/pad_project/models/project_task.xml @@ -6,10 +6,8 @@ <field name="type">kanban</field> <field name="inherit_id" ref="project.view_task_kanban"/> <field name="arch" type="xml"> - <xpath expr="//a[@type='color']" position="after"> - <a name="pad_get" string="Pad" type="object"> - <img src="/pad/static/src/img/pad-icon.png" border="0" width="16" height="16"/> - </a> + <xpath expr="//span[@class='oe_kanban_project_times']" position="before"> + <a name="pad_get" string="Pad" type="object" class="oe_kanban_button" style="margin-left: 5px;"><b>PAD</b></a> </xpath> </field> </record> diff --git a/addons/crm_partner_assign/wizard/crm_merge_opportunity.py b/addons/plugin/__init__.py index 3993a5df066..1844c42011c 100644 --- a/addons/crm_partner_assign/wizard/crm_merge_opportunity.py +++ b/addons/plugin/__init__.py @@ -18,25 +18,8 @@ # along with this program. If not, see <http://www.gnu.org/licenses/>. # ############################################################################## -from osv import osv, fields -from tools.translate import _ +import plugin_handler -class crm_merge_opportunity_assign_partner(osv.osv_memory): - """Merge two Opportunities""" +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: - _inherit = 'crm.merge.opportunity' - - def _update_data(self, op_ids, oldest_opp): - data = super(crm_merge_opportunity_assign_partner, self)._update_data(op_ids, oldest_opp) - - new_data = { - 'partner_latitude': self._get_first_not_null('partner_latitude', op_ids, oldest_opp), - 'partner_longitude': self._get_first_not_null('partner_longitude', op_ids, oldest_opp), - 'partner_assigned_id': self._get_first_not_null_id('partner_assigned_id', op_ids, oldest_opp), - 'date_assign' : self._get_first_not_null('date_assign', op_ids, oldest_opp), - } - data.update(new_data) - return data - -crm_merge_opportunity_assign_partner() diff --git a/addons/plugin/__openerp__.py b/addons/plugin/__openerp__.py new file mode 100644 index 00000000000..2b05305c5ce --- /dev/null +++ b/addons/plugin/__openerp__.py @@ -0,0 +1,45 @@ +# -*- coding: utf-8 -*- +############################################################################## +# +# OpenERP, Open Source Management Solution +# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>). +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as +# published by the Free Software Foundation, either version 3 of the +# License, or (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. +# +############################################################################## + + +{ + 'name': 'CRM Plugins', + 'version': '1.0', + 'category': 'Tools', + 'complexity': "easy", + 'description': """ +The common interface for pugin. +===================================================== + +""", + 'author': 'OpenERP SA', + 'website': 'http://www.openerp.com', + 'depends': [ + 'base', + ], + 'data': [], + 'demo': [], + 'test': [], + 'installable': True, + 'active': False, + 'images': [], +} +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/plugin/plugin_handler.py b/addons/plugin/plugin_handler.py new file mode 100644 index 00000000000..c4859771e35 --- /dev/null +++ b/addons/plugin/plugin_handler.py @@ -0,0 +1,153 @@ +''' +Created on 18 oct. 2011 + +@author: openerp +''' + +from osv import osv, fields + + +class plugin_handler(osv.osv_memory): + _name = 'plugin.handler' + + def _make_url(self, cr, uid, res_id, model, context=None): + """ + @param id: on which document the message is pushed + @param model: name of the document linked with the mail + @return url + """ + base_url = self.pool.get('ir.config_parameter').get_param(cr, uid, 'web.base.url', default='http://localhost:8069', context=context) + if base_url: + base_url += '/?id=%s&model=%s'%(res_id,model) + return base_url + + def is_installed(self, cr, uid): + return True + + def partner_get(self, cr, uid, address_email): + ids = self.pool.get('res.partner.address').search(cr, uid, [('partner_id', '!=', False), ('email', 'like', address_email)]) + res_id = ids and self.pool.get('res.partner.address').browse(cr, uid, ids[0]).partner_id.id or 0 + url = self._make_url(cr, uid, res_id, 'res.partner') + return ('res.partner', res_id , url) + + def document_get(self, cr, uid, email): + """ + @param email: email is a standard RFC2822 email message + @return Dictionary which contain id and the model name of the document linked with the mail + if no document is found the id = 0 + (model_name, res_id, name_get, url) + """ + mail_message_obj = self.pool.get('mail.message') + model = False + res_id = 0 + url = False + name = "" + + msg = mail_message_obj.parse_message(email) + references = [msg.get('message-id')] + refs = msg.get('references',False) + if refs: + references.extend(refs.split()) + + msg_ids = mail_message_obj.search(cr, uid, [('message_id','in',references)]) + if msg_ids: + msg = mail_message_obj.browse(cr, uid, msg_ids[0]) + res_id = msg.res_id + model = msg.model + url = self._make_url(cr, uid, res_id, model) + name = self.pool.get(model).name_get(cr, uid, res_id)[1] + return (model, res_id, url, name) + + def document_type(self, cr, uid, context=None): + """ + Return the list of available model to push + res.partner is a special case + otherwise all model that inherit from mail.thread + ['res.partner', 'project.issue'] + """ + mail_thread_obj = self.pool.get('mail.thread') + doc_dict = mail_thread_obj.message_capable_models(cr, uid, context) + doc_dict['res.partner'] = "Partner" + return doc_dict.items() + + # Can be used where search record was used + def list_document_get(self, cr, uid, model, name): + """ + This function return the result of name_search on the object model + @param model: the name of the model + @param : the name of the document + @return : the result of name_search a list of tuple + [(id, 'name')] + """ + return self.pool.get(model).name_search(cr,uid,name) + + def push_message(self, cr, uid, model, email, res_id=0): + """ + @param email: email is a standard RFC2822 email message + @param model: On which model the message is pushed + @param thread_id: on which document the message is pushed, if thread_id = 0 a new document is created + @return Dictionary which contain model , url and resource id. + """ + mail_message = self.pool.get('mail.message') + model_obj = self.pool.get(model) + + msg = mail_message.parse_message(email) + message_id = msg.get('message-id') + + + mail_ids = mail_message.search(cr, uid, [('message_id','=',message_id),('res_id','=',res_id),('model','=',model)]) + if message_id and mail_ids : + mail_record = mail_message.browse(cr, uid, mail_ids)[0] + res_id = mail_record.res_id + notify = "Email already pushed" + elif res_id == 0: + if model == 'res.partner': + notify = 'User the button Partner to create a new partner' + else: + res_id = model_obj.message_new(cr, uid, msg) + notify = "Mail succefully pushed, a new %s has been created " % model + else: + model_obj.message_append_dict(cr, uid, [res_id], msg) + notify = "Mail succefully pushed" + url = self._make_url(cr, uid, res_id, model) + return (model, res_id, url, notify) + + def contact_create(self, cr, uid, data, partner_id): + """ + @param data : the data use to create the res.partner.address + [('field_name', value)], field name is required + @param partner_id : On which partner the address is attached + if partner_id = 0 then create a new partner with the same name that the address + @return : the partner_id sended or created, this allow the plugin to open the right partner page + """ + partner_obj = self.pool.get('res.partner') + dictcreate = dict(data) + if partner_id == 0: + partner_id = partner_obj.create(cr, uid, {'name':dictcreate.get('name')}) + dictcreate['partner_id'] = partner_id + self.pool.get('res.partner.address').create(cr, uid, dictcreate) + url = self._make_url(cr, uid, partner_id, 'res.partner') + return ('res.partner', partner_id, url) + + # Specific to outlook rfc822 is not available so we split in arguments headerd,body,attachemnts + def push_message_outlook(self, cr, uid, model, headers, body_text, body_html, attachments): + pass + # ---------------------------------------- + # solution 1 + # construct a fake rfc822 from the separated arguement + #m = email.asdfsadf + # use the push_message method + #self.push_message(m) + # ---------------------------------------- + # solution 2 + # use self.pushmessage only with header and body + # add attachemnt yourself after + + #ir_attachment_obj = self.pool.get('ir.attachment') + #attachment_ids = ir_attachment_obj.search(cr, uid, [('res_model', '=', data.get('res_model')), ('res_id', '=', data.get('res_id')), ('datas_fname', '=', data.get('datas_fname'))]) + #if attachment_ids: + # return attachment_ids[0] + #else: + # vals = {"res_model": data.get('res_model'), "res_id": data.get('res_id'), "name": data.get('name'), "datas" : data.get('datas'), "datas_fname" : data.get('datas_fname')} + # return ir_attachment_obj.create(cr, uid, vals) + #return (model, res_id, url, notify) diff --git a/addons/point_of_sale/__openerp__.py b/addons/point_of_sale/__openerp__.py index 4daeabb9129..62df15f5954 100644 --- a/addons/point_of_sale/__openerp__.py +++ b/addons/point_of_sale/__openerp__.py @@ -79,6 +79,7 @@ Main features : 'test/point_of_sale_report.yml' ], 'installable': True, + 'application': True, 'certificate' : '001156338024966477869', # Web client 'js': ['static/lib/backbone/backbone-0.5.3.js', 'static/src/js/pos.js'], diff --git a/addons/point_of_sale/point_of_sale.py b/addons/point_of_sale/point_of_sale.py index bccb8d7fb1f..1afa10b1be3 100644 --- a/addons/point_of_sale/point_of_sale.py +++ b/addons/point_of_sale/point_of_sale.py @@ -122,10 +122,10 @@ class pos_order(osv.osv): 'partner_id': fields.many2one('res.partner', 'Customer', change_default=True, select=1, states={'draft': [('readonly', False)], 'paid': [('readonly', False)]}), 'state': fields.selection([('draft', 'New'), - ('paid', 'Done'), + ('cancel', 'Cancelled'), + ('paid', 'Paid'), ('done', 'Posted'), - ('invoiced', 'Invoiced'), - ('cancel', 'Cancelled')], + ('invoiced', 'Invoiced')], 'State', readonly=True), 'invoice_id': fields.many2one('account.invoice', 'Invoice'), @@ -691,10 +691,14 @@ pos_category() class product_product(osv.osv): _inherit = 'product.product' _columns = { - 'income_pdt': fields.boolean('Product for Input'), - 'expense_pdt': fields.boolean('Product for Output'), - 'img': fields.binary('Pos Image, must be 50x50'), - 'pos_categ_id': fields.many2one('pos.category','POS Category', change_default=True, domain="[('type','=','normal')]" ,help="Select a pos category for the current product") + 'income_pdt': fields.boolean('PoS Cash Input', help="This is a product you can use to put cash into a statement for the point of sale backend."), + 'expense_pdt': fields.boolean('PoS Cash Output', help="This is a product you can use to take cash from a statement for the point of sale backend, exemple: money lost, transfer to bank, etc."), + 'img': fields.binary('Product Image, must be 50x50', help="Use an image size of 50x50."), + 'pos_categ_id': fields.many2one('pos.category','PoS Category', + domain="[('type','=','normal')]", + help="If you want to sell this product through the point of sale, select the category it belongs to.") } product_product() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/point_of_sale/point_of_sale_demo.xml b/addons/point_of_sale/point_of_sale_demo.xml index 5e9c00ace54..95270721b8e 100644 --- a/addons/point_of_sale/point_of_sale_demo.xml +++ b/addons/point_of_sale/point_of_sale_demo.xml @@ -66,7 +66,6 @@ </record> <record id="pos_order_pos11" model="pos.order"> <field name="sale_journal" ref="account.sales_journal"/> - <field eval="0" name="journal_entry"/> <field name="shop_id" ref="sale.shop"/> <field name="date_order" eval="time.strftime('%Y-%m-%d %H:%M:%S')"/> <field name="partner_id" ref="base.res_partner_agrolait"/> @@ -76,7 +75,6 @@ <field name="state">paid</field> <field name="pricelist_id" ref="product.list0"/> <field name="name">POS/019</field> - <field name="price_type">tax_excluded</field> <field model="account.invoice" name="invoice_id" search="[('name', '=', u'Invoice from POS: POS/019')]"/> <field model="stock.picking" name="picking_id" search="[('name', '=', u'OUT/00019')]"/> </record> @@ -106,7 +104,6 @@ <record id="stock_picking_out0" model="stock.picking"> <field name="origin">POS/019</field> - <field model="pos.order" name="pos_order" search="[('name', '=', u'POS/019')]"/> <field name="date_done" eval="time.strftime('%Y-%m-%d %H:%M:%S')"/> <field eval="1" name="auto_picking"/> <field name="move_type">direct</field> @@ -137,7 +134,6 @@ <field name="name">Stock move (POS 12)</field> <field eval="[(6,0,[])]" name="move_history_ids2"/> <field name="product_id" ref="product.product_product_pc1"/> - <field name="date_planned" eval="time.strftime('%Y-%m-%d %H:%M:%S')"/> <field name="location_dest_id" ref="stock.stock_location_customers"/> <field model="stock.picking" name="picking_id" search="[('name', '=', u'OUT/00019')]"/> </record> @@ -157,7 +153,6 @@ <field model="sale.shop" name="shop_id" search="[]"/> <field name="user_id" ref="base.user_root"/> <field model="res.partner" name="partner_id" search="[]"/> - <field name="price_type">tax_excluded</field> <field model="product.pricelist" name="pricelist_id" search="[]"/> </record> @@ -165,7 +160,6 @@ <field model="sale.shop" name="shop_id" search="[]"/> <field name="user_id" ref="base.user_root"/> <field model="res.partner" name="partner_id" search="[]"/> - <field name="price_type">tax_excluded</field> <field model="product.pricelist" name="pricelist_id" search="[]"/> </record> @@ -173,11 +167,9 @@ <record id="line1_pos" model="pos.order.line"> <field name="order_id" ref="order_pos1"/> - <field name="date_planned" eval="time.strftime('%Y-%m-%d')"/> <field name="name">[PC3] Medium PC</field> <field name="product_id" ref="product.product_product_pc3"/> <field model="res.company" name="company_id" search="[]"/> - <field model="product.uom" name="product_uom" search="[]"/> <field name="price_unit">450</field> <field name="qty">2</field> <field name="notice">No Discount</field> @@ -185,11 +177,9 @@ <record id="line12_pos" model="pos.order.line"> <field name="order_id" ref="order_pos1"/> - <field name="date_planned" eval="time.strftime('%Y-%m-%d')"/> <field name="name">[PC2] Basic+ PC (assembly on order)</field> <field name="product_id" ref="product.product_product_pc2"/> <field model="res.company" name="company_id" search="[]"/> - <field model="product.uom" name="product_uom" search="[]"/> <field name="price_unit">450</field> <field name="qty">2</field> <field name="notice">No Discount</field> @@ -197,11 +187,9 @@ <record id="line2_pos" model="pos.order.line"> <field name="order_id" ref="order_pos2"/> - <field name="date_planned" eval="time.strftime('%Y-%m-%d')"/> <field name="name">[PC1] Basic PC</field> <field name="product_id" ref="product.product_product_pc1"/> <field model="res.company" name="company_id" search="[]"/> - <field model="product.uom" name="product_uom" search="[]"/> <field name="price_unit">450</field> <field name="qty">5</field> <field name="discount">0.10</field> diff --git a/addons/point_of_sale/point_of_sale_view.xml b/addons/point_of_sale/point_of_sale_view.xml index 7a2dba6f1ea..b69305c1a30 100644 --- a/addons/point_of_sale/point_of_sale_view.xml +++ b/addons/point_of_sale/point_of_sale_view.xml @@ -1,9 +1,9 @@ <?xml version="1.0"?> <openerp> <data> - <menuitem name="Point of Sale" id="menu_point_root" sequence="21" + <menuitem name="PoS Backend" id="menu_point_root" sequence="21" icon="terp-partner" - groups="group_pos_manager,group_pos_user" + groups="group_pos_manager" web_icon="images/pos.png" web_icon_hover="images/pos-hover.png"/> @@ -12,11 +12,11 @@ <field name="model">pos.order</field> <field name="type">form</field> <field name="arch" type="xml"> - <form string="Sales Order POS"> + <form string="PoS Orders"> <group col="7" colspan="4"> <field name="name"/> <field name="date_order"/> - <field name="partner_id" on_change="onchange_partner_id(partner_id)" groups="base.group_extended"/> + <field name="partner_id" on_change="onchange_partner_id(partner_id)"/> <button name="invoice" string="Invoice" icon="gtk-apply" type="workflow" states="paid" attrs="{'invisible': ['|',('partner_id','=',False),('state','<>','paid')]}"/> </group> <notebook colspan="4"> @@ -49,7 +49,7 @@ <separator colspan="4"/> <group colspan="4" col="8"> - <field name="state" /> + <field name="state" widget="statusbar" statusbar_visible="draft,paid,done" statusbar_colors='{"cancel":"red"}'/> <button name="%(action_pos_payment)d" string="Payment" icon="gtk-apply" type="action" states="draft"/> <button name="refund" string="Return Products" type="object" icon="gtk-ok" attrs="{'invisible':[('state','=','draft')]}"/> @@ -59,9 +59,9 @@ <page string="Payment"> <field name="statement_ids" colspan="4" nolabel="1"> <tree editable="bottom" string="Statement lines"> - <field name="amount"/> <field name="journal_id"/> <field name="statement_id" /> + <field name="amount"/> </tree> <form string="Statement lines"> <field name="account_id"/> @@ -99,11 +99,12 @@ </field> </record> <record model="ir.actions.act_window" id="action_pos_pos_form"> - <field name="name">Point of Sale</field> + <field name="name">PoS Orders</field> <field name="type">ir.actions.act_window</field> <field name="res_model">pos.order</field> <field name="view_type">form</field> - <field name="view_id" ref="view_pos_pos_form"/> + <field name="view_mode">tree,form</field> + <field name="view_id" eval="False"/> <field name="domain">[]</field> </record> <record model="ir.ui.view" id="view_pos_order_tree"> @@ -154,10 +155,10 @@ </record> <menuitem name="Daily Operations" id="menu_point_of_sale" parent="menu_point_root" sequence="10" /> - <menuitem name="New Sale Order" parent="menu_point_of_sale" id="menu_point_ofsale" action="action_pos_pos_form" sequence="1" groups="group_pos_manager,group_pos_user"/> + <menuitem parent="menu_point_of_sale" id="menu_point_ofsale" action="action_pos_pos_form" sequence="1" groups="group_pos_manager,group_pos_user"/> <menuitem name="Products" id="menu_point_of_sale_product" parent="menu_point_root" sequence="15" /> - <menuitem action="product.product_normal_action" id="menu_pos_products" parent="menu_point_of_sale_product" sequence="2" name="Products"/> + <menuitem action="product.product_normal_action" id="menu_pos_products" parent="menu_point_of_sale_product" sequence="2"/> <record model="ir.ui.view" id="view_pos_order_line"> <field name="name">Sale lines</field> @@ -580,6 +581,19 @@ <field name="domain">[('date_order','like',time.strftime('%Y-%m'))]</field> </record> + <record id="product_normal_form_pos_view" model="ir.ui.view"> + <field name="name">product.normal.pos.form.inherit</field> + <field name="model">product.product</field> + <field name="type">form</field> + <field name="inherit_id" ref="product.product_normal_form_view"/> + <field name="arch" type="xml"> + <field name="categ_id" position="after"> + <field name="pos_categ_id"/> + </field> + </field> + </record> + + <record id="product_normal_form_view" model="ir.ui.view"> <field name="name">product.normal.form.inherit</field> <field name="model">product.product</field> @@ -599,68 +613,24 @@ <field name="name">pos.category.tree</field> <field name="model">pos.category</field> <field name="type">tree</field> - <field name="field_parent">child_id</field> + <field name="field_parent" eval="False"/> <field name="arch" type="xml"> - <tree toolbar="True" string="Product Pos Categories"> + <tree string="PoS Categories"> <field name="name"/> </tree> </field> </record> <record id="pos_category_action" model="ir.actions.act_window"> - <field name="name">Products by POS-Category</field> + <field name="name">PoS Categories</field> <field name="type">ir.actions.act_window</field> <field name="res_model">pos.category</field> - <field name="domain">[('parent_id','=',False)]</field> - <field name="view_type">tree</field> - <field name="view_id" ref="pos_category_tree_view"/> - <field name="help">Here is a list of all your products classified by POS category. You can click a category to get the list of all products linked to this category or to a child of this category.</field> + <field name="view_type">form</field> + <field name="view_mode">tree,form</field> + <field name="view_id" eval="False"/> </record> <menuitem action="pos_category_action" id="menu_pos_category" parent="menu_point_of_sale_product" sequence="0" /> <!-- END --> - <record id="product_input_output_form_view" model="ir.ui.view"> - <field name="name">product.normal.form.inherit</field> - <field name="model">product.product</field> - <field name="type">form</field> - <field name="arch" type="xml"> - <form string="Product"> - <group colspan="4" col="6"> - <group colspan="4" col="2"> - <separator string="Product Description" colspan="4"/> - <field name="name" /> - <field groups="base.group_extended" name="variants" /> - </group> - <group colspan="1" col="2"> - <separator string="Codes" colspan="2"/> - <field name="default_code"/> - <field groups="base.group_extended" name="ean13"/> - </group> - </group> - <notebook colspan="4"> - <page string="Information"> - <group colspan="2" col="2" name="Type"> - <separator string="Product Type" colspan="2"/> - <field name="categ_id"/> - <field name="property_account_income" string="Account" required="1"/> - <field name="type"/> - </group> - <group colspan="2" col="2" name="Miscelleanous"> - <separator string="Miscelleanous" colspan="2"/> - <field name="income_pdt"/> - <field name="expense_pdt"/> - <field name="company_id" groups="base.group_extended,base.group_multi_company"/> - </group> - <group colspan="2" col="2" name="Prices"> - <separator string="Prices" colspan="2"/> - <field name="lst_price"/> - <field name="standard_price"/> - </group> - </page> - </notebook> - </form> - </field> - </record> - <menuitem name="Configuration" parent="menu_point_root" id="menu_point_config_product" sequence="25" groups="group_pos_manager"/> @@ -671,18 +641,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="domain">[('expense_pdt','=',True)]</field> - </record> - <record model="ir.actions.act_window.view" id="action_product_input_tree_tag"> - <field name="sequence" eval="1"/> - <field name="view_mode">tree</field> - <field name="view_id" ref="product.product_product_tree_view"/> - <field name="act_window_id" ref="action_product_input"/> - </record> - <record model="ir.actions.act_window.view" id="action_product_input_form_tag"> - <field name="sequence" eval="2"/> - <field name="view_mode">form</field> - <field name="view_id" ref="product_input_output_form_view"/> - <field name="act_window_id" ref="action_product_input"/> + <field name="context">{'default_expense_pdt': True}</field> </record> <menuitem parent="menu_point_config_product" @@ -697,18 +656,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="domain">[('income_pdt','=',True)]</field> - </record> - <record model="ir.actions.act_window.view" id="action_product_output_tree_tag"> - <field name="sequence" eval="1"/> - <field name="view_mode">tree</field> - <field name="view_id" ref="product.product_product_tree_view"/> - <field name="act_window_id" ref="action_product_output"/> - </record> - <record model="ir.actions.act_window.view" id="action_product_output_form_tag"> - <field name="sequence" eval="2"/> - <field name="view_mode">form</field> - <field name="view_id" ref="product_input_output_form_view"/> - <field name="act_window_id" ref="action_product_output"/> + <field name="context">{'default_income_pdt': True}</field> </record> <menuitem parent="menu_point_config_product" @@ -731,7 +679,7 @@ <field name="res_model">account.journal</field> <field name="view_type">form</field> <field name="view_mode">tree,form</field> - <field name="context">{'default_journal_user': 1}</field> + <field name="context" eval="{'default_journal_user': 1, 'default_view_id': ref('account.account_journal_bank_view'), 'default_type': 'cash'}"/> <field name="domain">[('journal_user','=', 1)]</field> <field name="help">Payment methods are defined by accounting journals having the field Payment Method checked.</field> </record> @@ -796,11 +744,15 @@ <field name="tag">pos.ui</field> </record> - <record id="menu_pos_pos" model="ir.ui.menu"> - <field name="name">Start Point of Sale</field> - <field name="sequence" eval="5"/> - <field name="parent_id" ref="menu_point_root"/> + <record id="menu_point_root_touchscreen" model="ir.ui.menu"> + <field name="name">Point of Sale</field> + <field name="sequence" eval="20"/> <field name="action" ref="action_pos_pos"/> </record> + + <!-- use menuitem to add web_icon and web_icon_hover above --> + <menuitem id="menu_point_root_touchscreen" + web_icon="images/pos.png" web_icon_hover="images/pos-hover.png"/> + </data> </openerp> diff --git a/addons/point_of_sale/security/ir.model.access.csv b/addons/point_of_sale/security/ir.model.access.csv index db62c9c8361..7642563ba57 100644 --- a/addons/point_of_sale/security/ir.model.access.csv +++ b/addons/point_of_sale/security/ir.model.access.csv @@ -65,7 +65,9 @@ "access_account_sequence_fiscalyear_manager","account.sequence.fiscalyear manager","account.model_account_sequence_fiscalyear","group_pos_manager",1,0,0,0 "access_stock_warehouse_manager","stock.warehouse manager","stock.model_stock_warehouse","group_pos_manager",1,0,0,0 "access_stock_location_manager","stock.location manager","stock.model_stock_location","group_pos_manager",1,0,0,0 -"access_product_uom_manager","product.uom manager","product.model_product_uom","group_pos_manager",1,0,0,0 +"access_product_uom_manager","product.uom manager","product.model_product_uom","group_pos_manager",1,1,1,1 "access_res_partner_manager","res.partner manager","base.model_res_partner","group_pos_manager",1,0,0,0 -"access_product_category_manager","product.category manager","product.model_product_category","group_pos_manager",1,0,0,0 +"access_product_category_manager","product.category manager","product.model_product_category","group_pos_manager",1,1,1,1 "access_product_pricelist_manager","product.pricelist manager","product.model_product_pricelist","group_pos_manager",1,0,0,0 +"access_product_category_pos_manager","pos.category manager","model_pos_category","group_pos_manager",1,1,1,1" +"access_product_category_pos_user","pos.category user","model_pos_category","group_pos_user",1,0,0,0" diff --git a/addons/point_of_sale/static/src/js/pos.js b/addons/point_of_sale/static/src/js/pos.js index d1611cd87d8..05adcaf458a 100644 --- a/addons/point_of_sale/static/src/js/pos.js +++ b/addons/point_of_sale/static/src/js/pos.js @@ -1,14 +1,9 @@ openerp.point_of_sale = function(db) { + db.point_of_sale = {}; - /* Some utility functions defined by Coffee script */ - var __bind = function(fn, me) { - return function() { - return fn.apply(me, arguments); - }; - }; - var __hasProp = Object.prototype.hasOwnProperty; var __extends = function(child, parent) { + var __hasProp = Object.prototype.hasOwnProperty; for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; @@ -22,15 +17,6 @@ openerp.point_of_sale = function(db) { child.__super__ = parent.prototype; return child; }; - var __indexOf = Array.prototype.indexOf || - function(item) { - for (var i = 0, l = this.length; i < l; i++) { - if (this[i] === item) - return i; - } - return -1; - }; - /* end */ var QWeb = db.web.qweb; QWeb.add_template("/point_of_sale/static/src/xml/pos.xml"); @@ -65,7 +51,7 @@ openerp.point_of_sale = function(db) { */ var Pos = (function() { function Pos(session) { - this.build_tree = __bind(this.build_tree, this); + this.build_tree = _.bind(this.build_tree, this); this.session = session; $.when(this.fetch('pos.category', ['name', 'parent_id', 'child_id']), this.fetch('product.product', ['name', 'list_price', 'pos_categ_id', 'taxes_id', 'img'], [['pos_categ_id', '!=', 'false']]), @@ -162,18 +148,12 @@ openerp.point_of_sale = function(db) { /* global variable */ var pos; - var App, CashRegister, CashRegisterCollection, Category, CategoryCollection, CategoryWidget, - NumpadState, NumpadWidget, Order, OrderButtonView, OrderCollection, OrderWidget, Orderline, - OrderlineCollection, OrderlineWidget, PaymentButtonWidget, PaymentWidget, Paymentline, - PaymentlineCollection, PaymentlineWidget, PaypadWidget, Product, ProductCollection, - ProductListWidget, ProductWidget, ReceiptLineWidget, ReceiptWidget, Shop, ShopView, StepsWidget; - /* --- Models --- */ - CashRegister = (function() { + var CashRegister = (function() { __extends(CashRegister, Backbone.Model); function CashRegister() { CashRegister.__super__.constructor.apply(this, arguments); @@ -181,7 +161,7 @@ openerp.point_of_sale = function(db) { return CashRegister; })(); - CashRegisterCollection = (function() { + var CashRegisterCollection = (function() { __extends(CashRegisterCollection, Backbone.Collection); function CashRegisterCollection() { CashRegisterCollection.__super__.constructor.apply(this, arguments); @@ -190,7 +170,7 @@ openerp.point_of_sale = function(db) { CashRegisterCollection.prototype.model = CashRegister; return CashRegisterCollection; })(); - Product = (function() { + var Product = (function() { __extends(Product, Backbone.Model); function Product() { Product.__super__.constructor.apply(this, arguments); @@ -198,7 +178,7 @@ openerp.point_of_sale = function(db) { return Product; })(); - ProductCollection = (function() { + var ProductCollection = (function() { __extends(ProductCollection, Backbone.Collection); function ProductCollection() { ProductCollection.__super__.constructor.apply(this, arguments); @@ -207,7 +187,7 @@ openerp.point_of_sale = function(db) { ProductCollection.prototype.model = Product; return ProductCollection; })(); - Category = (function() { + var Category = (function() { __extends(Category, Backbone.Model); function Category() { Category.__super__.constructor.apply(this, arguments); @@ -215,7 +195,7 @@ openerp.point_of_sale = function(db) { return Category; })(); - CategoryCollection = (function() { + var CategoryCollection = (function() { __extends(CategoryCollection, Backbone.Collection); function CategoryCollection() { CategoryCollection.__super__.constructor.apply(this, arguments); @@ -230,7 +210,7 @@ openerp.point_of_sale = function(db) { To add more of the same product, just update the quantity accordingly. The Order also contains payment information. */ - Orderline = (function() { + var Orderline = (function() { __extends(Orderline, Backbone.Model); function Orderline() { Orderline.__super__.constructor.apply(this, arguments); @@ -261,7 +241,7 @@ openerp.point_of_sale = function(db) { }; return Orderline; })(); - OrderlineCollection = (function() { + var OrderlineCollection = (function() { __extends(OrderlineCollection, Backbone.Collection); function OrderlineCollection() { OrderlineCollection.__super__.constructor.apply(this, arguments); @@ -273,7 +253,7 @@ openerp.point_of_sale = function(db) { /* Every PaymentLine has all the attributes of the corresponding CashRegister. */ - Paymentline = (function() { + var Paymentline = (function() { __extends(Paymentline, Backbone.Model); function Paymentline() { Paymentline.__super__.constructor.apply(this, arguments); @@ -298,7 +278,7 @@ openerp.point_of_sale = function(db) { }; return Paymentline; })(); - PaymentlineCollection = (function() { + var PaymentlineCollection = (function() { __extends(PaymentlineCollection, Backbone.Collection); function PaymentlineCollection() { PaymentlineCollection.__super__.constructor.apply(this, arguments); @@ -307,14 +287,15 @@ openerp.point_of_sale = function(db) { PaymentlineCollection.prototype.model = Paymentline; return PaymentlineCollection; })(); - Order = (function() { + var Order = (function() { __extends(Order, Backbone.Model); function Order() { Order.__super__.constructor.apply(this, arguments); } Order.prototype.defaults = { - validated: false + validated: false, + step: 'products', }; Order.prototype.initialize = function() { this.set({ @@ -333,8 +314,7 @@ openerp.point_of_sale = function(db) { }; Order.prototype.validatedChanged = function() { if (this.get("validated") && !this.previous("validated")) { - $('.step-screen').hide(); - $('#receipt-screen').show(); + this.set({'step': 'receipt'}); } } Order.prototype.generateUniqueId = function() { @@ -386,11 +366,11 @@ openerp.point_of_sale = function(db) { Order.prototype.exportAsJSON = function() { var orderLines, paymentLines, result; orderLines = []; - (this.get('orderLines')).each(__bind( function(item) { + (this.get('orderLines')).each(_.bind( function(item) { return orderLines.push([0, 0, item.exportAsJSON()]); }, this)); paymentLines = []; - (this.get('paymentLines')).each(__bind( function(item) { + (this.get('paymentLines')).each(_.bind( function(item) { return paymentLines.push([0, 0, item.exportAsJSON()]); }, this)); result = { @@ -406,7 +386,7 @@ openerp.point_of_sale = function(db) { }; return Order; })(); - OrderCollection = (function() { + var OrderCollection = (function() { __extends(OrderCollection, Backbone.Collection); function OrderCollection() { OrderCollection.__super__.constructor.apply(this, arguments); @@ -415,7 +395,7 @@ openerp.point_of_sale = function(db) { OrderCollection.prototype.model = Order; return OrderCollection; })(); - Shop = (function() { + var Shop = (function() { __extends(Shop, Backbone.Model); function Shop() { Shop.__super__.constructor.apply(this, arguments); @@ -429,7 +409,7 @@ openerp.point_of_sale = function(db) { this.set({ cashRegisters: new CashRegisterCollection(pos.store.get('account.bank.statement')), }); - return (this.get('orders')).bind('remove', __bind( function(removedOrder) { + return (this.get('orders')).bind('remove', _.bind( function(removedOrder) { if ((this.get('orders')).isEmpty()) { this.addAndSelectOrder(new Order); } @@ -452,7 +432,7 @@ openerp.point_of_sale = function(db) { The numpad handles both the choice of the property currently being modified (quantity, price or discount) and the edition of the corresponding numeric value. */ - NumpadState = (function() { + var NumpadState = (function() { __extends(NumpadState, Backbone.Model); function NumpadState() { NumpadState.__super__.constructor.apply(this, arguments); @@ -530,9 +510,9 @@ openerp.point_of_sale = function(db) { Views --- */ - NumpadWidget = db.web.Widget.extend({ - init: function(parent, element_id, options) { - this._super(parent, element_id); + var NumpadWidget = db.web.Widget.extend({ + init: function(parent, options) { + this._super(parent); this.state = options.state; }, start: function() { @@ -563,9 +543,9 @@ openerp.point_of_sale = function(db) { /* Gives access to the payment methods (aka. 'cash registers') */ - PaypadWidget = db.web.Widget.extend({ - init: function(parent, element_id, options) { - this._super(parent, element_id); + var PaypadWidget = db.web.Widget.extend({ + init: function(parent, options) { + this._super(parent); this.shop = options.shop; }, start: function() { @@ -574,26 +554,25 @@ openerp.point_of_sale = function(db) { performPayment: function(event) { var cashRegister, cashRegisterCollection, cashRegisterId; /* set correct view */ - $('.step-screen').hide(); - $('#payment-screen').show(); + this.shop.get('selectedOrder').set({'step': 'payment'}); cashRegisterId = event.currentTarget.attributes['cash-register-id'].nodeValue; cashRegisterCollection = this.shop.get('cashRegisters'); - cashRegister = cashRegisterCollection.find(__bind( function(item) { + cashRegister = cashRegisterCollection.find(_.bind( function(item) { return (item.get('id')) === parseInt(cashRegisterId, 10); }, this)); return (this.shop.get('selectedOrder')).addPaymentLine(cashRegister); }, render_element: function() { this.$element.empty(); - return (this.shop.get('cashRegisters')).each(__bind( function(cashRegister) { + return (this.shop.get('cashRegisters')).each(_.bind( function(cashRegister) { var button = new PaymentButtonWidget(); button.model = cashRegister; button.appendTo(this.$element); }, this)); } }); - PaymentButtonWidget = db.web.Widget.extend({ + var PaymentButtonWidget = db.web.Widget.extend({ template_fct: qweb_template('pos-payment-button-template'), render_element: function() { this.$element.html(this.template_fct({ @@ -611,36 +590,43 @@ openerp.point_of_sale = function(db) { It should be possible to go back to any step as long as step 3 hasn't been completed. Modifying an order after validation shouldn't be allowed. */ - StepsWidget = db.web.Widget.extend({ - init: function(parent, element_id) { - this._super(parent, element_id); - this.step = "products"; + var StepsWidget = db.web.Widget.extend({ + init: function(parent, options) { + this._super(parent); + this.shop = options.shop; + this.change_order(); + this.shop.bind('change:selectedOrder', this.change_order, this); }, - start: function() { - this.$element.find('input.step-button').click(_.bind(this.clickChangeStep, this)); + change_order: function() { + if (this.selected_order) { + this.selected_order.unbind('change:step', this.change_step); + } + this.selected_order = this.shop.get('selectedOrder'); + if (this.selected_order) { + this.selected_order.bind('change:step', this.change_step, this); + } + this.change_step(); }, - clickChangeStep: function(event) { - var newStep; - newStep = event.currentTarget.attributes['data-step'].nodeValue; + change_step: function() { + var new_step = this.selected_order ? this.selected_order.get('step') : 'products'; $('.step-screen').hide(); - $('#' + newStep + '-screen').show(); - return this.step = newStep; - } + $('#' + new_step + '-screen').show(); + }, }); /* Shopping carts. */ - OrderlineWidget = db.web.Widget.extend({ + var OrderlineWidget = db.web.Widget.extend({ tagName: 'tr', template_fct: qweb_template('pos-orderline-template'), - init: function(parent, element_id, options) { - this._super(parent, element_id); + init: function(parent, options) { + this._super(parent); this.model = options.model; - this.model.bind('change', __bind( function() { + this.model.bind('change', _.bind( function() { this.$element.hide(); this.render_element(); }, this)); - this.model.bind('remove', __bind( function() { + this.model.bind('remove', _.bind( function() { return this.$element.remove(); }, this)); this.order = options.order; @@ -665,9 +651,9 @@ openerp.point_of_sale = function(db) { return this.order.selected = this.model; }, }); - OrderWidget = db.web.Widget.extend({ - init: function(parent, element_id, options) { - this._super(parent, element_id); + var OrderWidget = db.web.Widget.extend({ + init: function(parent, options) { + this._super(parent); this.shop = options.shop; this.numpadState = options.numpadState; this.shop.bind('change:selectedOrder', this.changeSelectedOrder, this); @@ -685,7 +671,7 @@ openerp.point_of_sale = function(db) { return this.currentOrderLines.bind('remove', this.render, this); }, addLine: function(newLine) { - var line = new OrderlineWidget(null, null, { + var line = new OrderlineWidget(null, { model: newLine, order: this.shop.get('selectedOrder'), numpadState: this.numpadState @@ -695,8 +681,8 @@ openerp.point_of_sale = function(db) { }, render_element: function() { this.$element.empty(); - this.currentOrderLines.each(__bind( function(orderLine) { - var line = new OrderlineWidget(null, null, { + this.currentOrderLines.each(_.bind( function(orderLine) { + var line = new OrderlineWidget(null, { model: orderLine, order: this.shop.get('selectedOrder'), numpadState: this.numpadState @@ -719,7 +705,7 @@ openerp.point_of_sale = function(db) { /* "Products" step. */ - CategoryWidget = db.web.Widget.extend({ + var CategoryWidget = db.web.Widget.extend({ start: function() { this.$element.find(".oe-pos-categories-list a").click(_.bind(this.changeCategory, this)); }, @@ -754,11 +740,11 @@ openerp.point_of_sale = function(db) { }, on_change_category: function(id) {}, }); - ProductWidget = db.web.Widget.extend({ + var ProductWidget = db.web.Widget.extend({ tag_name:'li', template_fct: qweb_template('pos-product-template'), - init: function(parent, element_id, options) { - this._super(parent, element_id); + init: function(parent, options) { + this._super(parent); this.model = options.model; this.shop = options.shop; }, @@ -776,17 +762,17 @@ openerp.point_of_sale = function(db) { return this; }, }); - ProductListWidget = db.web.Widget.extend({ - init: function(parent, element_id, options) { - this._super(parent, element_id); + var ProductListWidget = db.web.Widget.extend({ + init: function(parent, options) { + this._super(parent); this.model = options.model; this.shop = options.shop; this.shop.get('products').bind('reset', this.render_element, this); }, render_element: function() { this.$element.empty(); - (this.shop.get('products')).each(__bind( function(product) { - var p = new ProductWidget(null, null, { + (this.shop.get('products')).each(_.bind( function(product) { + var p = new ProductWidget(null, { model: product, shop: this.shop }); @@ -798,11 +784,11 @@ openerp.point_of_sale = function(db) { /* "Payment" step. */ - PaymentlineWidget = db.web.Widget.extend({ + var PaymentlineWidget = db.web.Widget.extend({ tag_name: 'tr', template_fct: qweb_template('pos-paymentline-template'), - init: function(parent, element_id, options) { - this._super(parent, element_id); + init: function(parent, options) { + this._super(parent); this.model = options.model; this.model.bind('change', this.render_element, this); }, @@ -827,9 +813,9 @@ openerp.point_of_sale = function(db) { return this; }, }); - PaymentWidget = db.web.Widget.extend({ - init: function(parent, element_id, options) { - this._super(parent, element_id); + var PaymentWidget = db.web.Widget.extend({ + init: function(parent, options) { + this._super(parent); this.model = options.model; this.shop = options.shop; this.shop.bind('change:selectedOrder', this.changeSelectedOrder, this); @@ -845,7 +831,7 @@ openerp.point_of_sale = function(db) { validateCurrentOrder: function() { var callback, currentOrder; currentOrder = this.shop.get('selectedOrder'); - callback = __bind(function() { + callback = _.bind(function() { return currentOrder.set({ validated: true }); @@ -869,15 +855,15 @@ openerp.point_of_sale = function(db) { this.render_element(); }, addPaymentLine: function(newPaymentLine) { - var x = new PaymentlineWidget(null, null, { + var x = new PaymentlineWidget(null, { model: newPaymentLine }); x.appendTo(this.paymentLineList()); }, render_element: function() { this.paymentLineList().empty(); - this.currentPaymentLines.each(__bind( function(paymentLine) { - var x = new PaymentlineWidget(null, null, { + this.currentPaymentLines.each(_.bind( function(paymentLine) { + var x = new PaymentlineWidget(null, { model: paymentLine }); this.paymentLineList().append(x); @@ -899,7 +885,7 @@ openerp.point_of_sale = function(db) { /* "Receipt" step. */ - ReceiptLineWidget = db.web.Widget.extend({ + var ReceiptLineWidget = db.web.Widget.extend({ tag_name: 'tr', template_fct: qweb_template('pos-receiptline-template'), init: function(parent, options) { @@ -912,7 +898,7 @@ openerp.point_of_sale = function(db) { this.$element.html(this.template_fct(this.model.toJSON())); }, }); - ReceiptWidget = db.web.Widget.extend({ + var ReceiptWidget = db.web.Widget.extend({ init: function(parent, options) { this._super(parent); this.model = options.model; @@ -921,12 +907,7 @@ openerp.point_of_sale = function(db) { this.bindOrderLineEvents(); this.bindPaymentLineEvents(); }, - start: function () { - $('button#pos-finish-order', this.$element).click(_.bind(this.finishOrder, this)); - }, finishOrder: function() { - $('.step-screen').hide(); - $('#products-screen').show(); this.shop.get('selectedOrder').destroy(); }, receiptLineList: function() { @@ -958,7 +939,8 @@ openerp.point_of_sale = function(db) { }, render_element: function() { this.$element.html(qweb_template('pos-receipt-view')); - this.currentOrderLines.each(__bind( function(orderItem) { + $('button#pos-finish-order', this.$element).click(_.bind(this.finishOrder, this)); + this.currentOrderLines.each(_.bind( function(orderItem) { var x = new ReceiptLineWidget(null, { model: orderItem }); @@ -977,132 +959,125 @@ openerp.point_of_sale = function(db) { $('#receipt-summary-change').html(change.toFixed(2)); }, }); - OrderButtonView = (function() { - __extends(OrderButtonView, Backbone.View); - function OrderButtonView() { - OrderButtonView.__super__.constructor.apply(this, arguments); - } - - OrderButtonView.prototype.tagName = 'li'; - OrderButtonView.prototype.className = 'order-selector-button'; - OrderButtonView.prototype.template = qweb_template('pos-order-selector-button-template'); - OrderButtonView.prototype.initialize = function(options) { + var OrderButtonWidget = db.web.Widget.extend({ + tag_name: 'li', + template_fct: qweb_template('pos-order-selector-button-template'), + init: function(parent, options) { + this._super(parent); this.order = options.order; this.shop = options.shop; - this.order.bind('destroy', __bind( function() { - return $(this.el).remove(); + this.order.bind('destroy', _.bind( function() { + return this.stop(); }, this)); - return this.shop.bind('change:selectedOrder', __bind( function(shop) { + this.shop.bind('change:selectedOrder', _.bind( function(shop) { var selectedOrder; selectedOrder = shop.get('selectedOrder'); if (this.order === selectedOrder) { - return this.setButtonSelected(); + this.setButtonSelected(); } }, this)); - }; - OrderButtonView.prototype.events = { - 'click button.select-order': 'selectOrder', - 'click button.close-order': 'closeOrder' - }; - OrderButtonView.prototype.selectOrder = function(event) { - return this.shop.set({ + }, + start: function() { + $('button.select-order', this.$element).click(_.bind(this.selectOrder, this)); + $('button.close-order', this.$element).click(_.bind(this.closeOrder, this)); + }, + selectOrder: function(event) { + this.shop.set({ selectedOrder: this.order }); - }; - OrderButtonView.prototype.setButtonSelected = function() { + }, + setButtonSelected: function() { $('.selected-order').removeClass('selected-order'); - return $(this.el).addClass('selected-order'); - }; - OrderButtonView.prototype.closeOrder = function(event) { - return this.order.destroy(); - }; - OrderButtonView.prototype.render = function() { - return $(this.el).html(this.template(this.order.toJSON())); - }; - return OrderButtonView; - })(); - ShopView = (function() { - __extends(ShopView, Backbone.View); - function ShopView() { - ShopView.__super__.constructor.apply(this, arguments); + this.$element.addClass('selected-order'); + }, + closeOrder: function(event) { + this.order.destroy(); + }, + render_element: function() { + this.$element.html(this.template_fct(this.order.toJSON())); + this.$element.addClass('order-selector-button'); } - - ShopView.prototype.initialize = function(options) { + }); + var ShopWidget = db.web.Widget.extend({ + init: function(parent, options) { + this._super(parent); this.shop = options.shop; + }, + start: function() { + $('button#neworder-button', this.$element).click(_.bind(this.createNewOrder, this)); + (this.shop.get('orders')).bind('add', this.orderAdded, this); (this.shop.get('orders')).add(new Order); this.numpadState = new NumpadState({ shop: this.shop }); - this.productListView = new ProductListWidget(null, "products-screen-ol", { + this.productListView = new ProductListWidget(null, { shop: this.shop }); + this.productListView.$element = $("#products-screen-ol"); this.productListView.render_element(); this.productListView.start(); - this.paypadView = new PaypadWidget(null, 'paypad', { + this.paypadView = new PaypadWidget(null, { shop: this.shop }); + this.paypadView.$element = $('#paypad'); this.paypadView.render_element(); this.paypadView.start(); - this.orderView = new OrderWidget(null, 'current-order-content', { + this.orderView = new OrderWidget(null, { shop: this.shop, numpadState: this.numpadState }); + this.orderView.$element = $('#current-order-content'); this.orderView.start(); - this.paymentView = new PaymentWidget(null, 'payment-screen', { + this.paymentView = new PaymentWidget(null, { shop: this.shop }); + this.paymentView.$element = $('#payment-screen'); this.paymentView.render_element(); this.paymentView.start(); this.receiptView = new ReceiptWidget(null, { shop: this.shop, }); - debugger; this.receiptView.replace($('#receipt-screen')); - this.numpadView = new NumpadWidget(null, 'numpad', { + this.numpadView = new NumpadWidget(null, { state: this.numpadState }); + this.numpadView.$element = $('#numpad'); this.numpadView.start(); - this.stepsView = new StepsWidget(null, 'steps'); + this.stepsView = new StepsWidget(null, {shop: this.shop}); + this.stepsView.$element = $('#steps'); this.stepsView.start(); - this.start(); - }; - ShopView.prototype.events = { - 'click button#neworder-button': 'createNewOrder' - }; - ShopView.prototype.start = function() { - this.productListView.start(); - }; - ShopView.prototype.createNewOrder = function() { + }, + createNewOrder: function() { var newOrder; newOrder = new Order; (this.shop.get('orders')).add(newOrder); - return this.shop.set({ + this.shop.set({ selectedOrder: newOrder }); - }; - ShopView.prototype.orderAdded = function(newOrder) { + }, + orderAdded: function(newOrder) { var newOrderButton; - newOrderButton = new OrderButtonView({ + newOrderButton = new OrderButtonWidget(null, { order: newOrder, shop: this.shop }); - $('#orders').append(newOrderButton.render()); - return newOrderButton.selectOrder(); - }; - return ShopView; - })(); - App = (function() { + newOrderButton.appendTo($('#orders')); + newOrderButton.selectOrder(); + }, + }); + var App = (function() { function App($element) { this.initialize($element); } App.prototype.initialize = function($element) { this.shop = new Shop; - this.shopView = new ShopView({ - shop: this.shop, - el: $element + this.shopView = new ShopWidget(null, { + shop: this.shop }); + this.shopView.$element = $element; + this.shopView.start(); this.categoryView = new CategoryWidget(null, 'products-screen-categories'); this.categoryView.on_change_category.add_last(_.bind(this.category, this)); this.category(); @@ -1119,7 +1094,7 @@ openerp.point_of_sale = function(db) { this.categoryView.start(); products = pos.store.get('product.product').filter( function(p) { var _ref; - return _ref = p.pos_categ_id[0], __indexOf.call(c.subtree, _ref) >= 0; + return _ref = p.pos_categ_id[0], _.indexOf(c.subtree, _ref) >= 0; }); (this.shop.get('products')).reset(products); var self = this; @@ -1161,12 +1136,17 @@ openerp.point_of_sale = function(db) { pos = new Pos(this.session); this.$element.find('#steps').buttonset(); + + $('.oe_toggle_secondary_menu').hide(); + $('.oe_footer').hide(); return pos.ready.then( function() { pos.app = new App(self.$element); }); }, stop: function() { + $('.oe_footer').show(); + $('.oe_toggle_secondary_menu').show(); pos = undefined; this._super(); } diff --git a/addons/point_of_sale/wizard/pos_box_entries.py b/addons/point_of_sale/wizard/pos_box_entries.py index 0c48aff736f..8313b345834 100644 --- a/addons/point_of_sale/wizard/pos_box_entries.py +++ b/addons/point_of_sale/wizard/pos_box_entries.py @@ -125,3 +125,5 @@ class pos_box_entries(osv.osv_memory): pos_box_entries() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/point_of_sale/wizard/pos_box_out.py b/addons/point_of_sale/wizard/pos_box_out.py index b4298745c35..46f710c7882 100644 --- a/addons/point_of_sale/wizard/pos_box_out.py +++ b/addons/point_of_sale/wizard/pos_box_out.py @@ -110,3 +110,5 @@ class pos_box_out(osv.osv_memory): pos_box_out() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/point_of_sale/wizard/pos_payment.py b/addons/point_of_sale/wizard/pos_payment.py index adf59e3cbce..3a50ac0f7c9 100644 --- a/addons/point_of_sale/wizard/pos_payment.py +++ b/addons/point_of_sale/wizard/pos_payment.py @@ -101,3 +101,5 @@ class pos_make_payment(osv.osv_memory): pos_make_payment() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/point_of_sale/wizard/pos_payment_report_user.py b/addons/point_of_sale/wizard/pos_payment_report_user.py index 02db921618b..05d06f4df29 100644 --- a/addons/point_of_sale/wizard/pos_payment_report_user.py +++ b/addons/point_of_sale/wizard/pos_payment_report_user.py @@ -51,3 +51,5 @@ class pos_payment_report_user(osv.osv_memory): pos_payment_report_user() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/point_of_sale/wizard/pos_receipt.py b/addons/point_of_sale/wizard/pos_receipt.py index 71efee85b7c..f4feee85504 100644 --- a/addons/point_of_sale/wizard/pos_receipt.py +++ b/addons/point_of_sale/wizard/pos_receipt.py @@ -56,3 +56,5 @@ class pos_receipt(osv.osv_memory): } pos_receipt() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/portal/__init__.py b/addons/portal/__init__.py index 89397d2eab5..b35d11bac45 100644 --- a/addons/portal/__init__.py +++ b/addons/portal/__init__.py @@ -24,3 +24,5 @@ import wizard import res_user import ir_ui_menu + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/portal/__openerp__.py b/addons/portal/__openerp__.py index 1b3be74c79f..d76917fcf45 100644 --- a/addons/portal/__openerp__.py +++ b/addons/portal/__openerp__.py @@ -24,7 +24,7 @@ 'version' : "1.0", 'depends' : ["base", "share"], 'author' : "OpenERP SA", - 'category': 'Hidden', + 'category': 'Portal', 'description': """ This module defines 'portals' to customize the access to your OpenERP database for external users. diff --git a/addons/portal/i18n/cs.po b/addons/portal/i18n/cs.po index ce070425f07..3be439be9b6 100644 --- a/addons/portal/i18n/cs.po +++ b/addons/portal/i18n/cs.po @@ -8,78 +8,80 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-07-04 14:16+0000\n" -"PO-Revision-Date: 2011-07-11 09:51+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" -"Language-Team: Czech <cs@li.org>\n" +"PO-Revision-Date: 2011-11-25 13:27+0000\n" +"Last-Translator: Jiří Hajda <robie@centrum.cz>\n" +"Language-Team: Czech <openerp-i18n-czech@lists.launchpad.net >\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:50+0000\n" +"X-Generator: Launchpad (build 14381)\n" +"X-Poedit-Language: Czech\n" #. module: portal #: code:addons/portal/wizard/share_wizard.py:55 #, python-format msgid "Please select at least one user to share with" -msgstr "" +msgstr "Prosíme vyberte nejméně jednoho uživatele, s kterým chcete sdílet" #. module: portal #: code:addons/portal/wizard/share_wizard.py:59 #, python-format msgid "Please select at least one group to share with" -msgstr "" +msgstr "Prosíme vyberte nejméně jednu skupinu, s kterou chcete sdílet" #. module: portal #: field:res.portal,group_id:0 msgid "Group" -msgstr "" +msgstr "Skupina" #. module: portal #: help:res.portal,other_group_ids:0 msgid "Those groups are assigned to the portal's users" -msgstr "" +msgstr "Tyto skupiny jsou přiřazeny k uživatelům portálu" #. module: portal #: view:share.wizard:0 #: field:share.wizard,group_ids:0 msgid "Existing groups" -msgstr "" +msgstr "Existující skupiny" #. module: portal #: model:ir.model,name:portal.model_res_portal_wizard_user msgid "Portal User Config" -msgstr "" +msgstr "Nastavení uživatele portálu" #. module: portal #: view:res.portal.wizard.user:0 msgid "Portal User" -msgstr "" +msgstr "Uživatel portálu" #. module: portal #: help:res.portal,override_menu:0 msgid "Enable this option to override the Menu Action of portal users" -msgstr "" +msgstr "Povolte tuto volbu k přepsání Akcí nabídky uživatelů portálu" #. module: portal #: field:res.portal.wizard.user,user_email:0 msgid "E-mail" -msgstr "" +msgstr "E-mail" #. module: portal #: view:res.portal:0 msgid "Other Groups assigned to Users" -msgstr "" +msgstr "Jiné skupiny přiřazené uživatelům" #. module: portal #: constraint:res.users:0 msgid "The chosen company is not in the allowed companies for this user" msgstr "" +"Vybraná společnost není v povolených společnostech pro tohoto uživatele" #. module: portal #: view:res.portal:0 #: field:res.portal,widget_ids:0 msgid "Widgets" -msgstr "" +msgstr "Udělátka" #. module: portal #: model:ir.module.module,description:portal.module_meta_information @@ -99,71 +101,85 @@ msgid "" "module 'share'.\n" " " msgstr "" +"\n" +"Tento modul určuje 'portály' k přizpůsobení přístupu k vaší databázi " +"OpenERP\n" +"pro vnější uživatele.\n" +"\n" +"Portál určuje přizpůsobení nabídky uživatele a jeho přístupových práv pro " +"skupinu uživatelů\n" +"(těch přiřazených k portálu). Také přidružuje uživatelské skupiny k\n" +"uživatelům portálu (přidáním skupiny v portálu automaticky je přidáte k " +"uživatelům\n" +"portálu, atd.). Tato funkce je velmi užitečný v kombinaci s\n" +"modulem 'sdílení'.\n" +" " #. module: portal #: view:share.wizard:0 msgid "Who do you want to share with?" -msgstr "" +msgstr "S kým chcete sdílet?" #. module: portal #: view:res.portal.wizard:0 msgid "Send Invitations" -msgstr "" +msgstr "Poslat pozvání" #. module: portal #: help:res.portal,url:0 msgid "The url where portal users can connect to the server" -msgstr "" +msgstr "URL, kde uživatelé portálu se mohou připojit k serveru" #. module: portal #: field:res.portal.widget,widget_id:0 msgid "Widget" -msgstr "" +msgstr "Udělátko" #. module: portal #: help:res.portal.wizard,message:0 msgid "This text is included in the welcome email sent to the users" -msgstr "" +msgstr "Tento text je zahrnut v uvítacím emailu zaslatném uživatelům" #. module: portal #: help:res.portal,menu_action_id:0 msgid "If set, replaces the standard menu for the portal's users" msgstr "" +"Pokud je nastaveno, nahrazuje standardní nabídku pro uživatele portálu" #. module: portal #: field:res.portal,parent_menu_id:0 msgid "Parent Menu" -msgstr "" +msgstr "Nadřazené menu" #. module: portal #: view:res.portal:0 msgid "Portal Name" -msgstr "" +msgstr "Jméno portálu" #. module: portal #: view:res.portal.wizard.user:0 msgid "Portal Users" -msgstr "" +msgstr "Uživatelé portálu" #. module: portal #: field:res.portal,override_menu:0 msgid "Override Menu Action of Users" -msgstr "" +msgstr "Přepsat Akce nabídky pro uživatele" #. module: portal #: field:res.portal,menu_action_id:0 msgid "Menu Action" -msgstr "" +msgstr "Akce nabídky" #. module: portal #: field:res.portal.wizard.user,name:0 msgid "User Name" -msgstr "" +msgstr "Uživatelské jméno" #. module: portal #: model:ir.model,name:portal.model_res_portal_widget msgid "Portal Widgets" -msgstr "" +msgstr "Pomůcky portálu" #. module: portal #: model:ir.model,name:portal.model_res_portal @@ -172,47 +188,47 @@ msgstr "" #: field:res.portal.widget,portal_id:0 #: field:res.portal.wizard,portal_id:0 msgid "Portal" -msgstr "" +msgstr "Portál" #. module: portal #: code:addons/portal/wizard/portal_wizard.py:35 #, python-format msgid "Your OpenERP account at %(company)s" -msgstr "" +msgstr "Váš účet OpenERP v %(company)s" #. module: portal #: code:addons/portal/portal.py:110 #: code:addons/portal/portal.py:184 #, python-format msgid "%s Menu" -msgstr "" +msgstr "%s Nabídka" #. module: portal #: help:res.portal.wizard,portal_id:0 msgid "The portal in which new users must be added" -msgstr "" +msgstr "Portál, ve kterém musí být přidání noví uživatelé" #. module: portal #: help:res.portal,widget_ids:0 msgid "Widgets assigned to portal users" -msgstr "" +msgstr "Pomůcky přiřazené k těmto uživatelům portálu" #. module: portal #: code:addons/portal/wizard/portal_wizard.py:163 #, python-format msgid "(missing url)" -msgstr "" +msgstr "(chybějící url)" #. module: portal #: view:share.wizard:0 #: field:share.wizard,user_ids:0 msgid "Existing users" -msgstr "" +msgstr "Existující uživatelé" #. module: portal #: field:res.portal.wizard.user,wizard_id:0 msgid "Wizard" -msgstr "" +msgstr "Průvodce" #. module: portal #: help:res.portal.wizard.user,user_email:0 @@ -220,63 +236,66 @@ msgid "" "Will be used as user login. Also necessary to send the account information " "to new users" msgstr "" +"Bude použito jako přihlašovací jméno uživatele. Také je zapotřebí zaslat " +"informace účtu novým uživatelům" #. module: portal #: field:res.portal.wizard.user,lang:0 msgid "Language" -msgstr "" +msgstr "Jazyk" #. module: portal #: field:res.portal,url:0 msgid "URL" -msgstr "" +msgstr "URL" #. module: portal #: view:res.portal:0 msgid "Widgets assigned to Users" -msgstr "" +msgstr "Pomůcky přiřazené uživatelům" #. module: portal #: help:res.portal.wizard.user,lang:0 msgid "The language for the user's user interface" -msgstr "" +msgstr "Jazyk pro uživatelské rozhraní uživatelů" #. module: portal #: view:res.portal.wizard:0 msgid "Cancel" -msgstr "" +msgstr "Zrušit" #. module: portal #: view:res.portal:0 msgid "Website" -msgstr "" +msgstr "Webová stránka" #. module: portal #: view:res.portal:0 msgid "Create Parent Menu" -msgstr "" +msgstr "Vytvořit nadřazenou nabídku" #. module: portal #: view:res.portal.wizard:0 msgid "" "The following text will be included in the welcome email sent to users." msgstr "" +"Následující text bude zahrnut v uvítacím emailu zalsatném uživatelům." #. module: portal #: code:addons/portal/wizard/portal_wizard.py:135 #, python-format msgid "Email required" -msgstr "" +msgstr "Požadován email" #. module: portal #: model:ir.model,name:portal.model_res_users msgid "res.users" -msgstr "" +msgstr "res.users" #. module: portal #: constraint:res.portal.wizard.user:0 msgid "Invalid email address" -msgstr "" +msgstr "Neplatná emailová adresa" #. module: portal #: code:addons/portal/wizard/portal_wizard.py:136 @@ -284,28 +303,30 @@ msgstr "" msgid "" "You must have an email address in your User Preferences to send emails." msgstr "" +"Musíte mít emailovou adresu ve vašich uživatelských předvolbách pro zasílání " +"emailů." #. module: portal #: model:ir.model,name:portal.model_ir_ui_menu msgid "ir.ui.menu" -msgstr "" +msgstr "ir.ui.menu" #. module: portal #: help:res.portal,group_id:0 msgid "The group extended by this portal" -msgstr "" +msgstr "Skupina rozšířená tímto portálem" #. module: portal #: view:res.portal:0 #: view:res.portal.wizard:0 #: field:res.portal.wizard,user_ids:0 msgid "Users" -msgstr "" +msgstr "Uživatelé" #. module: portal #: field:res.portal,other_group_ids:0 msgid "Other User Groups" -msgstr "" +msgstr "Jiné skupiny uživatelů" #. module: portal #: model:ir.actions.act_window,name:portal.portal_list_action @@ -313,38 +334,38 @@ msgstr "" #: model:ir.ui.menu,name:portal.portal_menu #: view:res.portal:0 msgid "Portals" -msgstr "" +msgstr "Portály" #. module: portal #: help:res.portal,parent_menu_id:0 msgid "The menu action opens the submenus of this menu item" -msgstr "" +msgstr "Akce nabídky otevírající podnabídku této položky nabídky" #. module: portal #: field:res.portal.widget,sequence:0 msgid "Sequence" -msgstr "" +msgstr "Posloupnost" #. module: portal #: field:res.users,partner_id:0 msgid "Related Partner" -msgstr "" +msgstr "Vztažený partner" #. module: portal #: view:res.portal:0 msgid "Portal Menu" -msgstr "" +msgstr "Nabídka portálu" #. module: portal #: sql_constraint:res.users:0 msgid "You can not have two users with the same login !" -msgstr "" +msgstr "Nemůžete mít dva uživatele se stejným přihlašovacím jménem !" #. module: portal #: view:res.portal.wizard:0 #: field:res.portal.wizard,message:0 msgid "Invitation message" -msgstr "" +msgstr "Zpráva pozvánky" #. module: portal #: code:addons/portal/wizard/portal_wizard.py:36 @@ -365,28 +386,42 @@ msgid "" "OpenERP - Open Source Business Applications\n" "http://www.openerp.com\n" msgstr "" +"Vážený %(name)s,\n" +"\n" +"Byl vám vytvořen OpenERP účet na %(url)s.\n" +"\n" +"Váše přihlašovací údaje účtu jsou:\n" +"Databáze: %(db)s\n" +"Uživatel: %(login)s\n" +"Heslo: %(password)s\n" +"\n" +"%(message)s\n" +"\n" +"--\n" +"OpenERP - Open Source Business Applications\n" +"http://www.openerp.com\n" #. module: portal #: model:ir.model,name:portal.model_res_portal_wizard msgid "Portal Wizard" -msgstr "" +msgstr "Průvodce portálu" #. module: portal #: help:res.portal.wizard.user,name:0 msgid "The user's real name" -msgstr "" +msgstr "Skutečné jméno uživatele" #. module: portal #: model:ir.actions.act_window,name:portal.address_wizard_action #: model:ir.actions.act_window,name:portal.partner_wizard_action #: view:res.portal.wizard:0 msgid "Add Portal Access" -msgstr "" +msgstr "Přidat přístup portálu" #. module: portal #: field:res.portal.wizard.user,partner_id:0 msgid "Partner" -msgstr "" +msgstr "Partner" #. module: portal #: model:ir.actions.act_window,help:portal.portal_list_action @@ -398,8 +433,14 @@ msgid "" "the portal's users.\n" " " msgstr "" +"\n" +"Portál pomáhá stanovit určité pohledy a pravidla pro skupiny uživatelů\n" +"(skupinu protálu). Nabídka portálu, pomůcky a určité skupiny mohou být " +"přiřazeny k\n" +"uživatelům portálu.\n" +" " #. module: portal #: model:ir.model,name:portal.model_share_wizard msgid "Share Wizard" -msgstr "" +msgstr "Průvodce sdílením" diff --git a/addons/portal/i18n/de.po b/addons/portal/i18n/de.po index 8fbe9e1e388..9f0429f0243 100644 --- a/addons/portal/i18n/de.po +++ b/addons/portal/i18n/de.po @@ -8,78 +8,80 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-07-04 14:16+0000\n" -"PO-Revision-Date: 2011-07-11 09:51+0000\n" -"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"PO-Revision-Date: 2011-11-29 07:47+0000\n" +"Last-Translator: Ferdinand @ Camptocamp <Unknown>\n" "Language-Team: German <de@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-30 05:27+0000\n" +"X-Generator: Launchpad (build 14404)\n" #. module: portal #: code:addons/portal/wizard/share_wizard.py:55 #, python-format msgid "Please select at least one user to share with" -msgstr "" +msgstr "Bitte wählen Sie mindestens einen Benutzer zum Teilen" #. module: portal #: code:addons/portal/wizard/share_wizard.py:59 #, python-format msgid "Please select at least one group to share with" -msgstr "" +msgstr "Bitte wählen Sie mindestens eine Gruppe zum Teilen" #. module: portal #: field:res.portal,group_id:0 msgid "Group" -msgstr "" +msgstr "Gruppe" #. module: portal #: help:res.portal,other_group_ids:0 msgid "Those groups are assigned to the portal's users" -msgstr "" +msgstr "Diese Gruppen sind den Portalbenutzern zugeordnet" #. module: portal #: view:share.wizard:0 #: field:share.wizard,group_ids:0 msgid "Existing groups" -msgstr "" +msgstr "Vorhandene Gruppen" #. module: portal #: model:ir.model,name:portal.model_res_portal_wizard_user msgid "Portal User Config" -msgstr "" +msgstr "Portalbenutzer Konfiguration" #. module: portal #: view:res.portal.wizard.user:0 msgid "Portal User" -msgstr "" +msgstr "Portalbenutzer" #. module: portal #: help:res.portal,override_menu:0 msgid "Enable this option to override the Menu Action of portal users" -msgstr "" +msgstr "Aktivieren, um die Menü Aktion für Portalbenutzer zu überschreiben" #. module: portal #: field:res.portal.wizard.user,user_email:0 msgid "E-mail" -msgstr "" +msgstr "E-Mail" #. module: portal #: view:res.portal:0 msgid "Other Groups assigned to Users" -msgstr "" +msgstr "Andere dem Benutzer zugeteilte Gruppen" #. module: portal #: constraint:res.users:0 msgid "The chosen company is not in the allowed companies for this user" msgstr "" +"Die gewählte Firma ist nicht in der Liste der erlaubten Firmen für diesen " +"Benutzer" #. module: portal #: view:res.portal:0 #: field:res.portal,widget_ids:0 msgid "Widgets" -msgstr "" +msgstr "Oberflächenelemente" #. module: portal #: model:ir.module.module,description:portal.module_meta_information @@ -103,67 +105,68 @@ msgstr "" #. module: portal #: view:share.wizard:0 msgid "Who do you want to share with?" -msgstr "" +msgstr "Mit wem wollen Sie teilen?" #. module: portal #: view:res.portal.wizard:0 msgid "Send Invitations" -msgstr "" +msgstr "Versende Einladungen" #. module: portal #: help:res.portal,url:0 msgid "The url where portal users can connect to the server" -msgstr "" +msgstr "Die URL, mit der sich Portalbenutzer anmelden können" #. module: portal #: field:res.portal.widget,widget_id:0 msgid "Widget" -msgstr "" +msgstr "Oberflächenelement" #. module: portal #: help:res.portal.wizard,message:0 msgid "This text is included in the welcome email sent to the users" -msgstr "" +msgstr "Dieser Text ist Bestandteil der Willkommen E-Mail an den Benutzer" #. module: portal #: help:res.portal,menu_action_id:0 msgid "If set, replaces the standard menu for the portal's users" msgstr "" +"Wenn definiert, dann ersetzt dies das Standardmenü für Portalbenutzer" #. module: portal #: field:res.portal,parent_menu_id:0 msgid "Parent Menu" -msgstr "" +msgstr "Obermenü" #. module: portal #: view:res.portal:0 msgid "Portal Name" -msgstr "" +msgstr "Portalname" #. module: portal #: view:res.portal.wizard.user:0 msgid "Portal Users" -msgstr "" +msgstr "Portalbenutzer" #. module: portal #: field:res.portal,override_menu:0 msgid "Override Menu Action of Users" -msgstr "" +msgstr "Überschreibe Die Menü-Aktion für Benutzer" #. module: portal #: field:res.portal,menu_action_id:0 msgid "Menu Action" -msgstr "" +msgstr "Menü Aktion" #. module: portal #: field:res.portal.wizard.user,name:0 msgid "User Name" -msgstr "" +msgstr "Benutzer Name" #. module: portal #: model:ir.model,name:portal.model_res_portal_widget msgid "Portal Widgets" -msgstr "" +msgstr "Portal Oberflächenelemente" #. module: portal #: model:ir.model,name:portal.model_res_portal @@ -172,47 +175,47 @@ msgstr "" #: field:res.portal.widget,portal_id:0 #: field:res.portal.wizard,portal_id:0 msgid "Portal" -msgstr "" +msgstr "Portal" #. module: portal #: code:addons/portal/wizard/portal_wizard.py:35 #, python-format msgid "Your OpenERP account at %(company)s" -msgstr "" +msgstr "Ihr OpenERP Konto bei %(company)s" #. module: portal #: code:addons/portal/portal.py:110 #: code:addons/portal/portal.py:184 #, python-format msgid "%s Menu" -msgstr "" +msgstr "%s Menü" #. module: portal #: help:res.portal.wizard,portal_id:0 msgid "The portal in which new users must be added" -msgstr "" +msgstr "Das Portal, zu dem neue Benutzer hinzugefügt werden müssen" #. module: portal #: help:res.portal,widget_ids:0 msgid "Widgets assigned to portal users" -msgstr "" +msgstr "Oberflächenelemente, die Portalbenutzern zugeordnet sind" #. module: portal #: code:addons/portal/wizard/portal_wizard.py:163 #, python-format msgid "(missing url)" -msgstr "" +msgstr "(fehlende URL)" #. module: portal #: view:share.wizard:0 #: field:share.wizard,user_ids:0 msgid "Existing users" -msgstr "" +msgstr "Bestehende Benutzer" #. module: portal #: field:res.portal.wizard.user,wizard_id:0 msgid "Wizard" -msgstr "" +msgstr "Assistent" #. module: portal #: help:res.portal.wizard.user,user_email:0 @@ -220,63 +223,65 @@ msgid "" "Will be used as user login. Also necessary to send the account information " "to new users" msgstr "" +"Wird als Benutzer Login verwendet. Ebenso notwendig die Kontoinformation an " +"neue Benutzer zu senden." #. module: portal #: field:res.portal.wizard.user,lang:0 msgid "Language" -msgstr "" +msgstr "Sprache" #. module: portal #: field:res.portal,url:0 msgid "URL" -msgstr "" +msgstr "URL" #. module: portal #: view:res.portal:0 msgid "Widgets assigned to Users" -msgstr "" +msgstr "Oberflächenelemente, die Benutzern zugeordnet sind" #. module: portal #: help:res.portal.wizard.user,lang:0 msgid "The language for the user's user interface" -msgstr "" +msgstr "Die Sprache für die Benutzerschnittstelle" #. module: portal #: view:res.portal.wizard:0 msgid "Cancel" -msgstr "" +msgstr "Abbrechen" #. module: portal #: view:res.portal:0 msgid "Website" -msgstr "" +msgstr "Webseite" #. module: portal #: view:res.portal:0 msgid "Create Parent Menu" -msgstr "" +msgstr "Erstelle Obermenü" #. module: portal #: view:res.portal.wizard:0 msgid "" "The following text will be included in the welcome email sent to users." -msgstr "" +msgstr "Der folgende Text wird im Willkommen E-Mail verwendet werden" #. module: portal #: code:addons/portal/wizard/portal_wizard.py:135 #, python-format msgid "Email required" -msgstr "" +msgstr "E-Mail ist erforderlich" #. module: portal #: model:ir.model,name:portal.model_res_users msgid "res.users" -msgstr "" +msgstr "res.users" #. module: portal #: constraint:res.portal.wizard.user:0 msgid "Invalid email address" -msgstr "" +msgstr "Ungültige E-Mail Adresse" #. module: portal #: code:addons/portal/wizard/portal_wizard.py:136 @@ -284,28 +289,30 @@ msgstr "" msgid "" "You must have an email address in your User Preferences to send emails." msgstr "" +"Sie müssen Ihre E-Mail Adresse in den Benuztereinstellungen erfassen um E-" +"Mails senden zu können." #. module: portal #: model:ir.model,name:portal.model_ir_ui_menu msgid "ir.ui.menu" -msgstr "" +msgstr "ir.ui.menu" #. module: portal #: help:res.portal,group_id:0 msgid "The group extended by this portal" -msgstr "" +msgstr "Die diesem Portal zugeordnete Gruppe" #. module: portal #: view:res.portal:0 #: view:res.portal.wizard:0 #: field:res.portal.wizard,user_ids:0 msgid "Users" -msgstr "" +msgstr "Benutzer" #. module: portal #: field:res.portal,other_group_ids:0 msgid "Other User Groups" -msgstr "" +msgstr "Andere Benutzergruppen" #. module: portal #: model:ir.actions.act_window,name:portal.portal_list_action @@ -313,38 +320,38 @@ msgstr "" #: model:ir.ui.menu,name:portal.portal_menu #: view:res.portal:0 msgid "Portals" -msgstr "" +msgstr "Portale" #. module: portal #: help:res.portal,parent_menu_id:0 msgid "The menu action opens the submenus of this menu item" -msgstr "" +msgstr "Die Menü-Aktion öffnet Unter-Menüeinträge dieses Menüeintrags" #. module: portal #: field:res.portal.widget,sequence:0 msgid "Sequence" -msgstr "" +msgstr "Sequenz" #. module: portal #: field:res.users,partner_id:0 msgid "Related Partner" -msgstr "" +msgstr "referenzierter Geschäftspartner" #. module: portal #: view:res.portal:0 msgid "Portal Menu" -msgstr "" +msgstr "Portal Menü" #. module: portal #: sql_constraint:res.users:0 msgid "You can not have two users with the same login !" -msgstr "" +msgstr "2 Benuzter können nicht den gleichen Login Code haben." #. module: portal #: view:res.portal.wizard:0 #: field:res.portal.wizard,message:0 msgid "Invitation message" -msgstr "" +msgstr "Einladungstext" #. module: portal #: code:addons/portal/wizard/portal_wizard.py:36 @@ -369,24 +376,24 @@ msgstr "" #. module: portal #: model:ir.model,name:portal.model_res_portal_wizard msgid "Portal Wizard" -msgstr "" +msgstr "Portal Assistent" #. module: portal #: help:res.portal.wizard.user,name:0 msgid "The user's real name" -msgstr "" +msgstr "Der vollständige Name des Benutzers" #. module: portal #: model:ir.actions.act_window,name:portal.address_wizard_action #: model:ir.actions.act_window,name:portal.partner_wizard_action #: view:res.portal.wizard:0 msgid "Add Portal Access" -msgstr "" +msgstr "Füge Portalberechtigung hinzu" #. module: portal #: field:res.portal.wizard.user,partner_id:0 msgid "Partner" -msgstr "" +msgstr "Partner" #. module: portal #: model:ir.actions.act_window,help:portal.portal_list_action @@ -398,8 +405,14 @@ msgid "" "the portal's users.\n" " " msgstr "" +"\n" +"Ein Portal erlaubt die Zuordnung von bestimmten Sichten und Regeln zu einer " +"Benutzergruppe (die Portalgruppe).\n" +"Ein Portalmenu, Oberflächenelemente und einzelne Gruppen können " +"Portalbenutzern zugeordnet werden.\n" +" " #. module: portal #: model:ir.model,name:portal.model_share_wizard msgid "Share Wizard" -msgstr "" +msgstr "Freigabeassistent" diff --git a/addons/portal/ir_ui_menu.py b/addons/portal/ir_ui_menu.py index a4fe364a4fd..c8f59ca8bd1 100644 --- a/addons/portal/ir_ui_menu.py +++ b/addons/portal/ir_ui_menu.py @@ -56,3 +56,5 @@ class portal_menu(osv.osv): portal_menu() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/portal/portal.py b/addons/portal/portal.py index 1c7f84c363a..de39944e69f 100644 --- a/addons/portal/portal.py +++ b/addons/portal/portal.py @@ -226,3 +226,5 @@ portal_widget() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/portal/res_user.py b/addons/portal/res_user.py index 2f32a65b761..127c3079b29 100644 --- a/addons/portal/res_user.py +++ b/addons/portal/res_user.py @@ -32,3 +32,5 @@ class res_users(osv.osv): res_users() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/portal/wizard/__init__.py b/addons/portal/wizard/__init__.py index 90b71a62c30..9d52ae0db6d 100644 --- a/addons/portal/wizard/__init__.py +++ b/addons/portal/wizard/__init__.py @@ -22,3 +22,5 @@ import portal_wizard import share_wizard + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/portal/wizard/portal_wizard.py b/addons/portal/wizard/portal_wizard.py index 7157f22f129..706d6fd4a7f 100644 --- a/addons/portal/wizard/portal_wizard.py +++ b/addons/portal/wizard/portal_wizard.py @@ -225,3 +225,5 @@ wizard_user() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/portal/wizard/share_wizard.py b/addons/portal/wizard/share_wizard.py index ab639bdeccc..b5c9d165cc6 100644 --- a/addons/portal/wizard/share_wizard.py +++ b/addons/portal/wizard/share_wizard.py @@ -184,3 +184,5 @@ class share_wizard_portal(osv.osv_memory): share_wizard_portal() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/process/__openerp__.py b/addons/process/__openerp__.py index e35ae2b06ae..4af045ff6bb 100644 --- a/addons/process/__openerp__.py +++ b/addons/process/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Enterprise Process', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module shows the basic processes involved in the selected modules and in the sequence they occur. ====================================================================================================== diff --git a/addons/procurement/__init__.py b/addons/procurement/__init__.py index 3420ef1f75e..4634166a9bd 100644 --- a/addons/procurement/__init__.py +++ b/addons/procurement/__init__.py @@ -22,4 +22,6 @@ import procurement import wizard import schedulers -import company
\ No newline at end of file +import company + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/procurement/board_mrp_procurement_view.xml b/addons/procurement/board_mrp_procurement_view.xml index b45edd3cbdd..01745e7acff 100644 --- a/addons/procurement/board_mrp_procurement_view.xml +++ b/addons/procurement/board_mrp_procurement_view.xml @@ -16,7 +16,7 @@ <field name="inherit_id" ref="stock.board_warehouse_form"/> <field name="type">form</field> <field name="arch" type="xml"> - <xpath expr="/form/board/column/action[@string='Incoming Product']" position="before"> + <xpath expr="/form/board/column/action[@string='Incoming Shipments']" position="before"> <action name="%(procurement_action_board)d" string="Procurements in Exception"/> </xpath> </field> diff --git a/addons/product/__openerp__.py b/addons/product/__openerp__.py index 46740140bbe..81ec3a0ae64 100644 --- a/addons/product/__openerp__.py +++ b/addons/product/__openerp__.py @@ -24,7 +24,7 @@ "name" : "Products & Pricelists", "version" : "1.1", "author" : "OpenERP SA", - "category" : "Hidden", + 'category': 'Sales Management', "depends" : ["base", "process", "decimal_precision"], "init_xml" : [], "demo_xml" : ["product_demo.xml"], diff --git a/addons/product/pricelist_view.xml b/addons/product/pricelist_view.xml index 2f8982a1faf..73151e8853f 100644 --- a/addons/product/pricelist_view.xml +++ b/addons/product/pricelist_view.xml @@ -57,7 +57,7 @@ <field name="sequence"/> <field colspan="4" name="name" select="1"/> <field name="product_id"/> - <field name="product_tmpl_id" select="1"/> + <field name="product_tmpl_id" select="1" groups="product.group_product_variant"/> <field name="categ_id" select="1"/> <field name="min_quantity"/> <field name="base"/> @@ -74,7 +74,7 @@ <separator colspan="4" string="Rules Test Match"/> <field colspan="4" name="name" select="1"/> <field name="product_id" on_change="product_id_change(product_id)" select="1"/> - <field name="product_tmpl_id" select="1"/> + <field name="product_tmpl_id" select="1" groups="product.group_product_variant"/> <field name="categ_id" select="1"/> <field name="company_id" groups="base.group_multi_company" widget="selection"/> <newline/> @@ -165,7 +165,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="search_view_id" ref="product_pricelist_view_search" /> - <field name="context">{"search_default_type":"sale"}</field> + <field name="context">{"default_type":"sale", "search_default_type":"sale"}</field> <field name="domain">[('type','=','sale')]</field> <field name="help">A price list contains rules to be evaluated in order to compute the purchase or sales price for all the partners assigned to a price list. Price lists have several versions (2010, 2011, Promotion of February 2010, etc.) and each version has several rules. Example: the customer price of a product category will be based on the supplier price multiplied by 1.80.</field> </record> @@ -176,7 +176,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="search_view_id" ref="product_pricelist_view_search" /> - <field name="context">{"search_default_type":"purchase"}</field> + <field name="context">{"default_type":"purchase", "search_default_type":"purchase"}</field> <field name="domain">[('type','=','purchase')]</field> <field name="help">A price list contains rules to be evaluated in order to compute the purchase or sales price for all the partners assigned to a price list. Price lists have several versions (2010, 2011, Promotion of February 2010, etc.) and each version has several rules. Example: the customer price of a product category will be based on the supplier price multiplied by 1.80.</field> </record> diff --git a/addons/product/product.py b/addons/product/product.py index ecf1761318e..c67b1f6c029 100644 --- a/addons/product/product.py +++ b/addons/product/product.py @@ -171,7 +171,7 @@ class product_uom(osv.osv): def write(self, cr, uid, ids, vals, context=None): if 'category_id' in vals: for uom in self.browse(cr, uid, ids, context=context): - if uom.category_id != vals['category_id']: + if uom.category_id.id != vals['category_id']: raise osv.except_osv(_('Warning'),_("Cannot change the category of existing UoM '%s'.") % (uom.name,)) return super(product_uom, self).write(cr, uid, ids, vals, context=context) diff --git a/addons/product/product_data.xml b/addons/product/product_data.xml index fc085aab922..0233a5a4788 100644 --- a/addons/product/product_data.xml +++ b/addons/product/product_data.xml @@ -23,8 +23,8 @@ <!-- - Resource: product.uom - --> + Resource: product.uom + --> <record id="product_uom_unit" model="product.uom"> <field name="category_id" ref="product_uom_categ_unit"/> <field name="name">PCE</field> @@ -57,7 +57,7 @@ <field name="category_id" ref="product_uom_categ_kgm"/> <!-- 'tonne' is the most common spelling in english-speaking countries, the alternative is 'metric ton' in the US, abbreviated as 'mt' --> - <field name="name">tonne</field> + <field name="name">t</field> <field name="factor" eval="0.001"/> <field name="uom_type">bigger</field> </record> diff --git a/addons/product/product_view.xml b/addons/product/product_view.xml index ac9ae8c5ec3..6d9483f81ab 100644 --- a/addons/product/product_view.xml +++ b/addons/product/product_view.xml @@ -194,53 +194,42 @@ </form> </field> </record> - + <!-- Product Kanban View --> <record model="ir.ui.view" id="product_kanban_view"> <field name="name">Product Kanban</field> <field name="model">product.product</field> <field name="type">kanban</field> <field name="arch" type="xml"> - <kanban default_group_by="type"> + <kanban> <field name="color"/> <field name="type"/> <field name="product_image"/> <field name="list_price"/> <templates> <t t-name="kanban-box"> - <t t-set="color" t-value="kanban_color(record.color.raw_value || record.type.raw_value)"/> - <div t-att-class="color + (record.color.raw_value == 1 ? ' oe_kanban_color_alert' : '')"> + <t t-if="record.type.raw_value!='service' and record.qty_available.raw_value lte 0" t-set="border">oe_kanban_color_red</t> + <div t-attf-class="#{kanban_color(record.color.raw_value)} #{border || ''}"> <div class="oe_kanban_box oe_kanban_color_border"> - <div class="oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle oe_kanban_title1"> + <div class="oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle oe_kanban_title"> <field name="name"/> </div> <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger"> - <table class="oe_kanban_table"> - <tr> - <td valign="top" width="48"> - <img t-att-src="kanban_image('product.product', 'product_image', record.id.value)" width="48"/> - </td> - <td> - <div class="oe_kanban_title2"> - <t t-if="record.type.raw_value=='service'">No Stock</t> - <t t-if="record.type.raw_value!='service'"> - <div><field name="qty_available"/> On Hand , <field name="virtual_available"/> Available</div> - <div> - <t t-if="record.list_price.raw_value!=0">Public Price : <field name="lst_price"/> ,</t> - Cost : <field name="standard_price"/> - </div> - </t> - </div> - </td> - </tr> - </table> + <img t-att-src="kanban_image('product.product', 'product_image', record.id.value)" width="48" style="float: left; padding: 0 4px 4px 0"/> + <div t-if="record.type.raw_value == 'service'">No Stock</div> + <t t-if="record.type.raw_value != 'service'"> + <div>Stock: <field name="qty_available"/> on hand, <field name="virtual_available"/> available</div> + <div t-if="record.list_price.raw_value != 0">Public Price: <field name="lst_price"/></div> + <div>Cost : <field name="standard_price"/></div> + </t> + <div class="oe_kanban_clear"/> </div> <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick"> <div class="oe_kanban_left"> <a string="Edit" icon="gtk-edit" type="edit"/> <a string="Change Color" icon="color-picker" type="color" name="color"/> - </div> - <br class="oe_kanban_clear"/> + </div> + <div class="oe_kanban_clear"/> </div> </div> </div> diff --git a/addons/product_manufacturer/__openerp__.py b/addons/product_manufacturer/__openerp__.py index d04d0724137..3b60b21979c 100644 --- a/addons/product_manufacturer/__openerp__.py +++ b/addons/product_manufacturer/__openerp__.py @@ -21,7 +21,7 @@ "name" : "Products Attributes & Manufacturers", "version" : "1.0", "author" : "OpenERP SA", - "category" : "Hidden", + 'category': 'Purchase Management', 'complexity': "easy", "depends" : ["stock"], "init_xml" : [], diff --git a/addons/product_margin/__openerp__.py b/addons/product_margin/__openerp__.py index b412e8b63eb..e484ddddff2 100644 --- a/addons/product_margin/__openerp__.py +++ b/addons/product_margin/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Margins in Product', + 'name': 'Margins by Products', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Sales Management', 'description': """ Adds a reporting menu in products that computes sales, purchases, margins and other interesting indicators based on invoices. ============================================================================================================================= diff --git a/addons/product_visible_discount/__openerp__.py b/addons/product_visible_discount/__openerp__.py index d05c3a82c11..c49565f8e29 100644 --- a/addons/product_visible_discount/__openerp__.py +++ b/addons/product_visible_discount/__openerp__.py @@ -18,10 +18,10 @@ # ############################################################################## { - "name": "Visible Discount", + "name": "Visible Discounts on SO", "version": "1.0", "author": "OpenERP SA", - "category": "Hidden", + 'category': 'Sales Management', 'complexity': "easy", "description": """ This module lets you calculate discounts on Sale Order lines and Invoice lines base on the partner's pricelist. diff --git a/addons/profile_tools/__openerp__.py b/addons/profile_tools/__openerp__.py index bd8790d1496..3036b038d3f 100644 --- a/addons/profile_tools/__openerp__.py +++ b/addons/profile_tools/__openerp__.py @@ -21,11 +21,11 @@ { - "name" : "Miscellaneous Hidden", + "name" : "Miscellaneous Tools", "version" : "1.0", "depends" : ["base", "base_setup"], "author" : "OpenERP SA", - "category" : "Hidden", + "category" : "Tools", 'complexity': "easy", "description": """ Installer for extra Hidden like lunch, survey, idea, share, etc. diff --git a/addons/project/__openerp__.py b/addons/project/__openerp__.py index 9132636b56f..e23ce653702 100644 --- a/addons/project/__openerp__.py +++ b/addons/project/__openerp__.py @@ -55,7 +55,8 @@ Dashboard for project members that includes: "res_partner_view.xml", "report/project_report_view.xml", "board_project_view.xml", - 'board_project_manager_view.xml' + 'board_project_manager_view.xml', + 'report/project_cumulative.xml' ], 'demo_xml': [ 'project_demo.xml', @@ -66,6 +67,7 @@ Dashboard for project members that includes: ], 'installable': True, 'active': False, + 'application': True, 'certificate': '0075116868317', } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project/board_project_manager_view.xml b/addons/project/board_project_manager_view.xml index b9ff6331db0..d9340eefb3a 100644 --- a/addons/project/board_project_manager_view.xml +++ b/addons/project/board_project_manager_view.xml @@ -2,20 +2,23 @@ <openerp> <data> - <!-- - Board for project managers - --> + <!-- Board for project managers --> + <act_window - domain="[('user_id', '=', uid)]" - id="act_my_project" name="My projects" - res_model="project.project" view_mode="tree,form" + id="act_my_project" + name="My projects" + res_model="project.project" + domain=""[('user_id', '=', uid)]"" + view_mode="tree,form" view_type="form"/> + <act_window id="act_my_account" name="My accounts to invoice" res_model="account.analytic.account" - domain="[('user_id','=',uid),('state','<>','close')]" + domain=""[('user_id','=',uid),('state','<>','close')]"" view_mode="tree,form" view_type="form"/> + </data> </openerp> diff --git a/addons/project/board_project_view.xml b/addons/project/board_project_view.xml index a58557c94ba..cdd8894aabe 100644 --- a/addons/project/board_project_view.xml +++ b/addons/project/board_project_view.xml @@ -81,9 +81,9 @@ <field name="type">form</field> <field name="arch" type="xml"> <form string="My Board"> - <board style="1-2"> + <board style="2-1"> <column> - <action name="%(my_open_tasks_action)d" string="My Open Tasks"/> + <action name="%(my_open_tasks_action)d" string="My Open Tasks" creatable="true"/> <action name="%(action_view_delegate_task_tree)d" string="My Delegated Tasks"/> </column> <column> diff --git a/addons/project/company.py b/addons/project/company.py index 0967d130737..6400450cd3e 100644 --- a/addons/project/company.py +++ b/addons/project/company.py @@ -33,3 +33,5 @@ class res_company(osv.osv): } res_company() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project/project.py b/addons/project/project.py index 589d3ebde97..5c234cf5e26 100644 --- a/addons/project/project.py +++ b/addons/project/project.py @@ -439,10 +439,11 @@ class task(osv.osv): if len(project_ids) == 1: return project_ids[0][0] - def _read_group_type_id(self, cr, uid, ids, domain, read_group_order=None, context=None): + def _read_group_type_id(self, cr, uid, ids, domain, read_group_order=None, access_rights_uid=None, context=None): stage_obj = self.pool.get('project.task.type') project_id = self._resolve_project_id_from_context(cr, uid, context=context) order = stage_obj._order + access_rights_uid = access_rights_uid or uid if read_group_order == 'type_id desc': # lame way to allow reverting search, should just work in the trivial case order = '%s desc' % order @@ -450,24 +451,25 @@ class task(osv.osv): domain = ['|', ('id','in',ids), ('project_ids','in',project_id)] else: domain = ['|', ('id','in',ids), ('project_default','=',1)] - stage_ids = stage_obj.search(cr, uid, domain, order=order, context=context) - result = stage_obj.name_get(cr, uid, stage_ids, context=context) + stage_ids = stage_obj._search(cr, uid, domain, order=order, access_rights_uid=access_rights_uid, context=context) + result = stage_obj.name_get(cr, access_rights_uid, stage_ids, context=context) # restore order of the search result.sort(lambda x,y: cmp(stage_ids.index(x[0]), stage_ids.index(y[0]))) return result - def _read_group_user_id(self, cr, uid, ids, domain, read_group_order=None, context=None): + def _read_group_user_id(self, cr, uid, ids, domain, read_group_order=None, access_rights_uid=None, context=None): res_users = self.pool.get('res.users') project_id = self._resolve_project_id_from_context(cr, uid, context=context) + access_rights_uid = access_rights_uid or uid if project_id: - ids += self.pool.get('project.project').read(cr, uid, project_id, ['members'], context=context)['members'] + ids += self.pool.get('project.project').read(cr, access_rights_uid, project_id, ['members'], context=context)['members'] order = res_users._order # lame way to allow reverting search, should just work in the trivial case if read_group_order == 'user_id desc': order = '%s desc' % order # de-duplicate and apply search order - ids = res_users.search(cr, uid, [('id','in',ids)], order=order, context=context) - result = res_users.name_get(cr, uid, ids, context=context) + ids = res_users._search(cr, uid, [('id','in',ids)], order=order, access_rights_uid=access_rights_uid, context=context) + result = res_users.name_get(cr, access_rights_uid, ids, context=context) # restore order of the search result.sort(lambda x,y: cmp(ids.index(x[0]), ids.index(y[0]))) return result @@ -972,6 +974,24 @@ class task(osv.osv): def prev_type(self, cr, uid, ids, *args): return self._change_type(cr, uid, ids, False, *args) + def _store_history(self, cr, uid, ids, context=None): + for task in self.browse(cr, uid, ids, context=context): + self.pool.get('project.task.history').create(cr, uid, { + 'task_id': task.id, + 'remaining_hours': task.remaining_hours, + 'kanban_state': task.kanban_state, + 'type_id': task.type_id.id, + 'state': task.state, + 'user_id': task.user_id.id + + }, context=context) + return True + + def create(self, cr, uid, vals, context=None): + result = super(task, self).create(cr, uid, vals, context=context) + self._store_history(cr, uid, [result], context=context) + return result + # Overridden to reset the kanban_state to normal whenever # the stage (type_id) of the task changes. def write(self, cr, uid, ids, vals, context=None): @@ -983,8 +1003,12 @@ class task(osv.osv): for t in self.browse(cr, uid, ids, context=context): write_vals = vals_reset_kstate if t.type_id != new_stage else vals super(task,self).write(cr, uid, [t.id], write_vals, context=context) - return True - return super(task,self).write(cr, uid, ids, vals, context=context) + result = True + else: + result = super(task,self).write(cr, uid, ids, vals, context=context) + if ('type_id' in vals) or ('remaining_hours' in vals) or ('user_id' in vals) or ('state' in vals) or ('kanban_state' in vals): + self._store_history(cr, uid, ids, context=context) + return result def unlink(self, cr, uid, ids, context=None): if context == None: @@ -1082,4 +1106,91 @@ class account_analytic_account(osv.osv): account_analytic_account() -# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: +# +# Tasks History, used for cumulative flow charts (Lean/Agile) +# + +class project_task_history(osv.osv): + _name = 'project.task.history' + _description = 'History of Tasks' + _rec_name = 'task_id' + _log_access = False + def _get_date(self, cr, uid, ids, name, arg, context=None): + result = {} + for history in self.browse(cr, uid, ids, context=context): + if history.state in ('done','cancelled'): + result[history.id] = history.date + continue + cr.execute('''select + date + from + project_task_history + where + task_id=%s and + id>%s + order by id limit 1''', (history.task_id.id, history.id)) + res = cr.fetchone() + result[history.id] = res and res[0] or False + return result + + def _get_related_date(self, cr, uid, ids, context=None): + result = [] + for history in self.browse(cr, uid, ids, context=context): + cr.execute('''select + id + from + project_task_history + where + task_id=%s and + id<%s + order by id desc limit 1''', (history.task_id.id, history.id)) + res = cr.fetchone() + if res: + result.append(res[0]) + return result + + _columns = { + 'task_id': fields.many2one('project.task', 'Task', ondelete='cascade', required=True, select=True), + 'type_id': fields.many2one('project.task.type', 'Stage'), + 'state': fields.selection([('draft', 'New'),('open', 'In Progress'),('pending', 'Pending'), ('done', 'Done'), ('cancelled', 'Cancelled')], 'State'), + 'kanban_state': fields.selection([('normal', 'Normal'),('blocked', 'Blocked'),('done', 'Ready To Pull')], 'Kanban State', required=False), + 'date': fields.date('Date', select=True), + 'end_date': fields.function(_get_date, string='End Date', type="date", store={ + 'project.task.history': (_get_related_date, None, 20) + }), + 'remaining_hours': fields.float('Remaining Hours', digits=(16,2)), + 'user_id': fields.many2one('res.users', 'Responsible'), + } + _defaults = { + 'date': lambda s,c,u,ctx: time.strftime('%Y-%m-%d') + } +project_task_history() + +class project_task_history_cumulative(osv.osv): + _name = 'project.task.history.cumulative' + _table = 'project_task_history_cumulative' + _inherit = 'project.task.history' + _auto = False + _columns = { + 'end_date': fields.date('End Date'), + 'project_id': fields.related('task_id', 'project_id', string='Project', type='many2one', relation='project.project') + } + def init(self, cr): + cr.execute(""" CREATE OR REPLACE VIEW project_task_history_cumulative AS ( + SELECT + history.date::varchar||'-'||history.history_id::varchar as id, + history.date as end_date, + * + FROM ( + SELECT + id as history_id, + date+generate_series(0, CAST((coalesce(end_date,DATE 'tomorrow')::date - date)AS integer)-1) as date, + task_id, type_id, user_id, kanban_state, state, + remaining_hours + FROM + project_task_history + ) as history + ) + """) +project_task_history_cumulative() + diff --git a/addons/project/project_data.xml b/addons/project/project_data.xml index d78f208526a..a3bfe9be673 100644 --- a/addons/project/project_data.xml +++ b/addons/project/project_data.xml @@ -1,30 +1,12 @@ <?xml version="1.0" encoding="utf-8"?> <openerp> - <data> - - <!-- - Requests Links - --> - <record id="req_link_project" model="res.request.link"> - <field name="name">Project</field> - <field name="object">project.project</field> - </record> - - <record id="req_link_task" model="res.request.link"> - <field name="name">Project task</field> - <field name="object">project.task</field> - </record> - - <!-- - Resource: project.project - --> - + <data noupdate="1"> + <!-- Resource: project.project --> <record id="all_projects_account" model="account.analytic.account"> <field name="name">Projects</field> <field name="code">3</field> </record> - <function eval="('default',False,'parent_id', [('project.project', False)], all_projects_account, True, False, False, False, True)" id="parent_project_default_set" model="ir.values" name="set"/> - + <function id="parent_project_default_set" model="ir.values" name="set" eval="('default',False,'parent_id', [('project.project', False)], all_projects_account, True, False, False, False, True)"/> <!-- Task Stages --> <record id="project_tt_specification" model="project.task.type"> @@ -47,7 +29,5 @@ <field name="name">Deployment</field> <field name="project_default" eval="1"/> </record> - - </data> </openerp> diff --git a/addons/project/project_demo.xml b/addons/project/project_demo.xml index 7592d24a145..42da9fdefff 100644 --- a/addons/project/project_demo.xml +++ b/addons/project/project_demo.xml @@ -77,6 +77,7 @@ <field name="project_id" ref="project.project_integrate_openerp"/> <field name="name">Prepare Requirements Document</field> <field name="type_id" ref="project_tt_specification"/> + <field name="color">3</field> </record> <record id="project_task_2" model="project.task"> @@ -94,6 +95,7 @@ <field name="priority">2</field> <field name="project_id" ref="project.project_integrate_openerp"/> <field name="name">Design Use Cases</field> + <field name="date_deadline" eval="time.strftime('%Y-%m-24')"/> <field name="type_id" ref="project_tt_specification"/> </record> @@ -103,6 +105,9 @@ <field name="priority">2</field> <field name="project_id" ref="project.project_integrate_openerp"/> <field name="name">Budget Planning</field> + <field name="description">Use the account_budget module</field> + <field name="date_deadline" eval="time.strftime('%Y-%m-19')"/> + <field name="color">3</field> <field name="type_id" ref="project_tt_specification"/> </record> @@ -112,6 +117,9 @@ <field name="priority">2</field> <field name="project_id" ref="project.project_integrate_openerp"/> <field name="name">Quality Planning</field> + <field name="kanban_state">done</field> + <field name="priority">0</field> + <field name="date_deadline" eval="time.strftime('%Y-%m-%d')"/> <field name="type_id" ref="project_tt_specification"/> </record> @@ -139,6 +147,7 @@ <field name="priority">2</field> <field name="project_id" ref="project.project_integrate_openerp"/> <field name="name">Dataflow Design</field> + <field name="priority">0</field> <field name="type_id" ref="project_tt_specification"/> </record> @@ -157,6 +166,7 @@ <field name="priority">2</field> <field name="project_id" ref="project.project_integrate_openerp"/> <field name="name">Develop Module in Sale Management</field> + <field name="kanban_state">blocked</field> <field name="type_id" ref="project_tt_development"/> </record> @@ -220,6 +230,7 @@ <field name="priority">2</field> <field name="project_id" ref="project.project_integrate_openerp"/> <field name="name">Performance Tuning</field> + <field name="description">Test on Runbot</field> <field name="type_id" ref="project_tt_specification"/> </record> <function model="project.task" name="do_open" eval="[ref('project_task_16')]"/> @@ -329,6 +340,7 @@ <field name="priority">0</field> <field name="project_id" ref="project_project_21"/> <field name="name">Customer analysis + Architecture</field> + <field name="color">3</field> </record> <record id="project_task_186" model="project.task"> <field name="sequence">15</field> @@ -338,6 +350,7 @@ <field name="user_id" eval="False"/> <field name="project_id" ref="project_project_21"/> <field name="name">Internal testing + Software Install</field> + <field name="color">4</field> </record> <record id="project_task_188" model="project.task"> <field name="sequence">17</field> diff --git a/addons/project/project_view.xml b/addons/project/project_view.xml index 200d6e7d402..c8fe92f4194 100644 --- a/addons/project/project_view.xml +++ b/addons/project/project_view.xml @@ -34,6 +34,7 @@ <separator colspan="2" string="Performance"/> <field name="planned_hours" widget="float_time"/> <field name="effective_hours" widget="float_time" /> + <field name="resource_calendar_id"/> </group> <group col="2" colspan="2" name="misc"> <separator colspan="4" string="Miscelleanous"/> @@ -263,7 +264,7 @@ <button name="do_open" states="pending,draft" string="Start Task" type="object" icon="gtk-media-play"/> <button name="%(action_project_task_reevaluate)d" states="done,cancelled" string="Reactivate" type="action" icon="gtk-convert" context="{'button_reactivate':True}" /> <button name="do_pending" states="open" string="Pending" type="object" icon="gtk-media-pause"/> - <button groups="base.group_extended" name="%(action_project_task_delegate)d" states="pending,open,draft" string="Delegate" type="action" icon="gtk-sort-descending"/> + <button groups="base.group_extended" name="%(action_project_task_delegate)d" states="pending,open,draft" string="Delegate" type="action" icon="terp-personal"/> <button name="action_close" states="pending,open" string="Done" type="object" icon="terp-dialog-close"/> </group> </page> @@ -312,7 +313,7 @@ </field> </record> - + <!-- Project Task Kanban View --> <record model="ir.ui.view" id="view_task_kanban"> <field name="name">project.task.kanban</field> @@ -329,8 +330,14 @@ <field name="sequence"/> <field name="state"/> <field name="kanban_state"/> - <field name="project_id"/> + <field name="remaining_hours" sum="Remaining Time"/> + <field name="date_deadline"/> <templates> + <t t-name="task_details"> + <ul class="oe_kanban_tooltip" t-if="record.project_id.raw_value"> + <li><b>Project:</b> <field name="project_id"/></li> + </ul> + </t> <t t-name="kanban-box"> <t t-set="pad_url">http://pad.openerp.com/<t t-raw="_.str.underscored(_.str.trim(record.name.raw_value))"/></t> <t t-if="record.kanban_state.raw_value === 'blocked'" t-set="border">oe_kanban_color_red</t> @@ -338,44 +345,56 @@ <div t-attf-class="#{kanban_color(record.color.raw_value)} #{border || ''}"> <div class="oe_kanban_box oe_kanban_color_border"> <table class="oe_kanban_table oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle"> - <tr> - <td class="oe_kanban_title1" align="left" valign="middle"> - <a t-if="record.priority.raw_value == 1" icon="star-on" type="object" name="set_normal_priority"/> - <a t-if="record.priority.raw_value != 1" icon="star-off" type="object" name="set_high_priority" style="opacity:0.6; filter:alpha(opacity=60);"/> - <span t-att-title="record.project_id.value"><field name="name"/></span> - </td> - <td valign="top" width="22"> - <img t-att-src="kanban_gravatar(record.user_email.value, 22)" class="oe_kanban_gravatar" t-att-title="record.user_id.value"/> - </td> - </tr> + <tr> + <td align="left" valign="middle" width="16"> + <a t-if="record.priority.raw_value == 1" icon="star-on" type="object" name="set_normal_priority"/> + <a t-if="record.priority.raw_value != 1" icon="star-off" type="object" name="set_high_priority" style="opacity:0.6; filter:alpha(opacity=60);"/> + </td> + <td align="left" valign="middle" class="oe_kanban_title" tooltip="task_details"> + <field name="name"/> + </td> + <td valign="top" width="22"> + <img t-att-src="kanban_gravatar(record.user_email.value, 22)" class="oe_kanban_gravatar" t-att-title="record.user_id.value"/> + </td> + </tr> </table> <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger"> - <div> + <div class="oe_kanban_description"> <t t-esc="kanban_text_ellipsis(record.description.value, 160)"/> + <i t-if="record.date_deadline.raw_value"> + <t t-if="record.description.raw_value">, </t> + <field name="date_deadline"/> + </i> + <span class="oe_kanban_project_times" style="white-space: nowrap; padding-left: 5px;"> + <t t-set="hours" t-value="record.remaining_hours.raw_value"/> + <t t-set="times" t-value="[ + [1, (hours gte 1 and hours lt 2)] + ,[2, (hours gte 2 and hours lt 5)] + ,[5, (hours gte 5 and hours lt 10)] + ,[10, (hours gte 10)] + ]"/> + <t t-foreach="times" t-as="time" + ><a t-if="!time[1]" t-attf-data-name="set_remaining_time_#{time[0]}" + type="object" class="oe_kanban_button"><t t-esc="time[0]"/></a + ><b t-if="time[1]" class="oe_kanban_button oe_kanban_button_active"><t t-esc="Math.round(hours)"/></b + ></t> + </span> </div> - <div> - <i t-if="record.date_deadline.raw_value"><field name="date_deadline"/> ,</i> - <field name="remaining_hours" sum="Remaining Time"/> - <t t-set="style_bold">font-weight: bold</t> - <t t-set="hours" t-value="record.remaining_hours.raw_value"/> - <a name="set_remaining_time_1" type="object" t-att-style="(hours gte 1 and hours lt 2) ? style_bold : undefined"> [1]</a> - <a name="set_remaining_time_2" type="object" t-att-style="(hours gte 2 and hours lt 5) ? style_bold : undefined"> [2]</a> - <a name="set_remaining_time_5" type="object" t-att-style="(hours gte 5 and hours lt 10) ? style_bold : undefined"> [5]</a> - <a name="set_remaining_time_10" type="object" t-att-style="hours gte 10 ? style_bold : undefined"> [10]</a> - </div> - <br class="oe_kanban_clear"/> + <div class="oe_kanban_clear"/> </div> <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick"> <div class="oe_kanban_left"> <a string="Edit" icon="gtk-edit" type="edit"/> <a string="Change Color" icon="color-picker" type="color" name="color"/> + <a name="%(action_project_task_delegate)d" states="pending,open,draft" string="Delegate" type="action" icon="terp-personal"/> + <a name="action_close" states="draft,pending,open" string="Done" type="object" icon="terp-dialog-close"/> </div> <div class="oe_kanban_right"> - <a name="set_kanban_state_blocked" string="Block" kanban_states="normal,done" type="object" icon="gtk-media-pause"/> + <a name="set_kanban_state_blocked" string="Mark as Blocked" kanban_states="normal,done" type="object" icon="kanban-stop"/> <a name="set_kanban_state_normal" string="Normal" kanban_states="blocked,done" type="object" icon="gtk-media-play"/> - <a name="set_kanban_state_done" string="Done" kanban_states="blocked,normal" type="object" icon="gtk-apply"/> + <a name="set_kanban_state_done" string="Done" kanban_states="blocked,normal" type="object" icon="kanban-apply"/> </div> - <br class="oe_kanban_clear"/> + <div class="oe_kanban_clear"/> </div> </div> </div> @@ -415,7 +434,7 @@ <field name="progress" widget="progressbar" invisible="context.get('set_visible',False)"/> <field name="state" invisible="context.get('set_visible',False)"/> <button name="do_open" states="pending,draft,done,cancelled" string="Start Task" type="object" icon="gtk-media-play" help="For changing to open state" invisible="context.get('set_visible',False)"/> - <button groups="base.group_extended" name="%(action_project_task_delegate)d" states="pending,open,draft" string="Delegate" type="action" icon="gtk-sort-descending" help="For changing to delegate state"/> + <button groups="base.group_extended" name="%(action_project_task_delegate)d" states="pending,open,draft" string="Delegate" type="action" icon="terp-personal" help="For changing to delegate state"/> <button name="action_close" states="draft,pending,open" string="Done" type="object" icon="terp-dialog-close" help="For changing to done state"/> </tree> </field> @@ -440,10 +459,7 @@ <field name="type">gantt</field> <field eval="2" name="priority"/> <field name="arch" type="xml"> - <gantt color="user_id" date_start="date_start" date_stop="date_end" string="Tasks"> - <level object="project.project" link="project_id" domain="[]"> - <field name="name"/> - </level> + <gantt color="user_id" date_start="date_start" date_stop="date_end" string="Tasks" default_group_by="project_id,user_id"> </gantt> </field> </record> @@ -510,13 +526,23 @@ <field name="name">Tasks</field> <field name="res_model">project.task</field> <field name="view_type">form</field> - <field name="view_mode">tree,form,calendar,gantt,graph,kanban</field> + <field name="view_mode">kanban,tree,form,calendar,gantt,graph</field> <field eval="False" name="filter"/> - <field name="view_id" ref="view_task_tree2"/> - <field name="context">{"search_default_draft": 1, "search_default_open":1}</field> + <field name="view_id" eval="False"/> + <field name="context">{"search_default_draft": 1, "search_default_open":1, "search_default_project_id": project_id}</field> <field name="search_view_id" ref="view_task_search_form"/> <field name="help">A task represents a work that has to be done. Each user works in his own list of tasks where he can record his task work in hours. He can work and close the task itself or delegate it to another user. If you delegate a task to another user, you get a new task in pending state, which will be reopened when you have to review the work achieved. If you install the project_timesheet module, task work can be invoiced based on the project configuration. With the project_mrp module, sales orders can create tasks automatically when they are confirmed.</field> </record> + <record id="open_view_task_list_kanban" model="ir.actions.act_window.view"> + <field name="sequence" eval="0"/> + <field name="view_mode">kanban</field> + <field name="act_window_id" ref="action_view_task"/> + </record> + <record id="open_view_task_list_tree" model="ir.actions.act_window.view"> + <field name="sequence" eval="1"/> + <field name="view_mode">tree</field> + <field name="act_window_id" ref="action_view_task"/> + </record> <menuitem action="action_view_task" id="menu_action_view_task" parent="project.menu_project_management" sequence="3"/> diff --git a/addons/project/report/project_cumulative.xml b/addons/project/report/project_cumulative.xml new file mode 100644 index 00000000000..aff90aea94e --- /dev/null +++ b/addons/project/report/project_cumulative.xml @@ -0,0 +1,81 @@ +<?xml version="1.0" encoding="utf-8"?> +<openerp> + <data> + + <record id="view_task_history_tree" model="ir.ui.view"> + <field name="name">project.task.history.cumulative.tree</field> + <field name="model">project.task.history.cumulative</field> + <field name="type">tree</field> + <field name="arch" type="xml"> + <tree string="Tasks's Cumulative Flow"> + <field name="date"/> + <field name="project_id"/> + <field name="task_id"/> + <field name="type_id"/> + <field name="user_id"/> + <field name="remaining_hours"/> + <field name="kanban_state"/> + <field name="state"/> + </tree> + </field> + </record> + <record id="view_task_history_graph" model="ir.ui.view"> + <field name="name">project.task.history.cumulative.graph</field> + <field name="model">project.task.history.cumulative</field> + <field name="type">graph</field> + <field name="arch" type="xml"> + <graph string="Project Tasks" type="bar"> + <field name="date"/> + <field name="remaining_hours" operator="+"/> + <field name="type_id" group="True"/> + </graph> + </field> + </record> + + <record id="view_task_history_search" model="ir.ui.view"> + <field name="name">project.task.history.cumulative.search</field> + <field name="model">project.task.history.cumulative</field> + <field name="type">search</field> + <field name="arch" type="xml"> + <search string="Task's Cumulative Flow"> + <group> + <filter name="open" string="In Progress" domain="[('state','in',('open','draft'))]" help="In Progress Tasks" icon="terp-camera_test"/> + <filter string="Pending" domain="[('state','=','pending')]" context="{'show_delegated':False}" help="Pending Tasks" icon="terp-gtk-media-pause"/> + <separator orientation="vertical"/> + <filter name="kanban_blocked" string="Blocked" domain="[('kanban_state','=','blocked')]" icon="terp-gtk-media-pause"/> + <filter name="kanban_ready" string="Ready" domain="[('kanban_state','=','done')]" icon="terp-camera_test"/> + <separator orientation="vertical"/> + <filter string="Month" icon="terp-go-month" name="this_month" + domain="[('date','<=',(datetime.date.today()+relativedelta(day=31)).strftime('%%Y-%%m-%%d')),('date','>=',(datetime.date.today()-relativedelta(day=1)).strftime('%%Y-%%m-%%d'))]"/> + <filter icon="terp-go-month" string="Month-1" name="month1" + domain="[('date','<=', (datetime.date.today() - relativedelta(day=31, months=1)).strftime('%%Y-%%m-%%d')),('date','>=',(datetime.date.today() - relativedelta(day=1,months=1)).strftime('%%Y-%%m-%%d'))]"/> + <filter icon="terp-go-month" string="Month-2" name="month2" + domain="[('date','<=', (datetime.date.today() - relativedelta(day=31, months=2)).strftime('%%Y-%%m-%%d')),('date','>=',(datetime.date.today() - relativedelta(day=1,months=2)).strftime('%%Y-%%m-%%d'))]"/> + <separator orientation="vertical"/> + <field name="project_id"> + <filter domain="[('project_id.user_id','=',uid)]" help="My Projects" icon="terp-personal"/> + </field> + <field name="user_id"> + <filter domain="[('user_id','=',uid)]" help="My Tasks" icon="terp-personal" /> + <filter domain="[('user_id','=',False)]" help="Unassigned Tasks" icon="terp-personal-" /> + </field> + </group> + </search> + </field> + </record> + + <record id="action_view_task_history_cumulative" model="ir.actions.act_window"> + <field name="name">Cumulative Flow</field> + <field name="res_model">project.task.history.cumulative</field> + <field name="view_type">form</field> + <field name="view_mode">graph,tree</field> + <field eval="False" name="filter"/> + <field name="context">{"search_default_open":1, "search_default_this_month": 1}</field> + </record> + <menuitem action="action_view_task_history_cumulative" + id="menu_action_view_task_history_cumulative" + parent="project_report_task" /> + + + </data> +</openerp> diff --git a/addons/project/report/project_report.py b/addons/project/report/project_report.py index fb1b0b030d6..1b66361854b 100644 --- a/addons/project/report/project_report.py +++ b/addons/project/report/project_report.py @@ -91,7 +91,7 @@ class report_project_task_user(osv.osv): (extract('epoch' from (t.date_start-t.create_date)))/(3600*24) as opening_days, abs((extract('epoch' from (t.date_deadline-t.date_end)))/(3600*24)) as delay_endings_days FROM project_task t - + WHERE t.active = 'true' GROUP BY t.id, remaining_hours, diff --git a/addons/project/report/project_report_view.xml b/addons/project/report/project_report_view.xml index cfa667c7590..bf828d6b231 100644 --- a/addons/project/report/project_report_view.xml +++ b/addons/project/report/project_report_view.xml @@ -5,6 +5,8 @@ <menuitem id="base.menu_project_report" name="Reporting" groups="project.group_project_manager" parent="base.menu_main_pm" sequence="50"/> + <menuitem id="project_report_task" name="Tasks" + parent="base.menu_project_report"/> <record id="view_task_project_user_tree" model="ir.ui.view"> <field name="name">report.project.task.user.tree</field> @@ -152,7 +154,7 @@ <field name="help">This report allows you to analyse the performance of your projects and users. You can analyse the quantities of tasks, the hours spent compared to the planned hours, the average number of days to open or close a task, etc.</field> </record> - <menuitem action="action_project_task_user_tree" id="menu_project_task_user_tree" parent="base.menu_project_report"/> + <menuitem action="action_project_task_user_tree" id="menu_project_task_user_tree" parent="project_report_task"/> <!-- Views and action for project dashboard --> <record id="view_project_vs_remaining_hours_tree" model="ir.ui.view"> diff --git a/addons/project/res_partner_view.xml b/addons/project/res_partner_view.xml index dc0226ba50e..31c88377ddb 100644 --- a/addons/project/res_partner_view.xml +++ b/addons/project/res_partner_view.xml @@ -25,6 +25,9 @@ <tree string="Tasks" editable="bottom"> <field name="name"/> <field name="user_id"/> + <field name="date_deadline"/> + <button name="do_open" states="pending,draft,done,cancelled" string="Start Task" type="object" icon="gtk-media-play" help="For changing to open state" invisible="context.get('set_visible',False)"/> + <button name="action_close" states="draft,pending,open" string="Done" type="object" icon="terp-dialog-close" help="For changing to done state"/> </tree> </field> </page> diff --git a/addons/project/security/ir.model.access.csv b/addons/project/security/ir.model.access.csv index 659948bc4d0..955a6ef0c97 100644 --- a/addons/project/security/ir.model.access.csv +++ b/addons/project/security/ir.model.access.csv @@ -22,3 +22,5 @@ "access_project_task_sale_user","project.task salesman","model_project_task","base.group_sale_salesman",1,0,0,0 "access_project_project_sale_user","project.project salesman","model_project_project","base.group_sale_salesman",1,0,0,0 "access_account_analytic_line_project","account.analytic.line project","analytic.model_account_analytic_line","project.group_project_manager",1,1,1,1 +"access_project_task_history","project.task.history project","project.model_project_task_history","project.group_project_user",1,1,1,0 +"access_project_task_history_cumulative","project.task.history project","project.model_project_task_history_cumulative","project.group_project_manager",1,0,0,0 diff --git a/addons/project/wizard/project_task_delegate.py b/addons/project/wizard/project_task_delegate.py index 0b4457d5e7f..efadc3f124b 100644 --- a/addons/project/wizard/project_task_delegate.py +++ b/addons/project/wizard/project_task_delegate.py @@ -133,3 +133,5 @@ class project_task_delegate(osv.osv_memory): return action project_task_delegate() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project/wizard/project_task_reevaluate.py b/addons/project/wizard/project_task_reevaluate.py index ce3e728a98e..382c9d64361 100644 --- a/addons/project/wizard/project_task_reevaluate.py +++ b/addons/project/wizard/project_task_reevaluate.py @@ -81,3 +81,5 @@ class project_task_reevaluate(osv.osv_memory): task_pool.do_reopen(cr, uid, [task_id], context=context) return {'type': 'ir.actions.act_window_close'} project_task_reevaluate() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project_caldav/__openerp__.py b/addons/project_caldav/__openerp__.py index 37ecbb1c910..6055a1f9f3d 100644 --- a/addons/project_caldav/__openerp__.py +++ b/addons/project_caldav/__openerp__.py @@ -23,7 +23,7 @@ "name": "CalDAV for Task Management", "version": "1.1", "author": "OpenERP SA", - "category": "Hidden", + "category": "Project Management", "description": """ Synchronization between Project Task and Caldav Vtodo. ====================================================== @@ -41,3 +41,5 @@ on a remote server. "certificate" : "001114200456808204637", 'images': ['images/project_tasks_caldav.jpeg','images/project_tasks_caldav_attendees.jpeg','images/project_caldav_calendars.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project_gtd/__openerp__.py b/addons/project_gtd/__openerp__.py index 761b2b44708..61ed601829f 100644 --- a/addons/project_gtd/__openerp__.py +++ b/addons/project_gtd/__openerp__.py @@ -21,7 +21,7 @@ { - 'name': 'Todo List based on the GTD methodology', + 'name': 'Todo Lists', 'version': '1.0', 'category': 'Project Management', 'complexity': "easy", @@ -60,6 +60,7 @@ performing those tasks. 'test/gtd_test.yml' ], 'installable': True, + 'application': True, 'active': False, 'certificate': '0043525236301', } diff --git a/addons/project_issue/__openerp__.py b/addons/project_issue/__openerp__.py index e77499df3d0..215e4971bf2 100644 --- a/addons/project_issue/__openerp__.py +++ b/addons/project_issue/__openerp__.py @@ -59,6 +59,7 @@ and decide on their status as they evolve. ], 'installable': True, 'active': False, + 'application': True, 'certificate' : '001236490750848623845', } diff --git a/addons/project_issue/board_project_issue_view.xml b/addons/project_issue/board_project_issue_view.xml index 2d30b2673b4..216f01eba9f 100644 --- a/addons/project_issue/board_project_issue_view.xml +++ b/addons/project_issue/board_project_issue_view.xml @@ -138,6 +138,7 @@ <field name="view_type">form</field> <field name="view_mode">graph,tree,form,</field> <field name="domain">[('state','=','open'),('user_id','=',uid)]</field> + <field name="context">{'default_user_id': uid}</field> <field name="view_id" ref="view_my_open_project_issue_graph"/> </record> <record id="board_my_project_issue_form" model="ir.ui.view"> diff --git a/addons/project_issue/project_issue.py b/addons/project_issue/project_issue.py index 6973002be23..22cc02b8645 100644 --- a/addons/project_issue/project_issue.py +++ b/addons/project_issue/project_issue.py @@ -312,7 +312,7 @@ class project_issue(crm.crm_case, osv.osv): 'name': bug.name, 'partner_id': bug.partner_id.id, 'description':bug.description, - 'date': bug.date, + 'date_deadline': bug.date, 'project_id': bug.project_id.id, 'priority': bug.priority, 'user_id': bug.user_id.id, @@ -487,7 +487,6 @@ project_issue() class project(osv.osv): _inherit = "project.project" _columns = { - 'resource_calendar_id' : fields.many2one('resource.calendar', 'Working Time', help="Timetable working hours to adjust the gantt diagram report", states={'close':[('readonly',True)], 'cancelled':[('readonly',True)]}), 'project_escalation_id' : fields.many2one('project.project','Project Escalation', help='If any issue is escalated from the current Project, it will be listed under the project selected here.', states={'close':[('readonly',True)], 'cancelled':[('readonly',True)]}), 'reply_to' : fields.char('Reply-To Email Address', size=256) } diff --git a/addons/project_issue/project_issue_demo.xml b/addons/project_issue/project_issue_demo.xml index 12ff265b1e9..f1c7dd5eb4d 100644 --- a/addons/project_issue/project_issue_demo.xml +++ b/addons/project_issue/project_issue_demo.xml @@ -16,6 +16,7 @@ <field eval="15.0" name="duration"/> <field eval=""Bug in Accounts module"" name="name"/> <field eval=""agr@agrolait.com"" name="email_from"/> + <field name="type_id" ref="project.project_tt_specification"/> </record> <record id="crm_case_programnotgivingproperoutput0" model="project.issue"> @@ -31,6 +32,7 @@ <field name="categ_id" ref="bug_categ"/> <field eval=""Program not giving proper output"" name="name"/> <field name="project_id" ref="project.project_project_22"/> + <field name="type_id" ref="project.project_tt_specification"/> </record> <record id="crm_case_outputincorrect0" model="project.issue"> @@ -45,6 +47,7 @@ <field name="categ_id" ref="bug_categ"/> <field name="project_id" ref="project.project_project_23"/> <field eval=""Output incorrect"" name="name"/> + <field name="type_id" ref="project.project_tt_development"/> </record> <record id="crm_case_problemloadingpage0" model="project.issue"> @@ -60,6 +63,7 @@ <field name="categ_id" ref="bug_categ"/> <field name="project_id" ref="project.project_project_22"/> <field eval=""Problem loading page"" name="name"/> + <field name="type_id" ref="project.project_tt_testing"/> </record> <record id="crm_case_pagenotfound0" model="project.issue"> @@ -74,6 +78,7 @@ <field name="categ_id" ref="bug_categ"/> <field name="project_id" ref="project.project_project_22"/> <field eval=""Page not Found"" name="name"/> + <field name="type_id" ref="project.project_tt_development"/> </record> <record id="crm_case_programmingerror0" model="project.issue"> @@ -89,6 +94,7 @@ <field name="categ_id" ref="bug_categ"/> <field name="project_id" ref="project.project_project_22"/> <field eval=""Programming Error"" name="name"/> + <field name="type_id" ref="project.project_tt_testing"/> </record> <record id="crm_case_logicalerrorinprogram0" model="project.issue"> @@ -104,6 +110,7 @@ <field name="categ_id" ref="bug_categ"/> <field name="project_id" ref="project.project_project_9"/> <field eval=""Logical Error in Program"" name="name"/> + <field name="type_id" ref="project.project_tt_testing"/> </record> <record id="crm_case_constrainterror0" model="project.issue"> @@ -119,6 +126,7 @@ <field name="categ_id" ref="bug_categ"/> <field name="project_id" ref="project.project_project_9"/> <field eval=""Constraint Error"" name="name"/> + <field name="type_id" ref="project.project_tt_testing"/> </record> <record id="crm_case_errorinprogram0" model="project.issue"> @@ -133,6 +141,7 @@ <field name="categ_id" ref="feature_request_categ"/> <field name="project_id" ref="project.project_project_22"/> <field eval=""Error in Program"" name="name"/> + <field name="type_id" ref="project.project_tt_testing"/> </record> <record id="crm_case_patcheserrorinprogram0" model="project.issue"> @@ -148,6 +157,7 @@ <field name="categ_id" ref="feature_request_categ"/> <field name="project_id" ref="project.project_project_9"/> <field eval=""Patches Error in Program"" name="name"/> + <field name="type_id" ref="project.project_tt_testing"/> </record> <record id="crm_case_newfeaturestobeadded0" model="project.issue"> @@ -163,6 +173,7 @@ <field name="categ_id" ref="feature_request_categ"/> <field name="project_id" ref="project.project_project_21"/> <field eval=""New Features To Be Added"" name="name"/> + <field name="type_id" ref="project.project_tt_merge"/> </record> <record id="crm_case_addmenustothemodule0" model="project.issue"> @@ -179,6 +190,7 @@ <field name="project_id" ref="project.project_project_21"/> <field eval=""Add menus to the module"" name="name"/> <field eval=""info@opensides.be"" name="email_from"/> + <field name="type_id" ref="project.project_tt_development"/> </record> <record id="crm_case_includeattendancesheetinproject0" model="project.issue"> @@ -195,6 +207,7 @@ <field name="project_id" ref="project.project_project_9"/> <field eval=""Include Attendance sheet in Project"" name="name"/> <field eval=""contact@tecsas.fr"" name="email_from"/> + <field name="type_id" ref="project.project_tt_development"/> </record> <record id="crm_case_createnewobject0" model="project.issue"> @@ -210,6 +223,7 @@ <field name="categ_id" ref="feature_request_categ"/> <field name="project_id" ref="project.project_project_22"/> <field eval=""Create new object"" name="name"/> + <field name="type_id" ref="project.project_tt_specification"/> </record> <record id="crm_case_improvereportsinhrms0" model="project.issue"> @@ -225,6 +239,7 @@ <field name="categ_id" ref="feature_request_categ"/> <field name="project_id" ref="project.project_project_22"/> <field eval=""Improve Reports in HRMS"" name="name"/> + <field name="type_id" ref="project.project_tt_development"/> </record> <record id="crm_case_improvereportsinpms0" model="project.issue"> @@ -240,6 +255,7 @@ <field name="categ_id" ref="feature_request_categ"/> <field name="project_id" ref="project.project_project_22"/> <field eval=""Improve Reports in PMS"" name="name"/> + <field name="type_id" ref="project.project_tt_specification"/> </record> </data> diff --git a/addons/project_issue/project_issue_menu.xml b/addons/project_issue/project_issue_menu.xml index 5830fcb37fb..9d88418720b 100644 --- a/addons/project_issue/project_issue_menu.xml +++ b/addons/project_issue/project_issue_menu.xml @@ -8,13 +8,19 @@ <field name="name">Issues</field> <field name="res_model">project.issue</field> <field name="view_type">form</field> - <field name="view_mode">tree,calendar,kanban</field> - <field name="view_id" ref="project_issue_tree_view"/> + <field name="view_mode">kanban,tree,calendar</field> + <field name="view_id" eval="False"/> <field name="domain" eval=""/> <field name="context">{"search_default_user_id": uid, "search_default_draft": 1,"search_default_todo": 1, "search_default_project_id":project_id}</field> <field name="search_view_id" ref="view_project_issue_filter"/> <field name="help">Issues such as system bugs, customer complaints, and material breakdowns are collected here. You can define the stages assigned when solving the project issue (analysis, development, done). With the mailgateway module, issues can be integrated through an email address (example: support@mycompany.com)</field> - + </record> + + <record model="ir.actions.act_window.view" id="action_crm_tag_kanban_view0"> + <field name="sequence" eval="0"/> + <field name="view_mode">kanban</field> + <field name="view_id" ref="project_issue_kanban_view"/> + <field name="act_window_id" ref="project_issue_categ_act0"/> </record> <record model="ir.actions.act_window.view" id="action_crm_tag_tree_view0"> diff --git a/addons/project_issue/project_issue_view.xml b/addons/project_issue/project_issue_view.xml index 6bd0d208fd4..d50501279fd 100644 --- a/addons/project_issue/project_issue_view.xml +++ b/addons/project_issue/project_issue_view.xml @@ -40,7 +40,7 @@ <field name="view_type">form</field> <field name="view_id" ref="crm.crm_case_categ_tree-view"/> <field name="domain">[('object_id.model', '=', 'project.issue')]</field> - <field name="context">{'object_id':'project.issue'}</field> + <field name="context" eval="{'object_id': ref('model_project_issue')}"/> </record> <menuitem action="project_issue_categ_action" name="Categories" id="menu_project_issue_category_act" parent="menu_project_confi" /> @@ -96,7 +96,7 @@ <group colspan="4"> <field colspan="4" name="email_cc" string="Global CC" widget="url"/> </group> - <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1"> + <field name="message_ids" colspan="4" nolabel="1" mode="tree" readonly="1"> <tree string="History"> <field name="display_text" string="History Information"/> <field name="email_from" invisible="1"/> @@ -106,32 +106,6 @@ context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" icon="terp-mail-replied" type="action" /> </tree> - <form string="History"> - <group col="4" colspan="4"> - <field name="email_from"/> - <field name="date"/> - <field name="email_to" widget="char" size="512"/> - <field name="email_cc" widget="char" size="512"/> - <field name="subject" colspan="4" widget="char" size="512"/> - </group> - <notebook colspan="4"> - <page string="Details"> - <group attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="body_text" colspan="4" nolabel="1" height="250"/> - <button colspan="4" string="Reply" - name="%(mail.action_email_compose_message_wizard)d" - context="{'mail.compose.message.mode':'reply', 'message_id':active_id}" - icon="terp-mail-replied" type="action"/> - </group> - <group attrs="{'invisible': [('email_from', '!=', False)]}"> - <field name="display_text" colspan="4" nolabel="1" height="250"/> - </group> - </page> - <page string="Attachments"> - <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/> - </page> - </notebook> - </form> </field> <separator colspan="4"/> <button string="Add Internal Note" @@ -274,44 +248,36 @@ <field name="state"/> <field name="priority"/> <field name="user_email"/> + <field name="user_id"/> <templates> <t t-name="kanban-box"> <t t-set="color" t-value="kanban_color(record.color.raw_value || record.state.raw_value)"/> <div t-att-class="color + (record.priority.raw_value == 1 ? ' oe_kanban_color_alert' : '')"> <div class="oe_kanban_box oe_kanban_color_border"> - <div class="oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle"> - <table class="oe_kanban_table"> - <tr> - <td class="oe_kanban_title1" align="left" valign="middle"> - <a t-if="record.priority.raw_value == 1" icon="star-on" type="object" name="set_normal_priority" /> - <a t-if="record.priority.raw_value != 1" icon="star-off" type="object" name="set_high_priority" style="opacity:0.6; filter:alpha(opacity=60);"/> - <field name="name"/> - </td> - <td valign="top" width="22"> - <img t-att-src="kanban_gravatar(record.user_email.value, 22)" class="oe_kanban_gravatar"/> - </td> - </tr> - </table> - </div> + <table class="oe_kanban_table oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle"> + <tr> + <td align="left" valign="middle" width="16"> + <a t-if="record.priority.raw_value == 1" icon="star-on" type="object" name="set_normal_priority"/> + <a t-if="record.priority.raw_value != 1" icon="star-off" type="object" name="set_high_priority" style="opacity:0.6; filter:alpha(opacity=60);"/> + </td> + <td align="left" valign="middle" class="oe_kanban_title"> + <field name="name"/> + </td> + <td valign="top" width="22"> + <img t-att-src="kanban_gravatar(record.user_email.value, 22)" class="oe_kanban_gravatar" t-att-title="record.user_id.value"/> + </td> + </tr> + </table> <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger oe_kanban_color_border"> - <table class="oe_kanban_table"> - <tr> - <td> - <div class="oe_kanban_right oe_kanban_small"> - <field name="user_id"/> - </div> - <div class="oe_kanban_title2"> - <field name="partner_id"/> - </div> - <div class="oe_kanban_title3"> - <field name="project_id"/> - </div> - <div class="oe_kanban_title3"> - <i><field name="version_id"/></i> - </div> - </td> - </tr> - </table> + <div t-if="record.partner_id.raw_value"> + <field name="partner_id"/> + </div> + <div t-if="record.project_id.raw_value"> + <field name="project_id"/> + </div> + <div t-if="record.version_id.raw_value"> + <i><field name="version_id"/></i> + </div> </div> <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick"> <div class="oe_kanban_left"> @@ -323,11 +289,11 @@ <a string="Convert To Task" name="convert_issue_task" icon="gtk-index" type="object"/> </div> <div class="oe_kanban_right"> - <a name="case_open" string="Open" states="draft,pending" type="object" icon="lead-stage-won" /> - <a name="case_pending" string="Pending" states="draft,open" type="object" icon="lead-stage-pending"/> - <a name="case_close" string="Close" states="open,draft,pending" type="object" icon="lead-stage-lost"/> + <a name="case_open" string="Open" states="draft,pending" type="object" icon="kanban-apply" /> + <a name="case_pending" string="Pending" states="draft,open" type="object" icon="kanban-pause"/> + <a name="case_close" string="Close" states="open,draft,pending" type="object" icon="kanban-stop"/> </div> - <br class="oe_kanban_clear"/> + <div class="oe_kanban_clear"/> </div> </div> </div> @@ -398,19 +364,6 @@ # Project # ------------------------------------------------------ - <record id="project.view_project_resource_form1" model="ir.ui.view"> - <field name="name">Project Resource Calendar View</field> - <field name="model">project.project</field> - <field name="type">form</field> - <field name="inherit_id" ref="project.edit_project"/> - <field name="arch" type="xml"> - <field name="priority" position="after"> - <field name="resource_calendar_id"/> - </field> - - </field> - </record> - <record id="view_project_form_inherited" model="ir.ui.view"> <field name="name">project.project.form.inherited</field> <field name="model">project.project</field> diff --git a/addons/project_issue/report/project_issue_report.py b/addons/project_issue/report/project_issue_report.py index 36ce72f2a70..b550b5c47ce 100644 --- a/addons/project_issue/report/project_issue_report.py +++ b/addons/project_issue/report/project_issue_report.py @@ -104,7 +104,7 @@ class project_issue_report(osv.osv): FROM project_issue c - WHERE c.categ_id IN (select id from crm_case_categ where object_id in (select id from ir_model where model = 'project.issue')) + WHERE c.active= 'true' and c.categ_id IN (select id from crm_case_categ where object_id in (select id from ir_model where model = 'project.issue')) )""") project_issue_report() diff --git a/addons/project_issue/security/ir.model.access.csv b/addons/project_issue/security/ir.model.access.csv index 01afcb73b09..f5c39be7713 100644 --- a/addons/project_issue/security/ir.model.access.csv +++ b/addons/project_issue/security/ir.model.access.csv @@ -9,3 +9,4 @@ "access_resource_calendar_project_manager","resource.calendar.project.manager","resource.model_resource_calendar","project.group_project_manager",1,1,1,1 "access_project_issue_report_user","project.issue.report user","model_project_issue_report","project.group_project_user",1,0,0,0 "access_mail_message_issue_project_user","mail.message.user","mail.model_mail_message","project.group_project_user",1,1,1,0 +"access_crm_case_section","crm.case.section","crm.model_crm_case_section","project.group_project_user",1,0,0,0 diff --git a/addons/project_issue_sheet/__openerp__.py b/addons/project_issue_sheet/__openerp__.py index 972245533ad..0914be9d335 100644 --- a/addons/project_issue_sheet/__openerp__.py +++ b/addons/project_issue_sheet/__openerp__.py @@ -21,9 +21,9 @@ ############################################################################## { - 'name': 'Add the Timesheet support for Issue Management in Project Management', + 'name': 'Timesheet on Issues', 'version': '1.0', - 'category': 'Hidden/Link', + "category": "Project Management", 'description': """ This module adds the Timesheet support for the Issues/Bugs Management in Project. ================================================================================= diff --git a/addons/project_long_term/__openerp__.py b/addons/project_long_term/__openerp__.py index 9c6e1410b41..c884718db85 100644 --- a/addons/project_long_term/__openerp__.py +++ b/addons/project_long_term/__openerp__.py @@ -20,13 +20,13 @@ ############################################################################## { - "name": "Long Term Planning", + "name": "Long Term Projects", "version": "1.1", "author": "OpenERP SA", "website": "http://www.openerp.com", "category": "Project Management", "images": ["images/project_phase_form.jpeg","images/project_phases.jpeg", "images/resources_allocation.jpeg"], - "depends": ["resource", "project"], + "depends": ["project"], "description": """ Long Term Project management module that tracks planning, scheduling, resources allocation. =========================================================================================== @@ -53,6 +53,7 @@ Features "wizard/project_compute_tasks_view.xml", ], 'installable': True, + 'application': True, 'active': False, 'certificate': '001227470751077315069', } diff --git a/addons/project_long_term/project_long_term.py b/addons/project_long_term/project_long_term.py index f7e23c29a58..4ab1722336e 100644 --- a/addons/project_long_term/project_long_term.py +++ b/addons/project_long_term/project_long_term.py @@ -270,3 +270,5 @@ class project_task(osv.osv): 'phase_id': fields.many2one('project.phase', 'Project Phase'), } project_task() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project_long_term/project_long_term_data.xml b/addons/project_long_term/project_long_term_data.xml index 8da591f1337..ebc084668b7 100644 --- a/addons/project_long_term/project_long_term_data.xml +++ b/addons/project_long_term/project_long_term_data.xml @@ -1,16 +1,5 @@ <?xml version="1.0" encoding="utf-8"?> <openerp> <data> - - <!-- Requests Links --> - <record id="req_link_project" model="res.request.link"> - <field name="name">Project</field> - <field name="object">project.project</field> - </record> - <record id="req_link_task" model="res.request.link"> - <field name="name">Project task</field> - <field name="object">project.task</field> - </record> - </data> </openerp> diff --git a/addons/project_long_term/project_long_term_view.xml b/addons/project_long_term/project_long_term_view.xml index cdeb0a0d63d..37a9e8f154b 100644 --- a/addons/project_long_term/project_long_term_view.xml +++ b/addons/project_long_term/project_long_term_view.xml @@ -274,23 +274,6 @@ # ------------------------------------------------------ - # Project - # ------------------------------------------------------ - - <record id="project.view_project_user_form1" model="ir.ui.view"> - <field name="name">Project Resource Calendar View</field> - <field name="model">project.project</field> - <field name="type">form</field> - <field name="inherit_id" ref="project.edit_project"/> - <field name="arch" type="xml"> - <field name="effective_hours" position="after"> - <field name="resource_calendar_id"/> - </field> - - </field> - </record> - - # ------------------------------------------------------ # Project Task # ------------------------------------------------------ diff --git a/addons/project_long_term/wizard/project_compute_phases.py b/addons/project_long_term/wizard/project_compute_phases.py index 57a1b3b6ed3..4a66cecf9cd 100644 --- a/addons/project_long_term/wizard/project_compute_phases.py +++ b/addons/project_long_term/wizard/project_compute_phases.py @@ -72,3 +72,5 @@ class project_compute_phases(osv.osv_memory): return result project_compute_phases() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project_mailgate/__openerp__.py b/addons/project_mailgate/__openerp__.py index ba3e2e57ba5..7f55c580fb8 100644 --- a/addons/project_mailgate/__openerp__.py +++ b/addons/project_mailgate/__openerp__.py @@ -21,11 +21,11 @@ { - "name": "Project Tasks - Mail Integration", + "name": "Tasks Mail Integration", "version": "1.1", "author": "OpenERP SA", "website": "http://www.openerp.com", - "category": "Hidden", + "category": "Project Management", 'complexity': "easy", "images": ["images/project_mailgate_task.jpeg"], "depends": ["project", "mail"], diff --git a/addons/project_mailgate/project_mailgate_view.xml b/addons/project_mailgate/project_mailgate_view.xml index c3cd4bf9db2..6bf9855f98a 100644 --- a/addons/project_mailgate/project_mailgate_view.xml +++ b/addons/project_mailgate/project_mailgate_view.xml @@ -9,32 +9,10 @@ <field name="arch" type="xml"> <xpath expr="/form/notebook/page[@string='Extra Info']" position="before"> <page string="History"> - <field name="message_ids" colspan="4" nolabel="1" mode="tree,form" readonly="1"> + <field name="message_ids" colspan="4" nolabel="1" mode="tree" readonly="1"> <tree string="History"> <field name="display_text" string="History Information"/> </tree> - <form string="History"> - <group col="4" colspan="4"> - <field name="email_from"/> - <field name="date"/> - <field name="email_to" widget="char" size="512"/> - <field name="email_cc" widget="char" size="512"/> - <field name="subject" colspan="4" widget="char" size="512"/> - </group> - <notebook colspan="4"> - <page string="Details"> - <group attrs="{'invisible': [('email_from', '=', False)]}"> - <field name="body_text" colspan="4" nolabel="1" height="250"/> - </group> - <group attrs="{'invisible': [('email_from', '!=', False)]}"> - <field name="display_text" colspan="4" nolabel="1" height="250"/> - </group> - </page> - <page string="Attachments"> - <field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/> - </page> - </notebook> - </form> </field> </page> </xpath> diff --git a/addons/project_messages/__openerp__.py b/addons/project_messages/__openerp__.py index f7e50110784..a146056e921 100644 --- a/addons/project_messages/__openerp__.py +++ b/addons/project_messages/__openerp__.py @@ -26,7 +26,7 @@ "images": ["images/project_message.jpeg"], "depends": ["project"], "author": "OpenERP SA", - "category": 'Hidden', + "category": "Project Management", 'complexity': "easy", "description": """ This module provides the functionality to send messages within a project. diff --git a/addons/project_messages/project_messages_view.xml b/addons/project_messages/project_messages_view.xml index f8c98d15785..85e2c02f8ff 100644 --- a/addons/project_messages/project_messages_view.xml +++ b/addons/project_messages/project_messages_view.xml @@ -15,15 +15,6 @@ <field name="from_id"/> <field name="to_id"/> </tree> - <form> - <group> - <field name="from_id"/> - <field name="to_id"/> - <newline/> - <separator colspan="4" string="Message"/> - <field nolabel="1" name="message" colspan="4"/> - </group> - </form> </field> </page> </xpath> diff --git a/addons/project_mrp/__init__.py b/addons/project_mrp/__init__.py index 364dec5a437..df4f0fa8a52 100644 --- a/addons/project_mrp/__init__.py +++ b/addons/project_mrp/__init__.py @@ -21,3 +21,5 @@ import project_procurement import project_mrp + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project_mrp/__openerp__.py b/addons/project_mrp/__openerp__.py index 3cb2fb40179..e5722b92da9 100644 --- a/addons/project_mrp/__openerp__.py +++ b/addons/project_mrp/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Automatic task creation from procurement lines', + 'name': 'Create Tasks on SO', 'version': '1.0', - 'category': 'Hidden/Link', + "category": "Project Management", 'complexity': "easy", 'description': """ Automatically creates project tasks from procurement lines diff --git a/addons/project_planning/__openerp__.py b/addons/project_planning/__openerp__.py index 9ce5e8a2d9a..23d900d86ff 100644 --- a/addons/project_planning/__openerp__.py +++ b/addons/project_planning/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Planning Management Module', 'version': '1.0', - 'category': 'Hidden', + "category": "Project Management", 'complexity': "easy", 'description': """Keep track of your planning This module helps you to manage your plannings. diff --git a/addons/project_retro_planning/__openerp__.py b/addons/project_retro_planning/__openerp__.py index 68ea9d5d78e..5ca01a3a0e1 100644 --- a/addons/project_retro_planning/__openerp__.py +++ b/addons/project_retro_planning/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Project Retro planning', + 'name': 'Project Retro-planning', 'version': '0.1', - 'category': 'Hidden', + 'category': 'Project Management', 'description': """ Changes dates according to change in project End Date. ====================================================== diff --git a/addons/project_scrum/__openerp__.py b/addons/project_scrum/__openerp__.py index fb08b8432be..d4aa99196b0 100644 --- a/addons/project_scrum/__openerp__.py +++ b/addons/project_scrum/__openerp__.py @@ -65,7 +65,11 @@ More information on the methodology: "board_project_scrum_view.xml", ], 'demo_xml': ['project_scrum_demo.xml'], - 'test': ['test/project_scrum_report.yml'], + 'test': ['test/backlog_process.yml', + 'test/sprint_process.yml', + 'test/cancel_backlog.yml', + 'test/project_scrum_demo.yml', + ], 'installable': True, 'active': False, 'certificate' : '00736750152003010781', diff --git a/addons/project_scrum/board_project_scrum_view.xml b/addons/project_scrum/board_project_scrum_view.xml index 2a9d3532b2d..dd01832b575 100644 --- a/addons/project_scrum/board_project_scrum_view.xml +++ b/addons/project_scrum/board_project_scrum_view.xml @@ -76,7 +76,7 @@ <field name="type">form</field> <field name="arch" type="xml"> <form string="My Board"> - <board style="1-2"> + <board style="2-1"> <column> <action name="%(action_sprint_all_dashboard_tree)d" string="Sprints"/> </column> diff --git a/addons/project_scrum/i18n/fr.po b/addons/project_scrum/i18n/fr.po index efac2950020..a4109b8e61e 100644 --- a/addons/project_scrum/i18n/fr.po +++ b/addons/project_scrum/i18n/fr.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2011-09-26 12:11+0000\n" -"Last-Translator: Numérigraphe <Unknown>\n" +"PO-Revision-Date: 2011-11-25 14:47+0000\n" +"Last-Translator: lholivier <olivier.lenoir@free.fr>\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: 2011-11-05 04:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:49+0000\n" +"X-Generator: Launchpad (build 14381)\n" #. module: project_scrum #: help:project.scrum.email,scrum_master_email:0 @@ -976,6 +976,10 @@ msgid "" " \n" "I am sending you Daily Meeting Details of date %s for the Sprint %s\n" msgstr "" +"Bonjour %s,\n" +" \n" +"Je vous envoie les informations du rendez-vous quotidien du %s en vue du " +"\"sprint\" %s\n" #. module: project_scrum #: code:addons/project_scrum/project_scrum.py:325 diff --git a/addons/project_scrum/i18n/hr.po b/addons/project_scrum/i18n/hr.po index dcdffaf8c28..9a987317ebb 100644 --- a/addons/project_scrum/i18n/hr.po +++ b/addons/project_scrum/i18n/hr.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: 2011-01-11 11:15+0000\n" -"PO-Revision-Date: 2009-02-03 06:26+0000\n" -"Last-Translator: <>\n" +"PO-Revision-Date: 2011-12-08 17:01+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\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: 2011-11-05 04:57+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: project_scrum #: help:project.scrum.email,scrum_master_email:0 @@ -24,12 +24,12 @@ msgstr "" #. module: project_scrum #: view:project.scrum.backlog.assign.sprint:0 msgid "_Assign" -msgstr "" +msgstr "_Dodjeli" #. module: project_scrum #: field:project.scrum.meeting,name:0 msgid "Meeting Name" -msgstr "" +msgstr "Naziv skupa" #. module: project_scrum #: model:process.transition,note:project_scrum.process_transition_backlogtask0 @@ -40,7 +40,7 @@ msgstr "" #: view:project.scrum.product.backlog:0 #: field:project.scrum.product.backlog,user_id:0 msgid "Author" -msgstr "" +msgstr "Autor" #. module: project_scrum #: model:ir.module.module,description:project_scrum.module_meta_information diff --git a/addons/project_scrum/project_scrum.py b/addons/project_scrum/project_scrum.py index f0db98294e7..260eadd4a61 100644 --- a/addons/project_scrum/project_scrum.py +++ b/addons/project_scrum/project_scrum.py @@ -262,7 +262,7 @@ class project_scrum_task(osv.osv): 'project.scrum.product.backlog': (_get_task, ['sprint_id'], 10) }), } - + #dead code def onchange_backlog_id(self, cr, uid, backlog_id=False): if not backlog_id: return {} @@ -292,7 +292,7 @@ class project_scrum_meeting(osv.osv): _defaults = { 'date' : lambda *a: time.strftime('%Y-%m-%d'), } - + # dead code def button_send_to_master(self, cr, uid, ids, context=None): meeting_id = self.browse(cr, uid, ids, context=context)[0] if meeting_id and meeting_id.sprint_id.scrum_master_id.user_email: @@ -303,6 +303,7 @@ class project_scrum_meeting(osv.osv): raise osv.except_osv(_('Error !'), _('Please provide email address for scrum master defined on sprint.')) return True + #dead code def button_send_product_owner(self, cr, uid, ids, context=None): if context is None: context = {} @@ -316,6 +317,7 @@ class project_scrum_meeting(osv.osv): raise osv.except_osv(_('Error !'), _('Please provide email address for product owner defined on sprint.')) return True + #dead code def email_send(self, cr, uid, ids, email, context=None): mail_message_obj = self.pool.get('mail.message') meeting_id = self.browse(cr, uid, ids, context=context)[0] @@ -332,3 +334,5 @@ class project_scrum_meeting(osv.osv): project_scrum_meeting() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project_scrum/project_scrum_demo.xml b/addons/project_scrum/project_scrum_demo.xml index 76f2846c76f..50c67146716 100644 --- a/addons/project_scrum/project_scrum_demo.xml +++ b/addons/project_scrum/project_scrum_demo.xml @@ -10,7 +10,6 @@ <field name="project_id" ref="project.project_project_9"/> <field name="product_owner_id" ref="base.user_root"/> <field model="res.users" name="scrum_master_id" search="[('login','=','admin')]"/> - <field name="state">open</field> </record> <record id="scrum_sprint_1" model="project.scrum.sprint"> @@ -158,7 +157,6 @@ <field name="expected_hours">6.0</field> <field name="note">This new system will enable you to migrate automatically from an old version of OpenERP to a new one. This system will migrate not only the OpenERP system but also the customers particularities. This happens without any kind of script or programming. It has been possible to carry out such a system thanks to the descriptive approach of OpenERP components. </field> <field name="sprint_id" ref="scrum_sprint_0"/> - <field name="state">done</field> <field name="project_id" ref="project.project_project_9"/> </record> <record id="scrum_product_backlog_1" model="project.scrum.product.backlog"> @@ -387,6 +385,9 @@ <field name="state">open</field> <field name="product_backlog_id" ref="scrum_product_backlog_7"/> </record> + + <!-- Resource: project_scrum.meeting --> + <record id="scrum_meeting_0" model="project.scrum.meeting"> <field name="question_yesterday"> Admin: Worked on the Automatic migration system diff --git a/addons/project_scrum/project_scrum_view.xml b/addons/project_scrum/project_scrum_view.xml index 7749b5e2d3b..7dc2cc1d4f0 100644 --- a/addons/project_scrum/project_scrum_view.xml +++ b/addons/project_scrum/project_scrum_view.xml @@ -263,6 +263,8 @@ <group colspan="4" col="6"> <field name="date"/> <field name="user_id"/> + <button name="%(mail.action_email_compose_message_wizard)d" + string="Send Email" type="action" icon="terp-mail-message-new"/> </group> <notebook colspan="4"> <page string="Scrum Meeting"> @@ -273,8 +275,6 @@ <separator colspan="4" string="Are there anything blocking you?"/> <field colspan="4" name="question_blocks" nolabel="1"/> <separator colspan="4" string=""/> - <button name="button_send_to_master" type="object" string="Send to Scrum Master" icon="gtk-ok"/> - <button name="button_send_product_owner" type="object" string="Send to Product Owner" icon="gtk-ok"/> </page> <page string="Optional Info"> <separator colspan="4" string="Are your Sprint Backlog estimate accurate ?"/> @@ -467,6 +467,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="domain">[('product_backlog_id', '=', active_id)]</field> + <field name="context">{'default_product_backlog_id': active_id}</field> </record> <record id="ir_scrum_sprint_open_task" model="ir.values"> <field eval=" 'tree_but_open'" name="key2"/> @@ -481,6 +482,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form</field> <field name="domain">[('sprint_id', '=', active_id)]</field> + <field name="context">{'default_sprint_id': active_id}</field> </record> <record id="ir_scrum_sprint_open_sprint" model="ir.values"> <field eval=" 'tree_but_open'" name="key2"/> diff --git a/addons/project_scrum/test/backlog_process.yml b/addons/project_scrum/test/backlog_process.yml new file mode 100644 index 00000000000..08a0d52ed0a --- /dev/null +++ b/addons/project_scrum/test/backlog_process.yml @@ -0,0 +1,39 @@ +- + In Order to Test process of Project Agile Methology, +- + I put Backlog in pending state because of specification is not ready. +- + !python {model: project.scrum.product.backlog}: | + self.button_pending(cr, uid, [ref("scrum_product_backlog_0")]) +- + I check state of Backlog after put in pending. +- + !assert {model: project.scrum.product.backlog, id: scrum_product_backlog_0, severity: error, string: Backlog should be in pending state}: + - state == "pending" +- + Now Specification is ready so I Open backlog "Automatic migration system". +- + !python {model: project.scrum.product.backlog}: | + self.button_open(cr, uid, [ref("scrum_product_backlog_0")]) +- + I check state of Backlog after opened. +- + !assert {model: project.scrum.product.backlog, id: scrum_product_backlog_0, severity: error, string: Backlog should be in open state}: + - state == "open" +- + I close Backlog after review. +- + !python {model: project.scrum.product.backlog}: | + self.button_close(cr, uid, [ref("scrum_product_backlog_0")]) +- + I check state of Backlog after closed. +- + !assert {model: project.scrum.product.backlog, id: scrum_product_backlog_0, severity: error, string: Backlog should be in close state}: + - state == "done" +- + I merge two Backlogs in to one Backlog. +- + !python {model: project.scrum.backlog.merge}: | + self.check_backlogs(cr, uid, [ref("scrum_product_backlog_1"),ref("scrum_product_backlog_2")], {"active_ids": [ref("scrum_product_backlog_1"),ref("scrum_product_backlog_2")], + "active_id": ref("scrum_product_backlog_1") + }) diff --git a/addons/project_scrum/test/cancel_backlog.yml b/addons/project_scrum/test/cancel_backlog.yml new file mode 100644 index 00000000000..0ab8dedec26 --- /dev/null +++ b/addons/project_scrum/test/cancel_backlog.yml @@ -0,0 +1,50 @@ +- + I cancel Backlog "Automatic migration system" from draft state. +- + !python {model: project.scrum.product.backlog}: | + self.button_cancel(cr, uid, [ref("scrum_product_backlog_0")]) +- + I check state of Backlog after canceled. +- + !assert {model: project.scrum.product.backlog, id: scrum_product_backlog_0, severity: error, string: backlog should be in cancel state}: + - state == "cancel" +- + I cancel opened Backlog "Editable Trees". +- + !python {model: project.scrum.product.backlog}: | + self.button_cancel(cr, uid, [ref("scrum_product_backlog_7")]) +- + I check state of Backlog after canceled. +- + !assert {model: project.scrum.product.backlog, id: scrum_product_backlog_7, severity: error, string: backlog should be in cancel state}: + - state == "cancel" +- + I put Backlog in pending due to resource unavailability. +- + !python {model: project.scrum.product.backlog}: | + self.button_pending(cr, uid, [ref("scrum_product_backlog_0")]) +- + I check state of Backlog after put in pending. +- + !assert {model: project.scrum.product.backlog, id: scrum_product_backlog_0, severity: error, string: Backlog should be in pending state}: + - state == "pending" +- + I cancel pending Backlog "Automatic migration system". +- + !python {model: project.scrum.product.backlog}: | + self.button_cancel(cr, uid, [ref("scrum_product_backlog_0")]) +- + I check state of Backlog after canceled. +- + !assert {model: project.scrum.product.backlog, id: scrum_product_backlog_0, severity: error, string: backlog should be in cancel state}: + - state == "cancel" +- + I Postpone opened Backlog "Reshape the complete menu". +- + !python {model: project.scrum.product.backlog}: | + self.button_postpone(cr, uid, [ref("scrum_product_backlog_6")]) +- + I check state of Backlog after Postpone. +- + !assert {model: project.scrum.product.backlog, id: scrum_product_backlog_6, severity: error, string: backlog should be in cancel state}: + - state == "cancel" diff --git a/addons/project_scrum/test/project_scrum_demo.yml b/addons/project_scrum/test/project_scrum_demo.yml new file mode 100644 index 00000000000..d9f8418b08e --- /dev/null +++ b/addons/project_scrum/test/project_scrum_demo.yml @@ -0,0 +1,3 @@ +- + !record {model: project.scrum.sprint, id: scrum_sprint_0, view: False}: + project_id: project.project_integrate_openerp diff --git a/addons/project_scrum/test/project_scrum_report.yml b/addons/project_scrum/test/project_scrum_report.yml deleted file mode 100644 index 7fb3e9c07fc..00000000000 --- a/addons/project_scrum/test/project_scrum_report.yml +++ /dev/null @@ -1,9 +0,0 @@ -- - In order to test the PDF reports defined on a Project Scrum, we will print Project Scrum Sprint Burndown Report -- - !python {model: project.scrum.sprint}: | - import netsvc, tools, os - data_dict = {'model': 'project.scrum.sprint', 'id':ref('project_scrum.scrum_sprint_0')} - (data, format) = netsvc.LocalService('report.scrum.sprint.burndown').create(cr, uid, [ref('project_scrum.scrum_sprint_0')], data_dict, {}) - if tools.config['test_report_directory']: - file(os.path.join(tools.config['test_report_directory'], 'project_scrum-project_scrum_sprint_burndown.'+format), 'wb+').write(data)
\ No newline at end of file diff --git a/addons/project_scrum/test/sprint_process.yml b/addons/project_scrum/test/sprint_process.yml new file mode 100644 index 00000000000..8c8f70b1188 --- /dev/null +++ b/addons/project_scrum/test/sprint_process.yml @@ -0,0 +1,78 @@ +- + I put sprint in pending state to allocate task to resources. +- + !python {model: project.scrum.sprint}: | + self.button_pending(cr, uid, [ref("scrum_sprint_0")]) +- + I check state of sprint after put in pending. +- + !assert {model: project.scrum.sprint, id: scrum_sprint_0, severity: error, string: Sprint should be in pending state}: + - state == "pending" +- + I assign Backlog into this Sprint +- + !python {model: project.scrum.backlog.assign.sprint}: | + new_id = self.create(cr, uid, {'sprint_id': ref("scrum_sprint_0")}) + self.assign_sprint(cr, uid, [new_id], {"active_ids": [ref("scrum_product_backlog_0")] + }) + backlog_obj = self.pool.get('project.scrum.product.backlog') + task_obj = self.pool.get('project.task') + + backlog_data = backlog_obj.browse(cr, uid, ref("scrum_product_backlog_0"), context) + assert backlog_data.sprint_id.id == ref("scrum_sprint_0"), 'Sprint is not assigned' +- + I Open sprint of "Week 31" +- + !python {model: project.scrum.sprint}: | + self.button_open(cr, uid, [ref("scrum_sprint_0")]) +- + I check state of sprint after opened. +- + !assert {model: project.scrum.sprint, id: scrum_sprint_0, severity: error, string: Sprint should be in Open state}: + - state == "open" +- + I create tasks from backlog "Automatic migration system" for sprint +- + !python {model: project.scrum.backlog.create.task}: | + new_id = self.create(cr, uid, {'user_id': ref("project.res_users_project_manager")}) + task_obj = self.pool.get('project.task') + backlog_obj = self.pool.get('project.scrum.product.backlog') + + new_task = self.do_create(cr, uid, [new_id], {"active_ids": [ref("scrum_product_backlog_0")]}) + backlog_data = backlog_obj.browse(cr, uid, ref("scrum_product_backlog_0"), context) + task_ids = task_obj.search(cr, uid, [('product_backlog_id','=', backlog_data.id)]) + assert len(task_ids), "Task not created" + task = task_obj.browse(cr, uid, task_ids[0], context) + + assert task.name == backlog_data.name and task.total_hours == backlog_data.expected_hours and task.user_id and task.user_id.id == ref("project.res_users_project_manager"), 'Task not has been created' +- + I send email to scrum master with scrum meeting details. +- + !python {model: mail.compose.message }: | + ctx = context.copy() + ctx.update({'active_model': 'project.scrum.meeting', 'active_id': ref("scrum_meeting_0"), 'active_ids': [ref("scrum_meeting_0")]}) + vals = self.default_get(cr, uid , [], context=ctx) + try: + new_id = self.create(cr, uid, {'email_from': 'test@openerp.com', 'email_to': 'xyz@mycompany.com', 'subject': 'test'}) + self.send_mail(cr, uid, [new_id], context=ctx) + except Exception, e: + pass +- + I close sprint after review +- + !python {model: project.scrum.sprint}: | + self.button_close(cr, uid, [ref("scrum_sprint_0")]) +- + I check state after closed sprint. +- + !assert {model: project.scrum.sprint, id: scrum_sprint_0, severity: error, string: Sprint shoud be in close state}: + - state == "done" +- + I print Burndown chart of Sprint. +- + !python {model: project.scrum.sprint}: | + import netsvc, tools, os + data_dict = {'model': 'project.scrum.sprint', 'id':ref('scrum_sprint_0')} + (data, format) = netsvc.LocalService('report.scrum.sprint.burndown').create(cr, uid, [ref('scrum_sprint_0')], data_dict, {}) + if tools.config['test_report_directory']: + file(os.path.join(tools.config['test_report_directory'], 'project_scrum-project_scrum_sprint_burndown.'+format), 'wb+').write(data) diff --git a/addons/project_scrum/wizard/project_scrum_email.py b/addons/project_scrum/wizard/project_scrum_email.py index f1d5b6665f7..c61f43e6779 100644 --- a/addons/project_scrum/wizard/project_scrum_email.py +++ b/addons/project_scrum/wizard/project_scrum_email.py @@ -105,3 +105,5 @@ class project_scrum_email(osv.osv_memory): if data.product_owner_email: mail_message.schedule_with_attach(cr, uid, user_email, [data.product_owner_email], data.subject, body, reply_to=user_email, context=context) return {'type': 'ir.actions.act_window_close'} + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/project_timesheet/project_timesheet_view.xml b/addons/project_timesheet/project_timesheet_view.xml index de6d77a2fd9..07873c00592 100644 --- a/addons/project_timesheet/project_timesheet_view.xml +++ b/addons/project_timesheet/project_timesheet_view.xml @@ -107,7 +107,18 @@ the project form.</field> --> <menuitem id="menu_project_working_hours" parent="base.menu_project_management_time_tracking" action="hr_timesheet.act_hr_timesheet_line_evry1_all_form"/> - <menuitem id="menu_invoicing" name="Billing" parent="base.menu_main_pm" sequence="4"/> - + <record id="action_account_analytic_overdue" model="ir.actions.act_window"> + <field name="name">Customer Projects</field> + <field name="res_model">account.analytic.account</field> + <field name="view_type">form</field> + <field name="view_mode">tree,form,graph</field> + <field name="context">{'search_default_has_partner':1, 'search_default_my_accounts':1, 'search_default_draft':1, 'search_default_pending':1, 'search_default_open':1}</field> + <field name="domain">[('type','=','normal')]</field> + <field name="search_view_id" ref="account_analytic_analysis.view_account_analytic_account_overdue_search"/> + <field name="help">You will find here the contracts related to your customer projects in order to track the invoicing progress.</field> + </record> + <menuitem id="menu_invoicing_contracts" parent="menu_project_billing" sequence="4" + action="account_analytic_analysis.action_account_analytic_overdue"/> + </data> </openerp> diff --git a/addons/purchase/__openerp__.py b/addons/purchase/__openerp__.py index b4f3a9adf30..010b0369edf 100644 --- a/addons/purchase/__openerp__.py +++ b/addons/purchase/__openerp__.py @@ -78,5 +78,6 @@ Dashboard for purchase management that includes: 'installable': True, 'active': False, 'certificate': '0057234283549', + 'application': True, } # vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/purchase/board_purchase_view.xml b/addons/purchase/board_purchase_view.xml index 453f029aa0d..04a9b47abe3 100644 --- a/addons/purchase/board_purchase_view.xml +++ b/addons/purchase/board_purchase_view.xml @@ -136,7 +136,6 @@ <action name="%(purchase.action_po_per_month_tree)d" string="Purchase order per month"/> --> <action name="%(purchase_draft)d" string="Request for Quotations"/> - <action name="%(purchase_waiting)d" string="Purchase Order Waiting Approval"/> </column> <column> <action name="%(action_purchase_order_monthly_categ_graph)d" string="Monthly Purchase by Category"/> diff --git a/addons/purchase/edi/__init__.py b/addons/purchase/edi/__init__.py index cfac0182d76..be599e9736c 100644 --- a/addons/purchase/edi/__init__.py +++ b/addons/purchase/edi/__init__.py @@ -19,4 +19,6 @@ # ############################################################################## -import purchase_order
\ No newline at end of file +import purchase_order + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/purchase/purchase_view.xml b/addons/purchase/purchase_view.xml index 2b1ba34b8e1..90acbf4ecfd 100644 --- a/addons/purchase/purchase_view.xml +++ b/addons/purchase/purchase_view.xml @@ -108,7 +108,7 @@ <field name="view_mode">tree,form,calendar,graph</field> <field eval="False" name="view_id"/> <field name="domain">[('type','=','in_invoice')]</field> - <field name="context">{'type':'in_invoice', 'journal_type': 'purchase', 'search_default_draft': 1}</field> + <field name="context">{'default_type':'in_invoice', 'type':'in_invoice', 'journal_type': 'purchase', 'search_default_draft': 1}</field> <field name="search_view_id" ref="account.view_account_invoice_filter"/> <field name="help">Use this menu to control the invoices to be received from your supplier. OpenERP pregenerates draft invoices from your purchase orders or receptions, according to your settings. Once you receive a supplier invoice, you can match it with the draft invoice and validate it.</field> </record> @@ -172,7 +172,7 @@ </group> <notebook colspan="4"> <page string="Purchase Order"> - <field name="partner_id" on_change="onchange_partner_id(partner_id)" context="{'search_default_supplier':1}" /> + <field name="partner_id" on_change="onchange_partner_id(partner_id)" context="{'search_default_supplier':1,'default_supplier':1,'default_customer':0}" /> <field name="partner_address_id"/> <field domain="[('type','=','purchase')]" name="pricelist_id" groups="base.group_extended"/> <field name="origin" groups="base.group_extended"/> diff --git a/addons/purchase/report/order.rml b/addons/purchase/report/order.rml index a1201c7b452..dfd93f0d45a 100644 --- a/addons/purchase/report/order.rml +++ b/addons/purchase/report/order.rml @@ -167,11 +167,7 @@ <td> <para style="terp_default_Bold_9">Shipping address :</para> <para style="terp_default_9">[[ (o.dest_address_id and o.dest_address_id.partner_id.name) or (o.warehouse_id and o.warehouse_id.name) or '']]</para> - <para style="terp_default_9">[[ (o.dest_address_id and o.dest_address_id and o.dest_address_id.street) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.street) or '']]</para> - <para style="terp_default_9">[[ (o.dest_address_id and o.dest_address_id and o.dest_address_id.street2) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.dest_address_id and o.dest_address_id and o.dest_address_id.zip) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.zip) or '' ]] [[ (o.dest_address_id and o.dest_address_id and o.dest_address_id.city) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.city) or '' ]]</para> - <para style="terp_default_9">[[ (o.dest_address_id and o.dest_address_id.state_id and o.dest_address_id.state_id.name) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.state_id and o.warehouse_id.partner_address_id.state_id.name) or removeParentNode('para') ]] </para> - <para style="terp_default_9">[[ (o.dest_address_id and o.dest_address_id.country_id and o.dest_address_id.country_id.name) or (o.warehouse_id and o.warehouse_id.partner_address_id and o.warehouse_id.partner_address_id.country_id and o.warehouse_id.partner_address_id.country_id.name) ]]</para> + <para style="terp_default_9">[[ (o.dest_address_id and display_address(o.dest_address_id)) or (o.warehouse_id and displaye_address(o.warehouse_id.partner_address_id)) or '']]</para> </td> </tr> </blockTable> @@ -186,11 +182,7 @@ </td> <td> <para style="terp_default_9">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_address_id and o.partner_address_id.street ) or '']]</para> - <para style="terp_default_9">[[ (o.partner_address_id and o.partner_address_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.partner_address_id and o.partner_address_id.zip) or '' ]] [[ (o.partner_address_id and o.partner_address_id.city) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_address_id and o.partner_address_id.state_id and o.partner_address_id.state_id.name) or removeParentNode('para')]]</para> - <para style="terp_default_9">[[ (o.partner_address_id and o.partner_address_id.country_id and o.partner_address_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ o.partner_address_id and display_address(o.partner_address_id) ]] </para> <para style="terp_default_9"> <font color="white"> </font> </para> diff --git a/addons/purchase/report/purchase_report.py b/addons/purchase/report/purchase_report.py index 4c59f9ea002..e3a4a651b7f 100644 --- a/addons/purchase/report/purchase_report.py +++ b/addons/purchase/report/purchase_report.py @@ -143,3 +143,5 @@ class purchase_report(osv.osv): """) purchase_report() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/purchase/report/request_quotation.rml b/addons/purchase/report/request_quotation.rml index 27e4ac39602..866e3e9003b 100644 --- a/addons/purchase/report/request_quotation.rml +++ b/addons/purchase/report/request_quotation.rml @@ -92,11 +92,7 @@ <td> <para style="terp_default_Bold_9">Expected Delivery address:</para> <para style="terp_default_9">[[ (order.dest_address_id and order.dest_address_id.partner_id.name) or (order.warehouse_id and order.warehouse_id.name) or '']]</para> - <para style="terp_default_9">[[ (order.dest_address_id and order.dest_address_id and order.dest_address_id.street) or (order.warehouse_id and order.warehouse_id.partner_address_id and order.warehouse_id.partner_address_id.street) or '']]</para> - <para style="terp_default_9">[[ (order.dest_address_id and order.dest_address_id and order.dest_address_id.street2) or (order.warehouse_id and order.warehouse_id.partner_address_id and order.warehouse_id.partner_address_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (order.dest_address_id and order.dest_address_id and order.dest_address_id.zip) or (order.warehouse_id and order.warehouse_id.partner_address_id and order.warehouse_id.partner_address_id.zip) or '' ]][[ (order.dest_address_id and order.dest_address_id and order.dest_address_id.city) or (order.warehouse_id and order.warehouse_id.partner_address_id and order.warehouse_id.partner_address_id.city) or '' ]]</para> - <para style="terp_default_9">[[(order.warehouse_id and order.warehouse_id.partner_address_id and order.warehouse_id.partner_address_id.state_id and order.warehouse_id.partner_address_id.state_id.name) or order.partner_address_id and order.partner_address_id.state_id and order.partner_address_id.state_id.name or removeParentNode('para') ]] </para> - <para style="terp_default_9">[[(order.warehouse_id and order.warehouse_id.partner_address_id and order.warehouse_id.partner_address_id.country_id and order.warehouse_id.partner_address_id.country_id.name) or order.partner_address_id.country_id.name ]]</para> + <para style="terp_default_9">[[ order.dest_address_id and display_address(order.dest_address_id) ]] </para> </td> <td> <para style="terp_default_9"> @@ -105,11 +101,7 @@ </td> <td> <para style="terp_default_9">[[ (order.partner_id and order.partner_id.title and order.partner_id.title.name) or '' ]] [[ order.partner_id.name ]]</para> - <para style="terp_default_9">[[ (order.partner_address_id and order.partner_address_id.street) or '']]</para> - <para style="terp_default_9">[[ (order.partner_address_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (order.partner_address_id and order.partner_address_id.zip) or '' ]][[ (order.partner_address_id and order.partner_address_id.city) or '' ]]</para> - <para style="terp_default_9">[[ (order.partner_address_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (order.partner_address_id and order.partner_address_id.country_id and order.partner_address_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ order.partner_address_id and display_address(order.partner_address_id) ]] </para> <para style="terp_default_9"> <font color="white"> </font> </para> diff --git a/addons/purchase/stock.py b/addons/purchase/stock.py index 42d9c40d7e5..c212a171b21 100644 --- a/addons/purchase/stock.py +++ b/addons/purchase/stock.py @@ -35,16 +35,12 @@ class stock_move(osv.osv): on the purchase order in case the valuation data was not directly specified during picking confirmation. """ - product_uom_obj = self.pool.get('product.uom') - reference_amount, reference_currency_id = super(stock_move, self)._get_reference_accounting_values_for_valuation(cr, uid, move, context=context) - default_uom = move.product_id.uom_id.id - qty = product_uom_obj._compute_qty(cr, uid, move.product_uom.id, move.product_qty, default_uom) if move.product_id.cost_method != 'average' or not move.price_unit: # no average price costing or cost not specified during picking validation, we will # plug the purchase line values if they are found. if move.purchase_line_id and move.picking_id.purchase_id.pricelist_id: - reference_amount, reference_currency_id = move.purchase_line_id.price_unit * qty, move.picking_id.purchase_id.pricelist_id.currency_id.id + reference_amount, reference_currency_id = move.purchase_line_id.price_unit * move.product_qty, move.picking_id.purchase_id.pricelist_id.currency_id.id return reference_amount, reference_currency_id stock_move() diff --git a/addons/purchase/stock_view.xml b/addons/purchase/stock_view.xml index 0e2a1852eca..7afcc96767f 100644 --- a/addons/purchase/stock_view.xml +++ b/addons/purchase/stock_view.xml @@ -31,7 +31,7 @@ res_model="stock.picking" groups="base.group_extended" src_model="purchase.order" - context="{'contact_display': 'partner'}" /> + context="{'default_purchase_id': active_id, 'contact_display': 'partner'}" /> <record id="action_picking_in_tree_view" model="ir.actions.act_window.view"> <field eval="1" name="sequence"/> @@ -110,7 +110,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form,calendar</field> <field name="domain">[('type','=','in')]</field> - <field name="context">{'contact_display': 'partner_address',"search_default_done":1, "search_default_to_invoice":1}</field> + <field name="context">{"default_type": "in", "contact_display": "partner_address", "search_default_done": 1, "search_default_to_invoice": 1}</field> <field name="search_view_id" ref="view_picking_in_search_picking_to_invoice"/> <field name="help">If you set the Invoicing Control on a purchase order as "Based on receptions", you can track here all the product receptions and create invoices for those receptions.</field> </record> diff --git a/addons/purchase_double_validation/__openerp__.py b/addons/purchase_double_validation/__openerp__.py index c02da2fc9d7..eda89e81aa8 100644 --- a/addons/purchase_double_validation/__openerp__.py +++ b/addons/purchase_double_validation/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - "name" : "Double Validation for Purchase", + "name" : "Double Validation on Purchases", "version" : "1.1", - "category": 'Hidden', + 'category': 'Purchase Management', 'complexity': "easy", "images" : ["images/purchase_validation.jpeg"], "depends" : ["base","purchase"], @@ -37,9 +37,10 @@ that exceeds minimum amount set by configuration wizard. 'website': 'http://www.openerp.com', 'init_xml': [], 'update_xml': [ - 'purchase_double_validation_workflow.xml', - 'purchase_double_validation_installer.xml' - ], + 'purchase_double_validation_workflow.xml', + 'purchase_double_validation_installer.xml', + 'board_purchase_view.xml' + ], 'test': ['test/purchase_double_validation_test.yml'], 'demo_xml': [], 'installable': True, @@ -47,3 +48,5 @@ that exceeds minimum amount set by configuration wizard. 'certificate' : '00436592682510544157', } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/purchase_double_validation/board_purchase_view.xml b/addons/purchase_double_validation/board_purchase_view.xml new file mode 100644 index 00000000000..d093dcc6937 --- /dev/null +++ b/addons/purchase_double_validation/board_purchase_view.xml @@ -0,0 +1,27 @@ +<?xml version="1.0" encoding="utf-8"?> +<openerp> + <data> + + <record id="purchase_waiting" model="ir.actions.act_window"> + <field name="name">Purchase Order Waiting Approval</field> + <field name="type">ir.actions.act_window</field> + <field name="res_model">purchase.order</field> + <field name="view_type">form</field> + <field name="view_mode">tree,form</field> + <field name="domain">[('date_order','>',time.strftime('%Y-01-01 00:00:00')),('date_order','<',time.strftime('%Y-12-31 23:59:59')), ('state','in',('wait','confirmed'))]</field> + </record> + + <record id="board_purchase_form2" model="ir.ui.view"> + <field name="name">board.purchase.form</field> + <field name="model">board.board</field> + <field name="type">form</field> + <field name="inherit_id" ref="purchase.board_purchase_form"/> + <field name="arch" type="xml"> + <xpath expr="/form/board/column/action[@string='Request for Quotations']" position="after"> + <action name="%(purchase_waiting)d" string="Purchase Order Waiting Approval"/> + </xpath> + </field> + </record> + + </data> +</openerp> diff --git a/addons/purchase_requisition/purchase_requisition_view.xml b/addons/purchase_requisition/purchase_requisition_view.xml index fdddb4b7fee..e0f09f6f7d6 100644 --- a/addons/purchase_requisition/purchase_requisition_view.xml +++ b/addons/purchase_requisition/purchase_requisition_view.xml @@ -205,6 +205,7 @@ </record> <act_window domain="[('requisition_id', '=', active_id)]" + context="{'default_requisition_id': active_id}" id="act_res_partner_2_purchase_order" name="Purchase orders" res_model="purchase.order" diff --git a/addons/report_designer/__openerp__.py b/addons/report_designer/__openerp__.py index fd29d2b96ee..77b37fd507b 100644 --- a/addons/report_designer/__openerp__.py +++ b/addons/report_designer/__openerp__.py @@ -21,11 +21,11 @@ { - "name" : "Reporting Hidden Installer", + "name" : "Report Designer", "version" : "1.0", "depends" : ["base", "base_setup"], "author" : "OpenERP SA", - "category": "Hidden", + "category": "Tools", "description": """ Installer for reporting Hidden. ============================== diff --git a/addons/report_intrastat/__openerp__.py b/addons/report_intrastat/__openerp__.py index 6c80e0f2b81..2f0bb6b46d9 100644 --- a/addons/report_intrastat/__openerp__.py +++ b/addons/report_intrastat/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Intrastat Reporting', 'version': '1.0', - 'category': 'Hidden', + "category": 'Accounting & Finance', 'description': """ A module that adds intrastat reports. ===================================== diff --git a/addons/report_intrastat/report/invoice.rml b/addons/report_intrastat/report/invoice.rml index c66a39413ee..0c635a611c8 100644 --- a/addons/report_intrastat/report/invoice.rml +++ b/addons/report_intrastat/report/invoice.rml @@ -142,11 +142,7 @@ </td> <td> <para style="terp_default_8">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.street) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.zip) or '' ]] [[ (o.address_invoice_id and o.address_invoice_id.city) or '' ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.state_id and o.address_invoice_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_8">[[ (o.address_invoice_id and o.address_invoice_id.country_id and o.address_invoice_id.country_id.name) or '' ]]</para> + <para style="terp_default_8">[[ o.address_invoice_id and display_address(o.address_invoice_id) ]] </para> <para style="terp_default_8"> <font color="white"> </font> </para> diff --git a/addons/report_intrastat/report_intrastat.py b/addons/report_intrastat/report_intrastat.py index a77c4f5d389..ffe90b54d4f 100644 --- a/addons/report_intrastat/report_intrastat.py +++ b/addons/report_intrastat/report_intrastat.py @@ -124,3 +124,5 @@ class report_intrastat(osv.osv): )""") report_intrastat() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit/__init__.py b/addons/report_webkit/__init__.py index a97025f4896..e09f929ad56 100644 --- a/addons/report_webkit/__init__.py +++ b/addons/report_webkit/__init__.py @@ -34,4 +34,6 @@ import company import report_helper import webkit_report import ir_report -import wizard
\ No newline at end of file +import wizard + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit/__openerp__.py b/addons/report_webkit/__openerp__.py index 52f03efaff7..5db184a8c58 100644 --- a/addons/report_webkit/__openerp__.py +++ b/addons/report_webkit/__openerp__.py @@ -84,7 +84,7 @@ TODO "version" : "0.9", "depends" : ["base"], "author" : "Camptocamp", - "category": "Hidden", # i.e a technical module, not shown in Application install menu + "category": "Tools", # i.e a technical module, not shown in Application install menu "url": "http://http://www.camptocamp.com/", "data": [ "security/ir.model.access.csv", "data.xml", @@ -98,3 +98,5 @@ TODO "certificate" : "001159699313338995949", 'images': ['images/companies_webkit.jpeg','images/header_html.jpeg','images/header_img.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit/company.py b/addons/report_webkit/company.py index 5b826617417..eaf3c02b50f 100644 --- a/addons/report_webkit/company.py +++ b/addons/report_webkit/company.py @@ -58,3 +58,5 @@ class ResCompany(osv.osv): } ResCompany() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit/header.py b/addons/report_webkit/header.py index 53252c5e245..b052c612445 100644 --- a/addons/report_webkit/header.py +++ b/addons/report_webkit/header.py @@ -99,3 +99,5 @@ class HeaderImage(osv.osv): 'type' : fields.char('Type', size=32, required =True, help="Image type(png,gif,jpeg)") } HeaderImage() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit/ir_report.py b/addons/report_webkit/ir_report.py index bca10b0d1d8..d2709ea6fc2 100644 --- a/addons/report_webkit/ir_report.py +++ b/addons/report_webkit/ir_report.py @@ -136,3 +136,5 @@ class ReportXML(osv.osv): } ReportXML() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit/report_helper.py b/addons/report_webkit/report_helper.py index 2b9d8c93256..12651f308dc 100644 --- a/addons/report_webkit/report_helper.py +++ b/addons/report_webkit/report_helper.py @@ -79,4 +79,6 @@ class WebKitHelper(object): """Return HTML embedded logo by name""" img, type = self.get_logo_by_name(name) return self.embed_image(type, img, width, height) -
\ No newline at end of file + + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit/webkit_report.py b/addons/report_webkit/webkit_report.py index 8d6373e412b..7e828403437 100644 --- a/addons/report_webkit/webkit_report.py +++ b/addons/report_webkit/webkit_report.py @@ -329,3 +329,5 @@ class WebKitParser(report_sxw): if not result: return (False,False) return result + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit/wizard/__init__.py b/addons/report_webkit/wizard/__init__.py index f6f7b3c8019..e8ae8b79fc0 100644 --- a/addons/report_webkit/wizard/__init__.py +++ b/addons/report_webkit/wizard/__init__.py @@ -29,4 +29,6 @@ # ############################################################################## -import report_webkit_actions
\ No newline at end of file +import report_webkit_actions + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit/wizard/report_webkit_actions.py b/addons/report_webkit/wizard/report_webkit_actions.py index 79426f8d159..bb2c5312441 100644 --- a/addons/report_webkit/wizard/report_webkit_actions.py +++ b/addons/report_webkit/wizard/report_webkit_actions.py @@ -144,3 +144,5 @@ class report_webkit_actions(osv.osv_memory): } report_webkit_actions() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit_sample/__init__.py b/addons/report_webkit_sample/__init__.py index 9b406f754d8..c1d68d587bf 100644 --- a/addons/report_webkit_sample/__init__.py +++ b/addons/report_webkit_sample/__init__.py @@ -29,4 +29,6 @@ # ############################################################################## import wizard -import report
\ No newline at end of file +import report + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit_sample/__openerp__.py b/addons/report_webkit_sample/__openerp__.py index d485692c164..9fb1f713d24 100644 --- a/addons/report_webkit_sample/__openerp__.py +++ b/addons/report_webkit_sample/__openerp__.py @@ -43,7 +43,7 @@ You have to create the print buttons by calling the wizard. For more details see """, "version" : "0.9", "depends" : ["base", "account", "report_webkit"], - "category": "Hidden", + "category": "Tools", "author" : "Camptocamp SA - NBessi", "url": "http://www.camptocamp.com/", "data": ["report_webkit_html_view.xml", @@ -54,3 +54,5 @@ You have to create the print buttons by calling the wizard. For more details see "certificate" : "00436592682591421981", 'images': ['images/webkit_invoice_report.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit_sample/report/__init__.py b/addons/report_webkit_sample/report/__init__.py index 04cc14f1d80..e8703f10d03 100644 --- a/addons/report_webkit_sample/report/__init__.py +++ b/addons/report_webkit_sample/report/__init__.py @@ -29,4 +29,6 @@ # ############################################################################## -import report_webkit_html
\ No newline at end of file +import report_webkit_html + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/report_webkit_sample/report/report_webkit_html.py b/addons/report_webkit_sample/report/report_webkit_html.py index 3e7f70c4154..5da7f008569 100644 --- a/addons/report_webkit_sample/report/report_webkit_html.py +++ b/addons/report_webkit_sample/report/report_webkit_html.py @@ -15,3 +15,5 @@ report_sxw.report_sxw('report.webkitaccount.invoice', 'account.invoice', 'addons/report_webkit_sample/report/report_webkit_html.mako', parser=report_webkit_html) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/resource/__openerp__.py b/addons/resource/__openerp__.py index f1e020215a6..2b8c27359d8 100644 --- a/addons/resource/__openerp__.py +++ b/addons/resource/__openerp__.py @@ -23,7 +23,7 @@ "name" : "Resource", "version" : "1.1", "author" : "OpenERP SA", - "category" : "Hidden", + "category" : "Tools", "website" : "http://www.openerp.com", "description": """ Module for resource management. diff --git a/addons/resource/faces/observer.py b/addons/resource/faces/observer.py index 411b2c5395b..894345230ea 100644 --- a/addons/resource/faces/observer.py +++ b/addons/resource/faces/observer.py @@ -77,3 +77,5 @@ factories = { } clear_cache_funcs = {} #@-node:@file observer.py #@-leo + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/resource/faces/pcalendar.py b/addons/resource/faces/pcalendar.py index aba9635fc4b..c82c49d4816 100644 --- a/addons/resource/faces/pcalendar.py +++ b/addons/resource/faces/pcalendar.py @@ -949,3 +949,5 @@ if __name__ == '__main__': start3 = cal.StartDate("10.1.2005") #@-node:@file pcalendar.py #@-leo + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/resource/faces/plocale.py b/addons/resource/faces/plocale.py index a9de390b255..61bfa91917b 100644 --- a/addons/resource/faces/plocale.py +++ b/addons/resource/faces/plocale.py @@ -52,3 +52,5 @@ def get_encoding(): if trans: return trans.charset() return locale.getpreferredencoding() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/resource/faces/resource.py b/addons/resource/faces/resource.py index 7cc2741fc8e..3451806444e 100644 --- a/addons/resource/faces/resource.py +++ b/addons/resource/faces/resource.py @@ -864,3 +864,5 @@ class _AndResourceGroup(_ResourceGroup): #@-others #@-node:@file resource.py #@-leo + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/resource/faces/task.py b/addons/resource/faces/task.py index fe90c42d806..f5240112277 100644 --- a/addons/resource/faces/task.py +++ b/addons/resource/faces/task.py @@ -3851,3 +3851,5 @@ class AdjustedProject(_AllocationPoject): """ #@-node:@file task.py #@-leo + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/resource/faces/timescale.py b/addons/resource/faces/timescale.py index 215766eb958..3e7c3c1dc89 100644 --- a/addons/resource/faces/timescale.py +++ b/addons/resource/faces/timescale.py @@ -111,3 +111,5 @@ class TimeScale(object): _default_scale = TimeScale(pcal._default_calendar) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/resource/faces/utils.py b/addons/resource/faces/utils.py index f7d61fb1dc9..54985767613 100644 --- a/addons/resource/faces/utils.py +++ b/addons/resource/faces/utils.py @@ -122,3 +122,5 @@ def progress_end(): + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/resource/resource_view.xml b/addons/resource/resource_view.xml index 2190fbd9156..c98dac80757 100644 --- a/addons/resource/resource_view.xml +++ b/addons/resource/resource_view.xml @@ -155,6 +155,7 @@ res_model="resource.calendar.leaves" src_model="resource.calendar" view_mode="calendar,tree,form" + context="{'default_calendar_id': active_id}" domain="[('calendar_id','=',active_id), ('resource_id','=',False)]"/> <act_window @@ -163,6 +164,7 @@ res_model="resource.calendar.leaves" src_model="resource.calendar" view_mode="calendar,tree,form" + context="{'default_calendar_id': active_id}" domain="[('calendar_id','=',active_id), ('resource_id','!=',False)]"/> <record id="resource_resource_form" model="ir.ui.view"> diff --git a/addons/sale/board_sale_view.xml b/addons/sale/board_sale_view.xml index c57ed5c6144..99eb8c831c4 100644 --- a/addons/sale/board_sale_view.xml +++ b/addons/sale/board_sale_view.xml @@ -7,9 +7,9 @@ <field name="type">form</field> <field name="arch" type="xml"> <form string="Sales Manager Dashboard"> - <board style="1-2"> + <board style="2-1"> <column> - <action name="%(sale.action_quotation_for_sale)d" string="Quotations"/> + <action name="%(sale.action_quotation_for_sale)d" string="Quotations" creatable="true"/> <action name="%(sale.action_view_sales_by_month)d" string="Sales by Month"/> </column> <column> @@ -100,7 +100,7 @@ <field name="type">form</field> <field name="arch" type="xml"> <form string="Sales Dashboard"> - <board style="1-2"> + <board style="2-1"> <column> <action name="%(action_quotation_for_sale)d" string="My Quotations"/> diff --git a/addons/sale/edi/__init__.py b/addons/sale/edi/__init__.py index 566b1714ffd..40789b6448b 100644 --- a/addons/sale/edi/__init__.py +++ b/addons/sale/edi/__init__.py @@ -19,4 +19,6 @@ # ############################################################################## -import sale_order
\ No newline at end of file +import sale_order + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/sale/i18n/fr.po b/addons/sale/i18n/fr.po index 9e1c20409be..645dbcc4e38 100644 --- a/addons/sale/i18n/fr.po +++ b/addons/sale/i18n/fr.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: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2011-01-18 13:16+0000\n" -"Last-Translator: Aline (OpenERP) <Unknown>\n" +"PO-Revision-Date: 2011-12-07 09:17+0000\n" +"Last-Translator: Numérigraphe <Unknown>\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: 2011-11-05 05:16+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-08 05:36+0000\n" +"X-Generator: Launchpad (build 14443)\n" #. module: sale #: code:addons/sale/sale.py:620 @@ -315,7 +315,7 @@ msgstr "Tableau de bord du responsable des ventes" #. module: sale #: field:sale.order.line,product_packaging:0 msgid "Packaging" -msgstr "Colis" +msgstr "Conditionnement" #. module: sale #: model:process.transition,name:sale.process_transition_saleinvoice0 @@ -600,8 +600,8 @@ msgid "" "For every sales order line, a procurement order is created to supply the " "sold product." msgstr "" -"Pour chaque ligne de vente, un ordre d'approvisionnement est créé pour " -"approvisionner le produit vendu." +"Pour chaque ligne de commande, un ordre d'approvisionnement est créé pour " +"fournir le produit vendu." #. module: sale #: help:sale.order,incoterm:0 diff --git a/addons/sale/report/sale_order.rml b/addons/sale/report/sale_order.rml index a6902f79047..cef286653e1 100644 --- a/addons/sale/report/sale_order.rml +++ b/addons/sale/report/sale_order.rml @@ -158,21 +158,13 @@ <td> <para style="terp_default_Bold_9">Shipping address :</para> <para style="terp_default_9">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.street) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.zip) or '' ]] [[ (o.partner_shipping_id and o.partner_shipping_id.city) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.state_id and o.partner_shipping_id.state_id.name) or removeParentNode('para') ]] </para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.country_id and o.partner_shipping_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ o.partner_shipping_id and display_address(o.partner_shipping_id) ]]</para> <para style="terp_default_9"> <font color="white"> </font> </para> <para style="terp_default_Bold_9">Invoice address :</para> <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.title and o.partner_invoice_id.title.name) or '' ]] [[ (o.partner_invoice_id and o.partner_invoice_id.name) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.street) or '' ]] </para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.zip) or '' ]] [[ (o.partner_invoice_id and o.partner_invoice_id.city) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.state_id and o.partner_invoice_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.country_id and o.partner_invoice_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ o.partner_invoice_id and display_address(o.partner_invoice_id) ]] </para> </td> <td> <para style="terp_default_8"> @@ -181,10 +173,7 @@ </td> <td> <para style="terp_default_9">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_order_id and o.partner_order_id.street) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_order_id and o.partner_order_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.partner_order_id and o.partner_order_id.zip) or '' ]] [[ (o.partner_order_id and o.partner_order_id.city) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_order_id and o.partner_order_id.state_id and o.partner_order_id.state_id.name) or removeParentNode('para')]] [[ (o.partner_order_id and o.partner_order_id.country_id and o.partner_order_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ o.partner_order_id and display_address(o.partner_order_id) ]] </para> <para style="terp_default_9"> <font color="white"> </font> </para> diff --git a/addons/sale/sale.py b/addons/sale/sale.py index 2188f6dee5f..9c3ba5d5200 100644 --- a/addons/sale/sale.py +++ b/addons/sale/sale.py @@ -333,6 +333,16 @@ class sale_order(osv.osv): } return {'warning': warning} + def onchange_partner_order_id(self, cr, uid, ids, order_id, invoice_id=False, shipping_id=False, context={}): + if not order_id: + return {} + val = {} + if not invoice_id: + val['partner_invoice_id'] = order_id + if not shipping_id: + val['partner_shipping_id'] = order_id + return {'value': val} + def onchange_partner_id(self, cr, uid, ids, part): if not part: return {'value': {'partner_invoice_id': False, 'partner_shipping_id': False, 'partner_order_id': False, 'payment_term': False, 'fiscal_position': False}} @@ -691,6 +701,8 @@ class sale_order(osv.osv): 'location_id': order.shop_id.warehouse_id.lot_stock_id.id, 'procure_method': line.type, 'move_id': move_id, + # Added by mrp, but mrp is not a dependency, this will trigger a warning + # if mrp is not installed. 'property_ids': [(6, 0, [x.id for x in line.property_ids])], 'company_id': order.company_id.id, } diff --git a/addons/sale/sale_view.xml b/addons/sale/sale_view.xml index 3976abb5d05..3610d2d5e9e 100644 --- a/addons/sale/sale_view.xml +++ b/addons/sale/sale_view.xml @@ -113,7 +113,7 @@ <notebook colspan="5"> <page string="Sales Order"> <field name="partner_id" on_change="onchange_partner_id(partner_id)" domain="[('customer','=',True)]" context="{'search_default_customer':1}" required="1"/> - <field domain="[('partner_id','=',partner_id)]" name="partner_order_id"/> + <field domain="[('partner_id','=',partner_id)]" name="partner_order_id" on_change="onchange_partner_order_id(partner_order_id, partner_invoice_id, partner_shipping_id)"/> <field domain="[('partner_id','=',partner_id)]" name="partner_invoice_id" groups="base.group_extended"/> <field domain="[('partner_id','=',partner_id)]" name="partner_shipping_id" groups="base.group_extended"/> <field domain="[('type','=','sale')]" name="pricelist_id" groups="base.group_extended" on_change="onchange_pricelist_id(pricelist_id,order_line)"/> @@ -178,8 +178,10 @@ </form> <tree string="Sales Order Lines"> <field colspan="4" name="name"/> - <field name="product_uom_qty" string="Qty"/> + <field name="product_uom_qty" string="Qty(UoM)"/> <field name="product_uom" string="UoM"/> + <field groups="product.group_uos" name="product_uos_qty" string="Qty(UoS)"/> + <field groups="product.group_uos" name="product_uos" string="UoS"/> <field name="discount"/> <field name="price_unit"/> <field name="price_subtotal"/> diff --git a/addons/sale/stock.py b/addons/sale/stock.py index 9043bc9abe9..9e0a47b3ceb 100644 --- a/addons/sale/stock.py +++ b/addons/sale/stock.py @@ -198,3 +198,5 @@ class stock_picking(osv.osv): stock_picking() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/sale/stock_view.xml b/addons/sale/stock_view.xml index 943d528b7b4..7b9e90f6f0a 100644 --- a/addons/sale/stock_view.xml +++ b/addons/sale/stock_view.xml @@ -71,7 +71,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form,calendar</field> <field name="domain">[('type','=','out')]</field> - <field name="context">{'contact_display': 'partner_address', 'search_default_to_invoice': 1, 'search_default_done': 1}</field> + <field name="context">{'default_type': 'out', 'contact_display': 'partner_address', 'search_default_to_invoice': 1, 'search_default_done': 1}</field> <field name="search_view_id" ref="stock.view_picking_out_search"/> </record> <menuitem action="outgoing_picking_list_to_invoice" id="menu_action_picking_list_to_invoice" parent="base.menu_invoiced" groups="base.group_no_one" sequence="20"/> diff --git a/addons/sale_analytic_plans/__openerp__.py b/addons/sale_analytic_plans/__openerp__.py index 1850fbf8b2a..453a51fc724 100644 --- a/addons/sale_analytic_plans/__openerp__.py +++ b/addons/sale_analytic_plans/__openerp__.py @@ -20,9 +20,9 @@ ############################################################################## { - 'name': 'Sales Analytic Distribution Management', + 'name': 'Sales Analytic Distribution', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ The base module to manage analytic distribution and sales orders. ================================================================= diff --git a/addons/sale_crm/i18n/fr.po b/addons/sale_crm/i18n/fr.po index f61ff152f64..ce39c2219d5 100644 --- a/addons/sale_crm/i18n/fr.po +++ b/addons/sale_crm/i18n/fr.po @@ -7,15 +7,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2011-01-13 11:11+0000\n" -"Last-Translator: Maxime Chambreuil (http://www.savoirfairelinux.com) " -"<maxime.chambreuil@savoirfairelinux.com>\n" +"PO-Revision-Date: 2011-11-25 14:51+0000\n" +"Last-Translator: Numérigraphe <Unknown>\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: 2011-11-05 05:04+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-26 05:49+0000\n" +"X-Generator: Launchpad (build 14381)\n" #. module: sale_crm #: field:crm.make.sale,partner_id:0 @@ -31,7 +30,7 @@ msgstr "Convertir en devis" #: code:addons/sale_crm/wizard/crm_make_sale.py:108 #, python-format msgid "Opportunity '%s' is converted to Quotation." -msgstr "" +msgstr "L'opportunité '%s' a été convertie en devis." #. module: sale_crm #: code:addons/sale_crm/wizard/crm_make_sale.py:89 diff --git a/addons/sale_crm/wizard/crm_make_sale.py b/addons/sale_crm/wizard/crm_make_sale.py index d1f6dc98edd..ae0371a15e5 100644 --- a/addons/sale_crm/wizard/crm_make_sale.py +++ b/addons/sale_crm/wizard/crm_make_sale.py @@ -154,3 +154,5 @@ class crm_make_sale(osv.osv_memory): } crm_make_sale() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/sale_journal/__init__.py b/addons/sale_journal/__init__.py index b05803da6c6..2af863efc1b 100644 --- a/addons/sale_journal/__init__.py +++ b/addons/sale_journal/__init__.py @@ -21,3 +21,5 @@ import sale_journal + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/sale_journal/sale_journal.py b/addons/sale_journal/sale_journal.py index 5a2004842cd..edae822e832 100644 --- a/addons/sale_journal/sale_journal.py +++ b/addons/sale_journal/sale_journal.py @@ -85,3 +85,5 @@ class sale(osv.osv): return result sale() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/sale_layout/report/report_sale_layout.rml b/addons/sale_layout/report/report_sale_layout.rml index a0ccec0ab7b..c10279cc44b 100644 --- a/addons/sale_layout/report/report_sale_layout.rml +++ b/addons/sale_layout/report/report_sale_layout.rml @@ -140,21 +140,13 @@ <td> <para style="terp_default_Bold_9">Shipping address :</para> <para style="terp_default_9">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.street) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.zip) or '' ]] [[ (o.partner_shipping_id and o.partner_shipping_id.city) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.state_id and o.partner_shipping_id.state_id.name) or removeParentNode('para') ]] </para> - <para style="terp_default_9">[[ (o.partner_shipping_id and o.partner_shipping_id.country_id and o.partner_shipping_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ o.partner_shipping_id and display_address(o.partner_shipping_id) ]] </para> <para style="terp_default_9"> <font color="white"> </font> </para> <para style="terp_default_Bold_9">Invoice address :</para> <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.title and o.partner_invoice_id.title.name) or '' ]] [[ (o.partner_invoice_id and o.partner_invoice_id.name) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.street) or '' ]] </para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.zip) or '' ]] [[ (o.partner_invoice_id and o.partner_invoice_id.city) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.state_id and o.partner_invoice_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.partner_invoice_id and o.partner_invoice_id.country_id and o.partner_invoice_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ o.partner_invoice_id and display_address(o.partner_invoice_id) ]] </para> </td> <td> <para style="terp_default_8"> @@ -163,10 +155,7 @@ </td> <td> <para style="terp_default_9">[[ (o.partner_id and o.partner_id.title and o.partner_id.title.name) or '' ]] [[ (o.partner_id and o.partner_id.name) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_order_id and o.partner_order_id.street) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_order_id and o.partner_order_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (o.partner_order_id and o.partner_order_id.zip) or '' ]] [[ (o.partner_order_id and o.partner_order_id.city) or '' ]]</para> - <para style="terp_default_9">[[ (o.partner_order_id and o.partner_order_id.state_id and o.partner_order_id.state_id.name) or removeParentNode('para')]] [[ (o.partner_order_id and o.partner_order_id.country_id and o.partner_order_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ o.partner_order_id and display_address(o.partner_order_id) ]] </para> <para style="terp_default_9"> <font color="white"> </font> </para> diff --git a/addons/sale_layout/sale_layout_view.xml b/addons/sale_layout/sale_layout_view.xml index 79adefa32f3..27b8e4b4f96 100644 --- a/addons/sale_layout/sale_layout_view.xml +++ b/addons/sale_layout/sale_layout_view.xml @@ -18,10 +18,8 @@ <notebook> <page string="Order Line"> <group colspan="4" col="5"> - <field name="layout_type" on_change="onchange_sale_order_line_view(layout_type)"/> + <field colspan="3" name="layout_type" on_change="onchange_sale_order_line_view(layout_type)"/> <field name="sequence" groups="base.group_extended"/> - </group> - <group colspan="4" col="5"> <field colspan="3" context="{'partner_id':parent.partner_id,'quantity':product_uom_qty,'pricelist':parent.pricelist_id,'shop':parent.shop_id,'uom':product_uom}" name="product_id" @@ -46,7 +44,7 @@ attrs="{'invisible':[('layout_type','!=','article')],'required':[('layout_type','not in',['title','text','subtotal','line','break'])]}"/> <field groups="product.group_uos" name="product_uos_qty" on_change="uos_change(product_uos, product_uos_qty, product_id)"/> - <field groups="product.group_uos" name="product_uos"/> + <field groups="product.group_uos" name="product_uos" nolabel="1"/> <newline/> <field diff --git a/addons/sale_mrp/i18n/ar.po b/addons/sale_mrp/i18n/ar.po new file mode 100644 index 00000000000..3ab51c9a489 --- /dev/null +++ b/addons/sale_mrp/i18n/ar.po @@ -0,0 +1,66 @@ +# Arabic translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:16+0000\n" +"PO-Revision-Date: 2011-12-05 11:55+0000\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: Arabic <ar@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-06 05:28+0000\n" +"X-Generator: Launchpad (build 14435)\n" + +#. module: sale_mrp +#: help:mrp.production,sale_ref:0 +msgid "Indicate the Customer Reference from sales order." +msgstr "" + +#. module: sale_mrp +#: field:mrp.production,sale_ref:0 +msgid "Sales Reference" +msgstr "" + +#. module: sale_mrp +#: model:ir.model,name:sale_mrp.model_mrp_production +msgid "Manufacturing Order" +msgstr "" + +#. module: sale_mrp +#: model:ir.module.module,description:sale_mrp.module_meta_information +msgid "" +"\n" +" This module provides facility to the user to install mrp and sales " +"modules\n" +" at a time. It is basically used when we want to keep track of " +"production\n" +" orders generated from sales order.\n" +" It adds sales name and sales Reference on production order\n" +" " +msgstr "" + +#. module: sale_mrp +#: field:mrp.production,sale_name:0 +msgid "Sales Name" +msgstr "" + +#. module: sale_mrp +#: model:ir.module.module,shortdesc:sale_mrp.module_meta_information +msgid "Sales and MRP Management" +msgstr "" + +#. module: sale_mrp +#: constraint:mrp.production:0 +msgid "Order quantity cannot be negative or zero !" +msgstr "" + +#. module: sale_mrp +#: help:mrp.production,sale_name:0 +msgid "Indicate the name of sales order." +msgstr "" diff --git a/addons/share/__init__.py b/addons/share/__init__.py index e3c3acf1bc5..0ad202a6162 100644 --- a/addons/share/__init__.py +++ b/addons/share/__init__.py @@ -22,3 +22,5 @@ import ir_model import res_users import wizard + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/share/__openerp__.py b/addons/share/__openerp__.py index b9077109c3c..7a78783348c 100644 --- a/addons/share/__openerp__.py +++ b/addons/share/__openerp__.py @@ -22,11 +22,11 @@ { - "name" : "Web Share", + "name" : "Share any Document", "version" : "2.0", "depends" : ["base", "mail"], "author" : "OpenERP SA", - "category": 'Hidden', + "category": 'Tools', 'complexity': "easy", "description": """ This module adds generic sharing tools to your current OpenERP database. diff --git a/addons/share/i18n/hr.po b/addons/share/i18n/hr.po index 29c2187a5d2..8b1c7f29d88 100644 --- a/addons/share/i18n/hr.po +++ b/addons/share/i18n/hr.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2010-09-08 09:05+0000\n" +"PO-Revision-Date: 2011-12-08 17:51+0000\n" "Last-Translator: Goran Kliska <gkliska@gmail.com>\n" "Language-Team: Croatian <hr@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:45+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: share #: code:addons/share/web/editors.py:15 @@ -38,7 +38,7 @@ msgstr "" #. module: share #: help:res.groups,share:0 msgid "Group created to set access rights for sharing data with some users." -msgstr "" +msgstr "Group created to set access rights for sharing data with some users." #. module: share #: model:ir.module.module,shortdesc:share.module_meta_information @@ -48,7 +48,7 @@ msgstr "" #. module: share #: sql_constraint:res.users:0 msgid "You can not have two users with the same login !" -msgstr "" +msgstr "Ne možete imati dva korisnika sa istim korisničkim imenom !" #. module: share #: code:addons/share/wizard/share_wizard.py:76 @@ -76,22 +76,24 @@ msgstr "" #: constraint:res.users:0 msgid "The chosen company is not in the allowed companies for this user" msgstr "" +"Odabrana organizacija nije među dozvoljenim organizacijama za ovog korisnika" #. module: share #: model:ir.model,name:share.model_res_users msgid "res.users" -msgstr "" +msgstr "res.users" #. module: share #: view:share.wizard:0 msgid "Next" -msgstr "" +msgstr "Next" #. module: share #: help:share.wizard,action_id:0 msgid "" "The action that opens the screen containing the data you wish to share." msgstr "" +"The action that opens the screen containing the data you wish to share." #. module: share #: code:addons/share/wizard/share_wizard.py:68 @@ -113,7 +115,7 @@ msgstr "" #. module: share #: field:share.wizard.result.line,newly_created:0 msgid "Newly created" -msgstr "" +msgstr "Newly created" #. module: share #: field:share.wizard,share_root_url:0 @@ -131,7 +133,7 @@ msgstr "" #. module: share #: view:res.groups:0 msgid "Regular groups only (no share groups" -msgstr "" +msgstr "Regular groups only (no share groups" #. module: share #: selection:share.wizard,access_mode:0 @@ -163,7 +165,7 @@ msgstr "" #. module: share #: field:res.users,share:0 msgid "Share User" -msgstr "" +msgstr "Udio korisnika" #. module: share #: code:addons/share/wizard/share_wizard.py:452 @@ -210,7 +212,7 @@ msgstr "" #. module: share #: sql_constraint:res.groups:0 msgid "The name of the group must be unique !" -msgstr "" +msgstr "Naziv grupe mora biti jedinstven!" #. module: share #: selection:share.wizard,user_type:0 @@ -226,7 +228,7 @@ msgstr "" #. module: share #: view:res.groups:0 msgid "Groups" -msgstr "" +msgstr "Grupe" #. module: share #: view:share.wizard:0 @@ -236,14 +238,14 @@ msgstr "" #. module: share #: field:res.groups,share:0 msgid "Share Group" -msgstr "" +msgstr "Grupa dijeljenja" #. module: share #: code:addons/share/wizard/share_wizard.py:459 #: field:share.wizard.result.line,password:0 #, python-format msgid "Password" -msgstr "" +msgstr "Lozinka" #. module: share #: view:share.wizard:0 @@ -298,6 +300,8 @@ msgid "" "Please select the action that opens the screen containing the data you want " "to share." msgstr "" +"Please select the action that opens the screen containing the data you want " +"to share." #. module: share #: selection:share.wizard,user_type:0 @@ -308,12 +312,12 @@ msgstr "" #: view:share.wizard:0 #: field:share.wizard,result_line_ids:0 msgid "Summary" -msgstr "" +msgstr "Sažetak" #. module: share #: field:share.wizard,user_type:0 msgid "Users to share with" -msgstr "" +msgstr "Users to share with" #. module: share #: code:addons/share/wizard/share_wizard.py:304 @@ -339,6 +343,8 @@ msgid "" "Optionally, you may specify an additional domain restriction that will be " "applied to the shared data." msgstr "" +"Optionally, you may specify an additional domain restriction that will be " +"applied to the shared data." #. module: share #: view:share.wizard:0 @@ -356,17 +362,17 @@ msgstr "" #. module: share #: view:res.users:0 msgid "Regular users only (no share user)" -msgstr "" +msgstr "Redoviti korisnici samo (bez podijeljenih korisnika)" #. module: share #: field:share.wizard.result.line,share_url:0 msgid "Share URL" -msgstr "" +msgstr "Share URL" #. module: share #: field:share.wizard,domain:0 msgid "Domain" -msgstr "" +msgstr "Domena" #. module: share #: code:addons/share/wizard/share_wizard.py:314 @@ -380,12 +386,12 @@ msgstr "" #. module: share #: field:share.wizard,access_mode:0 msgid "Access Mode" -msgstr "" +msgstr "Način pristupa" #. module: share #: view:share.wizard:0 msgid "Access info" -msgstr "" +msgstr "Access info" #. module: share #: code:addons/share/wizard/share_wizard.py:454 @@ -398,13 +404,13 @@ msgstr "" #. module: share #: field:share.wizard,action_id:0 msgid "Action to share" -msgstr "" +msgstr "Action to share" #. module: share #: code:addons/share/web/editors.py:18 #, python-format msgid "Share" -msgstr "" +msgstr "Podjeli" #. module: share #: code:addons/share/wizard/share_wizard.py:434 @@ -420,7 +426,7 @@ msgstr "" #. module: share #: model:ir.model,name:share.model_share_wizard_result_line msgid "share.wizard.result.line" -msgstr "" +msgstr "share.wizard.result.line" #. module: share #: code:addons/share/wizard/share_wizard.py:313 @@ -435,22 +441,22 @@ msgstr "" #: model:ir.ui.menu,name:share.menu_action_share_wizard #: field:share.wizard.result.line,share_wizard_id:0 msgid "Share Wizard" -msgstr "" +msgstr "Asistent dijeljenja" #. module: share #: help:share.wizard,user_type:0 msgid "Select the type of user(s) you would like to share data with." -msgstr "" +msgstr "Odaberite vrstu korisnika (e) s kojima želite dijeliti podatke." #. module: share #: view:share.wizard:0 msgid "Cancel" -msgstr "" +msgstr "Odustani" #. module: share #: view:share.wizard:0 msgid "Close" -msgstr "" +msgstr "Zatvori" #. module: share #: help:res.users,share:0 @@ -458,11 +464,13 @@ msgid "" "External user with limited access, created only for the purpose of sharing " "data." msgstr "" +"External user with limited access, created only for the purpose of sharing " +"data." #. module: share #: help:share.wizard,domain:0 msgid "Optional domain for further data filtering" -msgstr "" +msgstr "Optional domain for further data filtering" #. module: share #: selection:share.wizard,access_mode:0 @@ -474,3 +482,6 @@ msgstr "" #, python-format msgid "*usual password*" msgstr "" + +#~ msgid "Access Groups" +#~ msgstr "Access Groups" diff --git a/addons/share/ir_model.py b/addons/share/ir_model.py index 437a0c51095..0927462b5c3 100644 --- a/addons/share/ir_model.py +++ b/addons/share/ir_model.py @@ -43,4 +43,6 @@ class ir_model_access(osv.osv): a.perm_''' + access_mode, (model_name,)) return [x[0] for x in cr.fetchall()] -ir_model_access()
\ No newline at end of file +ir_model_access() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/share/res_users.py b/addons/share/res_users.py index 07031ab3845..f7a81a24948 100644 --- a/addons/share/res_users.py +++ b/addons/share/res_users.py @@ -37,3 +37,5 @@ class res_users(osv.osv): help="External user with limited access, created only for the purpose of sharing data.") } res_users() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/share/wizard/__init__.py b/addons/share/wizard/__init__.py index 2034dfe2fc6..1dae9e7a508 100644 --- a/addons/share/wizard/__init__.py +++ b/addons/share/wizard/__init__.py @@ -21,3 +21,5 @@ import share_wizard + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/share/wizard/share_wizard.py b/addons/share/wizard/share_wizard.py index 1cd8104100c..5f33f02f9e5 100644 --- a/addons/share/wizard/share_wizard.py +++ b/addons/share/wizard/share_wizard.py @@ -754,3 +754,5 @@ class share_result_line(osv.osv_memory): 'newly_created': True, } share_result_line() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock/__openerp__.py b/addons/stock/__openerp__.py index 73215505177..882f0f78e97 100644 --- a/addons/stock/__openerp__.py +++ b/addons/stock/__openerp__.py @@ -88,6 +88,9 @@ Thanks to the double entry management, the inventory controlling is powerful and 'test/stock_demo_backorder.yml' ], 'installable': True, + 'application': True, 'active': False, 'certificate': '0055421559965', } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock/board_warehouse_view.xml b/addons/stock/board_warehouse_view.xml index 68485ab2b49..66de741c3df 100644 --- a/addons/stock/board_warehouse_view.xml +++ b/addons/stock/board_warehouse_view.xml @@ -2,7 +2,7 @@ <openerp> <data> <record id="action_incoming_product_board" model="ir.actions.act_window"> - <field name="name">Incoming Product</field> + <field name="name">Incoming Shipments</field> <field name="res_model">stock.move</field> <field name="type">ir.actions.act_window</field> <field name="view_type">form</field> @@ -12,7 +12,7 @@ </record> <record id="action_outgoing_product_board" model="ir.actions.act_window"> - <field name="name">Outgoing Product</field> + <field name="name">Delivery Orders</field> <field name="res_model">stock.move</field> <field name="type">ir.actions.act_window</field> <field name="view_type">form</field> @@ -28,7 +28,7 @@ <field name="view_mode">graph,tree</field> <field name="domain">[('type','=','in'),('day','<=', time.strftime('%Y-%m-%d')),('day','>',(datetime.date.today()-datetime.timedelta(days=15)).strftime('%Y-%m-%d'))]</field> <field name="view_id" ref="stock.view_stock_graph_board"></field> - <field name="context">{'search_default_month-1':1,'search_default_in':1,'group_by':['day'], 'group_by_no_leaf':1}</field> + <field name="context">{'search_default_in':1}</field> </record> <record model="ir.actions.act_window" id="action_stock_outgoing_product_delay"> <field name="name">Outgoing Products Delay</field> @@ -37,7 +37,7 @@ <field name="view_mode">graph,tree</field> <field name="domain">[('type','=','out'),('day','<=', time.strftime('%Y-%m-%d')),('day','>',(datetime.date.today()-datetime.timedelta(days=15)).strftime('%Y-%m-%d'))]</field> <field name="view_id" ref="stock.view_stock_graph_board"></field> - <field name="context">{'search_default_month-1':1,'search_default_out':1,'group_by':['day'], 'group_by_no_leaf':1}</field> + <field name="context">{'search_default_out':1}</field> </record> <record id="board_warehouse_form" model="ir.ui.view"> <field name="name">board.warehouse.form</field> @@ -45,15 +45,15 @@ <field name="type">form</field> <field name="arch" type="xml"> <form string="Warehouse board"> - <board style="1-2"> + <board style="2-1"> <column> - <action name="%(action_incoming_product_board)d" string="Incoming Product"/> - <action name="%(action_outgoing_product_board)d" string="Outgoing Product"/> + <action name="%(action_incoming_product_board)d" string="Incoming Shipments"/> + <action name="%(action_outgoing_product_board)d" string="Delivery Orders"/> </column> <column> - <action name="%(action_stock_incoming_product_delay)d" string="Incoming Products Delay"/> - <action name="%(action_stock_outgoing_product_delay)d" string="Outgoing Products Delay"/> + <action name="%(action_stock_incoming_product_delay)d" string="Incoming Products Delay" creatable="true"/> + <action name="%(action_stock_outgoing_product_delay)d" string="Outgoing Products Delay" creatable="true"/> </column> </board> </form> diff --git a/addons/stock/i18n/ar.po b/addons/stock/i18n/ar.po index fcc9d11f91c..867df8a22ca 100644 --- a/addons/stock/i18n/ar.po +++ b/addons/stock/i18n/ar.po @@ -2408,7 +2408,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/bg.po b/addons/stock/i18n/bg.po index 373159d3b9f..6224096db5e 100644 --- a/addons/stock/i18n/bg.po +++ b/addons/stock/i18n/bg.po @@ -2439,7 +2439,7 @@ msgstr "Преглед на склад с продукти" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/bs.po b/addons/stock/i18n/bs.po index 0dce966cc34..b9e465eb193 100644 --- a/addons/stock/i18n/bs.po +++ b/addons/stock/i18n/bs.po @@ -2408,7 +2408,7 @@ msgstr "Pregled zaliha proizvoda" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/ca.po b/addons/stock/i18n/ca.po index 55233026269..0e53e4eecb7 100644 --- a/addons/stock/i18n/ca.po +++ b/addons/stock/i18n/ca.po @@ -2621,7 +2621,7 @@ msgstr "Veure estoc de productes" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Albarà intern" #. module: stock diff --git a/addons/stock/i18n/cs.po b/addons/stock/i18n/cs.po index c74ce13948f..59d910a70ab 100644 --- a/addons/stock/i18n/cs.po +++ b/addons/stock/i18n/cs.po @@ -2439,7 +2439,7 @@ msgstr "Zobrazit zásoby výrobků" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Vnitřní naváděcí seznam" #. module: stock diff --git a/addons/stock/i18n/da.po b/addons/stock/i18n/da.po index 007c15baa00..5a4deba51cb 100644 --- a/addons/stock/i18n/da.po +++ b/addons/stock/i18n/da.po @@ -2409,7 +2409,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/de.po b/addons/stock/i18n/de.po index 072c6d34cab..aaea5ee2691 100644 --- a/addons/stock/i18n/de.po +++ b/addons/stock/i18n/de.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2011-11-07 12:47+0000\n" -"Last-Translator: Ferdinand-camptocamp <Unknown>\n" +"PO-Revision-Date: 2011-11-29 07:02+0000\n" +"Last-Translator: Ferdinand @ Camptocamp <Unknown>\n" "Language-Team: German <kde-i18n-doc@kde.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-12 04:50+0000\n" -"X-Generator: Launchpad (build 14277)\n" +"X-Launchpad-Export-Date: 2011-11-30 05:27+0000\n" +"X-Generator: Launchpad (build 14404)\n" #. module: stock #: field:product.product,track_outgoing:0 @@ -2256,7 +2256,7 @@ msgstr "Zukünftige Menge" #. module: stock #: field:product.category,property_stock_valuation_account_id:0 msgid "Stock Valuation Account" -msgstr "" +msgstr "Lagerbestandskonto" #. module: stock #: field:stock.move,note:0 @@ -2614,7 +2614,7 @@ msgstr "Zeige Lagerorte der Produkte" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Interne Lieferauftragsliste" #. module: stock @@ -4220,7 +4220,7 @@ msgstr "Optionale Lagerort Details, nur als Information" #. module: stock #: view:product.product:0 msgid "Expected Stock Variations" -msgstr "" +msgstr "Erwartete Lagerveränderungen" #~ msgid "LIFO" #~ msgstr "LiFo" diff --git a/addons/stock/i18n/el.po b/addons/stock/i18n/el.po index 2de9e65b1bc..a4266fad473 100644 --- a/addons/stock/i18n/el.po +++ b/addons/stock/i18n/el.po @@ -2428,7 +2428,7 @@ msgstr "Προβολή Αποθέματος Προϊόντων" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/es.po b/addons/stock/i18n/es.po index 3b030cfef80..b2e791189de 100644 --- a/addons/stock/i18n/es.po +++ b/addons/stock/i18n/es.po @@ -2631,7 +2631,7 @@ msgstr "Ver stock de productos" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Albarán interno" #. module: stock diff --git a/addons/stock/i18n/es_AR.po b/addons/stock/i18n/es_AR.po index abe5da9e081..d2a6279f8b7 100644 --- a/addons/stock/i18n/es_AR.po +++ b/addons/stock/i18n/es_AR.po @@ -2412,7 +2412,7 @@ msgstr "Ver stock de productos" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/es_CL.po b/addons/stock/i18n/es_CL.po index ea086475e65..d25cf3a883c 100644 --- a/addons/stock/i18n/es_CL.po +++ b/addons/stock/i18n/es_CL.po @@ -2629,7 +2629,7 @@ msgstr "Ver stock de productos" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Albarán interno" #. module: stock diff --git a/addons/stock/i18n/es_EC.po b/addons/stock/i18n/es_EC.po index 89adf47cf6e..5275452160b 100644 --- a/addons/stock/i18n/es_EC.po +++ b/addons/stock/i18n/es_EC.po @@ -2583,7 +2583,7 @@ msgstr "Ver stock de productos" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Lista movimiento internos" #. module: stock diff --git a/addons/stock/i18n/es_MX.po b/addons/stock/i18n/es_MX.po index 37a72b5d89f..0f3b4b96f30 100644 --- a/addons/stock/i18n/es_MX.po +++ b/addons/stock/i18n/es_MX.po @@ -2635,7 +2635,7 @@ msgstr "Ver stock de productos" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Albarán interno" #. module: stock diff --git a/addons/stock/i18n/es_MX.po.moved b/addons/stock/i18n/es_MX.po.moved index ddb33a01138..696ebe8e9a7 100644 --- a/addons/stock/i18n/es_MX.po.moved +++ b/addons/stock/i18n/es_MX.po.moved @@ -2282,7 +2282,7 @@ msgstr "Ver stock de productos" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Lista de empaque interna" #. module: stock diff --git a/addons/stock/i18n/es_VE.po b/addons/stock/i18n/es_VE.po index 37a72b5d89f..0f3b4b96f30 100644 --- a/addons/stock/i18n/es_VE.po +++ b/addons/stock/i18n/es_VE.po @@ -2635,7 +2635,7 @@ msgstr "Ver stock de productos" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Albarán interno" #. module: stock diff --git a/addons/stock/i18n/et.po b/addons/stock/i18n/et.po index f6955029f12..3577e185b16 100644 --- a/addons/stock/i18n/et.po +++ b/addons/stock/i18n/et.po @@ -2396,7 +2396,7 @@ msgstr "Vaata toodete laoseisu" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/fi.po b/addons/stock/i18n/fi.po index 1d0d50b89a5..ecd82c8f78b 100644 --- a/addons/stock/i18n/fi.po +++ b/addons/stock/i18n/fi.po @@ -2490,7 +2490,7 @@ msgstr "Näytä tuotteiden varasto" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Sisäinen keräilylista" #. module: stock diff --git a/addons/stock/i18n/fr.po b/addons/stock/i18n/fr.po index 92d99777e8e..ccc3725170c 100644 --- a/addons/stock/i18n/fr.po +++ b/addons/stock/i18n/fr.po @@ -2649,7 +2649,7 @@ msgstr "Voir les stocks produits" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Bon de transfert interne" #. module: stock diff --git a/addons/stock/i18n/gl.po b/addons/stock/i18n/gl.po index a1341961104..c98825c2304 100644 --- a/addons/stock/i18n/gl.po +++ b/addons/stock/i18n/gl.po @@ -2409,7 +2409,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/hr.po b/addons/stock/i18n/hr.po index cb76c9fba0e..b33c8c571d9 100644 --- a/addons/stock/i18n/hr.po +++ b/addons/stock/i18n/hr.po @@ -1,4 +1,4 @@ -# Translation of OpenERP Server. +## Translation of OpenERP Server. # This file contains the translation of the following modules: # * stock # @@ -7,19 +7,19 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.4\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2010-09-29 09:23+0000\n" -"Last-Translator: OpenERP Administrators <Unknown>\n" +"PO-Revision-Date: 2011-12-08 16:12+0000\n" +"Last-Translator: Goran Kliska <gkliska@gmail.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: 2011-11-12 04:51+0000\n" -"X-Generator: Launchpad (build 14277)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: stock #: field:product.product,track_outgoing:0 msgid "Track Outgoing Lots" -msgstr "Prati izlazne lotove" +msgstr "Prati lot-ove na izlazu" #. module: stock #: model:ir.model,name:stock.model_stock_ups_upload @@ -42,7 +42,7 @@ msgstr "Ulančana lokacija ako je namještena" #: view:stock.move:0 #: view:stock.picking:0 msgid "Put in a new pack" -msgstr "" +msgstr "U novi paket" #. module: stock #: field:stock.move.split.lines,action:0 @@ -52,36 +52,36 @@ msgstr "" #. module: stock #: view:stock.production.lot:0 msgid "Upstream Traceability" -msgstr "" +msgstr "Upstream Traceability" #. module: stock #: model:ir.actions.act_window,name:stock.action_stock_line_date #: model:ir.ui.menu,name:stock.menu_report_stock_line_date msgid "Last Product Inventories" -msgstr "" +msgstr "Zadnje inventure" #. module: stock #: view:stock.move:0 msgid "Today" -msgstr "" +msgstr "Danas" #. module: stock #: field:stock.production.lot.revision,indice:0 msgid "Revision Number" -msgstr "" +msgstr "Revision Number" #. module: stock #: view:stock.move.memory.in:0 #: view:stock.move.memory.out:0 msgid "Product Moves" -msgstr "" +msgstr "Product Moves" #. module: stock #: model:ir.actions.act_window,name:stock.action_stock_move_report #: model:ir.ui.menu,name:stock.menu_action_stock_move_report #: view:report.stock.move:0 msgid "Moves Analysis" -msgstr "" +msgstr "Analiza skl. prijenosa" #. module: stock #: help:stock.production.lot,ref:0 @@ -89,6 +89,7 @@ msgid "" "Internal reference number in case it differs from the manufacturer's serial " "number" msgstr "" +"Interni broj za slučajeve kada se razlikuje od proizvođačeva serijskog broja" #. module: stock #: model:ir.actions.act_window,help:stock.action_inventory_form @@ -97,11 +98,14 @@ msgid "" "per location. You can use it once a year when you do the general inventory " "or whenever you need it, to correct the current stock level of a product." msgstr "" +"Povremene inventure se koriste za utvrđivanje stvarnih zaliha svih ili nekih " +"proizvoda na nekoj lokaciji. Možete ih organizirati jednom godišnje ili po " +"potrebi." #. module: stock #: view:stock.picking:0 msgid "Picking list" -msgstr "" +msgstr "Skladišnica" #. module: stock #: report:lot.stock.overview:0 @@ -133,12 +137,14 @@ msgid "" "This is the list of all delivery orders that have to be prepared, according " "to your different sales orders and your logistics rules." msgstr "" +"Ovo je popis svih otpremnica koje treba pripremiti. Nastale su iz prodajnih " +"naloga i pravila logistike." #. module: stock #: view:report.stock.move:0 #: field:report.stock.move,day:0 msgid "Day" -msgstr "" +msgstr "Dan" #. module: stock #: view:stock.inventory:0 @@ -156,19 +162,19 @@ msgstr "JM" #: model:ir.ui.menu,name:stock.menu_action_inventory_form #, python-format msgid "Physical Inventories" -msgstr "" +msgstr "Fizičke inventure" #. module: stock #: field:product.category,property_stock_journal:0 #: view:report.stock.move:0 #: field:stock.change.standard.price,stock_journal:0 msgid "Stock journal" -msgstr "Dnevnik zalihe" +msgstr "Stock journal" #. module: stock #: view:report.stock.move:0 msgid "Incoming" -msgstr "" +msgstr "Ulazna" #. module: stock #: help:product.category,property_stock_account_output_categ:0 @@ -189,7 +195,7 @@ msgstr "" #. module: stock #: model:ir.actions.act_window,name:stock.action_partial_move msgid "Deliver/Receive Products" -msgstr "" +msgstr "Isporuči/zaprimi proizvode" #. module: stock #: code:addons/stock/report/report_stock.py:78 @@ -210,29 +216,29 @@ msgstr "" #. module: stock #: selection:stock.picking,invoice_state:0 msgid "Not Applicable" -msgstr "" +msgstr "Not Applicable" #. module: stock #: help:stock.tracking,serial:0 msgid "Other reference or serial number" -msgstr "" +msgstr "Druga oznaka ili serijski broj" #. module: stock #: field:stock.move,origin:0 #: view:stock.picking:0 #: field:stock.picking,origin:0 msgid "Origin" -msgstr "" +msgstr "Izvor" #. module: stock #: view:report.stock.lines.date:0 msgid "Non Inv" -msgstr "" +msgstr "Non Inv" #. module: stock #: view:stock.tracking:0 msgid "Pack Identification" -msgstr "" +msgstr "Identifikacija paketa" #. module: stock #: view:stock.move:0 @@ -240,7 +246,7 @@ msgstr "" #: field:stock.picking,name:0 #: view:stock.production.lot:0 msgid "Reference" -msgstr "Referenca" +msgstr "Vezna oznaka" #. module: stock #: code:addons/stock/stock.py:661 @@ -259,6 +265,8 @@ msgid "" "If checked, all product quantities will be set to zero to help ensure a real " "physical inventory is done" msgstr "" +"If checked, all product quantities will be set to zero to help ensure a real " +"physical inventory is done" #. module: stock #: model:ir.model,name:stock.model_stock_move_split_lines @@ -282,7 +290,7 @@ msgstr "" #. module: stock #: field:stock.invoice.onshipping,group:0 msgid "Group by partner" -msgstr "Grupiraj prema partneru" +msgstr "Grupiraj po partneru" #. module: stock #: model:ir.model,name:stock.model_res_partner @@ -301,13 +309,13 @@ msgstr "Partner" #: help:stock.move.memory.in,currency:0 #: help:stock.move.memory.out,currency:0 msgid "Currency in which Unit cost is expressed" -msgstr "" +msgstr "Currency in which Unit cost is expressed" #. module: stock #: code:addons/stock/wizard/stock_return_picking.py:135 #, python-format msgid "No invoicing" -msgstr "" +msgstr "No invoicing" #. module: stock #: model:ir.model,name:stock.model_stock_production_lot @@ -319,23 +327,23 @@ msgstr "Proizvodni lot" #. module: stock #: model:ir.ui.menu,name:stock.menu_stock_uom_categ_form_action msgid "Units of Measure Categories" -msgstr "" +msgstr "Kategorije jedinica mjere" #. module: stock #: help:stock.incoterms,code:0 msgid "Code for Incoterms" -msgstr "" +msgstr "Code for Incoterms" #. module: stock #: field:stock.tracking,move_ids:0 msgid "Moves for this pack" -msgstr "" +msgstr "Skl. prijenosi za ovaj paket" #. module: stock #: selection:report.stock.inventory,location_type:0 #: selection:stock.location,usage:0 msgid "Internal Location" -msgstr "Unutarnja lokacija" +msgstr "Interna lokacija" #. module: stock #: view:stock.inventory:0 @@ -366,12 +374,12 @@ msgstr "Prava vrijednost zalihe" #. module: stock #: field:report.stock.move,day_diff2:0 msgid "Lag (Days)" -msgstr "" +msgstr "Kašnjenje(dani)" #. module: stock #: model:ir.model,name:stock.model_action_traceability msgid "Action traceability " -msgstr "" +msgstr "Action traceability " #. module: stock #: field:stock.location,posy:0 @@ -393,13 +401,13 @@ msgstr "JM" #: view:stock.production.lot:0 #: field:stock.production.lot,stock_available:0 msgid "Available" -msgstr "Raspoloživo" +msgstr "Available" #. module: stock #: view:stock.picking:0 #: field:stock.picking,min_date:0 msgid "Expected Date" -msgstr "" +msgstr "Očekivani datum" #. module: stock #: view:board.board:0 @@ -411,12 +419,12 @@ msgstr "" #: model:ir.actions.act_window,help:stock.action_warehouse_form msgid "" "Create and manage your warehouses and assign them a location from here" -msgstr "" +msgstr "Kreirajte i upravljajte skladištima i dodjelite im lokacije" #. module: stock #: field:report.stock.move,product_qty_in:0 msgid "In Qty" -msgstr "" +msgstr "Kol. ulaza" #. module: stock #: code:addons/stock/wizard/stock_fill_inventory.py:115 @@ -433,12 +441,12 @@ msgstr "Izlaz lokacije" #: model:ir.actions.act_window,name:stock.split_into #: model:ir.model,name:stock.model_stock_split_into msgid "Split into" -msgstr "" +msgstr "Razdvoji u" #. module: stock #: field:stock.move,price_currency_id:0 msgid "Currency for average price" -msgstr "" +msgstr "Valuta prosječne cijene" #. module: stock #: help:product.template,property_stock_account_input:0 @@ -458,22 +466,22 @@ msgstr "Tip lokacije" #: help:report.stock.move,type:0 #: help:stock.picking,type:0 msgid "Shipping type specify, goods coming in or going out." -msgstr "" +msgstr "Shipping type specify, goods coming in or going out." #. module: stock #: model:ir.actions.report.xml,name:stock.report_move_labels msgid "Item Labels" -msgstr "" +msgstr "Labela" #. module: stock #: model:ir.model,name:stock.model_report_stock_move msgid "Moves Statistics" -msgstr "" +msgstr "Moves Statistics" #. module: stock #: view:stock.production.lot:0 msgid "Product Lots Filter" -msgstr "" +msgstr "Product Lots Filter" #. module: stock #: report:lot.stock.overview:0 @@ -489,11 +497,13 @@ msgid "" "Current quantity of products with this Production Lot Number available in " "company warehouses" msgstr "" +"Trenutna količina proizvoda s ovim proizvodnim lot-om dostupna u skladištima " +"organizacije" #. module: stock #: field:stock.move,move_history_ids:0 msgid "Move History (child moves)" -msgstr "" +msgstr "Povijest promjena (child moves)" #. module: stock #: code:addons/stock/stock.py:1984 @@ -513,7 +523,7 @@ msgstr "Interni prijenosi" #. module: stock #: field:stock.move,location_dest_id:0 msgid "Destination Location" -msgstr "" +msgstr "Odredišna lokacija" #. module: stock #: code:addons/stock/stock.py:751 @@ -530,7 +540,7 @@ msgstr "Pakiranje" #. module: stock #: report:stock.picking.list:0 msgid "Order(Origin)" -msgstr "Narudžba(ishodište)" +msgstr "Nalog(Izvor)" #. module: stock #: report:lot.stock.overview:0 @@ -546,11 +556,15 @@ msgid "" "buttons on the right of each line. You can filter the products to deliver by " "customer, products or sale order (using the Origin field)." msgstr "" +"You will find in this list all products you have to deliver to your " +"customers. You can process the deliveries directly from this list using the " +"buttons on the right of each line. You can filter the products to deliver by " +"customer, products or sale order (using the Origin field)." #. module: stock #: model:ir.ui.menu,name:stock.menu_stock_inventory_control msgid "Inventory Control" -msgstr "" +msgstr "Kontrola inventure" #. module: stock #: view:stock.location:0 @@ -562,7 +576,7 @@ msgstr "Dodatne informacije" #: report:lot.stock.overview:0 #: report:lot.stock.overview_all:0 msgid "Location / Product" -msgstr "" +msgstr "Lokacija / Proizvod" #. module: stock #: code:addons/stock/stock.py:1306 @@ -573,7 +587,7 @@ msgstr "" #. module: stock #: field:stock.tracking,serial:0 msgid "Additional Reference" -msgstr "" +msgstr "Additional Reference" #. module: stock #: view:stock.production.lot.revision:0 @@ -586,6 +600,8 @@ msgid "" "Forces to specify a Production Lot for all moves containing this product and " "going to a Customer Location" msgstr "" +"Forces to specify a Production Lot for all moves containing this product and " +"going to a Customer Location" #. module: stock #: model:ir.actions.act_window,help:stock.action_stock_journal_form @@ -595,6 +611,10 @@ msgid "" "worker/team that should perform the operation. Examples of stock journals " "may be: quality control, pick lists, packing, etc." msgstr "" +"The stock journal system allows you to assign each stock operation to a " +"specific journal according to the type of operation to perform or the " +"worker/team that should perform the operation. Examples of stock journals " +"may be: quality control, pick lists, packing, etc." #. module: stock #: field:stock.location,complete_name:0 @@ -605,7 +625,7 @@ msgstr "Naziv lokacije" #. module: stock #: view:stock.inventory:0 msgid "Posted Inventory" -msgstr "" +msgstr "Posted Inventory" #. module: stock #: view:stock.move:0 @@ -616,12 +636,12 @@ msgstr "Detalji prijenosa" #. module: stock #: view:report.stock.move:0 msgid "Outgoing" -msgstr "" +msgstr "Outgoing" #. module: stock #: selection:report.stock.move,month:0 msgid "August" -msgstr "" +msgstr "Kolovoz" #. module: stock #: model:ir.actions.act_window,name:stock.action_tracking_form @@ -629,22 +649,22 @@ msgstr "" #: model:ir.ui.menu,name:stock.menu_action_tracking_form #: view:stock.tracking:0 msgid "Packs" -msgstr "" +msgstr "Paketi" #. module: stock #: constraint:stock.move:0 msgid "You try to assign a lot which is not from the same product" -msgstr "" +msgstr "Pokušavate pridružiti lot koji nije iz istog proizvoda" #. module: stock #: view:res.partner:0 msgid "Sales & Purchases" -msgstr "Prodaje i kupovine" +msgstr "Prodaja i nabava" #. module: stock #: selection:report.stock.move,month:0 msgid "June" -msgstr "" +msgstr "Lipanj" #. module: stock #: field:product.template,property_stock_procurement:0 @@ -670,17 +690,17 @@ msgstr "Primatelj" #: model:ir.actions.act_window,name:stock.action_location_tree #: model:ir.ui.menu,name:stock.menu_action_location_tree msgid "Location Structure" -msgstr "" +msgstr "Stuktura lokacija" #. module: stock #: selection:report.stock.move,month:0 msgid "October" -msgstr "" +msgstr "Listopad" #. module: stock #: model:ir.model,name:stock.model_stock_inventory_line msgid "Inventory Line" -msgstr "" +msgstr "Stavka inventure" #. module: stock #: help:product.category,property_stock_journal:0 @@ -688,11 +708,13 @@ msgid "" "When doing real-time inventory valuation, this is the Accounting Journal in " "which entries will be automatically posted when stock moves are processed." msgstr "" +"When doing real-time inventory valuation, this is the Accounting Journal in " +"which entries will be automatically posted when stock moves are processed." #. module: stock #: model:ir.actions.act_window,name:stock.action_partial_picking msgid "Process Picking" -msgstr "" +msgstr "Izvrši prijem/otpremu" #. module: stock #: code:addons/stock/product.py:355 @@ -707,11 +729,13 @@ msgid "" "Check this option to select existing lots in the list below, otherwise you " "should enter new ones line by line." msgstr "" +"Provjerite opciju za odabir postojećeg lota sa popisa ispod, u suprotnom " +"potrebno je unijeti nove retke." #. module: stock #: field:stock.move,move_dest_id:0 msgid "Destination Move" -msgstr "" +msgstr "Prijenos odredišta" #. module: stock #: view:stock.move:0 @@ -738,17 +762,17 @@ msgstr "Ulaz lokacije" #. module: stock #: help:stock.picking,date:0 msgid "Date of Order" -msgstr "" +msgstr "Datum naloga" #. module: stock #: selection:product.product,valuation:0 msgid "Periodical (manual)" -msgstr "" +msgstr "Ručno (po potrebi)" #. module: stock #: model:stock.location,name:stock.location_procurement msgid "Procurements" -msgstr "Nabave" +msgstr "Nabava" #. module: stock #: model:stock.location,name:stock.stock_location_3 @@ -758,25 +782,25 @@ msgstr "IT dobavljači" #. module: stock #: model:ir.actions.act_window,name:stock.action_inventory_form_draft msgid "Draft Physical Inventories" -msgstr "" +msgstr "Nacrti fizičkih inventura" #. module: stock #: selection:report.stock.inventory,location_type:0 #: selection:stock.location,usage:0 msgid "Transit Location for Inter-Companies Transfers" -msgstr "" +msgstr "Tranzitna lokacija za transfere između organizacija" #. module: stock #: model:ir.actions.act_window,name:stock.action_view_change_product_quantity #: model:ir.model,name:stock.model_stock_change_product_qty #: view:stock.change.product.qty:0 msgid "Change Product Quantity" -msgstr "" +msgstr "Promjeni količinu proizvoda" #. module: stock #: model:ir.model,name:stock.model_stock_inventory_merge msgid "Merge Inventory" -msgstr "" +msgstr "Spoji zalihu" #. module: stock #: code:addons/stock/product.py:371 @@ -789,14 +813,14 @@ msgstr "" #: model:ir.ui.menu,name:stock.menu_action_picking_tree4 #: view:stock.picking:0 msgid "Incoming Shipments" -msgstr "" +msgstr "Primke" #. module: stock #: view:report.stock.inventory:0 #: view:stock.move:0 #: view:stock.picking:0 msgid "Scrap" -msgstr "" +msgstr "Scrap" #. module: stock #: field:stock.location,child_ids:0 @@ -806,12 +830,12 @@ msgstr "Sadrži" #. module: stock #: view:board.board:0 msgid "Incoming Products Delay" -msgstr "" +msgstr "Kašnjenje ulaza" #. module: stock #: view:stock.location:0 msgid "Stock Locations" -msgstr "" +msgstr "Skladišne lokacije" #. module: stock #: report:lot.stock.overview:0 @@ -828,12 +852,12 @@ msgstr "" #. module: stock #: field:stock.move,date_expected:0 msgid "Scheduled Date" -msgstr "" +msgstr "Planirani datum" #. module: stock #: view:stock.tracking:0 msgid "Pack Search" -msgstr "" +msgstr "Traži pakete" #. module: stock #: selection:stock.move,priority:0 @@ -844,7 +868,7 @@ msgstr "Hitno" #: view:stock.picking:0 #: report:stock.picking.list:0 msgid "Journal" -msgstr "" +msgstr "Dnevnik" #. module: stock #: code:addons/stock/stock.py:1315 @@ -859,16 +883,19 @@ msgid "" "needed.Set a location if you produce at a fixed location. This can be a " "partner location if you subcontract the manufacturing operations." msgstr "" +"Keep empty if you produce at the location where the finished products are " +"needed.Set a location if you produce at a fixed location. This can be a " +"partner location if you subcontract the manufacturing operations." #. module: stock #: view:res.partner:0 msgid "Inventory Properties" -msgstr "" +msgstr "Inventura" #. module: stock #: field:report.stock.move,day_diff:0 msgid "Execution Lead Time (Days)" -msgstr "" +msgstr "Vodeće vrijeme izvršenja (dana)" #. module: stock #: model:ir.actions.act_window,name:stock.act_stock_product_location_open @@ -881,17 +908,21 @@ msgid "" "Optional address where goods are to be delivered, specifically used for " "allotment" msgstr "" +"Optional address where goods are to be delivered, specifically used for " +"allotment" #. module: stock #: view:report.stock.move:0 msgid "Month-1" -msgstr "" +msgstr "Month-1" #. module: stock #: help:stock.location,active:0 msgid "" "By unchecking the active field, you may hide a location without deleting it." msgstr "" +"Neaktivne lokacije se ne pojavljuju u listama odabira. Lokacije koje se više " +"ne koriste označite kao neaktivne." #. module: stock #: model:ir.actions.report.xml,name:stock.report_picking_list @@ -901,7 +932,7 @@ msgstr "Lista pakiranja" #. module: stock #: field:stock.location,stock_virtual:0 msgid "Virtual Stock" -msgstr "Virtualna zaliha" +msgstr "Efektivna zaliha" #. module: stock #: selection:report.stock.inventory,location_type:0 @@ -912,7 +943,7 @@ msgstr "Pogled" #. module: stock #: field:stock.location,parent_left:0 msgid "Left Parent" -msgstr "" +msgstr "Left Parent" #. module: stock #: code:addons/stock/wizard/stock_partial_move.py:132 @@ -929,7 +960,7 @@ msgstr "" #. module: stock #: constraint:product.product:0 msgid "Error: Invalid ean code" -msgstr "" +msgstr "Greška: Neispravan barkod!" #. module: stock #: code:addons/stock/product.py:148 @@ -941,12 +972,12 @@ msgstr "" #. module: stock #: field:product.template,property_stock_production:0 msgid "Production Location" -msgstr "Lokacije proizvodnje" +msgstr "Lokacija proizvodnje" #. module: stock #: help:stock.picking,address_id:0 msgid "Address of partner" -msgstr "" +msgstr "Adresa partnera" #. module: stock #: model:res.company,overdue_msg:stock.res_company_shop0 @@ -996,6 +1027,28 @@ msgid "" "location consumes the raw material and produces finished products\n" " " msgstr "" +"* Lokacija dobavljača: Virtualna lokacija koja predstavlja izvorišnu " +"lokaciju za proizvode koje nabavljate od dobavljača\n" +" \n" +"* Pogled: Virtualna lokacija koju koristite za kreiranje hijerarhije " +"lokacija. Lokacije vrste Pogled će zbrajati podređene lokacije, a same ne " +"sadrže proizvode\n" +" \n" +"* Interna lokacija: Fizička lokacija u vašem skladištu,\n" +" \n" +"* Lokacija kupca: Virtualna lokacija koja predstavlja odredišnu lokaciju " +"isporuka kupcima\n" +" \n" +"* Inventura: Virtualna lokacija koja služi kao protuteža " +"viškovima/manjkovima inventure (fizičke inventure)\n" +" \n" +"* Nabava: Virtualna lokacija koja služi kao privremena protuteža kada još " +"nije poznat izvor (proizvodnja ili dobavljač). ova lokacija bi trebala biti " +"prazna nakon pokretanja automatske nabave.\n" +" \n" +"* Proizvodnja: Virtualna protuteža za prijenose proizvodnje. Ovdje " +"\"nestaju\" sirovine i nastaju gotovi (polu)proizvodi\n" +" " #. module: stock #: field:stock.production.lot.revision,author_id:0 @@ -1022,12 +1075,12 @@ msgstr "Ručna operacija" #: view:stock.location:0 #: view:stock.move:0 msgid "Supplier" -msgstr "" +msgstr "Dobavljač" #. module: stock #: field:stock.picking,date_done:0 msgid "Date Done" -msgstr "Datum završen" +msgstr "Datum izvršenja" #. module: stock #: report:stock.picking.list:0 @@ -1042,7 +1095,7 @@ msgstr "" #. module: stock #: selection:report.stock.move,month:0 msgid "March" -msgstr "" +msgstr "Ožujak" #. module: stock #: model:ir.actions.act_window,name:stock.action_view_stock_inventory_line_split @@ -1050,12 +1103,12 @@ msgstr "" #: view:stock.inventory:0 #: view:stock.inventory.line:0 msgid "Split inventory lines" -msgstr "" +msgstr "Podijeli retke inventara" #. module: stock #: view:stock.inventory:0 msgid "Physical Inventory" -msgstr "" +msgstr "Fizička zaliha" #. module: stock #: help:stock.location,chained_company_id:0 @@ -1063,6 +1116,8 @@ msgid "" "The company the Picking List containing the chained move will belong to " "(leave empty to use the default company determination rules" msgstr "" +"The company the Picking List containing the chained move will belong to " +"(leave empty to use the default company determination rules" #. module: stock #: help:stock.location,chained_picking_type:0 @@ -1071,11 +1126,14 @@ msgid "" "empty to automatically detect the type based on the source and destination " "locations)." msgstr "" +"Shipping Type of the Picking List that will contain the chained move (leave " +"empty to automatically detect the type based on the source and destination " +"locations)." #. module: stock #: view:stock.move.split:0 msgid "Lot number" -msgstr "" +msgstr "Lot number" #. module: stock #: field:stock.inventory.line,product_uom:0 @@ -1093,13 +1151,13 @@ msgstr "Lokacije partnera" #: view:report.stock.inventory:0 #: view:report.stock.move:0 msgid "Total quantity" -msgstr "" +msgstr "Ukupna količina" #. module: stock #: model:ir.actions.act_window,name:stock.move_consume #: view:stock.move.consume:0 msgid "Consume Move" -msgstr "" +msgstr "Skl. prijenos utroška" #. module: stock #: model:stock.location,name:stock.stock_location_7 @@ -1109,12 +1167,12 @@ msgstr "Europski kupci" #. module: stock #: help:stock.location,chained_delay:0 msgid "Delay between original move and chained move in days" -msgstr "" +msgstr "Delay between original move and chained move in days" #. module: stock #: view:stock.fill.inventory:0 msgid "Import current product inventory from the following location" -msgstr "" +msgstr "Import current product inventory from the following location" #. module: stock #: help:stock.location,chained_auto_packing:0 @@ -1125,11 +1183,16 @@ msgid "" "move has to be validated by a worker. With 'Automatic No Step Added', the " "location is replaced in the original move." msgstr "" +"This is used only if you select a chained location type.\n" +"The 'Automatic Move' value will create a stock move after the current one " +"that will be validated automatically. With 'Manual Operation', the stock " +"move has to be validated by a worker. With 'Automatic No Step Added', the " +"location is replaced in the original move." #. module: stock #: view:stock.production.lot:0 msgid "Downstream Traceability" -msgstr "" +msgstr "Downstream Traceability" #. module: stock #: help:product.template,property_stock_production:0 @@ -1138,6 +1201,8 @@ msgid "" "default one, as the source location for stock moves generated by production " "orders" msgstr "" +"Za ovaj proizvod će se koristiti ova skladišna lokacija, umjesto uobičajene, " +"kao izvorišna lokacija za prijenose generirane proizvodnjom" #. module: stock #: code:addons/stock/stock.py:1975 @@ -1159,6 +1224,8 @@ msgid "" "This is the list of all your packs. When you select a Pack, you can get the " "upstream or downstream traceability of the products contained in the pack." msgstr "" +"This is the list of all your packs. When you select a Pack, you can get the " +"upstream or downstream traceability of the products contained in the pack." #. module: stock #: model:ir.model,name:stock.model_stock_ups_final @@ -1168,18 +1235,18 @@ msgstr "" #. module: stock #: field:stock.location,chained_auto_packing:0 msgid "Chaining Type" -msgstr "" +msgstr "Tip lanca" #. module: stock #: code:addons/stock/wizard/stock_return_picking.py:135 #, python-format msgid "To be refunded/invoiced" -msgstr "" +msgstr "To be refunded/invoiced" #. module: stock #: model:stock.location,name:stock.stock_location_shop0 msgid "Shop 1" -msgstr "" +msgstr "Shop 1" #. module: stock #: view:stock.change.product.qty:0 @@ -1193,22 +1260,22 @@ msgstr "" #: view:stock.picking:0 #: view:stock.split.into:0 msgid "_Cancel" -msgstr "" +msgstr "_Cancel" #. module: stock #: view:stock.move:0 msgid "Ready" -msgstr "" +msgstr "Spremno" #. module: stock #: view:stock.picking:0 msgid "Calendar View" -msgstr "Kalendarski pogled" +msgstr "Calendar View" #. module: stock #: view:stock.picking:0 msgid "Additional Info" -msgstr "" +msgstr "Dodatni podaci" #. module: stock #: code:addons/stock/stock.py:1602 @@ -1231,7 +1298,7 @@ msgstr "" #: view:stock.picking:0 #: field:stock.picking,invoice_state:0 msgid "Invoice Control" -msgstr "Kontrola faktura" +msgstr "Kontrola računa" #. module: stock #: model:ir.model,name:stock.model_stock_production_lot_revision @@ -1241,7 +1308,7 @@ msgstr "Revizije lota proizvodnje" #. module: stock #: view:stock.picking:0 msgid "Internal Picking List" -msgstr "" +msgstr "Međuskladišnica (interni prijenos)" #. module: stock #: selection:report.stock.inventory,state:0 @@ -1249,7 +1316,7 @@ msgstr "" #: selection:stock.move,state:0 #: selection:stock.picking,state:0 msgid "Waiting" -msgstr "Čekanje" +msgstr "Waiting" #. module: stock #: view:stock.move:0 @@ -1261,7 +1328,7 @@ msgstr "Razdijeli" #. module: stock #: view:stock.picking:0 msgid "Search Stock Picking" -msgstr "" +msgstr "Traži skladišnice" #. module: stock #: code:addons/stock/product.py:93 @@ -1273,7 +1340,7 @@ msgstr "" #: view:report.stock.move:0 #: field:stock.partial.move,type:0 msgid "Type" -msgstr "Tip" +msgstr "Vrsta" #. module: stock #: model:stock.location,name:stock.stock_location_5 @@ -1283,7 +1350,7 @@ msgstr "Generički IT dobavljači" #. module: stock #: report:stock.picking.list:0 msgid "Picking List:" -msgstr "" +msgstr "Skladišnica:" #. module: stock #: field:stock.inventory,date:0 @@ -1291,7 +1358,7 @@ msgstr "" #: field:stock.production.lot,date:0 #: field:stock.tracking,date:0 msgid "Creation Date" -msgstr "" +msgstr "Datum kreiranja" #. module: stock #: field:report.stock.lines.date,id:0 @@ -1301,7 +1368,7 @@ msgstr "ID stavke inventara" #. module: stock #: help:stock.location,address_id:0 msgid "Address of customer or supplier." -msgstr "" +msgstr "Address of customer or supplier." #. module: stock #: view:report.stock.move:0 @@ -1332,7 +1399,7 @@ msgstr "" #: model:ir.actions.report.xml,name:stock.report_location_overview #: report:lot.stock.overview:0 msgid "Location Inventory Overview" -msgstr "" +msgstr "Location Inventory Overview" #. module: stock #: model:ir.model,name:stock.model_stock_replacement @@ -1342,17 +1409,17 @@ msgstr "" #. module: stock #: view:stock.inventory:0 msgid "General Informations" -msgstr "Opće informacije" +msgstr "Općenite informacije" #. module: stock #: selection:stock.location,chained_location_type:0 msgid "None" -msgstr "Nijedan" +msgstr "Ništa" #. module: stock #: view:stock.tracking:0 msgid "Downstream traceability" -msgstr "" +msgstr "Downstream traceability" #. module: stock #: code:addons/stock/wizard/stock_invoice_onshipping.py:113 @@ -1376,18 +1443,19 @@ msgstr "" msgid "" "By unchecking the active field, you may hide an INCOTERM without deleting it." msgstr "" +"By unchecking the active field, you may hide an INCOTERM without deleting it." #. module: stock #: view:stock.move:0 #: view:stock.picking:0 #: field:stock.picking,date:0 msgid "Order Date" -msgstr "" +msgstr "Datum naloga" #. module: stock #: field:stock.location,location_id:0 msgid "Parent Location" -msgstr "Nadređena lokacija" +msgstr "Parent Location" #. module: stock #: help:stock.picking,state:0 @@ -1400,11 +1468,18 @@ msgid "" "* Done: has been processed, can't be modified or cancelled anymore\n" "* Cancelled: has been cancelled, can't be confirmed anymore" msgstr "" +"* Draft: not confirmed yet and will not be scheduled until confirmed\n" +"* Confirmed: still waiting for the availability of products\n" +"* Available: products reserved, simply waiting for confirmation.\n" +"* Waiting: waiting for another move to proceed before it becomes " +"automatically available (e.g. in Make-To-Order flows)\n" +"* Done: has been processed, can't be modified or cancelled anymore\n" +"* Cancelled: has been cancelled, can't be confirmed anymore" #. module: stock #: help:stock.location,company_id:0 msgid "Let this field empty if this location is shared between all companies" -msgstr "" +msgstr "Ostavite polje prazno ako se lokacija koristi između svih kopanija" #. module: stock #: code:addons/stock/stock.py:2198 @@ -1415,7 +1490,7 @@ msgstr "" #. module: stock #: field:stock.location,chained_delay:0 msgid "Chaining Lead Time" -msgstr "" +msgstr "Vrijeme ulančavanja" #. module: stock #: code:addons/stock/wizard/stock_partial_move.py:85 @@ -1426,7 +1501,7 @@ msgstr "" #. module: stock #: model:ir.model,name:stock.model_stock_invoice_onshipping msgid "Stock Invoice Onshipping" -msgstr "" +msgstr "Račun nakon isporuke" #. module: stock #: help:stock.move,state:0 @@ -1438,6 +1513,12 @@ msgid "" " When the picking is done the state is 'Done'. \n" "The state is 'Waiting' if the move is waiting for another one." msgstr "" +"When the stock move is created it is in the 'Draft' state.\n" +" After that, it is set to 'Not Available' state if the scheduler did not " +"find the products.\n" +" When products are reserved it is set to 'Available'.\n" +" When the picking is done the state is 'Done'. \n" +"The state is 'Waiting' if the move is waiting for another one." #. module: stock #: selection:report.stock.inventory,location_type:0 @@ -1461,7 +1542,7 @@ msgstr "" #. module: stock #: selection:report.stock.move,month:0 msgid "September" -msgstr "" +msgstr "Rujan" #. module: stock #: help:stock.picking,backorder_id:0 @@ -1469,22 +1550,24 @@ msgid "" "If this picking was split this field links to the picking that contains the " "other part that has been processed already." msgstr "" +"Nakon djelomične isporuke/primke ovo polje vodi do prethodnih povezanih " +"isporuka." #. module: stock #: model:ir.model,name:stock.model_report_stock_inventory msgid "Stock Statistics" -msgstr "" +msgstr "Stock Statistics" #. module: stock #: field:stock.move.memory.in,currency:0 #: field:stock.move.memory.out,currency:0 msgid "Currency" -msgstr "" +msgstr "Valuta" #. module: stock #: field:product.product,track_production:0 msgid "Track Manufacturing Lots" -msgstr "" +msgstr "Prati lot-ove proizvodnje" #. module: stock #: code:addons/stock/wizard/stock_inventory_merge.py:44 @@ -1503,7 +1586,7 @@ msgstr "" #: view:stock.production.lot:0 #: view:stock.tracking:0 msgid "Stock Moves" -msgstr "Prijenosi zalihe" +msgstr "Skladišni prijenosi" #. module: stock #: selection:report.stock.move,type:0 @@ -1520,7 +1603,7 @@ msgstr "Otkaži dostupnost" #. module: stock #: help:stock.move,date_expected:0 msgid "Scheduled date for the processing of this move" -msgstr "" +msgstr "Odabrani datum za obradu ovog događaja" #. module: stock #: field:stock.inventory,move_ids:0 @@ -1530,33 +1613,33 @@ msgstr "Kreirani prijenosi" #. module: stock #: model:stock.location,name:stock.stock_location_14 msgid "Shelf 2" -msgstr "" +msgstr "Shelf 2" #. module: stock #: field:stock.report.tracklots,tracking_id:0 msgid "Tracking lot" -msgstr "" +msgstr "Tracking lot" #. module: stock #: view:stock.picking:0 msgid "Back Orders" -msgstr "" +msgstr "Zaostali nalozi" #. module: stock #: view:product.product:0 #: view:product.template:0 msgid "Counter-Part Locations Properties" -msgstr "" +msgstr "Counter-Part Locations Properties" #. module: stock #: view:stock.location:0 msgid "Localization" -msgstr "" +msgstr "Lokacija" #. module: stock #: model:ir.model,name:stock.model_stock_report_tracklots msgid "Stock report by tracking lots" -msgstr "" +msgstr "Stock report by tracking lots" #. module: stock #: code:addons/stock/product.py:367 @@ -1569,12 +1652,12 @@ msgstr "" #: view:stock.inventory.line.split:0 #: view:stock.move.split:0 msgid "Split in lots" -msgstr "" +msgstr "Split in lots" #. module: stock #: view:stock.move.split:0 msgid "Production Lot Numbers" -msgstr "" +msgstr "Production Lot Numbers" #. module: stock #: view:report.stock.inventory:0 @@ -1596,7 +1679,7 @@ msgstr "Datum" #: view:stock.move:0 #: view:stock.picking:0 msgid "Extended Filters..." -msgstr "" +msgstr "Prošireni filtri..." #. module: stock #: field:stock.warehouse,lot_stock_id:0 @@ -1612,7 +1695,7 @@ msgstr "" #. module: stock #: model:ir.ui.menu,name:stock.menu_dashboard_stock msgid "Dashboard" -msgstr "" +msgstr "Kokpit" #. module: stock #: model:ir.model,name:stock.model_stock_move_track @@ -1627,13 +1710,13 @@ msgstr "Šifra" #. module: stock #: view:stock.inventory.line.split:0 msgid "Lots Number" -msgstr "" +msgstr "Lots Number" #. module: stock #: model:ir.actions.act_window,name:stock.open_board_warehouse #: model:ir.ui.menu,name:stock.menu_board_warehouse msgid "Warehouse Dashboard" -msgstr "" +msgstr "Kokpit skladišta" #. module: stock #: code:addons/stock/stock.py:510 @@ -1647,7 +1730,7 @@ msgstr "" #: view:stock.move.scrap:0 #: view:stock.picking:0 msgid "Scrap Products" -msgstr "" +msgstr "Otpis proizvoda" #. module: stock #: code:addons/stock/stock.py:1135 @@ -1662,13 +1745,13 @@ msgstr "" #: view:stock.move.split:0 #: view:stock.picking:0 msgid "Cancel" -msgstr "odustani" +msgstr "Odustani" #. module: stock #: model:ir.actions.act_window,name:stock.act_stock_return_picking #: model:ir.model,name:stock.model_stock_return_picking msgid "Return Picking" -msgstr "" +msgstr "Povrat robe" #. module: stock #: view:stock.inventory:0 @@ -1710,7 +1793,7 @@ msgstr "Adresa otpreme :" #: code:addons/stock/wizard/stock_return_picking.py:120 #, python-format msgid "Provide the quantities of the returned products." -msgstr "" +msgstr "Upis količina povrata proizvoda." #. module: stock #: code:addons/stock/stock.py:1978 @@ -1723,18 +1806,18 @@ msgstr "" #. module: stock #: view:stock.change.standard.price:0 msgid "Cost Price" -msgstr "" +msgstr "Cijena Koštanja" #. module: stock #: view:product.product:0 #: field:product.product,valuation:0 msgid "Inventory Valuation" -msgstr "" +msgstr "Popis Vrednovanja" #. module: stock #: view:stock.picking:0 msgid "Create Invoice" -msgstr "" +msgstr "Kreiraj račun" #. module: stock #: view:stock.move:0 @@ -1748,8 +1831,8 @@ msgid "" "This stock location will be used, instead of the default one, as the source " "location for goods you receive from the current partner" msgstr "" -"Ova lokacija zalihe se koristi umjesto predefinirane kao početna lokacija za " -"robu koju zaprimate od partnera" +"Ova lokacija zalihe se koristi umjesto uobičajene kao ulazna lokacija za " +"robu koju nabavljate od ovog partnera" #. module: stock #: field:stock.warehouse,partner_address_id:0 @@ -1762,6 +1845,9 @@ msgid "" "Technical field used to record the product cost set by the user during a " "picking confirmation (when average price costing method is used)" msgstr "" +"Nabavna cijena za proizvode koji se vode metodom prosječnih cijena. Prilikom " +"zaprimanja robe od dobavljača ovdje se upisuje nabavna cijena s dobavljačeve " +"otpremnice koja utječe na prosječnu cijenu proizvoda." #. module: stock #: model:ir.actions.act_window,help:stock.action_stock_move_report @@ -1770,21 +1856,24 @@ msgid "" "moves. Use this report when you want to analyse the different routes taken " "by your products and inventory management performance." msgstr "" +"Moves Analysis allows you to easily check and analyse your company stock " +"moves. Use this report when you want to analyse the different routes taken " +"by your products and inventory management performance." #. module: stock #: field:report.stock.move,day_diff1:0 msgid "Planned Lead Time (Days)" -msgstr "" +msgstr "Planirano vodeće vrijeme (dani)" #. module: stock #: field:stock.change.standard.price,new_price:0 msgid "Price" -msgstr "" +msgstr "Cijena" #. module: stock #: view:stock.inventory:0 msgid "Search Inventory" -msgstr "" +msgstr "Search Inventory" #. module: stock #: field:stock.move.track,quantity:0 @@ -1808,7 +1897,7 @@ msgstr "" #. module: stock #: field:stock.production.lot,ref:0 msgid "Internal Reference" -msgstr "" +msgstr "Interna oznaka" #. module: stock #: help:stock.production.lot,prefix:0 @@ -1816,13 +1905,15 @@ msgid "" "Optional prefix to prepend when displaying this serial number: PREFIX/SERIAL " "[INT_REF]" msgstr "" +"Optional prefix to prepend when displaying this serial number: PREFIX/SERIAL " +"[INT_REF]" #. module: stock #: model:ir.actions.act_window,name:stock.action_view_stock_fill_inventory #: model:ir.model,name:stock.model_stock_fill_inventory #: view:stock.fill.inventory:0 msgid "Import Inventory" -msgstr "" +msgstr "Uvezi inventuru" #. module: stock #: field:stock.incoterms,name:0 @@ -1868,27 +1959,29 @@ msgid "" "default one, as the source location for stock moves generated when you do an " "inventory" msgstr "" +"Koristi ovu skladišnu lokaciju, umjesto uobičajene, kao izvorišnu lokaciju " +"za prijenose inventure" #. module: stock #: view:report.stock.lines.date:0 msgid "Stockable" -msgstr "" +msgstr "Uskladištiv" #. module: stock #: selection:product.product,valuation:0 msgid "Real Time (automated)" -msgstr "" +msgstr "Automatsko" #. module: stock #: help:stock.move,tracking_id:0 msgid "Logistical shipping unit: pallet, box, pack ..." -msgstr "" +msgstr "Logistical shipping unit: pallet, box, pack ..." #. module: stock #: view:stock.change.product.qty:0 #: view:stock.change.standard.price:0 msgid "_Apply" -msgstr "" +msgstr "_Primjeni" #. module: stock #: report:lot.stock.overview:0 @@ -1907,7 +2000,7 @@ msgstr "Lokacija inventara" #: view:report.stock.inventory:0 #: view:report.stock.move:0 msgid "Total value" -msgstr "" +msgstr "Ukupna vrijednost" #. module: stock #: help:stock.location,chained_journal_id:0 @@ -1915,6 +2008,8 @@ msgid "" "Inventory Journal in which the chained move will be written, if the Chaining " "Type is not Transparent (no journal is used if left empty)" msgstr "" +"Inventory Journal in which the chained move will be written, if the Chaining " +"Type is not Transparent (no journal is used if left empty)" #. module: stock #: view:board.board:0 @@ -1925,31 +2020,31 @@ msgstr "" #. module: stock #: view:stock.move:0 msgid "Creation" -msgstr "" +msgstr "Kreiranje" #. module: stock #: field:stock.move.memory.in,cost:0 #: field:stock.move.memory.out,cost:0 msgid "Cost" -msgstr "" +msgstr "Trošak" #. module: stock #: field:product.category,property_stock_account_input_categ:0 #: field:product.template,property_stock_account_input:0 #: field:stock.change.standard.price,stock_account_input:0 msgid "Stock Input Account" -msgstr "Konto zalihe ulaza" +msgstr "Stock Input Account" #. module: stock #: model:ir.ui.menu,name:stock.menu_stock_warehouse_mgmt #: model:ir.ui.menu,name:stock.menu_warehouse_config msgid "Warehouse Management" -msgstr "" +msgstr "Upravljanje skladištem" #. module: stock #: selection:stock.picking,move_type:0 msgid "Partial Delivery" -msgstr "" +msgstr "Djelomična isporuka" #. module: stock #: selection:stock.location,chained_auto_packing:0 @@ -1967,11 +2062,13 @@ msgid "" "Move date: scheduled date until move is done, then date of actual move " "processing" msgstr "" +"Move date: scheduled date until move is done, then date of actual move " +"processing" #. module: stock #: field:report.stock.lines.date,date:0 msgid "Latest Inventory Date" -msgstr "" +msgstr "Datum zadnje inventure" #. module: stock #: view:report.stock.inventory:0 @@ -1981,7 +2078,7 @@ msgstr "" #: view:stock.picking:0 #: view:stock.production.lot:0 msgid "Group By..." -msgstr "" +msgstr "Grupiraj po..." #. module: stock #: view:stock.location:0 @@ -2002,14 +2099,14 @@ msgstr "" #. module: stock #: view:stock.picking:0 msgid "Input Picking List" -msgstr "" +msgstr "Primka" #. module: stock #: field:stock.move,product_uom:0 #: field:stock.move.memory.in,product_uom:0 #: field:stock.move.memory.out,product_uom:0 msgid "Unit of Measure" -msgstr "" +msgstr "Jedinica mjere" #. module: stock #: code:addons/stock/product.py:176 @@ -2023,6 +2120,8 @@ msgid "" "Forces to specify a Production Lot for all moves containing this product and " "generated by a Manufacturing Order" msgstr "" +"Forces to specify a Production Lot for all moves containing this product and " +"generated by a Manufacturing Order" #. module: stock #: model:ir.actions.act_window,name:stock.track_line_old @@ -2033,23 +2132,23 @@ msgstr "Praćenje prijenosa" #. module: stock #: view:product.product:0 msgid "Update" -msgstr "" +msgstr "Ažuriraj" #. module: stock #: view:stock.inventory:0 msgid "Set to Draft" -msgstr "" +msgstr "Postavi na nacrt" #. module: stock #: model:ir.actions.act_window,name:stock.action_stock_journal_form #: model:ir.ui.menu,name:stock.menu_action_stock_journal_form msgid "Stock Journals" -msgstr "" +msgstr "Dnevnici zalihe" #. module: stock #: selection:report.stock.move,type:0 msgid "Others" -msgstr "" +msgstr "Ostalo" #. module: stock #: code:addons/stock/product.py:90 @@ -2066,22 +2165,22 @@ msgstr "" #: model:stock.location,name:stock.stock_location_scrapped #: field:stock.move,scrapped:0 msgid "Scrapped" -msgstr "" +msgstr "Scrapped" #. module: stock #: view:stock.inventory:0 msgid "Products " -msgstr "" +msgstr "Proizvodi " #. module: stock #: field:product.product,track_incoming:0 msgid "Track Incoming Lots" -msgstr "" +msgstr "Prati lot-ove na ulazu" #. module: stock #: view:board.board:0 msgid "Warehouse board" -msgstr "" +msgstr "Kokpit skladišta" #. module: stock #: code:addons/stock/product.py:377 @@ -2092,7 +2191,7 @@ msgstr "" #. module: stock #: field:product.category,property_stock_valuation_account_id:0 msgid "Stock Valuation Account" -msgstr "" +msgstr "Stock Valuation Account" #. module: stock #: field:stock.move,note:0 @@ -2105,7 +2204,7 @@ msgstr "Bilješke" #: report:lot.stock.overview:0 #: report:lot.stock.overview_all:0 msgid "Value" -msgstr "Vrijednost" +msgstr "Value" #. module: stock #: field:report.stock.move,type:0 @@ -2128,24 +2227,24 @@ msgstr "" #: view:stock.picking:0 #, python-format msgid "Products" -msgstr "Proizvodi" +msgstr "Products" #. module: stock #: view:stock.change.standard.price:0 msgid "Change Price" -msgstr "" +msgstr "Promjeni cijenu" #. module: stock #: field:stock.picking,move_type:0 msgid "Delivery Method" -msgstr "Metoda dostave" +msgstr "Delivery Method" #. module: stock #: help:report.stock.move,location_dest_id:0 #: help:stock.move,location_dest_id:0 #: help:stock.picking,location_dest_id:0 msgid "Location where the system will stock the finished products." -msgstr "" +msgstr "Lokacija gotovih proizvoda" #. module: stock #: help:product.category,property_stock_valuation_account_id:0 @@ -2153,6 +2252,8 @@ msgid "" "When real-time inventory valuation is enabled on a product, this account " "will hold the current value of the products." msgstr "" +"When real-time inventory valuation is enabled on a product, this account " +"will hold the current value of the products." #. module: stock #: model:ir.actions.act_window,help:stock.action_reception_picking_move @@ -2163,27 +2264,32 @@ msgid "" "the supplier or the purchase order reference. Then you can confirm all " "products received using the buttons on the right of each line." msgstr "" +"Ovdje ćete pronaći sve proizvode koje očekujete od dobavljača. Stavke su " +"nastale potvrdom naloga za nabavu i/ili upisom primki u stanju \"Nacrt\". " +"Nakon fizičkog zaprimanja proizvoda filtrirajte ovaj popis po dobavljaču ili " +"broju naloga za nabavu, te potvrdite prijem proizvoda. Možete koristiti " +"gumbe na desnoj strani svake stavke." #. module: stock #: model:ir.model,name:stock.model_stock_move msgid "Stock Move" -msgstr "Prijenosi zalihe" +msgstr "Skladišni prijenosi" #. module: stock #: view:report.stock.move:0 msgid "Delay(Days)" -msgstr "" +msgstr "Delay(Days)" #. module: stock #: field:stock.move.memory.in,move_id:0 #: field:stock.move.memory.out,move_id:0 msgid "Move" -msgstr "" +msgstr "Temeljnica" #. module: stock #: help:stock.picking,min_date:0 msgid "Expected date for the picking to be processed" -msgstr "" +msgstr "Očekivani datum obrade" #. module: stock #: code:addons/stock/product.py:373 @@ -2200,7 +2306,7 @@ msgstr "Revizije" #. module: stock #: view:stock.picking:0 msgid "This operation will cancel the shipment. Do you want to continue?" -msgstr "" +msgstr "Ova operacija će otkazati isporuku. Nastaviti?" #. module: stock #: help:product.product,valuation:0 @@ -2211,6 +2317,11 @@ msgid "" "current inventory value, and the stock input and stock output account will " "hold the counterpart moves for incoming and outgoing products." msgstr "" +"If real-time valuation is enabled for a product, the system will " +"automatically write journal entries corresponding to stock moves.The " +"inventory variation account set on the product category will represent the " +"current inventory value, and the stock input and stock output account will " +"hold the counterpart moves for incoming and outgoing products." #. module: stock #: model:ir.actions.act_window,help:stock.action_stock_inventory_report @@ -2219,6 +2330,9 @@ msgid "" "levels. Sort and group by selection criteria in order to better analyse and " "manage your company activities." msgstr "" +"Inventory Analysis allows you to easily check and analyse your company stock " +"levels. Sort and group by selection criteria in order to better analyse and " +"manage your company activities." #. module: stock #: help:report.stock.move,location_id:0 @@ -2227,6 +2341,8 @@ msgid "" "Sets a location if you produce at a fixed location. This can be a partner " "location if you subcontract the manufacturing operations." msgstr "" +"Postavlja se lokacija ukoliko se proizvodi uvijek na fiksnoj lokaciji. To " +"može biti mjesto partnera u slučaju podugovaranja procesa proizvodnje." #. module: stock #: model:ir.actions.act_window,help:stock.action_location_form @@ -2241,17 +2357,26 @@ msgid "" "location to the Stock location. Each report can be performed on physical, " "partner or virtual locations." msgstr "" +"Lokacije odražavaju strukturu i organizaciju vaših skladišta. OpenERP " +"razlikuje fizičke lokacije (skladišta, redove, police, ...), lokacije " +"partnera (kupaca i dobavljača) i virtualne lokacije koje su protuteža " +"skladišnim prijenosima kao što je potrošnja sirovina u proizvodnji, " +"inventura , i sli.. Svaki skladišni prijenos (operacija) u OpenERP-u " +"premješta proizvode sa jedne lokacije na drugu. Na primjer, ako zaprimite " +"proizvode od dobavljača, OpenERP će napraviti prijenos proizvoda sa " +"virtualne lokacije dobavljača na fizičku lokaciju skladišta. Svi izvještaji " +"se mogu dobiti za fizičke, partnerske i virtualne lokacije." #. module: stock #: view:stock.invoice.onshipping:0 msgid "Create" -msgstr "" +msgstr "Stvori" #. module: stock #: view:stock.move:0 #: view:stock.picking:0 msgid "Dates" -msgstr "" +msgstr "Datumi" #. module: stock #: field:stock.move,priority:0 @@ -2261,7 +2386,7 @@ msgstr "Prioritet" #. module: stock #: view:stock.move:0 msgid "Source" -msgstr "" +msgstr "Source" #. module: stock #: code:addons/stock/stock.py:2557 @@ -2272,18 +2397,18 @@ msgstr "" #: selection:stock.location,usage:0 #, python-format msgid "Inventory" -msgstr "Inventar" +msgstr "Inventura" #. module: stock #: model:ir.model,name:stock.model_stock_picking msgid "Picking List" -msgstr "" +msgstr "Skladišni dokument" #. module: stock #: sql_constraint:stock.production.lot:0 msgid "" "The combination of serial number and internal reference must be unique !" -msgstr "" +msgstr "Kombinacija serijskog broja i interne oznake mora biti jedinstvena !" #. module: stock #: model:ir.model,name:stock.model_stock_ups @@ -2318,7 +2443,7 @@ msgstr "" #: model:ir.ui.menu,name:stock.menu_stock_unit_measure_stock #: model:ir.ui.menu,name:stock.menu_stock_uom_form_action msgid "Units of Measure" -msgstr "" +msgstr "Jedinice mjere" #. module: stock #: selection:stock.location,chained_location_type:0 @@ -2328,12 +2453,12 @@ msgstr "Fiksna lokacija" #. module: stock #: selection:report.stock.move,month:0 msgid "July" -msgstr "" +msgstr "Srpanj" #. module: stock #: view:report.stock.lines.date:0 msgid "Consumable" -msgstr "" +msgstr "Consumable" #. module: stock #: model:ir.actions.act_window,help:stock.action_stock_line_date @@ -2343,11 +2468,14 @@ msgid "" "need this report in order to ensure that the stock of each product is " "controlled at least once a year." msgstr "" +"Prikaz zadnjih inventura po proizvodima. Ako radite povremene i djelomične " +"inventure, koristite ovaj izvještaj kako bi osigurali da je inventura " +"učinjena barem jednom godišnje za svaki proizvod." #. module: stock #: model:ir.actions.report.xml,name:stock.report_product_history msgid "Stock Level Forecast" -msgstr "" +msgstr "Prognoza stanja zaliha" #. module: stock #: model:ir.model,name:stock.model_stock_journal @@ -2362,7 +2490,7 @@ msgstr "Dnevnik zalihe" #: selection:report.stock.inventory,location_type:0 #: selection:stock.location,usage:0 msgid "Procurement" -msgstr "Nabava" +msgstr "Procurement" #. module: stock #: model:stock.location,name:stock.stock_location_4 @@ -2379,13 +2507,13 @@ msgstr "" #. module: stock #: view:stock.picking:0 msgid "Force Availability" -msgstr "Koristi dostupnost" +msgstr "Forsiraj dostupnost" #. module: stock #: model:ir.actions.act_window,name:stock.move_scrap #: view:stock.move.scrap:0 msgid "Scrap Move" -msgstr "" +msgstr "Premjesti Otpad" #. module: stock #: code:addons/stock/wizard/stock_partial_move.py:138 @@ -2394,7 +2522,7 @@ msgstr "" #: view:stock.move:0 #, python-format msgid "Receive Products" -msgstr "" +msgstr "Prihvat proizvoda" #. module: stock #: code:addons/stock/wizard/stock_partial_move.py:131 @@ -2402,7 +2530,7 @@ msgstr "" #: model:ir.ui.menu,name:stock.menu_action_pdct_out #, python-format msgid "Deliver Products" -msgstr "" +msgstr "Isporuči proizvode" #. module: stock #: view:stock.location.product:0 @@ -2418,23 +2546,24 @@ msgstr "" #: view:report.stock.move:0 #: field:report.stock.move,month:0 msgid "Month" -msgstr "" +msgstr "Mjesec" #. module: stock #: help:stock.picking,date_done:0 msgid "Date of Completion" -msgstr "" +msgstr "Datum izvršenja" #. module: stock #: help:stock.production.lot,name:0 msgid "Unique production lot, will be displayed as: PREFIX/SERIAL [INT_REF]" -msgstr "" +msgstr "Unique production lot, will be displayed as: PREFIX/SERIAL [INT_REF]" #. module: stock #: help:stock.tracking,active:0 msgid "" "By unchecking the active field, you may hide a pack without deleting it." msgstr "" +"By unchecking the active field, you may hide a pack without deleting it." #. module: stock #: view:stock.inventory.merge:0 @@ -2444,12 +2573,12 @@ msgstr "Da" #. module: stock #: field:stock.inventory,inventory_line_id:0 msgid "Inventories" -msgstr "Inventoriji" +msgstr "Inventure" #. module: stock #: view:report.stock.move:0 msgid "Todo" -msgstr "" +msgstr "Za obaviti" #. module: stock #: view:report.stock.inventory:0 @@ -2465,13 +2594,13 @@ msgstr "" #: field:stock.production.lot.revision,company_id:0 #: field:stock.warehouse,company_id:0 msgid "Company" -msgstr "" +msgstr "Organizacija" #. module: stock #: view:stock.move:0 #: view:stock.picking:0 msgid "Unit Of Measure" -msgstr "" +msgstr "Jedinica mjere" #. module: stock #: code:addons/stock/product.py:122 @@ -2489,7 +2618,7 @@ msgstr "" #. module: stock #: field:stock.location,stock_real:0 msgid "Real Stock" -msgstr "Stvarna zaliha" +msgstr "Dostupna zaliha" #. module: stock #: view:stock.fill.inventory:0 @@ -2501,6 +2630,8 @@ msgstr "Popuni inventuru" msgid "" "Error: The default UOM and the purchase UOM must be in the same category." msgstr "" +"Greška: Zadana jedinica mjere i jedinica mjere nabave moraju biti iz iste " +"kategorije jedinica mjera." #. module: stock #: help:product.category,property_stock_account_input_categ:0 @@ -2529,7 +2660,7 @@ msgstr "Lot" #. module: stock #: view:stock.move.split:0 msgid "Production Lot Number" -msgstr "" +msgstr "Production Lot Number" #. module: stock #: field:stock.move,product_uos_qty:0 @@ -2551,12 +2682,12 @@ msgstr "Postavi raspoloživo" #. module: stock #: report:stock.picking.list:0 msgid "Contact Address :" -msgstr "" +msgstr "Kontakt adresa :" #. module: stock #: field:stock.move,backorder_id:0 msgid "Back Order" -msgstr "" +msgstr "Back Order" #. module: stock #: field:stock.incoterms,active:0 @@ -2586,7 +2717,7 @@ msgstr "" #: model:ir.model,name:stock.model_stock_incoterms #: view:stock.incoterms:0 msgid "Incoterms" -msgstr "" +msgstr "Incoterms" #. module: stock #: report:lot.stock.overview:0 @@ -2602,6 +2733,9 @@ msgid "" "costs and responsibilities between buyer and seller and reflect state-of-the-" "art transportation practices." msgstr "" +"Incoterms are series of sales terms.They are used to divide transaction " +"costs and responsibilities between buyer and seller and reflect state-of-the-" +"art transportation practices." #. module: stock #: help:stock.fill.inventory,recursive:0 @@ -2609,6 +2743,8 @@ msgid "" "If checked, products contained in child locations of selected location will " "be included as well." msgstr "" +"Ukoliko je označeno. proizvodi sadržani u podređenim lokacijama odabranih " +"lokacija biti će također uključeni." #. module: stock #: field:stock.move.track,tracking_prefix:0 @@ -2618,7 +2754,7 @@ msgstr "" #. module: stock #: field:stock.inventory,name:0 msgid "Inventory Reference" -msgstr "" +msgstr "Inventura broj" #. module: stock #: code:addons/stock/stock.py:1307 @@ -2629,18 +2765,18 @@ msgstr "" #. module: stock #: view:stock.location.product:0 msgid "Open Product" -msgstr "" +msgstr "Open Product" #. module: stock #: field:stock.location.product,to_date:0 msgid "To" -msgstr "Za" +msgstr "Do" #. module: stock #: view:stock.move:0 #: view:stock.picking:0 msgid "Process" -msgstr "" +msgstr "Process" #. module: stock #: field:stock.production.lot.revision,name:0 @@ -2661,6 +2797,9 @@ msgid "" "filter all resources of the day for the 'From' date and 23:59:59 for the " "'To' date)" msgstr "" +"(Keep empty to open the current situation. Adjust HH:MM:SS to 00:00:00 to " +"filter all resources of the day for the 'From' date and 23:59:59 for the " +"'To' date)" #. module: stock #: view:product.category:0 @@ -2670,7 +2809,7 @@ msgstr "Postavke računovodstvene zalihe" #. module: stock #: model:ir.actions.act_window,name:stock.action_picking_tree_out msgid "Customers Packings" -msgstr "" +msgstr "Customers Packings" #. module: stock #: selection:report.stock.inventory,state:0 @@ -2682,14 +2821,14 @@ msgstr "" #: view:stock.picking:0 #: selection:stock.picking,state:0 msgid "Done" -msgstr "Završeno" +msgstr "Izvršeno" #. module: stock #: model:ir.actions.act_window,name:stock.action_view_change_standard_price #: model:ir.model,name:stock.model_stock_change_standard_price #: view:stock.change.standard.price:0 msgid "Change Standard Price" -msgstr "" +msgstr "Change Standard Price" #. module: stock #: model:stock.location,name:stock.stock_location_locations_virtual @@ -2704,7 +2843,7 @@ msgstr "Za fakturiranje" #. module: stock #: field:stock.inventory,date_done:0 msgid "Date done" -msgstr "Datum završen" +msgstr "Datum izvršenja" #. module: stock #: code:addons/stock/stock.py:983 @@ -2716,7 +2855,7 @@ msgstr "" #. module: stock #: selection:stock.move,priority:0 msgid "Not urgent" -msgstr "Nije hitno" +msgstr "Not urgent" #. module: stock #: view:stock.move:0 @@ -2732,7 +2871,7 @@ msgstr "Skladišta" #. module: stock #: field:stock.journal,user_id:0 msgid "Responsible" -msgstr "" +msgstr "Odgovoran" #. module: stock #: field:stock.move,returned_price:0 @@ -2744,7 +2883,7 @@ msgstr "" #: model:ir.ui.menu,name:stock.menu_action_stock_inventory_report #: view:report.stock.inventory:0 msgid "Inventory Analysis" -msgstr "" +msgstr "Analiza zaliha" #. module: stock #: field:stock.invoice.onshipping,journal_id:0 @@ -2788,7 +2927,7 @@ msgstr "Proizvod" #: code:addons/stock/wizard/stock_return_picking.py:135 #, python-format msgid "Invoicing" -msgstr "" +msgstr "Fakturiranje" #. module: stock #: code:addons/stock/stock.py:2237 @@ -2800,7 +2939,7 @@ msgstr "" #. module: stock #: field:stock.move,product_uos:0 msgid "Product UOS" -msgstr "JS proizvoda" +msgstr "JP Proizvoda" #. module: stock #: field:stock.location,posz:0 @@ -2816,7 +2955,7 @@ msgstr "" #: model:ir.model,name:stock.model_stock_move_consume #: view:stock.move.consume:0 msgid "Consume Products" -msgstr "" +msgstr "Utroši proizvode" #. module: stock #: code:addons/stock/stock.py:1646 @@ -2827,23 +2966,23 @@ msgstr "" #. module: stock #: field:stock.location,parent_right:0 msgid "Right Parent" -msgstr "" +msgstr "Desni roditelj" #. module: stock #: field:stock.picking,address_id:0 msgid "Address" -msgstr "" +msgstr "Adresa" #. module: stock #: report:lot.stock.overview:0 #: report:lot.stock.overview_all:0 msgid "Variants" -msgstr "Varijanti" +msgstr "Inačice" #. module: stock #: field:stock.location,posx:0 msgid "Corridor (X)" -msgstr "" +msgstr "Corridor (X)" #. module: stock #: model:stock.location,name:stock.stock_location_suppliers @@ -2854,23 +2993,23 @@ msgstr "Dobavljači" #: field:report.stock.inventory,value:0 #: field:report.stock.move,value:0 msgid "Total Value" -msgstr "" +msgstr "Ukupna vrijednost" #. module: stock #: model:ir.ui.menu,name:stock.menu_product_by_category_stock_form msgid "Products by Category" -msgstr "" +msgstr "Proizvodi po kategorijama" #. module: stock #: model:ir.ui.menu,name:stock.menu_product_category_config_stock msgid "Product Categories" -msgstr "" +msgstr "Kategorije proizvoda" #. module: stock #: field:stock.move.memory.in,wizard_id:0 #: field:stock.move.memory.out,wizard_id:0 msgid "Wizard" -msgstr "" +msgstr "Asistent" #. module: stock #: model:ir.actions.act_window,name:stock.action_view_stock_location_product @@ -2881,12 +3020,12 @@ msgstr "Proizvodi po lokaciji" #. module: stock #: field:stock.fill.inventory,recursive:0 msgid "Include children" -msgstr "" +msgstr "Uključi podređene" #. module: stock #: model:stock.location,name:stock.stock_location_components msgid "Shelf 1" -msgstr "" +msgstr "Shelf 1" #. module: stock #: model:ir.actions.act_window,help:stock.action_picking_tree6 @@ -2898,43 +3037,49 @@ msgid "" "preconfigured logistics rules, but you can also record manual stock " "operations." msgstr "" +"Internal Moves display all inventory operations you have to perform in your " +"warehouse. All operations can be categorized into stock journals, so that " +"each worker has his own list of operations to perform in his own journal. " +"Most operations are prepared automatically by OpenERP according to your " +"preconfigured logistics rules, but you can also record manual stock " +"operations." #. module: stock #: view:stock.move:0 msgid "Order" -msgstr "" +msgstr "Order" #. module: stock #: field:stock.tracking,name:0 msgid "Pack Reference" -msgstr "" +msgstr "Pakiranje br." #. module: stock #: view:report.stock.move:0 #: field:report.stock.move,location_id:0 #: field:stock.move,location_id:0 msgid "Source Location" -msgstr "Lokacija izvora" +msgstr "Izvorna lokacija" #. module: stock #: view:product.template:0 msgid "Accounting Entries" -msgstr "Računovodstveni ulazi" +msgstr "Stavke računovodstva" #. module: stock #: report:stock.picking.list:0 msgid "Total" -msgstr "" +msgstr "Ukupno" #. module: stock #: model:stock.location,name:stock.stock_location_intermediatelocation0 msgid "Internal Shippings" -msgstr "" +msgstr "Interne otpreme" #. module: stock #: field:stock.change.standard.price,enable_stock_in_out_acc:0 msgid "Enable Related Account" -msgstr "" +msgstr "Omogući povezani konto" #. module: stock #: field:stock.location,stock_virtual_value:0 @@ -2946,18 +3091,18 @@ msgstr "Virtualna vrijednost zalihe" #: view:stock.inventory.line.split:0 #: view:stock.move.split:0 msgid "Lots" -msgstr "Lotovi" +msgstr "Lots" #. module: stock #: view:stock.move:0 #: view:stock.picking:0 msgid "New pack" -msgstr "" +msgstr "Novi paket" #. module: stock #: view:stock.move:0 msgid "Destination" -msgstr "" +msgstr "Odredište" #. module: stock #: selection:stock.picking,move_type:0 @@ -2981,34 +3126,34 @@ msgstr "" #. module: stock #: view:stock.picking:0 msgid "To Invoice" -msgstr "" +msgstr "Za fakturiranje" #. module: stock #: code:addons/stock/wizard/stock_return_picking.py:120 #, python-format msgid "Return lines" -msgstr "" +msgstr "Linija Povrata" #. module: stock #: model:ir.model,name:stock.model_report_stock_lines_date #: view:report.stock.lines.date:0 msgid "Dates of Inventories" -msgstr "Datumi inventara" +msgstr "Datumi inventura" #. module: stock #: view:report.stock.move:0 msgid "Total incoming quantity" -msgstr "" +msgstr "Uk. kol. ulaza" #. module: stock #: field:report.stock.move,product_qty_out:0 msgid "Out Qty" -msgstr "" +msgstr "Kol. izlaza" #. module: stock #: field:stock.production.lot,move_ids:0 msgid "Moves for this production lot" -msgstr "" +msgstr "Moves for this production lot" #. module: stock #: model:ir.model,name:stock.model_stock_move_memory_out @@ -3025,7 +3170,7 @@ msgstr "" #: view:stock.move:0 #: view:stock.picking:0 msgid "Put in current pack" -msgstr "" +msgstr "U trenutni paket." #. module: stock #: view:stock.inventory:0 @@ -3035,7 +3180,7 @@ msgstr "Inventar lotova" #. module: stock #: view:stock.move:0 msgid "Reason" -msgstr "" +msgstr "Razlog" #. module: stock #: report:stock.picking.list:0 @@ -3052,6 +3197,12 @@ msgid "" "'Available' button to get all the lots you produced, received or delivered " "to customers." msgstr "" +"This is the list of all the production lots (serial numbers) you recorded. " +"When you select a lot, you can get the upstream or downstream traceability " +"of the products contained in lot. By default, the list is filtred on the " +"serial numbers that are available in your warehouse but you can uncheck the " +"'Available' button to get all the lots you produced, received or delivered " +"to customers." #. module: stock #: field:stock.location,icon:0 @@ -3120,17 +3271,19 @@ msgstr "Želite li spojiti ove inventare ?" #: selection:stock.move,state:0 #: selection:stock.picking,state:0 msgid "Cancelled" -msgstr "" +msgstr "Otkazani" #. module: stock #: view:stock.move:0 msgid "Picking" -msgstr "" +msgstr "Skladišnice" #. module: stock #: help:stock.picking,move_type:0 msgid "It specifies goods to be delivered all at once or by direct delivery" msgstr "" +"Određuje se da li će roba biti isporučena odjednom ili neposrednim " +"isporukama." #. module: stock #: code:addons/stock/wizard/stock_invoice_onshipping.py:83 @@ -3159,6 +3312,15 @@ msgid "" "* Fixed Location: The chained location is taken from the next field: Chained " "Location if Fixed." msgstr "" +"Određuje da li je ova lokacija povezana s drugom lokacijom, odnosno da li " +"ulaz proizvoda na ovu lokaciju \n" +"treba proizvesti prijenos na slijedeću lokaciju.\n" +"Vrste ulančanih lokacija :\n" +"* Ništa: Nema automatskih prijenosa\n" +"* Kupac: Lokacija se uzima iz polja Lokacija kupca sa kartice kupca koji je " +"naveden u skl. dokumentu ulaza proizvoda.\n" +"* Fiksna lokacija: Uzima se ovdje navedena lokacija: Ulančana lokacija ako " +"je fiksna." #. module: stock #: code:addons/stock/wizard/stock_inventory_merge.py:43 @@ -3179,7 +3341,7 @@ msgstr "" #: model:ir.ui.menu,name:stock.menu_action_picking_tree #: view:stock.picking:0 msgid "Delivery Orders" -msgstr "Narudžbe dostave" +msgstr "Delivery Orders" #. module: stock #: help:res.partner,property_stock_customer:0 @@ -3187,7 +3349,7 @@ msgid "" "This stock location will be used, instead of the default one, as the " "destination location for goods you send to this partner" msgstr "" -"Ova lokacija zalihe će se koristiti, umjesto predefinirane, kao odredišna " +"Ova skladišna lokacija će se koristiti, umjesto uobičajene, kao odredišna " "lokacija za robu koju šaljete ovom partneru" #. module: stock @@ -3207,50 +3369,50 @@ msgstr "Potvrdi" #. module: stock #: help:stock.location,icon:0 msgid "Icon show in hierarchical tree view" -msgstr "" +msgstr "Icon show in hierarchical tree view" #. module: stock #: model:ir.actions.act_window,name:stock.action_view_stock_merge_inventories #: view:stock.inventory.merge:0 msgid "Merge inventories" -msgstr "Spoji inventare" +msgstr "Spoji inventure" #. module: stock #: help:stock.change.product.qty,new_quantity:0 msgid "This quantity is expressed in the Default UoM of the product." -msgstr "" +msgstr "Ova količina je izražena u uobičajenoj jedinici mjere proizvoda." #. module: stock #: report:stock.picking.list:0 msgid "Reception:" -msgstr "" +msgstr "Reception:" #. module: stock #: help:stock.location,scrap_location:0 msgid "" "Check this box to allow using this location to put scrapped/damaged goods." -msgstr "" +msgstr "Označite za lokaciju otpisanih/oštećenih proizvoda." #. module: stock #: model:ir.actions.act_window,name:stock.act_relate_picking msgid "Related Picking" -msgstr "" +msgstr "Vezana skladišnica" #. module: stock #: view:report.stock.move:0 msgid "Total outgoing quantity" -msgstr "" +msgstr "Ukupna izlazna količina" #. module: stock #: field:stock.picking,backorder_id:0 msgid "Back Order of" -msgstr "" +msgstr "Zaostali nalog od" #. module: stock #: help:stock.move.memory.in,cost:0 #: help:stock.move.memory.out,cost:0 msgid "Unit Cost for this product line" -msgstr "" +msgstr "Unit Cost for this product line" #. module: stock #: model:ir.model,name:stock.model_product_category @@ -3259,7 +3421,7 @@ msgstr "" #: view:report.stock.move:0 #: field:report.stock.move,categ_id:0 msgid "Product Category" -msgstr "" +msgstr "Grupa proizvoda" #. module: stock #: code:addons/stock/wizard/stock_change_product_qty.py:88 @@ -3281,24 +3443,24 @@ msgstr "" #. module: stock #: view:stock.split.into:0 msgid "Quantity to leave in the current pack" -msgstr "" +msgstr "Količina koja ostaje u trenutnom pakiranju" #. module: stock #: model:ir.actions.act_window,name:stock.action_stock_invoice_onshipping #: view:stock.invoice.onshipping:0 msgid "Create invoice" -msgstr "Kreiraj fakturu" +msgstr "Kreiraj račun" #. module: stock #: model:ir.ui.menu,name:stock.menu_stock_configuration msgid "Configuration" -msgstr "Konfiguracija" +msgstr "Postava" #. module: stock #: field:stock.inventory.line.split,use_exist:0 #: field:stock.move.split,use_exist:0 msgid "Existing Lots" -msgstr "" +msgstr "Postojeći lotovi" #. module: stock #: field:product.product,location_id:0 @@ -3315,11 +3477,16 @@ msgid "" "If cost price is decreased, stock variation account will be creadited and " "stock input account will be debited." msgstr "" +"If cost price is increased, stock variation account will be debited and " +"stock output account will be credited with the value = (difference of amount " +"* quantity available).\n" +"If cost price is decreased, stock variation account will be creadited and " +"stock input account will be debited." #. module: stock #: field:stock.location,chained_journal_id:0 msgid "Chaining Journal" -msgstr "" +msgstr "Dnevnik ulančavanja" #. module: stock #: code:addons/stock/stock.py:729 @@ -3358,19 +3525,19 @@ msgstr "" #. module: stock #: view:stock.picking:0 msgid "Additional info" -msgstr "" +msgstr "Dodatne inf." #. module: stock #: view:stock.move:0 #: field:stock.move,tracking_id:0 msgid "Pack" -msgstr "" +msgstr "Pakiranje/teret" #. module: stock #: view:stock.move:0 #: view:stock.picking:0 msgid "Date Expected" -msgstr "" +msgstr "Očekivano" #. module: stock #: model:ir.actions.act_window,help:stock.action_picking_tree4 @@ -3389,17 +3556,17 @@ msgstr "Automatska potvrda" #. module: stock #: report:stock.picking.list:0 msgid "Weight" -msgstr "" +msgstr "Težina" #. module: stock #: model:ir.model,name:stock.model_product_template msgid "Product Template" -msgstr "" +msgstr "Predložak proizvoda" #. module: stock #: selection:report.stock.move,month:0 msgid "December" -msgstr "" +msgstr "Prosinac" #. module: stock #: selection:stock.location,chained_auto_packing:0 @@ -3413,16 +3580,19 @@ msgid "" "specific product. You can filter on the product to see all the past or " "future movements for the product." msgstr "" +"This menu gives you the full traceability of inventory operations on a " +"specific product. You can filter on the product to see all the past or " +"future movements for the product." #. module: stock #: view:stock.picking:0 msgid "Return Products" -msgstr "" +msgstr "Return Products" #. module: stock #: view:stock.inventory:0 msgid "Validate Inventory" -msgstr "" +msgstr "Validate Inventory" #. module: stock #: help:stock.move,price_currency_id:0 @@ -3430,11 +3600,13 @@ msgid "" "Technical field used to record the currency chosen by the user during a " "picking confirmation (when average price costing method is used)" msgstr "" +"Technical field used to record the currency chosen by the user during a " +"picking confirmation (when average price costing method is used)" #. module: stock #: model:ir.ui.menu,name:stock.menu_stock_products_moves msgid "Products Moves" -msgstr "" +msgstr "Skladišni prijenosi" #. module: stock #: selection:stock.picking,invoice_state:0 @@ -3449,17 +3621,17 @@ msgstr "" #. module: stock #: field:stock.picking,max_date:0 msgid "Max. Expected Date" -msgstr "" +msgstr "Max. Expected Date" #. module: stock #: field:stock.picking,auto_picking:0 msgid "Auto-Picking" -msgstr "" +msgstr "Auto-skladišnica" #. module: stock #: model:stock.location,name:stock.stock_location_shop1 msgid "Shop 2" -msgstr "" +msgstr "Shop 2" #. module: stock #: constraint:res.partner:0 @@ -3474,7 +3646,7 @@ msgstr "" #: selection:stock.location,chained_picking_type:0 #: selection:stock.picking,type:0 msgid "Internal" -msgstr "Unutarnje" +msgstr "Interno" #. module: stock #: selection:report.stock.inventory,state:0 @@ -3489,7 +3661,7 @@ msgstr "Nacrt" #: model:ir.actions.report.xml,name:stock.report_stock_inventory_move #: report:stock.inventory.move:0 msgid "Stock Inventory" -msgstr "" +msgstr "Stock Inventory" #. module: stock #: help:report.stock.inventory,state:0 @@ -3500,11 +3672,17 @@ msgid "" " When the picking it done the state is 'Done'. \n" "The state is 'Waiting' if the move is waiting for another one." msgstr "" +"Nakon kreiranja skladišni prijenos je u stanju 'Nacrt' .\n" +" Nakon toga se postavlja u stanje 'Potvrđen'.\n" +" Ako postoje dostatne stvarne količine na zalihi stanje prelazi u " +"'Dostupno'.\n" +" Nakon izdavanja stanje je 'Izvršen'. \n" +"Stanje je 'Na čekanju' kada prijenos čeka izvršenje drugog prijenosa." #. module: stock #: view:board.board:0 msgid "Outgoing Products Delay" -msgstr "" +msgstr "Outgoing Products Delay" #. module: stock #: field:stock.move.split.lines,use_exist:0 @@ -3523,6 +3701,8 @@ msgid "" "For the current product, this stock location will be used, instead of the " "default one, as the source location for stock moves generated by procurements" msgstr "" +"Koristiti ovu skladišnu lokaciju, umjesto uobičajene, kao izvorišnu lokaciju " +"za prijenose generirane nabavom" #. module: stock #: code:addons/stock/stock.py:1319 @@ -3533,12 +3713,12 @@ msgstr "" #. module: stock #: help:stock.picking,origin:0 msgid "Reference of the document that produced this picking." -msgstr "" +msgstr "Referenca na dokument koji je generirao ovu skladišnicu." #. module: stock #: field:stock.fill.inventory,set_stock_zero:0 msgid "Set to zero" -msgstr "" +msgstr "Set to zero" #. module: stock #: code:addons/stock/wizard/stock_invoice_onshipping.py:85 @@ -3549,7 +3729,7 @@ msgstr "" #. module: stock #: selection:report.stock.move,month:0 msgid "November" -msgstr "" +msgstr "Studeni" #. module: stock #: code:addons/stock/product.py:101 @@ -3567,7 +3747,7 @@ msgstr "" #. module: stock #: field:stock.location,chained_company_id:0 msgid "Chained Company" -msgstr "" +msgstr "Chained Company" #. module: stock #: view:stock.picking:0 @@ -3577,7 +3757,7 @@ msgstr "Provjeri dostupnost" #. module: stock #: selection:report.stock.move,month:0 msgid "January" -msgstr "" +msgstr "Siječanj" #. module: stock #: help:product.product,track_incoming:0 @@ -3585,6 +3765,8 @@ msgid "" "Forces to specify a Production Lot for all moves containing this product and " "coming from a Supplier Location" msgstr "" +"Forces to specify a Production Lot for all moves containing this product and " +"coming from a Supplier Location" #. module: stock #: model:ir.actions.act_window,name:stock.act_product_stock_move_futur_open @@ -3594,7 +3776,7 @@ msgstr "Budući prijenosi zalihe" #. module: stock #: field:stock.move,move_history_ids2:0 msgid "Move History (parent moves)" -msgstr "" +msgstr "Move History (parent moves)" #. module: stock #: code:addons/stock/product.py:361 @@ -3619,7 +3801,7 @@ msgstr "" #. module: stock #: view:stock.change.product.qty:0 msgid "Select Quantity" -msgstr "" +msgstr "Odaberi količinu" #. module: stock #: model:ir.actions.act_window,help:stock.action_location_tree @@ -3628,6 +3810,9 @@ msgid "" "click on a location to get the list of the products and their stock level in " "this particular location and all its children." msgstr "" +"This is the structure of your company's warehouses and locations. You can " +"click on a location to get the list of the products and their stock level in " +"this particular location and all its children." #. module: stock #: model:res.request.link,name:stock.req_link_tracking @@ -3641,7 +3826,7 @@ msgstr "" #: view:stock.production.lot:0 #: field:stock.production.lot,name:0 msgid "Production Lot" -msgstr "Produkcijska serija" +msgstr "Lot proizvodnje" #. module: stock #: model:ir.ui.menu,name:stock.menu_traceability @@ -3655,7 +3840,7 @@ msgstr "Sljedivost" #. module: stock #: view:stock.picking:0 msgid "To invoice" -msgstr "" +msgstr "Za fakturiranje" #. module: stock #: model:ir.actions.act_window,name:stock.action_location_form @@ -3667,12 +3852,12 @@ msgstr "Lokacije" #. module: stock #: view:stock.picking:0 msgid "General Information" -msgstr "Opće informacije" +msgstr "Opći podaci" #. module: stock #: field:stock.production.lot,prefix:0 msgid "Prefix" -msgstr "" +msgstr "Prefix" #. module: stock #: code:addons/stock/wizard/stock_splitinto.py:53 @@ -3689,20 +3874,21 @@ msgstr "" #: field:stock.partial.picking,product_moves_in:0 #: field:stock.partial.picking,product_moves_out:0 msgid "Moves" -msgstr "Prijenosi" +msgstr "Temeljnice" #. module: stock #: view:report.stock.move:0 #: field:report.stock.move,location_dest_id:0 #: field:stock.picking,location_dest_id:0 msgid "Dest. Location" -msgstr "Odredišna lokacija" +msgstr "Lokacija isporuke" #. module: stock #: help:stock.move,product_packaging:0 msgid "" "It specifies attributes of packaging like type, quantity of packaging,etc." msgstr "" +"It specifies attributes of packaging like type, quantity of packaging,etc." #. module: stock #: code:addons/stock/stock.py:2386 @@ -3719,24 +3905,24 @@ msgstr "" #. module: stock #: constraint:stock.move:0 msgid "You must assign a production lot for this product" -msgstr "" +msgstr "Morate pridijeliti lot proizvodnje ovom proizvodu" #. module: stock #: view:stock.move:0 msgid "Expected" -msgstr "" +msgstr "Očekivano" #. module: stock #: selection:report.stock.inventory,location_type:0 #: model:stock.location,name:stock.location_production #: selection:stock.location,usage:0 msgid "Production" -msgstr "Produkcija" +msgstr "Proizvodnja" #. module: stock #: view:stock.split.into:0 msgid "Split Move" -msgstr "" +msgstr "Split Move" #. module: stock #: code:addons/stock/wizard/stock_return_picking.py:97 @@ -3749,12 +3935,12 @@ msgstr "" #. module: stock #: model:ir.model,name:stock.model_stock_move_split msgid "Split in Production lots" -msgstr "" +msgstr "Split in Production lots" #. module: stock #: view:report.stock.inventory:0 msgid "Real" -msgstr "" +msgstr "Realan" #. module: stock #: report:stock.picking.list:0 @@ -3766,7 +3952,7 @@ msgstr "Opis" #. module: stock #: selection:report.stock.move,month:0 msgid "May" -msgstr "" +msgstr "Svibanj" #. module: stock #: code:addons/stock/wizard/stock_partial_move.py:133 @@ -3785,13 +3971,13 @@ msgstr "" #. module: stock #: view:stock.tracking:0 msgid "Upstream traceability" -msgstr "" +msgstr "Upstream sljedivost" #. module: stock #: model:ir.actions.report.xml,name:stock.report_location_overview_all #: report:lot.stock.overview_all:0 msgid "Location Content" -msgstr "" +msgstr "Location Content" #. module: stock #: code:addons/stock/product.py:385 @@ -3804,7 +3990,7 @@ msgstr "" #: field:product.template,property_stock_account_output:0 #: field:stock.change.standard.price,stock_account_output:0 msgid "Stock Output Account" -msgstr "Izlazni konto zalihe" +msgstr "Stock Output Account" #. module: stock #: field:stock.location,chained_location_type:0 @@ -3814,7 +4000,7 @@ msgstr "Ulančani tip lokacije" #. module: stock #: model:ir.model,name:stock.model_stock_report_prodlots msgid "Stock report by production lots" -msgstr "Izvještaj zalihe za proizvodne lotove" +msgstr "Zalihe po proizvodnim lotovima" #. module: stock #: view:stock.location:0 @@ -3826,34 +4012,34 @@ msgstr "Kupac" #. module: stock #: selection:report.stock.move,month:0 msgid "February" -msgstr "" +msgstr "Veljača" #. module: stock #: view:stock.production.lot:0 msgid "Production Lot Identification" -msgstr "" +msgstr "Proizvodna Lot Identifikacija" #. module: stock #: field:stock.location,scrap_location:0 #: view:stock.move.scrap:0 msgid "Scrap Location" -msgstr "" +msgstr "Lokacija otpisa" #. module: stock #: selection:report.stock.move,month:0 msgid "April" -msgstr "" +msgstr "Travanj" #. module: stock #: view:report.stock.inventory:0 #: view:stock.move:0 msgid "Future" -msgstr "" +msgstr "Budućnost" #. module: stock #: field:stock.invoice.onshipping,invoice_date:0 msgid "Invoiced date" -msgstr "" +msgstr "Datum računa" #. module: stock #: code:addons/stock/stock.py:729 @@ -3884,13 +4070,13 @@ msgstr "" #. module: stock #: help:stock.move,move_dest_id:0 msgid "Optional: next stock move when chaining them" -msgstr "" +msgstr "Optional: next stock move when chaining them" #. module: stock #: view:report.stock.move:0 #: field:report.stock.move,year:0 msgid "Year" -msgstr "" +msgstr "Godina" #. module: stock #: model:stock.location,name:stock.stock_location_locations @@ -3907,12 +4093,12 @@ msgstr "" #: help:stock.location,posy:0 #: help:stock.location,posz:0 msgid "Optional localization details, for information purpose only" -msgstr "" +msgstr "Komentar lokacije" #. module: stock #: view:product.product:0 msgid "Expected Stock Variations" -msgstr "" +msgstr "Expected Stock Variations" #~ msgid "LIFO" #~ msgstr "LIFO" @@ -4138,9 +4324,6 @@ msgstr "" #~ msgid "terp-stock" #~ msgstr "terp-stock" -#~ msgid "Packing List:" -#~ msgstr "Lista pakiranja:" - #~ msgid "STOCK_MEDIA_RECORD" #~ msgstr "STOCK_MEDIA_RECORD" @@ -4441,9 +4624,6 @@ msgstr "" #~ msgid "Split move lines in two" #~ msgstr "Razdijeli stavke prijenosa u dva dijela" -#~ msgid "Return" -#~ msgstr "Vrati" - #~ msgid "Auto-Packing" #~ msgstr "Auto-pakiranje" @@ -4657,3 +4837,12 @@ msgstr "" #~ msgid "Move State" #~ msgstr "Stanje prijenosa" + +#~ msgid "Stock Management" +#~ msgstr "Stock Management" + +#~ msgid "Packing List:" +#~ msgstr "Packing List:" + +#~ msgid "Return" +#~ msgstr "Return" diff --git a/addons/stock/i18n/hu.po b/addons/stock/i18n/hu.po index 4508ac3a2ea..b0b89b04192 100644 --- a/addons/stock/i18n/hu.po +++ b/addons/stock/i18n/hu.po @@ -2497,7 +2497,7 @@ msgstr "Termékek készletének megtekintése" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Belső kiszedési lista" #. module: stock diff --git a/addons/stock/i18n/id.po b/addons/stock/i18n/id.po index db9fec8893d..7d32743d21a 100644 --- a/addons/stock/i18n/id.po +++ b/addons/stock/i18n/id.po @@ -2506,7 +2506,7 @@ msgstr "Lihat Stok Produk" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Daftar pengambilan internal" #. module: stock diff --git a/addons/stock/i18n/it.po b/addons/stock/i18n/it.po index 0253e9048e3..919beb2ec4b 100644 --- a/addons/stock/i18n/it.po +++ b/addons/stock/i18n/it.po @@ -2495,7 +2495,7 @@ msgstr "Visualizza giacenza prodotti" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Picking list interna" #. module: stock diff --git a/addons/stock/i18n/ko.po b/addons/stock/i18n/ko.po index 5aa17a9f249..455d0393c0e 100644 --- a/addons/stock/i18n/ko.po +++ b/addons/stock/i18n/ko.po @@ -2409,7 +2409,7 @@ msgstr "재고 보기" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/lt.po b/addons/stock/i18n/lt.po index 5a7e42629cd..f18d4e7fac3 100644 --- a/addons/stock/i18n/lt.po +++ b/addons/stock/i18n/lt.po @@ -2412,7 +2412,7 @@ msgstr "Peržiūrėti produktų atsargas" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/lv.po b/addons/stock/i18n/lv.po index ccefa9e0789..53bb4860baf 100644 --- a/addons/stock/i18n/lv.po +++ b/addons/stock/i18n/lv.po @@ -2409,7 +2409,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/mn.po b/addons/stock/i18n/mn.po index efb2c61166f..bae4978d770 100644 --- a/addons/stock/i18n/mn.po +++ b/addons/stock/i18n/mn.po @@ -2423,7 +2423,7 @@ msgstr "Барааны агуулах харах" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/nb.po b/addons/stock/i18n/nb.po index 49de8775c60..58b3f1521d6 100644 --- a/addons/stock/i18n/nb.po +++ b/addons/stock/i18n/nb.po @@ -2412,7 +2412,7 @@ msgstr "Vis lager med produkter" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/nl.po b/addons/stock/i18n/nl.po index 8abcaba9620..acca46679e6 100644 --- a/addons/stock/i18n/nl.po +++ b/addons/stock/i18n/nl.po @@ -2412,7 +2412,7 @@ msgstr "Beeld productenvoorraad" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/nl_BE.po b/addons/stock/i18n/nl_BE.po index 931aab77bb4..53fe39b40d5 100644 --- a/addons/stock/i18n/nl_BE.po +++ b/addons/stock/i18n/nl_BE.po @@ -2408,7 +2408,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/pl.po b/addons/stock/i18n/pl.po index c775b418ffb..e40a191271d 100644 --- a/addons/stock/i18n/pl.po +++ b/addons/stock/i18n/pl.po @@ -2592,7 +2592,7 @@ msgstr "Podgląd zapasów" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Pobranie wewnętrzne (MM)" #. module: stock diff --git a/addons/stock/i18n/pt.po b/addons/stock/i18n/pt.po index 14080abf4e7..a8b20192939 100644 --- a/addons/stock/i18n/pt.po +++ b/addons/stock/i18n/pt.po @@ -2414,7 +2414,7 @@ msgstr "Ver Stock de Produtos" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/pt_BR.po b/addons/stock/i18n/pt_BR.po index 8fc6f64629d..a77385b8d61 100644 --- a/addons/stock/i18n/pt_BR.po +++ b/addons/stock/i18n/pt_BR.po @@ -2561,7 +2561,7 @@ msgstr "Ver Estoque dos Produtos" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Lista de Separação Interna" #. module: stock diff --git a/addons/stock/i18n/ro.po b/addons/stock/i18n/ro.po index 2180abf6baa..910ad8a8014 100644 --- a/addons/stock/i18n/ro.po +++ b/addons/stock/i18n/ro.po @@ -2432,7 +2432,7 @@ msgstr "Afişare stoc după produse" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Liste interne de preluare" #. module: stock diff --git a/addons/stock/i18n/ru.po b/addons/stock/i18n/ru.po index 4b6157b6ce3..b8583613cc1 100644 --- a/addons/stock/i18n/ru.po +++ b/addons/stock/i18n/ru.po @@ -2564,7 +2564,7 @@ msgstr "Просмотр товаров на складах" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Внутренний комплектовочный лист" #. module: stock diff --git a/addons/stock/i18n/sl.po b/addons/stock/i18n/sl.po index 5c6a2d6897c..176b60e5011 100644 --- a/addons/stock/i18n/sl.po +++ b/addons/stock/i18n/sl.po @@ -2408,7 +2408,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/sq.po b/addons/stock/i18n/sq.po index 4578cf591c8..b1d48915c3d 100644 --- a/addons/stock/i18n/sq.po +++ b/addons/stock/i18n/sq.po @@ -2409,7 +2409,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/sr.po b/addons/stock/i18n/sr.po index 11aa6fa3c22..d67021e15a3 100644 --- a/addons/stock/i18n/sr.po +++ b/addons/stock/i18n/sr.po @@ -2424,7 +2424,7 @@ msgstr "Pregled zaliha proizvoda" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/sr@latin.po b/addons/stock/i18n/sr@latin.po index 304232c90c9..c2381578db1 100644 --- a/addons/stock/i18n/sr@latin.po +++ b/addons/stock/i18n/sr@latin.po @@ -2424,7 +2424,7 @@ msgstr "Pregled zaliha proizvoda" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/stock.pot b/addons/stock/i18n/stock.pot index e926d7d863b..6b1c0e51833 100644 --- a/addons/stock/i18n/stock.pot +++ b/addons/stock/i18n/stock.pot @@ -2268,7 +2268,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/sv.po b/addons/stock/i18n/sv.po index 48175389c27..5a056336832 100644 --- a/addons/stock/i18n/sv.po +++ b/addons/stock/i18n/sv.po @@ -2410,7 +2410,7 @@ msgstr "View Stock of Products" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/th.po b/addons/stock/i18n/th.po index 07fec36da46..c6e2b3a3723 100644 --- a/addons/stock/i18n/th.po +++ b/addons/stock/i18n/th.po @@ -2409,7 +2409,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/tlh.po b/addons/stock/i18n/tlh.po index 64ff4690650..d2886f36ad9 100644 --- a/addons/stock/i18n/tlh.po +++ b/addons/stock/i18n/tlh.po @@ -2408,7 +2408,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/tr.po b/addons/stock/i18n/tr.po index b26cdf51fc6..63f840e7659 100644 --- a/addons/stock/i18n/tr.po +++ b/addons/stock/i18n/tr.po @@ -2599,7 +2599,7 @@ msgstr "Ürün Stoğunu Göster" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "Dahili Alım listesi" #. module: stock diff --git a/addons/stock/i18n/uk.po b/addons/stock/i18n/uk.po index 0a0d954763a..2fcce267038 100644 --- a/addons/stock/i18n/uk.po +++ b/addons/stock/i18n/uk.po @@ -2412,7 +2412,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/vi.po b/addons/stock/i18n/vi.po index 856da579eb3..071225bd727 100644 --- a/addons/stock/i18n/vi.po +++ b/addons/stock/i18n/vi.po @@ -2412,7 +2412,7 @@ msgstr "Xem tồn kho của các sản phẩm" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "" #. module: stock diff --git a/addons/stock/i18n/zh_CN.po b/addons/stock/i18n/zh_CN.po index 6eeb8827879..57d5dc7d802 100644 --- a/addons/stock/i18n/zh_CN.po +++ b/addons/stock/i18n/zh_CN.po @@ -2466,7 +2466,7 @@ msgstr "查看库存产品" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "内部装箱单" #. module: stock diff --git a/addons/stock/i18n/zh_TW.po b/addons/stock/i18n/zh_TW.po index 2663d8c7190..d2170ec09a6 100644 --- a/addons/stock/i18n/zh_TW.po +++ b/addons/stock/i18n/zh_TW.po @@ -2419,7 +2419,7 @@ msgstr "" #. module: stock #: view:stock.picking:0 -msgid "Internal Picking list" +msgid "Internal Picking List" msgstr "內部提貨清單" #. module: stock diff --git a/addons/stock/product.py b/addons/stock/product.py index 5216314fa3c..3dd58d3ca78 100644 --- a/addons/stock/product.py +++ b/addons/stock/product.py @@ -482,11 +482,13 @@ class product_template(osv.osv): 'property_stock_account_input': fields.property('account.account', type='many2one', relation='account.account', string='Stock Input Account', view_load=True, - help='When doing real-time inventory valuation, counterpart Journal Items for all incoming stock moves will be posted in this account. If not set on the product, the one from the product category is used.'), + help="When doing real-time inventory valuation, counterpart journal items for all incoming stock moves will be posted in this account, unless " + "there is a specific valuation account set on the source location. When not set on the product, the one from the product category is used."), 'property_stock_account_output': fields.property('account.account', type='many2one', relation='account.account', string='Stock Output Account', view_load=True, - help='When doing real-time inventory valuation, counterpart Journal Items for all outgoing stock moves will be posted in this account. If not set on the product, the one from the product category is used.'), + help="When doing real-time inventory valuation, counterpart journal items for all outgoing stock moves will be posted in this account, unless " + "there is a specific valuation account set on the destination location. When not set on the product, the one from the product category is used."), } product_template() @@ -502,11 +504,15 @@ class product_category(osv.osv): 'property_stock_account_input_categ': fields.property('account.account', type='many2one', relation='account.account', string='Stock Input Account', view_load=True, - help='When doing real-time inventory valuation, counterpart Journal Items for all incoming stock moves will be posted in this account. This is the default value for all products in this category, it can also directly be set on each product.'), + help="When doing real-time inventory valuation, counterpart journal items for all incoming stock moves will be posted in this account, unless " + "there is a specific valuation account set on the source location. This is the default value for all products in this category. It " + "can also directly be set on each product"), 'property_stock_account_output_categ': fields.property('account.account', type='many2one', relation='account.account', string='Stock Output Account', view_load=True, - help='When doing real-time inventory valuation, counterpart Journal Items for all outgoing stock moves will be posted in this account. This is the default value for all products in this category, it can also directly be set on each product.'), + help="When doing real-time inventory valuation, counterpart journal items for all outgoing stock moves will be posted in this account, unless " + "there is a specific valuation account set on the destination location. This is the default value for all products in this category. It " + "can also directly be set on each product"), 'property_stock_valuation_account_id': fields.property('account.account', type='many2one', relation='account.account', diff --git a/addons/stock/product_view.xml b/addons/stock/product_view.xml index cf960bfb8aa..9e8cc34813f 100644 --- a/addons/stock/product_view.xml +++ b/addons/stock/product_view.xml @@ -125,53 +125,42 @@ </group> </field> </record> - + <record model="ir.ui.view" id="product.product_kanban_view"> <field name="name">Product Kanban</field> <field name="model">product.product</field> <field name="type">kanban</field> <field name="arch" type="xml"> - <kanban default_group_by="type"> + <kanban> <field name="color"/> <field name="type"/> <field name="product_image"/> <field name="list_price"/> <templates> <t t-name="kanban-box"> - <t t-set="color" t-value="kanban_color(record.color.raw_value || record.type.raw_value)"/> - <div t-att-class="color + (record.color.raw_value == 1 ? ' oe_kanban_color_alert' : '')"> + <t t-if="record.type.raw_value!='service' and record.qty_available.raw_value lte 0" t-set="border">oe_kanban_color_red</t> + <div t-attf-class="#{kanban_color(record.color.raw_value)} #{border || ''}"> <div class="oe_kanban_box oe_kanban_color_border"> - <div class="oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle oe_kanban_title1"> + <div class="oe_kanban_box_header oe_kanban_color_bgdark oe_kanban_color_border oe_kanban_draghandle oe_kanban_title"> <field name="name"/> </div> <div class="oe_kanban_box_content oe_kanban_color_bglight oe_kanban_box_show_onclick_trigger"> - <table class="oe_kanban_table"> - <tr> - <td valign="top" width="48"> - <img t-att-src="kanban_image('product.product', 'product_image', record.id.value)" width="48"/> - </td> - <td> - <div class="oe_kanban_title2"> - <t t-if="record.type.raw_value=='service'">No Stock</t> - <t t-if="record.type.raw_value!='service'"> - <div><field name="qty_available"/> On Hand , <field name="virtual_available"/> Available</div> - <div> - <t t-if="record.list_price.raw_value!=0">Public Price : <field name="lst_price"/> ,</t> - Cost : <field name="standard_price"/> - </div> - </t> - </div> - </td> - </tr> - </table> + <img t-att-src="kanban_image('product.product', 'product_image', record.id.value)" width="48" style="float: left; padding: 0 4px 4px 0"/> + <div t-if="record.type.raw_value == 'service'">No Stock</div> + <t t-if="record.type.raw_value != 'service'"> + <div>Stock: <field name="qty_available"/> on hand, <field name="virtual_available"/> available</div> + <div t-if="record.list_price.raw_value != 0">Public Price: <field name="lst_price"/></div> + <div>Cost : <field name="standard_price"/></div> + </t> + <div class="oe_kanban_clear"/> </div> <div class="oe_kanban_buttons_set oe_kanban_color_border oe_kanban_color_bglight oe_kanban_box_show_onclick"> <div class="oe_kanban_left"> <a string="Edit" icon="gtk-edit" type="edit"/> <a string="Change Color" icon="color-picker" type="color" name="color"/> <a string="Update Stock" name="%(stock.action_view_change_product_quantity)d" icon="gtk-execute" type="action"/> - </div> - <br class="oe_kanban_clear"/> + </div> + <div class="oe_kanban_clear"/> </div> </div> </div> diff --git a/addons/stock/report/__init__.py b/addons/stock/report/__init__.py index 412e77f3f17..e1e083c2a8d 100644 --- a/addons/stock/report/__init__.py +++ b/addons/stock/report/__init__.py @@ -27,3 +27,5 @@ import report_stock_move import stock_inventory_move_report import lot_overview + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock/report/picking.rml b/addons/stock/report/picking.rml index b1fab7360ef..a71a6221656 100644 --- a/addons/stock/report/picking.rml +++ b/addons/stock/report/picking.rml @@ -163,20 +163,12 @@ <td> <para style="terp_default_Bold_9">Shipping Address :</para> <para style="terp_default_9">[[ (picking.address_id and picking.address_id.partner_id and picking.address_id.partner_id.title.name) or '' ]] [[ picking.address_id and picking.address_id.partner_id and picking.address_id.partner_id.name ]]</para> - <para style="terp_default_9">[[ picking.address_id and picking.address_id.street or '' ]]</para> - <para style="terp_default_9">[[ (picking.address_id and picking.address_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ picking.address_id and picking.address_id.zip or '' ]] [[ picking.address_id and picking.address_id.city or '' ]]</para> - <para style="terp_default_9">[[ (picking.address_id and picking.address_id.state_id and picking.address_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (picking.address_id and picking.address_id.country_id and picking.address_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ picking.address_id and display_address(picking.address_id) ]]</para> </td> <td> <para style="terp_default_Bold_9">Contact Address :</para> <para style="terp_default_9">[[ picking.address_id and picking.address_id.title.name or '' ]] [[ picking.address_id and picking.address_id.name or '' ]]</para> - <para style="terp_default_9">[[ picking.address_id and picking.address_id.street or '' ]]</para> - <para style="terp_default_9">[[ (picking.address_id and picking.address_id.street2) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ picking.address_id and picking.address_id.zip or '' ]] [[ picking.address_id and picking.address_id.city or '' ]]</para> - <para style="terp_default_9">[[ (picking.address_id and picking.address_id.state_id and picking.address_id.state_id.name) or removeParentNode('para') ]]</para> - <para style="terp_default_9">[[ (picking.address_id and picking.address_id.country_id and picking.address_id.country_id.name) or '' ]]</para> + <para style="terp_default_9">[[ picking.address_id and display_address(picking.address_id) ]] </para> </td> </tr> </blockTable> diff --git a/addons/stock/report/report_stock.py b/addons/stock/report/report_stock.py index 6344fe2c044..37e4f28c858 100644 --- a/addons/stock/report/report_stock.py +++ b/addons/stock/report/report_stock.py @@ -159,6 +159,7 @@ class report_stock_lines_date(osv.osv): left outer join stock_inventory_line l on (p.id=l.product_id) left join stock_inventory s on (l.inventory_id=s.id) and s.state = 'done' + where p.active='true' group by p.id )""") report_stock_lines_date() diff --git a/addons/stock/report/report_stock_move.py b/addons/stock/report/report_stock_move.py index 7bf817811c4..8b18331d2bf 100644 --- a/addons/stock/report/report_stock_move.py +++ b/addons/stock/report/report_stock_move.py @@ -128,15 +128,12 @@ class report_stock_move(osv.osv): LEFT JOIN product_uom pu ON (sm.product_uom=pu.id) LEFT JOIN product_uom pu2 ON (sm.product_uom=pu2.id) LEFT JOIN product_template pt ON (pp.product_tmpl_id=pt.id) - LEFT JOIN stock_location sl ON (sm.location_id = sl.id) - GROUP BY sm.id,sp.type, sm.date,sm.address_id, sm.product_id,sm.state,sm.product_uom,sm.date_expected, sm.product_id,pt.standard_price, sm.picking_id, sm.product_qty, sm.company_id,sm.product_qty, sm.location_id,sm.location_dest_id,pu.factor,pt.categ_id, sp.stock_journal_id) AS al - GROUP BY al.out_qty,al.in_qty,al.curr_year,al.curr_month, al.curr_day,al.curr_day_diff,al.curr_day_diff1,al.curr_day_diff2,al.dp,al.location_id,al.location_dest_id, @@ -222,3 +219,5 @@ CREATE OR REPLACE view report_stock_inventory AS ( report_stock_inventory() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock/stock.py b/addons/stock/stock.py index 292cd052d5a..461c863aaed 100644 --- a/addons/stock/stock.py +++ b/addons/stock/stock.py @@ -211,8 +211,16 @@ class stock_location(osv.osv): 'stock_virtual_value': fields.function(_product_value, type='float', string='Virtual Stock Value', multi="stock", digits_compute=dp.get_precision('Account')), 'company_id': fields.many2one('res.company', 'Company', select=1, help='Let this field empty if this location is shared between all companies'), 'scrap_location': fields.boolean('Scrap Location', help='Check this box to allow using this location to put scrapped/damaged goods.'), - 'valuation_in_account_id': fields.many2one('account.account', 'Stock Input Account',domain = [('type','=','other')], help='This account will be used to value stock moves that have this location as destination, instead of the stock output account from the product.'), - 'valuation_out_account_id': fields.many2one('account.account', 'Stock Output Account',domain = [('type','=','other')], help='This account will be used to value stock moves that have this location as source, instead of the stock input account from the product.'), + 'valuation_in_account_id': fields.many2one('account.account', 'Stock Valuation Account (Incoming)', domain = [('type','=','other')], + help="Used for real-time inventory valuation. When set on a virtual location (non internal type), " + "this account will be used to hold the value of products being moved from an internal location " + "into this location, instead of the generic Stock Output Account set on the product. " + "This has no effect for internal locations."), + 'valuation_out_account_id': fields.many2one('account.account', 'Stock Valuation Account (Outgoing)', domain = [('type','=','other')], + help="Used for real-time inventory valuation. When set on a virtual location (non internal type), " + "this account will be used to hold the value of products being moved out of this location " + "and into an internal location, instead of the generic Stock Output Account set on the product. " + "This has no effect for internal locations."), } _defaults = { 'active': True, @@ -694,6 +702,8 @@ class stock_picking(osv.osv): default['name'] = self.pool.get('ir.sequence').get(cr, uid, seq_obj_name) default['origin'] = '' default['backorder_id'] = False + if picking_obj.invoice_state == 'invoiced': + default['invoice_state'] = '2binvoiced' res=super(stock_picking, self).copy(cr, uid, id, default, context) if res: picking_obj = self.browse(cr, uid, res, context=context) @@ -979,7 +989,6 @@ class stock_picking(osv.osv): for picking in self.browse(cr, uid, ids, context=context): if picking.invoice_state != '2binvoiced': continue - payment_term_id = False partner = picking.address_id and picking.address_id.partner_id if not partner: raise osv.except_osv(_('Error, no partner !'), @@ -990,10 +999,8 @@ class stock_picking(osv.osv): if inv_type in ('out_invoice', 'out_refund'): account_id = partner.property_account_receivable.id - payment_term_id = self._get_payment_term(cr, uid, picking) else: account_id = partner.property_account_payable.id - address_contact_id, address_invoice_id = \ self._get_address_invoice(cr, uid, picking).values() address = address_obj.browse(cr, uid, address_contact_id, context=context) @@ -1020,7 +1027,7 @@ class stock_picking(osv.osv): 'address_invoice_id': address_invoice_id, 'address_contact_id': address_contact_id, 'comment': comment, - 'payment_term': payment_term_id, + 'payment_term': self._get_payment_term(cr, uid, picking), 'fiscal_position': partner.property_account_position.id, 'date_invoice': context.get('date_inv',False), 'company_id': picking.company_id.id, @@ -1801,7 +1808,7 @@ class stock_move(osv.osv): def onchange_date(self, cr, uid, ids, date, date_expected, context=None): """ On change of Scheduled Date gives a Move date. - @param date_expected: Scheduled Date + @param date_expected: Scheduled Date @param date: Move Date @return: Move Date """ @@ -2696,7 +2703,7 @@ class stock_inventory_line(osv.osv): return {'value': {'product_qty': 0.0, 'product_uom': False}} obj_product = self.pool.get('product.product').browse(cr, uid, product) uom = uom or obj_product.uom_id.id - amount = self.pool.get('stock.location')._product_get(cr, uid, location_id, [product], {'uom': uom, 'to_date': to_date})[product] + amount = self.pool.get('stock.location')._product_get(cr, uid, location_id, [product], {'uom': uom, 'to_date': to_date, 'compute_child': False})[product] result = {'product_qty': amount, 'product_uom': uom} return {'value': result} diff --git a/addons/stock/stock_view.xml b/addons/stock/stock_view.xml index 8e3450708eb..aeb809330e7 100644 --- a/addons/stock/stock_view.xml +++ b/addons/stock/stock_view.xml @@ -692,7 +692,7 @@ <field name="type">form</field> <field eval="12" name="priority"/> <field name="arch" type="xml"> - <form string="Internal Picking list"> + <form string="Internal Picking List"> <group colspan="4" col="6"> <group colspan="4" col="4"> <field name="name" readonly="1"/> @@ -1022,8 +1022,8 @@ <field name="arch" type="xml"> <search string="Picking list"> <group> - <filter icon="terp-check" name="available" string="Available" domain="[('state','=','assigned')]" help="Assigned Delivery Orders"/> - <filter icon="terp-camera_test" name="confirmed" string="Confirmed" domain="[('state','=','confirmed')]" help="Confirmed Delivery Orders"/> + <filter icon="terp-check" name="available" string="Ready" domain="[('state','=','assigned')]" help="Assigned Delivery Orders"/> + <filter icon="terp-camera_test" name="confirmed" string="Waiting" domain="[('state','=','confirmed')]" help="Confirmed Delivery Orders"/> <filter icon="terp-dialog-close" name="done" string="Done" domain="[('state','=','done')]" help="Delivery orders already processed"/> <separator orientation="vertical"/> <filter icon="terp-accessories-archiver-minus" string="Back Orders" domain="[('backorder_id', '!=', False)]" help="Is a Back Order" groups="base.group_extended"/> @@ -1058,7 +1058,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form,calendar</field> <field name="domain">[('type','=','out')]</field> - <field name="context">{'contact_display': 'partner_address', 'search_default_available': 1}</field> + <field name="context">{'default_type': 'out', 'contact_display': 'partner_address', 'search_default_available': 1}</field> <field name="search_view_id" ref="view_picking_out_search"/> <field name="help">This is the list of all delivery orders that have to be prepared, according to your different sales orders and your logistics rules.</field> </record> @@ -1239,7 +1239,7 @@ <field name="arch" type="xml"> <search string="Incoming Shipments"> <group> - <filter icon="terp-check" name="available" string="Available" domain="[('state','=','assigned')]" help="Incoming Shipments Available" /> + <filter icon="terp-check" name="available" string="Ready to Process" domain="[('state','=','assigned')]" help="Incoming Shipments Available" /> <filter icon="terp-dialog-close" name="done" string="Done" domain="[('state','=','done')]" help="Incoming Shipments already processed"/> <separator orientation="vertical" /> <filter icon="terp-accessories-archiver-minus" string="Back Orders" domain="[('backorder_id', '!=', False)]" help="Is a Back Order" groups="base.group_extended"/> @@ -1277,7 +1277,7 @@ <field name="domain">[('type','=','in')]</field> <field name="context">{'contact_display': 'partner_address',"search_default_available":1}</field> <field name="search_view_id" ref="view_picking_in_search"/> - <field name="help">The Incoming Shipments is the list of all orders you will receive from your supplier. An incoming shipment contains a list of products to be received according to the original purchase order. You can validate the shipment totally or partially.</field> + <field name="help">The Incoming Shipments is the list of all orders you will receive from your suppliers. An incoming shipment contains a list of products to be received according to the original purchase order. You can validate the shipment totally or partially.</field> </record> <record id="action_invoice_tree5_view1" model="ir.actions.act_window.view"> <field eval="1" name="sequence"/> @@ -1305,8 +1305,8 @@ <field name="arch" type="xml"> <search string="Internal Picking List"> <group> - <filter icon="terp-check" string="Available" domain="[('state','=','assigned')]" help="Assigned Internal Moves"/> - <filter icon="terp-camera_test" name="confirmed" string="Confirmed" domain="[('state','=','confirmed')]" help="Confirmed Internal Moves" /> + <filter icon="terp-check" string="Ready" domain="[('state','=','assigned')]" help="Assigned Internal Moves"/> + <filter icon="terp-camera_test" name="confirmed" string="Waiting" domain="[('state','=','confirmed')]" help="Confirmed Internal Moves" /> <separator orientation="vertical"/> <field name="name"/> <field name="origin"/> @@ -1335,7 +1335,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form,calendar</field> <field name="domain">[('type','=','internal')]</field> - <field name="context">{'contact_display': 'partner_address',"search_default_available":1}</field> + <field name="context">{'default_type': 'internal', 'contact_display': 'partner_address', 'search_default_available': 1}</field> <field name="search_view_id" ref="view_picking_internal_search"/> <field name="help">Internal Moves display all inventory operations you have to perform in your warehouse. All operations can be categorized into stock journals, so that each worker has his own list of operations to perform in his own journal. Most operations are prepared automatically by OpenERP according to your preconfigured logistics rules, but you can also record manual stock operations.</field> </record> @@ -1670,7 +1670,8 @@ <field name="arch" type="xml"> <search string="Stock Moves"> <group> - <filter icon="terp-gtk-go-back-rtl" name="receive" string="To Do " domain="[('state','in',('confirmed','assigned'))]" help="Stock to be receive"/> + <filter icon="terp-gtk-go-back-rtl" name="receive" string="Waiting " domain="[('state','in',('confirmed','assigned'))]" help="Stock to be receive"/> + <filter icon="terp-check" name="available" string="Available" domain="[('state','in',('assigned',))]" help="Stock available to be delivered"/> <filter icon="terp-dialog-close" name="done" string="Done" domain="[('state', '=', 'done')]"/> <separator orientation="vertical"/> <filter icon="terp-go-today" string="Today" domain="[('date','<=',time.strftime('%%Y-%%m-%%d 23:59:59')),('date','>=',time.strftime('%%Y-%%m-%%d 00:00:00'))]" help="Orders planned for today"/> @@ -1702,7 +1703,7 @@ <field name="arch" type="xml"> <search string="Stock Moves"> <group> - <filter icon="terp-gtk-go-back-rtl" name="receive" string="To Do" domain="[('state','in',('confirmed','assigned'))]" help="Stock to be delivered (available or not)"/> + <filter icon="terp-gtk-go-back-rtl" name="receive" string=" Waiting" domain="[('state','in',('confirmed','assigned'))]" help="Stock to be delivered (Available or not)"/> <filter icon="terp-check" name="available" string="Available" domain="[('state','in',('assigned',))]" help="Stock available to be delivered"/> <filter icon="terp-dialog-close" name="received" string="Done" domain="[('state','=','done')]"/> <separator orientation="vertical"/> @@ -1735,7 +1736,7 @@ <field name="view_mode">tree,form</field> <field name="domain">['|','&',('picking_id','=',False),('location_id.usage', 'in', ['customer','supplier']),'&',('picking_id','!=',False),('picking_id.type','=','in')]</field> <field name="view_id" ref="view_move_tree_reception_picking"/> - <field name="context" eval="'{\'search_default_receive\':1, \'product_receive\' : True, \'default_location_id\':%d, \'default_location_dest_id\':%d}' % (ref('stock_location_suppliers'),ref('stock_location_stock') )"/> + <field name="context" eval="'{\'search_default_receive\':1, \'search_default_available\':1, \'product_receive\' : True, \'default_location_id\':%d, \'default_location_dest_id\':%d}' % (ref('stock_location_suppliers'),ref('stock_location_stock') )"/> <field name="search_view_id" ref="view_move_search_reception_incoming_picking"/> <field name="help">Here you can receive individual products, no matter what purchase order or picking order they come from. You will find the list of all products you are waiting for. Once you receive an order, you can filter based on the name of the supplier or the purchase order reference. Then you can confirm all products received using the buttons on the right of each line.</field> </record> @@ -1841,7 +1842,7 @@ <field name="view_type">form</field> <field name="view_mode">tree,form,calendar</field> <field name="domain">[('type','=','out')]</field> - <field name="context">{'contact_display': 'partner',"search_default_available":1}</field> + <field name="context">{'default_type': 'out', 'contact_display': 'partner',"search_default_available":1}</field> <field name="search_view_id" ref="view_picking_in_search"/> </record> <record id="action_invoice_tree5_out" model="ir.actions.act_window.view"> @@ -1870,7 +1871,7 @@ <field name="view_mode">tree,form</field> <field name="domain">['|','&',('picking_id','=',False),('location_dest_id.usage', 'in', ['customer','supplier']),'&',('picking_id','!=',False),('picking_id.type','=','out')]</field> <field name="view_id" ref="view_move_tree_reception_picking"/> - <field name="context" eval="'{\'search_default_receive\':1, \'default_location_id\':%d, \'default_location_dest_id\':%d}' % (ref('stock_location_stock'),ref('stock_location_customers'))"/> + <field name="context" eval="'{\'search_default_receive\':1,\'search_default_available\':1, \'default_location_id\':%d, \'default_location_dest_id\':%d}' % (ref('stock_location_stock'),ref('stock_location_customers'))"/> <field name="search_view_id" ref="view_move_search_reception_outcoming_picking"/> <field name="help">You will find in this list all products you have to deliver to your customers. You can process the deliveries directly from this list using the buttons on the right of each line. You can filter the products to deliver by customer, products or sale order (using the Origin field).</field> </record> diff --git a/addons/stock/test/stock_test.yml b/addons/stock/test/stock_test.yml index 63650ffeb38..6e41849ea51 100644 --- a/addons/stock/test/stock_test.yml +++ b/addons/stock/test/stock_test.yml @@ -307,7 +307,6 @@ } split_id = self.pool.get('stock.move.split').create(cr, uid, partial_datas, context={}) split_move_data= { - 'lot_id': split_id, 'quantity': 10, 'name': 'lot', } diff --git a/addons/stock/wizard/stock_change_standard_price.py b/addons/stock/wizard/stock_change_standard_price.py index fa36559dddc..d4ca8d1138f 100644 --- a/addons/stock/wizard/stock_change_standard_price.py +++ b/addons/stock/wizard/stock_change_standard_price.py @@ -117,3 +117,5 @@ class change_standard_price(osv.osv_memory): return {'type': 'ir.actions.act_window_close'} change_standard_price() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock/wizard/stock_invoice_onshipping.py b/addons/stock/wizard/stock_invoice_onshipping.py index f4618249e37..46c55311045 100644 --- a/addons/stock/wizard/stock_invoice_onshipping.py +++ b/addons/stock/wizard/stock_invoice_onshipping.py @@ -30,7 +30,7 @@ class stock_invoice_onshipping(osv.osv_memory): if res: return res[0][0] return False - + def _get_journal_id(self, cr, uid, context=None): if context is None: context = {} @@ -46,6 +46,8 @@ class stock_invoice_onshipping(osv.osv_memory): browse_picking = model_pool.browse(cr, uid, res_ids, context=context) for pick in browse_picking: + if not pick.move_lines: + continue src_usage = pick.move_lines[0].location_id.usage dest_usage = pick.move_lines[0].location_dest_id.usage type = pick.type @@ -75,11 +77,11 @@ class stock_invoice_onshipping(osv.osv_memory): 'group': fields.boolean("Group by partner"), 'invoice_date': fields.date('Invoiced date'), } - + _defaults = { 'journal_id' : _get_journal, } - + def view_init(self, cr, uid, fields_list, context=None): if context is None: context = {} diff --git a/addons/stock/wizard/stock_move.py b/addons/stock/wizard/stock_move.py index 9ff0c96a3b8..a61784f7a6b 100644 --- a/addons/stock/wizard/stock_move.py +++ b/addons/stock/wizard/stock_move.py @@ -254,7 +254,7 @@ class stock_move_split_lines_exist(osv.osv_memory): _name = "stock.move.split.lines" _description = "Stock move Split lines" _columns = { - 'name': fields.char('Tracking serial', size=64), + 'name': fields.char('Production Lot', size=64), 'quantity': fields.float('Quantity', digits_compute=dp.get_precision('Product UoM')), 'wizard_id': fields.many2one('stock.move.split', 'Parent Wizard'), 'wizard_exist_id': fields.many2one('stock.move.split', 'Parent Wizard (for existing lines)'), @@ -268,3 +268,5 @@ class stock_move_split_lines_exist(osv.osv_memory): loc_id=False, product_id=False, uom_id=False): return self.pool.get('stock.move').onchange_lot_id(cr, uid, [], prodlot_id, product_qty, loc_id, product_id, uom_id) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock/wizard/stock_partial_picking.py b/addons/stock/wizard/stock_partial_picking.py index f6ecb6511eb..f666bf1e367 100644 --- a/addons/stock/wizard/stock_partial_picking.py +++ b/addons/stock/wizard/stock_partial_picking.py @@ -22,13 +22,14 @@ import time from osv import fields, osv from tools.misc import DEFAULT_SERVER_DATETIME_FORMAT +import decimal_precision as dp class stock_partial_picking_line(osv.TransientModel): _name = "stock.partial.picking.line" _rec_name = 'product_id' _columns = { 'product_id' : fields.many2one('product.product', string="Product", required=True, ondelete='CASCADE'), - 'quantity' : fields.float("Quantity", required=True), + 'quantity' : fields.float("Quantity", digits_compute=dp.get_precision('Product UoM'), required=True), 'product_uom': fields.many2one('product.uom', 'Unit of Measure', required=True, ondelete='CASCADE'), 'prodlot_id' : fields.many2one('stock.production.lot', 'Production Lot', ondelete='CASCADE'), 'location_id': fields.many2one('stock.location', 'Location', required=True, ondelete='CASCADE'), diff --git a/addons/stock/wizard/stock_partial_picking_view.xml b/addons/stock/wizard/stock_partial_picking_view.xml index be85d266673..39b993b7d7d 100644 --- a/addons/stock/wizard/stock_partial_picking_view.xml +++ b/addons/stock/wizard/stock_partial_picking_view.xml @@ -36,9 +36,6 @@ <field name="product_id" /> <field name="quantity" /> <field name="product_uom" /> - <field name="location_id" /> - <field name="location_dest_id" /> - <field name="prodlot_id" domain="[('product_id', '=', product_id)]" groups="base.group_extended" /> <field name="update_cost" invisible="1"/> <field name="cost" attrs="{'invisible': [('update_cost','=', False)]}"/> <field name="currency" attrs="{'invisible': [('update_cost','=', False)]}"/> @@ -54,9 +51,6 @@ <field name="product_id" /> <field name="quantity" /> <field name="product_uom" /> - <field name="location_id" /> - <field name="location_dest_id" /> - <field name="prodlot_id" domain="[('product_id', '=', product_id)]" groups="base.group_extended" /> <field name="update_cost" invisible="1"/> <field name="cost" attrs="{'invisible': [('update_cost','=', False)]}"/> <field name="currency" attrs="{'invisible': [('update_cost','=', False)]}"/> diff --git a/addons/stock/wizard/stock_return_picking.py b/addons/stock/wizard/stock_return_picking.py index b7c8aa28354..689f17cd9b9 100644 --- a/addons/stock/wizard/stock_return_picking.py +++ b/addons/stock/wizard/stock_return_picking.py @@ -24,13 +24,14 @@ import time from osv import osv,fields from tools.translate import _ +import decimal_precision as dp class stock_return_picking_memory(osv.osv_memory): _name = "stock.return.picking.memory" _rec_name = 'product_id' _columns = { 'product_id' : fields.many2one('product.product', string="Product", required=True), - 'quantity' : fields.float("Quantity", required=True), + 'quantity' : fields.float("Quantity", digits_compute=dp.get_precision('Product UoM'), required=True), 'wizard_id' : fields.many2one('stock.return.picking', string="Wizard"), 'move_id' : fields.many2one('stock.move', "Move"), } diff --git a/addons/stock/wizard/stock_splitinto.py b/addons/stock/wizard/stock_splitinto.py index 1f48c8cfc19..68397cc98f1 100644 --- a/addons/stock/wizard/stock_splitinto.py +++ b/addons/stock/wizard/stock_splitinto.py @@ -27,7 +27,7 @@ class stock_split_into(osv.osv_memory): _name = "stock.split.into" _description = "Split into" _columns = { - 'quantity': fields.float('Quantity',digits_compute=dp.get_precision('Product UOM')), + 'quantity': fields.float('Quantity',digits_compute=dp.get_precision('Product UoM')), } _defaults = { 'quantity': lambda *x: 0, @@ -82,3 +82,5 @@ class stock_split_into(osv.osv_memory): return {'type': 'ir.actions.act_window_close'} stock_split_into() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock_invoice_directly/__openerp__.py b/addons/stock_invoice_directly/__openerp__.py index 69acadeb8bd..072f7af2aa5 100644 --- a/addons/stock_invoice_directly/__openerp__.py +++ b/addons/stock_invoice_directly/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Invoice Picking Directly', 'version': '1.0', - 'category': 'Hidden', + "category" : "Warehouse Management", 'complexity': "easy", 'description': """ Invoice Wizard for Delivery. diff --git a/addons/stock_invoice_directly/i18n/hr.po b/addons/stock_invoice_directly/i18n/hr.po index 11f69134802..cc0a4119049 100644 --- a/addons/stock_invoice_directly/i18n/hr.po +++ b/addons/stock_invoice_directly/i18n/hr.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: 2011-01-03 16:58+0000\n" -"PO-Revision-Date: 2010-08-03 01:31+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) <Unknown>\n" +"PO-Revision-Date: 2011-12-08 16:56+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\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: 2011-11-05 05:40+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: stock_invoice_directly #: model:ir.model,name:stock_invoice_directly.model_stock_partial_picking msgid "Partial Picking" -msgstr "" +msgstr "Djelomični prijenos" #. module: stock_invoice_directly #: model:ir.module.module,description:stock_invoice_directly.module_meta_information @@ -29,6 +29,10 @@ msgid "" " the invoicing wizard if the delivery is to be invoiced.\n" " " msgstr "" +"\n" +" Kada šaljete ili otpremate robu, ovaj modul automatski pokreće\n" +" asistenta za fakturiranje ako će se otpremnica fakturirati.\n" +" " #. module: stock_invoice_directly #: model:ir.module.module,shortdesc:stock_invoice_directly.module_meta_information diff --git a/addons/stock_location/__openerp__.py b/addons/stock_location/__openerp__.py index 1c4b7841a10..63d145136c5 100644 --- a/addons/stock_location/__openerp__.py +++ b/addons/stock_location/__openerp__.py @@ -102,3 +102,5 @@ You can use the demo data as follow: 'active': False, 'certificate': '0046505115101', } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock_location/i18n/hr.po b/addons/stock_location/i18n/hr.po index e4c11dce945..ea27ca5037b 100644 --- a/addons/stock_location/i18n/hr.po +++ b/addons/stock_location/i18n/hr.po @@ -7,40 +7,40 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2010-08-03 01:10+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) <Unknown>\n" +"PO-Revision-Date: 2011-12-08 17:51+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\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: 2011-11-05 05:37+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: stock_location #: selection:product.pulled.flow,picking_type:0 #: selection:stock.location.path,picking_type:0 msgid "Sending Goods" -msgstr "" +msgstr "slanje dobara" #. module: stock_location #: view:product.product:0 msgid "Pulled Paths" -msgstr "" +msgstr "Pulled Paths" #. module: stock_location #: selection:product.pulled.flow,type_proc:0 msgid "Move" -msgstr "" +msgstr "Temeljnica" #. module: stock_location #: model:ir.model,name:stock_location.model_stock_location_path msgid "Pushed Flows" -msgstr "" +msgstr "Pushed Flows" #. module: stock_location #: selection:stock.location.path,auto:0 msgid "Automatic No Step Added" -msgstr "Automatski bez dodavanja koraka" +msgstr "Automatski se ne dodaje korak" #. module: stock_location #: view:product.product:0 @@ -50,28 +50,28 @@ msgstr "Parametri" #. module: stock_location #: field:stock.location.path,location_from_id:0 msgid "Source Location" -msgstr "Izvorna Lokacija" +msgstr "Izvorna lokacija" #. module: stock_location #: help:product.pulled.flow,cancel_cascade:0 msgid "Allow you to cancel moves related to the product pull flow" -msgstr "" +msgstr "Allow you to cancel moves related to the product pull flow" #. module: stock_location #: model:ir.model,name:stock_location.model_product_pulled_flow #: field:product.product,flow_pull_ids:0 msgid "Pulled Flows" -msgstr "" +msgstr "Pulled Flows" #. module: stock_location #: constraint:stock.move:0 msgid "You must assign a production lot for this product" -msgstr "" +msgstr "Morate pridijeliti lot proizvodnje ovom proizvodu" #. module: stock_location #: help:product.pulled.flow,location_src_id:0 msgid "Location used by Destination Location to supply" -msgstr "" +msgstr "Lokacija koja se koristi kao lokacija dostave za isporuku" #. module: stock_location #: selection:product.pulled.flow,picking_type:0 @@ -96,12 +96,12 @@ msgstr "Lokacija" #: field:product.pulled.flow,invoice_state:0 #: field:stock.location.path,invoice_state:0 msgid "Invoice Status" -msgstr "Status fakture" +msgstr "Stanje računa" #. module: stock_location #: help:product.pulled.flow,name:0 msgid "This field will fill the packing Origin and the name of its moves" -msgstr "" +msgstr "This field will fill the packing Origin and the name of its moves" #. module: stock_location #: help:stock.location.path,auto:0 @@ -133,17 +133,17 @@ msgstr "Uvjeti" #. module: stock_location #: model:stock.location,name:stock_location.location_pack_zone msgid "Pack Zone" -msgstr "" +msgstr "Pack Zone" #. module: stock_location #: model:stock.location,name:stock_location.location_gate_b msgid "Gate B" -msgstr "" +msgstr "Gate B" #. module: stock_location #: model:stock.location,name:stock_location.location_gate_a msgid "Gate A" -msgstr "" +msgstr "Gate A" #. module: stock_location #: selection:product.pulled.flow,type_proc:0 @@ -153,58 +153,58 @@ msgstr "Kupi" #. module: stock_location #: view:product.product:0 msgid "Pushed flows" -msgstr "" +msgstr "Pushed flows" #. module: stock_location #: model:stock.location,name:stock_location.location_dispatch_zone msgid "Dispatch Zone" -msgstr "" +msgstr "Dispečerska zona" #. module: stock_location #: model:ir.model,name:stock_location.model_stock_move msgid "Stock Move" -msgstr "" +msgstr "Skladišni prijenosi" #. module: stock_location #: view:product.product:0 msgid "Pulled flows" -msgstr "" +msgstr "Pulled flows" #. module: stock_location #: field:product.pulled.flow,company_id:0 #: field:stock.location.path,company_id:0 msgid "Company" -msgstr "" +msgstr "Organizacija" #. module: stock_location #: view:product.product:0 msgid "Logistics Flows" -msgstr "" +msgstr "Logistički tokovi" #. module: stock_location #: help:stock.move,cancel_cascade:0 msgid "If checked, when this move is cancelled, cancel the linked move too" -msgstr "" +msgstr "Otkazivanjem ovog prijenosa otkaži i povezani prijenos" #. module: stock_location #: selection:product.pulled.flow,type_proc:0 msgid "Produce" -msgstr "" +msgstr "Produce" #. module: stock_location #: selection:product.pulled.flow,procure_method:0 msgid "Make to Order" -msgstr "" +msgstr "Po narudžbi (MTO)" #. module: stock_location #: selection:product.pulled.flow,procure_method:0 msgid "Make to Stock" -msgstr "" +msgstr "Sa skladišta (MTS)" #. module: stock_location #: field:product.pulled.flow,partner_address_id:0 msgid "Partner Address" -msgstr "Adresa partnera" +msgstr "Partner Address" #. module: stock_location #: selection:product.pulled.flow,invoice_state:0 @@ -308,12 +308,12 @@ msgstr "" #. module: stock_location #: field:product.pulled.flow,type_proc:0 msgid "Type of Procurement" -msgstr "" +msgstr "Vrsta nabave" #. module: stock_location #: help:product.pulled.flow,company_id:0 msgid "Is used to know to which company belong packings and moves" -msgstr "" +msgstr "Is used to know to which company belong packings and moves" #. module: stock_location #: field:product.pulled.flow,name:0 @@ -331,24 +331,24 @@ msgstr "" #. module: stock_location #: selection:stock.location.path,auto:0 msgid "Manual Operation" -msgstr "Manuelna Operacija" +msgstr "Ručna operacija" #. module: stock_location #: model:ir.model,name:stock_location.model_product_product #: field:product.pulled.flow,product_id:0 msgid "Product" -msgstr "Artikl" +msgstr "Proizvod" #. module: stock_location #: field:product.pulled.flow,procure_method:0 msgid "Procure Method" -msgstr "" +msgstr "Procure Method" #. module: stock_location #: field:product.pulled.flow,picking_type:0 #: field:stock.location.path,picking_type:0 msgid "Shipping Type" -msgstr "" +msgstr "Tip otpreme" #. module: stock_location #: help:product.pulled.flow,procure_method:0 @@ -357,11 +357,14 @@ msgid "" "supplying. 'Make to Order': When needed, purchase or produce for the " "procurement request." msgstr "" +"'Prebaci na zalihu': Kada je potrebno, uzima sa zalihe ili čeka do ponovne " +"opskrbe. 'Kreiraj narudžbu': Kada je potrebno, kupuje ili proizvodi prema " +"zahtjevu nabave." #. module: stock_location #: help:product.pulled.flow,location_id:0 msgid "Is the destination location that needs supplying" -msgstr "" +msgstr "To je odredišna lokacija koja treba nabavu" #. module: stock_location #: field:stock.location.path,product_id:0 @@ -377,13 +380,13 @@ msgstr "" #. module: stock_location #: model:stock.location,name:stock_location.stock_location_qualitytest0 msgid "Quality Control" -msgstr "" +msgstr "Kontrola kvalitete" #. module: stock_location #: selection:product.pulled.flow,invoice_state:0 #: selection:stock.location.path,invoice_state:0 msgid "Not Applicable" -msgstr "" +msgstr "Not Applicable" #. module: stock_location #: field:stock.location.path,delay:0 @@ -401,7 +404,7 @@ msgstr "" #. module: stock_location #: field:product.product,path_ids:0 msgid "Pushed Flow" -msgstr "" +msgstr "Pushed Flow" #. module: stock_location #: code:addons/stock_location/procurement_pull.py:89 @@ -414,39 +417,39 @@ msgstr "" #. module: stock_location #: constraint:stock.move:0 msgid "You try to assign a lot which is not from the same product" -msgstr "" +msgstr "Pokušavate pridružiti lot koji nije iz istog proizvoda" #. module: stock_location #: model:ir.model,name:stock_location.model_procurement_order msgid "Procurement" -msgstr "" +msgstr "Procurement" #. module: stock_location #: field:stock.location.path,location_dest_id:0 msgid "Destination Location" -msgstr "Odredišna Lokacija" +msgstr "Odredišna lokacija" #. module: stock_location #: field:stock.location.path,auto:0 #: selection:stock.location.path,auto:0 msgid "Automatic Move" -msgstr "Automatski Pokret" +msgstr "Automatski prijenos" #. module: stock_location #: selection:product.pulled.flow,picking_type:0 #: selection:stock.location.path,picking_type:0 msgid "Getting Goods" -msgstr "" +msgstr "Dobavljanje robe" #. module: stock_location #: view:product.product:0 msgid "Action Type" -msgstr "" +msgstr "Vrsta akcije" #. module: stock_location #: constraint:product.product:0 msgid "Error: Invalid ean code" -msgstr "Pogreška: Neispravna EAN šifra" +msgstr "Greška: Neispravan barkod!" #. module: stock_location #: help:product.pulled.flow,picking_type:0 @@ -455,11 +458,12 @@ msgid "" "Depending on the company, choose whatever you want to receive or send " "products" msgstr "" +"Ovisno o organizaciji, odaberite što želite za prijem/isporuku proizvoda" #. module: stock_location #: model:stock.location,name:stock_location.location_order msgid "Order Processing" -msgstr "" +msgstr "Proces naručivanja" #. module: stock_location #: field:stock.location.path,name:0 @@ -483,7 +487,7 @@ msgstr "Dnevnik" #: field:product.pulled.flow,cancel_cascade:0 #: field:stock.move,cancel_cascade:0 msgid "Cancel Cascade" -msgstr "" +msgstr "Cancel Cascade" #. module: stock_location #: selection:product.pulled.flow,invoice_state:0 diff --git a/addons/stock_location/procurement_pull.py b/addons/stock_location/procurement_pull.py index 7122e5ccd12..0846fe067eb 100644 --- a/addons/stock_location/procurement_pull.py +++ b/addons/stock_location/procurement_pull.py @@ -121,4 +121,6 @@ class procurement_order(osv.osv): wf_service.trg_validate(uid, 'procurement.order', proc_id, 'button_check', cr) return False -procurement_order()
\ No newline at end of file +procurement_order() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/stock_no_autopicking/__openerp__.py b/addons/stock_no_autopicking/__openerp__.py index bd5629579cc..8b3458e0f73 100644 --- a/addons/stock_no_autopicking/__openerp__.py +++ b/addons/stock_no_autopicking/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Stock No Auto-Picking', 'version': '1.0', - 'category': 'Hidden', + "category" : "Warehouse Management", 'description': """ This module allows an intermediate picking process to provide raw materials to production orders. ================================================================================================= diff --git a/addons/stock_no_autopicking/i18n/hr.po b/addons/stock_no_autopicking/i18n/hr.po index d4669d1fc5a..241042589c9 100644 --- a/addons/stock_no_autopicking/i18n/hr.po +++ b/addons/stock_no_autopicking/i18n/hr.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: 2011-01-03 16:58+0000\n" -"PO-Revision-Date: 2010-08-03 03:13+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) <Unknown>\n" +"PO-Revision-Date: 2011-12-08 16:49+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\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: 2011-11-05 05:33+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: stock_no_autopicking #: model:ir.model,name:stock_no_autopicking.model_product_product msgid "Product" -msgstr "" +msgstr "Artikl" #. module: stock_no_autopicking #: model:ir.module.module,description:stock_no_autopicking.module_meta_information @@ -37,36 +37,47 @@ msgid "" " supplier in the routing of the assembly operation.\n" " " msgstr "" +"\n" +" Ovaj modul omogućava proces izuzimanja kako bi se osigurale sirovine\n" +" za proizvodnju.\n" +" Primjer korištenja ovog modula je upravljanje proizvodnjom vašeg " +"dobavljača\n" +" (podugovarač). Kako bi to ostvarili postavite sastavljeni artikl koji je " +"predmet \n" +" podugovaranja na \"Bez prijenosa\" i usmjerite lokaciju dobavljača prema " +"\n" +" operaciji sastavljanja.\n" +" " #. module: stock_no_autopicking #: model:ir.model,name:stock_no_autopicking.model_mrp_production msgid "Manufacturing Order" -msgstr "" +msgstr "Nalog za proizvodnju" #. module: stock_no_autopicking #: field:product.product,auto_pick:0 msgid "Auto Picking" -msgstr "Automatski odabir" +msgstr "Automatski prijenos" #. module: stock_no_autopicking #: help:product.product,auto_pick:0 msgid "Auto picking for raw materials of production orders." -msgstr "Automatski odabir sirovina naloga u proizvodnji" +msgstr "Automatski prijenos sirovina za naloge u proizvodnji" #. module: stock_no_autopicking #: constraint:product.product:0 msgid "Error: Invalid ean code" -msgstr "" +msgstr "Greška: Neispravan barkod!" #. module: stock_no_autopicking #: model:ir.module.module,shortdesc:stock_no_autopicking.module_meta_information msgid "Stock No Auto-Picking" -msgstr "Dionica bez automatskog biranja" +msgstr "Bez prijenosa zaliha" #. module: stock_no_autopicking #: constraint:mrp.production:0 msgid "Order quantity cannot be negative or zero !" -msgstr "" +msgstr "KOličina na nalogu ne smije biti negativna ili nula!" #~ msgid "Invalid XML for View Architecture!" #~ msgstr "Nevažeći XML za arhitekturu prikaza!" diff --git a/addons/stock_planning/__openerp__.py b/addons/stock_planning/__openerp__.py index e3043758b94..1ccb8f93e19 100644 --- a/addons/stock_planning/__openerp__.py +++ b/addons/stock_planning/__openerp__.py @@ -23,7 +23,7 @@ "name": "Master Procurement Schedule", "version": "1.2", "author": "OpenERP SA and Grzegorz Grzelak (OpenGLOBE)", - "category": "Hidden", + "category" : "Manufacturing", "images": ["images/master_procurement_schedule.jpeg","images/sales_forecast.jpeg","images/stock_planning_line.jpeg","images/stock_sales_period.jpeg"], "depends": ["crm", "stock","sale"], "complexity": "expert", diff --git a/addons/stock_planning/i18n/de.po b/addons/stock_planning/i18n/de.po index 022df420410..dcc5c9160c7 100644 --- a/addons/stock_planning/i18n/de.po +++ b/addons/stock_planning/i18n/de.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2011-01-12 15:14+0000\n" -"Last-Translator: Ferdinand-camptocamp <Unknown>\n" +"PO-Revision-Date: 2011-11-29 07:08+0000\n" +"Last-Translator: Ferdinand @ Camptocamp <Unknown>\n" "Language-Team: German <de@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:48+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-11-30 05:27+0000\n" +"X-Generator: Launchpad (build 14404)\n" #. module: stock_planning #: code:addons/stock_planning/wizard/stock_planning_createlines.py:73 @@ -352,7 +352,7 @@ msgstr " Bedarfsmenge " #: code:addons/stock_planning/stock_planning.py:719 #, python-format msgid "%s Pick List %s (%s, %s) %s %s \n" -msgstr "" +msgstr "%s Lieferscheinliste %s (%s, %s) %s %s \n" #. module: stock_planning #: view:stock.planning.createlines:0 @@ -473,7 +473,7 @@ msgstr "Fehler !" #: code:addons/stock_planning/stock_planning.py:626 #, python-format msgid "Manual planning for %s" -msgstr "" +msgstr "Manuelle Planung für %s" #. module: stock_planning #: field:stock.sale.forecast,analyzed_user_id:0 @@ -1248,7 +1248,7 @@ msgstr "Erzeuge Prognosepositionen für d. ausgew. Zentrallager u. d. Periode" #: code:addons/stock_planning/stock_planning.py:656 #, python-format msgid "%s Requisition (%s, %s) %s %s \n" -msgstr "" +msgstr "%s Anforderung (%s, %s) %s %s \n" #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:655 @@ -1757,6 +1757,22 @@ msgid "" " Expected Out: %s Incoming Left: %s \n" " Stock Simulation: %s Minimum stock: %s " msgstr "" +"Lieferschein erstellt im MPS von Benutzer: %s Erstellungsdatum: %s " +" \n" +"Für Periode: %s entspricht Status: \n" +" Lagervorschau: %s \n" +" Anfangsbestand: %s \n" +" Geplant Auslieferung: %s Geplanter Eingang: %s " +" \n" +" bereits ausgeliefert: %s Bereits eingegangen: %s " +" \n" +" bestätigte Auslieferung: %s Bestätigter Eingang: %s " +" \n" +" geplante Auslieferung vor: %s Geplanter Eingang vor: %s " +" \n" +" erwartete Auslieferung: %s restlicher Eingang: %s " +" \n" +" Lager Simulation: %s Minimumbestand: %s " #. module: stock_planning #: field:stock.planning,procure_to_stock:0 diff --git a/addons/stock_planning/i18n/hr.po b/addons/stock_planning/i18n/hr.po index 87d68b22771..b6d0ff1b123 100644 --- a/addons/stock_planning/i18n/hr.po +++ b/addons/stock_planning/i18n/hr.po @@ -8,14 +8,14 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2010-09-29 11:15+0000\n" -"Last-Translator: OpenERP Administrators <Unknown>\n" +"PO-Revision-Date: 2011-12-08 17:51+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" "Language-Team: Croatian <hr@li.org>\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:49+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: stock_planning #: code:addons/stock_planning/wizard/stock_planning_createlines.py:73 @@ -33,9 +33,9 @@ msgid "" "selected calculation is made for input, stock and output location of " "warehouse." msgstr "" -"Označite za kalkulaciju lokacije zalihe samo za odabrano skladište. Ako nije " -"označeno, izvršava se kalkulacija za ulaznu lokaciju, lokaciju zalihe i " -"izlaznu lokaciju skladišta." +"Check to calculate stock location of selected warehouse only. If not " +"selected calculation is made for input, stock and output location of " +"warehouse." #. module: stock_planning #: field:stock.planning,maximum_op:0 @@ -90,9 +90,8 @@ msgid "" "Warehouse which forecasts will concern. If during stock planning you will " "need sales forecast for all warehouses choose any warehouse now." msgstr "" -"Tiče se skladišta sa predviđanjem zalihe. Ako vam je tijekom planiranja " -"zalihe potrebno predviđanje prodaje za sva skladišta odaberite skladište " -"sada." +"Skladište predviđanja. Ako vam je tijekom planiranja zalihe potrebno " +"predviđanje prodaje za sva skladišta odaberite bilo koje skladište sada." #. module: stock_planning #: field:stock.planning,outgoing_left:0 @@ -122,7 +121,7 @@ msgstr "Kreiraj stavke predviđanja" #. module: stock_planning #: help:stock.planning,outgoing:0 msgid "Quantity of all confirmed outgoing moves in calculated Period." -msgstr "Količina svih potvrđenih prijenosa izlaza u periodu kalkulacije" +msgstr "Količina svih potvrđenih izlaznih prijenosa u periodu kalkulacije" #. module: stock_planning #: view:stock.period.createlines:0 @@ -137,7 +136,7 @@ msgstr "Kreiraj dnevne periode" #: field:stock.sale.forecast,company_id:0 #: field:stock.sale.forecast.createlines,company_id:0 msgid "Company" -msgstr "Tvrtka" +msgstr "Organizacija" #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:640 @@ -155,9 +154,7 @@ msgstr "" msgid "" "All sales forecasts for selected Warehouse of selected Product during " "selected Period." -msgstr "" -"Sva predviđanja prodaje za odabrano skladište odabranog proizvoda za vrijeme " -"odabranog perioda." +msgstr "Sve prognoze prodaje za skladište, proizvod i period." #. module: stock_planning #: model:ir.ui.menu,name:stock_planning.menu_stock_period_creatlines @@ -202,7 +199,7 @@ msgstr "Stanje trenutnog perioda" #. module: stock_planning #: view:stock.period.createlines:0 msgid "Create Monthly Periods" -msgstr "Kreiraj mjesečne periode" +msgstr "Stvori mjesečna razdoblja" #. module: stock_planning #: help:stock.planning,supply_warehouse_id:0 @@ -230,13 +227,13 @@ msgstr "Svi proizvodi sa predviđanjem" #. module: stock_planning #: view:stock.sale.forecast:0 msgid "Periods :" -msgstr "Periodi:" +msgstr "Razdoblja:" #. module: stock_planning #: help:stock.planning,already_in:0 msgid "" "Quantity which is already picked up to this warehouse in current period." -msgstr "Količina već poslana u ovo skladište za trenutni period." +msgstr "Količina koja je primljena u skladište u trenutnom periodu." #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:644 @@ -273,7 +270,7 @@ msgstr "Simulacija zalihe" #. module: stock_planning #: model:ir.model,name:stock_planning.model_stock_planning_createlines msgid "stock.planning.createlines" -msgstr "stock.planning.createlines" +msgstr "zaliha.plairanje.createlines" #. module: stock_planning #: help:stock.planning,incoming_before:0 @@ -299,7 +296,7 @@ msgstr "Period5 ovog korisnika" #. module: stock_planning #: help:stock.planning,history:0 msgid "History of procurement or internal supply of this planning line." -msgstr "Povijest nabave ili unutarnje opskrbe za ovu stavku planiranja." +msgstr "Povijest nabava ili internih nabava za ovu stavku planiranja." #. module: stock_planning #: help:stock.planning,company_forecast:0 @@ -307,7 +304,7 @@ msgid "" "All sales forecasts for whole company (for all Warehouses) of selected " "Product during selected Period." msgstr "" -"Sva predviđanja prodaje za cijelu tvrtku (za sva skladišta) za odabrani " +"Sva predviđanja prodaje na nivou organizacije (sva skladišta) za odabrani " "proizvod tijekom odabranog perioda." #. module: stock_planning @@ -353,7 +350,7 @@ msgstr "" #: view:stock.planning.createlines:0 #: view:stock.sale.forecast.createlines:0 msgid "Create" -msgstr "Kreiraj" +msgstr "Stvori" #. module: stock_planning #: model:ir.actions.act_window,name:stock_planning.action_view_stock_planning_form @@ -429,7 +426,7 @@ msgstr "" #. module: stock_planning #: help:stock.sale.forecast,analyze_company:0 msgid "Check this box to see the sales for whole company." -msgstr "Označite kućicu da vidite prodaju za cijelu tvrtku." +msgstr "Označite kućicu da vidite prodaju za cijelu organizaciju." #. module: stock_planning #: field:stock.sale.forecast,name:0 @@ -439,7 +436,7 @@ msgstr "Naziv" #. module: stock_planning #: view:stock.planning:0 msgid "Search Stock Planning" -msgstr "Pretraži planiranje zalihe" +msgstr "Traži planiranje zalihe" #. module: stock_planning #: field:stock.planning,incoming_before:0 @@ -450,7 +447,7 @@ msgstr "Prethodno očekivani ulaz" #: field:stock.planning.createlines,product_categ_id:0 #: field:stock.sale.forecast.createlines,product_categ_id:0 msgid "Product Category" -msgstr "Kategorija proizvoda" +msgstr "Grupa proizvoda" #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:621 @@ -568,12 +565,12 @@ msgstr "Napomena: Ne duplicira postojeće stavke koje ste već kreirali." #. module: stock_planning #: view:stock.period:0 msgid "Stock and Sales Period" -msgstr "Period zalihe i prodaje" +msgstr "Skladišno i prodajno razdoblje" #. module: stock_planning #: field:stock.planning,company_forecast:0 msgid "Company Forecast" -msgstr "Predviđanje za tvrtku" +msgstr "Predviđanje za organizaciju" #. module: stock_planning #: help:stock.planning,product_uom:0 @@ -602,7 +599,7 @@ msgstr "Predviđanja prodaje:" #: field:stock.period,name:0 #: field:stock.period.createlines,name:0 msgid "Period Name" -msgstr "Naziv perioda" +msgstr "Naziv Perioda" #. module: stock_planning #: field:stock.sale.forecast,user_id:0 @@ -612,33 +609,33 @@ msgstr "Kreirao/Potvrdio" #. module: stock_planning #: view:stock.planning:0 msgid "Internal Supply" -msgstr "Unutarnja opskrba" +msgstr "Interna nabava" #. module: stock_planning #: field:stock.sale.forecast,analyzed_period4_per_company:0 msgid "This Company Period4" -msgstr "Period4 ove tvtke" +msgstr "Period4 ove organizacije" #. module: stock_planning #: field:stock.sale.forecast,analyzed_period5_per_company:0 msgid "This Company Period5" -msgstr "Period5 ove tvtke" +msgstr "Period5 ove organizacije" #. module: stock_planning #: field:stock.sale.forecast,analyzed_period2_per_company:0 msgid "This Company Period2" -msgstr "Period2 ove tvtke" +msgstr "Period2 ove organizacije" #. module: stock_planning #: field:stock.sale.forecast,analyzed_period3_per_company:0 msgid "This Company Period3" -msgstr "Period3 ove tvtke" +msgstr "Period3 ove organizacije" #. module: stock_planning #: field:stock.period,date_start:0 #: field:stock.period.createlines,date_start:0 msgid "Start Date" -msgstr "Datum početka" +msgstr "Početni datum" #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:642 @@ -662,9 +659,8 @@ msgid "" "Planning will be created for products from Product Category selected by this " "field. This field is ignored when you check \"All Forecasted Product\" box." msgstr "" -"Planiranje će se kreirati za proizvode iz kategorije odabrane u ovom polju. " -"Ovo polje se ne koristi kada je označena kućica \"Svi proizvodi " -"predviđanja\"." +"Planiranje će se kreirati za proizvode iz odabrane grupe. Ovo polje se ne " +"koristi kada je označeno \"Svi proizvodi predviđanja\"." #. module: stock_planning #: field:stock.planning,planned_outgoing:0 @@ -679,7 +675,7 @@ msgstr "Po odjelu:" #. module: stock_planning #: view:stock.planning:0 msgid "Forecast" -msgstr "Predviđanje" +msgstr "Prognoza" #. module: stock_planning #: selection:stock.period,state:0 @@ -691,7 +687,7 @@ msgstr "Nacrt" #. module: stock_planning #: view:stock.period:0 msgid "Closed" -msgstr "Zatvoreno" +msgstr "Zatvoren" #. module: stock_planning #: view:stock.planning:0 @@ -724,8 +720,8 @@ msgid "" msgstr "" "Unesite planiranu izlaznu količinu odabranog proizvoda iz odabranog " "skladišta za unijeti period. Za planiranje ove vrijednosti pogledajte " -"Potvrđeni izlaz ili Predviđanja prodaja. Ova vrijednost bi trebala biti ista " -"ili veća od Potvrđenog izlaza." +"potvrđeni izlaz ili predviđanja prodaje. Ova vrijednost bi trebala biti ista " +"ili veća od potvrđenog izlaza." #. module: stock_planning #: model:ir.module.module,description:stock_planning.module_meta_information @@ -1257,7 +1253,7 @@ msgstr "" #. module: stock_planning #: field:stock.sale.forecast,analyzed_period4_id:0 msgid "Period4" -msgstr "Period4" +msgstr "Razdoblje4" #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:642 @@ -1269,7 +1265,7 @@ msgstr " Već ušlo: " #. module: stock_planning #: field:stock.sale.forecast,analyzed_period2_id:0 msgid "Period2" -msgstr "Period2" +msgstr "Razdoblje2" #. module: stock_planning #: field:stock.sale.forecast,analyzed_period3_id:0 @@ -1309,7 +1305,7 @@ msgstr "Opći podaci" #. module: stock_planning #: model:ir.actions.act_window,name:stock_planning.action_view_stock_sale_forecast_form msgid "Sales Forecast" -msgstr "Predviđanje prodaje" +msgstr "Prognoza prodaje" #. module: stock_planning #: view:stock.planning:0 @@ -1341,7 +1337,7 @@ msgstr "Povijest prodaje" #. module: stock_planning #: field:stock.planning,supply_warehouse_id:0 msgid "Source Warehouse" -msgstr "Početno skladište" +msgstr "Izvorno skladište" #. module: stock_planning #: help:stock.sale.forecast,product_qty:0 @@ -1356,7 +1352,7 @@ msgstr "Zaliha" #. module: stock_planning #: field:stock.planning,stock_supply_location:0 msgid "Stock Supply Location" -msgstr "Lokacija zalihe" +msgstr "Lokacija nabave" #. module: stock_planning #: help:stock.period.createlines,date_stop:0 @@ -1375,7 +1371,7 @@ msgid "" "selected Warehouse and Period. Product Category field will be ignored." msgstr "" "Označite ovu kućicu da kreirate planiranje za sve proizvode koji koriste " -"predviđanje za odabrano skladište i period. Polje kategorije proizvoda se " +"predviđanje za odabrano skladište i period. Polje grupe proizvoda se " "ignorira." #. module: stock_planning @@ -1388,7 +1384,7 @@ msgstr "Već ušlo" #: field:stock.planning,product_uos_categ:0 #: field:stock.sale.forecast,product_uom_categ:0 msgid "Product UoM Category" -msgstr "Kategorija JM proizvoda" +msgstr "Kategorija JM" #. module: stock_planning #: field:stock.planning,incoming:0 @@ -1423,12 +1419,12 @@ msgstr "Određuje proizvode na koje se odnosi ovo predviđanje." #. module: stock_planning #: selection:stock.planning,state:0 msgid "Done" -msgstr "Završeno" +msgstr "Izvršeno" #. module: stock_planning #: field:stock.period.createlines,period_ids:0 msgid "Periods" -msgstr "Periodi" +msgstr "Razdoblja" #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:638 @@ -1454,18 +1450,18 @@ msgstr "Zatvori" #: view:stock.sale.forecast:0 #: selection:stock.sale.forecast,state:0 msgid "Validated" -msgstr "Potvrđen" +msgstr "Provjereno" #. module: stock_planning #: view:stock.period:0 #: selection:stock.period,state:0 msgid "Open" -msgstr "Otvori" +msgstr "Otvoreno" #. module: stock_planning #: help:stock.sale.forecast.createlines,copy_forecast:0 msgid "Copy quantities from last Stock and Sale Forecast." -msgstr "Kopiray količine iz prethodnog predviđanja zalihe i prodaje." +msgstr "Kopiraj količine iz prethodnog predviđanja zalihe i prodaje." #. module: stock_planning #: field:stock.sale.forecast,analyzed_period1_per_dept:0 @@ -1505,7 +1501,7 @@ msgstr "Period3 ovog skladišta" #. module: stock_planning #: field:stock.planning,outgoing:0 msgid "Confirmed Out" -msgstr "potvrđen izlaz" +msgstr "Potvrđeni izlaz" #. module: stock_planning #: field:stock.sale.forecast,create_uid:0 @@ -1515,7 +1511,7 @@ msgstr "Odgovoran" #. module: stock_planning #: view:stock.sale.forecast:0 msgid "Default UOM" -msgstr "Predefinirana JM" +msgstr "Uobičajena JM" #. module: stock_planning #: field:stock.sale.forecast,analyzed_period4_per_warehouse:0 @@ -1530,7 +1526,7 @@ msgstr "Period5 ovog skladišta" #. module: stock_planning #: view:stock.period:0 msgid "Current" -msgstr "Trenutni" +msgstr "Trenutno" #. module: stock_planning #: model:ir.model,name:stock_planning.model_stock_planning @@ -1613,7 +1609,7 @@ msgstr "Povijest nabave" #. module: stock_planning #: help:stock.period.createlines,date_start:0 msgid "Starting date for planning period." -msgstr "početni datum za period planiranja." +msgstr "Početni datum za period planiranja." #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:641 @@ -1625,7 +1621,7 @@ msgstr " Očekivan ulaz: " #. module: stock_planning #: field:stock.sale.forecast,analyze_company:0 msgid "Per Company" -msgstr "Po tvrtki:" +msgstr "Po organizaciji" #. module: stock_planning #: help:stock.planning,incoming_left:0 @@ -1642,14 +1638,13 @@ msgstr "" #. module: stock_planning #: help:stock.planning,incoming:0 msgid "Quantity of all confirmed incoming moves in calculated Period." -msgstr "" -"Količina svih potvrđenih prijenosa ulaza pripada periodu kalkulacije." +msgstr "Količina svih potvrđenih prijenosa ulaza u periodu kalkulacije." #. module: stock_planning #: field:stock.period,date_stop:0 #: field:stock.period.createlines,date_stop:0 msgid "End Date" -msgstr "Datum završetka" +msgstr "Završni Datum" #. module: stock_planning #: help:stock.planning,stock_supply_location:0 @@ -1665,7 +1660,7 @@ msgstr "" #. module: stock_planning #: view:stock.planning:0 msgid "No Requisition" -msgstr "Bez rekvizicije" +msgstr "Bez zahtjevnica" #. module: stock_planning #: help:stock.planning,minimum_op:0 @@ -1710,7 +1705,7 @@ msgstr "" #. module: stock_planning #: field:stock.sale.forecast,product_uom:0 msgid "Product UoM" -msgstr "JM proizvoda" +msgstr "JM Proizvoda" #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:627 @@ -1761,8 +1756,7 @@ msgstr "Odobri" msgid "" "Period for this planning. Requisition will be created for beginning of the " "period." -msgstr "" -"Period ovog planiranja. Rekvizicija će se kreirati za početak perioda." +msgstr "Period ovog planiranja. Nabava će se kreirati za početak perioda." #. module: stock_planning #: view:stock.sale.forecast:0 @@ -1786,7 +1780,7 @@ msgstr "" #. module: stock_planning #: field:stock.sale.forecast,analyzed_period5_id:0 msgid "Period5" -msgstr "Period5" +msgstr "Razdoblje5" #. module: stock_planning #: model:ir.actions.act_window,name:stock_planning.action_stock_period_createlines_form @@ -1810,7 +1804,7 @@ msgstr "Period zalihe i prodaje" #. module: stock_planning #: help:stock.sale.forecast,user_id:0 msgid "Shows who created this forecast, or who validated." -msgstr "Pokazuje tko je kreirao ovo predviđanje, ili tko ga je potvrdio." +msgstr "Shows who created this prognoza, or who validated." #. module: stock_planning #: code:addons/stock_planning/stock_planning.py:644 diff --git a/addons/stock_planning/test/stock_planning.yml b/addons/stock_planning/test/stock_planning.yml index df2f53dbb6e..f9608461f8a 100644 --- a/addons/stock_planning/test/stock_planning.yml +++ b/addons/stock_planning/test/stock_planning.yml @@ -168,7 +168,6 @@ !python {model: stock.sale.forecast}: | forecast_ids = self.search(cr, uid, [('product_id','=',ref('product.product_product_pc1'))]) write_dict = {'product_qty': 30.0, - 'analyzed_section_id': ref("crm.section_sales_department"), 'analyzed_period1_id': ref("stock_period_03"), 'analyzed_user_id': ref("base.user_root"), 'analyzed_warehouse_id': ref("stock.warehouse0")} diff --git a/addons/stock_planning/wizard/__init__.py b/addons/stock_planning/wizard/__init__.py index 1e9d74d0394..876b4afdf68 100644 --- a/addons/stock_planning/wizard/__init__.py +++ b/addons/stock_planning/wizard/__init__.py @@ -22,3 +22,5 @@ import stock_planning_create_periods import stock_planning_forecast import stock_planning_createlines + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/subscription/__openerp__.py b/addons/subscription/__openerp__.py index 581d54c9c4b..a58d4453665 100644 --- a/addons/subscription/__openerp__.py +++ b/addons/subscription/__openerp__.py @@ -23,7 +23,7 @@ { 'name': 'Recurring Documents', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ Create recurring documents. =========================== diff --git a/addons/subscription/i18n/hr.po b/addons/subscription/i18n/hr.po index 6c34ec2fc9c..424b81722e2 100644 --- a/addons/subscription/i18n/hr.po +++ b/addons/subscription/i18n/hr.po @@ -7,89 +7,89 @@ msgstr "" "Project-Id-Version: OpenERP Server 5.0.4\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2009-02-03 06:26+0000\n" -"Last-Translator: <>\n" +"PO-Revision-Date: 2011-12-08 16:32+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\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: 2011-11-05 04:52+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:45+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: subscription #: field:subscription.subscription,doc_source:0 #: field:subscription.subscription.history,document_id:0 msgid "Source Document" -msgstr "" +msgstr "Izvorni dokument" #. module: subscription #: field:subscription.document,model:0 msgid "Object" -msgstr "" +msgstr "Objekt" #. module: subscription #: view:subscription.subscription:0 msgid "This Week" -msgstr "" +msgstr "Ovaj tjedan" #. module: subscription #: view:subscription.subscription:0 msgid "Search Subscription" -msgstr "" +msgstr "Pretraži pretplate" #. module: subscription #: field:subscription.subscription,date_init:0 msgid "First Date" -msgstr "" +msgstr "Početak" #. module: subscription #: field:subscription.document.fields,field:0 msgid "Field" -msgstr "" +msgstr "Polje" #. module: subscription #: view:subscription.subscription:0 #: field:subscription.subscription,state:0 msgid "State" -msgstr "" +msgstr "Status" #. module: subscription #: model:ir.model,name:subscription.model_subscription_subscription_history msgid "Subscription history" -msgstr "" +msgstr "Povjest pretplate" #. module: subscription #: selection:subscription.subscription,state:0 msgid "Draft" -msgstr "" +msgstr "Nacrt" #. module: subscription #: selection:subscription.document.fields,value:0 msgid "Current Date" -msgstr "" +msgstr "Trenutni datum" #. module: subscription #: selection:subscription.subscription,interval_type:0 msgid "Weeks" -msgstr "" +msgstr "Tjedana" #. module: subscription #: view:subscription.subscription:0 msgid "Today" -msgstr "" +msgstr "Danas" #. module: subscription #: code:addons/subscription/subscription.py:44 #, python-format msgid "Error !" -msgstr "" +msgstr "Greška !" #. module: subscription #: model:ir.actions.act_window,name:subscription.action_subscription_form #: model:ir.ui.menu,name:subscription.menu_action_subscription_form #: view:subscription.subscription:0 msgid "Subscriptions" -msgstr "" +msgstr "Pretplate" #. module: subscription #: field:subscription.subscription,interval_number:0 @@ -99,50 +99,52 @@ msgstr "" #. module: subscription #: view:subscription.subscription:0 msgid "Stop" -msgstr "" +msgstr "Zaustavi" #. module: subscription #: view:subscription.subscription:0 msgid "Set to Draft" -msgstr "" +msgstr "Postavi kao nacrt" #. module: subscription #: model:ir.module.module,description:subscription.module_meta_information msgid "" "Module allows to create new documents and add subscription on that document." msgstr "" +"Modul dozvoljava kreiranje novih dokumenata i dodavanje pretplate na taj " +"dokument." #. module: subscription #: view:subscription.subscription:0 #: selection:subscription.subscription,state:0 msgid "Running" -msgstr "" +msgstr "Pokrenuto" #. module: subscription #: view:subscription.subscription.history:0 msgid "Subscription History" -msgstr "" +msgstr "Povjest pretplate" #. module: subscription #: view:subscription.subscription:0 #: field:subscription.subscription,user_id:0 msgid "User" -msgstr "" +msgstr "Korisnik" #. module: subscription #: field:subscription.subscription,interval_type:0 msgid "Interval Unit" -msgstr "" +msgstr "Jedinica intervala" #. module: subscription #: field:subscription.subscription.history,date:0 msgid "Date" -msgstr "" +msgstr "Datum" #. module: subscription #: field:subscription.subscription,exec_init:0 msgid "Number of documents" -msgstr "" +msgstr "Broj dokumenata" #. module: subscription #: help:subscription.document,active:0 @@ -150,17 +152,21 @@ msgid "" "If the active field is set to False, it will allow you to hide the " "subscription document without removing it." msgstr "" +"If the active field is set to False, it will allow you to hide the " +"subscription document without removing it.\r\n" +"Ako je aktivno polje postavljeno na NE, možete sakriti dokument pretplate " +"bez da ga uklonite." #. module: subscription #: selection:subscription.subscription.history,document_id:0 msgid "Sale Order" -msgstr "" +msgstr "Prodajni nalog" #. module: subscription #: field:subscription.document,name:0 #: field:subscription.subscription,name:0 msgid "Name" -msgstr "" +msgstr "Naziv" #. module: subscription #: code:addons/subscription/subscription.py:44 @@ -169,79 +175,81 @@ msgid "" "You cannot modify the Object linked to the Document Type!\n" "Create another Document instead !" msgstr "" +"Ne možete promjeniti objekt povezan s tipom dokumenta!\n" +"Kreirajte novi dokument!" #. module: subscription #: field:subscription.document,field_ids:0 msgid "Fields" -msgstr "" +msgstr "Polja" #. module: subscription #: view:subscription.subscription:0 #: field:subscription.subscription,note:0 #: field:subscription.subscription,notes:0 msgid "Notes" -msgstr "" +msgstr "Bilješke" #. module: subscription #: selection:subscription.subscription,interval_type:0 msgid "Months" -msgstr "" +msgstr "Mjeseci" #. module: subscription #: selection:subscription.subscription,interval_type:0 msgid "Days" -msgstr "" +msgstr "Dani" #. module: subscription #: field:subscription.document,active:0 #: field:subscription.subscription,active:0 msgid "Active" -msgstr "" +msgstr "Aktivan" #. module: subscription #: field:subscription.subscription,cron_id:0 msgid "Cron Job" -msgstr "" +msgstr "Zakazani zadatak" #. module: subscription #: model:ir.model,name:subscription.model_subscription_subscription #: field:subscription.subscription.history,subscription_id:0 msgid "Subscription" -msgstr "" +msgstr "Pretplata" #. module: subscription #: view:subscription.subscription:0 #: field:subscription.subscription,partner_id:0 msgid "Partner" -msgstr "" +msgstr "Partner" #. module: subscription #: help:subscription.subscription,cron_id:0 msgid "Scheduler which runs on subscription" -msgstr "" +msgstr "Upravitelj zakazivanja zadataka kod pretplata" #. module: subscription #: model:ir.ui.menu,name:subscription.config_recuuring_event #: model:ir.ui.menu,name:subscription.next_id_45 msgid "Recurring Events" -msgstr "" +msgstr "Ponavljajući događaji" #. module: subscription #: view:subscription.subscription:0 msgid "Subsription Data" -msgstr "" +msgstr "Podaci o pretplati" #. module: subscription #: help:subscription.subscription,note:0 msgid "Description or Summary of Subscription" -msgstr "" +msgstr "Opis ili sažetak pretplate" #. module: subscription #: model:ir.model,name:subscription.model_subscription_document #: view:subscription.document:0 #: field:subscription.document.fields,document_id:0 msgid "Subscription Document" -msgstr "" +msgstr "Dokument pretplate" #. module: subscription #: help:subscription.subscription,active:0 @@ -249,66 +257,70 @@ msgid "" "If the active field is set to False, it will allow you to hide the " "subscription without removing it." msgstr "" +"Ako je aktivno polje postavljeno na NE, dozvolit će vam skrivanje pretplate " +"bez uklanja iste." #. module: subscription #: help:subscription.document.fields,value:0 msgid "Default value is considered for field when new document is generated." msgstr "" +"Predefinirana vrijednost se uzima za polje kod generiranja novog dokumenta." #. module: subscription #: selection:subscription.document.fields,value:0 msgid "False" -msgstr "" +msgstr "NE" #. module: subscription #: view:subscription.subscription:0 msgid "Group By..." -msgstr "" +msgstr "Grupiraj po..." #. module: subscription #: view:subscription.subscription:0 msgid "Process" -msgstr "" +msgstr "Proces" #. module: subscription #: model:ir.module.module,shortdesc:subscription.module_meta_information msgid "Subscription and recurring operations" -msgstr "" +msgstr "Pretplate i ponavljajuće operacije" #. module: subscription #: help:subscription.subscription,doc_source:0 msgid "" "User can choose the source document on which he wants to create documents" msgstr "" +"Korisnik može izabrati izvorni dokument prema kojem želi kreirati dokumente" #. module: subscription #: model:ir.actions.act_window,name:subscription.action_document_form #: model:ir.ui.menu,name:subscription.menu_action_document_form msgid "Document Types" -msgstr "" +msgstr "Tipovi dokumenata" #. module: subscription #: code:addons/subscription/subscription.py:115 #, python-format msgid "Wrong Source Document !" -msgstr "" +msgstr "Pogrešan izvorni dokument!" #. module: subscription #: model:ir.model,name:subscription.model_subscription_document_fields #: view:subscription.document.fields:0 msgid "Subscription Document Fields" -msgstr "" +msgstr "Polja dokumenta pretplate" #. module: subscription #: view:subscription.subscription:0 #: selection:subscription.subscription,state:0 msgid "Done" -msgstr "" +msgstr "Izvršeno" #. module: subscription #: selection:subscription.subscription.history,document_id:0 msgid "Invoice" -msgstr "" +msgstr "Račun" #. module: subscription #: code:addons/subscription/subscription.py:115 @@ -317,14 +329,16 @@ msgid "" "Please provide another source document.\n" "This one does not exist !" msgstr "" +"Molim odaberite drugi izvorni dokument.\n" +"Ovaj ne postoji!" #. module: subscription #: field:subscription.document.fields,value:0 msgid "Default Value" -msgstr "" +msgstr "Predefinirana vrijednost" #. module: subscription #: view:subscription.subscription:0 #: field:subscription.subscription,doc_lines:0 msgid "Documents created" -msgstr "" +msgstr "Dokument kreiran" diff --git a/addons/survey/__openerp__.py b/addons/survey/__openerp__.py index e9bd92f5840..b5c96a7a9c4 100644 --- a/addons/survey/__openerp__.py +++ b/addons/survey/__openerp__.py @@ -22,7 +22,7 @@ { 'name': 'Survey', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'description': """ This module is used for surveying. ================================== @@ -52,6 +52,7 @@ Partners are also sent mails with user name and password for the invitation of t 'test/survey_report.yml', ], 'installable': True, + 'application': True, 'active': False, 'certificate' : '001131639736864143245', 'images': ['images/survey_answers.jpeg','images/survey_pages.jpeg','images/surveys.jpeg'], diff --git a/addons/survey/i18n/hr.po b/addons/survey/i18n/hr.po index 77968003a18..1ee18a4a563 100644 --- a/addons/survey/i18n/hr.po +++ b/addons/survey/i18n/hr.po @@ -8,21 +8,21 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2010-06-06 23:46+0000\n" -"Last-Translator: Drazen Bosak <Unknown>\n" +"PO-Revision-Date: 2011-12-08 17:09+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" "Language-Team: Vinteh\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:42+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" "Language: hr\n" #. module: survey #: view:survey.print:0 #: view:survey.print.answer:0 msgid "Print Option" -msgstr "" +msgstr "Print Option" #. module: survey #: code:addons/survey/survey.py:422 @@ -32,6 +32,8 @@ msgid "" "greater than the number of answer. " "Please use a number that is smaller than %d." msgstr "" +"Minimalna zahtjevani odgovor koji ste unijeli je veći od broja odgovora. " +"Molimo Vas da koristite broj koji je manji od% d." #. module: survey #: view:survey.question.wiz:0 @@ -42,7 +44,7 @@ msgstr "Vaše poruke" #: field:survey.question,comment_valid_type:0 #: field:survey.question,validation_type:0 msgid "Text Validation" -msgstr "" +msgstr "Text Validation" #. module: survey #: code:addons/survey/survey.py:434 @@ -52,17 +54,20 @@ msgid "" "your maximum is greater than the number of answer. " " Please use a number that is smaller than %d." msgstr "" +"Maximum Required Answer you entered for " +"your maximum is greater than the number of answer. " +" Please use a number that is smaller than %d." #. module: survey #: view:survey:0 #: field:survey,invited_user_ids:0 msgid "Invited User" -msgstr "" +msgstr "Pozvani korisnik" #. module: survey #: selection:survey.answer,type:0 msgid "Character" -msgstr "" +msgstr "Character" #. module: survey #: model:ir.actions.act_window,name:survey.action_survey_form1 @@ -76,12 +81,12 @@ msgstr "Upitnici" #. module: survey #: view:survey:0 msgid "Set to draft" -msgstr "Vrati na Nacrt" +msgstr "Postavi na nacrt" #. module: survey #: field:survey.question,in_visible_answer_type:0 msgid "Is Answer Type Invisible?" -msgstr "" +msgstr "Da li je Vrsta odgovora nevidljiv?" #. module: survey #: view:survey:0 @@ -89,32 +94,32 @@ msgstr "" #: view:survey.question:0 #: view:survey.request:0 msgid "Group By..." -msgstr "" +msgstr "Grupiraj po..." #. module: survey #: view:survey.send.invitation.log:0 msgid "Results :" -msgstr "Rezultati :" +msgstr "Rezultat :" #. module: survey #: view:survey.request:0 msgid "Survey Request" -msgstr "" +msgstr "Zahtjev upitnika" #. module: survey #: selection:survey.question,required_type:0 msgid "A Range" -msgstr "" +msgstr "Raspon" #. module: survey #: view:survey.response.line:0 msgid "Table Answer" -msgstr "" +msgstr "Table Answer" #. module: survey #: field:survey.history,date:0 msgid "Date started" -msgstr "Datum započinjanja" +msgstr "Datum početka" #. module: survey #: field:survey,history:0 @@ -128,11 +133,13 @@ msgid "" "You must enter one or more menu choices in " "column heading (white spaces not allowed)" msgstr "" +"Morate unijeti i odabrati jedan ili više izbornika u naslovu stupca (prazno " +"nije dopušteno)" #. module: survey #: field:survey.question.column.heading,in_visible_menu_choice:0 msgid "Is Menu Choice Invisible??" -msgstr "" +msgstr "Da li je odabir izbornika nevidljiv??" #. module: survey #: field:survey.send.invitation,mail:0 @@ -148,43 +155,43 @@ msgstr "Dopustite polje upisa Komentara" #: selection:survey.print,paper_size:0 #: selection:survey.print.answer,paper_size:0 msgid "A4 (210mm x 297mm)" -msgstr "" +msgstr "A4 (210mm x 297mm)" #. module: survey #: field:survey.question,comment_maximum_date:0 #: field:survey.question,validation_maximum_date:0 msgid "Maximum date" -msgstr "" +msgstr "Maximum date" #. module: survey #: field:survey.question,in_visible_menu_choice:0 msgid "Is Menu Choice Invisible?" -msgstr "" +msgstr "Da li je izbvor menija nevidljiv?" #. module: survey #: view:survey:0 msgid "Completed" -msgstr "" +msgstr "Completed" #. module: survey #: selection:survey.question,required_type:0 msgid "Exactly" -msgstr "" +msgstr "Exactly" #. module: survey #: view:survey:0 msgid "Open Date" -msgstr "" +msgstr "Datum otvaranja" #. module: survey #: view:survey.request:0 msgid "Set to Draft" -msgstr "" +msgstr "Postavi na nacrt" #. module: survey #: field:survey.question,is_comment_require:0 msgid "Add Comment Field" -msgstr "" +msgstr "Dodaj polje za komentar" #. module: survey #: code:addons/survey/survey.py:401 @@ -194,16 +201,19 @@ msgid "" "than the number of answer. Please use a " "number that is smaller than %d." msgstr "" +"#Required Answer you entered is greater " +"than the number of answer. Please use a " +"number that is smaller than %d." #. module: survey #: field:survey.question,tot_resp:0 msgid "Total Answer" -msgstr "" +msgstr "Total Answer" #. module: survey #: field:survey.tbl.column.heading,name:0 msgid "Row Number" -msgstr "" +msgstr "Redak br." #. module: survey #: model:ir.model,name:survey.model_survey_name_wiz @@ -218,7 +228,7 @@ msgstr "Pitanja Upitnika" #. module: survey #: selection:survey.question,type:0 msgid "Matrix of Choices (Only One Answers Per Row)" -msgstr "" +msgstr "Matrix of Choices (Only One Answers Per Row)" #. module: survey #: code:addons/survey/survey.py:475 @@ -227,6 +237,8 @@ msgid "" "Maximum Required Answer you entered for your maximum is greater than the " "number of answer. Please use a number that is smaller than %d." msgstr "" +"Maximum Required Answer you entered for your maximum is greater than the " +"number of answer. Please use a number that is smaller than %d." #. module: survey #: model:ir.actions.act_window,name:survey.action_view_survey_question_message @@ -240,20 +252,20 @@ msgstr "Pitanja Upitnika" #. module: survey #: view:survey.question.column.heading:0 msgid "Use if question type is rating_scale" -msgstr "" +msgstr "Use if question type is rating_scale" #. module: survey #: field:survey.print,page_number:0 #: field:survey.print.answer,page_number:0 msgid "Include Page Number" -msgstr "" +msgstr "Ispiši redni br. stranice" #. module: survey #: view:survey.page:0 #: view:survey.question:0 #: view:survey.send.invitation.log:0 msgid "Ok" -msgstr "" +msgstr "U redu" #. module: survey #: field:survey.page,title:0 @@ -263,7 +275,7 @@ msgstr "Naslov stranice" #. module: survey #: model:ir.ui.menu,name:survey.menu_define_survey msgid "Define Surveys" -msgstr "" +msgstr "Definiranje upitnika" #. module: survey #: model:ir.model,name:survey.model_survey_history @@ -280,61 +292,61 @@ msgstr "Bilješke" #: view:survey:0 #: view:survey.request:0 msgid "Search Survey" -msgstr "" +msgstr "Traži upitnike" #. module: survey #: field:survey.response.answer,answer:0 #: field:survey.tbl.column.heading,value:0 msgid "Value" -msgstr "" +msgstr "Value" #. module: survey #: field:survey.question,column_heading_ids:0 msgid " Column heading" -msgstr "" +msgstr " Naslov stupca" #. module: survey #: model:ir.ui.menu,name:survey.menu_run_survey_form msgid "Answer a Survey" -msgstr "" +msgstr "Ispuni anketu" #. module: survey #: code:addons/survey/wizard/survey_answer.py:92 #, python-format msgid "Error!" -msgstr "" +msgstr "Error!" #. module: survey #: field:survey,tot_comp_survey:0 msgid "Total Completed Survey" -msgstr "Ukupno ispunjeno Upitnika" +msgstr "Ukupno ispunjeno upitnika" #. module: survey #: view:survey.response.answer:0 msgid "(Use Only Question Type is matrix_of_drop_down_menus)" -msgstr "" +msgstr "(Use Only Question Type is matrix_of_drop_down_menus)" #. module: survey #: model:ir.actions.report.xml,name:survey.survey_analysis msgid "Survey Statistics" -msgstr "" +msgstr "Survey Statistics" #. module: survey #: selection:survey,state:0 #: view:survey.request:0 #: selection:survey.request,state:0 msgid "Cancelled" -msgstr "Otkazan" +msgstr "Otkazani" #. module: survey #: selection:survey.question,type:0 msgid "Rating Scale" -msgstr "" +msgstr "Rating Scale" #. module: survey #: field:survey.question,comment_field_type:0 msgid "Comment Field Type" -msgstr "" +msgstr "Vrsta polja za komentar" #. module: survey #: code:addons/survey/survey.py:375 @@ -387,7 +399,7 @@ msgstr "Upozorenje!" #. module: survey #: selection:survey.question,comment_field_type:0 msgid "Single Line Of Text" -msgstr "" +msgstr "Jedan redak teksta" #. module: survey #: view:survey.send.invitation:0 @@ -398,48 +410,49 @@ msgstr "Pošalji podsjetnik postojećem korisniku" #. module: survey #: selection:survey.question,type:0 msgid "Multiple Choice (Multiple Answer)" -msgstr "" +msgstr "Multiple Choice (Multiple Answer)" #. module: survey #: view:survey:0 msgid "Edit Survey" -msgstr "" +msgstr "Edit Survey" #. module: survey #: view:survey.response.line:0 msgid "Survey Answer Line" -msgstr "" +msgstr "Survey Answer Line" #. module: survey #: field:survey.question.column.heading,menu_choice:0 msgid "Menu Choice" -msgstr "" +msgstr "Menu Choice" #. module: survey #: selection:survey.question,required_type:0 msgid "At Most" -msgstr "" +msgstr "At Most" #. module: survey #: field:survey.question,is_validation_require:0 msgid "Validate Text" -msgstr "" +msgstr "Validate Text" #. module: survey #: field:survey.response.line,single_text:0 msgid "Text" -msgstr "" +msgstr "Tekst" #. module: survey #: constraint:res.users:0 msgid "The chosen company is not in the allowed companies for this user" msgstr "" +"Odabrana organizacija nije među dozvoljenim organizacijama za ovog korisnika" #. module: survey #: selection:survey.print,paper_size:0 #: selection:survey.print.answer,paper_size:0 msgid "Letter (8.5\" x 11\")" -msgstr "" +msgstr "Letter (8.5\" x 11\")" #. module: survey #: view:survey:0 @@ -450,7 +463,7 @@ msgstr "Odgovoran" #. module: survey #: model:ir.model,name:survey.model_survey_request msgid "survey.request" -msgstr "" +msgstr "survey.request" #. module: survey #: field:survey.send.invitation,mail_subject:0 @@ -462,17 +475,17 @@ msgstr "Predmet" #: field:survey.question,comment_maximum_float:0 #: field:survey.question,validation_maximum_float:0 msgid "Maximum decimal number" -msgstr "" +msgstr "Maximum decimal number" #. module: survey #: view:survey.request:0 msgid "Late" -msgstr "" +msgstr "Kasni" #. module: survey #: sql_constraint:res.users:0 msgid "You can not have two users with the same login !" -msgstr "" +msgstr "Ne možete imati dva korisnika sa istim korisničkim imenom !" #. module: survey #: field:survey.send.invitation,mail_from:0 @@ -483,13 +496,13 @@ msgstr "Od" #: selection:survey.question,comment_valid_type:0 #: selection:survey.question,validation_type:0 msgid "Don't Validate Comment Text." -msgstr "" +msgstr "Don't Validate Comment Text." #. module: survey #: selection:survey.question,comment_valid_type:0 #: selection:survey.question,validation_type:0 msgid "Must Be A Whole Number" -msgstr "" +msgstr "Must Be A Whole Number" #. module: survey #: field:survey.answer,question_id:0 @@ -503,7 +516,7 @@ msgstr "Pitanje" #. module: survey #: view:survey.page:0 msgid "Search Survey Page" -msgstr "" +msgstr "Search Survey Page" #. module: survey #: view:survey.send.invitation:0 @@ -522,6 +535,8 @@ msgid "" "You must enter one or more menu choices in " "column heading" msgstr "" +"You must enter one or more menu choices in " +"column heading" #. module: survey #: model:ir.actions.act_window,help:survey.action_survey_form1 @@ -532,84 +547,89 @@ msgid "" "etc. You can edit survey manually or click on the 'Edit Survey' for a " "WYSIWYG interface." msgstr "" +"Upitnici se mogu koristiti za razne namjene: intervjui kod zapošljavanja, " +"evaluacije radnika, marketinške kampanje, itd. Upitnik se sastoji od više " +"stranica s pitanjima na koja se odgovara upisom teksta, odabirom jednog ili " +"više odgovora, i sl.. Upitnik možete uređivati ručno ili pomoću \"Uredi " +"upitnik\" za WYSIWYG sučelje u kojemu odmah kontrolirate i izgled upitnika." #. module: survey #: view:survey:0 #: view:survey.request:0 #: field:survey.request,state:0 msgid "State" -msgstr "" +msgstr "Stanje" #. module: survey #: view:survey.request:0 msgid "Evaluation Plan Phase" -msgstr "" +msgstr "Faza plana ocjenjivanja" #. module: survey #: view:survey:0 #: view:survey.page:0 #: view:survey.question:0 msgid "Between" -msgstr "" +msgstr "Između" #. module: survey #: view:survey.print:0 #: view:survey.print.answer:0 #: view:survey.print.statistics:0 msgid "Print" -msgstr "" +msgstr "Ispis" #. module: survey #: field:survey.question,make_comment_field:0 msgid "Make Comment Field an Answer Choice" -msgstr "" +msgstr "Make Comment Field an Answer Choice" #. module: survey #: view:survey:0 #: field:survey,type:0 msgid "Type" -msgstr "" +msgstr "Vrsta" #. module: survey #: selection:survey.answer,type:0 msgid "Email" -msgstr "" +msgstr "E-mail" #. module: survey #: model:ir.ui.menu,name:survey.menu_answer_surveys msgid "Answer Surveys" -msgstr "" +msgstr "Answer Surveys" #. module: survey #: selection:survey.response,state:0 msgid "Not Finished" -msgstr "" +msgstr "Nije završeno" #. module: survey #: view:survey.print:0 msgid "Survey Print" -msgstr "" +msgstr "Survey Print" #. module: survey #: view:survey.send.invitation:0 msgid "Select Partner" -msgstr "Odaberi Partnera" +msgstr "Odaberi partnera" #. module: survey #: field:survey.question,type:0 msgid "Question Type" -msgstr "" +msgstr "Question Type" #. module: survey #: code:addons/survey/wizard/survey_answer.py:131 #, python-format msgid "You can not answer this survey more than %s times" -msgstr "" +msgstr "You can not answer this survey more than %s times" #. module: survey #: model:ir.actions.act_window,name:survey.act_survey_answer msgid "Answers" -msgstr "" +msgstr "Odgovori" #. module: survey #: model:ir.module.module,description:survey.module_meta_information @@ -625,12 +645,24 @@ msgid "" "invitation of the survey\n" " " msgstr "" +"\n" +" This module is used for surveying.\n" +"==================================\n" +"\n" +"It depends on the answers or reviews of some questions by different users.\n" +"A survey may have multiple pages. Each page may contain multiple questions " +"and each question may have multiple answers.\n" +"Different users may give different answers of question and according to that " +"survey is done.\n" +"Partners are also sent mails with user name and password for the invitation " +"of the survey\n" +" " #. module: survey #: code:addons/survey/wizard/survey_answer.py:124 #, python-format msgid "You can not answer because the survey is not open" -msgstr "" +msgstr "You can not answer because the survey is not open" #. module: survey #: selection:survey.response,response_type:0 @@ -642,12 +674,12 @@ msgstr "Veza" #: model:ir.model,name:survey.model_survey_type #: view:survey.type:0 msgid "Survey Type" -msgstr "" +msgstr "Survey Type" #. module: survey #: field:survey.page,sequence:0 msgid "Page Nr" -msgstr "" +msgstr "Page Nr" #. module: survey #: view:survey:0 @@ -656,12 +688,12 @@ msgstr "" #: field:survey.question,descriptive_text:0 #: selection:survey.question,type:0 msgid "Descriptive Text" -msgstr "" +msgstr "Opis" #. module: survey #: field:survey.question,minimum_req_ans:0 msgid "Minimum Required Answer" -msgstr "" +msgstr "Minimum Required Answer" #. module: survey #: code:addons/survey/survey.py:484 @@ -670,74 +702,77 @@ msgid "" "You must enter one or more menu choices in column heading (white spaces not " "allowed)" msgstr "" +"You must enter one or more menu choices in column heading (white spaces not " +"allowed)" #. module: survey #: field:survey.question,req_error_msg:0 msgid "Error Message" -msgstr "" +msgstr "Error Message" #. module: survey #: code:addons/survey/survey.py:482 #, python-format msgid "You must enter one or more menu choices in column heading" msgstr "" +"Morate unijeti jedan ili više izbornik mogučnosti u zaglavlje kolone." #. module: survey #: field:survey.request,date_deadline:0 msgid "Deadline date" -msgstr "" +msgstr "Krajnji rok" #. module: survey #: selection:survey.question,comment_valid_type:0 #: selection:survey.question,validation_type:0 msgid "Must Be A Date" -msgstr "" +msgstr "Must Be A Date" #. module: survey #: model:ir.model,name:survey.model_survey_print msgid "survey.print" -msgstr "" +msgstr "survey.print" #. module: survey #: view:survey.question.column.heading:0 #: field:survey.question.column.heading,title:0 msgid "Column Heading" -msgstr "" +msgstr "Column Heading" #. module: survey #: field:survey.question,is_require_answer:0 msgid "Require Answer to Question" -msgstr "" +msgstr "Obavezan odgovor na pitanje" #. module: survey #: model:ir.actions.act_window,name:survey.action_survey_request_tree #: model:ir.ui.menu,name:survey.menu_survey_type_form1 msgid "Survey Requests" -msgstr "" +msgstr "Zahtjevi upitnika" #. module: survey #: code:addons/survey/survey.py:375 #: code:addons/survey/survey.py:462 #, python-format msgid "You must enter one or more column heading." -msgstr "" +msgstr "You must enter one or more column heading." #. module: survey #: code:addons/survey/wizard/survey_answer.py:758 #: code:addons/survey/wizard/survey_answer.py:953 #, python-format msgid "Please enter an integer value" -msgstr "" +msgstr "Please enter an integer value" #. module: survey #: model:ir.model,name:survey.model_survey_browse_answer msgid "survey.browse.answer" -msgstr "" +msgstr "survey.browse.answer" #. module: survey #: selection:survey.question,comment_field_type:0 msgid "Paragraph of Text" -msgstr "" +msgstr "Odlomak teksta" #. module: survey #: code:addons/survey/survey.py:428 @@ -747,31 +782,34 @@ msgid "" "your maximum is greater than the number of answer. " " Please use a number that is smaller than %d." msgstr "" +"Maximum Required Answer you entered for " +"your maximum is greater than the number of answer. " +" Please use a number that is smaller than %d." #. module: survey #: selection:survey.request,state:0 #: view:survey.request:0 msgid "Waiting Answer" -msgstr "" +msgstr "Čeka odgovor" #. module: survey #: view:survey:0 #: view:survey.page:0 #: view:survey.question:0 msgid "When the question is not answered, display this error message:" -msgstr "" +msgstr "When the question is not answered, display this error message:" #. module: survey #: view:survey:0 #: view:survey.page:0 #: view:survey.question:0 msgid "Options" -msgstr "" +msgstr "Options" #. module: survey #: model:ir.ui.menu,name:survey.menu_browse_survey_response msgid "Browse Answers" -msgstr "" +msgstr "Pregled odgovora" #. module: survey #: field:survey.response.answer,comment_field:0 @@ -792,53 +830,53 @@ msgstr "Odgovor Upitnika" #. module: survey #: selection:survey.answer,type:0 msgid "Selection" -msgstr "" +msgstr "Odabir" #. module: survey #: model:ir.actions.act_window,name:survey.action_browse_survey_response #: view:survey:0 msgid "Answer Survey" -msgstr "" +msgstr "Ispuni anketu" #. module: survey #: view:survey:0 #: view:survey.page:0 #: view:survey.question:0 msgid "Comment Field" -msgstr "" +msgstr "Comment Field" #. module: survey #: selection:survey.response,response_type:0 msgid "Manually" -msgstr "Manualno" +msgstr "Ručno" #. module: survey #: help:survey,responsible_id:0 msgid "User responsible for survey" -msgstr "" +msgstr "User responsible for survey" #. module: survey #: field:survey.question,comment_column:0 msgid "Add comment column in matrix" -msgstr "" +msgstr "Add comment column in matrix" #. module: survey #: field:survey.answer,response:0 msgid "#Answer" -msgstr "" +msgstr "#Odgovor" #. module: survey #: field:survey.print,without_pagebreak:0 #: field:survey.print.answer,without_pagebreak:0 msgid "Print Without Page Breaks" -msgstr "" +msgstr "Print Without Page Breaks" #. module: survey #: view:survey:0 #: view:survey.page:0 #: view:survey.question:0 msgid "When the comment is an invalid format, display this error message" -msgstr "" +msgstr "Kada je komentar u pogrešnom formatu, prikaži grešku" #. module: survey #: code:addons/survey/wizard/survey_selection.py:138 @@ -847,17 +885,20 @@ msgid "" "You can not give more response. Please contact the author of this survey for " "further assistance." msgstr "" +"You can not give more response. Please contact the author of this survey for " +"further assistance." #. module: survey #: model:ir.actions.act_window,name:survey.act_survey_page_question #: model:ir.actions.act_window,name:survey.act_survey_question msgid "Questions" -msgstr "" +msgstr "Pitanja" #. module: survey #: help:survey,response_user:0 msgid "Set to one if you require only one Answer per user" msgstr "" +"Postavite na jedan ukoliko vam je potrebna samo jedan odgovor po korisniku" #. module: survey #: field:survey,users:0 @@ -873,12 +914,12 @@ msgstr "Poruka" #: view:survey:0 #: view:survey.request:0 msgid "MY" -msgstr "" +msgstr "MY" #. module: survey #: field:survey.question,maximum_req_ans:0 msgid "Maximum Required Answer" -msgstr "" +msgstr "Maximum Required Answer" #. module: survey #: field:survey.name.wiz,page_no:0 @@ -889,32 +930,32 @@ msgstr "Broj stranice" #: code:addons/survey/wizard/survey_answer.py:92 #, python-format msgid "Cannot locate survey for the question wizard!" -msgstr "" +msgstr "Ne može se pronaći pretraživanje unutar pitanja čarobnjaka!" #. module: survey #: view:survey:0 #: view:survey.page:0 #: view:survey.question:0 msgid "and" -msgstr "" +msgstr "i" #. module: survey #: model:ir.actions.act_window,name:survey.action_view_survey_print_statistics #: view:survey.print.statistics:0 msgid "Survey Print Statistics" -msgstr "" +msgstr "Survey Print Statistics" #. module: survey #: field:survey.send.invitation.log,note:0 msgid "Log" -msgstr "Zapis" +msgstr "Zapisnik" #. module: survey #: view:survey:0 #: view:survey.page:0 #: view:survey.question:0 msgid "When the choices do not add up correctly, display this error message" -msgstr "" +msgstr "Kod neispravnog odabira opcija prikaži ovu poruku" #. module: survey #: field:survey,date_close:0 @@ -924,30 +965,32 @@ msgstr "Datum zatvaranja Upitnika" #. module: survey #: field:survey,date_open:0 msgid "Survey Open Date" -msgstr "Datum otvaranja Upitnika" +msgstr "Datum otvaranja upitnika" #. module: survey #: field:survey.question.column.heading,in_visible_rating_weight:0 msgid "Is Rating Scale Invisible ??" -msgstr "" +msgstr "Is Rating Scale Invisible ??" #. module: survey #: view:survey.browse.answer:0 #: view:survey.name.wiz:0 msgid "Start" -msgstr "Početak" +msgstr "Start" #. module: survey #: code:addons/survey/survey.py:477 #, python-format msgid "Maximum Required Answer is greater than Minimum Required Answer" msgstr "" +"Maksimalan odgvor koji se zahtjeva je veći od minimalnog zahtjevanog " +"odgovora." #. module: survey #: field:survey.question,comment_maximum_no:0 #: field:survey.question,validation_maximum_no:0 msgid "Maximum number" -msgstr "" +msgstr "Maximum number" #. module: survey #: selection:survey,state:0 @@ -959,17 +1002,17 @@ msgstr "Nacrt" #. module: survey #: model:ir.model,name:survey.model_survey_print_statistics msgid "survey.print.statistics" -msgstr "" +msgstr "survey.print.statistics" #. module: survey #: selection:survey,state:0 msgid "Closed" -msgstr "Zaključen" +msgstr "Zatvoren" #. module: survey #: selection:survey.question,type:0 msgid "Matrix of Drop-down Menus" -msgstr "" +msgstr "Matrix of Drop-down Menus" #. module: survey #: view:survey:0 @@ -996,12 +1039,12 @@ msgstr "Odgovor" #. module: survey #: field:survey,max_response_limit:0 msgid "Maximum Answer Limit" -msgstr "" +msgstr "Maksimalna odgovorna linija" #. module: survey #: model:ir.actions.act_window,name:survey.action_act_view_survey_send_invitation msgid "Send Invitations" -msgstr "" +msgstr "Send Invitations" #. module: survey #: field:survey.name.wiz,store_ans:0 @@ -1011,7 +1054,7 @@ msgstr "Spremi odgovor" #. module: survey #: selection:survey.question,type:0 msgid "Date and Time" -msgstr "" +msgstr "Datum i vrijeme" #. module: survey #: field:survey,state:0 @@ -1023,45 +1066,45 @@ msgstr "Status" #. module: survey #: model:ir.actions.act_window,name:survey.action_view_survey_print msgid "Print Survey" -msgstr "" +msgstr "Print Survey" #. module: survey #: field:survey,send_response:0 msgid "E-mail Notification on Answer" -msgstr "" +msgstr "E-mail nakon odgovora" #. module: survey #: field:survey.response.answer,value_choice:0 msgid "Value Choice" -msgstr "" +msgstr "Value Choice" #. module: survey #: view:survey:0 msgid "Started" -msgstr "" +msgstr "Započeto" #. module: survey #: model:ir.actions.act_window,name:survey.action_view_survey_print_answer #: view:survey:0 #: view:survey.print.answer:0 msgid "Print Answer" -msgstr "" +msgstr "Print Answer" #. module: survey #: selection:survey.question,type:0 msgid "Multiple Textboxes" -msgstr "" +msgstr "Višestruki tekstovi" #. module: survey #: selection:survey.print,orientation:0 #: selection:survey.print.answer,orientation:0 msgid "Landscape(Horizontal)" -msgstr "" +msgstr "Položeno (Landscape)" #. module: survey #: field:survey.question,no_of_rows:0 msgid "No of Rows" -msgstr "" +msgstr "Br. redaka" #. module: survey #: view:survey:0 @@ -1072,30 +1115,30 @@ msgstr "Detalji Upitnika" #. module: survey #: selection:survey.question,type:0 msgid "Multiple Textboxes With Different Type" -msgstr "" +msgstr "Višestruki tekstovi sa različitim vrstama" #. module: survey #: view:survey.question.column.heading:0 msgid "Menu Choices (each choice on separate lines)" -msgstr "" +msgstr "Menu Choices (each choice on separate lines)" #. module: survey #: field:survey.response,response_type:0 msgid "Answer Type" -msgstr "" +msgstr "Tip odgovora" #. module: survey #: view:survey:0 #: view:survey.page:0 #: view:survey.question:0 msgid "Validation" -msgstr "" +msgstr "Validacija" #. module: survey #: selection:survey.question,comment_valid_type:0 #: selection:survey.question,validation_type:0 msgid "Must Be A Decimal Number" -msgstr "" +msgstr "Must Be A Decimal Number" #. module: survey #: field:res.users,survey_id:0 @@ -1106,17 +1149,17 @@ msgstr "Grupe" #: selection:survey.answer,type:0 #: selection:survey.question,type:0 msgid "Date" -msgstr "" +msgstr "Datum" #. module: survey #: selection:survey.answer,type:0 msgid "Integer" -msgstr "" +msgstr "Cijeli broj" #. module: survey #: model:ir.model,name:survey.model_survey_send_invitation msgid "survey.send.invitation" -msgstr "" +msgstr "survey.send.invitation" #. module: survey #: field:survey.history,user_id:0 @@ -1140,23 +1183,23 @@ msgstr "Preskočen" #: field:survey.print,paper_size:0 #: field:survey.print.answer,paper_size:0 msgid "Paper Size" -msgstr "" +msgstr "Paper Size" #. module: survey #: field:survey.response.answer,column_id:0 #: field:survey.tbl.column.heading,column_id:0 msgid "Column" -msgstr "" +msgstr "Kolona" #. module: survey #: model:ir.model,name:survey.model_survey_tbl_column_heading msgid "survey.tbl.column.heading" -msgstr "" +msgstr "survey.tbl.column.heading" #. module: survey #: model:ir.model,name:survey.model_survey_response_line msgid "Survey Response Line" -msgstr "" +msgstr "Survey Response Line" #. module: survey #: code:addons/survey/wizard/survey_selection.py:134 @@ -1183,17 +1226,17 @@ msgstr "Na ovo pitanje ne možete odgovoriti više od %s puta" #: field:survey.request,survey_id:0 #: field:survey.response,survey_id:0 msgid "Survey" -msgstr "Upitnik" +msgstr "Survey" #. module: survey #: field:survey.question,in_visible_rating_weight:0 msgid "Is Rating Scale Invisible?" -msgstr "" +msgstr "Is Rating Scale Invisible?" #. module: survey #: selection:survey.question,type:0 msgid "Numerical Textboxes" -msgstr "" +msgstr "Brojčane vrijednosti" #. module: survey #: model:ir.model,name:survey.model_survey_question_wiz @@ -1210,22 +1253,23 @@ msgstr "Povijest" msgid "" "If this field is empty, all answers of the selected survey will be print." msgstr "" +"Ako je ovo polje prazno, svi odgovori odabranog pregleda će se ispisati." #. module: survey #: field:survey.type,code:0 msgid "Code" -msgstr "" +msgstr "Šifra" #. module: survey #: model:ir.ui.menu,name:survey.menu_print_survey_statistics msgid "Surveys Statistics" -msgstr "" +msgstr "Statistika upitnika" #. module: survey #: field:survey.print,orientation:0 #: field:survey.print.answer,orientation:0 msgid "Orientation" -msgstr "" +msgstr "Orientation" #. module: survey #: view:survey:0 @@ -1233,55 +1277,55 @@ msgstr "" #: view:survey.page:0 #: view:survey.question:0 msgid "Seq" -msgstr "Seq" +msgstr "Red." #. module: survey #: field:survey.request,email:0 msgid "E-mail" -msgstr "" +msgstr "E-pošta" #. module: survey #: field:survey.question,comment_minimum_no:0 #: field:survey.question,validation_minimum_no:0 msgid "Minimum number" -msgstr "" +msgstr "Minimalan broj" #. module: survey #: field:survey.question,req_ans:0 msgid "#Required Answer" -msgstr "" +msgstr "#Obavezni odgovor" #. module: survey #: field:survey.answer,sequence:0 #: field:survey.question,sequence:0 msgid "Sequence" -msgstr "Slijed" +msgstr "Sekvenca" #. module: survey #: field:survey.question,comment_label:0 msgid "Field Label" -msgstr "" +msgstr "Labela polja" #. module: survey #: view:survey:0 msgid "Other" -msgstr "Drugi" +msgstr "Ostale" #. module: survey #: view:survey.request:0 #: selection:survey.request,state:0 msgid "Done" -msgstr "Gotovo" +msgstr "Izvršeno" #. module: survey #: view:survey:0 msgid "Test Survey" -msgstr "" +msgstr "Test Survey" #. module: survey #: field:survey.question,rating_allow_one_column_require:0 msgid "Allow Only One Answer per Column (Forced Ranking)" -msgstr "" +msgstr "Samo jedan odgovor po stupcu (Forsirano rangiranje)" #. module: survey #: view:survey:0 @@ -1297,24 +1341,24 @@ msgstr "Odustani" #. module: survey #: view:survey:0 msgid "Close" -msgstr "Zaključi" +msgstr "Zatvori" #. module: survey #: field:survey.question,comment_minimum_float:0 #: field:survey.question,validation_minimum_float:0 msgid "Minimum decimal number" -msgstr "" +msgstr "Minimum decimal number" #. module: survey #: view:survey:0 #: selection:survey,state:0 msgid "Open" -msgstr "Otvori" +msgstr "Otvoreno" #. module: survey #: field:survey,tot_start_survey:0 msgid "Total Started Survey" -msgstr "Ukupno pokrenuto Upitnika" +msgstr "Ukupno aktivnih upitnika" #. module: survey #: code:addons/survey/survey.py:467 @@ -1323,46 +1367,48 @@ msgid "" "#Required Answer you entered is greater than the number of answer. Please " "use a number that is smaller than %d." msgstr "" +"#Required Answer you entered is greater than the number of answer. Please " +"use a number that is smaller than %d." #. module: survey #: help:survey,max_response_limit:0 msgid "Set to one if survey is answerable only once" -msgstr "" +msgstr "Set to one if survey is answerable only once" #. module: survey #: selection:survey.response,state:0 msgid "Finished " -msgstr "" +msgstr "Finished " #. module: survey #: model:ir.model,name:survey.model_survey_question_column_heading msgid "Survey Question Column Heading" -msgstr "" +msgstr "Survey Question Column Heading" #. module: survey #: field:survey.answer,average:0 msgid "#Avg" -msgstr "#Avg" +msgstr "#Pros." #. module: survey #: selection:survey.question,type:0 msgid "Matrix of Choices (Multiple Answers Per Row)" -msgstr "" +msgstr "Matrica odgovora (VIšestruki odgovori po retku)" #. module: survey #: model:ir.actions.act_window,name:survey.action_view_survey_name msgid "Give Survey Answer" -msgstr "" +msgstr "Give Survey Answer" #. module: survey #: model:ir.model,name:survey.model_res_users msgid "res.users" -msgstr "" +msgstr "res.users" #. module: survey #: view:survey:0 msgid "Current" -msgstr "" +msgstr "Trenutno" #. module: survey #: selection:survey.response.line,state:0 @@ -1373,22 +1419,22 @@ msgstr "Odgovoren" #: code:addons/survey/wizard/survey_answer.py:432 #, python-format msgid "Complete Survey Answer" -msgstr "" +msgstr "Odgovor na anketno pitanje" #. module: survey #: selection:survey.question,type:0 msgid "Comment/Essay Box" -msgstr "" +msgstr "Comment/Essay Box" #. module: survey #: field:survey.answer,type:0 msgid "Type of Answer" -msgstr "" +msgstr "Vrsta odgovora" #. module: survey #: field:survey.question,required_type:0 msgid "Respondent must answer" -msgstr "" +msgstr "Respondent must answer" #. module: survey #: model:ir.actions.act_window,name:survey.action_view_survey_send_invitation @@ -1400,12 +1446,12 @@ msgstr "Poslan poziv" #: code:addons/survey/wizard/survey_answer.py:792 #, python-format msgid "You cannot select the same answer more than one time" -msgstr "" +msgstr "You cannot select the same answer more than one time" #. module: survey #: view:survey.question:0 msgid "Search Question" -msgstr "" +msgstr "Search Question" #. module: survey #: field:survey,title:0 @@ -1415,7 +1461,7 @@ msgstr "Naziv Upitnika" #. module: survey #: selection:survey.question,type:0 msgid "Single Textbox" -msgstr "" +msgstr "Redak teksta" #. module: survey #: field:survey,note:0 @@ -1434,25 +1480,25 @@ msgstr "Odaberi Upitnik" #. module: survey #: selection:survey.question,required_type:0 msgid "At Least" -msgstr "" +msgstr "Najmanje" #. module: survey #: model:ir.actions.act_window,name:survey.action_view_survey_send_invitation_log #: model:ir.model,name:survey.model_survey_send_invitation_log msgid "survey.send.invitation.log" -msgstr "" +msgstr "survey.send.invitation.log" #. module: survey #: selection:survey.print,orientation:0 #: selection:survey.print.answer,orientation:0 msgid "Portrait(Vertical)" -msgstr "" +msgstr "Portrait(Vertical)" #. module: survey #: selection:survey.question,comment_valid_type:0 #: selection:survey.question,validation_type:0 msgid "Must Be Specific Length" -msgstr "" +msgstr "Must Be Specific Length" #. module: survey #: view:survey:0 @@ -1475,12 +1521,14 @@ msgid "" "Minimum Required Answer you entered is greater than the number of answer. " "Please use a number that is smaller than %d." msgstr "" +"Minimum Required Answer you entered is greater than the number of answer. " +"Please use a number that is smaller than %d." #. module: survey #: code:addons/survey/survey.py:458 #, python-format msgid "You must enter one or more answer." -msgstr "" +msgstr "You must enter one or more answer." #. module: survey #: model:ir.actions.report.xml,name:survey.survey_browse_response @@ -1491,17 +1539,17 @@ msgstr "Odgovori Upitnika" #. module: survey #: view:survey.browse.answer:0 msgid "Select Survey and related answer" -msgstr "" +msgstr "Select Survey and related answer" #. module: survey #: model:ir.ui.menu,name:survey.menu_print_survey_answer msgid "Surveys Answers" -msgstr "" +msgstr "Odgovori na upitnike" #. module: survey #: model:ir.actions.act_window,name:survey.act_survey_pages msgid "Pages" -msgstr "" +msgstr "Pages" #. module: survey #: code:addons/survey/survey.py:406 @@ -1511,33 +1559,36 @@ msgid "" "than the number of answer. Please use a " "number that is smaller than %d." msgstr "" +"#Required Answer you entered is greater " +"than the number of answer. Please use a " +"number that is smaller than %d." #. module: survey #: code:addons/survey/wizard/survey_answer.py:984 #, python-format msgid "You cannot select same answer more than one time'" -msgstr "" +msgstr "You cannot select same answer more than one time'" #. module: survey #: selection:survey.print,paper_size:0 #: selection:survey.print.answer,paper_size:0 msgid "Legal (8.5\" x 14\")" -msgstr "" +msgstr "Legal (8.5\" x 14\")" #. module: survey #: field:survey.type,name:0 msgid "Name" -msgstr "" +msgstr "Naziv" #. module: survey #: view:survey.page:0 msgid "#Questions" -msgstr "#Questions" +msgstr "#Pitanja" #. module: survey #: model:ir.model,name:survey.model_survey_response msgid "survey.response" -msgstr "" +msgstr "survey.response" #. module: survey #: field:survey.question,comment_valid_err_msg:0 @@ -1545,7 +1596,7 @@ msgstr "" #: field:survey.question,numeric_required_sum_err_msg:0 #: field:survey.question,validation_valid_err_msg:0 msgid "Error message" -msgstr "" +msgstr "Error message" #. module: survey #: model:ir.module.module,shortdesc:survey.module_meta_information @@ -1562,7 +1613,7 @@ msgstr "Pošalji mail novom korisniku" #: code:addons/survey/survey.py:387 #, python-format msgid "You must enter one or more Answer." -msgstr "" +msgstr "Morate unijeti jedan ili više odgovora." #. module: survey #: code:addons/survey/survey.py:416 @@ -1572,18 +1623,21 @@ msgid "" "greater than the number of answer. Please " "use a number that is smaller than %d." msgstr "" +"Minimum Required Answer you entered is " +"greater than the number of answer. Please " +"use a number that is smaller than %d." #. module: survey #: field:survey.answer,menu_choice:0 msgid "Menu Choices" -msgstr "" +msgstr "Izbor menija" #. module: survey #: field:survey,page_ids:0 #: view:survey.question:0 #: field:survey.response.line,page_id:0 msgid "Page" -msgstr "Stranica" +msgstr "Page" #. module: survey #: code:addons/survey/survey.py:438 @@ -1592,6 +1646,8 @@ msgid "" "Maximum Required Answer is greater than " "Minimum Required Answer" msgstr "" +"Maximum Required Answer is greater than " +"Minimum Required Answer" #. module: survey #: view:survey.send.invitation.log:0 @@ -1601,59 +1657,59 @@ msgstr "Kreirao korisnik" #. module: survey #: selection:survey.question,required_type:0 msgid "All" -msgstr "" +msgstr "Sve" #. module: survey #: selection:survey.question,comment_valid_type:0 #: selection:survey.question,validation_type:0 msgid "Must Be An Email Address" -msgstr "" +msgstr "Must Be An Email Address" #. module: survey #: selection:survey.question,type:0 msgid "Multiple Choice (Only One Answer)" -msgstr "" +msgstr "Multiple Choice (Only One Answer)" #. module: survey #: field:survey.answer,in_visible_answer_type:0 msgid "Is Answer Type Invisible??" -msgstr "" +msgstr "Is Answer Type Invisible??" #. module: survey #: model:ir.model,name:survey.model_survey_print_answer msgid "survey.print.answer" -msgstr "" +msgstr "survey.print.answer" #. module: survey #: view:survey.answer:0 msgid "Menu Choices (each choice on separate by lines)" -msgstr "" +msgstr "Menu Choices (each choice on separate by lines)" #. module: survey #: selection:survey.answer,type:0 msgid "Float" -msgstr "" +msgstr "Decimalni" #. module: survey #: view:survey.response.line:0 msgid "Single Textboxes" -msgstr "" +msgstr "Single Textboxes" #. module: survey #: code:addons/survey/wizard/survey_send_invitation.py:74 #, python-format msgid "%sSurvey is not in open state" -msgstr "%sSurvey is not in open state" +msgstr "%s Upitnik nije u stanju otvoren" #. module: survey #: field:survey.question.column.heading,rating_weight:0 msgid "Weight" -msgstr "" +msgstr "Težina" #. module: survey #: selection:survey.answer,type:0 msgid "Date & Time" -msgstr "" +msgstr "Datum i vrijeme" #. module: survey #: field:survey.response,date_create:0 @@ -1664,7 +1720,7 @@ msgstr "Kreiraj datum" #. module: survey #: field:survey.question,column_name:0 msgid "Column Name" -msgstr "" +msgstr "Naziv stupca" #. module: survey #: model:ir.actions.act_window,name:survey.action_survey_page_form @@ -1677,30 +1733,30 @@ msgstr "Stranice Upitnika" #. module: survey #: field:survey.question,numeric_required_sum:0 msgid "Sum of all choices" -msgstr "" +msgstr "Sum of all choices" #. module: survey #: selection:survey.question,type:0 #: view:survey.response.line:0 msgid "Table" -msgstr "" +msgstr "Table" #. module: survey #: code:addons/survey/survey.py:642 #, python-format msgid "You cannot duplicate the resource!" -msgstr "" +msgstr "Ne možete duplicirati resurs !" #. module: survey #: field:survey.question,comment_minimum_date:0 #: field:survey.question,validation_minimum_date:0 msgid "Minimum date" -msgstr "" +msgstr "Minimum date" #. module: survey #: field:survey,response_user:0 msgid "Maximum Answer per User" -msgstr "" +msgstr "Maximum Answer per User" #. module: survey #: field:survey.name.wiz,page:0 @@ -1759,9 +1815,6 @@ msgstr "Pozicija stranice" #~ msgid "Skipped Question" #~ msgstr "Preskočeno pitanje" -#~ msgid "_Ok" -#~ msgstr "_Ok" - #~ msgid "Configuration" #~ msgstr "Konfiguracija" @@ -1861,3 +1914,9 @@ msgstr "Pozicija stranice" #~ msgid "All Surveys" #~ msgstr "Svi Upitnici" + +#~ msgid "Watting Answer" +#~ msgstr "Čekanje odgovora" + +#~ msgid "_Ok" +#~ msgstr "_U redu" diff --git a/addons/survey/survey_demo.xml b/addons/survey/survey_demo.xml index 2b96d3c17d2..1d8eae17fb6 100644 --- a/addons/survey/survey_demo.xml +++ b/addons/survey/survey_demo.xml @@ -30,7 +30,6 @@ <field name="page_id" ref="survey_page_who_are_you" /> <field name="type">single_textbox</field> <field name="in_visible_rating_weight">1</field> - <field name="in_visible_menu_choice">1</field> <field eval="1" name="sequence"/> <field name="in_visible_answer_type">1</field> </record> @@ -39,7 +38,6 @@ <field name="question">What is your company's size?</field> <field name="page_id" ref="survey_page_who_are_you" /> <field name="type">multiple_choice_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field eval="2" name="sequence"/> <field name="in_visible_answer_type">1</field> </record> @@ -95,7 +93,6 @@ <field name="question">Where are you located?</field> <field name="page_id" ref="survey_page_who_are_you" /> <field name="type">multiple_choice_multiple_ans</field> - <field name="in_visible_single_text">1</field> <field eval="3" name="sequence"/> </record> <record id="survey_question_company_size_Europ" model="survey.answer"> @@ -139,7 +136,6 @@ <field name="question">When did you become an OpenERP official partner?</field> <field name="page_id" ref="survey_page_who_are_you" /> <field name="type">multiple_choice_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field eval="4" name="sequence"/> </record> <record id="survey_question_company_size_2009" model="survey.answer"> @@ -181,7 +177,6 @@ <field name="question">What kind of solutions do you sell to your customers? </field> <field name="page_id" ref="survey_page_who_are_you" /> <field name="type">multiple_choice_multiple_ans</field> - <field name="in_visible_single_text">1</field> <field eval="5" name="sequence"/> </record> <record id="survey_answer_specific_devlopments" model="survey.answer"> @@ -215,7 +210,6 @@ <field name="question">What do you think about the partnership contract?</field> <field name="page_id" ref="survey_page_Contracts" /> <field name="type">multiple_choice_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field eval="1" name="sequence"/> </record> <record id="survey_answer_Ambiguous" model="survey.answer"> @@ -253,7 +247,6 @@ <field name="type">multiple_choice_only_one_ans</field> <field name="comment_field_type">text</field> <field name="comment_label">Why?</field> - <field name="in_visible_single_text">1</field> <field eval="2" name="sequence"/> <field name="is_comment_require">True</field> </record> @@ -284,7 +277,7 @@ <field name="question">Which maintenance contract do you sell to your customers.</field> <field name="page_id" ref="survey_page_Contracts" /> <field name="type">multiple_choice_only_one_ans</field> - <field name="in_visible_single_text">1</field> + <field eval="3" name="sequence"/> </record> <record id="survey_answer_maintenance_contract" model="survey.answer"> @@ -320,7 +313,7 @@ <field name="question">Give your opinion about Launchpad reporting :</field> <field name="page_id" ref="survey_page_communication" /> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="in_visible_single_text">1</field> + <field eval="2" name="sequence"/> </record> <record id="survey_answer_find_openobject_website1" model="survey.answer"> @@ -370,7 +363,7 @@ <field name="question">Leads</field> <field name="page_id" ref="survey_page_communication" /> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="in_visible_single_text">1</field> + </record> <record id="survey_answer_find_openobject_website" model="survey.answer"> <field name="in_visible_answer_type">1</field> @@ -420,7 +413,7 @@ <field name="question">How is OpenERP SA's communication with partners about...</field> <field name="page_id" ref="survey_page_communication" /> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="in_visible_single_text">1</field> + <field eval="3" name="sequence"/> </record> <record id="survey_answer_Maintenance_contracts" model="survey.answer"> @@ -477,8 +470,6 @@ <field name="question">In your opinion, how could OpenERP SA better communicate with partners and on which subjects?</field> <field name="page_id" ref="survey_page_communication" /> <field name="type">comment</field> - <field name="in_visible_rating_weight">1</field> - <field name="in_visible_menu_choice">1</field> <field eval="4" name="sequence"/> </record> @@ -506,8 +497,6 @@ <field name="question">What is your company's name?</field> <field name="page_id" ref="survey_page_odoo_who_are_you" /> <field name="type">single_textbox</field> - <field name="in_visible_rating_weight">1</field> - <field name="in_visible_menu_choice">1</field> <field name="sequence" eval="1"/> </record> @@ -516,7 +505,7 @@ <field name="question">What is your company's sector?</field> <field name="page_id" ref="survey_page_odoo_who_are_you" /> <field name="type">multiple_choice_multiple_ans</field> - <field name="in_visible_single_text">1</field> + <field name="sequence" eval="2"/> </record> <record id="survey_question_Agriculture" model="survey.answer"> @@ -644,7 +633,6 @@ <field name="question">Which activities do you plan to manage with Odoo ?</field> <field name="page_id" ref="survey_page_odoo_who_are_you" /> <field name="type">multiple_choice_multiple_ans</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="3"/> </record> <record id="survey_question_Customer_Relationship_Management" model="survey.answer"> @@ -706,7 +694,6 @@ <field name="question">How did you discover Odoo ?</field> <field name="page_id" ref="survey_page_odoo_who_are_you" /> <field name="type">multiple_choice_multiple_ans</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="4"/> </record> <record id="survey_question_OpenERP_website" model="survey.answer"> @@ -762,7 +749,6 @@ <field name="question">Why did you subscribe to Odoo?</field> <field name="page_id" ref="survey_page_odoo_Subscription_and_configuration" /> <field name="type">multiple_choice_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="1"/> </record> <record id="survey_answer_switch_to_online_offer1" model="survey.answer"> @@ -801,7 +787,6 @@ <field name="question">How much time did you spend to configure the application?</field> <field name="page_id" ref="survey_page_odoo_Subscription_and_configuration" /> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="2"/> </record> <record id="survey_answer_switch_to_online_offer" model="survey.answer"> @@ -872,7 +857,6 @@ <field name="type">multiple_choice_only_one_ans</field> <field name="comment_field_type">text</field> <field name="comment_label">No...Why?</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="3"/> <field name="is_comment_require">True</field> </record> @@ -902,7 +886,6 @@ <field name="question">Which interface would you prefer to use?</field> <field name="page_id" ref="survey_page_odoo_using_odoo" /> <field name="type">multiple_choice_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="1"/> </record> <record id="survey_answer_web_interface" model="survey.answer"> @@ -932,7 +915,6 @@ <field name="question">Give your opinion :</field> <field name="page_id" ref="survey_page_odoo_using_odoo" /> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="2"/> </record> <record id="survey_answer_appropriately_structured" model="survey.answer"> @@ -958,8 +940,6 @@ <field name="answer">Is the Control Center user-friendly?</field> <field name="question_id" ref="survey_question_odoo_give_your_opinion" /> <field name="sequence" eval="4"/> - <field name="in_visible_rating_weight">1</field> - <field name="in_visible_menu_choice">1</field> </record> <record id="survey_column_no_opinion" model="survey.question.column.heading"> <field name="title">No Opinion</field> @@ -1002,9 +982,7 @@ <field name="question">What do you think about ... </field> <field name="page_id" ref="survey_page_odoo_using_odoo" /> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field name="in_visible_rating_weight">1</field> - <field name="in_visible_menu_choice">1</field> <field name="sequence" eval="1"/> </record> <record id="survey_answer_database_new_version" model="survey.answer"> @@ -1080,7 +1058,6 @@ <field name="page_id" ref="survey_page_odoo_using_odoo" /> <field name="type">single_textbox</field> <field name="in_visible_rating_weight">1</field> - <field name="in_visible_menu_choice">1</field> <field name="sequence" eval="2"/> </record> @@ -1096,7 +1073,6 @@ <field name="question">How often would you prefer to receive your prepaid bill?</field> <field name="page_id" ref="survey_page_odoo_the_offer" /> <field name="type">multiple_choice_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="1"/> </record> <record id="survey_answer_Monthly" model="survey.answer"> @@ -1128,7 +1104,6 @@ <field name="type">multiple_choice_only_one_ans</field> <field name="comment_field_type">text</field> <field name="comment_label">Comment</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="2"/> <field name="is_comment_require">True</field> </record> @@ -1153,7 +1128,6 @@ <field name="question">How satisfied are you with Odoo's support services :</field> <field name="page_id" ref="survey_page_odoo_the_offer" /> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="in_visible_single_text">1</field> <field name="sequence" eval="3"/> </record> <record id="survey_answer_our_answer_is" model="survey.answer"> @@ -1209,7 +1183,7 @@ <field name="question">Give your opinion about Odoo's</field> <field name="page_id" ref="survey_page_odoo_the_offer" /> <field name="type">matrix_of_choices_only_one_ans</field> - <field name="in_visible_single_text">1</field> + <field name="sequence" eval="1"/> </record> <record id="survey_answer_pricing_criteria" model="survey.answer"> @@ -1271,7 +1245,7 @@ <field name="question">If you have any additional comments, write them here :</field> <field name="page_id" ref="survey_page_odoo_the_offer" /> <field name="type">comment</field> - <field name="in_visible_single_text">1</field> + <field name="sequence" eval="2"/> </record> </data> @@ -1346,7 +1320,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -1366,7 +1339,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -1386,7 +1358,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> @@ -1408,7 +1379,6 @@ <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> <field name="in_visible_rating_weight">1</field> - <field name="in_visible_menu_choice">1</field> </record> </data> <data> @@ -1428,7 +1398,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -1448,7 +1417,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -1468,7 +1436,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -1488,7 +1455,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -1508,7 +1474,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -1528,7 +1493,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -1549,7 +1513,6 @@ <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> <field name="in_visible_rating_weight">1</field> - <field name="in_visible_menu_choice">1</field> </record> </data> <data> @@ -1570,7 +1533,6 @@ <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> <field name="in_visible_rating_weight">1</field> - <field name="in_visible_menu_choice">1</field> </record> </data> <data> @@ -1590,7 +1552,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -1610,7 +1571,6 @@ <field eval=""""do_not_validate"""" name="validation_type"/> <field eval=""""Other"""" name="comment_label"/> <field eval="0" name="allow_comment"/> - <field name="in_visible_single_text">1</field> </record> </data> <data> @@ -2191,7 +2151,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="1" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_0_Community"/> <field name="required_type">at least</field> @@ -2220,7 +2179,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="1" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_0_Community"/> <field name="required_type">at least</field> @@ -2249,7 +2207,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="1" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_0_Community"/> <field name="required_type">at least</field> @@ -2278,7 +2235,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="1" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_1_Community"/> <field name="required_type">at least</field> @@ -2307,7 +2263,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="1" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_1_Community"/> <field name="required_type">at least</field> @@ -2336,7 +2291,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="1" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_1_Community"/> <field name="required_type">at least</field> @@ -2365,7 +2319,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="1" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_1_Community"/> <field name="required_type">at least</field> @@ -2394,7 +2347,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="1" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_1_Community"/> <field name="required_type">at least</field> @@ -2423,7 +2375,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="0" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_2_Community"/> <field name="required_type">at least</field> @@ -2452,7 +2403,6 @@ <field eval="1" name="req_ans"/> <field name="comment_valid_err_msg">The comment you entered is in an invalid format.</field> <field eval="0" name="make_comment_field"/> - <field eval="1" name="in_visible_menu_choice"/> <field eval="1" name="in_visible_answer_type"/> <field name="page_id" ref="survey_page_2_Community"/> <field name="required_type">at least</field> diff --git a/addons/survey/survey_view.xml b/addons/survey/survey_view.xml index d5d0100534e..26b19eeccd9 100644 --- a/addons/survey/survey_view.xml +++ b/addons/survey/survey_view.xml @@ -37,6 +37,7 @@ <form string="Survey Page"> <field name="title" select="1"/> <field name="sequence" groups="base.group_extended"/> + <separator string="Description" colspan="4"/> <field name="note" colspan="4" nolabel="1"/> <field name="question_ids" height="200" width="200" colspan="4" nolabel="1" context="{'line_order': question_ids}"> <form string="Survey Question" > diff --git a/addons/survey/wizard/survey_answer.py b/addons/survey/wizard/survey_answer.py index f913f922c55..b49c9c7d156 100644 --- a/addons/survey/wizard/survey_answer.py +++ b/addons/survey/wizard/survey_answer.py @@ -528,8 +528,8 @@ class survey_question_wiz(osv.osv_memory): Create the Answer of survey and store in survey.response object, and if set validation of question then check the value of question if value is wrong then raise the exception. """ if context is None: context = {} - - survey_question_wiz_id = super(survey_question_wiz,self).create(cr, uid, vals, context=context) + + survey_question_wiz_id = super(survey_question_wiz,self).create(cr, uid, {'name': vals.get('name')}, context=context) if context.has_key('active') and context.get('active',False): return survey_question_wiz_id diff --git a/addons/thunderbird/__init__.py b/addons/thunderbird/__init__.py index 68afc0cccf9..33d232b3f50 100644 --- a/addons/thunderbird/__init__.py +++ b/addons/thunderbird/__init__.py @@ -21,3 +21,5 @@ import partner import installer + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/thunderbird/__openerp__.py b/addons/thunderbird/__openerp__.py index 5b124af05aa..53a704d2f1b 100644 --- a/addons/thunderbird/__openerp__.py +++ b/addons/thunderbird/__openerp__.py @@ -45,3 +45,5 @@ HR Applicant and Project Issue from selected mails. "certificate" : "00899858104035139949", 'images': ['images/config_thunderbird.jpeg','images/config_thunderbird_plugin.jpeg','images/thunderbird_document.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/thunderbird/i18n/hr.po b/addons/thunderbird/i18n/hr.po index cdbe896d5b7..2216d9132e8 100644 --- a/addons/thunderbird/i18n/hr.po +++ b/addons/thunderbird/i18n/hr.po @@ -8,21 +8,21 @@ msgstr "" "Project-Id-Version: openobject-addons\n" "Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2010-06-06 23:47+0000\n" -"Last-Translator: Drazen Bosak <Unknown>\n" +"PO-Revision-Date: 2011-12-08 15:55+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" "Language-Team: Vinteh\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:41+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" "Language: hr\n" #. module: thunderbird #: field:thunderbird.installer,plugin_file:0 #: field:thunderbird.installer,thunderbird:0 msgid "Thunderbird Plug-in" -msgstr "" +msgstr "Thunderbird Plug-in" #. module: thunderbird #: help:thunderbird.installer,plugin_file:0 @@ -30,6 +30,8 @@ msgid "" "Thunderbird plug-in file. Save as this file and install this plug-in in " "thunderbird." msgstr "" +"Thunderbird plug-in datoteka. Snimi kako ovu datoteku i instaliraj ovaj plug-" +"in u Thunderbird." #. module: thunderbird #: help:thunderbird.installer,thunderbird:0 @@ -37,26 +39,28 @@ msgid "" "Allows you to select an object that you would like to add to your email and " "its attachments." msgstr "" +"Dozvoljava vam da odaberete objekt koji želite dodati vašoj elektroničkoj " +"poruci kao privitak." #. module: thunderbird #: help:thunderbird.installer,pdf_file:0 msgid "The documentation file :- how to install Thunderbird Plug-in." -msgstr "" +msgstr "Datoteka s dokumentacijom : Kako instalirati Thunderbird Plug-in." #. module: thunderbird #: model:ir.model,name:thunderbird.model_email_server_tools msgid "Email Server Tools" -msgstr "" +msgstr "Alati E-mail poslužitelja" #. module: thunderbird #: view:thunderbird.installer:0 msgid "_Close" -msgstr "" +msgstr "_Zatvori" #. module: thunderbird #: field:thunderbird.installer,pdf_file:0 msgid "Installation Manual" -msgstr "" +msgstr "Priručnik za instalaciju" #. module: thunderbird #: field:thunderbird.installer,description:0 @@ -66,7 +70,7 @@ msgstr "Opis" #. module: thunderbird #: view:thunderbird.installer:0 msgid "title" -msgstr "" +msgstr "Naziv" #. module: thunderbird #: model:ir.ui.menu,name:thunderbird.menu_base_config_plugins_thunderbird @@ -80,6 +84,10 @@ msgid "" "This plug-in allows you to link your e-mail to OpenERP's documents. You can " "attach it to any existing one in OpenERP or create a new one." msgstr "" +"This plug-in allows you to link your e-mail to OpenERP's documents. You can " +"attach it to any existing one in OpenERP or create a new one.\r\n" +"Ovaj plug-in omogućuje povezivanje vaših el. poruka sa OpenERP dokumentima. " +"Možete dodjeliti neki postojeći u OpenERP-u ili kreirati novi." #. module: thunderbird #: model:ir.module.module,shortdesc:thunderbird.module_meta_information @@ -95,44 +103,44 @@ msgstr "" #: field:thunderbird.installer,name:0 #: field:thunderbird.installer,pdf_name:0 msgid "File name" -msgstr "" +msgstr "Naziv datoteke" #. module: thunderbird #: view:thunderbird.installer:0 msgid "Installation and Configuration Steps" -msgstr "" +msgstr "Koraci instalacije i konfiguracije" #. module: thunderbird #: field:thunderbird.installer,progress:0 msgid "Configuration Progress" -msgstr "" +msgstr "Napredak konfiguracije" #. module: thunderbird #: model:ir.actions.act_window,name:thunderbird.action_thunderbird_installer #: model:ir.actions.act_window,name:thunderbird.action_thunderbird_wizard #: view:thunderbird.installer:0 msgid "Thunderbird Plug-In Configuration" -msgstr "" +msgstr "Konfiguracija Thunderbird plug-ina" #. module: thunderbird #: model:ir.model,name:thunderbird.model_thunderbird_partner msgid "Thunderbid Plugin Tools" -msgstr "" +msgstr "Alati Thunderbird plugina" #. module: thunderbird #: view:thunderbird.installer:0 msgid "Configure" -msgstr "" +msgstr "Podešavanje" #. module: thunderbird #: view:thunderbird.installer:0 msgid "Skip" -msgstr "" +msgstr "Preskoči" #. module: thunderbird #: field:thunderbird.installer,config_logo:0 msgid "Image" -msgstr "" +msgstr "Slika" #. module: thunderbird #: model:ir.module.module,description:thunderbird.module_meta_information @@ -150,6 +158,18 @@ msgid "" "\n" " " msgstr "" +"\n" +" Ovaj modul je nužan za ispravan rad Thunderbird plugina.\n" +" Plugin omogućava arhiviranje e-mailova i njihovih privitaka za " +"odabrani objekt.\n" +" Možete izabrati partnera, zadatak, projekt, analitički račun, ili bilo " +"koji drugi objekt \n" +" i pridružiti odabrani e-mail ako eml datoteku u privitku ili " +"odabranom zapisu. \n" +" Možete kreirati dokumente za CRM kontakte ili projekte iz izabranih " +"el. poruka.\n" +"\n" +" " #~ msgid "" #~ "The Object name must start with x_ and not contain any special character !" diff --git a/addons/thunderbird/installer.py b/addons/thunderbird/installer.py index 35d31b9d636..4cbcec9fff0 100644 --- a/addons/thunderbird/installer.py +++ b/addons/thunderbird/installer.py @@ -68,3 +68,5 @@ Configure OpenERP in Thunderbird: } thunderbird_installer() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/thunderbird/partner/__init__.py b/addons/thunderbird/partner/__init__.py index 8eee7a82e06..5583bc0e78a 100644 --- a/addons/thunderbird/partner/__init__.py +++ b/addons/thunderbird/partner/__init__.py @@ -21,3 +21,5 @@ import partner + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/thunderbird/partner/partner.py b/addons/thunderbird/partner/partner.py index 80a4bfa4d98..3ce48281de7 100644 --- a/addons/thunderbird/partner/partner.py +++ b/addons/thunderbird/partner/partner.py @@ -281,3 +281,5 @@ class thunderbird_partner(osv.osv_memory): return object
thunderbird_partner()
+ +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/users_ldap/__openerp__.py b/addons/users_ldap/__openerp__.py index adab3ff892c..52eba24b3ce 100644 --- a/addons/users_ldap/__openerp__.py +++ b/addons/users_ldap/__openerp__.py @@ -19,7 +19,7 @@ ############################################################################## { - "name" : "Authenticate users with LDAP server", + "name" : "Authentication via LDAP", "version" : "1.0", "depends" : ["base"], "images" : ["images/ldap_configuration.jpeg"], @@ -116,10 +116,11 @@ will disable LDAP authentication if installed at the same time. "website" : "http://www.openerp.com", - "category" : "Hidden", + "category" : "Tools", "data" : [ "users_ldap_view.xml", "user_ldap_installer.xml", + "security/ir.model.access.csv", ], "active": False, "installable": True, diff --git a/addons/users_ldap/i18n/hr.po b/addons/users_ldap/i18n/hr.po new file mode 100644 index 00000000000..32a0e301490 --- /dev/null +++ b/addons/users_ldap/i18n/hr.po @@ -0,0 +1,128 @@ +# Croatian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:16+0000\n" +"PO-Revision-Date: 2011-12-08 15:31+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" +"Language-Team: Croatian <hr@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" + +#. module: users_ldap +#: constraint:res.company:0 +msgid "Error! You can not create recursive companies." +msgstr "" + +#. module: users_ldap +#: constraint:res.users:0 +msgid "The chosen company is not in the allowed companies for this user" +msgstr "" + +#. module: users_ldap +#: field:res.company,ldaps:0 +msgid "LDAP Parameters" +msgstr "" + +#. module: users_ldap +#: view:res.company:0 +msgid "LDAP Configuration" +msgstr "" + +#. module: users_ldap +#: field:res.company.ldap,ldap_binddn:0 +msgid "LDAP binddn" +msgstr "" + +#. module: users_ldap +#: help:res.company.ldap,create_user:0 +msgid "Create the user if not in database" +msgstr "" + +#. module: users_ldap +#: help:res.company.ldap,user:0 +msgid "Model used for user creation" +msgstr "" + +#. module: users_ldap +#: field:res.company.ldap,company:0 +msgid "Company" +msgstr "" + +#. module: users_ldap +#: field:res.company.ldap,ldap_server:0 +msgid "LDAP Server address" +msgstr "" + +#. module: users_ldap +#: field:res.company.ldap,ldap_server_port:0 +msgid "LDAP Server port" +msgstr "" + +#. module: users_ldap +#: field:res.company.ldap,ldap_base:0 +msgid "LDAP base" +msgstr "" + +#. module: users_ldap +#: model:ir.model,name:users_ldap.model_res_company +msgid "Companies" +msgstr "" + +#. module: users_ldap +#: field:res.company.ldap,ldap_password:0 +msgid "LDAP password" +msgstr "" + +#. module: users_ldap +#: model:ir.model,name:users_ldap.model_res_company_ldap +msgid "res.company.ldap" +msgstr "" + +#. module: users_ldap +#: model:ir.module.module,description:users_ldap.module_meta_information +msgid "Adds support for authentication by ldap server" +msgstr "" + +#. module: users_ldap +#: field:res.company.ldap,sequence:0 +msgid "Sequence" +msgstr "" + +#. module: users_ldap +#: sql_constraint:res.users:0 +msgid "You can not have two users with the same login !" +msgstr "" + +#. module: users_ldap +#: model:ir.module.module,shortdesc:users_ldap.module_meta_information +msgid "Authenticate users with ldap server" +msgstr "" + +#. module: users_ldap +#: field:res.company.ldap,user:0 +msgid "Model User" +msgstr "" + +#. module: users_ldap +#: model:ir.model,name:users_ldap.model_res_users +msgid "res.users" +msgstr "" + +#. module: users_ldap +#: field:res.company.ldap,ldap_filter:0 +msgid "LDAP filter" +msgstr "LDAP filtar" + +#. module: users_ldap +#: field:res.company.ldap,create_user:0 +msgid "Create user" +msgstr "Kreiraj korisnika" diff --git a/addons/users_ldap/security/ir.model.access.csv b/addons/users_ldap/security/ir.model.access.csv new file mode 100644 index 00000000000..d26bd0a6d48 --- /dev/null +++ b/addons/users_ldap/security/ir.model.access.csv @@ -0,0 +1,2 @@ +"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink" +"access_res_company_ldap","res_company_ldap","model_res_company_ldap","base.group_system",1,1,1,1 diff --git a/addons/users_ldap/user_ldap_installer.xml b/addons/users_ldap/user_ldap_installer.xml index 94318f42097..4dd65807a4b 100644 --- a/addons/users_ldap/user_ldap_installer.xml +++ b/addons/users_ldap/user_ldap_installer.xml @@ -8,10 +8,13 @@ <field name="type">form</field> <field name="arch" type="xml"> <form string="LDAP Configuration"> + <field name="company"/> + <newline/> <group col="2" colspan="2"> <separator string="Server Information" colspan="2"/> <field name="ldap_server"/> <field name="ldap_server_port"/> + <field name="ldap_tls"/> </group> <group col="2" colspan="2"> <separator string="Login Information" colspan="2"/> diff --git a/addons/warning/__openerp__.py b/addons/warning/__openerp__.py index c299d830ed9..0d462529ced 100644 --- a/addons/warning/__openerp__.py +++ b/addons/warning/__openerp__.py @@ -21,9 +21,9 @@ { - 'name': 'Display Warning Messages', + 'name': 'Warning Messages and Alerts', 'version': '1.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ Module to trigger warnings in OpenERP objects. diff --git a/addons/warning/i18n/hr.po b/addons/warning/i18n/hr.po index aa89ee62028..e449842d5a4 100644 --- a/addons/warning/i18n/hr.po +++ b/addons/warning/i18n/hr.po @@ -7,26 +7,26 @@ msgstr "" "Project-Id-Version: OpenERP Server 6.0dev\n" "Report-Msgid-Bugs-To: support@openerp.com\n" "POT-Creation-Date: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2010-08-02 14:56+0000\n" -"Last-Translator: Mantavya Gajjar (Open ERP) <Unknown>\n" +"PO-Revision-Date: 2011-12-08 17:07+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" "Language-Team: Vinteh\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -"X-Launchpad-Export-Date: 2011-11-05 05:38+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" "Language: hr\n" #. module: warning #: model:ir.model,name:warning.model_purchase_order_line #: field:product.product,purchase_line_warn:0 msgid "Purchase Order Line" -msgstr "Niz Prodajne Narudžbe" +msgstr "Stavka naloga nabave" #. module: warning #: field:product.product,sale_line_warn_msg:0 msgid "Message for Sale Order Line" -msgstr "Poruka za liniju prodaje" +msgstr "Poruka za stavku prodajnog naloga" #. module: warning #: field:product.product,purchase_line_warn_msg:0 @@ -41,12 +41,12 @@ msgstr "" #. module: warning #: model:ir.model,name:warning.model_stock_picking msgid "Picking List" -msgstr "" +msgstr "Skladišni dokument" #. module: warning #: field:product.product,sale_line_warn:0 msgid "Sale Order Line" -msgstr "Linija prodaje" +msgstr "Sale Order Line" #. module: warning #: view:product.product:0 @@ -56,7 +56,7 @@ msgstr "Upozorenje kod kupnje ovog proizvoda" #. module: warning #: model:ir.model,name:warning.model_product_product msgid "Product" -msgstr "" +msgstr "Proizvod" #. module: warning #: sql_constraint:purchase.order:0 @@ -78,7 +78,7 @@ msgstr "Upozorenja" #: selection:res.partner,purchase_warn:0 #: selection:res.partner,sale_warn:0 msgid "Warning" -msgstr "Upozorenje" +msgstr "Warning" #. module: warning #: selection:product.product,purchase_line_warn:0 @@ -93,7 +93,7 @@ msgstr "Blokiranje poruke" #. module: warning #: view:res.partner:0 msgid "Warning on the Invoice" -msgstr "Upozorenje na račun" +msgstr "Upozorenje na računu" #. module: warning #: selection:product.product,purchase_line_warn:0 @@ -124,28 +124,28 @@ msgstr "Upozorenje kod prodaje ovog proizvoda" #. module: warning #: field:res.partner,sale_warn:0 msgid "Sale Order" -msgstr "Prodajna narudžba" +msgstr "Sale Order" #. module: warning #: field:res.partner,picking_warn:0 msgid "Stock Picking" -msgstr "Preuzimanje zaliha" +msgstr "Skladišnica" #. module: warning #: model:ir.model,name:warning.model_purchase_order #: field:res.partner,purchase_warn:0 msgid "Purchase Order" -msgstr "Kupovna narudžba" +msgstr "Nalog za nabavu" #. module: warning #: field:res.partner,sale_warn_msg:0 msgid "Message for Sale Order" -msgstr "Poruka uz Prodajnu narudžnu" +msgstr "Poruka za prodajni nalog" #. module: warning #: field:res.partner,purchase_warn_msg:0 msgid "Message for Purchase Order" -msgstr "Prodaja uz kupovnu narudžbu" +msgstr "Poruka za narudžbu (nabave)" #. module: warning #: code:addons/warning/warning.py:32 @@ -179,7 +179,7 @@ msgstr "" #. module: warning #: field:res.partner,invoice_warn_msg:0 msgid "Message for Invoice" -msgstr "Poruka uz Račun" +msgstr "Poruka uz račun" #. module: warning #: model:ir.module.module,description:warning.module_meta_information @@ -189,7 +189,7 @@ msgstr "Module for Warnings form onchange Event." #. module: warning #: view:res.partner:0 msgid "Warning on the Picking" -msgstr "Upozorenje vezano uz preuzimanje" +msgstr "Upozorenje na skladišnicama" #. module: warning #: view:res.partner:0 @@ -210,32 +210,32 @@ msgstr "" #. module: warning #: view:res.partner:0 msgid "Warning on the Sale Order" -msgstr "Upozorenje vezano uz kupovnu narudžbu" +msgstr "Upozorenje vezano uz prodajni nalog" #. module: warning #: constraint:product.product:0 msgid "Error: Invalid ean code" -msgstr "" +msgstr "Greška: Neispravan barkod!" #. module: warning #: field:res.partner,picking_warn_msg:0 msgid "Message for Stock Picking" -msgstr "Poruka uz preuzimanje zaliha" +msgstr "Poruka za skladišnicu" #. module: warning #: model:ir.model,name:warning.model_res_partner msgid "Partner" -msgstr "" +msgstr "Partner" #. module: warning #: model:ir.model,name:warning.model_sale_order msgid "Sales Order" -msgstr "" +msgstr "Prodajni nalog" #. module: warning #: model:ir.model,name:warning.model_sale_order_line msgid "Sales Order Line" -msgstr "" +msgstr "Stavka prodajnog naloga" #~ msgid "Invalid XML for View Architecture!" #~ msgstr "Nepravilan XML format za View Architecture!" diff --git a/addons/web_livechat/__init__.py b/addons/web_livechat/__init__.py index 9af39b2f58c..761db42923c 100644 --- a/addons/web_livechat/__init__.py +++ b/addons/web_livechat/__init__.py @@ -18,3 +18,5 @@ # ############################################################################## import publisher_warranty + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/web_livechat/__openerp__.py b/addons/web_livechat/__openerp__.py index 750c4ca7ec5..c8ef0fe0b23 100644 --- a/addons/web_livechat/__openerp__.py +++ b/addons/web_livechat/__openerp__.py @@ -21,7 +21,7 @@ { 'name': 'Live Chat Support', 'version': '2.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ Enable live chat support for those who have a maintenance contract. @@ -47,3 +47,5 @@ Add "Support" button in header from where you can access OpenERP Support. 'certificate': '0013762192410413', 'images': ['static/src/img/web_livechat_support.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/web_livechat/i18n/hr.po b/addons/web_livechat/i18n/hr.po new file mode 100644 index 00000000000..7899f56b8d5 --- /dev/null +++ b/addons/web_livechat/i18n/hr.po @@ -0,0 +1,41 @@ +# Croatian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:16+0000\n" +"PO-Revision-Date: 2011-12-08 15:20+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" +"Language-Team: Croatian <hr@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" + +#. module: web_livechat +#: sql_constraint:publisher_warranty.contract:0 +msgid "" +"Your publisher warranty contract is already subscribed in the system !" +msgstr "" +"Your publisher warranty contract is already subscribed in the system !\r\n" +"Vaš garancijski ugovor je već unesen u sustav!" + +#. module: web_livechat +#: model:ir.module.module,shortdesc:web_livechat.module_meta_information +msgid "Live Chat Support" +msgstr "Podrška za Live Chat" + +#. module: web_livechat +#: model:ir.model,name:web_livechat.model_publisher_warranty_contract +msgid "publisher_warranty.contract" +msgstr "garancijski ugovor" + +#. module: web_livechat +#: model:ir.module.module,description:web_livechat.module_meta_information +msgid "Enable live chat support for whom have a maintenance contract" +msgstr "Omogući podršku za Live Chat za one koji imaju ugovor o održavanju" diff --git a/addons/web_livechat/publisher_warranty.py b/addons/web_livechat/publisher_warranty.py index 132e78d013e..57b610500d2 100644 --- a/addons/web_livechat/publisher_warranty.py +++ b/addons/web_livechat/publisher_warranty.py @@ -26,7 +26,7 @@ def _gen_cache_clear(method): def func(self, cr, *args, **kwargs): s = super(publisher_warranty_contract, self) r = getattr(s, method)(cr, *args, **kwargs) - self.is_livechat_enable.clear_cache(cr.dbname) + self.is_livechat_enable.clear_cache(self) return r return func @@ -48,3 +48,5 @@ class publisher_warranty_contract(osv.osv): publisher_warranty_contract() + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/web_uservoice/__init__.py b/addons/web_uservoice/__init__.py index b0c3c528f28..ac2fe14a5c1 100644 --- a/addons/web_uservoice/__init__.py +++ b/addons/web_uservoice/__init__.py @@ -18,3 +18,5 @@ # ############################################################################## + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/web_uservoice/__openerp__.py b/addons/web_uservoice/__openerp__.py index 64b443be3e2..03e312179af 100644 --- a/addons/web_uservoice/__openerp__.py +++ b/addons/web_uservoice/__openerp__.py @@ -21,7 +21,7 @@ { 'name': 'Receive User Feedback', 'version': '2.0', - 'category': 'Hidden', + 'category': 'Tools', 'complexity': "easy", 'description': """ Add Feedback button in header. @@ -44,3 +44,5 @@ Invite OpenERP user feedback, powered by uservoice. ], 'images': ['static/src/img/submit_an_idea.jpeg', 'static/src/img/web_uservoice_feedback.jpeg'], } + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/web_uservoice/i18n/hr.po b/addons/web_uservoice/i18n/hr.po new file mode 100644 index 00000000000..64370eab463 --- /dev/null +++ b/addons/web_uservoice/i18n/hr.po @@ -0,0 +1,29 @@ +# Croatian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-12 16:15+0000\n" +"PO-Revision-Date: 2011-12-08 15:15+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" +"Language-Team: Croatian <hr@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" + +#. module: web_uservoice +#: model:ir.module.module,shortdesc:web_uservoice.module_meta_information +msgid "Add uservoice button in header" +msgstr "Dodaj gumb glasa korisnika u zaglavlje" + +#. module: web_uservoice +#: code:addons/web_uservoice/web/editors.py:72 +#, python-format +msgid "feedback" +msgstr "Povratna informacija" diff --git a/addons/wiki/i18n/hr.po b/addons/wiki/i18n/hr.po index fe6a66b2a23..15d85738228 100644 --- a/addons/wiki/i18n/hr.po +++ b/addons/wiki/i18n/hr.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: 2011-01-11 11:16+0000\n" -"PO-Revision-Date: 2011-09-20 02:17+0000\n" -"Last-Translator: wooer <Unknown>\n" +"PO-Revision-Date: 2011-12-08 16:14+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\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: 2011-11-05 05:35+0000\n" -"X-Generator: Launchpad (build 14231)\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" #. module: wiki #: field:wiki.groups,template:0 @@ -52,12 +52,12 @@ msgstr "Izbornik" #. module: wiki #: field:wiki.wiki,section:0 msgid "Section" -msgstr "Odlomak" +msgstr "Grupa" #. module: wiki #: help:wiki.wiki,toc:0 msgid "Indicates that this pages have a table of contents or not" -msgstr "Ukazuje da li ove stranice imaju tablicu sadržaja ili ne" +msgstr "Indicates that this pages have a table of contents or not" #. module: wiki #: model:ir.model,name:wiki.model_wiki_wiki_history @@ -79,18 +79,18 @@ msgstr "Sadržaj" #. module: wiki #: field:wiki.wiki,child_ids:0 msgid "Child Pages" -msgstr "" +msgstr "Podređene stranice" #. module: wiki #: field:wiki.wiki,parent_id:0 msgid "Parent Page" -msgstr "" +msgstr "Parent Page" #. module: wiki #: view:wiki.wiki:0 #: field:wiki.wiki,write_uid:0 msgid "Last Contributor" -msgstr "Zadnji suradnik" +msgstr "Zadnji doprinos" #. module: wiki #: field:wiki.create.menu,menu_parent_id:0 @@ -100,7 +100,7 @@ msgstr "Nadređeni izbornik" #. module: wiki #: help:wiki.wiki,group_id:0 msgid "Topic, also called Wiki Group" -msgstr "" +msgstr "Topic, poznat kao Wiki Group" #. module: wiki #: field:wiki.groups,name:0 @@ -117,12 +117,12 @@ msgstr "Naslov" #. module: wiki #: model:ir.model,name:wiki.model_wiki_create_menu msgid "Wizard Create Menu" -msgstr "Čarobnjak za stvaranje izbornika" +msgstr "Wizard Create Menu" #. module: wiki #: field:wiki.wiki,history_id:0 msgid "History Lines" -msgstr "Redovi povijesti" +msgstr "Povijesni niz" #. module: wiki #: view:wiki.wiki:0 @@ -159,7 +159,7 @@ msgstr "Opis" #. module: wiki #: field:wiki.wiki,review:0 msgid "Needs Review" -msgstr "Potrebno pregledati" +msgstr "Traži provjeru" #. module: wiki #: help:wiki.wiki,review:0 @@ -167,7 +167,8 @@ msgid "" "Indicates that this page should be reviewed, raising the attention of other " "contributors" msgstr "" -"Ukazuje da ovu stranicu treba pregledati, skrećući pozornost drugih suradnika" +"Indicates that this page should be reviewed, raising the attention of other " +"contributors" #. module: wiki #: view:wiki.create.menu:0 @@ -183,7 +184,7 @@ msgstr "Povijest stranice" #. module: wiki #: selection:wiki.groups,method:0 msgid "Tree" -msgstr "" +msgstr "Stablo" #. module: wiki #: view:wiki.groups:0 @@ -193,7 +194,7 @@ msgstr "Predložak stranice" #. module: wiki #: field:wiki.wiki,tags:0 msgid "Keywords" -msgstr "" +msgstr "Ključne riječi" #. module: wiki #: model:ir.actions.act_window,help:wiki.action_wiki @@ -203,6 +204,10 @@ msgid "" "(CRM, Sales, etc.). You can use keywords to ease access to your wiki pages. " "There is a basic wiki editing for text format." msgstr "" +"With Wiki Pages you can share ideas and questions with your coworkers. You " +"can create a new document that can be linked to one or several applications " +"(CRM, Sales, etc.). You can use keywords to ease access to your wiki pages. " +"There is a basic wiki editing for text format." #. module: wiki #: code:addons/wiki/wizard/wiki_show_diff.py:54 @@ -230,17 +235,17 @@ msgstr "Želite li kreirati indeks na označenim stranicama ? " #: model:ir.actions.act_window,name:wiki.action_view_wiki_show_diff_values #: view:wizard.wiki.history.show_diff:0 msgid "Difference" -msgstr "" +msgstr "Razlika" #. module: wiki #: field:wiki.groups,page_ids:0 msgid "Pages" -msgstr "Stranice" +msgstr "Pages" #. module: wiki #: view:wiki.groups:0 msgid "Group Description" -msgstr "" +msgstr "Group Description" #. module: wiki #: help:wiki.wiki,section:0 @@ -250,7 +255,7 @@ msgstr "Koristite numeriranje odlomaka na stranici poput 1.2.1" #. module: wiki #: view:wiki.wiki.page.open:0 msgid "Want to open a wiki page? " -msgstr "" +msgstr "Want to open a wiki page? " #. module: wiki #: field:wiki.groups,section:0 @@ -265,7 +270,7 @@ msgstr "Područje teksta" #. module: wiki #: view:wiki.wiki:0 msgid "Meta Information" -msgstr "" +msgstr "Meta informacije" #. module: wiki #: model:ir.module.module,description:wiki.module_meta_information @@ -286,12 +291,12 @@ msgstr "Bilješke" #. module: wiki #: help:wiki.groups,home:0 msgid "Required to select home page if display method is Home Page" -msgstr "" +msgstr "Required to select home page if display method is Home Page" #. module: wiki #: selection:wiki.groups,method:0 msgid "List" -msgstr "" +msgstr "List" #. module: wiki #: field:wiki.wiki,summary:0 @@ -317,12 +322,12 @@ msgstr "wiki.wiki" #. module: wiki #: help:wiki.groups,method:0 msgid "Define the default behaviour of the menu created on this group" -msgstr "" +msgstr "Definirajte uobičajeno ponašanje izbornika za ovu grupu" #. module: wiki #: view:wizard.wiki.history.show_diff:0 msgid "Close" -msgstr "" +msgstr "Zatvori" #. module: wiki #: model:ir.model,name:wiki.model_wizard_wiki_history_show_diff @@ -338,17 +343,17 @@ msgstr "Wiki Id" #: field:wiki.groups,home:0 #: selection:wiki.groups,method:0 msgid "Home Page" -msgstr "" +msgstr "Home Page" #. module: wiki #: help:wiki.wiki,parent_id:0 msgid "Allows you to link with the other page with in the current topic" -msgstr "" +msgstr "Allows you to link with the other page with in the current topic" #. module: wiki #: view:wiki.wiki:0 msgid "Modification Information" -msgstr "" +msgstr "Informacije o promjeni" #. module: wiki #: model:ir.ui.menu,name:wiki.menu_wiki_configuration @@ -364,7 +369,7 @@ msgstr "Datum promjene" #. module: wiki #: view:wiki.groups:0 msgid "Configuration" -msgstr "Postavke" +msgstr "Postava" #. module: wiki #: model:ir.actions.act_window,name:wiki.action_view_wiki_make_index @@ -383,7 +388,7 @@ msgstr "Potrebno je odabrati najmanje 1 do najviše 2 povijesne revizije!" #. module: wiki #: view:wiki.wiki:0 msgid "Group By..." -msgstr "" +msgstr "Grupiraj po..." #. module: wiki #: model:ir.actions.act_window,name:wiki.action_wiki_create_menu @@ -391,7 +396,7 @@ msgstr "" #: view:wiki.groups:0 #: view:wiki.make.index:0 msgid "Create Menu" -msgstr "Kreiraj izbornik" +msgstr "Stvori izbornik" #. module: wiki #: field:wiki.wiki.history,minor_edit:0 @@ -410,7 +415,7 @@ msgstr "Wiki grupe" #. module: wiki #: view:wiki.wiki:0 msgid "Topic" -msgstr "" +msgstr "Naslov" #. module: wiki #: field:wiki.wiki.history,write_uid:0 @@ -428,12 +433,12 @@ msgstr "Sadržaj" #: view:wiki.groups:0 #: view:wiki.wiki.page.open:0 msgid "Open Wiki Page" -msgstr "" +msgstr "Open Wiki Page" #. module: wiki #: model:ir.model,name:wiki.model_wiki_wiki_page_open msgid "wiz open page" -msgstr "" +msgstr "wiz open page" #. module: wiki #: view:wiki.create.menu:0 @@ -455,12 +460,12 @@ msgstr "Potrebna provjera" #. module: wiki #: model:ir.actions.act_window,name:wiki.action_wiki_review msgid "Pages Waiting Review" -msgstr "" +msgstr "Čekanje pregleda stranice" #. module: wiki #: model:ir.actions.act_window,name:wiki.act_wiki_group_open msgid "Search Page" -msgstr "" +msgstr "Search Page" #~ msgid "Child Groups" #~ msgstr "Podgrupe" diff --git a/addons/wiki/web/__init__.py b/addons/wiki/web/__init__.py index 5b55f6cf43b..6fb28f7f2ad 100644 --- a/addons/wiki/web/__init__.py +++ b/addons/wiki/web/__init__.py @@ -1,2 +1,4 @@ import widgets import controllers + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/wiki/web/controllers/__init__.py b/addons/wiki/web/controllers/__init__.py index 8c163ddd260..e1edf0f0f96 100644 --- a/addons/wiki/web/controllers/__init__.py +++ b/addons/wiki/web/controllers/__init__.py @@ -1 +1,3 @@ import wiki + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/wiki/web/controllers/wiki.py b/addons/wiki/web/controllers/wiki.py index f4b0527e1e2..2f147827f24 100644 --- a/addons/wiki/web/controllers/wiki.py +++ b/addons/wiki/web/controllers/wiki.py @@ -61,3 +61,5 @@ class WikiView(SecuredController): res, file_name = self.get_attachment(**kws) cherrypy.response.headers['Content-Disposition'] = 'filename="%s"' % (file_name,) return base64.decodestring(res) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/wiki/web/widgets/__init__.py b/addons/wiki/web/widgets/__init__.py index a3caa17e700..4b2c273d02a 100644 --- a/addons/wiki/web/widgets/__init__.py +++ b/addons/wiki/web/widgets/__init__.py @@ -1 +1,3 @@ from wiki import WikiWidget + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/wiki/web/widgets/rss/__init__.py b/addons/wiki/web/widgets/rss/__init__.py index 464c4364414..ff95e8bd52a 100644 --- a/addons/wiki/web/widgets/rss/__init__.py +++ b/addons/wiki/web/widgets/rss/__init__.py @@ -1 +1,3 @@ -import feedparser
\ No newline at end of file +import feedparser + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/wiki/web/widgets/rss/feedparser.py b/addons/wiki/web/widgets/rss/feedparser.py index 6f30574d300..885050d49f8 100755 --- a/addons/wiki/web/widgets/rss/feedparser.py +++ b/addons/wiki/web/widgets/rss/feedparser.py @@ -2856,3 +2856,5 @@ if __name__ == '__main__': # terminology; parse RFC 822-style dates with no time; lots of other # bug fixes #4.1 - MAP - removed socket timeout; added support for chardet library + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/wiki/web/widgets/wiki.py b/addons/wiki/web/widgets/wiki.py index 0f7240f6fcc..ccf2a75899c 100644 --- a/addons/wiki/web/widgets/wiki.py +++ b/addons/wiki/web/widgets/wiki.py @@ -220,3 +220,5 @@ class WikiWidget(Text): self.data = html register_widget(WikiWidget, ["text_wiki"]) + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/wiki/web/widgets/wikimarkup/__init__.py b/addons/wiki/web/widgets/wikimarkup/__init__.py index 5eceea0e86d..f5fe67fada1 100644 --- a/addons/wiki/web/widgets/wikimarkup/__init__.py +++ b/addons/wiki/web/widgets/wikimarkup/__init__.py @@ -2142,3 +2142,5 @@ def str2url(str): for i in zip(mfrom, to): str = str.replace(*i) return str + +# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4: diff --git a/addons/wiki/wiki.py b/addons/wiki/wiki.py index 940d7116099..fa1dca8e95a 100644 --- a/addons/wiki/wiki.py +++ b/addons/wiki/wiki.py @@ -125,9 +125,9 @@ class wiki_wiki2(osv.osv): 'child_ids': fields.one2many('wiki.wiki', 'parent_id', 'Child Pages'), } _defaults = { - 'toc': lambda *a: True, - 'review': lambda *a: True, - 'minor_edit': lambda *a: True, + 'toc': True, + 'review': True, + 'minor_edit': True, } def onchange_group_id(self, cr, uid, ids, group_id, content, context=None): diff --git a/addons/wiki_faq/i18n/hr.po b/addons/wiki_faq/i18n/hr.po new file mode 100644 index 00000000000..b4086bcee42 --- /dev/null +++ b/addons/wiki_faq/i18n/hr.po @@ -0,0 +1,32 @@ +# Croatian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:16+0000\n" +"PO-Revision-Date: 2011-12-08 15:09+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" +"Language-Team: Croatian <hr@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" + +#. module: wiki_faq +#: model:ir.module.module,description:wiki_faq.module_meta_information +msgid "" +"This module provides a wiki FAQ Template\n" +" " +msgstr "" +"Ovaj modul nudi obrazac za wiki često postavljana pitanja\n" +" " + +#. module: wiki_faq +#: model:ir.module.module,shortdesc:wiki_faq.module_meta_information +msgid "Document Management - Wiki - FAQ" +msgstr "Upravljanje dokumentima - Wiki - Često postavljanja pitanja" diff --git a/addons/wiki_quality_manual/i18n/hr.po b/addons/wiki_quality_manual/i18n/hr.po new file mode 100644 index 00000000000..bae2fb85d1e --- /dev/null +++ b/addons/wiki_quality_manual/i18n/hr.po @@ -0,0 +1,32 @@ +# Croatian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:16+0000\n" +"PO-Revision-Date: 2011-12-08 15:10+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" +"Language-Team: Croatian <hr@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" + +#. module: wiki_quality_manual +#: model:ir.module.module,description:wiki_quality_manual.module_meta_information +msgid "" +"Quality Manual Template\n" +" " +msgstr "" +"Predložak priručnika kvalitete\n" +" " + +#. module: wiki_quality_manual +#: model:ir.module.module,shortdesc:wiki_quality_manual.module_meta_information +msgid "Document Management - Wiki - Quality Manual" +msgstr "Upravljanje dokumentima - Wiki - Priručnik kvalitete" diff --git a/addons/wiki_sale_faq/i18n/hr.po b/addons/wiki_sale_faq/i18n/hr.po new file mode 100644 index 00000000000..9a534fa2941 --- /dev/null +++ b/addons/wiki_sale_faq/i18n/hr.po @@ -0,0 +1,81 @@ +# Croatian translation for openobject-addons +# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011 +# This file is distributed under the same license as the openobject-addons package. +# FIRST AUTHOR <EMAIL@ADDRESS>, 2011. +# +msgid "" +msgstr "" +"Project-Id-Version: openobject-addons\n" +"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n" +"POT-Creation-Date: 2011-01-11 11:16+0000\n" +"PO-Revision-Date: 2011-12-08 15:04+0000\n" +"Last-Translator: Tomislav Bosnjakovic <Unknown>\n" +"Language-Team: Croatian <hr@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=UTF-8\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Launchpad-Export-Date: 2011-12-09 04:46+0000\n" +"X-Generator: Launchpad (build 14450)\n" + +#. module: wiki_sale_faq +#: model:ir.actions.act_window,name:wiki_sale_faq.action_document_form +#: model:ir.ui.menu,name:wiki_sale_faq.menu_document_files +#: model:ir.ui.menu,name:wiki_sale_faq.menu_sales +msgid "Documents" +msgstr "Dokumenti" + +#. module: wiki_sale_faq +#: model:ir.actions.act_window,name:wiki_sale_faq.action_wiki_test +msgid "Wiki Pages" +msgstr "Wiki stranice" + +#. module: wiki_sale_faq +#: model:ir.ui.menu,name:wiki_sale_faq.menu_action_wiki_wiki +msgid "FAQ" +msgstr "Često postavljana pitanja" + +#. module: wiki_sale_faq +#: model:ir.module.module,description:wiki_sale_faq.module_meta_information +msgid "" +"This module provides a wiki FAQ Template\n" +" " +msgstr "" +"Ovaj modul nudi obrazac za wiki često postavljana pitanja\n" +" " + +#. module: wiki_sale_faq +#: model:ir.actions.act_window,help:wiki_sale_faq.action_wiki_test +msgid "" +"Wiki pages allow you to share ideas and questions with coworkers. You can " +"create a new document that can be linked to one or several applications " +"(specifications of a project, FAQ for sales teams, etc.). Keywords can be " +"used to easily tag wiki pages. You should use this application with the " +"OpenERP web client interface." +msgstr "" +"Wiki stranice dozvoljavaju razmjenu ideja i pitanja sa suradnicima. Možete " +"kreirati novi dokument kojeg je moguće povezati s jednom ili više aplikacija " +"(specifikacije projekata, često postavljana pitanja za prodajne timove, " +"itd.). Pomoću ključnih riječi može se lako istaknuti wiki stranice. Ovu " +"aplikaciju bi trebali koristiti kroz OpenERP web sučelje." + +#. module: wiki_sale_faq +#: model:ir.module.module,shortdesc:wiki_sale_faq.module_meta_information +msgid "Wiki -Sale - FAQ" +msgstr "Wiki-Prodaja-često postavljana pitanja" + +#. module: wiki_sale_faq +#: model:ir.actions.act_window,help:wiki_sale_faq.action_document_form +msgid "" +"Documents give you access to all files attached to any record. It is a " +"repository of all documents such as emails, project-related attachments or " +"any other documents. From this view, you can search through the content of " +"the documents. OpenERP automatically assign meta data based on the record " +"like the related partner and indexes the content of .DOC, .ODT, .TXT, .SXW " +"and .PDF documents." +msgstr "" +"Dokumenti vam daju pristup svih datotekama dodjeljenim bilo kojem zapisu. To " +"je repozitorij svih dokumenata poput el. poruka, privitaka vezanih uz neki " +"projekt, ili bilo koji drugi dokument. Iz ovog pregleda možete pretraživati " +"sadržaj dokumenata. OpenERP automatski dodjeljuje meta podatke bazirane na " +"zapisima poput povezanog partnera i indeksira sadržaj .DOC, .ODT, .TXT, .SXW " +"i .PDF dokumente." |
