[MERGE]: Merged with latest trunk-addons
bzr revid: rpa@tinyerp.com-20121130055252-9lu0qeabe2zcndcj
This commit is contained in:
commit
ca668a8acb
|
@ -73,7 +73,6 @@ for a particular financial year and for preparation of vouchers there is a modul
|
|||
'wizard/account_fiscalyear_close_state.xml',
|
||||
'wizard/account_chart_view.xml',
|
||||
'wizard/account_tax_chart_view.xml',
|
||||
'wizard/account_move_journal_view.xml',
|
||||
'wizard/account_move_line_reconcile_select_view.xml',
|
||||
'wizard/account_open_closed_fiscalyear_view.xml',
|
||||
'wizard/account_move_line_unreconcile_select_view.xml',
|
||||
|
@ -128,9 +127,11 @@ for a particular financial year and for preparation of vouchers there is a modul
|
|||
],
|
||||
'js': [
|
||||
'static/src/js/account_move_reconciliation.js',
|
||||
'static/src/js/account_move_line_quickadd.js',
|
||||
],
|
||||
'qweb' : [
|
||||
"static/src/xml/account_move_reconciliation.xml",
|
||||
"static/src/xml/account_move_line_quickadd.xml",
|
||||
],
|
||||
'css':['static/src/css/account_move_reconciliation.css'
|
||||
],
|
||||
|
|
|
@ -697,44 +697,6 @@ class account_account(osv.osv):
|
|||
|
||||
account_account()
|
||||
|
||||
class account_journal_view(osv.osv):
|
||||
_name = "account.journal.view"
|
||||
_description = "Journal View"
|
||||
_columns = {
|
||||
'name': fields.char('Journal View', size=64, required=True, translate=True),
|
||||
'columns_id': fields.one2many('account.journal.column', 'view_id', 'Columns')
|
||||
}
|
||||
_order = "name"
|
||||
|
||||
account_journal_view()
|
||||
|
||||
|
||||
class account_journal_column(osv.osv):
|
||||
|
||||
def _col_get(self, cr, user, context=None):
|
||||
result = []
|
||||
cols = self.pool.get('account.move.line')._columns
|
||||
for col in cols:
|
||||
if col in ('period_id', 'journal_id'):
|
||||
continue
|
||||
result.append( (col, cols[col].string) )
|
||||
result.sort()
|
||||
return result
|
||||
|
||||
_name = "account.journal.column"
|
||||
_description = "Journal Column"
|
||||
_columns = {
|
||||
'name': fields.char('Column Name', size=64, required=True),
|
||||
'field': fields.selection(_col_get, 'Field Name', required=True, size=32),
|
||||
'view_id': fields.many2one('account.journal.view', 'Journal View', select=True),
|
||||
'sequence': fields.integer('Sequence', help="Gives the sequence order to journal column.", readonly=True),
|
||||
'required': fields.boolean('Required'),
|
||||
'readonly': fields.boolean('Readonly'),
|
||||
}
|
||||
_order = "view_id, sequence"
|
||||
|
||||
account_journal_column()
|
||||
|
||||
class account_journal(osv.osv):
|
||||
_name = "account.journal"
|
||||
_description = "Journal"
|
||||
|
@ -750,7 +712,6 @@ class account_journal(osv.osv):
|
|||
" Select 'Opening/Closing Situation' for entries generated for new fiscal years."),
|
||||
'type_control_ids': fields.many2many('account.account.type', 'account_journal_type_rel', 'journal_id','type_id', 'Type Controls', domain=[('code','<>','view'), ('code', '<>', 'closed')]),
|
||||
'account_control_ids': fields.many2many('account.account', 'account_account_type_rel', 'journal_id','account_id', 'Account', domain=[('type','<>','view'), ('type', '<>', 'closed')]),
|
||||
'view_id': fields.many2one('account.journal.view', 'Display Mode', required=True, help="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."),
|
||||
'default_credit_account_id': fields.many2one('account.account', 'Default Credit Account', domain="[('type','!=','view')]", help="It acts as a default account for credit amount"),
|
||||
'default_debit_account_id': fields.many2one('account.account', 'Default Debit Account', domain="[('type','!=','view')]", help="It acts as a default account for debit amount"),
|
||||
'centralisation': fields.boolean('Centralised Counterpart', help="Check this box to determine that each entry of this journal won't create a new counterpart but will share the same counterpart. This is used in fiscal year closing."),
|
||||
|
@ -886,37 +847,6 @@ class account_journal(osv.osv):
|
|||
|
||||
return self.name_get(cr, user, ids, context=context)
|
||||
|
||||
def onchange_type(self, cr, uid, ids, type, currency, context=None):
|
||||
obj_data = self.pool.get('ir.model.data')
|
||||
user_pool = self.pool.get('res.users')
|
||||
|
||||
type_map = {
|
||||
'sale':'account_sp_journal_view',
|
||||
'sale_refund':'account_sp_refund_journal_view',
|
||||
'purchase':'account_sp_journal_view',
|
||||
'purchase_refund':'account_sp_refund_journal_view',
|
||||
'cash':'account_journal_bank_view',
|
||||
'bank':'account_journal_bank_view',
|
||||
'general':'account_journal_view',
|
||||
'situation':'account_journal_view'
|
||||
}
|
||||
|
||||
res = {}
|
||||
view_id = type_map.get(type, 'account_journal_view')
|
||||
user = user_pool.browse(cr, uid, uid)
|
||||
if type in ('cash', 'bank') and currency and user.company_id.currency_id.id != currency:
|
||||
view_id = 'account_journal_bank_view_multi'
|
||||
data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=',view_id)])
|
||||
data = obj_data.browse(cr, uid, data_id[0], context=context)
|
||||
|
||||
res.update({
|
||||
'centralisation':type == 'situation',
|
||||
'view_id':data.res_id,
|
||||
})
|
||||
return {
|
||||
'value':res
|
||||
}
|
||||
|
||||
account_journal()
|
||||
|
||||
class account_fiscalyear(osv.osv):
|
||||
|
@ -1396,13 +1326,6 @@ class account_move(osv.osv):
|
|||
'WHERE id IN %s', ('draft', tuple(ids),))
|
||||
return True
|
||||
|
||||
def onchange_line_id(self, cr, uid, ids, line_ids, context=None):
|
||||
balance = 0.0
|
||||
for line in line_ids:
|
||||
if line[2]:
|
||||
balance += (line[2].get('debit',0.00)- (line[2].get('credit',0.00)))
|
||||
return {'value': {'balance': balance}}
|
||||
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
if context is None:
|
||||
context = {}
|
||||
|
@ -3208,16 +3131,6 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
default_account = acc_template_ref.get(template.property_account_income_opening.id)
|
||||
return default_account
|
||||
|
||||
def _get_view_id(journal_type):
|
||||
# Get the journal views
|
||||
if journal_type in ('general', 'situation'):
|
||||
data = obj_data.get_object_reference(cr, uid, 'account', 'account_journal_view')
|
||||
elif journal_type in ('sale_refund', 'purchase_refund'):
|
||||
data = obj_data.get_object_reference(cr, uid, 'account', 'account_sp_refund_journal_view')
|
||||
else:
|
||||
data = obj_data.get_object_reference(cr, uid, 'account', 'account_sp_journal_view')
|
||||
return data and data[1] or False
|
||||
|
||||
journal_names = {
|
||||
'sale': _('Sales Journal'),
|
||||
'purchase': _('Purchase Journal'),
|
||||
|
@ -3247,7 +3160,6 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
'code': journal_codes[journal_type],
|
||||
'company_id': company_id,
|
||||
'centralisation': journal_type == 'situation',
|
||||
'view_id': _get_view_id(journal_type),
|
||||
'analytic_journal_id': _get_analytic_journal(journal_type),
|
||||
'default_credit_account_id': _get_default_account(journal_type, 'credit'),
|
||||
'default_debit_account_id': _get_default_account(journal_type, 'debit'),
|
||||
|
@ -3464,11 +3376,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
'''
|
||||
obj_data = self.pool.get('ir.model.data')
|
||||
obj_journal = self.pool.get('account.journal')
|
||||
# Get the id of journal views
|
||||
tmp = obj_data.get_object_reference(cr, uid, 'account', 'account_journal_bank_view_multi')
|
||||
view_id_cur = tmp and tmp[1] or False
|
||||
tmp = obj_data.get_object_reference(cr, uid, 'account', 'account_journal_bank_view')
|
||||
view_id_cash = tmp and tmp[1] or False
|
||||
|
||||
|
||||
# we need to loop again to find next number for journal code
|
||||
# because we can't rely on the value current_num as,
|
||||
|
@ -3494,10 +3402,8 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
'default_debit_account_id': default_account_id,
|
||||
}
|
||||
if line['currency_id']:
|
||||
vals['view_id'] = view_id_cur
|
||||
vals['currency'] = line['currency_id']
|
||||
else:
|
||||
vals['view_id'] = view_id_cash
|
||||
|
||||
return vals
|
||||
|
||||
def _prepare_bank_account(self, cr, uid, line, new_code, acc_template_ref, ref_acc_bank, company_id, context=None):
|
||||
|
|
|
@ -89,11 +89,6 @@ class bank(osv.osv):
|
|||
}
|
||||
acc_bank_id = obj_acc.create(cr,uid,acc,context=context)
|
||||
|
||||
# Get the journal view id
|
||||
data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_bank_view')])
|
||||
data = obj_data.browse(cr, uid, data_id[0], context=context)
|
||||
view_id_cash = data.res_id
|
||||
|
||||
jour_obj = self.pool.get('account.journal')
|
||||
new_code = 1
|
||||
while True:
|
||||
|
@ -112,7 +107,6 @@ class bank(osv.osv):
|
|||
'analytic_journal_id': False,
|
||||
'default_credit_account_id': acc_bank_id,
|
||||
'default_debit_account_id': acc_bank_id,
|
||||
'view_id': view_id_cash
|
||||
}
|
||||
journal_id = jour_obj.create(cr, uid, vals_journal, context=context)
|
||||
|
||||
|
|
|
@ -1381,8 +1381,8 @@ class account_invoice_line(osv.osv):
|
|||
'origin': fields.char('Source Document', size=256, help="Reference of the document that produced this invoice."),
|
||||
'sequence': fields.integer('Sequence', help="Gives the sequence of this line when displaying the invoice."),
|
||||
'invoice_id': fields.many2one('account.invoice', 'Invoice Reference', ondelete='cascade', select=True),
|
||||
'uos_id': fields.many2one('product.uom', 'Unit of Measure', ondelete='set null'),
|
||||
'product_id': fields.many2one('product.product', 'Product', ondelete='set null'),
|
||||
'uos_id': fields.many2one('product.uom', 'Unit of Measure', ondelete='set null', select=True),
|
||||
'product_id': fields.many2one('product.product', 'Product', ondelete='set null', select=True),
|
||||
'account_id': fields.many2one('account.account', 'Account', required=True, domain=[('type','<>','view'), ('type', '<>', 'closed')], help="The income or expense account related to the selected product."),
|
||||
'price_unit': fields.float('Unit Price', required=True, digits_compute= dp.get_precision('Product Price')),
|
||||
'price_subtotal': fields.function(_amount_line, string='Subtotal', type="float",
|
||||
|
|
|
@ -435,7 +435,7 @@
|
|||
</notebook>
|
||||
</sheet>
|
||||
<div class="oe_chatter">
|
||||
<field name="message_follower_ids" widget="mail_followers"/>
|
||||
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
|
||||
<field name="message_ids" widget="mail_thread" placeholder="Share a note..."/>
|
||||
</div>
|
||||
</form>
|
||||
|
|
|
@ -220,12 +220,11 @@ class account_move_line(osv.osv):
|
|||
return context
|
||||
|
||||
def _default_get(self, cr, uid, fields, context=None):
|
||||
#default_get should only do the following:
|
||||
# -propose the next amount in debit/credit in order to balance the move
|
||||
# -propose the next account from the journal (default debit/credit account) accordingly
|
||||
if context is None:
|
||||
context = {}
|
||||
if not context.get('journal_id', False):
|
||||
context['journal_id'] = context.get('search_default_journal_id')
|
||||
if not context.get('period_id', False):
|
||||
context['period_id'] = context.get('search_default_period_id')
|
||||
account_obj = self.pool.get('account.account')
|
||||
period_obj = self.pool.get('account.period')
|
||||
journal_obj = self.pool.get('account.journal')
|
||||
|
@ -234,134 +233,71 @@ class account_move_line(osv.osv):
|
|||
fiscal_pos_obj = self.pool.get('account.fiscal.position')
|
||||
partner_obj = self.pool.get('res.partner')
|
||||
currency_obj = self.pool.get('res.currency')
|
||||
|
||||
if not context.get('journal_id', False):
|
||||
context['journal_id'] = context.get('search_default_journal_id', False)
|
||||
if not context.get('period_id', False):
|
||||
context['period_id'] = context.get('search_default_period_id', False)
|
||||
context = self.convert_to_period(cr, uid, context)
|
||||
#pass the right context when search_defaul_journal_id
|
||||
if context.get('search_default_journal_id',False):
|
||||
context['journal_id'] = context.get('search_default_journal_id')
|
||||
|
||||
# Compute simple values
|
||||
data = super(account_move_line, self).default_get(cr, uid, fields, context=context)
|
||||
# Starts: Manual entry from account.move form
|
||||
if context.get('lines'):
|
||||
total_new = context.get('balance', 0.00)
|
||||
if context['journal']:
|
||||
journal_data = journal_obj.browse(cr, uid, context['journal'], context=context)
|
||||
if journal_data.type == 'purchase':
|
||||
if total_new > 0:
|
||||
account = journal_data.default_credit_account_id
|
||||
else:
|
||||
account = journal_data.default_debit_account_id
|
||||
else:
|
||||
if total_new > 0:
|
||||
account = journal_data.default_credit_account_id
|
||||
else:
|
||||
account = journal_data.default_debit_account_id
|
||||
if account and ((not fields) or ('debit' in fields) or ('credit' in fields)) and 'partner_id' in data and (data['partner_id']):
|
||||
part = partner_obj.browse(cr, uid, data['partner_id'], context=context)
|
||||
account = fiscal_pos_obj.map_account(cr, uid, part and part.property_account_position or False, account.id)
|
||||
account = account_obj.browse(cr, uid, account, context=context)
|
||||
data['account_id'] = account.id
|
||||
|
||||
s = -total_new
|
||||
data['debit'] = s > 0 and s or 0.0
|
||||
data['credit'] = s < 0 and -s or 0.0
|
||||
data = self._default_get_move_form_hook(cr, uid, data)
|
||||
return data
|
||||
# Ends: Manual entry from account.move form
|
||||
if not 'move_id' in fields: #we are not in manual entry
|
||||
return data
|
||||
# Compute the current move
|
||||
if context.get('journal_id'):
|
||||
total = 0.0
|
||||
#in account.move form view, it is not possible to compute total debit and credit using
|
||||
#a browse record. So we must use the context to pass the whole one2many field and compute the total
|
||||
if context.get('line_id'):
|
||||
for move_line_dict in move_obj.resolve_2many_commands(cr, uid, 'line_id', context.get('line_id'), context=context):
|
||||
data['name'] = data.get('name') or move_line_dict.get('name')
|
||||
data['partner_id'] = data.get('partner_id') or move_line_dict.get('partner_id')
|
||||
total += move_line_dict.get('debit', 0.0) - move_line_dict.get('credit', 0.0)
|
||||
elif context.get('period_id'):
|
||||
#find the date and the ID of the last unbalanced account.move encoded by the current user in that journal and period
|
||||
move_id = False
|
||||
partner_id = False
|
||||
if context.get('journal_id', False) and context.get('period_id', False):
|
||||
if 'move_id' in fields:
|
||||
cr.execute('SELECT move_id \
|
||||
FROM \
|
||||
account_move_line \
|
||||
WHERE \
|
||||
journal_id = %s and period_id = %s AND create_uid = %s AND state = %s \
|
||||
ORDER BY id DESC limit 1',
|
||||
(context['journal_id'], context['period_id'], uid, 'draft'))
|
||||
cr.execute('''SELECT move_id, date FROM account_move_line
|
||||
WHERE journal_id = %s AND period_id = %s AND create_uid = %s AND state = %s
|
||||
ORDER BY id DESC limit 1''', (context['journal_id'], context['period_id'], uid, 'draft'))
|
||||
res = cr.fetchone()
|
||||
move_id = (res and res[0]) or False
|
||||
if not move_id:
|
||||
return data
|
||||
else:
|
||||
move_id = res and res[0] or False
|
||||
data['date'] = res and res[1] or period_obj.browse(cr, uid, context['period_id'], context=context).date_start
|
||||
data['move_id'] = move_id
|
||||
if 'date' in fields:
|
||||
cr.execute('SELECT date \
|
||||
FROM \
|
||||
account_move_line \
|
||||
WHERE \
|
||||
journal_id = %s AND period_id = %s AND create_uid = %s \
|
||||
ORDER BY id DESC',
|
||||
(context['journal_id'], context['period_id'], uid))
|
||||
res = cr.fetchone()
|
||||
if res:
|
||||
data['date'] = res[0]
|
||||
else:
|
||||
period = period_obj.browse(cr, uid, context['period_id'],
|
||||
context=context)
|
||||
data['date'] = period.date_start
|
||||
if not move_id:
|
||||
return data
|
||||
total = 0
|
||||
ref_id = False
|
||||
if move_id:
|
||||
#if there exist some unbalanced accounting entries that match the journal and the period,
|
||||
#we propose to continue the same move by copying the ref, the name, the partner...
|
||||
move = move_obj.browse(cr, uid, move_id, context=context)
|
||||
if 'name' in fields:
|
||||
data.setdefault('name', move.line_id[-1].name)
|
||||
acc1 = False
|
||||
for l in move.line_id:
|
||||
acc1 = l.account_id
|
||||
partner_id = partner_id or l.partner_id.id
|
||||
ref_id = ref_id or l.ref
|
||||
data['partner_id'] = data.get('partner_id') or l.partner_id.id
|
||||
data['ref'] = data.get('ref') or l.ref
|
||||
total += (l.debit or 0.0) - (l.credit or 0.0)
|
||||
|
||||
if 'ref' in fields:
|
||||
data['ref'] = ref_id
|
||||
if 'partner_id' in fields:
|
||||
data['partner_id'] = partner_id
|
||||
|
||||
if move.journal_id.type == 'purchase':
|
||||
if total > 0:
|
||||
account = move.journal_id.default_credit_account_id
|
||||
else:
|
||||
account = move.journal_id.default_debit_account_id
|
||||
else:
|
||||
if total > 0:
|
||||
account = move.journal_id.default_credit_account_id
|
||||
else:
|
||||
account = move.journal_id.default_debit_account_id
|
||||
part = partner_id and partner_obj.browse(cr, uid, partner_id) or False
|
||||
# part = False is acceptable for fiscal position.
|
||||
#compute the total of current move
|
||||
data['debit'] = total < 0 and -total or 0.0
|
||||
data['credit'] = total > 0 and total or 0.0
|
||||
#pick the good account on the journal accordingly if the next proposed line will be a debit or a credit
|
||||
journal_data = journal_obj.browse(cr, uid, context['journal_id'], context=context)
|
||||
account = total > 0 and journal_data.default_credit_account_id or journal_data.default_debit_account_id
|
||||
#map the account using the fiscal position of the partner, if needed
|
||||
part = data.get('partner_id') and partner_obj.browse(cr, uid, data['partner_id'], context=context) or False
|
||||
if account and data.get('partner_id'):
|
||||
account = fiscal_pos_obj.map_account(cr, uid, part and part.property_account_position or False, account.id)
|
||||
if account:
|
||||
account = account_obj.browse(cr, uid, account, context=context)
|
||||
|
||||
if account and ((not fields) or ('debit' in fields) or ('credit' in fields)):
|
||||
data['account_id'] = account.id
|
||||
# Propose the price Tax excluded, the Tax will be added when confirming line
|
||||
if account.tax_ids:
|
||||
taxes = fiscal_pos_obj.map_tax(cr, uid, part and part.property_account_position or False, account.tax_ids)
|
||||
tax = tax_obj.browse(cr, uid, taxes)
|
||||
for t in tax_obj.compute_inv(cr, uid, tax, total, 1):
|
||||
total -= t['amount']
|
||||
|
||||
s = -total
|
||||
data['debit'] = s > 0 and s or 0.0
|
||||
data['credit'] = s < 0 and -s or 0.0
|
||||
|
||||
data['account_id'] = account and account.id or False
|
||||
#compute the amount in secondary currency of the account, if needed
|
||||
if account and account.currency_id:
|
||||
data['currency_id'] = account.currency_id.id
|
||||
acc = account
|
||||
if s>0:
|
||||
acc = acc1
|
||||
#set the context for the multi currency change
|
||||
compute_ctx = context.copy()
|
||||
compute_ctx.update({
|
||||
'res.currency.compute.account': acc,
|
||||
#the following 2 parameters are used to choose the currency rate, in case where the account
|
||||
#doesn't work with an outgoing currency rate method 'at date' but 'average'
|
||||
'res.currency.compute.account': account,
|
||||
'res.currency.compute.account_invert': True,
|
||||
})
|
||||
v = currency_obj.compute(cr, uid, account.company_id.currency_id.id, data['currency_id'], s, context=compute_ctx)
|
||||
data['amount_currency'] = v
|
||||
if data.get('date'):
|
||||
compute_ctx.update({'date': data['date']})
|
||||
data['amount_currency'] = currency_obj.compute(cr, uid, account.company_id.currency_id.id, data['currency_id'], -total, context=compute_ctx)
|
||||
data = self._default_get_move_form_hook(cr, uid, data)
|
||||
return data
|
||||
|
||||
def on_create_write(self, cr, uid, id, context=None):
|
||||
|
@ -484,6 +420,15 @@ class account_move_line(osv.osv):
|
|||
result.append(line.id)
|
||||
return result
|
||||
|
||||
def _get_reconcile(self, cr, uid, ids,name, unknow_none, context=None):
|
||||
res = dict.fromkeys(ids, False)
|
||||
for line in self.browse(cr, uid, ids, context=context):
|
||||
if line.reconcile_id:
|
||||
res[line.id] = str(line.reconcile_id.name)
|
||||
elif line.reconcile_partial_id:
|
||||
res[line.id] = str(line.reconcile_partial_id.name)
|
||||
return res
|
||||
|
||||
_columns = {
|
||||
'name': fields.char('Name', size=64, required=True),
|
||||
'quantity': fields.float('Quantity', digits=(16,2), help="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."),
|
||||
|
@ -498,15 +443,16 @@ class account_move_line(osv.osv):
|
|||
'statement_id': fields.many2one('account.bank.statement', 'Statement', help="The bank statement used for bank reconciliation", select=1),
|
||||
'reconcile_id': fields.many2one('account.move.reconcile', 'Reconcile', readonly=True, ondelete='set null', select=2),
|
||||
'reconcile_partial_id': fields.many2one('account.move.reconcile', 'Partial Reconcile', readonly=True, ondelete='set null', select=2),
|
||||
'reconcile': fields.function(_get_reconcile, type='char', string='Reconcile'),
|
||||
'amount_currency': fields.float('Amount Currency', help="The amount expressed in an optional other currency if it is a multi-currency entry.", digits_compute=dp.get_precision('Account')),
|
||||
'amount_residual_currency': fields.function(_amount_residual, string='Residual Amount', multi="residual", help="The residual amount on a receivable or payable of a journal entry expressed in its currency (maybe different of the company currency)."),
|
||||
'amount_residual': fields.function(_amount_residual, string='Residual Amount', multi="residual", help="The residual amount on a receivable or payable of a journal entry expressed in the company currency."),
|
||||
'currency_id': fields.many2one('res.currency', 'Currency', help="The optional other currency if it is a multi-currency entry."),
|
||||
'journal_id': fields.related('move_id', 'journal_id', string='Journal', type='many2one', relation='account.journal', required=True, select=True, readonly=True,
|
||||
'journal_id': fields.related('move_id', 'journal_id', string='Journal', type='many2one', relation='account.journal', required=True, select=True,
|
||||
store = {
|
||||
'account.move': (_get_move_lines, ['journal_id'], 20)
|
||||
}),
|
||||
'period_id': fields.related('move_id', 'period_id', string='Period', type='many2one', relation='account.period', required=True, select=True, readonly=True,
|
||||
'period_id': fields.related('move_id', 'period_id', string='Period', type='many2one', relation='account.period', required=True, select=True,
|
||||
store = {
|
||||
'account.move': (_get_move_lines, ['period_id'], 20)
|
||||
}),
|
||||
|
@ -537,7 +483,7 @@ class account_move_line(osv.osv):
|
|||
context or {}
|
||||
period_obj = self.pool.get('account.period')
|
||||
dt = time.strftime('%Y-%m-%d')
|
||||
if ('journal_id' in context) and ('period_id' in context):
|
||||
if context.get('journal_id') and context.get('period_id'):
|
||||
cr.execute('SELECT date FROM account_move_line ' \
|
||||
'WHERE journal_id = %s AND period_id = %s ' \
|
||||
'ORDER BY id DESC limit 1',
|
||||
|
@ -558,6 +504,38 @@ class account_move_line(osv.osv):
|
|||
cur = self.pool.get('account.journal').browse(cr, uid, context['journal_id']).currency
|
||||
return cur and cur.id or False
|
||||
|
||||
def _get_period(self, cr, uid, context=None):
|
||||
"""
|
||||
Return default account period value
|
||||
"""
|
||||
context = context or {}
|
||||
if context.get('period_id', False):
|
||||
return context['period_id']
|
||||
account_period_obj = self.pool.get('account.period')
|
||||
ids = account_period_obj.find(cr, uid, context=context)
|
||||
period_id = False
|
||||
if ids:
|
||||
period_id = ids[0]
|
||||
return period_id
|
||||
|
||||
def _get_journal(self, cr, uid, context=None):
|
||||
"""
|
||||
Return journal based on the journal type
|
||||
"""
|
||||
context = context or {}
|
||||
if context.get('journal_id', False):
|
||||
return context['journal_id']
|
||||
journal_id = False
|
||||
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
if context.get('journal_type', False):
|
||||
jids = journal_pool.search(cr, uid, [('type','=', context.get('journal_type'))])
|
||||
if not jids:
|
||||
raise osv.except_osv(_('Configuration Error!'), _('Cannot find any account journal of %s type for this company.\n\nYou can create one in the menu: \nConfiguration/Journals/Journals.') % context.get('journal_type'))
|
||||
journal_id = jids[0]
|
||||
return journal_id
|
||||
|
||||
|
||||
_defaults = {
|
||||
'blocked': False,
|
||||
'centralisation': 'normal',
|
||||
|
@ -565,12 +543,12 @@ class account_move_line(osv.osv):
|
|||
'date_created': fields.date.context_today,
|
||||
'state': 'draft',
|
||||
'currency_id': _get_currency,
|
||||
'journal_id': lambda self, cr, uid, c: c.get('journal_id', False),
|
||||
'journal_id': _get_journal,
|
||||
'credit': 0.0,
|
||||
'debit': 0.0,
|
||||
'amount_currency': 0.0,
|
||||
'account_id': lambda self, cr, uid, c: c.get('account_id', False),
|
||||
'period_id': lambda self, cr, uid, c: c.get('period_id', False),
|
||||
'period_id': _get_period,
|
||||
'company_id': lambda self, cr, uid, c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.move.line', context=c)
|
||||
}
|
||||
_order = "date desc, id desc"
|
||||
|
@ -675,6 +653,12 @@ class account_move_line(osv.osv):
|
|||
}
|
||||
return result
|
||||
|
||||
def onchange_account_id(self, cr, uid, ids, account_id, context=None):
|
||||
res = {'value': {}}
|
||||
if account_id:
|
||||
res['value']['account_tax_id'] = [x.id for x in self.pool.get('account.account').browse(cr, uid, account_id, context=context).tax_ids]
|
||||
return res
|
||||
|
||||
def onchange_partner_id(self, cr, uid, ids, move_id, partner_id, account_id=None, debit=0, credit=0, date=False, journal=False):
|
||||
partner_obj = self.pool.get('res.partner')
|
||||
payment_term_obj = self.pool.get('account.payment.term')
|
||||
|
@ -999,127 +983,6 @@ class account_move_line(osv.osv):
|
|||
'context':context,
|
||||
}
|
||||
|
||||
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
if context is None:
|
||||
context = {}
|
||||
result = super(account_move_line, self).fields_view_get(cr, uid, view_id, view_type, context=context, toolbar=toolbar, submenu=submenu)
|
||||
if (view_type != 'tree') or view_id:
|
||||
#Remove the toolbar from the form view
|
||||
if view_type == 'form':
|
||||
if result.get('toolbar', False):
|
||||
result['toolbar']['action'] = []
|
||||
#Restrict the list of journal view in search view
|
||||
if view_type == 'search' and result['fields'].get('journal_id', False):
|
||||
result['fields']['journal_id']['selection'] = journal_pool.name_search(cr, uid, '', [], context=context)
|
||||
ctx = context.copy()
|
||||
#we add the refunds journal in the selection field of journal
|
||||
if context.get('journal_type', False) == 'sale':
|
||||
ctx.update({'journal_type': 'sale_refund'})
|
||||
result['fields']['journal_id']['selection'] += journal_pool.name_search(cr, uid, '', [], context=ctx)
|
||||
elif context.get('journal_type', False) == 'purchase':
|
||||
ctx.update({'journal_type': 'purchase_refund'})
|
||||
result['fields']['journal_id']['selection'] += journal_pool.name_search(cr, uid, '', [], context=ctx)
|
||||
return result
|
||||
if context.get('view_mode', False):
|
||||
return result
|
||||
fld = []
|
||||
flds = []
|
||||
title = _("Accounting Entries") # self.view_header_get(cr, uid, view_id, view_type, context)
|
||||
|
||||
ids = journal_pool.search(cr, uid, [], context=context)
|
||||
journals = journal_pool.browse(cr, uid, ids, context=context)
|
||||
for journal in journals:
|
||||
for field in journal.view_id.columns_id:
|
||||
# sometimes, it's possible that a defined column is not loaded (the module containing
|
||||
# this field is not loaded) when we make an update.
|
||||
if field.field not in self._columns:
|
||||
continue
|
||||
|
||||
if not field.field in flds:
|
||||
fld.append((field.field, field.sequence))
|
||||
flds.append(field.field)
|
||||
|
||||
default_columns = {
|
||||
'period_id': 3,
|
||||
'journal_id': 10,
|
||||
'state': sys.maxint,
|
||||
}
|
||||
for d in default_columns:
|
||||
if d not in flds:
|
||||
fld.append((d, default_columns[d]))
|
||||
flds.append(d)
|
||||
|
||||
fld = sorted(fld, key=itemgetter(1))
|
||||
widths = {
|
||||
'statement_id': 50,
|
||||
'state': 60,
|
||||
'tax_code_id': 50,
|
||||
'move_id': 40,
|
||||
}
|
||||
|
||||
document = etree.Element('tree', string=title, editable="top",
|
||||
on_write="on_create_write",
|
||||
colors="red:state=='draft';black:state=='valid'")
|
||||
fields_get = self.fields_get(cr, uid, flds, context)
|
||||
for field, _seq in fld:
|
||||
# TODO add string to element
|
||||
f = etree.SubElement(document, 'field', name=field)
|
||||
|
||||
if field == 'debit':
|
||||
f.set('sum', _("Total debit"))
|
||||
|
||||
elif field == 'credit':
|
||||
f.set('sum', _("Total credit"))
|
||||
|
||||
elif field == 'move_id':
|
||||
f.set('required', 'False')
|
||||
|
||||
elif field == 'account_tax_id':
|
||||
f.set('domain', "[('parent_id', '=' ,False)]")
|
||||
f.set('context', "{'journal_id': journal_id}")
|
||||
|
||||
elif field == 'account_id' and journal.id:
|
||||
f.set('domain', "[('journal_id', '=', journal_id),('type','!=','view'), ('type','!=','closed')]")
|
||||
f.set('on_change', 'onchange_account_id(account_id, partner_id)')
|
||||
|
||||
elif field == 'partner_id':
|
||||
f.set('on_change', 'onchange_partner_id(move_id, partner_id, account_id, debit, credit, date, journal_id)')
|
||||
|
||||
elif field == 'journal_id':
|
||||
f.set('context', "{'journal_id': journal_id}")
|
||||
|
||||
elif field == 'statement_id':
|
||||
f.set('domain', "[('state', '!=', 'confirm'),('journal_id.type', '=', 'bank')]")
|
||||
f.set('invisible', 'True')
|
||||
|
||||
elif field == 'date':
|
||||
f.set('on_change', 'onchange_date(date)')
|
||||
|
||||
elif field == 'analytic_account_id':
|
||||
# Currently it is not working due to being executed by superclass's fields_view_get
|
||||
# f.set('groups', 'analytic.group_analytic_accounting')
|
||||
pass
|
||||
|
||||
if field in ('amount_currency', 'currency_id'):
|
||||
f.set('on_change', 'onchange_currency(account_id, amount_currency, currency_id, date, journal_id)')
|
||||
f.set('attrs', "{'readonly': [('state', '=', 'valid')]}")
|
||||
|
||||
if field in widths:
|
||||
f.set('width', str(widths[field]))
|
||||
|
||||
if field in ('journal_id',):
|
||||
f.set("invisible", "context.get('journal_id', False)")
|
||||
elif field in ('period_id',):
|
||||
f.set("invisible", "context.get('period_id', False)")
|
||||
|
||||
orm.setup_modifiers(f, fields_get[field], context=context,
|
||||
in_tree_view=True)
|
||||
|
||||
result['arch'] = etree.tostring(document, pretty_print=True)
|
||||
result['fields'] = fields_get
|
||||
return result
|
||||
|
||||
def _check_moves(self, cr, uid, context=None):
|
||||
# use the first move ever created for this journal and period
|
||||
if context is None:
|
||||
|
@ -1414,6 +1277,19 @@ class account_move_line(osv.osv):
|
|||
move_obj.button_validate(cr,uid, [vals['move_id']], context)
|
||||
return result
|
||||
|
||||
def list_periods(self, cr, uid, context=None):
|
||||
ids = self.pool.get('account.period').search(cr,uid,[])
|
||||
return self.pool.get('account.period').name_get(cr, uid, ids, context=context)
|
||||
|
||||
def list_journals(self, cr, uid, context=None):
|
||||
ng = dict(self.pool.get('account.journal').name_search(cr,uid,'',[]))
|
||||
ids = ng.keys()
|
||||
result = []
|
||||
for journal in self.pool.get('account.journal').browse(cr, uid, ids, context=context):
|
||||
result.append((journal.id,ng[journal.id],journal.type,
|
||||
bool(journal.currency),bool(journal.analytic_journal_id)))
|
||||
return result
|
||||
|
||||
account_move_line()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -59,412 +59,6 @@
|
|||
<field eval="account_payment_term_advance" name="payment_id"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Account Journal View
|
||||
-->
|
||||
<record id="account_journal_bank_view" model="account.journal.view">
|
||||
<field name="name">Bank/Cash Journal View</field>
|
||||
</record>
|
||||
<record id="bank_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="3" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col2" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<field eval="1" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col7" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Name</field>
|
||||
<field name="field">name</field>
|
||||
<field eval="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="bank_col4" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Statement</field>
|
||||
<field name="field">statement_id</field>
|
||||
<field eval="4" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col6" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Partner</field>
|
||||
<field name="field">partner_id</field>
|
||||
<field eval="5" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col5" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Account</field>
|
||||
<field name="field">account_id</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="6" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col9" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col10" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Ref</field>
|
||||
<field name="field">ref</field>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col23" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col20" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="name">Reconcile</field>
|
||||
<field name="field">reconcile_id</field>
|
||||
<field eval="20" name="sequence"/>
|
||||
</record>
|
||||
|
||||
|
||||
<record id="account_journal_bank_view_multi" model="account.journal.view">
|
||||
<field name="name">Bank/Cash Journal (Multi-Currency) View</field>
|
||||
</record>
|
||||
<record id="bank_col1_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="3" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col2_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<field eval="1" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col7_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Name</field>
|
||||
<field name="field">name</field>
|
||||
<field eval="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="bank_col4_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Statement</field>
|
||||
<field name="field">statement_id</field>
|
||||
<field eval="4" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col6_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Partner</field>
|
||||
<field name="field">partner_id</field>
|
||||
<field eval="5" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col5_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Account</field>
|
||||
<field name="field">account_id</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="6" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col17_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Currency Amt.</field>
|
||||
<field name="field">amount_currency</field>
|
||||
<field eval="9" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col18_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Currency</field>
|
||||
<field name="field">currency_id</field>
|
||||
<field eval="10" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col9_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col10_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col3_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Ref</field>
|
||||
<field name="field">ref</field>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col23_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
<record id="bank_col20_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_bank_view_multi"/>
|
||||
<field name="name">Reconcile</field>
|
||||
<field name="field">reconcile_id</field>
|
||||
<field eval="20" name="sequence"/>
|
||||
</record>
|
||||
|
||||
|
||||
<record id="account_journal_view" model="account.journal.view">
|
||||
<field name="name">Journal View</field>
|
||||
</record>
|
||||
<record id="journal_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="3" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col2" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<field eval="1" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Ref</field>
|
||||
<field name="field">ref</field>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col5" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Partner</field>
|
||||
<field name="field">partner_id</field>
|
||||
<field eval="5" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col4" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Account</field>
|
||||
<field name="field">account_id</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="6" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col6" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Name</field>
|
||||
<field name="field">name</field>
|
||||
<field eval="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="journal_col8" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col9" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col11" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Analytic Account</field>
|
||||
<field name="field">analytic_account_id</field>
|
||||
<field eval="14" name="sequence"/>
|
||||
</record>
|
||||
<record id="journal_col24" model="account.journal.column">
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
|
||||
|
||||
<record id="account_sp_journal_view" model="account.journal.view">
|
||||
<field name="name">Sale/Purchase Journal View</field>
|
||||
</record>
|
||||
<record id="sp_journal_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="3" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col2" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<field eval="1" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Ref</field>
|
||||
<field name="field">ref</field>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col4" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Account</field>
|
||||
<field name="field">account_id</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="6" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col5" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Partner</field>
|
||||
<field name="field">partner_id</field>
|
||||
<field eval="5" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col6" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Name</field>
|
||||
<field name="field">name</field>
|
||||
<field eval="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="sp_journal_col7" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Due Date</field>
|
||||
<field name="field">date_maturity</field>
|
||||
<field eval="8" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col8" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col9" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col10" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Tax</field>
|
||||
<field name="field">account_tax_id</field>
|
||||
<field eval="13" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col11" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Analytic Account</field>
|
||||
<field name="field">analytic_account_id</field>
|
||||
<field eval="14" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col24" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_journal_col20" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="name">Reconcile</field>
|
||||
<field name="field">reconcile_id</field>
|
||||
<field eval="20" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="account_sp_refund_journal_view" model="account.journal.view">
|
||||
<field name="name">Sale/Purchase Refund Journal View</field>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Date</field>
|
||||
<field name="field">date</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="3" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col2" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Journal Entry</field>
|
||||
<field name="field">move_id</field>
|
||||
<field eval="False" name="required"/>
|
||||
<field eval="1" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Ref</field>
|
||||
<field name="field">ref</field>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col4" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Account</field>
|
||||
<field name="field">account_id</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="6" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col5" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Partner</field>
|
||||
<field name="field">partner_id</field>
|
||||
<field eval="5" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col6" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Name</field>
|
||||
<field name="field">name</field>
|
||||
<field eval="7" name="sequence"/>
|
||||
<field eval="True" name="required"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col7" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Due Date</field>
|
||||
<field name="field">date_maturity</field>
|
||||
<field eval="8" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col8" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Debit</field>
|
||||
<field name="field">debit</field>
|
||||
<field eval="11" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col9" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Credit</field>
|
||||
<field name="field">credit</field>
|
||||
<field eval="12" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col10" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Tax</field>
|
||||
<field name="field">account_tax_id</field>
|
||||
<field eval="13" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col11" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Analytic Account</field>
|
||||
<field name="field">analytic_account_id</field>
|
||||
<field eval="14" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col24" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Status</field>
|
||||
<field name="field">state</field>
|
||||
<field eval="19" name="sequence"/>
|
||||
</record>
|
||||
<record id="sp_refund_journal_col20" model="account.journal.column">
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="name">Reconcile</field>
|
||||
<field name="field">reconcile_id</field>
|
||||
<field eval="20" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Account Journal Sequences
|
||||
-->
|
||||
|
|
|
@ -312,7 +312,6 @@
|
|||
<field name="name">Sales Journal - (test)</field>
|
||||
<field name="code">TSAJ</field>
|
||||
<field name="type">sale</field>
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_sale_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="a_sale"/>
|
||||
|
@ -323,7 +322,6 @@
|
|||
<field name="name">Sales Credit Note Journal - (test)</field>
|
||||
<field name="code">TSCNJ</field>
|
||||
<field name="type">sale_refund</field>
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_refund_sales_journal"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="a_sale"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="a_sale"/>
|
||||
|
@ -335,7 +333,6 @@
|
|||
<field name="name">Expenses Journal - (test)</field>
|
||||
<field name="code">TEXJ</field>
|
||||
<field name="type">purchase</field>
|
||||
<field name="view_id" ref="account_sp_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="a_expense"/>
|
||||
|
@ -346,7 +343,6 @@
|
|||
<field name="name">Expenses Credit Notes Journal - (test)</field>
|
||||
<field name="code">TECNJ</field>
|
||||
<field name="type">purchase_refund</field>
|
||||
<field name="view_id" ref="account_sp_refund_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_refund_purchase_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="a_expense"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="a_expense"/>
|
||||
|
@ -358,7 +354,6 @@
|
|||
<field name="name">Bank Journal - (test)</field>
|
||||
<field name="code">TBNK</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="sequence_bank_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="bnk"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="bnk"/>
|
||||
|
@ -369,7 +364,6 @@
|
|||
<field name="name">Checks Journal - (test)</field>
|
||||
<field name="code">TCHK</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="sequence_check_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="cash"/>
|
||||
|
@ -390,7 +384,6 @@
|
|||
that test OpenERP arrive directly in the touchscreen UI.
|
||||
-->
|
||||
<field name="cash_control" eval="False"/>
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field name="sequence_id" ref="sequence_cash_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="cash"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="cash"/>
|
||||
|
@ -401,7 +394,6 @@
|
|||
<field name="name">Miscellaneous Journal - (test)</field>
|
||||
<field name="code">TMIS</field>
|
||||
<field name="type">general</field>
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_miscellaneous_journal"/>
|
||||
<field name="analytic_journal_id" ref="sit"/>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
|
@ -410,7 +402,6 @@
|
|||
<field name="name">Opening Entries Journal - (test)</field>
|
||||
<field name="code">TOEJ</field>
|
||||
<field name="type">situation</field>
|
||||
<field name="view_id" ref="account_journal_view"/>
|
||||
<field name="sequence_id" ref="sequence_opening_journal"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="o_income"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="o_expense"/>
|
||||
|
@ -422,7 +413,6 @@
|
|||
<field name="name">USD Bank Journal - (test)</field>
|
||||
<field name="code">TUBK</field>
|
||||
<field name="type">bank</field>
|
||||
<field name="view_id" ref="account_journal_bank_view"/>
|
||||
<field model="account.account" name="default_debit_account_id" ref="usd_bnk"/>
|
||||
<field model="account.account" name="default_credit_account_id" ref="usd_bnk"/>
|
||||
<field name="currency" ref="base.USD"/>
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-25 23:52+0000\n"
|
||||
"Last-Translator: Sergio Corato <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-11-28 19:42+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: 2012-11-27 05:24+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,name:account.process_transition_supplierreconcilepaid0
|
||||
|
@ -26,6 +26,7 @@ msgstr "Sistema di pagamento"
|
|||
msgid ""
|
||||
"An account fiscal position could be defined only once time on same accounts."
|
||||
msgstr ""
|
||||
"Una posizione fiscale può essere definita una sola volta per lo stesso conto."
|
||||
|
||||
#. module: account
|
||||
#: view:account.unreconcile:0
|
||||
|
@ -85,7 +86,7 @@ msgstr "Importa da fatture o pagamenti"
|
|||
#: code:addons/account/account_move_line.py:1303
|
||||
#, python-format
|
||||
msgid "Bad Account!"
|
||||
msgstr ""
|
||||
msgstr "Conto Errato!"
|
||||
|
||||
#. module: account
|
||||
#: view:account.move:0
|
||||
|
@ -242,7 +243,7 @@ msgstr "Sezionale: %s"
|
|||
#. module: account
|
||||
#: help:account.config.settings,code_digits:0
|
||||
msgid "No. of digits to use for account code"
|
||||
msgstr ""
|
||||
msgstr "N. di cifre da usare per il codice conto"
|
||||
|
||||
#. module: account
|
||||
#: help:account.analytic.journal,type:0
|
||||
|
@ -394,7 +395,7 @@ msgstr "Annulla Riconciliazione"
|
|||
#. module: account
|
||||
#: field:account.config.settings,module_account_budget:0
|
||||
msgid "Budget management"
|
||||
msgstr ""
|
||||
msgstr "Gestione Budget"
|
||||
|
||||
#. module: account
|
||||
#: view:product.template:0
|
||||
|
@ -416,7 +417,7 @@ msgstr ""
|
|||
#. module: account
|
||||
#: field:account.config.settings,group_multi_currency:0
|
||||
msgid "Allow multi currencies"
|
||||
msgstr ""
|
||||
msgstr "Consenti valute multiple"
|
||||
|
||||
#. module: account
|
||||
#: code:addons/account/account_invoice.py:73
|
||||
|
@ -437,12 +438,12 @@ msgstr "Giugno"
|
|||
#: code:addons/account/wizard/account_automatic_reconcile.py:148
|
||||
#, python-format
|
||||
msgid "You must select accounts to reconcile."
|
||||
msgstr ""
|
||||
msgstr "Devi selezionare i conti da riconciliare."
|
||||
|
||||
#. module: account
|
||||
#: help:account.config.settings,group_analytic_accounting:0
|
||||
msgid "Allows you to use the analytic accounting."
|
||||
msgstr ""
|
||||
msgstr "Abilita la contabilità analitica."
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,help:account.action_account_moves_bank
|
||||
|
@ -462,7 +463,7 @@ msgstr ""
|
|||
#: view:account.invoice.report:0
|
||||
#: field:account.invoice.report,user_id:0
|
||||
msgid "Salesperson"
|
||||
msgstr ""
|
||||
msgstr "Commerciale"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_tax_template
|
||||
|
@ -685,12 +686,12 @@ msgstr "Il contabile conferma la registrazione"
|
|||
#: code:addons/account/static/src/xml/account_move_reconciliation.xml:31
|
||||
#, python-format
|
||||
msgid "Nothing to reconcile"
|
||||
msgstr ""
|
||||
msgstr "Nulla da riconciliare"
|
||||
|
||||
#. module: account
|
||||
#: field:account.config.settings,decimal_precision:0
|
||||
msgid "Decimal precision on journal entries"
|
||||
msgstr ""
|
||||
msgstr "Accuratezza decimale nelle registrazioni sezionale"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.config.settings,period:0
|
||||
|
@ -725,6 +726,8 @@ msgid ""
|
|||
"Specified journal does not have any account move entries in draft state for "
|
||||
"this period."
|
||||
msgstr ""
|
||||
"Il sezionale specificato non ha registrazioni in stato bozza per questo "
|
||||
"periodo."
|
||||
|
||||
#. module: account
|
||||
#: view:account.fiscal.position:0
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-27 20:06+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 13:31+0000\n"
|
||||
"Last-Translator: Kaare Pettersen <Unknown>\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: 2012-11-28 04:40+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,name:account.process_transition_supplierreconcilepaid0
|
||||
|
@ -5220,7 +5220,7 @@ msgstr "Fakturaer"
|
|||
#. module: account
|
||||
#: help:account.config.settings,expects_chart_of_accounts:0
|
||||
msgid "Check this box if this company is a legal entity."
|
||||
msgstr ""
|
||||
msgstr "Kryss av denne boksen hvis dette selskapet er en juridisk enhet."
|
||||
|
||||
#. module: account
|
||||
#: model:account.account.type,name:account.conf_account_type_chk
|
||||
|
@ -5453,7 +5453,7 @@ msgstr ""
|
|||
#. module: account
|
||||
#: model:res.groups,name:account.group_account_manager
|
||||
msgid "Financial Manager"
|
||||
msgstr ""
|
||||
msgstr "Finansiell ledelse."
|
||||
|
||||
#. module: account
|
||||
#: field:account.journal,group_invoice_lines:0
|
||||
|
@ -5469,7 +5469,7 @@ msgstr "Bevegelser"
|
|||
#: field:account.bank.statement,details_ids:0
|
||||
#: view:account.journal:0
|
||||
msgid "CashBox Lines"
|
||||
msgstr ""
|
||||
msgstr "Kontontboks linjer."
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_vat_declaration
|
||||
|
@ -5515,6 +5515,8 @@ msgid ""
|
|||
"There is no period defined for this date: %s.\n"
|
||||
"Please create one."
|
||||
msgstr ""
|
||||
"Det er ingen periode definert for denne datoen:% s.\n"
|
||||
"Vennligst opprette en."
|
||||
|
||||
#. module: account
|
||||
#: help:account.tax,price_include:0
|
||||
|
@ -5616,7 +5618,7 @@ msgstr ""
|
|||
#: code:addons/account/account_invoice.py:1326
|
||||
#, python-format
|
||||
msgid "%s <b>paid</b>."
|
||||
msgstr ""
|
||||
msgstr "%s <b>Betalt</b>."
|
||||
|
||||
#. module: account
|
||||
#: view:account.financial.report:0
|
||||
|
@ -5759,7 +5761,7 @@ msgstr "Beregningskode (dersom type=kode)"
|
|||
#, python-format
|
||||
msgid ""
|
||||
"Cannot find a chart of accounts for this company, you should create one."
|
||||
msgstr ""
|
||||
msgstr "Kan ikke finne en kontoplan for dette selskapet, du bør opprette en."
|
||||
|
||||
#. module: account
|
||||
#: selection:account.analytic.journal,type:0
|
||||
|
@ -5894,7 +5896,7 @@ msgstr "Inkludert i basisbeløpet"
|
|||
#. module: account
|
||||
#: field:account.invoice,supplier_invoice_number:0
|
||||
msgid "Supplier Invoice Number"
|
||||
msgstr ""
|
||||
msgstr "Leverandør faktura nummer."
|
||||
|
||||
#. module: account
|
||||
#: help:account.payment.term.line,days:0
|
||||
|
@ -5915,6 +5917,8 @@ msgstr "Beregning"
|
|||
#, python-format
|
||||
msgid "You can not add/modify entries in a closed period %s of journal %s."
|
||||
msgstr ""
|
||||
"Du kan ikke legge til / endre oppføringer i en lukket periode% s av "
|
||||
"tidsskriftet% s."
|
||||
|
||||
#. module: account
|
||||
#: view:account.journal:0
|
||||
|
@ -5939,7 +5943,7 @@ msgstr "Periodestart"
|
|||
#. module: account
|
||||
#: model:account.account.type,name:account.account_type_asset_view1
|
||||
msgid "Asset View"
|
||||
msgstr ""
|
||||
msgstr "Eiendel Vis."
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_common_account_report
|
||||
|
@ -6012,12 +6016,12 @@ msgstr "Årsavslutningsjournal"
|
|||
#. module: account
|
||||
#: view:account.invoice:0
|
||||
msgid "Draft Refund "
|
||||
msgstr ""
|
||||
msgstr "Utkast refusjon. "
|
||||
|
||||
#. module: account
|
||||
#: view:cash.box.in:0
|
||||
msgid "Fill in this form if you put money in the cash register:"
|
||||
msgstr ""
|
||||
msgstr "Fyll ut dette skjemaet hvis du setter penger i kasse apparatet:"
|
||||
|
||||
#. module: account
|
||||
#: field:account.payment.term.line,value_amount:0
|
||||
|
@ -6094,7 +6098,7 @@ msgstr "Kundefakturaer og kreditnotaer"
|
|||
#: code:addons/account/wizard/account_move_journal.py:161
|
||||
#, python-format
|
||||
msgid "This period is already closed."
|
||||
msgstr ""
|
||||
msgstr "Denne perioden er allerede lukket."
|
||||
|
||||
#. module: account
|
||||
#: field:account.analytic.line,amount_currency:0
|
||||
|
@ -6107,7 +6111,7 @@ msgstr "Valutabeløp"
|
|||
#. module: account
|
||||
#: selection:res.company,tax_calculation_rounding_method:0
|
||||
msgid "Round per Line"
|
||||
msgstr ""
|
||||
msgstr "Runde per. linje."
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_view_move_line
|
||||
|
@ -6168,7 +6172,7 @@ msgstr ""
|
|||
#: code:addons/account/wizard/account_report_aged_partner_balance.py:56
|
||||
#, python-format
|
||||
msgid "You must set a period length greater than 0."
|
||||
msgstr ""
|
||||
msgstr "Du må angi en periode lengde større enn 0."
|
||||
|
||||
#. module: account
|
||||
#: view:account.fiscal.position.template:0
|
||||
|
@ -6179,7 +6183,7 @@ msgstr "Regnskapsstatus Mal"
|
|||
#. module: account
|
||||
#: view:account.invoice:0
|
||||
msgid "Draft Refund"
|
||||
msgstr ""
|
||||
msgstr "Utkast refusjon."
|
||||
|
||||
#. module: account
|
||||
#: view:account.analytic.chart:0
|
||||
|
@ -6216,7 +6220,7 @@ msgstr "Avstem med nedskriving"
|
|||
#. module: account
|
||||
#: constraint:account.move.line:0
|
||||
msgid "You cannot create journal items on an account of type view."
|
||||
msgstr ""
|
||||
msgstr "Du kan ikke opprette journal elementer på en konto av typen visning."
|
||||
|
||||
#. module: account
|
||||
#: selection:account.payment.term.line,value:0
|
||||
|
@ -6291,7 +6295,7 @@ msgstr "Flytt navn (id): %s (%s)"
|
|||
#. module: account
|
||||
#: view:account.move.journal:0
|
||||
msgid "Standard Entries"
|
||||
msgstr ""
|
||||
msgstr "Standard oppføringer."
|
||||
|
||||
#. module: account
|
||||
#: view:account.move.line.reconcile:0
|
||||
|
@ -6364,7 +6368,7 @@ msgstr "Avgiftskartlegging"
|
|||
#. module: account
|
||||
#: view:account.config.settings:0
|
||||
msgid "Select Company"
|
||||
msgstr ""
|
||||
msgstr "Velg Firma."
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_account_state_open
|
||||
|
@ -6438,7 +6442,7 @@ msgstr "Antall linjer"
|
|||
#. module: account
|
||||
#: view:account.invoice:0
|
||||
msgid "(update)"
|
||||
msgstr ""
|
||||
msgstr "(Oppdatering)"
|
||||
|
||||
#. module: account
|
||||
#: field:account.aged.trial.balance,filter:0
|
||||
|
@ -6480,7 +6484,7 @@ msgstr ""
|
|||
#. module: account
|
||||
#: field:account.journal,loss_account_id:0
|
||||
msgid "Loss Account"
|
||||
msgstr ""
|
||||
msgstr "Tap konto."
|
||||
|
||||
#. module: account
|
||||
#: field:account.tax,account_collected_id:0
|
||||
|
@ -6742,7 +6746,7 @@ msgstr ""
|
|||
#. module: account
|
||||
#: view:account.config.settings:0
|
||||
msgid "Bank & Cash"
|
||||
msgstr ""
|
||||
msgstr "Bank og kontant."
|
||||
|
||||
#. module: account
|
||||
#: help:account.fiscalyear.close.state,fy_id:0
|
||||
|
@ -6828,7 +6832,7 @@ msgstr "Fordring"
|
|||
#. module: account
|
||||
#: constraint:account.move.line:0
|
||||
msgid "You cannot create journal items on closed account."
|
||||
msgstr ""
|
||||
msgstr "Du kan ikke opprette journal enmer i en lukker konto."
|
||||
|
||||
#. module: account
|
||||
#: code:addons/account/account_invoice.py:594
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-25 13:43+0000\n"
|
||||
"Last-Translator: Erwin van der Ploeg (Endian Solutions) <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-11-28 21:53+0000\n"
|
||||
"Last-Translator: Thomas Pot (Open2bizz) <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: 2012-11-26 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Integrity Error !"
|
||||
|
@ -155,6 +155,19 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p class=\"oe_view_nocontent_create\">\n"
|
||||
" Klik om de zichtbare kolommen van een dagboek te "
|
||||
"specificeren.\n"
|
||||
" </p><p>\n"
|
||||
" Dagboekweergaves bepalen de manier waarop boekingen \n"
|
||||
" ingevoerd kunnen worden. Selecteer de velden welke zichtbaar "
|
||||
"\n"
|
||||
" moeten zijn en bepaald de volgorde daarvan.\n"
|
||||
" </p><p>\n"
|
||||
" In de dagboekinstellingen kan bepaald worden welke gegevens\n"
|
||||
" zichtbaar zijn bij boekingen in het betreffende dagboek.\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: account
|
||||
#: help:account.payment.term,active:0
|
||||
|
@ -205,6 +218,8 @@ msgid ""
|
|||
"which is set after generating opening entries from 'Generate Opening "
|
||||
"Entries'."
|
||||
msgstr ""
|
||||
"U dient het 'Jaarafsluiting dagboek' te definiëren voor het fiscale jaar, "
|
||||
"nadat u een openingsbalans heeft gemaakt"
|
||||
|
||||
#. module: account
|
||||
#: field:account.fiscal.position.account,account_src_id:0
|
||||
|
@ -223,6 +238,15 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p class=\"oe_view_nocontent_create\">\n"
|
||||
" klik hier om een fiscale periode toe te voegen.\n"
|
||||
" </p><p>\n"
|
||||
" Een fiscale periode is vaak een maand of een kwartaal. "
|
||||
"Normaal\n"
|
||||
" zal dit gelijk zijn met de periode van uw Belasting "
|
||||
"aangifte.\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_view_created_invoice_dashboard
|
||||
|
@ -243,7 +267,7 @@ msgstr "Dagboek: %s"
|
|||
#. module: account
|
||||
#: help:account.config.settings,code_digits:0
|
||||
msgid "No. of digits to use for account code"
|
||||
msgstr ""
|
||||
msgstr "Aantal cijfers voor de rekening code"
|
||||
|
||||
#. module: account
|
||||
#: help:account.analytic.journal,type:0
|
||||
|
@ -263,6 +287,9 @@ msgid ""
|
|||
"lines for invoices. Leave empty if you don't want to use an analytic account "
|
||||
"on the invoice tax lines by default."
|
||||
msgstr ""
|
||||
"Geef de kostenplaats welke standaard gebruikt moet worden bij BTW factuur "
|
||||
"regels. Als u dit veld niet invuld, wordt er standaard geen kostenplaats "
|
||||
"gebruikt."
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_account_tax_template_form
|
||||
|
@ -298,7 +325,7 @@ msgstr "Belgische overzichten"
|
|||
#. module: account
|
||||
#: model:account.account.type,name:account.account_type_income_view1
|
||||
msgid "Income View"
|
||||
msgstr ""
|
||||
msgstr "View opbrengsten"
|
||||
|
||||
#. module: account
|
||||
#: help:account.account,user_type:0
|
||||
|
@ -314,7 +341,7 @@ msgstr ""
|
|||
#. module: account
|
||||
#: field:account.config.settings,sale_refund_sequence_next:0
|
||||
msgid "Next credit note number"
|
||||
msgstr ""
|
||||
msgstr "Volgend nummer creditnota"
|
||||
|
||||
#. module: account
|
||||
#: help:account.config.settings,module_account_voucher:0
|
||||
|
@ -323,6 +350,10 @@ msgid ""
|
|||
"sales, purchase, expense, contra, etc.\n"
|
||||
" This installs the module account_voucher."
|
||||
msgstr ""
|
||||
"Deze module bevat alle voorzieningen voor registratie van "
|
||||
"(bank)afschriften.\n"
|
||||
" "
|
||||
"hiermee installeert u de module 'account_voucher'"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_account_use_model_create_entry
|
||||
|
@ -361,6 +392,18 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p class=\"oe_view_nocontent_create\">\n"
|
||||
" Klik hier om een creditnota te maken. \n"
|
||||
" </p><p>\n"
|
||||
" Een creditnota is een factuur, waarbij u een bestaande "
|
||||
"factuur volledig of gedeeltelijk \n"
|
||||
" crediteert.\n"
|
||||
" </p><p>\n"
|
||||
" In plaats van handmatig kunt u hiermee een creditnota maken "
|
||||
"\n"
|
||||
" direct vanaf de originele factuur.\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: account
|
||||
#: field:account.journal.column,field:0
|
||||
|
@ -426,12 +469,12 @@ msgstr "Juni"
|
|||
#: code:addons/account/wizard/account_automatic_reconcile.py:148
|
||||
#, python-format
|
||||
msgid "You must select accounts to reconcile."
|
||||
msgstr ""
|
||||
msgstr "Selecteer de grootboekrekeningen die afgeletterd moeten worden."
|
||||
|
||||
#. module: account
|
||||
#: help:account.config.settings,group_analytic_accounting:0
|
||||
msgid "Allows you to use the analytic accounting."
|
||||
msgstr ""
|
||||
msgstr "stelt u in staat kostenplaatsen te gebruiken"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,help:account.action_account_moves_bank
|
||||
|
@ -531,6 +574,18 @@ msgid ""
|
|||
"should choose 'Round per line' because you certainly want the sum of your "
|
||||
"tax-included line subtotals to be equal to the total amount with taxes."
|
||||
msgstr ""
|
||||
"Als u 'afronden per regel' selecteert: voor elke BTW rekening , wordt het "
|
||||
"BTW bedrag eerst berekend en afgerond voor elke factuur regel en vervolgens "
|
||||
"worden deze afgeronde bedragen opgeteld, wat leidt tot het totale bedrag "
|
||||
"voor deze belasting. \r\n"
|
||||
"\r\n"
|
||||
"Als u 'afronden globaal' selecteert: voor elke BTW rekening wordt het BTW "
|
||||
"bedrag berekend voor elke factuur regel. vervolgens zullen deze bedragen "
|
||||
"worden opgeteld en uiteindelijk wordt dit totale BTW bedrag afgerond. \r\n"
|
||||
"\r\n"
|
||||
"Als u verkoopt met BTW inbegrepen, moet u kiezen voor 'afronden per regel', "
|
||||
"omdat U zeker wil zijn dat de subtotalen van \r\n"
|
||||
"uw (BTW inbegrepen) regels gelijk zijn aan het totale bedrag met BTW."
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_wizard_multi_charts_accounts
|
||||
|
@ -600,7 +655,7 @@ msgstr "Bovenliggend doel"
|
|||
#. module: account
|
||||
#: help:account.invoice.line,sequence:0
|
||||
msgid "Gives the sequence of this line when displaying the invoice."
|
||||
msgstr ""
|
||||
msgstr "Geeft de volgorde van de factuur regel bij het tonen van de factuur"
|
||||
|
||||
#. module: account
|
||||
#: field:account.bank.statement,account_id:0
|
||||
|
@ -679,7 +734,7 @@ msgstr "Niets af te letteren"
|
|||
#. module: account
|
||||
#: field:account.config.settings,decimal_precision:0
|
||||
msgid "Decimal precision on journal entries"
|
||||
msgstr ""
|
||||
msgstr "Aantal decimalen van journaalposten"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.config.settings,period:0
|
||||
|
@ -713,7 +768,7 @@ msgstr "Rapport waarde"
|
|||
msgid ""
|
||||
"Specified journal does not have any account move entries in draft state for "
|
||||
"this period."
|
||||
msgstr ""
|
||||
msgstr "Geselecteerd dagboek heeft geen 'concept'boekingen"
|
||||
|
||||
#. module: account
|
||||
#: view:account.fiscal.position:0
|
||||
|
@ -768,12 +823,16 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p>\n"
|
||||
" Geen journaalposten gevonden.\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: account
|
||||
#: code:addons/account/account.py:1606
|
||||
#, python-format
|
||||
msgid "Cannot create move with currency different from .."
|
||||
msgstr ""
|
||||
msgstr "U kunt geen boeking doen met een andere valuta dan ..."
|
||||
|
||||
#. module: account
|
||||
#: model:email.template,report_name:account.email_template_edi_invoice
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-01 08:44+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 07:22+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-25 06:01+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,name:account.process_transition_supplierreconcilepaid0
|
||||
|
@ -776,7 +776,7 @@ msgstr "账簿的会计期间"
|
|||
#: constraint:account.move:0
|
||||
msgid ""
|
||||
"You cannot create more than one move per period on a centralized journal."
|
||||
msgstr ""
|
||||
msgstr "在每个会计期间,你不可以创建1个以上的总分类凭证"
|
||||
|
||||
#. module: account
|
||||
#: help:account.tax,account_analytic_paid_id:0
|
||||
|
@ -784,7 +784,7 @@ msgid ""
|
|||
"Set the analytic account that will be used by default on the invoice tax "
|
||||
"lines for refunds. Leave empty if you don't want to use an analytic account "
|
||||
"on the invoice tax lines by default."
|
||||
msgstr ""
|
||||
msgstr "设置辅助核算项,用于退款时发票上默认税科目。如果默认不要在发票的税上 使用辅助核算项,留空。"
|
||||
|
||||
#. module: account
|
||||
#: view:account.account:0
|
||||
|
@ -6098,7 +6098,7 @@ msgstr "固定金额"
|
|||
#: code:addons/account/account_move_line.py:1151
|
||||
#, python-format
|
||||
msgid "You cannot change the tax, you should remove and recreate lines."
|
||||
msgstr ""
|
||||
msgstr "你不能修改税,你需要删去并且重建这一行"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_account_automatic_reconcile
|
||||
|
|
|
@ -98,150 +98,124 @@ class account_invoice_report(osv.osv):
|
|||
'partner_bank_id': fields.many2one('res.partner.bank', 'Bank Account',readonly=True),
|
||||
'residual': fields.float('Total Residual', readonly=True),
|
||||
'user_currency_residual': fields.function(_compute_amounts_in_user_currency, string="Total Residual", type='float', digits_compute=dp.get_precision('Account'), multi="_compute_amounts"),
|
||||
'delay_to_pay': fields.float('Avg. Delay To Pay', readonly=True, group_operator="avg"),
|
||||
'due_delay': fields.float('Avg. Due Delay', readonly=True, group_operator="avg"),
|
||||
}
|
||||
_order = 'date desc'
|
||||
|
||||
|
||||
def _select(self):
|
||||
select_str = """
|
||||
SELECT min(ail.id) as id,
|
||||
ai.date_invoice as date,
|
||||
to_char(ai.date_invoice, 'YYYY') as year,
|
||||
to_char(ai.date_invoice, 'MM') as month,
|
||||
to_char(ai.date_invoice, 'YYYY-MM-DD') as day,
|
||||
ail.product_id,
|
||||
ai.partner_id as partner_id,
|
||||
ai.payment_term as payment_term,
|
||||
ai.period_id as period_id,
|
||||
(case when u.uom_type not in ('reference') then
|
||||
(select name from product_uom where uom_type='reference' and active and category_id=u.category_id LIMIT 1)
|
||||
else
|
||||
u.name
|
||||
end) as uom_name,
|
||||
ai.currency_id as currency_id,
|
||||
ai.journal_id as journal_id,
|
||||
ai.fiscal_position as fiscal_position,
|
||||
ai.user_id as user_id,
|
||||
ai.company_id as company_id,
|
||||
count(ail.*) as nbr,
|
||||
ai.type as type,
|
||||
ai.state,
|
||||
pt.categ_id,
|
||||
ai.date_due as date_due,
|
||||
ai.account_id as account_id,
|
||||
ail.account_id as account_line_id,
|
||||
ai.partner_bank_id as partner_bank_id,
|
||||
sum(case when ai.type in ('out_refund','in_invoice') then
|
||||
-ail.quantity / u.factor
|
||||
else
|
||||
ail.quantity / u.factor
|
||||
end) as product_qty,
|
||||
|
||||
sum(case when ai.type in ('out_refund','in_invoice') then
|
||||
-ail.price_subtotal
|
||||
else
|
||||
ail.price_subtotal
|
||||
end) / cr.rate as price_total,
|
||||
|
||||
(case when ai.type in ('out_refund','in_invoice') then
|
||||
sum(-ail.price_subtotal)
|
||||
else
|
||||
sum(ail.price_subtotal)
|
||||
end) / (CASE WHEN sum(ail.quantity/u.factor) <> 0
|
||||
THEN
|
||||
(case when ai.type in ('out_refund','in_invoice')
|
||||
then sum(-ail.quantity/u.factor)
|
||||
else sum(ail.quantity/u.factor) end)
|
||||
ELSE 1
|
||||
END)
|
||||
/ cr.rate as price_average,
|
||||
|
||||
cr.rate as currency_rate,
|
||||
sum((select extract(epoch from avg(date_trunc('day',aml.date_created)-date_trunc('day',l.create_date)))/(24*60*60)::decimal(16,2)
|
||||
from account_move_line as aml
|
||||
left join account_invoice as a ON (a.move_id=aml.move_id)
|
||||
left join account_invoice_line as l ON (a.id=l.invoice_id)
|
||||
where a.id=ai.id)) as delay_to_pay,
|
||||
sum((select extract(epoch from avg(date_trunc('day',a.date_due)-date_trunc('day',a.date_invoice)))/(24*60*60)::decimal(16,2)
|
||||
from account_move_line as aml
|
||||
left join account_invoice as a ON (a.move_id=aml.move_id)
|
||||
left join account_invoice_line as l ON (a.id=l.invoice_id)
|
||||
where a.id=ai.id)) as due_delay,
|
||||
(case when ai.type in ('out_refund','in_invoice') then
|
||||
-ai.residual
|
||||
else
|
||||
ai.residual
|
||||
end)/ (CASE WHEN
|
||||
(select count(l.id) from account_invoice_line as l
|
||||
left join account_invoice as a ON (a.id=l.invoice_id)
|
||||
where a.id=ai.id) <> 0
|
||||
THEN
|
||||
(select count(l.id) from account_invoice_line as l
|
||||
left join account_invoice as a ON (a.id=l.invoice_id)
|
||||
where a.id=ai.id)
|
||||
ELSE 1
|
||||
END) / cr.rate as residual
|
||||
SELECT sub.id, sub.date, sub.year, sub.month, sub.day, sub.product_id, sub.partner_id,
|
||||
sub.payment_term, sub.period_id, sub.uom_name, sub.currency_id, sub.journal_id,
|
||||
sub.fiscal_position, sub.user_id, sub.company_id, sub.nbr, sub.type, sub.state,
|
||||
sub.categ_id, sub.date_due, sub.account_id, sub.account_line_id, sub.partner_bank_id,
|
||||
sub.product_qty, sub.price_total / cr.rate as price_total, sub.price_average /cr.rate as price_average,
|
||||
cr.rate as currency_rate, sub.residual / cr.rate as residual
|
||||
"""
|
||||
return select_str
|
||||
|
||||
def _where(self):
|
||||
where_str = """
|
||||
WHERE cr.id in (select id from res_currency_rate cr2 where (cr2.currency_id = ai.currency_id)
|
||||
and ((ai.date_invoice is not null and cr.name <= ai.date_invoice) or (ai.date_invoice is null and cr.name <= NOW())) order by name desc limit 1)
|
||||
def _sub_select(self):
|
||||
select_str = """
|
||||
SELECT min(ail.id) AS id,
|
||||
ai.date_invoice AS date,
|
||||
to_char(ai.date_invoice::timestamp with time zone, 'YYYY'::text) AS year,
|
||||
to_char(ai.date_invoice::timestamp with time zone, 'MM'::text) AS month,
|
||||
to_char(ai.date_invoice::timestamp with time zone, 'YYYY-MM-DD'::text) AS day,
|
||||
ail.product_id, ai.partner_id, ai.payment_term, ai.period_id,
|
||||
CASE
|
||||
WHEN u.uom_type::text <> 'reference'::text
|
||||
THEN ( SELECT product_uom.name
|
||||
FROM product_uom
|
||||
WHERE product_uom.uom_type::text = 'reference'::text
|
||||
AND product_uom.active
|
||||
AND product_uom.category_id = u.category_id LIMIT 1)
|
||||
ELSE u.name
|
||||
END AS uom_name,
|
||||
ai.currency_id, ai.journal_id, ai.fiscal_position, ai.user_id, ai.company_id,
|
||||
count(ail.*) AS nbr,
|
||||
ai.type, ai.state, pt.categ_id, ai.date_due, ai.account_id, ail.account_id AS account_line_id,
|
||||
ai.partner_bank_id,
|
||||
SUM(CASE
|
||||
WHEN ai.type::text = ANY (ARRAY['out_refund'::character varying::text, 'in_invoice'::character varying::text])
|
||||
THEN (- ail.quantity) / u.factor
|
||||
ELSE ail.quantity / u.factor
|
||||
END) AS product_qty,
|
||||
SUM(CASE
|
||||
WHEN ai.type::text = ANY (ARRAY['out_refund'::character varying::text, 'in_invoice'::character varying::text])
|
||||
THEN - ail.price_subtotal
|
||||
ELSE ail.price_subtotal
|
||||
END) AS price_total,
|
||||
CASE
|
||||
WHEN ai.type::text = ANY (ARRAY['out_refund'::character varying::text, 'in_invoice'::character varying::text])
|
||||
THEN SUM(- ail.price_subtotal)
|
||||
ELSE SUM(ail.price_subtotal)
|
||||
END / CASE
|
||||
WHEN SUM(ail.quantity / u.factor) <> 0::numeric
|
||||
THEN CASE
|
||||
WHEN ai.type::text = ANY (ARRAY['out_refund'::character varying::text, 'in_invoice'::character varying::text])
|
||||
THEN SUM((- ail.quantity) / u.factor)
|
||||
ELSE SUM(ail.quantity / u.factor)
|
||||
END
|
||||
ELSE 1::numeric
|
||||
END AS price_average,
|
||||
CASE
|
||||
WHEN ai.type::text = ANY (ARRAY['out_refund'::character varying::text, 'in_invoice'::character varying::text])
|
||||
THEN - ai.residual
|
||||
ELSE ai.residual
|
||||
END / CASE
|
||||
WHEN (( SELECT count(l.id) AS count
|
||||
FROM account_invoice_line l
|
||||
LEFT JOIN account_invoice a ON a.id = l.invoice_id
|
||||
WHERE a.id = ai.id)) <> 0
|
||||
THEN ( SELECT count(l.id) AS count
|
||||
FROM account_invoice_line l
|
||||
LEFT JOIN account_invoice a ON a.id = l.invoice_id
|
||||
WHERE a.id = ai.id)
|
||||
ELSE 1::bigint
|
||||
END::numeric AS residual
|
||||
"""
|
||||
return where_str
|
||||
return select_str
|
||||
|
||||
def _from(self):
|
||||
from_str = """
|
||||
FROM account_invoice_line as ail
|
||||
left join account_invoice as ai ON (ai.id=ail.invoice_id)
|
||||
left join product_product pr on (pr.id=ail.product_id)
|
||||
left join product_template pt on (pt.id=pr.product_tmpl_id)
|
||||
left join product_uom u on (u.id=ail.uos_id),
|
||||
res_currency_rate cr
|
||||
FROM account_invoice_line ail
|
||||
JOIN account_invoice ai ON ai.id = ail.invoice_id
|
||||
LEFT JOIN product_product pr ON pr.id = ail.product_id
|
||||
left JOIN product_template pt ON pt.id = pr.product_tmpl_id
|
||||
LEFT JOIN product_uom u ON u.id = ail.uos_id
|
||||
"""
|
||||
return from_str
|
||||
|
||||
def _group_by(self):
|
||||
group_by_str = """
|
||||
GROUP BY ail.product_id,
|
||||
ai.date_invoice,
|
||||
ai.id,
|
||||
cr.rate,
|
||||
to_char(ai.date_invoice, 'YYYY'),
|
||||
to_char(ai.date_invoice, 'MM'),
|
||||
to_char(ai.date_invoice, 'YYYY-MM-DD'),
|
||||
ai.partner_id,
|
||||
ai.payment_term,
|
||||
ai.period_id,
|
||||
u.name,
|
||||
ai.currency_id,
|
||||
ai.journal_id,
|
||||
ai.fiscal_position,
|
||||
ai.user_id,
|
||||
ai.company_id,
|
||||
ai.type,
|
||||
ai.state,
|
||||
pt.categ_id,
|
||||
ai.date_due,
|
||||
ai.account_id,
|
||||
ail.account_id,
|
||||
ai.partner_bank_id,
|
||||
ai.residual,
|
||||
ai.amount_total,
|
||||
u.uom_type,
|
||||
u.category_id
|
||||
GROUP BY ail.product_id, ai.date_invoice, ai.id,
|
||||
to_char(ai.date_invoice::timestamp with time zone, 'YYYY'::text),
|
||||
to_char(ai.date_invoice::timestamp with time zone, 'MM'::text),
|
||||
to_char(ai.date_invoice::timestamp with time zone, 'YYYY-MM-DD'::text),
|
||||
ai.partner_id, ai.payment_term, ai.period_id, u.name, ai.currency_id, ai.journal_id,
|
||||
ai.fiscal_position, ai.user_id, ai.company_id, ai.type, ai.state, pt.categ_id,
|
||||
ai.date_due, ai.account_id, ail.account_id, ai.partner_bank_id, ai.residual,
|
||||
ai.amount_total, u.uom_type, u.category_id
|
||||
"""
|
||||
return group_by_str
|
||||
|
||||
def init(self, cr):
|
||||
# self._table = account_invoice_report
|
||||
tools.drop_view_if_exists(cr, self._table)
|
||||
cr.execute("CREATE or REPLACE VIEW %s as (%s %s %s %s)" % (
|
||||
cr.execute("""CREATE or REPLACE VIEW %s as (
|
||||
%s
|
||||
FROM (
|
||||
%s %s %s
|
||||
) AS sub
|
||||
JOIN res_currency_rate cr ON (cr.currency_id = sub.currency_id)
|
||||
WHERE
|
||||
cr.id IN (SELECT id
|
||||
FROM res_currency_rate cr2
|
||||
WHERE (cr2.currency_id = sub.currency_id)
|
||||
AND ((sub.date IS NOT NULL AND cr.name <= sub.date)
|
||||
OR (sub.date IS NULL AND cr.name <= NOW()))
|
||||
ORDER BY name DESC LIMIT 1)
|
||||
)""" % (
|
||||
self._table,
|
||||
self._select(), self._from(), self._where(), self._group_by()))
|
||||
self._select(), self._sub_select(), self._from(), self._group_by()))
|
||||
|
||||
account_invoice_report()
|
||||
|
||||
|
|
|
@ -30,8 +30,6 @@
|
|||
<!-- <field name="reconciled" sum="# Reconciled"/> -->
|
||||
<field name="user_currency_price_total" sum="Total Without Tax"/>
|
||||
<field name="user_currency_residual" sum="Total Residual" invisible="context.get('residual_invisible',False)"/>
|
||||
<field name="due_delay" sum="Avg. Due Delay" invisible="context.get('residual_invisible',False)"/>
|
||||
<field name="delay_to_pay" sum="Avg. Delay To Pay" invisible="context.get('residual_invisible',False)"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
@ -93,7 +91,7 @@
|
|||
<field name="view_mode">tree,graph</field>
|
||||
<field name="context">{'search_default_period':1,'search_default_current':1, 'search_default_year': 1, 'search_default_category_product':1, 'search_default_customer':1, 'group_by':[], 'group_by_no_leaf':1,}</field>
|
||||
<field name="search_view_id" ref="view_account_invoice_report_search"/>
|
||||
<field name="help">From this report, you can have an overview of the amount invoiced to your 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.</field>
|
||||
<field name="help">From this report, you can have an overview of the amount invoiced to your customer. The tool search can also be used to personalise your Invoices reports and so, match this analysis to your needs.</field>
|
||||
|
||||
</record>
|
||||
|
||||
|
|
|
@ -29,6 +29,7 @@ class res_currency_account(osv.osv):
|
|||
if context is None:
|
||||
context = {}
|
||||
rate = super(res_currency_account, self)._get_conversion_rate(cr, uid, from_currency, to_currency, context=context)
|
||||
#process the case where the account doesn't work with an outgoing currency rate method 'at date' but 'average'
|
||||
account = context.get('res.currency.compute.account')
|
||||
account_invert = context.get('res.currency.compute.account_invert')
|
||||
if account and account.currency_mode == 'average' and account.currency_id:
|
||||
|
|
|
@ -7,8 +7,6 @@ access_account_tax_internal_user,account.tax internal user,model_account_tax,bas
|
|||
access_account_account,account.account,model_account_account,account.group_account_user,1,0,0,0
|
||||
access_account_account_user,account.account user,model_account_account,base.group_user,1,0,0,0
|
||||
access_account_account_partner_manager,account.account partner manager,model_account_account,base.group_partner_manager,1,0,0,0
|
||||
access_account_journal_view,account.journal.view,model_account_journal_view,account.group_account_user,1,0,0,0
|
||||
access_account_journal_column,account.journal.column,model_account_journal_column,account.group_account_user,1,0,0,0
|
||||
access_account_journal_period_manager,account.journal.period manager,model_account_journal_period,account.group_account_manager,1,0,0,0
|
||||
access_account_tax_code,account.tax.code,model_account_tax_code,account.group_account_invoice,1,0,0,0
|
||||
access_account_tax,account.tax,model_account_tax,account.group_account_invoice,1,0,0,0
|
||||
|
@ -83,8 +81,6 @@ access_account_entries_report_employee,account.entries.report employee,model_acc
|
|||
access_analytic_entries_report_manager,analytic.entries.report,model_analytic_entries_report,account.group_account_manager,1,0,0,0
|
||||
access_account_cashbox_line,account.cashbox.line,model_account_cashbox_line,account.group_account_user,1,1,1,1
|
||||
access_account_journal_cashbox_line,account.journal.cashbox.line,model_account_journal_cashbox_line,account.group_account_user,1,1,1,0
|
||||
access_account_journal_view_invoice,account.journal.view invoice,model_account_journal_view,account.group_account_invoice,1,1,1,1
|
||||
access_account_journal_column_invoice,account.journal.column invoice,model_account_journal_column,account.group_account_invoice,1,1,1,1
|
||||
access_account_invoice_tax_accountant,account.invoice.tax accountant,model_account_invoice_tax,account.group_account_user,1,0,0,0
|
||||
access_account_move_reconcile_manager,account.move.reconcile manager,model_account_move_reconcile,account.group_account_manager,1,0,0,0
|
||||
access_account_analytic_line_invoice,account.analytic.line invoice,model_account_analytic_line,account.group_account_invoice,1,1,1,1
|
||||
|
|
|
|
@ -0,0 +1,99 @@
|
|||
openerp.account.quickadd = function (instance) {
|
||||
var _t = instance.web._t,
|
||||
_lt = instance.web._lt;
|
||||
var QWeb = instance.web.qweb;
|
||||
|
||||
instance.web.account = instance.web.account || {};
|
||||
|
||||
instance.web.views.add('tree_account_move_line_quickadd', 'instance.web.account.QuickAddListView');
|
||||
instance.web.account.QuickAddListView = instance.web.ListView.extend({
|
||||
init: function() {
|
||||
this._super.apply(this, arguments);
|
||||
this.journals = [];
|
||||
this.periods = [];
|
||||
this.current_journal = null;
|
||||
this.current_period = null;
|
||||
this.default_period = null;
|
||||
this.default_journal = null;
|
||||
this.current_journal_type = null;
|
||||
this.current_journal_currency = null;
|
||||
this.current_journal_analytic = null;
|
||||
},
|
||||
start:function(){
|
||||
var tmp = this._super.apply(this, arguments);
|
||||
var self = this;
|
||||
this.$el.parent().prepend(QWeb.render("AccountMoveLineQuickAdd", {widget: this}));
|
||||
|
||||
this.$el.parent().find('.oe_account_select_journal').change(function() {
|
||||
self.current_journal = this.value === '' ? null : parseInt(this.value);
|
||||
self.do_search(self.last_domain, self.last_context, self.last_group_by);
|
||||
});
|
||||
this.$el.parent().find('.oe_account_select_period').change(function() {
|
||||
self.current_period = this.value === '' ? null : parseInt(this.value);
|
||||
self.do_search(self.last_domain, self.last_context, self.last_group_by);
|
||||
});
|
||||
this.on('edit:after', this, function () {
|
||||
self.$el.parent().find('.oe_account_select_journal').attr('disabled', 'disabled');
|
||||
self.$el.parent().find('.oe_account_select_period').attr('disabled', 'disabled');
|
||||
});
|
||||
this.on('save:after cancel:after', this, function () {
|
||||
self.$el.parent().find('.oe_account_select_journal').removeAttr('disabled');
|
||||
self.$el.parent().find('.oe_account_select_period').removeAttr('disabled');
|
||||
});
|
||||
var mod = new instance.web.Model("account.move.line", self.dataset.context, self.dataset.domain);
|
||||
mod.call("default_get", [['journal_id','period_id'],self.dataset.context]).then(function(result) {
|
||||
self.current_period = result['period_id'];
|
||||
self.current_journal = result['journal_id'];
|
||||
});
|
||||
return tmp;
|
||||
},
|
||||
do_search: function(domain, context, group_by) {
|
||||
var self = this;
|
||||
this.last_domain = domain;
|
||||
this.last_context = context;
|
||||
this.last_group_by = group_by;
|
||||
this.old_search = _.bind(this._super, this);
|
||||
var mod = new instance.web.Model("account.move.line", context, domain);
|
||||
return $.when(mod.call("list_journals", []).then(function(result) {
|
||||
self.journals = result;
|
||||
}),mod.call("list_periods", []).then(function(result) {
|
||||
self.periods = result;
|
||||
})).then(function () {
|
||||
var o;
|
||||
self.$el.parent().find('.oe_account_select_journal').children().remove().end();
|
||||
self.$el.parent().find('.oe_account_select_journal').append(new Option('', ''));
|
||||
for (var i = 0;i < self.journals.length;i++){
|
||||
o = new Option(self.journals[i][1], self.journals[i][0]);
|
||||
if (self.journals[i][0] === self.current_journal){
|
||||
self.current_journal_type = self.journals[i][2];
|
||||
self.current_journal_currency = self.journals[i][3];
|
||||
self.current_journal_analytic = self.journals[i][4];
|
||||
$(o).attr('selected',true);
|
||||
}
|
||||
self.$el.parent().find('.oe_account_select_journal').append(o);
|
||||
}
|
||||
self.$el.parent().find('.oe_account_select_period').children().remove().end();
|
||||
self.$el.parent().find('.oe_account_select_period').append(new Option('', ''));
|
||||
for (var i = 0;i < self.periods.length;i++){
|
||||
o = new Option(self.periods[i][1], self.periods[i][0]);
|
||||
self.$el.parent().find('.oe_account_select_period').append(o);
|
||||
}
|
||||
self.$el.parent().find('.oe_account_select_period').val(self.current_period).attr('selected',true);
|
||||
return self.search_by_journal_period();
|
||||
});
|
||||
},
|
||||
search_by_journal_period: function() {
|
||||
var self = this;
|
||||
var domain = [];
|
||||
if (self.current_journal !== null) domain.push(["journal_id", "=", self.current_journal]);
|
||||
if (self.current_period !== null) domain.push(["period_id", "=", self.current_period]);
|
||||
self.last_context["journal_id"] = self.current_journal === null ? false : self.current_journal;
|
||||
if (self.current_period === null) delete self.last_context["period_id"];
|
||||
else self.last_context["period_id"] = self.current_period;
|
||||
self.last_context["journal_type"] = self.current_journal_type;
|
||||
self.last_context["currency"] = self.current_journal_currency;
|
||||
self.last_context["analytic_journal_id"] = self.current_journal_analytic;
|
||||
return self.old_search(new instance.web.CompoundDomain(self.last_domain, domain), self.last_context, self.last_group_by);
|
||||
},
|
||||
});
|
||||
};
|
|
@ -1,9 +1,10 @@
|
|||
openerp.account = function (instance) {
|
||||
openerp.account.quickadd(instance);
|
||||
var _t = instance.web._t,
|
||||
_lt = instance.web._lt;
|
||||
var QWeb = instance.web.qweb;
|
||||
|
||||
instance.web.account = {};
|
||||
instance.web.account = instance.web.account || {};
|
||||
|
||||
instance.web.views.add('tree_account_reconciliation', 'instance.web.account.ReconciliationListView');
|
||||
instance.web.account.ReconciliationListView = instance.web.ListView.extend({
|
||||
|
|
|
@ -0,0 +1,22 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
|
||||
<templates id="template" xml:space="preserve">
|
||||
|
||||
<t t-name="AccountMoveLineQuickAdd">
|
||||
<div class="oe_account_quickadd ui-toolbar" style="margin-bottom:0px;">
|
||||
<div class="oe_form_dropdown_section">
|
||||
<h4>Period :</h4>
|
||||
<select class="oe_account_select_period">
|
||||
|
||||
</select>
|
||||
</div>
|
||||
<div class="oe_form_dropdown_section">
|
||||
<h4>Journal :</h4>
|
||||
<select class="oe_account_select_journal" >
|
||||
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</t>
|
||||
|
||||
</templates>
|
|
@ -29,7 +29,6 @@
|
|||
default_debit_account_id: cash
|
||||
default_credit_account_id: cash
|
||||
company_id: base.main_company
|
||||
view_id: account_journal_bank_view
|
||||
centralisation: 1
|
||||
-
|
||||
I called the Generate Fiscalyear Opening Entries wizard
|
||||
|
@ -48,46 +47,3 @@
|
|||
self.data_save(cr, uid, [ref("account_fiscalyear_close_0")], {"lang": 'en_US',
|
||||
"active_model": "ir.ui.menu", "active_ids": [ref("account.menu_wizard_fy_close")],
|
||||
"tz": False, "active_id": ref("account.menu_wizard_fy_close"), })
|
||||
|
||||
-
|
||||
I check the opening entries By using "Entries by Line wizard"
|
||||
-
|
||||
!record {model: account.move.journal, id: account_move_journal_0}:
|
||||
{}
|
||||
-
|
||||
I clicked on Open Journal Button to check the entries
|
||||
|
||||
-
|
||||
!python {model: account.move.journal}: |
|
||||
self.action_open_window(cr, uid, [ref("account_move_journal_0")], {"lang": 'en_US',
|
||||
"active_model": "ir.ui.menu", "active_ids": [ref("account.menu_action_move_journal_line_form")],
|
||||
"tz": False, "active_id": ref("account.menu_action_move_journal_line_form"),
|
||||
})
|
||||
|
||||
#-
|
||||
# In order to test Cancel Opening Entries I cancelled the opening entries created for "Fiscal Year 2011"
|
||||
#-
|
||||
# !record {model: account.open.closed.fiscalyear, id: account_open_closed_fiscalyear_1}:
|
||||
# fyear_id: account.data_fiscalyear
|
||||
#-
|
||||
# I clicked on Open button
|
||||
#-
|
||||
# !python {model: account.open.closed.fiscalyear}: |
|
||||
# self.remove_entries(cr, uid, [ref("account_open_closed_fiscalyear_1")], {"lang":
|
||||
# 'en_US', "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_wizard_open_closed_fy")],
|
||||
# "tz": False, "active_id": ref("account.menu_wizard_open_closed_fy"), })
|
||||
#-
|
||||
# I check the opening entries By using "Entries by Line wizard"
|
||||
#-
|
||||
# !record {model: account.move.journal, id: account_move_journal_2}:
|
||||
# journal_id: account.sales_journal
|
||||
# period_id: account_period_jan11
|
||||
#
|
||||
#-
|
||||
# I checked the Opening entries are cancelled successfully
|
||||
#-
|
||||
# !python {model: account.move.journal}: |
|
||||
# self.action_open_window(cr, uid, [ref("account_move_journal_2")], {"lang": 'en_US',
|
||||
# "active_model": "ir.ui.menu", "active_ids": [ref("account.menu_action_move_journal_line_form")],
|
||||
# "tz": False, "active_id": ref("account.menu_action_move_journal_line_form"),
|
||||
# })
|
||||
|
|
|
@ -30,10 +30,9 @@
|
|||
-
|
||||
!python {model: account.move.line}: |
|
||||
import time
|
||||
date = self._get_date(cr, uid, {'lang': u'en_US', 'normal_view': False, 'active_model': 'ir.ui.menu',
|
||||
'search_default_journal_id': 1, 'journal_type': 'sale', 'search_default_period_id': 6, 'journal_id': 1, 'view_mode': False,
|
||||
'visible_id': 1, 'period_id': 6, 'tz': False, 'active_ids': [ref('menu_action_account_moves_all')],
|
||||
'search_default_posted': 0, 'active_id': ref('menu_action_account_moves_all')})
|
||||
date = self._get_date(cr, uid, {
|
||||
'journal_id': 1,
|
||||
'period_id': 6,})
|
||||
partner = self.onchange_partner_id(cr, uid, [], False, ref('base.res_partner_12'), ref('account.cash'), debit=0, credit=2000, date=date, journal=False)
|
||||
account = self.onchange_account_id(cr, uid, [], account_id=ref('account.a_recv'), partner_id= ref('base.res_partner_12'))
|
||||
vals = {
|
||||
|
@ -62,11 +61,10 @@
|
|||
!python {model: account.move.line}: |
|
||||
ids = self._balance_search(cr, uid, self, 'balance', [('balance', '=', 2000.0)], None, {'lang': u'en_US', 'tz': False, 'active_model': 'ir.ui.menu',
|
||||
'search_default_journal_id': 1, 'journal_type': 'sale', 'search_default_period_id': 6, 'view_mode': False, 'visible_id': 1,
|
||||
'active_ids': [ref('menu_action_account_moves_all')], 'search_default_posted': 0, 'active_id': ref('menu_action_account_moves_all')})
|
||||
'search_default_posted': 0})
|
||||
bal = self._balance(cr, uid, ids[0][2], 'balance', None,{'lang': u'en_US', 'tz': False, 'active_model': 'ir.ui.menu',
|
||||
'search_default_journal_id': 1, 'journal_type': 'sale', 'search_default_period_id': 6, 'view_mode': False,
|
||||
'visible_id': 1, 'active_ids': [ref('menu_action_account_moves_all')], 'search_default_posted': 0,
|
||||
'active_id': ref('menu_action_account_moves_all')})
|
||||
'visible_id': 1, 'search_default_posted': 0})
|
||||
assert bal, 'Balance has not been computed correctly'
|
||||
-
|
||||
I check that Initially account move state is "Draft"
|
||||
|
|
|
@ -31,7 +31,6 @@ import account_reconcile_partner_process
|
|||
import account_reconcile
|
||||
import account_unreconcile
|
||||
import account_invoice_refund
|
||||
import account_move_journal
|
||||
import account_journal_select
|
||||
import account_move_bank_reconcile
|
||||
import account_subscription_generate
|
||||
|
|
|
@ -1,194 +0,0 @@
|
|||
# -*- 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/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
from lxml import etree
|
||||
|
||||
from osv import osv, fields
|
||||
from tools.translate import _
|
||||
import tools
|
||||
|
||||
class account_move_journal(osv.osv_memory):
|
||||
_name = "account.move.journal"
|
||||
_description = "Move journal"
|
||||
|
||||
_columns = {
|
||||
'target_move': fields.selection([('posted', 'All Posted Entries'),
|
||||
('all', 'All Entries'),
|
||||
], 'Target Moves', required=True),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'target_move': 'all'
|
||||
}
|
||||
def _get_period(self, cr, uid, context=None):
|
||||
"""
|
||||
Return default account period value
|
||||
"""
|
||||
account_period_obj = self.pool.get('account.period')
|
||||
ids = account_period_obj.find(cr, uid, context=context)
|
||||
period_id = False
|
||||
if ids:
|
||||
period_id = ids[0]
|
||||
return period_id
|
||||
|
||||
def _get_journal(self, cr, uid, context=None):
|
||||
"""
|
||||
Return journal based on the journal type
|
||||
"""
|
||||
|
||||
journal_id = False
|
||||
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
if context.get('journal_type', False):
|
||||
jids = journal_pool.search(cr, uid, [('type','=', context.get('journal_type'))])
|
||||
if not jids:
|
||||
raise osv.except_osv(_('Configuration Error!'), _('Cannot find any account journal of %s type for this company.\n\nYou can create one in the menu: \nConfiguration/Journals/Journals.') % context.get('journal_type'))
|
||||
journal_id = jids[0]
|
||||
|
||||
return journal_id
|
||||
|
||||
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context=None, toolbar=False, submenu=False):
|
||||
"""
|
||||
Returns views and fields for current model where view will depend on {view_type}.
|
||||
@param cr: A database cursor
|
||||
@param user: ID of the user currently logged in
|
||||
@param view_id: list of fields, which required to read signatures
|
||||
@param view_type: defines a view type. it can be one of (form, tree, graph, calender, gantt, search, mdx)
|
||||
@param context: context arguments, like lang, time zone
|
||||
@param toolbar: contains a list of reports, wizards, and links related to current model
|
||||
|
||||
@return: Returns a dict that contains definition for fields, views, and toolbars
|
||||
"""
|
||||
if context is None:context = {}
|
||||
res = super(account_move_journal, self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar,submenu=False)
|
||||
|
||||
if context:
|
||||
if not view_id:
|
||||
return res
|
||||
|
||||
period_pool = self.pool.get('account.period')
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
|
||||
journal_id = self._get_journal(cr, uid, context)
|
||||
period_id = self._get_period(cr, uid, context)
|
||||
|
||||
journal = False
|
||||
if journal_id:
|
||||
journal = journal_pool.read(cr, uid, journal_id, ['name'], context=context).get('name',False)
|
||||
journal_string = _("Journal: %s") % tools.ustr(journal)
|
||||
else:
|
||||
journal_string = _("Journal: All")
|
||||
|
||||
period = False
|
||||
if period_id:
|
||||
period = period_pool.browse(cr, uid, period_id, context=context).name
|
||||
period_string = _("Period: %s") % tools.ustr(period)
|
||||
|
||||
open_string = _("Open")
|
||||
view = """<?xml version="1.0" encoding="utf-8"?>
|
||||
<form string="Standard entries" version="7.0">
|
||||
<group>
|
||||
<field name="target_move"/>
|
||||
</group>
|
||||
%s: <label string="%s"/>
|
||||
%s: <label string="%s"/>
|
||||
<footer>
|
||||
<button string="%s" name="action_open_window" default_focus="1" type="object" class="oe_highlight"/>
|
||||
or
|
||||
<button string="Cancel" class="oe_link" special="cancel"/>
|
||||
</footer>
|
||||
</form>""" % (_('Journal'), journal_string, _('Period'), period_string, open_string)
|
||||
|
||||
view = etree.fromstring(view.encode('utf8'))
|
||||
xarch, xfields = self._view_look_dom_arch(cr, uid, view, view_id, context=context)
|
||||
view = xarch
|
||||
res.update({
|
||||
'arch': view
|
||||
})
|
||||
return res
|
||||
|
||||
def action_open_window(self, cr, uid, ids, context=None):
|
||||
"""
|
||||
This function Open action move line window on given period and Journal/Payment Mode
|
||||
@param cr: the current row, from the database cursor,
|
||||
@param uid: the current user’s ID for security checks,
|
||||
@param ids: account move journal’s ID or list of IDs
|
||||
@return: dictionary of Open action move line window on given period and Journal/Payment Mode
|
||||
"""
|
||||
|
||||
period_pool = self.pool.get('account.journal.period')
|
||||
data_pool = self.pool.get('ir.model.data')
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
account_period_obj = self.pool.get('account.period')
|
||||
|
||||
if context is None:
|
||||
context = {}
|
||||
|
||||
journal_id = self._get_journal(cr, uid, context)
|
||||
period_id = self._get_period(cr, uid, context)
|
||||
target_move = self.read(cr, uid, ids, ['target_move'], context=context)[0]['target_move']
|
||||
|
||||
name = _("Journal Items")
|
||||
if journal_id:
|
||||
ids = period_pool.search(cr, uid, [('journal_id', '=', journal_id), ('period_id', '=', period_id)], context=context)
|
||||
|
||||
if not ids:
|
||||
journal = journal_pool.browse(cr, uid, journal_id, context=context)
|
||||
period = account_period_obj.browse(cr, uid, period_id, context=context)
|
||||
|
||||
name = journal.name
|
||||
state = period.state
|
||||
|
||||
if state == 'done':
|
||||
raise osv.except_osv(_('User Error!'), _('This period is already closed.'))
|
||||
|
||||
company = period.company_id.id
|
||||
res = {
|
||||
'name': name,
|
||||
'period_id': period_id,
|
||||
'journal_id': journal_id,
|
||||
'company_id': company
|
||||
}
|
||||
period_pool.create(cr, uid, res,context=context)
|
||||
|
||||
ids = period_pool.search(cr, uid, [('journal_id', '=', journal_id), ('period_id', '=', period_id)], context=context)
|
||||
period = period_pool.browse(cr, uid, ids[0], context=context)
|
||||
name = (period.journal_id.code or '') + ':' + (period.period_id.code or '')
|
||||
|
||||
result = data_pool.get_object_reference(cr, uid, 'account', 'view_account_move_line_filter')
|
||||
res_id = result and result[1] or False
|
||||
move = 0
|
||||
if target_move == 'posted':
|
||||
move = 1
|
||||
return {
|
||||
'name': name,
|
||||
'view_type': 'form',
|
||||
'view_mode': 'tree,graph,form',
|
||||
'res_model': 'account.move.line',
|
||||
'view_id': False,
|
||||
'context': "{'search_default_posted': %d, 'search_default_journal_id':%d, 'search_default_period_id':%d}" % (move, journal_id, period_id),
|
||||
'type': 'ir.actions.act_window',
|
||||
'search_view_id': res_id
|
||||
}
|
||||
|
||||
account_move_journal()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
|
@ -1,16 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<record id="view_account_move_journal_form" model="ir.ui.view">
|
||||
<field name="name">account.move.journal.form</field>
|
||||
<field name="model">account.move.journal</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Standard Entries">
|
||||
<field name="target_move"/>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
|
@ -8,19 +8,19 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:51+0000\n"
|
||||
"PO-Revision-Date: 2011-01-17 07:34+0000\n"
|
||||
"Last-Translator: Nicola Riolini - Micronaet <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-11-28 19:50+0000\n"
|
||||
"Last-Translator: Davide Corio - agilebg.com <davide.corio@agilebg.com>\n"
|
||||
"Language-Team: Italian <it@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: 2012-11-25 06:28+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_accountant
|
||||
#: model:ir.actions.client,name:account_accountant.action_client_account_menu
|
||||
msgid "Open Accounting Menu"
|
||||
msgstr ""
|
||||
msgstr "Apri Menù Contabilità"
|
||||
|
||||
#~ msgid "Accountant"
|
||||
#~ msgstr "Contabile"
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
|
||||
import account_analytic_analysis
|
||||
import cron_account_analytic_account
|
||||
import res_config
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
|
|
@ -40,6 +40,7 @@ Adds menu to show relevant information to each manager.You can also view the rep
|
|||
'account_analytic_analysis_view.xml',
|
||||
'account_analytic_analysis_menu.xml',
|
||||
'account_analytic_analysis_cron.xml',
|
||||
'res_config_view.xml',
|
||||
],
|
||||
'css': [
|
||||
'static/src/css/analytic.css'
|
||||
|
|
|
@ -147,6 +147,18 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_account_analytic_account_template_required" model="ir.ui.view">
|
||||
<field name="name">account.analytic.account.form.template.required</field>
|
||||
<field name="model">account.analytic.account</field>
|
||||
<field name="groups_id" eval="[(6, 0, [ref('group_template_required')])]"/>
|
||||
<field name="inherit_id" ref="analytic.view_account_analytic_account_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="template_id" position="attributes">
|
||||
<attribute name="attrs">{'required': [('type','=','contract')], 'invisible': [('type','in',['view', 'normal','template'])]}</attribute>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="template_of_contract_action" model="ir.actions.act_window">
|
||||
<field name="name">Template of Contract</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
|
|
@ -8,19 +8,19 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2011-08-23 11:12+0000\n"
|
||||
"Last-Translator: Rolv Råen <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-11-28 13:42+0000\n"
|
||||
"Last-Translator: Kaare Pettersen <Unknown>\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: 2012-11-25 06:06+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "No order to invoice, create"
|
||||
msgstr ""
|
||||
msgstr "Ingen ordre til å fakturere, opprett."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -30,12 +30,12 @@ msgstr "Grupper etter ..."
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "To Invoice"
|
||||
msgstr ""
|
||||
msgstr "Å fakturere."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Remaining"
|
||||
msgstr ""
|
||||
msgstr "Gjenstår."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -74,7 +74,7 @@ msgstr ""
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "⇒ Invoice"
|
||||
msgstr ""
|
||||
msgstr "⇒ Faktura."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,ca_invoiced:0
|
||||
|
@ -109,12 +109,12 @@ msgstr "Beregnet ved hjelp av formelen: Fakturert beløp / Total tid"
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Contracts not assigned"
|
||||
msgstr ""
|
||||
msgstr "Kontrakter som ikke er tilordnet."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Partner"
|
||||
msgstr ""
|
||||
msgstr "Partner."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -162,7 +162,7 @@ msgstr ""
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Expected"
|
||||
msgstr ""
|
||||
msgstr "Forventet."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -185,7 +185,7 @@ msgstr "Fakturert tid"
|
|||
#. module: account_analytic_analysis
|
||||
#: constraint:account.analytic.account:0
|
||||
msgid "Error! You cannot create recursive analytic accounts."
|
||||
msgstr ""
|
||||
msgstr "Feil! Du kan ikke opprette rekursive analytiske kontoer."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,real_margin_rate:0
|
||||
|
@ -209,18 +209,18 @@ msgstr ""
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Nothing to invoice, create"
|
||||
msgstr ""
|
||||
msgstr "Ikke noe å fakturere, opprett."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: model:ir.actions.act_window,name:account_analytic_analysis.template_of_contract_action
|
||||
#: model:ir.ui.menu,name:account_analytic_analysis.menu_template_of_contract_action
|
||||
msgid "Template of Contract"
|
||||
msgstr ""
|
||||
msgstr "Mal av kontrakt."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,hours_quantity:0
|
||||
msgid "Total Worked Time"
|
||||
msgstr ""
|
||||
msgstr "Totalt arbeids tid."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,real_margin:0
|
||||
|
@ -240,7 +240,7 @@ msgstr "Beregnet etter formelen: (Virkelig margin / Totale kostnader) * 100"
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "or view"
|
||||
msgstr ""
|
||||
msgstr "Eller vis."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -257,7 +257,7 @@ msgstr "Måned"
|
|||
#: model:ir.actions.act_window,name:account_analytic_analysis.action_hr_tree_invoiced_all
|
||||
#: model:ir.ui.menu,name:account_analytic_analysis.menu_action_hr_tree_invoiced_all
|
||||
msgid "Time & Materials to Invoice"
|
||||
msgstr ""
|
||||
msgstr "Tid og materialer til å fakturere."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: model:ir.actions.act_window,name:account_analytic_analysis.action_account_analytic_overdue_all
|
||||
|
@ -268,7 +268,7 @@ msgstr "Kontrakter"
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Start Date"
|
||||
msgstr ""
|
||||
msgstr "Startdato."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: help:account.analytic.account,total_cost:0
|
||||
|
@ -296,13 +296,13 @@ msgstr "Ventende kontrakter til å fornye med dine kunder"
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Timesheets"
|
||||
msgstr ""
|
||||
msgstr "Timelister."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: code:addons/account_analytic_analysis/account_analytic_analysis.py:452
|
||||
#, python-format
|
||||
msgid "Sale Order Lines of %s"
|
||||
msgstr ""
|
||||
msgstr "Salgs ordre linjer av %s."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -317,7 +317,7 @@ msgstr "Forfalt Antall"
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
msgstr "Status."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,ca_theorical:0
|
||||
|
@ -339,7 +339,7 @@ msgstr ""
|
|||
#. module: account_analytic_analysis
|
||||
#: model:ir.actions.act_window,name:account_analytic_analysis.action_sales_order
|
||||
msgid "Sales Orders"
|
||||
msgstr ""
|
||||
msgstr "Salgsordre."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: help:account.analytic.account,last_invoice_date:0
|
||||
|
@ -391,7 +391,7 @@ msgstr "Kontrakt"
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Invoiced"
|
||||
msgstr ""
|
||||
msgstr "Fakturert."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: help:account.analytic.account,hours_qtt_invoiced:0
|
||||
|
@ -426,12 +426,12 @@ msgstr ""
|
|||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,toinvoice_total:0
|
||||
msgid "Total to Invoice"
|
||||
msgstr ""
|
||||
msgstr "Totalt å fakturere."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Sale Orders"
|
||||
msgstr ""
|
||||
msgstr "Salgs ordre."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -441,7 +441,7 @@ msgstr "Åpen"
|
|||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,invoiced_total:0
|
||||
msgid "Total Invoiced"
|
||||
msgstr ""
|
||||
msgstr "Totalt fakturert."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: help:account.analytic.account,remaining_ca:0
|
||||
|
@ -451,7 +451,7 @@ msgstr "Beregnet med formelen: Maks. fakturapris - fakturert beløp"
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Responsible"
|
||||
msgstr ""
|
||||
msgstr "Ansvarlig."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,last_invoice_date:0
|
||||
|
@ -504,7 +504,7 @@ msgstr "Kontrakter til å fornye"
|
|||
#. module: account_analytic_analysis
|
||||
#: help:account.analytic.account,toinvoice_total:0
|
||||
msgid " Sum of everything that could be invoiced for this contract."
|
||||
msgstr ""
|
||||
msgstr " Summen av alt som kunne blitt fakturert for denne kontrakten."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,theorical_margin:0
|
||||
|
@ -514,7 +514,7 @@ msgstr "Teoretisk margin"
|
|||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,remaining_total:0
|
||||
msgid "Total Remaining"
|
||||
msgstr ""
|
||||
msgstr "Totalt gjenværende."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: help:account.analytic.account,real_margin:0
|
||||
|
@ -529,7 +529,7 @@ msgstr ""
|
|||
#. module: account_analytic_analysis
|
||||
#: field:account.analytic.account,fix_price_invoices:0
|
||||
msgid "Fixed Price"
|
||||
msgstr ""
|
||||
msgstr "Fikset pris."
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: help:account.analytic.account,last_worked_date:0
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-09 02:53+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-29 02:09+0000\n"
|
||||
"Last-Translator: digitalsatori <digisatori@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: 2012-11-25 06:06+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -29,12 +29,12 @@ msgstr "分组..."
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "To Invoice"
|
||||
msgstr ""
|
||||
msgstr "开票"
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Remaining"
|
||||
msgstr ""
|
||||
msgstr "剩余"
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -111,7 +111,7 @@ msgstr ""
|
|||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Partner"
|
||||
msgstr ""
|
||||
msgstr "业务伙伴"
|
||||
|
||||
#. module: account_analytic_analysis
|
||||
#: view:account.analytic.account:0
|
||||
|
|
|
@ -1,8 +1,8 @@
|
|||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2011 OpenERP S.A (<http://www.openerp.com>).
|
||||
# OpenERP, Open Source Business Applications
|
||||
# Copyright (C) 2004-2012 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
|
||||
|
@ -19,4 +19,13 @@
|
|||
#
|
||||
##############################################################################
|
||||
|
||||
import contact
|
||||
from osv import fields, osv
|
||||
|
||||
class sale_configuration(osv.osv_memory):
|
||||
_inherit = 'sale.config.settings'
|
||||
|
||||
_columns = {
|
||||
'group_template_required': fields.boolean("Mandatory use of templates.",
|
||||
implied_group='account_analytic_analysis.group_template_required',
|
||||
help="Allows you to set the template field as required when creating an analytic account or a contract."),
|
||||
}
|
|
@ -0,0 +1,21 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<record id="view_sales_config" model="ir.ui.view">
|
||||
<field name="name">sale settings</field>
|
||||
<field name="model">sale.config.settings</field>
|
||||
<field name="inherit_id" ref="sale.view_sales_config"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//div[@name='module_analytic_user_function']" position="inside">
|
||||
<div>
|
||||
<field name="group_template_required" class="oe_inline"/>
|
||||
<label for="group_template_required"/>
|
||||
</div>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
@ -6,5 +6,12 @@
|
|||
<field eval="[(4,ref('sale.group_analytic_accounting'))]" name="groups_id"/>
|
||||
</record>
|
||||
|
||||
<record id="group_template_required" model="res.groups">
|
||||
<field name="name">Mandatory use of templates in contracts</field>
|
||||
<field name="category_id" ref="base.module_category_sales_management"/>
|
||||
<field name="comment">the field template of the analytic accounts and contracts will be required.</field>
|
||||
<field name="implied_ids" eval="[(4, ref('base.group_user'))]"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_analytic_default
|
||||
#: model:ir.actions.act_window,name:account_analytic_default.analytic_rule_action_partner
|
||||
|
|
|
@ -29,15 +29,6 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record id="journal_col11" model="account.journal.column">
|
||||
<field eval=""""Analytic Distribution"""" name="name"/>
|
||||
<field eval="15" name="sequence"/>
|
||||
<field name="view_id" ref="account.account_journal_view"/>
|
||||
<field eval="0" name="required"/>
|
||||
<field eval=""""analytics_id"""" name="field"/>
|
||||
<field eval="0" name="readonly"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_move_line_form_inherit">
|
||||
<field name="name">account.move.line.form.inherit</field>
|
||||
<field name="model">account.move.line</field>
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: view:analytic.plan.create.model:0
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-08 04:10+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 07:38+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-25 06:07+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: view:analytic.plan.create.model:0
|
||||
|
@ -95,7 +95,7 @@ msgstr "项 ID"
|
|||
#: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:41
|
||||
#, python-format
|
||||
msgid "Error!"
|
||||
msgstr ""
|
||||
msgstr "错误!"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: report:account.analytic.account.crossovered.analytic:0
|
||||
|
@ -136,7 +136,7 @@ msgstr "BBA传输结构有误!"
|
|||
#: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:41
|
||||
#, python-format
|
||||
msgid "There is no analytic plan defined."
|
||||
msgstr ""
|
||||
msgstr "没有辅助核算计划定义"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: constraint:account.move.line:0
|
||||
|
@ -187,7 +187,7 @@ msgstr "百分比"
|
|||
#: code:addons/account_analytic_plans/wizard/account_crossovered_analytic.py:61
|
||||
#, python-format
|
||||
msgid "There are no analytic lines related to account %s."
|
||||
msgstr ""
|
||||
msgstr "没有辅助核算行关联到科目%s."
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: field:account.analytic.plan.instance.line,analytic_account_id:0
|
||||
|
@ -229,7 +229,7 @@ msgstr "辅助核算方案明细"
|
|||
#. module: account_analytic_plans
|
||||
#: constraint:account.move.line:0
|
||||
msgid "Account and Period must belong to the same company."
|
||||
msgstr ""
|
||||
msgstr "科目和会计周期必须属于同一个公司"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: constraint:account.bank.statement:0
|
||||
|
@ -257,7 +257,7 @@ msgstr "币别"
|
|||
#. module: account_analytic_plans
|
||||
#: constraint:account.analytic.line:0
|
||||
msgid "You cannot create analytic line on view account."
|
||||
msgstr ""
|
||||
msgstr "你不能视图科目上面创建辅助核算行。"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: report:account.analytic.account.crossovered.analytic:0
|
||||
|
@ -272,7 +272,7 @@ msgstr "项5 ID"
|
|||
#. module: account_analytic_plans
|
||||
#: constraint:account.move.line:0
|
||||
msgid "You cannot create journal items on closed account."
|
||||
msgstr ""
|
||||
msgstr "你不能在关闭的科目创建账目项目"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: model:ir.model,name:account_analytic_plans.model_account_analytic_plan_instance_line
|
||||
|
@ -294,7 +294,7 @@ msgstr "日期到"
|
|||
#: code:addons/account_analytic_plans/account_analytic_plans.py:486
|
||||
#, python-format
|
||||
msgid "You have to define an analytic journal on the '%s' journal."
|
||||
msgstr ""
|
||||
msgstr "你必须在'%s' 分类账定义一个辅助核算分类账"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: field:account.crossovered.analytic,empty_line:0
|
||||
|
@ -408,7 +408,7 @@ msgstr "项4 ID"
|
|||
#: code:addons/account_analytic_plans/account_analytic_plans.py:234
|
||||
#, python-format
|
||||
msgid "The total should be between %s and %s."
|
||||
msgstr ""
|
||||
msgstr "总计在 %s 和 %s 之间。"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: view:account.analytic.plan.instance.line:0
|
||||
|
@ -461,7 +461,7 @@ msgstr "账簿"
|
|||
msgid ""
|
||||
"Configuration error!\n"
|
||||
"The currency chosen should be shared by the default accounts too."
|
||||
msgstr ""
|
||||
msgstr "配置错误"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: model:ir.model,name:account_analytic_plans.model_analytic_plan_create_model
|
||||
|
@ -481,19 +481,19 @@ msgstr "分摊模型"
|
|||
#. module: account_analytic_plans
|
||||
#: constraint:account.move.line:0
|
||||
msgid "You cannot create journal items on an account of type view."
|
||||
msgstr ""
|
||||
msgstr "你不能在视图类型的科目创建账目项目"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: code:addons/account_analytic_plans/wizard/account_crossovered_analytic.py:61
|
||||
#, python-format
|
||||
msgid "User Error!"
|
||||
msgstr ""
|
||||
msgstr "用户错误!"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:38
|
||||
#, python-format
|
||||
msgid "Please put a name and a code before saving the model."
|
||||
msgstr ""
|
||||
msgstr "保存模型前请输入名称和代码"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: field:account.crossovered.analytic,date1:0
|
||||
|
@ -505,7 +505,7 @@ msgstr "开始日期"
|
|||
msgid ""
|
||||
"The amount of the voucher must be the same amount as the one on the "
|
||||
"statement line."
|
||||
msgstr ""
|
||||
msgstr "单据的金额必须跟对账单其中一行金额相同。"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: field:account.analytic.plan.line,sequence:0
|
||||
|
@ -521,13 +521,13 @@ msgstr "每个公司的账簿名称必须唯一!"
|
|||
#: view:account.crossovered.analytic:0
|
||||
#: view:analytic.plan.create.model:0
|
||||
msgid "or"
|
||||
msgstr ""
|
||||
msgstr "or"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: code:addons/account_analytic_plans/account_analytic_plans.py:221
|
||||
#, python-format
|
||||
msgid "A model with this name and code already exists."
|
||||
msgstr ""
|
||||
msgstr "这个名称和代码的模型已经存在。"
|
||||
|
||||
#~ msgid "Select Information"
|
||||
#~ msgstr "选择信息"
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_anglo_saxon
|
||||
#: sql_constraint:purchase.order:0
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_asset
|
||||
#: view:account.asset.asset:0
|
||||
|
|
|
@ -43,10 +43,10 @@
|
|||
<field name="arch" type="xml">
|
||||
<data>
|
||||
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/tree/field[@name='date']" position="after">
|
||||
<field name="val_date"/>
|
||||
<field name="val_date" invisible="1"/>
|
||||
</xpath>
|
||||
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/tree/field[@name='amount']" position="after">
|
||||
<field name="globalisation_id" string="Glob. Id"/>
|
||||
<field name="globalisation_id" string="Glob. Id" invisible="1"/>
|
||||
<field name="state" invisible="1"/>
|
||||
</xpath>
|
||||
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/form/group/field[@name='date']" position="after">
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_bank_statement_extensions
|
||||
#: view:account.bank.statement.line:0
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-09 14:55+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 06:46+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:32+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_bank_statement_extensions
|
||||
#: view:account.bank.statement.line:0
|
||||
|
@ -59,7 +59,7 @@ msgstr "取消所选的表行"
|
|||
#. module: account_bank_statement_extensions
|
||||
#: field:account.bank.statement.line,val_date:0
|
||||
msgid "Value Date"
|
||||
msgstr ""
|
||||
msgstr "起息日"
|
||||
|
||||
#. module: account_bank_statement_extensions
|
||||
#: constraint:res.partner.bank:0
|
||||
|
@ -109,7 +109,7 @@ msgstr "批量付款信息"
|
|||
#. module: account_bank_statement_extensions
|
||||
#: field:account.bank.statement.line,state:0
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
msgstr "状态"
|
||||
|
||||
#. module: account_bank_statement_extensions
|
||||
#: code:addons/account_bank_statement_extensions/account_bank_statement.py:129
|
||||
|
@ -117,12 +117,12 @@ msgstr ""
|
|||
msgid ""
|
||||
"Delete operation not allowed. Please go to the associated bank "
|
||||
"statement in order to delete and/or modify bank statement line."
|
||||
msgstr ""
|
||||
msgstr "不允许删除。为了删除和(或)修改银行对账单行,请到关联的银行对账单操作。"
|
||||
|
||||
#. module: account_bank_statement_extensions
|
||||
#: view:confirm.statement.line:0
|
||||
msgid "or"
|
||||
msgstr ""
|
||||
msgstr "or"
|
||||
|
||||
#. module: account_bank_statement_extensions
|
||||
#: view:confirm.statement.line:0
|
||||
|
@ -234,7 +234,7 @@ msgstr "手工"
|
|||
#. module: account_bank_statement_extensions
|
||||
#: view:account.bank.statement.line:0
|
||||
msgid "Bank Transaction"
|
||||
msgstr ""
|
||||
msgstr "银行交易"
|
||||
|
||||
#. module: account_bank_statement_extensions
|
||||
#: view:account.bank.statement.line:0
|
||||
|
@ -303,7 +303,7 @@ msgstr "编号"
|
|||
msgid ""
|
||||
"The amount of the voucher must be the same amount as the one on the "
|
||||
"statement line."
|
||||
msgstr ""
|
||||
msgstr "单据的金额必须跟对账单其中一行金额相同。"
|
||||
|
||||
#. module: account_bank_statement_extensions
|
||||
#: field:account.bank.statement.line,counterparty_name:0
|
||||
|
@ -351,7 +351,7 @@ msgstr "银行单据行"
|
|||
#: code:addons/account_bank_statement_extensions/account_bank_statement.py:129
|
||||
#, python-format
|
||||
msgid "Warning!"
|
||||
msgstr ""
|
||||
msgstr "警告!"
|
||||
|
||||
#. module: account_bank_statement_extensions
|
||||
#: view:account.bank.statement.line.global:0
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.analytic:0
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2010-09-09 07:05+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 16:01+0000\n"
|
||||
"Last-Translator: Andrius Preimantas <andrius.preimantas@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: 2012-11-25 06:16+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.analytic:0
|
||||
|
@ -27,7 +27,7 @@ msgstr ""
|
|||
#. module: account_budget
|
||||
#: field:crossovered.budget,creating_user_id:0
|
||||
msgid "Responsible User"
|
||||
msgstr ""
|
||||
msgstr "Atsakingas naudotojas"
|
||||
|
||||
#. module: account_budget
|
||||
#: selection:crossovered.budget,state:0
|
||||
|
@ -38,12 +38,12 @@ msgstr "Patvirtinta"
|
|||
#: model:ir.actions.act_window,name:account_budget.open_budget_post_form
|
||||
#: model:ir.ui.menu,name:account_budget.menu_budget_post_form
|
||||
msgid "Budgetary Positions"
|
||||
msgstr ""
|
||||
msgstr "Biudžeto pozicija"
|
||||
|
||||
#. module: account_budget
|
||||
#: report:account.budget:0
|
||||
msgid "Printed at:"
|
||||
msgstr ""
|
||||
msgstr "Atspausdinta:"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:crossovered.budget:0
|
||||
|
@ -53,17 +53,17 @@ msgstr "Patvirtinti"
|
|||
#. module: account_budget
|
||||
#: field:crossovered.budget,validating_user_id:0
|
||||
msgid "Validate User"
|
||||
msgstr ""
|
||||
msgstr "Patvirtinti vartotoją"
|
||||
|
||||
#. module: account_budget
|
||||
#: model:ir.actions.act_window,name:account_budget.action_account_budget_crossvered_summary_report
|
||||
msgid "Print Summary"
|
||||
msgstr ""
|
||||
msgstr "Spausdinti suvestinę"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:crossovered.budget.lines,paid_date:0
|
||||
msgid "Paid Date"
|
||||
msgstr ""
|
||||
msgstr "Apmokėjimo data"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:account.budget.analytic,date_to:0
|
||||
|
@ -82,7 +82,7 @@ msgstr "Juodraštis"
|
|||
#. module: account_budget
|
||||
#: report:account.budget:0
|
||||
msgid "at"
|
||||
msgstr ""
|
||||
msgstr "ties"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.report:0
|
||||
|
@ -104,12 +104,12 @@ msgstr ""
|
|||
#. module: account_budget
|
||||
#: selection:crossovered.budget,state:0
|
||||
msgid "Validated"
|
||||
msgstr ""
|
||||
msgstr "Patvirtintas"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:crossovered.budget.lines,percentage:0
|
||||
msgid "Percentage"
|
||||
msgstr ""
|
||||
msgstr "Procentai"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:crossovered.budget,state:0
|
||||
|
@ -120,7 +120,7 @@ msgstr "Būsena"
|
|||
#: code:addons/account_budget/account_budget.py:119
|
||||
#, python-format
|
||||
msgid "The Budget '%s' has no accounts!"
|
||||
msgstr ""
|
||||
msgstr "Biudžetui '%s' nepriskirtos sąskaitos!"
|
||||
|
||||
#. module: account_budget
|
||||
#: report:account.budget:0
|
||||
|
@ -131,24 +131,24 @@ msgstr "Aprašas"
|
|||
#. module: account_budget
|
||||
#: report:crossovered.budget.report:0
|
||||
msgid "Currency"
|
||||
msgstr ""
|
||||
msgstr "Valiuta"
|
||||
|
||||
#. module: account_budget
|
||||
#: report:crossovered.budget.report:0
|
||||
msgid "Total :"
|
||||
msgstr ""
|
||||
msgstr "Iš viso:"
|
||||
|
||||
#. module: account_budget
|
||||
#: constraint:account.analytic.account:0
|
||||
msgid "Error! You cannot create recursive analytic accounts."
|
||||
msgstr ""
|
||||
msgstr "Klaida! Negalima kurti rekursivių analitinių sąskaitų"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:account.budget.post,company_id:0
|
||||
#: field:crossovered.budget,company_id:0
|
||||
#: field:crossovered.budget.lines,company_id:0
|
||||
msgid "Company"
|
||||
msgstr ""
|
||||
msgstr "Įmonė"
|
||||
|
||||
#. module: account_budget
|
||||
#: report:crossovered.budget.report:0
|
||||
|
@ -158,20 +158,20 @@ msgstr "iki"
|
|||
#. module: account_budget
|
||||
#: view:crossovered.budget:0
|
||||
msgid "Reset to Draft"
|
||||
msgstr ""
|
||||
msgstr "Atstatyti į juodraštį"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.post:0
|
||||
#: view:crossovered.budget:0
|
||||
#: field:crossovered.budget.lines,planned_amount:0
|
||||
msgid "Planned Amount"
|
||||
msgstr ""
|
||||
msgstr "Suplanuota suma"
|
||||
|
||||
#. module: account_budget
|
||||
#: report:account.budget:0
|
||||
#: report:crossovered.budget.report:0
|
||||
msgid "Perc(%)"
|
||||
msgstr ""
|
||||
msgstr "Procentai (%)"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:crossovered.budget:0
|
||||
|
@ -183,7 +183,7 @@ msgstr "Atlikta"
|
|||
#: report:account.budget:0
|
||||
#: report:crossovered.budget.report:0
|
||||
msgid "Practical Amt"
|
||||
msgstr ""
|
||||
msgstr "Praktinė suma"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.analytic.account:0
|
||||
|
@ -191,7 +191,7 @@ msgstr ""
|
|||
#: view:crossovered.budget:0
|
||||
#: field:crossovered.budget.lines,practical_amount:0
|
||||
msgid "Practical Amount"
|
||||
msgstr ""
|
||||
msgstr "Praktinė suma"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:crossovered.budget,date_to:0
|
||||
|
@ -203,12 +203,12 @@ msgstr "Pabaigos data"
|
|||
#: model:ir.model,name:account_budget.model_account_budget_analytic
|
||||
#: model:ir.model,name:account_budget.model_account_budget_report
|
||||
msgid "Account Budget report for analytic account"
|
||||
msgstr ""
|
||||
msgstr "Biudžeto ataskaita analitinei sąskaitai"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.analytic.account:0
|
||||
msgid "Theoritical Amount"
|
||||
msgstr ""
|
||||
msgstr "Teorinė suma"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:account.budget.post,name:0
|
||||
|
@ -219,7 +219,7 @@ msgstr "Pavadinimas"
|
|||
#. module: account_budget
|
||||
#: model:ir.model,name:account_budget.model_crossovered_budget_lines
|
||||
msgid "Budget Line"
|
||||
msgstr ""
|
||||
msgstr "Biudžeto eilutė"
|
||||
|
||||
#. module: account_budget
|
||||
#: report:account.budget:0
|
||||
|
@ -234,12 +234,12 @@ msgstr "Biudžetas"
|
|||
#. module: account_budget
|
||||
#: view:crossovered.budget:0
|
||||
msgid "To Approve Budgets"
|
||||
msgstr ""
|
||||
msgstr "Patvirtinti biudžetą"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:crossovered.budget:0
|
||||
msgid "Duration"
|
||||
msgstr ""
|
||||
msgstr "Trukmė"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:account.budget.post,code:0
|
||||
|
@ -251,7 +251,7 @@ msgstr "Kodas"
|
|||
#: view:account.budget.analytic:0
|
||||
#: view:account.budget.crossvered.report:0
|
||||
msgid "This wizard is used to print budget"
|
||||
msgstr ""
|
||||
msgstr "Šis vedlys naudojamas atspausdinti biudžetui"
|
||||
|
||||
#. module: account_budget
|
||||
#: model:ir.actions.act_window,name:account_budget.act_crossovered_budget_view
|
||||
|
@ -267,7 +267,7 @@ msgstr "Biudžetai"
|
|||
#. module: account_budget
|
||||
#: view:account.budget.crossvered.summary.report:0
|
||||
msgid "This wizard is used to print summary of budgets"
|
||||
msgstr ""
|
||||
msgstr "Šis vedlys naudojamas atspausdinti biudžetų suvestinei"
|
||||
|
||||
#. module: account_budget
|
||||
#: selection:crossovered.budget,state:0
|
||||
|
@ -277,19 +277,19 @@ msgstr "Nutrauktas"
|
|||
#. module: account_budget
|
||||
#: view:crossovered.budget:0
|
||||
msgid "Approve"
|
||||
msgstr ""
|
||||
msgstr "Patvirtinti"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:crossovered.budget:0
|
||||
msgid "To Approve"
|
||||
msgstr ""
|
||||
msgstr "Patvirtinti"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.post:0
|
||||
#: field:crossovered.budget.lines,general_budget_id:0
|
||||
#: model:ir.model,name:account_budget.model_account_budget_post
|
||||
msgid "Budgetary Position"
|
||||
msgstr ""
|
||||
msgstr "Biudžeto pozicija"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:account.budget.analytic,date_from:0
|
||||
|
@ -308,13 +308,13 @@ msgstr ""
|
|||
#: report:account.budget:0
|
||||
#: report:crossovered.budget.report:0
|
||||
msgid "Theoretical Amt"
|
||||
msgstr ""
|
||||
msgstr "Teorinė suma"
|
||||
|
||||
#. module: account_budget
|
||||
#: code:addons/account_budget/account_budget.py:119
|
||||
#, python-format
|
||||
msgid "Error!"
|
||||
msgstr ""
|
||||
msgstr "Klaida!"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.analytic:0
|
||||
|
@ -329,7 +329,7 @@ msgstr "Spausdinti"
|
|||
#: view:crossovered.budget:0
|
||||
#: field:crossovered.budget.lines,theoritical_amount:0
|
||||
msgid "Theoretical Amount"
|
||||
msgstr ""
|
||||
msgstr "Teorinė suma"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.analytic:0
|
||||
|
@ -337,7 +337,7 @@ msgstr ""
|
|||
#: view:account.budget.crossvered.summary.report:0
|
||||
#: view:account.budget.report:0
|
||||
msgid "or"
|
||||
msgstr ""
|
||||
msgstr "arba"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:crossovered.budget.lines,analytic_account_id:0
|
||||
|
@ -348,7 +348,7 @@ msgstr "Analitinė sąskaita"
|
|||
#. module: account_budget
|
||||
#: report:account.budget:0
|
||||
msgid "Budget :"
|
||||
msgstr ""
|
||||
msgstr "Biudžetas:"
|
||||
|
||||
#. module: account_budget
|
||||
#: model:ir.actions.act_window,help:account_budget.act_crossovered_budget_view
|
||||
|
@ -377,7 +377,7 @@ msgstr ""
|
|||
#: report:account.budget:0
|
||||
#: report:crossovered.budget.report:0
|
||||
msgid "Planned Amt"
|
||||
msgstr ""
|
||||
msgstr "Planuojama suma"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.post:0
|
||||
|
@ -397,7 +397,7 @@ msgstr "Sąskaitos"
|
|||
#: model:ir.actions.act_window,name:account_budget.act_crossovered_budget_lines_view
|
||||
#: model:ir.ui.menu,name:account_budget.menu_act_crossovered_budget_lines_view
|
||||
msgid "Budget Lines"
|
||||
msgstr ""
|
||||
msgstr "Biudžeto eilutės"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.analytic:0
|
||||
|
@ -418,12 +418,12 @@ msgstr "Pradžios data"
|
|||
#: report:account.budget:0
|
||||
#: report:crossovered.budget.report:0
|
||||
msgid "Analysis from"
|
||||
msgstr ""
|
||||
msgstr "Analizė nuo"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:crossovered.budget:0
|
||||
msgid "Draft Budgets"
|
||||
msgstr ""
|
||||
msgstr "Nepatvirtinti biudžetai"
|
||||
|
||||
#~ msgid "% performance"
|
||||
#~ msgstr "% vykdymas"
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-08 03:50+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 06:47+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-25 06:16+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_budget
|
||||
#: view:account.budget.analytic:0
|
||||
|
@ -141,7 +141,7 @@ msgstr "合计:"
|
|||
#. module: account_budget
|
||||
#: constraint:account.analytic.account:0
|
||||
msgid "Error! You cannot create recursive analytic accounts."
|
||||
msgstr ""
|
||||
msgstr "错误!你不能递归创建辅助核算项"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:account.budget.post,company_id:0
|
||||
|
@ -239,7 +239,7 @@ msgstr "待审核的预算"
|
|||
#. module: account_budget
|
||||
#: view:crossovered.budget:0
|
||||
msgid "Duration"
|
||||
msgstr ""
|
||||
msgstr "持续时间"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:account.budget.post,code:0
|
||||
|
@ -337,7 +337,7 @@ msgstr "理论金额"
|
|||
#: view:account.budget.crossvered.summary.report:0
|
||||
#: view:account.budget.report:0
|
||||
msgid "or"
|
||||
msgstr ""
|
||||
msgstr "or"
|
||||
|
||||
#. module: account_budget
|
||||
#: field:crossovered.budget.lines,analytic_account_id:0
|
||||
|
|
|
@ -8,19 +8,19 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2010-11-21 07:53+0000\n"
|
||||
"Last-Translator: OpenERP Administrators <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-11-28 19:46+0000\n"
|
||||
"Last-Translator: Davide Corio - agilebg.com <davide.corio@agilebg.com>\n"
|
||||
"Language-Team: Italian <it@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: 2012-11-25 06:24+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_cancel
|
||||
#: view:account.invoice:0
|
||||
msgid "Cancel"
|
||||
msgstr "Cancella"
|
||||
msgstr "Annulla"
|
||||
|
||||
#~ msgid "Account Cancel"
|
||||
#~ msgstr "Account Cancel"
|
||||
|
|
|
@ -11,7 +11,7 @@
|
|||
<field name="model">account.journal</field>
|
||||
<field name="inherit_id" ref="account.view_account_journal_form" />
|
||||
<field name="arch" type="xml">
|
||||
<field name="type" on_change="onchange_type(type, currency)" />
|
||||
<field name="type" />
|
||||
<field name="entry_posted" position="after">
|
||||
<field name="allow_check_writing" attrs="{'readonly':[('type','!=','bank')]}" />
|
||||
<field name="use_preprint_check" attrs="{'readonly':[('type','!=','bank')]}" />
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-05-10 18:06+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 06:58+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:32+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_check_writing
|
||||
#: selection:res.company,check_layout:0
|
||||
|
@ -110,6 +110,15 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p class=\"oe_view_nocontent_create\">\n"
|
||||
" 单击 创建一个新的支票。\n"
|
||||
" </p><p>\n"
|
||||
" 支票支付表单允许跟踪用支票支付给供应商的过程。\n"
|
||||
" 当年选择了一个供应商,Openerp 将自动提供 支付\n"
|
||||
" 方法和支付金额,用于核销待支付的供应商发票和\n"
|
||||
" 单据。\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: account_check_writing
|
||||
#: field:account.voucher,allow_check:0
|
||||
|
@ -131,7 +140,7 @@ msgstr "用预先打印的支票"
|
|||
#. module: account_check_writing
|
||||
#: model:ir.actions.report.xml,name:account_check_writing.account_print_check_bottom
|
||||
msgid "Print Check (Bottom)"
|
||||
msgstr ""
|
||||
msgstr "打印支票(底部)"
|
||||
|
||||
#. module: account_check_writing
|
||||
#: sql_constraint:res.company:0
|
||||
|
@ -148,14 +157,14 @@ msgstr "到期日期"
|
|||
#. module: account_check_writing
|
||||
#: model:ir.actions.report.xml,name:account_check_writing.account_print_check_middle
|
||||
msgid "Print Check (Middle)"
|
||||
msgstr ""
|
||||
msgstr "打印支票(中间)"
|
||||
|
||||
#. module: account_check_writing
|
||||
#: constraint:account.journal:0
|
||||
msgid ""
|
||||
"Configuration error!\n"
|
||||
"The currency chosen should be shared by the default accounts too."
|
||||
msgstr ""
|
||||
msgstr "配置错误!"
|
||||
|
||||
#. module: account_check_writing
|
||||
#: model:ir.model,name:account_check_writing.model_res_company
|
||||
|
@ -171,7 +180,7 @@ msgstr "截止余额"
|
|||
#. module: account_check_writing
|
||||
#: model:ir.actions.report.xml,name:account_check_writing.account_print_check_top
|
||||
msgid "Print Check (Top)"
|
||||
msgstr ""
|
||||
msgstr "打印支票(顶部)"
|
||||
|
||||
#. module: account_check_writing
|
||||
#: report:account.print.check.bottom:0
|
||||
|
|
|
@ -127,7 +127,7 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_move_line_tree" model="ir.ui.view">
|
||||
<!-- <record id="view_move_line_tree" model="ir.ui.view">
|
||||
<field name="name">account.move.line.tree.followup</field>
|
||||
<field name="model">account.move.line</field>
|
||||
<field name="inherit_id" ref="account.view_move_line_tree"/>
|
||||
|
@ -137,7 +137,7 @@
|
|||
<field name="followup_line_id"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
</record> -->
|
||||
|
||||
<act_window domain="[('reconcile_id', '=', False),('account_id.type','=','receivable')]" id="act_account_partner_account_move_all" name="Receivable Items" res_model="account.move.line" src_model="" view_id="account_move_line_partner_tree"/>
|
||||
|
||||
|
|
|
@ -14,28 +14,16 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_move_line_tree_wiz">
|
||||
<!-- <record model="ir.ui.view" id="view_move_line_tree_wiz">
|
||||
<field name="name">account.move.line.tree</field>
|
||||
<field name="model">account.move.line</field>
|
||||
<field name="priority" eval="1"/>
|
||||
<field name="inherit_id" ref="account.view_move_line_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Account Entry Line">
|
||||
<field name="partner_id"/>
|
||||
<field name="ref"/>
|
||||
<field name="name"/>
|
||||
<field name="journal_id"/>
|
||||
<field name="account_id"/>
|
||||
<field name="date_maturity"/>
|
||||
<field name="date"/>
|
||||
<field name="debit" sum="Total debit"/>
|
||||
<field name="credit" sum="Total credit"/>
|
||||
<field name="reconcile" position="after">
|
||||
<field name="amount_to_pay"/>
|
||||
<field name="amount_currency" groups="base.group_multi_currency"/>
|
||||
<field name="currency_id" groups="base.group_multi_currency"/>
|
||||
<field name="period_id" invisible="1"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
</field>
|
||||
</record> -->
|
||||
|
||||
<menuitem id="menu_main_payment" name="Payment" parent="account.menu_finance" sequence="7"/>
|
||||
|
||||
|
|
|
@ -4,45 +4,6 @@
|
|||
|
||||
<!--Account Journal Internal Number of account move line-->
|
||||
|
||||
<record id="sp_journal_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_sp_journal_view"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="journal_col1" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_journal_view"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="bank_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_journal_bank_view"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="bank_col3_multi" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_journal_bank_view_multi"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
|
||||
<record id="sp_refund_journal_col3" model="account.journal.column">
|
||||
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
|
||||
<field name="name">Internal Number</field>
|
||||
<field name="field">internal_sequence_number</field>
|
||||
<field eval="True" name="required"/>
|
||||
<field eval="2" name="sequence"/>
|
||||
</record>
|
||||
<record id="sequence_journal" model="ir.sequence.type">
|
||||
<field name="name">Account Journal</field>
|
||||
<field name="code">account.journal</field>
|
||||
|
|
|
@ -8,19 +8,19 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-09 04:00+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 07:24+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:31+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: account_sequence
|
||||
#: constraint:account.move.line:0
|
||||
msgid "You cannot create journal items on closed account."
|
||||
msgstr ""
|
||||
msgstr "你不能在关闭的科目创建账目项目"
|
||||
|
||||
#. module: account_sequence
|
||||
#: view:account.sequence.installer:0
|
||||
|
@ -112,14 +112,14 @@ msgstr "名称"
|
|||
#. module: account_sequence
|
||||
#: constraint:account.move.line:0
|
||||
msgid "You cannot create journal items on an account of type view."
|
||||
msgstr ""
|
||||
msgstr "你不能在视图类型的科目创建账目项目"
|
||||
|
||||
#. module: account_sequence
|
||||
#: constraint:account.journal:0
|
||||
msgid ""
|
||||
"Configuration error!\n"
|
||||
"The currency chosen should be shared by the default accounts too."
|
||||
msgstr ""
|
||||
msgstr "配置错误"
|
||||
|
||||
#. module: account_sequence
|
||||
#: sql_constraint:account.move.line:0
|
||||
|
@ -130,7 +130,7 @@ msgstr "错误的分录"
|
|||
#: constraint:account.move:0
|
||||
msgid ""
|
||||
"You cannot create more than one move per period on a centralized journal."
|
||||
msgstr ""
|
||||
msgstr "在每个会计期间,你不可以创建1个以上的总分类凭证"
|
||||
|
||||
#. module: account_sequence
|
||||
#: field:account.journal,internal_sequence_id:0
|
||||
|
@ -140,7 +140,7 @@ msgstr "内部序列"
|
|||
#. module: account_sequence
|
||||
#: constraint:account.move.line:0
|
||||
msgid "Account and Period must belong to the same company."
|
||||
msgstr ""
|
||||
msgstr "科目和会计周期必须属于同一个公司"
|
||||
|
||||
#. module: account_sequence
|
||||
#: help:account.sequence.installer,prefix:0
|
||||
|
|
|
@ -8,9 +8,9 @@
|
|||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@name='invoice_open'][last()]" position="after">
|
||||
<button name="invoice_pay_customer" type="object" string="Register Payment"
|
||||
attrs="{'invisible': ['|', ('state','!=','open'), ('sent','=',True)]}"/>
|
||||
attrs="{'invisible': ['|', ('state','!=','open'), ('sent','=',True)]}" groups="base.group_user"/>
|
||||
<button name="invoice_pay_customer" type="object" string="Register Payment"
|
||||
attrs="{'invisible': ['|', ('state','!=','open'), ('sent','=',False)]}" class="oe_highlight"/>
|
||||
attrs="{'invisible': ['|', ('state','!=','open'), ('sent','=',False)]}" class="oe_highlight" groups="base.group_user"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
@ -20,7 +20,7 @@
|
|||
<field name="inherit_id" ref="account.invoice_supplier_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@name='invoice_open'][last()]" position="after">
|
||||
<button name="invoice_pay_customer" type="object" string="Pay" states="open" class="oe_highlight"/>
|
||||
<button name="invoice_pay_customer" type="object" string="Pay" states="open" class="oe_highlight" groups="base.group_user"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
|
|
@ -213,7 +213,7 @@
|
|||
<field name="inherit_id" ref="account.view_bank_statement_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/tree/field[@name='amount']" position="after">
|
||||
<field name="voucher_id" widget="many2onebutton" options="{'label':{'create':'Reconcile','edit':'Edit Reconciliation'}}" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'default_active': False}"/>
|
||||
<field name="voucher_id" string="" widget="many2onebutton" options="{'label':{'create':'Reconcile','edit':'Edit Reconciliation'}}" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'default_active': False}"/>
|
||||
</xpath>
|
||||
<xpath expr="//page[@name='statement_line_ids']/field[@name='line_ids']/form/group/field[@name='sequence']" position="before">
|
||||
<field name="voucher_id" widget="many2onebutton" options="{'label':{'create':'Reconcile','edit':'Edit Reconciliation'}}" context="{'line_type': type, 'default_type': amount < 0 and 'payment' or 'receipt', 'type': amount < 0 and 'payment' or 'receipt', 'default_partner_id': partner_id, 'default_journal_id': parent.journal_id, 'default_amount': abs(amount), 'default_reference': ref, 'default_date': date, 'default_name': name, 'default_active': False}"/>
|
||||
|
|
|
@ -66,7 +66,6 @@
|
|||
default_credit_account_id: account_cash_usd_id
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
|
||||
-
|
||||
I create the first invoice on 1st January for 200 USD
|
||||
|
|
|
@ -23,7 +23,6 @@
|
|||
default_credit_account_id: account.cash
|
||||
currency: base.EUR
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create a bank journal with USD as currency
|
||||
-
|
||||
|
@ -37,7 +36,6 @@
|
|||
default_credit_account_id: account.cash
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 200 USD
|
||||
-
|
||||
|
|
|
@ -59,7 +59,6 @@
|
|||
default_debit_account_id: account.cash
|
||||
default_credit_account_id: account.cash
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create a bank journal with USD as currency
|
||||
-
|
||||
|
@ -73,7 +72,6 @@
|
|||
default_credit_account_id: account_cash_usd_id
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 200 USD
|
||||
-
|
||||
|
|
|
@ -59,7 +59,6 @@
|
|||
default_debit_account_id: account.cash
|
||||
default_credit_account_id: account.cash
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create a bank journal with USD as currency
|
||||
-
|
||||
|
@ -73,7 +72,6 @@
|
|||
default_credit_account_id: account_cash_usd_id
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 200 USD
|
||||
-
|
||||
|
|
|
@ -27,7 +27,6 @@
|
|||
default_debit_account_id: account.cash
|
||||
default_credit_account_id: account.cash
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 150 EUR
|
||||
-
|
||||
|
|
|
@ -61,7 +61,6 @@
|
|||
default_credit_account_id: account_cash_chf_id
|
||||
currency: base.CHF
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create the first invoice on 1st January for 200 CAD
|
||||
-
|
||||
|
|
|
@ -46,7 +46,6 @@
|
|||
default_debit_account_id: account.cash
|
||||
default_credit_account_id: account.cash
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create a bank journal with USD as currency
|
||||
-
|
||||
|
@ -60,7 +59,6 @@
|
|||
default_credit_account_id: account_cash_usd_id2
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I set the context as would do the action in supplier invoice menuitem
|
||||
-
|
||||
|
|
|
@ -40,7 +40,6 @@
|
|||
default_credit_account_id: account_eur_usd_id
|
||||
currency: base.USD
|
||||
company_id: base.main_company
|
||||
view_id: account.account_journal_bank_view
|
||||
-
|
||||
I create an invoice
|
||||
-
|
||||
|
|
|
@ -20,8 +20,10 @@
|
|||
##############################################################################
|
||||
|
||||
import time
|
||||
from datetime import datetime
|
||||
|
||||
from osv import fields, osv
|
||||
import tools
|
||||
from tools.translate import _
|
||||
import decimal_precision as dp
|
||||
|
||||
|
@ -199,9 +201,14 @@ class account_analytic_account(osv.osv):
|
|||
return {}
|
||||
res = {'value':{}}
|
||||
template = self.browse(cr, uid, template_id, context=context)
|
||||
res['value']['date_start'] = template.date_start
|
||||
res['value']['date'] = template.date
|
||||
if template.date_start and template.date:
|
||||
from_dt = datetime.strptime(template.date_start, tools.DEFAULT_SERVER_DATE_FORMAT)
|
||||
to_dt = datetime.strptime(template.date, tools.DEFAULT_SERVER_DATE_FORMAT)
|
||||
timedelta = to_dt - from_dt
|
||||
res['value']['date'] = datetime.strftime(datetime.now() + timedelta, tools.DEFAULT_SERVER_DATE_FORMAT)
|
||||
res['value']['date_start'] = fields.date.today()
|
||||
res['value']['quantity_max'] = template.quantity_max
|
||||
res['value']['parent_id'] = template.parent_id and template.parent_id.id or False
|
||||
res['value']['description'] = template.description
|
||||
return res
|
||||
|
||||
|
|
|
@ -26,10 +26,10 @@
|
|||
<field name="currency_id" attrs="{'invisible': ['|',('type', '<>', 'view'), ('company_id', '<>', False)]}"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="code"/>
|
||||
<field name="type" invisible="context.get('default_type', False)"/>
|
||||
<field name="parent_id" on_change="on_change_parent(parent_id)" attrs="{'invisible': [('type','in',['contract','template'])]}"/>
|
||||
<field name="template_id" on_change="on_change_template(template_id,context)" domain="[('type','=','template')]" attrs="{'invisible': [('type','in',['view', 'normal','template'])]}" context="{'default_type' : 'template'}"/>
|
||||
<field name="code"/>
|
||||
<field name="parent_id" on_change="on_change_parent(parent_id)" attrs="{'invisible': [('type','in',['contract'])]}"/>
|
||||
<field name="company_id" on_change="on_change_company(company_id)" widget="selection" groups="base.group_multi_company" attrs="{'required': [('type','<>','view')]}"/>
|
||||
</group>
|
||||
</group>
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-02 09:55+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 06:50+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:31+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.model,name:anonymization.model_ir_model_fields_anonymize_wizard
|
||||
|
@ -25,17 +25,17 @@ msgstr "ir.model.fields.anonymize.wizard"
|
|||
#. module: anonymization
|
||||
#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization_migration_fix
|
||||
msgid "ir.model.fields.anonymization.migration.fix"
|
||||
msgstr ""
|
||||
msgstr "ir.model.fields.anonymization.migration.fix"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization.migration.fix,target_version:0
|
||||
msgid "Target Version"
|
||||
msgstr ""
|
||||
msgstr "目标版本"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization.migration.fix,query_type:0
|
||||
msgid "sql"
|
||||
msgstr ""
|
||||
msgstr "sql"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization,field_name:0
|
||||
|
@ -62,7 +62,7 @@ msgstr "ir.model.fields.anonymization"
|
|||
#: field:ir.model.fields.anonymization.history,state:0
|
||||
#: field:ir.model.fields.anonymize.wizard,state:0
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
msgstr "状态"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization.history,direction:0
|
||||
|
@ -135,7 +135,7 @@ msgstr "隐藏数据库"
|
|||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization.migration.fix,query_type:0
|
||||
msgid "python"
|
||||
msgstr ""
|
||||
msgstr "python"
|
||||
|
||||
#. module: anonymization
|
||||
#: view:ir.model.fields.anonymization.history:0
|
||||
|
@ -189,7 +189,7 @@ msgstr "隐藏日志"
|
|||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization.migration.fix,model_name:0
|
||||
msgid "Model"
|
||||
msgstr ""
|
||||
msgstr "模型"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization_history
|
||||
|
@ -201,7 +201,7 @@ msgstr "ir.model.fields.anonymization.history"
|
|||
msgid ""
|
||||
"This is the file created by the anonymization process. It should have the "
|
||||
"'.pickle' extention."
|
||||
msgstr ""
|
||||
msgstr "这个文件有匿名进程创建,他没有 '.pickle' 扩展名"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymize_wizard
|
||||
|
@ -217,7 +217,7 @@ msgstr "文件名"
|
|||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization.migration.fix,sequence:0
|
||||
msgid "Sequence"
|
||||
msgstr ""
|
||||
msgstr "编号"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization.history,direction:0
|
||||
|
@ -238,7 +238,7 @@ msgstr "完成"
|
|||
#: field:ir.model.fields.anonymization.migration.fix,query:0
|
||||
#: field:ir.model.fields.anonymization.migration.fix,query_type:0
|
||||
msgid "Query"
|
||||
msgstr ""
|
||||
msgstr "查询"
|
||||
|
||||
#. module: anonymization
|
||||
#: view:ir.model.fields.anonymization.history:0
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-01-26 05:10+0000\n"
|
||||
"Last-Translator: Wei \"oldrev\" Li <oldrev@gmail.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 06:31+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-25 06:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: audittrail
|
||||
#: view:audittrail.log:0
|
||||
|
@ -44,7 +44,7 @@ msgstr "已订阅"
|
|||
#: code:addons/audittrail/audittrail.py:408
|
||||
#, python-format
|
||||
msgid "'%s' Model does not exist..."
|
||||
msgstr ""
|
||||
msgstr "'%s' 模型不存在..."
|
||||
|
||||
#. module: audittrail
|
||||
#: view:audittrail.rule:0
|
||||
|
@ -61,7 +61,7 @@ msgstr "审计跟踪规则"
|
|||
#: view:audittrail.rule:0
|
||||
#: field:audittrail.rule,state:0
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
msgstr "状态"
|
||||
|
||||
#. module: audittrail
|
||||
#: view:audittrail.view.log:0
|
||||
|
@ -215,7 +215,7 @@ msgstr "选择您要生成审计日志的对象"
|
|||
#. module: audittrail
|
||||
#: model:ir.ui.menu,name:audittrail.menu_audit
|
||||
msgid "Audit"
|
||||
msgstr ""
|
||||
msgstr "审核"
|
||||
|
||||
#. module: audittrail
|
||||
#: field:audittrail.rule,log_workflow:0
|
||||
|
@ -294,7 +294,7 @@ msgstr "记录删除操作"
|
|||
#: view:audittrail.log:0
|
||||
#: view:audittrail.rule:0
|
||||
msgid "Model"
|
||||
msgstr ""
|
||||
msgstr "模型"
|
||||
|
||||
#. module: audittrail
|
||||
#: field:audittrail.log.line,field_description:0
|
||||
|
@ -335,7 +335,7 @@ msgstr "新值"
|
|||
#: code:addons/audittrail/audittrail.py:223
|
||||
#, python-format
|
||||
msgid "'%s' field does not exist in '%s' model"
|
||||
msgstr ""
|
||||
msgstr "字段 '%s' 不存在于模型 '%s'"
|
||||
|
||||
#. module: audittrail
|
||||
#: view:audittrail.log:0
|
||||
|
@ -387,7 +387,7 @@ msgstr "日志明细"
|
|||
#. module: audittrail
|
||||
#: view:audittrail.view.log:0
|
||||
msgid "or"
|
||||
msgstr ""
|
||||
msgstr "or"
|
||||
|
||||
#. module: audittrail
|
||||
#: field:audittrail.rule,log_action:0
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-08 03:35+0000\n"
|
||||
"Last-Translator: Wei \"oldrev\" Li <oldrev@gmail.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 07:07+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:30+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: auth_ldap
|
||||
#: constraint:res.company:0
|
||||
|
@ -30,7 +30,7 @@ msgstr "选择的用户组不在这用允许的用户组"
|
|||
#. module: auth_ldap
|
||||
#: field:res.company.ldap,user:0
|
||||
msgid "Template User"
|
||||
msgstr ""
|
||||
msgstr "用户模版"
|
||||
|
||||
#. module: auth_ldap
|
||||
#: help:res.company.ldap,ldap_tls:0
|
||||
|
@ -71,7 +71,7 @@ msgstr "LDAP 服务器端口"
|
|||
msgid ""
|
||||
"Automatically create local user accounts for new users authenticating via "
|
||||
"LDAP"
|
||||
msgstr ""
|
||||
msgstr "通过LDAP,为新用户自动创建本地用户账户。"
|
||||
|
||||
#. module: auth_ldap
|
||||
#: field:res.company.ldap,ldap_base:0
|
||||
|
@ -96,7 +96,7 @@ msgstr "LDAP 密码"
|
|||
#. module: auth_ldap
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "OAuth UID must be unique per provider"
|
||||
msgstr ""
|
||||
msgstr "OAuth UID必须是每个提供者唯一的"
|
||||
|
||||
#. module: auth_ldap
|
||||
#: model:ir.model,name:auth_ldap.model_res_company
|
||||
|
@ -116,7 +116,7 @@ msgstr "res.company.ldap"
|
|||
#. module: auth_ldap
|
||||
#: help:res.company.ldap,user:0
|
||||
msgid "User to copy when creating new users"
|
||||
msgstr ""
|
||||
msgstr "当创建新用户时,复制用户"
|
||||
|
||||
#. module: auth_ldap
|
||||
#: field:res.company.ldap,ldap_tls:0
|
||||
|
@ -164,12 +164,12 @@ msgstr "LDAP 服务器上的用户帐号密码,用于查询该目录服务。"
|
|||
#. module: auth_ldap
|
||||
#: constraint:res.users:0
|
||||
msgid "Error: Invalid ean code"
|
||||
msgstr ""
|
||||
msgstr "错误:无效的(EAN)条码"
|
||||
|
||||
#. module: auth_ldap
|
||||
#: model:ir.model,name:auth_ldap.model_res_users
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
msgstr "用户"
|
||||
|
||||
#. module: auth_ldap
|
||||
#: help:res.company.ldap,ldap_binddn:0
|
||||
|
|
|
@ -0,0 +1,150 @@
|
|||
# Chinese (Simplified) translation for openobject-addons
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the openobject-addons package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 14:27+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,validation_endpoint:0
|
||||
msgid "Validation URL"
|
||||
msgstr "验证 URL"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "You can not have two users with the same login !"
|
||||
msgstr "两个用户不能使用相同的用户名!"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,auth_endpoint:0
|
||||
msgid "Authentication URL"
|
||||
msgstr "身份验证URL"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: model:ir.model,name:auth_oauth.model_base_config_settings
|
||||
msgid "base.config.settings"
|
||||
msgstr "base.config.settings"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: constraint:res.users:0
|
||||
msgid "The chosen company is not in the allowed companies for this user"
|
||||
msgstr "选择的公司不属于此用户允许访问的公司。"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,scope:0
|
||||
msgid "Scope"
|
||||
msgstr "作用域"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:res.users,oauth_provider_id:0
|
||||
msgid "OAuth Provider"
|
||||
msgstr "OAuth Provider"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,css_class:0
|
||||
msgid "CSS class"
|
||||
msgstr "CSS class"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,body:0
|
||||
msgid "Body"
|
||||
msgstr "正文"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: model:ir.model,name:auth_oauth.model_res_users
|
||||
msgid "Users"
|
||||
msgstr "用户"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,sequence:0
|
||||
msgid "unknown"
|
||||
msgstr "未知"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:res.users,oauth_access_token:0
|
||||
msgid "OAuth Access Token"
|
||||
msgstr "OAuth 访问令牌"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,client_id:0
|
||||
#: field:base.config.settings,auth_oauth_facebook_client_id:0
|
||||
#: field:base.config.settings,auth_oauth_google_client_id:0
|
||||
msgid "Client ID"
|
||||
msgstr "Client ID"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: model:ir.ui.menu,name:auth_oauth.menu_oauth_providers
|
||||
msgid "OAuth Providers"
|
||||
msgstr "OAuth Providers"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: model:ir.model,name:auth_oauth.model_auth_oauth_provider
|
||||
msgid "OAuth2 provider"
|
||||
msgstr "OAuth2 provider"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:res.users,oauth_uid:0
|
||||
msgid "OAuth User ID"
|
||||
msgstr "OAuth User ID"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:base.config.settings,auth_oauth_facebook_enabled:0
|
||||
msgid "Allow users to sign in with Facebook"
|
||||
msgstr "允许用户用Facebook登录"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "OAuth UID must be unique per provider"
|
||||
msgstr "OAuth UID必须是每个提供者( provider )唯一的"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: help:res.users,oauth_uid:0
|
||||
msgid "Oauth Provider user_id"
|
||||
msgstr "Oauth Provider user_id"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,data_endpoint:0
|
||||
msgid "Data URL"
|
||||
msgstr "数据URL"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: view:auth.oauth.provider:0
|
||||
msgid "arch"
|
||||
msgstr "arch"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,name:0
|
||||
msgid "Provider name"
|
||||
msgstr "Provider 名称"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: model:ir.actions.act_window,name:auth_oauth.action_oauth_provider
|
||||
msgid "Providers"
|
||||
msgstr "Providers"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:base.config.settings,auth_oauth_google_enabled:0
|
||||
msgid "Allow users to sign in with Google"
|
||||
msgstr "允许用户通过google登录"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: constraint:res.users:0
|
||||
msgid "Error: Invalid ean code"
|
||||
msgstr "错误:无效的(EAN)条码"
|
||||
|
||||
#. module: auth_oauth
|
||||
#: field:auth.oauth.provider,enabled:0
|
||||
msgid "Allowed"
|
||||
msgstr "允许"
|
|
@ -0,0 +1,74 @@
|
|||
# Italian translation for openobject-addons
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the openobject-addons package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 19:58+0000\n"
|
||||
"Last-Translator: Davide Corio - agilebg.com <davide.corio@agilebg.com>\n"
|
||||
"Language-Team: Italian <it@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: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: model:email.template,body_html:auth_reset_password.reset_password_email
|
||||
msgid ""
|
||||
"\n"
|
||||
"<p>A password reset was requested for the OpenERP account linked to this "
|
||||
"email.</p>\n"
|
||||
"\n"
|
||||
"<p>You may change your password following <a "
|
||||
"href=\"${object.signup_url}\">this link</a>.</p>\n"
|
||||
"\n"
|
||||
"<p>Note: If you did not ask for a password reset, you can safely ignore this "
|
||||
"email.</p>"
|
||||
msgstr ""
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "You can not have two users with the same login !"
|
||||
msgstr "Non è possibile avere due utenti con lo stesso login!"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: model:ir.model,name:auth_reset_password.model_res_users
|
||||
msgid "Users"
|
||||
msgstr "Utenti"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "OAuth UID must be unique per provider"
|
||||
msgstr "il UID OAuth deve essere unico per provider"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: view:res.users:0
|
||||
msgid "Reset Password"
|
||||
msgstr "Reimposta Password"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: model:email.template,subject:auth_reset_password.reset_password_email
|
||||
msgid "Password reset"
|
||||
msgstr "Ripristino password"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: constraint:res.users:0
|
||||
msgid "Error: Invalid ean code"
|
||||
msgstr "Errore: codice EAN non valido"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: constraint:res.users:0
|
||||
msgid "The chosen company is not in the allowed companies for this user"
|
||||
msgstr "L'azienda scelta non è fra le aziende abilitate per questo utente"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#. openerp-web
|
||||
#: code:addons/auth_reset_password/static/src/xml/reset_password.xml:7
|
||||
#, python-format
|
||||
msgid "Reset password"
|
||||
msgstr "Reimposta password"
|
|
@ -0,0 +1,78 @@
|
|||
# Chinese (Simplified) translation for openobject-addons
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the openobject-addons package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 07:14+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: model:email.template,body_html:auth_reset_password.reset_password_email
|
||||
msgid ""
|
||||
"\n"
|
||||
"<p>A password reset was requested for the OpenERP account linked to this "
|
||||
"email.</p>\n"
|
||||
"\n"
|
||||
"<p>You may change your password following <a "
|
||||
"href=\"${object.signup_url}\">this link</a>.</p>\n"
|
||||
"\n"
|
||||
"<p>Note: If you did not ask for a password reset, you can safely ignore this "
|
||||
"email.</p>"
|
||||
msgstr ""
|
||||
"\n"
|
||||
"一个关联到这个Email地址的Openerp帐号请求复位密码。\n"
|
||||
"你可以修改你的密码通过下面这个链接 <a href=\"${object.signup_url}\">。\n"
|
||||
"提醒:如果你没请求复位密码,请忽略这封邮件。"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "You can not have two users with the same login !"
|
||||
msgstr "两个用户不能使用相同的用户名!"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: model:ir.model,name:auth_reset_password.model_res_users
|
||||
msgid "Users"
|
||||
msgstr "用户"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "OAuth UID must be unique per provider"
|
||||
msgstr "OAuth UID必须是每个提供者唯一的"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: view:res.users:0
|
||||
msgid "Reset Password"
|
||||
msgstr "重置密码"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: model:email.template,subject:auth_reset_password.reset_password_email
|
||||
msgid "Password reset"
|
||||
msgstr "重置密码"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: constraint:res.users:0
|
||||
msgid "Error: Invalid ean code"
|
||||
msgstr "错误:无效的(EAN)条码"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#: constraint:res.users:0
|
||||
msgid "The chosen company is not in the allowed companies for this user"
|
||||
msgstr "选择的公司不属于此用户允许访问的公司。"
|
||||
|
||||
#. module: auth_reset_password
|
||||
#. openerp-web
|
||||
#: code:addons/auth_reset_password/static/src/xml/reset_password.xml:7
|
||||
#, python-format
|
||||
msgid "Reset password"
|
||||
msgstr "重设密码"
|
|
@ -0,0 +1,170 @@
|
|||
# Chinese (Simplified) translation for openobject-addons
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the openobject-addons package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 16:52+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: auth_signup
|
||||
#: field:base.config.settings,auth_signup_uninvited:0
|
||||
msgid "Allow external users to sign up"
|
||||
msgstr "允许外部用户登录"
|
||||
|
||||
#. module: auth_signup
|
||||
#. openerp-web
|
||||
#: code:addons/auth_signup/static/src/xml/auth_signup.xml:15
|
||||
#, python-format
|
||||
msgid "Confirm Password"
|
||||
msgstr "确认密码"
|
||||
|
||||
#. module: auth_signup
|
||||
#: model:ir.model,name:auth_signup.model_base_config_settings
|
||||
msgid "base.config.settings"
|
||||
msgstr "base.config.settings"
|
||||
|
||||
#. module: auth_signup
|
||||
#: field:base.config.settings,auth_signup_template_user_id:0
|
||||
msgid "Template user for new users created through signup"
|
||||
msgstr "用作通过注册创建的新用户的模版"
|
||||
|
||||
#. module: auth_signup
|
||||
#: constraint:res.users:0
|
||||
msgid "The chosen company is not in the allowed companies for this user"
|
||||
msgstr "选择的公司不属于此用户允许访问的公司。"
|
||||
|
||||
#. module: auth_signup
|
||||
#. openerp-web
|
||||
#: code:addons/auth_signup/static/src/xml/auth_signup.xml:23
|
||||
#, python-format
|
||||
msgid "Sign Up"
|
||||
msgstr "注册"
|
||||
|
||||
#. module: auth_signup
|
||||
#: selection:res.users,state:0
|
||||
msgid "New"
|
||||
msgstr "新建"
|
||||
|
||||
#. module: auth_signup
|
||||
#: field:res.users,state:0
|
||||
msgid "Status"
|
||||
msgstr "状态"
|
||||
|
||||
#. module: auth_signup
|
||||
#: model:ir.model,name:auth_signup.model_res_users
|
||||
msgid "Users"
|
||||
msgstr "用户"
|
||||
|
||||
#. module: auth_signup
|
||||
#: field:res.partner,signup_url:0
|
||||
msgid "Signup URL"
|
||||
msgstr "注册 URL"
|
||||
|
||||
#. module: auth_signup
|
||||
#. openerp-web
|
||||
#: code:addons/auth_signup/static/src/xml/auth_signup.xml:20
|
||||
#, python-format
|
||||
msgid "Sign in"
|
||||
msgstr "登录"
|
||||
|
||||
#. module: auth_signup
|
||||
#: selection:res.users,state:0
|
||||
msgid "Active"
|
||||
msgstr "启用"
|
||||
|
||||
#. module: auth_signup
|
||||
#: help:base.config.settings,auth_signup_uninvited:0
|
||||
msgid "If unchecked, only invited users may sign up"
|
||||
msgstr "如果不选中,只有被邀请用户方可注册。"
|
||||
|
||||
#. module: auth_signup
|
||||
#. openerp-web
|
||||
#: code:addons/auth_signup/static/src/xml/auth_signup.xml:11
|
||||
#, python-format
|
||||
msgid "Username"
|
||||
msgstr "用户名"
|
||||
|
||||
#. module: auth_signup
|
||||
#. openerp-web
|
||||
#: code:addons/auth_signup/static/src/xml/auth_signup.xml:7
|
||||
#, python-format
|
||||
msgid "Name"
|
||||
msgstr "姓名"
|
||||
|
||||
#. module: auth_signup
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "OAuth UID must be unique per provider"
|
||||
msgstr "OAuth UID必须是每个提供者( provider )唯一的"
|
||||
|
||||
#. module: auth_signup
|
||||
#. openerp-web
|
||||
#: code:addons/auth_signup/static/src/xml/auth_signup.xml:12
|
||||
#, python-format
|
||||
msgid "Username (Email)"
|
||||
msgstr "用户名(Email)"
|
||||
|
||||
#. module: auth_signup
|
||||
#: field:res.partner,signup_expiration:0
|
||||
msgid "Signup Expiration"
|
||||
msgstr "注册过期"
|
||||
|
||||
#. module: auth_signup
|
||||
#. openerp-web
|
||||
#: code:addons/auth_signup/static/src/xml/auth_signup.xml:19
|
||||
#, python-format
|
||||
msgid "Log in"
|
||||
msgstr "登录"
|
||||
|
||||
#. module: auth_signup
|
||||
#: field:res.partner,signup_valid:0
|
||||
msgid "Signup Token is Valid"
|
||||
msgstr "注册令牌( Token )是有效的"
|
||||
|
||||
#. module: auth_signup
|
||||
#: selection:res.users,state:0
|
||||
msgid "Resetting Password"
|
||||
msgstr "复位密码"
|
||||
|
||||
#. module: auth_signup
|
||||
#: constraint:res.partner:0
|
||||
msgid "Error ! You cannot create recursive associated members."
|
||||
msgstr "错误,您不能创建循环引用的会员用户"
|
||||
|
||||
#. module: auth_signup
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "You can not have two users with the same login !"
|
||||
msgstr "两个用户不能使用相同的用户名!"
|
||||
|
||||
#. module: auth_signup
|
||||
#. openerp-web
|
||||
#: code:addons/auth_signup/static/src/xml/auth_signup.xml:24
|
||||
#, python-format
|
||||
msgid "Back to Login"
|
||||
msgstr "返回登录页面"
|
||||
|
||||
#. module: auth_signup
|
||||
#: constraint:res.partner:0
|
||||
#: constraint:res.users:0
|
||||
msgid "Error: Invalid ean code"
|
||||
msgstr "错误:无效的(EAN)条码"
|
||||
|
||||
#. module: auth_signup
|
||||
#: model:ir.model,name:auth_signup.model_res_partner
|
||||
msgid "Partner"
|
||||
msgstr "业务伙伴"
|
||||
|
||||
#. module: auth_signup
|
||||
#: field:res.partner,signup_token:0
|
||||
msgid "Signup Token"
|
||||
msgstr "注册令牌( Token )"
|
|
@ -52,6 +52,8 @@ openerp.auth_signup = function(instance) {
|
|||
if (result.token) {
|
||||
// switch to signup mode, set user name and login
|
||||
this.$el.addClass("oe_login_signup");
|
||||
self.$(".oe_signup_show").show();
|
||||
self.$(".oe_signup_hide").hide();
|
||||
this.$("form input[name=name]").val(result.name).attr("readonly", "readonly");
|
||||
if (result.login) {
|
||||
this.$("form input[name=login]").val(result.login).attr("readonly", "readonly");
|
||||
|
|
|
@ -8,25 +8,25 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-05-10 17:39+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 16:50+0000\n"
|
||||
"Last-Translator: Joshua Jan(SHINEIT) <popkar77@gmail.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:27+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: base_calendar
|
||||
#: selection:calendar.alarm,trigger_related:0
|
||||
#: selection:res.alarm,trigger_related:0
|
||||
msgid "The event starts"
|
||||
msgstr "事件开始时"
|
||||
msgstr "活动开始"
|
||||
|
||||
#. module: base_calendar
|
||||
#: view:calendar.event:0
|
||||
msgid "My Events"
|
||||
msgstr "我的事件"
|
||||
msgstr "我的活动"
|
||||
|
||||
#. module: base_calendar
|
||||
#: help:calendar.event,exdate:0
|
||||
|
@ -40,14 +40,14 @@ msgstr "这属性定义循环日程的日期/时间异常列表。"
|
|||
#. module: base_calendar
|
||||
#: constraint:res.users:0
|
||||
msgid "The chosen company is not in the allowed companies for this user"
|
||||
msgstr "用户无权操作所选择公司数据"
|
||||
msgstr "选择的公司不属于此用户允许访问的公司。"
|
||||
|
||||
#. module: base_calendar
|
||||
#: field:calendar.event,we:0
|
||||
#: field:calendar.todo,we:0
|
||||
#: field:crm.meeting,we:0
|
||||
msgid "Wed"
|
||||
msgstr "周三"
|
||||
msgstr "星期三"
|
||||
|
||||
#. module: base_calendar
|
||||
#: selection:calendar.attendee,cutype:0
|
||||
|
@ -64,13 +64,13 @@ msgstr "定期会议"
|
|||
#. module: base_calendar
|
||||
#: model:crm.meeting.type,name:base_calendar.categ_meet5
|
||||
msgid "Feedback Meeting"
|
||||
msgstr ""
|
||||
msgstr "会议反馈"
|
||||
|
||||
#. module: base_calendar
|
||||
#: code:addons/base_calendar/crm_meeting.py:117
|
||||
#, python-format
|
||||
msgid "Meeting <b>completed</b>."
|
||||
msgstr ""
|
||||
msgstr "会议<b>完成</b>."
|
||||
|
||||
#. module: base_calendar
|
||||
#: model:ir.actions.act_window,name:base_calendar.action_res_alarm_view
|
||||
|
@ -83,7 +83,7 @@ msgstr "提醒"
|
|||
#: selection:calendar.todo,week_list:0
|
||||
#: selection:crm.meeting,week_list:0
|
||||
msgid "Sunday"
|
||||
msgstr "周日"
|
||||
msgstr "星期天"
|
||||
|
||||
#. module: base_calendar
|
||||
#: field:calendar.attendee,role:0
|
||||
|
@ -147,14 +147,14 @@ msgstr "指定类型的邀请"
|
|||
#: view:crm.meeting:0
|
||||
#: field:crm.meeting,message_unread:0
|
||||
msgid "Unread Messages"
|
||||
msgstr ""
|
||||
msgstr "未读信息"
|
||||
|
||||
#. module: base_calendar
|
||||
#: selection:calendar.event,week_list:0
|
||||
#: selection:calendar.todo,week_list:0
|
||||
#: selection:crm.meeting,week_list:0
|
||||
msgid "Friday"
|
||||
msgstr "周五"
|
||||
msgstr "星期五"
|
||||
|
||||
#. module: base_calendar
|
||||
#: field:calendar.event,allday:0
|
||||
|
@ -182,12 +182,12 @@ msgstr "空闲"
|
|||
#. module: base_calendar
|
||||
#: help:crm.meeting,message_unread:0
|
||||
msgid "If checked new messages require your attention."
|
||||
msgstr ""
|
||||
msgstr "如果要求你关注新消息,勾选此项"
|
||||
|
||||
#. module: base_calendar
|
||||
#: help:calendar.attendee,rsvp:0
|
||||
msgid "Indicats whether the favor of a reply is requested"
|
||||
msgstr "标明是否要求答复赞成"
|
||||
msgstr "标明是否要求答复"
|
||||
|
||||
#. module: base_calendar
|
||||
#: field:calendar.alarm,alarm_id:0
|
||||
|
@ -209,7 +209,7 @@ msgstr "事件"
|
|||
#: field:calendar.todo,tu:0
|
||||
#: field:crm.meeting,tu:0
|
||||
msgid "Tue"
|
||||
msgstr "周二"
|
||||
msgstr "星期二"
|
||||
|
||||
#. module: base_calendar
|
||||
#: selection:calendar.event,byday:0
|
||||
|
@ -222,7 +222,7 @@ msgstr "第三个"
|
|||
#: selection:calendar.alarm,trigger_related:0
|
||||
#: selection:res.alarm,trigger_related:0
|
||||
msgid "The event ends"
|
||||
msgstr "这事件结束时"
|
||||
msgstr "这活动结束时"
|
||||
|
||||
#. module: base_calendar
|
||||
#: selection:calendar.event,byday:0
|
||||
|
@ -234,12 +234,12 @@ msgstr "最近"
|
|||
#. module: base_calendar
|
||||
#: help:crm.meeting,message_ids:0
|
||||
msgid "Messages and communication history"
|
||||
msgstr ""
|
||||
msgstr "消息和通信历史"
|
||||
|
||||
#. module: base_calendar
|
||||
#: field:crm.meeting,message_ids:0
|
||||
msgid "Messages"
|
||||
msgstr ""
|
||||
msgstr "消息"
|
||||
|
||||
#. module: base_calendar
|
||||
#: selection:calendar.alarm,trigger_interval:0
|
||||
|
@ -266,7 +266,7 @@ msgstr "主席"
|
|||
#. module: base_calendar
|
||||
#: view:crm.meeting:0
|
||||
msgid "My Meetings"
|
||||
msgstr ""
|
||||
msgstr "我的会议"
|
||||
|
||||
#. module: base_calendar
|
||||
#: selection:calendar.alarm,action:0
|
||||
|
@ -303,12 +303,12 @@ msgstr ""
|
|||
#. module: base_calendar
|
||||
#: field:crm.meeting,name:0
|
||||
msgid "Meeting Subject"
|
||||
msgstr ""
|
||||
msgstr "会议主题"
|
||||
|
||||
#. module: base_calendar
|
||||
#: view:calendar.event:0
|
||||
msgid "End of Recurrence"
|
||||
msgstr ""
|
||||
msgstr "循环结束"
|
||||
|
||||
#. module: base_calendar
|
||||
#: view:calendar.event:0
|
||||
|
@ -329,7 +329,7 @@ msgstr "选择重复会议的日子"
|
|||
#: view:crm.meeting:0
|
||||
#: model:ir.actions.act_window,name:base_calendar.action_crm_meeting
|
||||
msgid "Meetings"
|
||||
msgstr ""
|
||||
msgstr "会议"
|
||||
|
||||
#. module: base_calendar
|
||||
#: field:calendar.event,recurrent_id:0
|
||||
|
@ -342,19 +342,19 @@ msgstr "循环日期"
|
|||
#: field:calendar.alarm,event_end_date:0
|
||||
#: field:calendar.attendee,event_end_date:0
|
||||
msgid "Event End Date"
|
||||
msgstr "事件结束日期"
|
||||
msgstr "活动结束日期"
|
||||
|
||||
#. module: base_calendar
|
||||
#: selection:calendar.attendee,role:0
|
||||
msgid "Optional Participation"
|
||||
msgstr "可参与"
|
||||
msgstr "可选择参与"
|
||||
|
||||
#. module: base_calendar
|
||||
#: help:crm.meeting,message_summary:0
|
||||
msgid ""
|
||||
"Holds the Chatter summary (number of messages, ...). This summary is "
|
||||
"directly in html format in order to be inserted in kanban views."
|
||||
msgstr ""
|
||||
msgstr "保存复杂的摘要(消息数量,……等)。为了插入到看板视图,这一摘要直接是是HTML格式。"
|
||||
|
||||
#. module: base_calendar
|
||||
#: code:addons/base_calendar/base_calendar.py:388
|
||||
|
|
|
@ -8,19 +8,19 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2011-02-15 15:37+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"PO-Revision-Date: 2012-11-28 19:47+0000\n"
|
||||
"Last-Translator: Davide Corio - agilebg.com <davide.corio@agilebg.com>\n"
|
||||
"Language-Team: Italian <it@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: 2012-11-25 06:31+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: base_crypt
|
||||
#: constraint:res.users:0
|
||||
msgid "Error: Invalid ean code"
|
||||
msgstr ""
|
||||
msgstr "Errore: codice EAN non valido"
|
||||
|
||||
#. module: base_crypt
|
||||
#: constraint:res.users:0
|
||||
|
@ -30,12 +30,12 @@ msgstr "L'azienda scelta non è fra le aziende abilitate per questo utente"
|
|||
#. module: base_crypt
|
||||
#: model:ir.model,name:base_crypt.model_res_users
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
msgstr "Utenti"
|
||||
|
||||
#. module: base_crypt
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "OAuth UID must be unique per provider"
|
||||
msgstr ""
|
||||
msgstr "il UID OAuth deve essere unico per provider"
|
||||
|
||||
#. module: base_crypt
|
||||
#: sql_constraint:res.users:0
|
||||
|
|
|
@ -8,19 +8,19 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2011-06-22 08:19+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"PO-Revision-Date: 2012-11-28 06:30+0000\n"
|
||||
"Last-Translator: mrshelly <Unknown>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:31+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: base_crypt
|
||||
#: constraint:res.users:0
|
||||
msgid "Error: Invalid ean code"
|
||||
msgstr ""
|
||||
msgstr "错误:无效的(EAN)条码"
|
||||
|
||||
#. module: base_crypt
|
||||
#: constraint:res.users:0
|
||||
|
@ -30,17 +30,17 @@ msgstr "用户无权操作所选择公司数据"
|
|||
#. module: base_crypt
|
||||
#: model:ir.model,name:base_crypt.model_res_users
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
msgstr "用户"
|
||||
|
||||
#. module: base_crypt
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "OAuth UID must be unique per provider"
|
||||
msgstr ""
|
||||
msgstr "OAuth UID必须是每个提供者唯一的"
|
||||
|
||||
#. module: base_crypt
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "You can not have two users with the same login !"
|
||||
msgstr "你不能同时登录两个用户!"
|
||||
msgstr "两个用户不能使用相同的用户名!"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "Error"
|
||||
|
|
|
@ -14,7 +14,7 @@ class ImportController(openerp.addons.web.http.Controller):
|
|||
'file': file.read(),
|
||||
'file_name': file.filename,
|
||||
'file_type': file.content_type,
|
||||
}, req.session.eval_context(req.context))
|
||||
}, req.context)
|
||||
|
||||
return 'window.top.%s(%s)' % (
|
||||
jsonp, simplejson.dumps({'result': written}))
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-05-10 18:17+0000\n"
|
||||
"Last-Translator: Raphael Collet (OpenERP) <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-11-28 19:53+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: 2012-11-25 06:09+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: base_report_designer
|
||||
#: model:ir.model,name:base_report_designer.model_base_report_sxw
|
||||
|
@ -180,7 +180,7 @@ msgstr "Annulla"
|
|||
#. module: base_report_designer
|
||||
#: view:base.report.sxw:0
|
||||
msgid "or"
|
||||
msgstr ""
|
||||
msgstr "o"
|
||||
|
||||
#. module: base_report_designer
|
||||
#: model:ir.model,name:base_report_designer.model_ir_actions_report_xml
|
||||
|
|
|
@ -7,19 +7,19 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-10 03:32+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 16:54+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-25 05:52+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:14+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:sale.config.settings:0
|
||||
msgid "Emails Integration"
|
||||
msgstr ""
|
||||
msgstr "Email 集成"
|
||||
|
||||
#. module: base_setup
|
||||
#: selection:base.setup.terminology,partner:0
|
||||
|
@ -29,18 +29,18 @@ msgstr "访客"
|
|||
#. module: base_setup
|
||||
#: view:sale.config.settings:0
|
||||
msgid "Contacts"
|
||||
msgstr ""
|
||||
msgstr "联系人"
|
||||
|
||||
#. module: base_setup
|
||||
#: model:ir.model,name:base_setup.model_base_config_settings
|
||||
msgid "base.config.settings"
|
||||
msgstr ""
|
||||
msgstr "base.config.settings"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:base.config.settings,module_auth_oauth:0
|
||||
msgid ""
|
||||
"Use external authentication providers, sign in with google, facebook, ..."
|
||||
msgstr ""
|
||||
msgstr "使用OpenID登陆(Google, Facebook...)"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:sale.config.settings:0
|
||||
|
@ -63,24 +63,24 @@ msgstr "会员"
|
|||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
msgid "Portal access"
|
||||
msgstr ""
|
||||
msgstr "门户访问"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
msgid "Authentication"
|
||||
msgstr ""
|
||||
msgstr "身份验证"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:sale.config.settings:0
|
||||
msgid "Quotations and Sales Orders"
|
||||
msgstr ""
|
||||
msgstr "报价和销售订单"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
#: model:ir.actions.act_window,name:base_setup.action_general_configuration
|
||||
#: model:ir.ui.menu,name:base_setup.menu_general_configuration
|
||||
msgid "General Settings"
|
||||
msgstr ""
|
||||
msgstr "常规设置"
|
||||
|
||||
#. module: base_setup
|
||||
#: selection:base.setup.terminology,partner:0
|
||||
|
@ -90,12 +90,12 @@ msgstr "捐助者"
|
|||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
msgid "Email"
|
||||
msgstr ""
|
||||
msgstr "Email"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:sale.config.settings,module_crm:0
|
||||
msgid "CRM"
|
||||
msgstr ""
|
||||
msgstr "CRM"
|
||||
|
||||
#. module: base_setup
|
||||
#: selection:base.setup.terminology,partner:0
|
||||
|
@ -105,12 +105,12 @@ msgstr "病人"
|
|||
#. module: base_setup
|
||||
#: field:base.config.settings,module_base_import:0
|
||||
msgid "Allow users to import data from CSV files"
|
||||
msgstr ""
|
||||
msgstr "允许导入CSV数据"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:base.config.settings,module_multi_company:0
|
||||
msgid "Manage multiple companies"
|
||||
msgstr ""
|
||||
msgstr "允许多公司操作"
|
||||
|
||||
#. module: base_setup
|
||||
#: help:base.config.settings,module_portal:0
|
||||
|
@ -120,17 +120,17 @@ msgstr ""
|
|||
#. module: base_setup
|
||||
#: view:sale.config.settings:0
|
||||
msgid "On Mail Client"
|
||||
msgstr ""
|
||||
msgstr "在邮件客户端"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:sale.config.settings,module_web_linkedin:0
|
||||
msgid "Get contacts automatically from linkedIn"
|
||||
msgstr ""
|
||||
msgstr "自动获取LinkedIn联系人"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:sale.config.settings,module_plugin_thunderbird:0
|
||||
msgid "Enable Thunderbird plug-in"
|
||||
msgstr ""
|
||||
msgstr "允许 Thunderbird 插件"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.setup.terminology:0
|
||||
|
@ -140,22 +140,22 @@ msgstr "res_config_contents"
|
|||
#. module: base_setup
|
||||
#: view:sale.config.settings:0
|
||||
msgid "Customer Features"
|
||||
msgstr ""
|
||||
msgstr "客户特性"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
msgid "Import / Export"
|
||||
msgstr ""
|
||||
msgstr "导入/导出"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:sale.config.settings:0
|
||||
msgid "Sale Features"
|
||||
msgstr ""
|
||||
msgstr "销售特性"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:sale.config.settings,module_plugin_outlook:0
|
||||
msgid "Enable Outlook plug-in"
|
||||
msgstr ""
|
||||
msgstr "允许 Outlook 插件"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.setup.terminology:0
|
||||
|
@ -172,7 +172,7 @@ msgstr "承租人"
|
|||
#. module: base_setup
|
||||
#: help:base.config.settings,module_share:0
|
||||
msgid "Share or embbed any screen of openerp."
|
||||
msgstr ""
|
||||
msgstr "分享或者嵌入任意Openerp屏幕"
|
||||
|
||||
#. module: base_setup
|
||||
#: selection:base.setup.terminology,partner:0
|
||||
|
@ -193,6 +193,8 @@ msgid ""
|
|||
"companies.\n"
|
||||
" This installs the module multi_company."
|
||||
msgstr ""
|
||||
"工作在多公司环境,公司之间适当地安全访问\n"
|
||||
" 为此安装模块multi_company。"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
|
@ -204,7 +206,7 @@ msgstr ""
|
|||
#. module: base_setup
|
||||
#: model:ir.model,name:base_setup.model_sale_config_settings
|
||||
msgid "sale.config.settings"
|
||||
msgstr ""
|
||||
msgstr "sale.config.settings"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:base.setup.terminology,partner:0
|
||||
|
@ -224,7 +226,7 @@ msgstr "客户"
|
|||
#. module: base_setup
|
||||
#: help:base.config.settings,module_auth_anonymous:0
|
||||
msgid "Enable the public part of openerp, openerp becomes a public website."
|
||||
msgstr ""
|
||||
msgstr "启用Openerp的公共部分,Openerp成为一个公共的web站点"
|
||||
|
||||
#. module: base_setup
|
||||
#: help:sale.config.settings,module_plugin_thunderbird:0
|
||||
|
@ -237,6 +239,9 @@ msgid ""
|
|||
" Partner from the selected emails.\n"
|
||||
" This installs the module plugin_thunderbird."
|
||||
msgstr ""
|
||||
"插件允许把你的email和附件存档到Openerp对象。你能选择一个业务伙伴、或者线索,并 选择邮件存为 .eml 文件 附加到在选中记录的附件中。\n"
|
||||
"\n"
|
||||
"为此要安装模块 plugin_thunderbird."
|
||||
|
||||
#. module: base_setup
|
||||
#: selection:base.setup.terminology,partner:0
|
||||
|
@ -252,7 +257,7 @@ msgstr "称呼客户的另一种方式"
|
|||
#: model:ir.actions.act_window,name:base_setup.action_sale_config
|
||||
#: view:sale.config.settings:0
|
||||
msgid "Configure Sales"
|
||||
msgstr ""
|
||||
msgstr "销售模块配置"
|
||||
|
||||
#. module: base_setup
|
||||
#: help:sale.config.settings,module_plugin_outlook:0
|
||||
|
@ -265,36 +270,39 @@ msgid ""
|
|||
" email into an OpenERP mail message with attachments.\n"
|
||||
" This installs the module plugin_outlook."
|
||||
msgstr ""
|
||||
"Outlook 插件允许你把 邮件和它附件添加到你选择对象里。 你能选择一个业务伙伴或者线索 对象,并且把选择的邮件存档到一个带附件的 Openerp "
|
||||
"邮件消息中。\n"
|
||||
"为此要安装模块plugin_outlook."
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
msgid "Options"
|
||||
msgstr ""
|
||||
msgstr "选项"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:base.config.settings,module_portal:0
|
||||
msgid "Activate the customer/supplier portal"
|
||||
msgstr ""
|
||||
msgstr "开启合作伙伴Portal"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:base.config.settings,module_share:0
|
||||
msgid "Allow documents sharing"
|
||||
msgstr ""
|
||||
msgstr "允许分享单据"
|
||||
|
||||
#. module: base_setup
|
||||
#: field:base.config.settings,module_auth_anonymous:0
|
||||
msgid "Activate the public portal"
|
||||
msgstr ""
|
||||
msgstr "启用公共门户"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
msgid "Configure outgoing email servers"
|
||||
msgstr ""
|
||||
msgstr "配置邮箱发件服务器"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:sale.config.settings:0
|
||||
msgid "Social Network Integration"
|
||||
msgstr ""
|
||||
msgstr "集成社交网络"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
|
@ -306,7 +314,7 @@ msgstr "取消"
|
|||
#: view:base.config.settings:0
|
||||
#: view:sale.config.settings:0
|
||||
msgid "Apply"
|
||||
msgstr ""
|
||||
msgstr "应用"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.setup.terminology:0
|
||||
|
@ -317,12 +325,12 @@ msgstr "指定贵公司所用的术语"
|
|||
#: view:base.config.settings:0
|
||||
#: view:sale.config.settings:0
|
||||
msgid "or"
|
||||
msgstr ""
|
||||
msgstr "or"
|
||||
|
||||
#. module: base_setup
|
||||
#: view:base.config.settings:0
|
||||
msgid "Configure your company data"
|
||||
msgstr ""
|
||||
msgstr "配置公司信息"
|
||||
|
||||
#~ msgid "Report Header"
|
||||
#~ msgstr "报表页眉"
|
||||
|
|
|
@ -41,12 +41,10 @@ class base_stage(object):
|
|||
"""
|
||||
if context is None:
|
||||
context = {}
|
||||
if not context or not context.get('portal'):
|
||||
return False
|
||||
if context.get('portal'):
|
||||
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
|
||||
if hasattr(user, 'partner_address_id') and user.partner_address_id:
|
||||
return user.partner_address_id
|
||||
return user.company_id.partner_id.id
|
||||
return user.partner_id.id
|
||||
return False
|
||||
|
||||
def _get_default_email(self, cr, uid, context=None):
|
||||
""" Gives default email address for current user
|
||||
|
@ -54,10 +52,10 @@ class base_stage(object):
|
|||
"""
|
||||
if context is None:
|
||||
context = {}
|
||||
if not context or not context.get('portal'):
|
||||
return False
|
||||
if context.get('portal'):
|
||||
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
|
||||
return user.email
|
||||
return False
|
||||
|
||||
def _get_default_user(self, cr, uid, context=None):
|
||||
""" Gives current user id
|
||||
|
@ -65,7 +63,7 @@ class base_stage(object):
|
|||
"""
|
||||
if context is None:
|
||||
context = {}
|
||||
if not context or not context.get('portal'):
|
||||
if not context or context.get('portal'):
|
||||
return False
|
||||
return uid
|
||||
|
||||
|
|
|
@ -0,0 +1,88 @@
|
|||
# Chinese (Simplified) translation for openobject-addons
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the openobject-addons package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 07:43+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_state.py:107
|
||||
#, python-format
|
||||
msgid "Error !"
|
||||
msgstr "错误!"
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_stage.py:333
|
||||
#: code:addons/base_status/base_state.py:187
|
||||
#, python-format
|
||||
msgid "%s has been <b>opened</b>."
|
||||
msgstr "%s 已经被 <b>打开</b>."
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_stage.py:357
|
||||
#: code:addons/base_status/base_state.py:220
|
||||
#, python-format
|
||||
msgid "%s has been <b>renewed</b>."
|
||||
msgstr "%s 已经被 <b>更新</b>."
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_stage.py:215
|
||||
#, python-format
|
||||
msgid "Error!"
|
||||
msgstr "错误!"
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_state.py:107
|
||||
#, python-format
|
||||
msgid ""
|
||||
"You can not escalate, you are already at the top level regarding your sales-"
|
||||
"team category."
|
||||
msgstr "不能上报,你已经在您销售团队类别中的最高级了。"
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_stage.py:351
|
||||
#: code:addons/base_status/base_state.py:214
|
||||
#, python-format
|
||||
msgid "%s is now <b>pending</b>."
|
||||
msgstr "%s 现在 <b>待定</b>."
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_stage.py:345
|
||||
#, python-format
|
||||
msgid "%s has been <b>cancelled</b>."
|
||||
msgstr "%s 已经被 <b>取消</b>."
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_state.py:208
|
||||
#, python-format
|
||||
msgid "%s has been <b>canceled</b>."
|
||||
msgstr "%s 已经被 <b>取消</b>."
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_stage.py:215
|
||||
#, python-format
|
||||
msgid ""
|
||||
"You are already at the top level of your sales-team category.\n"
|
||||
"Therefore you cannot escalate furthermore."
|
||||
msgstr ""
|
||||
"你已经在您销售团队类别中的最高级了。\n"
|
||||
"因此,你不能再上报了。"
|
||||
|
||||
#. module: base_status
|
||||
#: code:addons/base_status/base_stage.py:339
|
||||
#: code:addons/base_status/base_state.py:202
|
||||
#, python-format
|
||||
msgid "%s has been <b>closed</b>."
|
||||
msgstr "%s 已经被 <b>关闭</b>."
|
|
@ -2,7 +2,6 @@
|
|||
from xml.etree import ElementTree
|
||||
|
||||
import openerp
|
||||
from openerp.addons.web import nonliterals
|
||||
from openerp.addons.web.controllers.main import load_actions_from_ir_values
|
||||
|
||||
class Board(openerp.addons.web.http.Controller):
|
||||
|
@ -11,16 +10,8 @@ class Board(openerp.addons.web.http.Controller):
|
|||
@openerp.addons.web.http.jsonrequest
|
||||
def add_to_dashboard(self, req, menu_id, action_id, context_to_save, domain, view_mode, name=''):
|
||||
# FIXME move this method to board.board model
|
||||
to_eval = nonliterals.CompoundContext(context_to_save)
|
||||
to_eval.session = req.session
|
||||
ctx = dict((k, v) for k, v in to_eval.evaluate().iteritems()
|
||||
if not k.startswith('search_default_'))
|
||||
ctx['dashboard_merge_domains_contexts'] = False # TODO: replace this 6.1 workaround by attribute on <action/>
|
||||
domain = nonliterals.CompoundDomain(domain)
|
||||
domain.session = req.session
|
||||
domain = domain.evaluate()
|
||||
|
||||
dashboard_action = load_actions_from_ir_values(req, 'action', 'tree_but_open', [('ir.ui.menu', menu_id)], False)
|
||||
dashboard_action = load_actions_from_ir_values(
|
||||
req, 'action', 'tree_but_open', [('ir.ui.menu', menu_id)], False)
|
||||
|
||||
if dashboard_action:
|
||||
action = dashboard_action[0][2]
|
||||
|
@ -36,7 +27,7 @@ class Board(openerp.addons.web.http.Controller):
|
|||
'name': str(action_id),
|
||||
'string': name,
|
||||
'view_mode': view_mode,
|
||||
'context': str(ctx),
|
||||
'context': str(context_to_save),
|
||||
'domain': str(domain)
|
||||
})
|
||||
column.insert(0, new_action)
|
||||
|
@ -45,6 +36,6 @@ class Board(openerp.addons.web.http.Controller):
|
|||
'user_id': req.session._uid,
|
||||
'ref_id': view_id,
|
||||
'arch': arch
|
||||
}, req.session.eval_context(req.context))
|
||||
}, req.context)
|
||||
|
||||
return False
|
||||
|
|
|
@ -375,11 +375,22 @@ instance.board.AddToDashboard = instance.web.search.Input.extend({
|
|||
var domain = new instance.web.CompoundDomain(getParent.dataset.get_domain() || []);
|
||||
_.each(data.contexts, context.add, context);
|
||||
_.each(data.domains, domain.add, domain);
|
||||
|
||||
var c = instance.web.pyeval.eval('context', context);
|
||||
for(var k in c) {
|
||||
if (c.hasOwnProperty(k) && /^search_default_/.test(k)) {
|
||||
delete c[k];
|
||||
}
|
||||
}
|
||||
// TODO: replace this 6.1 workaround by attribute on <action/>
|
||||
c.dashboard_merge_domains_contexts = false;
|
||||
var d = instance.web.pyeval.eval('domain', domain);
|
||||
|
||||
this.rpc('/board/add_to_dashboard', {
|
||||
menu_id: this.$el.find("select").val(),
|
||||
action_id: view_parent.action.id,
|
||||
context_to_save: context,
|
||||
domain: domain,
|
||||
context_to_save: c,
|
||||
domain: d,
|
||||
view_mode: view_parent.active_view,
|
||||
name: this.$el.find("input").val()
|
||||
}).done(function(r) {
|
||||
|
|
|
@ -14,8 +14,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: contacts
|
||||
#: model:ir.actions.act_window,help:contacts.action_contacts
|
||||
|
|
|
@ -0,0 +1,46 @@
|
|||
# Italian translation for openobject-addons
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the openobject-addons package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 19:52+0000\n"
|
||||
"Last-Translator: Davide Corio - agilebg.com <davide.corio@agilebg.com>\n"
|
||||
"Language-Team: Italian <it@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: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: contacts
|
||||
#: model:ir.actions.act_window,help:contacts.action_contacts
|
||||
msgid ""
|
||||
"<p class=\"oe_view_nocontent_create\">\n"
|
||||
" Click to add a contact in your address book.\n"
|
||||
" </p><p>\n"
|
||||
" OpenERP helps you easily track all activities related to\n"
|
||||
" a customer; discussions, history of business opportunities,\n"
|
||||
" documents, etc.\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p class=\"oe_view_nocontent_create\">\n"
|
||||
" Premere per creare un contatto in rubrica.\n"
|
||||
" </p><p>\n"
|
||||
" OpenERP ti aiuta a tenere traccia delle attività legate\n"
|
||||
" a clienti, discussioni, storia delle opportunità,\n"
|
||||
" document, etc.\n"
|
||||
"\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: contacts
|
||||
#: model:ir.actions.act_window,name:contacts.action_contacts
|
||||
#: model:ir.ui.menu,name:contacts.menu_contacts
|
||||
msgid "Contacts"
|
||||
msgstr "Contatti"
|
|
@ -81,7 +81,6 @@ class crm_lead_report(osv.osv):
|
|||
'type_id':fields.many2one('crm.case.resource.type', 'Campaign', readonly=True),
|
||||
'state': fields.selection(AVAILABLE_STATES, 'Status', size=16, readonly=True),
|
||||
'company_id': fields.many2one('res.company', 'Company', readonly=True),
|
||||
'email': fields.integer('# Emails', size=128, readonly=True),
|
||||
'probability': fields.float('Probability',digits=(16,2),readonly=True, group_operator="avg"),
|
||||
'planned_revenue': fields.float('Planned Revenue',digits=(16,2),readonly=True),
|
||||
'probable_revenue': fields.float('Probable Revenue', digits=(16,2),readonly=True),
|
||||
|
@ -137,7 +136,6 @@ class crm_lead_report(osv.osv):
|
|||
c.planned_revenue,
|
||||
c.planned_revenue*(c.probability/100) as probable_revenue,
|
||||
1 as nbr,
|
||||
(SELECT count(id) FROM mail_message WHERE model='crm.lead' AND res_id=c.id AND email_from is not null) AS email,
|
||||
date_trunc('day',c.create_date) as create_date,
|
||||
extract('epoch' from (c.date_closed-c.create_date))/(3600*24) as delay_close,
|
||||
abs(extract('epoch' from (c.date_deadline - c.date_closed))/(3600*24)) as delay_expected,
|
||||
|
|
|
@ -25,7 +25,6 @@
|
|||
<field name="partner_id" invisible="1"/>
|
||||
<field name="country_id" invisible="1"/>
|
||||
<field name="nbr" sum="# Leads"/>
|
||||
<field name="email" sum="# Mails"/>
|
||||
<field name="delay_open"/>
|
||||
<field name="delay_close"/>
|
||||
<field name="planned_revenue"/>
|
||||
|
@ -148,7 +147,6 @@
|
|||
<field name="company_id" invisible="1" groups="base.group_multi_company"/>
|
||||
<field name="nbr" string="#Opportunities" sum="#Opportunities"/>
|
||||
<field name="planned_revenue" sum="Planned Revenues"/>
|
||||
<field name="email" sum="# of Emails"/>
|
||||
<field name="delay_open" sum='Delay to open'/>
|
||||
<field name="delay_close" sum='Delay to close'/>
|
||||
<field name="delay_expected"/>
|
||||
|
@ -167,7 +165,7 @@
|
|||
<field name="context">{'search_default_year': 1,'search_default_lead': 1, "search_default_user":1, "search_default_this_month":1, 'group_by_no_leaf':1, 'group_by':[]}</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="domain">[]</field>
|
||||
<field name="help">Leads Analysis allows you to check different CRM related information. Check for treatment delays, number of responses given and emails sent. You can sort out your leads analysis by different groups to get accurate grained analysis.</field>
|
||||
<field name="help">Leads Analysis allows you to check different CRM related information like the treatment delays or number of leads per state. You can sort out your leads analysis by different groups to get accurate grained analysis.</field>
|
||||
</record>
|
||||
<record model="ir.actions.act_window.view" id="action_report_crm_lead_tree">
|
||||
<field name="sequence" eval="1"/>
|
||||
|
|
|
@ -113,9 +113,9 @@
|
|||
<field name="name"/>
|
||||
<field name="date"/>
|
||||
</group>
|
||||
<group colspan="4" col="4">
|
||||
<group colspan="4" col="4" groups="base.group_user">
|
||||
<field name="user_id"/>
|
||||
<field name="priority" groups="base.group_user"/>
|
||||
<field name="priority"/>
|
||||
<field name="section_id"/>
|
||||
<field name="date_deadline"/>
|
||||
<field name="state" groups="base.group_no_one"/>
|
||||
|
@ -130,17 +130,17 @@
|
|||
<field name="partner_phone"/>
|
||||
<field name="email_from" widget="email"/>
|
||||
</group>
|
||||
<group colspan="2" col="2">
|
||||
<group colspan="2" col="2" groups="base.group_user">
|
||||
<separator colspan="2" string="Responsibilities"/>
|
||||
<field name="user_fault"/>
|
||||
<field name="categ_id" widget="selection"
|
||||
domain="[('object_id.model', '=', 'crm.claim')]"/>
|
||||
<field name="ref"/>
|
||||
</group>
|
||||
<separator colspan="4" string="Claim/Action Description"/>
|
||||
<separator colspan="4" string="Claim/Action Description" groups="base.group_user"/>
|
||||
<field name="description" colspan="4" nolabel="1"/>
|
||||
</page>
|
||||
<page string="Follow Up">
|
||||
<page string="Follow Up" groups="base.group_user">
|
||||
<group colspan="2" col="2">
|
||||
<separator colspan="2" string="Actions"/>
|
||||
<field name="date_action_next"/>
|
||||
|
@ -167,7 +167,7 @@
|
|||
</group>
|
||||
</sheet>
|
||||
<div class="oe_chatter">
|
||||
<field name="message_follower_ids" widget="mail_followers"/>
|
||||
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
|
||||
<field name="message_ids" widget="mail_thread" placeholder="Share a note..."/>
|
||||
</div>
|
||||
</form>
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2011-01-12 19:11+0000\n"
|
||||
"Last-Translator: OpenERP Administrators <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-11-28 19:56+0000\n"
|
||||
"Last-Translator: Davide Corio - agilebg.com <davide.corio@agilebg.com>\n"
|
||||
"Language-Team: Italian <it@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: 2012-11-25 06:23+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: decimal_precision
|
||||
#: field:decimal.precision,digits:0
|
||||
|
@ -28,6 +28,8 @@ msgid ""
|
|||
"Error! You cannot define the decimal precision of 'Account' as greater than "
|
||||
"the rounding factor of the company's main currency"
|
||||
msgstr ""
|
||||
"Errore! La precisione decimale di 'Contabilità' non può essere più grande "
|
||||
"del fattore di arrotondamento della valuta principale dell'azienda"
|
||||
|
||||
#. module: decimal_precision
|
||||
#: model:ir.actions.act_window,name:decimal_precision.action_decimal_precision_form
|
||||
|
|
|
@ -23,10 +23,9 @@ class EDI(openerpweb.Controller):
|
|||
|
||||
@openerpweb.jsonrequest
|
||||
def import_edi_url(self, req, url):
|
||||
context = req.session.eval_context(req.context)
|
||||
result = req.session.proxy('edi').import_edi_url(req.session._db, req.session._uid, req.session._password, url)
|
||||
if len(result) == 1:
|
||||
return {"action": webmain.clean_action(req, result[0][2], context)}
|
||||
return {"action": webmain.clean_action(req, result[0][2])}
|
||||
return True
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
|
@ -8,28 +8,28 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-17 03:29+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 07:46+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:32+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: edi
|
||||
#. openerp-web
|
||||
#: code:addons/edi/static/src/js/edi.js:67
|
||||
#, python-format
|
||||
msgid "Reason:"
|
||||
msgstr ""
|
||||
msgstr "原因:"
|
||||
|
||||
#. module: edi
|
||||
#. openerp-web
|
||||
#: code:addons/edi/static/src/js/edi.js:60
|
||||
#, python-format
|
||||
msgid "The document has been successfully imported!"
|
||||
msgstr ""
|
||||
msgstr "这个单据已经被成功导入!"
|
||||
|
||||
#. module: edi
|
||||
#: sql_constraint:res.company:0
|
||||
|
@ -46,7 +46,7 @@ msgstr "错误,您不能创建循环引用的会员用户"
|
|||
#: code:addons/edi/static/src/js/edi.js:65
|
||||
#, python-format
|
||||
msgid "Sorry, the document could not be imported."
|
||||
msgstr ""
|
||||
msgstr "对不起,这个单据不能导入!"
|
||||
|
||||
#. module: edi
|
||||
#: constraint:res.company:0
|
||||
|
@ -61,7 +61,7 @@ msgstr "公司"
|
|||
#. module: edi
|
||||
#: constraint:res.partner:0
|
||||
msgid "Error: Invalid ean code"
|
||||
msgstr ""
|
||||
msgstr "错误:无效的(EAN)条码"
|
||||
|
||||
#. module: edi
|
||||
#: sql_constraint:res.currency:0
|
||||
|
@ -78,13 +78,13 @@ msgstr "货币"
|
|||
#: code:addons/edi/static/src/js/edi.js:71
|
||||
#, python-format
|
||||
msgid "Document Import Notification"
|
||||
msgstr ""
|
||||
msgstr "单据导入通知"
|
||||
|
||||
#. module: edi
|
||||
#: code:addons/edi/models/edi.py:130
|
||||
#, python-format
|
||||
msgid "Missing application."
|
||||
msgstr ""
|
||||
msgstr "找不到的应用。"
|
||||
|
||||
#. module: edi
|
||||
#: code:addons/edi/models/edi.py:131
|
||||
|
@ -111,12 +111,12 @@ msgstr "业务伙伴"
|
|||
msgid ""
|
||||
"Error! You cannot define a rounding factor for the company's main currency "
|
||||
"that is smaller than the decimal precision of 'Account'."
|
||||
msgstr ""
|
||||
msgstr "错误!公司本位币的舍入系数不能定义得小于”科目“的小数位数"
|
||||
|
||||
#. module: edi
|
||||
#: model:ir.model,name:edi.model_edi_edi
|
||||
msgid "EDI Subsystem"
|
||||
msgstr ""
|
||||
msgstr "EDI 子系统"
|
||||
|
||||
#~ msgid "Partner Addresses"
|
||||
#~ msgstr "业务伙伴地址"
|
||||
|
|
|
@ -107,7 +107,7 @@
|
|||
<field name="state" widget="statusbar" statusbar_visible="draft,confirm,done"/>
|
||||
</header>
|
||||
<sheet>
|
||||
<div class="oe_right oe_button_box">
|
||||
<div class="oe_right oe_button_box" groups="base.group_user">
|
||||
<button name="%(event.act_event_list_register_event)d" type="action" string="Registrations" help="Register with this event"/>
|
||||
</div>
|
||||
<div class="oe_title">
|
||||
|
@ -204,7 +204,7 @@
|
|||
</notebook>
|
||||
</sheet>
|
||||
<div class="oe_chatter">
|
||||
<field name="message_follower_ids" widget="mail_followers"/>
|
||||
<field name="message_follower_ids" widget="mail_followers" groups="base.group_user"/>
|
||||
<field name="message_ids" widget="mail_thread" placeholder="Share a note..."/>
|
||||
</div>
|
||||
</form>
|
||||
|
@ -538,7 +538,7 @@
|
|||
<field name="view_mode">tree,form,calendar,graph</field>
|
||||
<field name="context">{}</field>
|
||||
<field name="search_view_id" ref="view_registration_search"/>
|
||||
</record>view_
|
||||
</record>
|
||||
|
||||
<menuitem name="Registrations"
|
||||
id="menu_action_registration" parent="base.menu_event_main"
|
||||
|
|
|
@ -7,30 +7,30 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-16 14:07+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-29 01:57+0000\n"
|
||||
"Last-Translator: mrshelly <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: 2012-11-25 05:44+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:13+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
#: view:report.event.registration:0
|
||||
msgid "My Events"
|
||||
msgstr "我的事件"
|
||||
msgstr "我的活动"
|
||||
|
||||
#. module: event
|
||||
#: field:event.registration,nb_register:0
|
||||
msgid "Number of Participants"
|
||||
msgstr ""
|
||||
msgstr "参与者数目"
|
||||
|
||||
#. module: event
|
||||
#: field:event.event,register_attended:0
|
||||
msgid "# of Participations"
|
||||
msgstr ""
|
||||
msgstr "参与编号#"
|
||||
|
||||
#. module: event
|
||||
#: field:event.event,main_speaker_id:0
|
||||
|
@ -61,12 +61,12 @@ msgstr ""
|
|||
#: code:addons/event/event.py:305
|
||||
#, python-format
|
||||
msgid "Event has been <b>cancelled</b>."
|
||||
msgstr ""
|
||||
msgstr "活动 <b>已经被取消</b>."
|
||||
|
||||
#. module: event
|
||||
#: field:event.registration,date_open:0
|
||||
msgid "Registration Date"
|
||||
msgstr "登记记录日期"
|
||||
msgstr "活动日期"
|
||||
|
||||
#. module: event
|
||||
#: help:event.registration,origin:0
|
||||
|
@ -76,7 +76,7 @@ msgstr ""
|
|||
#. module: event
|
||||
#: field:event.event,type:0
|
||||
msgid "Type of Event"
|
||||
msgstr ""
|
||||
msgstr "活动类型"
|
||||
|
||||
#. module: event
|
||||
#: model:event.event,name:event.event_0
|
||||
|
@ -88,17 +88,17 @@ msgstr "Bon Jovi音乐会"
|
|||
#: selection:event.registration,state:0
|
||||
#: selection:report.event.registration,registration_state:0
|
||||
msgid "Attended"
|
||||
msgstr ""
|
||||
msgstr "参加"
|
||||
|
||||
#. module: event
|
||||
#: selection:report.event.registration,month:0
|
||||
msgid "March"
|
||||
msgstr "3月"
|
||||
msgstr "三月"
|
||||
|
||||
#. module: event
|
||||
#: view:event.registration:0
|
||||
msgid "Send Email"
|
||||
msgstr ""
|
||||
msgstr "发送邮件"
|
||||
|
||||
#. module: event
|
||||
#: field:event.event,company_id:0
|
||||
|
@ -112,29 +112,29 @@ msgstr "公司"
|
|||
#: field:event.event,email_confirmation_id:0
|
||||
#: field:event.type,default_email_event:0
|
||||
msgid "Event Confirmation Email"
|
||||
msgstr ""
|
||||
msgstr "活动确认邮件"
|
||||
|
||||
#. module: event
|
||||
#: field:event.type,default_registration_max:0
|
||||
msgid "Default Maximum Registration"
|
||||
msgstr ""
|
||||
msgstr "默认最多的注册者"
|
||||
|
||||
#. module: event
|
||||
#: help:event.event,message_unread:0
|
||||
#: help:event.registration,message_unread:0
|
||||
msgid "If checked new messages require your attention."
|
||||
msgstr ""
|
||||
msgstr "如果要求你关注新消息,勾选此项"
|
||||
|
||||
#. module: event
|
||||
#: field:event.event,register_avail:0
|
||||
msgid "Available Registrations"
|
||||
msgstr ""
|
||||
msgstr "可注册项目"
|
||||
|
||||
#. module: event
|
||||
#: view:event.registration:0
|
||||
#: model:ir.model,name:event.model_event_registration
|
||||
msgid "Event Registration"
|
||||
msgstr "事件登记记录"
|
||||
msgstr "活动登记记录"
|
||||
|
||||
#. module: event
|
||||
#: model:ir.module.category,description:event.module_category_event_management
|
||||
|
@ -149,7 +149,7 @@ msgstr ""
|
|||
#. module: event
|
||||
#: view:report.event.registration:0
|
||||
msgid "Event on Registration"
|
||||
msgstr "登记记录的事件"
|
||||
msgstr "登记记录的活动"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
|
@ -167,12 +167,12 @@ msgstr "活动开始日期"
|
|||
#: model:ir.ui.menu,name:event.menu_report_event_registration
|
||||
#: view:report.event.registration:0
|
||||
msgid "Events Analysis"
|
||||
msgstr "事件分析"
|
||||
msgstr "活动分析"
|
||||
|
||||
#. module: event
|
||||
#: help:event.type,default_registration_max:0
|
||||
msgid "It will select this default maximum value when you choose this event"
|
||||
msgstr ""
|
||||
msgstr "当你选择这个活动,将选择默认最大值"
|
||||
|
||||
#. module: event
|
||||
#: view:report.event.registration:0
|
||||
|
@ -207,13 +207,13 @@ msgstr "错误!"
|
|||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "Confirm Event"
|
||||
msgstr "确认事件"
|
||||
msgstr "确认活动"
|
||||
|
||||
#. module: event
|
||||
#: view:board.board:0
|
||||
#: model:ir.actions.act_window,name:event.act_event_view
|
||||
msgid "Next Events"
|
||||
msgstr "下一个事件"
|
||||
msgstr "下一个活动"
|
||||
|
||||
#. module: event
|
||||
#: selection:event.event,state:0
|
||||
|
@ -236,23 +236,23 @@ msgstr "Verdi歌剧"
|
|||
#. module: event
|
||||
#: view:report.event.registration:0
|
||||
msgid "Display"
|
||||
msgstr ""
|
||||
msgstr "显示"
|
||||
|
||||
#. module: event
|
||||
#: view:report.event.registration:0
|
||||
#: field:report.event.registration,registration_state:0
|
||||
msgid "Registration State"
|
||||
msgstr ""
|
||||
msgstr "等级状态"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "tickets"
|
||||
msgstr ""
|
||||
msgstr "门票"
|
||||
|
||||
#. module: event
|
||||
#: view:res.partner:0
|
||||
msgid "False"
|
||||
msgstr ""
|
||||
msgstr "False"
|
||||
|
||||
#. module: event
|
||||
#: model:mail.message.subtype,name:event.mt_event_registration
|
||||
|
@ -262,7 +262,7 @@ msgstr ""
|
|||
#. module: event
|
||||
#: field:event.registration,event_end_date:0
|
||||
msgid "Event End Date"
|
||||
msgstr ""
|
||||
msgstr "活动结束日期"
|
||||
|
||||
#. module: event
|
||||
#: help:event.event,message_summary:0
|
||||
|
@ -270,7 +270,7 @@ msgstr ""
|
|||
msgid ""
|
||||
"Holds the Chatter summary (number of messages, ...). This summary is "
|
||||
"directly in html format in order to be inserted in kanban views."
|
||||
msgstr ""
|
||||
msgstr "保存复杂的摘要(消息数量,……等)。为了插入到看板视图,这一摘要直接是是HTML格式。"
|
||||
|
||||
#. module: event
|
||||
#: view:report.event.registration:0
|
||||
|
@ -300,12 +300,12 @@ msgstr "业务伙伴"
|
|||
#. module: event
|
||||
#: help:event.type,default_registration_min:0
|
||||
msgid "It will select this default minimum value when you choose this event"
|
||||
msgstr ""
|
||||
msgstr "当你选择这个活动,将选择默认最小值"
|
||||
|
||||
#. module: event
|
||||
#: model:ir.model,name:event.model_event_type
|
||||
msgid " Event Type "
|
||||
msgstr " 事件类型 "
|
||||
msgstr " 活动类型 "
|
||||
|
||||
#. module: event
|
||||
#: view:event.registration:0
|
||||
|
@ -315,7 +315,7 @@ msgstr " 事件类型 "
|
|||
#: field:report.event.registration,event_id:0
|
||||
#: view:res.partner:0
|
||||
msgid "Event"
|
||||
msgstr "事件"
|
||||
msgstr "活动"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
|
@ -346,14 +346,14 @@ msgstr ""
|
|||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "Register with this event"
|
||||
msgstr ""
|
||||
msgstr "注册这次活动"
|
||||
|
||||
#. module: event
|
||||
#: help:event.type,default_email_registration:0
|
||||
msgid ""
|
||||
"It will select this default confirmation registration mail value when you "
|
||||
"choose this event"
|
||||
msgstr ""
|
||||
msgstr "当你选择这个活动,将选择确认登记邮件值"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
|
@ -421,7 +421,7 @@ msgstr "创建日期"
|
|||
#: view:report.event.registration:0
|
||||
#: field:report.event.registration,user_id:0
|
||||
msgid "Event Responsible"
|
||||
msgstr ""
|
||||
msgstr "活动负责人"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
|
@ -453,7 +453,7 @@ msgstr ""
|
|||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "Event Organization"
|
||||
msgstr "事件结构"
|
||||
msgstr "活动组织机构"
|
||||
|
||||
#. module: event
|
||||
#: view:event.confirm:0
|
||||
|
@ -463,7 +463,7 @@ msgstr "总是确认"
|
|||
#. module: event
|
||||
#: field:report.event.registration,nbevent:0
|
||||
msgid "Number Of Events"
|
||||
msgstr "事件数"
|
||||
msgstr "活动数量"
|
||||
|
||||
#. module: event
|
||||
#: help:event.event,main_speaker_id:0
|
||||
|
@ -479,7 +479,7 @@ msgstr ""
|
|||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "Cancel Event"
|
||||
msgstr "取消事件"
|
||||
msgstr "取消活动"
|
||||
|
||||
#. module: event
|
||||
#: code:addons/event/event.py:398
|
||||
|
@ -491,12 +491,12 @@ msgstr ""
|
|||
#: model:ir.actions.act_window,name:event.act_event_reg
|
||||
#: view:report.event.registration:0
|
||||
msgid "Events Filling Status"
|
||||
msgstr "事件填充状态"
|
||||
msgstr "活动填充状态"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "Event Category"
|
||||
msgstr ""
|
||||
msgstr "活动分类"
|
||||
|
||||
#. module: event
|
||||
#: field:event.event,register_prospect:0
|
||||
|
@ -506,13 +506,13 @@ msgstr "不确认登记记录"
|
|||
#. module: event
|
||||
#: model:ir.actions.client,name:event.action_client_event_menu
|
||||
msgid "Open Event Menu"
|
||||
msgstr ""
|
||||
msgstr "打开活动菜单"
|
||||
|
||||
#. module: event
|
||||
#: view:report.event.registration:0
|
||||
#: field:report.event.registration,event_state:0
|
||||
msgid "Event State"
|
||||
msgstr ""
|
||||
msgstr "活动状态"
|
||||
|
||||
#. module: event
|
||||
#: field:event.registration,log_ids:0
|
||||
|
@ -559,7 +559,7 @@ msgstr ""
|
|||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "Finish Event"
|
||||
msgstr ""
|
||||
msgstr "结束活动"
|
||||
|
||||
#. module: event
|
||||
#: model:ir.actions.server,name:event.actions_server_event_event_unread
|
||||
|
@ -575,7 +575,7 @@ msgstr "未确认状态的报名者"
|
|||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "Event Description"
|
||||
msgstr ""
|
||||
msgstr "活动描述"
|
||||
|
||||
#. module: event
|
||||
#: field:event.event,date_begin:0
|
||||
|
@ -591,7 +591,7 @@ msgstr ""
|
|||
#: code:addons/event/event.py:315
|
||||
#, python-format
|
||||
msgid "Event has been <b>done</b>."
|
||||
msgstr ""
|
||||
msgstr "活动已经 <b>完成</b>"
|
||||
|
||||
#. module: event
|
||||
#: help:res.partner,speaker:0
|
||||
|
@ -627,6 +627,12 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p class=\"oe_view_nocontent_create\">\n"
|
||||
" 单击添加一个新的活动\n"
|
||||
" </p><p>\n"
|
||||
" OpenERP帮你排程并有效地组织活动:跟踪订阅和参与、自动确认邮件、卖票等等。\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: event
|
||||
#: help:event.event,register_max:0
|
||||
|
@ -634,7 +640,7 @@ msgid ""
|
|||
"You can for each event define a maximum registration level. If you have too "
|
||||
"much registrations you are not able to confirm your event. (put 0 to ignore "
|
||||
"this rule )"
|
||||
msgstr ""
|
||||
msgstr "你能为每个活动定义最大的登记水平。如果你有太多的登记,你不能确认你的活动。(输入0忽略这个规则)"
|
||||
|
||||
#. module: event
|
||||
#: code:addons/event/event.py:462
|
||||
|
@ -649,14 +655,14 @@ msgid ""
|
|||
"The total of confirmed registration for the event '%s' does not meet the "
|
||||
"expected minimum/maximum. Please reconsider those limits before going "
|
||||
"further."
|
||||
msgstr ""
|
||||
msgstr "活动 '%s' 的确认登记合计没有遇到最小或最大值。进一步深入前请重新考虑这些限制。"
|
||||
|
||||
#. module: event
|
||||
#: help:event.event,email_confirmation_id:0
|
||||
msgid ""
|
||||
"If you set an email template, each participant will receive this email "
|
||||
"announcing the confirmation of the event."
|
||||
msgstr ""
|
||||
msgstr "如果你设定了邮件模板,每个参与者将收到邮件公告确认次次活动。"
|
||||
|
||||
#. module: event
|
||||
#: view:board.board:0
|
||||
|
@ -696,7 +702,7 @@ msgstr ""
|
|||
#: model:ir.ui.menu,name:event.menu_reporting_events
|
||||
#: view:res.partner:0
|
||||
msgid "Events"
|
||||
msgstr "事件"
|
||||
msgstr "活动"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
|
@ -743,7 +749,7 @@ msgid ""
|
|||
"The email address of the organizer which is put in the 'Reply-To' of all "
|
||||
"emails sent automatically at event or registrations confirmation. You can "
|
||||
"also put your email address of your mail gateway if you use one."
|
||||
msgstr ""
|
||||
msgstr "在自动发送的活动或者登记确认的email中,组织者的email地址放在'Reply-To' 。你也能放你用的邮件网关的Email地址"
|
||||
|
||||
#. module: event
|
||||
#: help:event.event,message_ids:0
|
||||
|
@ -787,7 +793,7 @@ msgstr ""
|
|||
msgid ""
|
||||
"Warning: This Event has not reached its Minimum Registration Limit. Are you "
|
||||
"sure you want to confirm it?"
|
||||
msgstr "警告:这事件没有达到最低登记记录的规定,你肯定要确认它?"
|
||||
msgstr "警告:这活动没有达到最低登记记录的规定,你肯定要确认它?"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
|
@ -803,7 +809,7 @@ msgstr "我的登记记录"
|
|||
#: code:addons/event/event.py:310
|
||||
#, python-format
|
||||
msgid "Event has been set to <b>draft</b>."
|
||||
msgstr ""
|
||||
msgstr "活动被设置为“草稿”状态"
|
||||
|
||||
#. module: event
|
||||
#: view:report.event.registration:0
|
||||
|
@ -877,7 +883,7 @@ msgstr "地址"
|
|||
#: model:ir.actions.act_window,name:event.action_event_type
|
||||
#: model:ir.ui.menu,name:event.menu_event_type
|
||||
msgid "Types of Events"
|
||||
msgstr "事件类型"
|
||||
msgstr "活动类型"
|
||||
|
||||
#. module: event
|
||||
#: help:event.event,email_registration_id:0
|
||||
|
@ -889,7 +895,7 @@ msgstr ""
|
|||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "Attended the Event"
|
||||
msgstr ""
|
||||
msgstr "参加活动"
|
||||
|
||||
#. module: event
|
||||
#: constraint:event.event:0
|
||||
|
@ -900,7 +906,7 @@ msgstr "错误!结束日期不能在开始日期前。"
|
|||
#: code:addons/event/event.py:400
|
||||
#, python-format
|
||||
msgid "You must wait for the starting day of the event to do this action."
|
||||
msgstr ""
|
||||
msgstr "你必须等待活动开始才能做这些动作"
|
||||
|
||||
#. module: event
|
||||
#: field:event.event,user_id:0
|
||||
|
@ -938,7 +944,7 @@ msgstr ""
|
|||
#: model:email.template,subject:event.confirmation_event
|
||||
#: model:email.template,subject:event.confirmation_registration
|
||||
msgid "Your registration at ${object.event_id.name}"
|
||||
msgstr ""
|
||||
msgstr "你的登记在${object.event_id.name}"
|
||||
|
||||
#. module: event
|
||||
#: view:event.registration:0
|
||||
|
@ -977,13 +983,13 @@ msgstr "关注者"
|
|||
#. module: event
|
||||
#: view:event.event:0
|
||||
msgid "Upcoming events from today"
|
||||
msgstr ""
|
||||
msgstr "今天将开始的活动"
|
||||
|
||||
#. module: event
|
||||
#: code:addons/event/event.py:300
|
||||
#, python-format
|
||||
msgid "Event has been <b>created</b>."
|
||||
msgstr ""
|
||||
msgstr "活动已经被'创建'"
|
||||
|
||||
#. module: event
|
||||
#: model:event.event,name:event.event_2
|
||||
|
@ -1014,12 +1020,12 @@ msgstr ""
|
|||
#: code:addons/event/event.py:320
|
||||
#, python-format
|
||||
msgid "Event has been <b>confirmed</b>."
|
||||
msgstr ""
|
||||
msgstr "活动已经被'确认'"
|
||||
|
||||
#. module: event
|
||||
#: view:res.partner:0
|
||||
msgid "Events Registration"
|
||||
msgstr "事件登记记录"
|
||||
msgstr "活动登记记录"
|
||||
|
||||
#. module: event
|
||||
#: view:event.event:0
|
||||
|
@ -1115,7 +1121,7 @@ msgstr "已确认状态的活动"
|
|||
#: view:report.event.registration:0
|
||||
#: field:report.event.registration,event_type:0
|
||||
msgid "Event Type"
|
||||
msgstr "事件类型"
|
||||
msgstr "活动类型"
|
||||
|
||||
#. module: event
|
||||
#: field:event.event,message_summary:0
|
||||
|
@ -1148,7 +1154,7 @@ msgstr "错误,您不能创建循环引用的会员用户"
|
|||
#: field:event.registration,event_begin_date:0
|
||||
#: field:report.event.registration,event_date:0
|
||||
msgid "Event Start Date"
|
||||
msgstr "事件开始日期"
|
||||
msgstr "活动开始日期"
|
||||
|
||||
#. module: event
|
||||
#: view:report.event.registration:0
|
||||
|
@ -1203,7 +1209,7 @@ msgstr "错误:无效EAN编码"
|
|||
#: model:ir.actions.act_window,name:event.action_event_confirm
|
||||
#: model:ir.model,name:event.model_event_confirm
|
||||
msgid "Event Confirmation"
|
||||
msgstr "事件确认"
|
||||
msgstr "活动确认"
|
||||
|
||||
#. module: event
|
||||
#: view:report.event.registration:0
|
||||
|
|
|
@ -0,0 +1,101 @@
|
|||
# Chinese (Simplified) translation for openobject-addons
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the openobject-addons package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-11-29 01:53+0000\n"
|
||||
"Last-Translator: mrshelly <Unknown>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: event_sale
|
||||
#: model:ir.model,name:event_sale.model_product_product
|
||||
msgid "Product"
|
||||
msgstr "产品"
|
||||
|
||||
#. module: event_sale
|
||||
#: help:product.product,event_ok:0
|
||||
msgid ""
|
||||
"Determine if a product needs to create automatically an event registration "
|
||||
"at the confirmation of a sale order line."
|
||||
msgstr "销售订单确认时自动创建产品的相关活动."
|
||||
|
||||
#. module: event_sale
|
||||
#: help:sale.order.line,event_id:0
|
||||
msgid ""
|
||||
"Choose an event and it will automatically create a registration for this "
|
||||
"event."
|
||||
msgstr "选择活动"
|
||||
|
||||
#. module: event_sale
|
||||
#: sql_constraint:product.product:0
|
||||
msgid "Error ! Ending Date cannot be set before Beginning Date."
|
||||
msgstr "错误!结束日期不能早于开始日期。"
|
||||
|
||||
#. module: event_sale
|
||||
#: model:event.event,name:event_sale.event_technical_training
|
||||
msgid "Technical training in Grand-Rosiere"
|
||||
msgstr ""
|
||||
|
||||
#. module: event_sale
|
||||
#: help:product.product,event_type_id:0
|
||||
msgid ""
|
||||
"Filter the list of event on this category only, in the sale order lines"
|
||||
msgstr "仅在此类中过滤."
|
||||
|
||||
#. module: event_sale
|
||||
#: constraint:product.product:0
|
||||
msgid ""
|
||||
"You provided an invalid \"EAN13 Barcode\" reference. You may use the "
|
||||
"\"Internal Reference\" field instead."
|
||||
msgstr "你提供了一个错误的 \"EAN13 条码\" 编号。你可能要用 “编号”字段替代。"
|
||||
|
||||
#. module: event_sale
|
||||
#: code:addons/event_sale/event_sale.py:88
|
||||
#, python-format
|
||||
msgid "The registration %s has been created from the Sale Order %s."
|
||||
msgstr ""
|
||||
|
||||
#. module: event_sale
|
||||
#: field:sale.order.line,event_ok:0
|
||||
msgid "event_ok"
|
||||
msgstr ""
|
||||
|
||||
#. module: event_sale
|
||||
#: field:product.product,event_ok:0
|
||||
msgid "Event Subscription"
|
||||
msgstr "订阅活动"
|
||||
|
||||
#. module: event_sale
|
||||
#: field:product.product,event_type_id:0
|
||||
msgid "Type of Event"
|
||||
msgstr "活动类型"
|
||||
|
||||
#. module: event_sale
|
||||
#: field:sale.order.line,event_type_id:0
|
||||
msgid "Event Type"
|
||||
msgstr "活动类型"
|
||||
|
||||
#. module: event_sale
|
||||
#: model:product.template,name:event_sale.event_product_product_template
|
||||
msgid "Technical Training"
|
||||
msgstr ""
|
||||
|
||||
#. module: event_sale
|
||||
#: field:sale.order.line,event_id:0
|
||||
msgid "Event"
|
||||
msgstr "活动"
|
||||
|
||||
#. module: event_sale
|
||||
#: model:ir.model,name:event_sale.model_sale_order_line
|
||||
msgid "Sales Order Line"
|
||||
msgstr "销售订单明细"
|
|
@ -13,8 +13,8 @@ msgstr ""
|
|||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=utf-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: fetchmail
|
||||
#: selection:fetchmail.server,state:0
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-02-16 12:46+0000\n"
|
||||
"Last-Translator: 开阖软件 Jeff Wang <jeff@osbzr.com>\n"
|
||||
"PO-Revision-Date: 2012-11-28 15:28+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:32+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: google_base_account
|
||||
#: field:res.users,gmail_user:0
|
||||
|
@ -25,7 +25,7 @@ msgstr "用户名:"
|
|||
#. module: google_base_account
|
||||
#: view:res.users:0
|
||||
msgid "Synchronization"
|
||||
msgstr ""
|
||||
msgstr "同步"
|
||||
|
||||
#. module: google_base_account
|
||||
#: model:ir.actions.act_window,name:google_base_account.act_google_login_form
|
||||
|
@ -41,7 +41,7 @@ msgstr "导入Google联系人失败!"
|
|||
#. module: google_base_account
|
||||
#: model:ir.model,name:google_base_account.model_res_users
|
||||
msgid "Users"
|
||||
msgstr ""
|
||||
msgstr "用户"
|
||||
|
||||
#. module: google_base_account
|
||||
#: constraint:res.users:0
|
||||
|
@ -56,7 +56,7 @@ msgstr "两个用户不能使用相同的用户名!"
|
|||
#. module: google_base_account
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "OAuth UID must be unique per provider"
|
||||
msgstr ""
|
||||
msgstr "OAuth UID必须是每个提供者( provider )唯一的"
|
||||
|
||||
#. module: google_base_account
|
||||
#: view:google.login:0
|
||||
|
@ -71,13 +71,13 @@ msgstr "Google密码"
|
|||
#. module: google_base_account
|
||||
#: view:google.login:0
|
||||
msgid "or"
|
||||
msgstr ""
|
||||
msgstr "or"
|
||||
|
||||
#. module: google_base_account
|
||||
#: code:addons/google_base_account/wizard/google_login.py:77
|
||||
#, python-format
|
||||
msgid "Error!"
|
||||
msgstr ""
|
||||
msgstr "错误!"
|
||||
|
||||
#. module: google_base_account
|
||||
#: view:res.users:0
|
||||
|
@ -87,13 +87,13 @@ msgstr "Google 帐户"
|
|||
#. module: google_base_account
|
||||
#: constraint:res.users:0
|
||||
msgid "Error: Invalid ean code"
|
||||
msgstr ""
|
||||
msgstr "错误:无效的(EAN)条码"
|
||||
|
||||
#. module: google_base_account
|
||||
#: code:addons/google_base_account/wizard/google_login.py:77
|
||||
#, python-format
|
||||
msgid "Authentication failed. Check the user and password."
|
||||
msgstr ""
|
||||
msgstr "身份授权失败。检查用户名和密码。"
|
||||
|
||||
#. module: google_base_account
|
||||
#: code:addons/google_base_account/wizard/google_login.py:29
|
||||
|
@ -113,7 +113,7 @@ msgstr "Google联系人"
|
|||
#. module: google_base_account
|
||||
#: view:google.login:0
|
||||
msgid "Cancel"
|
||||
msgstr ""
|
||||
msgstr "取消"
|
||||
|
||||
#. module: google_base_account
|
||||
#: field:google.login,user:0
|
||||
|
|
|
@ -7,14 +7,19 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:51+0000\n"
|
||||
"PO-Revision-Date: 2012-11-27 15:32+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 16:54+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-28 04:41+0000\n"
|
||||
"X-Generator: Launchpad (build 16309)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: hr
|
||||
#: constraint:hr.employee:0
|
||||
msgid "Error! You cannot create recursive hierarchy of Employee(s)."
|
||||
msgstr "错误!,你不能创建循环的员工等级"
|
||||
|
||||
#. module: hr
|
||||
#: model:process.node,name:hr.process_node_openerpuser0
|
||||
|
@ -148,7 +153,7 @@ msgstr "相关的员工"
|
|||
#. module: hr
|
||||
#: constraint:hr.employee.category:0
|
||||
msgid "Error! You cannot create recursive Categories."
|
||||
msgstr "错误!你不能创建递归的分类。"
|
||||
msgstr "错误!你不能创建循环的分类。"
|
||||
|
||||
#. module: hr
|
||||
#: help:hr.config.settings,module_hr_recruitment:0
|
||||
|
@ -454,11 +459,6 @@ msgstr ""
|
|||
msgid "This installs the module hr_evaluation."
|
||||
msgstr "为此要安装模块 hr_evaluation."
|
||||
|
||||
#. module: hr
|
||||
#: constraint:hr.employee:0
|
||||
msgid "Error! You cannot create recursive hierarchy of Employee(s)."
|
||||
msgstr "错误!,你不能创建递归的员工层次"
|
||||
|
||||
#. module: hr
|
||||
#: help:hr.config.settings,module_hr_attendance:0
|
||||
msgid "This installs the module hr_attendance."
|
||||
|
@ -660,7 +660,7 @@ msgstr "国籍和其他信息"
|
|||
#. module: hr
|
||||
#: constraint:hr.department:0
|
||||
msgid "Error! You cannot create recursive departments."
|
||||
msgstr "错误!你不能创建递归的部门"
|
||||
msgstr "错误!你不能创建循环的部门"
|
||||
|
||||
#. module: hr
|
||||
#: sql_constraint:res.users:0
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-11-24 02:52+0000\n"
|
||||
"PO-Revision-Date: 2012-10-25 17:16+0000\n"
|
||||
"PO-Revision-Date: 2012-11-28 15:27+0000\n"
|
||||
"Last-Translator: ccdos <ccdos@163.com>\n"
|
||||
"Language-Team: Chinese (Simplified) <zh_CN@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: 2012-11-25 06:19+0000\n"
|
||||
"X-Generator: Launchpad (build 16293)\n"
|
||||
"X-Launchpad-Export-Date: 2012-11-29 05:15+0000\n"
|
||||
"X-Generator: Launchpad (build 16319)\n"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan.phase,send_anonymous_manager:0
|
||||
|
@ -83,7 +83,7 @@ msgstr "评估阶段"
|
|||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
msgid "Send Request"
|
||||
msgstr ""
|
||||
msgstr "发送请求"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan,month_first:0
|
||||
|
@ -96,7 +96,7 @@ msgstr "这个月份将在选择的考评计划里对员工进行首次考评。
|
|||
#: view:hr.employee:0
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_open_view_hr_evaluation_tree
|
||||
msgid "Appraisals"
|
||||
msgstr ""
|
||||
msgstr "评估"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
|
@ -107,7 +107,7 @@ msgstr "(eval_name)s:评估名称"
|
|||
#: field:hr.evaluation.interview,message_ids:0
|
||||
#: field:hr_evaluation.evaluation,message_ids:0
|
||||
msgid "Messages"
|
||||
msgstr ""
|
||||
msgstr "消息"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
|
@ -141,13 +141,13 @@ msgstr "没有达到预期"
|
|||
#: model:ir.actions.act_window,name:hr_evaluation.open_view_hr_evaluation_tree
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_eval_hr
|
||||
msgid "Appraisal"
|
||||
msgstr "考评"
|
||||
msgstr "评估"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr.evaluation.interview,message_unread:0
|
||||
#: help:hr_evaluation.evaluation,message_unread:0
|
||||
msgid "If checked new messages require your attention."
|
||||
msgstr ""
|
||||
msgstr "如果要求你关注新消息,勾选此项"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
|
@ -215,7 +215,7 @@ msgstr "在计划执行阶段的评估"
|
|||
msgid ""
|
||||
"Holds the Chatter summary (number of messages, ...). This summary is "
|
||||
"directly in html format in order to be inserted in kanban views."
|
||||
msgstr ""
|
||||
msgstr "保存复杂的摘要(消息数量,……等)。为了插入到看板视图,这一摘要直接是是HTML格式。"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
|
@ -232,7 +232,7 @@ msgstr "截止日期"
|
|||
#: code:addons/hr_evaluation/hr_evaluation.py:326
|
||||
#, python-format
|
||||
msgid "Warning!"
|
||||
msgstr ""
|
||||
msgstr "警告!"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
|
@ -252,7 +252,7 @@ msgstr "(date)s: 当前日期"
|
|||
#. module: hr_evaluation
|
||||
#: model:ir.actions.act_window,name:hr_evaluation.act_hr_employee_2_hr__evaluation_interview
|
||||
msgid "Interviews"
|
||||
msgstr ""
|
||||
msgstr "面试"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: code:addons/hr_evaluation/hr_evaluation.py:82
|
||||
|
@ -264,13 +264,13 @@ msgstr "关于 "
|
|||
#: field:hr.evaluation.interview,message_follower_ids:0
|
||||
#: field:hr_evaluation.evaluation,message_follower_ids:0
|
||||
msgid "Followers"
|
||||
msgstr ""
|
||||
msgstr "关注者"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr.evaluation.interview,message_unread:0
|
||||
#: field:hr_evaluation.evaluation,message_unread:0
|
||||
msgid "Unread Messages"
|
||||
msgstr ""
|
||||
msgstr "未读信息"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
|
@ -391,6 +391,14 @@ msgid ""
|
|||
" </p>\n"
|
||||
" "
|
||||
msgstr ""
|
||||
"<p class=\"oe_view_nocontent_create\">\n"
|
||||
" 单击定义一个评估计划 \n"
|
||||
" </p><p>\n"
|
||||
" 你能定义评估计划(例如:6个月后首次面谈,然后每年一次).\n"
|
||||
" 然后每个员工能关联到一个评估计划,这样Openerp 能自动\n"
|
||||
" 生成一个面谈要求给管理人员和下属.\n"
|
||||
" </p>\n"
|
||||
" "
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr_evaluation.plan.phase:0
|
||||
|
@ -405,7 +413,7 @@ msgstr "行动计划"
|
|||
#. module: hr_evaluation
|
||||
#: model:ir.ui.menu,name:hr_evaluation.menu_eval_hr_config
|
||||
msgid "Periodic Appraisal"
|
||||
msgstr "定义复核"
|
||||
msgstr "定期评估"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:hr_evaluation.plan,month_next:0
|
||||
|
@ -438,7 +446,7 @@ msgstr "所有答案"
|
|||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Answer Survey"
|
||||
msgstr ""
|
||||
msgstr "填写问卷"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
|
@ -549,7 +557,7 @@ msgstr " (employee_name)s: 业务伙伴名称"
|
|||
#: field:hr.evaluation.interview,message_is_follower:0
|
||||
#: field:hr_evaluation.evaluation,message_is_follower:0
|
||||
msgid "Is a Follower"
|
||||
msgstr ""
|
||||
msgstr "是一个关注者"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
|
@ -580,7 +588,7 @@ msgstr "增加筛选条件"
|
|||
#: field:hr_evaluation.evaluation,message_comment_ids:0
|
||||
#: help:hr_evaluation.evaluation,message_comment_ids:0
|
||||
msgid "Comments and emails"
|
||||
msgstr ""
|
||||
msgstr "评论和电子邮件"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan.phase,send_anonymous_employee:0
|
||||
|
@ -733,7 +741,7 @@ msgstr "取消"
|
|||
#. module: hr_evaluation
|
||||
#: constraint:hr.employee:0
|
||||
msgid "Error! You cannot create recursive hierarchy of Employee(s)."
|
||||
msgstr ""
|
||||
msgstr "错误!,你不能创建循环的员工层次"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
|
@ -836,7 +844,7 @@ msgstr "阶段"
|
|||
#. module: hr_evaluation
|
||||
#: selection:hr_evaluation.plan.phase,action:0
|
||||
msgid "Bottom-Up Appraisal Requests"
|
||||
msgstr "自下而上的考评申请"
|
||||
msgstr "自下而上的评估申请"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
|
@ -847,7 +855,7 @@ msgstr "2月"
|
|||
#: view:hr.evaluation.interview:0
|
||||
#: view:hr_evaluation.evaluation:0
|
||||
msgid "Interview Appraisal"
|
||||
msgstr "面谈评估"
|
||||
msgstr "面谈测评"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: field:survey.request,is_evaluation:0
|
||||
|
@ -871,7 +879,7 @@ msgstr "面谈员工"
|
|||
msgid ""
|
||||
"You cannot change state, because some appraisal(s) are in waiting answer or "
|
||||
"draft state."
|
||||
msgstr ""
|
||||
msgstr "你不能改变状态,因为有些评估正在等待结果。"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: selection:hr.evaluation.report,month:0
|
||||
|
@ -887,7 +895,7 @@ msgstr "评估计划阶段"
|
|||
#: help:hr.evaluation.interview,message_ids:0
|
||||
#: help:hr_evaluation.evaluation,message_ids:0
|
||||
msgid "Messages and communication history"
|
||||
msgstr ""
|
||||
msgstr "消息和通信历史"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.interview:0
|
||||
|
|
|
@ -20,5 +20,3 @@ access_account_move_user,account.move.user,account.model_account_move,base.group
|
|||
access_account_move_line_user,account.move.line.user,account.model_account_move_line,base.group_hr_user,1,1,1,1
|
||||
access_account_analytic_line_user,account.ianalytic.line.user,account.model_account_analytic_line,base.group_hr_user,1,1,1,1
|
||||
access_account_journal_period_manager,account.journal.period.manager,account.model_account_journal_period,base.group_hr_manager,1,1,1,1
|
||||
hr.access_account_journal_view_hruser,account.journal.view hruser,account.model_account_journal_view,base.group_hr_user,1,0,0,0
|
||||
hr.access_account_journal_column_hruser,account.journal.column hruser,account.model_account_journal_column,base.group_hr_user,1,0,0,0
|
||||
|
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue