[MERGE] merge with lp:openobject-addons

bzr revid: sbh@tinyerp.com-20110304053250-7o5htjwizl9clsd0
This commit is contained in:
Bhumika (OpenERP)
2011-03-04 11:02:50 +05:30
72 changed files with 3673 additions and 968 deletions
+118 -124
View File
@@ -333,7 +333,7 @@ class account_account(osv.osv):
return result
def _get_level(self, cr, uid, ids, field_name, arg, context=None):
res={}
res = {}
accounts = self.browse(cr, uid, ids, context=context)
for account in accounts:
level = 0
@@ -395,7 +395,7 @@ class account_account(osv.osv):
'reconcile': False,
'active': True,
'currency_mode': 'current',
'company_id': lambda s,cr,uid,c: s.pool.get('res.company')._company_default_get(cr, uid, 'account.account', context=c),
'company_id': lambda s, cr, uid, c: s.pool.get('res.company')._company_default_get(cr, uid, 'account.account', context=c),
}
def _check_recursion(self, cr, uid, ids, context=None):
@@ -474,7 +474,7 @@ class account_account(osv.osv):
for record in reads:
name = record['name']
if record['code']:
name = record['code'] + ' '+name
name = record['code'] + ' ' + name
res.append((record['id'], name))
return res
@@ -606,7 +606,6 @@ class account_journal(osv.osv):
" Select 'Cash' to be used at the time of making payment."\
" Select 'General' for miscellaneous operations."\
" Select 'Opening/Closing Situation' to be used at the time of new fiscal year creation or end of year entries generation."),
'refund_journal': fields.boolean('Refund Journal', help='Fill this if the journal is to be used for refunds of invoices.'),
'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."),
@@ -742,9 +741,7 @@ class account_journal(osv.osv):
}
res = {}
view_id = type_map.get(type, 'account_journal_view')
user = user_pool.browse(cr, uid, uid)
if type in ('cash', 'bank') and currency and user.company_id.currency_id.id != currency:
view_id = 'account_journal_bank_view_multi'
@@ -755,7 +752,6 @@ class account_journal(osv.osv):
'centralisation':type == 'situation',
'view_id':data.res_id,
})
return {
'value':res
}
@@ -805,19 +801,28 @@ class account_fiscalyear(osv.osv):
(_check_fiscal_year, 'Error! You cannot define overlapping fiscal years',['date_start', 'date_stop'])
]
def create_period3(self,cr, uid, ids, context=None):
def create_period3(self, cr, uid, ids, context=None):
return self.create_period(cr, uid, ids, context, 3)
def create_period(self,cr, uid, ids, context=None, interval=1):
def create_period(self, cr, uid, ids, context=None, interval=1):
period_obj = self.pool.get('account.period')
for fy in self.browse(cr, uid, ids, context=context):
ds = datetime.strptime(fy.date_start, '%Y-%m-%d')
while ds.strftime('%Y-%m-%d')<fy.date_stop:
period_obj.create(cr, uid, {
'name': _('Opening Period'),
'code': ds.strftime('00/%Y'),
'date_start': ds,
'date_stop': ds,
'special': True,
'fiscalyear_id': fy.id,
})
while ds.strftime('%Y-%m-%d') < fy.date_stop:
de = ds + relativedelta(months=interval, days=-1)
if de.strftime('%Y-%m-%d')>fy.date_stop:
if de.strftime('%Y-%m-%d') > fy.date_stop:
de = datetime.strptime(fy.date_stop, '%Y-%m-%d')
self.pool.get('account.period').create(cr, uid, {
period_obj.create(cr, uid, {
'name': ds.strftime('%m/%Y'),
'code': ds.strftime('%m/%Y'),
'date_start': ds.strftime('%Y-%m-%d'),
@@ -1115,9 +1120,8 @@ class account_move(osv.osv):
res_ids = set(id[0] for id in cr.fetchall())
ids = ids and (ids & res_ids) or res_ids
if ids:
return [('id','in',tuple(ids))]
else:
return [('id', '=', '0')]
return [('id', 'in', tuple(ids))]
return [('id', '=', '0')]
_columns = {
'name': fields.char('Number', size=64, required=True),
@@ -1201,7 +1205,6 @@ class account_move(osv.osv):
'SET state=%s '\
'WHERE id IN %s',
('posted', tuple(valid_moves),))
return True
def button_validate(self, cursor, user, ids, context=None):
@@ -1516,7 +1519,6 @@ class account_move_reconcile(osv.osv):
result.append((r.id,r.name))
return result
account_move_reconcile()
#----------------------------------------------------------
@@ -1828,7 +1830,6 @@ class account_tax(osv.osv):
obj_partener_address = self.pool.get('res.partner.address')
for tax in taxes:
# we compute the amount for the current tax object and append it to the result
data = {'id':tax.id,
'name':tax.description and tax.description + " - " + tax.name or tax.name,
'account_collected_id':tax.account_collected_id.id,
@@ -1910,7 +1911,7 @@ class account_tax(osv.osv):
totalex -= r.get('amount', 0.0)
totlex_qty = 0.0
try:
totlex_qty=totalex/quantity
totlex_qty = totalex/quantity
except:
pass
tex = self._compute(cr, uid, tex, totlex_qty, quantity, address_id=address_id, product=product, partner=partner)
@@ -2043,6 +2044,7 @@ class account_tax(osv.osv):
r['amount'] = round(r['amount'] * quantity, prec)
total += r['amount']
return res
account_tax()
# ---------------------------------------------------------
@@ -2171,13 +2173,11 @@ class account_subscription(osv.osv):
'name': fields.char('Name', size=64, required=True),
'ref': fields.char('Reference', size=16),
'model_id': fields.many2one('account.model', 'Model', required=True),
'date_start': fields.date('Start Date', required=True),
'period_total': fields.integer('Number of Periods', required=True),
'period_nbr': fields.integer('Period', required=True),
'period_type': fields.selection([('day','days'),('month','month'),('year','year')], 'Period Type', required=True),
'state': fields.selection([('draft','Draft'),('running','Running'),('done','Done')], 'State', required=True, readonly=True),
'lines_id': fields.one2many('account.subscription.line', 'subscription_id', 'Subscription Lines')
}
_defaults = {
@@ -2232,6 +2232,7 @@ class account_subscription(osv.osv):
ds = (datetime.strptime(ds, '%Y-%m-%d') + relativedelta(years=sub.period_nbr)).strftime('%Y-%m-%d')
self.write(cr, uid, ids, {'state':'running'})
return True
account_subscription()
class account_subscription_line(osv.osv):
@@ -2260,6 +2261,7 @@ class account_subscription_line(osv.osv):
return all_moves
_rec_name = 'date'
account_subscription_line()
# ---------------------------------------------------------------
@@ -2346,9 +2348,9 @@ class account_add_tmpl_wizard(osv.osv_memory):
_name = 'account.addtmpl.wizard'
def _get_def_cparent(self, cr, uid, context=None):
acc_obj=self.pool.get('account.account')
tmpl_obj=self.pool.get('account.account.template')
tids=tmpl_obj.read(cr, uid, [context['tmpl_ids']], ['parent_id'])
acc_obj = self.pool.get('account.account')
tmpl_obj = self.pool.get('account.account.template')
tids = tmpl_obj.read(cr, uid, [context['tmpl_ids']], ['parent_id'])
if not tids or not tids[0]['parent_id']:
return False
ptids = tmpl_obj.read(cr, uid, [tids[0]['parent_id'][0]], ['code'])
@@ -2356,7 +2358,6 @@ class account_add_tmpl_wizard(osv.osv_memory):
if not ptids or not ptids[0]['code']:
raise osv.except_osv(_('Error !'), _('Cannot locate parent code for template account!'))
res = acc_obj.search(cr, uid, [('code','=',ptids[0]['code'])])
return res and res[0] or False
_columns = {
@@ -2449,6 +2450,8 @@ class account_chart_template(osv.osv):
'property_account_expense': fields.many2one('account.account.template','Expense Account on Product Template'),
'property_account_income': fields.many2one('account.account.template','Income Account on Product Template'),
'property_reserve_and_surplus_account': fields.many2one('account.account.template', 'Reserve and Profit/Loss Account', domain=[('type', '=', 'payable')], help='This Account is used for transferring Profit/Loss(If It is Profit: Amount will be added, Loss: Amount will be deducted.), Which is calculated from Profilt & Loss Report'),
'property_account_income_opening': fields.many2one('account.account.template','Opening Entries Income Account'),
'property_account_expense_opening': fields.many2one('account.account.template','Opening Entries Expense Account'),
}
account_chart_template()
@@ -2526,7 +2529,6 @@ class account_tax_template(osv.osv):
}
_order = 'sequence'
account_tax_template()
# Fiscal Position Templates
@@ -2602,10 +2604,12 @@ class wizard_multi_charts_accounts(osv.osv_memory):
res['value']["sale_tax"] = False
res['value']["purchase_tax"] = False
if chart_template_id:
# default tax is given by the lowesst sequence. For same sequence we will take the latest created as it will be the case for tax created while isntalling the generic chart of account
sale_tax_ids = self.pool.get('account.tax.template').search(cr, uid, [("chart_template_id"
, "=", chart_template_id), ('type_tax_use', 'in', ('sale','all'))], order="sequence")
, "=", chart_template_id), ('type_tax_use', 'in', ('sale','all'))], order="sequence, id desc")
purchase_tax_ids = self.pool.get('account.tax.template').search(cr, uid, [("chart_template_id"
, "=", chart_template_id), ('type_tax_use', 'in', ('purchase','all'))], order="sequence")
, "=", chart_template_id), ('type_tax_use', 'in', ('purchase','all'))], order="sequence, id desc")
res['value']["sale_tax"] = sale_tax_ids and sale_tax_ids[0] or False
res['value']["purchase_tax"] = purchase_tax_ids and purchase_tax_ids[0] or False
return res
@@ -2635,10 +2639,9 @@ class wizard_multi_charts_accounts(osv.osv_memory):
return False
def _get_default_accounts(self, cr, uid, context=None):
accounts = [{'acc_name':'Current','account_type':'bank'},
{'acc_name':'Deposit','account_type':'bank'},
{'acc_name':'Cash','account_type':'cash'}]
return accounts
return [{'acc_name': _('Current'),'account_type':'bank'},
{'acc_name': _('Deposit'),'account_type':'bank'},
{'acc_name': _('Cash'),'account_type':'cash'}]
_defaults = {
'company_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr, uid, [uid], c)[0].company_id.id,
@@ -2681,6 +2684,10 @@ class wizard_multi_charts_accounts(osv.osv_memory):
obj_data = self.pool.get('ir.model.data')
analytic_journal_obj = self.pool.get('account.analytic.journal')
obj_tax_code = self.pool.get('account.tax.code')
obj_tax_code_template = self.pool.get('account.tax.code.template')
obj_acc_journal_view = self.pool.get('account.journal.view')
ir_values = self.pool.get('ir.values')
obj_product = self.pool.get('product.product')
# Creating Account
obj_acc_root = obj_multi.chart_template_id.account_root_id
tax_code_root_id = obj_multi.chart_template_id.tax_code_root_id.id
@@ -2693,10 +2700,10 @@ class wizard_multi_charts_accounts(osv.osv_memory):
todo_dict = {}
#create all the tax code
children_tax_code_template = self.pool.get('account.tax.code.template').search(cr, uid, [('parent_id','child_of',[tax_code_root_id])], order='id')
children_tax_code_template = obj_tax_code_template.search(cr, uid, [('parent_id','child_of',[tax_code_root_id])], order='id')
children_tax_code_template.sort()
for tax_code_template in self.pool.get('account.tax.code.template').browse(cr, uid, children_tax_code_template, context=context):
vals={
for tax_code_template in obj_tax_code_template.browse(cr, uid, children_tax_code_template, context=context):
vals = {
'name': (tax_code_root_id == tax_code_template.id) and obj_multi.company_id.name or tax_code_template.name,
'code': tax_code_template.code,
'info': tax_code_template.info,
@@ -2746,14 +2753,13 @@ class wizard_multi_charts_accounts(osv.osv_memory):
'account_paid_id': tax.account_paid_id and tax.account_paid_id.id or False,
}
tax_template_ref[tax.id] = new_tax
#deactivate the parent_store functionnality on account_account for rapidity purpose
ctx = context and context.copy() or {}
ctx['defer_parent_store_computation'] = True
children_acc_template = obj_acc_template.search(cr, uid, [('parent_id','child_of',[obj_acc_root.id]),('nocreate','!=',True)])
children_acc_template.sort()
for account_template in obj_acc_template.browse(cr, uid, children_acc_template,context=context):
for account_template in obj_acc_template.browse(cr, uid, children_acc_template, context=context):
tax_ids = []
for tax in account_template.tax_ids:
tax_ids.append(tax_template_ref[tax.id])
@@ -2779,8 +2785,10 @@ class wizard_multi_charts_accounts(osv.osv_memory):
}
new_account = obj_acc.create(cr, uid, vals, context=ctx)
acc_template_ref[account_template.id] = new_account
#reactivate the parent_store functionnality on account_account
self.pool.get('account.account')._parent_store_compute(cr)
obj_acc._parent_store_compute(cr)
for key,value in todo_dict.items():
if value['account_collected_id'] or value['account_paid_id']:
@@ -2789,41 +2797,23 @@ class wizard_multi_charts_accounts(osv.osv_memory):
'account_paid_id': acc_template_ref.get(value['account_paid_id'], False),
})
# Creating Journals Sales and Purchase
vals_journal={}
# Creating Journals
data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_sp_journal_view')])
data = obj_data.browse(cr, uid, data_id[0], context=context)
view_id = data.res_id
seq_id = obj_sequence.search(cr, uid, [('name','=','Account Journal')])[0]
if obj_multi.seq_journal:
seq_id_sale = obj_sequence.search(cr, uid, [('name','=','Sale Journal')])[0]
seq_id_purchase = obj_sequence.search(cr, uid, [('name','=','Purchase Journal')])[0]
seq_id_sale_refund = obj_sequence.search(cr, uid, [('name','=','Sales Refund Journal')])
if seq_id_sale_refund:
seq_id_sale_refund = seq_id_sale_refund[0]
seq_id_purchase_refund = obj_sequence.search(cr, uid, [('name','=','Purchase Refund Journal')])
if seq_id_purchase_refund:
seq_id_purchase_refund = seq_id_purchase_refund[0]
else:
seq_id_sale = seq_id
seq_id_purchase = seq_id
seq_id_sale_refund = seq_id
seq_id_purchase_refund = seq_id
vals_journal['view_id'] = view_id
#Sales Journal
analitical_sale_ids = analytic_journal_obj.search(cr,uid,[('type','=','sale')])
analitical_journal_sale = analitical_sale_ids and analitical_sale_ids[0] or False
analytical_sale_ids = analytic_journal_obj.search(cr,uid,[('type','=','sale')])
analytical_journal_sale = analytical_sale_ids and analytical_sale_ids[0] or False
vals_journal['name'] = _('Sales Journal')
vals_journal['type'] = 'sale'
vals_journal['code'] = _('SAJ')
vals_journal['sequence_id'] = seq_id_sale
vals_journal['company_id'] = company_id
vals_journal['analytic_journal_id'] = analitical_journal_sale
vals_journal = {
'name': _('Sales Journal'),
'type': 'sale',
'code': _('SAJ'),
'view_id': view_id,
'company_id': company_id,
'analytic_journal_id': analytical_journal_sale,
}
if obj_multi.chart_template_id.property_account_receivable:
vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_income_categ.id]
@@ -2832,38 +2822,35 @@ class wizard_multi_charts_accounts(osv.osv_memory):
obj_journal.create(cr,uid,vals_journal)
# Purchase Journal
analitical_purchase_ids = analytic_journal_obj.search(cr,uid,[('type','=','purchase')])
analitical_journal_purchase = analitical_purchase_ids and analitical_purchase_ids[0] or False
analytical_purchase_ids = analytic_journal_obj.search(cr,uid,[('type','=','purchase')])
analytical_journal_purchase = analytical_purchase_ids and analytical_purchase_ids[0] or False
vals_journal['name'] = _('Purchase Journal')
vals_journal['type'] = 'purchase'
vals_journal['code'] = _('EXJ')
vals_journal['sequence_id'] = seq_id_purchase
vals_journal['view_id'] = view_id
vals_journal['company_id'] = company_id
vals_journal['analytic_journal_id'] = analitical_journal_purchase
vals_journal = {
'name': _('Purchase Journal'),
'type': 'purchase',
'code': _('EXJ'),
'view_id': view_id,
'company_id': company_id,
'analytic_journal_id': analytical_journal_purchase,
}
if obj_multi.chart_template_id.property_account_payable:
vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_expense_categ.id]
vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_expense_categ.id]
obj_journal.create(cr,uid,vals_journal)
# Creating Journals Sales Refund and Purchase Refund
vals_journal = {}
data_id = obj_data.search(cr, uid, [('model', '=', 'account.journal.view'), ('name', '=', 'account_sp_refund_journal_view')], context=context)
data = obj_data.browse(cr, uid, data_id[0], context=context)
view_id = data.res_id
#Sales Refund Journal
vals_journal = {
'view_id': view_id,
'name': _('Sales Refund Journal'),
'type': 'sale_refund',
'refund_journal': True,
'code': _('SCNJ'),
'sequence_id': seq_id_sale_refund,
'analytic_journal_id': analitical_journal_sale,
'view_id': view_id,
'analytic_journal_id': analytical_journal_sale,
'company_id': company_id
}
@@ -2871,23 +2858,15 @@ class wizard_multi_charts_accounts(osv.osv_memory):
vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_income_categ.id]
vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_income_categ.id]
# if obj_multi.property_account_receivable:
# vals_journal.update({
# 'default_credit_account_id': acc_template_ref[obj_multi.chart_template_id.property_account_income_categ.id],
# 'default_debit_account_id': acc_template_ref[obj_multi.chart_template_id.property_account_income_categ.id]
# })
obj_journal.create(cr, uid, vals_journal, context=context)
# Purchase Refund Journal
vals_journal = {
'view_id': view_id,
'name': _('Purchase Refund Journal'),
'type': 'purchase_refund',
'refund_journal': True,
'code': _('ECNJ'),
'sequence_id': seq_id_purchase_refund,
'analytic_journal_id': analitical_journal_purchase,
'view_id': view_id,
'analytic_journal_id': analytical_journal_purchase,
'company_id': company_id
}
@@ -2895,14 +2874,41 @@ class wizard_multi_charts_accounts(osv.osv_memory):
vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_expense_categ.id]
vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.chart_template_id.property_account_expense_categ.id]
# if obj_multi.property_account_payable:
# vals_journal.update({
# 'default_credit_account_id': acc_template_ref[obj_multi.property_account_expense_categ.id],
# 'default_debit_account_id': acc_template_ref[obj_multi.property_account_expense_categ.id]
# })
obj_journal.create(cr, uid, vals_journal, context=context)
# Miscellaneous Journal
data_id = obj_data.search(cr, uid, [('model','=','account.journal.view'), ('name','=','account_journal_view')])
data = obj_data.browse(cr, uid, data_id[0], context=context)
view_id = data.res_id
analytical_miscellaneous_ids = analytic_journal_obj.search(cr, uid, [('type', '=', 'situation')], context=context)
analytical_journal_miscellaneous = analytical_miscellaneous_ids and analytical_miscellaneous_ids[0] or False
vals_journal = {
'name': _('Miscellaneous Journal'),
'type': 'general',
'code': _('MISC'),
'view_id': view_id,
'analytic_journal_id': analytical_journal_miscellaneous,
'company_id': company_id
}
obj_journal.create(cr, uid, vals_journal, context=context)
# Opening Entries Journal
if obj_multi.chart_template_id.property_account_income_opening and obj_multi.chart_template_id.property_account_expense_opening:
vals_journal = {
'name': _('Opening Entries Journal'),
'type': 'situation',
'code': _('OPEJ'),
'view_id': view_id,
'company_id': company_id,
'centralisation': True,
'default_credit_account_id': acc_template_ref[obj_multi.chart_template_id.property_account_income_opening.id],
'default_debit_account_id': acc_template_ref[obj_multi.chart_template_id.property_account_expense_opening.id]
}
obj_journal.create(cr, uid, vals_journal, context=context)
# Bank Journals
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)
@@ -2935,24 +2941,17 @@ class wizard_multi_charts_accounts(osv.osv_memory):
}
acc_cash_id = obj_acc.create(cr,uid,vals)
if obj_multi.seq_journal:
vals_seq={
'name': _('Bank Journal ') + vals['name'],
'code': 'account.journal',
}
seq_id = obj_sequence.create(cr,uid,vals_seq)
#create the bank journal
analitical_bank_ids = analytic_journal_obj.search(cr,uid,[('type','=','situation')])
analitical_journal_bank = analitical_bank_ids and analitical_bank_ids[0] or False
vals_journal['name']= vals['name']
vals_journal['code']= _('BNK') + str(current_num)
vals_journal['sequence_id'] = seq_id
vals_journal['type'] = line.account_type == 'cash' and 'cash' or 'bank'
vals_journal['company_id'] = company_id
vals_journal['analytic_journal_id'] = analitical_journal_bank
analytical_bank_ids = analytic_journal_obj.search(cr,uid,[('type','=','situation')])
analytical_journal_bank = analytical_bank_ids and analytical_bank_ids[0] or False
vals_journal = {
'name': vals['name'],
'code': _('BNK') + str(current_num),
'type': line.account_type == 'cash' and 'cash' or 'bank',
'company_id': company_id,
'analytic_journal_id': False,
'currency_id': False,
}
if line.currency_id:
vals_journal['view_id'] = view_id_cur
vals_journal['currency'] = line.currency_id.id
@@ -2985,7 +2984,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
'name': record[0],
'company_id': company_id,
'fields_id': field[0],
'value': account and 'account.account,'+str(acc_template_ref[account.id]) or False,
'value': account and 'account.account,' + str(acc_template_ref[account.id]) or False,
}
if r:
@@ -2998,7 +2997,6 @@ class wizard_multi_charts_accounts(osv.osv_memory):
fp_ids = obj_fiscal_position_template.search(cr, uid, [('chart_template_id', '=', obj_multi.chart_template_id.id)])
if fp_ids:
obj_tax_fp = self.pool.get('account.fiscal.position.tax')
obj_ac_fp = self.pool.get('account.fiscal.position.account')
@@ -3026,7 +3024,6 @@ class wizard_multi_charts_accounts(osv.osv_memory):
}
obj_ac_fp.create(cr, uid, vals_acc)
ir_values = self.pool.get('ir.values')
if obj_multi.sale_tax:
ir_values.set(cr, uid, key='default', key2=False, name="taxes_id", company=obj_multi.company_id.id,
models =[('product.product',False)], value=[tax_template_to_tax[obj_multi.sale_tax.id]])
@@ -3037,16 +3034,13 @@ class wizard_multi_charts_accounts(osv.osv_memory):
wizard_multi_charts_accounts()
class account_bank_accounts_wizard(osv.osv_memory):
_name = 'account.bank.accounts.wizard'
_name='account.bank.accounts.wizard'
_columns = {
'acc_name': fields.char('Account Name.', size=64, required=True),
'bank_account_id': fields.many2one('wizard.multi.charts.accounts', 'Bank Account', required=True),
'currency_id': fields.many2one('res.currency', 'Currency'),
'account_type': fields.selection([('cash','Cash'),('check','Check'),('bank','Bank')], 'Type', size=32),
}
_defaults = {
'currency_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.currency_id.id,
'currency_id': fields.many2one('res.currency', 'Secondary Currency', help="Forces all moves for this account to have this secondary currency."),
'account_type': fields.selection([('cash','Cash'), ('check','Check'), ('bank','Bank')], 'Account Type', size=32),
}
account_bank_accounts_wizard()
+1
View File
@@ -32,6 +32,7 @@ class account_cashbox_line(osv.osv):
_name = 'account.cashbox.line'
_description = 'CashBox Line'
_rec_name = 'number'
def _sub_total(self, cr, uid, ids, name, arg, context=None):
-15
View File
@@ -37,21 +37,6 @@
<field name="sale_tax" on_change="on_change_tax(sale_tax)" attrs="{'required':[('charts','=','configurable')]}"/>
<field name="purchase_tax" groups="base.group_extended"/>
</group>
<group colspan="4" attrs="{'invisible':[('charts','!=','configurable')]}">
<separator col="4" colspan="4" string="Bank and Cash Accounts"/>
<field colspan="4" mode="tree" height="200" name="bank_accounts_id" nolabel="1" widget="one2many_list">
<form string="">
<field name="acc_name"/>
<field name="account_type"/>
<field name="currency_id" widget="selection" groups="base.group_extended"/>
</form>
<tree editable="bottom" string="Your bank and cash accounts">
<field name="acc_name"/>
<field name="account_type"/>
<field name="currency_id" widget="selection" groups="base.group_extended"/>
</tree>
</field>
</group>
</group>
</group>
</data>
+1 -1
View File
@@ -1297,7 +1297,7 @@ class account_move_line(osv.osv):
if vals.get('account_tax_id', False):
tax_id = tax_obj.browse(cr, uid, vals['account_tax_id'])
total = vals['debit'] - vals['credit']
if journal.refund_journal:
if journal.type in ('purchase_refund', 'sale_refund'):
base_code = 'ref_base_code_id'
tax_code = 'ref_tax_code_id'
account_id = 'account_paid_id'
+13 -9
View File
@@ -47,6 +47,7 @@
<tree colors="blue:state in ('draft');gray:state in ('done') " string="Fiscalyear">
<field name="code"/>
<field name="name"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="state"/>
</tree>
</field>
@@ -116,6 +117,7 @@
<field name="date_start"/>
<field name="date_stop"/>
<field name="special"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="state"/>
<button name="action_draft" states="done" string="Set to Draft" type="object" icon="terp-document-new" groups="account.group_account_manager"/>
<button name="%(action_account_period_close)d" states="draft" string="Close Period" type="action" icon="terp-camera_test"/>
@@ -570,7 +572,7 @@
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id','=',parent.journal_id)]" name="account_id"/>
<field domain="[('journal_id','=',parent.journal_id), ('company_id', '=', parent.company_id)]" name="account_id"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]"/>
<field name="amount"/>
</tree>
@@ -580,7 +582,7 @@
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id"/>
<field domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view'), ('company_id', '=', parent.company_id)]" name="account_id"/>
<field name="analytic_account_id" groups="analytic.group_analytic_accounting" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]"/>
<field name="amount"/>
<field name="sequence" readonly="0"/>
@@ -1011,7 +1013,7 @@
<field name="invoice"/>
<field name="name"/>
<field name="partner_id" on_change="onchange_partner_id(move_id, partner_id, account_id, debit, credit, date, journal_id)"/>
<field name="account_id" domain="[('journal_id','=',journal_id)]"/>
<field name="account_id" domain="[('journal_id','=',journal_id), ('company_id', '=', company_id)]"/>
<field name="journal_id"/>
<field name="debit" sum="Total debit"/>
<field name="credit" sum="Total credit"/>
@@ -1046,7 +1048,7 @@
<page string="Information">
<group col="2" colspan="2">
<separator colspan="2" string="Amount"/>
<field name="account_id" select="1" domain="[('type','&lt;&gt;','view'),('type','&lt;&gt;','consolidation')]"/>
<field name="account_id" select="1" domain="[('company_id', '=', company_id), ('type','&lt;&gt;','view'), ('type','&lt;&gt;','consolidation')]"/>
<field name="debit"/>
<field name="credit"/>
<field name="quantity"/>
@@ -1120,7 +1122,7 @@
<field name="date"/>
<field name="journal_id" readonly="False" select="1"/>
<field name="period_id" readonly="False"/>
<field name="account_id" select="1" domain="[('type','&lt;&gt;','view'),('type','&lt;&gt;','consolidation')]"/>
<field name="account_id" select="1" domain="[('type','&lt;&gt;','view'),('type','&lt;&gt;','consolidation'),('company_id', '=', company_id)]"/>
<field name="partner_id" on_change="onchange_partner_id(False,partner_id,account_id,debit,credit,date)"/>
<newline/>
<field name="debit"/>
@@ -1341,7 +1343,7 @@
<page string="Information">
<group col="2" colspan="2">
<separator colspan="2" string="Amount"/>
<field name="account_id" domain="[('type','&lt;&gt;','view'),('type','&lt;&gt;','consolidation')]"/>
<field name="account_id" domain="[('company_id', '=', parent.company_id), ('type','&lt;&gt;','view'),('type','&lt;&gt;','consolidation')]"/>
<field name="debit"/>
<field name="credit"/>
<field name="quantity"/>
@@ -1403,7 +1405,7 @@
<field name="invoice"/>
<field name="name"/>
<field name="partner_id" on_change="onchange_partner_id(False,partner_id,account_id,debit,credit,parent.date,parent.journal_id)"/>
<field name="account_id" domain="[('journal_id','=',parent.journal_id)]"/>
<field name="account_id" domain="[('journal_id','=',parent.journal_id),('company_id', '=', parent.company_id)]"/>
<field name="date_maturity"/>
<field name="debit" sum="Total Debit"/>
<field name="credit" sum="Total Credit"/>
@@ -2150,6 +2152,8 @@
<field name="property_account_income_categ" domain="[('id', 'child_of', [account_root_id])]" />
<field name="property_account_expense" domain="[('id', 'child_of', [account_root_id])]"/>
<field name="property_account_income" domain="[('id', 'child_of', [account_root_id])]"/>
<field name="property_account_income_opening" domain="[('id', 'child_of', [account_root_id])]"/>
<field name="property_account_expense_opening" domain="[('id', 'child_of', [account_root_id])]"/>
<field name="property_reserve_and_surplus_account" />
</group>
</form>
@@ -2572,7 +2576,7 @@ action = self.pool.get('res.config').next(cr, uid, [], context)
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id','=',parent.journal_id)]" name="account_id"/>
<field domain="[('journal_id','=',parent.journal_id), ('company_id', '=', parent.company_id)]" name="account_id"/>
<field name="analytic_account_id" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]" groups="analytic.group_analytic_accounting" />
<field name="amount"/>
</tree>
@@ -2582,7 +2586,7 @@ action = self.pool.get('res.config').next(cr, uid, [], context)
<field name="ref"/>
<field name="partner_id" on_change="onchange_partner_id(partner_id)"/>
<field name="type" on_change="onchange_type(partner_id, type)"/>
<field domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id"/>
<field domain="[('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view'), ('company_id', '=', parent.company_id)]" name="account_id"/>
<field name="analytic_account_id" domain="[('company_id', '=', parent.company_id), ('type', '&lt;&gt;', 'view')]" groups="analytic.group_analytic_accounting" />
<field name="amount"/>
<field name="sequence"/>
@@ -191,6 +191,14 @@
<field name="user_type" ref="conf_account_type_asset"/>
</record>
<record id="conf_o_income" model="account.account.template">
<field name="code">1106</field>
<field name="name">Opening Income Account</field>
<field ref="conf_cas" name="parent_id"/>
<field name="type">other</field>
<field name="user_type" ref="conf_account_type_income"/>
</record>
<record id="conf_cli" model="account.account.template">
<field name="code">111</field>
<field name="name">Current Liabilities</field>
@@ -225,6 +233,13 @@
<field name="user_type" ref="conf_account_type_liability"/>
</record>
<record id="conf_o_expense" model="account.account.template">
<field name="code">1114</field>
<field name="name">Opening Expense Account</field>
<field ref="conf_cli" name="parent_id"/>
<field name="type">other</field>
<field name="user_type" ref="conf_account_type_expense"/>
</record>
<!-- Profit and Loss -->
@@ -431,6 +446,8 @@
<field name="property_account_payable" ref="conf_a_pay"/>
<field name="property_account_expense_categ" ref="conf_a_expense"/>
<field name="property_account_income_categ" ref="conf_a_sale"/>
<field name="property_account_income_opening" ref="conf_o_income"/>
<field name="property_account_expense_opening" ref="conf_o_expense"/>
<field name="property_reserve_and_surplus_account" ref="conf_a_reserve_and_surplus"/>
</record>
@@ -596,6 +613,13 @@
<field name="tax_ids" eval="[(6,0,[ref('otaxs')])]"/>
</record>
<record id="action_wizard_multi_chart_todo" model="ir.actions.todo">
<field name="name">Generate Chart of Accounts from a Chart Template</field>
<field name="action_id" ref="account.action_wizard_multi_chart"/>
<field name="state">open</field>
<field name="restart">onskip</field>
</record>
</data>
</openerp>
+13
View File
@@ -483,6 +483,19 @@
<field eval="3" name="padding"/>
<field name="prefix">CSH/%(year)s/</field>
</record>
<record id="sequence_opening_journal" model="ir.sequence">
<field name="name">Opening Entries Journal</field>
<field name="code">account.journal</field>
<field eval="3" name="padding"/>
<field name="prefix">OPEJ/%(year)s/</field>
</record>
<record id="sequence_miscellaneous_journal" model="ir.sequence">
<field name="name">Miscellaneous Journal</field>
<field name="code">account.journal</field>
<field eval="3" name="padding"/>
<field name="prefix">MISJ/%(year)s/</field>
</record>
<!--
Account Statement Sequences
-->
+36 -3
View File
@@ -163,6 +163,14 @@
<field name="user_type" ref="account_type_asset"/>
</record>
<record id="o_income" model="account.account">
<field name="code">X11006</field>
<field name="name">Opening Income - (test)</field>
<field ref="cas" name="parent_id"/>
<field name="type">other</field>
<field name="user_type" ref="account_type_income"/>
</record>
<record model="account.account" id="liabilities_view">
<field name="name">Liabilities - (test)</field>
<field name="code">X11</field>
@@ -205,6 +213,14 @@
<field name="user_type" ref="account_type_liability"/>
</record>
<record id="o_expense" model="account.account">
<field name="code">X1114</field>
<field name="name">Opening Expense - (test)</field>
<field ref="cli" name="parent_id"/>
<field name="type">other</field>
<field name="user_type" ref="account_type_expense"/>
</record>
<!-- Profit and Loss -->
<record id="gpf" model="account.account">
@@ -355,7 +371,6 @@
<field name="name">Sales Credit Note Journal - (test)</field>
<field name="code">TSCNJ</field>
<field name="type">sale_refund</field>
<field eval="True" name="refund_journal"/>
<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"/>
@@ -379,7 +394,6 @@
<field name="name">Expenses Credit Notes Journal - (test)</field>
<field name="code">TECNJ</field>
<field name="type">purchase_refund</field>
<field eval="True" name="refund_journal"/>
<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"/>
@@ -421,7 +435,26 @@
<field name="analytic_journal_id" ref="sit"/>
<field name="user_id" ref="base.user_root"/>
</record>
<record id="miscellaneous_journal" model="account.journal">
<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"/>
</record>
<record id="opening_journal" model="account.journal">
<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"/>
<field eval="True" name="centralisation"/>
<field name="user_id" ref="base.user_root"/>
</record>
<!--
Product income and expense accounts, default parameters
-->
+7 -7
View File
@@ -7,13 +7,13 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-03-02 17:21+0000\n"
"PO-Revision-Date: 2011-03-03 14:39+0000\n"
"Last-Translator: NOVOTRADE RENDSZERHÁZ <openerp@novotrade.hu>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:38+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:44+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account
@@ -1846,7 +1846,7 @@ msgstr "Soronkénti tételek"
#. module: account
#: report:account.tax.code.entries:0
msgid "A/c Code"
msgstr "Számla száma"
msgstr "Főkönyvi számla"
#. module: account
#: field:account.invoice,move_id:0
@@ -3643,7 +3643,7 @@ msgstr "Leképezés"
#: field:account.move.reconcile,name:0
#: field:account.subscription,name:0
msgid "Name"
msgstr "Név"
msgstr "Megnevezés"
#. module: account
#: model:ir.model,name:account.model_account_aged_trial_balance
@@ -4171,7 +4171,7 @@ msgstr "A rendszer nem talál érvényes időszakot!"
#. module: account
#: report:account.tax.code.entries:0
msgid "Voucher No"
msgstr "Nyugta száma"
msgstr "Bizonylat sorszáma"
#. module: account
#: view:wizard.multi.charts.accounts:0
@@ -4952,8 +4952,8 @@ msgstr "Tranzakció"
#: help:account.tax.template,tax_code_id:0
msgid "Use this code for the VAT declaration."
msgstr ""
"Az itt megadott kód sorában jelenik meg az adóalap az adókimutatásban és az "
"adókivonatban, amelyek alapján az ÁFA-bevallás elkészíthető."
"Az itt megadott kód sorában jelenik meg az adóalap/adó az adókimutatásban és "
"az adókivonatban, amelyek alapján az ÁFA-bevallás elkészíthető."
#. module: account
#: view:account.move.line:0
+26 -16
View File
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-20 20:44+0000\n"
"Last-Translator: Mihai Boiciuc <Unknown>\n"
"PO-Revision-Date: 2011-03-03 07:58+0000\n"
"Last-Translator: Dorin <dhongu@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-01-21 04:40+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account
#: model:process.transition,name:account.process_transition_supplierreconcilepaid0
@@ -48,7 +48,7 @@ msgstr ""
#. module: account
#: field:account.installer.modules,account_voucher:0
msgid "Voucher Management"
msgstr "Gestionare Voucher-e"
msgstr "Gestionare Chitanțe"
#. module: account
#: view:account.account:0
@@ -88,7 +88,7 @@ msgstr "Definiție copii"
#. module: account
#: model:ir.model,name:account.model_report_aged_receivable
msgid "Aged Receivable Till Today"
msgstr ""
msgstr "Facturi clienți restante la zi"
#. module: account
#: field:account.partner.ledger,reconcil:0
@@ -107,7 +107,7 @@ msgstr ""
#. module: account
#: model:process.transition,name:account.process_transition_invoiceimport0
msgid "Import from invoice or payment"
msgstr ""
msgstr "Importă din factură dau plată"
#. module: account
#: model:ir.model,name:account.model_wizard_multi_charts_accounts
@@ -125,6 +125,9 @@ msgid ""
"If you unreconciliate transactions, you must also verify all the actions "
"that are linked to those transactions because they will not be disabled"
msgstr ""
"Dacă dezactivati relatia intre tranzactii, trebuie să verificaţi de "
"asemenea, toate acţiunile care sunt legate de aceste operaţiuni, deoarece "
"acestea nu vor fi dezactivate"
#. module: account
#: report:account.tax.code.entries:0
@@ -174,6 +177,8 @@ msgid ""
"If the active field is set to False, it will allow you to hide the payment "
"term without removing it."
msgstr ""
"În cazul în care câmpul activ este setat FALS, aceasta vă va permite să se "
"ascundă termenul de plată fără să îl eliminaţi"
#. module: account
#: code:addons/account/invoice.py:1421
@@ -206,7 +211,7 @@ msgstr "Negativ"
#: code:addons/account/wizard/account_move_journal.py:95
#, python-format
msgid "Journal: %s"
msgstr ""
msgstr "Jurnal: %s"
#. module: account
#: help:account.analytic.journal,type:0
@@ -215,6 +220,9 @@ msgid ""
"invoice) to create analytic entries, OpenERP will look for a matching "
"journal of the same type."
msgstr ""
"Oferă tipul jurnalului analitic. Atunci când are nevoie de un document (de "
"exemplu: o factură) pentru a crea o intrare analitica, OpenERP va căuta un "
"jurnalul potrivit de acelaşi tip."
#. module: account
#: model:ir.actions.act_window,name:account.action_account_tax_template_form
@@ -234,6 +242,8 @@ msgid ""
"No period defined for this date: %s !\n"
"Please create a fiscal year."
msgstr ""
"Nici o perioadă definită pentru această dată:% s\n"
"Vă rugam să creați o perioada fiscală."
#. module: account
#: model:ir.model,name:account.model_account_move_line_reconcile_select
@@ -262,12 +272,12 @@ msgstr ""
#: code:addons/account/invoice.py:1210
#, python-format
msgid "Invoice '%s' is paid partially: %s%s of %s%s (%s%s remaining)"
msgstr ""
msgstr "Factura '%s' este platită parțial: %s%s din %s%s (rest %s%s)"
#. module: account
#: model:process.transition,note:account.process_transition_supplierentriesreconcile0
msgid "Accounting entries are an input of the reconciliation."
msgstr ""
msgstr "Înregistrările contabile sunt un element de reconciliere"
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_management_belgian_reports
@@ -283,14 +293,14 @@ msgstr "Nu puteţi adăuga/modifica înregistrări într-un jurnal închis."
#. module: account
#: view:account.bank.statement:0
msgid "Calculated Balance"
msgstr ""
msgstr "Sold Calculat"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_use_model_create_entry
#: model:ir.actions.act_window,name:account.action_view_account_use_model
#: model:ir.ui.menu,name:account.menu_action_manual_recurring
msgid "Manual Recurring"
msgstr ""
msgstr "Recurență manuală"
#. module: account
#: view:account.fiscalyear.close.state:0
@@ -1611,7 +1621,7 @@ msgstr "Suma pe an"
#. module: account
#: model:ir.actions.report.xml,name:account.report_account_voucher_new
msgid "Print Voucher"
msgstr "Tipărire voucher"
msgstr "Tipărire chitanță"
#. module: account
#: view:account.change.currency:0
@@ -4022,7 +4032,7 @@ msgstr "Nu există perioadă validă !"
#. module: account
#: report:account.tax.code.entries:0
msgid "Voucher No"
msgstr "Număr bon"
msgstr "Număr chitanță"
#. module: account
#: view:wizard.multi.charts.accounts:0
@@ -5252,7 +5262,7 @@ msgstr "Conturi debitori şi creditori"
#. module: account
#: field:account.fiscal.position.account.template,position_id:0
msgid "Fiscal Mapping"
msgstr ""
msgstr "Corespondență fiscală"
#. module: account
#: model:ir.actions.act_window,name:account.action_account_state_open
@@ -9677,7 +9687,7 @@ msgstr "De obicei 1 sau -1."
#. module: account
#: model:ir.model,name:account.model_account_fiscal_position_account_template
msgid "Template Account Fiscal Mapping"
msgstr ""
msgstr "Șablon corespondență fiscală cont"
#. module: account
#: field:account.chart.template,property_account_expense:0
+58 -566
View File
@@ -34,12 +34,6 @@ class account_installer(osv.osv_memory):
_name = 'account.installer'
_inherit = 'res.config.installer'
def _get_default_accounts(self, cr, uid, context=None):
accounts = [{'acc_name': 'Current', 'account_type': 'bank'},
{'acc_name': 'Deposit', 'account_type': 'bank'},
{'acc_name': 'Cash', 'account_type': 'cash'}]
return accounts
def _get_charts(self, cr, uid, context=None):
modules = self.pool.get('ir.module.module')
ids = modules.search(cr, uid, [('category_id', '=', 'Account Charts')], context=context)
@@ -60,7 +54,6 @@ class account_installer(osv.osv_memory):
'date_start': fields.date('Start Date', required=True),
'date_stop': fields.date('End Date', required=True),
'period': fields.selection([('month', 'Monthly'), ('3months','3 Monthly')], 'Periods', required=True),
'bank_accounts_id': fields.one2many('account.bank.accounts.wizard', 'bank_account_id', 'Your Bank and Cash Accounts'),
'sale_tax': fields.float('Sale Tax(%)'),
'purchase_tax': fields.float('Purchase Tax(%)'),
'company_id': fields.many2one('res.company', 'Company', required=True),
@@ -92,7 +85,6 @@ class account_installer(osv.osv_memory):
'sale_tax': 0.0,
'purchase_tax': 0.0,
'company_id': _default_company,
'bank_accounts_id': _get_default_accounts,
'charts': _get_default_charts
}
@@ -125,458 +117,18 @@ class account_installer(osv.osv_memory):
return {'value': {'date_stop': end_date.strftime('%Y-%m-%d')}}
return {}
def generate_configurable_chart(self, cr, uid, ids, context=None):
obj_acc = self.pool.get('account.account')
obj_acc_tax = self.pool.get('account.tax')
obj_journal = self.pool.get('account.journal')
obj_acc_tax_code = self.pool.get('account.tax.code')
obj_acc_template = self.pool.get('account.account.template')
obj_acc_tax_template = self.pool.get('account.tax.code.template')
obj_fiscal_position_template = self.pool.get('account.fiscal.position.template')
obj_fiscal_position = self.pool.get('account.fiscal.position')
analytic_journal_obj = self.pool.get('account.analytic.journal')
obj_acc_chart_template = self.pool.get('account.chart.template')
obj_acc_journal_view = self.pool.get('account.journal.view')
mod_obj = self.pool.get('ir.model.data')
obj_sequence = self.pool.get('ir.sequence')
property_obj = self.pool.get('ir.property')
fields_obj = self.pool.get('ir.model.fields')
obj_tax_fp = self.pool.get('account.fiscal.position.tax')
obj_ac_fp = self.pool.get('account.fiscal.position.account')
result = mod_obj.get_object_reference(cr, uid, 'account', 'configurable_chart_template')
id = result and result[1] or False
obj_multi = obj_acc_chart_template.browse(cr, uid, id, context=context)
record = self.browse(cr, uid, ids, context=context)[0]
if context is None:
context = {}
company_id = self.browse(cr, uid, ids, context=context)[0].company_id
seq_journal = True
# Creating Account
obj_acc_root = obj_multi.account_root_id
tax_code_root_id = obj_multi.tax_code_root_id.id
#new code
acc_template_ref = {}
tax_template_ref = {}
tax_code_template_ref = {}
todo_dict = {}
#create all the tax code
children_tax_code_template = obj_acc_tax_template.search(cr, uid, [('parent_id', 'child_of', [tax_code_root_id])], order='id')
children_tax_code_template.sort()
for tax_code_template in obj_acc_tax_template.browse(cr, uid, children_tax_code_template, context=context):
vals = {
'name': (tax_code_root_id == tax_code_template.id) and company_id.name or tax_code_template.name,
'code': tax_code_template.code,
'info': tax_code_template.info,
'parent_id': tax_code_template.parent_id and ((tax_code_template.parent_id.id in tax_code_template_ref) and tax_code_template_ref[tax_code_template.parent_id.id]) or False,
'company_id': company_id.id,
'sign': tax_code_template.sign,
}
new_tax_code = obj_acc_tax_code.create(cr, uid, vals, context=context)
#recording the new tax code to do the mapping
tax_code_template_ref[tax_code_template.id] = new_tax_code
#create all the tax
for tax in obj_multi.tax_template_ids:
#create it
vals_tax = {
'name': tax.name,
'sequence': tax.sequence,
'amount': tax.amount,
'type': tax.type,
'applicable_type': tax.applicable_type,
'domain': tax.domain,
'parent_id': tax.parent_id and ((tax.parent_id.id in tax_template_ref) and tax_template_ref[tax.parent_id.id]) or False,
'child_depend': tax.child_depend,
'python_compute': tax.python_compute,
'python_compute_inv': tax.python_compute_inv,
'python_applicable': tax.python_applicable,
'base_code_id': tax.base_code_id and ((tax.base_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.base_code_id.id]) or False,
'tax_code_id': tax.tax_code_id and ((tax.tax_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.tax_code_id.id]) or False,
'base_sign': tax.base_sign,
'tax_sign': tax.tax_sign,
'ref_base_code_id': tax.ref_base_code_id and ((tax.ref_base_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.ref_base_code_id.id]) or False,
'ref_tax_code_id': tax.ref_tax_code_id and ((tax.ref_tax_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.ref_tax_code_id.id]) or False,
'ref_base_sign': tax.ref_base_sign,
'ref_tax_sign': tax.ref_tax_sign,
'include_base_amount': tax.include_base_amount,
'description': tax.description,
'company_id': company_id.id,
'type_tax_use': tax.type_tax_use,
'price_include': tax.price_include
}
new_tax = obj_acc_tax.create(cr, uid, vals_tax, context=context)
#as the accounts have not been created yet, we have to wait before filling these fields
todo_dict[new_tax] = {
'account_collected_id': tax.account_collected_id and tax.account_collected_id.id or False,
'account_paid_id': tax.account_paid_id and tax.account_paid_id.id or False,
}
tax_template_ref[tax.id] = new_tax
#deactivate the parent_store functionnality on account_account for rapidity purpose
ctx = context and context.copy() or {}
ctx['defer_parent_store_computation'] = True
children_acc_template = obj_acc_template.search(cr, uid, [('parent_id', 'child_of', [obj_acc_root.id]), ('nocreate', '!=', True)], context=context)
children_acc_template.sort()
for account_template in obj_acc_template.browse(cr, uid, children_acc_template, context=context):
tax_ids = []
for tax in account_template.tax_ids:
tax_ids.append(tax_template_ref[tax.id])
#create the account_account
dig = 6
code_main = account_template.code and len(account_template.code) or 0
code_acc = account_template.code or ''
if code_main > 0 and code_main <= dig and account_template.type != 'view':
code_acc = str(code_acc) + (str('0'*(dig-code_main)))
vals = {
'name': (obj_acc_root.id == account_template.id) and company_id.name or account_template.name,
#'sign': account_template.sign,
'currency_id': account_template.currency_id and account_template.currency_id.id or False,
'code': code_acc,
'type': account_template.type,
'user_type': account_template.user_type and account_template.user_type.id or False,
'reconcile': account_template.reconcile,
'shortcut': account_template.shortcut,
'note': account_template.note,
'parent_id': account_template.parent_id and ((account_template.parent_id.id in acc_template_ref) and acc_template_ref[account_template.parent_id.id]) or False,
'tax_ids': [(6, 0, tax_ids)],
'company_id': company_id.id,
}
new_account = obj_acc.create(cr, uid, vals, context=ctx)
acc_template_ref[account_template.id] = new_account
if account_template.name == 'Bank Current Account':
b_vals = {
'name': 'Bank Accounts',
'code': '110500',
'type': 'view',
'user_type': account_template.parent_id.user_type and account_template.user_type.id or False,
'shortcut': account_template.shortcut,
'note': account_template.note,
'parent_id': account_template.parent_id and ((account_template.parent_id.id in acc_template_ref) and acc_template_ref[account_template.parent_id.id]) or False,
'tax_ids': [(6,0,tax_ids)],
'company_id': company_id.id,
}
bank_account = obj_acc.create(cr, uid, b_vals, context=ctx)
view_id_cash = obj_acc_journal_view.search(cr, uid, [('name', '=', 'Bank/Cash Journal View')], context=context)[0] #why fixed name here?
view_id_cur = obj_acc_journal_view.search(cr, uid, [('name', '=', 'Bank/Cash Journal (Multi-Currency) View')], context=context)[0] #Why Fixed name here?
cash_result = mod_obj.get_object_reference(cr, uid, 'account', 'conf_account_type_cash')
cash_type_id = cash_result and cash_result[1] or False
bank_result = mod_obj.get_object_reference(cr, uid, 'account', 'conf_account_type_bnk')
bank_type_id = bank_result and bank_result[1] or False
check_result = mod_obj.get_object_reference(cr, uid, 'account', 'conf_account_type_chk')
check_type_id = check_result and check_result[1] or False
# record = self.browse(cr, uid, ids, context=context)[0]
code_cnt = 1
vals_seq = {
'name': _('Bank Journal '),
'code': 'account.journal',
'prefix': 'BNK/%(year)s/',
'company_id': company_id.id,
'padding': 5
}
seq_id = obj_sequence.create(cr, uid, vals_seq, context=context)
#create the bank journals
analitical_bank_ids = analytic_journal_obj.search(cr, uid, [('type', '=', 'situation')], context=context)
analitical_journal_bank = analitical_bank_ids and analitical_bank_ids[0] or False
vals_journal = {
'name': _('Bank Journal '),
'code': _('BNK'),
'sequence_id': seq_id,
'type': 'bank',
'company_id': company_id.id,
'analytic_journal_id': analitical_journal_bank
}
if vals.get('currency_id', False):
vals_journal.update({
'view_id': view_id_cur,
'currency': vals.get('currency_id', False)
})
else:
vals_journal.update({'view_id': view_id_cash})
vals_journal.update({
'default_credit_account_id': new_account,
'default_debit_account_id': new_account,
})
obj_journal.create(cr, uid, vals_journal, context=context)
for val in record.bank_accounts_id:
seq_padding = 5
if val.account_type == 'cash':
type = cash_type_id
elif val.account_type == 'bank':
type = bank_type_id
elif val.account_type == 'check':
type = check_type_id
else:
type = check_type_id
seq_padding = None
vals_bnk = {
'name': val.acc_name or '',
'currency_id': val.currency_id.id or False,
'code': str(110500 + code_cnt),
'type': 'liquidity',
'user_type': type,
'parent_id': bank_account,
'company_id': company_id.id
}
child_bnk_acc = obj_acc.create(cr, uid, vals_bnk, context=ctx)
vals_seq_child = {
'name': _(vals_bnk['name'] + ' ' + 'Journal'),
'code': 'account.journal',
'prefix': _((vals_bnk['name'][:3].upper()) + '/%(year)s/'),
'padding': seq_padding
}
seq_id = obj_sequence.create(cr, uid, vals_seq_child, context=context)
#create the bank journal
vals_journal = {}
vals_journal = {
'name': vals_bnk['name'] + _(' Journal'),
'code': _(vals_bnk['name'][:3]).upper(),
'sequence_id': seq_id,
'type': 'cash',
'company_id': company_id.id
}
if vals.get('currency_id', False):
vals_journal.update({
'view_id': view_id_cur,
'currency': vals_bnk.get('currency_id', False),
})
else:
vals_journal.update({'view_id': view_id_cash})
vals_journal.update({
'default_credit_account_id': child_bnk_acc,
'default_debit_account_id': child_bnk_acc,
'analytic_journal_id': analitical_journal_bank
})
obj_journal.create(cr, uid, vals_journal, context=context)
code_cnt += 1
#reactivate the parent_store functionality on account_account
obj_acc._parent_store_compute(cr)
for key, value in todo_dict.items():
if value['account_collected_id'] or value['account_paid_id']:
obj_acc_tax.write(cr, uid, [key], {
'account_collected_id': acc_template_ref[value['account_collected_id']],
'account_paid_id': acc_template_ref[value['account_paid_id']],
})
# Creating Journals Sales and Purchase
vals_journal = {}
data_id = mod_obj.search(cr, uid, [('model', '=', 'account.journal.view'), ('name', '=', 'account_sp_journal_view')], context=context)
data = mod_obj.browse(cr, uid, data_id[0], context=context)
view_id = data.res_id
seq_id = obj_sequence.search(cr,uid,[('name', '=', 'Account Journal')], context=context)[0]
if seq_journal:
seq_sale = {
'name': 'Sale Journal',
'code': 'account.journal',
'prefix': 'SAJ/%(year)s/',
'padding': 3,
'company_id': company_id.id
}
seq_id_sale = obj_sequence.create(cr, uid, seq_sale, context=context)
seq_purchase = {
'name': 'Purchase Journal',
'code': 'account.journal',
'prefix': 'EXJ/%(year)s/',
'padding': 3,
'company_id': company_id.id
}
seq_id_purchase = obj_sequence.create(cr, uid, seq_purchase, context=context)
seq_refund_sale = {
'name': 'Sales Refund Journal',
'code': 'account.journal',
'prefix': 'SCNJ/%(year)s/',
'padding': 3,
'company_id': company_id.id
}
seq_id_sale_refund = obj_sequence.create(cr, uid, seq_refund_sale, context=context)
seq_refund_purchase = {
'name': 'Purchase Refund Journal',
'code': 'account.journal',
'prefix': 'ECNJ/%(year)s/',
'padding': 3,
'company_id': company_id.id
}
seq_id_purchase_refund = obj_sequence.create(cr, uid, seq_refund_purchase, context=context)
else:
seq_id_sale = seq_id
seq_id_purchase = seq_id
seq_id_sale_refund = seq_id
seq_id_purchase_refund = seq_id
vals_journal['view_id'] = view_id
#Sales Journal
analitical_sale_ids = analytic_journal_obj.search(cr, uid, [('type','=','sale')], context=context)
analitical_journal_sale = analitical_sale_ids and analitical_sale_ids[0] or False
vals_journal.update({
'name': _('Sales Journal'),
'type': 'sale',
'code': _('SAJ'),
'sequence_id': seq_id_sale,
'analytic_journal_id': analitical_journal_sale,
'company_id': company_id.id
})
if obj_multi.property_account_receivable:
vals_journal.update({
'default_credit_account_id': acc_template_ref[obj_multi.property_account_income_categ.id],
'default_debit_account_id': acc_template_ref[obj_multi.property_account_income_categ.id],
})
obj_journal.create(cr, uid, vals_journal, context=context)
# Purchase Journal
analitical_purchase_ids = analytic_journal_obj.search(cr, uid, [('type', '=', 'purchase')], context=context)
analitical_journal_purchase = analitical_purchase_ids and analitical_purchase_ids[0] or False
vals_journal.update({
'name': _('Purchase Journal'),
'type': 'purchase',
'code': _('EXJ'),
'sequence_id': seq_id_purchase,
'analytic_journal_id': analitical_journal_purchase,
'company_id': company_id.id
})
if obj_multi.property_account_payable:
vals_journal.update({
'default_credit_account_id': acc_template_ref[obj_multi.property_account_expense_categ.id],
'default_debit_account_id': acc_template_ref[obj_multi.property_account_expense_categ.id]
})
obj_journal.create(cr, uid, vals_journal, context=context)
# Creating Journals Sales Refund and Purchase Refund
vals_journal = {}
data_id = mod_obj.search(cr, uid, [('model', '=', 'account.journal.view'), ('name', '=', 'account_sp_refund_journal_view')], context=context)
data = mod_obj.browse(cr, uid, data_id[0], context=context)
view_id = data.res_id
#Sales Refund Journal
vals_journal = {
'view_id': view_id,
'name': _('Sales Refund Journal'),
'type': 'sale_refund',
'refund_journal': True,
'code': _('SCNJ'),
'sequence_id': seq_id_sale_refund,
'analytic_journal_id': analitical_journal_sale,
'company_id': company_id.id
}
if obj_multi.property_account_receivable:
vals_journal.update({
'default_credit_account_id': acc_template_ref[obj_multi.property_account_income_categ.id],
'default_debit_account_id': acc_template_ref[obj_multi.property_account_income_categ.id]
})
obj_journal.create(cr, uid, vals_journal, context=context)
# Purchase Refund Journal
vals_journal = {
'view_id': view_id,
'name': _('Purchase Refund Journal'),
'type': 'purchase_refund',
'refund_journal': True,
'code': _('ECNJ'),
'sequence_id': seq_id_purchase_refund,
'analytic_journal_id': analitical_journal_purchase,
'company_id': company_id.id
}
if obj_multi.property_account_payable:
vals_journal.update({
'default_credit_account_id': acc_template_ref[obj_multi.property_account_expense_categ.id],
'default_debit_account_id': acc_template_ref[obj_multi.property_account_expense_categ.id]
})
obj_journal.create(cr, uid, vals_journal, context=context)
# Bank Journals
view_id_cash = obj_acc_journal_view.search(cr, uid, [('name', '=', 'Bank/Cash Journal View')], context=context)[0] #TOFIX: Why put fixed name ?
view_id_cur = obj_acc_journal_view.search(cr, uid, [('name', '=', 'Bank/Cash Journal (Multi-Currency) View')], context=context)[0] #TOFIX: why put fixed name?
#create the properties
todo_list = [
('property_account_receivable', 'res.partner', 'account.account'),
('property_account_payable', 'res.partner', 'account.account'),
('property_account_expense_categ', 'product.category', 'account.account'),
('property_account_income_categ', 'product.category', 'account.account'),
('property_account_expense', 'product.template', 'account.account'),
('property_account_income', 'product.template', 'account.account'),
('property_reserve_and_surplus_account', 'res.company', 'account.account'),
]
for record in todo_list:
r = []
r = property_obj.search(cr, uid, [('name', '=', record[0]), ('company_id', '=', company_id.id)], context=context)
account = getattr(obj_multi, record[0])
field = fields_obj.search(cr, uid, [('name', '=', record[0]), ('model', '=', record[1]), ('relation', '=', record[2])], context=context)
vals = {
'name': record[0],
'company_id': company_id.id,
'fields_id': field[0],
'value': account and 'account.account, '+str(acc_template_ref[account.id]) or False,
}
if r:
#the property exist: modify it
property_obj.write(cr, uid, r, vals, context=context)
else:
#create the property
property_obj.create(cr, uid, vals, context=context)
fp_ids = obj_fiscal_position_template.search(cr, uid, [('chart_template_id', '=', obj_multi.id)], context=context)
if fp_ids:
for position in obj_fiscal_position_template.browse(cr, uid, fp_ids, context=context):
vals_fp = {
'company_id': company_id.id,
'name': position.name,
}
new_fp = obj_fiscal_position.create(cr, uid, vals_fp, context=context)
for tax in position.tax_ids:
vals_tax = {
'tax_src_id': tax_template_ref[tax.tax_src_id.id],
'tax_dest_id': tax.tax_dest_id and tax_template_ref[tax.tax_dest_id.id] or False,
'position_id': new_fp,
}
obj_tax_fp.create(cr, uid, vals_tax, context=context)
for acc in position.account_ids:
vals_acc = {
'account_src_id': acc_template_ref[acc.account_src_id.id],
'account_dest_id': acc_template_ref[acc.account_dest_id.id],
'position_id': new_fp,
}
obj_ac_fp.create(cr, uid, vals_acc, context=context)
def execute(self, cr, uid, ids, context=None):
if context is None:
context = {}
super(account_installer, self).execute(cr, uid, ids, context=context)
fy_obj = self.pool.get('account.fiscalyear')
mod_obj = self.pool.get('ir.model.data')
obj_acc = self.pool.get('account.account')
obj_tax_code = self.pool.get('account.tax.code')
obj_temp_tax_code = self.pool.get('account.tax.code.template')
obj_tax = self.pool.get('account.tax')
obj_acc_temp = self.pool.get('account.account.template')
obj_tax_code_temp = self.pool.get('account.tax.code.template')
obj_tax_temp = self.pool.get('account.tax.template')
obj_product = self.pool.get('product.product')
ir_values = self.pool.get('ir.values')
obj_acc_chart_temp = self.pool.get('account.chart.template')
record = self.browse(cr, uid, ids, context=context)[0]
company_id = record.company_id
for res in self.read(cr, uid, ids, context=context):
@@ -584,128 +136,81 @@ class account_installer(osv.osv_memory):
fp = tools.file_open(opj('account', 'configurable_account_chart.xml'))
tools.convert_xml_import(cr, 'account', fp, {}, 'init', True, None)
fp.close()
self.generate_configurable_chart(cr, uid, ids, context=context)
s_tax = (res.get('sale_tax', 0.0))/100
p_tax = (res.get('purchase_tax', 0.0))/100
tax_val = {}
default_tax = []
pur_temp_tax = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_base_purchases')
pur_temp_tax_id = pur_temp_tax and pur_temp_tax[1] or False
pur_temp_tax_names = obj_temp_tax_code.read(cr, uid, [pur_temp_tax_id], ['name'], context=context)
pur_tax_parent_name = pur_temp_tax_names and pur_temp_tax_names[0]['name'] or False
pur_taxcode_parent_id = obj_tax_code.search(cr, uid, [('name', 'ilike', pur_tax_parent_name)], context=context)
if pur_taxcode_parent_id:
pur_taxcode_parent_id = pur_taxcode_parent_id[0]
else:
pur_taxcode_parent_id = False
pur_temp_tax_paid = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_input')
pur_temp_tax_paid = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_output')
pur_temp_tax_paid_id = pur_temp_tax_paid and pur_temp_tax_paid[1] or False
pur_temp_tax_paid_names = obj_temp_tax_code.read(cr, uid, [pur_temp_tax_paid_id], ['name'], context=context)
pur_tax_paid_parent_name = pur_temp_tax_names and pur_temp_tax_paid_names[0]['name'] or False
pur_taxcode_paid_parent_id = obj_tax_code.search(cr, uid, [('name', 'ilike', pur_tax_paid_parent_name)], context=context)
if pur_taxcode_paid_parent_id:
pur_taxcode_paid_parent_id = pur_taxcode_paid_parent_id[0]
else:
pur_taxcode_paid_parent_id = False
sale_temp_tax = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_base_sales')
sale_temp_tax_id = sale_temp_tax and sale_temp_tax[1] or False
sale_temp_tax_names = obj_temp_tax_code.read(cr, uid, [sale_temp_tax_id], ['name'], context=context)
sale_tax_parent_name = sale_temp_tax_names and sale_temp_tax_names[0]['name'] or False
sale_taxcode_parent_id = obj_tax_code.search(cr, uid, [('name', 'ilike', sale_tax_parent_name)], context=context)
if sale_taxcode_parent_id:
sale_taxcode_parent_id = sale_taxcode_parent_id[0]
else:
sale_taxcode_parent_id = False
sale_temp_tax_paid = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_output')
sale_temp_tax_paid = mod_obj.get_object_reference(cr, uid, 'account', 'tax_code_input')
sale_temp_tax_paid_id = sale_temp_tax_paid and sale_temp_tax_paid[1] or False
sale_temp_tax_paid_names = obj_temp_tax_code.read(cr, uid, [sale_temp_tax_paid_id], ['name'], context=context)
sale_tax_paid_parent_name = sale_temp_tax_paid_names and sale_temp_tax_paid_names[0]['name'] or False
sale_taxcode_paid_parent_id = obj_tax_code.search(cr, uid, [('name', 'ilike', sale_tax_paid_parent_name)], context=context)
if sale_taxcode_paid_parent_id:
sale_taxcode_paid_parent_id = sale_taxcode_paid_parent_id[0]
else:
sale_taxcode_paid_parent_id = False
if s_tax*100 > 0.0:
tax_account_ids = obj_acc.search(cr, uid, [('name', '=', 'Tax Received')], context=context)
chart_temp_ids = obj_acc_chart_temp.search(cr, uid, [('name','=','Configurable Account Chart Template')], context=context)
chart_temp_id = chart_temp_ids and chart_temp_ids[0] or False
if s_tax * 100 > 0.0:
tax_account_ids = obj_acc_temp.search(cr, uid, [('name', '=', 'Tax Received')], context=context)
sales_tax_account_id = tax_account_ids and tax_account_ids[0] or False
vals_tax_code = {
'name': 'TAX%s%%'%(s_tax*100),
'code': 'TAX%s%%'%(s_tax*100),
'company_id': company_id.id,
'sign': 1,
'parent_id': sale_taxcode_parent_id
vals_tax_code_temp = {
'name': _('TAX %s%%') % (s_tax*100),
'code': _('TAX %s%%') % (s_tax*100),
'parent_id': sale_temp_tax_id
}
new_tax_code = obj_tax_code.create(cr, uid, vals_tax_code, context=context)
vals_paid_tax_code = {
'name': 'TAX Received %s%%'%(s_tax*100),
'code': 'TAX Received %s%%'%(s_tax*100),
'company_id': company_id.id,
'sign': 1,
'parent_id': sale_taxcode_paid_parent_id
}
new_paid_tax_code = obj_tax_code.create(cr, uid, vals_paid_tax_code, context=context)
sales_tax = obj_tax.create(cr, uid,
{'name': 'TAX %s%%'%(s_tax*100),
new_tax_code_temp = obj_tax_code_temp.create(cr, uid, vals_tax_code_temp, context=context)
vals_paid_tax_code_temp = {
'name': _('TAX Received %s%%') % (s_tax*100),
'code': _('TAX Received %s%%') % (s_tax*100),
'parent_id': sale_temp_tax_paid_id
}
new_paid_tax_code_temp = obj_tax_code_temp.create(cr, uid, vals_paid_tax_code_temp, context=context)
sales_tax_temp = obj_tax_temp.create(cr, uid, {
'name': _('TAX %s%%') % (s_tax*100),
'amount': s_tax,
'base_code_id': new_tax_code,
'tax_code_id': new_paid_tax_code,
'base_code_id': new_tax_code_temp,
'tax_code_id': new_paid_tax_code_temp,
'ref_base_code_id': new_tax_code_temp,
'ref_tax_code_id': new_paid_tax_code_temp,
'type_tax_use': 'sale',
'type': 'percent',
'sequence': 0,
'account_collected_id': sales_tax_account_id,
'account_paid_id': sales_tax_account_id
}, context=context)
default_account_ids = obj_acc.search(cr, uid, [('name', '=', 'Product Sales')], context=context)
if default_account_ids:
obj_acc.write(cr, uid, default_account_ids, {'tax_ids': [(6, 0, [sales_tax])]}, context=context)
tax_val.update({'taxes_id': [(6, 0, [sales_tax])]})
default_tax.append(('taxes_id', sales_tax))
if p_tax*100 > 0.0:
tax_account_ids = obj_acc.search(cr, uid, [('name', '=', 'Tax Paid')], context=context)
'account_paid_id': sales_tax_account_id,
'chart_template_id': chart_temp_id,
}, context=context)
if p_tax * 100 > 0.0:
tax_account_ids = obj_acc_temp.search(cr, uid, [('name', '=', 'Tax Paid')], context=context)
purchase_tax_account_id = tax_account_ids and tax_account_ids[0] or False
vals_tax_code = {
'name': 'TAX%s%%'%(p_tax*100),
'code': 'TAX%s%%'%(p_tax*100),
'company_id': company_id.id,
'sign': 1,
'parent_id': pur_taxcode_parent_id
vals_tax_code_temp = {
'name': _('TAX %s%%') % (p_tax*100),
'code': _('TAX %s%%') % (p_tax*100),
'parent_id': pur_temp_tax_id
}
new_tax_code = obj_tax_code.create(cr, uid, vals_tax_code, context=context)
vals_paid_tax_code = {
'name': 'TAX Paid %s%%'%(p_tax*100),
'code': 'TAX Paid %s%%'%(p_tax*100),
'company_id': company_id.id,
'sign': 1,
'parent_id': pur_taxcode_paid_parent_id
new_tax_code_temp = obj_tax_code_temp.create(cr, uid, vals_tax_code_temp, context=context)
vals_paid_tax_code_temp = {
'name': _('TAX Paid %s%%') % (p_tax*100),
'code': _('TAX Paid %s%%') % (p_tax*100),
'parent_id': pur_temp_tax_paid_id
}
new_paid_tax_code = obj_tax_code.create(cr, uid, vals_paid_tax_code, context=context)
purchase_tax = obj_tax.create(cr, uid,
{'name': 'TAX%s%%'%(p_tax*100),
'description': 'TAX%s%%'%(p_tax*100),
new_paid_tax_code_temp = obj_tax_code_temp.create(cr, uid, vals_paid_tax_code_temp, context=context)
purchase_tax_temp = obj_tax_temp.create(cr, uid, {
'name': _('TAX %s%%') % (p_tax*100),
'description': _('TAX %s%%') % (p_tax*100),
'amount': p_tax,
'base_code_id': new_tax_code,
'tax_code_id': new_paid_tax_code,
'type_tax_use': 'purchase',
'account_collected_id': purchase_tax_account_id,
'account_paid_id': purchase_tax_account_id
}, context=context)
default_account_ids = obj_acc.search(cr, uid, [('name', '=', 'Expenses')], context=context)
if default_account_ids:
obj_acc.write(cr, uid, default_account_ids, {'tax_ids': [(6, 0, [purchase_tax])]}, context=context)
tax_val.update({'supplier_taxes_id': [(6 ,0, [purchase_tax])]})
default_tax.append(('supplier_taxes_id', purchase_tax))
if tax_val:
product_ids = obj_product.search(cr, uid, [], context=context)
for product in obj_product.browse(cr, uid, product_ids, context=context):
obj_product.write(cr, uid, product.id, tax_val, context=context)
for name, value in default_tax:
ir_values.set(cr, uid, key='default', key2=False, name=name, models =[('product.product', False)], value=[value])
'base_code_id': new_tax_code_temp,
'tax_code_id': new_paid_tax_code_temp,
'ref_base_code_id': new_tax_code_temp,
'ref_tax_code_id': new_paid_tax_code_temp,
'type_tax_use': 'purchase',
'type': 'percent',
'sequence': 0,
'account_collected_id': purchase_tax_account_id,
'account_paid_id': purchase_tax_account_id,
'chart_template_id': chart_temp_id,
}, context=context)
if 'date_start' in res and 'date_stop' in res:
f_ids = fy_obj.search(cr, uid, [('date_start', '<=', res['date_start']), ('date_stop', '>=', res['date_stop']), ('company_id', '=', res['company_id'])], context=context)
@@ -727,7 +232,6 @@ class account_installer(osv.osv_memory):
elif res['period'] == '3months':
fy_obj.create_period3(cr, uid, [fiscal_id])
def modules_to_install(self, cr, uid, ids, context=None):
modules = super(account_installer, self).modules_to_install(
cr, uid, ids, context=context)
@@ -740,18 +244,6 @@ class account_installer(osv.osv_memory):
account_installer()
class account_bank_accounts_wizard(osv.osv_memory):
_name='account.bank.accounts.wizard'
_columns = {
'acc_name': fields.char('Account Name.', size=64, required=True),
'bank_account_id': fields.many2one('account.installer', 'Bank Account', required=True),
'currency_id': fields.many2one('res.currency', 'Secondary Currency', help="Forces all moves for this account to have this secondary currency."),
'account_type': fields.selection([('cash','Cash'), ('check','Check'), ('bank','Bank')], 'Account Type', size=32),
}
account_bank_accounts_wizard()
class account_installer_modules(osv.osv_memory):
_name = 'account.installer.modules'
_inherit = 'res.config.installer'
+5 -5
View File
@@ -51,11 +51,9 @@ class account_invoice(osv.osv):
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
company_id = context.get('company_id', user.company_id.id)
type2journal = {'out_invoice': 'sale', 'in_invoice': 'purchase', 'out_refund': 'sale_refund', 'in_refund': 'purchase_refund'}
refund_journal = {'out_invoice': False, 'in_invoice': False, 'out_refund': True, 'in_refund': True}
journal_obj = self.pool.get('account.journal')
res = journal_obj.search(cr, uid, [('type', '=', type2journal.get(type_inv, 'sale')),
('company_id', '=', company_id),
('refund_journal', '=', refund_journal.get(type_inv, False))],
('company_id', '=', company_id)],
limit=1)
return res and res[0] or False
@@ -657,7 +655,9 @@ class account_invoice(osv.osv):
def _convert_ref(self, cr, uid, ref):
return (ref or '').replace('/','')
def _get_analytic_lines(self, cr, uid, id):
def _get_analytic_lines(self, cr, uid, id, context=None):
if context is None:
context = {}
inv = self.browse(cr, uid, id)
cur_obj = self.pool.get('res.currency')
@@ -667,7 +667,7 @@ class account_invoice(osv.osv):
else:
sign = -1
iml = self.pool.get('account.invoice.line').move_line_get(cr, uid, inv.id)
iml = self.pool.get('account.invoice.line').move_line_get(cr, uid, inv.id, context=context)
for il in iml:
if il['account_analytic_id']:
if inv.type in ('in_invoice', 'in_refund'):
+2 -2
View File
@@ -76,13 +76,13 @@
<page string="Accounting">
<group col="2" colspan="2">
<separator string="Customer Accounting Properties" colspan="2"/>
<field name="property_account_receivable" groups="base.group_extended" />
<field name="property_account_receivable" groups="account.group_account_invoice" />
<field name="property_account_position" widget="selection"/>
<field name="property_payment_term" widget="selection"/>
</group>
<group col="2" colspan="2">
<separator string="Supplier Accounting Properties" colspan="2"/>
<field name="property_account_payable" groups="base.group_extended"/>
<field name="property_account_payable" groups="account.group_account_invoice"/>
</group>
<group col="2" colspan="2">
<separator string="Customer Credit" colspan="2"/>
@@ -8,89 +8,106 @@
<record id="analytic_absences" model="account.analytic.account">
<field name="name">Leaves</field>
<field name="code">1</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_root"/>
</record>
<record id="analytic_internal" model="account.analytic.account">
<field name="name">Internal</field>
<field name="code">2</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_root"/>
</record>
<record id="analytic_our_super_product" model="account.analytic.account">
<field name="name">Our Super Product</field>
<field name="code">100</field>
<field name="state">open</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_root"/>
</record>
<record id="analytic_project_1" model="account.analytic.account">
<field name="name">Project 1</field>
<field name="code">101</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_root"/>
</record>
<record id="analytic_project_2" model="account.analytic.account">
<field name="name">Project 2</field>
<field name="code">102</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_root"/>
</record>
<record id="analytic_journal_trainings" model="account.analytic.account">
<field name="name">Training</field>
<field name="code">4</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_internal"/>
</record>
<record id="analytic_in_house" model="account.analytic.account">
<field name="name">In House</field>
<field name="code">1</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_journal_trainings"/>
</record>
<record id="analytic_online" model="account.analytic.account">
<field name="name">Online</field>
<field name="code">2</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_journal_trainings"/>
</record>
<record id="analytic_support" model="account.analytic.account">
<field name="name">Support</field>
<field name="code">support</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_our_super_product"/>
</record>
<record id="analytic_partners" model="account.analytic.account">
<field name="name">Partners</field>
<field name="code">partners</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_support"/>
</record>
<record id="analytic_customers" model="account.analytic.account">
<field name="name">Customers</field>
<field name="code">customers</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_support"/>
</record>
<record id="analytic_support_internal" model="account.analytic.account">
<field name="name">Internal</field>
<field name="code">3</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_support"/>
</record>
<record id="analytic_integration" model="account.analytic.account">
<field name="name">Integration</field>
<field name="code">integration</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_our_super_product"/>
</record>
<record id="analytic_consultancy" model="account.analytic.account">
<field name="name">Consultancy</field>
<field name="code">4</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_our_super_product"/>
</record>
<record id="analytic_super_product_trainings" model="account.analytic.account">
<field name="name">Training</field>
<field name="code">5</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_our_super_product"/>
</record>
<record id="analytic_seagate_p1" model="account.analytic.account">
<field name="name">Seagate P1</field>
<field name="code">1</field>
<field name="parent_id" ref="analytic_integration"/>
<field name="type">normal</field>
<field name="state">open</field>
<field name="partner_id" ref="base.res_partner_seagate"/>
</record>
<record id="analytic_seagate_p2" model="account.analytic.account">
<field name="name">Seagate P2</field>
<field name="code">2</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_integration"/>
<field name="state">open</field>
<field name="partner_id" ref="base.res_partner_seagate"/>
@@ -99,11 +116,13 @@
<field name="name">Magasin BML 1</field>
<field name="code">3</field>
<field name="parent_id" ref="analytic_integration"/>
<field name="type">normal</field>
<field name="partner_id" ref="base.res_partner_15"/>
</record>
<record id="analytic_integration_c2c" model="account.analytic.account">
<field name="name">CampToCamp</field>
<field name="code">7</field>
<field name="type">normal</field>
<field eval="str(time.localtime()[0] - 1) + '-08-07'" name="date_start"/>
<field eval="time.strftime('%Y-12-31')" name="date"/>
<field name="parent_id" ref="analytic_integration"/>
@@ -114,18 +133,21 @@
<field name="name">Agrolait</field>
<field name="code">3</field>
<field name="parent_id" ref="analytic_customers"/>
<field name="type">normal</field>
<field name="partner_id" ref="base.res_partner_agrolait"/>
</record>
<record id="analytic_asustek" model="account.analytic.account">
<field name="name">Asustek</field>
<field name="code">4</field>
<field name="parent_id" ref="analytic_customers"/>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_customers"/>
<field name="partner_id" ref="base.res_partner_asus"/>
</record>
<record id="analytic_distripc" model="account.analytic.account">
<field name="name">DistriPC</field>
<field name="code">7</field>
<field name="parent_id" ref="analytic_customers"/>
<field name="type">normal</field>
<field name="partner_id" ref="base.res_partner_4"/>
</record>
<record id="analytic_sednacom" model="account.analytic.account">
@@ -134,6 +156,7 @@
<field eval="str(time.localtime()[0] - 1) + '-05-09'" name="date_start"/>
<field eval="time.strftime('%Y-05-08')" name="date"/>
<field name="parent_id" ref="analytic_partners"/>
<field name="type">normal</field>
<field name="partner_id" ref="base.res_partner_sednacom"/>
<field name="state">open</field>
</record>
@@ -142,6 +165,7 @@
<field name="code">3</field>
<field eval="time.strftime('%Y-02-01')" name="date_start"/>
<field eval="time.strftime('%Y-07-01')" name="date"/>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_partners"/>
<field name="partner_id" ref="base.res_partner_thymbra"/>
<field name="state">open</field>
@@ -151,6 +175,7 @@
<field name="code">10</field>
<field eval="time.strftime('%Y-04-24')" name="date_start"/>
<field eval="str(time.localtime()[0] + 1) + '-04-24'" name="date"/>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_partners"/>
<field name="partner_id" ref="base.res_partner_11"/>
</record>
@@ -159,12 +184,14 @@
<field name="code">12</field>
<field eval="time.strftime('%Y-02-01')" name="date_start"/>
<field eval="str(time.localtime()[0] + 1) + '-02-01'" name="date"/>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_partners"/>
<field name="partner_id" ref="base.res_partner_desertic_hispafuentes"/>
</record>
<record id="analytic_tiny_at_work" model="account.analytic.account">
<field name="name">OpenERP SA AT Work</field>
<field name="code">15</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_partners"/>
<field name="partner_id" ref="base.res_partner_tinyatwork"/>
</record>
@@ -173,6 +200,7 @@
<field name="code">21</field>
<field eval="time.strftime('%Y-%m-%d', time.localtime(time.time() - 365 * 86400))" name="date_start"/>
<field eval="time.strftime('%Y-%m-%d')" name="date"/>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_partners"/>
<field name="partner_id" ref="base.res_partner_c2c"/>
<field name="state">open</field>
@@ -180,56 +208,67 @@
<record id="analytic_project_2_support" model="account.analytic.account">
<field name="name">Support</field>
<field name="code">1</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_project_2"/>
</record>
<record id="analytic_project_2_development" model="account.analytic.account">
<field name="name">Development</field>
<field name="code">2</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_project_2"/>
</record>
<record id="analytic_project_1_trainings" model="account.analytic.account">
<field name="name">Training</field>
<field name="code">1</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_project_1"/>
</record>
<record id="analytic_project_1_development" model="account.analytic.account">
<field name="name">Development</field>
<field name="code">2</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_project_1"/>
</record>
<record id="analytic_administratif" model="account.analytic.account">
<field name="name">Administrative</field>
<field name="code">1</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_internal"/>
</record>
<record id="analytic_commercial_marketing" model="account.analytic.account">
<field name="name">Commercial &amp; Marketing</field>
<field name="code">2</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_internal"/>
</record>
<record id="analytic_our_super_product_development" model="account.analytic.account">
<field name="name">Our Super Product Development</field>
<field name="code">3</field>
<field name="type">view</field>
<field name="parent_id" ref="analytic_internal"/>
</record>
<record id="analytic_stable" model="account.analytic.account">
<field name="name">Stable</field>
<field name="code">1</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_our_super_product_development"/>
</record>
<record id="analytic_trunk" model="account.analytic.account">
<field name="name">Trunk</field>
<field name="code">2</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_our_super_product_development"/>
</record>
<record id="analytic_paid" model="account.analytic.account">
<field name="name">Paid</field>
<field name="code">1</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_absences"/>
</record>
<record id="analytic_unpaid" model="account.analytic.account">
<field name="name">Unpaid</field>
<field name="code">2</field>
<field name="type">normal</field>
<field name="parent_id" ref="analytic_absences"/>
</record>
</data>
+4 -3
View File
@@ -55,19 +55,20 @@
<field name="type">tree</field>
<field name="field_parent">child_complete_ids</field>
<field name="arch" type="xml">
<tree colors="red:(date&lt;current_date);black:(date&gt;=current_date);black:(date==False)" string="Analytic account" toolbar="1">
<field name="name"/>
<tree colors="blue:type in ('view');red:(date&lt;current_date);black:(date&gt;=current_date);black:(date==False)" string="Analytic account" toolbar="1">
<field name="name"/>
<field name="code"/>
<field name="quantity"/>
<field name="quantity_max"/>
<field name="debit"/>
<field name="credit"/>
<field name="balance"/>
<field name="currency_id" groups="base.group_extended"/>
<field name="currency_id" groups="base.group_extended"/>
<field name="date" invisible="1"/>
<field name="user_id" invisible="1"/>
<field name="partner_id" invisible="1"/>
<field name="parent_id" invisible="1"/>
<field name="type" invisible="1"/>
</tree>
</field>
</record>
@@ -100,7 +100,8 @@ class report_balancesheet_horizontal(report_sxw.rml_parse, common_report_header)
ctx['fiscalyear'] = data['form'].get('fiscalyear_id', False)
if data['form']['filter'] == 'filter_period':
ctx['periods'] = data['form'].get('periods', False)
ctx['period_from'] = data['form'].get('period_from', False)
ctx['period_to'] = data['form'].get('period_to', False)
elif data['form']['filter'] == 'filter_date':
ctx['date_from'] = data['form'].get('date_from', False)
ctx['date_to'] = data['form'].get('date_to', False)
+2 -1
View File
@@ -93,7 +93,8 @@ class report_pl_account_horizontal(report_sxw.rml_parse, common_report_header):
ctx['fiscalyear'] = data['form'].get('fiscalyear_id', False)
if data['form']['filter'] == 'filter_period':
ctx['periods'] = data['form'].get('periods', False)
ctx['period_from'] = data['form'].get('period_from', False)
ctx['period_to'] = data['form'].get('period_to', False)
elif data['form']['filter'] == 'filter_date':
ctx['date_from'] = data['form'].get('date_from', False)
ctx['date_to'] = data['form'].get('date_to', False)
@@ -13,7 +13,7 @@
<field name="fy_id" domain = "[('state','=','draft')]"/>
<field name="fy2_id" domain = "[('state','=','draft')]"/>
<field name="journal_id"/>
<field name="period_id" domain ="[('fiscalyear_id','=',fy2_id)]" />
<field name="period_id" domain ="[('fiscalyear_id','=',fy2_id),('special','=', True)]" />
<field name="report_name" colspan="4"/>
<separator colspan="4"/>
<group colspan="4" col="6">
@@ -390,7 +390,7 @@ class account_analytic_account(osv.osv):
'hours_quantity': fields.function(_analysis_all, method=True, multi='analytic_analysis', type='float', string='Hours Tot',
help="Number of hours you spent on the analytic account (from timesheet). It computes on all journal of type 'general'."),
'last_invoice_date': fields.function(_analysis_all, method=True, multi='analytic_analysis', type='date', string='Last Invoice Date',
help="Date of the last invoice created for this analytic account."),
help="If invoice from the costs, this is the date of the latest invoiced."),
'last_worked_invoiced_date': fields.function(_analysis_all, method=True, multi='analytic_analysis', type='date', string='Date of Last Invoiced Cost',
help="If invoice from the costs, this is the date of the latest work or cost that have been invoiced."),
'last_worked_date': fields.function(_analysis_all, method=True, multi='analytic_analysis', type='date', string='Date of Last Cost/Work',
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_analytic_default
+568
View File
@@ -0,0 +1,568 @@
# Spanish (Paraguay) translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-03 16:56+0000\n"
"PO-Revision-Date: 2011-03-03 11:09+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Spanish (Paraguay) <es_PY@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_analytic_plans
#: view:analytic.plan.create.model:0
msgid ""
"This distribution model has been saved.You will be able to reuse it later."
msgstr ""
"Este modelo de distribución ha sido guardado. Lo podrá reutilizar más tarde."
#. module: account_analytic_plans
#: field:account.analytic.plan.instance.line,plan_id:0
msgid "Plan Id"
msgstr ""
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "From Date"
msgstr "Desde la fecha"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
#: view:account.crossovered.analytic:0
#: model:ir.actions.act_window,name:account_analytic_plans.action_account_crossovered_analytic
#: model:ir.actions.report.xml,name:account_analytic_plans.account_analytic_account_crossovered_analytic
msgid "Crossovered Analytic"
msgstr "Analítica cruzada"
#. module: account_analytic_plans
#: view:account.analytic.plan:0
#: field:account.analytic.plan,name:0
#: field:account.analytic.plan.line,plan_id:0
#: model:ir.actions.act_window,name:account_analytic_plans.account_analytic_plan_form_action
#: model:ir.model,name:account_analytic_plans.model_account_analytic_plan
#: model:ir.ui.menu,name:account_analytic_plans.menu_account_analytic_plan_action
msgid "Analytic Plan"
msgstr "Plan analítico"
#. module: account_analytic_plans
#: model:ir.module.module,shortdesc:account_analytic_plans.module_meta_information
msgid "Multiple-plans management in Analytic Accounting"
msgstr "Gestión de múltiples planes en contabilidad analítica"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,journal_id:0
#: view:account.crossovered.analytic:0
#: field:account.crossovered.analytic,journal_ids:0
msgid "Analytic Journal"
msgstr "Diario analítico"
#. module: account_analytic_plans
#: view:account.analytic.plan.line:0
#: model:ir.model,name:account_analytic_plans.model_account_analytic_plan_line
msgid "Analytic Plan Line"
msgstr "Línea de plan analítico"
#. module: account_analytic_plans
#: code:addons/account_analytic_plans/wizard/account_crossovered_analytic.py:60
#, python-format
msgid "User Error"
msgstr "Error de usuario"
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_account_analytic_plan_instance
msgid "Analytic Plan Instance"
msgstr "Instancia de plan analítico"
#. module: account_analytic_plans
#: view:analytic.plan.create.model:0
msgid "Ok"
msgstr "Aceptar"
#. module: account_analytic_plans
#: constraint:account.move.line:0
msgid "You can not create move line on closed account."
msgstr "No puede crear una línea de movimiento en una cuenta cerrada."
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,plan_id:0
msgid "Model's Plan"
msgstr "Plan del modelo"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,account2_ids:0
msgid "Account2 Id"
msgstr ""
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,account_ids:0
msgid "Account Id"
msgstr ""
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Amount"
msgstr "Importe"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Code"
msgstr "Código"
#. module: account_analytic_plans
#: sql_constraint:account.move.line:0
msgid "Wrong credit or debit value in accounting entry !"
msgstr "¡Valor haber o debe erróneo en el asiento contable!"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,account6_ids:0
msgid "Account6 Id"
msgstr "Id cuenta6"
#. module: account_analytic_plans
#: model:ir.ui.menu,name:account_analytic_plans.menu_account_analytic_multi_plan_action
msgid "Multi Plans"
msgstr "Multi planes"
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_account_bank_statement_line
msgid "Bank Statement Line"
msgstr "Línea extracto bancario"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance.line,analytic_account_id:0
msgid "Analytic Account"
msgstr "Cuenta Analítica"
#. module: account_analytic_plans
#: sql_constraint:account.journal:0
msgid "The code of the journal must be unique per company !"
msgstr "¡El código del diario debe ser único por compañía!"
#. module: account_analytic_plans
#: field:account.crossovered.analytic,ref:0
msgid "Analytic Account Reference"
msgstr "Referencia cuenta analítica"
#. module: account_analytic_plans
#: constraint:account.move.line:0
msgid ""
"You can not create move line on receivable/payable account without partner"
msgstr ""
"No puede crear un movimiento en una cuenta por cobrar/por pagar sin una "
"empresa."
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_sale_order_line
msgid "Sales Order Line"
msgstr "Línea pedido de venta"
#. module: account_analytic_plans
#: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:47
#: view:analytic.plan.create.model:0
#, python-format
msgid "Distribution Model Saved"
msgstr "Modelo de distribución guardado"
#. module: account_analytic_plans
#: model:ir.actions.act_window,name:account_analytic_plans.account_analytic_plan_instance_action
msgid "Analytic Distribution's Models"
msgstr "Modelos de distribución analítica"
#. module: account_analytic_plans
#: view:account.crossovered.analytic:0
msgid "Print"
msgstr "Imprimir"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Percentage"
msgstr "Porcentaje"
#. module: account_analytic_plans
#: code:addons/account_analytic_plans/account_analytic_plans.py:201
#, python-format
msgid "A model having this name and code already exists !"
msgstr "¡Ya existe un modelo con este nombre y código!"
#. module: account_analytic_plans
#: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:41
#, python-format
msgid "No analytic plan defined !"
msgstr "¡No se ha definido un plan analítico!"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance.line,rate:0
msgid "Rate (%)"
msgstr "Tasa (%)"
#. module: account_analytic_plans
#: view:account.analytic.plan:0
#: field:account.analytic.plan,plan_ids:0
#: field:account.journal,plan_id:0
msgid "Analytic Plans"
msgstr "Planes analíticos"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Perc(%)"
msgstr "Porc(%)"
#. module: account_analytic_plans
#: field:account.analytic.plan.line,max_required:0
msgid "Maximum Allowed (%)"
msgstr "Máximo permitido (%)"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Printing date"
msgstr "Fecha de impresión"
#. module: account_analytic_plans
#: view:account.analytic.plan.line:0
msgid "Analytic Plan Lines"
msgstr "Líneas de plan analítico"
#. module: account_analytic_plans
#: constraint:account.bank.statement.line:0
msgid ""
"The amount of the voucher must be the same amount as the one on the "
"statement line"
msgstr ""
"El importe del recibo debe ser el mismo importe que el de la línea del "
"extracto"
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_account_invoice_line
msgid "Invoice Line"
msgstr "Línea factura"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Currency"
msgstr "Moneda"
#. module: account_analytic_plans
#: field:account.crossovered.analytic,date1:0
msgid "Start Date"
msgstr "Fecha inicial"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Company"
msgstr "Compañía"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,account5_ids:0
msgid "Account5 Id"
msgstr ""
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_account_analytic_plan_instance_line
msgid "Analytic Instance Line"
msgstr "Línea de instancia analítica"
#. module: account_analytic_plans
#: field:account.analytic.plan.line,root_analytic_id:0
msgid "Root Account"
msgstr "Cuenta principal"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "To Date"
msgstr "Hasta la Fecha"
#. module: account_analytic_plans
#: code:addons/account_analytic_plans/account_analytic_plans.py:321
#: code:addons/account_analytic_plans/account_analytic_plans.py:462
#, python-format
msgid "You have to define an analytic journal on the '%s' journal!"
msgstr "¡Debe definir un diario analítico en el diario '%s'!"
#. module: account_analytic_plans
#: field:account.crossovered.analytic,empty_line:0
msgid "Dont show empty lines"
msgstr "No mostrar líneas vacías"
#. module: account_analytic_plans
#: model:ir.actions.act_window,name:account_analytic_plans.action_analytic_plan_create_model
msgid "analytic.plan.create.model.action"
msgstr "analitica.plan.crear.modelo.accion"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Analytic Account :"
msgstr "Cuenta analítica:"
#. module: account_analytic_plans
#: model:ir.module.module,description:account_analytic_plans.module_meta_information
msgid ""
"This module allows to use several analytic plans, according to the general "
"journal,\n"
"so that multiple analytic lines are created when the invoice or the entries\n"
"are confirmed.\n"
"\n"
"For example, you can define the following analytic structure:\n"
" Projects\n"
" Project 1\n"
" SubProj 1.1\n"
" SubProj 1.2\n"
" Project 2\n"
" Salesman\n"
" Eric\n"
" Fabien\n"
"\n"
"Here, we have two plans: Projects and Salesman. An invoice line must\n"
"be able to write analytic entries in the 2 plans: SubProj 1.1 and\n"
"Fabien. The amount can also be split. The following example is for\n"
"an invoice that touches the two subproject and assigned to one salesman:\n"
"\n"
"Plan1:\n"
" SubProject 1.1 : 50%\n"
" SubProject 1.2 : 50%\n"
"Plan2:\n"
" Eric: 100%\n"
"\n"
"So when this line of invoice will be confirmed, it will generate 3 analytic "
"lines,\n"
"for one account entry.\n"
"The analytic plan validates the minimum and maximum percentage at the time "
"of creation\n"
"of distribution models.\n"
" "
msgstr ""
"Este módulo permite utilizar varios planes analíticos, de acuerdo con el "
"diario general,\n"
"para crear múltiples líneas analíticas cuando la factura o los asientos\n"
"sean confirmados.\n"
"\n"
"Por ejemplo, puede definir la siguiente estructura de analítica:\n"
" Proyectos\n"
" Proyecto 1\n"
" Subproyecto 1,1\n"
" Subproyecto 1,2\n"
" Proyecto 2\n"
" Comerciales\n"
" Eduardo\n"
" Marta\n"
"\n"
"Aquí, tenemos dos planes: Proyectos y Comerciales. Una línea de factura "
"debe\n"
"ser capaz de escribir las entradas analíticas en los 2 planes: Subproyecto "
"1.1 y\n"
"Eduardo. La cantidad también se puede dividir. El siguiente ejemplo es para\n"
"una factura que implica a los dos subproyectos y asignada a un comercial:\n"
"\n"
"Plan1:\n"
" Subproyecto 1.1: 50%\n"
" Subproyecto 1.2: 50%\n"
"Plan2:\n"
" Eduardo: 100%\n"
"\n"
"Así, cuando esta línea de la factura sea confirmada, generará 3 líneas "
"analíticas para un asiento contable.\n"
"El plan analítico valida el porcentaje mínimo y máximo en el momento de "
"creación de los modelos de distribución.\n"
" "
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Analytic Account Reference:"
msgstr "Referencia cuenta analítica:"
#. module: account_analytic_plans
#: field:account.analytic.plan.line,name:0
msgid "Plan Name"
msgstr "Nombre de plan"
#. module: account_analytic_plans
#: field:account.analytic.plan,default_instance_id:0
msgid "Default Entries"
msgstr "Asientos por defecto"
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_account_move_line
msgid "Journal Items"
msgstr "Registros del diario"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,account1_ids:0
msgid "Account1 Id"
msgstr ""
#. module: account_analytic_plans
#: constraint:account.move.line:0
msgid "Company must be same for its related account and period."
msgstr "La compañía debe ser la misma para la cuenta y periodo relacionados."
#. module: account_analytic_plans
#: field:account.analytic.plan.line,min_required:0
msgid "Minimum Allowed (%)"
msgstr "Mínimo permitido (%)"
#. module: account_analytic_plans
#: help:account.analytic.plan.line,root_analytic_id:0
msgid "Root account of this plan."
msgstr "Cuenta principal de este plan."
#. module: account_analytic_plans
#: code:addons/account_analytic_plans/account_analytic_plans.py:201
#: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:38
#: code:addons/account_analytic_plans/wizard/analytic_plan_create_model.py:41
#, python-format
msgid "Error"
msgstr "Error!"
#. module: account_analytic_plans
#: view:analytic.plan.create.model:0
msgid "Save This Distribution as a Model"
msgstr "Guardar esta distribución como un modelo"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Quantity"
msgstr "Cantidad"
#. 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 "¡Introduzca un nombre y un código antes de guardar el modelo!"
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_account_crossovered_analytic
msgid "Print Crossovered Analytic"
msgstr "Imprimir analítica cruzada"
#. module: account_analytic_plans
#: code:addons/account_analytic_plans/account_analytic_plans.py:321
#: code:addons/account_analytic_plans/account_analytic_plans.py:462
#, python-format
msgid "No Analytic Journal !"
msgstr "¡Sin diario analítico!"
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_account_bank_statement
msgid "Bank Statement"
msgstr "Extracto bancario"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,account3_ids:0
msgid "Account3 Id"
msgstr ""
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_account_invoice
msgid "Invoice"
msgstr "Factura"
#. module: account_analytic_plans
#: view:account.crossovered.analytic:0
#: view:analytic.plan.create.model:0
msgid "Cancel"
msgstr "Cancelar"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,account4_ids:0
msgid "Account4 Id"
msgstr "Id cuenta4"
#. module: account_analytic_plans
#: view:account.analytic.plan.instance.line:0
msgid "Analytic Distribution Lines"
msgstr "Líneas de distribución analítica"
#. module: account_analytic_plans
#: code:addons/account_analytic_plans/account_analytic_plans.py:214
#, python-format
msgid "The Total Should be Between %s and %s"
msgstr "El total debería estar entre %s y %s"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "at"
msgstr "a las"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "Account Name"
msgstr "Nombre de cuenta"
#. module: account_analytic_plans
#: view:account.analytic.plan.instance.line:0
msgid "Analytic Distribution Line"
msgstr "Línea de distribución analítica"
#. module: account_analytic_plans
#: field:account.analytic.plan.instance,code:0
msgid "Distribution Code"
msgstr "Código de distribución"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "%"
msgstr "%"
#. module: account_analytic_plans
#: report:account.analytic.account.crossovered.analytic:0
msgid "100.00%"
msgstr "100.00%"
#. module: account_analytic_plans
#: field:account.analytic.default,analytics_id:0
#: view:account.analytic.plan.instance:0
#: field:account.analytic.plan.instance,name:0
#: field:account.bank.statement.line,analytics_id:0
#: field:account.invoice.line,analytics_id:0
#: field:account.move.line,analytics_id:0
#: model:ir.model,name:account_analytic_plans.model_account_analytic_default
msgid "Analytic Distribution"
msgstr "Distribución Analítica"
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_account_journal
msgid "Journal"
msgstr "Diario"
#. module: account_analytic_plans
#: model:ir.model,name:account_analytic_plans.model_analytic_plan_create_model
msgid "analytic.plan.create.model"
msgstr ""
#. module: account_analytic_plans
#: field:account.crossovered.analytic,date2:0
msgid "End Date"
msgstr "Fecha final"
#. module: account_analytic_plans
#: model:ir.actions.act_window,name:account_analytic_plans.account_analytic_instance_model_open
msgid "Distribution Models"
msgstr "Modelos distribución"
#. module: account_analytic_plans
#: field:account.analytic.plan.line,sequence:0
msgid "Sequence"
msgstr "Secuencia"
#. module: account_analytic_plans
#: sql_constraint:account.journal:0
msgid "The name of the journal must be unique per company !"
msgstr "¡El nombre del diario debe ser único por compañía!"
#. module: account_analytic_plans
#: code:addons/account_analytic_plans/account_analytic_plans.py:214
#, python-format
msgid "Value Error"
msgstr "Valor erróneo"
#. module: account_analytic_plans
#: constraint:account.move.line:0
msgid "You can not create move line on view account."
msgstr "No puede crear un movimiento en una cuenta de tipo vista."
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_anglo_saxon
+2 -2
View File
@@ -15,11 +15,11 @@
# 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/>.
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
from osv import fields,osv
from osv import osv
#----------------------------------------------------------
# Stock Picking
+2 -2
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_budget
@@ -76,7 +76,7 @@ msgstr "Fin del período"
#: view:crossovered.budget:0
#: selection:crossovered.budget,state:0
msgid "Draft"
msgstr ""
msgstr "Borrador"
#. module: account_budget
#: report:account.budget:0
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_cancel
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_chart
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_coda
+806
View File
@@ -0,0 +1,806 @@
# Spanish (Paraguay) translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-03-03 10:16+0000\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: Spanish (Paraguay) <es_PY@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-04 04:44+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:295
#, python-format
msgid "Follwoup Summary"
msgstr "Informe de seguimiento"
#. module: account_followup
#: view:account_followup.followup:0
msgid "Search Followup"
msgstr "Buscar seguimiento"
#. module: account_followup
#: model:ir.module.module,description:account_followup.module_meta_information
msgid ""
"\n"
" Modules to automate letters for unpaid invoices, with multi-level "
"recalls.\n"
"\n"
" You can define your multiple levels of recall through the menu:\n"
" Accounting/Configuration/Miscellaneous/Follow-Ups\n"
"\n"
" Once it is defined, you can automatically print recalls every day\n"
" through simply clicking on the menu:\n"
" Accounting/Periodical Processing/Billing/Send followups\n"
"\n"
" It will generate a PDF with all the letters according to the the\n"
" different levels of recall defined. You can define different policies\n"
" for different companies. You can also send mail to the customer.\n"
"\n"
" Note that if you want to change the followup level for a given "
"partner/account entry, you can do from in the menu:\n"
" Accounting/Reporting/Generic Reporting/Partner Accounts/Follow-ups "
"Sent\n"
"\n"
msgstr ""
"\n"
" Módulos para automatizar cartas para facturas no pagadas, con "
"recordatorios multi-nivel.\n"
"\n"
" Puede definir sus múltiples niveles de recordatorios a través del menú:\n"
" Contabilidad/Configuración/Misceláneos/Recordatorios\n"
"\n"
" Una vez definido, puede automatizar la impresión de recordatorios cada "
"día\n"
" simplemente haciendo clic en el menú:\n"
" Contabilidad/Procesos periódicos/Facturación/Enviar recordatorios\n"
"\n"
" Se generará un PDF con todas las cartas en función de \n"
" los diferentes niveles de recordatorios definidos. Puede definir "
"diferentes reglas\n"
" para diferentes empresas. Puede también enviar un correo electrónico al "
"cliente.\n"
"\n"
" Tenga en cuenta que si quiere modificar los niveles de recordatorios "
"para una empresa/apunte contable, lo puede hacer desde el menú:\n"
" Contabilidad/Informes/Informes genéricos/Cuentas "
"empresas/Recordatorios enviados\n"
"\n"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Group By..."
msgstr "Agrupar por..."
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:287
#, python-format
msgid ""
"\n"
"\n"
"E-Mail sent to following Partners successfully. !\n"
"\n"
msgstr ""
"\n"
"\n"
"Correo enviado a las siguientes empresas correctamente.\n"
"\n"
#. module: account_followup
#: view:account_followup.followup:0
#: field:account_followup.followup,followup_line:0
msgid "Follow-Up"
msgstr "Seguimiento"
#. module: account_followup
#: field:account_followup.followup,company_id:0
#: view:account_followup.stat:0
#: field:account_followup.stat,company_id:0
#: field:account_followup.stat.by.partner,company_id:0
msgid "Company"
msgstr "Compañía"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Invoice Date"
msgstr "Fecha de Factura"
#. module: account_followup
#: field:account.followup.print.all,email_subject:0
msgid "Email Subject"
msgstr "Asunto correo electrónico"
#. module: account_followup
#: model:ir.actions.act_window,help:account_followup.action_followup_stat
msgid ""
"Follow up on the reminders sent over to your partners for unpaid invoices."
msgstr ""
"Seguimiento de los recordatorios enviados a sus clientes por facturas no "
"pagadas."
#. module: account_followup
#: view:account.followup.print.all:0
#: view:account_followup.followup.line:0
msgid "Legend"
msgstr "Leyenda"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Ok"
msgstr "Aceptar"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Select Partners to Remind"
msgstr "Seleccionar empresas a recordar"
#. module: account_followup
#: constraint:account.move.line:0
msgid "You can not create move line on closed account."
msgstr "No puede crear una línea de movimiento en una cuenta cerrada."
#. module: account_followup
#: field:account.followup.print,date:0
msgid "Follow-up Sending Date"
msgstr "Fecha envío del seguimiento"
#. module: account_followup
#: sql_constraint:account.move.line:0
msgid "Wrong credit or debit value in accounting entry !"
msgstr "¡Valor haber o debe erróneo en el asiento contable!"
#. module: account_followup
#: selection:account_followup.followup.line,start:0
msgid "Net Days"
msgstr ""
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.action_account_followup_definition_form
#: model:ir.ui.menu,name:account_followup.account_followup_menu
msgid "Follow-Ups"
msgstr "Seguimientos"
#. module: account_followup
#: view:account_followup.stat.by.partner:0
msgid "Balance > 0"
msgstr "Balance > 0"
#. module: account_followup
#: view:account.move.line:0
msgid "Total debit"
msgstr "Total Debito"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(heading)s: Move line header"
msgstr ""
#. module: account_followup
#: view:res.company:0
#: field:res.company,follow_up_msg:0
msgid "Follow-up Message"
msgstr "Mensaje de seguimiento"
#. module: account_followup
#: field:account.followup.print,followup_id:0
msgid "Follow-up"
msgstr "Seguimiento"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "VAT:"
msgstr "IVA:"
#. module: account_followup
#: view:account_followup.stat:0
#: field:account_followup.stat,partner_id:0
#: field:account_followup.stat.by.partner,partner_id:0
msgid "Partner"
msgstr "Empresa"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Date :"
msgstr "Fecha :"
#. module: account_followup
#: field:account.followup.print.all,partner_ids:0
msgid "Partners"
msgstr "Empresas"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:138
#, python-format
msgid "Invoices Reminder"
msgstr "Recordatorio facturas"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup
msgid "Account Follow Up"
msgstr "Seguimiento contable"
#. module: account_followup
#: selection:account_followup.followup.line,start:0
msgid "End of Month"
msgstr "Fin de mes"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Not Litigation"
msgstr "No litigio"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(user_signature)s: User name"
msgstr "%(user_signature)s: Nombre de usuario"
#. module: account_followup
#: field:account_followup.stat,debit:0
msgid "Debit"
msgstr "Débito"
#. module: account_followup
#: view:account.followup.print:0
msgid ""
"This feature allows you to send reminders to partners with pending invoices. "
"You can send them the default message for unpaid invoices or manually enter "
"a message should you need to remind them of a specific information."
msgstr ""
"Esta funcionalidad le permite enviar recordatorios a las empresas con "
"facturas pendientes. Puede enviarles el mensaje por defecto para facturas no "
"pagadas o introducir manualmente un mensaje si necesita recordarles alguna "
"información específica."
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Ref"
msgstr "Ref"
#. module: account_followup
#: help:account_followup.followup.line,sequence:0
msgid "Gives the sequence order when displaying a list of follow-up lines."
msgstr ""
"Indica el orden de secuencia cuando se muestra una lista de líneas de "
"seguimiento."
#. module: account_followup
#: view:account.followup.print.all:0
#: field:account.followup.print.all,email_body:0
msgid "Email body"
msgstr "Texto correo electrónico"
#. module: account_followup
#: field:account.move.line,followup_line_id:0
msgid "Follow-up Level"
msgstr "Nivel seguimiento"
#. module: account_followup
#: field:account_followup.stat,date_followup:0
#: field:account_followup.stat.by.partner,date_followup:0
msgid "Latest followup"
msgstr "Último seguimiento"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line2
msgid ""
"\n"
"Dear %(partner_name)s,\n"
"\n"
"We are disappointed to see that despite sending a reminder, that your "
"account is now seriously overdue.\n"
"\n"
"It is essential that immediate payment is made, otherwise we will have to "
"consider placing a stop on your account which means that we will no longer "
"be able to supply your company with (goods/services).\n"
"Please, take appropriate measures in order to carry out this payment in the "
"next 8 days\n"
"\n"
"If there is a problem with paying invoice that we are not aware of, do not "
"hesitate to contact our accounting department at (+32).10.68.94.39. so that "
"we can resolve the matter quickly.\n"
"\n"
"Details of due payments is printed below.\n"
"\n"
"Best Regards,\n"
msgstr ""
"\n"
"Estimado %(partner_name)s,\n"
"\n"
"Estamos preocupados de ver que, a pesar de enviar un recordatorio, los pagos "
"de su cuenta están ahora muy atrasados.\n"
"\n"
"Es esencial que realice el pago de forma inmediata, de lo contrario tendrá "
"que considerar la suspensión de su cuenta, lo que significa que no seremos "
"capaces de suministrar productos/servicios a su empresa.\n"
"Por favor, tome las medidas oportunas para llevar a cabo este pago en los "
"próximos 8 días.\n"
"\n"
"Si hay un problema con el pago de la(s) factura(s) que desconocemos, no dude "
"en ponerse en contacto con nuestro departamento de contabilidad de manera "
"que podamos resolver el asunto lo más rápido posible.\n"
"\n"
"Los detalles de los pagos pendientes se listan a continuación.\n"
"\n"
"Saludos cordiales,\n"
#. module: account_followup
#: field:account.followup.print.all,partner_lang:0
msgid "Send Email in Partner Language"
msgstr "Enviar correo en el idioma de la empresa"
#. module: account_followup
#: constraint:account.move.line:0
msgid ""
"You can not create move line on receivable/payable account without partner"
msgstr ""
"No puede crear un movimiento en una cuenta a cobrar/a pagar sin una empresa."
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Partner Selection"
msgstr "Selección empresa"
#. module: account_followup
#: field:account_followup.followup.line,description:0
msgid "Printed Message"
msgstr "Mensaje impreso"
#. module: account_followup
#: view:account.followup.print:0
#: view:account.followup.print.all:0
#: model:ir.actions.act_window,name:account_followup.action_account_followup_print
#: model:ir.actions.act_window,name:account_followup.action_account_followup_print_all
#: model:ir.ui.menu,name:account_followup.account_followup_print_menu
msgid "Send followups"
msgstr "Enviar seguimientos"
#. module: account_followup
#: view:account_followup.stat.by.partner:0
msgid "Partner to Remind"
msgstr "Empresa a recordar"
#. module: account_followup
#: field:account_followup.followup.line,followup_id:0
#: field:account_followup.stat,followup_id:0
msgid "Follow Ups"
msgstr "Seguimientos"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line1
msgid ""
"\n"
"Dear %(partner_name)s,\n"
"\n"
"Exception made if there was a mistake of ours, it seems that the following "
"amount staid unpaid. Please, take appropriate measures in order to carry out "
"this payment in the next 8 days.\n"
"\n"
"Would your payment have been carried out after this mail was sent, please "
"consider the present one as void. Do not hesitate to contact our accounting "
"department at (+32).10.68.94.39.\n"
"\n"
"Best Regards,\n"
msgstr ""
"\n"
"Estimado %(partner_name)s,\n"
"\n"
"Salvo si hubiera un error por parte nuestra, parece que los siguientes "
"importes están pendientes de pago. Por favor, tome las medidas oportunas "
"para llevar a cabo este pago en los próximos 8 días.\n"
"\n"
"Si el pago hubiera sido realizado después de enviar este correo, por favor "
"no lo tenga en cuenta. No dude en ponerse en contacto con nuestro "
"departamento de contabilidad.\n"
"\n"
"Saludos cordiales,\n"
#. module: account_followup
#: model:account_followup.followup.line,description:account_followup.demo_followup_line3
msgid ""
"\n"
"Dear %(partner_name)s,\n"
"\n"
"Despite several reminders, your account is still not settled.\n"
"\n"
"Unless full payment is made in next 8 days , then legal action for the "
"recovery of the debt, will be taken without further notice.\n"
"\n"
"I trust that this action will prove unnecessary and details of due payments "
"is printed below.\n"
"\n"
"In case of any queries concerning this matter, do not hesitate to contact "
"our accounting department at (+32).10.68.94.39.\n"
"\n"
"Best Regards,\n"
msgstr ""
"\n"
"Estimado %(partner_name)s,\n"
"\n"
"A pesar de varios recordatorios, la deuda de su cuenta todavía no está "
"resuelta.\n"
"\n"
"A menos que el pago total se realice en los próximos 8 días, las acciones "
"legales para el cobro de la deuda se tomarán sin más aviso.\n"
"\n"
"Confiamos en que esta medida será innecesaria. Los detalles de los pagos "
"pendientes se listan a continuación.\n"
"\n"
"Para cualquier consulta relativa a este asunto, no dude en ponerse en "
"contacto con nuestro departamento de contabilidad.\n"
"\n"
"Saludos cordiales,\n"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Send Mails"
msgstr "Enviar emails"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Currency"
msgstr "Moneda"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat_by_partner
msgid "Followup Statistics by Partner"
msgstr "Estadísticas seguimiento por empresa"
#. module: account_followup
#: model:ir.module.module,shortdesc:account_followup.module_meta_information
msgid "Accounting follow-ups management"
msgstr "Gestión de los seguimientos/avisos contables"
#. module: account_followup
#: field:account_followup.stat,blocked:0
msgid "Blocked"
msgstr "Bloqueado"
#. module: account_followup
#: help:account.followup.print,date:0
msgid ""
"This field allow you to select a forecast date to plan your follow-ups"
msgstr ""
"Este campo le permite seleccionar una fecha de previsión para planificar sus "
"seguimientos"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Due"
msgstr "Debe"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:56
#, python-format
msgid "Select Partners"
msgstr "Seleccionar empresas"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Email Settings"
msgstr "Configuración de correo electrónico"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "Print Follow Ups"
msgstr "Imprimir seguimientos"
#. module: account_followup
#: field:account.move.line,followup_date:0
msgid "Latest Follow-up"
msgstr "Último seguimiento"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Sub-Total:"
msgstr "Sub-Total:"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Balance:"
msgstr ""
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_stat
msgid "Followup Statistics"
msgstr "Estadísticas de seguimiento"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Paid"
msgstr "Pagado"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(user_signature)s: User Name"
msgstr "%(user_signature)s: Nombre del usuario"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_move_line
msgid "Journal Items"
msgstr "Registros del diario"
#. module: account_followup
#: constraint:account.move.line:0
msgid "Company must be same for its related account and period."
msgstr "La compañía debe ser la misma para la cuenta y periodo relacionados."
#. module: account_followup
#: field:account.followup.print.all,email_conf:0
msgid "Send email confirmation"
msgstr "Enviar correo electrónico de confirmación"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:284
#, python-format
msgid ""
"All E-mails have been successfully sent to Partners:.\n"
"\n"
msgstr ""
"Todos los correos han sido enviados a las empresas correctamente:.\n"
"\n"
#. module: account_followup
#: constraint:res.company:0
msgid "Error! You can not create recursive companies."
msgstr "¡Error! No se pueden crear compañías recursivas."
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(company_name)s: User's Company name"
msgstr "%(company_name): Nombre de la compañía del usuario"
#. module: account_followup
#: model:ir.model,name:account_followup.model_res_company
msgid "Companies"
msgstr "Compañías"
#. module: account_followup
#: view:account_followup.followup:0
msgid "Followup Lines"
msgstr "Líneas de seguimiento"
#. module: account_followup
#: field:account_followup.stat,credit:0
msgid "Credit"
msgstr "Crédito"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Maturity Date"
msgstr "Fecha vencimiento"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(partner_name)s: Partner Name"
msgstr "%(partner_name)s: Nombre de empresa"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Follow-Up lines"
msgstr "Líneas de seguimiento"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(company_currency)s: User's Company Currency"
msgstr "%(company_currency)s: Moneda de la compañía del usuario"
#. module: account_followup
#: view:account_followup.stat:0
#: field:account_followup.stat,balance:0
#: field:account_followup.stat.by.partner,balance:0
msgid "Balance"
msgstr "Saldo pendiente"
#. module: account_followup
#: field:account_followup.followup.line,start:0
msgid "Type of Term"
msgstr "Tipo de plazo"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_print
#: model:ir.model,name:account_followup.model_account_followup_print_all
msgid "Print Followup & Send Mail to Customers"
msgstr "Imprimir seguimiento y enviar correo a clientes"
#. module: account_followup
#: field:account_followup.stat,date_move_last:0
#: field:account_followup.stat.by.partner,date_move_last:0
msgid "Last move"
msgstr "Último movimiento"
#. module: account_followup
#: model:ir.actions.report.xml,name:account_followup.account_followup_followup_report
msgid "Followup Report"
msgstr "Informe de seguimientos"
#. module: account_followup
#: field:account_followup.stat,period_id:0
msgid "Period"
msgstr "Período"
#. module: account_followup
#: view:account.followup.print:0
#: view:account.followup.print.all:0
msgid "Cancel"
msgstr "Cancelar"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "Follow-Up Lines"
msgstr "Líneas de seguimiento"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Litigation"
msgstr ""
#. module: account_followup
#: field:account_followup.stat.by.partner,max_followup_id:0
msgid "Max Follow Up Level"
msgstr "Nivel superior seguimiento máx."
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_payable_all
msgid "Payable Items"
msgstr "Registros a pagar"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(followup_amount)s: Total Amount Due"
msgstr "%(followup_amount)s: Total importe debido"
#. module: account_followup
#: view:account.followup.print.all:0
#: view:account_followup.followup.line:0
msgid "%(date)s: Current Date"
msgstr "%(date)s: Fecha actual"
#. module: account_followup
#: view:account_followup.stat:0
msgid "Followup Level"
msgstr "Nivel de seguimiento"
#. module: account_followup
#: view:account_followup.followup:0
#: field:account_followup.followup,description:0
#: report:account_followup.followup.print:0
msgid "Description"
msgstr "Descripción"
#. module: account_followup
#: view:account_followup.stat:0
msgid "This Fiscal year"
msgstr "Este ejercicio fiscal"
#. module: account_followup
#: view:account.move.line:0
msgid "Partner entries"
msgstr ""
#. module: account_followup
#: help:account.followup.print.all,partner_lang:0
msgid ""
"Do not change message text, if you want to send email in partner language, "
"or configure from company"
msgstr ""
"No cambie el texto del mensaje si quiere enviar correos en el idioma de la "
"empresa o configurarlo desde la compañía."
#. module: account_followup
#: model:ir.actions.act_window,name:account_followup.act_account_partner_account_move_all
msgid "Receivable Items"
msgstr "Registros a cobrar"
#. module: account_followup
#: view:account_followup.stat:0
#: model:ir.actions.act_window,name:account_followup.action_followup_stat
#: model:ir.ui.menu,name:account_followup.menu_action_followup_stat_follow
msgid "Follow-ups Sent"
msgstr "Seguimientos enviados"
#. module: account_followup
#: field:account_followup.followup,name:0
#: field:account_followup.followup.line,name:0
msgid "Name"
msgstr "Nombre"
#. module: account_followup
#: field:account_followup.stat,date_move:0
#: field:account_followup.stat.by.partner,date_move:0
msgid "First move"
msgstr "Primer movimiento"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Li."
msgstr "Li."
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Maturity"
msgstr "Vencimiento"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:286
#, python-format
msgid ""
"E-Mail not sent to following Partners, Email not available !\n"
"\n"
msgstr ""
"Correo no enviado a las empresas siguientes, su email no estaba disponible.\n"
"\n"
#. module: account_followup
#: view:account.followup.print:0
msgid "Continue"
msgstr "Continuar"
#. module: account_followup
#: field:account_followup.followup.line,delay:0
msgid "Days of delay"
msgstr ""
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Document : Customer account statement"
msgstr "Documento: Estado contable del cliente"
#. module: account_followup
#: view:account.followup.print.all:0
#: field:account.followup.print.all,summary:0
msgid "Summary"
msgstr "Resumen"
#. module: account_followup
#: view:account.move.line:0
msgid "Total credit"
msgstr "Total Credito"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(line)s: Ledger Posting lines"
msgstr "%(line)s: Líneas incluídas en el libro mayor"
#. module: account_followup
#: field:account_followup.followup.line,sequence:0
msgid "Sequence"
msgstr "Secuencia"
#. module: account_followup
#: view:account_followup.followup.line:0
msgid "%(company_name)s: User's Company Name"
msgstr "%(company_name)s: Nombre de la compañía del usuario"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Customer Ref :"
msgstr "Ref. cliente :"
#. module: account_followup
#: view:account.followup.print.all:0
msgid "%(partner_name)s: Partner name"
msgstr ""
#. module: account_followup
#: view:account_followup.stat:0
msgid "Latest Followup Date"
msgstr "Fecha último seguimiento"
#. module: account_followup
#: model:ir.model,name:account_followup.model_account_followup_followup_line
msgid "Follow-Up Criteria"
msgstr "Criterios seguimiento"
#. module: account_followup
#: constraint:account.move.line:0
msgid "You can not create move line on view account."
msgstr ""
+4 -4
View File
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2011-01-31 13:21+0000\n"
"PO-Revision-Date: 2011-03-03 20:14+0000\n"
"Last-Translator: NOVOTRADE RENDSZERHÁZ <openerp@novotrade.hu>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-02-01 04:40+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-03-04 04:44+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_followup
#: code:addons/account_followup/wizard/account_followup_print.py:295
@@ -573,7 +573,7 @@ msgstr "Követel"
#. module: account_followup
#: report:account_followup.followup.print:0
msgid "Maturity Date"
msgstr "Esedékesség kelte"
msgstr "Fizetési határidő"
#. module: account_followup
#: view:account_followup.followup.line:0
+2 -2
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_invoice_layout
@@ -257,7 +257,7 @@ msgstr "Descripción Impuesto"
#: report:account.invoice.layout:0
#: report:notify_account.invoice:0
msgid "Amount"
msgstr "Monto"
msgstr "Importe"
#. module: account_invoice_layout
#: model:notify.message,msg:account_invoice_layout.demo_message1
+19 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_payment
@@ -52,6 +52,11 @@ msgid ""
"* a basic mechanism to easily plug various automated payment.\n"
" "
msgstr ""
"\n"
"Este módulo proporciona:\n"
"* Una forma más eficiente para gestionar el pago de las facturas.\n"
"* Un mecanismo básico para conectar fácilmente varios pagos automatizados.\n"
" "
#. module: account_payment
#: field:payment.order,line_ids:0
@@ -72,6 +77,9 @@ msgid ""
" Once the bank is confirmed the state is set to 'Confirmed'.\n"
" Then the order is paid the state is 'Done'."
msgstr ""
"Cuando se hace una orden, el estado es 'Borrador'.\n"
" Una vez se confirma el banco, el estado es \"Confirmada\".\n"
" Cuando la orden se paga, el estado es 'Realizada'."
#. module: account_payment
#: help:account.invoice,amount_to_pay:0
@@ -254,6 +262,9 @@ msgid ""
"by you.'Directly' stands for the direct execution.'Due date' stands for the "
"scheduled date of execution."
msgstr ""
"Seleccione una opción para la orden de pago: 'Fecha fija' para una fecha "
"especificada por usted. 'Directamente' para la ejecución directa. 'Fecha "
"vencimiento' para la fecha programada de ejecución."
#. module: account_payment
#: code:addons/account_payment/account_move_line.py:110
@@ -434,6 +445,7 @@ msgstr "Total Credito"
#: help:payment.order,date_scheduled:0
msgid "Select a date if you have chosen Preferred Date to be fixed."
msgstr ""
"Seleccione una fecha si ha seleccionado que la fecha preferida sea fija."
#. module: account_payment
#: field:payment.order,user_id:0
@@ -583,6 +595,10 @@ msgid ""
"that should be done, keep track of all payment orders and mention the "
"invoice reference and the partner the payment should be done for."
msgstr ""
"Una órden de pago es una petición de pago que realiza su compañía para pagar "
"una factura de proveedor o un apunte de crédito de un cliente. Aquí puede "
"registrar todas las órdenes de pago pendientes y hacer seguimiento de las "
"órdenes e indicar la referencia de factura y la entidad a la cual pagar."
#. module: account_payment
#: help:payment.line,amount:0
@@ -659,6 +675,8 @@ msgid ""
"Used as the message between ordering customer and current company. Depicts "
"'What do you want to say to the recipient about this order ?'"
msgstr ""
"Se utiliza como mensaje entre el cliente que hace el pedido y la compañía "
"actual. Describe '¿Qué quiere decir al receptor sobre este pedido?'"
#. module: account_payment
#: field:payment.mode,name:0
+2 -2
View File
@@ -217,7 +217,7 @@
<para style="terp_default_9">
<font color="white"> </font>
</para>
<blockTable colWidths="112.0,86.0,106.0,63.0,85.0,75.0" style="Table3">
<blockTable colWidths="112.0,86.0,102.0,70.0,82.0,75.0" style="Table3">
<tr>
<td>
<para style="terp_tblheader_Details">Partner</para>
@@ -241,7 +241,7 @@
</blockTable>
<section>
<para style="terp_default_2">[[repeatIn(o.line_ids, 'line') ]]</para>
<blockTable colWidths="112.0,86.0,106.0,64.0,85.0,75.0" style="Table4">
<blockTable colWidths="112.0,86.0,102.0,70.0,82.0,75.0" style="Table4">
<tr>
<td>
<para style="terp_default_9">[[line.partner_id and line.partner_id.name or '-' ]]</para>
@@ -76,7 +76,7 @@ class account_payment_populate_statement(osv.osv_memory):
statement.currency.id, line.amount_currency, context=ctx)
context.update({'move_line_ids': [line.move_line_id.id]})
result = voucher_obj.onchange_partner_id(cr, uid, [], partner_id=line.partner_id.id, journal_id=statement.journal_id.id, price=abs(amount), currency_id= statement.currency.id, ttype='payment', context=context)
result = voucher_obj.onchange_partner_id(cr, uid, [], partner_id=line.partner_id.id, journal_id=statement.journal_id.id, price=abs(amount), currency_id= statement.currency.id, ttype='payment', date=line.ml_maturity_date, context=context)
if line.move_line_id:
voucher_res = {
+5 -3
View File
@@ -710,7 +710,7 @@ class account_voucher(osv.osv):
move_line = {
'journal_id': inv.journal_id.id,
'period_id': inv.period_id.id,
'name': line.name and line.name or '/',
'name': line.name or '/',
'account_id': line.account_id.id,
'move_id': move_id,
'partner_id': inv.partner_id.id,
@@ -752,14 +752,16 @@ class account_voucher(osv.osv):
if not currency_pool.is_zero(cr, uid, inv.currency_id, line_total):
diff = line_total
account_id = False
write_off_name = ''
if inv.payment_option == 'with_writeoff':
account_id = inv.writeoff_acc_id.id
write_off_name = inv.comment
elif inv.type in ('sale', 'receipt'):
account_id = inv.partner_id.property_account_receivable.id
else:
account_id = inv.partner_id.property_account_payable.id
move_line = {
'name': name,
'name': write_off_name or name,
'account_id': account_id,
'move_id': move_id,
'partner_id': inv.partner_id.id,
@@ -835,7 +837,7 @@ class account_voucher_line(osv.osv):
'partner_id':fields.related('voucher_id', 'partner_id', type='many2one', relation='res.partner', string='Partner'),
'untax_amount':fields.float('Untax Amount'),
'amount':fields.float('Amount', digits_compute=dp.get_precision('Account')),
'type':fields.selection([('dr','Debit'),('cr','Credit')], 'Cr/Dr'),
'type':fields.selection([('dr','Debit'),('cr','Credit')], 'Dr/Cr'),
'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic Account'),
'move_line_id': fields.many2one('account.move.line', 'Journal Item'),
'date_original': fields.related('move_line_id','date', type='date', relation='account.move.line', string='Date', readonly=1),
+15 -15
View File
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:14+0000\n"
"PO-Revision-Date: 2009-09-08 14:39+0000\n"
"Last-Translator: Ivica Perić <ivica.peric@ipsoft-tg.com>\n"
"PO-Revision-Date: 2011-03-03 13:20+0000\n"
"Last-Translator: Goran Kliska (Aplikacija d.o.o.) <gkliska@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-01-15 05:43+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: account_voucher
#: view:account.voucher.unreconcile:0
@@ -25,7 +25,7 @@ msgstr ""
#: code:addons/account_voucher/account_voucher.py:242
#, python-format
msgid "Write-Off"
msgstr ""
msgstr "Otpis"
#. module: account_voucher
#: view:account.voucher:0
@@ -40,34 +40,34 @@ msgstr ""
#. module: account_voucher
#: view:sale.receipt.report:0
msgid "Voucher Date"
msgstr ""
msgstr "Datum plaćanja"
#. module: account_voucher
#: report:voucher.print:0
msgid "Particulars"
msgstr ""
msgstr "Detalji"
#. module: account_voucher
#: view:account.voucher:0
#: view:sale.receipt.report:0
msgid "Group By..."
msgstr ""
msgstr "Grupiraj po..."
#. module: account_voucher
#: code:addons/account_voucher/account_voucher.py:591
#, python-format
msgid "Cannot delete Voucher(s) which are already opened or paid !"
msgstr ""
msgstr "Otvorena ili plaćena plaćanja se ne mogu brisati!"
#. module: account_voucher
#: view:account.voucher:0
msgid "Supplier"
msgstr ""
msgstr "Dobavljač"
#. module: account_voucher
#: model:ir.actions.report.xml,name:account_voucher.report_account_voucher_print
msgid "Voucher Print"
msgstr ""
msgstr "Ispis plaćanja"
#. module: account_voucher
#: model:ir.module.module,description:account_voucher.module_meta_information
@@ -100,17 +100,17 @@ msgstr ""
#: model:ir.actions.act_window,name:account_voucher.action_view_account_statement_from_invoice_lines
#, python-format
msgid "Import Entries"
msgstr ""
msgstr "Uvoz stavki"
#. module: account_voucher
#: model:ir.model,name:account_voucher.model_account_voucher_unreconcile
msgid "Account voucher unreconcile"
msgstr ""
msgstr "Poništi zatvaranja plaćanja"
#. module: account_voucher
#: selection:sale.receipt.report,month:0
msgid "March"
msgstr ""
msgstr "Ožujak"
#. module: account_voucher
#: model:ir.actions.act_window,help:account_voucher.action_sale_receipt
@@ -132,7 +132,7 @@ msgstr ""
#: view:sale.receipt.report:0
#: field:sale.receipt.report,company_id:0
msgid "Company"
msgstr ""
msgstr "Tvrtka"
#. module: account_voucher
#: view:account.voucher:0
@@ -151,16 +151,17 @@
<field name="arch" type="xml">
<form string="Bill Payment">
<group col="6" colspan="4">
<field name="partner_id" domain="[('supplier','=',True)]" required="1" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date)" context="{'invoice_currency':currency_id}" string="Supplier"/>
<field name="amount" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date)"/>
<field name="partner_id" domain="[('supplier','=',True)]" required="1" invisible="context.get('line_type', False)" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date)" context="{'invoice_currency':currency_id}" string="Supplier"/>
<field name="amount" invisible="context.get('line_type', False)" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date)"/>
<field name="journal_id"
domain="[('type','in',['bank', 'cash'])]"
invisible="context.get('line_type', False)"
widget="selection" select="1"
on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date)"
string="Payment Method"/>
<field name="date" select="1" on_change="onchange_date(partner_id, journal_id, amount, currency_id, type, date)"/>
<field name="reference" select="1" string="Payment Ref"/>
<field name="name" colspan="2"/>
<field name="date" select="1" invisible="context.get('line_type', False)" on_change="onchange_date(partner_id, journal_id, amount, currency_id, type, date)"/>
<field name="reference" select="1" invisible="context.get('line_type', False)" string="Payment Ref"/>
<field name="name" colspan="2" invisible="context.get('line_type', False)"/>
<field name="account_id"
widget="selection"
invisible="True"/>
@@ -245,10 +246,10 @@
</notebook>
<group col="10" colspan="4">
<field name="state"/>
<button name="cancel_voucher" string="Cancel" states="draft,proforma" icon="gtk-cancel"/>
<button name="cancel_voucher" string="Unreconcile" type="object" states="posted" icon="terp-stock_effects-object-colorize" confirm="Are you sure to unreconcile this record ?"/>
<button name="action_cancel_draft" type="object" states="cancel" string="Set to Draft" icon="terp-stock_effects-object-colorize"/>
<button name="proforma_voucher" string="Validate" states="draft" icon="gtk-go-forward"/>
<button name="cancel_voucher" string="Cancel" states="draft,proforma" icon="gtk-cancel" invisible="context.get('line_type', False)"/>
<button name="cancel_voucher" string="Unreconcile" type="object" states="posted" icon="terp-stock_effects-object-colorize" invisible="context.get('line_type', False)" confirm="Are you sure to unreconcile this record ?"/>
<button name="action_cancel_draft" type="object" states="cancel" string="Set to Draft" icon="terp-stock_effects-object-colorize" invisible="context.get('line_type', False)"/>
<button name="proforma_voucher" string="Validate" states="draft" icon="gtk-go-forward" invisible="context.get('line_type', False)"/>
</group>
</form>
</field>
@@ -288,18 +289,20 @@
<field name="arch" type="xml">
<form string="Customer Payment">
<group col="6" colspan="4">
<field name="partner_id" required="1" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date)" string="Customer"/>
<field name="partner_id" required="1" invisible="context.get('line_type', False)" on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date)" string="Customer"/>
<field name="amount"
invisible="context.get('line_type', False)"
string="Paid Amount"
on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date)"/>
<field name="journal_id"
domain="[('type','in',['bank', 'cash'])]"
invisible="context.get('line_type', False)"
widget="selection" select="1"
on_change="onchange_partner_id(partner_id, journal_id, amount, currency_id, type, date)"
string="Payment Method"/>
<field name="date" select="1" on_change="onchange_date(partner_id, journal_id, amount, currency_id, type, date)"/>
<field name="reference" select="1" string="Payment Ref"/>
<field name="name" colspan="2"/>
<field name="date" select="1" invisible="context.get('line_type', False)" on_change="onchange_date(partner_id, journal_id, amount, currency_id, type, date)"/>
<field name="reference" select="1" invisible="context.get('line_type', False)" string="Payment Ref"/>
<field name="name" colspan="2" invisible="context.get('line_type', False)"/>
<field name="account_id"
widget="selection"
invisible="True"/>
@@ -384,10 +387,10 @@
</notebook>
<group col="10" colspan="4">
<field name="state"/>
<button name="cancel_voucher" string="Cancel" states="draft,proforma" icon="gtk-cancel"/>
<button name="cancel_voucher" string="Unreconcile" type="object" states="posted" icon="terp-stock_effects-object-colorize" confirm="Are you sure to unreconcile this record ?"/>
<button name="action_cancel_draft" type="object" states="cancel" string="Set to Draft" icon="terp-stock_effects-object-colorize"/>
<button name="proforma_voucher" string="Validate" states="draft" icon="gtk-go-forward"/>
<button name="cancel_voucher" string="Cancel" states="draft,proforma" icon="gtk-cancel" invisible="context.get('line_type', False)"/>
<button name="cancel_voucher" string="Unreconcile" type="object" states="posted" invisible="context.get('line_type', False)" icon="terp-stock_effects-object-colorize" confirm="Are you sure to unreconcile this record ?"/>
<button name="action_cancel_draft" type="object" states="cancel" string="Set to Draft" icon="terp-stock_effects-object-colorize" invisible="context.get('line_type', False)"/>
<button name="proforma_voucher" string="Validate" states="draft" icon="gtk-go-forward" invisible="context.get('line_type', False)"/>
</group>
</form>
</field>
@@ -75,7 +75,7 @@ class account_statement_from_invoice_lines(osv.osv_memory):
statement.currency.id, amount, context=ctx)
context.update({'move_line_ids': [line.id]})
result = voucher_obj.onchange_partner_id(cr, uid, [], partner_id=line.partner_id.id, journal_id=statement.journal_id.id, price=abs(amount), currency_id= statement.currency.id, ttype=(amount < 0 and 'payment' or 'receipt'), date=time.strftime('%Y-%m-%d'), context=context)
result = voucher_obj.onchange_partner_id(cr, uid, [], partner_id=line.partner_id.id, journal_id=statement.journal_id.id, price=abs(amount), currency_id= statement.currency.id, ttype=(amount < 0 and 'payment' or 'receipt'), date=line_date, context=context)
voucher_res = { 'type':(amount < 0 and 'payment' or 'receipt'),
'name': line.name,
'partner_id': line.partner_id.id,
+14 -1
View File
@@ -38,7 +38,9 @@ _ref_vat = {
'nl': 'NL123456782B90', 'pl': 'PL1234567883',
'pt': 'PT123456789', 'ro': 'RO1234567897',
'se': 'SE123456789701', 'si': 'SI12345679',
'sk': 'SK0012345675', 'el': 'EL12345670'
'sk': 'SK0012345675', 'el': 'EL12345670',
'mx': 'MXABC123456T1B'
}
def mult_add(i, j):
@@ -1064,6 +1066,17 @@ class res_partner(osv.osv):
return False
return True
def check_vat_mx(self, vat):
'''
Verificar RFC méxico
'''
if not 12 <= len(vat) <= 13:
return False
elif len(vat)==12 and not vat[:3].isalpha() | vat[3:9].isdigit() | vat[-3:].isalnum():
return False
elif len(vat)==13 and not vat[:4].isalpha() | vat[4:10].isdigit() | vat[-3:].isalnum():
return False
return True
res_partner()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: decimal_precision
+39 -32
View File
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
"PO-Revision-Date: 2011-01-26 15:37+0000\n"
"Last-Translator: Fernandinho <Unknown>\n"
"PO-Revision-Date: 2011-03-04 01:01+0000\n"
"Last-Translator: Emerson <Unknown>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-01-27 04:37+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: document_ics
#: help:document.ics.crm.wizard,claims:0
@@ -38,26 +38,28 @@ msgstr "uid"
msgid ""
"This may help associations in their fund raising process and tracking."
msgstr ""
"Isto pode ajudar as associações no processo de levantamento de fundos e "
"acompanhamento."
#. module: document_ics
#: field:document.ics.crm.wizard,jobs:0
msgid "Jobs Hiring Process"
msgstr ""
msgstr "Processo de Contratação de Funcionários"
#. module: document_ics
#: view:document.ics.crm.wizard:0
msgid "Configure Calendars for CRM Sections"
msgstr ""
msgstr "Configurar Calendários para Seções CRM"
#. module: document_ics
#: field:document.ics.crm.wizard,helpdesk:0
msgid "Helpdesk"
msgstr ""
msgstr "Helpdesk"
#. module: document_ics
#: selection:document.directory.ics.fields,fn:0
msgid "Interval in hours"
msgstr ""
msgstr "Intervalo em horas"
#. module: document_ics
#: selection:document.directory.ics.fields,name:0
@@ -70,6 +72,7 @@ msgid ""
"The field of the object used in the filename. Has to "
"be a unique identifier."
msgstr ""
"O campo do objeto usado no nome do arquivo. Deve ser um identificador único."
#. module: document_ics
#: field:document.directory.ics.fields,content_id:0
@@ -79,18 +82,20 @@ msgstr "Conteúdo"
#. module: document_ics
#: field:document.ics.crm.wizard,meeting:0
msgid "Calendar of Meetings"
msgstr ""
msgstr "Calendário de Compromissos"
#. module: document_ics
#: view:document.ics.crm.wizard:0
msgid ""
"OpenERP can create and pre-configure a series of integrated calendar for you."
msgstr ""
"OpenERP pode criar e pré-configurar uma série de calendários integrados para "
"você."
#. module: document_ics
#: help:document.ics.crm.wizard,helpdesk:0
msgid "Manages an Helpdesk service."
msgstr ""
msgstr "Gerencia um servido de Helpdesk."
#. module: document_ics
#: selection:document.directory.ics.fields,name:0
@@ -105,7 +110,7 @@ msgstr "sumário"
#. module: document_ics
#: model:ir.model,name:document_ics.model_crm_meeting
msgid "Meeting"
msgstr ""
msgstr "Reunião"
#. module: document_ics
#: help:document.ics.crm.wizard,lead:0
@@ -122,12 +127,12 @@ msgstr "descrição"
#. module: document_ics
#: field:document.directory.ics.fields,fn:0
msgid "Function"
msgstr ""
msgstr "Função"
#. module: document_ics
#: model:ir.actions.act_window,name:document_ics.action_view_document_ics_config_directories
msgid "Configure Calendars for Sections "
msgstr ""
msgstr "Configura Calendários para Seções "
#. module: document_ics
#: help:document.ics.crm.wizard,opportunity:0
@@ -137,7 +142,7 @@ msgstr ""
#. module: document_ics
#: field:document.ics.crm.wizard,progress:0
msgid "Configuration Progress"
msgstr ""
msgstr "Progresso da Configuração"
#. module: document_ics
#: help:document.ics.crm.wizard,jobs:0
@@ -145,21 +150,23 @@ msgid ""
"Helps you to organise the jobs hiring process: evaluation, meetings, email "
"integration..."
msgstr ""
"Ajuda você a organizar o processo de contratação de pessoal: avaliação, "
"reuniões, integração de email..."
#. module: document_ics
#: view:document.ics.crm.wizard:0
msgid "title"
msgstr ""
msgstr "título"
#. module: document_ics
#: field:document.ics.crm.wizard,fund:0
msgid "Fund Raising Operations"
msgstr ""
msgstr "Operações para Levantar Fundos"
#. module: document_ics
#: model:ir.model,name:document_ics.model_document_directory_content
msgid "Directory Content"
msgstr ""
msgstr "Conteúdo do Diretório"
#. module: document_ics
#: model:ir.model,name:document_ics.model_document_directory_ics_fields
@@ -188,7 +195,7 @@ msgstr ""
#. module: document_ics
#: field:document.directory.ics.fields,field_id:0
msgid "OpenERP Field"
msgstr ""
msgstr "Campo do OpenERP"
#. module: document_ics
#: view:document.directory:0
@@ -203,7 +210,7 @@ msgstr "Valor ICS"
#. module: document_ics
#: selection:document.directory.ics.fields,fn:0
msgid "Expression as constant"
msgstr ""
msgstr "Expressão como constante"
#. module: document_ics
#: selection:document.directory.ics.fields,name:0
@@ -218,7 +225,7 @@ msgstr "participante"
#. module: document_ics
#: field:document.ics.crm.wizard,name:0
msgid "Name"
msgstr ""
msgstr "Nome"
#. module: document_ics
#: help:document.directory.ics.fields,fn:0
@@ -228,7 +235,7 @@ msgstr ""
#. module: document_ics
#: help:document.ics.crm.wizard,meeting:0
msgid "Manages the calendar of meetings of the users."
msgstr ""
msgstr "Administrar calendário de compromissos dos usuários"
#. module: document_ics
#: field:document.directory.content,ics_domain:0
@@ -253,7 +260,7 @@ msgstr "Mapeamento ICS"
#. module: document_ics
#: field:document.ics.crm.wizard,document_ics:0
msgid "Shared Calendar"
msgstr ""
msgstr "Calendário Compartilhado"
#. module: document_ics
#: field:document.ics.crm.wizard,claims:0
@@ -268,7 +275,7 @@ msgstr "dtstart"
#. module: document_ics
#: field:document.directory.ics.fields,expr:0
msgid "Expression"
msgstr ""
msgstr "Expressão"
#. module: document_ics
#: field:document.ics.crm.wizard,bugs:0
@@ -283,17 +290,17 @@ msgstr "categorias"
#. module: document_ics
#: view:document.ics.crm.wizard:0
msgid "Configure"
msgstr ""
msgstr "Configurar"
#. module: document_ics
#: selection:document.directory.ics.fields,fn:0
msgid "Use the field"
msgstr ""
msgstr "Usar o campo"
#. module: document_ics
#: view:document.ics.crm.wizard:0
msgid "Create Pre-Configured Calendars"
msgstr ""
msgstr "Criar Calendários Pré-configurados"
#. module: document_ics
#: field:document.directory.content,fname_field:0
@@ -318,7 +325,7 @@ msgstr ""
#. module: document_ics
#: field:document.ics.crm.wizard,config_logo:0
msgid "Image"
msgstr ""
msgstr "Imagem"
#. module: document_ics
#: selection:document.directory.ics.fields,name:0
@@ -335,17 +342,17 @@ msgstr ""
#. module: document_ics
#: view:document.ics.crm.wizard:0
msgid "res_config_contents"
msgstr ""
msgstr "res_config_contents"
#. module: document_ics
#: field:document.ics.crm.wizard,lead:0
msgid "Leads"
msgstr ""
msgstr "Prospectos"
#. module: document_ics
#: model:ir.model,name:document_ics.model_document_ics_crm_wizard
msgid "document.ics.crm.wizard"
msgstr ""
msgstr "document.ics.crm.wizard"
#. module: document_ics
#: model:crm.case.section,name:document_ics.section_meeting
@@ -355,7 +362,7 @@ msgstr "Calendário de Compromissos Compartilhado"
#. module: document_ics
#: field:document.ics.crm.wizard,phonecall:0
msgid "Phone Calls"
msgstr ""
msgstr "Chamadas Telefônicas"
#. module: document_ics
#: field:document.directory.content,ics_field_ids:0
@@ -370,7 +377,7 @@ msgstr "url"
#. module: document_ics
#: field:document.ics.crm.wizard,opportunity:0
msgid "Business Opportunities"
msgstr ""
msgstr "Oportunidades de Negócios"
#~ msgid ""
#~ "The Object name must start with x_ and not contain any special character !"
+6 -6
View File
@@ -8,14 +8,14 @@ msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
"PO-Revision-Date: 2009-09-08 16:31+0000\n"
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
"PO-Revision-Date: 2011-03-03 23:54+0000\n"
"Last-Translator: Diana Mamajeva <Unknown>\n"
"Language-Team: Latvian <lv@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-01-15 05:02+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-03-04 04:44+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: google_map
#: view:res.partner:0
@@ -47,12 +47,12 @@ msgstr ""
#. module: google_map
#: model:ir.module.module,shortdesc:google_map.module_meta_information
msgid "Google Map"
msgstr ""
msgstr "Google Karte"
#. module: google_map
#: model:ir.model,name:google_map.model_res_partner_address
msgid "Partner Addresses"
msgstr ""
msgstr "Partnera Adreses"
#~ msgid "Invalid XML for View Architecture!"
#~ msgstr "Nederīgs XML vērtējot pēc Skata Arhitektūras"
+3 -3
View File
@@ -150,7 +150,7 @@ class hr_employee(osv.osv):
'partner_id': fields.related('address_home_id', 'partner_id', type='many2one', relation='res.partner', readonly=True, help="Partner that is related to the current employee. Accounting transaction will be written on this partner belongs to employee."),
'bank_account_id':fields.many2one('res.partner.bank', 'Bank Account', domain="[('partner_id','=',partner_id)]", help="Employee bank salary account"),
'work_phone': fields.char('Work Phone', size=32, readonly=False),
'mobile_phone': fields.char('Mobile', size=32, readonly=False),
'mobile_phone': fields.char('Work Mobile', size=32, readonly=False),
'work_email': fields.char('Work E-mail', size=240),
'work_location': fields.char('Office Location', size=32),
'notes': fields.text('Notes'),
@@ -167,7 +167,7 @@ class hr_employee(osv.osv):
def onchange_address_id(self, cr, uid, ids, address, context=None):
if address:
address = self.pool.get('res.partner.address').browse(cr, uid, address, context=context)
return {'value': {'work_email': address.email, 'work_phone': address.phone}}
return {'value': {'work_email': address.email, 'work_phone': address.phone, 'mobile_phone': address.mobile}}
return {'value': {}}
def onchange_company(self, cr, uid, ids, company, context=None):
@@ -191,7 +191,7 @@ class hr_employee(osv.osv):
_defaults = {
'active': 1,
'photo': _get_photo,
'address_id': lambda self,cr,uid,c: self.pool.get('res.partner.address').browse(cr, uid, uid, c).partner_id.id
'address_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr, uid, uid, c).address_id.id
}
def _check_recursion(self, cr, uid, ids, context=None):
+14 -14
View File
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
"PO-Revision-Date: 2010-10-30 12:22+0000\n"
"Last-Translator: Mustufa Rangwala (Open ERP) <mra@tinyerp.com>\n"
"PO-Revision-Date: 2011-03-03 10:18+0000\n"
"Last-Translator: Goran Kliska (Aplikacija d.o.o.) <gkliska@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-01-15 05:43+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: hr_attendance
#: model:ir.ui.menu,name:hr_attendance.menu_hr_time_tracking
@@ -34,7 +34,7 @@ msgstr ""
#. module: hr_attendance
#: selection:hr.attendance.month,month:0
msgid "March"
msgstr ""
msgstr "Ožujak"
#. module: hr_attendance
#: view:hr.sign.in.out.ask:0
@@ -51,7 +51,7 @@ msgstr ""
#. module: hr_attendance
#: field:hr.action.reason,name:0
msgid "Reason"
msgstr ""
msgstr "Razlog"
#. module: hr_attendance
#: view:hr.attendance.error:0
@@ -91,7 +91,7 @@ msgstr ""
#. module: hr_attendance
#: selection:hr.employee,state:0
msgid "Present"
msgstr ""
msgstr "Prisutan"
#. module: hr_attendance
#: model:ir.model,name:hr_attendance.model_hr_sign_in_out_ask
@@ -150,7 +150,7 @@ msgstr "Korisnička Greška"
#: field:hr.attendance.error,end_date:0
#: field:hr.attendance.week,end_date:0
msgid "Ending Date"
msgstr ""
msgstr "Do datuma"
#. module: hr_attendance
#: view:hr.attendance:0
@@ -215,7 +215,7 @@ msgstr ""
#. module: hr_attendance
#: selection:hr.attendance.month,month:0
msgid "July"
msgstr ""
msgstr "Srpanj"
#. module: hr_attendance
#: model:ir.actions.act_window,name:hr_attendance.action_hr_attendance_error
@@ -227,7 +227,7 @@ msgstr ""
#: field:hr.attendance.error,init_date:0
#: field:hr.attendance.week,init_date:0
msgid "Starting Date"
msgstr ""
msgstr "Od datuma"
#. module: hr_attendance
#: report:report.hr.timesheet.attendance.error:0
@@ -238,12 +238,12 @@ msgstr ""
#: selection:hr.attendance,action:0
#: view:hr.employee:0
msgid "Sign In"
msgstr ""
msgstr "Prijava"
#. module: hr_attendance
#: report:report.hr.timesheet.attendance.error:0
msgid "Operation"
msgstr ""
msgstr "Operacija"
#. module: hr_attendance
#: code:addons/hr_attendance/wizard/hr_attendance_error.py:49
@@ -254,12 +254,12 @@ msgstr "Podaci Nisu Na Raspolaganju"
#. module: hr_attendance
#: selection:hr.attendance.month,month:0
msgid "September"
msgstr ""
msgstr "Rujan"
#. module: hr_attendance
#: selection:hr.attendance.month,month:0
msgid "December"
msgstr ""
msgstr "Prosinac"
#. module: hr_attendance
#: field:hr.attendance.month,month:0
@@ -34,10 +34,10 @@ from tools import ustr
one_day = relativedelta(days=1)
month2name = [0, 'January', 'February', 'March', 'April', 'May', 'Jun', 'July', 'August', 'September', 'October', 'November', 'December']
#def hour2str(h):
# hours = int(h)
# minutes = int(round((h - hours) * 60, 0))
# return '%02dh%02d' % (hours, minutes)
def hour2str(h):
hours = int(h)
minutes = int(round((h - hours) * 60, 0))
return '%02dh%02d' % (hours, minutes)
def lengthmonth(year, month):
if month == 2 and ((year % 4 == 0) and ((year % 100 != 0) or (year % 400 == 0))):
@@ -85,12 +85,12 @@ class report_custom(report_rml):
for att in attendences:
dt = datetime.strptime(att['name'], '%Y-%m-%d %H:%M:%S')
if ldt and att['action'] == 'sign_out':
wh += (dt - ldt).seconds/60/60
wh += (float((dt - ldt).seconds)/60/60)
else:
ldt = dt
# Week xml representation
# wh = hour2str(wh)
today_xml = '<day num="%s"><wh>%s</wh></day>' % ((today - month).days+1, round(wh,2))
wh = hour2str(wh)
today_xml = '<day num="%s"><wh>%s</wh></day>' % ((today - month).days+1, (wh))
dy=(today - month).days+1
days_xml.append(today_xml)
today, tomor = tomor, tomor + one_day
+5 -5
View File
@@ -24,9 +24,9 @@ from datetime import datetime
from dateutil.relativedelta import relativedelta
import pooler
from report.interface import report_rml
from report.interface import toxml
import tools
one_week = relativedelta(days=7)
num2day = ['Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday', 'Sunday']
@@ -38,12 +38,12 @@ class report_custom(report_rml):
def create_xml(self, cr, uid, ids, datas, context=None):
obj_emp = pooler.get_pool(cr.dbname).get('hr.employee')
start_date = datetime.strptime(datas['form']['init_date'], '%Y-%m-%d')
end_date = datetime.strptime(datas['form']['end_date'], '%Y-%m-%d')
first_monday = start_date - relativedelta(days=start_date.date().weekday())
last_monday = end_date + relativedelta(days=7 - end_date.date().weekday())
if last_monday < first_monday:
first_monday, last_monday = last_monday, first_monday
@@ -58,7 +58,7 @@ class report_custom(report_rml):
<name>%s</name>
%%s
</user>
''' % ustr(toxml(emp['name']))
''' % tools.ustr(toxml(emp['name']))
while monday != last_monday:
#### Work hour calculation
sql = '''
@@ -83,7 +83,7 @@ class report_custom(report_rml):
for att in attendances:
dt = datetime.strptime(att['name'], '%Y-%m-%d %H:%M:%S')
if ldt and att['action'] == 'sign_out':
week_wh[ldt.date().weekday()] = week_wh.get(ldt.date().weekday(), 0) + ((dt - ldt).seconds/3600)
week_wh[ldt.date().weekday()] = week_wh.get(ldt.date().weekday(), 0) + (float((dt - ldt).seconds)/3600)
else:
ldt = dt
@@ -1,6 +1,40 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record id="view_hr_attendance_week" model="ir.ui.view">
<field name="name">Attendances Report Weekly</field>
<field name="model">hr.attendance.week</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Print Attendance Report Weekly">
<field name="init_date"/>
<field name="end_date"/>
<newline/>
<separator colspan="4"/>
<button special="cancel" string="Cancel" icon='gtk-cancel'/>
<button name="print_report" string="Print" type="object" icon="gtk-print"/>
</form>
</field>
</record>
<record id="action_hr_attendance_week" model="ir.actions.act_window">
<field name="name">Attendances By Week</field>
<field name="type">ir.actions.act_window</field>
<field name="res_model">hr.attendance.week</field>
<field name="view_type">form</field>
<field name="view_mode">form</field>
<field name="target">new</field>
</record>
<record model="ir.values" id="hr_attendance_week_values">
<field name="model_id" ref="hr.model_hr_employee" />
<field name="object" eval="1" />
<field name="name">Attendances By Week</field>
<field name="key2">client_print_multi</field>
<field name="value" eval="'ir.actions.act_window,' + str(ref('action_hr_attendance_week'))" />
<field name="key">action</field>
<field name="model">hr.employee</field>
</record>
</data>
</openerp>
+4
View File
@@ -251,6 +251,10 @@ class hr_evaluation(osv.osv):
self.write(cr, uid, ids,{'state':'cancel'}, context=context)
return True
def button_draft(self, cr, uid, ids, context=None):
self.write(cr, uid, ids,{'state': 'draft'}, context=context)
return True
def write(self, cr, uid, ids, vals, context=None):
if 'date' in vals:
new_vals = {'date_deadline': vals.get('date')}
+18 -16
View File
@@ -200,16 +200,18 @@
</page>
</notebook>
<newline/>
<group col="6" colspan="4">
<field name="state"/>
<button name="button_cancel" string="Cancel" states="draft,wait,progress" type="object"
icon="gtk-cancel"/>
<button name="button_plan_in_progress" string="Start Evaluation" states="draft" type="object"
icon="gtk-execute"/>
<button name="button_done" string="Done" states="progress" type="object"
icon="gtk-jump-to"/>
<button name="button_final_validation" string="Validate Evaluation" states="wait" type="object"
icon="gtk-go-forward"/>
<group col="8" colspan="4">
<field name="state"/>
<button name="button_cancel" string="Cancel" states="draft,wait,progress" type="object"
icon="gtk-cancel"/>
<button name="button_plan_in_progress" string="Start Evaluation" states="draft" type="object"
icon="gtk-execute"/>
<button name="button_done" string="Done" states="progress" type="object"
icon="gtk-jump-to"/>
<button name="button_draft" string="Reset to Draft" states="cancel" type="object"
icon="terp-stock_effects-object-colorize"/>
<button name="button_final_validation" string="Validate Evaluation" states="wait" type="object"
icon="gtk-go-forward"/>
</group>
</form>
</field>
@@ -250,12 +252,12 @@
<field name="arch" type="xml">
<search string="Search Evaluation">
<group col='10' colspan='4'>
<filter icon="terp-check" string="Current" domain="[('state','=','wait'))]" help="Evaluations that are in waiting state"/>
<filter icon="terp-check" string="Current" domain="[('state','=','wait'))]" help="Evaluations that are in waiting state"/>
<filter icon="terp-camera_test" string="In progress" domain="[('state','=','progress')]" help="Evaluations that are in progress state"/>
<separator orientation="vertical"/>
<filter icon="terp-go-week" string="7 Days" help="Evaluations to close within the next 7 days"
domain="[('date', '&gt;=', (datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]" />
<separator orientation="vertical"/>
<separator orientation="vertical"/>
<filter icon="terp-gnome-cpu-frequency-applet+" string="Late"
help="Evaluations that overpassed the deadline" domain="[('date','&lt;=',(datetime.date.today()).strftime('%%Y-%%m-%%d'))]" />
<separator orientation="vertical"/>
@@ -405,11 +407,11 @@
action="action_hr_evaluation_send_mail" sequence="45" groups="base.group_hr_manager"/>
<!-- Evaluation Interviews Button on Employee Form -->
<act_window
<act_window
context="{'search_default_user_to_review_id': [active_id]}"
id="act_hr_employee_2_hr__evaluation_interview"
name="Evaluation Interviews"
res_model="hr.evaluation.interview"
id="act_hr_employee_2_hr__evaluation_interview"
name="Evaluation Interviews"
res_model="hr.evaluation.interview"
src_model="hr.employee"/>
</data>
+5 -5
View File
@@ -70,7 +70,7 @@
<form string="Leave Request">
<group col="8" colspan="4">
<field name="name" attrs="{'readonly':[('state','!=','draft'),('state','!=','confirm')]}" />
<field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" width="130" groups="base.group_hr_manager, base.group_extended" string="Leave Type"/>
<field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" width="130" groups="base.group_hr_manager, base.group_extended" string="Leave Category"/>
<group attrs="{'invisible':[('holiday_type','=','employee')]}">
<field name="category_id" attrs="{'required':[('holiday_type','=','category')], 'readonly':[('state','!=','draft')]}"/>
</group>
@@ -81,7 +81,7 @@
<notebook colspan="4">
<page string="General">
<field name="holiday_status_id" on_change="onchange_sec_id(holiday_status_id)" context="{'employee_id':employee_id}" />
<field name="department_id"/>
<field name="department_id" attrs="{'readonly':[('holiday_type','=','category')]}" />
<field name="date_from" on_change="onchange_date_from(date_to, date_from)" required="1"/>
<field name="date_to" on_change="onchange_date_from(date_to, date_from)" required="1"/>
<field name="number_of_days_temp"/>
@@ -114,7 +114,7 @@
<form string="Allocation Request">
<group col="8" colspan="4">
<field name="name" />
<field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" string="Allocation Type" groups="base.group_hr_manager, base.group_extended"/>
<field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" string="Allocation Category" groups="base.group_hr_manager, base.group_extended"/>
<group attrs="{'invisible':[('holiday_type','=','category')]}">
<field name="employee_id" attrs="{'required':[('holiday_type','=','employee')]}"/>
</group>
@@ -125,7 +125,7 @@
<notebook colspan="4">
<page string="General">
<field name="holiday_status_id" on_change="onchange_sec_id(holiday_status_id)" context="{'employee_id':employee_id}" />
<field name="department_id"/>
<field name="department_id" attrs="{'readonly':[('holiday_type','=','category')]}" />
<field name="number_of_days_temp"/>
<newline/>
<field name="manager_id"/>
@@ -414,7 +414,7 @@
</record>
<menuitem sequence="3" id="hr.menu_open_view_attendance_reason_config" parent="hr.menu_hr_configuration" name="Holidays"/>
<menuitem name="Leave Type"
action="open_view_holiday_status"
id="menu_open_view_holiday_status"
+1 -1
View File
@@ -5,7 +5,7 @@
<record id="property_rule_holidays" model="ir.rule">
<field name="name">Employee Holidays</field>
<field model="ir.model" name="model_id" ref="model_hr_holidays"/>
<field name="domain_force">[('employee_id.user_id','=',user.id)]</field>
<field name="domain_force">['|', ('employee_id.user_id','=',user.id), ('department_id.manager_id.user_id', '=', user.id)]</field>
<field name="groups" eval="[(6,0,[ref('base.group_hr_user')])]"/>
</record>
<record id="property_rule_holidays_manager" model="ir.rule">
+1 -1
View File
@@ -437,7 +437,7 @@ class hr_job(osv.osv):
_inherit = "hr.job"
_name = "hr.job"
_columns = {
'survey_id': fields.many2one('survey', 'Survey'),
'survey_id': fields.many2one('survey', 'Survey', help="Select survey for the current job"),
}
hr_job()
@@ -66,10 +66,5 @@
<field name="object_id" search="[('model','=','hr.applicant')]" model="ir.model"/>
</record>
<!-- Department(section_id) -->
<record model="crm.case.section" id="section_hr_department">
<field name="name">HR Department</field>
<field name="code">HR</field>
</record>
</data>
</openerp>
+5 -5
View File
@@ -7,14 +7,14 @@ msgstr ""
"Project-Id-Version: OpenERP Server 6.0dev\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2011-01-11 11:15+0000\n"
"PO-Revision-Date: 2011-02-09 14:37+0000\n"
"PO-Revision-Date: 2011-03-03 15:08+0000\n"
"Last-Translator: NOVOTRADE RENDSZERHÁZ <openerp@novotrade.hu>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=utf-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-02-10 04:35+0000\n"
"X-Generator: Launchpad (build 12177)\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: hr_timesheet_invoice
#: view:report.timesheet.line:0
@@ -692,7 +692,7 @@ msgid ""
"%s"
msgstr ""
"Kérem, töltse ki a partner és az árlista mezőt az alábbi gyűjtőkód "
"törzsben:\n"
"űrlapján:\n"
"%s"
#. module: hr_timesheet_invoice
@@ -848,7 +848,7 @@ msgid ""
"%s"
msgstr ""
"Kérem, töltse ki a partner vagy vevő és az eladási árlista mezőt az alábbi "
"gyűjtőkód törzsben:\n"
"gyűjtőkód űrlapján:\n"
"%s"
#. module: hr_timesheet_invoice
@@ -14,8 +14,8 @@
<field name="property_account_payable" ref="account_account_template_0_211001"/>
<field name="property_account_income" ref="account_account_template_0_410001"/>
<field name="property_account_expense" ref="account_account_template_0_511301"/>
<field name="property_account_income_categ" ref="account_account_template_0_400000"/>
<field name="property_account_expense_categ" ref="account_account_template_0_500000"/>
<field name="property_account_income_categ" ref="account_account_template_0_410001"/>
<field name="property_account_expense_categ" ref="account_account_template_0_511301"/>
</record>
<record id="account_chart_template_x" model="account.chart.template">
<field name="name">Costa Rica - Company 1</field>
@@ -26,8 +26,8 @@
<field name="property_account_payable" ref="account_account_template_x211001"/>
<field name="property_account_income" ref="account_account_template_x410001"/>
<field name="property_account_expense" ref="account_account_template_x511301"/>
<field name="property_account_income_categ" ref="account_account_template_x400000"/>
<field name="property_account_expense_categ" ref="account_account_template_x500000"/>
<field name="property_account_income_categ" ref="account_account_template_x410001"/>
<field name="property_account_expense_categ" ref="account_account_template_x511301"/>
</record>
</data>
</openerp>
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: l10n_cr
@@ -8,8 +8,8 @@
<field name="account_root_id" ref="chart_skr04"/>
<field name="tax_code_root_id" ref="tax_code_USTVA_skr04"/>
<field name="bank_account_view_id" ref="chart_skr04_1800"/>
<field name="property_account_receivable" ref="chart_skr04_1200"/>
<field name="property_account_payable" ref="chart_skr04_3300"/>
<field name="property_account_receivable" ref="chart_skr04_1206"/>
<field name="property_account_payable" ref="chart_skr04_3301"/>
<field name="property_account_expense_categ" ref="chart_skr04_5400"/>
<field name="property_account_income_categ" ref="chart_skr04_4400"/>
</record>
+2 -2
View File
@@ -4201,8 +4201,8 @@
<field name="bank_account_view_id" ref="10"/>
<field name="property_account_receivable" ref="4"/>
<field name="property_account_payable" ref="5"/>
<field name="property_account_expense_categ" ref="6"/>
<field name="property_account_income_categ" ref="7"/>
<field name="property_account_expense_categ" ref="60101"/>
<field name="property_account_income_categ" ref="710101"/>
</record>
</data>
+1 -1
View File
@@ -3,7 +3,7 @@
<data noupdate="False">
<!-- Chart Template -->
<!-- this file contains the base (common) data for all kinds
of taxes, as well as the chart of accounts sum-up.
-->
+3 -3
View File
@@ -155,7 +155,7 @@
<field name="code">IA_AC01161</field>
<field name="type">receivable</field>
<field name="user_type" ref="account_type_asset1"/>
<field name="reconcile" eval="False"/>
<field name="reconcile" eval="True"/>
<field name="parent_id" ref="IA_AC0116"/>
</record>
@@ -232,11 +232,11 @@
</record>
<record model="account.account.template" id="IA_AC02131">
<field name="name">Sundry Creditors</field>
<field name="name">Sundry Creditors Account</field>
<field name="code">IA_AC02131</field>
<field name="type">payable</field>
<field name="user_type" ref="account_type_liability1"/>
<field name="reconcile" eval="False"/>
<field name="reconcile" eval="True"/>
<field name="parent_id" ref="IA_AC0213"/>
</record>
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: l10n_nl
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: l10n_pl
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: l10n_ro
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: l10n_th
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: l10n_uk
+2 -2
View File
@@ -50,7 +50,7 @@
<field name="code">1112</field>
<field name="name">Input VAT</field>
<field ref="cli" name="parent_id"/>
<field name="type">payable</field>
<field name="type">other</field>
<field name="user_type" ref="account_type_liability"/>
</record>
@@ -124,7 +124,7 @@
<field name="code">11003</field>
<field name="name">Output VAT</field>
<field ref="cas" name="parent_id"/>
<field name="type">receivable</field>
<field name="type">other</field>
<field name="user_type" ref="account_type_asset"/>
</record>
+1 -1
View File
@@ -14,7 +14,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-03 04:39+0000\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: l10n_ve
File diff suppressed because it is too large Load Diff
@@ -246,7 +246,6 @@
<field name="name">Sales Credit Note Journal - (OpenERP IN)</field>
<field name="code">SCNJ-OpenERP IN</field>
<field name="type">sale_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
<field name="sequence_id" ref="account.sequence_refund_sales_journal"/>
<field model="account.account" name="default_credit_account_id" ref="account.a_sale"/>
@@ -273,7 +272,6 @@
<field name="name">Expenses Credit Notes Journal - (OpenERP IN)</field>
<field name="code">ECNJ-OpenERP IN</field>
<field name="type">purchase_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
<field name="sequence_id" ref="account.sequence_refund_purchase_journal"/>
<field model="account.account" name="default_debit_account_id" ref="account.a_expense"/>
@@ -340,7 +338,6 @@
<field name="name">Sales Credit Note Journal - (OpenERP US)</field>
<field name="code">SCNJ-OpenERP US</field>
<field name="type">sale_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
<field name="sequence_id" ref="account.sequence_refund_sales_journal"/>
<field model="account.account" name="default_credit_account_id" ref="account.a_sale"/>
@@ -367,7 +364,6 @@
<field name="name">Expenses Credit Notes Journal - (OpenERP US)</field>
<field name="code">ECNJ-OpenERP US</field>
<field name="type">purchase_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
<field name="sequence_id" ref="account.sequence_refund_purchase_journal"/>
<field model="account.account" name="default_debit_account_id" ref="account.a_expense"/>
@@ -435,7 +431,6 @@
<field name="name">Sales Credit Note Journal - (OpenERP BE)</field>
<field name="code">SCNJ-OpenERP BE</field>
<field name="type">sale_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
<field name="sequence_id" ref="account.sequence_refund_sales_journal"/>
<field model="account.account" name="default_credit_account_id" ref="account.a_sale"/>
@@ -462,7 +457,6 @@
<field name="name">Expenses Credit Notes Journal - (OpenERP BE)</field>
<field name="code">ECNJ-OpenERP BE</field>
<field name="type">purchase_refund</field>
<field eval="True" name="refund_journal"/>
<field name="view_id" ref="account.account_sp_refund_journal_view"/>
<field name="sequence_id" ref="account.sequence_refund_purchase_journal"/>
<field model="account.account" name="default_debit_account_id" ref="account.a_expense"/>
+5 -2
View File
@@ -70,6 +70,7 @@ class pos_order(osv.osv):
return super(pos_order, self).unlink(cr, uid, ids, context=context)
def onchange_partner_pricelist(self, cr, uid, ids, part=False, context=None):
""" Changed price list on_change of partner_id"""
if not part:
return {'value': {}}
@@ -422,7 +423,7 @@ class pos_order(osv.osv):
"""Create a picking for each order and validate it."""
picking_obj = self.pool.get('stock.picking')
property_obj = self.pool.get("ir.property")
move_obj=self.pool.get('stock.move')
move_obj = self.pool.get('stock.move')
pick_name = self.pool.get('ir.sequence').get(cr, uid, 'stock.picking.out')
orders = self.browse(cr, uid, ids, context=context)
for order in orders:
@@ -463,7 +464,6 @@ class pos_order(osv.osv):
stock_dest_id = val.id
if line.qty < 0:
location_id, stock_dest_id = stock_dest_id, location_id
move_obj.create(cr, uid, {
'name': '(POS %d)' % (order.id, ),
'product_uom': line.product_id.uom_id.id,
@@ -477,6 +477,7 @@ class pos_order(osv.osv):
'state': 'waiting',
'location_id': location_id,
'location_dest_id': stock_dest_id,
'prodlot_id': line.prodlot_id and line.prodlot_id.id or False
}, context=context)
wf_service = netsvc.LocalService("workflow")
@@ -647,6 +648,7 @@ class pos_order(osv.osv):
'reference': order.name,
'partner_id': order.partner_id.id,
'comment': order.note or '',
'currency_id': order.pricelist_id.currency_id.id, # considering partner's sale pricelist's currency
}
inv.update(inv_ref.onchange_partner_id(cr, uid, [], 'out_invoice', order.partner_id.id)['value'])
if not inv.get('account_id', None):
@@ -1145,6 +1147,7 @@ class pos_order_line(osv.osv):
'discount': fields.float('Discount (%)', digits=(16, 2)),
'order_id': fields.many2one('pos.order', 'Order Ref', ondelete='cascade'),
'create_date': fields.datetime('Creation Date', readonly=True),
'prodlot_id': fields.many2one('stock.production.lot', 'Production Lot', help="You can specify Production lot for stock move created when you validate the pos order"),
}
_defaults = {
+2 -1
View File
@@ -41,6 +41,7 @@
<field name="price_unit"/>
<field name="notice"/>
<field name="serial_number"/>
<field name="prodlot_id" domain="[('product_id','=',product_id)]"/>
</form>
</field>
<group colspan="4" col="7">
@@ -88,7 +89,7 @@
</group>
<group colspan="4">
<field name="sale_journal" domain="[('type','=','sale')]" widget="selection" invisible="1"/>
<field name="pricelist_id" domain="[('type','=','sale')]" widget="selection" invisible="1"/>
<field name="pricelist_id" domain="[('type','=','sale')]" widget="selection" invisible="0"/>
</group>
</page>
<page string="Notes" >
+67 -25
View File
@@ -205,20 +205,37 @@ class project(osv.osv):
if context is None:
context = {}
proj = self.browse(cr, uid, id, context=context)
default = default or {}
context['active_test'] = False
default['state'] = 'open'
if not default.get('name', False):
default['name'] = proj.name + _(' (copy)')
res = super(project, self).copy(cr, uid, id, default, context)
return res
def template_copy(self, cr, uid, id, default={}, context=None):
task_obj = self.pool.get('project.task')
proj = self.browse(cr, uid, id, context=context)
default['tasks'] = [] #avoid to copy all the task automaticly
res = self.copy(cr, uid, id, default=default, context=context)
#copy all the task manually
map_task_id = {}
for task in proj.tasks:
map_task_id[task.id] = task_obj.copy(cr, uid, task.id, {}, context=context)
self.write(cr, uid, res, {'tasks':[(6,0, map_task_id.values())]})
task_obj.duplicate_task(cr, uid, map_task_id, context=context)
return res
def duplicate_template(self, cr, uid, ids, context=None):
if context is None:
context = {}
project_obj = self.pool.get('project.project')
task_pool = self.pool.get('project.task')
data_obj = self.pool.get('ir.model.data')
result = []
for proj in self.browse(cr, uid, ids, context=context):
@@ -231,7 +248,7 @@ class project(osv.osv):
end_date = date(*time.strptime(proj.date,'%Y-%m-%d')[:3])
new_date_end = (datetime(*time.strptime(new_date_start,'%Y-%m-%d')[:3])+(end_date-start_date)).strftime('%Y-%m-%d')
context.update({'copy':True})
new_id = project_obj.copy(cr, uid, proj.id, default = {
new_id = self.template_copy(cr, uid, proj.id, default = {
'name': proj.name +_(' (copy)'),
'state':'open',
'date_start':new_date_start,
@@ -332,7 +349,7 @@ class task(osv.osv):
def onchange_planned(self, cr, uid, ids, planned = 0.0, effective = 0.0):
return {'value':{'remaining_hours': planned - effective}}
def onchange_project(self, cr, uid, id, project_id):
if not project_id:
return {}
@@ -341,7 +358,7 @@ class task(osv.osv):
if partner_id:
return {'value':{'partner_id':partner_id.id}}
return {}
def _default_project(self, cr, uid, context=None):
if context is None:
context = {}
@@ -349,6 +366,25 @@ class task(osv.osv):
return int(context['project_id'])
return False
def duplicate_task(self, cr, uid, map_ids, context=None):
for new in map_ids.values():
task = self.browse(cr, uid, new, context)
child_ids = [ ch.id for ch in task.child_ids]
if task.child_ids:
for child in task.child_ids:
if child.id in map_ids.keys():
child_ids.remove(child.id)
child_ids.append(map_ids[child.id])
parent_ids = [ ch.id for ch in task.parent_ids]
if task.parent_ids:
for parent in task.parent_ids:
if parent.id in map_ids.keys():
parent_ids.remove(parent.id)
parent_ids.append(map_ids[parent.id])
#FIXME why there is already the copy and the old one
self.write(cr, uid, new, {'parent_ids':[(6,0,set(parent_ids))], 'child_ids':[(6,0, set(child_ids))]})
def copy_data(self, cr, uid, id, default={}, context=None):
default = default or {}
default.update({'work_ids':[], 'date_start': False, 'date_end': False, 'date_deadline': False})
@@ -360,7 +396,7 @@ class task(osv.osv):
default['name'] = self.browse(cr, uid, id, context=context).name or ''
if not context.get('copy',False):
new_name = _("%s (copy)")%default.get('name','')
default.update({'name':new_name})
default.update({'name':new_name})
return super(task, self).copy_data(cr, uid, id, default, context)
def _check_dates(self, cr, uid, ids, context=None):
@@ -448,27 +484,33 @@ class task(osv.osv):
_order = "sequence,priority, date_start, name, id"
def _check_recursion(self, cr, uid, ids, context=None):
obj_task = self.browse(cr, uid, ids[0], context=context)
parent_ids = [x.id for x in obj_task.parent_ids]
children_ids = [x.id for x in obj_task.child_ids]
for id in ids:
visited_branch = set()
visited_node = set()
res = self._check_cycle(cr, uid, id, visited_branch, visited_node, context=context)
if not res:
return False
if (obj_task.id in children_ids) or (obj_task.id in parent_ids):
return True
def _check_cycle(self, cr, uid, id, visited_branch, visited_node, context=None):
if id in visited_branch: #Cycle
return False
while(ids):
cr.execute('SELECT DISTINCT task_id '\
'FROM project_task_parent_rel '\
'WHERE parent_id IN %s', (tuple(ids),))
child_ids = map(lambda x: x[0], cr.fetchall())
c_ids = child_ids
if (list(set(parent_ids).intersection(set(c_ids)))) or (obj_task.id in c_ids):
if id in visited_node: #Already tested don't work one more time for nothing
return True
visited_branch.add(id)
visited_node.add(id)
#visit child using DFS
task = self.browse(cr, uid, id, context=context)
for child in task.child_ids:
res = self._check_cycle(cr, uid, child.id, visited_branch, visited_node, context=context)
if not res:
return False
while len(c_ids):
s_ids = self.search(cr, uid, [('parent_ids', 'in', c_ids)])
if (list(set(parent_ids).intersection(set(s_ids)))):
return False
c_ids = s_ids
ids = child_ids
visited_branch.remove(id)
return True
def _check_dates(self, cr, uid, ids, context=None):
@@ -478,9 +520,9 @@ class task(osv.osv):
start = obj_task.date_start or False
end = obj_task.date_end or False
if start and end :
if start > end:
if start > end:
return False
return True
return True
_constraints = [
(_check_recursion, 'Error ! You cannot create recursive tasks.', ['parent_ids']),
+561
View File
@@ -0,0 +1,561 @@
# Brazilian Portuguese translation for openobject-addons
# Copyright (c) 2011 Rosetta Contributors and Canonical Ltd 2011
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2011.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2011-01-11 11:16+0000\n"
"PO-Revision-Date: 2011-03-04 00:40+0000\n"
"Last-Translator: Emerson <Unknown>\n"
"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2011-03-04 04:45+0000\n"
"X-Generator: Launchpad (build 12351)\n"
#. module: report_webkit
#: field:ir.actions.report.xml,webkit_header:0
msgid "WebKit Header"
msgstr "Cabeçalho Webkit"
#. module: report_webkit
#: view:ir.actions.report.xml:0
msgid "Webkit Template (used if Report File is not found)"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "Tabloid 29 279.4 x 431.8 mm"
msgstr ""
#. module: report_webkit
#: model:ir.actions.act_window,name:report_webkit.action_header_img
#: model:ir.ui.menu,name:report_webkit.menu_header_img
msgid "Header IMG"
msgstr ""
#. module: report_webkit
#: field:res.company,lib_path:0
msgid "Webkit Executable Path"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "Ledger 28 431.8 x 279.4 mm"
msgstr ""
#. module: report_webkit
#: help:ir.header_img,type:0
msgid "Image type(png,gif,jpeg)"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "Executive 4 7.5 x 10 inches, 190.5 x 254 mm"
msgstr ""
#. module: report_webkit
#: field:ir.header_img,company_id:0
#: field:ir.header_webkit,company_id:0
msgid "Company"
msgstr "Empresa"
#. module: report_webkit
#: code:addons/report_webkit/webkit_report.py:84
#, python-format
msgid "path to Wkhtmltopdf is not absolute"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "DLE 26 110 x 220 mm"
msgstr "DLE 26 110 x 220 mm"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B7 21 88 x 125 mm"
msgstr "B7 21 88 x 125 mm"
#. module: report_webkit
#: code:addons/report_webkit/webkit_report.py:290
#: code:addons/report_webkit/webkit_report.py:304
#: code:addons/report_webkit/webkit_report.py:322
#: code:addons/report_webkit/webkit_report.py:338
#, python-format
msgid "Webkit render"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "Folio 27 210 x 330 mm"
msgstr ""
#. module: report_webkit
#: code:addons/report_webkit/webkit_report.py:67
#, python-format
msgid ""
"Please install executable on your system'+\n"
" ' (sudo apt-get install wkhtmltopdf) or "
"download it from here:'+\n"
" ' "
"http://code.google.com/p/wkhtmltopdf/downloads/list and set the'+\n"
" ' path to the executable on the Company form."
msgstr ""
#. module: report_webkit
#: help:ir.header_img,name:0
msgid "Name of Image"
msgstr "Nome da Imagem"
#. module: report_webkit
#: code:addons/report_webkit/webkit_report.py:78
#, python-format
msgid ""
"Wrong Wkhtmltopdf path set in company'+\n"
" 'Given path is not executable or path is "
"wrong"
msgstr ""
#. module: report_webkit
#: code:addons/report_webkit/webkit_report.py:151
#, python-format
msgid "Webkit raise an error"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "Legal 3 8.5 x 14 inches, 215.9 x 355.6 mm"
msgstr ""
#. module: report_webkit
#: model:ir.model,name:report_webkit.model_ir_header_webkit
msgid "ir.header_webkit"
msgstr "ir.header_webkit"
#. module: report_webkit
#: model:ir.actions.act_window,name:report_webkit.action_header_webkit
#: model:ir.ui.menu,name:report_webkit.menu_header_webkit
msgid "Header HTML"
msgstr "Cabeçalho HTML"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A4 0 210 x 297 mm, 8.26 x 11.69 inches"
msgstr "A4 0 210 x 297 mm, 8.26 x 11.69 polegadas"
#. module: report_webkit
#: view:report.webkit.actions:0
msgid "_Cancel"
msgstr "_Cancelar"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B2 17 500 x 707 mm"
msgstr "B2 17 500 x 707 mm"
#. module: report_webkit
#: model:ir.model,name:report_webkit.model_ir_header_img
msgid "ir.header_img"
msgstr "ir.header_img"
#. module: report_webkit
#: constraint:res.company:0
msgid "Error! You can not create recursive companies."
msgstr "Erro! Você não pode criar empresas recursivas."
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A0 5 841 x 1189 mm"
msgstr "A0 5 841 x 1189 mm"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "C5E 24 163 x 229 mm"
msgstr "C5E 24 163 x 229 mm"
#. module: report_webkit
#: field:ir.header_img,type:0
msgid "Type"
msgstr "Tipo"
#. module: report_webkit
#: code:addons/report_webkit/wizard/report_webkit_actions.py:134
#, python-format
msgid "Client Actions Connections"
msgstr ""
#. module: report_webkit
#: field:res.company,header_image:0
msgid "Available Images"
msgstr "Imagens Disponíveis"
#. module: report_webkit
#: field:ir.header_webkit,html:0
msgid "webkit header"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B1 15 707 x 1000 mm"
msgstr "B1 15 707 x 1000 mm"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A1 6 594 x 841 mm"
msgstr "A1 6 594 x 841 mm"
#. module: report_webkit
#: help:ir.actions.report.xml,webkit_header:0
msgid "The header linked to the report"
msgstr ""
#. module: report_webkit
#: code:addons/report_webkit/webkit_report.py:66
#, python-format
msgid "Wkhtmltopdf library path is not set in company"
msgstr ""
#. module: report_webkit
#: model:ir.module.module,description:report_webkit.module_meta_information
msgid ""
"This module adds a new Report Engine based on WebKit library (wkhtmltopdf) "
"to support reports designed in HTML + CSS.\n"
"The module structure and some code is inspired by the report_openoffice "
"module.\n"
"The module allows:\n"
" -HTML report definition\n"
" -Multi header support \n"
" -Multi logo\n"
" -Multi company support\n"
" -HTML and CSS-3 support (In the limit of the actual WebKIT version)\n"
" -JavaScript support \n"
" -Raw HTML debugger\n"
" -Book printing capabilities\n"
" -Margins definition \n"
" -Paper size definition\n"
"and much more\n"
"\n"
"Multiple headers and logos can be defined per company.\n"
"CSS style, header and footer body are defined per company\n"
"\n"
"The library to install can be found here\n"
"http://code.google.com/p/wkhtmltopdf/\n"
"The system libraries are available for Linux, Mac OS X i386 and Windows 32.\n"
"\n"
"After installing the wkhtmltopdf library on the OpenERP Server machine, you "
"need to set the\n"
"path to the wkthtmltopdf executable file on the Company.\n"
"\n"
"For a sample report see also the webkit_report_sample module, and this "
"video:\n"
" http://files.me.com/nbessi/06n92k.mov \n"
"\n"
"\n"
"TODO :\n"
"JavaScript support activation deactivation\n"
"Collated and book format support\n"
"Zip return for separated PDF\n"
"Web client WYSIWYG\n"
" "
msgstr ""
#. module: report_webkit
#: view:ir.actions.report.xml:0
#: view:res.company:0
msgid "Webkit"
msgstr "Webkit"
#. module: report_webkit
#: help:ir.header_webkit,format:0
msgid "Select Proper Paper size"
msgstr "Selecione o Tamanho de Papel Apropriado"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B5 1 176 x 250 mm, 6.93 x 9.84 inches"
msgstr "B5 1 176 x 250 mm, 6.93 x 9.84 polegadas"
#. module: report_webkit
#: view:ir.header_webkit:0
msgid "Content and styling"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A7 11 74 x 105 mm"
msgstr "A7 11 74 x 105 mm"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A6 10 105 x 148 mm"
msgstr "A6 10 105 x 148 mm"
#. module: report_webkit
#: help:ir.actions.report.xml,report_webkit_data:0
msgid "This template will be used if the main report file is not found"
msgstr ""
"Este modelo será usado se o arquivo de relatório principal não for encontrado"
#. module: report_webkit
#: field:ir.header_webkit,margin_top:0
msgid "Top Margin (mm)"
msgstr "Margem Superior (mm)"
#. module: report_webkit
#: code:addons/report_webkit/webkit_report.py:246
#, python-format
msgid "Please set a header in company settings"
msgstr ""
#. module: report_webkit
#: view:report.webkit.actions:0
msgid "_Ok"
msgstr "_Ok"
#. module: report_webkit
#: help:report.webkit.actions,print_button:0
msgid ""
"Check this to add a Print action for this Report in the sidebar of the "
"corresponding document types"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B3 18 353 x 500 mm"
msgstr "B3 18 353 x 500 mm"
#. module: report_webkit
#: help:ir.actions.report.xml,webkit_debug:0
msgid "Enable the webkit engine debugger"
msgstr ""
#. module: report_webkit
#: field:ir.header_img,img:0
msgid "Image"
msgstr "Imagem"
#. module: report_webkit
#: field:res.company,header_webkit:0
msgid "Available html"
msgstr "Html disponível"
#. module: report_webkit
#: help:report.webkit.actions,open_action:0
msgid ""
"Check this to view the newly added internal print action after creating it "
"(technical view) "
msgstr ""
#. module: report_webkit
#: view:res.company:0
msgid "Images"
msgstr "Imagens"
#. module: report_webkit
#: selection:ir.header_webkit,orientation:0
msgid "Portrait"
msgstr "Retrato"
#. module: report_webkit
#: selection:ir.header_webkit,orientation:0
msgid "Landscape"
msgstr "Paisagem"
#. module: report_webkit
#: view:ir.header_webkit:0
msgid "page setup"
msgstr "configuração de página"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B8 22 62 x 88 mm"
msgstr "B8 22 62 x 88 mm"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A2 7 420 x 594 mm"
msgstr "A2 7 420 x 594 mm"
#. module: report_webkit
#: field:report.webkit.actions,print_button:0
msgid "Add print button"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A9 13 37 x 52 mm"
msgstr "A9 13 37 x 52 mm"
#. module: report_webkit
#: model:ir.model,name:report_webkit.model_res_company
msgid "Companies"
msgstr "Empresas"
#. module: report_webkit
#: field:ir.header_webkit,margin_bottom:0
msgid "Bottom Margin (mm)"
msgstr "Margem Inferior (mm)"
#. module: report_webkit
#: model:ir.model,name:report_webkit.model_report_webkit_actions
msgid "Webkit Actions"
msgstr "Ações Webkit"
#. module: report_webkit
#: field:report.webkit.actions,open_action:0
msgid "Open added action"
msgstr ""
#. module: report_webkit
#: field:ir.header_webkit,margin_right:0
msgid "Right Margin (mm)"
msgstr "Margem Direita (mm)"
#. module: report_webkit
#: field:ir.header_webkit,orientation:0
msgid "Orientation"
msgstr "Orientação"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B6 20 125 x 176 mm"
msgstr "B6 20 125 x 176 mm"
#. module: report_webkit
#: help:ir.header_webkit,html:0
msgid "Set Webkit Report Header"
msgstr ""
#. module: report_webkit
#: field:ir.header_webkit,format:0
msgid "Paper size"
msgstr "Tamanho do papel"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid ":B10 16 31 x 44 mm"
msgstr ":B10 16 31 x 44 mm"
#. module: report_webkit
#: field:ir.header_webkit,css:0
msgid "Header CSS"
msgstr "Cabeçalho CSS"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B4 19 250 x 353 mm"
msgstr "B4 19 250 x 353 mm"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A3 8 297 x 420 mm"
msgstr "A3 8 297 x 420 mm"
#. module: report_webkit
#: code:addons/report_webkit/webkit_report.py:240
#, python-format
msgid ""
"'))\n"
" header = report_xml.webkit_header.html\n"
" footer = report_xml.webkit_header.footer_html\n"
" if not header and report_xml.header:\n"
" raise except_osv(\n"
" _('No header defined for this Webkit report!"
msgstr ""
#. module: report_webkit
#: help:res.company,lib_path:0
msgid "Complete (Absolute) path to the wkhtmltopdf executable."
msgstr ""
#. module: report_webkit
#: field:ir.header_webkit,footer_html:0
msgid "webkit footer"
msgstr ""
#. module: report_webkit
#: field:ir.actions.report.xml,webkit_debug:0
msgid "Webkit debug"
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "Letter 2 8.5 x 11 inches, 215.9 x 279.4 mm"
msgstr "Carta 2 8.5 x 11 polegadas, 215.9 x 279.4 mm"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B0 14 1000 x 1414 mm"
msgstr "B0 14 1000 x 1414 mm"
#. module: report_webkit
#: field:ir.actions.report.xml,report_webkit_data:0
msgid "Webkit Template"
msgstr "Modelo Webkit"
#. module: report_webkit
#: model:ir.module.module,shortdesc:report_webkit.module_meta_information
msgid "Webkit Report Engine"
msgstr ""
#. module: report_webkit
#: field:ir.header_img,name:0
#: field:ir.header_webkit,name:0
msgid "Name"
msgstr "Nome"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A5 9 148 x 210 mm"
msgstr "A5 9 148 x 210 mm"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "A8 12 52 x 74 mm"
msgstr "A8 12 52 x 74 mm"
#. module: report_webkit
#: model:ir.actions.act_window,name:report_webkit.wizard_ofdo_report_actions
#: view:report.webkit.actions:0
msgid "Add Print Buttons"
msgstr "Adicionar Botões de Impressão"
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "Comm10E 25 105 x 241 mm, U.S. Common 10 Envelope"
msgstr ""
#. module: report_webkit
#: code:addons/report_webkit/webkit_report.py:240
#, python-format
msgid "Webkit Report template not found !"
msgstr ""
#. module: report_webkit
#: field:ir.header_webkit,margin_left:0
msgid "Left Margin (mm)"
msgstr "Margem Esquerda (mm)"
#. module: report_webkit
#: view:res.company:0
msgid "Headers"
msgstr "Cabeçalhos"
#. module: report_webkit
#: help:ir.header_webkit,footer_html:0
msgid "Set Webkit Report Footer."
msgstr ""
#. module: report_webkit
#: selection:ir.header_webkit,format:0
msgid "B9 23 33 x 62 mm"
msgstr ""
#. module: report_webkit
#: model:ir.model,name:report_webkit.model_ir_actions_report_xml
msgid "ir.actions.report.xml"
msgstr ""