[MERGE] Merge with trunk addons branch main
bzr revid: mra@mra-laptop-20100624132251-3uf0qrtld583yc5q
This commit is contained in:
@@ -33,5 +33,4 @@ import product
|
||||
import sequence
|
||||
import company
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
@@ -18,12 +18,10 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
|
||||
{
|
||||
"name" : "Accounting and Financial Management",
|
||||
"version" : "1.1",
|
||||
"depends" : ["product", "analytic", "process"],
|
||||
"depends" : ["product", "analytic", "process","board"],
|
||||
"author" : "Tiny",
|
||||
"category": 'Generic Modules/Accounting',
|
||||
"description": """Financial and accounting module that covers:
|
||||
@@ -34,10 +32,15 @@
|
||||
Budgets
|
||||
Customer and Supplier Invoices
|
||||
Bank statements
|
||||
Reconciliation process by partner
|
||||
Creates a dashboards for accountants that includes:
|
||||
* List of uninvoiced quotations
|
||||
* Graph of aged receivables
|
||||
* Graph of aged incomes
|
||||
|
||||
The processes like maintaining of general ledger is done through the defined financial Journals (entry move line or
|
||||
grouping is maintained through journal) for a particular financial year and for preparation of vouchers there is a
|
||||
module named account_voucherss
|
||||
module named account_vouchers
|
||||
""",
|
||||
'website': 'http://www.openerp.com',
|
||||
'init_xml': [],
|
||||
@@ -82,6 +85,7 @@ module named account_voucherss
|
||||
'wizard/account_compare_account_balance_report_view.xml',
|
||||
'wizard/account_third_party_ledger.xml',
|
||||
'wizard/account_reconcile_view.xml',
|
||||
'wizard/account_reconcile_partner_process_view.xml',
|
||||
'wizard/account_automatic_reconcile_view.xml',
|
||||
'project/wizard/project_account_analytic_line_view.xml',
|
||||
'account_end_fy.xml',
|
||||
@@ -112,7 +116,10 @@ module named account_voucherss
|
||||
'report/account_report_view.xml',
|
||||
'report/account_analytic_report_view.xml',
|
||||
'report/account_account_report_view.xml',
|
||||
'report/account_analytic_entries_report_view.xml'
|
||||
'report/account_analytic_entries_report_view.xml',
|
||||
'board_account_view.xml',
|
||||
"wizard/account_pl_report_view.xml",
|
||||
"wizard/account_bs_report_view.xml"
|
||||
],
|
||||
'demo_xml': [
|
||||
#'demo/price_accuracy00.yml',
|
||||
@@ -121,10 +128,19 @@ module named account_voucherss
|
||||
'project/analytic_account_demo.xml',
|
||||
'demo/account_minimal.xml',
|
||||
'account_unit_test.xml',
|
||||
'board_account_demo.xml',
|
||||
],
|
||||
'test': [
|
||||
'test/account_customer_invoice.yml',
|
||||
'test/account_supplier_invoice.yml',
|
||||
'test/account_change_currency.yml',
|
||||
'test/chart_of_account.yml',
|
||||
'test/account_period_close.yml',
|
||||
'test/account_fiscalyear_close_state.yml',
|
||||
'test/account_invoice_state.yml',
|
||||
'test/account_use_model.yml',
|
||||
'test/account_validate_account_move.yml',
|
||||
# 'test/account_fiscalyear_close.yml',
|
||||
],
|
||||
'installable': True,
|
||||
'active': False,
|
||||
|
||||
+249
-161
@@ -18,21 +18,38 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
import time
|
||||
import netsvc
|
||||
|
||||
from osv import fields, osv
|
||||
import decimal_precision as dp
|
||||
|
||||
from tools.misc import currency
|
||||
from tools.translate import _
|
||||
import pooler
|
||||
from datetime import datetime
|
||||
from dateutil.relativedelta import relativedelta
|
||||
from operator import itemgetter
|
||||
|
||||
import netsvc
|
||||
import pooler
|
||||
from osv import fields, osv
|
||||
import decimal_precision as dp
|
||||
from tools.misc import currency
|
||||
from tools.translate import _
|
||||
from tools import config
|
||||
|
||||
def check_cycle(self, cr, uid, ids):
|
||||
""" climbs the ``self._table.parent_id`` chains for 100 levels or
|
||||
until it can't find any more parent(s)
|
||||
|
||||
Returns true if it runs out of parents (no cycle), false if
|
||||
it can recurse 100 times without ending all chains
|
||||
"""
|
||||
level = 100
|
||||
while len(ids):
|
||||
cr.execute('SELECT DISTINCT parent_id '\
|
||||
'FROM '+self._table+' '\
|
||||
'WHERE id IN %s '\
|
||||
'AND parent_id IS NOT NULL',(tuple(ids),))
|
||||
ids = map(itemgetter(0), cr.fetchall())
|
||||
if not level:
|
||||
return False
|
||||
level -= 1
|
||||
return True
|
||||
|
||||
class account_payment_term(osv.osv):
|
||||
_name = "account.payment.term"
|
||||
_description = "Payment Term"
|
||||
@@ -62,7 +79,7 @@ class account_payment_term(osv.osv):
|
||||
elif line.value == 'balance':
|
||||
amt = round(amount, prec)
|
||||
if amt:
|
||||
next_date = datetime.strptime(date_ref, '%y-%m-%d') + relativedelta(days=line.days)
|
||||
next_date = datetime.strptime(date_ref, '%Y-%m-%d') + relativedelta(days=line.days)
|
||||
if line.days2 < 0:
|
||||
next_date += relativedelta(day=line.days2)
|
||||
if line.days2 > 0:
|
||||
@@ -170,6 +187,7 @@ class account_account(osv.osv):
|
||||
_name = "account.account"
|
||||
_description = "Account"
|
||||
_parent_store = True
|
||||
logger = netsvc.Logger()
|
||||
|
||||
def _get_children_and_consol(self, cr, uid, ids, context={}):
|
||||
ids2=[]
|
||||
@@ -229,65 +247,87 @@ class account_account(osv.osv):
|
||||
ids3 = self._get_children_and_consol(cr, uid, ids3, context)
|
||||
return ids2 + ids3
|
||||
|
||||
def __compute(self, cr, uid, ids, field_names, arg, context={}, query=''):
|
||||
#compute the balance/debit/credit accordingly to the value of field_name for the given account ids
|
||||
mapping = {
|
||||
'balance': "COALESCE(SUM(l.debit),0) - COALESCE(SUM(l.credit), 0) as balance ",
|
||||
'debit': "COALESCE(SUM(l.debit), 0) as debit ",
|
||||
'credit': "COALESCE(SUM(l.credit), 0) as credit "
|
||||
}
|
||||
#get all the necessary accounts
|
||||
ids2 = self._get_children_and_consol(cr, uid, ids, context)
|
||||
#compute for each account the balance/debit/credit from the move lines
|
||||
accounts = {}
|
||||
if ids2:
|
||||
aml_query = self.pool.get('account.move.line')._query_get(cr, uid, context=context)
|
||||
def __compute(self, cr, uid, ids, field_names, arg=None, context=None,
|
||||
query='', query_params=()):
|
||||
""" compute the balance, debit and/or credit for the provided
|
||||
account ids
|
||||
Arguments:
|
||||
`ids`: account ids
|
||||
`field_names`: the fields to compute (a list of any of
|
||||
'balance', 'debit' and 'credit')
|
||||
`arg`: unused fields.function stuff
|
||||
`query`: additional query filter (as a string)
|
||||
`query_params`: parameters for the provided query string
|
||||
(__compute will handle their escaping) as a
|
||||
tuple
|
||||
"""
|
||||
mapping = {
|
||||
'balance': "COALESCE(SUM(l.debit),0) " \
|
||||
"- COALESCE(SUM(l.credit), 0) as balance",
|
||||
'debit': "COALESCE(SUM(l.debit), 0) as debit",
|
||||
'credit': "COALESCE(SUM(l.credit), 0) as credit"
|
||||
}
|
||||
#get all the necessary accounts
|
||||
children_and_consolidated = self._get_children_and_consol(cr, uid, ids, context=context)
|
||||
#compute for each account the balance/debit/credit from the move lines
|
||||
accounts = {}
|
||||
if children_and_consolidated:
|
||||
aml_query = self.pool.get('account.move.line')._query_get(cr, uid, context=context)
|
||||
|
||||
wheres = [""]
|
||||
if query.strip():
|
||||
wheres.append(query.strip())
|
||||
if aml_query.strip():
|
||||
wheres.append(aml_query.strip())
|
||||
query = " AND ".join(wheres)
|
||||
wheres = [""]
|
||||
if query.strip():
|
||||
wheres.append(query.strip())
|
||||
if aml_query.strip():
|
||||
wheres.append(aml_query.strip())
|
||||
filters = " AND ".join(wheres)
|
||||
self.logger.notifyChannel('addons.'+self._name, netsvc.LOG_DEBUG,
|
||||
'Filters: %s'%filters)
|
||||
# IN might not work ideally in case there are too many
|
||||
# children_and_consolidated, in that case join on a
|
||||
# values() e.g.:
|
||||
# SELECT l.account_id as id FROM account_move_line l
|
||||
# INNER JOIN (VALUES (id1), (id2), (id3), ...) AS tmp (id)
|
||||
# ON l.account_id = tmp.id
|
||||
# or make _get_children_and_consol return a query and join on that
|
||||
request = ("SELECT l.account_id as id, " +\
|
||||
' , '.join(map(mapping.__getitem__, field_names)) +
|
||||
" FROM account_move_line l" \
|
||||
" WHERE l.account_id IN %s " \
|
||||
+ filters +
|
||||
" GROUP BY l.account_id")
|
||||
params = (tuple(children_and_consolidated),) + query_params
|
||||
cr.execute(request, params)
|
||||
self.logger.notifyChannel('addons.'+self._name, netsvc.LOG_DEBUG,
|
||||
'Status: %s'%cr.statusmessage)
|
||||
|
||||
cr.execute("SELECT l.account_id as id, " +\
|
||||
' , '.join(map(lambda x: mapping[x], field_names)) +
|
||||
"FROM " \
|
||||
"account_move_line l " \
|
||||
"WHERE " \
|
||||
"l.account_id =ANY(%s) " \
|
||||
+ query +
|
||||
" GROUP BY l.account_id",(ids2,))
|
||||
for res in cr.dictfetchall():
|
||||
accounts[res['id']] = res
|
||||
|
||||
for res in cr.dictfetchall():
|
||||
accounts[res['id']] = res
|
||||
|
||||
|
||||
# consolidate accounts with direct children
|
||||
ids2.reverse()
|
||||
brs = list(self.browse(cr, uid, ids2, context=context))
|
||||
sums = {}
|
||||
while brs:
|
||||
current = brs[0]
|
||||
can_compute = True
|
||||
for child in current.child_id:
|
||||
if child.id not in sums:
|
||||
can_compute = False
|
||||
try:
|
||||
brs.insert(0, brs.pop(brs.index(child)))
|
||||
except ValueError:
|
||||
brs.insert(0, child)
|
||||
if can_compute:
|
||||
brs.pop(0)
|
||||
for fn in field_names:
|
||||
sums.setdefault(current.id, {})[fn] = accounts.get(current.id, {}).get(fn, 0.0)
|
||||
if current.child_id:
|
||||
sums[current.id][fn] += sum(sums[child.id][fn] for child in current.child_id)
|
||||
res = {}
|
||||
null_result = dict((fn, 0.0) for fn in field_names)
|
||||
for id in ids:
|
||||
res[id] = sums.get(id, null_result)
|
||||
return res
|
||||
# consolidate accounts with direct children
|
||||
children_and_consolidated.reverse()
|
||||
brs = list(self.browse(cr, uid, children_and_consolidated, context=context))
|
||||
sums = {}
|
||||
while brs:
|
||||
current = brs[0]
|
||||
can_compute = True
|
||||
for child in current.child_id:
|
||||
if child.id not in sums:
|
||||
can_compute = False
|
||||
try:
|
||||
brs.insert(0, brs.pop(brs.index(child)))
|
||||
except ValueError:
|
||||
brs.insert(0, child)
|
||||
if can_compute:
|
||||
brs.pop(0)
|
||||
for fn in field_names:
|
||||
sums.setdefault(current.id, {})[fn] = accounts.get(current.id, {}).get(fn, 0.0)
|
||||
if current.child_id:
|
||||
sums[current.id][fn] += sum(sums[child.id][fn] for child in current.child_id)
|
||||
res = {}
|
||||
null_result = dict((fn, 0.0) for fn in field_names)
|
||||
for id in ids:
|
||||
res[id] = sums.get(id, null_result)
|
||||
return res
|
||||
|
||||
def _get_company_currency(self, cr, uid, ids, field_name, arg, context={}):
|
||||
result = {}
|
||||
@@ -392,8 +432,10 @@ class account_account(osv.osv):
|
||||
if (obj_self in obj_self.child_consol_ids) or (p_id and (p_id is obj_self.id)):
|
||||
return False
|
||||
while(ids):
|
||||
cr.execute('select distinct child_id from account_account_consol_rel where parent_id =ANY(%s)',(ids,))
|
||||
child_ids = filter(None, map(lambda x: x[0], cr.fetchall()))
|
||||
cr.execute('SELECT DISTINCT child_id '\
|
||||
'FROM account_account_consol_rel '\
|
||||
'WHERE parent_id IN %s', (tuple(ids),))
|
||||
child_ids = map(itemgetter(0), cr.fetchall())
|
||||
c_ids = child_ids
|
||||
if (p_id and (p_id in c_ids)) or (obj_self.id in c_ids):
|
||||
return False
|
||||
@@ -509,8 +551,13 @@ class account_account(osv.osv):
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
if context is None:
|
||||
context = {}
|
||||
|
||||
if 'company_id' in vals:
|
||||
move_lines = self.pool.get('account.move.line').search(cr, uid, [('account_id', 'in', ids)])
|
||||
if move_lines:
|
||||
raise osv.except_osv(_('Warning !'), _('You cannot modify Company of account as its related record exist in Entry Lines'))
|
||||
if 'active' in vals and not vals['active']:
|
||||
self._check_moves(cr, uid, ids, "write", context)
|
||||
self._check_moves(cr, uid, ids, "write", context=context)
|
||||
if 'type' in vals.keys():
|
||||
self._check_allow_type_change(cr, uid, ids, vals['type'], context=context)
|
||||
return super(account_account, self).write(cr, uid, ids, vals, context=context)
|
||||
@@ -537,6 +584,9 @@ class account_journal_column(osv.osv):
|
||||
result = []
|
||||
cols = self.pool.get('account.move.line')._columns
|
||||
for col in cols:
|
||||
if col in ('period_id', 'journal_id'):
|
||||
continue
|
||||
|
||||
result.append( (col, cols[col].string) )
|
||||
result.sort()
|
||||
return result
|
||||
@@ -557,42 +607,46 @@ class account_journal(osv.osv):
|
||||
_name = "account.journal"
|
||||
_description = "Journal"
|
||||
_columns = {
|
||||
'name': fields.char('Journal Name', size=64, required=True, translate=True),
|
||||
'code': fields.char('Code', size=16),
|
||||
'type': fields.selection([('sale', 'Sale'), ('purchase', 'Purchase'), ('expense', 'Expense'), ('cash', 'Cash'), ('bank', 'Bank'), ('general', 'General'), ('situation', 'Situation')], 'Type', size=32, required=True,
|
||||
'name': fields.char('Journal Name', size=64, required=True, translate=True,help="Name of the journal"),
|
||||
'code': fields.char('Code', size=16,required=True,help="Code of the journal"),
|
||||
'type': fields.selection([('sale', 'Sale'),('sale_refund','Sale Refund'), ('purchase', 'Purchase'), ('purchase_refund','Purchase Refund'),('expense', 'Expense'), ('cash', 'Cash'), ('bank', 'Bank'), ('general', 'General'), ('situation', 'Situation')], 'Type', size=32, required=True,
|
||||
help="Select 'Sale' for Sale journal to be used at the time of making invoice."\
|
||||
" Select 'Purchase' for Purchase Journal to be used at the time of approving purchase order."\
|
||||
" Select 'Cash' to be used at the time of making payment."\
|
||||
" Select 'General' to be used at the time of stock input/output."\
|
||||
" Select 'Situation' to be used at the time of making vouchers."),
|
||||
'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')]),
|
||||
|
||||
'active': fields.boolean('Active', help="If the active field is set to true, it will allow you to hide the journal without removing it."),
|
||||
'view_id': fields.many2one('account.journal.view', 'View', required=True, help="Gives the view used when writing or browsing entries in this journal. The view tells Open ERP which fields should be visible, required or readonly and in which order. You can create your own view for a faster encoding in each journal."),
|
||||
'default_credit_account_id': fields.many2one('account.account', 'Default Credit Account', domain="[('type','!=','view')]"),
|
||||
'default_debit_account_id': fields.many2one('account.account', 'Default Debit Account', domain="[('type','!=','view')]"),
|
||||
'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 Open ERP which fields should be visible, required or readonly and in which order. You can create your own view for a faster encoding in each journal."),
|
||||
'default_credit_account_id': fields.many2one('account.account', 'Default Credit Account', domain="[('type','!=','view')]", help="It acts as a default account for credit amount"),
|
||||
'default_debit_account_id': fields.many2one('account.account', 'Default Debit Account', domain="[('type','!=','view')]", help="It acts as a default account for debit amount"),
|
||||
'centralisation': fields.boolean('Centralised counterpart', help="Check this box to determine that each entry of this journal won't create a new counterpart but will share the same counterpart. This is used in fiscal year closing."),
|
||||
'update_posted': fields.boolean('Allow Cancelling Entries'),
|
||||
'update_posted': fields.boolean('Allow Cancelling Entries', help="Check this box if you want to allow the cancellation the entries related to this journal or of the invoice related to this journal"),
|
||||
'group_invoice_lines': fields.boolean('Group invoice lines', help="If this box is checked, the system will try to group the accounting lines when generating them from invoices."),
|
||||
'sequence_id': fields.many2one('ir.sequence', 'Entry Sequence', help="The sequence gives the display order for a list of journals", required=True),
|
||||
'user_id': fields.many2one('res.users', 'User', help="The user responsible for this journal"),
|
||||
'groups_id': fields.many2many('res.groups', 'account_journal_group_rel', 'journal_id', 'group_id', 'Groups'),
|
||||
'currency': fields.many2one('res.currency', 'Currency', help='The currency used to enter statement'),
|
||||
'entry_posted': fields.boolean('Skip \'Draft\' State for Created Entries', help='Check this box if you don\'t want new account moves to pass through the \'draft\' state and instead goes directly to the \'posted state\' without any manual validation.'),
|
||||
'company_id': fields.many2one('res.company', 'Company', required=True,select=1),
|
||||
'company_id': fields.many2one('res.company', 'Company', required=True, select=1, help="Company related to this journal"),
|
||||
'invoice_sequence_id': fields.many2one('ir.sequence', 'Invoice Sequence', \
|
||||
help="The sequence used for invoice numbers in this journal."),
|
||||
'allow_date':fields.boolean('Check Date not in the Period', help= 'If set to True then do not accept the entry if the entry date is not into the period dates'),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'active': lambda *a: 1,
|
||||
'user_id': lambda self,cr,uid,context: uid,
|
||||
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
|
||||
}
|
||||
def write(self, cr, uid, ids, vals, context=None):
|
||||
obj=[]
|
||||
if 'company_id' in vals:
|
||||
move_lines = self.pool.get('account.move.line').search(cr, uid, [('journal_id', 'in', ids)])
|
||||
if move_lines:
|
||||
raise osv.except_osv(_('Warning !'), _('You cannot modify company of this journal as its related record exist in Entry Lines'))
|
||||
return super(account_journal, self).write(cr, uid, ids, vals, context=context)
|
||||
|
||||
def create(self, cr, uid, vals, context={}):
|
||||
journal_id = super(account_journal, self).create(cr, uid, vals, context)
|
||||
# journal_name = self.browse(cr, uid, [journal_id])[0].code
|
||||
@@ -606,11 +660,9 @@ class account_journal(osv.osv):
|
||||
# })
|
||||
return journal_id
|
||||
|
||||
def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=100):
|
||||
def name_search(self, cr, user, name, args=None, operator='ilike', context={}, limit=100):
|
||||
if not args:
|
||||
args = []
|
||||
if context is None:
|
||||
context = {}
|
||||
ids = []
|
||||
if name:
|
||||
ids = self.search(cr, user, [('code','ilike',name)]+ args, limit=limit, context=context)
|
||||
@@ -618,6 +670,15 @@ class account_journal(osv.osv):
|
||||
ids = self.search(cr, user, [('name',operator,name)]+ args, limit=limit, context=context)
|
||||
return self.name_get(cr, user, ids, context=context)
|
||||
|
||||
def onchange_type(self, cr, uid, ids, type):
|
||||
res={}
|
||||
for line in self.browse(cr, uid, ids):
|
||||
if type == 'situation':
|
||||
res= {'value':{'centralisation': True}}
|
||||
else:
|
||||
res= {'value':{'centralisation': False}}
|
||||
return res
|
||||
|
||||
account_journal()
|
||||
|
||||
class account_fiscalyear(osv.osv):
|
||||
@@ -710,7 +771,7 @@ class account_period(osv.osv):
|
||||
'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscal Year', required=True, states={'done':[('readonly',True)]}, select=True),
|
||||
'state': fields.selection([('draft','Draft'), ('done','Done')], 'State', readonly=True,
|
||||
help='When monthly periods are created. The state is \'Draft\'. At the end of monthly period it is in \'Done\' state.'),
|
||||
'company_id': fields.related('fiscalyear_id', 'company_id', type='many2one', relation='res.company', string='Company'),
|
||||
'company_id': fields.related('fiscalyear_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True)
|
||||
}
|
||||
_defaults = {
|
||||
'state': lambda *a: 'draft',
|
||||
@@ -771,7 +832,7 @@ class account_period(osv.osv):
|
||||
cr.execute('update account_period set state=%s where id=%s', (mode, id))
|
||||
return True
|
||||
|
||||
def name_search(self, cr, user, name, args=None, operator='ilike', context=None, limit=80):
|
||||
def name_search(self, cr, user, name, args=None, operator='ilike', context={}, limit=80):
|
||||
if args is None:
|
||||
args = []
|
||||
if context is None:
|
||||
@@ -783,6 +844,14 @@ class account_period(osv.osv):
|
||||
ids = self.search(cr, user, [('name',operator,name)]+ args, limit=limit)
|
||||
return self.name_get(cr, user, ids, context=context)
|
||||
|
||||
def write(self, cr, uid, ids, vals, context={}):
|
||||
obj=[]
|
||||
if 'company_id' in vals:
|
||||
move_lines = self.pool.get('account.move.line').search(cr, uid, [('period_id', 'in', ids)])
|
||||
if move_lines:
|
||||
raise osv.except_osv(_('Warning !'), _('You cannot modify company of this period as its related record exist in Entry Lines'))
|
||||
return super(account_period, self).write(cr, uid, ids, vals, context=context)
|
||||
|
||||
account_period()
|
||||
|
||||
class account_journal_period(osv.osv):
|
||||
@@ -808,7 +877,7 @@ class account_journal_period(osv.osv):
|
||||
'state': fields.selection([('draft','Draft'), ('printed','Printed'), ('done','Done')], 'State', required=True, readonly=True,
|
||||
help='When journal period is created. The state is \'Draft\'. If a report is printed it comes to \'Printed\' state. When all transactions are done, it comes in \'Done\' state.'),
|
||||
'fiscalyear_id': fields.related('period_id', 'fiscalyear_id', string='Fiscal Year', type='many2one', relation='account.fiscalyear'),
|
||||
'company_id' : fields.many2one('res.company', 'Company')
|
||||
'company_id': fields.related('journal_id', 'company_id', type='many2one', relation='res.company', string='Company')
|
||||
}
|
||||
|
||||
def _check(self, cr, uid, ids, context={}):
|
||||
@@ -882,7 +951,10 @@ class account_move(osv.osv):
|
||||
|
||||
def _amount_compute(self, cr, uid, ids, name, args, context, where =''):
|
||||
if not ids: return {}
|
||||
cr.execute('select move_id,sum(debit) from account_move_line where move_id =ANY(%s) group by move_id',(ids,))
|
||||
cr.execute( 'SELECT move_id, SUM(debit) '\
|
||||
'FROM account_move_line '\
|
||||
'WHERE move_id IN %s '\
|
||||
'GROUP BY move_id', (tuple(ids),))
|
||||
result = dict(cr.fetchall())
|
||||
for id in ids:
|
||||
result.setdefault(id, 0.0)
|
||||
@@ -981,7 +1053,10 @@ class account_move(osv.osv):
|
||||
if new_name:
|
||||
self.write(cr, uid, [move.id], {'name':new_name})
|
||||
|
||||
cr.execute('update account_move set state=%s where id =ANY(%s) ',('posted',ids,))
|
||||
cr.execute('UPDATE account_move '\
|
||||
'SET state=%s '\
|
||||
'WHERE id IN %s',
|
||||
('posted', tuple(ids),))
|
||||
else:
|
||||
raise osv.except_osv(_('Integrity Error !'), _('You can not validate a non-balanced entry !\nMake sure you have configured Payment Term properly !\nIt should contain atleast one Payment Term Line with type "Balance" !'))
|
||||
return True
|
||||
@@ -994,7 +1069,9 @@ class account_move(osv.osv):
|
||||
if not line.journal_id.update_posted:
|
||||
raise osv.except_osv(_('Error !'), _('You can not modify a posted entry of this journal !\nYou should set the journal to allow cancelling entries if you want to do that.'))
|
||||
if len(ids):
|
||||
cr.execute('update account_move set state=%s where id =ANY(%s)',('draft',ids,))
|
||||
cr.execute('UPDATE account_move '\
|
||||
'SET state=%s '\
|
||||
'WHERE id IN %s', ('draft', tuple(ids),))
|
||||
return True
|
||||
|
||||
def write(self, cr, uid, ids, vals, context={}):
|
||||
@@ -1066,6 +1143,7 @@ class account_move(osv.osv):
|
||||
return amount
|
||||
|
||||
def _centralise(self, cr, uid, move, mode, context=None):
|
||||
assert(mode in ('debit', 'credit'), 'Invalid Mode') #to prevent sql injection
|
||||
if context is None:
|
||||
context = {}
|
||||
|
||||
@@ -1113,7 +1191,7 @@ class account_move(osv.osv):
|
||||
else:
|
||||
line_id2 = 0
|
||||
|
||||
cr.execute('select sum('+mode+') from account_move_line where move_id=%s and id<>%s', (move.id, line_id2))
|
||||
cr.execute('SELECT SUM(%s) FROM account_move_line WHERE move_id=%%s AND id!=%%s' % (mode,), (move.id, line_id2))
|
||||
result = cr.fetchone()[0] or 0.0
|
||||
cr.execute('update account_move_line set '+mode2+'=%s where id=%s', (result, line_id))
|
||||
return True
|
||||
@@ -1267,24 +1345,26 @@ class account_tax_code(osv.osv):
|
||||
|
||||
This code is used for some tax declarations.
|
||||
"""
|
||||
def _sum(self, cr, uid, ids, name, args, context, where =''):
|
||||
ids2 = self.search(cr, uid, [('parent_id', 'child_of', ids)])
|
||||
def _sum(self, cr, uid, ids, name, args, context,where ='', where_params=()):
|
||||
parent_ids = tuple(self.search(cr, uid, [('parent_id', 'child_of', ids)]))
|
||||
if context.get('based_on', 'invoices') == 'payments':
|
||||
cr.execute('SELECT line.tax_code_id, sum(line.tax_amount) \
|
||||
FROM account_move_line AS line, \
|
||||
account_move AS move \
|
||||
LEFT JOIN account_invoice invoice ON \
|
||||
(invoice.move_id = move.id) \
|
||||
WHERE line.tax_code_id =ANY(%s) '+where+' \
|
||||
WHERE line.tax_code_id IN %s '+where+' \
|
||||
AND move.id = line.move_id \
|
||||
AND ((invoice.state = \'paid\') \
|
||||
OR (invoice.id IS NULL)) \
|
||||
GROUP BY line.tax_code_id',(ids2,))
|
||||
GROUP BY line.tax_code_id',
|
||||
(parent_ids,)+where_params)
|
||||
else:
|
||||
cr.execute('SELECT line.tax_code_id, sum(line.tax_amount) \
|
||||
FROM account_move_line AS line \
|
||||
WHERE line.tax_code_id =ANY(%s) '+where+' \
|
||||
GROUP BY line.tax_code_id',(ids2,))
|
||||
WHERE line.tax_code_id IN %s '+where+' \
|
||||
GROUP BY line.tax_code_id',
|
||||
(parent_ids,)+where_params)
|
||||
res=dict(cr.fetchall())
|
||||
for record in self.browse(cr, uid, ids, context):
|
||||
def _rec_get(record):
|
||||
@@ -1301,12 +1381,14 @@ class account_tax_code(osv.osv):
|
||||
else:
|
||||
fiscalyear_id = self.pool.get('account.fiscalyear').find(cr, uid, exception=False)
|
||||
where = ''
|
||||
where_params = ()
|
||||
if fiscalyear_id:
|
||||
pids = map(lambda x: str(x.id), self.pool.get('account.fiscalyear').browse(cr, uid, fiscalyear_id).period_ids)
|
||||
if pids:
|
||||
where = ' and period_id in (' + (','.join(pids))+')'
|
||||
where = ' and period_id IN %s'
|
||||
where_params = (tuple(pids),)
|
||||
return self._sum(cr, uid, ids, name, args, context,
|
||||
where=where)
|
||||
where=where, where_params=where_params)
|
||||
|
||||
def _sum_period(self, cr, uid, ids, name, args, context):
|
||||
if 'period_id' in context and context['period_id']:
|
||||
@@ -1317,7 +1399,7 @@ class account_tax_code(osv.osv):
|
||||
return dict.fromkeys(ids, 0.0)
|
||||
period_id = period_id[0]
|
||||
return self._sum(cr, uid, ids, name, args, context,
|
||||
where=' and line.period_id='+str(period_id))
|
||||
where=' and line.period_id=%s', where_params=(period_id,))
|
||||
|
||||
_name = 'account.tax.code'
|
||||
_description = 'Tax Code'
|
||||
@@ -1365,16 +1447,6 @@ class account_tax_code(osv.osv):
|
||||
'sign': lambda *args: 1.0,
|
||||
'notprintable': lambda *a: False,
|
||||
}
|
||||
def _check_recursion(self, cr, uid, ids):
|
||||
level = 100
|
||||
while len(ids):
|
||||
cr.execute('select distinct parent_id from account_tax_code where id =ANY(%s)',(ids,))
|
||||
ids = filter(None, map(lambda x:x[0], cr.fetchall()))
|
||||
if not level:
|
||||
return False
|
||||
level -= 1
|
||||
return True
|
||||
|
||||
|
||||
def copy(self, cr, uid, id, default=None, context=None):
|
||||
if default is None:
|
||||
@@ -1383,6 +1455,7 @@ class account_tax_code(osv.osv):
|
||||
default.update({'line_ids': []})
|
||||
return super(account_tax_code, self).copy(cr, uid, id, default, context)
|
||||
|
||||
_check_recursion = check_cycle
|
||||
_constraints = [
|
||||
(_check_recursion, 'Error ! You can not create recursive accounts.', ['parent_id'])
|
||||
]
|
||||
@@ -1566,8 +1639,42 @@ class account_tax(osv.osv):
|
||||
cur_price_unit+=amount2
|
||||
return res
|
||||
|
||||
def compute(self, cr, uid, taxes, price_unit, quantity, address_id=None, product=None, partner=None):
|
||||
def compute_all(self, cr, uid, taxes, price_unit, quantity, address_id=None, product=None, partner=None):
|
||||
"""
|
||||
RETURN: {
|
||||
'total': 0.0, # Total without taxes
|
||||
'total_included: 0.0, # Total with taxes
|
||||
'taxes': [] # List of taxes, see compute for the format
|
||||
}
|
||||
"""
|
||||
precision = self.pool.get('decimal.precision').precision_get(cr, uid, 'Account')
|
||||
totalin = totalex = round(price_unit * quantity, precision)
|
||||
tin = []
|
||||
tex = []
|
||||
for tax in taxes:
|
||||
if tax.price_include:
|
||||
tin.append(tax)
|
||||
else:
|
||||
tex.append(tax)
|
||||
tin = self.compute_inv(cr, uid, tin, price_unit, quantity, address_id=address_id, product=product, partner=partner)
|
||||
for r in tin:
|
||||
totalex -= r['amount']
|
||||
tex = self._compute(cr, uid, tex, totalex/quantity, quantity, address_id=address_id, product=product, partner=partner)
|
||||
for r in tex:
|
||||
totalin += r['amount']
|
||||
return {
|
||||
'total': totalex,
|
||||
'total_included': totalin,
|
||||
'taxes': tin + tex
|
||||
}
|
||||
|
||||
def compute(self, cr, uid, taxes, price_unit, quantity, address_id=None, product=None, partner=None):
|
||||
logger = netsvc.Logger()
|
||||
logger.notifyChannel("warning", netsvc.LOG_WARNING,
|
||||
"Deprecated, use compute_all(...)['taxes'] instead of compute(...) to manage prices with tax included")
|
||||
return self._compute(cr, uid, taxes, price_unit, quantity, address_id, product, partner)
|
||||
|
||||
def _compute(self, cr, uid, taxes, price_unit, quantity, address_id=None, product=None, partner=None):
|
||||
"""
|
||||
Compute tax values for given PRICE_UNIT, QUANTITY and a buyer/seller ADDRESS_ID.
|
||||
|
||||
@@ -1584,7 +1691,6 @@ class account_tax(osv.osv):
|
||||
else:
|
||||
r['amount'] = round(r['amount'] * quantity, self.pool.get('decimal.precision').precision_get(cr, uid, 'Account'))
|
||||
total += r['amount']
|
||||
|
||||
return res
|
||||
|
||||
def _unit_compute_inv(self, cr, uid, taxes, price_unit, address_id=None, product=None, partner=None):
|
||||
@@ -1697,7 +1803,7 @@ class account_model(osv.osv):
|
||||
'ref': fields.char('Reference', size=64),
|
||||
'journal_id': fields.many2one('account.journal', 'Journal', required=True),
|
||||
'lines_id': fields.one2many('account.model.line', 'model_id', 'Model Entries'),
|
||||
'legend' :fields.text('Legend',readonly=True,size=100),
|
||||
'legend' :fields.text('Legend', readonly=True, size=100),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
@@ -1707,7 +1813,7 @@ class account_model(osv.osv):
|
||||
move_ids = []
|
||||
for model in self.browse(cr, uid, ids, context):
|
||||
context.update({'date':datas['date']})
|
||||
period_id = self.pool.get('account.period').find(cr, uid, dt=context.get('date',False))
|
||||
period_id = self.pool.get('account.period').find(cr, uid, dt=context.get('date', False))
|
||||
if not period_id:
|
||||
raise osv.except_osv(_('No period found !'), _('Unable to find a valid period !'))
|
||||
period_id = period_id[0]
|
||||
@@ -1909,9 +2015,9 @@ class account_account_template(osv.osv):
|
||||
'reconcile': fields.boolean('Allow Reconciliation', help="Check this option if you want the user to reconcile entries in this account."),
|
||||
'shortcut': fields.char('Shortcut', size=12),
|
||||
'note': fields.text('Note'),
|
||||
'parent_id': fields.many2one('account.account.template','Parent Account Template', ondelete='cascade'),
|
||||
'child_parent_ids':fields.one2many('account.account.template','parent_id','Children'),
|
||||
'tax_ids': fields.many2many('account.tax.template', 'account_account_template_tax_rel','account_id','tax_id', 'Default Taxes'),
|
||||
'parent_id': fields.many2one('account.account.template', 'Parent Account Template', ondelete='cascade'),
|
||||
'child_parent_ids':fields.one2many('account.account.template', 'parent_id', 'Children'),
|
||||
'tax_ids': fields.many2many('account.tax.template', 'account_account_template_tax_rel', 'account_id', 'tax_id', 'Default Taxes'),
|
||||
'nocreate': fields.boolean('Optional create', help="If checked, the new chart of accounts will not contain this by default."),
|
||||
}
|
||||
|
||||
@@ -1921,16 +2027,7 @@ class account_account_template(osv.osv):
|
||||
'nocreate': lambda *a: False,
|
||||
}
|
||||
|
||||
def _check_recursion(self, cr, uid, ids):
|
||||
level = 100
|
||||
while len(ids):
|
||||
cr.execute('select parent_id from account_account_template where id =ANY(%s)',(ids,))
|
||||
ids = filter(None, map(lambda x:x[0], cr.fetchall()))
|
||||
if not level:
|
||||
return False
|
||||
level -= 1
|
||||
return True
|
||||
|
||||
_check_recursion = check_cycle
|
||||
_constraints = [
|
||||
(_check_recursion, 'Error ! You can not create recursive account templates.', ['parent_id'])
|
||||
]
|
||||
@@ -1960,14 +2057,14 @@ class account_add_tmpl_wizard(osv.osv_memory):
|
||||
acc_obj=self.pool.get('account.account')
|
||||
tmpl_obj=self.pool.get('account.account.template')
|
||||
#print "Searching for ",context
|
||||
tids=tmpl_obj.read(cr, uid, [context['tmpl_ids']],['parent_id'])
|
||||
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'])
|
||||
ptids = tmpl_obj.read(cr, uid, [tids[0]['parent_id'][0]], ['code'])
|
||||
res = None
|
||||
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'])])
|
||||
res = acc_obj.search(cr, uid, [('code','=',ptids[0]['code'])])
|
||||
|
||||
return res and res[0] or False
|
||||
|
||||
@@ -1981,9 +2078,9 @@ class account_add_tmpl_wizard(osv.osv_memory):
|
||||
def action_create(self,cr,uid,ids,context=None):
|
||||
acc_obj=self.pool.get('account.account')
|
||||
tmpl_obj=self.pool.get('account.account.template')
|
||||
data= self.read(cr,uid,ids)
|
||||
company_id = acc_obj.read(cr,uid,[data[0]['cparent_id']],['company_id'])[0]['company_id'][0]
|
||||
account_template = tmpl_obj.browse(cr,uid,context['tmpl_ids'])
|
||||
data= self.read(cr, uid, ids)
|
||||
company_id = acc_obj.read(cr, uid, [data[0]['cparent_id']], ['company_id'])[0]['company_id'][0]
|
||||
account_template = tmpl_obj.browse(cr, uid, context['tmpl_ids'])
|
||||
#tax_ids = []
|
||||
#for tax in account_template.tax_ids:
|
||||
# tax_ids.append(tax_template_ref[tax.id])
|
||||
@@ -2002,10 +2099,10 @@ class account_add_tmpl_wizard(osv.osv_memory):
|
||||
'company_id': company_id,
|
||||
}
|
||||
# print "Creating:", vals
|
||||
new_account = acc_obj.create(cr,uid,vals)
|
||||
new_account = acc_obj.create(cr, uid, vals)
|
||||
return {'type':'state', 'state': 'end' }
|
||||
|
||||
def action_cancel(self,cr,uid,ids,context=None):
|
||||
def action_cancel(self, cr, uid, ids, context=None):
|
||||
return { 'type': 'state', 'state': 'end' }
|
||||
|
||||
account_add_tmpl_wizard()
|
||||
@@ -2040,16 +2137,7 @@ class account_tax_code_template(osv.osv):
|
||||
return [(x['id'], (x['code'] and x['code'] + ' - ' or '') + x['name']) \
|
||||
for x in reads]
|
||||
|
||||
def _check_recursion(self, cr, uid, ids):
|
||||
level = 100
|
||||
while len(ids):
|
||||
cr.execute('select distinct parent_id from account_tax_code_template where id =ANY(%s)',(ids,))
|
||||
ids = filter(None, map(lambda x:x[0], cr.fetchall()))
|
||||
if not level:
|
||||
return False
|
||||
level -= 1
|
||||
return True
|
||||
|
||||
_check_recursion = check_cycle
|
||||
_constraints = [
|
||||
(_check_recursion, 'Error ! You can not create recursive Tax Codes.', ['parent_id'])
|
||||
]
|
||||
@@ -2212,11 +2300,11 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
||||
_inherit = 'res.config'
|
||||
|
||||
_columns = {
|
||||
'company_id':fields.many2one('res.company','Company',required=True),
|
||||
'chart_template_id': fields.many2one('account.chart.template','Chart Template',required=True),
|
||||
'bank_accounts_id': fields.one2many('account.bank.accounts.wizard', 'bank_account_id', 'Bank Accounts',required=True),
|
||||
'code_digits':fields.integer('# of Digits',required=True,help="No. of Digits to use for account code"),
|
||||
'seq_journal':fields.boolean('Separated Journal Sequences',help="Check this box if you want to use a different sequence for each created journal. Otherwise, all will use the same sequence."),
|
||||
'company_id':fields.many2one('res.company', 'Company', required=True),
|
||||
'chart_template_id': fields.many2one('account.chart.template', 'Chart Template', required=True),
|
||||
'bank_accounts_id': fields.one2many('account.bank.accounts.wizard', 'bank_account_id', 'Bank Accounts', required=True),
|
||||
'code_digits':fields.integer('# of Digits', required=True, help="No. of Digits to use for account code"),
|
||||
'seq_journal':fields.boolean('Separated Journal Sequences', help="Check this box if you want to use a different sequence for each created journal. Otherwise, all will use the same sequence."),
|
||||
}
|
||||
|
||||
def _get_chart(self, cr, uid, context={}):
|
||||
@@ -2225,14 +2313,14 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
||||
return ids[0]
|
||||
return False
|
||||
_defaults = {
|
||||
'company_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr,uid,[uid],c)[0].company_id.id,
|
||||
'company_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr, uid, [uid], c)[0].company_id.id,
|
||||
'chart_template_id': _get_chart,
|
||||
'code_digits': lambda *a:6,
|
||||
'seq_journal': True
|
||||
}
|
||||
|
||||
def execute(self, cr, uid, ids, context=None):
|
||||
obj_multi = self.browse(cr,uid,ids[0])
|
||||
obj_multi = self.browse(cr, uid, ids[0])
|
||||
obj_acc = self.pool.get('account.account')
|
||||
obj_acc_tax = self.pool.get('account.tax')
|
||||
obj_journal = self.pool.get('account.journal')
|
||||
@@ -2264,7 +2352,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
||||
'company_id': company_id,
|
||||
'sign': tax_code_template.sign,
|
||||
}
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr,uid,vals)
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr, uid, vals)
|
||||
#recording the new tax code to do the mapping
|
||||
tax_code_template_ref[tax_code_template.id] = new_tax_code
|
||||
|
||||
@@ -2297,7 +2385,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
||||
'company_id': company_id,
|
||||
'type_tax_use': tax.type_tax_use
|
||||
}
|
||||
new_tax = obj_acc_tax.create(cr,uid,vals_tax)
|
||||
new_tax = obj_acc_tax.create(cr, uid, vals_tax)
|
||||
#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,
|
||||
@@ -2335,7 +2423,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
||||
'tax_ids': [(6,0,tax_ids)],
|
||||
'company_id': company_id,
|
||||
}
|
||||
new_account = obj_acc.create(cr,uid,vals)
|
||||
new_account = obj_acc.create(cr, uid, vals)
|
||||
acc_template_ref[account_template.id] = new_account
|
||||
#reactivate the parent_store functionnality on account_account
|
||||
self.pool._init = False
|
||||
@@ -2351,11 +2439,11 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
||||
# Creating Journals
|
||||
vals_journal={}
|
||||
view_id = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Journal View')])[0]
|
||||
seq_id = obj_sequence.search(cr,uid,[('name','=','Account Journal')])[0]
|
||||
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 = obj_sequence.search(cr, uid, [('name','=','Sale Journal')])[0]
|
||||
seq_id_purchase = obj_sequence.search(cr, uid, [('name','=','Purchase Journal')])[0]
|
||||
else:
|
||||
seq_id_sale = seq_id
|
||||
seq_id_purchase = seq_id
|
||||
@@ -2387,8 +2475,8 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
||||
obj_journal.create(cr,uid,vals_journal)
|
||||
|
||||
# Bank Journals
|
||||
view_id_cash = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Cash Journal View')])[0]
|
||||
view_id_cur = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Multi-Currency Cash Journal View')])[0]
|
||||
view_id_cash = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Cash Journal View')])[0]
|
||||
view_id_cur = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Multi-Currency Cash Journal View')])[0]
|
||||
ref_acc_bank = obj_multi.chart_template_id.bank_account_view_id
|
||||
|
||||
current_num = 1
|
||||
@@ -2466,7 +2554,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
||||
#create the property
|
||||
property_obj.create(cr, uid, vals)
|
||||
|
||||
fp_ids = obj_fiscal_position_template.search(cr, uid,[('chart_template_id', '=', obj_multi.chart_template_id.id)])
|
||||
fp_ids = obj_fiscal_position_template.search(cr, uid, [('chart_template_id', '=', obj_multi.chart_template_id.id)])
|
||||
|
||||
if fp_ids:
|
||||
for position in obj_fiscal_position_template.browse(cr, uid, fp_ids):
|
||||
|
||||
@@ -92,9 +92,9 @@ class account_analytic_line(osv.osv):
|
||||
company_id=company_obj._company_default_get(cr, uid, 'account.analytic.line', context)
|
||||
|
||||
# Compute based on pricetype
|
||||
pricetype=self.pool.get('product.price.type').browse(cr,uid,company_obj.browse(cr,uid,company_id).property_valuation_price_type.id)
|
||||
pricetype=self.pool.get('product.price.type').browse(cr, uid, company_obj.browse(cr,uid,company_id).property_valuation_price_type.id)
|
||||
# Take the company currency as the reference one
|
||||
context['currency_id']=company_obj.browse(cr,uid,company_id).currency_id.id
|
||||
context['currency_id']=company_obj.browse(cr, uid, company_id).currency_id.id
|
||||
amount_unit=prod.price_get(pricetype.field, context)[prod.id]
|
||||
amount=amount_unit*unit_amount or 1.0
|
||||
return {'value': {
|
||||
|
||||
@@ -32,7 +32,7 @@ class account_bank_statement(osv.osv):
|
||||
mod_obj = self.pool.get('ir.model.data')
|
||||
if context is None:
|
||||
context = {}
|
||||
model_data_ids = mod_obj.search(cr,uid,[('model','=','ir.ui.view'),('name','=','view_account_statement_from_invoice')], context=context)
|
||||
model_data_ids = mod_obj.search(cr, uid, [('model','=','ir.ui.view'),('name','=','view_account_statement_from_invoice')], context=context)
|
||||
resource_id = mod_obj.read(cr, uid, model_data_ids, fields=['res_id'], context=context)[0]['res_id']
|
||||
context.update({'statement_id': ids[0]})
|
||||
return {
|
||||
@@ -45,7 +45,7 @@ class account_bank_statement(osv.osv):
|
||||
'type': 'ir.actions.act_window',
|
||||
'target': 'new',
|
||||
'nodestroy': True
|
||||
}
|
||||
}
|
||||
|
||||
def _default_journal_id(self, cr, uid, context={}):
|
||||
if context.get('journal_id', False):
|
||||
@@ -556,9 +556,9 @@ account_bank_statement_reconcile_line()
|
||||
|
||||
class account_bank_statement_line(osv.osv):
|
||||
|
||||
def onchange_partner_id(self, cursor, user, line_id, partner_id, type, currency_id,
|
||||
context={}):
|
||||
def onchange_partner_id(self, cursor, user, line_id, partner_id, type, currency_id, context={}):
|
||||
res = {'value': {}}
|
||||
|
||||
if not partner_id:
|
||||
return res
|
||||
line = self.browse(cursor, user, line_id)
|
||||
@@ -591,6 +591,10 @@ class account_bank_statement_line(osv.osv):
|
||||
balance = res_currency_obj.compute(cursor, user, company_currency_id,
|
||||
currency_id, balance, context=context)
|
||||
res['value']['amount'] = balance
|
||||
|
||||
if context.get('amount', 0) > 0:
|
||||
res['value']['amount'] = context.get('amount')
|
||||
|
||||
return res
|
||||
|
||||
def _reconcile_amount(self, cursor, user, ids, name, args, context=None):
|
||||
|
||||
@@ -19,26 +19,26 @@
|
||||
position="attributes">
|
||||
<attribute name="string">You can enhance OpenERP's basic accounting support with a few additional OpenERP applications.</attribute>
|
||||
</xpath>
|
||||
<xpath expr="//button[@string='Install Modules']" position="attributes">
|
||||
<xpath expr="//button[@string='Install Modules']" position="attributes">
|
||||
<attribute name="string">Configure</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='rowspan'>23</attribute>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
<group colspan="8">
|
||||
<group colspan="4" height="450" width="600">
|
||||
</xpath>
|
||||
<group colspan="8">
|
||||
<group colspan="4" height="450" width="600">
|
||||
<field name="charts"/>
|
||||
<group colspan="4">
|
||||
<separator col="4" colspan="4" string="Configure Fiscal Year"/>
|
||||
<separator col="4" colspan="4" string="Configure Fiscal Year"/>
|
||||
<field name="date_start" on_change="on_change_start_date(date_start)"/>
|
||||
<field name="date_stop"/>
|
||||
<field name="period" colspan="4"/>
|
||||
</group>
|
||||
<group colspan="4" attrs="{'invisible':[('charts','!=','configurable')]}">
|
||||
<separator col="4" colspan="4" string="Bank and Cost Account"/>
|
||||
<field colspan="4" mode="tree" name="bank_accounts_id" nolabel="1" widget="one2many_list">
|
||||
<form string="">
|
||||
<separator col="4" colspan="4" string="Bank and Cost Account"/>
|
||||
<field colspan="4" mode="tree" 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"/>
|
||||
@@ -51,15 +51,15 @@
|
||||
</field>
|
||||
</group>
|
||||
<group colspan="4" attrs="{'invisible':[('charts','!=','configurable')]}">
|
||||
<field name="sale_tax" colspan="2" on_change="on_change_tax(sale_tax)"/>
|
||||
<field name="purchase_tax" colspan="2" />
|
||||
<field name="sale_tax" colspan="2" on_change="on_change_tax(sale_tax)"/>
|
||||
<field name="purchase_tax" colspan="2" />
|
||||
</group>
|
||||
<group colspan="4" groups="base.group_extended">
|
||||
<separator col="4" colspan="4" string="Install Extra Account Module"/>
|
||||
<field name="account_analytic_plans"/>
|
||||
<field name="account_payment"/>
|
||||
<field name="account_followup"/>
|
||||
<field name="account_asset"/>
|
||||
<separator col="4" colspan="4" string="Install Extra Account Module"/>
|
||||
<field name="account_analytic_plans"/>
|
||||
<field name="account_payment"/>
|
||||
<field name="account_followup"/>
|
||||
<field name="account_asset"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
@@ -88,12 +88,12 @@
|
||||
<field name="name">account_installer_action_replace</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="inherit_id" ref="base.ir_actions_todo_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@string='Launch']" position="replace">
|
||||
<button name="%(action_account_installer)d" states="open,skip" string="Launch" type="action" icon="gtk-execute" help="Launch Configuration Wizard"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@string='Launch']" position="replace">
|
||||
<button name="%(action_account_installer)d" states="open,skip" string="Launch" type="action" icon="gtk-execute" help="Launch Configuration Wizard"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -53,7 +53,7 @@
|
||||
<notebook>
|
||||
<page string="Line">
|
||||
<field name="product_id" on_change="product_id_change(product_id, uos_id, quantity, name, parent.type, parent.partner_id, parent.fiscal_position, price_unit, parent.address_invoice_id, parent.currency_id, {'company_id': parent.company_id})"/>
|
||||
<field name="uos_id"/>
|
||||
<field name="uos_id" widget="selection" on_change="uos_id_change(product_id, uos_id, quantity, name, parent.type, parent.partner_id, parent.fiscal_position, price_unit, parent.address_invoice_id, parent.currency_id, {'company_id': parent.company_id})"/>
|
||||
<field name="quantity"/>
|
||||
<field name="price_unit"/>
|
||||
<field name="discount"/>
|
||||
@@ -63,6 +63,7 @@
|
||||
<field domain="[('type','<>','view'), ('company_id', '=', parent.company_id)]" name="account_analytic_id" groups="base.group_user,base.group_extended"/>
|
||||
<newline/>
|
||||
<field name="price_subtotal"/>
|
||||
|
||||
<field name="company_id" groups="base.group_multi_company" widget="selection"/>
|
||||
<field colspan="4" name="invoice_line_tax_id" context="{'type':parent.type}" domain="[('parent_id','=',False),('company_id', '=', parent.company_id)]"/>
|
||||
</page>
|
||||
@@ -146,7 +147,7 @@
|
||||
<field name="number" readonly="1"/>
|
||||
<field name="type" invisible="1"/>
|
||||
<field name="currency_id" domain="[('company_id','=', company_id)]" on_change="onchange_currency_id(currency_id, company_id)" width="50"/>
|
||||
<button name="%(action_account_change_currency)d" type="action" icon="gtk-apply" string="Change Currency"/>
|
||||
<button name="%(action_account_change_currency)d" type="action" icon="gtk-apply" string="Change"/>
|
||||
<newline/>
|
||||
<field name="partner_id" domain="[('supplier','=', 1)]" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank,company_id)" context="{'default_customer': 0}"/>
|
||||
<field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
|
||||
@@ -192,7 +193,7 @@
|
||||
</field>
|
||||
</group>
|
||||
<group col="4" colspan="2">
|
||||
<button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" icon="gtk-apply"/>
|
||||
<button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" icon="terp-stock_format-scientific"/>
|
||||
<field name="amount_untaxed"/>
|
||||
<label string="" colspan="2"/>
|
||||
<field name="amount_tax"/>
|
||||
@@ -201,12 +202,12 @@
|
||||
<field name="state"/>
|
||||
<field name="residual"/>
|
||||
<group col="3" colspan="4">
|
||||
<button name="invoice_open" states="draft,proforma2" string="Validate" icon="gtk-apply"/>
|
||||
<button name="invoice_open" states="draft,proforma2" string="Validate" icon="terp-camera_test"/>
|
||||
<button name="%(action_account_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="gtk-ok"/>
|
||||
<button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
|
||||
<button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="gtk-convert"/>
|
||||
<button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="terp-gtk-stop"/>
|
||||
<button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="stock_effects-object-colorize"/>
|
||||
<button name="%(action_account_state_open)d" type='action' string='Re-Open' states='paid' icon="gtk-convert"/>
|
||||
<button name="%(action_account_invoice_refund)d" type='action' string='Credit Note' states='paid' icon="gtk-execute"/>
|
||||
<button name="%(action_account_invoice_refund)d" type='action' string='Credit Note' states='paid' icon="terp-dolar"/>
|
||||
</group>
|
||||
</group>
|
||||
</page>
|
||||
@@ -219,7 +220,8 @@
|
||||
<field name="name"/>
|
||||
<newline/>
|
||||
<field name="origin" groups="base.group_extended"/>
|
||||
<field colspan="4" domain="[('partner_id','=',partner_id)]" name="address_contact_id" groups="base.group_extended"/>
|
||||
<field domain="[('partner_id','=',partner_id)]" name="address_contact_id" groups="base.group_extended"/>
|
||||
<field name="user_id"/>
|
||||
<field name="move_id"/>
|
||||
<separator colspan="4" string="Additional Information"/>
|
||||
<field colspan="4" name="comment" nolabel="1"/>
|
||||
@@ -255,7 +257,7 @@
|
||||
<field name="number"/>
|
||||
<field name="type" invisible="1"/>
|
||||
<field name="currency_id" domain="[('company_id','=', company_id)]" on_change="onchange_currency_id(currency_id, company_id)" width="50"/>
|
||||
<button name="%(action_account_change_currency)d" type="action" icon="gtk-apply" string="Change Currency"/>
|
||||
<button name="%(action_account_change_currency)d" type="action" icon="terp-stock_effects-object-colorize" string="Change Currency"/>
|
||||
<newline/>
|
||||
<field name="partner_id" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank,company_id)" groups="base.group_user"/>
|
||||
<field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
|
||||
@@ -285,7 +287,7 @@
|
||||
</field>
|
||||
</group>
|
||||
<group col="4" colspan="2">
|
||||
<button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" groups="base.group_user" icon="gtk-apply"/>
|
||||
<button colspan="2" name="button_reset_taxes" states="draft" string="Compute Taxes" type="object" groups="base.group_user" icon="terp-stock_format-scientific"/>
|
||||
<field name="amount_untaxed"/>
|
||||
<label string="" colspan="2"/>
|
||||
<field name="amount_tax"/>
|
||||
@@ -294,11 +296,11 @@
|
||||
<field name="state"/>
|
||||
<field name="residual"/>
|
||||
<group col="4" colspan="4" groups="base.group_user">
|
||||
<button name="invoice_proforma2" states="draft" string="PRO-FORMA" icon="gtk-print"/>
|
||||
<button name="invoice_open" states="draft,proforma2" string="Create" icon="gtk-execute"/>
|
||||
<button name="invoice_proforma2" states="draft" string="PRO-FORMA" icon="terp-check"/>
|
||||
<button name="invoice_open" states="draft,proforma2" string="Create" icon="terp-document-new"/>
|
||||
<button name="%(action_account_invoice_pay)d" type='action' string='Pay Invoice' states='open' icon="gtk-ok"/>
|
||||
<button name="invoice_cancel" states="draft,proforma2,sale,open" string="Cancel" icon="gtk-cancel"/>
|
||||
<button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="gtk-convert"/>
|
||||
<button name="action_cancel_draft" states="cancel" string="Set to Draft" type="object" icon="terp-stock_effects-object-colorize"/>
|
||||
<button name='%(action_account_state_open)d' type='action' string='Re-Open' states='paid' icon="gtk-convert"/>
|
||||
<button name="%(action_account_invoice_refund)d" type='action' string='Credit Note' states='paid' icon="gtk-execute"/>
|
||||
</group>
|
||||
@@ -345,27 +347,31 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Invoice">
|
||||
<group col="10" colspan="4">
|
||||
<filter icon="terp-account" string="Draft" domain="[('state','=','draft')]" help="Draft Invoices"/>
|
||||
<filter icon="terp-account" string="Proforma" domain="[('state','=','proforma2')]" help="Proforma Invoices"/>
|
||||
<filter icon="terp-account" string="Unpaid" domain="[('state','=','open')]" help="Unpaid Invoices"/>
|
||||
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Invoices"/>
|
||||
<filter icon="terp-check" string="Proforma" domain="[('state','=','proforma2')]" help="Proforma Invoices"/>
|
||||
<filter icon="terp-check" string="Invoices" domain="[('state','not in',['draft','cancel','cancel'])]" help="Invoices"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter icon="terp-dolar_ok!" string="Unpaid" domain="[('state','=','open')]" help="Unpaid Invoices"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="number"/>
|
||||
<field name="partner_id"/>
|
||||
<field name="user_id" default="uid"/>
|
||||
<field name="user_id" select="1" default="uid" widget="selection" string="Responsible">
|
||||
<filter domain="[('user_id','=',uid)]" help="Responsible" icon="terp-partner" separator="1"/>
|
||||
</field>
|
||||
<field name="origin"/>
|
||||
<field name="amount_total"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By...">
|
||||
<filter string="Journal" icon="terp-account" domain="[]" context="{'group_by':'journal_id'}"/>
|
||||
<filter string="Period" icon="terp-account" domain="[]" context="{'group_by':'period_id'}"/>
|
||||
<group expand="0" string="Group By...">
|
||||
<filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
|
||||
<filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Partner" icon="terp-account" domain="[]" context="{'group_by':'partner_id'}"/>
|
||||
<filter string="Salesman" icon="terp-account" domain="[]" context="{'group_by':'user_id'}"/>
|
||||
<filter string="State" icon="terp-account" domain="[]" context="{'group_by':'state'}"/>
|
||||
<filter string="Partner" icon="terp-personal" domain="[]" context="{'group_by':'partner_id'}"/>
|
||||
<filter string="Responsible" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
|
||||
<filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Invoice Date" icon="terp-account" domain="[]" context="{'group_by':'date_invoice'}"/>
|
||||
<filter string="Due Date" icon="terp-account" domain="[]" context="{'group_by':'date_due'}"/>
|
||||
<filter string="Invoice Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_invoice'}"/>
|
||||
<filter string="Due Date" icon="terp-go-month" domain="[]" context="{'group_by':'date_due'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
@@ -403,7 +409,7 @@
|
||||
<field name="view_id" ref="invoice_form"/>
|
||||
<field name="act_window_id" ref="action_invoice_tree"/>
|
||||
</record>
|
||||
<menuitem name="Invoices" id="menu_finance_invoice" parent="account.menu_finance" sequence="2"/>
|
||||
<!-- <menuitem name="Invoices" id="menu_finance_invoice" parent="account.menu_finance" sequence="2"/>-->
|
||||
|
||||
<record id="action_invoice_tree1" model="ir.actions.act_window">
|
||||
<field name="name">Customer Invoices</field>
|
||||
@@ -426,10 +432,10 @@
|
||||
<field name="view_id" ref="invoice_form"/>
|
||||
<field name="act_window_id" ref="action_invoice_tree1"/>
|
||||
</record>
|
||||
<menuitem action="action_invoice_tree1" id="menu_action_invoice_tree1" parent="account.menu_finance_invoice"/>
|
||||
<menuitem action="action_invoice_tree1" id="menu_action_invoice_tree1" parent="menu_finance_receivables"/>
|
||||
|
||||
<record id="action_invoice_tree2" model="ir.actions.act_window">
|
||||
<field name="name">Supplier Invoices</field>
|
||||
<field name="name">Vendor Invoices</field>
|
||||
<field name="res_model">account.invoice</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form,calendar,graph</field>
|
||||
@@ -438,7 +444,7 @@
|
||||
<field name="context">{'type':'in_invoice'}</field>
|
||||
<field name="search_view_id" ref="view_account_invoice_filter"/>
|
||||
</record>
|
||||
<menuitem action="action_invoice_tree2" id="menu_action_invoice_tree2" parent="account.menu_finance_invoice"/>
|
||||
<menuitem action="action_invoice_tree2" id="menu_action_invoice_tree2" parent="menu_finance_payables"/>
|
||||
|
||||
<record id="action_invoice_tree3" model="ir.actions.act_window">
|
||||
<field name="name">Customer Refunds</field>
|
||||
@@ -464,10 +470,10 @@
|
||||
<field name="act_window_id" ref="action_invoice_tree3"/>
|
||||
</record>
|
||||
|
||||
<menuitem action="action_invoice_tree3" id="menu_action_invoice_tree3" parent="account.menu_finance_invoice"/>
|
||||
<menuitem action="action_invoice_tree3" id="menu_action_invoice_tree3" parent="menu_finance_receivables"/>
|
||||
|
||||
<record id="action_invoice_tree4" model="ir.actions.act_window">
|
||||
<field name="name">Supplier Refunds</field>
|
||||
<field name="name">Vendor Refunds</field>
|
||||
<field name="res_model">account.invoice</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form,calendar,graph</field>
|
||||
@@ -476,7 +482,7 @@
|
||||
<field name="context">{'type':'in_refund'}</field>
|
||||
<field name="search_view_id" ref="view_account_invoice_filter"/>
|
||||
</record>
|
||||
<menuitem action="action_invoice_tree4" id="menu_action_invoice_tree4" parent="account.menu_finance_invoice"/>
|
||||
<menuitem action="action_invoice_tree4" id="menu_action_invoice_tree4" parent="menu_finance_payables"/>
|
||||
|
||||
<act_window domain="[('partner_id','=',active_id)]" id="act_res_partner_2_account_invoice_opened" name="Invoices" res_model="account.invoice" src_model="res.partner"/>
|
||||
|
||||
@@ -486,20 +492,5 @@
|
||||
|
||||
<act_window domain="[('partner_id', '=', partner_id), ('account_id.type', 'in', ['receivable', 'payable']), ('reconcile_id','=',False)]" id="act_account_invoice_account_move_unreconciled" name="Unreconciled Receivables & Payables" res_model="account.move.line" src_model="account.invoice"/>
|
||||
|
||||
<!-- Partners inherited form -->
|
||||
|
||||
<record id="view_invoice_partner_info_form" model="ir.ui.view">
|
||||
<field name="name">res.partner.invoice.info.inherit</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="type">form</field>
|
||||
<field name="inherit_id" ref="base.view_partner_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<notebook position="inside">
|
||||
<page string="Account Info">
|
||||
<field name="invoice_ids" colspan="4" nolabel="1" context="{'group_by':'product_id'}"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -2,27 +2,50 @@
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<menuitem icon="terp-account" id="menu_finance" name="Financial Management" sequence="5"/>
|
||||
<menuitem id="menu_finance_configuration" name="Configuration" parent="menu_finance" sequence="8"/>
|
||||
<menuitem id="base.menu_action_currency_form" parent="menu_finance_configuration" sequence="20"/>
|
||||
<menuitem id="menu_finance_accounting" name="Financial Accounting" parent="menu_finance_configuration"/>
|
||||
<menuitem id="menu_analytic_accounting" name="Analytic Accounting" parent="menu_finance_configuration"/>
|
||||
<menuitem icon="terp-account" id="menu_finance" name="Accounting" sequence="13"/>
|
||||
<menuitem id="menu_finance_receivables" name="Receivables" parent="menu_finance" sequence="1"/>
|
||||
<menuitem id="menu_finance_payables" name="Payables" parent="menu_finance" sequence="2"/>
|
||||
<menuitem id="menu_finance_bank_and_cash" name="Bank and Cash" parent="menu_finance" sequence="3"/>
|
||||
<!-- <menuitem id="menu_accounting" name="Accounting" parent="menu_finance" sequence="5"/>-->
|
||||
<menuitem id="menu_finance_periodical_processing" name="Periodical Processing" parent="menu_finance" sequence="8" groups="group_account_user"/>
|
||||
<menuitem id="periodical_processing_journal_entries_validation" name="Journal Entries Validation" parent="menu_finance_periodical_processing"/>
|
||||
<menuitem id="periodical_processing_reconciliation" name="Reconciliation" parent="menu_finance_periodical_processing"/>
|
||||
<!-- <menuitem id="periodical_processing_recurrent_entries" name="Recurrent Entries" parent="menu_finance_periodical_processing"/>-->
|
||||
<menuitem id="periodical_processing_invoicing" name="Invoicing" parent="menu_finance_periodical_processing"/>
|
||||
<!-- <menuitem id="periodical_processing_end_of_period" name="End of Period" parent="menu_finance_periodical_processing"/>-->
|
||||
<menuitem id="menu_finance_charts" name="Charts" parent="menu_finance" sequence="5"/>
|
||||
<menuitem id="menu_finance_reporting" name="Reporting" parent="account.menu_finance" sequence="12"/>
|
||||
<menuitem id="menu_finance_reporting_budgets" name="Budgets" parent="menu_finance_reporting"/>
|
||||
<menuitem id="menu_generic_report" name="Management Reports" parent="menu_finance_reporting"/>
|
||||
<menuitem id="menu_finance_legal_statement" name="Legal Reports" parent="menu_finance_reporting"/>
|
||||
<menuitem id="menu_finance_management_belgian_reports" name="Belgian Reports" parent="menu_finance_reporting"/>
|
||||
<menuitem id="menu_finance_configuration" name="Configuration" parent="menu_finance" sequence="13"/>
|
||||
<menuitem id="menu_finance_accounting" name="Financial Accounting" parent="menu_finance_configuration"/>
|
||||
<menuitem id="menu_analytic_accounting" name="Analytic Accounting" parent="menu_finance_configuration"/>
|
||||
<menuitem id="menu_analytic" parent="menu_analytic_accounting" name="Accounts"/>
|
||||
<menuitem id="menu_low_level" name="Low Level" parent="menu_finance_accounting"/>
|
||||
<menuitem id="menu_configuration_misc" name="Miscelleanous" parent="menu_finance_configuration"/>
|
||||
<menuitem id="base.menu_action_currency_form" parent="menu_configuration_misc" sequence="20"/>
|
||||
<!-- <menuitem id="menu_finance_configuration1" name="Configuration" parent="menu_finance" sequence="80"/>-->
|
||||
<!-- <menuitem id="base.menu_action_currency_form" parent="menu_finance_configuration" sequence="20"/>-->
|
||||
<!-- <menuitem id="menu_finance_accounting1" name="Financial Accounting" parent="menu_finance_configuration" sequence="80"/>-->
|
||||
<!-- <menuitem id="menu_analytic_accounting1" name="Analytic Accounting" parent="menu_finance_configuration" sequence="80"/>-->
|
||||
|
||||
<menuitem id="menu_finance_reporting" name="Reporting" parent="account.menu_finance" sequence="7"/>
|
||||
<menuitem id="menu_finance_generic_reporting" name="Generic Reporting" parent="account.menu_finance_reporting" sequence="1"/>
|
||||
<menuitem id="menu_finance_legal_statement" name="Legal Statements" parent="account.menu_finance_reporting" sequence="2"/>
|
||||
<menuitem id="menu_generic_report" name="Generic Reports" parent="account.menu_finance_legal_statement" sequence="8"/>
|
||||
<!-- <menuitem id="menu_finance_reporting11" name="Reporting" parent="account.menu_finance" sequence="80"/>-->
|
||||
<menuitem id="menu_finance_generic_reporting" name="Generic Reporting" parent="menu_finance_reporting" sequence="100"/>
|
||||
<!-- <menuitem id="menu_finance_legal_statement1" name="Legal Statements" parent="account.menu_finance_reporting" sequence="200"/>-->
|
||||
<!-- <menuitem id="menu_generic_report" name="Generic Reports" parent="account.menu_finance_legal_statement" sequence="8"/>-->
|
||||
|
||||
<menuitem id="menu_finance_entries" name="Accounting" parent="account.menu_finance" sequence="1"
|
||||
<menuitem id="menu_finance_entries" name="Accounting" parent="menu_finance" sequence="4"
|
||||
groups="group_account_user"/>
|
||||
<menuitem id="account.menu_finance_recurrent_entries" name="Recurrent Entries" parent="account.menu_finance_entries" sequence="15"/>
|
||||
<menuitem id="account.menu_finance_recurrent_entries" name="Recurring Entries" parent="menu_finance_periodical_processing" sequence="15"/>
|
||||
|
||||
<menuitem id="menu_finance_periodical_processing" name="Periodical Processing" parent="account.menu_finance"
|
||||
sequence="3"
|
||||
groups="group_account_user"/>
|
||||
<menuitem id="menu_account_end_year_treatments" name="End of Year Treatments" parent="account.menu_finance_periodical_processing" sequence="20"/>
|
||||
<!-- <menuitem id="menu_finance_periodical_processing11" name="Periodical Processing" parent="account.menu_finance"-->
|
||||
<!-- sequence="3"-->
|
||||
<!-- groups="group_account_user"/>-->
|
||||
<menuitem id="menu_account_end_year_treatments" name="End of Period" parent="menu_finance_periodical_processing"/>
|
||||
|
||||
<menuitem id="menu_finance_statistic_report_statement" name="Statistic Reports" parent="account.menu_finance_reporting" sequence="3"/>
|
||||
<menuitem id="menu_finance_statistic_report_statement" name="Statistic Reports" parent="menu_finance_reporting" sequence="300"/>
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
|
||||
@@ -18,13 +18,12 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
import time
|
||||
from datetime import datetime
|
||||
|
||||
import netsvc
|
||||
from osv import fields, osv
|
||||
from tools.translate import _
|
||||
|
||||
from datetime import datetime
|
||||
import decimal_precision as dp
|
||||
import tools
|
||||
|
||||
@@ -66,9 +65,9 @@ class account_move_line(osv.osv):
|
||||
#the query have to be build with no reference to periods but thanks to the creation date
|
||||
if context.get('periods',False):
|
||||
#if one or more period are given, use them
|
||||
fiscalperiod_ids = fiscalperiod_obj.search(cr,uid,[('id','in',context['periods'])])
|
||||
fiscalperiod_ids = fiscalperiod_obj.search(cr, uid, [('id','in',context['periods'])])
|
||||
else:
|
||||
fiscalperiod_ids = self.pool.get('account.period').search(cr,uid,[('fiscalyear_id','in',fiscalyear_ids)])
|
||||
fiscalperiod_ids = self.pool.get('account.period').search(cr, uid, [('fiscalyear_id','in',fiscalyear_ids)])
|
||||
|
||||
|
||||
|
||||
@@ -87,7 +86,7 @@ class account_move_line(osv.osv):
|
||||
#add to 'res' a new clause containing the creation date criterion
|
||||
count = 1
|
||||
res += " AND ("
|
||||
periods = self.pool.get('account.period').read(cr,uid,p_ids,['date_start','date_stop'])
|
||||
periods = self.pool.get('account.period').read(cr, uid, p_ids, ['date_start','date_stop'])
|
||||
for period in periods:
|
||||
if count != 1:
|
||||
res += " OR "
|
||||
@@ -150,7 +149,7 @@ class account_move_line(osv.osv):
|
||||
for item in i[2]:
|
||||
data[item]=i[2][item]
|
||||
if context['journal']:
|
||||
journal_obj=self.pool.get('account.journal').browse(cr,uid,context['journal'])
|
||||
journal_obj=self.pool.get('account.journal').browse(cr, uid, context['journal'])
|
||||
if journal_obj.type == 'purchase':
|
||||
if total_new>0:
|
||||
account = journal_obj.default_credit_account_id
|
||||
@@ -298,9 +297,10 @@ class account_move_line(osv.osv):
|
||||
for line_id in ids:
|
||||
res[line_id] = False
|
||||
cursor.execute('SELECT l.id, i.id ' \
|
||||
'FROM account_move_line l, account_invoice i ' \
|
||||
'WHERE l.move_id = i.move_id ' \
|
||||
'AND l.id =ANY(%s)',(ids,))
|
||||
'FROM account_move_line l, account_invoice i ' \
|
||||
'WHERE l.move_id = i.move_id ' \
|
||||
'AND l.id IN %s',
|
||||
(tuple(ids),))
|
||||
invoice_ids = []
|
||||
for line_id, invoice_id in cursor.fetchall():
|
||||
res[line_id] = invoice_id
|
||||
@@ -333,7 +333,7 @@ class account_move_line(osv.osv):
|
||||
return []
|
||||
where = ' and '.join(map(lambda x: '(abs(sum(debit-credit))'+x[1]+str(x[2])+')',args))
|
||||
cursor.execute('select id, sum(debit-credit) from account_move_line \
|
||||
group by id,debit,credit having '+where)
|
||||
group by id, debit, credit having '+where)
|
||||
res = cursor.fetchall()
|
||||
if not len(res):
|
||||
return [('id', '=', '0')]
|
||||
@@ -433,8 +433,8 @@ class account_move_line(osv.osv):
|
||||
'account_tax_id':fields.many2one('account.tax', 'Tax'),
|
||||
'analytic_account_id' : fields.many2one('account.analytic.account', 'Analytic Account'),
|
||||
#TODO: remove this
|
||||
'amount_taxed':fields.float("Taxed Amount",digits_compute=dp.get_precision('Account')),
|
||||
'company_id': fields.related('account_id','company_id',type='many2one',relation='res.company',string='Company',store=True)
|
||||
'amount_taxed':fields.float("Taxed Amount", digits_compute=dp.get_precision('Account')),
|
||||
'company_id': fields.related('account_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True)
|
||||
|
||||
}
|
||||
|
||||
@@ -469,7 +469,7 @@ class account_move_line(osv.osv):
|
||||
'currency_id': _get_currency,
|
||||
'journal_id': lambda self, cr, uid, c: c.get('journal_id', False),
|
||||
'period_id': lambda self, cr, uid, c: c.get('period_id', False),
|
||||
'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.move.line', context=c)
|
||||
'company_id': lambda self, cr, uid, c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.move.line', context=c)
|
||||
}
|
||||
_order = "date desc,id desc"
|
||||
_sql_constraints = [
|
||||
@@ -498,9 +498,17 @@ class account_move_line(osv.osv):
|
||||
return False
|
||||
return True
|
||||
|
||||
def _check_company_id(self, cr, uid, ids):
|
||||
lines = self.browse(cr, uid, ids)
|
||||
for l in lines:
|
||||
if l.company_id != l.account_id.company_id or l.company_id != l.period_id.company_id:
|
||||
return False
|
||||
return True
|
||||
|
||||
_constraints = [
|
||||
(_check_no_view, 'You can not create move line on view account.', ['account_id']),
|
||||
(_check_no_closed, 'You can not create move line on closed account.', ['account_id']),
|
||||
(_check_company_id,'Company must be same for its related account and period.',['company_id'] ),
|
||||
]
|
||||
|
||||
#TODO: ONCHANGE_ACCOUNT_ID: set account_tax_id
|
||||
@@ -569,11 +577,54 @@ class account_move_line(osv.osv):
|
||||
# writeoff; entry generated for the difference between the lines
|
||||
#
|
||||
|
||||
def reconcile_partial(self, cr, uid, ids, type='auto', context={}):
|
||||
def search(self, cr, uid, args, offset=0, limit=None, order=None, context=None, count=False):
|
||||
if context is None:
|
||||
context = {}
|
||||
if context and context.get('next_partner_only', False):
|
||||
if not context.get('partner_id', False):
|
||||
partner = self.get_next_partner_only(cr, uid, offset, context)
|
||||
else:
|
||||
partner = context.get('partner_id', False)
|
||||
if not partner:
|
||||
return []
|
||||
args.append(('partner_id', '=', partner[0]))
|
||||
return super(account_move_line, self).search(cr, uid, args, offset, limit, order, context, count)
|
||||
|
||||
def get_next_partner_only(self, cr, uid, offset=0, context=None):
|
||||
cr.execute(
|
||||
"""
|
||||
SELECT p.id
|
||||
FROM res_partner p
|
||||
RIGHT JOIN (
|
||||
SELECT l.partner_id as partner_id, SUM(l.debit) as debit, SUM(l.credit) as credit
|
||||
FROM account_move_line l
|
||||
LEFT JOIN account_account a ON (a.id = l.account_id)
|
||||
LEFT JOIN res_partner p ON (l.partner_id = p.id)
|
||||
WHERE a.reconcile IS TRUE
|
||||
AND l.reconcile_id IS NULL
|
||||
AND (p.last_reconciliation_date IS NULL OR l.date > p.last_reconciliation_date)
|
||||
AND l.state <> 'draft'
|
||||
GROUP BY l.partner_id
|
||||
) AS s ON (p.id = s.partner_id)
|
||||
ORDER BY p.last_reconciliation_date LIMIT 1 OFFSET %s""", (offset,)
|
||||
)
|
||||
return cr.fetchone()
|
||||
|
||||
def reconcile_partial(self, cr, uid, ids, type='auto', context=None):
|
||||
merges = []
|
||||
unmerge = []
|
||||
total = 0.0
|
||||
merges_rec = []
|
||||
|
||||
company_list = []
|
||||
if context is None:
|
||||
context = {}
|
||||
|
||||
for line in self.browse(cr, uid, ids, context=context):
|
||||
if company_list and not line.company_id.id in company_list:
|
||||
raise osv.except_osv(_('Warning !'), _('To reconcile the entries company should be the same for all entries'))
|
||||
company_list.append(line.company_id.id)
|
||||
|
||||
for line in self.browse(cr, uid, ids, context):
|
||||
if line.reconcile_id:
|
||||
raise osv.except_osv(_('Warning'), _('Already Reconciled!'))
|
||||
@@ -587,6 +638,7 @@ class account_move_line(osv.osv):
|
||||
else:
|
||||
unmerge.append(line.id)
|
||||
total += (line.debit or 0.0) - (line.credit or 0.0)
|
||||
|
||||
if not total:
|
||||
res = self.reconcile(cr, uid, merges+unmerge, context=context)
|
||||
return res
|
||||
@@ -597,13 +649,22 @@ class account_move_line(osv.osv):
|
||||
self.pool.get('account.move.reconcile').reconcile_partial_check(cr, uid, [r_id] + merges_rec, context=context)
|
||||
return True
|
||||
|
||||
def reconcile(self, cr, uid, ids, type='auto', writeoff_acc_id=False, writeoff_period_id=False, writeoff_journal_id=False, context={}):
|
||||
def reconcile(self, cr, uid, ids, type='auto', writeoff_acc_id=False, writeoff_period_id=False, writeoff_journal_id=False, context=None):
|
||||
lines = self.browse(cr, uid, ids, context=context)
|
||||
unrec_lines = filter(lambda x: not x['reconcile_id'], lines)
|
||||
credit = debit = 0.0
|
||||
currency = 0.0
|
||||
account_id = False
|
||||
partner_id = False
|
||||
if context is None:
|
||||
context = {}
|
||||
|
||||
company_list = []
|
||||
for line in self.browse(cr, uid, ids, context=context):
|
||||
if company_list and not line.company_id.id in company_list:
|
||||
raise osv.except_osv(_('Warning !'), _('To reconcile the entries company should be the same for all entries'))
|
||||
company_list.append(line.company_id.id)
|
||||
|
||||
for line in unrec_lines:
|
||||
if line.state <> 'valid':
|
||||
raise osv.except_osv(_('Error'),
|
||||
@@ -620,10 +681,11 @@ class account_move_line(osv.osv):
|
||||
else:
|
||||
date = time.strftime('%Y-%m-%d')
|
||||
|
||||
cr.execute('SELECT account_id, reconcile_id \
|
||||
FROM account_move_line \
|
||||
WHERE id =ANY(%s) \
|
||||
GROUP BY account_id,reconcile_id',(ids,))
|
||||
cr.execute('SELECT account_id, reconcile_id '\
|
||||
'FROM account_move_line '\
|
||||
'WHERE id IN %s '\
|
||||
'GROUP BY account_id,reconcile_id',
|
||||
(tuple(ids),))
|
||||
r = cr.fetchall()
|
||||
#TODO: move this check to a constraint in the account_move_reconcile object
|
||||
if (len(r) != 1) and not context.get('fy_closing', False):
|
||||
@@ -701,6 +763,11 @@ class account_move_line(osv.osv):
|
||||
# because of the way the line_id are defined: (4, x, False)
|
||||
for id in ids:
|
||||
wf_service.trg_trigger(uid, 'account.move.line', id, cr)
|
||||
|
||||
if lines and lines[0]:
|
||||
partner_id = lines[0].partner_id.id
|
||||
if context and context.get('stop_reconcile', False):
|
||||
self.pool.get('res.partner').write(cr, uid, [partner_id], {'last_reconciliation_date': time.strftime('%Y-%m-%d %H:%M:%S')})
|
||||
return r_id
|
||||
|
||||
def view_header_get(self, cr, user, view_id, view_type, context):
|
||||
@@ -721,57 +788,81 @@ class account_move_line(osv.osv):
|
||||
|
||||
def fields_view_get(self, cr, uid, view_id=None, view_type='form', context={}, toolbar=False, submenu=False):
|
||||
result = super(osv.osv, self).fields_view_get(cr, uid, view_id,view_type,context,toolbar=toolbar, submenu=submenu)
|
||||
if view_type=='tree' and 'journal_id' in context:
|
||||
title = self.view_header_get(cr, uid, view_id, view_type, context)
|
||||
journal = self.pool.get('account.journal').browse(cr, uid, context['journal_id'])
|
||||
if view_type != 'tree':
|
||||
return result
|
||||
|
||||
# if the journal view has a state field, color lines depending on
|
||||
# its value
|
||||
state = ''
|
||||
fld = []
|
||||
fields = {}
|
||||
flds = []
|
||||
title = self.view_header_get(cr, uid, view_id, view_type, context)
|
||||
xml = '''<?xml version="1.0"?>\n<tree string="%s" editable="top" refresh="5" on_write="on_create_write">\n\t''' % (title)
|
||||
journal_pool = self.pool.get('account.journal')
|
||||
|
||||
ids = journal_pool.search(cr, uid, [])
|
||||
journals = journal_pool.browse(cr, uid, ids)
|
||||
all_journal = [None]
|
||||
for journal in journals:
|
||||
all_journal.append(journal.id)
|
||||
for field in journal.view_id.columns_id:
|
||||
if field.field=='state':
|
||||
state = ' colors="red:state==\'draft\'"'
|
||||
|
||||
#xml = '''<?xml version="1.0"?>\n<tree string="%s" editable="top" refresh="5"%s>\n\t''' % (title, state)
|
||||
xml = '''<?xml version="1.0"?>\n<tree string="%s" editable="top" refresh="5" on_write="on_create_write"%s>\n\t''' % (title, state)
|
||||
fields = []
|
||||
|
||||
widths = {
|
||||
'ref': 50,
|
||||
'statement_id': 50,
|
||||
'state': 60,
|
||||
'tax_code_id': 50,
|
||||
'move_id': 40,
|
||||
}
|
||||
for field in journal.view_id.columns_id:
|
||||
fields.append(field.field)
|
||||
attrs = []
|
||||
if field.field=='debit':
|
||||
attrs.append('sum="Total debit"')
|
||||
elif field.field=='credit':
|
||||
attrs.append('sum="Total credit"')
|
||||
elif field.field=='account_tax_id':
|
||||
attrs.append('domain="[(\'parent_id\',\'=\',False)]"')
|
||||
elif field.field=='account_id' and journal.id:
|
||||
attrs.append('domain="[(\'journal_id\', \'=\', '+str(journal.id)+'),(\'type\',\'<>\',\'view\'), (\'type\',\'<>\',\'closed\')]" on_change="onchange_account_id(account_id, partner_id)"')
|
||||
elif field.field == 'partner_id':
|
||||
attrs.append('on_change="onchange_partner_id(move_id,partner_id,account_id,debit,credit,date,((\'journal_id\' in context) and context[\'journal_id\']) or {})"')
|
||||
if field.readonly:
|
||||
attrs.append('readonly="1"')
|
||||
if field.required:
|
||||
attrs.append('required="1"')
|
||||
if not field.field in fields:
|
||||
fields[field.field] = [None, journal.id]
|
||||
fld.append((field.field, field.sequence))
|
||||
flds.append(field.field)
|
||||
else:
|
||||
attrs.append('required="0"')
|
||||
if field.field in ('amount_currency','currency_id'):
|
||||
attrs.append('on_change="onchange_currency(account_id,amount_currency,currency_id,date,((\'journal_id\' in context) and context[\'journal_id\']) or {})"')
|
||||
fields.get(field.field).append(journal.id)
|
||||
|
||||
fld.append(('period_id', 3))
|
||||
fld.append(('journal_id', 10))
|
||||
flds.append('period_id')
|
||||
flds.append('journal_id')
|
||||
fields['period_id'] = all_journal
|
||||
fields['journal_id'] = all_journal
|
||||
|
||||
from operator import itemgetter
|
||||
fld = sorted(fld, key=itemgetter(1))
|
||||
|
||||
if field.field in widths:
|
||||
attrs.append('width="'+str(widths[field.field])+'"')
|
||||
xml += '''<field name="%s" %s/>\n''' % (field.field,' '.join(attrs))
|
||||
widths = {
|
||||
'ref': 50,
|
||||
'statement_id': 50,
|
||||
'state': 60,
|
||||
'tax_code_id': 50,
|
||||
'move_id': 40,
|
||||
}
|
||||
|
||||
xml += '''</tree>'''
|
||||
result['arch'] = xml
|
||||
result['fields'] = self.fields_get(cr, uid, fields, context)
|
||||
for field_it in fld:
|
||||
field = field_it[0]
|
||||
if field=='state':
|
||||
state = 'colors="red:state==\'draft\'"'
|
||||
|
||||
attrs = []
|
||||
if field == 'debit':
|
||||
attrs.append('sum="Total debit"')
|
||||
elif field == 'credit':
|
||||
attrs.append('sum="Total credit"')
|
||||
elif field == 'account_tax_id':
|
||||
attrs.append('domain="[(\'parent_id\',\'=\',False)]"')
|
||||
elif field == 'account_id' and journal.id:
|
||||
attrs.append('domain="[(\'journal_id\', \'=\', '+str(journal.id)+'),(\'type\',\'<>\',\'view\'), (\'type\',\'<>\',\'closed\')]" on_change="onchange_account_id(account_id, partner_id)"')
|
||||
elif field == 'partner_id':
|
||||
attrs.append('on_change="onchange_partner_id(move_id, partner_id, account_id, debit, credit, date, journal_id)"')
|
||||
# if field.readonly:
|
||||
# attrs.append('readonly="1"')
|
||||
# if field.required:
|
||||
# attrs.append('required="1"')
|
||||
# else:
|
||||
# attrs.append('required="0"')
|
||||
if field in ('amount_currency','currency_id'):
|
||||
attrs.append('on_change="onchange_currency(account_id, amount_currency,currency_id, date, journal_id)"')
|
||||
|
||||
if field in widths:
|
||||
attrs.append('width="'+str(widths[field])+'"')
|
||||
|
||||
attrs.append("invisible=\"context.get('visible_id') not in %s\"" % (fields.get(field)))
|
||||
xml += '''<field name="%s" %s/>\n''' % (field,' '.join(attrs))
|
||||
|
||||
xml += '''</tree>'''
|
||||
result['arch'] = xml
|
||||
result['fields'] = self.fields_get(cr, uid, flds, context)
|
||||
return result
|
||||
|
||||
def _check_moves(self, cr, uid, context):
|
||||
@@ -809,13 +900,14 @@ class account_move_line(osv.osv):
|
||||
journal_id = m.journal_id.id
|
||||
period_id = m.period_id.id
|
||||
else:
|
||||
journal_id = context['journal_id']
|
||||
period_id = context['period_id']
|
||||
journal = self.pool.get('account.journal').browse(cr,uid,[journal_id])[0]
|
||||
if journal.allow_date:
|
||||
period = self.pool.get('account.period').browse(cr,uid,[period_id])[0]
|
||||
if not time.strptime(vals['date'],'%Y-%m-%d')>=time.strptime(period.date_start,'%Y-%m-%d') or not time.strptime(vals['date'],'%Y-%m-%d')<=time.strptime(period.date_stop,'%Y-%m-%d'):
|
||||
raise osv.except_osv(_('Error'),_('The date of your Ledger Posting is not in the defined period !'))
|
||||
journal_id = context.get('journal_id',False)
|
||||
period_id = context.get('period_id',False)
|
||||
if journal_id:
|
||||
journal = self.pool.get('account.journal').browse(cr, uid, [journal_id])[0]
|
||||
if journal.allow_date and period_id:
|
||||
period = self.pool.get('account.period').browse(cr, uid, [period_id])[0]
|
||||
if not time.strptime(vals['date'],'%Y-%m-%d')>=time.strptime(period.date_start,'%Y-%m-%d') or not time.strptime(vals['date'],'%Y-%m-%d')<=time.strptime(period.date_stop,'%Y-%m-%d'):
|
||||
raise osv.except_osv(_('Error'),_('The date of your Ledger Posting is not in the defined period !'))
|
||||
else:
|
||||
return True
|
||||
|
||||
@@ -836,7 +928,7 @@ class account_move_line(osv.osv):
|
||||
if vals.get('date', False):
|
||||
todo_date = vals['date']
|
||||
del vals['date']
|
||||
|
||||
|
||||
for line in self.browse(cr, uid, ids,context=context):
|
||||
ctx = context.copy()
|
||||
if ('journal_id' not in ctx):
|
||||
@@ -848,8 +940,8 @@ class account_move_line(osv.osv):
|
||||
if line.move_id:
|
||||
ctx['period_id'] = line.move_id.period_id.id
|
||||
else:
|
||||
ctx['period_id'] = line.period_id.id
|
||||
#Check for centralisation
|
||||
ctx['period_id'] = line.period_id.id
|
||||
#Check for centralisation
|
||||
journal = self.pool.get('account.journal').browse(cr, uid, ctx['journal_id'], context=ctx)
|
||||
if journal.centralisation:
|
||||
self._check_moves(cr, uid, context=ctx)
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
<report auto="False" id="account_intracom" menu="False" model="account.move.line" name="account.intracom" string="IntraCom"/>
|
||||
|
||||
<report id="account_move_line_list" model="account.tax.code" name="account.tax.code.entries" rml="account/report/account_tax_code.rml" string="All Entries"/>
|
||||
|
||||
|
||||
<report
|
||||
auto="False"
|
||||
id="account_vat_declaration"
|
||||
@@ -32,7 +32,7 @@
|
||||
name="account.vat.declaration"
|
||||
rml="account/report/tax_report.rml"
|
||||
string="Taxes Report"/>
|
||||
|
||||
|
||||
<report id="report_account_voucher_new"
|
||||
string="Print Voucher"
|
||||
model="account.move"
|
||||
@@ -41,12 +41,12 @@
|
||||
auto="False"
|
||||
header = "False"
|
||||
menu="True"/>
|
||||
|
||||
|
||||
<menuitem
|
||||
id="menu_tax_report"
|
||||
name="Taxes"
|
||||
parent="account.menu_finance_generic_reporting" sequence="3"/>
|
||||
|
||||
|
||||
<!-- <wizard
|
||||
id="wizard_vat_declaration"
|
||||
menu="False"
|
||||
@@ -61,21 +61,6 @@
|
||||
parent="menu_tax_report"
|
||||
type="wizard"/> -->
|
||||
|
||||
|
||||
<record id="action_tax_code_tree" model="ir.actions.act_window">
|
||||
<field name="name">Chart of Taxes</field>
|
||||
<field name="res_model">account.tax.code</field>
|
||||
<field name="domain">[('parent_id','=',False)]</field>
|
||||
<field name="view_type">tree</field>
|
||||
<field name="view_id" ref="view_tax_code_tree"/>
|
||||
</record>
|
||||
<menuitem
|
||||
action="action_tax_code_tree"
|
||||
id="menu_action_tax_code_tree"
|
||||
parent="menu_tax_report"
|
||||
sequence="12"/>
|
||||
|
||||
|
||||
<report id="account_account_balance_compare"
|
||||
string="Account balance"
|
||||
model="account.account"
|
||||
|
||||
+285
-114
@@ -163,13 +163,13 @@
|
||||
</record>
|
||||
|
||||
<record id="action_account_form" model="ir.actions.act_window">
|
||||
<field name="name">List of Accounts</field>
|
||||
<field name="name">Accounts</field>
|
||||
<field name="res_model">account.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form,graph</field>
|
||||
<field name="search_view_id" ref="view_account_search"/>
|
||||
</record>
|
||||
<menuitem id="account_account_menu" name="Financial Accounts" parent="account.menu_finance_accounting"/>
|
||||
<menuitem id="account_account_menu" name="Accounts" parent="menu_finance_accounting"/>
|
||||
<menuitem action="action_account_form" id="menu_action_account_form" parent="account_account_menu"/>
|
||||
|
||||
<record id="view_account_tree" model="ir.ui.view">
|
||||
@@ -197,7 +197,7 @@
|
||||
<field name="view_id" ref="view_account_tree"/>
|
||||
<field name="domain">[('parent_id','=',False)]</field>
|
||||
</record>
|
||||
<menuitem action="action_account_tree" id="menu_action_account_tree" parent="account.account_account_menu"/>
|
||||
<!-- <menuitem action="action_account_tree" id="menu_action_account_tree" parent="account.account_account_menu"/>-->
|
||||
|
||||
<!--
|
||||
Journal
|
||||
@@ -270,24 +270,21 @@
|
||||
<field name="arch" type="xml">
|
||||
<form string="Account Journal">
|
||||
<group colspan="4" col="6">
|
||||
<field name="name" select="1"/>
|
||||
<field name="name" select="1" colspan="4"/>
|
||||
<field name="code" select="1"/>
|
||||
<field name="active" select="1"/>
|
||||
<field name="type"/>
|
||||
<field name="type" on_change="onchange_type(type)"/>
|
||||
<field name="refund_journal" attrs="{'readonly':[('type','=','general'),('type','=','cash'),('type','=','situation')]}"/>
|
||||
</group>
|
||||
|
||||
<notebook colspan="4">
|
||||
<page string="General Information">
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Journal View" colspan="4"/>
|
||||
<field name="view_id"/>
|
||||
<field name="view_id" widget="selection"/>
|
||||
</group>
|
||||
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Sequence" colspan="4"/>
|
||||
<field name="sequence_id"/>
|
||||
<field name="invoice_sequence_id"/>
|
||||
</group>
|
||||
|
||||
<group colspan="2" col="2">
|
||||
@@ -295,27 +292,34 @@
|
||||
<field name="default_debit_account_id" attrs="{'required':[('type','=','cash')]}" domain="[('type','<>','view'),('type','<>','consolidation')]"/>
|
||||
<field name="default_credit_account_id" attrs="{'required':[('type','=','cash')]}" domain="[('type','<>','view'),('type','<>','consolidation')]"/>
|
||||
</group>
|
||||
|
||||
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Validations" colspan="4"/>
|
||||
<field name="allow_date" groups="base.group_extended"/>
|
||||
<separator string="Invoicing Data" colspan="4"/>
|
||||
<field name="invoice_sequence_id"/>
|
||||
<field name="group_invoice_lines"/>
|
||||
</group>
|
||||
|
||||
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Company" colspan="4"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
<field name="user_id" groups="base.group_extended"/>
|
||||
<field name="currency"/>
|
||||
</group>
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Other Configuration" colspan="4"/>
|
||||
<field name="centralisation"/>
|
||||
<field name="group_invoice_lines"/>
|
||||
<field name="update_posted"/>
|
||||
<field name="entry_posted"/>
|
||||
<group col="2" colspan="2">
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Validations" colspan="4"/>
|
||||
<field name="allow_date" groups="base.group_extended"/>
|
||||
</group>
|
||||
|
||||
<group colspan="2" col="2">
|
||||
<separator string="Other Configuration" colspan="4"/>
|
||||
<field name="centralisation" groups="base.group_extended"/>
|
||||
<field name="entry_posted"/>
|
||||
<field name="update_posted"/>
|
||||
</group>
|
||||
</group>
|
||||
</page>
|
||||
<page string="Entry Controls">
|
||||
<page string="Entry Controls" groups="base.group_extended">
|
||||
<separator colspan="4" string="Accounts Type Allowed (empty for no control)"/>
|
||||
<field colspan="4" name="type_control_ids" nolabel="1"/>
|
||||
<separator colspan="4" string="Accounts Allowed (empty for no control)"/>
|
||||
@@ -326,13 +330,31 @@
|
||||
</field>
|
||||
</record>
|
||||
<record id="action_account_journal_form" model="ir.actions.act_window">
|
||||
<field name="name">Financial Journals</field>
|
||||
<field name="name">Journals</field>
|
||||
<field name="res_model">account.journal</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<menuitem action="action_account_journal_form" id="menu_action_account_journal_form" parent="menu_finance_accounting"/>
|
||||
|
||||
<menuitem action="action_account_journal_form" id="menu_action_account_journal_form" parent="account_account_menu"/>
|
||||
|
||||
<record id="view_account_bank_statement_filter" model="ir.ui.view">
|
||||
<field name="name">account.bank.statement.select</field>
|
||||
<field name="model">account.bank.statement</field>
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Statement">
|
||||
<group col="10" colspan="4">
|
||||
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Statement"/>
|
||||
<filter icon="terp-check" string="Poster" domain="[('state','=','confirm')]" help="Confirm confirm"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name"/>
|
||||
<field name="date"/>
|
||||
<field name="journal_id"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_bank_statement_tree" model="ir.ui.view">
|
||||
<field name="name">account.bank.statement.tree</field>
|
||||
<field name="model">account.bank.statement</field>
|
||||
@@ -357,19 +379,20 @@
|
||||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Statement">
|
||||
<field name="name" select="1"/>
|
||||
<field name="date" select="1"/>
|
||||
<field name="journal_id" on_change="onchange_journal_id(journal_id)" select="1"/>
|
||||
<field name="currency"/>
|
||||
<field name="period_id"/>
|
||||
<group colspan="2" col="3">
|
||||
<!-- <button name="%(action_view_account_statement_from_invoice)d"-->
|
||||
<!-- string="Import Invoice" type="action" attrs="{'invisible':[('state','=','confirm')]}" icon="gtk-open"/>-->
|
||||
<button name="button_import_invoice" string="Import Invoice" attrs="{'invisible':[('state','=','confirm')]}" type="object" icon="gtk-apply"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<field name="balance_start"/>
|
||||
<group col="6" colspan="4">
|
||||
<field name="name" select="1"/>
|
||||
<field name="date" select="1"/>
|
||||
<field name="journal_id" on_change="onchange_journal_id(journal_id)" select="1"/>
|
||||
<!-- <field name="currency"/>-->
|
||||
<field name="period_id"/>
|
||||
<!-- <group colspan="2" col="3">-->
|
||||
<!-- <button name="%(action_view_account_statement_from_invoice)d"-->
|
||||
<!-- string="Import Invoice" type="action" attrs="{'invisible':[('state','=','confirm')]}" icon="gtk-open"/>-->
|
||||
<!-- <button name="button_import_invoice" string="Import Invoice" attrs="{'invisible':[('state','=','confirm')]}" type="object" icon="gtk-apply"/>-->
|
||||
<!-- </group>-->
|
||||
<field name="balance_start"/>
|
||||
<field name="balance_end_real"/>
|
||||
</group>
|
||||
<notebook colspan="4">
|
||||
<page string="Entry encoding">
|
||||
<field colspan="4" name="line_ids" nolabel="1">
|
||||
@@ -379,7 +402,7 @@
|
||||
<field name="ref"/>
|
||||
<field name="name"/>
|
||||
<field name="type"/>
|
||||
<field name="partner_id" on_change="onchange_partner_id(partner_id, type, parent.currency)"/>
|
||||
<field name="partner_id" on_change="onchange_partner_id(partner_id, type, parent.currency, {'amount': amount})"/>
|
||||
<field domain="[('journal_id','=',parent.journal_id)]" name="account_id"/>
|
||||
<field name="amount"/>
|
||||
<field context="{'partner_id': partner_id, 'amount': amount, 'account_id': account_id, 'currency_id': parent.currency, 'journal_id': parent.journal_id, 'date':date}" name="reconcile_id"/>
|
||||
@@ -407,20 +430,20 @@
|
||||
<group col="7" colspan="4">
|
||||
<field name="state"/>
|
||||
<field name="balance_end"/>
|
||||
<button name="button_dummy" states="draft" string="Compute" icon="gtk-execute"/>
|
||||
<button name="button_confirm" states="draft" string="Confirm" type="object" icon="gtk-apply"/>
|
||||
<button name="button_cancel" states="confirm" string="Cancel" type="object" icon="gtk-cancel"/>
|
||||
<button name="button_dummy" states="draft" string="Compute" icon="terp-stock_format-scientific"/>
|
||||
<button name="button_confirm" states="draft" string="Confirm" type="object" icon="terp-camera_test"/>
|
||||
<button name="button_cancel" states="confirm" string="Cancel" type="object" icon="terp-gtk-stop"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
<record id="action_bank_statement_tree" model="ir.actions.act_window">
|
||||
<field name="name">Entries by Statements</field>
|
||||
<field name="name">Bank Statements</field>
|
||||
<field name="res_model">account.bank.statement</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<menuitem action="action_bank_statement_tree" id="menu_bank_statement_tree" parent="menu_finance_entries" sequence="7"/>
|
||||
<menuitem string="Bank Statements" action="action_bank_statement_tree" id="menu_bank_statement_tree" parent="menu_finance_bank_and_cash" sequence="7"/>
|
||||
|
||||
<record id="action_bank_statement_draft_tree" model="ir.actions.act_window">
|
||||
<field name="name">Draft statements</field>
|
||||
@@ -465,7 +488,7 @@
|
||||
<field name="total_entry"/>
|
||||
<field name="total_new"/>
|
||||
<field name="total_balance"/>
|
||||
<button colspan="2" name="dummy" string="Compute" icon="gtk-execute"/>
|
||||
<button colspan="2" name="dummy" string="Compute" icon="terp-stock_format-scientific"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
@@ -517,7 +540,7 @@
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<menuitem action="action_account_type_form" groups="base.group_extended" id="menu_action_account_type_form" parent="account.account_account_menu"/>
|
||||
<menuitem action="action_account_type_form" groups="base.group_extended" id="menu_action_account_type_form" parent="menu_low_level"/>
|
||||
<!--
|
||||
Entries
|
||||
-->
|
||||
@@ -609,7 +632,7 @@
|
||||
<field name="view_id" ref="view_tax_code_tree"/>
|
||||
</record>
|
||||
<menuitem id="next_id_27" name="Taxes" parent="account.menu_finance_accounting"/>
|
||||
<menuitem action="action_tax_code_list" id="menu_action_tax_code_list" parent="next_id_27" sequence="12"/>
|
||||
<menuitem action="action_tax_code_list" id="menu_action_tax_code_list" parent="menu_low_level" sequence="12"/>
|
||||
|
||||
|
||||
<!--
|
||||
@@ -623,7 +646,7 @@
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Account Tax">
|
||||
<field name="name"/>
|
||||
<field name="price_include"/>
|
||||
<field name="price_include" groups="base.group_extended"/>
|
||||
<field name="description"/>
|
||||
</tree>
|
||||
</field>
|
||||
@@ -691,10 +714,21 @@
|
||||
<field name="domain">[('parent_id','=',False)]</field>
|
||||
</record>
|
||||
<menuitem action="action_tax_form" id="menu_action_tax_form" parent="next_id_27"/>
|
||||
|
||||
<!-- <wizard id="action_move_journal_line_form" menu="False" model="account.move.line" name="account.move.journal" string="Entries by Line"/>
|
||||
<menuitem icon="STOCK_JUSTIFY_FILL" action="action_move_journal_line_form" id="menu_action_move_journal_line_form" parent="account.menu_finance_entries" type="wizard" sequence="5"/>
|
||||
-->
|
||||
|
||||
<record id="action_tax_code_tree" model="ir.actions.act_window">
|
||||
<field name="name">Chart of Taxes</field>
|
||||
<field name="res_model">account.tax.code</field>
|
||||
<field name="domain">[('parent_id','=',False)]</field>
|
||||
<field name="view_type">tree</field>
|
||||
<field name="view_id" ref="view_tax_code_tree"/>
|
||||
</record>
|
||||
<menuitem
|
||||
action="action_tax_code_tree"
|
||||
id="menu_action_tax_code_tree"
|
||||
parent="menu_finance_charts"
|
||||
sequence="12"/>
|
||||
<!-- <wizard id="action_move_journal_line_form" menu="False" model="account.move.line" name="account.move.journal" string="Entries by Line"/-->
|
||||
|
||||
<!--
|
||||
Entries lines
|
||||
-->
|
||||
@@ -712,7 +746,7 @@
|
||||
<field name="ref"/>
|
||||
<field name="invoice"/>
|
||||
<field name="name"/>
|
||||
<field name="partner_id"/>
|
||||
<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="journal_id"/>
|
||||
<field name="debit" sum="Total debit"/>
|
||||
@@ -836,14 +870,21 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Entry Lines">
|
||||
<group col='10' colspan='4'>
|
||||
<filter icon="terp-account" string="Draft" domain="[('state','=','draft')]" help="Draft Entry Lines"/>
|
||||
<filter icon="terp-account" string="Posted" domain="[('state','=','valid')]" help="Posted Entry Lines"/>
|
||||
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Entry Lines"/>
|
||||
<filter icon="terp-camera_test" string="Posted" domain="[('state','=','valid')]" help="Posted Entry Lines"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="date" select='1'/>
|
||||
<field name="account_id" select='1'/>
|
||||
<field name="partner_id" select='1'/>
|
||||
<field name="partner_id" select='1'>
|
||||
<filter help="Next Partner Entries to reconcile" name="next_partner" string="Next Partner to reconcile" context="{'next_partner_only': 1}" icon="terp-partner" domain="[('account_id.reconcile','=',True),('reconcile_id','=',False)]"/>
|
||||
</field>
|
||||
<field name="balance" string="Debit/Credit" select='1'/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group col="10" colspan="4">
|
||||
<field name="journal_id" widget="selection" context="{'journal_id':self, 'visible_id':self or 0, 'normal_view':False}"/>
|
||||
<field name="period_id" widget="selection" context="{'period_id':self}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
@@ -889,10 +930,10 @@
|
||||
<field name="to_check" groups="base.group_extended"/>
|
||||
<field name="amount"/>
|
||||
<field name="state"/>
|
||||
<button name="button_validate" states="draft" string="Validate" type="object" icon="terp-camera_test"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="view_move_form" model="ir.ui.view">
|
||||
<field name="name">account.move.form</field>
|
||||
<field name="model">account.move</field>
|
||||
@@ -900,11 +941,12 @@
|
||||
<field name="arch" type="xml">
|
||||
<form string="Journal Entries">
|
||||
<group colspan="4" col="6">
|
||||
<field name="name" select="1" colspan="4" readonly="True"/>
|
||||
<field name="name" select="1" readonly="True"/>
|
||||
<field name="journal_id" select="1"/>
|
||||
<field name="period_id"/>
|
||||
<field name="type"/>
|
||||
<field name="ref" select="1"/>
|
||||
<field name="date" select="1"/>
|
||||
</group>
|
||||
<notebook colspan="4">
|
||||
<page string="Journal Entries Lines">
|
||||
@@ -956,8 +998,8 @@
|
||||
<field name="narration" colspan="4" nolabel="1"/>
|
||||
<field name="state" select="1"/>
|
||||
<group col="2" colspan="2">
|
||||
<button name="button_validate" states="draft" string="Validate" type="object" icon="gtk-execute"/>
|
||||
<button name="button_cancel" states="posted" string="Cancel" type="object" icon="gtk-cancel"/>
|
||||
<button name="button_validate" states="draft" string="Validate" type="object" icon="terp-camera_test"/>
|
||||
<button name="button_cancel" states="posted" string="Cancel" type="object" icon="terp-gtk-stop"/>
|
||||
</group>
|
||||
</page>
|
||||
<page string="Other Information">
|
||||
@@ -979,20 +1021,25 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Move">
|
||||
<group col='8' colspan='4'>
|
||||
<filter icon="terp-account" string="Draft" domain="[('state','=','draft')]" help="Draft Move Lines"/>
|
||||
<filter icon="terp-account" string="Posted" domain="[('state','=','posted')]" help="Posted Move Lines"/>
|
||||
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Entries"/>
|
||||
<filter icon="terp-camera_test" string="Posted" domain="[('state','=','posted')]" help="Posted Entries"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter icon="terp-camera_test" string="To Review" domain="[('to_check','=',True)]" groups="base.group_extended" help="To Review"/>
|
||||
<field name="date" select='1'/>
|
||||
<field name="name" select='1'/>
|
||||
<field name="journal_id" select='1'/>
|
||||
<field name="partner_id" select='1'/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By..." colspan="12" col="10">
|
||||
<filter string="Journal" icon="terp-account" domain="[]" context="{'group_by':'journal_id'}"/>
|
||||
<filter string="Period" icon="terp-account" domain="[]" context="{'group_by':'period_id'}"/>
|
||||
<filter string="Type" icon="terp-account" domain="[]" context="{'group_by':'type', 'set_visible':True}"/>
|
||||
<filter string="States" icon="terp-account" domain="[]" context="{'group_by':'state'}"/>
|
||||
<group col="10" colspan="4">
|
||||
<field name="journal_id" widget="selection" context="{'journal_id':self, 'visible_id':self or 0, 'normal_view':False}"/>
|
||||
<field name="period_id" widget="selection" context="{'period_id':self}"/>
|
||||
</group>
|
||||
<group expand="0" string="Group By..." colspan="12" col="10">
|
||||
<filter string="Journal" icon="terp-folder-orange" domain="[]" context="{'group_by':'journal_id'}"/>
|
||||
<filter string="Period" icon="terp-go-month" domain="[]" context="{'group_by':'period_id'}"/>
|
||||
<filter string="Type" icon="terp-stock_symbol-selection" domain="[]" context="{'group_by':'type', 'set_visible':True}"/>
|
||||
<filter string="States" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
@@ -1006,11 +1053,30 @@
|
||||
<field name="view_id" ref="view_move_tree"/>
|
||||
<field name="search_view_id" ref="view_account_move_filter"/>
|
||||
</record>
|
||||
<menuitem id="next_id_29" name="Search Entries" parent="account.menu_finance_entries" sequence="40"/>
|
||||
<menuitem action="action_move_line_form" id="menu_action_move_line_form" parent="next_id_29"/>
|
||||
|
||||
<act_window
|
||||
domain="[('move_id','=',active_id)]"
|
||||
id="act_account_move_to_account_move_line_open"
|
||||
name="Journal Items"
|
||||
context="{'move_id':active_id}"
|
||||
res_model="account.move.line"
|
||||
src_model="account.move"/>
|
||||
|
||||
<record id="action_move_to_review" model="ir.actions.act_window">
|
||||
<field name="name">Journal Entries to Review</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">account.move</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_id" ref="view_move_tree"/>
|
||||
<field name="search_view_id" ref="view_account_move_filter"/>
|
||||
<field name="domain">[('to_check','=',True)]</field>
|
||||
</record>
|
||||
<menuitem action="action_move_to_review" id="menu_action_move_to_review" parent="periodical_processing_journal_entries_validation"/>
|
||||
<!-- <menuitem id="next_id_29" name="Search Entries" parent="account.menu_finance_entries" sequence="40"/>-->
|
||||
<!-- <menuitem action="action_move_line_form" id="menu_action_move_line_form" parent="next_id_29"/>-->
|
||||
|
||||
<record id="action_move_line_form_encode_by_move" model="ir.actions.act_window">
|
||||
<field name="name">Journal Entries</field>
|
||||
<field name="name">Journal Vouchers</field>
|
||||
<field name="res_model">account.move</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
@@ -1018,7 +1084,32 @@
|
||||
<field name="search_view_id" ref="view_account_move_filter"/>
|
||||
</record>
|
||||
|
||||
<menuitem action="action_move_line_form_encode_by_move" id="menu_encode_entries_by_move" parent="menu_finance_entries"/>
|
||||
<!-- <menuitem action="action_move_line_form_encode_by_move" id="menu_encode_entries_by_move" parent="menu_finance_entries"/>-->
|
||||
|
||||
<record id="action_account_moves_sale" model="ir.actions.act_window">
|
||||
<field name="name">Journal Items</field>
|
||||
<field name="res_model">account.move.line</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="view_id" ref="view_move_line_tree"/>
|
||||
<field name="search_view_id" ref="view_account_move_line_filter"/>
|
||||
<field name="domain">[('journal_id.type', 'in', ['sale', 'sale_refund'])]</field>
|
||||
</record>
|
||||
|
||||
<menuitem action="action_account_moves_sale" id="menu_eaction_account_moves_sale" parent="menu_finance_receivables"/>
|
||||
|
||||
<record id="action_account_moves_purchase" model="ir.actions.act_window">
|
||||
<field name="name">Journal Items</field>
|
||||
<field name="res_model">account.move.line</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="view_id" ref="view_move_line_tree"/>
|
||||
<field name="search_view_id" ref="view_account_move_line_filter"/>
|
||||
<field name="domain">[('journal_id.type', 'in', ['purchase', 'purchase_refund'])]</field>
|
||||
<field name="context">{'journal_id':1}</field>
|
||||
</record>
|
||||
|
||||
<menuitem action="action_account_moves_purchase" id="menu_eaction_account_moves_purchase" parent="menu_finance_payables"/>
|
||||
|
||||
<record id="action_move_line_search" model="ir.actions.act_window">
|
||||
<field name="name">Entry Lines</field>
|
||||
@@ -1040,14 +1131,37 @@
|
||||
<field name="view_mode">form</field>
|
||||
<field name="act_window_id" ref="action_move_line_search"/>
|
||||
</record>
|
||||
<menuitem action="action_move_line_search" id="menu_action_move_line_search" parent="account.next_id_29"/>
|
||||
<record id="action_move_line_search_view3" model="ir.actions.act_window">
|
||||
<field name="name">Cash Register</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">account.move.line</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="view_id" ref="view_move_line_tree"/>
|
||||
<field name="search_view_id" ref="view_account_move_line_filter"/>
|
||||
<field name="domain">[('journal_id.type', '=', 'cash')]</field>
|
||||
</record>
|
||||
<record id="action_move_line_search_view4" model="ir.actions.act_window">
|
||||
<field name="name">Checks Register</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">account.move.line</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="view_id" ref="view_move_line_tree"/>
|
||||
<field name="search_view_id" ref="view_account_move_line_filter"/>
|
||||
<field name="domain">[('journal_id.type', '=', 'bank')]</field>
|
||||
</record>
|
||||
<menuitem action="action_move_line_search_view3" id="journal_cash_move_lines" parent="menu_finance_bank_and_cash"/>
|
||||
<menuitem action="action_move_line_search_view4" id="journal_bank_move_lines" parent="menu_finance_bank_and_cash"/>
|
||||
|
||||
<!-- <menuitem action="action_move_line_search" id="menu_action_move_line_search" parent="account.next_id_29"/>-->
|
||||
|
||||
<menuitem id="menu_finance_charts" name="Charts" parent="account.menu_finance" sequence="4"/>
|
||||
<!-- <wizard id="wizard_account_chart" menu="False" model="account.account" name="account.chart" string="Chart of Accounts"/>
|
||||
<menuitem icon="STOCK_INDENT" action="wizard_account_chart" id="menu_action_account_tree2" parent="account.menu_finance_charts" type="wizard"/>
|
||||
-->
|
||||
|
||||
|
||||
|
||||
<record id="view_bank_statement_reconcile_form" model="ir.ui.view">
|
||||
<field name="name">account.bank.statement.reconcile.form</field>
|
||||
<field name="model">account.bank.statement</field>
|
||||
@@ -1055,13 +1169,14 @@
|
||||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Statement">
|
||||
<field name="name" select="1"/>
|
||||
<field name="date" select="1"/>
|
||||
<field name="journal_id" on_change="onchange_journal_id(journal_id)" select="1"/>
|
||||
<field name="currency"/>
|
||||
<newline/>
|
||||
<field name="balance_start"/>
|
||||
<field name="balance_end_real"/>
|
||||
<group col="6" colspan="4">
|
||||
<field name="name" select="1"/>
|
||||
<field name="date" select="1"/>
|
||||
<field name="journal_id" on_change="onchange_journal_id(journal_id)" select="1"/>
|
||||
<field name="currency"/>
|
||||
<field name="balance_start"/>
|
||||
<field name="balance_end_real"/>
|
||||
</group>
|
||||
<notebook colspan="4">
|
||||
<page string="Select entries">
|
||||
<field colspan="4" domain="[('statement_id', '=', False), ('journal_id', '=', journal_id)]" name="move_line_ids" nolabel="1" widget="many2many"/>
|
||||
@@ -1094,9 +1209,9 @@
|
||||
<group col="7" colspan="4">
|
||||
<field name="state"/>
|
||||
<field name="balance_end"/>
|
||||
<button name="button_dummy" states="draft" string="Compute" icon="gtk-execute"/>
|
||||
<button name="button_confirm" states="draft" string="Confirm" type="object" icon="gtk-apply"/>
|
||||
<button name="button_cancel" states="confirm" string="Cancel" type="object" icon="gtk-cancel"/>
|
||||
<button name="button_dummy" states="draft" string="Compute" icon="terp-stock_format-scientific"/>
|
||||
<button name="button_confirm" states="draft" string="Confirm" type="object" icon="terp-camera_test"/>
|
||||
<button name="button_cancel" states="confirm" string="Cancel" type="object" icon="terp-gtk-stop"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
@@ -1108,20 +1223,32 @@
|
||||
<field name="view_mode">form,tree</field>
|
||||
<field name="view_id" ref="view_bank_statement_reconcile_form"/>
|
||||
</record>
|
||||
<menuitem
|
||||
<!-- <menuitem
|
||||
id="next_id_30"
|
||||
name="Bank Reconciliation"
|
||||
parent="account.menu_finance_periodical_processing"
|
||||
groups="group_account_user"/>
|
||||
parent="menu_finance_periodical_processing"
|
||||
groups="group_account_user"/> -->
|
||||
|
||||
<menuitem action="action_bank_statement_reconciliation_form" id="menu_action_account_bank_reconcile_tree" parent="next_id_30"/>
|
||||
<!-- <menuitem action="action_bank_statement_reconciliation_form" id="menu_action_account_bank_reconcile_tree" parent="next_id_30"/>-->
|
||||
<!-- <wizard id="action_account_bank_reconcile_tree" menu="False" model="account.move.line" name="account.move.bank.reconcile" string="Bank reconciliation"/> -->
|
||||
<!-- <menuitem action="action_account_bank_reconcile_tree" id="menu_action_account_bank_reconcile_check_tree" parent="account.next_id_30" type="wizard"/> -->
|
||||
|
||||
<!-- bank reconsilation -->
|
||||
<menuitem action="action_account_bank_reconcile_tree"
|
||||
id="menu_action_account_bank_reconcile_check_tree"
|
||||
parent="account.next_id_30" />
|
||||
parent="periodical_processing_reconciliation" groups="group_account_user" />
|
||||
|
||||
<act_window
|
||||
context="{'search_default_next_partner':1}"
|
||||
id="action_account_manual_reconcile" name="Entry Lines"
|
||||
res_model="account.move.line"
|
||||
/>
|
||||
|
||||
<menuitem
|
||||
name="Manual Reconcilication" icon="STOCK_EXECUTE"
|
||||
action="action_account_manual_reconcile"
|
||||
id="menu_manual_reconcile"
|
||||
parent="account.periodical_processing_reconciliation"/>
|
||||
|
||||
|
||||
<act_window
|
||||
@@ -1180,7 +1307,7 @@
|
||||
<field name="model">account.model.line</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Entry Model Line">
|
||||
<tree string="Entry Model Line" editable="bottom">
|
||||
<field name="sequence"/>
|
||||
<field name="ref"/>
|
||||
<field name="name"/>
|
||||
@@ -1188,6 +1315,8 @@
|
||||
<field name="partner_id"/>
|
||||
<field name="debit"/>
|
||||
<field name="credit"/>
|
||||
<field name="date"/>
|
||||
<field name="date_maturity"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
@@ -1223,10 +1352,10 @@
|
||||
<field name="name" select="1"/>
|
||||
<field name="ref" select="1"/>
|
||||
<field name="journal_id" select="1"/>
|
||||
<field colspan="4" name="lines_id" widget="one2many_list"/>
|
||||
<field colspan="4" nolabel="1" name="lines_id" height="250" widget="one2many_list"/>
|
||||
<separator string="Legend" colspan="4"/>
|
||||
<field name="legend" colspan="4" nolabel="1"/>
|
||||
<group col="1" colspan="4">
|
||||
<group col="1" colspan="4">
|
||||
<button name="%(action_account_use_model_create_entry)d" string="Create entries" type="action" icon="gtk-execute"/>
|
||||
</group>
|
||||
</form>
|
||||
@@ -1244,17 +1373,16 @@
|
||||
</field>
|
||||
</record>
|
||||
<record id="action_model_form" model="ir.actions.act_window">
|
||||
<field name="name">Models Definition</field>
|
||||
<field name="name">Define Recurring</field>
|
||||
<field name="res_model">account.model</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<menuitem action="action_model_form" id="menu_action_model_form" parent="menu_finance_configuration"/>
|
||||
|
||||
<menuitem action="action_model_form" id="menu_action_model_form" parent="account.menu_configuration_misc"/>
|
||||
|
||||
<!--
|
||||
# Payment Terms
|
||||
-->
|
||||
# Payment Terms
|
||||
-->
|
||||
|
||||
<record id="view_payment_term_line_tree" model="ir.ui.view">
|
||||
<field name="name">account.payment.term.line.tree</field>
|
||||
@@ -1312,7 +1440,7 @@
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<menuitem action="action_payment_term_form" id="menu_action_payment_term_form" parent="menu_finance_configuration"/>
|
||||
<menuitem action="action_payment_term_form" id="menu_action_payment_term_form" parent="menu_configuration_misc"/>
|
||||
|
||||
<!--
|
||||
# Account Subscriptions
|
||||
@@ -1372,7 +1500,7 @@
|
||||
<field name="period_type"/>
|
||||
<field name="model_id"/>
|
||||
<group col="2" colspan="2">
|
||||
<button name="compute" states="draft,running" string="Compute" type="object" icon="gtk-execute"/>
|
||||
<button name="compute" states="draft,running" string="Compute" type="object" icon="terp-stock_format-scientific"/>
|
||||
<button name="remove_line" states="running" string="Remove Lines" type="object" icon="gtk-remove"/>
|
||||
</group>
|
||||
<separator colspan="4" string="Subscription Lines"/>
|
||||
@@ -1392,7 +1520,7 @@
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<menuitem action="action_subscription_form" id="menu_action_subscription_form" parent="account.menu_finance_recurrent_entries"/>
|
||||
<!-- <menuitem action="action_subscription_form" id="menu_action_subscription_form" parent="account.menu_finance_recurrent_entries"/>-->
|
||||
|
||||
<record id="action_subscription_form_running" model="ir.actions.act_window">
|
||||
<field name="name">Running Subscriptions</field>
|
||||
@@ -1496,7 +1624,7 @@
|
||||
|
||||
<act_window domain="[('partner_id', '=', active_id), ('account_id.type', 'in', ['receivable', 'payable'])]" id="act_account_partner_account_move_all" name="Receivables & Payables" res_model="account.move.line" src_model="res.partner"/>
|
||||
|
||||
<act_window domain="[('partner_id', '=', active_id)]" id="act_account_partner_account_move" name="All Account Entries" res_model="account.move.line" src_model="res.partner"/>
|
||||
<act_window domain="[('partner_id', '=', active_id)]" id="act_account_partner_account_move" name="All Account Entries" res_model="account.move.line" src_model="res.partner"/>
|
||||
|
||||
<record id="view_account_addtmpl_wizard_form" model="ir.ui.view">
|
||||
<field name="name">Account Add wizard</field>
|
||||
@@ -1519,14 +1647,24 @@
|
||||
res_model="account.addtmpl.wizard"
|
||||
context="{'tmpl_ids': active_id}"
|
||||
src_model="account.account.template"
|
||||
view_type="form" view_mode="form"/>
|
||||
view_type="form" view_mode="form"/>
|
||||
|
||||
<!-- Account Templates -->
|
||||
<menuitem
|
||||
id="account_template_folder"
|
||||
name="Templates"
|
||||
parent="account.menu_finance_accounting"
|
||||
parent="menu_finance_accounting"
|
||||
groups="base.group_multi_company"/>
|
||||
<menuitem
|
||||
id="account_template_taxes"
|
||||
name="Taxes"
|
||||
parent="account_template_folder"
|
||||
groups="base.group_multi_company" sequence="2"/>
|
||||
<menuitem
|
||||
id="account_template_accounts"
|
||||
name="Accounts"
|
||||
parent="account_template_folder"
|
||||
groups="base.group_multi_company" sequence="1"/>
|
||||
|
||||
|
||||
<record id="view_account_template_form" model="ir.ui.view">
|
||||
@@ -1577,7 +1715,7 @@
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem action="action_account_template_form" id="menu_action_account_template_form" parent="account_template_folder"/>
|
||||
<menuitem action="action_account_template_form" id="menu_action_account_template_form" parent="account_template_accounts"/>
|
||||
|
||||
<!-- Chart of Accounts Templates -->
|
||||
|
||||
@@ -1622,7 +1760,7 @@
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
|
||||
<menuitem action="action_account_chart_template_form" id="menu_action_account_chart_template_form" parent="account_template_folder"/>
|
||||
<menuitem action="action_account_chart_template_form" id="menu_action_account_chart_template_form" parent="account_template_accounts"/>
|
||||
|
||||
<!-- Account Tax Templates -->
|
||||
|
||||
@@ -1698,7 +1836,7 @@
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
|
||||
<menuitem action="action_account_tax_template_form" id="menu_action_account_tax_template_form" parent="account_template_folder" sequence="13"/>
|
||||
<menuitem action="action_account_tax_template_form" id="menu_action_account_tax_template_form" parent="account_template_taxes" sequence="13"/>
|
||||
|
||||
<!-- Account Tax Code Templates -->
|
||||
<record id="view_tax_code_template_tree" model="ir.ui.view">
|
||||
@@ -1736,7 +1874,7 @@
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<menuitem action="action_account_tax_code_template_form" id="menu_action_account_tax_code_template_form" parent="account_template_folder" sequence="14"/>
|
||||
<menuitem action="action_account_tax_code_template_form" id="menu_action_account_tax_code_template_form" parent="account_template_taxes" sequence="14"/>
|
||||
|
||||
|
||||
<!-- Wizard for Multi Charts of Accounts -->
|
||||
@@ -1752,17 +1890,17 @@
|
||||
<attribute name="string">Generate Chart of Accounts from a Chart Template</attribute>
|
||||
</form>
|
||||
<separator string="title" position="attributes">
|
||||
<attribute name="string"
|
||||
<attribute name="string"
|
||||
>Generate Chart of Accounts from a Chart Template</attribute>
|
||||
</separator>
|
||||
<xpath expr="//label[@string='description']" position="attributes">
|
||||
<attribute name="string">This will automatically configure your chart of accounts, bank accounts, taxes and journals according to the selected template</attribute>
|
||||
<attribute name="width">150</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='rowspan'>15</attribute>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
</separator>
|
||||
<xpath expr="//label[@string='description']" position="attributes">
|
||||
<attribute name="string">This will automatically configure your chart of accounts, bank accounts, taxes and journals according to the selected template</attribute>
|
||||
<attribute name="width">150</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='rowspan'>15</attribute>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
<group string="res_config_contents" position="replace">
|
||||
<field name="company_id" widget="selection"
|
||||
/>
|
||||
@@ -1783,7 +1921,6 @@
|
||||
</tree>
|
||||
</field>
|
||||
</group>
|
||||
<xpath expr='//button[@name="action_skip"]' position='replace'/>
|
||||
</data>
|
||||
</field>
|
||||
</record>
|
||||
@@ -1869,5 +2006,39 @@
|
||||
id="menu_action_account_fiscal_position_form_template"
|
||||
parent="account_template_folder" sequence="20"/>
|
||||
|
||||
<record id="action_move_journal_line" model="ir.actions.act_window">
|
||||
<field name="name">Journal Entries</field>
|
||||
<field name="res_model">account.move</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="view_id" ref="view_move_tree"/>
|
||||
<field name="search_view_id" ref="view_account_move_filter"/>
|
||||
</record>
|
||||
|
||||
<menuitem
|
||||
icon="STOCK_JUSTIFY_FILL"
|
||||
action="action_move_journal_line"
|
||||
id="menu_action_move_journal_line_form"
|
||||
parent="account.menu_finance_entries"
|
||||
sequence="5"/>
|
||||
|
||||
<record id="action_account_moves_all" model="ir.actions.act_window">
|
||||
<field name="name">Journal Items</field>
|
||||
<field name="res_model">account.move.line</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="view_id" ref="view_move_line_tree"/>
|
||||
<field name="search_view_id" ref="view_account_move_line_filter"/>
|
||||
</record>
|
||||
|
||||
<menuitem
|
||||
action="action_account_moves_all"
|
||||
icon="STOCK_JUSTIFY_FILL"
|
||||
id="menu_eaction_account_moves_all"
|
||||
parent="account.menu_finance_entries"
|
||||
sequence="4"
|
||||
/>
|
||||
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -1,12 +1,12 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
<!-- <wizard-->
|
||||
<!-- string="Account balance-Compare Years"-->
|
||||
<!-- model="account.account"-->
|
||||
<!-- name="account.balance.account.balance.report"-->
|
||||
<!-- keyword="client_print_multi"-->
|
||||
<!-- id="wizard_account_balance_compare_report"/>-->
|
||||
<!-- <wizard-->
|
||||
<!-- string="Account balance-Compare Years"-->
|
||||
<!-- model="account.account"-->
|
||||
<!-- name="account.balance.account.balance.report"-->
|
||||
<!-- keyword="client_print_multi"-->
|
||||
<!-- id="wizard_account_balance_compare_report"/>-->
|
||||
|
||||
<!-- <wizard id="wizard_invoice_refund" model="account.invoice" name="account.invoice.refund" string="Credit Note" groups="base.group_user"/> -->
|
||||
|
||||
@@ -33,7 +33,7 @@
|
||||
-->
|
||||
|
||||
<!-- automatic reconcile -->
|
||||
<menuitem id="next_id_20" name="Reconciliation" parent="menu_finance_periodical_processing"/>
|
||||
<!-- <menuitem id="next_id_20" name="Reconciliation" parent="menu_finance_periodical_processing"/>-->
|
||||
<!-- <wizard id="wizard_automatic_reconcile" menu="False" model="account.account" name="account.automatic.reconcile" string="Automatic reconciliation"/>
|
||||
<menuitem action="wizard_automatic_reconcile" id="menu_automatic_reconcile" parent="next_id_20" type="wizard"/>-->
|
||||
|
||||
@@ -52,18 +52,15 @@
|
||||
<!-- <wizard id="wizard_reconcile_unreconcile" model="account.move.reconcile" name="account.reconcile.unreconcile" string="Unreconcile Entries"/>-->
|
||||
|
||||
|
||||
<!-- <wizard id="wizard_reconcile_select" menu="False" model="account.move.line" name="account.move.line.reconcile.select" string="Reconcile entries"/>
|
||||
<menuitem action="wizard_reconcile_select" id="menu_reconcile_select" parent="account.next_id_20" type="wizard"/>
|
||||
-->
|
||||
<!-- <wizard id="wizard_reconcile_select" menu="False" model="account.move.line" name="account.move.line.reconcile.select" string="Reconcile entries"/> -->
|
||||
<!-- <menuitem action="wizard_reconcile_select" id="menu_reconcile_select" parent="account.next_id_20" type="wizard"/> -->
|
||||
|
||||
<!-- unreconcile -->
|
||||
<!-- <wizard id="wizard_unreconcile" model="account.move.line" name="account.move.line.unreconcile" string="Unreconcile Entries"/>-->
|
||||
|
||||
<!-- unreconcile
|
||||
|
||||
<wizard id="wizard_unreconcile_select" menu="False" model="account.move.line" name="account.move.line.unreconcile.select" string="Unreconcile entries"/>
|
||||
<menuitem action="wizard_unreconcile_select" id="menu_unreconcile_select" parent="account.next_id_20" type="wizard"/>
|
||||
-->
|
||||
<!-- <wizard id="wizard_unreconcile_select" menu="False" model="account.move.line" name="account.move.line.unreconcile.select" string="Unreconcile entries"/> -->
|
||||
<!-- <menuitem action="wizard_unreconcile_select" id="menu_unreconcile_select" parent="account.next_id_20" type="wizard"/> -->
|
||||
|
||||
<!-- subscriptions -->
|
||||
<!--
|
||||
@@ -78,7 +75,7 @@
|
||||
<!-- report-related wizards -->
|
||||
<!-- <wizard id="wizard_partner_balance_report" menu="False" model="res.partner" name="account.partner.balance.report" string="Partner Balance"/>
|
||||
<menuitem icon="STOCK_PRINT" action="wizard_partner_balance_report" id="menu_partner_balance" parent="account.next_id_22" type="wizard"/> -->
|
||||
<menuitem id="next_id_22" name="Partner Accounts" parent="menu_finance_generic_reporting" sequence="1"/>
|
||||
<menuitem id="next_id_22" name="Partner Accounts" parent="menu_finance_generic_reporting" sequence="1"/>
|
||||
<!--<wizard id="wizard_third_party_ledger" menu="False" model="res.partner" name="account.third_party_ledger.report" string="Partner Ledger"/>
|
||||
<menuitem icon="STOCK_PRINT" action="wizard_third_party_ledger" id="menu_third_party_ledger" parent="account.next_id_22" type="wizard"/> -->
|
||||
|
||||
@@ -97,30 +94,30 @@
|
||||
|
||||
<wizard id="wizard_validate_account_moves_line" menu="True" model="account.move.line" name="account.move_line.validate" string="Validate Ledger Postings"/>-->
|
||||
|
||||
<!-- Use Models -->
|
||||
<!-- Use Models -->
|
||||
<!-- <wizard string="Create Entries From Models" model="account.model" name="account_use_models" menu="False" id="wizard_account_use_model"/>-->
|
||||
<!-- <menuitem action="wizard_account_use_model" type="wizard" parent="account.menu_finance_recurrent_entries" id="menu_account_use_model"/>-->
|
||||
|
||||
<!-- <wizard string="Create Entries From Models" model="account.move.line" name="account_use_models" menu="True" id="wizard_line_account_use_model"/>-->
|
||||
|
||||
<!-- account.invoice -->
|
||||
<!-- account.invoice -->
|
||||
<!-- <wizard string="Open State" model="account.invoice" name="account.wizard_paid_open" menu="False" id="wizard_paid_open" groups="base.group_user"/> -->
|
||||
|
||||
<!-- generic report wizard -->
|
||||
<!-- <wizard id="wizard_account_balance_report" menu="False" model="account.account" name="account.account.balance.report" string="Account Balance"/>-->
|
||||
<!-- generic report wizard -->
|
||||
<!-- <wizard id="wizard_account_balance_report" menu="False" model="account.account" name="account.account.balance.report" string="Account Balance"/>-->
|
||||
<!-- <menuitem icon="STOCK_PRINT" action="wizard_account_balance_report" id="menu_account_balance_report" parent="account.menu_generic_report" type="wizard"/>-->
|
||||
|
||||
<!-- <wizard id="wizard_general_ledger" menu="False" model="account.account" name="account.general.ledger.report" string="General Ledger"/>
|
||||
<!-- <wizard id="wizard_general_ledger" menu="False" model="account.account" name="account.general.ledger.report" string="General Ledger"/>
|
||||
<menuitem icon="STOCK_PRINT" action="wizard_general_ledger" id="menu_general_ledger" parent="account.menu_generic_report" type="wizard"/>-->
|
||||
|
||||
<!-- <wizard id="wizard_print_journal" menu="False" model="account.journal.period" name="account.print.journal.report" string="Print Journal" />
|
||||
<menuitem icon="STOCK_PRINT" action="wizard_print_journal" id="menu_print_journal" parent="account.menu_generic_report" type="wizard" />
|
||||
<menuitem icon="STOCK_PRINT" action="wizard_print_journal" id="menu_print_journal" parent="account.menu_generic_report" type="wizard" />
|
||||
|
||||
<wizard id="wizard_central_journal" menu="False" model="account.journal.period" name="account.central.journal.report" string="Print Central Journal" />
|
||||
<menuitem icon="STOCK_PRINT" action="wizard_central_journal" id="menu_central_journal" parent="account.menu_generic_report" type="wizard" />
|
||||
<menuitem icon="STOCK_PRINT" action="wizard_central_journal" id="menu_central_journal" parent="account.menu_generic_report" type="wizard" />
|
||||
|
||||
<wizard id="wizard_general_journal" menu="False" model="account.journal.period" name="account.general.journal.report" string="Print General Journal" />
|
||||
<menuitem icon="STOCK_PRINT" action="wizard_general_journal" id="menu_general_journal" parent="account.menu_generic_report" type="wizard" />-->
|
||||
<menuitem icon="STOCK_PRINT" action="wizard_general_journal" id="menu_general_journal" parent="account.menu_generic_report" type="wizard" />-->
|
||||
|
||||
<!-- <wizard id="wizard_invoice_currency_change" model="account.invoice" name="account.invoice.currency_change" string="Change Currency" groups="base.group_user"/>-->
|
||||
</data>
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data noupdate="1">
|
||||
|
||||
<!--
|
||||
Administrator shortcut
|
||||
Demo user startup menu
|
||||
+1
-23
@@ -6,13 +6,6 @@
|
||||
<field name="name">Accountants</field>
|
||||
</record>
|
||||
|
||||
<record id="action_account_analytic_line_to_invoice" model="ir.actions.act_window">
|
||||
<field name="name">Costs to invoice</field>
|
||||
<field name="res_model">report.account.analytic.line.to.invoice</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">graph,tree</field>
|
||||
</record>
|
||||
|
||||
<record id="action_aged_receivable" model="ir.actions.act_window">
|
||||
<field name="name">Receivable Accounts</field>
|
||||
<field name="res_model">report.account.receivable</field>
|
||||
@@ -28,9 +21,6 @@
|
||||
<field name="domain">[('type','=','income')]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<act_window domain="[('state','<>','close'),('partner_id','<>',False),('to_invoice', '<>', False)]" id="act_my_account" name="Accounts to invoice" res_model="account.analytic.account" src_model="res.users" view_mode="tree,form" view_type="form"/>
|
||||
|
||||
<record id="board_account_form" model="ir.ui.view">
|
||||
<field name="name">board.account.form</field>
|
||||
<field name="model">board.board</field>
|
||||
@@ -38,25 +28,12 @@
|
||||
<field name="arch" type="xml">
|
||||
<form string="Account Board">
|
||||
<hpaned>
|
||||
|
||||
<child1>
|
||||
|
||||
<action colspan="4" height="160" name="%(hr_timesheet_invoice.action_analytic_account_tree)d" string="Analytic accounts to close" width="510"/>
|
||||
|
||||
<action colspan="4" height="160" name="%(act_my_account)d" string="Accounts to invoice" width="510"/>
|
||||
|
||||
<action colspan="4" height="160" name="%(account.action_invoice_tree1)d" string="Draft Customer Invoices" domain="[('state','=','draft'),('type','=','out_invoice')]"/>
|
||||
</child1>
|
||||
|
||||
<child2>
|
||||
<button colspan="4" icon="terp-purchase" name="%(account_report.action_account_report_tree_view_indicator)d" string="My indicators" type="action"/>
|
||||
|
||||
<action colspan="4" height="220" name="%(action_account_analytic_line_to_invoice)d" string="Costs to invoice"/>
|
||||
|
||||
<action colspan="4" height="220" name="%(action_aged_receivable)d" string="Aged receivables"/>
|
||||
|
||||
<action colspan="4" height="220" name="%(action_aged_income)d" string="Aged income"/>
|
||||
|
||||
</child2>
|
||||
</hpaned>
|
||||
</form>
|
||||
@@ -71,6 +48,7 @@
|
||||
<field name="usage">menu</field>
|
||||
<field name="view_id" ref="board_account_form"/>
|
||||
</record>
|
||||
|
||||
<menuitem icon="terp-graph" id="base.dashboard" name="Dashboards" sequence="2" parent="base.reporting_menu"/>
|
||||
<menuitem id="next_id_68" name="Accounting" parent="base.dashboard"
|
||||
groups="account.group_account_manager"/>
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
|
||||
#
|
||||
@@ -15,7 +15,7 @@
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
@@ -33,3 +33,5 @@ out after this mail was sent, please consider the present one as \
|
||||
void. Do not hesitate to contact our accounting department'
|
||||
}
|
||||
res_company()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:05+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:03+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -805,7 +805,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
@@ -2133,7 +2132,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-17 05:01+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:03+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:05+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:03+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2148,7 +2148,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Stavka analitike"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
+57
-52
@@ -7,14 +7,14 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.0\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2010-04-18 09:39+0000\n"
|
||||
"Last-Translator: Albert Cervera i Areny - http://www.NaN-tic.com <albert@nan-"
|
||||
"tic.com>\n"
|
||||
"PO-Revision-Date: 2010-06-04 09:39+0000\n"
|
||||
"Last-Translator: Jordi Esteve (www.zikzakmedia.com) "
|
||||
"<jesteve@zikzakmedia.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-21 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -61,12 +61,12 @@ msgstr "Nom de model no vàlid en la definició de l'acció."
|
||||
#. module: account
|
||||
#: help:account.journal,currency:0
|
||||
msgid "The currency used to enter statement"
|
||||
msgstr "La moneda utilitzada per introduir assentaments"
|
||||
msgstr "La divisa utilitzada per introduir assentaments"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account_use_models,init_form:0
|
||||
msgid "Select Message"
|
||||
msgstr "Selecciona missatge"
|
||||
msgstr "Seleccioneu missatge"
|
||||
|
||||
#. module: account
|
||||
#: help:product.category,property_account_income_categ:0
|
||||
@@ -189,7 +189,7 @@ msgstr "Plans comptables"
|
||||
#. module: account
|
||||
#: model:ir.actions.wizard,name:account.wizard_move_line_select
|
||||
msgid "Move line select"
|
||||
msgstr "Selecciona línia moviment"
|
||||
msgstr "Seleccioneu línia moviment"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.journal.period.print:0
|
||||
@@ -202,7 +202,7 @@ msgstr "Ref. assentament"
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_model_line
|
||||
msgid "Account Model Entries"
|
||||
msgstr "Línia de model d'assentament"
|
||||
msgstr "Líniees de model d'assentament"
|
||||
|
||||
#. module: account
|
||||
#: field:account.tax.code,sum_period:0
|
||||
@@ -315,7 +315,7 @@ msgstr "Pagaments fora de termini"
|
||||
#: wizard_view:account.analytic.account.quantity_cost_ledger.report,init:0
|
||||
#: wizard_view:account.vat.declaration,init:0
|
||||
msgid "Select period"
|
||||
msgstr "Selecciona període"
|
||||
msgstr "Seleccioneu període"
|
||||
|
||||
#. module: account
|
||||
#: field:account.invoice,origin:0
|
||||
@@ -457,7 +457,7 @@ msgstr "Estat"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree13
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree13
|
||||
msgid "Unpaid Supplier Refunds"
|
||||
msgstr "Factures d'abonament de proveïdor sense pagar"
|
||||
msgstr "Factures rectificatives (abonament) de proveïdor sense pagar"
|
||||
|
||||
#. module: account
|
||||
#: view:account.tax:0
|
||||
@@ -710,7 +710,7 @@ msgstr "Informació addicional"
|
||||
#. module: account
|
||||
#: selection:account.invoice,type:0
|
||||
msgid "Customer Refund"
|
||||
msgstr "Factura d'abonament de client"
|
||||
msgstr "Factura rectificativa (abonament) de client"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account.analytic.account.chart,init:0
|
||||
@@ -909,7 +909,7 @@ msgstr "Diari de desajust"
|
||||
#: field:account.model.line,amount_currency:0
|
||||
#: field:account.move.line,amount_currency:0
|
||||
msgid "Amount Currency"
|
||||
msgstr "Import canvi"
|
||||
msgstr "Import divisa"
|
||||
|
||||
#. module: account
|
||||
#: field:account.chart.template,property_account_expense_categ:0
|
||||
@@ -938,7 +938,7 @@ msgstr "Exercici fiscal per obrir"
|
||||
#. module: account
|
||||
#: view:account.config.wizard:0
|
||||
msgid "Select Chart of Accounts"
|
||||
msgstr "Selecciona pla comptable"
|
||||
msgstr "Seleccioneu un pla comptable"
|
||||
|
||||
#. module: account
|
||||
#: field:account.analytic.account,quantity:0
|
||||
@@ -1242,7 +1242,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.account,company_currency_id:0
|
||||
msgid "Company Currency"
|
||||
msgstr "Moneda de la companyia"
|
||||
msgstr "Divisa de la companyia"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_fiscal_position_account_template
|
||||
@@ -1353,7 +1353,7 @@ msgstr "Missatge"
|
||||
#. module: account
|
||||
#: model:process.node,note:account.process_node_supplierpaymentorder0
|
||||
msgid "Select invoices you want to pay and manages advances"
|
||||
msgstr "Selecciona factures que es volen pagar i gestiona avançaments"
|
||||
msgstr "Seleccioneu les factures que voleu pagar i gestionar avançaments"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.account,type:0
|
||||
@@ -1887,7 +1887,7 @@ msgstr "Data inicial"
|
||||
#. module: account
|
||||
#: model:account.journal,name:account.refund_expenses_journal
|
||||
msgid "x Expenses Credit Notes Journal"
|
||||
msgstr "x Diari factures d'abonament de despeses"
|
||||
msgstr "x Diari factures rectificatives (abonament) de despeses"
|
||||
|
||||
#. module: account
|
||||
#: field:account.analytic.journal,type:0
|
||||
@@ -1914,7 +1914,7 @@ msgstr "Base imposable"
|
||||
#: field:account.tax,account_collected_id:0
|
||||
#: field:account.tax.template,account_collected_id:0
|
||||
msgid "Invoice Tax Account"
|
||||
msgstr "Compte impostos de factura"
|
||||
msgstr "Compte impostos de factures"
|
||||
|
||||
#. module: account
|
||||
#: view:account.move.line:0
|
||||
@@ -2026,7 +2026,7 @@ msgstr "Informe analític de diari"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree3
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree3
|
||||
msgid "Customer Refunds"
|
||||
msgstr "Factures d'abonament de client"
|
||||
msgstr "Factures rectificatives (abonament) de client"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.vat.declaration:0
|
||||
@@ -2047,7 +2047,7 @@ msgstr "Nom diari-període"
|
||||
#: field:account.tax.code,name:0
|
||||
#: field:account.tax.code.template,name:0
|
||||
msgid "Tax Case Name"
|
||||
msgstr "Nom impost del cas"
|
||||
msgstr "Nom codi d'impost"
|
||||
|
||||
#. module: account
|
||||
#: help:account.journal,entry_posted:0
|
||||
@@ -2057,7 +2057,7 @@ msgid ""
|
||||
"manual validation."
|
||||
msgstr ""
|
||||
"Marqueu aquesta casella si no voleu que els nous assentaments passin per "
|
||||
"l'estat 'esborrany' i vagin directament a l'estat 'fixat' sense validar-se "
|
||||
"l'estat 'Esborrany' i vagin directament a l'estat 'Fixat' sense validar-los "
|
||||
"manualment."
|
||||
|
||||
#. module: account
|
||||
@@ -2144,7 +2144,7 @@ msgstr "Anterior"
|
||||
#: field:account.model.line,currency_id:0
|
||||
#: field:account.move.line,currency_id:0
|
||||
msgid "Currency"
|
||||
msgstr "Moneda"
|
||||
msgstr "Divisa"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.act_account_journal_2_account_invoice_opened
|
||||
@@ -2179,7 +2179,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Assentament analític"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Missatge de pagaments fora de termini"
|
||||
|
||||
@@ -2285,7 +2286,7 @@ msgstr "Diari assentaments d'obertura"
|
||||
#. module: account
|
||||
#: view:account.config.wizard:0
|
||||
msgid "Create a Fiscal Year"
|
||||
msgstr "Crea un exercici fiscal"
|
||||
msgstr "Creeu un exercici fiscal"
|
||||
|
||||
#. module: account
|
||||
#: field:product.template,taxes_id:0
|
||||
@@ -2320,7 +2321,8 @@ msgstr "2"
|
||||
#: wizard_view:account.chart,init:0
|
||||
msgid "(If you do not select Fiscal year it will take all open fiscal years)"
|
||||
msgstr ""
|
||||
"(Si no es selecciona cap any fiscal s'utilitzen tots els anys fiscals oberts)"
|
||||
"(Si no es selecciona cap exercici fiscal s'utilitzen tots els exercicis "
|
||||
"fiscals oberts)"
|
||||
|
||||
#. module: account
|
||||
#: help:account.invoice.tax,base_code_id:0
|
||||
@@ -2467,7 +2469,7 @@ msgstr "Data final"
|
||||
#: model:ir.actions.act_window,name:account.action_move_line_tree1
|
||||
#: model:ir.ui.menu,name:account.menu_action_move_line_search
|
||||
msgid "Entry Lines"
|
||||
msgstr "Línies de l'extracte"
|
||||
msgstr "Apunts"
|
||||
|
||||
#. module: account
|
||||
#: view:account.tax:0
|
||||
@@ -2526,7 +2528,7 @@ msgstr "Assentaments conciliats"
|
||||
#. module: account
|
||||
#: help:account.bank.statement.reconcile,total_second_amount:0
|
||||
msgid "The amount in the currency of the journal"
|
||||
msgstr "La quantitat en la moneda del diari"
|
||||
msgstr "La quantitat en la divisa del diari"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.general.ledger.report,checktype,landscape:0
|
||||
@@ -2836,7 +2838,7 @@ msgstr "Companyies que es refereixen a l'empresa"
|
||||
#. module: account
|
||||
#: field:account.move.line,date:0
|
||||
msgid "Effective date"
|
||||
msgstr "Data vigència"
|
||||
msgstr "Data"
|
||||
|
||||
#. module: account
|
||||
#: help:account.tax.template,sequence:0
|
||||
@@ -2961,7 +2963,7 @@ msgstr "1cm 27.7cm 20cm 27.7cm"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree12
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree12
|
||||
msgid "Draft Supplier Refunds"
|
||||
msgstr "Factures d'abonament de proveïdor esborrany"
|
||||
msgstr "Factures rectificatives (abonament) de proveïdor esborrany"
|
||||
|
||||
#. module: account
|
||||
#: model:process.node,name:account.process_node_accountingstatemententries0
|
||||
@@ -3048,7 +3050,7 @@ msgstr "Taxa de divises de sortida"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree10
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree10
|
||||
msgid "Draft Customer Refunds"
|
||||
msgstr "Factures d'abonament de client esborrany"
|
||||
msgstr "Factures rectificatives (abonament) de client esborrany"
|
||||
|
||||
#. module: account
|
||||
#: field:account.journal.column,readonly:0
|
||||
@@ -3606,7 +3608,7 @@ msgstr "Impressió"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree4_new
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree4_new
|
||||
msgid "New Supplier Refund"
|
||||
msgstr "Nova factura d'abonament de proveïdor"
|
||||
msgstr "Nova factura rectificativa (abonament) de proveïdor"
|
||||
|
||||
#. module: account
|
||||
#: view:account.model:0
|
||||
@@ -3616,7 +3618,7 @@ msgstr "Model d'assentament"
|
||||
#. module: account
|
||||
#: wizard_field:account.general.ledger.report,checktype,amount_currency:0
|
||||
msgid "With Currency"
|
||||
msgstr "Amb moneda"
|
||||
msgstr "Mostra divisa"
|
||||
|
||||
#. module: account
|
||||
#: view:account.account:0
|
||||
@@ -3721,12 +3723,12 @@ msgstr "Codificació extracte"
|
||||
#: wizard_view:account.invoice.refund,init:0
|
||||
#: model:ir.actions.wizard,name:account.wizard_invoice_refund
|
||||
msgid "Credit Note"
|
||||
msgstr "Factura d'abonament"
|
||||
msgstr "Factura rectificativa (abonament)"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.todo,note:account.config_fiscalyear
|
||||
msgid "Define Fiscal Years and Select Charts of Account"
|
||||
msgstr "Defineix exercicis fiscals i selecciona pla comptable"
|
||||
msgstr "Definiu els exercicis fiscals i seleccioneu el pla comptable"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.move.line.reconcile,addendum,period_id:0
|
||||
@@ -3736,7 +3738,7 @@ msgstr "Període de desajust"
|
||||
#. module: account
|
||||
#: selection:account.config.wizard,period:0
|
||||
msgid "3 Months"
|
||||
msgstr "3 mesos"
|
||||
msgstr "Trimestral"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account.move.journal,init:0
|
||||
@@ -3800,7 +3802,7 @@ msgstr "Data inicial"
|
||||
#. module: account
|
||||
#: wizard_view:account.general.ledger.report,account_selection:0
|
||||
msgid "Select Chart"
|
||||
msgstr "Selecciona pla comptable"
|
||||
msgstr "Seleccioneu un pla comptable"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.chart,init,target_move:0
|
||||
@@ -3867,7 +3869,7 @@ msgstr "Seqüència de l'assentament"
|
||||
#: selection:account.account,type:0
|
||||
#: selection:account.account.template,type:0
|
||||
msgid "Closed"
|
||||
msgstr "Tancat"
|
||||
msgstr "Tancament"
|
||||
|
||||
#. module: account
|
||||
#: model:process.node,name:account.process_node_paymententries0
|
||||
@@ -4022,7 +4024,7 @@ msgstr "Propietats de comptabilitat del client"
|
||||
#. module: account
|
||||
#: view:account.bank.statement:0
|
||||
msgid "Select entries"
|
||||
msgstr "Selecciona les entrades"
|
||||
msgstr "Seleccioneu les entrades"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.chart,init,target_move:0
|
||||
@@ -4048,7 +4050,7 @@ msgstr "Compte a pagar"
|
||||
#: field:account.account,currency_id:0
|
||||
#: field:account.account.template,currency_id:0
|
||||
msgid "Secondary Currency"
|
||||
msgstr "Moneda secundària"
|
||||
msgstr "Divisa secundària"
|
||||
|
||||
#. module: account
|
||||
#: field:account.account,credit:0
|
||||
@@ -4083,7 +4085,7 @@ msgstr ""
|
||||
#: field:account.tax,account_paid_id:0
|
||||
#: field:account.tax.template,account_paid_id:0
|
||||
msgid "Refund Tax Account"
|
||||
msgstr "Compte impostos de devolucions"
|
||||
msgstr "Compte impostos de reintegraments"
|
||||
|
||||
#. module: account
|
||||
#: field:account.tax.code,child_ids:0
|
||||
@@ -4186,7 +4188,7 @@ msgstr "Seqüències de diaris separades"
|
||||
#. module: account
|
||||
#: help:account.bank.statement.reconcile,total_second_currency:0
|
||||
msgid "The currency of the journal"
|
||||
msgstr "La moneda del diari"
|
||||
msgstr "La divisa del diari"
|
||||
|
||||
#. module: account
|
||||
#: view:account.journal.column:0
|
||||
@@ -4429,7 +4431,7 @@ msgstr "Fixat"
|
||||
#: view:account.tax:0
|
||||
#: view:account.tax.template:0
|
||||
msgid "Credit Notes"
|
||||
msgstr "Factures d'abonament"
|
||||
msgstr "Factures rectificatives (abonament)"
|
||||
|
||||
#. module: account
|
||||
#: field:account.config.wizard,date2:0
|
||||
@@ -4621,7 +4623,7 @@ msgstr "Per data"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree4
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree4
|
||||
msgid "Supplier Refunds"
|
||||
msgstr "Factures d'abonament de proveïdor"
|
||||
msgstr "Factures rectificatives (abonament) de proveïdor"
|
||||
|
||||
#. module: account
|
||||
#: help:account.model.line,date:0
|
||||
@@ -4951,7 +4953,7 @@ msgstr "Confirmat"
|
||||
#. module: account
|
||||
#: wizard_view:account.account.balance.report,account_selection:0
|
||||
msgid "Select parent account"
|
||||
msgstr "Selecciona compte pare"
|
||||
msgstr "Seleccioneu el compte pare"
|
||||
|
||||
#. module: account
|
||||
#: field:account.account.template,parent_id:0
|
||||
@@ -5126,7 +5128,7 @@ msgstr "Compte d'ingressos en plantilla producte"
|
||||
#: help:account.account.template,currency_id:0
|
||||
msgid "Force all moves for this account to have this secondary currency."
|
||||
msgstr ""
|
||||
"Força a tots els moviments d'aquest compte que tinguin aquesta moneda "
|
||||
"Força a tots els moviments d'aquest compte que tinguin aquesta divisa "
|
||||
"secundària."
|
||||
|
||||
#. module: account
|
||||
@@ -5140,7 +5142,7 @@ msgstr "_Cancel·la"
|
||||
#: wizard_view:account.partner.balance.report,init:0
|
||||
#: wizard_view:account.third_party_ledger.report,init:0
|
||||
msgid "Select Date-Period"
|
||||
msgstr "Selecciona data-període"
|
||||
msgstr "Seleccioneu data-període"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.inverted.balance:0
|
||||
@@ -5169,7 +5171,7 @@ msgstr "Grup de l'impost"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree3_new
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree3_new
|
||||
msgid "New Customer Refund"
|
||||
msgstr "Nova factura d'abonament de client"
|
||||
msgstr "Nova factura rectificativa (abonament) de client"
|
||||
|
||||
#. module: account
|
||||
#: help:wizard.multi.charts.accounts,seq_journal:0
|
||||
@@ -5343,7 +5345,7 @@ msgstr "Filtrat per data"
|
||||
#. module: account
|
||||
#: wizard_view:populate_statement_from_inv,init:0
|
||||
msgid "Choose Journal and Payment Date"
|
||||
msgstr "Selecciona diari i data de pagament"
|
||||
msgstr "Seleccioneu diari i data de pagament"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.analytic.account,state:0
|
||||
@@ -5367,7 +5369,7 @@ msgstr "Pagat"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree11
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree11
|
||||
msgid "Unpaid Customer Refunds"
|
||||
msgstr "Factures d'abonament de client sense pagar"
|
||||
msgstr "Factures rectificatives (abonament) de client sense pagar"
|
||||
|
||||
#. module: account
|
||||
#: help:account.invoice,residual:0
|
||||
@@ -5524,7 +5526,7 @@ msgstr "Fi del període"
|
||||
#: view:account.move:0
|
||||
#: model:ir.model,name:account.model_account_move
|
||||
msgid "Account Entry"
|
||||
msgstr "Assentament de compte"
|
||||
msgstr "Assentament comptable"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.general.journal:0
|
||||
@@ -5555,7 +5557,7 @@ msgstr "Saldo pendent"
|
||||
#. module: account
|
||||
#: rml:account.invoice:0
|
||||
msgid "Refund"
|
||||
msgstr "Factura d'abonament"
|
||||
msgstr "Factura rectificativa (abonament)"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_invoice_tax
|
||||
@@ -5792,7 +5794,7 @@ msgstr ""
|
||||
#: field:account.tax.code,code:0
|
||||
#: field:account.tax.code.template,code:0
|
||||
msgid "Case Code"
|
||||
msgstr "Codi cas"
|
||||
msgstr "Codi"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.automatic.reconcile,init,power:0
|
||||
@@ -5916,7 +5918,7 @@ msgstr "Deixeu-lo buit per a tots els exercicis fiscals oberts"
|
||||
#: rml:account.invoice:0
|
||||
#: selection:account.invoice,type:0
|
||||
msgid "Supplier Refund"
|
||||
msgstr "Factura d'abonament de proveïdor"
|
||||
msgstr "Factura rectificativa (abonament) de proveïdor"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,note:account.process_transition_entriesreconcile0
|
||||
@@ -6072,3 +6074,6 @@ msgstr ""
|
||||
#: wizard_button:account.subscription.generate,init,generate:0
|
||||
msgid "Compute Entry Dates"
|
||||
msgstr "Calcula les dates de l'assentament"
|
||||
|
||||
#~ msgid "account.config.wizard"
|
||||
#~ msgstr "account.config.assistent"
|
||||
|
||||
+118
-121
@@ -7,17 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.0\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2010-04-01 22:39+0000\n"
|
||||
"PO-Revision-Date: 2010-04-08 18:06+0000\n"
|
||||
"Last-Translator: mitev.dmitry <Unknown>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
<<<<<<< TREE
|
||||
"X-Launchpad-Export-Date: 2010-04-03 03:54+0000\n"
|
||||
=======
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:05+0000\n"
|
||||
>>>>>>> MERGE-SOURCE
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -119,7 +115,7 @@ msgstr "Rodič"
|
||||
#. module: account
|
||||
#: selection:account.move,type:0
|
||||
msgid "Journal Voucher"
|
||||
msgstr ""
|
||||
msgstr "Rada"
|
||||
|
||||
#. module: account
|
||||
#: field:account.invoice,residual:0
|
||||
@@ -138,7 +134,7 @@ msgstr "Základní kódová značka"
|
||||
#: model:ir.actions.wizard,name:account.wizard_unreconcile_select
|
||||
#: model:ir.ui.menu,name:account.menu_unreconcile_select
|
||||
msgid "Unreconcile entries"
|
||||
msgstr ""
|
||||
msgstr "Nepotvrzené záznamy"
|
||||
|
||||
#. module: account
|
||||
#: constraint:account.period:0
|
||||
@@ -163,7 +159,7 @@ msgstr "Debetní Centralizace"
|
||||
#. module: account
|
||||
#: model:ir.actions.wizard,name:account.wizard_invoice_state_confirm
|
||||
msgid "Confirm draft invoices"
|
||||
msgstr ""
|
||||
msgstr "Potvrdit návrh faktury"
|
||||
|
||||
#. module: account
|
||||
#: help:account.payment.term.line,days2:0
|
||||
@@ -186,7 +182,7 @@ msgstr "Grafy účtu"
|
||||
#. module: account
|
||||
#: model:ir.actions.wizard,name:account.wizard_move_line_select
|
||||
msgid "Move line select"
|
||||
msgstr ""
|
||||
msgstr "Přesun řádku vyberte"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.journal.period.print:0
|
||||
@@ -314,7 +310,7 @@ msgstr "Původ"
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.journal:0
|
||||
msgid "Move Name"
|
||||
msgstr ""
|
||||
msgstr "Název Pohybu"
|
||||
|
||||
#. module: account
|
||||
#: xsl:account.transfer:0
|
||||
@@ -329,7 +325,7 @@ msgstr "Vypočítat předpaltné(Subscription Compute)"
|
||||
#. module: account
|
||||
#: rml:account.central.journal:0
|
||||
msgid "Account Num."
|
||||
msgstr ""
|
||||
msgstr "Číslo účtu"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.analytic.check:0
|
||||
@@ -341,12 +337,12 @@ msgstr ""
|
||||
#: field:account.invoice,amount_tax:0
|
||||
#: field:account.move.line,account_tax_id:0
|
||||
msgid "Tax"
|
||||
msgstr ""
|
||||
msgstr "Daň"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.general.journal:0
|
||||
msgid "Debit Trans."
|
||||
msgstr ""
|
||||
msgstr "Debetní transakce"
|
||||
|
||||
#. module: account
|
||||
#: field:account.analytic.line,account_id:0
|
||||
@@ -360,24 +356,24 @@ msgstr "Analytický účet"
|
||||
#: field:account.tax,child_depend:0
|
||||
#: field:account.tax.template,child_depend:0
|
||||
msgid "Tax on Children"
|
||||
msgstr ""
|
||||
msgstr "Daň z dětí"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.central.journal:0
|
||||
#: rml:account.general.journal:0
|
||||
#: field:account.journal,name:0
|
||||
msgid "Journal Name"
|
||||
msgstr ""
|
||||
msgstr "Název časopisu"
|
||||
|
||||
#. module: account
|
||||
#: view:account.payment.term:0
|
||||
msgid "Description on invoices"
|
||||
msgstr ""
|
||||
msgstr "Popis na fakturách"
|
||||
|
||||
#. module: account
|
||||
#: constraint:account.analytic.account:0
|
||||
msgid "Error! You can not create recursive analytic accounts."
|
||||
msgstr ""
|
||||
msgstr "Chyba! Nemůžete vytvářet rekurzivní analytické účty."
|
||||
|
||||
#. module: account
|
||||
#: field:account.bank.statement.reconcile,total_entry:0
|
||||
@@ -393,13 +389,13 @@ msgstr "Zdroj účtu"
|
||||
#. module: account
|
||||
#: field:account.journal,update_posted:0
|
||||
msgid "Allow Cancelling Entries"
|
||||
msgstr ""
|
||||
msgstr "Povolit Zrušení Příspěvky"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,name:account.process_transition_paymentorderbank0
|
||||
#: model:process.transition,name:account.process_transition_paymentorderreconcilation0
|
||||
msgid "Payment Reconcilation"
|
||||
msgstr ""
|
||||
msgstr "Platba usmíření"
|
||||
|
||||
#. module: account
|
||||
#: model:account.journal,name:account.expenses_journal
|
||||
@@ -429,7 +425,7 @@ msgstr "(Účet / Partner) Název"
|
||||
#. module: account
|
||||
#: selection:account.move,type:0
|
||||
msgid "Contra"
|
||||
msgstr ""
|
||||
msgstr "Kontraindikace"
|
||||
|
||||
#. module: account
|
||||
#: field:account.analytic.account,state:0
|
||||
@@ -451,7 +447,7 @@ msgstr ""
|
||||
#: view:account.tax:0
|
||||
#: view:account.tax.template:0
|
||||
msgid "Special Computation"
|
||||
msgstr ""
|
||||
msgstr "Speciální výpočetní"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,note:account.process_transition_confirmstatementfromdraft0
|
||||
@@ -510,7 +506,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: view:account.invoice:0
|
||||
msgid "Supplier invoice"
|
||||
msgstr ""
|
||||
msgstr "Dodavatele uvedený na faktuře"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,name:account.process_transition_reconcilepaid0
|
||||
@@ -537,7 +533,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.account.type,close_method:0
|
||||
msgid "Deferral Method"
|
||||
msgstr ""
|
||||
msgstr "Metoda zpoždění"
|
||||
|
||||
#. module: account
|
||||
#: field:account.tax.template,include_base_amount:0
|
||||
@@ -564,7 +560,7 @@ msgstr ""
|
||||
#: selection:account.tax,applicable_type:0
|
||||
#: selection:account.tax.template,applicable_type:0
|
||||
msgid "True"
|
||||
msgstr ""
|
||||
msgstr "Pravda"
|
||||
|
||||
#. module: account
|
||||
#: help:account.payment.term.line,days:0
|
||||
@@ -581,7 +577,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: rml:account.central.journal:0
|
||||
msgid "Printing Date"
|
||||
msgstr ""
|
||||
msgstr "Datum vydání"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.general.ledger:0
|
||||
@@ -597,7 +593,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: view:account.journal:0
|
||||
msgid "Entry Controls"
|
||||
msgstr ""
|
||||
msgstr "Vstupní kontrolou"
|
||||
|
||||
#. module: account
|
||||
#: help:account.model.line,sequence:0
|
||||
@@ -620,13 +616,13 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.analytic.account,contact_id:0
|
||||
msgid "Contact"
|
||||
msgstr ""
|
||||
msgstr "Kontakt"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.model.line,date:0
|
||||
#: selection:account.model.line,date_maturity:0
|
||||
msgid "Partner Payment Term"
|
||||
msgstr ""
|
||||
msgstr "Partner splatnosti"
|
||||
|
||||
#. module: account
|
||||
#: view:account.move.reconcile:0
|
||||
@@ -641,13 +637,13 @@ msgstr "Otevřeno pro bankovní vyrovnání(Open for bank reconciliation)"
|
||||
#. module: account
|
||||
#: field:account.invoice.line,discount:0
|
||||
msgid "Discount (%)"
|
||||
msgstr ""
|
||||
msgstr "Sleva (%)"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.move.line.reconcile,init_full,writeoff:0
|
||||
#: wizard_field:account.move.line.reconcile,init_partial,writeoff:0
|
||||
msgid "Write-Off amount"
|
||||
msgstr ""
|
||||
msgstr "Odpis části"
|
||||
|
||||
#. module: account
|
||||
#: help:account.fiscalyear,company_id:0
|
||||
@@ -657,7 +653,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: model:ir.ui.menu,name:account.menu_analytic_accounting
|
||||
msgid "Analytic Accounting"
|
||||
msgstr ""
|
||||
msgstr "Analytické účetnictví"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.overdue:0
|
||||
@@ -670,22 +666,22 @@ msgstr ""
|
||||
#: model:ir.actions.act_window,name:account.action_account_analytic_line_form
|
||||
#: model:ir.ui.menu,name:account.next_id_41
|
||||
msgid "Analytic Entries"
|
||||
msgstr ""
|
||||
msgstr "Analytická Příspěvky"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.subscription,period_type:0
|
||||
msgid "month"
|
||||
msgstr ""
|
||||
msgstr "měsíc"
|
||||
|
||||
#. module: account
|
||||
#: field:account.analytic.account,partner_id:0
|
||||
msgid "Associated Partner"
|
||||
msgstr ""
|
||||
msgstr "Přidruženého partnera"
|
||||
|
||||
#. module: account
|
||||
#: field:account.invoice,comment:0
|
||||
msgid "Additional Information"
|
||||
msgstr ""
|
||||
msgstr "Další informace"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.invoice,type:0
|
||||
@@ -723,18 +719,18 @@ msgstr ""
|
||||
#. module: account
|
||||
#: model:process.transition,name:account.process_transition_supplieranalyticcost0
|
||||
msgid "Analytic Invoice"
|
||||
msgstr ""
|
||||
msgstr "Analytická faktury"
|
||||
|
||||
#. module: account
|
||||
#: field:account.journal.column,field:0
|
||||
msgid "Field Name"
|
||||
msgstr ""
|
||||
msgstr "Název pole"
|
||||
|
||||
#. module: account
|
||||
#: field:account.tax.code,sign:0
|
||||
#: field:account.tax.code.template,sign:0
|
||||
msgid "Sign for parent"
|
||||
msgstr ""
|
||||
msgstr "Přihlaste se na mateřské"
|
||||
|
||||
#. module: account
|
||||
#: field:account.fiscalyear,end_journal_period_id:0
|
||||
@@ -745,7 +741,7 @@ msgstr ""
|
||||
#: view:product.product:0
|
||||
#: view:product.template:0
|
||||
msgid "Purchase Properties"
|
||||
msgstr ""
|
||||
msgstr "Nákup Nemovitosti"
|
||||
|
||||
#. module: account
|
||||
#: model:process.node,note:account.process_node_paymententries0
|
||||
@@ -755,12 +751,12 @@ msgstr ""
|
||||
#. module: account
|
||||
#: wizard_button:account.invoice.pay,init,reconcile:0
|
||||
msgid "Partial Payment"
|
||||
msgstr ""
|
||||
msgstr "Částečná platba"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account_use_models,create:0
|
||||
msgid "Move Lines Created."
|
||||
msgstr ""
|
||||
msgstr "Přesun vytvořených linek."
|
||||
|
||||
#. module: account
|
||||
#: field:account.fiscalyear,state:0
|
||||
@@ -770,18 +766,18 @@ msgstr ""
|
||||
#: field:account.period,state:0
|
||||
#: field:account.subscription,state:0
|
||||
msgid "Status"
|
||||
msgstr ""
|
||||
msgstr "Stav"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.cost_ledger:0
|
||||
#: rml:account.analytic.account.quantity_cost_ledger:0
|
||||
msgid "Period to"
|
||||
msgstr ""
|
||||
msgstr "Období do"
|
||||
|
||||
#. module: account
|
||||
#: field:account.account.type,partner_account:0
|
||||
msgid "Partner account"
|
||||
msgstr ""
|
||||
msgstr "Partner účet"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account.subscription.generate,init:0
|
||||
@@ -807,7 +803,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.invoice,move_lines:0
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
msgstr "Přesun Linky"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
@@ -830,26 +826,26 @@ msgstr ""
|
||||
#. module: account
|
||||
#: model:ir.ui.menu,name:account.next_id_30
|
||||
msgid "Bank Reconciliation"
|
||||
msgstr ""
|
||||
msgstr "Bankovní usmíření"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_account_template
|
||||
msgid "Templates for Accounts"
|
||||
msgstr ""
|
||||
msgstr "Šablony pro účty"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_account_analytic_account_form
|
||||
#: model:ir.model,name:account.model_account_analytic_account
|
||||
#: model:ir.ui.menu,name:account.account_analytic_def_account
|
||||
msgid "Analytic Accounts"
|
||||
msgstr ""
|
||||
msgstr "Analytické účty"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account.print.journal.report,init:0
|
||||
#: model:ir.actions.wizard,name:account.wizard_print_journal
|
||||
#: model:ir.ui.menu,name:account.menu_print_journal
|
||||
msgid "Print Journal"
|
||||
msgstr ""
|
||||
msgstr "Tisk věstníku"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_bank_accounts_wizard
|
||||
@@ -860,39 +856,39 @@ msgstr ""
|
||||
#: field:account.move.line,date_created:0
|
||||
#: field:account.move.reconcile,create_date:0
|
||||
msgid "Creation date"
|
||||
msgstr ""
|
||||
msgstr "Datum vytvoření"
|
||||
|
||||
#. module: account
|
||||
#: wizard_button:account.invoice.refund,init,cancel_invoice:0
|
||||
msgid "Cancel Invoice"
|
||||
msgstr ""
|
||||
msgstr "Zrušit účet"
|
||||
|
||||
#. module: account
|
||||
#: field:account.journal.column,required:0
|
||||
msgid "Required"
|
||||
msgstr ""
|
||||
msgstr "Požadované"
|
||||
|
||||
#. module: account
|
||||
#: field:product.category,property_account_expense_categ:0
|
||||
#: field:product.template,property_account_expense:0
|
||||
msgid "Expense Account"
|
||||
msgstr ""
|
||||
msgstr "Cestovní účet"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.move.line.reconcile,addendum,journal_id:0
|
||||
msgid "Write-Off Journal"
|
||||
msgstr ""
|
||||
msgstr "Odpis věstníku"
|
||||
|
||||
#. module: account
|
||||
#: field:account.model.line,amount_currency:0
|
||||
#: field:account.move.line,amount_currency:0
|
||||
msgid "Amount Currency"
|
||||
msgstr ""
|
||||
msgstr "Částka měny"
|
||||
|
||||
#. module: account
|
||||
#: field:account.chart.template,property_account_expense_categ:0
|
||||
msgid "Expense Category Account"
|
||||
msgstr ""
|
||||
msgstr "Kategorie výdajů účtu"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.fiscalyear.close,init,fy2_id:0
|
||||
@@ -909,7 +905,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: wizard_field:account.open_closed_fiscalyear,init,fyear_id:0
|
||||
msgid "Fiscal Year to Open"
|
||||
msgstr ""
|
||||
msgstr "Fiskální rok otevřena"
|
||||
|
||||
#. module: account
|
||||
#: view:account.config.wizard:0
|
||||
@@ -927,7 +923,7 @@ msgstr ""
|
||||
#: field:account.model.line,quantity:0
|
||||
#: field:account.move.line,quantity:0
|
||||
msgid "Quantity"
|
||||
msgstr ""
|
||||
msgstr "Množství"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.account.balance.report,checktype,date_to:0
|
||||
@@ -935,7 +931,7 @@ msgstr ""
|
||||
#: wizard_field:account.partner.balance.report,init,date2:0
|
||||
#: wizard_field:account.third_party_ledger.report,init,date2:0
|
||||
msgid "End date"
|
||||
msgstr ""
|
||||
msgstr "Datum ukončení"
|
||||
|
||||
#. module: account
|
||||
#: field:account.invoice.tax,base_amount:0
|
||||
@@ -956,12 +952,12 @@ msgstr ""
|
||||
#: model:ir.actions.act_window,name:account.action_bank_statement_tree
|
||||
#: model:ir.ui.menu,name:account.menu_bank_statement_tree
|
||||
msgid "Entries by Statements"
|
||||
msgstr ""
|
||||
msgstr "Příspěvky výroky"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,name:account.process_transition_analyticinvoice0
|
||||
msgid "analytic Invoice"
|
||||
msgstr ""
|
||||
msgstr "analytické faktury"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.automatic.reconcile,init,period_id:0
|
||||
@@ -980,22 +976,22 @@ msgstr ""
|
||||
#: wizard_field:account.print.journal.report,init,period_id:0
|
||||
#: field:account.subscription,period_nbr:0
|
||||
msgid "Period"
|
||||
msgstr ""
|
||||
msgstr "Perioda"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.partner.balance:0
|
||||
msgid "Grand total"
|
||||
msgstr ""
|
||||
msgstr "Úhrn"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.ui.menu,name:account.menu_finance_accounting
|
||||
msgid "Financial Accounting"
|
||||
msgstr ""
|
||||
msgstr "Finanční účetnictví"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.invoice:0
|
||||
msgid "Net Total:"
|
||||
msgstr ""
|
||||
msgstr "Čistá celkem:"
|
||||
|
||||
#. module: account
|
||||
#: view:account.fiscal.position:0
|
||||
@@ -1009,7 +1005,7 @@ msgstr ""
|
||||
#: model:ir.model,name:account.model_account_fiscal_position
|
||||
#: field:res.partner,property_account_position:0
|
||||
msgid "Fiscal Position"
|
||||
msgstr ""
|
||||
msgstr "Fiskální pozice"
|
||||
|
||||
#. module: account
|
||||
#: field:account.analytic.line,product_uom_id:0
|
||||
@@ -1026,7 +1022,7 @@ msgstr ""
|
||||
#: field:account.account,child_parent_ids:0
|
||||
#: field:account.account.template,child_parent_ids:0
|
||||
msgid "Children"
|
||||
msgstr ""
|
||||
msgstr "Děti"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_fiscal_position_tax
|
||||
@@ -1037,35 +1033,35 @@ msgstr ""
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree2_new
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree2_new
|
||||
msgid "New Supplier Invoice"
|
||||
msgstr ""
|
||||
msgstr "Nového dodavatele faktury"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.invoice.pay,init,amount:0
|
||||
msgid "Amount paid"
|
||||
msgstr ""
|
||||
msgstr "Zaplacené částky"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.invoice,type:0
|
||||
#: model:process.transition,name:account.process_transition_customerinvoice0
|
||||
#: model:process.transition,name:account.process_transition_suppliercustomerinvoice0
|
||||
msgid "Customer Invoice"
|
||||
msgstr ""
|
||||
msgstr "Zákazník faktury"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account.open_closed_fiscalyear,init:0
|
||||
msgid "Choose Fiscal Year"
|
||||
msgstr ""
|
||||
msgstr "Vyberte si fiskální rok"
|
||||
|
||||
#. module: account
|
||||
#: field:account.sequence.fiscalyear,sequence_main_id:0
|
||||
msgid "Main Sequence"
|
||||
msgstr ""
|
||||
msgstr "Hlavní posloupnosti"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.account_analytic_journal_print
|
||||
msgid "Print Analytic Journals"
|
||||
msgstr ""
|
||||
msgstr "Tisk Analytické Časopisy"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.tax.code.entries:0
|
||||
@@ -1082,7 +1078,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.bank.statement.reconcile,total_new:0
|
||||
msgid "Total write-off"
|
||||
msgstr ""
|
||||
msgstr "Celkem odpis"
|
||||
|
||||
#. module: account
|
||||
#: view:account.tax.template:0
|
||||
@@ -1094,14 +1090,14 @@ msgstr ""
|
||||
#: model:ir.actions.act_window,name:account.action_tax_code_list
|
||||
#: model:ir.ui.menu,name:account.menu_action_tax_code_list
|
||||
msgid "Tax codes"
|
||||
msgstr ""
|
||||
msgstr "Daňové kódy"
|
||||
|
||||
#. module: account
|
||||
#: field:account.fiscal.position.template,chart_template_id:0
|
||||
#: field:account.tax.template,chart_template_id:0
|
||||
#: field:wizard.multi.charts.accounts,chart_template_id:0
|
||||
msgid "Chart Template"
|
||||
msgstr ""
|
||||
msgstr "Graf šablony"
|
||||
|
||||
#. module: account
|
||||
#: field:account.chart.template,property_account_income_categ:0
|
||||
@@ -1112,24 +1108,24 @@ msgstr ""
|
||||
#: model:ir.actions.act_window,name:account.analytic_account_form
|
||||
#: model:ir.ui.menu,name:account.account_analytic_form
|
||||
msgid "New Analytic Account"
|
||||
msgstr ""
|
||||
msgstr "Nový analitickiý účet"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_account_fiscal_position_template_form
|
||||
#: model:ir.ui.menu,name:account.menu_action_account_fiscal_position_form_template
|
||||
msgid "Fiscal Position Templates"
|
||||
msgstr ""
|
||||
msgstr "Fiskální pozice Šablony"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.invoice:0
|
||||
#: field:account.invoice.line,price_unit:0
|
||||
msgid "Unit Price"
|
||||
msgstr ""
|
||||
msgstr "Cena za kus"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.journal:0
|
||||
msgid "Period from :"
|
||||
msgstr ""
|
||||
msgstr "Období od:"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_wizard_multi_charts_accounts
|
||||
@@ -1139,7 +1135,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: model:account.journal,name:account.sales_journal
|
||||
msgid "Journal de vente"
|
||||
msgstr ""
|
||||
msgstr "Prodej věstníku"
|
||||
|
||||
#. module: account
|
||||
#: help:account.model.line,amount_currency:0
|
||||
@@ -1150,23 +1146,23 @@ msgstr ""
|
||||
#: view:account.fiscal.position.template:0
|
||||
#: field:account.fiscal.position.template,name:0
|
||||
msgid "Fiscal Position Template"
|
||||
msgstr ""
|
||||
msgstr "Fiskální pozice šablony"
|
||||
|
||||
#. module: account
|
||||
#: field:account.payment.term,line_ids:0
|
||||
msgid "Terms"
|
||||
msgstr ""
|
||||
msgstr "Podmínky"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.vat.declaration:0
|
||||
msgid "Tax Report"
|
||||
msgstr ""
|
||||
msgstr "Daňové Report"
|
||||
|
||||
#. module: account
|
||||
#: wizard_button:account.analytic.account.chart,init,open:0
|
||||
#: wizard_button:account.chart,init,open:0
|
||||
msgid "Open Charts"
|
||||
msgstr ""
|
||||
msgstr "Zobrazit Grafy"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account.fiscalyear.close.state,init:0
|
||||
@@ -1176,7 +1172,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: selection:account.move,type:0
|
||||
msgid "Bank Receipt"
|
||||
msgstr ""
|
||||
msgstr "Bankovní Příjem"
|
||||
|
||||
#. module: account
|
||||
#: view:res.partner:0
|
||||
@@ -1186,17 +1182,17 @@ msgstr "Bankovní účet"
|
||||
#. module: account
|
||||
#: field:account.chart.template,tax_template_ids:0
|
||||
msgid "Tax Template List"
|
||||
msgstr ""
|
||||
msgstr "Daňové seznamu šablon"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,name:account.process_transition_invoiceimport0
|
||||
msgid "Invoice import"
|
||||
msgstr ""
|
||||
msgstr "Faktura import"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.wizard,name:account.action_move_journal_line_form_select
|
||||
msgid "Standard entry"
|
||||
msgstr ""
|
||||
msgstr "Standardní vstupní"
|
||||
|
||||
#. module: account
|
||||
#: help:account.account,currency_mode:0
|
||||
@@ -1211,7 +1207,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.account,company_currency_id:0
|
||||
msgid "Company Currency"
|
||||
msgstr ""
|
||||
msgstr "Společnost měny"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_fiscal_position_account_template
|
||||
@@ -1221,7 +1217,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.analytic.account,parent_id:0
|
||||
msgid "Parent Analytic Account"
|
||||
msgstr ""
|
||||
msgstr "Parent Analytická účtu"
|
||||
|
||||
#. module: account
|
||||
#: wizard_button:account.move.line.reconcile,init_partial,addendum:0
|
||||
@@ -1241,22 +1237,22 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.bank.statement,balance_end_real:0
|
||||
msgid "Ending Balance"
|
||||
msgstr ""
|
||||
msgstr "Konečný zůstatek"
|
||||
|
||||
#. module: account
|
||||
#: view:product.product:0
|
||||
msgid "Purchase Taxes"
|
||||
msgstr ""
|
||||
msgstr "Nákup Daně"
|
||||
|
||||
#. module: account
|
||||
#: field:account.payment.term.line,name:0
|
||||
msgid "Line Name"
|
||||
msgstr ""
|
||||
msgstr "Název řádku"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.payment.term.line,value:0
|
||||
msgid "Fixed Amount"
|
||||
msgstr ""
|
||||
msgstr "Pevná částka"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.analytic.check:0
|
||||
@@ -1284,24 +1280,24 @@ msgstr ""
|
||||
#. module: account
|
||||
#: view:account.config.wizard:0
|
||||
msgid "Continue"
|
||||
msgstr ""
|
||||
msgstr "Pokračovat"
|
||||
|
||||
#. module: account
|
||||
#: field:account.payment.term.line,value:0
|
||||
msgid "Value"
|
||||
msgstr ""
|
||||
msgstr "Hodnota"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.invoice.pay,addendum,writeoff_acc_id:0
|
||||
#: wizard_field:account.move.line.reconcile,addendum,writeoff_acc_id:0
|
||||
msgid "Write-Off account"
|
||||
msgstr ""
|
||||
msgstr "Odpis účet"
|
||||
|
||||
#. module: account
|
||||
#: field:account.model.line,model_id:0
|
||||
#: field:account.subscription,model_id:0
|
||||
msgid "Model"
|
||||
msgstr ""
|
||||
msgstr "Vzor"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.wizard,name:account.wizard_fiscalyear_close_state
|
||||
@@ -1312,12 +1308,12 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.journal,centralisation:0
|
||||
msgid "Centralised counterpart"
|
||||
msgstr ""
|
||||
msgstr "Centralizované protějšek"
|
||||
|
||||
#. module: account
|
||||
#: view:wizard.company.setup:0
|
||||
msgid "Message"
|
||||
msgstr ""
|
||||
msgstr "Zpráva"
|
||||
|
||||
#. module: account
|
||||
#: model:process.node,note:account.process_node_supplierpaymentorder0
|
||||
@@ -1331,7 +1327,7 @@ msgstr ""
|
||||
#: selection:account.analytic.account,type:0
|
||||
#: field:account.journal,view_id:0
|
||||
msgid "View"
|
||||
msgstr ""
|
||||
msgstr "Pohled"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.account.balance.report,checktype,display_account:0
|
||||
@@ -1339,13 +1335,13 @@ msgstr ""
|
||||
#: selection:account.tax,type_tax_use:0
|
||||
#: selection:account.tax.template,type_tax_use:0
|
||||
msgid "All"
|
||||
msgstr ""
|
||||
msgstr "Vše"
|
||||
|
||||
#. module: account
|
||||
#: field:account.move.line,analytic_lines:0
|
||||
#: model:ir.model,name:account.model_account_analytic_line
|
||||
msgid "Analytic lines"
|
||||
msgstr ""
|
||||
msgstr "Analytická linky"
|
||||
|
||||
#. module: account
|
||||
#: help:account.tax,type:0
|
||||
@@ -1369,28 +1365,28 @@ msgstr ""
|
||||
#. module: account
|
||||
#: model:process.node,name:account.process_node_electronicfile0
|
||||
msgid "Electronic File"
|
||||
msgstr ""
|
||||
msgstr "Elektronický soubor"
|
||||
|
||||
#. module: account
|
||||
#: view:res.partner:0
|
||||
msgid "Customer Credit"
|
||||
msgstr ""
|
||||
msgstr "Odběratelský úvěr"
|
||||
|
||||
#. module: account
|
||||
#: field:account.invoice,tax_line:0
|
||||
msgid "Tax Lines"
|
||||
msgstr ""
|
||||
msgstr "Daňové Linky"
|
||||
|
||||
#. module: account
|
||||
#: field:ir.sequence,fiscal_ids:0
|
||||
msgid "Sequences"
|
||||
msgstr ""
|
||||
msgstr "Posloupnosti"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_account_type_form
|
||||
#: model:ir.ui.menu,name:account.menu_action_account_type_form
|
||||
msgid "Account Types"
|
||||
msgstr ""
|
||||
msgstr "Typy účtů"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.automatic.reconcile,init,journal_id:0
|
||||
@@ -1412,18 +1408,18 @@ msgstr ""
|
||||
#: wizard_field:populate_statement_from_inv,init,journal_id:0
|
||||
#: field:report.hr.timesheet.invoice.journal,journal_id:0
|
||||
msgid "Journal"
|
||||
msgstr ""
|
||||
msgstr "Časopis"
|
||||
|
||||
#. module: account
|
||||
#: field:account.account,child_id:0
|
||||
#: field:account.analytic.account,child_ids:0
|
||||
msgid "Child Accounts"
|
||||
msgstr ""
|
||||
msgstr "Dětská konta"
|
||||
|
||||
#. module: account
|
||||
#: field:account.account,check_history:0
|
||||
msgid "Display History"
|
||||
msgstr ""
|
||||
msgstr "Zobrazení historie"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.third_party_ledger.report,init,date1:0
|
||||
@@ -1453,7 +1449,7 @@ msgstr ""
|
||||
#: wizard_view:account.move.line.reconcile,init_full:0
|
||||
#: wizard_view:account.move.line.reconcile,init_partial:0
|
||||
msgid "Write-Off"
|
||||
msgstr ""
|
||||
msgstr "Odpis"
|
||||
|
||||
#. module: account
|
||||
#: help:account.invoice,partner_bank:0
|
||||
@@ -1465,12 +1461,12 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:res.partner,debit:0
|
||||
msgid "Total Payable"
|
||||
msgstr ""
|
||||
msgstr "Celkem za poplatek"
|
||||
|
||||
#. module: account
|
||||
#: wizard_button:account.fiscalyear.close.state,init,close:0
|
||||
msgid "Close states"
|
||||
msgstr ""
|
||||
msgstr "Zavřít státy"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_wizard_company_setup
|
||||
@@ -1485,22 +1481,22 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.journal,refund_journal:0
|
||||
msgid "Refund Journal"
|
||||
msgstr ""
|
||||
msgstr "Refundace věstníku"
|
||||
|
||||
#. module: account
|
||||
#: model:account.account.type,name:account.account_type_income
|
||||
msgid "Income"
|
||||
msgstr ""
|
||||
msgstr "Příjem"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.bank.statement.line,type:0
|
||||
msgid "Supplier"
|
||||
msgstr ""
|
||||
msgstr "Dodavatel"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.invoice:0
|
||||
msgid "Tel. :"
|
||||
msgstr ""
|
||||
msgstr "Telefonní číslo:"
|
||||
|
||||
#. module: account
|
||||
#: field:account.invoice.tax,tax_amount:0
|
||||
@@ -2136,7 +2132,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:05+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2146,7 +2146,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
+12
-10
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.0\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2010-04-16 09:47+0000\n"
|
||||
"PO-Revision-Date: 2010-06-09 15:10+0000\n"
|
||||
"Last-Translator: Ferdinand @ ChriCar <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: 2010-04-21 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -272,10 +272,6 @@ msgid ""
|
||||
"in which order. You can create your own view for a faster encoding in each "
|
||||
"journal."
|
||||
msgstr ""
|
||||
"zeigt die Ansicht des Journalberichtes. Open ERP wird gezeigt welche Felder "
|
||||
"sichtbar sein sollen, welche erforderlich sind oder keine Schreibrechte habe "
|
||||
"und in der Reihenfolge der Auftragsnummern. Sie können einen eigenen View "
|
||||
"für eine schnellere Buchungsbearbeitung herstellen."
|
||||
|
||||
#. module: account
|
||||
#: help:account.invoice,date_due:0
|
||||
@@ -2176,7 +2172,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Buchung Analysekonto"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Text Zahlungserinnerung"
|
||||
|
||||
@@ -3314,7 +3311,9 @@ msgstr "Buchen OP Ausgleich"
|
||||
#. module: account
|
||||
#: wizard_view:account.wizard_paid_open,init:0
|
||||
msgid "(Invoice should be unreconciled if you want to open it)"
|
||||
msgstr "(Rechnungen müssen ausgeglichen werden)"
|
||||
msgstr ""
|
||||
"(Rechnungen dürfen nicht ausgeglichen sein, wenn diese wieder geöffnet "
|
||||
"werden sollen)"
|
||||
|
||||
#. module: account
|
||||
#: view:account.invoice:0
|
||||
@@ -4905,7 +4904,7 @@ msgstr "Details Finanzkonto"
|
||||
#. module: account
|
||||
#: rml:account.overdue:0
|
||||
msgid "VAT:"
|
||||
msgstr "USt.:"
|
||||
msgstr "UID:"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.cost_ledger:0
|
||||
@@ -5314,7 +5313,7 @@ msgstr "Benutze Buchungsvorlage"
|
||||
#. module: account
|
||||
#: wizard_button:account.wizard_paid_open,init,end:0
|
||||
msgid "No"
|
||||
msgstr "Nummer"
|
||||
msgstr "Nein"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.act_account_partner_account_move
|
||||
@@ -6062,3 +6061,6 @@ msgstr "Aktivieren, wenn Benutzer das Konto ausgleichen dürfen."
|
||||
#: wizard_button:account.subscription.generate,init,generate:0
|
||||
msgid "Compute Entry Dates"
|
||||
msgstr "Berechne eingegebene Daten"
|
||||
|
||||
#~ msgid "account.config.wizard"
|
||||
#~ msgstr "account.config.wizard"
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2181,7 +2181,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Αναλυτική Εγγραφή"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Μήνυμα καθυστερημένων πληρωμών"
|
||||
|
||||
@@ -6259,6 +6260,9 @@ msgstr "Υπολογισμός Ημερομηνιών Εγγραφής"
|
||||
#~ msgid "Can not %s draft/proforma/cancel invoice."
|
||||
#~ msgstr "Αδύνατη η %s προσωρινού/προφόρμα/ακυρωμένου τιμολογίου"
|
||||
|
||||
#~ msgid "account.config.wizard"
|
||||
#~ msgstr "account.config.wizard"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "No sequence defined in the journal !"
|
||||
#~ msgstr "Καμία Ιεράρχηση δεν έχει καθοριστεί σε αυτό το ημερολόγιο!"
|
||||
|
||||
+53
-48
@@ -7,13 +7,14 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.0\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2010-04-11 21:46+0000\n"
|
||||
"Last-Translator: Juan Eduardo Riva <juaneduardoriva@gmail.com>\n"
|
||||
"PO-Revision-Date: 2010-06-23 17:24+0000\n"
|
||||
"Last-Translator: Jordi Esteve (www.zikzakmedia.com) "
|
||||
"<jesteve@zikzakmedia.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-24 03:47+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -60,7 +61,7 @@ msgstr "Nombre de modelo inválido en la definición de acción."
|
||||
#. module: account
|
||||
#: help:account.journal,currency:0
|
||||
msgid "The currency used to enter statement"
|
||||
msgstr "La moneda utilizada para introducir asientos"
|
||||
msgstr "La divisa utilizada para introducir asientos."
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account_use_models,init_form:0
|
||||
@@ -456,7 +457,7 @@ msgstr "Estado"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree13
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree13
|
||||
msgid "Unpaid Supplier Refunds"
|
||||
msgstr "Facturas de abono de proveedor sin pagar"
|
||||
msgstr "Facturas rectificativas (abono) de proveedor sin pagar"
|
||||
|
||||
#. module: account
|
||||
#: view:account.tax:0
|
||||
@@ -1232,10 +1233,10 @@ msgid ""
|
||||
"software system you may have to use the rate at date. Incoming transactions "
|
||||
"always use the rate at date."
|
||||
msgstr ""
|
||||
"Permite seleccionar la forma en que la tasa de la moneda actual de las "
|
||||
"transacciones de salida se calcula. En la mayoría de los países el método "
|
||||
"legal es \"Promedio\", pero sólo unos pocos sistemas de software son capaces "
|
||||
"de gestionarlo. Por lo tanto, si la importación procede de otro sistema de "
|
||||
"Permite seleccionar la forma en que se calcula la tasa de la divisa actual "
|
||||
"en las transacciones de salida. En la mayoría de los países el método legal "
|
||||
"es \"Promedio\", pero sólo unos pocos sistemas de software son capaces de "
|
||||
"gestionarlo. Por lo tanto, si la importación procede de otro sistema de "
|
||||
"software, es posible que tenga que utilizar la tasa \"En fecha\". Las "
|
||||
"transacciones de entrada siempre utilizan la tasa \"En fecha\"."
|
||||
|
||||
@@ -1887,7 +1888,7 @@ msgstr "Fecha inicial"
|
||||
#. module: account
|
||||
#: model:account.journal,name:account.refund_expenses_journal
|
||||
msgid "x Expenses Credit Notes Journal"
|
||||
msgstr "x Diario facturas de abono de gastos"
|
||||
msgstr "x Diario facturas rectificativas (abono) de gastos"
|
||||
|
||||
#. module: account
|
||||
#: field:account.analytic.journal,type:0
|
||||
@@ -1914,7 +1915,7 @@ msgstr "Base imponible"
|
||||
#: field:account.tax,account_collected_id:0
|
||||
#: field:account.tax.template,account_collected_id:0
|
||||
msgid "Invoice Tax Account"
|
||||
msgstr "Cuenta impuestos de factura"
|
||||
msgstr "Cuenta impuestos de facturas"
|
||||
|
||||
#. module: account
|
||||
#: view:account.move.line:0
|
||||
@@ -2026,7 +2027,7 @@ msgstr "Informe analítico de diario"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree3
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree3
|
||||
msgid "Customer Refunds"
|
||||
msgstr "Facturas de abono de cliente"
|
||||
msgstr "Facturas rectificativas (abono) de cliente"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.vat.declaration:0
|
||||
@@ -2047,7 +2048,7 @@ msgstr "Nombre diario-período"
|
||||
#: field:account.tax.code,name:0
|
||||
#: field:account.tax.code.template,name:0
|
||||
msgid "Tax Case Name"
|
||||
msgstr "Nombre impuesto del caso"
|
||||
msgstr "Nombre código de impuesto"
|
||||
|
||||
#. module: account
|
||||
#: help:account.journal,entry_posted:0
|
||||
@@ -2114,7 +2115,7 @@ msgstr "Comentario situacion fiscal"
|
||||
#. module: account
|
||||
#: wizard_field:account.fiscalyear.close,init,period_id:0
|
||||
msgid "Opening Entries Period"
|
||||
msgstr "Periodo asientos de apertura"
|
||||
msgstr "Período asientos de apertura"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.wizard,name:account.wizard_validate_account_moves
|
||||
@@ -2145,7 +2146,7 @@ msgstr "Anterior"
|
||||
#: field:account.model.line,currency_id:0
|
||||
#: field:account.move.line,currency_id:0
|
||||
msgid "Currency"
|
||||
msgstr "Moneda"
|
||||
msgstr "Divisa"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.act_account_journal_2_account_invoice_opened
|
||||
@@ -2180,7 +2181,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Asiento analítico"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Mensaje pagos vencidos"
|
||||
|
||||
@@ -2224,7 +2226,7 @@ msgstr "Facturas de proveedor en borrador"
|
||||
#. module: account
|
||||
#: wizard_field:account.invoice.refund,init,period:0
|
||||
msgid "Force period"
|
||||
msgstr "Forzar periodo"
|
||||
msgstr "Forzar período"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.account.type,close_method:0
|
||||
@@ -2305,7 +2307,7 @@ msgstr "Fecha factura"
|
||||
#: help:account.third_party_ledger.report,init,periods:0
|
||||
#: help:account.vat.declaration,init,periods:0
|
||||
msgid "All periods if empty"
|
||||
msgstr "Todos los periodos si está vacío"
|
||||
msgstr "Todos los períodos si está vacío."
|
||||
|
||||
#. module: account
|
||||
#: model:account.account.type,name:account.account_type_liability
|
||||
@@ -2529,7 +2531,7 @@ msgstr "Asientos conciliados"
|
||||
#. module: account
|
||||
#: help:account.bank.statement.reconcile,total_second_amount:0
|
||||
msgid "The amount in the currency of the journal"
|
||||
msgstr "La cantidad en la moneda del diario"
|
||||
msgstr "El importe en la divisa del diario."
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.general.ledger.report,checktype,landscape:0
|
||||
@@ -2927,7 +2929,7 @@ msgstr "Estado abierto"
|
||||
#. module: account
|
||||
#: field:account.journal,entry_posted:0
|
||||
msgid "Skip 'Draft' State for Created Entries"
|
||||
msgstr "Omitir el estado 'Borrador ' para los asientos creados"
|
||||
msgstr "Omitir estado 'Borrador ' al crear asientos"
|
||||
|
||||
#. module: account
|
||||
#: field:account.invoice.tax,account_id:0
|
||||
@@ -2963,7 +2965,7 @@ msgstr "1cm 27.7cm 20cm 27.7cm"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree12
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree12
|
||||
msgid "Draft Supplier Refunds"
|
||||
msgstr "Facturas de abono de proveedor en borrador"
|
||||
msgstr "Facturas rectificativas (abono) de proveedor en borrador"
|
||||
|
||||
#. module: account
|
||||
#: model:process.node,name:account.process_node_accountingstatemententries0
|
||||
@@ -3050,7 +3052,7 @@ msgstr "Tasa de divisas de salida"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree10
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree10
|
||||
msgid "Draft Customer Refunds"
|
||||
msgstr "Facturas de abono de cliente en borrador"
|
||||
msgstr "Facturas rectificativas (abono) de cliente en borrador"
|
||||
|
||||
#. module: account
|
||||
#: field:account.journal.column,readonly:0
|
||||
@@ -3083,7 +3085,7 @@ msgstr "Documento"
|
||||
#. module: account
|
||||
#: help:account.move.line,move_id:0
|
||||
msgid "The move of this entry line."
|
||||
msgstr "El movimiento de esta línea del asiento."
|
||||
msgstr "El asiento de este apunte."
|
||||
|
||||
#. module: account
|
||||
#: field:account.invoice.line,uos_id:0
|
||||
@@ -3233,7 +3235,7 @@ msgstr "Diario de banco"
|
||||
#: selection:account.partner.balance.report,init,state:0
|
||||
#: selection:account.third_party_ledger.report,init,state:0
|
||||
msgid "By Date and Period"
|
||||
msgstr "Por fecha y periodo"
|
||||
msgstr "Por fecha y período"
|
||||
|
||||
#. module: account
|
||||
#: view:account.account:0
|
||||
@@ -3342,7 +3344,7 @@ msgstr "Nombre impuesto"
|
||||
#. module: account
|
||||
#: wizard_view:account.fiscalyear.close.state,init:0
|
||||
msgid " Close states of Fiscal year and periods"
|
||||
msgstr " Cerrar estados de ejercicio fiscal y periodos"
|
||||
msgstr " Cerrar estados de ejercicio fiscal y períodos"
|
||||
|
||||
#. module: account
|
||||
#: model:account.payment.term,name:account.account_payment_term
|
||||
@@ -3539,7 +3541,7 @@ msgstr "Titular de la cuenta bancaria"
|
||||
#: wizard_view:account.partner.balance.report,init:0
|
||||
#: wizard_view:account.third_party_ledger.report,init:0
|
||||
msgid "Filter on Periods"
|
||||
msgstr "Filtrar por periodos"
|
||||
msgstr "Filtrar por períodos"
|
||||
|
||||
#. module: account
|
||||
#: field:res.partner,property_account_receivable:0
|
||||
@@ -3607,7 +3609,7 @@ msgstr "Impreso"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree4_new
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree4_new
|
||||
msgid "New Supplier Refund"
|
||||
msgstr "Nueva factura de abono de proveedor"
|
||||
msgstr "Nueva factura rectificativa (abono) de proveedor"
|
||||
|
||||
#. module: account
|
||||
#: view:account.model:0
|
||||
@@ -3617,7 +3619,7 @@ msgstr "Modelo de asiento"
|
||||
#. module: account
|
||||
#: wizard_field:account.general.ledger.report,checktype,amount_currency:0
|
||||
msgid "With Currency"
|
||||
msgstr "Con moneda"
|
||||
msgstr "Con divisa"
|
||||
|
||||
#. module: account
|
||||
#: view:account.account:0
|
||||
@@ -3722,7 +3724,7 @@ msgstr "Codificación asiento"
|
||||
#: wizard_view:account.invoice.refund,init:0
|
||||
#: model:ir.actions.wizard,name:account.wizard_invoice_refund
|
||||
msgid "Credit Note"
|
||||
msgstr "Factura de abono"
|
||||
msgstr "Factura rectificativa (abono)"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.todo,note:account.config_fiscalyear
|
||||
@@ -3737,7 +3739,7 @@ msgstr "Período de desajuste"
|
||||
#. module: account
|
||||
#: selection:account.config.wizard,period:0
|
||||
msgid "3 Months"
|
||||
msgstr "3 meses"
|
||||
msgstr "Trimestral"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account.move.journal,init:0
|
||||
@@ -3868,7 +3870,7 @@ msgstr "Secuencia del asiento"
|
||||
#: selection:account.account,type:0
|
||||
#: selection:account.account.template,type:0
|
||||
msgid "Closed"
|
||||
msgstr "Cerrado"
|
||||
msgstr "Cierre"
|
||||
|
||||
#. module: account
|
||||
#: model:process.node,name:account.process_node_paymententries0
|
||||
@@ -3924,7 +3926,7 @@ msgstr "Movimiento"
|
||||
#. module: account
|
||||
#: help:account.period,special:0
|
||||
msgid "These periods can overlap."
|
||||
msgstr "Estos periodos se pueden solapar."
|
||||
msgstr "Estos períodos se pueden solapar."
|
||||
|
||||
#. module: account
|
||||
#: help:product.template,property_account_expense:0
|
||||
@@ -3952,7 +3954,7 @@ msgstr "Diarios financieros"
|
||||
#: selection:account.partner.balance.report,init,state:0
|
||||
#: selection:account.third_party_ledger.report,init,state:0
|
||||
msgid "By Period"
|
||||
msgstr "Por periodo"
|
||||
msgstr "Por período"
|
||||
|
||||
#. module: account
|
||||
#: help:account.invoice,date_invoice:0
|
||||
@@ -4050,7 +4052,7 @@ msgstr "Cuenta a pagar"
|
||||
#: field:account.account,currency_id:0
|
||||
#: field:account.account.template,currency_id:0
|
||||
msgid "Secondary Currency"
|
||||
msgstr "Moneda secundaria"
|
||||
msgstr "Divisa secundaria"
|
||||
|
||||
#. module: account
|
||||
#: field:account.account,credit:0
|
||||
@@ -4085,7 +4087,7 @@ msgstr ""
|
||||
#: field:account.tax,account_paid_id:0
|
||||
#: field:account.tax.template,account_paid_id:0
|
||||
msgid "Refund Tax Account"
|
||||
msgstr "Cuenta impuestos de devoluciones"
|
||||
msgstr "Cuenta impuestos de reintegros"
|
||||
|
||||
#. module: account
|
||||
#: field:account.tax.code,child_ids:0
|
||||
@@ -4165,7 +4167,7 @@ msgstr "Límite a pagar"
|
||||
#: wizard_field:account.partner.balance.report,init,state:0
|
||||
#: wizard_field:account.third_party_ledger.report,init,state:0
|
||||
msgid "Date/Period Filter"
|
||||
msgstr "Filtrar fecha/periodo"
|
||||
msgstr "Filtrar por fecha/período"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.journal:0
|
||||
@@ -4188,7 +4190,7 @@ msgstr "Secuencias de diarios separadas"
|
||||
#. module: account
|
||||
#: help:account.bank.statement.reconcile,total_second_currency:0
|
||||
msgid "The currency of the journal"
|
||||
msgstr "La moneda del diario"
|
||||
msgstr "La divisa del diario"
|
||||
|
||||
#. module: account
|
||||
#: view:account.journal.column:0
|
||||
@@ -4431,7 +4433,7 @@ msgstr "Fijado"
|
||||
#: view:account.tax:0
|
||||
#: view:account.tax.template:0
|
||||
msgid "Credit Notes"
|
||||
msgstr "Facturas de abono"
|
||||
msgstr "Facturas rectificativas (abono)"
|
||||
|
||||
#. module: account
|
||||
#: field:account.config.wizard,date2:0
|
||||
@@ -4501,7 +4503,7 @@ msgstr "Línea del modelo de asiento"
|
||||
#. module: account
|
||||
#: view:account.tax.template:0
|
||||
msgid "Account Tax Template"
|
||||
msgstr "Plantilla de impuesto"
|
||||
msgstr "Plantilla de impuestos"
|
||||
|
||||
#. module: account
|
||||
#: help:account.model,name:0
|
||||
@@ -4623,7 +4625,7 @@ msgstr "Por fecha"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree4
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree4
|
||||
msgid "Supplier Refunds"
|
||||
msgstr "Facturas de abono de proveedor"
|
||||
msgstr "Facturas rectificativas (abono) de proveedor"
|
||||
|
||||
#. module: account
|
||||
#: help:account.model.line,date:0
|
||||
@@ -5128,7 +5130,7 @@ msgstr "Cuenta de ingresos en plantilla producto"
|
||||
#: help:account.account.template,currency_id:0
|
||||
msgid "Force all moves for this account to have this secondary currency."
|
||||
msgstr ""
|
||||
"Fuerza a todos los movimientos de esta cuenta que tengan esta moneda "
|
||||
"Fuerza a todos los movimientos de esta cuenta que tengan esta divisa "
|
||||
"secundaria."
|
||||
|
||||
#. module: account
|
||||
@@ -5142,7 +5144,7 @@ msgstr "_Cancelar"
|
||||
#: wizard_view:account.partner.balance.report,init:0
|
||||
#: wizard_view:account.third_party_ledger.report,init:0
|
||||
msgid "Select Date-Period"
|
||||
msgstr "Seleccionar fecha-periodo"
|
||||
msgstr "Seleccionar fecha-período"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.inverted.balance:0
|
||||
@@ -5171,7 +5173,7 @@ msgstr "Grupo de Impuestos"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree3_new
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree3_new
|
||||
msgid "New Customer Refund"
|
||||
msgstr "Nueva factura de abono de cliente"
|
||||
msgstr "Nueva factura rectificativa (abono) de cliente"
|
||||
|
||||
#. module: account
|
||||
#: help:wizard.multi.charts.accounts,seq_journal:0
|
||||
@@ -5369,7 +5371,7 @@ msgstr "Pagado"
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree11
|
||||
#: model:ir.ui.menu,name:account.menu_action_invoice_tree11
|
||||
msgid "Unpaid Customer Refunds"
|
||||
msgstr "Facturas de abono de cliente sin pagar"
|
||||
msgstr "Facturas rectificativas (abono) de cliente sin pagar"
|
||||
|
||||
#. module: account
|
||||
#: help:account.invoice,residual:0
|
||||
@@ -5557,7 +5559,7 @@ msgstr "Saldo pendiente"
|
||||
#. module: account
|
||||
#: rml:account.invoice:0
|
||||
msgid "Refund"
|
||||
msgstr "Factura de abono"
|
||||
msgstr "Factura rectificativa (abono)"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_invoice_tax
|
||||
@@ -5794,7 +5796,7 @@ msgstr ""
|
||||
#: field:account.tax.code,code:0
|
||||
#: field:account.tax.code.template,code:0
|
||||
msgid "Case Code"
|
||||
msgstr "Código caso"
|
||||
msgstr "Código"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.automatic.reconcile,init,power:0
|
||||
@@ -5810,7 +5812,7 @@ msgstr "Cuenta de ingresos"
|
||||
#. module: account
|
||||
#: field:account.period,special:0
|
||||
msgid "Opening/Closing Period"
|
||||
msgstr "Periodo de apertura/cierre"
|
||||
msgstr "Período de apertura/cierre"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.analytic.account.balance:0
|
||||
@@ -5918,7 +5920,7 @@ msgstr "Dejarlo vacío para todos los ejercicios fiscales abiertos"
|
||||
#: rml:account.invoice:0
|
||||
#: selection:account.invoice,type:0
|
||||
msgid "Supplier Refund"
|
||||
msgstr "Factura de abono de proveedor"
|
||||
msgstr "Factura rectificativa (abono) de proveedor"
|
||||
|
||||
#. module: account
|
||||
#: model:process.transition,note:account.process_transition_entriesreconcile0
|
||||
@@ -6074,3 +6076,6 @@ msgstr ""
|
||||
#: wizard_button:account.subscription.generate,init,generate:0
|
||||
msgid "Compute Entry Dates"
|
||||
msgstr "Calcular fechas asiento"
|
||||
|
||||
#~ msgid "account.config.wizard"
|
||||
#~ msgstr "account.config.asistente"
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:08+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:07+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2178,7 +2178,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Asiento analítico"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Mensaje de Pagos Vencidos"
|
||||
|
||||
@@ -6136,6 +6137,9 @@ msgstr "Calcular fechas del asiento"
|
||||
#~ msgid "You must first select a partner !"
|
||||
#~ msgstr "Primero debe seleccionar un partner !"
|
||||
|
||||
#~ msgid "account.config.wizard"
|
||||
#~ msgstr "asistente.configuracion.contable"
|
||||
|
||||
#, python-format
|
||||
#~ msgid "The opening journal must not have any entry in the new fiscal year !"
|
||||
#~ msgstr ""
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:08+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:07+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2171,7 +2171,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-10 04:17+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -290,7 +290,7 @@ msgstr "Fikseeritud"
|
||||
#: model:ir.actions.report.xml,name:account.account_overdue
|
||||
#: view:res.company:0
|
||||
msgid "Overdue Payments"
|
||||
msgstr "Tasumatta Maksed"
|
||||
msgstr "Tasumata Maksed"
|
||||
|
||||
#. module: account
|
||||
#: wizard_view:account.account.balance.report,checktype:0
|
||||
@@ -1463,7 +1463,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:res.partner,debit:0
|
||||
msgid "Total Payable"
|
||||
msgstr ""
|
||||
msgstr "Võlg kokku"
|
||||
|
||||
#. module: account
|
||||
#: wizard_button:account.fiscalyear.close.state,init,close:0
|
||||
@@ -2134,7 +2134,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Analüütiline kirje"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
@@ -2167,7 +2168,7 @@ msgstr "Loo 3 kuupikkused perioodid"
|
||||
#. module: account
|
||||
#: view:account.invoice:0
|
||||
msgid "(keep empty to use the current period)"
|
||||
msgstr "(jätke tühjaks, et kasutada praegusel perioodil)"
|
||||
msgstr "(jätke tühjaks, et kasutada käesolevat perioodi)"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_invoice_tree8
|
||||
@@ -2915,7 +2916,7 @@ msgstr ""
|
||||
#: view:product.template:0
|
||||
#: view:res.partner:0
|
||||
msgid "Accounting"
|
||||
msgstr ""
|
||||
msgstr "Raamatupidamine"
|
||||
|
||||
#. module: account
|
||||
#: view:account.fiscal.position.template:0
|
||||
@@ -4047,7 +4048,7 @@ msgstr "Kliendi arved"
|
||||
#. module: account
|
||||
#: field:res.partner,debit_limit:0
|
||||
msgid "Payable Limit"
|
||||
msgstr ""
|
||||
msgstr "Võla limiit"
|
||||
|
||||
#. module: account
|
||||
#: wizard_field:account.account.balance.report,checktype,state:0
|
||||
@@ -5195,7 +5196,7 @@ msgstr "Ei"
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.act_account_partner_account_move
|
||||
msgid "All account entries"
|
||||
msgstr ""
|
||||
msgstr "Kõik kontokirjed"
|
||||
|
||||
#. module: account
|
||||
#: help:account.invoice.tax,tax_code_id:0
|
||||
@@ -5519,7 +5520,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: wizard_view:account.move.validate,init:0
|
||||
msgid "Validate Account Entries"
|
||||
msgstr "Kinnita konokirjed"
|
||||
msgstr "Kinnita kontokirjed"
|
||||
|
||||
#. module: account
|
||||
#: selection:account.print.journal.report,init,sort_selection:0
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-24 03:46+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:03+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2133,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2170,7 +2170,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Analyyttinen merkintä"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Myöhässä olevien maksujen viesti"
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-22 04:00+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-15 04:58+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2133,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2132,7 +2132,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2132,7 +2132,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2133,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.0\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2010-05-13 14:03+0000\n"
|
||||
"Last-Translator: Carlo - didotech.com <Unknown>\n"
|
||||
"PO-Revision-Date: 2010-06-15 07:00+0000\n"
|
||||
"Last-Translator: eLBati - albatos.com <lorenzo.battistini@albatos.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: 2010-05-14 04:55+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -1176,7 +1176,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.payment.term,line_ids:0
|
||||
msgid "Terms"
|
||||
msgstr "Periodi"
|
||||
msgstr "Condizioni"
|
||||
|
||||
#. module: account
|
||||
#: rml:account.vat.declaration:0
|
||||
@@ -3047,7 +3047,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.invoice.line,uos_id:0
|
||||
msgid "Unit of Measure"
|
||||
msgstr ""
|
||||
msgstr "Unità di misura"
|
||||
|
||||
#. module: account
|
||||
#: field:account.chart.template,property_account_receivable:0
|
||||
@@ -3107,7 +3107,7 @@ msgstr "Imposta come bozza"
|
||||
#: help:account.invoice,origin:0
|
||||
#: help:account.invoice.line,origin:0
|
||||
msgid "Reference of the document that produced this invoice."
|
||||
msgstr ""
|
||||
msgstr "Riferimento al documento che ha prodotto questa fattura."
|
||||
|
||||
#. module: account
|
||||
#: selection:account.account,type:0
|
||||
@@ -3608,7 +3608,7 @@ msgstr "Manuale"
|
||||
#. module: account
|
||||
#: view:account.invoice:0
|
||||
msgid "Compute Taxes"
|
||||
msgstr ""
|
||||
msgstr "Calcola tasse"
|
||||
|
||||
#. module: account
|
||||
#: field:wizard.multi.charts.accounts,code_digits:0
|
||||
@@ -4596,7 +4596,7 @@ msgstr ""
|
||||
#. module: account
|
||||
#: field:account.tax,price_include:0
|
||||
msgid "Tax Included in Price"
|
||||
msgstr ""
|
||||
msgstr "Tassa compresa nel prezzo"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_account_analytic_journal_tree2
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -806,8 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
@@ -2135,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2133,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2147,7 +2147,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Analitinis įrašas"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-17 05:01+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2133,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2133,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:06+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:04+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2176,7 +2176,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Kostenplaatsboeking"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Aanmaningsbericht"
|
||||
|
||||
@@ -6075,3 +6076,6 @@ msgstr ""
|
||||
#: wizard_button:account.subscription.generate,init,generate:0
|
||||
msgid "Compute Entry Dates"
|
||||
msgstr "Bereken mutatie data"
|
||||
|
||||
#~ msgid "account.config.wizard"
|
||||
#~ msgstr "account.config.wizard"
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-03 03:33+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:07+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-25 03:42+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-31 03:47+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2169,7 +2169,8 @@ msgid "Analytic Entry"
|
||||
msgstr "movimento analitico"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Mensagem de pagamentos em atraso"
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:08+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:07+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2175,7 +2175,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Lançamento analítico"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Mensagem para Pagamentos Atrasados"
|
||||
|
||||
@@ -6068,3 +6069,6 @@ msgstr ""
|
||||
#: wizard_button:account.subscription.generate,init,generate:0
|
||||
msgid "Compute Entry Dates"
|
||||
msgstr "Processar Datas de Lançamento"
|
||||
|
||||
#~ msgid "account.config.wizard"
|
||||
#~ msgstr "account.config.wizard"
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2175,7 +2175,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Înregistrare analitică"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Mesaj plăţi restante"
|
||||
|
||||
@@ -6063,3 +6064,6 @@ msgstr ""
|
||||
#: wizard_button:account.subscription.generate,init,generate:0
|
||||
msgid "Compute Entry Dates"
|
||||
msgstr "Calculează datele înregistrării"
|
||||
|
||||
#~ msgid "account.config.wizard"
|
||||
#~ msgstr "account.config.wizard"
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2154,7 +2154,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Проводка аналитики"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2133,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2136,7 +2136,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:07+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2159,7 +2159,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Analitičen vnos"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Sporočilo za opomin za zapadle postavke"
|
||||
|
||||
@@ -5960,3 +5961,6 @@ msgstr ""
|
||||
#: wizard_button:account.subscription.generate,init,generate:0
|
||||
msgid "Compute Entry Dates"
|
||||
msgstr "Izračunaj datume vknjižb"
|
||||
|
||||
#~ msgid "account.config.wizard"
|
||||
#~ msgstr "account.config.wizard"
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:05+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:03+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2159,7 +2159,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-26 03:42+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:05+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2136,7 +2136,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-22 03:43+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2151,7 +2151,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Objektpost"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Förfallna fakturor meddelande"
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:08+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2133,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-21 03:38+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:08+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2132,7 +2132,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:08+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2132,7 +2132,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr "Vadesi Geçmiş Ödeme için Mesaj"
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-12 04:20+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
@@ -2138,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:08+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2135,7 +2135,8 @@ msgid "Analytic Entry"
|
||||
msgstr "Проводка аналітики"
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:08+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2144,7 +2144,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.6\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2010-05-29 11:45+0000\n"
|
||||
"Last-Translator: digitalsatori <Unknown>\n"
|
||||
"PO-Revision-Date: 2010-06-22 22:56+0000\n"
|
||||
"Last-Translator: sagas <sagas@163.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-30 03:44+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-24 03:47+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -277,8 +277,8 @@ msgid ""
|
||||
"date empty, it means direct payment. The payment term may compute several "
|
||||
"due dates, for example 50% now, 50% in one month."
|
||||
msgstr ""
|
||||
"如果你使用付款条件,这到期日期将在生产会计分录时自动计算。如果付款条件和到期日\r\n"
|
||||
"期为空,则意味着直接付款。这种付款条件可能计算出几个到期日,例如现在先付50%然\r\n"
|
||||
"如果你使用付款条件,到期日期将在生成会计分录时自动计算。如果付款条件和到期日\r\n"
|
||||
"期为空,则意味着直接付款。使用付款条件可能计算出几个到期日,例如现在先付50%,然\r\n"
|
||||
"后在一个月内支付余下的50%。"
|
||||
|
||||
#. module: account
|
||||
@@ -302,7 +302,7 @@ msgstr "逾期付款"
|
||||
#: wizard_view:account.analytic.account.quantity_cost_ledger.report,init:0
|
||||
#: wizard_view:account.vat.declaration,init:0
|
||||
msgid "Select period"
|
||||
msgstr "选择期间段"
|
||||
msgstr "选择会计期间"
|
||||
|
||||
#. module: account
|
||||
#: field:account.invoice,origin:0
|
||||
@@ -488,7 +488,7 @@ msgstr "税用在"
|
||||
msgid ""
|
||||
"Set if the amount of tax must be included in the base amount before "
|
||||
"computing the next taxes."
|
||||
msgstr "在下一个税额计算前,如果本税额必须包含在下一税基里,请设置"
|
||||
msgstr "在下一个税额计算前,如果本税额必须包含在税基里,请设置"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.ui.menu,name:account.menu_finance_periodical_processing
|
||||
@@ -712,7 +712,7 @@ msgstr "客户欠款金额合计"
|
||||
#. module: account
|
||||
#: view:account.move.line:0
|
||||
msgid "St."
|
||||
msgstr ""
|
||||
msgstr "结单编码"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.action_tax_code_line_open
|
||||
|
||||
@@ -14,7 +14,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:08+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:06+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2133,7 +2133,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ msgstr ""
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-23 03:45+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-06-22 04:07+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account
|
||||
@@ -2132,7 +2132,8 @@ msgid "Analytic Entry"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: view:res.company:0 field:res.company,overdue_msg:0
|
||||
#: view:res.company:0
|
||||
#: field:res.company,overdue_msg:0
|
||||
msgid "Overdue Payments Message"
|
||||
msgstr ""
|
||||
|
||||
|
||||
+12
-12
@@ -21,12 +21,12 @@
|
||||
import time
|
||||
import datetime
|
||||
from dateutil.relativedelta import relativedelta
|
||||
from tools.translate import _
|
||||
from os.path import join as opj
|
||||
from operator import itemgetter
|
||||
from tools.translate import _
|
||||
from osv import fields, osv
|
||||
import netsvc
|
||||
import tools
|
||||
from os.path import join as opj
|
||||
|
||||
class account_installer(osv.osv_memory):
|
||||
_name = 'account.installer'
|
||||
@@ -99,7 +99,7 @@ class account_installer(osv.osv_memory):
|
||||
mod_obj = self.pool.get('ir.model.data')
|
||||
result = mod_obj._get_id(cr, uid, 'account', 'configurable_chart_template')
|
||||
id = mod_obj.read(cr, uid, [result], ['res_id'])[0]['res_id']
|
||||
obj_multi = self.pool.get('account.chart.template').browse(cr,uid, id)
|
||||
obj_multi = self.pool.get('account.chart.template').browse(cr, uid, id)
|
||||
|
||||
obj_acc = self.pool.get('account.account')
|
||||
obj_acc_tax = self.pool.get('account.tax')
|
||||
@@ -108,7 +108,7 @@ class account_installer(osv.osv_memory):
|
||||
obj_acc_template = self.pool.get('account.account.template')
|
||||
obj_fiscal_position_template = self.pool.get('account.fiscal.position.template')
|
||||
obj_fiscal_position = self.pool.get('account.fiscal.position')
|
||||
company_id = self.pool.get('res.users').browse(cr,uid,[uid],context)[0].company_id
|
||||
company_id = self.pool.get('res.users').browse(cr, uid, [uid], context)[0].company_id
|
||||
seq_journal = True
|
||||
|
||||
# Creating Account
|
||||
@@ -133,7 +133,7 @@ class account_installer(osv.osv_memory):
|
||||
'company_id': company_id.id,
|
||||
'sign': tax_code_template.sign,
|
||||
}
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr,uid,vals)
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr, uid, vals)
|
||||
#recording the new tax code to do the mapping
|
||||
tax_code_template_ref[tax_code_template.id] = new_tax_code
|
||||
|
||||
@@ -166,7 +166,7 @@ class account_installer(osv.osv_memory):
|
||||
'company_id': company_id.id,
|
||||
'type_tax_use': tax.type_tax_use
|
||||
}
|
||||
new_tax = obj_acc_tax.create(cr,uid,vals_tax)
|
||||
new_tax = obj_acc_tax.create(cr, uid, vals_tax)
|
||||
#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,
|
||||
@@ -204,7 +204,7 @@ class account_installer(osv.osv_memory):
|
||||
'tax_ids': [(6,0,tax_ids)],
|
||||
'company_id': company_id.id,
|
||||
}
|
||||
new_account = obj_acc.create(cr,uid,vals)
|
||||
new_account = obj_acc.create(cr, uid, vals)
|
||||
acc_template_ref[account_template.id] = new_account
|
||||
if account_template.name == 'Bank Current Account':
|
||||
view_id_cash = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Cash Journal View')])[0]
|
||||
@@ -328,8 +328,8 @@ class account_installer(osv.osv_memory):
|
||||
obj_journal.create(cr,uid,vals_journal)
|
||||
|
||||
# Bank Journals
|
||||
view_id_cash = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Cash Journal View')])[0]
|
||||
view_id_cur = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Multi-Currency Cash Journal View')])[0]
|
||||
view_id_cash = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Cash Journal View')])[0]
|
||||
view_id_cur = self.pool.get('account.journal.view').search(cr, uid, [('name','=','Multi-Currency Cash Journal View')])[0]
|
||||
ref_acc_bank = obj_multi.bank_account_view_id
|
||||
|
||||
|
||||
@@ -426,7 +426,7 @@ class account_installer(osv.osv_memory):
|
||||
'sign': 1,
|
||||
'parent_id':sal_tax_parent_id
|
||||
}
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr,uid,vals_tax_code)
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr, uid, vals_tax_code)
|
||||
sales_tax = obj_tax.create(cr, uid,
|
||||
{'name':'VAT%s%%'%(s_tax*100),
|
||||
'description':'VAT%s%%'%(s_tax*100),
|
||||
@@ -445,7 +445,7 @@ class account_installer(osv.osv_memory):
|
||||
'sign': 1,
|
||||
'parent_id':pur_tax_parent_id
|
||||
}
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr,uid,vals_tax_code)
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr, uid, vals_tax_code)
|
||||
purchase_tax = obj_tax.create(cr, uid,
|
||||
{'name':'VAT%s%%'%(p_tax*100),
|
||||
'description':'VAT%s%%'%(p_tax*100),
|
||||
@@ -457,7 +457,7 @@ class account_installer(osv.osv_memory):
|
||||
tax_val.update({'supplier_taxes_id':[(6,0,[purchase_tax])]})
|
||||
default_tax.append(('supplier_taxes_id',purchase_tax))
|
||||
if len(tax_val):
|
||||
product_ids = obj_product.search(cr,uid, [])
|
||||
product_ids = obj_product.search(cr, uid, [])
|
||||
for product in obj_product.browse(cr, uid, product_ids):
|
||||
obj_product.write(cr, uid, product.id, tax_val)
|
||||
for name, value in default_tax:
|
||||
|
||||
+124
-78
@@ -20,6 +20,7 @@
|
||||
##############################################################################
|
||||
|
||||
import time
|
||||
from operator import itemgetter
|
||||
import decimal_precision as dp
|
||||
|
||||
import netsvc
|
||||
@@ -31,7 +32,7 @@ from tools.translate import _
|
||||
class account_invoice(osv.osv):
|
||||
def _amount_all(self, cr, uid, ids, name, args, context=None):
|
||||
res = {}
|
||||
for invoice in self.browse(cr,uid,ids, context=context):
|
||||
for invoice in self.browse(cr, uid, ids, context=context):
|
||||
res[invoice.id] = {
|
||||
'amount_untaxed': 0.0,
|
||||
'amount_tax': 0.0,
|
||||
@@ -111,12 +112,12 @@ class account_invoice(osv.osv):
|
||||
context_unreconciled.update({'date':lines.date})
|
||||
# If amount currency setted, compute for debit and credit in company currency
|
||||
if lines.amount_currency < 0:
|
||||
credit_tmp=abs(cur_obj.compute(cr, uid, lines.currency_id.id, inv.company_id.currency_id.id, lines.amount_currency, round=False,context=context_unreconciled))
|
||||
credit_tmp=abs(cur_obj.compute(cr, uid, lines.currency_id.id, inv.company_id.currency_id.id, lines.amount_currency, round=False, context=context_unreconciled))
|
||||
elif lines.amount_currency > 0:
|
||||
debit_tmp=abs(cur_obj.compute(cr, uid, lines.currency_id.id, inv.company_id.currency_id.id, lines.amount_currency, round=False,context=context_unreconciled))
|
||||
debit_tmp=abs(cur_obj.compute(cr, uid, lines.currency_id.id, inv.company_id.currency_id.id, lines.amount_currency, round=False, context=context_unreconciled))
|
||||
# Then, recomput into invoice currency to avoid rounding trouble !
|
||||
debit += cur_obj.compute(cr, uid, inv.company_id.currency_id.id, inv.currency_id.id, debit_tmp, round=False,context=context)
|
||||
credit += cur_obj.compute(cr, uid, inv.company_id.currency_id.id, inv.currency_id.id, credit_tmp, round=False,context=context)
|
||||
debit += cur_obj.compute(cr, uid, inv.company_id.currency_id.id, inv.currency_id.id, debit_tmp, round=False, context=context)
|
||||
credit += cur_obj.compute(cr, uid, inv.company_id.currency_id.id, inv.currency_id.id, credit_tmp, round=False, context=context)
|
||||
else:
|
||||
debit+=debit_tmp
|
||||
credit+=credit_tmp
|
||||
@@ -130,19 +131,19 @@ class account_invoice(osv.osv):
|
||||
amount = debit-credit
|
||||
result = inv.amount_total - amount
|
||||
# Use is_zero function to avoid rounding trouble => should be fixed into ORM
|
||||
res[inv.id] = not self.pool.get('res.currency').is_zero(cr, uid, inv.company_id.currency_id,result) and result or 0.0
|
||||
res[inv.id] = not self.pool.get('res.currency').is_zero(cr, uid, inv.company_id.currency_id, result) and result or 0.0
|
||||
|
||||
return res
|
||||
|
||||
def _get_lines(self, cr, uid, ids, name, arg, context=None):
|
||||
res = {}
|
||||
for id in ids:
|
||||
move_lines = self.move_line_id_payment_get(cr,uid,[id])
|
||||
move_lines = self.move_line_id_payment_get(cr, uid, [id])
|
||||
if not move_lines:
|
||||
res[id] = []
|
||||
continue
|
||||
res[id] = []
|
||||
data_lines = self.pool.get('account.move.line').browse(cr,uid,move_lines)
|
||||
data_lines = self.pool.get('account.move.line').browse(cr, uid, move_lines)
|
||||
partial_ids = []# Keeps the track of ids where partial payments are done with payment terms
|
||||
for line in data_lines:
|
||||
ids_line = []
|
||||
@@ -218,7 +219,7 @@ class account_invoice(osv.osv):
|
||||
_order = "number"
|
||||
_log_create = True
|
||||
_columns = {
|
||||
'name': fields.char('Description', size=64, select=True,readonly=True, states={'draft':[('readonly',False)]}),
|
||||
'name': fields.char('Description', size=64, select=True, readonly=True, states={'draft':[('readonly',False)]}),
|
||||
'origin': fields.char('Source Document', size=64, help="Reference of the document that produced this invoice."),
|
||||
'type': fields.selection([
|
||||
('out_invoice','Customer Invoice'),
|
||||
@@ -246,8 +247,8 @@ class account_invoice(osv.osv):
|
||||
\n* The \'Open\' state is used when user create invoice,a invoice number is generated.Its in open state till user does not pay invoice. \
|
||||
\n* The \'Done\' state is set automatically when invoice is paid.\
|
||||
\n* The \'Cancelled\' state is used when user cancel invoice.'),
|
||||
'date_invoice': fields.date('Date Invoiced', states={'open':[('readonly',True)],'close':[('readonly',True)]}, help="Keep empty to use the current date"),
|
||||
'date_due': fields.date('Due Date', states={'open':[('readonly',True)],'close':[('readonly',True)]},
|
||||
'date_invoice': fields.date('Date Invoiced', states={'open':[('readonly',True)], 'close':[('readonly',True)]}, help="Keep empty to use the current date"),
|
||||
'date_due': fields.date('Due Date', states={'open':[('readonly',True)], 'close':[('readonly',True)]},
|
||||
help="If you use payment terms, the due date will be computed automatically at the generation "\
|
||||
"of accounting entries. If you keep the payment term and the due date empty, it means direct payment. The payment term may compute several due dates, for example 50% now, 50% in one month."),
|
||||
'partner_id': fields.many2one('res.partner', 'Partner', change_default=True, readonly=True, required=True, states={'draft':[('readonly',False)]}),
|
||||
@@ -264,7 +265,7 @@ class account_invoice(osv.osv):
|
||||
'tax_line': fields.one2many('account.invoice.tax', 'invoice_id', 'Tax Lines', readonly=True, states={'draft':[('readonly',False)]}),
|
||||
|
||||
'move_id': fields.many2one('account.move', 'Invoice Movement', readonly=True, help="Links to the automatically generated Ledger Postings."),
|
||||
'amount_untaxed': fields.function(_amount_all, method=True, digits_compute=dp.get_precision('Account'),string='Untaxed',
|
||||
'amount_untaxed': fields.function(_amount_all, method=True, digits_compute=dp.get_precision('Account'), string='Untaxed',
|
||||
store={
|
||||
'account.invoice': (lambda self, cr, uid, ids, c={}: ids, ['invoice_line'], 20),
|
||||
'account.invoice.tax': (_get_invoice_tax, None, 20),
|
||||
@@ -286,7 +287,7 @@ class account_invoice(osv.osv):
|
||||
},
|
||||
multi='all'),
|
||||
'currency_id': fields.many2one('res.currency', 'Currency', required=True, readonly=True, states={'draft':[('readonly',False)]}),
|
||||
'journal_id': fields.many2one('account.journal', 'Journal', required=True,readonly=True, states={'draft':[('readonly',False)]}),
|
||||
'journal_id': fields.many2one('account.journal', 'Journal', required=True, readonly=True, states={'draft':[('readonly',False)]}),
|
||||
'company_id': fields.many2one('res.company', 'Company', required=True, change_default=True),
|
||||
'check_total': fields.float('Total', digits_compute=dp.get_precision('Account'), states={'open':[('readonly',True)],'close':[('readonly',True)]}),
|
||||
'reconciled': fields.function(_reconciled, method=True, string='Paid/Reconciled', type='boolean',
|
||||
@@ -297,8 +298,8 @@ class account_invoice(osv.osv):
|
||||
}, help="The Ledger Postings of the invoice have been reconciled with Ledger Postings of the payment(s)."),
|
||||
'partner_bank': fields.many2one('res.partner.bank', 'Bank Account',
|
||||
help='The bank account to pay to or to be paid from'),
|
||||
'move_lines':fields.function(_get_lines , method=True,type='many2many' , relation='account.move.line',string='Entry Lines'),
|
||||
'residual': fields.function(_amount_residual, method=True, digits_compute=dp.get_precision('Account'),string='Residual',
|
||||
'move_lines':fields.function(_get_lines , method=True, type='many2many', relation='account.move.line', string='Entry Lines'),
|
||||
'residual': fields.function(_amount_residual, method=True, digits_compute=dp.get_precision('Account'), string='Residual',
|
||||
store={
|
||||
'account.invoice': (lambda self, cr, uid, ids, c={}: ids, ['invoice_line'], 50),
|
||||
'account.invoice.tax': (_get_invoice_tax, None, 50),
|
||||
@@ -321,9 +322,22 @@ class account_invoice(osv.osv):
|
||||
'company_id': lambda self,cr,uid,c: self.pool.get('res.company')._company_default_get(cr, uid, 'account.invoice', context=c),
|
||||
'reference_type': lambda *a: 'none',
|
||||
'check_total': lambda *a: 0.0,
|
||||
'user_id': lambda s,cr,u,c: u,
|
||||
'user_id': lambda s, cr, u, c: u,
|
||||
}
|
||||
|
||||
def fields_view_get(self, cr, uid, view_id=None, view_type=False, context=None, toolbar=False, submenu=False):
|
||||
if context.get('active_model','') in ['res.partner']:
|
||||
partner = self.pool.get(context['active_model']).read(cr,uid,context['active_ids'],['supplier','customer'])[0]
|
||||
if not view_type:
|
||||
view_id = self.pool.get('ir.ui.view').search(cr,uid,[('name','=','account.invoice.tree')])[0]
|
||||
view_type = 'tree'
|
||||
if view_type == 'form':
|
||||
if partner['supplier'] and not partner['customer']:
|
||||
view_id = self.pool.get('ir.ui.view').search(cr,uid,[('name','=','account.invoice.supplier.form')])[0]
|
||||
else:
|
||||
view_id = self.pool.get('ir.ui.view').search(cr,uid,[('name','=','account.invoice.form')])[0]
|
||||
return super(account_invoice,self).fields_view_get(cr, uid, view_id=view_id, view_type=view_type, context=context, toolbar=toolbar, submenu=submenu)
|
||||
|
||||
def create(self, cr, uid, vals, context={}):
|
||||
try:
|
||||
res = super(account_invoice, self).create(cr, uid, vals, context)
|
||||
@@ -333,11 +347,12 @@ class account_invoice(osv.osv):
|
||||
raise orm.except_orm(_('Configuration Error!'),
|
||||
_('There is no Accounting Journal of type Sale/Purchase defined!'))
|
||||
else:
|
||||
raise
|
||||
raise orm.except_orm(_('UnknownError'), str(e))
|
||||
|
||||
def confirm_paid(self, cr, uid, ids, context=None):
|
||||
self.write(cr, uid, ids, {'state':'paid'}, context=context)
|
||||
for (id,name) in self.name_get(cr, uid, ids):
|
||||
for (id, name) in self.name_get(cr, uid, ids):
|
||||
message = _('Document ') + " '" + name + "' "+ _("has been paid.")
|
||||
self.log(cr, uid, id, message)
|
||||
return True
|
||||
@@ -388,8 +403,8 @@ class account_invoice(osv.osv):
|
||||
if not rec_res_id and not pay_res_id:
|
||||
raise osv.except_osv(_('Configration Error !'),
|
||||
_('Can not find account chart for this company, Please Create account.'))
|
||||
rec_obj_acc=self.pool.get('account.account').browse(cr,uid,[rec_res_id])
|
||||
pay_obj_acc=self.pool.get('account.account').browse(cr,uid,[pay_res_id])
|
||||
rec_obj_acc=self.pool.get('account.account').browse(cr, uid, [rec_res_id])
|
||||
pay_obj_acc=self.pool.get('account.account').browse(cr, uid, [pay_res_id])
|
||||
p.property_account_receivable = rec_obj_acc[0]
|
||||
p.property_account_payable = pay_obj_acc[0]
|
||||
|
||||
@@ -417,7 +432,7 @@ class account_invoice(osv.osv):
|
||||
if payment_term != partner_payment_term:
|
||||
if partner_payment_term:
|
||||
to_update = self.onchange_payment_term_date_invoice(
|
||||
cr,uid,ids,partner_payment_term,date_invoice)
|
||||
cr, uid, ids, partner_payment_term, date_invoice)
|
||||
result['value'].update(to_update['value'])
|
||||
else:
|
||||
result['value']['date_due'] = False
|
||||
@@ -469,14 +484,14 @@ class account_invoice(osv.osv):
|
||||
partner_obj = self.pool.get('res.partner').browse(cr,uid,part_id)
|
||||
if partner_obj.property_account_payable and partner_obj.property_account_receivable:
|
||||
if partner_obj.property_account_payable.company_id.id != company_id and partner_obj.property_account_receivable.company_id.id != company_id:
|
||||
rec_pro_id = self.pool.get('ir.property').search(cr,uid,[('name','=','property_account_receivable'),('res_id','=','res.partner,'+str(part_id)+''),('company_id','=',company_id)])
|
||||
pay_pro_id = self.pool.get('ir.property').search(cr,uid,[('name','=','property_account_payable'),('res_id','=','res.partner,'+str(part_id)+''),('company_id','=',company_id)])
|
||||
rec_pro_id = self.pool.get('ir.property').search(cr, uid, [('name','=','property_account_receivable'),('res_id','=','res.partner,'+str(part_id)+''),('company_id','=',company_id)])
|
||||
pay_pro_id = self.pool.get('ir.property').search(cr, uid, [('name','=','property_account_payable'),('res_id','=','res.partner,'+str(part_id)+''),('company_id','=',company_id)])
|
||||
if not rec_pro_id:
|
||||
rec_pro_id = self.pool.get('ir.property').search(cr,uid,[('name','=','property_account_receivable'),('company_id','=',company_id)])
|
||||
rec_pro_id = self.pool.get('ir.property').search(cr, uid, [('name','=','property_account_receivable'),('company_id','=',company_id)])
|
||||
if not pay_pro_id:
|
||||
pay_pro_id = self.pool.get('ir.property').search(cr,uid,[('name','=','property_account_payable'),('company_id','=',company_id)])
|
||||
rec_line_data = self.pool.get('ir.property').read(cr,uid,rec_pro_id,['name','value','res_id'])
|
||||
pay_line_data = self.pool.get('ir.property').read(cr,uid,pay_pro_id,['name','value','res_id'])
|
||||
pay_pro_id = self.pool.get('ir.property').search(cr, uid, [('name','=','property_account_payable'),('company_id','=',company_id)])
|
||||
rec_line_data = self.pool.get('ir.property').read(cr, uid, rec_pro_id, ['name','value','res_id'])
|
||||
pay_line_data = self.pool.get('ir.property').read(cr, uid, pay_pro_id, ['name','value','res_id'])
|
||||
rec_res_id = rec_line_data and int(rec_line_data[0]['value'].split(',')[1]) or False
|
||||
pay_res_id = pay_line_data and int(pay_line_data[0]['value'].split(',')[1]) or False
|
||||
if not rec_res_id and not rec_res_id:
|
||||
@@ -493,15 +508,15 @@ class account_invoice(osv.osv):
|
||||
for line in inv_obj[0].invoice_line:
|
||||
if line.account_id:
|
||||
if line.account_id.company_id.id != company_id:
|
||||
result_id = self.pool.get('account.account').search(cr,uid,[('name','=',line.account_id.name),('company_id','=',company_id)])
|
||||
result_id = self.pool.get('account.account').search(cr, uid, [('name','=',line.account_id.name),('company_id','=',company_id)])
|
||||
if not result_id:
|
||||
raise osv.except_osv(_('Configration Error !'),
|
||||
_('Can not find account chart for this company in invoice line account, Please Create account.'))
|
||||
r_id = self.pool.get('account.invoice.line').write(cr,uid,[line.id],{'account_id': result_id[0]})
|
||||
r_id = self.pool.get('account.invoice.line').write(cr, uid, [line.id], {'account_id': result_id[0]})
|
||||
else:
|
||||
if invoice_line:
|
||||
for inv_line in invoice_line:
|
||||
obj_l = self.pool.get('account.account').browse(cr,uid,inv_line[2]['account_id'])
|
||||
obj_l = self.pool.get('account.account').browse(cr, uid, inv_line[2]['account_id'])
|
||||
if obj_l.company_id.id != company_id:
|
||||
raise osv.except_osv(_('Configration Error !'),
|
||||
_('invoice line account company is not match with invoice company.'))
|
||||
@@ -564,12 +579,13 @@ class account_invoice(osv.osv):
|
||||
def move_line_id_payment_get(self, cr, uid, ids, *args):
|
||||
res = []
|
||||
if not ids: return res
|
||||
cr.execute('select \
|
||||
l.id \
|
||||
from account_move_line l \
|
||||
left join account_invoice i on (i.move_id=l.move_id) \
|
||||
where i.id in ('+','.join(map(str,map(int, ids)))+') and l.account_id=i.account_id')
|
||||
res = map(lambda x: x[0], cr.fetchall())
|
||||
cr.execute('SELECT l.id '\
|
||||
'FROM account_move_line l '\
|
||||
'LEFT JOIN account_invoice i ON (i.move_id=l.move_id) '\
|
||||
'WHERE i.id IN %s '\
|
||||
'AND l.account_id=i.account_id',
|
||||
(tuple(ids),))
|
||||
res = map(itemgetter(0), cr.fetchall())
|
||||
return res
|
||||
|
||||
def copy(self, cr, uid, id, default=None, context=None):
|
||||
@@ -599,7 +615,7 @@ class account_invoice(osv.osv):
|
||||
ait_obj = self.pool.get('account.invoice.tax')
|
||||
for id in ids:
|
||||
cr.execute("DELETE FROM account_invoice_tax WHERE invoice_id=%s", (id,))
|
||||
partner = self.browse(cr, uid, id,context=context).partner_id
|
||||
partner = self.browse(cr, uid, id, context=context).partner_id
|
||||
if partner.lang:
|
||||
context.update({'lang': partner.lang})
|
||||
for taxe in ait_obj.compute(cr, uid, id, context=context).values():
|
||||
@@ -774,8 +790,14 @@ class account_invoice(osv.osv):
|
||||
|
||||
if inv.type in ('in_invoice', 'in_refund'):
|
||||
ref = inv.reference
|
||||
entry_type = 'journal_pur_voucher'
|
||||
if inv.type == 'in_refund':
|
||||
entry_type = 'cont_voucher'
|
||||
else:
|
||||
ref = self._convert_ref(cr, uid, inv.number)
|
||||
entry_type = 'journal_sale_vou'
|
||||
if inv.type == 'out_refund':
|
||||
entry_type = 'cont_voucher'
|
||||
|
||||
diff_currency_p = inv.currency_id.id <> company_currency
|
||||
# create one move line for the total and possibly adjust the other lines amount
|
||||
@@ -846,10 +868,10 @@ class account_invoice(osv.osv):
|
||||
|
||||
line = self.finalize_invoice_move_lines(cr, uid, inv, line)
|
||||
|
||||
move = {'ref': inv.number, 'line_id': line, 'journal_id': journal_id, 'date': date}
|
||||
move = {'ref': inv.number, 'line_id': line, 'journal_id': journal_id, 'date': date, 'type': entry_type}
|
||||
period_id=inv.period_id and inv.period_id.id or False
|
||||
if not period_id:
|
||||
period_ids= self.pool.get('account.period').search(cr,uid,[('date_start','<=',inv.date_invoice or time.strftime('%Y-%m-%d')),('date_stop','>=',inv.date_invoice or time.strftime('%Y-%m-%d'))])
|
||||
period_ids= self.pool.get('account.period').search(cr, uid, [('date_start','<=',inv.date_invoice or time.strftime('%Y-%m-%d')),('date_stop','>=',inv.date_invoice or time.strftime('%Y-%m-%d'))])
|
||||
if len(period_ids):
|
||||
period_id=period_ids[0]
|
||||
if period_id:
|
||||
@@ -888,8 +910,9 @@ class account_invoice(osv.osv):
|
||||
|
||||
def action_number(self, cr, uid, ids, *args):
|
||||
cr.execute('SELECT id, type, number, move_id, reference ' \
|
||||
'FROM account_invoice ' \
|
||||
'WHERE id IN ('+','.join(map(str, ids))+')')
|
||||
'FROM account_invoice ' \
|
||||
'WHERE id IN %s',
|
||||
(tuple(ids),))
|
||||
obj_inv = self.browse(cr, uid, ids)[0]
|
||||
for (id, invtype, number, move_id, reference) in cr.fetchall():
|
||||
if not number:
|
||||
@@ -936,7 +959,7 @@ class account_invoice(osv.osv):
|
||||
raise osv.except_osv(_('Error !'), _('You cannot cancel the Invoice which is Partially Paid! You need to unreconcile concerned payment entries!'))
|
||||
|
||||
self.write(cr, uid, ids, {'state':'cancel', 'move_id':False})
|
||||
self._log_event(cr, uid, ids,-1.0, 'Cancel Invoice')
|
||||
self._log_event(cr, uid, ids, -1.0, 'Cancel Invoice')
|
||||
return True
|
||||
|
||||
###################
|
||||
@@ -1069,10 +1092,20 @@ class account_invoice(osv.osv):
|
||||
else:
|
||||
amount_currency = False
|
||||
currency_id = False
|
||||
|
||||
pay_journal = self.pool.get('account.journal').read(cr, uid, pay_journal_id, ['type'], context=context)
|
||||
if invoice.type in ('in_invoice', 'out_invoice'):
|
||||
if pay_journal['type'] == 'bank':
|
||||
entry_type = 'bank_pay_voucher' # Bank payment
|
||||
else:
|
||||
entry_type = 'pay_voucher' # Cash payment
|
||||
else:
|
||||
entry_type = 'cont_voucher'
|
||||
if invoice.type in ('in_invoice', 'in_refund'):
|
||||
ref = invoice.reference
|
||||
else:
|
||||
ref = self._convert_ref(cr, uid, invoice.number)
|
||||
|
||||
# Pay attention to the sign for both debit/credit AND amount_currency
|
||||
l1 = {
|
||||
'debit': direction * pay_amount>0 and direction * pay_amount,
|
||||
@@ -1103,7 +1136,7 @@ class account_invoice(osv.osv):
|
||||
l2['name'] = name
|
||||
|
||||
lines = [(0, 0, l1), (0, 0, l2)]
|
||||
move = {'ref': ref, 'line_id': lines, 'journal_id': pay_journal_id, 'period_id': period_id, 'date': date}
|
||||
move = {'ref': ref, 'line_id': lines, 'journal_id': pay_journal_id, 'period_id': period_id, 'date': date, 'type': entry_type}
|
||||
move_id = self.pool.get('account.move').create(cr, uid, move, context=context)
|
||||
|
||||
line_ids = []
|
||||
@@ -1112,7 +1145,9 @@ class account_invoice(osv.osv):
|
||||
move_ids = [move_id,]
|
||||
if invoice.move_id:
|
||||
move_ids.append(invoice.move_id.id)
|
||||
cr.execute('SELECT id FROM account_move_line WHERE move_id = ANY(%s)',(move_ids,))
|
||||
cr.execute('SELECT id FROM account_move_line '\
|
||||
'WHERE move_id IN %s',
|
||||
((move_id, invoice.move_id.id),))
|
||||
lines = line.browse(cr, uid, map(lambda x: x[0], cr.fetchall()) )
|
||||
for l in lines+invoice.payment_ids:
|
||||
if l.account_id.id==src_account_id:
|
||||
@@ -1129,19 +1164,19 @@ class account_invoice(osv.osv):
|
||||
account_invoice()
|
||||
|
||||
class account_invoice_line(osv.osv):
|
||||
def _amount_line(self, cr, uid, ids, prop, unknow_none,unknow_dict):
|
||||
def _amount_line(self, cr, uid, ids, prop, unknow_none, unknow_dict):
|
||||
res = {}
|
||||
cur_obj=self.pool.get('res.currency')
|
||||
tax_obj = self.pool.get('account.tax')
|
||||
cur_obj = self.pool.get('res.currency')
|
||||
for line in self.browse(cr, uid, ids):
|
||||
price = line.price_unit * (1-(line.discount or 0.0)/100.0)
|
||||
taxes = tax_obj.compute_all(cr, uid, line.invoice_line_tax_id, price, line.quantity)
|
||||
res[line.id] = taxes['total']
|
||||
if line.invoice_id:
|
||||
res[line.id] = line.price_unit * line.quantity * (1-(line.discount or 0.0)/100.0)
|
||||
cur = line.invoice_id.currency_id
|
||||
res[line.id] = cur_obj.round(cr, uid, cur, res[line.id])
|
||||
else:
|
||||
res[line.id] = round(line.price_unit * line.quantity * (1-(line.discount or 0.0)/100.0),self.pool.get('decimal.precision').precision_get(cr, uid, 'Account'))
|
||||
return res
|
||||
|
||||
|
||||
def _price_unit_default(self, cr, uid, context=None):
|
||||
if context is None:
|
||||
context = {}
|
||||
@@ -1155,7 +1190,7 @@ class account_invoice_line(osv.osv):
|
||||
taxes = l[2].get('invoice_line_tax_id')
|
||||
if len(taxes[0]) >= 3 and taxes[0][2]:
|
||||
taxes = tax_obj.browse(cr, uid, taxes[0][2])
|
||||
for tax in tax_obj.compute(cr, uid, taxes, p,l[2].get('quantity'), context.get('address_invoice_id', False), l[2].get('product_id', False), context.get('partner_id', False)):
|
||||
for tax in tax_obj.compute_all(cr, uid, taxes, p,l[2].get('quantity'), context.get('address_invoice_id', False), l[2].get('product_id', False), context.get('partner_id', False))['taxes']:
|
||||
t = t - tax['amount']
|
||||
return t
|
||||
return 0
|
||||
@@ -1170,7 +1205,8 @@ class account_invoice_line(osv.osv):
|
||||
'product_id': fields.many2one('product.product', 'Product', ondelete='set null'),
|
||||
'account_id': fields.many2one('account.account', 'Account', required=True, domain=[('type','<>','view'), ('type', '<>', 'closed')], help="The income or expense account related to the selected product."),
|
||||
'price_unit': fields.float('Unit Price', required=True, digits_compute= dp.get_precision('Account')),
|
||||
'price_subtotal': fields.function(_amount_line, method=True, string='Subtotal',store=True, type="float", digits_compute= dp.get_precision('Account')),
|
||||
'price_subtotal': fields.function(_amount_line, method=True, string='Subtotal', type="float",
|
||||
digits_compute= dp.get_precision('Account'), store=True),
|
||||
'quantity': fields.float('Quantity', required=True),
|
||||
'discount': fields.float('Discount (%)', digits_compute= dp.get_precision('Account')),
|
||||
'invoice_line_tax_id': fields.many2many('account.tax', 'account_invoice_line_tax', 'invoice_line_id', 'tax_id', 'Taxes', domain=[('parent_id','=',False)]),
|
||||
@@ -1213,12 +1249,12 @@ class account_invoice_line(osv.osv):
|
||||
res = self.pool.get('product.product').browse(cr, uid, product, context=context)
|
||||
|
||||
if company_id:
|
||||
in_pro_id = self.pool.get('ir.property').search(cr,uid,[('name','=','property_account_income'),('res_id','=','product.template,'+str(res.product_tmpl_id.id)+''),('company_id','=',company_id)])
|
||||
in_pro_id = self.pool.get('ir.property').search(cr, uid, [('name','=','property_account_income'),('res_id','=','product.template,'+str(res.product_tmpl_id.id)+''),('company_id','=',company_id)])
|
||||
if not in_pro_id:
|
||||
in_pro_id = self.pool.get('ir.property').search(cr,uid,[('name','=','property_account_income_categ'),('res_id','=','product.template,'+str(res.categ_id.id)+''),('company_id','=',company_id)])
|
||||
exp_pro_id = self.pool.get('ir.property').search(cr,uid,[('name','=','property_account_expense'),('res_id','=','product.template,'+str(res.product_tmpl_id.id)+''),('company_id','=',company_id)])
|
||||
in_pro_id = self.pool.get('ir.property').search(cr, uid, [('name','=','property_account_income_categ'),('res_id','=','product.template,'+str(res.categ_id.id)+''),('company_id','=',company_id)])
|
||||
exp_pro_id = self.pool.get('ir.property').search(cr, uid, [('name','=','property_account_expense'),('res_id','=','product.template,'+str(res.product_tmpl_id.id)+''),('company_id','=',company_id)])
|
||||
if not exp_pro_id:
|
||||
exp_pro_id = self.pool.get('ir.property').search(cr,uid,[('name','=','property_account_expense_categ'),('res_id','=','product.template,'+str(res.categ_id.id)+''),('company_id','=',company_id)])
|
||||
exp_pro_id = self.pool.get('ir.property').search(cr, uid, [('name','=','property_account_expense_categ'),('res_id','=','product.template,'+str(res.categ_id.id)+''),('company_id','=',company_id)])
|
||||
|
||||
if not in_pro_id:
|
||||
in_acc = res.product_tmpl_id.property_account_income
|
||||
@@ -1228,7 +1264,7 @@ class account_invoice_line(osv.osv):
|
||||
else:
|
||||
app_acc_in = in_acc_cate
|
||||
else:
|
||||
app_acc_in = self.pool.get('account.account').browse(cr,uid,in_pro_id)[0]
|
||||
app_acc_in = self.pool.get('account.account').browse(cr, uid, in_pro_id)[0]
|
||||
if not exp_pro_id:
|
||||
ex_acc = res.product_tmpl_id.property_account_expense
|
||||
ex_acc_cate = res.categ_id.property_account_expense_categ
|
||||
@@ -1237,7 +1273,7 @@ class account_invoice_line(osv.osv):
|
||||
else:
|
||||
app_acc_exp = ex_acc_cate
|
||||
else:
|
||||
app_acc_exp = self.pool.get('account.account').browse(cr,uid,exp_pro_id)[0]
|
||||
app_acc_exp = self.pool.get('account.account').browse(cr, uid, exp_pro_id)[0]
|
||||
if not in_pro_id and not exp_pro_id:
|
||||
in_acc = res.product_tmpl_id.property_account_income
|
||||
in_acc_cate = res.categ_id.property_account_income_categ
|
||||
@@ -1253,13 +1289,13 @@ class account_invoice_line(osv.osv):
|
||||
# app_acc_in = self.pool.get('account.account').browse(cr,uid,in_pro_id)[0]
|
||||
# app_acc_exp = self.pool.get('account.account').browse(cr,uid,exp_pro_id)[0]
|
||||
if app_acc_in.company_id.id != company_id and app_acc_exp.company_id.id != company_id:
|
||||
in_res_id=self.pool.get('account.account').search(cr,uid,[('name','=',app_acc_in.name),('company_id','=',company_id)])
|
||||
exp_res_id=self.pool.get('account.account').search(cr,uid,[('name','=',app_acc_exp.name),('company_id','=',company_id)])
|
||||
in_res_id=self.pool.get('account.account').search(cr, uid, [('name','=',app_acc_in.name),('company_id','=',company_id)])
|
||||
exp_res_id=self.pool.get('account.account').search(cr, uid, [('name','=',app_acc_exp.name),('company_id','=',company_id)])
|
||||
if not in_res_id and not exp_res_id:
|
||||
raise osv.except_osv(_('Configration Error !'),
|
||||
_('Can not find account chart for this company, Please Create account.'))
|
||||
in_obj_acc=self.pool.get('account.account').browse(cr,uid,in_res_id)
|
||||
exp_obj_acc=self.pool.get('account.account').browse(cr,uid,exp_res_id)
|
||||
in_obj_acc=self.pool.get('account.account').browse(cr, uid, in_res_id)
|
||||
exp_obj_acc=self.pool.get('account.account').browse(cr, uid, exp_res_id)
|
||||
if in_acc or ex_acc:
|
||||
res.product_tmpl_id.property_account_income = in_obj_acc[0]
|
||||
res.product_tmpl_id.property_account_expense = exp_obj_acc[0]
|
||||
@@ -1283,10 +1319,10 @@ class account_invoice_line(osv.osv):
|
||||
taxep=None
|
||||
tax_obj = self.pool.get('account.tax')
|
||||
if type in ('out_invoice', 'out_refund'):
|
||||
taxes = res.taxes_id and res.taxes_id or (a and self.pool.get('account.account').browse(cr, uid,a).tax_ids or False)
|
||||
taxes = res.taxes_id and res.taxes_id or (a and self.pool.get('account.account').browse(cr, uid, a).tax_ids or False)
|
||||
tax_id = self.pool.get('account.fiscal.position').map_tax(cr, uid, fpos, taxes)
|
||||
else:
|
||||
taxes = res.supplier_taxes_id and res.supplier_taxes_id or (a and self.pool.get('account.account').browse(cr, uid,a).tax_ids or False)
|
||||
taxes = res.supplier_taxes_id and res.supplier_taxes_id or (a and self.pool.get('account.account').browse(cr, uid, a).tax_ids or False)
|
||||
tax_id = self.pool.get('account.fiscal.position').map_tax(cr, uid, fpos, taxes)
|
||||
if type in ('in_invoice', 'in_refund'):
|
||||
to_update = self.product_id_change_unit_price_inv(cr, uid, tax_id, price_unit or res.standard_price, qty, address_invoice_id, product, partner_id, context=context)
|
||||
@@ -1298,7 +1334,7 @@ class account_invoice_line(osv.osv):
|
||||
result['name'] = res.partner_ref
|
||||
|
||||
domain = {}
|
||||
result['uos_id'] = uom or res.uom_id.id or False
|
||||
result['uos_id'] = res.uom_id.id or uom or False
|
||||
if result['uos_id']:
|
||||
res2 = res.uom_id.category_id.id
|
||||
if res2 :
|
||||
@@ -1321,8 +1357,22 @@ class account_invoice_line(osv.osv):
|
||||
if company.currency_id.id != currency.id:
|
||||
new_price = res_final['value']['price_unit'] * currency.rate
|
||||
res_final['value']['price_unit'] = new_price
|
||||
|
||||
if uom:
|
||||
uom = self.pool.get('product.uom').browse(cr, uid, uom, context=context)
|
||||
if res.uom_id.category_id.id == uom.category_id.id:
|
||||
new_price = res_final['value']['price_unit'] * uom.factor_inv
|
||||
res_final['value']['price_unit'] = new_price
|
||||
return res_final
|
||||
|
||||
def uos_id_change(self, cr, uid, ids, product, uom, qty=0, name='', type='out_invoice', partner_id=False, fposition_id=False, price_unit=False, address_invoice_id=False, currency_id=False, context=None):
|
||||
res = self.product_id_change(cr, uid, ids, product, uom, qty, name, type, partner_id, fposition_id, price_unit, address_invoice_id, currency_id, context)
|
||||
if 'uos_id' in res['value']:
|
||||
del res['value']['uos_id']
|
||||
if not uom:
|
||||
res['value']['price_unit'] = 0.0
|
||||
return res
|
||||
|
||||
def move_line_get(self, cr, uid, invoice_id, context=None):
|
||||
res = []
|
||||
tax_grouped = {}
|
||||
@@ -1339,10 +1389,10 @@ class account_invoice_line(osv.osv):
|
||||
continue
|
||||
res.append(mres)
|
||||
tax_code_found= False
|
||||
for tax in tax_obj.compute(cr, uid, line.invoice_line_tax_id,
|
||||
for tax in tax_obj.compute_all(cr, uid, line.invoice_line_tax_id,
|
||||
(line.price_unit * (1.0 - (line['discount'] or 0.0) / 100.0)),
|
||||
line.quantity, inv.address_invoice_id.id, line.product_id,
|
||||
inv.partner_id):
|
||||
inv.partner_id)['taxes']:
|
||||
|
||||
if inv.type in ('out_invoice', 'in_invoice'):
|
||||
tax_code_id = tax['base_code_id']
|
||||
@@ -1407,25 +1457,25 @@ class account_invoice_tax(osv.osv):
|
||||
'base_amount': fields.float('Base Code Amount', digits_compute=dp.get_precision('Account')),
|
||||
'tax_code_id': fields.many2one('account.tax.code', 'Tax Code', help="The tax basis of the tax declaration."),
|
||||
'tax_amount': fields.float('Tax Code Amount', digits_compute=dp.get_precision('Account')),
|
||||
'company_id': fields.related('account_id','company_id',type='many2one',relation='res.company',string='Company',store=True),
|
||||
'company_id': fields.related('account_id', 'company_id', type='many2one', relation='res.company', string='Company', store=True),
|
||||
}
|
||||
|
||||
def base_change(self, cr, uid, ids, base,currency_id=False,company_id=False,date_invoice=False):
|
||||
def base_change(self, cr, uid, ids, base, currency_id=False, company_id=False, date_invoice=False):
|
||||
cur_obj = self.pool.get('res.currency')
|
||||
company_obj = self.pool.get('res.company')
|
||||
company_currency=False
|
||||
if company_id:
|
||||
company_currency = company_obj.read(cr,uid,[company_id],['currency_id'])[0]['currency_id'][0]
|
||||
company_currency = company_obj.read(cr, uid, [company_id], ['currency_id'])[0]['currency_id'][0]
|
||||
if currency_id and company_currency:
|
||||
base = cur_obj.compute(cr, uid, currency_id, company_currency, base, context={'date': date_invoice or time.strftime('%Y-%m-%d')}, round=False)
|
||||
return {'value': {'base_amount':base}}
|
||||
|
||||
def amount_change(self, cr, uid, ids, amount,currency_id=False,company_id=False,date_invoice=False):
|
||||
def amount_change(self, cr, uid, ids, amount, currency_id=False, company_id=False, date_invoice=False):
|
||||
cur_obj = self.pool.get('res.currency')
|
||||
company_obj = self.pool.get('res.company')
|
||||
company_currency=False
|
||||
if company_id:
|
||||
company_currency = company_obj.read(cr,uid,[company_id],['currency_id'])[0]['currency_id'][0]
|
||||
company_currency = company_obj.read(cr, uid, [company_id], ['currency_id'])[0]['currency_id'][0]
|
||||
if currency_id and company_currency:
|
||||
amount = cur_obj.compute(cr, uid, currency_id, company_currency, amount, context={'date': date_invoice or time.strftime('%Y-%m-%d')}, round=False)
|
||||
return {'value': {'tax_amount':amount}}
|
||||
@@ -1445,7 +1495,7 @@ class account_invoice_tax(osv.osv):
|
||||
company_currency = inv.company_id.currency_id.id
|
||||
|
||||
for line in inv.invoice_line:
|
||||
for tax in tax_obj.compute(cr, uid, line.invoice_line_tax_id, (line.price_unit* (1-(line.discount or 0.0)/100.0)), line.quantity, inv.address_invoice_id.id, line.product_id, inv.partner_id):
|
||||
for tax in tax_obj.compute_all(cr, uid, line.invoice_line_tax_id, (line.price_unit* (1-(line.discount or 0.0)/100.0)), line.quantity, inv.address_invoice_id.id, line.product_id, inv.partner_id)['taxes']:
|
||||
val={}
|
||||
val['invoice_id'] = inv.id
|
||||
val['name'] = tax['name']
|
||||
@@ -1507,11 +1557,7 @@ account_invoice_tax()
|
||||
class res_partner(osv.osv):
|
||||
""" Inherits partner and adds invoice information in the partner form """
|
||||
_inherit = 'res.partner'
|
||||
|
||||
_columns = {
|
||||
'invoice_ids': fields.one2many('account.invoice.line', 'partner_id', 'Invoices', readonly=True),
|
||||
}
|
||||
|
||||
'invoice_ids': fields.one2many('account.invoice.line', 'partner_id', 'Invoices', readonly=True),
|
||||
}
|
||||
res_partner()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
+33
-28
@@ -18,6 +18,7 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
from operator import itemgetter
|
||||
|
||||
from osv import fields, osv
|
||||
import ir
|
||||
@@ -88,22 +89,19 @@ class res_partner(osv.osv):
|
||||
_name = 'res.partner'
|
||||
_inherit = 'res.partner'
|
||||
_description = 'Partner'
|
||||
|
||||
def _credit_debit_get(self, cr, uid, ids, field_names, arg, context):
|
||||
query = self.pool.get('account.move.line')._query_get(cr, uid, context=context)
|
||||
cr.execute("""select
|
||||
l.partner_id, a.type, sum(l.debit-l.credit)
|
||||
from
|
||||
account_move_line l
|
||||
left join
|
||||
account_account a on (l.account_id=a.id)
|
||||
where
|
||||
a.type =ANY(%s) and
|
||||
l.partner_id =ANY(%s) and
|
||||
l.reconcile_id is null and
|
||||
"""+query+"""
|
||||
group by
|
||||
l.partner_id, a.type
|
||||
""",(['receivable','payable'],ids,))
|
||||
cr.execute("""SELECT l.partner_id, a.type, SUM(l.debit-l.credit)
|
||||
FROM account_move_line l
|
||||
LEFT JOIN account_account a ON (l.account_id=a.id)
|
||||
WHERE a.type IN ('receivable','payable')
|
||||
AND l.partner_id IN %s
|
||||
AND l.reconcile_id IS NULL
|
||||
AND """ + query + """
|
||||
GROUP BY l.partner_id, a.type
|
||||
""",
|
||||
(tuple(ids),))
|
||||
tinvert = {
|
||||
'credit': 'receivable',
|
||||
'debit': 'payable'
|
||||
@@ -117,27 +115,33 @@ class res_partner(osv.osv):
|
||||
res[pid][maps[type]] = (type=='receivable') and val or -val
|
||||
return res
|
||||
|
||||
def _credit_search(self, cr, uid, obj, name, args, context):
|
||||
def _asset_difference_search(self, cr, uid, obj, name, type, args, context=None):
|
||||
if not len(args):
|
||||
return []
|
||||
where = ' and '.join(map(lambda x: '(sum(debit-credit)'+x[1]+str(x[2])+')',args))
|
||||
query = self.pool.get('account.move.line')._query_get(cr, uid, context={})
|
||||
cr.execute(('select partner_id from account_move_line l where account_id in (select id from account_account where type=%s and active) and reconcile_id is null and '+query+' and partner_id is not null group by partner_id having '+where), ('receivable',) )
|
||||
having_values = tuple(map(itemgetter(2), args))
|
||||
where = ' AND '.join(
|
||||
map(lambda x: '(SUM(debit-credit) %(operator)s %%s)' % {
|
||||
'operator':x[1]},args))
|
||||
query = self.pool.get('account.move.line')._query_get(cr, uid, context=context)
|
||||
cr.execute(('SELECT partner_id FROM account_move_line l '\
|
||||
'WHERE account_id IN '\
|
||||
'(SELECT id FROM account_account '\
|
||||
'WHERE type=%s AND active) '\
|
||||
'AND reconcile_id IS NULL '\
|
||||
'AND '+query+' '\
|
||||
'AND partner_id IS NOT NULL '\
|
||||
'GROUP BY partner_id HAVING '+where),
|
||||
(type,) + having_values)
|
||||
res = cr.fetchall()
|
||||
if not len(res):
|
||||
return [('id','=','0')]
|
||||
return [('id','in',map(lambda x:x[0], res))]
|
||||
return [('id','in',map(itemgetter(0), res))]
|
||||
|
||||
def _credit_search(self, cr, uid, obj, name, args, context):
|
||||
return self._asset_difference_search(cr, uid, obj, name, 'receivable', args, context=context)
|
||||
|
||||
def _debit_search(self, cr, uid, obj, name, args, context):
|
||||
if not len(args):
|
||||
return []
|
||||
query = self.pool.get('account.move.line')._query_get(cr, uid, context={})
|
||||
where = ' and '.join(map(lambda x: '(sum(debit-credit)'+x[1]+str(x[2])+')',args))
|
||||
cr.execute(('select partner_id from account_move_line l where account_id in (select id from account_account where type=%s and active) and reconcile_id is null and '+query+' and partner_id is not null group by partner_id having '+where), ('payable',) )
|
||||
res = cr.fetchall()
|
||||
if not len(res):
|
||||
return [('id','=','0')]
|
||||
return [('id','in',map(lambda x:x[0], res))]
|
||||
return self._asset_difference_search(cr, uid, obj, name, 'payable', args, context=context)
|
||||
|
||||
_columns = {
|
||||
'credit': fields.function(_credit_debit_get,
|
||||
@@ -183,6 +187,7 @@ class res_partner(osv.osv):
|
||||
help="This payment term will be used instead of the default one for the current partner"),
|
||||
'ref_companies': fields.one2many('res.company', 'partner_id',
|
||||
'Companies that refers to partner'),
|
||||
'last_reconciliation_date': fields.datetime('Last Reconciliation Date', help='Date on which partner account entries reconciled last time')
|
||||
}
|
||||
res_partner()
|
||||
|
||||
|
||||
@@ -57,7 +57,7 @@
|
||||
<menuitem
|
||||
action="action_account_fiscal_position_form"
|
||||
id="menu_action_account_fiscal_position_form"
|
||||
parent="account.menu_finance_accounting" sequence="20"/>
|
||||
parent="next_id_27" sequence="20"/>
|
||||
|
||||
<!--
|
||||
Partners Extension
|
||||
@@ -70,8 +70,8 @@
|
||||
<field name="priority">2</field>
|
||||
<field name="inherit_id" ref="base.view_partner_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<notebook>
|
||||
<page string="Accounting" position="inside">
|
||||
<page string="Notes" position="before">
|
||||
<page string="Accounting">
|
||||
<group col="2" colspan="2">
|
||||
<separator string="Customer Accounting Properties" colspan="2"/>
|
||||
<field name="property_account_receivable" groups="account.group_account_user" />
|
||||
@@ -118,29 +118,32 @@
|
||||
<field name="acc_number"/>
|
||||
</tree>
|
||||
</field>
|
||||
<field name="invoice_ids" colspan="4" nolabel="1" context="{'group_by':'product_id'}"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</page>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
<!-- Partners info tab view-->
|
||||
|
||||
<record id="view_account_partner_info_form" model="ir.ui.view">
|
||||
<field name="name">res.partner.account.info.inherit</field>
|
||||
<act_window
|
||||
id="action_analytic_open"
|
||||
name="Analytic Accounts"
|
||||
res_model="account.analytic.account"
|
||||
domain="[('partner_id','=',active_id)]"
|
||||
src_model="res.partner"
|
||||
view_type="form"
|
||||
view_mode="tree,form,graph,calendar"/>
|
||||
|
||||
<record id="view_res_partner_reconcile" model="ir.ui.view">
|
||||
<field name="name">res.partner.form.reconcile</field>
|
||||
<field name="model">res.partner</field>
|
||||
<field name="type">form</field>
|
||||
<field name="inherit_id" ref="base.view_partner_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//notebook[last()]" position="after">
|
||||
<notebook colspan="4">
|
||||
<page string="Project">
|
||||
<field name="contract_ids" colspan="4" nolabel="1" />
|
||||
</page>
|
||||
</notebook>
|
||||
</xpath>
|
||||
<field name="credit_limit" position="after">
|
||||
<field name="last_reconciliation_date"/>
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
</record>
|
||||
|
||||
<record id="process_node_invoiceinvoice0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_finance_invoice"/>
|
||||
<field name="menu_id" ref="account.menu_finance_receivables"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Create Invoice"""" name="name"/>
|
||||
@@ -50,7 +50,7 @@
|
||||
</record>
|
||||
|
||||
<record id="process_node_accountingentries0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_form"/>
|
||||
<field name="menu_id" ref="account.menu_action_move_journal_line_form"/>
|
||||
<field name="model_id" ref="account.model_account_move"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Accounting"""" name="name"/>
|
||||
@@ -72,7 +72,7 @@
|
||||
</record>
|
||||
|
||||
<record id="process_node_paymententries0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_form"/>
|
||||
<field name="menu_id" ref="account.menu_action_move_journal_line_form"/>
|
||||
<field name="model_id" ref="account.model_account_move_line"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Payment"""" name="name"/>
|
||||
@@ -83,7 +83,7 @@
|
||||
</record>
|
||||
|
||||
<record id="process_node_reconciliation0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_search"/>
|
||||
<field name="menu_id" ref="account.menu_eaction_account_moves_all"/>
|
||||
<field name="model_id" ref="account.model_account_move_reconcile"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Reconciliation"""" name="name"/>
|
||||
@@ -105,7 +105,7 @@
|
||||
</record>
|
||||
|
||||
<record id="process_node_accountingstatemententries0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_search"/>
|
||||
<field name="menu_id" ref="account.menu_eaction_account_moves_all"/>
|
||||
<field name="model_id" ref="account.model_account_move_line"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Bank Statement"""" name="name"/>
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
</record>
|
||||
|
||||
<record id="process_node_supplierinvoiceinvoice0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_finance_invoice"/>
|
||||
<field name="menu_id" ref="account.menu_finance_payables"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Create Invoice"""" name="name"/>
|
||||
@@ -62,7 +62,7 @@
|
||||
</record>
|
||||
|
||||
<record id="process_node_supplieraccountingentries0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_form"/>
|
||||
<field name="menu_id" ref="account.menu_action_move_journal_line_form"/>
|
||||
<field name="model_id" ref="account.model_account_move"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Accounting"""" name="name"/>
|
||||
@@ -72,7 +72,7 @@
|
||||
</record>
|
||||
|
||||
<record id="process_node_supplierpaymentorder0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_search"/>
|
||||
<field name="menu_id" ref="account.menu_eaction_account_moves_all"/>
|
||||
<field name="model_id" ref="account.model_account_move_line"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Payment Order"""" name="name"/>
|
||||
@@ -83,7 +83,7 @@
|
||||
</record>
|
||||
|
||||
<record id="process_node_supplierreconciliation0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_search"/>
|
||||
<field name="menu_id" ref="account.menu_eaction_account_moves_all"/>
|
||||
<field name="model_id" ref="account.model_account_move_reconcile"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Reconciliation"""" name="name"/>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
|
||||
#
|
||||
@@ -15,7 +15,7 @@
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
|
||||
@@ -35,8 +35,8 @@
|
||||
<separator string="Purchase Properties" colspan="2"/>
|
||||
<field name="property_account_income" domain="[('type','<>','view'),('type','<>','consolidation')]"/>
|
||||
<field name="property_account_expense" domain="[('type','<>','view'),('type','<>','consolidation')]"/>
|
||||
<field name="supplier_taxes_id"/>
|
||||
<field name="taxes_id"/>
|
||||
<field name="supplier_taxes_id"/>
|
||||
</page>
|
||||
</notebook>
|
||||
</field>
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2009 Tiny SPRL (<http://tiny.be>).
|
||||
#
|
||||
@@ -15,7 +15,7 @@
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
@@ -46,7 +46,7 @@ class account_journal(osv.osv):
|
||||
_inherit="account.journal"
|
||||
|
||||
_columns = {
|
||||
'analytic_journal_id':fields.many2one('account.analytic.journal','Analytic Journal'),
|
||||
'analytic_journal_id':fields.many2one('account.analytic.journal','Analytic Journal',help="Journal for analytic entries"),
|
||||
}
|
||||
account_journal()
|
||||
|
||||
|
||||
@@ -25,8 +25,8 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Analytic Account">
|
||||
<group col="8" colspan="4">
|
||||
<filter icon="gtk-execute" string="Current" domain="[('state','=','open')]" help="Current Accounts"/>
|
||||
<filter icon="gtk-execute" string="Pending" domain="[('state','=','pending')]" help="Pending Accounts"/>
|
||||
<filter icon="terp-check" string="Current" domain="[('state','=','open')]" help="Current Accounts"/>
|
||||
<filter icon="terp-gtk-media-pause" string="Pending" domain="[('state','=','pending')]" help="Pending Accounts"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" select="1"/>
|
||||
<field name="code" select="1"/>
|
||||
@@ -101,7 +101,7 @@
|
||||
<field name="search_view_id" ref="account.view_account_analytic_account_search"/>
|
||||
</record>
|
||||
<!--<menuitem id="menu_analytic_account" name="Analytic Accounts" parent="account.menu_analytic_accounting"/>-->
|
||||
<menuitem action="action_account_analytic_account_form" id="account_analytic_def_account" parent="account.menu_analytic_accounting"/>
|
||||
<menuitem action="action_account_analytic_account_form" id="account_analytic_def_account" parent="menu_analytic"/>
|
||||
|
||||
<record id="act_account_renew_view" model="ir.actions.act_window">
|
||||
<field name="name">Accounts to Renew</field>
|
||||
@@ -114,7 +114,7 @@
|
||||
</record>
|
||||
|
||||
<record id="action_account_analytic_account_tree2" model="ir.actions.act_window">
|
||||
<field name="name">Analytic Chart of Accounts</field>
|
||||
<field name="name">Chart of Analytic Accounts</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="domain">[('parent_id','=',False)]</field>
|
||||
@@ -122,10 +122,10 @@
|
||||
<field name="view_mode">form,graph</field>
|
||||
<field name="view_id" ref="view_account_analytic_account_tree"/>
|
||||
</record>
|
||||
<menuitem
|
||||
action="action_account_analytic_account_tree2"
|
||||
id="account_analytic_def_chart"
|
||||
parent="account_analytic_def_account"/>
|
||||
<!-- <menuitem-->
|
||||
<!-- action="action_account_analytic_account_tree2"-->
|
||||
<!-- id="account_analytic_def_chart"-->
|
||||
<!-- parent="account_analytic_def_account"/>-->
|
||||
<!-- <menuitem action="action_account_analytic_account_tree2" id="account_analytic_chart" parent="account.menu_finance_charts"/>-->
|
||||
|
||||
<!-- <wizard id="wizard_analytic_account_chart" menu="False" model="account.analytic.account" name="account.analytic.account.chart" string="Analytic Chart of Accounts"/>
|
||||
@@ -206,14 +206,14 @@
|
||||
<field name="context">{"search_default_user_id":uid}</field>
|
||||
<field name="view_id" ref="view_account_analytic_line_tree"/>
|
||||
</record>
|
||||
<wizard id="action_account_analytic_line" menu="False" model="account.analytic.line" name="account.analytic.line" string="Entries by Line"/>
|
||||
<menuitem id="next_id_41" name="Analytic Entries" parent="account.menu_finance_entries"/>
|
||||
<!-- <wizard id="action_account_analytic_line" menu="False" model="account.analytic.line" name="account.analytic.line" string="Entries by Line"/>-->
|
||||
<!-- <menuitem id="next_id_41" name="Analytic Entries" parent="account.menu_finance_entries"/>-->
|
||||
<!-- Entries by Line -->
|
||||
|
||||
<menuitem icon="STOCK_JUSTIFY_FILL"
|
||||
action="action_project_account_analytic_line_form"
|
||||
id="account_entries_analytic_entries"
|
||||
parent="next_id_41"/>
|
||||
<!-- <menuitem icon="STOCK_JUSTIFY_FILL"-->
|
||||
<!-- action="action_project_account_analytic_line_form"-->
|
||||
<!-- id="account_entries_analytic_entries"-->
|
||||
<!-- parent="next_id_41"/>-->
|
||||
|
||||
<record id="action_account_tree1" model="ir.actions.act_window">
|
||||
<field name="name">Analytic Entries</field>
|
||||
@@ -293,31 +293,49 @@
|
||||
</field>
|
||||
</record>
|
||||
<record id="action_account_analytic_journal_form" model="ir.actions.act_window">
|
||||
<field name="name">Analytic Journal Definition</field>
|
||||
<field name="name">Analytic Journals</field>
|
||||
<field name="res_model">account.analytic.journal</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<menuitem action="action_account_analytic_journal_form" id="account_def_analytic_journal" parent="account.menu_analytic_accounting"/>
|
||||
<menuitem action="action_account_analytic_journal_form" id="account_def_analytic_journal" parent="menu_analytic"/>
|
||||
|
||||
#
|
||||
# Open journal entries
|
||||
#
|
||||
|
||||
<record id="action_account_analytic_journal_open_form" model="ir.actions.act_window">
|
||||
<field name="name">Entries of Open Analytic Journals</field>
|
||||
<field name="name">Analytic Journal Items</field>
|
||||
<field name="res_model">account.analytic.line</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="domain">[('journal_id','=',active_id)]</field>
|
||||
</record>
|
||||
<record id="ir_open_account_journal_analytic" model="ir.values">
|
||||
<field eval="'tree_but_open'" name="key2"/>
|
||||
<field eval="'account.analytic.journal'" name="model"/>
|
||||
<field name="name">Open Analytic Journal</field>
|
||||
<field eval="'ir.actions.act_window,%d'%action_account_analytic_journal_open_form" name="value"/>
|
||||
<field eval="True" name="object"/>
|
||||
</record>
|
||||
<menuitem action="action_account_analytic_journal_open_form" id="account_analytic_journal_entries" parent="menu_finance_entries"/>
|
||||
<!-- <record id="action_account_analytic_journal_open_form" model="ir.actions.act_window">
|
||||
<field name="name">Check Register</field>
|
||||
<field name="res_model">account.analytic.line</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="domain">[('journal_id','=',active_id)]</field>
|
||||
</record> -->
|
||||
<!-- <menuitem action="action_account_analytic_journal_open_form" id="account_analytic_journal_entries" parent="menu_finance_bank_and_cash"/>-->
|
||||
<!-- <record id="action_account_analytic_journal_open_form" model="ir.actions.act_window">
|
||||
<field name="name">Checks Register</field>
|
||||
<field name="res_model">account.analytic.line</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="domain">[('journal_id','=',active_id)]</field>
|
||||
</record> -->
|
||||
<!-- <menuitem action="action_account_analytic_journal_open_form" id="account_analytic_journal_entries" parent="menu_finance_bank_and_cash"/>-->
|
||||
|
||||
<!-- <record id="ir_open_account_journal_analytic" model="ir.values">-->
|
||||
<!-- <field eval="'tree_but_open'" name="key2"/>-->
|
||||
<!-- <field eval="'account.analytic.journal'" name="model"/>-->
|
||||
<!-- <field name="name">Open Analytic Journal</field>-->
|
||||
<!-- <field eval="'ir.actions.act_window,%d'%action_account_analytic_journal_open_form" name="value"/>-->
|
||||
<!-- <field eval="True" name="object"/>-->
|
||||
<!-- </record>-->
|
||||
|
||||
#
|
||||
# Reporting
|
||||
@@ -331,13 +349,13 @@
|
||||
<menuitem action="action_account_analytic_journal_tree" id="account_analytic_journal_print" parent="account.next_id_40"/>
|
||||
|
||||
|
||||
<record id="action_account_analytic_journal_tree2" model="ir.actions.act_window">
|
||||
<field name="name">Analytic Entries by Journal</field>
|
||||
<field name="res_model">account.analytic.journal</field>
|
||||
<field name="view_type">tree</field>
|
||||
<field name="view_id" ref="view_account_analytic_journal_tree"/>
|
||||
</record>
|
||||
<menuitem action="action_account_analytic_journal_tree2" id="account_analytic_journal_entries" parent="account.next_id_41"/>
|
||||
<!-- <record id="action_account_analytic_journal_tree2" model="ir.actions.act_window">-->
|
||||
<!-- <field name="name">Analytic Entries by Journal</field>-->
|
||||
<!-- <field name="res_model">account.analytic.journal</field>-->
|
||||
<!-- <field name="view_type">tree</field>-->
|
||||
<!-- <field name="view_id" ref="view_account_analytic_journal_tree"/>-->
|
||||
<!-- </record>-->
|
||||
<!-- <menuitem action="action_account_analytic_journal_tree2" id="account_analytic_journal_entries" parent="account.next_id_41"/>-->
|
||||
|
||||
#
|
||||
# Statistics
|
||||
@@ -396,8 +414,8 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Analytic Entries Stats">
|
||||
<group col="8" colspan="4">
|
||||
<filter icon="terp-sale" string="This Year" domain="[('name','=',time.strftime('%%Y'))]" help="Sale journal in this year"/>
|
||||
<filter icon="terp-sale" string="This Month" domain="[('month','=',time.strftime('%%m'))]" help="Sale journal in this month"/>
|
||||
<filter icon="terp-go-year" string="This Year" domain="[('name','=',time.strftime('%%Y'))]" help="Sale journal in this year"/>
|
||||
<filter icon="terp-go-month" string="This Month" domain="[('month','=',time.strftime('%%m'))]" help="Sale journal in this month"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" select="1"/>
|
||||
<field name="month" select="1"/>
|
||||
|
||||
@@ -32,15 +32,9 @@ class account_analytic_balance(report_sxw.rml_parse):
|
||||
'get_objects': self._get_objects,
|
||||
'lines_g': self._lines_g,
|
||||
'move_sum': self._move_sum,
|
||||
# 'move_sum_debit': self._move_sum_debit,
|
||||
# 'move_sum_credit': self._move_sum_credit,
|
||||
'sum_all': self._sum_all,
|
||||
# 'sum_debit': self._sum_debit,
|
||||
# 'sum_credit': self._sum_credit,
|
||||
'sum_balance': self._sum_balance,
|
||||
# 'sum_quantity': self._sum_quantity,
|
||||
'move_sum_balance': self._move_sum_balance,
|
||||
# 'move_sum_quantity': self._move_sum_quantity,
|
||||
})
|
||||
self.acc_ids = []
|
||||
self.read_data = []
|
||||
@@ -81,10 +75,10 @@ class account_analytic_balance(report_sxw.rml_parse):
|
||||
sum(aal.amount) AS balance, sum(aal.unit_amount) AS quantity \
|
||||
FROM account_analytic_line AS aal, account_account AS aa \
|
||||
WHERE (aal.general_account_id=aa.id) \
|
||||
AND (aal.account_id in (" + ','.join(map(str, ids)) + "))\
|
||||
AND (aal.account_id IN aal.account_id IN %s)\
|
||||
AND (date>=%s) AND (date<=%s) AND aa.active \
|
||||
GROUP BY aal.general_account_id, aa.name, aa.code, aal.code \
|
||||
ORDER BY aal.code", (date1, date2))
|
||||
ORDER BY aal.code", (tuple(ids), date1, date2))
|
||||
res = self.cr.dictfetchall()
|
||||
|
||||
for r in res:
|
||||
@@ -107,62 +101,26 @@ class account_analytic_balance(report_sxw.rml_parse):
|
||||
self.acc_data_dict[account_id] = ids
|
||||
else:
|
||||
ids = self.acc_data_dict[account_id]
|
||||
|
||||
|
||||
query_params = (tuple(ids), date1, date2)
|
||||
if option == "credit" :
|
||||
self.cr.execute("SELECT -sum(amount) FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s) AND date>=%s AND date<=%s AND amount<0",
|
||||
(ids,date1, date2))
|
||||
WHERE account_id IN %s AND date>=%s AND date<=%s AND amount<0",query_params)
|
||||
elif option == "debit" :
|
||||
self.cr.execute("SELECT sum(amount) FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s)\
|
||||
AND date>=%s AND date<=%s AND amount>0",
|
||||
(ids,date1, date2))
|
||||
WHERE account_id IN %s\
|
||||
AND date>=%s AND date<=%s AND amount>0",query_params)
|
||||
elif option == "quantity" :
|
||||
self.cr.execute("SELECT sum(unit_amount) FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s)\
|
||||
AND date>=%s AND date<=%s",
|
||||
(ids,date1, date2))
|
||||
WHERE account_id IN %s\
|
||||
AND date>=%s AND date<=%s",query_params)
|
||||
return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
|
||||
# def _move_sum_debit(self, account_id, date1, date2):
|
||||
# account_analytic_obj = self.pool.get('account.analytic.account')
|
||||
# ids = account_analytic_obj.search(self.cr, self.uid,
|
||||
# [('parent_id', 'child_of', [account_id])])
|
||||
# self.cr.execute("SELECT sum(amount) \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE account_id in ("+ ','.join(map(str, ids)) +") \
|
||||
# AND date>=%s AND date<=%s AND amount>0",
|
||||
# (date1, date2))
|
||||
# return self.cr.fetchone()[0] or 0.0
|
||||
#
|
||||
# def _move_sum_credit(self, account_id, date1, date2):
|
||||
# account_analytic_obj = self.pool.get('account.analytic.account')
|
||||
# ids = account_analytic_obj.search(self.cr, self.uid,
|
||||
# [('parent_id', 'child_of', [account_id])])
|
||||
# self.cr.execute("SELECT -sum(amount) \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE account_id in ("+ ','.join(map(str, ids)) +") \
|
||||
# AND date>=%s AND date<=%s AND amount<0",
|
||||
# (date1, date2))
|
||||
# return self.cr.fetchone()[0] or 0.0
|
||||
#
|
||||
def _move_sum_balance(self, account_id, date1, date2):
|
||||
debit = self._move_sum(account_id, date1, date2, 'debit')
|
||||
credit = self._move_sum(account_id, date1, date2, 'credit')
|
||||
return (debit-credit)
|
||||
|
||||
# def _move_sum_quantity(self, account_id, date1, date2):
|
||||
# account_analytic_obj = self.pool.get('account.analytic.account')
|
||||
# ids = account_analytic_obj.search(self.cr, self.uid,
|
||||
# [('parent_id', 'child_of', [account_id])])
|
||||
# self.cr.execute("SELECT sum(unit_amount) \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE account_id in ("+ ','.join(map(str, ids)) +") \
|
||||
# AND date>=%s AND date<=%s",
|
||||
# (date1, date2))
|
||||
# return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
def _sum_all(self, accounts, date1, date2, option):
|
||||
ids = map(lambda x: x['id'], accounts)
|
||||
if not len(ids):
|
||||
@@ -174,68 +132,25 @@ class account_analytic_balance(report_sxw.rml_parse):
|
||||
self.acc_sum_list = ids2
|
||||
else:
|
||||
ids2 = self.acc_sum_list
|
||||
query_params = (tuple(ids2), date1, date2)
|
||||
if option == "debit" :
|
||||
self.cr.execute("SELECT sum(amount) FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s) AND date>=%s AND date<=%s AND amount>0",
|
||||
(ids,date1, date2,))
|
||||
WHERE account_id IN %s AND date>=%s AND date<=%s AND amount>0",query_params)
|
||||
elif option == "credit" :
|
||||
self.cr.execute("SELECT -sum(amount) FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s) AND date>=%s AND date<=%s AND amount<0",
|
||||
(ids,date1, date2,))
|
||||
WHERE account_id IN %s AND date>=%s AND date<=%s AND amount<0",query_params)
|
||||
elif option == "quantity" :
|
||||
self.cr.execute("SELECT sum(unit_amount) FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s)AND date>=%s AND date<=%s",
|
||||
(ids,date1, date2,))
|
||||
WHERE account_id IN %s AND date>=%s AND date<=%s",query_params)
|
||||
return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
|
||||
# def _sum_debit(self, accounts, date1, date2):
|
||||
# ids = map(lambda x: x['id'], accounts)
|
||||
# if not len(ids):
|
||||
# return 0.0
|
||||
# account_analytic_obj = self.pool.get('account.analytic.account')
|
||||
# ids2 = account_analytic_obj.search(self.cr, self.uid,
|
||||
# [('parent_id', 'child_of', ids)])
|
||||
# self.cr.execute("SELECT sum(amount) \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE account_id IN ("+','.join(map(str, ids2))+") \
|
||||
# AND date>=%s AND date<=%s AND amount>0",
|
||||
# (date1, date2))
|
||||
# return self.cr.fetchone()[0] or 0.0
|
||||
#
|
||||
# def _sum_credit(self, accounts, date1, date2):
|
||||
# ids = map(lambda x: x['id'], accounts)
|
||||
# if not len(ids):
|
||||
# return 0.0
|
||||
# ids = map(lambda x: x['id'], accounts)
|
||||
# account_analytic_obj = self.pool.get('account.analytic.account')
|
||||
# ids2 = account_analytic_obj.search(self.cr, self.uid,
|
||||
# [('parent_id', 'child_of', ids)])
|
||||
# self.cr.execute("SELECT -sum(amount) \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE account_id IN ("+','.join(map(str, ids2))+") \
|
||||
# AND date>=%s AND date<=%s AND amount<0",
|
||||
# (date1, date2))
|
||||
# return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
def _sum_balance(self, accounts, date1, date2):
|
||||
debit = self._sum_all(accounts, date1, date2, 'debit') or 0.0
|
||||
credit = self._sum_all(accounts, date1, date2, 'credit') or 0.0
|
||||
return (debit-credit)
|
||||
|
||||
# def _sum_quantity(self, accounts, date1, date2):
|
||||
# ids = map(lambda x: x['id'], accounts)
|
||||
# if not len(ids):
|
||||
# return 0.0
|
||||
# account_analytic_obj = self.pool.get('account.analytic.account')
|
||||
# ids2 = account_analytic_obj.search(self.cr, self.uid,
|
||||
# [('parent_id', 'child_of', ids)])
|
||||
# self.cr.execute("SELECT sum(unit_amount) \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE account_id IN ("+','.join(map(str, ids2))+") \
|
||||
# AND date>=%s AND date<=%s",
|
||||
# (date1, date2))
|
||||
# return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
report_sxw.report_sxw('report.account.analytic.account.balance',
|
||||
'account.analytic.account', 'addons/account/project/report/analytic_balance.rml',
|
||||
|
||||
@@ -77,41 +77,6 @@ class account_analytic_analytic_check(report_sxw.rml_parse):
|
||||
|
||||
return res
|
||||
|
||||
# def _lines_p(self, date1, date2):
|
||||
# res = []
|
||||
# acc_obj = self.pool.get('account.account')
|
||||
# for a in acc_obj.read(self.cr, self.uid, self.ids, ['name', 'code','sign']):
|
||||
# self.cr.execute("SELECT sum(debit), sum(credit) \
|
||||
# FROM account_move_line \
|
||||
# WHERE date>=%s AND date<=%s AND state<>'draft' AND account_id = %s", (date1, date2, a['id']))
|
||||
# (gd, gc) = self.cr.fetchone()
|
||||
# gd = gd or 0.0
|
||||
# gc = gc or 0.0
|
||||
#
|
||||
# self.cr.execute("SELECT abs(sum(amount)) AS balance \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE date>=%s AND date<=%s AND amount*%s>0 AND general_account_id = %s", (date1, date2, a['sign'], a['id']))
|
||||
# (ad,) = self.cr.fetchone()
|
||||
# ad = ad or 0.0
|
||||
# self.cr.execute("SELECT abs(sum(amount)) AS balance \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE date>=%s AND date<=%s AND amount*%s<0 AND general_account_id = %s", (date1, date2, a['sign'], a['id']))
|
||||
# (ac,) = self.cr.fetchone()
|
||||
# ac = ac or 0.0
|
||||
#
|
||||
# res.append({'code': a['code'], 'name': a['name'],
|
||||
# 'gen_debit': gd,
|
||||
# 'gen_credit': gc,
|
||||
# 'ana_debit': ad,
|
||||
# 'ana_credit': ac,
|
||||
# 'delta_debit': gd - ad,
|
||||
# 'delta_credit': gc - ac,})
|
||||
# self.sum_gen_deb += gd
|
||||
# self.sum_gen_cred += gc
|
||||
# self.sum_ana_deb += ad
|
||||
# self.sum_ana_cred += ac
|
||||
# return res
|
||||
|
||||
def _gen_deb(self, date1, date2):
|
||||
return self.sum_gen_deb
|
||||
|
||||
|
||||
@@ -93,15 +93,14 @@ class account_analytic_cost_ledger(report_sxw.rml_parse):
|
||||
ids = map(lambda x: x.id, accounts)
|
||||
if not len(ids):
|
||||
return 0.0
|
||||
self.cr.execute("SELECT sum(amount) FROM account_analytic_line WHERE account_id =ANY(%s) AND date>=%s AND date<=%s AND amount>0", (ids, date1, date2,))
|
||||
self.cr.execute("SELECT sum(amount) FROM account_analytic_line WHERE account_id IN %s AND date>=%s AND date<=%s AND amount>0", (tuple(ids), date1, date2,))
|
||||
return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
def _sum_credit(self, accounts, date1, date2):
|
||||
ids = map(lambda x: x.id, accounts)
|
||||
if not len(ids):
|
||||
return 0.0
|
||||
ids = map(lambda x: x.id, accounts)
|
||||
self.cr.execute("SELECT -sum(amount) FROM account_analytic_line WHERE account_id =ANY(%s) AND date>=%s AND date<=%s AND amount<0", (ids,date1, date2,))
|
||||
self.cr.execute("SELECT -sum(amount) FROM account_analytic_line WHERE account_id IN %s AND date>=%s AND date<=%s AND amount<0", (tuple(ids),date1, date2,))
|
||||
return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
def _sum_balance(self, accounts, date1, date2):
|
||||
|
||||
@@ -38,12 +38,17 @@ class account_inverted_analytic_balance(report_sxw.rml_parse):
|
||||
|
||||
def _lines_g(self, accounts, date1, date2):
|
||||
ids = map(lambda x: x.id, accounts)
|
||||
self.cr.execute("SELECT aa.name AS name, aa.code AS code, sum(aal.amount) AS balance, sum(aal.unit_amount) AS quantity, aa.id AS id \
|
||||
self.cr.execute("SELECT aa.name AS name, aa.code AS code, "
|
||||
"sum(aal.amount) AS balance, "
|
||||
"sum(aal.unit_amount) AS quantity, aa.id AS id \
|
||||
FROM account_analytic_line AS aal, account_account AS aa \
|
||||
WHERE (aal.general_account_id=aa.id) AND (aal.account_id =ANY(%s)) AND (date>=%s) AND (date<=%s) AND aa.active \
|
||||
GROUP BY aal.general_account_id, aa.name, aa.code, aal.code, aa.id ORDER BY aal.code", (ids,date1,date2,))
|
||||
WHERE (aal.general_account_id=aa.id) "
|
||||
"AND (aal.account_id IN %s) "
|
||||
"AND (date>=%s) AND (date<=%s) AND aa.active \
|
||||
GROUP BY aal.general_account_id, aa.name, aa.code, aal.code, aa.id "
|
||||
"ORDER BY aal.code",
|
||||
(tuple(ids), date1, date2))
|
||||
res = self.cr.dictfetchall()
|
||||
|
||||
for r in res:
|
||||
if r['balance'] > 0:
|
||||
r['debit'] = r['balance']
|
||||
@@ -58,10 +63,17 @@ class account_inverted_analytic_balance(report_sxw.rml_parse):
|
||||
|
||||
def _lines_a(self, accounts, general_account_id, date1, date2):
|
||||
ids = map(lambda x: x.id, accounts)
|
||||
self.cr.execute("SELECT sum(aal.amount) AS balance, sum(aal.unit_amount) AS quantity, aaa.code AS code, aaa.name AS name, account_id \
|
||||
FROM account_analytic_line AS aal, account_analytic_account AS aaa \
|
||||
WHERE aal.account_id=aaa.id AND aal.account_id =ANY(%s) AND aal.general_account_id=%s AND aal.date>=%s AND aal.date<=%s \
|
||||
GROUP BY aal.account_id, general_account_id, aaa.code, aaa.name ORDER BY aal.account_id", (ids,general_account_id, date1, date2,))
|
||||
self.cr.execute("SELECT sum(aal.amount) AS balance, "
|
||||
"sum(aal.unit_amount) AS quantity, "
|
||||
"aaa.code AS code, aaa.name AS name, account_id \
|
||||
FROM account_analytic_line AS aal, "
|
||||
"account_analytic_account AS aaa \
|
||||
WHERE aal.account_id=aaa.id AND aal.account_id IN %s "
|
||||
"AND aal.general_account_id=%s AND aal.date>=%s "
|
||||
"AND aal.date<=%s \
|
||||
GROUP BY aal.account_id, general_account_id, aaa.code, aaa.name "
|
||||
"ORDER BY aal.account_id",
|
||||
(tuple(ids), general_account_id, date1, date2))
|
||||
res = self.cr.dictfetchall()
|
||||
|
||||
aaa_obj = self.pool.get('account.analytic.account')
|
||||
@@ -86,14 +98,14 @@ class account_inverted_analytic_balance(report_sxw.rml_parse):
|
||||
ids = map(lambda x: x.id, accounts)
|
||||
self.cr.execute("SELECT sum(amount) \
|
||||
FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s) AND date>=%s AND date<=%s AND amount>0", (ids,date1, date2,))
|
||||
WHERE account_id IN %s AND date>=%s AND date<=%s AND amount>0", (tuple(ids),date1, date2,))
|
||||
return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
def _sum_credit(self, accounts, date1, date2):
|
||||
ids = map(lambda x: x.id, accounts)
|
||||
self.cr.execute("SELECT -sum(amount) \
|
||||
FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s) AND date>=%s AND date<=%s AND amount<0", (ids,date1, date2,))
|
||||
WHERE account_id IN %s AND date>=%s AND date<=%s AND amount<0", (tuple(ids),date1, date2,))
|
||||
return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
def _sum_balance(self, accounts, date1, date2):
|
||||
@@ -105,7 +117,7 @@ class account_inverted_analytic_balance(report_sxw.rml_parse):
|
||||
ids = map(lambda x: x.id, accounts)
|
||||
self.cr.execute("SELECT sum(unit_amount) \
|
||||
FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s) AND date>=%s AND date<=%s", (ids,date1, date2,))
|
||||
WHERE account_id IN %s AND date>=%s AND date<=%s", (tuple(ids),date1, date2,))
|
||||
return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
report_sxw.report_sxw('report.account.analytic.account.inverted.balance', 'account.analytic.account', 'addons/account/project/report/inverted_analytic_balance.rml',parser=account_inverted_analytic_balance, header=False)
|
||||
|
||||
@@ -52,9 +52,9 @@ class account_analytic_quantity_cost_ledger(report_sxw.rml_parse):
|
||||
WHERE (aal.account_id=%s) AND (aal.date>=%s) \
|
||||
AND (aal.date<=%s) AND (aal.general_account_id=aa.id) \
|
||||
AND aa.active \
|
||||
AND (aal.journal_id =ANY(%s) ) \
|
||||
AND (aal.journal_id IN %s ) \
|
||||
GROUP BY aa.code, aa.name, aa.id ORDER BY aa.code",
|
||||
(account_id, date1, date2,journal_ids))
|
||||
(account_id, date1, date2, tuple(journal_ids)))
|
||||
res = self.cr.dictfetchall()
|
||||
return res
|
||||
|
||||
@@ -79,9 +79,9 @@ class account_analytic_quantity_cost_ledger(report_sxw.rml_parse):
|
||||
account_analytic_journal AS aaj \
|
||||
WHERE (aal.general_account_id=%s) AND (aal.account_id=%s) \
|
||||
AND (aal.date>=%s) AND (aal.date<=%s) \
|
||||
AND (aal.journal_id=aaj.id) AND (aaj.id =ANY(%s)) \
|
||||
AND (aal.journal_id=aaj.id) AND (aaj.id IN %s) \
|
||||
ORDER BY aal.date, aaj.code, aal.code",
|
||||
(general_account_id, account_id, date1, date2,journal_ids,))
|
||||
(general_account_id, account_id, date1, date2,tuple(journal_ids)))
|
||||
res = self.cr.dictfetchall()
|
||||
return res
|
||||
|
||||
@@ -96,8 +96,8 @@ class account_analytic_quantity_cost_ledger(report_sxw.rml_parse):
|
||||
self.cr.execute("SELECT sum(unit_amount) \
|
||||
FROM account_analytic_line \
|
||||
WHERE account_id = %s AND date >= %s AND date <= %s \
|
||||
AND journal_id =ANY(%s)",
|
||||
(account_id, date1, date2,journal_ids,))
|
||||
AND journal_id IN %s",
|
||||
(account_id, date1, date2, tuple(journal_ids),))
|
||||
return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
def _sum_quantity(self, accounts, date1, date2, journals):
|
||||
@@ -107,14 +107,14 @@ class account_analytic_quantity_cost_ledger(report_sxw.rml_parse):
|
||||
if not journals:
|
||||
self.cr.execute("SELECT sum(unit_amount) \
|
||||
FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s) AND date>=%s AND date<=%s",
|
||||
(ids, date1, date2,))
|
||||
WHERE account_id IN %s AND date>=%s AND date<=%s",
|
||||
(tuple(ids), date1, date2,))
|
||||
else:
|
||||
journal_ids = journals
|
||||
self.cr.execute("SELECT sum(unit_amount) \
|
||||
FROM account_analytic_line \
|
||||
WHERE account_id =ANY(%s) AND date >= %s AND date <= %s \
|
||||
AND journal_id =ANY(%s)",(ids, date1, date2, journal_ids))
|
||||
WHERE account_id IN %s AND date >= %s AND date <= %s \
|
||||
AND journal_id IN %s",(tuple(ids), date1, date2, tuple(journal_ids)))
|
||||
return self.cr.fetchone()[0] or 0.0
|
||||
|
||||
report_sxw.report_sxw('report.account.analytic.account.quantity_cost_ledger',
|
||||
|
||||
@@ -29,7 +29,7 @@ class account_analytic_cost_ledger_journal_report(osv.osv_memory):
|
||||
_columns = {
|
||||
'date1': fields.date('Start of period', required=True),
|
||||
'date2': fields.date('End of period', required=True),
|
||||
'journal': fields.many2many('account.analytic.journal', 'ledger_journal_rel','ledger_id', 'Journal_id','Journals'),
|
||||
'journal': fields.many2many('account.analytic.journal', 'ledger_journal_rel', 'ledger_id', 'Journal_id', 'Journals'),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
@@ -55,51 +55,3 @@ class account_analytic_cost_ledger_journal_report(osv.osv_memory):
|
||||
|
||||
account_analytic_cost_ledger_journal_report()
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
#import time
|
||||
#import wizard
|
||||
#
|
||||
#_form = '''<?xml version="1.0"?>
|
||||
#<form string="Select period">
|
||||
# <separator string="Cost Legder for period" colspan="4"/>
|
||||
# <field name="date1"/>
|
||||
# <field name="date2"/>
|
||||
# <separator string="and Journals" colspan="4"/>
|
||||
# <field name="journal" colspan="4"/>
|
||||
#</form>'''
|
||||
#
|
||||
#_fields = {
|
||||
# 'date1': {'string':'Start of period', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-01-01')},
|
||||
# 'date2': {'string':'End of period', 'type':'date', 'required':True, 'default': lambda *a: time.strftime('%Y-%m-%d')},
|
||||
# 'journal': {'string':'Journals','type':'many2many', 'relation':'account.analytic.journal'},
|
||||
#}
|
||||
#
|
||||
#
|
||||
#class wizard_report(wizard.interface):
|
||||
# states = {
|
||||
# 'init': {
|
||||
# 'actions': [],
|
||||
# 'result': {
|
||||
# 'type': 'form',
|
||||
# 'arch': _form,
|
||||
# 'fields': _fields,
|
||||
# 'state': [
|
||||
# ('end','Cancel'),
|
||||
# ('report','Print')
|
||||
# ]
|
||||
# }
|
||||
# },
|
||||
# 'report': {
|
||||
# 'actions': [],
|
||||
# 'result': {
|
||||
# 'type': 'print',
|
||||
# 'report': 'account.analytic.account.quantity_cost_ledger',
|
||||
# 'state': 'end'
|
||||
# }
|
||||
# },
|
||||
# }
|
||||
#
|
||||
#wizard_report('account.analytic.account.quantity_cost_ledger.report')
|
||||
#
|
||||
## vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
||||
@@ -32,26 +32,26 @@ class project_account_analytic_line(osv.osv_memory):
|
||||
def action_open_window(self, cr, uid, ids, context={}):
|
||||
mod_obj =self.pool.get('ir.model.data')
|
||||
domain = []
|
||||
for data in self.read(cr, uid, ids, context=context):
|
||||
from_date = data['from_date']
|
||||
to_date = data['to_date']
|
||||
if from_date and to_date:
|
||||
domain = [('date','>=',from_date), ('date','<=',to_date)]
|
||||
elif from_date:
|
||||
domain = [('date','>=',from_date)]
|
||||
elif to_date:
|
||||
domain = [('date','<=',to_date)]
|
||||
result = mod_obj._get_id(cr, uid, 'account', 'view_account_analytic_line_filter')
|
||||
id = mod_obj.read(cr, uid, result, ['res_id'], context=context)
|
||||
return {
|
||||
'name': _('Analytic Entries by line'),
|
||||
'view_type': 'form',
|
||||
"view_mode": 'tree,form',
|
||||
'res_model': 'account.analytic.line',
|
||||
'type': 'ir.actions.act_window',
|
||||
'domain': domain,
|
||||
'search_view_id': id['res_id'],
|
||||
}
|
||||
data = self.read(cr, uid, ids, [])[0]
|
||||
from_date = data['from_date']
|
||||
to_date = data['to_date']
|
||||
if from_date and to_date:
|
||||
domain = [('date','>=',from_date), ('date','<=',to_date)]
|
||||
elif from_date:
|
||||
domain = [('date','>=',from_date)]
|
||||
elif to_date:
|
||||
domain = [('date','<=',to_date)]
|
||||
result = mod_obj._get_id(cr, uid, 'account', 'view_account_analytic_line_filter')
|
||||
id = mod_obj.read(cr, uid, result, ['res_id'], context=context)
|
||||
return {
|
||||
'name': _('Analytic Entries by line'),
|
||||
'view_type': 'form',
|
||||
"view_mode": 'tree,form',
|
||||
'res_model': 'account.analytic.line',
|
||||
'type': 'ir.actions.act_window',
|
||||
'domain': domain,
|
||||
'search_view_id': id['res_id'],
|
||||
}
|
||||
|
||||
project_account_analytic_line()
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<separator string="" colspan="4" />
|
||||
<group colspan="4" col="6">
|
||||
<button icon="gtk-cancel" special="cancel" string="Cancel"/>
|
||||
<button icon="gtk-execute" string="Open Entries" name="action_open_window" type="object"/>
|
||||
<button icon="terp-gtk-go-back-rtl" string="Open Entries" name="action_open_window" type="object"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
|
||||
@@ -30,7 +30,7 @@ import invoice
|
||||
import overdue
|
||||
import aged_trial_balance
|
||||
import tax_report
|
||||
import account_tax_code
|
||||
#import account_tax_code
|
||||
import account_balance_landscape
|
||||
import compare_account_balance
|
||||
import account_invoice_report
|
||||
@@ -40,5 +40,7 @@ import account_account_report
|
||||
import account_entries_report
|
||||
import account_analytic_entries_report
|
||||
import voucher_print
|
||||
import report_bs
|
||||
import report_pl
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
||||
@@ -38,8 +38,8 @@ class account_account_report(osv.osv):
|
||||
('closed', 'Closed'),
|
||||
], 'Internal Type', readonly=True),
|
||||
'company_id': fields.many2one('res.company', 'Company', required=True),
|
||||
'currency_mode': fields.selection([('current', 'At Date'), ('average', 'Average Rate')], 'Outgoing Currencies Rate',readonly=True),
|
||||
'user_type': fields.many2one('account.account.type', 'Account Type',readonly=True),
|
||||
'currency_mode': fields.selection([('current', 'At Date'), ('average', 'Average Rate')], 'Outgoing Currencies Rate', readonly=True),
|
||||
'user_type': fields.many2one('account.account.type', 'Account Type', readonly=True),
|
||||
'quantity': fields.float('Quantity', readonly=True),
|
||||
'amount_total': fields.float('Total Amount', readonly=True),
|
||||
'credit': fields.float('Credit', readonly=True),
|
||||
|
||||
@@ -45,10 +45,10 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Accounts Analysis">
|
||||
<group>
|
||||
<filter icon="terp-account"
|
||||
<filter icon="terp-go-today"
|
||||
string="At Date"
|
||||
domain="[('currency_mode','=', 'current')]"/>
|
||||
<filter icon="terp-account"
|
||||
<filter icon="terp-stock_format-default"
|
||||
string="Average Rate"
|
||||
domain="[('currency_mode','=','average')]"/>
|
||||
<separator orientation="vertical"/>
|
||||
@@ -56,15 +56,15 @@
|
||||
<field name="code"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By...">
|
||||
<filter string="Account" name="Account" icon="terp-account" context="{'group_by':'name'}"/>
|
||||
<filter string="Code" icon="terp-account" context="{'group_by':'code'}"/>
|
||||
<filter string="Company" icon="terp-account" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<group expand="0" string="Group By...">
|
||||
<filter string="Account" name="Account" icon="terp-folder-orange" context="{'group_by':'name'}"/>
|
||||
<filter string="Code" icon="terp-stock_format-scientific" context="{'group_by':'code'}"/>
|
||||
<filter string="Company" icon="terp-go-home" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Currencies Rate" icon="terp-account" context="{'group_by':'currency_mode'}"/>
|
||||
<filter string="Internal Type" icon="terp-account" context="{'group_by':'type'}"/>
|
||||
<filter string="Account Type" icon="terp-account" context="{'group_by':'user_type'}"/>
|
||||
<filter string="Parent Account" icon="terp-account" context="{'group_by':'parent_account_id'}"/>
|
||||
<filter string="Currencies Rate" icon="terp-dolar" context="{'group_by':'currency_mode'}"/>
|
||||
<filter string="Internal Type" icon="terp-go-home" context="{'group_by':'type'}"/>
|
||||
<filter string="Account Type" icon="terp-stock_symbol-selection" context="{'group_by':'user_type'}"/>
|
||||
<filter string="Parent Account" icon="terp-folder-orange" context="{'group_by':'parent_account_id'}"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="0" string="Extended options..." groups="base.group_extended">
|
||||
|
||||
@@ -35,14 +35,14 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Analytic Entries Analysis">
|
||||
<group col="10" colspan="12">
|
||||
<filter icon="gtk-media-rewind" string=" 365 Days "
|
||||
<filter icon="terp-go-year" string=" 365 Days "
|
||||
domain="[('day','<=', time.strftime('%%Y-%%m-%%d')),('day','>',(datetime.date.today()-datetime.timedelta(days=365)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Analytic Entries of last 365 days"/>
|
||||
<filter icon="gtk-media-rewind" string=" 30 Days "
|
||||
<filter icon="terp-go-month" string=" 30 Days "
|
||||
name="month"
|
||||
domain="[('day','<=', time.strftime('%%Y-%%m-%%d')), ('day','>',(datetime.date.today()-datetime.timedelta(days=30)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Analytic Entries of last 30 days"/>
|
||||
<filter icon="gtk-media-rewind"
|
||||
<filter icon="terp-go-week"
|
||||
string=" 7 Days "
|
||||
separator="1"
|
||||
domain="[('day','<=', time.strftime('%%Y-%%m-%%d')), ('day','>',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"
|
||||
@@ -50,25 +50,25 @@
|
||||
<separator orientation="vertical"/>
|
||||
<field name="product_id" />
|
||||
<field name="user_id" widget="selection">
|
||||
<filter icon="terp-account" domain="[('user_id','=',uid)]" help="My Entries"/>
|
||||
<filter icon="terp-gtk-jump-to-ltr" domain="[('user_id','=',uid)]" help="My Entries"/>
|
||||
</field>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By...">
|
||||
<filter string="User" name="User" icon="terp-account" context="{'group_by':'user_id'}"/>
|
||||
<filter string="Currency" icon="terp-account" context="{'group_by':'currency_id'}"/>
|
||||
<filter string="Company" icon="terp-account" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<group expand="0" string="Group By...">
|
||||
<filter string="User" name="User" icon="terp-personal" context="{'group_by':'user_id'}"/>
|
||||
<filter string="Currency" icon="terp-dolar" context="{'group_by':'currency_id'}"/>
|
||||
<filter string="Company" icon="terp-go-home" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Account" icon="terp-account" context="{'group_by':'account_id'}"/>
|
||||
<filter string="General Account" icon="terp-account" context="{'group_by':'general_account_id'}"/>
|
||||
<filter string="Journal" icon="terp-account" context="{'group_by':'journal_id'}"/>
|
||||
<filter string="Account" icon="terp-folder-orange" context="{'group_by':'account_id'}"/>
|
||||
<filter string="General Account" icon="terp-folder-orange" context="{'group_by':'general_account_id'}"/>
|
||||
<filter string="Journal" icon="terp-folder-orange" context="{'group_by':'journal_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Product" icon="terp-account" context="{'group_by':'product_id'}"/>
|
||||
<filter string="Product UOM" icon="terp-account" context="{'group_by':'product_uom_id'}"/>
|
||||
<filter string="Product" icon="terp-accessories-archiver" context="{'group_by':'product_id'}"/>
|
||||
<filter string="Product UOM" icon="terp-mrp" context="{'group_by':'product_uom_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Day" icon="terp-account" context="{'group_by':'day'}"/>
|
||||
<filter string="Month" icon="terp-account" context="{'group_by':'month'}"/>
|
||||
<filter string="Year" icon="terp-account" context="{'group_by':'year'}"/>
|
||||
<filter string="Day" icon="terp-go-today" context="{'group_by':'day'}"/>
|
||||
<filter string="Month" icon="terp-go-month" context="{'group_by':'month'}"/>
|
||||
<filter string="Year" icon="terp-go-year" context="{'group_by':'year'}"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="0" string="Extended options..." groups="base.group_extended">
|
||||
|
||||
@@ -28,21 +28,21 @@ class analytic_report(osv.osv):
|
||||
_auto = False
|
||||
_columns = {
|
||||
'date_start': fields.date('Date Start', readonly=True),
|
||||
'date_end': fields.date('Date End',readonly=True),
|
||||
'date_end': fields.date('Date End', readonly=True),
|
||||
'name' : fields.char('Analytic Account', size=128, readonly=True),
|
||||
'partner_id' : fields.many2one('res.partner', 'Associated Partner',readonly=True),
|
||||
'partner_id' : fields.many2one('res.partner', 'Associated Partner', readonly=True),
|
||||
'journal_id' : fields.many2one('account.analytic.journal', 'Analytic Journal', readonly=True),
|
||||
'parent_id': fields.many2one('account.analytic.account', 'Parent Analytic Account', readonly=True),
|
||||
'user_id' : fields.many2one('res.users', 'Account Manager',readonly=True),
|
||||
'product_id' : fields.many2one('product.product', 'Product',readonly=True),
|
||||
'total_quantity': fields.float('# Total Quantity',readonly=True),
|
||||
'debit' : fields.float('Debit',readonly=True),
|
||||
'credit' : fields.float('Credit',readonly=True),
|
||||
'balance' : fields.float('Balance',readonly=True),
|
||||
'user_id' : fields.many2one('res.users', 'Account Manager', readonly=True),
|
||||
'product_id' : fields.many2one('product.product', 'Product', readonly=True),
|
||||
'total_quantity': fields.float('# Total Quantity', readonly=True),
|
||||
'debit' : fields.float('Debit', readonly=True),
|
||||
'credit' : fields.float('Credit', readonly=True),
|
||||
'balance' : fields.float('Balance', readonly=True),
|
||||
'year': fields.char('Year', size=4, readonly=True),
|
||||
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'),
|
||||
('05','May'), ('06','June'), ('07','July'), ('08','August'), ('09','September'),
|
||||
('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True),
|
||||
('10','October'), ('11','November'), ('12','December')], 'Month', readonly=True),
|
||||
'day': fields.char('Day', size=128, readonly=True),
|
||||
'nbr':fields.integer('# of Lines', readonly=True),
|
||||
'company_id': fields.many2one('res.company', 'Company', readonly=True),
|
||||
|
||||
@@ -36,26 +36,26 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Analytic Accounts Analysis">
|
||||
<group>
|
||||
<filter icon="gtk-media-rewind" string=" 365 Days "
|
||||
<filter icon="terp-go-year" string=" 365 Days "
|
||||
domain="[('day','<=', time.strftime('%%Y-%%m-%%d')),('day','>',(datetime.date.today()-datetime.timedelta(days=365)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Analytic Accounts of last 365 days"/>
|
||||
<filter icon="gtk-media-rewind" string=" 30 Days "
|
||||
<filter icon="terp-go-month" string=" 30 Days "
|
||||
name="This Month"
|
||||
domain="[('day','<=', time.strftime('%%Y-%%m-%%d')), ('day','>',(datetime.date.today()-datetime.timedelta(days=30)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Analytic Accounts of last 30 days"/>
|
||||
<filter icon="gtk-media-rewind"
|
||||
<filter icon="terp-go-week"
|
||||
string=" 7 Days "
|
||||
separator="1"
|
||||
domain="[('day','<=', time.strftime('%%Y-%%m-%%d')), ('day','>',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Analytic Accounts during last 7 days"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter icon="terp-account"
|
||||
<filter icon="terp-document-new"
|
||||
string="Draft"
|
||||
domain="[('state','=','draft')]"/>
|
||||
<filter icon="terp-account"
|
||||
<filter icon="terp-camera_test"
|
||||
string="Open"
|
||||
domain="[('state','=','open')]"/>
|
||||
<filter icon="terp-account"
|
||||
<filter icon="terp-gtk-media-pause"
|
||||
string="Pending"
|
||||
domain="[('state','=','pending')]"/>
|
||||
<separator orientation="vertical"/>
|
||||
@@ -63,28 +63,28 @@
|
||||
<field name="product_id" />
|
||||
<field name="partner_id"/>
|
||||
<field name="user_id" widget="selection">
|
||||
<filter icon="terp-account"
|
||||
<filter icon="terp-folder-orange"
|
||||
string="My Accounts"
|
||||
help="My Account"
|
||||
domain="[('user_id','=',uid)]"/>
|
||||
</field>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By..." colspan="10" col="12">
|
||||
<filter string="User" name="User" icon="terp-account" context="{'group_by':'user_id'}"/>
|
||||
<filter string="Associated Partner" icon="terp-account" context="{'group_by':'partner_id'}"/>
|
||||
<group expand="0" string="Group By..." colspan="10" col="12">
|
||||
<filter string="User" name="User" icon="terp-personal" context="{'group_by':'user_id'}"/>
|
||||
<filter string="Associated Partner" icon="terp-personal+" context="{'group_by':'partner_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Company" icon="terp-account" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<filter string="Analytic Account" icon="terp-account" context="{'group_by':'parent_id'}"/>
|
||||
<filter string="Analytic Journal" icon="terp-account" context="{'group_by':'journal_id'}"/>
|
||||
<filter string="Company" icon="terp-go-home" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<filter string="Analytic Account" icon="terp-folder-green" context="{'group_by':'parent_id'}"/>
|
||||
<filter string="Analytic Journal" icon="terp-folder-green" context="{'group_by':'journal_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Product" icon="terp-account" context="{'group_by':'product_id'}"/>
|
||||
<filter string="Account Type" icon="terp-account" context="{'group_by':'type'}"/>
|
||||
<filter string="State" icon="terp-account" context="{'group_by':'state'}"/>
|
||||
<filter string="Product" icon="terp-accessories-archiver" context="{'group_by':'product_id'}"/>
|
||||
<filter string="Account Type" icon="terp-stock_symbol-selection" context="{'group_by':'type'}"/>
|
||||
<filter string="State" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Day" icon="terp-account" context="{'group_by':'day'}"/>
|
||||
<filter string="Month" icon="terp-account" context="{'group_by':'month'}"/>
|
||||
<filter string="Year" icon="terp-account" context="{'group_by':'year'}"/>
|
||||
<filter string="Day" icon="terp-go-today" context="{'group_by':'day'}"/>
|
||||
<filter string="Month" icon="terp-go-month" context="{'group_by':'month'}"/>
|
||||
<filter string="Year" icon="terp-go-year" context="{'group_by':'year'}"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="0" string="Extended options..." colspan="10" col="12" groups="base.group_extended">
|
||||
|
||||
@@ -68,14 +68,14 @@ class account_balance(report_sxw.rml_parse):
|
||||
result=''
|
||||
if form.has_key('periods') and form['periods']:
|
||||
period_ids = form['periods']
|
||||
per_ids = self.pool.get('account.period').browse(self.cr,self.uid,form['periods'])
|
||||
per_ids = self.pool.get('account.period').browse(self.cr, self.uid, form['periods'])
|
||||
for r in per_ids:
|
||||
if r == per_ids[len(per_ids)-1]:
|
||||
result+=r.name+". "
|
||||
else:
|
||||
result+=r.name+", "
|
||||
else:
|
||||
fy_obj = self.pool.get('account.fiscalyear').browse(self.cr,self.uid,form['fiscalyear'])
|
||||
fy_obj = self.pool.get('account.fiscalyear').browse(self.cr, self.uid, form['fiscalyear'])
|
||||
res = fy_obj.period_ids
|
||||
len_res = len(res)
|
||||
for r in res:
|
||||
@@ -118,7 +118,7 @@ class account_balance(report_sxw.rml_parse):
|
||||
child_ids = self.pool.get('account.account')._get_children_and_consol(self.cr, self.uid, ids, ctx)
|
||||
if child_ids:
|
||||
ids = child_ids
|
||||
accounts = self.pool.get('account.account').read(self.cr, self.uid, ids,['type','code','name','debit','credit','balance','parent_id'], ctx)
|
||||
accounts = self.pool.get('account.account').read(self.cr, self.uid, ids, ['type','code','name','debit','credit','balance','parent_id'], ctx)
|
||||
for account in accounts:
|
||||
if account['id'] in done:
|
||||
continue
|
||||
|
||||
@@ -351,7 +351,7 @@ class account_balance_landscape(rml_parse.rml_parse):
|
||||
|
||||
if perc==1:
|
||||
if form['select_account']!=False:
|
||||
ref_ac=self.pool.get('account.account').browse(self.cr, self.uid,form['select_account'],ctx.copy())
|
||||
ref_ac=self.pool.get('account.account').browse(self.cr, self.uid, form['select_account'], ctx.copy())
|
||||
if ref_ac.balance<>0.00:
|
||||
ref_bal=ref_ac.balance
|
||||
else:
|
||||
@@ -365,7 +365,7 @@ class account_balance_landscape(rml_parse.rml_parse):
|
||||
total_for_perc=[]
|
||||
# if perc==1:
|
||||
self.done_total=1
|
||||
self.total_for_perc=self.linesForTotal(form,ids={},doneAccount={},level=1)
|
||||
self.total_for_perc=self.linesForTotal(form, ids={}, doneAccount={}, level=1)
|
||||
self.done_total=0
|
||||
|
||||
for t1 in range(0,len(form['fiscalyear'])):
|
||||
@@ -376,13 +376,13 @@ class account_balance_landscape(rml_parse.rml_parse):
|
||||
# self.result_total = {}
|
||||
|
||||
for temp in range(0,len(form['fiscalyear'])):
|
||||
fy=self.pool.get('account.fiscalyear').name_get(self.cr,self.uid,form['fiscalyear'][temp])
|
||||
fy=self.pool.get('account.fiscalyear').name_get(self.cr, self.uid, form['fiscalyear'][temp])
|
||||
years["year"+str(temp)]=fy[0][1][12:16]
|
||||
|
||||
return [years]
|
||||
|
||||
|
||||
def linesForTotal(self,form,ids={},doneAccount={},level=1):
|
||||
def linesForTotal(self, form, ids={}, doneAccount={}, level=1):
|
||||
if self.done_total==1:
|
||||
self.done_total==1
|
||||
else:
|
||||
@@ -443,7 +443,7 @@ class account_balance_landscape(rml_parse.rml_parse):
|
||||
ids2 = [(x.code,x.id) for x in entry[0].child_id]
|
||||
ids2.sort()
|
||||
|
||||
result_total_parent = self.linesForTotal(form, [x[1] for x in ids2],doneAccount,level+1)
|
||||
result_total_parent = self.linesForTotal(form, [x[1] for x in ids2], doneAccount, level+1)
|
||||
|
||||
return [self.result_total]
|
||||
|
||||
@@ -462,7 +462,7 @@ class account_balance_landscape(rml_parse.rml_parse):
|
||||
ctx['periods'] = form['periods']
|
||||
ctx['period_manner']=form['period_manner']
|
||||
ctx['state'] = form['context'].get('state','all')
|
||||
tmp1 = self.pool.get('account.account').browse(self.cr, self.uid, ids,ctx.copy())
|
||||
tmp1 = self.pool.get('account.account').browse(self.cr, self.uid, ids, ctx.copy())
|
||||
|
||||
if len(tmp1):
|
||||
accounts.append(tmp1)
|
||||
@@ -598,12 +598,12 @@ class account_balance_landscape(rml_parse.rml_parse):
|
||||
|
||||
return result
|
||||
|
||||
def get_years(self,form):
|
||||
def get_years(self, form):
|
||||
result =[]
|
||||
res={}
|
||||
for temp in range(0,len(form['fiscalyear'])):
|
||||
for temp in range(0, len(form['fiscalyear'])):
|
||||
res={}
|
||||
fy=self.pool.get('account.fiscalyear').name_get(self.cr,self.uid,form['fiscalyear'][temp])
|
||||
fy=self.pool.get('account.fiscalyear').name_get(self.cr, self.uid, form['fiscalyear'][temp])
|
||||
res['year']=fy[0][1]
|
||||
res['last_str']=temp
|
||||
|
||||
@@ -611,7 +611,7 @@ class account_balance_landscape(rml_parse.rml_parse):
|
||||
self.linesForYear(form)
|
||||
return result
|
||||
|
||||
def get_lines(self,year_dict,form):
|
||||
def get_lines(self, year_dict, form):
|
||||
final_result = []
|
||||
line_l =[]
|
||||
res = {}
|
||||
@@ -643,7 +643,7 @@ class account_balance_landscape(rml_parse.rml_parse):
|
||||
final_result.append(res)
|
||||
return final_result
|
||||
|
||||
def cal_total(self,year_dict):
|
||||
def cal_total(self, year_dict):
|
||||
total_l = self.result_total
|
||||
if total_l:
|
||||
for k,v in total_l.items():
|
||||
|
||||
@@ -33,18 +33,18 @@ class account_entries_report(osv.osv):
|
||||
'date_maturity': fields.date('Date Maturity', readonly=True),
|
||||
'nbr':fields.integer('# of Entries', readonly=True),
|
||||
'nbl':fields.integer('# of Lines', readonly=True),
|
||||
'amount': fields.float('Amount',readonly=True),
|
||||
'amount': fields.float('Amount', readonly=True),
|
||||
'year': fields.char('Year', size=4, readonly=True),
|
||||
'day': fields.char('Day', size=128, readonly=True),
|
||||
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'),
|
||||
('05','May'), ('06','June'), ('07','July'), ('08','August'), ('09','September'),
|
||||
('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True),
|
||||
'ref': fields.char('Reference', size=64,readonly=True),
|
||||
('10','October'), ('11','November'), ('12','December')], 'Month', readonly=True),
|
||||
'ref': fields.char('Reference', size=64, readonly=True),
|
||||
'period_id': fields.many2one('account.period', 'Period', readonly=True),
|
||||
'account_id': fields.many2one('account.account', 'Account', readonly=True),
|
||||
'journal_id': fields.many2one('account.journal', 'Journal', readonly=True),
|
||||
'product_id': fields.many2one('product.product', 'Product', readonly=True),
|
||||
'state': fields.selection([('draft','Draft'), ('posted','Posted')], 'State',readonly=True,
|
||||
'state': fields.selection([('draft','Draft'), ('posted','Posted')], 'State', readonly=True,
|
||||
help='When new account move is created the state will be \'Draft\'. When all the payments are done it will be in \'Posted\' state.'),
|
||||
'state_2': fields.selection([('draft','Draft'), ('valid','Valid')], 'State of Move Line', readonly=True,
|
||||
help='When new move line is created the state will be \'Draft\'.\n* When all the payments are done it will be in \'Valid\' state.'),
|
||||
|
||||
@@ -50,25 +50,25 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Entries Analysis">
|
||||
<group colspan="10" col="12">
|
||||
<filter icon="gtk-media-rewind" string=" 365 Days "
|
||||
<filter icon="terp-go-year" string=" 365 Days "
|
||||
domain="[('date','<=', time.strftime('%%Y-%%m-%%d')),('date','>',(datetime.date.today()-datetime.timedelta(days=365)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Entries of last 365 days"/>
|
||||
<filter icon="gtk-media-rewind" string=" 30 Days "
|
||||
<filter icon="terp-go-month" string=" 30 Days "
|
||||
name="This Month"
|
||||
domain="[('date','<=', time.strftime('%%Y-%%m-%%d')), ('date','>',(datetime.date.today()-datetime.timedelta(days=30)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Entries of last 30 days"/>
|
||||
<filter icon="gtk-media-rewind"
|
||||
<filter icon="terp-go-week"
|
||||
string=" 7 Days "
|
||||
separator="1"
|
||||
domain="[('date','<=', time.strftime('%%Y-%%m-%%d')), ('date','>',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Entries during last 7 days"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Draft"
|
||||
icon="terp-account"
|
||||
icon="terp-document-new"
|
||||
domain="[('state','=','draft')]"
|
||||
help = "Draft entries"/>
|
||||
<filter string="Posted"
|
||||
icon="terp-account"
|
||||
icon="terp-camera_test"
|
||||
domain="[('state','=','posted')]"
|
||||
help = "Posted entries"/>
|
||||
<separator orientation="vertical"/>
|
||||
@@ -78,24 +78,24 @@
|
||||
<field name="analytic_account_id"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By...">
|
||||
<filter string="Partner" icon="terp-account" context="{'group_by':'partner_id'}"/>
|
||||
<filter string="Product" icon="terp-account" context="{'group_by':'product_id'}"/>
|
||||
<filter string="Journal" name="Journal" icon="terp-account" context="{'group_by':'journal_id'}"/>
|
||||
<group expand="0" string="Group By...">
|
||||
<filter string="Partner" icon="terp-personal" context="{'group_by':'partner_id'}"/>
|
||||
<filter string="Product" icon="terp-accessories-archiver" context="{'group_by':'product_id'}"/>
|
||||
<filter string="Journal" name="Journal" icon="terp-folder-orange" context="{'group_by':'journal_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="State" icon="terp-account" context="{'group_by':'state'}"/>
|
||||
<filter string="Type" icon="terp-account" context="{'group_by':'type'}"/>
|
||||
<filter string="Company" icon="terp-account" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<filter string="Account" name="Account" icon="terp-account" context="{'group_by':'account_id'}"/>
|
||||
<filter string="State" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
|
||||
<filter string="Type" icon="terp-stock_symbol-selection" context="{'group_by':'type'}"/>
|
||||
<filter string="Company" icon="terp-go-home" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<filter string="Account" name="Account" icon="terp-folder-orange" context="{'group_by':'account_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Analytic Account" name="Analytic Account" icon="terp-account" context="{'group_by':'analytic_account_id'}"/>
|
||||
<filter string="State of Move Line" icon="terp-account" context="{'group_by':'state_2'}"/>
|
||||
<filter string="Period" icon="terp-account" context="{'group_by':'period_id'}"/>
|
||||
<filter string="Period of Move Line" icon="terp-account" context="{'group_by':'period_id2'}"/>
|
||||
<filter string="Analytic Account" name="Analytic Account" icon="terp-folder-green" context="{'group_by':'analytic_account_id'}"/>
|
||||
<filter string="State of Move Line" icon="terp-stock_effects-object-colorize" context="{'group_by':'state_2'}"/>
|
||||
<filter string="Period" icon="terp-go-month" context="{'group_by':'period_id'}"/>
|
||||
<filter string="Period of Move Line" icon="terp-go-month" context="{'group_by':'period_id2'}"/>
|
||||
<newline/>
|
||||
<filter string="Day" icon="terp-account" context="{'group_by':'day'}"/>
|
||||
<filter string="Month" icon="terp-account" context="{'group_by':'month'}"/>
|
||||
<filter string="Year" icon="terp-account" context="{'group_by':'year'}"/>
|
||||
<filter string="Day" icon="terp-go-today" context="{'group_by':'day'}"/>
|
||||
<filter string="Month" icon="terp-go-month" context="{'group_by':'month'}"/>
|
||||
<filter string="Year" icon="terp-go-year" context="{'group_by':'year'}"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="0" string="Extended options..." groups="base.group_extended">
|
||||
|
||||
@@ -33,22 +33,23 @@ class account_invoice_report(osv.osv):
|
||||
'day': fields.char('Day', size=128, readonly=True),
|
||||
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'),
|
||||
('05','May'), ('06','June'), ('07','July'), ('08','August'), ('09','September'),
|
||||
('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True),
|
||||
('10','October'), ('11','November'), ('12','December')], 'Month', readonly=True),
|
||||
'product_id':fields.many2one('product.product', 'Product', readonly=True),
|
||||
'product_qty':fields.float('Qty', readonly=True),
|
||||
'uom_name': fields.char('Default UoM', size=128, readonly=True),
|
||||
'payment_term': fields.many2one('account.payment.term', 'Payment Term',readonly=True),
|
||||
'period_id': fields.many2one('account.period', 'Force Period', domain=[('state','<>','done')],readonly=True),
|
||||
'fiscal_position': fields.many2one('account.fiscal.position', 'Fiscal Position',readonly=True),
|
||||
'payment_term': fields.many2one('account.payment.term', 'Payment Term', readonly=True),
|
||||
'period_id': fields.many2one('account.period', 'Force Period', domain=[('state','<>','done')], readonly=True),
|
||||
'fiscal_position': fields.many2one('account.fiscal.position', 'Fiscal Position', readonly=True),
|
||||
'currency_id': fields.many2one('res.currency', 'Currency', readonly=True),
|
||||
'categ_id': fields.many2one('product.category','Category of Product', readonly=True),
|
||||
'journal_id': fields.many2one('account.journal', 'Journal',readonly=True),
|
||||
'journal_id': fields.many2one('account.journal', 'Journal', readonly=True),
|
||||
'partner_id':fields.many2one('res.partner', 'Partner', readonly=True),
|
||||
'company_id':fields.many2one('res.company', 'Company', readonly=True),
|
||||
'user_id':fields.many2one('res.users', 'Salesman', readonly=True),
|
||||
'price_total':fields.float('Total Price', readonly=True),
|
||||
'price_average':fields.float('Average Price', readonly=True),
|
||||
'nbr':fields.integer('# of Lines', readonly=True),
|
||||
'reconciled':fields.integer('# reconciled lines', readonly=True),
|
||||
'type': fields.selection([
|
||||
('out_invoice','Customer Invoice'),
|
||||
('in_invoice','Supplier Invoice'),
|
||||
@@ -62,7 +63,7 @@ class account_invoice_report(osv.osv):
|
||||
('open','Open'),
|
||||
('paid','Done'),
|
||||
('cancel','Cancelled')
|
||||
], 'Order State', readonly=True),
|
||||
], 'Invoice State', readonly=True),
|
||||
'date_due': fields.date('Due Date', readonly=True),
|
||||
'address_contact_id': fields.many2one('res.partner.address', 'Contact Address Name', readonly=True),
|
||||
'address_invoice_id': fields.many2one('res.partner.address', 'Invoice Address Name', readonly=True),
|
||||
@@ -89,6 +90,7 @@ class account_invoice_report(osv.osv):
|
||||
l.quantity * u.factor
|
||||
end) as product_qty,
|
||||
s.partner_id as partner_id,
|
||||
s.reconciled::integer,
|
||||
s.payment_term as payment_term,
|
||||
s.period_id as period_id,
|
||||
u.name as uom_name,
|
||||
@@ -137,6 +139,7 @@ class account_invoice_report(osv.osv):
|
||||
l.product_id,
|
||||
u.name,
|
||||
l.uos_id,
|
||||
s.reconciled,
|
||||
s.user_id,
|
||||
s.state,
|
||||
s.residual,
|
||||
|
||||
@@ -20,8 +20,6 @@
|
||||
<field name="categ_id" invisible="1"/>
|
||||
<field name="nbr" sum="# of Lines"/>
|
||||
<field name="product_qty"/>
|
||||
<field name="price_average" avg="Average Price"/>
|
||||
<field name="price_total" sum="Total Price"/>
|
||||
<field name="state" invisible="1"/>
|
||||
<field name="period_id" invisible="1"/>
|
||||
<field name="currency_id" invisible="1"/>
|
||||
@@ -29,8 +27,11 @@
|
||||
<field name="date_due" invisible="1"/>
|
||||
<field name="address_contact_id" invisible="1"/>
|
||||
<field name="address_invoice_id" invisible="1"/>
|
||||
<field name="account_id" invisible="1"/>
|
||||
<field name="partner_bank" invisible="1"/>
|
||||
<field name="account_id" invisible="1"/>
|
||||
<field name="reconciled" sum="# Reconciled"/>
|
||||
<field name="price_average" avg="Average Price"/>
|
||||
<field name="price_total" sum="Total Price"/>
|
||||
<field name="residual" sum="Total Residual"/>
|
||||
<field name="delay_to_pay" avg="Avg. Delay To Pay"/>
|
||||
</tree>
|
||||
@@ -56,87 +57,78 @@
|
||||
<field name="arch" type="xml">
|
||||
<search string="Invoices Analysis">
|
||||
<group col="10" colspan="12">
|
||||
<filter icon="gtk-media-rewind" string=" 365 Days "
|
||||
<filter icon="terp-go-year" string=" 365 Days "
|
||||
domain="[('date','<=', time.strftime('%%Y-%%m-%%d')),('date','>',(datetime.date.today()-datetime.timedelta(days=365)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Invoices of last 365 days"/>
|
||||
<filter icon="gtk-media-rewind" string=" 30 Days "
|
||||
<filter icon="terp-go-month" string=" 30 Days "
|
||||
name="month"
|
||||
domain="[('date','<=', time.strftime('%%Y-%%m-%%d')), ('date','>',(datetime.date.today()-datetime.timedelta(days=30)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Invoices of last 30 days"/>
|
||||
<filter icon="gtk-media-rewind"
|
||||
<filter icon="terp-go-week"
|
||||
string=" 7 Days "
|
||||
separator="1"
|
||||
domain="[('date','<=', time.strftime('%%Y-%%m-%%d')), ('date','>',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"
|
||||
help="Invoices during last 7 days"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Draft"
|
||||
icon="terp-account"
|
||||
domain="[('state','=','draft')]"
|
||||
help = "Draft Invoices"/>
|
||||
<filter string="Current"
|
||||
icon="terp-check"
|
||||
domain="[('state','in',('draft','open'))]"
|
||||
help = "Draft and Open Invoices"/>
|
||||
<filter string="Pro-forma"
|
||||
icon="terp-account"
|
||||
icon="terp-check"
|
||||
domain="[('state','=','proforma'),('state','=','proforma2')]"
|
||||
help = "Pro-forma Invoices"/>
|
||||
<filter string="Current"
|
||||
icon="terp-account"
|
||||
domain="[('state', '=' ,'open')]"
|
||||
help = "open Invoices"/>
|
||||
<filter string="Done"
|
||||
icon="terp-account"
|
||||
icon="terp-dialog-close"
|
||||
domain="[('state','=','paid')]"
|
||||
help = "Done Invoices"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="partner_id"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="partner_id"/>
|
||||
<field name="user_id" widget="selection">
|
||||
<filter icon="terp-account"
|
||||
<filter icon="terp-dolar"
|
||||
string="My Invoices"
|
||||
help="My Invoices"
|
||||
domain="[('user_id','=',uid)]"/>
|
||||
</field>
|
||||
<field name="company_id" groups="base.group_multi_company" widget="selection"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By...">
|
||||
<filter string="Salesman" name='User' icon="terp-account" context="{'group_by':'user_id'}"/>
|
||||
<filter string="Partner" icon="terp-account" context="{'group_by':'partner_id'}"/>
|
||||
<filter string="Product" icon="terp-account" context="{'group_by':'product_id','set_visible':True}"/>
|
||||
<group expand="0" string="Group By...">
|
||||
<filter string="Salesman" name='User' icon="terp-personal" context="{'group_by':'user_id'}"/>
|
||||
<filter string="Partner" icon="terp-personal" context="{'group_by':'partner_id'}"/>
|
||||
<filter string="Product" icon="terp-accessories-archiver" context="{'group_by':'product_id','set_visible':True}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Company" icon="terp-account" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<filter string="State" icon="terp-account" context="{'group_by':'state'}"/>
|
||||
<filter string="Type" icon="terp-account" context="{'group_by':'type'}"/>
|
||||
<filter string="State" icon="terp-stock_effects-object-colorize" context="{'group_by':'state'}"/>
|
||||
<filter string="Type" icon="terp-stock_symbol-selection" context="{'group_by':'type'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Default UoM" icon="terp-account" context="{'group_by':'uom_name'}"/>
|
||||
<filter string="Journal" icon="terp-account" context="{'group_by':'journal_id'}"/>
|
||||
<filter string="Account" icon="terp-account" context="{'group_by':'account_id'}"/>
|
||||
<filter string="Journal" icon="terp-folder-orange" context="{'group_by':'journal_id'}"/>
|
||||
<filter string="Account" icon="terp-folder-orange" context="{'group_by':'account_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Category of Product" icon="terp-account" context="{'group_by':'categ_id'}"/>
|
||||
<filter string="Currency" icon="terp-account" context="{'group_by':'currency_id'}"/>
|
||||
<filter string="Force Period" icon="terp-account" context="{'group_by':'period_id'}"/>
|
||||
<filter string="Category of Product" icon="terp-stock_symbol-selection" context="{'group_by':'categ_id'}"/>
|
||||
<filter string="Force Period" icon="terp-go-month" context="{'group_by':'period_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Company" icon="terp-go-home" context="{'group_by':'company_id'}" groups="base.group_multi_company"/>
|
||||
<newline/>
|
||||
<filter string="Day" icon="terp-account" context="{'group_by':'day'}"/>
|
||||
<filter string="Month" icon="terp-account" context="{'group_by':'month'}"/>
|
||||
<filter string="Year" icon="terp-account" context="{'group_by':'year'}"/>
|
||||
<filter string="Day" icon="terp-go-today" context="{'group_by':'day'}"/>
|
||||
<filter string="Month" icon="terp-go-month" context="{'group_by':'month'}"/>
|
||||
<filter string="Year" icon="terp-go-year" context="{'group_by':'year'}"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="0" string="Extended options..." groups="base.group_extended">
|
||||
|
||||
<field name="date" string="Date Invoiced"/>
|
||||
<field name="product_id"/>
|
||||
<field name="account_id"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="type"/>
|
||||
<field name="currency_id" widget="selection"/>
|
||||
<field name="partner_bank" widget="selection"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="address_contact_id"/>
|
||||
<field name="account_id"/>
|
||||
<newline/>
|
||||
<field name="date_due"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="journal_id" widget="selection"/>
|
||||
<field name="period_id" widget="selection"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="state"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="address_invoice_id"/>
|
||||
<field name="product_id"/>
|
||||
<field name="company_id" groups="base.group_multi_company" widget="selection"/>
|
||||
<newline/>
|
||||
<field name="date" string="Date Invoiced"/>
|
||||
<field name="date_due"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
|
||||
@@ -207,15 +207,15 @@ class report_account_type_sales(osv.osv):
|
||||
_description = "Report of the Sales by Account Type"
|
||||
_auto = False
|
||||
_columns = {
|
||||
'name': fields.char('Year',size=64,required=False, readonly=True),
|
||||
'period_id': fields.many2one('account.period', 'Force Period',readonly=True),
|
||||
'product_id': fields.many2one('product.product', 'Product',readonly=True),
|
||||
'name': fields.char('Year', size=64, required=False, readonly=True),
|
||||
'period_id': fields.many2one('account.period', 'Force Period', readonly=True),
|
||||
'product_id': fields.many2one('product.product', 'Product', readonly=True),
|
||||
'quantity': fields.float('Quantity', readonly=True),
|
||||
'user_type': fields.many2one('account.account.type', 'Account Type', readonly=True),
|
||||
'amount_total': fields.float('Total', readonly=True),
|
||||
'currency_id': fields.many2one('res.currency', 'Currency', readonly=True),
|
||||
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
|
||||
('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
|
||||
('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')], 'Month', readonly=True),
|
||||
}
|
||||
_order = 'name desc,amount_total desc'
|
||||
|
||||
@@ -249,15 +249,15 @@ class report_account_sales(osv.osv):
|
||||
_description = "Report of the Sales by Account"
|
||||
_auto = False
|
||||
_columns = {
|
||||
'name': fields.char('Year',size=64,required=False, readonly=True),
|
||||
'period_id': fields.many2one('account.period', 'Force Period',readonly=True),
|
||||
'product_id': fields.many2one('product.product', 'Product',readonly=True),
|
||||
'name': fields.char('Year', size=64, required=False, readonly=True),
|
||||
'period_id': fields.many2one('account.period', 'Force Period', readonly=True),
|
||||
'product_id': fields.many2one('product.product', 'Product', readonly=True),
|
||||
'quantity': fields.float('Quantity', readonly=True),
|
||||
'account_id': fields.many2one('account.account', 'Account', readonly=True),
|
||||
'amount_total': fields.float('Total', readonly=True),
|
||||
'currency_id': fields.many2one('res.currency', 'Currency', readonly=True),
|
||||
'month':fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'), ('05','May'), ('06','June'),
|
||||
('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')],'Month',readonly=True),
|
||||
('07','July'), ('08','August'), ('09','September'), ('10','October'), ('11','November'), ('12','December')], 'Month', readonly=True),
|
||||
}
|
||||
_order = 'name desc,amount_total desc'
|
||||
|
||||
|
||||
@@ -153,8 +153,8 @@
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Sales by Account">
|
||||
<filter icon="terp-sale" string="This Year" domain="[('name','=',time.strftime('%%Y'))]" help="This year's Sales by type"/>
|
||||
<filter icon="terp-sale" string="This Month" domain="[('month','=',time.strftime('%%m'))]" help="This months' Sales by type"/>
|
||||
<filter icon="terp-go-year" string="This Year" domain="[('name','=',time.strftime('%%Y'))]" help="This year's Sales by type"/>
|
||||
<filter icon="terp-go-month" string="This Month" domain="[('month','=',time.strftime('%%m'))]" help="This months' Sales by type"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" select="1"/>
|
||||
<field name="month" select="1"/>
|
||||
@@ -221,8 +221,8 @@
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Sales by Account">
|
||||
<filter icon="terp-sale" string="This Year" domain="[('name','=',time.strftime('%%Y'))]" help="All Months Sales by type"/>
|
||||
<filter icon="terp-sale" string="This Month" domain="[('month','=',time.strftime('%%m'))]" help="This Months Sales by type"/>
|
||||
<filter icon="terp-go-year" string="This Year" domain="[('name','=',time.strftime('%%Y'))]" help="All Months Sales by type"/>
|
||||
<filter icon="terp-go-month" string="This Month" domain="[('month','=',time.strftime('%%m'))]" help="This Months Sales by type"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" select="1"/>
|
||||
<field name="month" select="1"/>
|
||||
|
||||
@@ -80,13 +80,13 @@ class aged_trial_report(rml_parse.rml_parse):
|
||||
self.cr.execute("""SELECT partner_id, SUM(debit-credit)
|
||||
FROM account_move_line AS line, account_account
|
||||
WHERE (line.account_id = account_account.id)
|
||||
AND (account_account.type =ANY(%s))
|
||||
AND (partner_id =ANY (%s))
|
||||
AND (account_account.type IN %s)
|
||||
AND (partner_id IN %s)
|
||||
AND ((reconcile_id IS NULL)
|
||||
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))
|
||||
AND (account_account.company_id = %s)
|
||||
AND account_account.active
|
||||
GROUP BY partner_id""" , (self.ACCOUNT_TYPE, partner_ids,form['date1'],form['company_id'],))
|
||||
GROUP BY partner_id""" , (tuple(self.ACCOUNT_TYPE), tuple(partner_ids),form['date1'],form['company_id'],))
|
||||
t = self.cr.fetchall()
|
||||
for i in t:
|
||||
totals[i[0]] = i[1]
|
||||
@@ -97,14 +97,14 @@ class aged_trial_report(rml_parse.rml_parse):
|
||||
self.cr.execute("""SELECT partner_id, SUM(debit-credit)
|
||||
FROM account_move_line AS line, account_account
|
||||
WHERE (line.account_id=account_account.id)
|
||||
AND (account_account.type =ANY (%s))
|
||||
AND (account_account.type IN %s)
|
||||
AND (COALESCE(date_maturity,date) < %s)
|
||||
AND (partner_id =ANY (%s))
|
||||
AND (partner_id IN %s)
|
||||
AND ((reconcile_id IS NULL)
|
||||
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))
|
||||
AND (account_account.company_id = %s)
|
||||
AND account_account.active
|
||||
GROUP BY partner_id""", (self.ACCOUNT_TYPE, form['date1'], partner_ids,form['date1'], form['company_id'],))
|
||||
GROUP BY partner_id""", (tuple(self.ACCOUNT_TYPE), form['date1'], tuple(partner_ids),form['date1'], form['company_id'],))
|
||||
t = self.cr.fetchall()
|
||||
for i in t:
|
||||
future_past[i[0]] = i[1]
|
||||
@@ -112,14 +112,14 @@ class aged_trial_report(rml_parse.rml_parse):
|
||||
self.cr.execute("""SELECT partner_id, SUM(debit-credit)
|
||||
FROM account_move_line AS line, account_account
|
||||
WHERE (line.account_id=account_account.id)
|
||||
AND (account_account.type =ANY (%s))
|
||||
AND (account_account.type IN %s)
|
||||
AND (COALESCE(date_maturity,date) > %s)
|
||||
AND (partner_id =ANY (%s))
|
||||
AND (partner_id IN %s)
|
||||
AND ((reconcile_id IS NULL)
|
||||
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))
|
||||
AND (account_account.company_id = %s)
|
||||
AND account_account.active
|
||||
GROUP BY partner_id""" , (self.ACCOUNT_TYPE, form['date1'], partner_ids, form['date1'], form['company_id'],))
|
||||
GROUP BY partner_id""" , (tuple(self.ACCOUNT_TYPE), form['date1'], tuple(partner_ids), form['date1'], form['company_id'],))
|
||||
t = self.cr.fetchall()
|
||||
for i in t:
|
||||
future_past[i[0]] = i[1]
|
||||
@@ -131,14 +131,14 @@ class aged_trial_report(rml_parse.rml_parse):
|
||||
self.cr.execute("""SELECT partner_id, SUM(debit-credit)
|
||||
FROM account_move_line AS line, account_account
|
||||
WHERE (line.account_id=account_account.id)
|
||||
AND (account_account.type =ANY (%s))
|
||||
AND (account_account.type IN %s)
|
||||
AND (COALESCE(date_maturity,date) BETWEEN %s AND %s)
|
||||
AND (partner_id =ANY (%s))
|
||||
AND (partner_id IN %s)
|
||||
AND ((reconcile_id IS NULL)
|
||||
OR (reconcile_id IN (SELECT recon.id FROM account_move_reconcile AS recon WHERE recon.create_date > %s )))
|
||||
AND (account_account.company_id = %s)
|
||||
AND account_account.active
|
||||
GROUP BY partner_id""" , (self.ACCOUNT_TYPE, form[str(i)]['start'], form[str(i)]['stop'],partner_ids ,form['date1'] ,form['company_id'],))
|
||||
GROUP BY partner_id""" , (tuple(self.ACCOUNT_TYPE), form[str(i)]['start'], form[str(i)]['stop'], tuple(partner_ids) ,form['date1'] ,form['company_id'],))
|
||||
|
||||
t = self.cr.fetchall()
|
||||
d = {}
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user