bzr revid: nch@tinyerp.com-20091127084026-qmju10co18vkywrd
This commit is contained in:
nch@tinyerp.com 2009-11-27 14:10:26 +05:30
commit 7d1b6aadb5
7179 changed files with 2265161 additions and 1278452 deletions

View File

@ -64,7 +64,7 @@
'project/project_demo.xml',
'project/analytic_account_demo.xml',
'demo/account_minimal.xml',
'account_unit_test.xml'
'account_unit_test.xml',
],
'installable': True,
'active': False,

View File

@ -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/>.
#
##############################################################################
@ -103,7 +103,7 @@ class account_payment_term_line(osv.osv):
_constraints = [
(_check_percent, _('Percentages for Payment Term Line must be between 0 and 1, Example: 0.02 for 2% '), ['value_amount']),
]
account_payment_term_line()
@ -418,7 +418,7 @@ class account_account(osv.osv):
line_obj = self.pool.get('account.move.line')
account_ids = self.search(cr, uid, [('id', 'child_of', ids)])
if line_obj.search(cr, uid, [('account_id', 'in', account_ids)]):
raise osv.except_osv(_('Error !'), _('You can not deactivate an account that contains account moves.'))
raise osv.except_osv(_('Error !'), _('You can not deactivate an account that contains Ledger Postings.'))
return super(account_account, self).write(cr, uid, ids, vals, context=context)
account_account()
@ -478,7 +478,8 @@ class account_journal(osv.osv):
'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.related('default_credit_account_id','company_id',type='many2one', relation="res.company", string="Company"),
#'company_id': fields.related('default_credit_account_id','company_id',type='many2one', relation="res.company", string="Company"),
'company_id': fields.many2one('res.company', 'Company', required=True,select=1),
'invoice_sequence_id': fields.many2one('ir.sequence', 'Invoice Sequence', \
help="The sequence used for invoice numbers in this journal."),
}
@ -486,6 +487,7 @@ class account_journal(osv.osv):
_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 create(self, cr, uid, vals, context={}):
journal_id = super(account_journal, self).create(cr, uid, vals, context)
@ -520,15 +522,17 @@ class account_fiscalyear(osv.osv):
'name': fields.char('Fiscal Year', size=64, required=True),
'code': fields.char('Code', size=6, required=True),
'company_id': fields.many2one('res.company', 'Company',
help="Keep empty if the fiscal year belongs to several companies."),
help="Keep empty if the fiscal year belongs to several companies.", required=True),
'date_start': fields.date('Start Date', required=True),
'date_stop': fields.date('End Date', required=True),
'period_ids': fields.one2many('account.period', 'fiscalyear_id', 'Periods'),
'state': fields.selection([('draft','Draft'), ('done','Done')], 'Status', readonly=True),
'state': fields.selection([('draft','Draft'), ('done','Done')], 'State', readonly=True,
help='When fiscal year is created. The state is \'Draft\'. At the end of the year it is in \'Done\' state.'),
}
_defaults = {
'state': lambda *a: 'draft',
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
_order = "date_start"
@ -587,10 +591,13 @@ class account_period(osv.osv):
'date_start': fields.date('Start of Period', required=True, states={'done':[('readonly',True)]}),
'date_stop': fields.date('End of Period', required=True, states={'done':[('readonly',True)]}),
'fiscalyear_id': fields.many2one('account.fiscalyear', 'Fiscal Year', required=True, states={'done':[('readonly',True)]}, select=True),
'state': fields.selection([('draft','Draft'), ('done','Done')], 'Status', readonly=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.many2one('res.company', 'Company', required=True)
}
_defaults = {
'state': lambda *a: 'draft',
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
_order = "date_start"
@ -669,8 +676,10 @@ class account_journal_period(osv.osv):
'period_id': fields.many2one('account.period', 'Period', required=True, ondelete="cascade"),
'icon': fields.function(_icon_get, method=True, string='Icon', type='char', size=32),
'active': fields.boolean('Active', required=True),
'state': fields.selection([('draft','Draft'), ('printed','Printed'), ('done','Done')], 'Status', required=True, readonly=True),
'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')
}
def _check(self, cr, uid, ids, context={}):
@ -699,6 +708,7 @@ class account_journal_period(osv.osv):
_defaults = {
'state': lambda *a: 'draft',
'active': lambda *a: True,
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
_order = "period_id"
@ -754,7 +764,8 @@ class account_move(osv.osv):
'ref': fields.char('Ref', size=64),
'period_id': fields.many2one('account.period', 'Period', required=True, states={'posted':[('readonly',True)]}),
'journal_id': fields.many2one('account.journal', 'Journal', required=True, states={'posted':[('readonly',True)]}),
'state': fields.selection([('draft','Draft'), ('posted','Posted')], 'Status', required=True, readonly=True),
'state': fields.selection([('draft','Draft'), ('posted','Posted')], 'State', required=True, 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.'),
'line_id': fields.one2many('account.move.line', 'move_id', 'Entries', states={'posted':[('readonly',True)]}),
'to_check': fields.boolean('To Be Verified'),
'partner_id': fields.related('line_id', 'partner_id', type="many2one", relation="res.partner", string="Partner"),
@ -770,6 +781,7 @@ class account_move(osv.osv):
('journal_pur_voucher','Journal Purchase'),
('journal_voucher','Journal Voucher'),
],'Type', readonly=True, select=True, states={'draft':[('readonly',False)]}),
'company_id': fields.many2one('res.company', 'Company', required=True),
}
_defaults = {
'name': lambda *a: '/',
@ -777,6 +789,7 @@ class account_move(osv.osv):
'period_id': _get_period,
'type' : lambda *a : 'journal_voucher',
'date': lambda *a:time.strftime('%Y-%m-%d'),
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
def _check_centralisation(self, cursor, user, ids):
@ -1413,11 +1426,11 @@ class account_tax(osv.osv):
for tax in taxes:
if (tax.type=='percent') and not tax.include_base_amount:
tax_parent_tot += tax.amount
for tax in taxes:
if (tax.type=='fixed') and not tax.include_base_amount:
cur_price_unit -= tax.amount
for tax in taxes:
if tax.type=='percent':
if tax.include_base_amount:
@ -1604,7 +1617,7 @@ class account_subscription(osv.osv):
'period_total': fields.integer('Number of Periods', required=True),
'period_nbr': fields.integer('Period', required=True),
'period_type': fields.selection([('day','days'),('month','month'),('year','year')], 'Period Type', required=True),
'state': fields.selection([('draft','Draft'),('running','Running'),('done','Done')], 'Status', required=True, readonly=True),
'state': fields.selection([('draft','Draft'),('running','Running'),('done','Done')], 'State', required=True, readonly=True),
'lines_id': fields.one2many('account.subscription.line', 'subscription_id', 'Subscription Lines')
}

View File

@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<assert model="account.move" search="[]" string="For all account moves, the state is valid implies that the sum of credits equals the sum of debits">
<assert model="account.move" search="[]" string="For all Ledger Postings, the state is valid implies that the sum of credits equals the sum of debits">
<test expr="not len(line_id) or line_id[0].state != 'valid' or (sum([l.debit - l.credit for l in line_id]) &lt;= 0.00001)"/>
</assert>

View File

@ -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/>.
#
##############################################################################
@ -126,7 +126,9 @@ class account_bank_statement(osv.osv):
'Entry lines', states={'confirm':[('readonly',True)]}),
'state': fields.selection([('draft', 'Draft'),('confirm', 'Confirmed')],
'State', required=True,
states={'confirm': [('readonly', True)]}, readonly="1"),
states={'confirm': [('readonly', True)]}, readonly="1",
help='When new statement is created the state will be \'Draft\'. \
\n* And after getting confirmation from the bank it will be in \'Confirmed\' state.'),
'currency': fields.function(_currency, method=True, string='Currency',
type='many2one', relation='res.currency'),
}
@ -211,7 +213,7 @@ class account_bank_statement(osv.osv):
'period_id': st.period_id.id,
'currency_id': st.currency.id,
}
amount = res_currency_obj.compute(cr, uid, st.currency.id,
company_currency_id, move.amount, context=context,
account=acc_cur)
@ -247,7 +249,7 @@ class account_bank_statement(osv.osv):
'statement_id': st.id,
'journal_id': st.journal_id.id,
'period_id': st.period_id.id,
'analytic_account_id':newline.analytic_id and newline.analytic_id.id or False,
'analytic_account_id':newline.analytic_id and newline.analytic_id.id or False,
}, context=context)
@ -280,7 +282,7 @@ class account_bank_statement(osv.osv):
context=context):
if line.state <> 'valid':
raise osv.except_osv(_('Error !'),
_('Account move line "%s" is not valid') % line.name)
_('Ledger Posting line "%s" is not valid') % line.name)
if move.reconcile_id and move.reconcile_id.line_ids:
torec += map(lambda x: x.id, move.reconcile_id.line_ids)
@ -499,7 +501,7 @@ class account_bank_statement_reconcile_line(osv.osv):
'account_id': fields.many2one('account.account', 'Account', required=True),
'line_id': fields.many2one('account.bank.statement.reconcile', 'Reconcile'),
'amount': fields.float('Amount', required=True),
'analytic_id': fields.many2one('account.analytic.account',"Analytic Account")
'analytic_id': fields.many2one('account.analytic.account',"Analytic Account")
}
_defaults = {
'name': lambda *a: 'Write-Off',
@ -586,13 +588,13 @@ class account_bank_statement_line(osv.osv):
'note': fields.text('Notes'),
'reconcile_amount': fields.function(_reconcile_amount,
string='Amount reconciled', method=True, type='float'),
'sequence': fields.integer('Sequence'),
'sequence': fields.integer('Sequence'),
}
_defaults = {
'name': lambda self,cr,uid,context={}: self.pool.get('ir.sequence').get(cr, uid, 'account.bank.statement.line'),
'date': lambda *a: time.strftime('%Y-%m-%d'),
'type': lambda *a: 'general',
'sequence': lambda *a: 10,
'sequence': lambda *a: 10,
}
account_bank_statement_line()

View File

@ -11,6 +11,7 @@
<field eval="'FY'+time.strftime('%Y')" name="code"/>
<field eval="time.strftime('%Y')+'-01-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-12-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<!--
@ -23,6 +24,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-01-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-01-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_2" model="account.period">
<field eval="'Feb.'+time.strftime('%Y')" name="name"/>
@ -30,6 +32,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-02-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-02-28'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_3" model="account.period">
<field eval="'Mar.'+time.strftime('%Y')" name="name"/>
@ -37,6 +40,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-03-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-03-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_4" model="account.period">
<field eval="'Apr.'+time.strftime('%Y')" name="name"/>
@ -44,6 +48,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-04-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-04-30'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_5" model="account.period">
<field eval="'May.'+time.strftime('%Y')" name="name"/>
@ -51,6 +56,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-05-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-05-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_6" model="account.period">
<field eval="'Jun.'+time.strftime('%Y')" name="name"/>
@ -58,6 +64,7 @@
<field eval="True" name="special"/>
<field eval="time.strftime('%Y')+'-06-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-06-30'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_7" model="account.period">
<field eval="'Jul.'+time.strftime('%Y')" name="name"/>
@ -65,6 +72,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-07-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-07-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_8" model="account.period">
<field eval="'Aug.'+time.strftime('%Y')" name="name"/>
@ -72,6 +80,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-08-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-08-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_9" model="account.period">
<field eval="'Sep.'+time.strftime('%Y')" name="name"/>
@ -79,6 +88,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-09-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-09-30'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_10" model="account.period">
<field eval="'Oct.'+time.strftime('%Y')" name="name"/>
@ -86,6 +96,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-10-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-10-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_11" model="account.period">
<field eval="'Nov.'+time.strftime('%Y')" name="name"/>
@ -93,6 +104,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-11-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-11-30'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="period_12" model="account.period">
<field eval="'Dec.'+time.strftime('%Y')" name="name"/>
@ -100,6 +112,7 @@
<field name="fiscalyear_id" ref="data_fiscalyear"/>
<field eval="time.strftime('%Y')+'-12-01'" name="date_start"/>
<field eval="time.strftime('%Y')+'-12-31'" name="date_stop"/>
<field name="company_id" ref="base.main_company"/>
</record>
</data>

View File

@ -52,7 +52,7 @@
<form string="Invoice Line">
<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)" select="1"/>
<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, {'company_id': parent.company_id})"/>
<field name="uos_id"/>
<field name="quantity" select="1"/>
<field name="price_unit" select="1"/>
@ -117,6 +117,7 @@
<field name="name"/>
<field name="type"/>
<field name="number"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="partner_id" groups="base.group_user"/>
<field name="amount_untaxed" sum="Untaxed amount"/>
<field name="amount_total" sum="Total amount"/>
@ -141,7 +142,7 @@
<field domain="[('type', '=', 'purchase')]" name="journal_id" select="2"/>
<field name="type" readonly="1" select="2"/>
<field name="currency_id" on_change="onchange_currency_id(currency_id)" select="2"/>
<field name="partner_id" domain="[('supplier','=', 1)]" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank)" select="1" context="{'default_customer': 0}" />
<field name="partner_id" domain="[('supplier','=', 1)]" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank,company_id)" select="1" context="{'default_customer': 0}"/>
<field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
<field domain="[('type','&lt;&gt;','view'), ('company_id', '=', company_id),('journal_id','=',journal_id)]" name="account_id"/>
</group>
@ -154,7 +155,7 @@
<field name="check_total" required="2"/>
<field colspan="4" default_get="{'check_total': check_total, 'invoice_line': invoice_line, 'address_invoice_id': address_invoice_id, 'partner_id': partner_id, 'price_type': 'price_type' in dir() and price_type or False}" name="invoice_line" nolabel="1">
<tree string="Invoice lines" editable="top">
<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)"/>
<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, {'company_id': parent.company_id})"/>
<field domain="[('company_id', '=', parent.company_id), ('journal_id', '=', parent.journal_id), ('type', '&lt;&gt;', 'view')]" name="account_id" on_change="onchange_account_id(parent.fiscal_position,account_id)"/>
<field name="invoice_line_tax_id" view_mode="2" context="{'type':parent.type}" domain="[('parent_id','=',False)]"/>
<field domain="[('type','&lt;&gt;','view'), ('company_id', '=', parent.company_id)]" name="account_analytic_id"/>
@ -196,7 +197,7 @@
</group>
</page>
<page string="Other Info">
<field name="company_id" widget="selection"/>
<field name="company_id" on_change="onchange_company_id(company_id,partner_id,type,invoice_line)" widget="selection" groups="base.group_multi_company"/>
<field name="fiscal_position" groups="base.group_extended" widget="selection"/>
<newline/>
<field name="payment_term" widget="selection"/>
@ -242,7 +243,7 @@
<field name="journal_id" select="2" groups="base.group_user"/>
<field name="type" readonly="1" select="2"/>
<field name="number" select="1"/>
<field name="partner_id" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term)" select="1" groups="base.group_user"/>
<field name="partner_id" on_change="onchange_partner_id(type,partner_id,date_invoice,payment_term, partner_bank,company_id)" select="1" groups="base.group_user"/>
<field domain="[('partner_id','=',partner_id)]" name="address_invoice_id"/>
<field name="currency_id" on_change="onchange_currency_id(currency_id)" select="2"/>
<field name="date_invoice" select="1"/>
@ -287,7 +288,7 @@
</group>
</page>
<page string="Other Info">
<field name="company_id" widget="selection"/>
<field name="company_id" on_change="onchange_company_id(company_id,partner_id,type,invoice_line)" widget="selection"/>
<field name="fiscal_position" groups="base.group_extended,base.group_user" widget="selection"/>
<newline/>
<field name="date_due" select="1"/>
@ -326,7 +327,7 @@
<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','=','proforma')]" help="Proforma Invoices"/>
<filter icon="terp-account" string="Proforma" domain="[('state','=','proforma2')]" help="Proforma Invoices"/>
<filter icon="terp-account" string="Unpaid" domain="[('state','in',('open','cancel'))]" help="Unpaid Invoices"/>
<separator orientation="vertical"/>
<field name="number" select='1'/>
@ -345,7 +346,7 @@
<field name="view_mode">tree,form,calendar,graph</field>
<field name="view_id" ref="invoice_tree"/>
<field name="context">{'type':'out_invoice'}</field>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -368,7 +369,7 @@
<field eval="False" name="view_id"/>
<field name="domain">[('type','=','out_invoice')]</field>
<field name="context">{'type':'out_invoice'}</field>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree1_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -391,7 +392,6 @@
<field name="domain">[('type','=','out_invoice')]</field>
<field name="context">{'type':'out_invoice'}</field>
</record>
<menuitem action="action_invoice_tree1_new" sequence="50" id="menu_action_invoice_tree1_new" parent="menu_action_invoice_tree1"/>
<record id="action_invoice_tree2" model="ir.actions.act_window">
<field name="name">Supplier Invoices</field>
@ -401,7 +401,7 @@
<field eval="False" name="view_id"/>
<field name="domain">[('type','=','in_invoice')]</field>
<field name="context">{'type':'in_invoice'}</field>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<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"/>
<record id="action_invoice_tree2_new" model="ir.actions.act_window">
@ -413,7 +413,6 @@
<field name="domain">[('type','=','in_invoice')]</field>
<field name="context">{'type':'in_invoice'}</field>
</record>
<menuitem action="action_invoice_tree2_new" sequence="50" id="menu_action_invoice_tree2_new" parent="menu_action_invoice_tree2"/>
<record id="action_invoice_tree3" model="ir.actions.act_window">
<field name="name">Customer Refunds</field>
@ -423,7 +422,7 @@
<field eval="False" name="view_id"/>
<field name="domain">[('type','=','out_refund')]</field>
<field name="context">{'type':'out_refund'}</field>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<menuitem action="action_invoice_tree3" id="menu_action_invoice_tree3" parent="account.menu_finance_invoice"/>
@ -436,7 +435,6 @@
<field name="domain">[('type','=','out_refund')]</field>
<field name="context">{'type':'out_refund'}</field>
</record>
<menuitem action="action_invoice_tree3_new" sequence="50" id="menu_action_invoice_tree3_new" parent="menu_action_invoice_tree3"/>
<record id="action_invoice_tree4" model="ir.actions.act_window">
<field name="name">Supplier Refunds</field>
@ -446,7 +444,7 @@
<field eval="False" name="view_id"/>
<field name="domain">[('type','=','in_refund')]</field>
<field name="context">{'type':'in_refund'}</field>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<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"/>
@ -459,7 +457,6 @@
<field name="domain">[('type','=','in_refund')]</field>
<field name="context">{'type':'in_refund'}</field>
</record>
<menuitem action="action_invoice_tree4_new" sequence="50" id="menu_action_invoice_tree4_new" parent="menu_action_invoice_tree4"/>
<record id="action_invoice_tree5" model="ir.actions.act_window">
@ -470,7 +467,7 @@
<field name="domain">[('state','=','draft'),('type','=','out_invoice')]</field>
<field name="context">{'type':'out_invoice'}</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree5_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -484,8 +481,6 @@
<field name="act_window_id" ref="action_invoice_tree5"/>
</record>
<menuitem action="action_invoice_tree5" id="menu_invoice_draft" parent="menu_action_invoice_tree1" groups="base.group_extended_menu"/>
<record id="action_invoice_tree6" model="ir.actions.act_window">
<field name="name">PRO-FORMA Customer Invoices</field>
<field name="res_model">account.invoice</field>
@ -494,7 +489,7 @@
<field name="domain">[('state','=','proforma2'),('type','=','out_invoice')]</field>
<field name="context">{'type':'out_invoice'}</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree6_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -508,8 +503,6 @@
<field name="act_window_id" ref="action_invoice_tree6"/>
</record>
<menuitem action="action_invoice_tree6" id="menu_action_invoice_tree6" parent="menu_action_invoice_tree1" groups="base.group_extended_menu"/>
<record id="action_invoice_tree7" model="ir.actions.act_window">
<field name="name">Unpaid Customer Invoices</field>
<field name="res_model">account.invoice</field>
@ -518,7 +511,7 @@
<field name="domain">[('state','not in',['draft','cancel']),('reconciled','=',False),('type','=','out_invoice')]</field>
<field name="context">{'type':'out_invoice'}</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree7_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -532,8 +525,6 @@
<field name="act_window_id" ref="action_invoice_tree7"/>
</record>
<menuitem action="action_invoice_tree7" id="menu_action_invoice_tree7" parent="menu_action_invoice_tree1" groups="base.group_extended_menu"/>
<record id="action_invoice_tree8" model="ir.actions.act_window">
<field name="name">Draft Supplier Invoices</field>
<field name="res_model">account.invoice</field>
@ -542,7 +533,7 @@
<field name="domain">[('state','=','draft'),('type','=','in_invoice')]</field>
<field name="context">{'type':'in_invoice'}</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree8_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -556,8 +547,6 @@
<field name="act_window_id" ref="action_invoice_tree8"/>
</record>
<menuitem action="action_invoice_tree8" id="menu_action_invoice_tree8" parent="menu_action_invoice_tree2" groups="base.group_extended_menu"/>
<record id="action_invoice_tree9" model="ir.actions.act_window">
<field name="name">Unpaid Supplier Invoices</field>
<field name="res_model">account.invoice</field>
@ -566,7 +555,7 @@
<field name="domain">[('state','not in',['draft','cancel']),('reconciled','=',False),('type','=','in_invoice')]</field>
<field name="context">{'type':'in_invoice'}</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree9_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -580,8 +569,6 @@
<field name="act_window_id" ref="action_invoice_tree9"/>
</record>
<menuitem action="action_invoice_tree9" id="menu_action_invoice_tree9" parent="menu_action_invoice_tree2" groups="base.group_extended_menu"/>
<record id="action_invoice_tree10" model="ir.actions.act_window">
<field name="name">Draft Customer Refunds</field>
<field name="res_model">account.invoice</field>
@ -590,7 +577,7 @@
<field name="domain">[('state','=','draft'),('type','=','out_refund')]</field>
<field name="context">{'type':'out_refund'}</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree10_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -604,8 +591,6 @@
<field name="act_window_id" ref="action_invoice_tree10"/>
</record>
<menuitem action="action_invoice_tree10" id="menu_action_invoice_tree10" parent="menu_action_invoice_tree3" groups="base.group_extended_menu"/>
<record id="action_invoice_tree11" model="ir.actions.act_window">
<field name="name">Unpaid Customer Refunds</field>
<field name="res_model">account.invoice</field>
@ -614,7 +599,7 @@
<field name="domain">[('state','not in',['draft','cancel']),('reconciled','=',False),('type','=','out_refund')]</field>
<field name="context">{'type':'out_refund'}</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree11_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -628,8 +613,6 @@
<field name="act_window_id" ref="action_invoice_tree11"/>
</record>
<menuitem action="action_invoice_tree11" id="menu_action_invoice_tree11" parent="menu_action_invoice_tree3" groups="base.group_extended_menu"/>
<record id="action_invoice_tree12" model="ir.actions.act_window">
<field name="name">Draft Supplier Refunds</field>
<field name="res_model">account.invoice</field>
@ -638,7 +621,7 @@
<field name="domain">[('state','=','draft'),('type','=','in_refund')]</field>
<field name="context">{'type':'in_refund'}</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree12_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -652,8 +635,6 @@
<field name="act_window_id" ref="action_invoice_tree12"/>
</record>
<menuitem action="action_invoice_tree12" id="menu_action_invoice_tree12" parent="menu_action_invoice_tree4" groups="base.group_extended_menu"/>
<record id="action_invoice_tree13" model="ir.actions.act_window">
<field name="name">Unpaid Supplier Refunds</field>
<field name="res_model">account.invoice</field>
@ -662,7 +643,7 @@
<field name="domain">[('state','not in',['draft','cancel']),('reconciled','=',False),('type','=','in_refund')]</field>
<field name="context">{'type':'in_refund'}</field>
<field name="filter" eval="True"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
<field name="search_view_id" ref="view_account_invoice_filter"/>
</record>
<record id="action_invoice_tree13_view1" model="ir.actions.act_window.view">
<field eval="1" name="sequence"/>
@ -676,8 +657,6 @@
<field name="act_window_id" ref="action_invoice_tree13"/>
</record>
<menuitem action="action_invoice_tree13" id="menu_action_invoice_tree13" parent="menu_action_invoice_tree4" groups="base.group_extended_menu"/>
<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"/>
<act_window domain="[('journal_id','=',active_id),('state','!=','draft'),('reconciled','=',False)]" id="act_account_journal_2_account_invoice_opened" name="Unpaid invoices" res_model="account.invoice" src_model="account.journal"/>

View File

@ -12,7 +12,7 @@
<menuitem id="menu_finance_legal_statement" name="Legal Statements" parent="account.menu_finance" sequence="8"/>
<menuitem id="menu_generic_report" name="Generic Reports" parent="account.menu_finance_legal_statement" sequence="8"/>
<menuitem id="menu_finance_entries" name="Entries Encoding" parent="account.menu_finance" sequence="2"
<menuitem id="menu_finance_entries" name="Making Entries" parent="account.menu_finance" sequence="2"
groups="group_account_user"/>
<menuitem id="account.menu_finance_recurrent_entries" name="Recurrent Entries" parent="account.menu_finance_entries" sequence="15"/>

View File

@ -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,12 +46,12 @@ class account_move_line(osv.osv):
if context.get('date_from', False) and context.get('date_to', False):
where_move_lines_by_date = " AND " +obj+".move_id in ( select id from account_move where date >= '" +context['date_from']+"' AND date <= '"+context['date_to']+"')"
if state:
if state.lower() not in ['all']:
where_move_state= " AND "+obj+".move_id in (select id from account_move where account_move.state = '"+state+"')"
if context.get('periods', False):
ids = ','.join([str(x) for x in context['periods']])
return obj+".state<>'draft' AND "+obj+".period_id in (SELECT id from account_period WHERE fiscalyear_id in (%s) AND id in (%s)) %s %s" % (fiscalyear_clause, ids,where_move_state,where_move_lines_by_date)
@ -292,7 +292,7 @@ class account_move_line(osv.osv):
if not len(res):
return [('id', '=', '0')]
return [('id', 'in', [x[0] for x in res])]
def _invoice_search(self, cursor, user, obj, name, args):
if not len(args):
return []
@ -377,7 +377,8 @@ class account_move_line(osv.osv):
'analytic_lines': fields.one2many('account.analytic.line', 'move_id', 'Analytic lines'),
'centralisation': fields.selection([('normal','Normal'),('credit','Credit Centralisation'),('debit','Debit Centralisation')], 'Centralisation', size=6),
'balance': fields.function(_balance, fnct_search=_balance_search, method=True, string='Balance'),
'state': fields.selection([('draft','Draft'), ('valid','Valid')], 'Status', readonly=True),
'state': fields.selection([('draft','Draft'), ('valid','Valid')], 'State', 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.'),
'tax_code_id': fields.many2one('account.tax.code', 'Tax Account', help="The Account can either be a base tax code or tax code account."),
'tax_amount': fields.float('Tax/Base Amount', digits=(16,int(tools.config['price_accuracy'])), select=True, help="If the Tax account is tax code account, this field will contain the taxed amount.If the tax account is base tax code,\
this field will contain the basic amount(without tax)."),
@ -387,6 +388,7 @@ class account_move_line(osv.osv):
'analytic_account_id' : fields.many2one('account.analytic.account', 'Analytic Account'),
#TODO: remove this
'amount_taxed':fields.float("Taxed Amount",digits=(16,int(tools.config['price_accuracy']))),
'company_id': fields.related('move_id','company_id',type='many2one',object='res.company',string='Company')
}
@ -421,6 +423,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', c)
}
_order = "date desc,id desc"
_sql_constraints = [
@ -550,7 +553,7 @@ class account_move_line(osv.osv):
def reconcile(self, cr, uid, ids, type='auto', writeoff_acc_id=False, writeoff_period_id=False, writeoff_journal_id=False, context={}):
id_set = ','.join(map(str, ids))
lines = self.browse(cr, uid, ids, context=context)
unrec_lines = filter(lambda x: not x['reconcile_id'], lines)
credit = debit = 0.0
@ -826,7 +829,7 @@ class account_move_line(osv.osv):
if res:
if res[1] != 'draft':
raise osv.except_osv(_('UserError'),
_('The account move (%s) for centralisation ' \
_('The Ledger Posting (%s) for centralisation ' \
'has been confirmed!') % res[2])
vals['move_id'] = res[0]

View File

@ -16,6 +16,7 @@
<field name="code" select="1"/>
<field name="date_start"/>
<field name="date_stop"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="end_journal_period_id"/>
<separator colspan="4" string="Periods"/>
<field colspan="4" name="period_ids" nolabel="1" widget="one2many_list">
@ -74,6 +75,7 @@
<field name="code" select="1"/>
<field name="date_start"/>
<field name="date_stop"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="fiscalyear_id"/>
<field name="special"/>
<separator colspan="4" string="States"/>
@ -120,7 +122,7 @@
<field name="name" select="1" colspan="4"/>
<field name="code" select="1"/>
<field name="parent_id"/>
<field name="company_id" select="2" widget="selection"/>
<field name="company_id" select="2" widget="selection" groups="base.group_multi_company"/>
<field name="user_type" select="1"/>
</group>
<notebook colspan="4">
@ -166,6 +168,7 @@
<field name="debit"/>
<field name="credit"/>
<field name="balance"/>
<field name="company_id" groups="base.group_multi_company"/>
<field name="company_currency_id"/>
<field name="type" invisible="1"/>
</tree>
@ -239,7 +242,7 @@
<tree string="Account Journal">
<field name="code"/>
<field name="name"/>
<field name="company_id"/>
<field name="company_id" groups="base.group_multi_company"/>
</tree>
</field>
</record>
@ -267,6 +270,7 @@
<field name="default_debit_account_id" attrs="{'required':[('type','=','cash')]}" domain="[('type','&lt;&gt;','view'),('type','&lt;&gt;','consolidation')]"/>
<field name="default_credit_account_id" attrs="{'required':[('type','=','cash')]}" domain="[('type','&lt;&gt;','view'),('type','&lt;&gt;','consolidation')]"/>
<field name="user_id" groups="base.group_extended"/>
<field name="company_id" groups="base.group_multi_company"/>
<newline/>
<field name="centralisation"/>
<field name="group_invoice_lines"/>
@ -332,7 +336,7 @@
<page string="Entry encoding">
<field colspan="4" name="line_ids" nolabel="1">
<tree editable="bottom" string="Statement lines">
<field name="sequence"/>
<field name="sequence"/>
<field name="date"/>
<field name="ref"/>
<field name="name"/>
@ -354,7 +358,7 @@
<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"/>
<field name="ref"/>
<field name="sequence"/>
<field name="sequence"/>
<separator colspan="4" string="Notes"/>
<field colspan="4" name="note" nolabel="1"/>
</form>
@ -388,9 +392,8 @@
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('state','=','draft')]</field>
<field name="filter" eval="True"/>
<field name="filter" eval="True"/>
</record>
<menuitem action="action_bank_statement_draft_tree" id="menu_bank_statement_draft_tree" parent="account.menu_bank_statement_tree" groups="base.group_extended_menu"/>
<record id="action_bank_statement_tree2" model="ir.actions.act_window">
<field name="name">New Statement</field>
@ -398,7 +401,6 @@
<field name="view_type">form</field>
<field name="view_mode">form,tree</field>
</record>
<menuitem action="action_bank_statement_tree2" id="menu_bank_statement_tree2" parent="menu_bank_statement_tree"/>
<record id="view_bank_statement_reconcile" model="ir.ui.view">
<field name="name">account.bank.statement.reconcile.form</field>
@ -456,7 +458,6 @@
<field name="code" select="1"/>
<field name="sequence"/>
<field name="sign"/>
<field name="close_method"/>
<field name="partner_account"/>
</form>
@ -536,7 +537,7 @@
<form string="Account Tax Code">
<field name="name" select="1"/>
<field name="code" select="1"/>
<field name="company_id" widget="selection"/>
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
<field name="notprintable"/>
<field name="parent_id" select="1"/>
<field name="sign"/>
@ -583,7 +584,7 @@
<form string="Account Tax">
<group colspan="4" col="6">
<field name="name" select="1"/>
<field name="company_id" widget="selection"/>
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
<field name="description" select="1"/>
<field name="active" select="2"/>
<field name="tax_group" select="1"/>
@ -655,7 +656,7 @@
<field eval="True" name="object"/>
</record>
<wizard id="action_move_journal_line_form" menu="False" model="account.move.line" name="account.move.journal" string="Entries Encoding by Line"/>
<wizard id="action_move_journal_line_form" menu="False" model="account.move.line" name="account.move.journal" string="Making 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"/>
<!--
@ -710,6 +711,7 @@
<field name="debit" select="2"/>
<field name="credit" select="2"/>
<field name="company_id" required="1" groups="base.group_multi_company"/>
<separator colspan="4" string="Optional Information"/>
<field name="currency_id"/>
@ -790,22 +792,22 @@
</form>
</field>
</record>
<record id="view_account_move_line_filter" model="ir.ui.view">
<record id="view_account_move_line_filter" model="ir.ui.view">
<field name="name">account.move.line.select</field>
<field name="model">account.move.line</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Search Move Lines">
<group col='10' colspan='4'>
<filter icon="terp-account" string="Draft" domain="[('state','=','draft')]" help="Draft Move Lines"/>
<search string="Search Entry Lines">
<group col='10' colspan='4'>
<filter icon="terp-account" string="Draft" domain="[('state','=','draft')]" help="Draft Move Lines"/>
<filter icon="terp-account" string="Posted" domain="[('state','=','valid')]" help="Posted Move Lines"/>
<separator orientation="vertical"/>
<field name="date" select='1'/>
<field name="account_id" select='1'/>
<field name="partner_id" select='1'/>
<field name="balance" string="Debit/Credit" select='1'/>
</group>
<separator orientation="vertical"/>
<field name="date" select='1'/>
<field name="account_id" select='1'/>
<field name="partner_id" select='1'/>
<field name="balance" string="Debit/Credit" select='1'/>
</group>
</search>
</field>
</record>
@ -816,9 +818,9 @@
<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="search_view_id" ref="view_account_move_line_filter"/>
</record>
<record id="action_view_move_line" model="ir.actions.act_window">
<field name="name">Lines to reconcile</field>
<field name="res_model">account.move.line</field>
@ -827,7 +829,7 @@
<field name="domain">[('account_id.reconcile', '=', True),('reconcile_id','=',False)]</field>
<field eval="False" name="view_id"/>
<field eval="True" name="filter"/>
<field name="search_view_id" ref="view_account_move_line_filter"/>
<field name="search_view_id" ref="view_account_move_line_filter"/>
</record>
<!--
@ -864,6 +866,7 @@
<field name="name" select="1" readonly="True"/>
<field name="period_id" select="2"/>
<field name="journal_id" select="1"/>
<field name="company_id" required="1" groups="base.group_multi_company"/>
<field name="date" select="1"/>
<field name="ref" select="1"/>
<field name="to_check" select="2"/>
@ -881,8 +884,8 @@
<field name="debit" select="1"/>
<field name="credit" select="1"/>
<field name="date" select="1"/>
<field name="date" select="1"/>
<separator colspan="4" string="Optional Information"/>
<field name="currency_id"/>
<field name="amount_currency"/>
@ -927,21 +930,21 @@
</field>
</record>
<record id="view_account_move_filter" model="ir.ui.view">
<record id="view_account_move_filter" model="ir.ui.view">
<field name="name">account.move.select</field>
<field name="model">account.move</field>
<field name="type">search</field>
<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"/>
<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"/>
<separator orientation="vertical"/>
<field name="date" select='1'/>
<field name="name" select='1'/>
<field name="journal_id" select='1'/>
<field name="partner_id" select='1'/>
</group>
<separator orientation="vertical"/>
<field name="date" select='1'/>
<field name="name" select='1'/>
<field name="journal_id" select='1'/>
<field name="partner_id" select='1'/>
</group>
</search>
</field>
</record>
@ -958,12 +961,12 @@
<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">Entries Encoding by Move</field>
<field name="name">Making Entries by Move</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"/>
<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"/>
@ -1088,7 +1091,7 @@
<!--
TODO:
Print Journal (and change state)
Close Journal (and verify that there is no draft move lines)
Close Journal (and verify that there is no draft Entry Lines)
-->
<record id="view_journal_period_tree" model="ir.ui.view">
@ -1101,6 +1104,7 @@
<field name="period_id"/>
<field name="journal_id"/>
<field name="state"/>
<field name="company_id" groups="base.group_multi_company"/>
</tree>
</field>
</record>
@ -1341,9 +1345,8 @@
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('state','=','running')]</field>
<field name="filter" eval="True"/>
<field name="filter" eval="True"/>
</record>
<menuitem action="action_subscription_form_running" id="menu_action_subscription_form_running" parent="menu_action_subscription_form" groups="base.group_extended_menu"/>
<record id="action_subscription_form_new" model="ir.actions.act_window">
<field name="name">New Subscription</field>
@ -1352,7 +1355,6 @@
<field name="view_mode">form,tree</field>
<field name="view_id" ref="view_subscription_form"/>
</record>
<menuitem action="action_subscription_form_new" id="menu_action_subscription_form_new" parent="menu_action_subscription_form"/>
<record id="view_subscription_line_form_complete" model="ir.ui.view">
<field name="name">account.subscription.line.form</field>
@ -1712,7 +1714,7 @@
<form string="Generate Chart of Accounts from a Chart Template">
<separator col="4" colspan="4" string="Generate Chart of Accounts from a Chart Template"/>
<label align="0.0" string="This will automatically configure your chart of accounts, bank accounts, taxes and journals according to the selected template" colspan="4"/>
<field name="company_id" widget="selection"/>
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
<field name ="code_digits" />
<field name="chart_template_id"/>
<field name ="seq_journal" />
@ -1757,11 +1759,11 @@
<field name="balance" operator="+"/>
</graph>
</field>
</record>
</record>
<!-- Fiscal Position Templates -->
<!-- Fiscal Position Templates -->
<record id="view_account_position_template_form" model="ir.ui.view">
<record id="view_account_position_template_form" model="ir.ui.view">
<field name="name">account.fiscal.position.template.form</field>
<field name="model">account.fiscal.position.template</field>
<field name="type">form</field>

View File

@ -85,10 +85,10 @@
<!-- account.move validate -->
<wizard id="wizard_validate_account_moves" menu="False" model="account.move" name="account.move.validate" string="Validate Account Moves"/>
<wizard id="wizard_validate_account_moves" menu="False" model="account.move" name="account.move.validate" string="Validate Ledger Postings"/>
<menuitem action="wizard_validate_account_moves" id="menu_validate_account_moves" parent="account.menu_finance_periodical_processing" type="wizard"/>
<wizard id="wizard_validate_account_moves_line" menu="True" model="account.move.line" name="account.move_line.validate" string="Validate Account Moves"/>
<wizard id="wizard_validate_account_moves_line" menu="True" model="account.move.line" name="account.move_line.validate" string="Validate Ledger Postings"/>
<!-- Use Models -->
<wizard string="Create Entries From Models" model="account.model" name="account_use_models" menu="False" id="wizard_account_use_model"/>

View File

@ -1,40 +1,40 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record model="ir.ui.view" id="view_company_inherit_form">
<field name="name">res.company.form.inherit</field>
<field name="inherit_id" ref="base.view_company_form"/>
<field name="model">res.company</field>
<field name="type">form</field>
<field name="arch" type="xml">
<notebook>
<data>
<record model="ir.ui.view" id="view_company_inherit_form">
<field name="name">res.company.form.inherit</field>
<field name="inherit_id" ref="base.view_company_form"/>
<field name="model">res.company</field>
<field name="type">form</field>
<field name="arch" type="xml">
<notebook>
<page string="Overdue Payments" position="inside">
<separator string="Overdue Payments Message" colspan="4"/>
<field name="overdue_msg" nolabel="1" colspan ="4"/>
<separator string="Overdue Payments Message" colspan="4"/>
<field name="overdue_msg" nolabel="1" colspan ="4"/>
</page>
</notebook>
</field>
</record>
<!-- Wizard for Configuration of Overdue Payments -->
<record model="ir.ui.view" id="wizard_company_setup_form">
<field name="name">wizard.company.setup.form</field>
<field name="model">wizard.company.setup</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Overdue Payment Report Message">
<field name="company_id" select="1" on_change="onchange_company_id(company_id)"/>
<field name="partner_id" select="1" readonly="1"/>
<separator string="Message" colspan="4"/>
<field name="overdue_msg" nolabel="1" colspan="4"/>
<group col="2" colspan="4">
<button icon="gtk-cancel" special="cancel" type="object" name="action_cancel" string="Cancel"/>
<button icon="gtk-ok" name="action_create" string="Create" type="object"/>
</group>
</form>
</field>
</record>
</record>
<!-- Wizard for Configuration of Overdue Payments -->
<record model="ir.ui.view" id="wizard_company_setup_form">
<field name="name">wizard.company.setup.form</field>
<field name="model">wizard.company.setup</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Overdue Payment Report Message">
<field name="company_id" select="1" on_change="onchange_company_id(company_id)" groups="base.group_multi_company"/>
<field name="partner_id" select="1" readonly="1"/>
<separator string="Message" colspan="4"/>
<field name="overdue_msg" nolabel="1" colspan="4"/>
<group col="2" colspan="4">
<button icon="gtk-cancel" special="cancel" type="object" name="action_cancel" string="Cancel"/>
<button icon="gtk-ok" name="action_create" string="Create" type="object"/>
</group>
</form>
</field>
</record>
<record id="action_wizard_company_setup_form" model="ir.actions.act_window">
<field name="name">Overdue Payment Report Message</field>
@ -52,5 +52,5 @@
<field name="note">Specify The Message for the Overdue Payment Report.</field>
<field name="action_id" ref="action_wizard_company_setup_form"/>
</record>
</data>
</data>
</openerp>

5928
addons/account/i18n/ar.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5960
addons/account/i18n/bg.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5928
addons/account/i18n/bs.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

6079
addons/account/i18n/ca.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5928
addons/account/i18n/cs.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5942
addons/account/i18n/da.po Normal file

File diff suppressed because it is too large Load Diff

6070
addons/account/i18n/de.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

6415
addons/account/i18n/el.po Normal file

File diff suppressed because it is too large Load Diff

6016
addons/account/i18n/es.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5968
addons/account/i18n/es_EC.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5933
addons/account/i18n/et.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5942
addons/account/i18n/fa.po Normal file

File diff suppressed because it is too large Load Diff

6181
addons/account/i18n/fi.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

6090
addons/account/i18n/fr.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5936
addons/account/i18n/gl.po Normal file

File diff suppressed because it is too large Load Diff

5947
addons/account/i18n/gu.po Normal file

File diff suppressed because it is too large Load Diff

5928
addons/account/i18n/hr.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5928
addons/account/i18n/hu.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5931
addons/account/i18n/id.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5944
addons/account/i18n/it.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5929
addons/account/i18n/kab.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5961
addons/account/i18n/ko.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5998
addons/account/i18n/lt.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

6013
addons/account/i18n/lv.po Normal file

File diff suppressed because it is too large Load Diff

5929
addons/account/i18n/mn.po Normal file

File diff suppressed because it is too large Load Diff

5933
addons/account/i18n/nb.po Normal file

File diff suppressed because it is too large Load Diff

5996
addons/account/i18n/nl.po Normal file

File diff suppressed because it is too large Load Diff

View File

@ -4,16 +4,17 @@
#
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 15:34:14+0000\n"
"PO-Revision-Date: 2009-08-28 15:34:14+0000\n"
"Last-Translator: <>\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2009-04-24 15:00+0000\n"
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-11-17 05:00+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
#: field:account.tax.template,description:0
@ -68,7 +69,9 @@ msgstr ""
#. module: account
#: help:product.category,property_account_income_categ:0
msgid "This account will be used to value incoming stock for the current product category"
msgid ""
"This account will be used to value incoming stock for the current product "
"category"
msgstr ""
#. module: account
@ -160,7 +163,10 @@ msgstr ""
#. module: account
#: help:account.payment.term.line,days2:0
msgid "Day of the month, set -1 for the last day of the current month. If it's positive, it gives the day of the next month. Set 0 for net days (otherwise it's based on the beginning of the month)."
msgid ""
"Day of the month, set -1 for the last day of the current month. If it's "
"positive, it gives the day of the next month. Set 0 for net days (otherwise "
"it's based on the beginning of the month)."
msgstr ""
#. module: account
@ -255,13 +261,21 @@ msgstr ""
#. module: account
#: help:account.journal,view_id:0
msgid "Gives the view used when writing or browsing entries in this journal. The view tell 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."
msgid ""
"Gives the view used when writing or browsing entries in this journal. The "
"view tell 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."
msgstr ""
#. module: account
#: help:account.invoice,date_due:0
#: help:account.invoice,payment_term:0
msgid "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."
msgid ""
"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."
msgstr ""
#. module: account
@ -468,7 +482,9 @@ msgstr ""
#. module: account
#: help:account.tax.template,include_base_amount:0
msgid "Set if the amount of tax must be included in the base amount before computing the next taxes."
msgid ""
"Set if the amount of tax must be included in the base amount before "
"computing the next taxes."
msgstr ""
#. module: account
@ -548,7 +564,9 @@ msgstr ""
#. module: account
#: help:account.payment.term.line,days:0
msgid "Number of days to add before computation of the day of month.If Date=15/01, Number of Days=22, Day of Month=-1, then the due date is 28/02."
msgid ""
"Number of days to add before computation of the day of month.If Date=15/01, "
"Number of Days=22, Day of Month=-1, then the due date is 28/02."
msgstr ""
#. module: account
@ -579,7 +597,9 @@ msgstr ""
#. module: account
#: help:account.model.line,sequence:0
msgid "The sequence field is used to order the resources from lower sequences to higher ones"
msgid ""
"The sequence field is used to order the resources from lower sequences to "
"higher ones"
msgstr ""
#. module: account
@ -798,7 +818,9 @@ msgstr ""
#. module: account
#: help:account.account.template,user_type:0
msgid "These types are defined according to your country. The type contain more information about the account and it's specificities."
msgid ""
"These types are defined according to your country. The type contain more "
"information about the account and it's specificities."
msgstr ""
#. module: account
@ -880,7 +902,9 @@ msgstr ""
#. module: account
#: help:account.tax,tax_group:0
msgid "If a default tax is given in the partner it only overrides taxes from accounts (or products) in the same group."
msgid ""
"If a default tax is given in the partner it only overrides taxes from "
"accounts (or products) in the same group."
msgstr ""
#. module: account
@ -1051,7 +1075,9 @@ msgstr ""
#. module: account
#: help:account.payment.term.line,sequence:0
msgid "The sequence field is used to order the payment term lines from the lowest sequences to the higher ones"
msgid ""
"The sequence field is used to order the payment term lines from the lowest "
"sequences to the higher ones"
msgstr ""
#. module: account
@ -1175,7 +1201,12 @@ msgstr ""
#. module: account
#: help:account.account,currency_mode:0
msgid "This will select how the current currency rate for outgoing transactions is computed. In most countries the legal method is \"average\" but only a few software systems are able to manage this. So if you import from another software system you may have to use the rate at date. Incoming transactions always use the rate at date."
msgid ""
"This will select how the current currency rate for outgoing transactions is "
"computed. In most countries the legal method is \"average\" but only a few "
"software systems are able to manage this. So if you import from another "
"software system you may have to use the rate at date. Incoming transactions "
"always use the rate at date."
msgstr ""
#. module: account
@ -1331,7 +1362,9 @@ msgstr ""
#. module: account
#: wizard_view:account.move.line.unreconcile,init:0
#: wizard_view:account.reconcile.unreconcile,init:0
msgid "If you unreconciliate transactions, you must also verify all the actions that are linked to those transactions because they will not be disable"
msgid ""
"If you unreconciliate transactions, you must also verify all the actions "
"that are linked to those transactions because they will not be disable"
msgstr ""
#. module: account
@ -1425,7 +1458,8 @@ msgstr ""
#. module: account
#: help:account.invoice,partner_bank:0
msgid "The partner bank account to pay\n"
msgid ""
"The partner bank account to pay\n"
"Keep empty to use the default"
msgstr ""
@ -1759,7 +1793,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_account_position:0
msgid "The fiscal position will determine taxes and the accounts used for the the partner."
msgid ""
"The fiscal position will determine taxes and the accounts used for the the "
"partner."
msgstr ""
#. module: account
@ -1977,7 +2013,10 @@ msgstr ""
#. module: account
#: help:account.journal,entry_posted:0
msgid "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."
msgid ""
"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."
msgstr ""
#. module: account
@ -1994,7 +2033,9 @@ msgstr ""
#. module: account
#: help:account.invoice,number:0
msgid "Unique number of the invoice, computed automatically when the invoice is created."
msgid ""
"Unique number of the invoice, computed automatically when the invoice is "
"created."
msgstr ""
#. module: account
@ -2161,7 +2202,10 @@ msgstr ""
#. module: account
#: rml:account.overdue:0
msgid "Exception made of a mistake of our side, it seems that the following bills stay unpaid. Please, take appropriate measures in order to carry out this payment in the next 8 days."
msgid ""
"Exception made of a mistake of our side, it seems that the following bills "
"stay unpaid. Please, take appropriate measures in order to carry out this "
"payment in the next 8 days."
msgstr ""
#. module: account
@ -2340,7 +2384,9 @@ msgstr ""
#. module: account
#: help:account.tax,child_depend:0
msgid "Set if the tax computation is based on the computation of child taxes rather than on the total amount."
msgid ""
"Set if the tax computation is based on the computation of child taxes rather "
"than on the total amount."
msgstr ""
#. module: account
@ -2350,7 +2396,9 @@ msgstr ""
#. module: account
#: help:account.tax,applicable_type:0
msgid "If not applicable (computed through a Python code), the tax won't appear on the invoice."
msgid ""
"If not applicable (computed through a Python code), the tax won't appear on "
"the invoice."
msgstr ""
#. module: account
@ -2552,7 +2600,8 @@ msgstr ""
#. module: account
#: help:account.account.template,reconcile:0
msgid "Check this option if you want the user to reconcile entries in this account."
msgid ""
"Check this option if you want the user to reconcile entries in this account."
msgstr ""
#. module: account
@ -2590,7 +2639,12 @@ msgstr ""
#. module: account
#: help:account.account.template,type:0
msgid "This type is used to differenciate types with special effects in Open ERP: view can not have entries, consolidation are accounts that can have children accounts for multi-company consolidations, payable/receivable are for partners accounts (for debit/credit computations), closed for deprecated accounts."
msgid ""
"This type is used to differenciate types with special effects in Open ERP: "
"view can not have entries, consolidation are accounts that can have children "
"accounts for multi-company consolidations, payable/receivable are for "
"partners accounts (for debit/credit computations), closed for deprecated "
"accounts."
msgstr ""
#. module: account
@ -2730,7 +2784,10 @@ msgstr ""
#. module: account
#: help:account.tax.template,sequence:0
msgid "The sequence field is used to order the taxes lines from lower sequences to higher ones. The order is important if you have a tax that has several tax children. In this case, the evaluation order is important."
msgid ""
"The sequence field is used to order the taxes lines from lower sequences to "
"higher ones. The order is important if you have a tax that has several tax "
"children. In this case, the evaluation order is important."
msgstr ""
#. module: account
@ -2941,7 +2998,10 @@ msgstr ""
#. module: account
#: help:account.model.line,date_maturity:0
msgid "The maturity date of the generated entries for this model. You can chosse between the date of the creation action or the the date of the creation of the entries plus the partner payment terms."
msgid ""
"The maturity date of the generated entries for this model. You can chosse "
"between the date of the creation action or the the date of the creation of "
"the entries plus the partner payment terms."
msgstr ""
#. module: account
@ -2973,7 +3033,9 @@ msgstr ""
#. module: account
#: help:account.journal,group_invoice_lines:0
msgid "If this box is checked, the system will try to group the accounting lines when generating them from invoices."
msgid ""
"If this box is checked, the system will try to group the accounting lines "
"when generating them from invoices."
msgstr ""
#. module: account
@ -3120,7 +3182,9 @@ msgstr ""
#. module: account
#: help:account.invoice,reconciled:0
msgid "The account moves of the invoice have been reconciled with account moves of the payment(s)."
msgid ""
"The account moves of the invoice have been reconciled with account moves of "
"the payment(s)."
msgstr ""
#. module: account
@ -3287,7 +3351,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_account_receivable:0
msgid "This account will be used instead of the default one as the receivable account for the current partner"
msgid ""
"This account will be used instead of the default one as the receivable "
"account for the current partner"
msgstr ""
#. module: account
@ -3314,7 +3380,9 @@ msgstr ""
#. module: account
#: help:account.tax.template,tax_group:0
msgid "If a default tax if given in the partner it only override taxes from account (or product) of the same group."
msgid ""
"If a default tax if given in the partner it only override taxes from account "
"(or product) of the same group."
msgstr ""
#. module: account
@ -3352,7 +3420,9 @@ msgstr ""
#. module: account
#: wizard_view:account.move.validate,init:0
msgid "All draft account entries in this journal and period will be validated. It means you won't be able to modify their accouting fields."
msgid ""
"All draft account entries in this journal and period will be validated. It "
"means you won't be able to modify their accouting fields."
msgstr ""
#. module: account
@ -3363,7 +3433,9 @@ msgstr ""
#. module: account
#: help:account.move.line,amount_currency:0
msgid "The amount expressed in an optional other currency if it is a multi-currency entry."
msgid ""
"The amount expressed in an optional other currency if it is a multi-currency "
"entry."
msgstr ""
#. module: account
@ -3520,7 +3592,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_payment_term:0
msgid "This payment term will be used instead of the default one for the current partner"
msgid ""
"This payment term will be used instead of the default one for the current "
"partner"
msgstr ""
#. module: account
@ -3537,7 +3611,9 @@ msgstr ""
#. module: account
#: help:account.tax.code,notprintable:0
#: help:account.tax.code.template,notprintable:0
msgid "Check this box if you don't want any VAT related to this Tax Code to appear on invoices"
msgid ""
"Check this box if you don't want any VAT related to this Tax Code to appear "
"on invoices"
msgstr ""
#. module: account
@ -3591,7 +3667,9 @@ msgstr ""
#. module: account
#: help:account.account,check_history:0
msgid "Check this box if you want to print all entries when printing the General Ledger, otherwise it will only print its balance."
msgid ""
"Check this box if you want to print all entries when printing the General "
"Ledger, otherwise it will only print its balance."
msgstr ""
#. module: account
@ -3679,7 +3757,8 @@ msgstr ""
#. module: account
#: model:ir.module.module,description:account.module_meta_information
msgid "Financial and accounting module that covers:\n"
msgid ""
"Financial and accounting module that covers:\n"
" General accounting\n"
" Cost / Analytic accounting\n"
" Third party accounting\n"
@ -3713,7 +3792,9 @@ msgstr ""
#. module: account
#: help:account.automatic.reconcile,init,account_ids:0
msgid "If no account is specified, the reconciliation will be made using every accounts that can be reconcilied"
msgid ""
"If no account is specified, the reconciliation will be made using every "
"accounts that can be reconcilied"
msgstr ""
#. module: account
@ -3753,7 +3834,9 @@ msgstr ""
#. module: account
#: help:product.template,property_account_expense:0
msgid "This account will be used instead of the default one to value outgoing stock for the current product"
msgid ""
"This account will be used instead of the default one to value outgoing stock "
"for the current product"
msgstr ""
#. module: account
@ -3797,7 +3880,10 @@ msgstr ""
#. module: account
#: help:account.analytic.journal,type:0
msgid "Gives the type of the analytic journal. When a document (eg: an invoice) needs to create analytic entries, Open ERP will look for a matching journal of the same type."
msgid ""
"Gives the type of the analytic journal. When a document (eg: an invoice) "
"needs to create analytic entries, Open ERP will look for a matching journal "
"of the same type."
msgstr ""
#. module: account
@ -3889,7 +3975,9 @@ msgstr ""
#. module: account
#: help:account.tax.template,child_depend:0
msgid "Indicate if the tax computation is based on the value computed for the computation of child taxes or based on the total amount."
msgid ""
"Indicate if the tax computation is based on the value computed for the "
"computation of child taxes or based on the total amount."
msgstr ""
#. module: account
@ -3937,7 +4025,9 @@ msgstr ""
#. module: account
#: help:account.move.line,quantity:0
msgid "The optional quantity expressed by this line, eg: number of product sold. The quantity is not a legal requirement but is very usefull for some reports."
msgid ""
"The optional quantity expressed by this line, eg: number of product sold. "
"The quantity is not a legal requirement but is very usefull for some reports."
msgstr ""
#. module: account
@ -3947,7 +4037,9 @@ msgstr ""
#. module: account
#: help:account.move.line,blocked:0
msgid "You can check this box to mark the entry line as a litigation with the associated partner"
msgid ""
"You can check this box to mark the entry line as a litigation with the "
"associated partner"
msgstr ""
#. module: account
@ -4058,12 +4150,17 @@ msgstr ""
#. module: account
#: constraint:ir.model:0
msgid "The Object name must start with x_ and not contain any special character !"
msgstr "De objectnaam moet beginnen met x_ en mag geen speciale karakters bevatten !"
msgid ""
"The Object name must start with x_ and not contain any special character !"
msgstr ""
"De objectnaam moet beginnen met x_ en mag geen speciale karakters bevatten !"
#. module: account
#: help:account.account.type,sign:0
msgid "Allows you to change the sign of the balance amount displayed in the reports, so that you can see positive figures instead of negative ones in expenses accounts."
msgid ""
"Allows you to change the sign of the balance amount displayed in the "
"reports, so that you can see positive figures instead of negative ones in "
"expenses accounts."
msgstr ""
#. module: account
@ -4073,7 +4170,9 @@ msgstr ""
#. module: account
#: help:account.move.line,date_maturity:0
msgid "This field is used for payable and receivable entries. You can put the limit date for the payment of this entry line."
msgid ""
"This field is used for payable and receivable entries. You can put the limit "
"date for the payment of this entry line."
msgstr ""
#. module: account
@ -4258,7 +4357,10 @@ msgstr ""
#. module: account
#: help:account.tax,sequence:0
msgid "The sequence field is used to order the tax lines from the lowest sequences to the higher ones. The order is important if you have a tax with several tax children. In this case, the evaluation order is important."
msgid ""
"The sequence field is used to order the tax lines from the lowest sequences "
"to the higher ones. The order is important if you have a tax with several "
"tax children. In this case, the evaluation order is important."
msgstr ""
#. module: account
@ -4431,7 +4533,9 @@ msgstr ""
#. module: account
#: view:wizard.multi.charts.accounts:0
msgid "This will automatically configure your chart of accounts, bank accounts, taxes and journals according to the selected template"
msgid ""
"This will automatically configure your chart of accounts, bank accounts, "
"taxes and journals according to the selected template"
msgstr ""
#. module: account
@ -4506,7 +4610,9 @@ msgstr ""
#. module: account
#: help:account.tax,include_base_amount:0
msgid "Indicate if the amount of tax must be included in the base amount for the computation of the next taxes"
msgid ""
"Indicate if the amount of tax must be included in the base amount for the "
"computation of the next taxes"
msgstr ""
#. module: account
@ -4600,7 +4706,10 @@ msgstr ""
#. module: account
#: help:account.journal,centralisation:0
msgid "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."
msgid ""
"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."
msgstr ""
#. module: account
@ -4733,7 +4842,9 @@ msgstr ""
#. module: account
#: help:account.tax,domain:0
#: help:account.tax.template,domain:0
msgid "This field is only used if you develop your own module allowing developers to create specific taxes in a custom domain."
msgid ""
"This field is only used if you develop your own module allowing developers "
"to create specific taxes in a custom domain."
msgstr ""
#. module: account
@ -4938,7 +5049,9 @@ msgstr ""
#. module: account
#: help:wizard.multi.charts.accounts,seq_journal:0
msgid "Check this box if you want to use a different sequence for each created journal. Otherwise, all will use the same sequence."
msgid ""
"Check this box if you want to use a different sequence for each created "
"journal. Otherwise, all will use the same sequence."
msgstr ""
#. module: account
@ -5226,7 +5339,10 @@ msgstr ""
#. module: account
#: help:account.move.line,tax_amount:0
msgid "If the Tax account is tax code account, this field will contain the taxed amount.If the tax account is base tax code, this field will contain the basic amount(without tax)."
msgid ""
"If the Tax account is tax code account, this field will contain the taxed "
"amount.If the tax account is base tax code, this field "
"will contain the basic amount(without tax)."
msgstr ""
#. module: account
@ -5334,7 +5450,9 @@ msgstr ""
#. module: account
#: constraint:account.period:0
msgid "Invalid period ! Some periods overlap or the date period is not in the scope of the fiscal year. "
msgid ""
"Invalid period ! Some periods overlap or the date period is not in the scope "
"of the fiscal year. "
msgstr ""
#. module: account
@ -5353,7 +5471,10 @@ msgstr ""
#. module: account
#: help:populate_statement_from_inv,init,journal_id:0
msgid "This field allow you to choose the accounting journals you want for filtering the invoices. If you left this field empty, it will search on all sale, purchase and cash journals."
msgid ""
"This field allow you to choose the accounting journals you want for "
"filtering the invoices. If you left this field empty, it will search on all "
"sale, purchase and cash journals."
msgstr ""
#. module: account
@ -5491,7 +5612,9 @@ msgstr ""
#. module: account
#: help:product.template,property_account_income:0
msgid "This account will be used instead of the default one to value incoming stock for the current product"
msgid ""
"This account will be used instead of the default one to value incoming stock "
"for the current product"
msgstr ""
#. module: account
@ -5521,7 +5644,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_account_payable:0
msgid "This account will be used instead of the default one as the payable account for the current partner"
msgid ""
"This account will be used instead of the default one as the payable account "
"for the current partner"
msgstr ""
#. module: account
@ -5691,7 +5816,9 @@ msgstr ""
#. module: account
#: help:product.category,property_account_expense_categ:0
msgid "This account will be used to value outgoing stock for the current product category"
msgid ""
"This account will be used to value outgoing stock for the current product "
"category"
msgstr ""
#. module: account
@ -5767,7 +5894,9 @@ msgstr ""
#. module: account
#: help:account.tax,price_include:0
msgid "Check this if the price you use on the product and invoices includes this tax."
msgid ""
"Check this if the price you use on the product and invoices includes this "
"tax."
msgstr ""
#. module: account
@ -5790,7 +5919,8 @@ msgstr ""
#. module: account
#: help:account.account,reconcile:0
msgid "Check this if the user is allowed to reconcile entries in this account."
msgid ""
"Check this if the user is allowed to reconcile entries in this account."
msgstr ""
#. module: account
@ -5798,3 +5928,10 @@ msgstr ""
msgid "Compute Entry Dates"
msgstr ""
#~ msgid ""
#~ "Would your payment have been carried out after this mail was sent, please "
#~ "consider the present one as void. Do not hesitate to contact our accounting "
#~ "departement at +32 81 81 37 00."
#~ msgstr ""
#~ "Indien dit schrijven uw betaling mocht kruisen, mag u dit negeren. Aarzel "
#~ "niet om contact op te nemen met onze boekhouding voor eventuele vragen."

File diff suppressed because it is too large Load Diff

5935
addons/account/i18n/oc.po Normal file

File diff suppressed because it is too large Load Diff

6042
addons/account/i18n/pl.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5978
addons/account/i18n/pt.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

6071
addons/account/i18n/ro.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5940
addons/account/i18n/ru.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5929
addons/account/i18n/si.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5944
addons/account/i18n/sl.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

11600
addons/account/i18n/sq.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5959
addons/account/i18n/sr.po Normal file

File diff suppressed because it is too large Load Diff

5929
addons/account/i18n/sv.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

5955
addons/account/i18n/te.po Normal file

File diff suppressed because it is too large Load Diff

5933
addons/account/i18n/th.po Normal file

File diff suppressed because it is too large Load Diff

5928
addons/account/i18n/tlh.po Normal file

File diff suppressed because it is too large Load Diff

5928
addons/account/i18n/tr.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

6006
addons/account/i18n/uk.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

6000
addons/account/i18n/vi.po Normal file

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -4,16 +4,17 @@
#
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 15:29:32+0000\n"
"PO-Revision-Date: 2009-08-28 15:29:32+0000\n"
"Last-Translator: <>\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2009-11-17 09:40+0000\n"
"Last-Translator: Luke Meng <mengfanlu@gmail.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-11-18 04:38+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
#: field:account.tax.template,description:0
@ -29,17 +30,17 @@ msgstr "税务科目代码"
#: model:ir.actions.act_window,name:account.action_invoice_tree9
#: model:ir.ui.menu,name:account.menu_action_invoice_tree9
msgid "Unpaid Supplier Invoices"
msgstr ""
msgstr "未支付的采购发票"
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_entries
msgid "Entries Encoding"
msgstr ""
msgstr "科目编码"
#. module: account
#: model:ir.actions.todo,note:account.config_wizard_account_base_setup_form
msgid "Specify The Message for the Overdue Payment Report."
msgstr ""
msgstr "为滞纳款项报告指定通知信息。"
#. module: account
#: model:process.transition,name:account.process_transition_confirmstatementfromdraft0
@ -59,22 +60,24 @@ msgstr ""
#. module: account
#: help:account.journal,currency:0
msgid "The currency used to enter statement"
msgstr ""
msgstr "输入分录时所使用的币种"
#. module: account
#: wizard_view:account_use_models,init_form:0
msgid "Select Message"
msgstr ""
msgstr "选择消息"
#. module: account
#: help:product.category,property_account_income_categ:0
msgid "This account will be used to value incoming stock for the current product category"
msgid ""
"This account will be used to value incoming stock for the current product "
"category"
msgstr ""
#. module: account
#: help:account.invoice,period_id:0
msgid "Keep empty to use the period of the validation(invoice) date."
msgstr ""
msgstr "不填则使用有效(发票)日期的期间。"
#. module: account
#: wizard_view:account.automatic.reconcile,reconcile:0
@ -84,7 +87,7 @@ msgstr "对帐结果"
#. module: account
#: model:ir.actions.act_window,name:account.act_account_acount_move_line_open_unreconciled
msgid "Unreconciled entries"
msgstr "未经对帐的条目"
msgstr "未经对帐的凭证"
#. module: account
#: field:account.invoice.tax,base_code_id:0
@ -102,22 +105,22 @@ msgstr ""
#: model:ir.actions.wizard,name:account.wizard_vat_declaration
#: model:ir.ui.menu,name:account.menu_wizard_vat_declaration
msgid "Print Taxes Report"
msgstr ""
msgstr "打印税金报表"
#. module: account
#: field:account.account,parent_id:0
msgid "Parent"
msgstr "父科目"
msgstr "上级"
#. module: account
#: selection:account.move,type:0
msgid "Journal Voucher"
msgstr ""
msgstr "记账凭证"
#. module: account
#: field:account.invoice,residual:0
msgid "Residual"
msgstr ""
msgstr "残余"
#. module: account
#: field:account.tax,base_sign:0
@ -136,7 +139,7 @@ msgstr "非对帐条目"
#. module: account
#: constraint:account.period:0
msgid "Error ! The duration of the Period(s) is/are invalid. "
msgstr ""
msgstr "错误!期间的长短不合规定。 "
#. module: account
#: view:account.bank.statement.reconcile:0
@ -160,18 +163,21 @@ msgstr ""
#. module: account
#: help:account.payment.term.line,days2:0
msgid "Day of the month, set -1 for the last day of the current month. If it's positive, it gives the day of the next month. Set 0 for net days (otherwise it's based on the beginning of the month)."
msgstr ""
msgid ""
"Day of the month, set -1 for the last day of the current month. If it's "
"positive, it gives the day of the next month. Set 0 for net days (otherwise "
"it's based on the beginning of the month)."
msgstr "日,如果是本月的最后一天则设置-1。如果是正数则指定下个月的日期。净日数设置0否则将基于本月第一天。"
#. module: account
#: view:account.move:0
msgid "Total Credit"
msgstr ""
msgstr "贷方合计"
#. module: account
#: field:account.config.wizard,charts:0
msgid "Charts of Account"
msgstr ""
msgstr "会计科目表"
#. module: account
#: model:ir.actions.wizard,name:account.wizard_move_line_select
@ -206,17 +212,17 @@ msgstr "计算代码"
#: view:account.move:0
#: view:account.move.line:0
msgid "Account Entry Line"
msgstr ""
msgstr "分录行"
#. module: account
#: wizard_view:account.aged.trial.balance,init:0
msgid "Aged Trial Balance"
msgstr ""
msgstr "过期的试算平衡"
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_recurrent_entries
msgid "Recurrent Entries"
msgstr ""
msgstr "重复出现的分录"
#. module: account
#: field:account.analytic.line,amount:0
@ -236,7 +242,7 @@ msgstr "金额"
#: model:ir.actions.wizard,name:account.wizard_third_party_ledger
#: model:ir.ui.menu,name:account.menu_third_party_ledger
msgid "Partner Ledger"
msgstr ""
msgstr "往来账户"
#. module: account
#: field:product.template,supplier_taxes_id:0
@ -246,23 +252,35 @@ msgstr "供应商税"
#. module: account
#: view:account.move:0
msgid "Total Debit"
msgstr ""
msgstr "借方合计"
#. module: account
#: rml:account.tax.code.entries:0
msgid "Accounting Entries-"
msgstr ""
msgstr "会计分录"
#. module: account
#: help:account.journal,view_id:0
msgid "Gives the view used when writing or browsing entries in this journal. The view tell 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."
msgid ""
"Gives the view used when writing or browsing entries in this journal. The "
"view tell 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."
msgstr ""
"指定在输入或者浏览的时候所使用的视图。视图告诉OpenERP哪些字段是需要显示的哪些字段是必须的或者是只读的还有这些字段按照什么顺序排列。你可以自"
"定一个你自己的视图,让记账更快捷。"
#. module: account
#: help:account.invoice,date_due:0
#: help:account.invoice,payment_term:0
msgid "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."
msgid ""
"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."
msgstr ""
"如果你使用付款期那么到期日会根据入账日期自动计算。如果付款期和到期日都不填则为直接付款。付款期可能会计算出几个到期日例如50%立刻到期另外50%在"
"一个月以后到期。"
#. module: account
#: selection:account.tax,type:0
@ -274,7 +292,7 @@ msgstr "固定"
#: model:ir.actions.report.xml,name:account.account_overdue
#: view:res.company:0
msgid "Overdue Payments"
msgstr ""
msgstr "滞纳款项"
#. module: account
#: wizard_view:account.account.balance.report,checktype:0
@ -311,7 +329,7 @@ msgstr ""
#. module: account
#: rml:account.central.journal:0
msgid "Account Num."
msgstr ""
msgstr "科目编码"
#. module: account
#: rml:account.analytic.account.analytic.check:0
@ -328,7 +346,7 @@ msgstr ""
#. module: account
#: rml:account.general.journal:0
msgid "Debit Trans."
msgstr ""
msgstr "借方业务"
#. module: account
#: field:account.analytic.line,account_id:0
@ -349,7 +367,7 @@ msgstr ""
#: rml:account.general.journal:0
#: field:account.journal,name:0
msgid "Journal Name"
msgstr ""
msgstr "账簿名称"
#. module: account
#: view:account.payment.term:0
@ -359,29 +377,29 @@ msgstr "发票说明"
#. module: account
#: constraint:account.analytic.account:0
msgid "Error! You can not create recursive analytic accounts."
msgstr ""
msgstr "错误!你不能创建一个循环的分析帐户。"
#. module: account
#: field:account.bank.statement.reconcile,total_entry:0
msgid "Total entries"
msgstr ""
msgstr "总分录数"
#. module: account
#: field:account.fiscal.position.account,account_src_id:0
#: field:account.fiscal.position.account.template,account_src_id:0
msgid "Account Source"
msgstr ""
msgstr "帐户来源"
#. module: account
#: field:account.journal,update_posted:0
msgid "Allow Cancelling Entries"
msgstr ""
msgstr "循序取消分录"
#. module: account
#: model:process.transition,name:account.process_transition_paymentorderbank0
#: model:process.transition,name:account.process_transition_paymentorderreconcilation0
msgid "Payment Reconcilation"
msgstr ""
msgstr "付款调整"
#. module: account
#: model:account.journal,name:account.expenses_journal
@ -391,7 +409,7 @@ msgstr ""
#. module: account
#: model:ir.actions.act_window,name:account.act_acc_analytic_acc_5_report_hr_timesheet_invoice_journal
msgid "All Analytic Entries"
msgstr ""
msgstr "所有的分析条目"
#. module: account
#: rml:account.overdue:0
@ -406,7 +424,7 @@ msgstr ""
#. module: account
#: rml:account.partner.balance:0
msgid "(Account/Partner) Name"
msgstr ""
msgstr "(帐户/业务伙伴)名称"
#. module: account
#: selection:account.move,type:0
@ -427,13 +445,13 @@ msgstr ""
#: 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 ""
msgstr "未付的采购退款"
#. module: account
#: view:account.tax:0
#: view:account.tax.template:0
msgid "Special Computation"
msgstr ""
msgstr "特殊预算"
#. module: account
#: model:process.transition,note:account.process_transition_confirmstatementfromdraft0
@ -445,7 +463,7 @@ msgstr ""
#: model:ir.actions.wizard,name:account.action_account_bank_reconcile_tree
#: model:ir.ui.menu,name:account.menu_action_account_bank_reconcile_check_tree
msgid "Bank reconciliation"
msgstr ""
msgstr "银行对账"
#. module: account
#: rml:account.invoice:0
@ -468,13 +486,15 @@ msgstr ""
#. module: account
#: help:account.tax.template,include_base_amount:0
msgid "Set if the amount of tax must be included in the base amount before computing the next taxes."
msgstr ""
msgid ""
"Set if the amount of tax must be included in the base amount before "
"computing the next taxes."
msgstr "如果在计算下一个税之前税额必须包含在计税金额以内,则需要设置。"
#. module: account
#: model:ir.ui.menu,name:account.menu_finance_periodical_processing
msgid "Periodical Processing"
msgstr ""
msgstr "周期性处理"
#. module: account
#: view:report.hr.timesheet.invoice.journal:0
@ -548,7 +568,9 @@ msgstr ""
#. module: account
#: help:account.payment.term.line,days:0
msgid "Number of days to add before computation of the day of month.If Date=15/01, Number of Days=22, Day of Month=-1, then the due date is 28/02."
msgid ""
"Number of days to add before computation of the day of month.If Date=15/01, "
"Number of Days=22, Day of Month=-1, then the due date is 28/02."
msgstr ""
#. module: account
@ -579,7 +601,9 @@ msgstr ""
#. module: account
#: help:account.model.line,sequence:0
msgid "The sequence field is used to order the resources from lower sequences to higher ones"
msgid ""
"The sequence field is used to order the resources from lower sequences to "
"higher ones"
msgstr ""
#. module: account
@ -798,7 +822,9 @@ msgstr ""
#. module: account
#: help:account.account.template,user_type:0
msgid "These types are defined according to your country. The type contain more information about the account and it's specificities."
msgid ""
"These types are defined according to your country. The type contain more "
"information about the account and it's specificities."
msgstr ""
#. module: account
@ -880,7 +906,9 @@ msgstr ""
#. module: account
#: help:account.tax,tax_group:0
msgid "If a default tax is given in the partner it only overrides taxes from accounts (or products) in the same group."
msgid ""
"If a default tax is given in the partner it only overrides taxes from "
"accounts (or products) in the same group."
msgstr ""
#. module: account
@ -1051,7 +1079,9 @@ msgstr ""
#. module: account
#: help:account.payment.term.line,sequence:0
msgid "The sequence field is used to order the payment term lines from the lowest sequences to the higher ones"
msgid ""
"The sequence field is used to order the payment term lines from the lowest "
"sequences to the higher ones"
msgstr ""
#. module: account
@ -1175,7 +1205,12 @@ msgstr ""
#. module: account
#: help:account.account,currency_mode:0
msgid "This will select how the current currency rate for outgoing transactions is computed. In most countries the legal method is \"average\" but only a few software systems are able to manage this. So if you import from another software system you may have to use the rate at date. Incoming transactions always use the rate at date."
msgid ""
"This will select how the current currency rate for outgoing transactions is "
"computed. In most countries the legal method is \"average\" but only a few "
"software systems are able to manage this. So if you import from another "
"software system you may have to use the rate at date. Incoming transactions "
"always use the rate at date."
msgstr ""
#. module: account
@ -1331,7 +1366,9 @@ msgstr ""
#. module: account
#: wizard_view:account.move.line.unreconcile,init:0
#: wizard_view:account.reconcile.unreconcile,init:0
msgid "If you unreconciliate transactions, you must also verify all the actions that are linked to those transactions because they will not be disable"
msgid ""
"If you unreconciliate transactions, you must also verify all the actions "
"that are linked to those transactions because they will not be disable"
msgstr ""
#. module: account
@ -1425,7 +1462,8 @@ msgstr ""
#. module: account
#: help:account.invoice,partner_bank:0
msgid "The partner bank account to pay\n"
msgid ""
"The partner bank account to pay\n"
"Keep empty to use the default"
msgstr ""
@ -1759,7 +1797,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_account_position:0
msgid "The fiscal position will determine taxes and the accounts used for the the partner."
msgid ""
"The fiscal position will determine taxes and the accounts used for the the "
"partner."
msgstr ""
#. module: account
@ -1977,7 +2017,10 @@ msgstr ""
#. module: account
#: help:account.journal,entry_posted:0
msgid "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."
msgid ""
"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."
msgstr ""
#. module: account
@ -1994,7 +2037,9 @@ msgstr ""
#. module: account
#: help:account.invoice,number:0
msgid "Unique number of the invoice, computed automatically when the invoice is created."
msgid ""
"Unique number of the invoice, computed automatically when the invoice is "
"created."
msgstr ""
#. module: account
@ -2161,7 +2206,10 @@ msgstr ""
#. module: account
#: rml:account.overdue:0
msgid "Exception made of a mistake of our side, it seems that the following bills stay unpaid. Please, take appropriate measures in order to carry out this payment in the next 8 days."
msgid ""
"Exception made of a mistake of our side, it seems that the following bills "
"stay unpaid. Please, take appropriate measures in order to carry out this "
"payment in the next 8 days."
msgstr ""
#. module: account
@ -2340,7 +2388,9 @@ msgstr ""
#. module: account
#: help:account.tax,child_depend:0
msgid "Set if the tax computation is based on the computation of child taxes rather than on the total amount."
msgid ""
"Set if the tax computation is based on the computation of child taxes rather "
"than on the total amount."
msgstr ""
#. module: account
@ -2350,7 +2400,9 @@ msgstr ""
#. module: account
#: help:account.tax,applicable_type:0
msgid "If not applicable (computed through a Python code), the tax won't appear on the invoice."
msgid ""
"If not applicable (computed through a Python code), the tax won't appear on "
"the invoice."
msgstr ""
#. module: account
@ -2552,7 +2604,8 @@ msgstr ""
#. module: account
#: help:account.account.template,reconcile:0
msgid "Check this option if you want the user to reconcile entries in this account."
msgid ""
"Check this option if you want the user to reconcile entries in this account."
msgstr ""
#. module: account
@ -2590,7 +2643,12 @@ msgstr ""
#. module: account
#: help:account.account.template,type:0
msgid "This type is used to differenciate types with special effects in Open ERP: view can not have entries, consolidation are accounts that can have children accounts for multi-company consolidations, payable/receivable are for partners accounts (for debit/credit computations), closed for deprecated accounts."
msgid ""
"This type is used to differenciate types with special effects in Open ERP: "
"view can not have entries, consolidation are accounts that can have children "
"accounts for multi-company consolidations, payable/receivable are for "
"partners accounts (for debit/credit computations), closed for deprecated "
"accounts."
msgstr ""
#. module: account
@ -2730,7 +2788,10 @@ msgstr ""
#. module: account
#: help:account.tax.template,sequence:0
msgid "The sequence field is used to order the taxes lines from lower sequences to higher ones. The order is important if you have a tax that has several tax children. In this case, the evaluation order is important."
msgid ""
"The sequence field is used to order the taxes lines from lower sequences to "
"higher ones. The order is important if you have a tax that has several tax "
"children. In this case, the evaluation order is important."
msgstr ""
#. module: account
@ -2815,7 +2876,7 @@ msgstr ""
#: field:account.invoice.tax,account_id:0
#: field:account.move.line,tax_code_id:0
msgid "Tax Account"
msgstr "增值税科目"
msgstr "税科目"
#. module: account
#: model:process.transition,note:account.process_transition_statemententries0
@ -2941,7 +3002,10 @@ msgstr ""
#. module: account
#: help:account.model.line,date_maturity:0
msgid "The maturity date of the generated entries for this model. You can chosse between the date of the creation action or the the date of the creation of the entries plus the partner payment terms."
msgid ""
"The maturity date of the generated entries for this model. You can chosse "
"between the date of the creation action or the the date of the creation of "
"the entries plus the partner payment terms."
msgstr ""
#. module: account
@ -2973,7 +3037,9 @@ msgstr ""
#. module: account
#: help:account.journal,group_invoice_lines:0
msgid "If this box is checked, the system will try to group the accounting lines when generating them from invoices."
msgid ""
"If this box is checked, the system will try to group the accounting lines "
"when generating them from invoices."
msgstr ""
#. module: account
@ -3120,7 +3186,9 @@ msgstr ""
#. module: account
#: help:account.invoice,reconciled:0
msgid "The account moves of the invoice have been reconciled with account moves of the payment(s)."
msgid ""
"The account moves of the invoice have been reconciled with account moves of "
"the payment(s)."
msgstr ""
#. module: account
@ -3287,7 +3355,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_account_receivable:0
msgid "This account will be used instead of the default one as the receivable account for the current partner"
msgid ""
"This account will be used instead of the default one as the receivable "
"account for the current partner"
msgstr ""
#. module: account
@ -3314,7 +3384,9 @@ msgstr ""
#. module: account
#: help:account.tax.template,tax_group:0
msgid "If a default tax if given in the partner it only override taxes from account (or product) of the same group."
msgid ""
"If a default tax if given in the partner it only override taxes from account "
"(or product) of the same group."
msgstr ""
#. module: account
@ -3352,7 +3424,9 @@ msgstr ""
#. module: account
#: wizard_view:account.move.validate,init:0
msgid "All draft account entries in this journal and period will be validated. It means you won't be able to modify their accouting fields."
msgid ""
"All draft account entries in this journal and period will be validated. It "
"means you won't be able to modify their accouting fields."
msgstr ""
#. module: account
@ -3363,7 +3437,9 @@ msgstr ""
#. module: account
#: help:account.move.line,amount_currency:0
msgid "The amount expressed in an optional other currency if it is a multi-currency entry."
msgid ""
"The amount expressed in an optional other currency if it is a multi-currency "
"entry."
msgstr ""
#. module: account
@ -3520,7 +3596,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_payment_term:0
msgid "This payment term will be used instead of the default one for the current partner"
msgid ""
"This payment term will be used instead of the default one for the current "
"partner"
msgstr ""
#. module: account
@ -3537,7 +3615,9 @@ msgstr ""
#. module: account
#: help:account.tax.code,notprintable:0
#: help:account.tax.code.template,notprintable:0
msgid "Check this box if you don't want any VAT related to this Tax Code to appear on invoices"
msgid ""
"Check this box if you don't want any VAT related to this Tax Code to appear "
"on invoices"
msgstr ""
#. module: account
@ -3591,7 +3671,9 @@ msgstr ""
#. module: account
#: help:account.account,check_history:0
msgid "Check this box if you want to print all entries when printing the General Ledger, otherwise it will only print its balance."
msgid ""
"Check this box if you want to print all entries when printing the General "
"Ledger, otherwise it will only print its balance."
msgstr ""
#. module: account
@ -3679,7 +3761,8 @@ msgstr ""
#. module: account
#: model:ir.module.module,description:account.module_meta_information
msgid "Financial and accounting module that covers:\n"
msgid ""
"Financial and accounting module that covers:\n"
" General accounting\n"
" Cost / Analytic accounting\n"
" Third party accounting\n"
@ -3713,7 +3796,9 @@ msgstr ""
#. module: account
#: help:account.automatic.reconcile,init,account_ids:0
msgid "If no account is specified, the reconciliation will be made using every accounts that can be reconcilied"
msgid ""
"If no account is specified, the reconciliation will be made using every "
"accounts that can be reconcilied"
msgstr ""
#. module: account
@ -3753,7 +3838,9 @@ msgstr ""
#. module: account
#: help:product.template,property_account_expense:0
msgid "This account will be used instead of the default one to value outgoing stock for the current product"
msgid ""
"This account will be used instead of the default one to value outgoing stock "
"for the current product"
msgstr ""
#. module: account
@ -3797,7 +3884,10 @@ msgstr ""
#. module: account
#: help:account.analytic.journal,type:0
msgid "Gives the type of the analytic journal. When a document (eg: an invoice) needs to create analytic entries, Open ERP will look for a matching journal of the same type."
msgid ""
"Gives the type of the analytic journal. When a document (eg: an invoice) "
"needs to create analytic entries, Open ERP will look for a matching journal "
"of the same type."
msgstr ""
#. module: account
@ -3889,7 +3979,9 @@ msgstr ""
#. module: account
#: help:account.tax.template,child_depend:0
msgid "Indicate if the tax computation is based on the value computed for the computation of child taxes or based on the total amount."
msgid ""
"Indicate if the tax computation is based on the value computed for the "
"computation of child taxes or based on the total amount."
msgstr ""
#. module: account
@ -3937,7 +4029,9 @@ msgstr ""
#. module: account
#: help:account.move.line,quantity:0
msgid "The optional quantity expressed by this line, eg: number of product sold. The quantity is not a legal requirement but is very usefull for some reports."
msgid ""
"The optional quantity expressed by this line, eg: number of product sold. "
"The quantity is not a legal requirement but is very usefull for some reports."
msgstr ""
#. module: account
@ -3947,7 +4041,9 @@ msgstr ""
#. module: account
#: help:account.move.line,blocked:0
msgid "You can check this box to mark the entry line as a litigation with the associated partner"
msgid ""
"You can check this box to mark the entry line as a litigation with the "
"associated partner"
msgstr ""
#. module: account
@ -4058,12 +4154,16 @@ msgstr ""
#. module: account
#: constraint:ir.model:0
msgid "The Object name must start with x_ and not contain any special character !"
msgid ""
"The Object name must start with x_ and not contain any special character !"
msgstr ""
#. module: account
#: help:account.account.type,sign:0
msgid "Allows you to change the sign of the balance amount displayed in the reports, so that you can see positive figures instead of negative ones in expenses accounts."
msgid ""
"Allows you to change the sign of the balance amount displayed in the "
"reports, so that you can see positive figures instead of negative ones in "
"expenses accounts."
msgstr ""
#. module: account
@ -4073,7 +4173,9 @@ msgstr ""
#. module: account
#: help:account.move.line,date_maturity:0
msgid "This field is used for payable and receivable entries. You can put the limit date for the payment of this entry line."
msgid ""
"This field is used for payable and receivable entries. You can put the limit "
"date for the payment of this entry line."
msgstr ""
#. module: account
@ -4258,7 +4360,10 @@ msgstr ""
#. module: account
#: help:account.tax,sequence:0
msgid "The sequence field is used to order the tax lines from the lowest sequences to the higher ones. The order is important if you have a tax with several tax children. In this case, the evaluation order is important."
msgid ""
"The sequence field is used to order the tax lines from the lowest sequences "
"to the higher ones. The order is important if you have a tax with several "
"tax children. In this case, the evaluation order is important."
msgstr ""
#. module: account
@ -4431,7 +4536,9 @@ msgstr ""
#. module: account
#: view:wizard.multi.charts.accounts:0
msgid "This will automatically configure your chart of accounts, bank accounts, taxes and journals according to the selected template"
msgid ""
"This will automatically configure your chart of accounts, bank accounts, "
"taxes and journals according to the selected template"
msgstr ""
#. module: account
@ -4506,7 +4613,9 @@ msgstr ""
#. module: account
#: help:account.tax,include_base_amount:0
msgid "Indicate if the amount of tax must be included in the base amount for the computation of the next taxes"
msgid ""
"Indicate if the amount of tax must be included in the base amount for the "
"computation of the next taxes"
msgstr ""
#. module: account
@ -4600,7 +4709,10 @@ msgstr ""
#. module: account
#: help:account.journal,centralisation:0
msgid "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."
msgid ""
"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."
msgstr ""
#. module: account
@ -4733,7 +4845,9 @@ msgstr ""
#. module: account
#: help:account.tax,domain:0
#: help:account.tax.template,domain:0
msgid "This field is only used if you develop your own module allowing developers to create specific taxes in a custom domain."
msgid ""
"This field is only used if you develop your own module allowing developers "
"to create specific taxes in a custom domain."
msgstr ""
#. module: account
@ -4938,7 +5052,9 @@ msgstr ""
#. module: account
#: help:wizard.multi.charts.accounts,seq_journal:0
msgid "Check this box if you want to use a different sequence for each created journal. Otherwise, all will use the same sequence."
msgid ""
"Check this box if you want to use a different sequence for each created "
"journal. Otherwise, all will use the same sequence."
msgstr ""
#. module: account
@ -5226,7 +5342,10 @@ msgstr ""
#. module: account
#: help:account.move.line,tax_amount:0
msgid "If the Tax account is tax code account, this field will contain the taxed amount.If the tax account is base tax code, this field will contain the basic amount(without tax)."
msgid ""
"If the Tax account is tax code account, this field will contain the taxed "
"amount.If the tax account is base tax code, this field "
"will contain the basic amount(without tax)."
msgstr ""
#. module: account
@ -5334,7 +5453,9 @@ msgstr ""
#. module: account
#: constraint:account.period:0
msgid "Invalid period ! Some periods overlap or the date period is not in the scope of the fiscal year. "
msgid ""
"Invalid period ! Some periods overlap or the date period is not in the scope "
"of the fiscal year. "
msgstr ""
#. module: account
@ -5353,7 +5474,10 @@ msgstr ""
#. module: account
#: help:populate_statement_from_inv,init,journal_id:0
msgid "This field allow you to choose the accounting journals you want for filtering the invoices. If you left this field empty, it will search on all sale, purchase and cash journals."
msgid ""
"This field allow you to choose the accounting journals you want for "
"filtering the invoices. If you left this field empty, it will search on all "
"sale, purchase and cash journals."
msgstr ""
#. module: account
@ -5491,7 +5615,9 @@ msgstr ""
#. module: account
#: help:product.template,property_account_income:0
msgid "This account will be used instead of the default one to value incoming stock for the current product"
msgid ""
"This account will be used instead of the default one to value incoming stock "
"for the current product"
msgstr ""
#. module: account
@ -5521,7 +5647,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_account_payable:0
msgid "This account will be used instead of the default one as the payable account for the current partner"
msgid ""
"This account will be used instead of the default one as the payable account "
"for the current partner"
msgstr ""
#. module: account
@ -5691,7 +5819,9 @@ msgstr ""
#. module: account
#: help:product.category,property_account_expense_categ:0
msgid "This account will be used to value outgoing stock for the current product category"
msgid ""
"This account will be used to value outgoing stock for the current product "
"category"
msgstr ""
#. module: account
@ -5767,7 +5897,9 @@ msgstr ""
#. module: account
#: help:account.tax,price_include:0
msgid "Check this if the price you use on the product and invoices includes this tax."
msgid ""
"Check this if the price you use on the product and invoices includes this "
"tax."
msgstr ""
#. module: account
@ -5790,11 +5922,11 @@ msgstr ""
#. module: account
#: help:account.account,reconcile:0
msgid "Check this if the user is allowed to reconcile entries in this account."
msgid ""
"Check this if the user is allowed to reconcile entries in this account."
msgstr ""
#. module: account
#: wizard_button:account.subscription.generate,init,generate:0
msgid "Compute Entry Dates"
msgstr ""

5942
addons/account/i18n/zh_HK.po Normal file

File diff suppressed because it is too large Load Diff

View File

@ -4,16 +4,17 @@
#
msgid ""
msgstr ""
"Project-Id-Version: OpenERP Server 5.0.4\n"
"Project-Id-Version: OpenERP Server 5.0.0\n"
"Report-Msgid-Bugs-To: support@openerp.com\n"
"POT-Creation-Date: 2009-08-28 15:30:43+0000\n"
"PO-Revision-Date: 2009-08-28 15:30:43+0000\n"
"Last-Translator: <>\n"
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
"PO-Revision-Date: 2009-09-16 17:14+0000\n"
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
"Language-Team: \n"
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: \n"
"Plural-Forms: \n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2009-11-17 05:00+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: account
#: field:account.tax.template,description:0
@ -68,7 +69,9 @@ msgstr ""
#. module: account
#: help:product.category,property_account_income_categ:0
msgid "This account will be used to value incoming stock for the current product category"
msgid ""
"This account will be used to value incoming stock for the current product "
"category"
msgstr ""
#. module: account
@ -160,7 +163,10 @@ msgstr ""
#. module: account
#: help:account.payment.term.line,days2:0
msgid "Day of the month, set -1 for the last day of the current month. If it's positive, it gives the day of the next month. Set 0 for net days (otherwise it's based on the beginning of the month)."
msgid ""
"Day of the month, set -1 for the last day of the current month. If it's "
"positive, it gives the day of the next month. Set 0 for net days (otherwise "
"it's based on the beginning of the month)."
msgstr ""
#. module: account
@ -255,13 +261,21 @@ msgstr ""
#. module: account
#: help:account.journal,view_id:0
msgid "Gives the view used when writing or browsing entries in this journal. The view tell 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."
msgid ""
"Gives the view used when writing or browsing entries in this journal. The "
"view tell 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."
msgstr ""
#. module: account
#: help:account.invoice,date_due:0
#: help:account.invoice,payment_term:0
msgid "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."
msgid ""
"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."
msgstr ""
#. module: account
@ -468,7 +482,9 @@ msgstr ""
#. module: account
#: help:account.tax.template,include_base_amount:0
msgid "Set if the amount of tax must be included in the base amount before computing the next taxes."
msgid ""
"Set if the amount of tax must be included in the base amount before "
"computing the next taxes."
msgstr ""
#. module: account
@ -548,7 +564,9 @@ msgstr ""
#. module: account
#: help:account.payment.term.line,days:0
msgid "Number of days to add before computation of the day of month.If Date=15/01, Number of Days=22, Day of Month=-1, then the due date is 28/02."
msgid ""
"Number of days to add before computation of the day of month.If Date=15/01, "
"Number of Days=22, Day of Month=-1, then the due date is 28/02."
msgstr ""
#. module: account
@ -579,7 +597,9 @@ msgstr ""
#. module: account
#: help:account.model.line,sequence:0
msgid "The sequence field is used to order the resources from lower sequences to higher ones"
msgid ""
"The sequence field is used to order the resources from lower sequences to "
"higher ones"
msgstr ""
#. module: account
@ -798,7 +818,9 @@ msgstr ""
#. module: account
#: help:account.account.template,user_type:0
msgid "These types are defined according to your country. The type contain more information about the account and it's specificities."
msgid ""
"These types are defined according to your country. The type contain more "
"information about the account and it's specificities."
msgstr ""
#. module: account
@ -880,7 +902,9 @@ msgstr ""
#. module: account
#: help:account.tax,tax_group:0
msgid "If a default tax is given in the partner it only overrides taxes from accounts (or products) in the same group."
msgid ""
"If a default tax is given in the partner it only overrides taxes from "
"accounts (or products) in the same group."
msgstr ""
#. module: account
@ -1051,7 +1075,9 @@ msgstr ""
#. module: account
#: help:account.payment.term.line,sequence:0
msgid "The sequence field is used to order the payment term lines from the lowest sequences to the higher ones"
msgid ""
"The sequence field is used to order the payment term lines from the lowest "
"sequences to the higher ones"
msgstr ""
#. module: account
@ -1175,7 +1201,12 @@ msgstr ""
#. module: account
#: help:account.account,currency_mode:0
msgid "This will select how the current currency rate for outgoing transactions is computed. In most countries the legal method is \"average\" but only a few software systems are able to manage this. So if you import from another software system you may have to use the rate at date. Incoming transactions always use the rate at date."
msgid ""
"This will select how the current currency rate for outgoing transactions is "
"computed. In most countries the legal method is \"average\" but only a few "
"software systems are able to manage this. So if you import from another "
"software system you may have to use the rate at date. Incoming transactions "
"always use the rate at date."
msgstr ""
#. module: account
@ -1331,7 +1362,9 @@ msgstr ""
#. module: account
#: wizard_view:account.move.line.unreconcile,init:0
#: wizard_view:account.reconcile.unreconcile,init:0
msgid "If you unreconciliate transactions, you must also verify all the actions that are linked to those transactions because they will not be disable"
msgid ""
"If you unreconciliate transactions, you must also verify all the actions "
"that are linked to those transactions because they will not be disable"
msgstr ""
#. module: account
@ -1425,7 +1458,8 @@ msgstr ""
#. module: account
#: help:account.invoice,partner_bank:0
msgid "The partner bank account to pay\n"
msgid ""
"The partner bank account to pay\n"
"Keep empty to use the default"
msgstr ""
@ -1759,7 +1793,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_account_position:0
msgid "The fiscal position will determine taxes and the accounts used for the the partner."
msgid ""
"The fiscal position will determine taxes and the accounts used for the the "
"partner."
msgstr ""
#. module: account
@ -1977,7 +2013,10 @@ msgstr ""
#. module: account
#: help:account.journal,entry_posted:0
msgid "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."
msgid ""
"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."
msgstr ""
#. module: account
@ -1994,7 +2033,9 @@ msgstr ""
#. module: account
#: help:account.invoice,number:0
msgid "Unique number of the invoice, computed automatically when the invoice is created."
msgid ""
"Unique number of the invoice, computed automatically when the invoice is "
"created."
msgstr ""
#. module: account
@ -2161,7 +2202,10 @@ msgstr ""
#. module: account
#: rml:account.overdue:0
msgid "Exception made of a mistake of our side, it seems that the following bills stay unpaid. Please, take appropriate measures in order to carry out this payment in the next 8 days."
msgid ""
"Exception made of a mistake of our side, it seems that the following bills "
"stay unpaid. Please, take appropriate measures in order to carry out this "
"payment in the next 8 days."
msgstr ""
#. module: account
@ -2340,7 +2384,9 @@ msgstr ""
#. module: account
#: help:account.tax,child_depend:0
msgid "Set if the tax computation is based on the computation of child taxes rather than on the total amount."
msgid ""
"Set if the tax computation is based on the computation of child taxes rather "
"than on the total amount."
msgstr ""
#. module: account
@ -2350,7 +2396,9 @@ msgstr ""
#. module: account
#: help:account.tax,applicable_type:0
msgid "If not applicable (computed through a Python code), the tax won't appear on the invoice."
msgid ""
"If not applicable (computed through a Python code), the tax won't appear on "
"the invoice."
msgstr ""
#. module: account
@ -2552,7 +2600,8 @@ msgstr ""
#. module: account
#: help:account.account.template,reconcile:0
msgid "Check this option if you want the user to reconcile entries in this account."
msgid ""
"Check this option if you want the user to reconcile entries in this account."
msgstr ""
#. module: account
@ -2590,7 +2639,12 @@ msgstr ""
#. module: account
#: help:account.account.template,type:0
msgid "This type is used to differenciate types with special effects in Open ERP: view can not have entries, consolidation are accounts that can have children accounts for multi-company consolidations, payable/receivable are for partners accounts (for debit/credit computations), closed for deprecated accounts."
msgid ""
"This type is used to differenciate types with special effects in Open ERP: "
"view can not have entries, consolidation are accounts that can have children "
"accounts for multi-company consolidations, payable/receivable are for "
"partners accounts (for debit/credit computations), closed for deprecated "
"accounts."
msgstr ""
#. module: account
@ -2730,7 +2784,10 @@ msgstr "日期"
#. module: account
#: help:account.tax.template,sequence:0
msgid "The sequence field is used to order the taxes lines from lower sequences to higher ones. The order is important if you have a tax that has several tax children. In this case, the evaluation order is important."
msgid ""
"The sequence field is used to order the taxes lines from lower sequences to "
"higher ones. The order is important if you have a tax that has several tax "
"children. In this case, the evaluation order is important."
msgstr ""
#. module: account
@ -2941,7 +2998,10 @@ msgstr ""
#. module: account
#: help:account.model.line,date_maturity:0
msgid "The maturity date of the generated entries for this model. You can chosse between the date of the creation action or the the date of the creation of the entries plus the partner payment terms."
msgid ""
"The maturity date of the generated entries for this model. You can chosse "
"between the date of the creation action or the the date of the creation of "
"the entries plus the partner payment terms."
msgstr ""
#. module: account
@ -2973,7 +3033,9 @@ msgstr ""
#. module: account
#: help:account.journal,group_invoice_lines:0
msgid "If this box is checked, the system will try to group the accounting lines when generating them from invoices."
msgid ""
"If this box is checked, the system will try to group the accounting lines "
"when generating them from invoices."
msgstr ""
#. module: account
@ -3120,7 +3182,9 @@ msgstr ""
#. module: account
#: help:account.invoice,reconciled:0
msgid "The account moves of the invoice have been reconciled with account moves of the payment(s)."
msgid ""
"The account moves of the invoice have been reconciled with account moves of "
"the payment(s)."
msgstr ""
#. module: account
@ -3287,7 +3351,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_account_receivable:0
msgid "This account will be used instead of the default one as the receivable account for the current partner"
msgid ""
"This account will be used instead of the default one as the receivable "
"account for the current partner"
msgstr ""
#. module: account
@ -3314,7 +3380,9 @@ msgstr ""
#. module: account
#: help:account.tax.template,tax_group:0
msgid "If a default tax if given in the partner it only override taxes from account (or product) of the same group."
msgid ""
"If a default tax if given in the partner it only override taxes from account "
"(or product) of the same group."
msgstr ""
#. module: account
@ -3352,7 +3420,9 @@ msgstr ""
#. module: account
#: wizard_view:account.move.validate,init:0
msgid "All draft account entries in this journal and period will be validated. It means you won't be able to modify their accouting fields."
msgid ""
"All draft account entries in this journal and period will be validated. It "
"means you won't be able to modify their accouting fields."
msgstr ""
#. module: account
@ -3363,7 +3433,9 @@ msgstr ""
#. module: account
#: help:account.move.line,amount_currency:0
msgid "The amount expressed in an optional other currency if it is a multi-currency entry."
msgid ""
"The amount expressed in an optional other currency if it is a multi-currency "
"entry."
msgstr ""
#. module: account
@ -3520,7 +3592,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_payment_term:0
msgid "This payment term will be used instead of the default one for the current partner"
msgid ""
"This payment term will be used instead of the default one for the current "
"partner"
msgstr ""
#. module: account
@ -3537,7 +3611,9 @@ msgstr ""
#. module: account
#: help:account.tax.code,notprintable:0
#: help:account.tax.code.template,notprintable:0
msgid "Check this box if you don't want any VAT related to this Tax Code to appear on invoices"
msgid ""
"Check this box if you don't want any VAT related to this Tax Code to appear "
"on invoices"
msgstr ""
#. module: account
@ -3591,7 +3667,9 @@ msgstr ""
#. module: account
#: help:account.account,check_history:0
msgid "Check this box if you want to print all entries when printing the General Ledger, otherwise it will only print its balance."
msgid ""
"Check this box if you want to print all entries when printing the General "
"Ledger, otherwise it will only print its balance."
msgstr ""
#. module: account
@ -3679,7 +3757,8 @@ msgstr ""
#. module: account
#: model:ir.module.module,description:account.module_meta_information
msgid "Financial and accounting module that covers:\n"
msgid ""
"Financial and accounting module that covers:\n"
" General accounting\n"
" Cost / Analytic accounting\n"
" Third party accounting\n"
@ -3713,7 +3792,9 @@ msgstr ""
#. module: account
#: help:account.automatic.reconcile,init,account_ids:0
msgid "If no account is specified, the reconciliation will be made using every accounts that can be reconcilied"
msgid ""
"If no account is specified, the reconciliation will be made using every "
"accounts that can be reconcilied"
msgstr ""
#. module: account
@ -3753,7 +3834,9 @@ msgstr ""
#. module: account
#: help:product.template,property_account_expense:0
msgid "This account will be used instead of the default one to value outgoing stock for the current product"
msgid ""
"This account will be used instead of the default one to value outgoing stock "
"for the current product"
msgstr ""
#. module: account
@ -3797,7 +3880,10 @@ msgstr ""
#. module: account
#: help:account.analytic.journal,type:0
msgid "Gives the type of the analytic journal. When a document (eg: an invoice) needs to create analytic entries, Open ERP will look for a matching journal of the same type."
msgid ""
"Gives the type of the analytic journal. When a document (eg: an invoice) "
"needs to create analytic entries, Open ERP will look for a matching journal "
"of the same type."
msgstr ""
#. module: account
@ -3889,7 +3975,9 @@ msgstr ""
#. module: account
#: help:account.tax.template,child_depend:0
msgid "Indicate if the tax computation is based on the value computed for the computation of child taxes or based on the total amount."
msgid ""
"Indicate if the tax computation is based on the value computed for the "
"computation of child taxes or based on the total amount."
msgstr ""
#. module: account
@ -3937,7 +4025,9 @@ msgstr ""
#. module: account
#: help:account.move.line,quantity:0
msgid "The optional quantity expressed by this line, eg: number of product sold. The quantity is not a legal requirement but is very usefull for some reports."
msgid ""
"The optional quantity expressed by this line, eg: number of product sold. "
"The quantity is not a legal requirement but is very usefull for some reports."
msgstr ""
#. module: account
@ -3947,7 +4037,9 @@ msgstr ""
#. module: account
#: help:account.move.line,blocked:0
msgid "You can check this box to mark the entry line as a litigation with the associated partner"
msgid ""
"You can check this box to mark the entry line as a litigation with the "
"associated partner"
msgstr ""
#. module: account
@ -4058,12 +4150,16 @@ msgstr ""
#. module: account
#: constraint:ir.model:0
msgid "The Object name must start with x_ and not contain any special character !"
msgid ""
"The Object name must start with x_ and not contain any special character !"
msgstr ""
#. module: account
#: help:account.account.type,sign:0
msgid "Allows you to change the sign of the balance amount displayed in the reports, so that you can see positive figures instead of negative ones in expenses accounts."
msgid ""
"Allows you to change the sign of the balance amount displayed in the "
"reports, so that you can see positive figures instead of negative ones in "
"expenses accounts."
msgstr ""
#. module: account
@ -4073,7 +4169,9 @@ msgstr ""
#. module: account
#: help:account.move.line,date_maturity:0
msgid "This field is used for payable and receivable entries. You can put the limit date for the payment of this entry line."
msgid ""
"This field is used for payable and receivable entries. You can put the limit "
"date for the payment of this entry line."
msgstr ""
#. module: account
@ -4258,7 +4356,10 @@ msgstr ""
#. module: account
#: help:account.tax,sequence:0
msgid "The sequence field is used to order the tax lines from the lowest sequences to the higher ones. The order is important if you have a tax with several tax children. In this case, the evaluation order is important."
msgid ""
"The sequence field is used to order the tax lines from the lowest sequences "
"to the higher ones. The order is important if you have a tax with several "
"tax children. In this case, the evaluation order is important."
msgstr ""
#. module: account
@ -4431,7 +4532,9 @@ msgstr ""
#. module: account
#: view:wizard.multi.charts.accounts:0
msgid "This will automatically configure your chart of accounts, bank accounts, taxes and journals according to the selected template"
msgid ""
"This will automatically configure your chart of accounts, bank accounts, "
"taxes and journals according to the selected template"
msgstr ""
#. module: account
@ -4506,7 +4609,9 @@ msgstr ""
#. module: account
#: help:account.tax,include_base_amount:0
msgid "Indicate if the amount of tax must be included in the base amount for the computation of the next taxes"
msgid ""
"Indicate if the amount of tax must be included in the base amount for the "
"computation of the next taxes"
msgstr ""
#. module: account
@ -4600,7 +4705,10 @@ msgstr ""
#. module: account
#: help:account.journal,centralisation:0
msgid "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."
msgid ""
"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."
msgstr ""
#. module: account
@ -4733,7 +4841,9 @@ msgstr ""
#. module: account
#: help:account.tax,domain:0
#: help:account.tax.template,domain:0
msgid "This field is only used if you develop your own module allowing developers to create specific taxes in a custom domain."
msgid ""
"This field is only used if you develop your own module allowing developers "
"to create specific taxes in a custom domain."
msgstr ""
#. module: account
@ -4938,7 +5048,9 @@ msgstr ""
#. module: account
#: help:wizard.multi.charts.accounts,seq_journal:0
msgid "Check this box if you want to use a different sequence for each created journal. Otherwise, all will use the same sequence."
msgid ""
"Check this box if you want to use a different sequence for each created "
"journal. Otherwise, all will use the same sequence."
msgstr ""
#. module: account
@ -5226,7 +5338,10 @@ msgstr ""
#. module: account
#: help:account.move.line,tax_amount:0
msgid "If the Tax account is tax code account, this field will contain the taxed amount.If the tax account is base tax code, this field will contain the basic amount(without tax)."
msgid ""
"If the Tax account is tax code account, this field will contain the taxed "
"amount.If the tax account is base tax code, this field "
"will contain the basic amount(without tax)."
msgstr ""
#. module: account
@ -5334,7 +5449,9 @@ msgstr ""
#. module: account
#: constraint:account.period:0
msgid "Invalid period ! Some periods overlap or the date period is not in the scope of the fiscal year. "
msgid ""
"Invalid period ! Some periods overlap or the date period is not in the scope "
"of the fiscal year. "
msgstr ""
#. module: account
@ -5353,7 +5470,10 @@ msgstr ""
#. module: account
#: help:populate_statement_from_inv,init,journal_id:0
msgid "This field allow you to choose the accounting journals you want for filtering the invoices. If you left this field empty, it will search on all sale, purchase and cash journals."
msgid ""
"This field allow you to choose the accounting journals you want for "
"filtering the invoices. If you left this field empty, it will search on all "
"sale, purchase and cash journals."
msgstr ""
#. module: account
@ -5491,7 +5611,9 @@ msgstr ""
#. module: account
#: help:product.template,property_account_income:0
msgid "This account will be used instead of the default one to value incoming stock for the current product"
msgid ""
"This account will be used instead of the default one to value incoming stock "
"for the current product"
msgstr ""
#. module: account
@ -5521,7 +5643,9 @@ msgstr ""
#. module: account
#: help:res.partner,property_account_payable:0
msgid "This account will be used instead of the default one as the payable account for the current partner"
msgid ""
"This account will be used instead of the default one as the payable account "
"for the current partner"
msgstr ""
#. module: account
@ -5691,7 +5815,9 @@ msgstr ""
#. module: account
#: help:product.category,property_account_expense_categ:0
msgid "This account will be used to value outgoing stock for the current product category"
msgid ""
"This account will be used to value outgoing stock for the current product "
"category"
msgstr ""
#. module: account
@ -5767,7 +5893,9 @@ msgstr ""
#. module: account
#: help:account.tax,price_include:0
msgid "Check this if the price you use on the product and invoices includes this tax."
msgid ""
"Check this if the price you use on the product and invoices includes this "
"tax."
msgstr ""
#. module: account
@ -5790,11 +5918,11 @@ msgstr ""
#. module: account
#: help:account.account,reconcile:0
msgid "Check this if the user is allowed to reconcile entries in this account."
msgid ""
"Check this if the user is allowed to reconcile entries in this account."
msgstr ""
#. module: account
#: wizard_button:account.subscription.generate,init,generate:0
msgid "Compute Entry Dates"
msgstr ""

View File

@ -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/>.
#
##############################################################################
@ -128,7 +128,7 @@ class account_invoice(osv.osv):
else:
debit+=debit_tmp
credit+=credit_tmp
if not inv.amount_total:
result = 0.0
elif inv.type in ('out_invoice','in_refund'):
@ -139,7 +139,7 @@ class account_invoice(osv.osv):
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
return res
def _get_lines(self, cr, uid, ids, name, arg, context=None):
@ -209,7 +209,7 @@ class account_invoice(osv.osv):
move[line.move_id.id] = True
for line in r.line_id:
move[line.move_id.id] = True
invoice_ids = []
if move:
invoice_ids = self.pool.get('account.invoice').search(cr, uid, [('move_id','in',move.keys())], context=context)
@ -260,7 +260,7 @@ class account_invoice(osv.osv):
'invoice_line': fields.one2many('account.invoice.line', 'invoice_id', 'Invoice Lines', readonly=True, states={'draft':[('readonly',False)]}),
'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="Link to the automatically generated account moves."),
'move_id': fields.many2one('account.move', 'Invoice Movement', readonly=True, help="Link to the automatically generated Ledger Postings."),
'amount_untaxed': fields.function(_amount_all, method=True, digits=(16, int(config['price_accuracy'])),string='Untaxed',
store={
'account.invoice': (lambda self, cr, uid, ids, c={}: ids, ['invoice_line'], 20),
@ -291,10 +291,10 @@ class account_invoice(osv.osv):
'account.invoice': (lambda self, cr, uid, ids, c={}: ids, None, 50), # Check if we can remove ?
'account.move.line': (_get_invoice_from_line, None, 50),
'account.move.reconcile': (_get_invoice_from_reconcile, None, 50),
}, help="The account moves of the invoice have been reconciled with account moves of the payment(s)."),
}, 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='Move Lines'),
'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=(16, int(config['price_accuracy'])),string='Residual',
store={
'account.invoice': (lambda self, cr, uid, ids, c={}: ids, ['invoice_line'], 50),
@ -305,7 +305,7 @@ class account_invoice(osv.osv):
},
help="Remaining amount due."),
'payment_ids': fields.function(_compute_lines, method=True, relation='account.move.line', type="many2many", string='Payments'),
'move_name': fields.char('Account Move', size=64),
'move_name': fields.char('Ledger Posting', size=64),
'fiscal_position': fields.many2one('account.fiscal.position', 'Fiscal Position')
}
_defaults = {
@ -334,9 +334,8 @@ class account_invoice(osv.osv):
# def get_invoice_address(self, cr, uid, ids):
# res = self.pool.get('res.partner').address_get(cr, uid, [part], ['invoice'])
# return [{}]
def onchange_partner_id(self, cr, uid, ids, type, partner_id,
date_invoice=False, payment_term=False, partner_bank_id=False):
date_invoice=False, payment_term=False, partner_bank_id=False, company_id=False):
invoice_addr_id = False
contact_addr_id = False
partner_payment_term = False
@ -352,6 +351,26 @@ class account_invoice(osv.osv):
contact_addr_id = res['contact']
invoice_addr_id = res['invoice']
p = self.pool.get('res.partner').browse(cr, uid, partner_id)
if company_id:
if p.property_account_receivable.company_id.id != company_id and p.property_account_payable.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(partner_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(partner_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)])
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'])
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 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])
p.property_account_receivable = rec_obj_acc[0]
p.property_account_payable = pay_obj_acc[0]
if type in ('out_invoice', 'out_refund'):
acc_id = p.property_account_receivable.id
else:
@ -372,6 +391,14 @@ class account_invoice(osv.osv):
if type in ('in_invoice', 'in_refund'):
result['value']['partner_bank'] = bank_id
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)
result['value'].update(to_update['value'])
else:
result['value']['date_due'] = False
if partner_bank_id != bank_id:
to_update = self.onchange_partner_bank(cr, uid, ids, bank_id)
@ -406,6 +433,61 @@ class account_invoice(osv.osv):
def onchange_partner_bank(self, cursor, user, ids, partner_bank_id):
return {'value': {}}
def onchange_company_id(self, cr, uid, ids, company_id, part_id, type, invoice_line):
val={}
dom={}
if company_id and part_id and type:
acc_id = False
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)])
if not rec_pro_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'])
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:
raise osv.except_osv(_('Configration Error !'),
_('Can not find account chart for this company, Please Create account.'))
if type in ('out_invoice', 'out_refund'):
acc_id = rec_res_id
else:
acc_id = pay_res_id
val= {'account_id': acc_id}
if ids:
if company_id:
inv_obj = self.browse(cr,uid,ids)
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)])
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]})
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'])
if obj_l.company_id.id != company_id:
raise osv.except_osv(_('Configration Error !'),
_('invoice line account company is not match with invoice company.'))
else:
continue
if company_id:
val['journal_id']=False
journal_ids=self.pool.get('account.journal').search(cr,uid,[('company_id','=',company_id)])
dom={'journal_id': [('id','in',journal_ids)]}
else:
journal_ids=self.pool.get('account.journal').search(cr,uid,[])
dom={'journal_id': [('id','in',journal_ids)]}
return {'value' : val, 'domain': dom }
# go from canceled state to draft state
def action_cancel_draft(self, cr, uid, ids, *args):
self.write(cr, uid, ids, {'state':'draft'})
@ -463,7 +545,7 @@ class account_invoice(osv.osv):
for taxe in ait_obj.compute(cr, uid, id, context=context).values():
ait_obj.create(cr, uid, taxe)
# Update the stored value (fields.function), so we write to trigger recompute
self.pool.get('account.invoice').write(cr, uid, ids, {'invoice_line':[]}, context=context)
self.pool.get('account.invoice').write(cr, uid, ids, {'invoice_line':[]}, context=context)
# self.pool.get('account.invoice').write(cr, uid, ids, {}, context=context)
return True
@ -648,7 +730,7 @@ class account_invoice(osv.osv):
tmp += '-'+str(l.get('product_id',"False"))
tmp += '-'+str(l.get('analytic_account_id',"False"))
tmp += '-'+str(l.get('date_maturity',"False"))
if tmp in line2:
am = line2[tmp]['debit'] - line2[tmp]['credit'] + (l['debit'] - l['credit'])
line2[tmp]['debit'] = (am > 0) and am or 0.0
@ -889,7 +971,7 @@ class account_invoice(osv.osv):
date=context['date_p']
else:
date=time.strftime('%Y-%m-%d')
# Take the amount in currency and the currency of the payment
if 'amount_currency' in context and context['amount_currency'] and 'currency_id' in context and context['currency_id']:
amount_currency = context['amount_currency']
@ -897,7 +979,7 @@ class account_invoice(osv.osv):
else:
amount_currency = False
currency_id = False
# Pay attention to the sign for both debit/credit AND amount_currency
l1 = {
'debit': direction * pay_amount>0 and direction * pay_amount,
@ -996,6 +1078,7 @@ class account_invoice_line(osv.osv):
'invoice_line_tax_id': fields.many2many('account.tax', 'account_invoice_line_tax', 'invoice_line_id', 'tax_id', 'Taxes', domain=[('parent_id','=',False)]),
'note': fields.text('Notes'),
'account_analytic_id': fields.many2one('account.analytic.account', 'Analytic Account'),
'company_id': fields.related('invoice_id','company_id',type='many2one',object='res.company',string='Company')
}
_defaults = {
'quantity': lambda *a: 1,
@ -1014,13 +1097,14 @@ class account_invoice_line(osv.osv):
def product_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, context=None):
if context is None:
context = {}
company_id = context.get('company_id',False)
if not partner_id:
raise osv.except_osv(_('No Partner Defined !'),_("You must first select a partner !") )
if not product:
if type in ('in_invoice', 'in_refund'):
return {'domain':{'product_uom':[]}}
return {'value': {'categ_id': False}, 'domain':{'product_uom':[]}}
else:
return {'value': {'price_unit': 0.0}, 'domain':{'product_uom':[]}}
return {'value': {'price_unit': 0.0, 'categ_id': False}, 'domain':{'product_uom':[]}}
part = self.pool.get('res.partner').browse(cr, uid, partner_id)
fpos = fposition_id and self.pool.get('account.fiscal.position').browse(cr, uid, fposition_id) or False
@ -1028,6 +1112,61 @@ class account_invoice_line(osv.osv):
context.update({'lang': lang})
result = {}
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)])
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)])
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)])
if not in_pro_id:
in_acc = res.product_tmpl_id.property_account_income
in_acc_cate = res.categ_id.property_account_income_categ
if in_acc:
app_acc_in = in_acc
else:
app_acc_in = in_acc_cate
else:
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
if ex_acc:
app_acc_exp = ex_acc
else:
app_acc_exp = ex_acc_cate
else:
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
ex_acc = res.product_tmpl_id.property_account_expense
ex_acc_cate = res.categ_id.property_account_expense_categ
if in_acc or ex_acc:
app_acc_in = in_acc
app_acc_exp = ex_acc
else:
app_acc_in = in_acc_cate
app_acc_exp = ex_acc_cate
# else:
# 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)])
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)
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]
else:
res.categ_id.property_account_income_categ = in_obj_acc[0]
res.categ_id.property_account_expense_categ = exp_obj_acc[0]
if type in ('out_invoice','out_refund'):
a = res.product_tmpl_id.property_account_income.id
@ -1065,6 +1204,9 @@ class account_invoice_line(osv.osv):
res2 = res.uom_id.category_id.id
if res2 :
domain = {'uos_id':[('category_id','=',res2 )]}
prod_pool=self.pool.get('product.product')
result['categ_id'] = res.categ_id.id
return {'value':result, 'domain':domain}
def move_line_get(self, cr, uid, invoice_id, context=None):
@ -1152,12 +1294,12 @@ class account_invoice_tax(osv.osv):
'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=(16,int(config['price_accuracy']))),
}
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:
if company_id:
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)
@ -1172,7 +1314,7 @@ class account_invoice_tax(osv.osv):
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}}
_order = 'sequence'
_defaults = {
'manual': lambda *a: 1,

View File

@ -9,7 +9,7 @@
<field name="arch" type="xml">
<form string="Fiscal Position">
<field name="name" select="1"/>
<field name="company_id" widget="selection"/>
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
<newline/>
<field name="note" colspan="4"/>
<field name="tax_ids" colspan="4" widget="one2many_list">
@ -42,7 +42,7 @@
<field name="arch" type="xml">
<tree string="Fiscal Position">
<field name="name"/>
<field name="company_id"/>
<field name="company_id" groups="base.group_multi_company"/>
</tree>
</field>
</record>

View File

@ -9,7 +9,7 @@
<record id="process_process_invoiceprocess0" model="process.process">
<field eval="1" name="active"/>
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;Customer Invoice Process&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Customer Invoice&quot;&quot;&quot;" name="name"/>
</record>
<!--
@ -20,19 +20,19 @@
<field name="menu_id" ref="account.account_analytic_def_account"/>
<field name="model_id" ref="account.model_account_analytic_account"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Analytic&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Analytic costs to reinvoice purchases, timesheets, ...&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Analytic Costs&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Analytic costs to invoice&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_invoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'open', 'pending', 'close')&quot;&quot;&quot;" name="model_states"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_draftinvoices0" model="process.node">
<field name="menu_id" ref="account.menu_invoice_draft"/>
<field name="menu_id" ref="account.menu_action_invoice_tree1"/>
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Draft Invoices&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Proposed invoice to be checked, validated and printed&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Draft Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Draft state of an invoice&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_invoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -43,7 +43,7 @@
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Create Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Have a number and entries are generated&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Invoice's state is Open&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_invoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -53,8 +53,8 @@
<field name="menu_id" ref="account.menu_action_move_line_form"/>
<field name="model_id" ref="account.model_account_move"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Accounting Entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Validated accounting entries.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Accounting&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Accounting entries.&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_invoiceprocess0"/>
<field eval="0" name="flow_start"/>
</record>
@ -64,7 +64,7 @@
<field name="model_id" ref="account.model_account_bank_statement"/>
<field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Bank Statement&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Statement encoding produces payment entries&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Registered payment&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_invoiceprocess0"/>
<field name="subflow_id" ref="process_process_statementprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
@ -75,8 +75,8 @@
<field name="menu_id" ref="account.menu_action_move_line_form"/>
<field name="model_id" ref="account.model_account_move_line"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Payment Entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Can be draft or validated&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Payment&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Payment entries&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_invoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'valid')&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -87,7 +87,7 @@
<field name="model_id" ref="account.model_account_move_reconcile"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Reconciliation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Reconciliation of entries from invoice(s) and payment(s)&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Comparison between accounting and payment entries&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_invoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='valid'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -98,7 +98,7 @@
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Paid invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Paid invoice when reconciled.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Invoice's state is Done&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_invoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='paid'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -108,8 +108,8 @@
<field name="menu_id" ref="account.menu_action_move_line_search"/>
<field name="model_id" ref="account.model_account_move_line"/>
<field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Accounting Statement&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Accounting entries at statement's confirmation&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Bank Statement&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Bank statement&quot;&quot;&quot;" name="note"/>
<field name="subflow_id" ref="account.process_process_invoiceprocess0"/>
<field name="process_id" ref="process_process_statementprocess0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'valid')&quot;&quot;&quot;" name="model_states"/>
@ -132,8 +132,8 @@
<record id="process_transition_confirmstatementfromdraft0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Confirm statement from draft&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Confirm statement with/without reconciliation from draft statement&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Confirm statement&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;The accountant confirms the statement.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_accountingstatemententries0"/>
<field model="process.node" name="source_node_id" ref="account.process_node_draftstatement0"/>
</record>
@ -141,8 +141,8 @@
<record id="process_transition_analyticinvoice0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;analytic Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;From analytic accounts, Create invoice.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;From analytic accounts&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Analytic costs (timesheets, some purchased products, ...) come from analytic accounts. These generate draft invoices.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_draftinvoices0"/>
<field model="process.node" name="source_node_id" ref="process_node_analytic0"/>
</record>
@ -150,8 +150,8 @@
<record id="process_transition_customerinvoice0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Customer Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Number of entries are generated&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Validation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Draft invoices are checked, validated and printed.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_invoiceinvoice0"/>
<field model="process.node" name="source_node_id" ref="process_node_draftinvoices0"/>
<field eval="[(6,0,[ref('account.t5')])]" name="transition_ids"/>
@ -160,8 +160,8 @@
<record id="process_transition_validentries0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Valid Entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Valid entries from invoice&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Validation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Accountant validates the accounting entries coming from the invoice.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_accountingentries0"/>
<field model="process.node" name="source_node_id" ref="process_node_invoiceinvoice0"/>
</record>
@ -169,8 +169,8 @@
<record id="process_transition_entriesreconcile0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Entries Reconcile&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Reconcile Entries.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Accounting entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Accounting entries are the first input of the reconciliation.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_reconciliation0"/>
<field model="process.node" name="source_node_id" ref="process_node_accountingentries0"/>
</record>
@ -178,8 +178,8 @@
<record id="process_transition_statemententries0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Statement Entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;From statement, create entries&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Validation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Manual or automatic creation of payment entries according to the statements&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_paymententries0"/>
<field model="process.node" name="source_node_id" ref="process_node_bankstatement0"/>
</record>
@ -187,8 +187,8 @@
<record id="process_transition_paymentreconcile0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Payment Reconcile&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Reconcilate the entries from payment&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Payment entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Payment entries are the second input of the reconciliation.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_reconciliation0"/>
<field model="process.node" name="source_node_id" ref="process_node_paymententries0"/>
</record>
@ -196,8 +196,8 @@
<record id="process_transition_reconcilepaid0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Reconcile Paid&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Paid invoice when reconciled.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Payment&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;As soon as the reconciliation is done, the invoice can be paid.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_paidinvoice0"/>
<field model="process.node" name="source_node_id" ref="process_node_reconciliation0"/>
</record>

View File

@ -1,60 +1,60 @@
<?xml version="1.0" ?>
<openerp>
<data>
<!--
Process
-->
<record id="process_process_statementprocess0" model="process.process">
<field eval="1" name="active"/>
<field name="model_id" ref="account.model_account_bank_statement"/>
<field eval="&quot;&quot;&quot;Statement Process&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Statement&quot;&quot;&quot;" name="name"/>
</record>
<!--
Process Node
-->
<record id="process_node_electronicfile0" model="process.node">
<field name="menu_id" ref="account.menu_bank_statement_tree"/>
<field name="model_id" ref="account.model_account_bank_statement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Electronic File&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Import from your bank statements&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Automatic entry&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_statementprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_manually0" model="process.node">
<field name="menu_id" ref="account.menu_bank_statement_tree"/>
<field name="model_id" ref="account.model_account_bank_statement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Manually&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Encode manually the statement&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Manual entry&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_statementprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_importinvoice0" model="process.node">
<field name="menu_id" ref="account.menu_bank_statement_tree"/>
<field name="model_id" ref="account.model_account_bank_statement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Import invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Import from invoices or payments&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Import from invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Statement from invoice or payment&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_statementprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_draftstatement0" model="process.node">
<field name="menu_id" ref="account.menu_bank_statement_tree"/>
<field name="model_id" ref="account.model_account_bank_statement"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Draft statement&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Set starting and ending balance for control&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;State is draft&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_statementprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -63,33 +63,34 @@
<!--
Process Transition
-->
<record id="process_transition_filestatement0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;File statement&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Import file from your bank statement&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Automatic import of the bank statement&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Import of the statement in the system from an electronic file&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_draftstatement0"/>
<field model="process.node" name="source_node_id" ref="process_node_electronicfile0"/>
</record>
<record id="process_transition_invoicemanually0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Manually statement&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Encode manually statement comes into the draft statement&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Manual entry&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;A statement with manual entries becomes a draft statement.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_draftstatement0"/>
<field model="process.node" name="source_node_id" ref="process_node_manually0"/>
</record>
<record id="process_transition_invoiceimport0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Invoice import&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Import invoice from statement&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Import from invoice or payment&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Import of the statement in the system from a supplier or customer invoice&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_draftstatement0"/>
<field model="process.node" name="source_node_id" ref="process_node_importinvoice0"/>
</record>
</data>
</openerp>

View File

@ -9,7 +9,7 @@
<record id="process_process_supplierinvoiceprocess0" model="process.process">
<field eval="1" name="active"/>
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;Supplier Invoice Process&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Supplier Invoice&quot;&quot;&quot;" name="name"/>
</record>
<!--
@ -20,19 +20,19 @@
<field name="menu_id" ref="account.account_analytic_def_account"/>
<field name="model_id" ref="account.model_account_analytic_account"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Analytic&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Analytic costs to reinvoice purchases, timesheets, ...&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Analytic Costs&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Analytic costs to invoice&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_supplierinvoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state in ('draft', 'open', 'pending', 'close')&quot;&quot;&quot;" name="model_states"/>
<field eval="1" name="flow_start"/>
</record>
<record id="process_node_supplierdraftinvoices0" model="process.node">
<field name="menu_id" ref="account.menu_invoice_draft"/>
<field name="menu_id" ref="account.menu_action_invoice_tree2"/>
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Draft Invoices&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Pre-generated invoice from control&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Draft state of an invoice&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_supplierinvoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -42,8 +42,8 @@
<field name="menu_id" ref="account.menu_finance_invoice"/>
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Control Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Have a number and entries are generated&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Create Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Invoice's state is Open&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_supplierinvoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -54,7 +54,7 @@
<field name="model_id" ref="account.model_account_bank_statement"/>
<field eval="&quot;&quot;&quot;subflow&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Bank Statement&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Statement encoding produces payment entries&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Manually or automatically entered in the system&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_supplierinvoiceprocess0"/>
<field name="subflow_id" ref="process_process_statementprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
@ -65,8 +65,8 @@
<field name="menu_id" ref="account.menu_action_move_line_form"/>
<field name="model_id" ref="account.model_account_move"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Accounting Entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Validated accounting entries.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Accounting&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Accounting entries.&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_supplierinvoiceprocess0"/>
<field eval="0" name="flow_start"/>
</record>
@ -76,7 +76,7 @@
<field name="model_id" ref="account.model_account_move_line"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Payment Order&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Select invoices you want to pay and manages advances&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Payment of invoices&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_supplierinvoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='draft'&quot;&quot;&quot;" name="model_states"/>
<field eval="1" name="flow_start"/>
@ -87,7 +87,7 @@
<field name="model_id" ref="account.model_account_move_reconcile"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Reconciliation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Reconciliation of entries from invoice(s) and payment(s)&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Comparison between accounting and payment entries&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_supplierinvoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='valid'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -98,7 +98,7 @@
<field name="model_id" ref="account.model_account_invoice"/>
<field eval="&quot;&quot;&quot;state&quot;&quot;&quot;" name="kind"/>
<field eval="&quot;&quot;&quot;Paid invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Paid invoice when reconciled.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Invoice's state is Done.&quot;&quot;&quot;" name="note"/>
<field name="process_id" ref="process_process_supplierinvoiceprocess0"/>
<field eval="&quot;&quot;&quot;object.state=='paid'&quot;&quot;&quot;" name="model_states"/>
<field eval="0" name="flow_start"/>
@ -111,8 +111,8 @@
<record id="process_transition_supplieranalyticcost0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Analytic Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;From analytic accounts, Create invoice.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;From analytic accounts&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Analytic costs (timesheets, some purchased products, ...) come from analytic accounts. These generate draft supplier invoices.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_supplierdraftinvoices0"/>
<field model="process.node" name="source_node_id" ref="process_node_analyticcost0"/>
</record>
@ -120,8 +120,8 @@
<record id="process_transition_suppliercustomerinvoice0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Customer Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Number of entries are generated&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Validation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Draft invoices are validated. &quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_supplierinvoiceinvoice0"/>
<field model="process.node" name="source_node_id" ref="process_node_supplierdraftinvoices0"/>
<field eval="[(6,0,[ref('account.t5')])]" name="transition_ids"/>
@ -130,8 +130,8 @@
<record id="process_transition_suppliervalidentries0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Valid Entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Valid entries from invoice&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Validation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Accountant validates the accounting entries coming from the invoice. &quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_supplieraccountingentries0"/>
<field model="process.node" name="source_node_id" ref="process_node_supplierinvoiceinvoice0"/>
</record>
@ -139,8 +139,8 @@
<record id="process_transition_supplierentriesreconcile0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Entries Reconcile&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Reconcile Entries.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Accounting entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Accounting entries are an input of the reconciliation.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_supplierreconciliation0"/>
<field model="process.node" name="source_node_id" ref="process_node_supplieraccountingentries0"/>
</record>
@ -148,8 +148,8 @@
<record id="process_transition_paymentorderbank0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Payment Reconcilation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Reconcilation of entries from payment order.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Payment entries&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;The payment order is sent to the bank.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_supplierbankstatement0"/>
<field model="process.node" name="source_node_id" ref="process_node_supplierpaymentorder0"/>
</record>
@ -157,8 +157,8 @@
<record id="process_transition_paymentorderreconcilation0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Payment Reconcilation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Reconcilation of entries from payment order.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;Validation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Bank statements are entered in the system.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_supplierreconciliation0"/>
<field model="process.node" name="source_node_id" ref="process_node_supplierbankstatement0"/>
</record>
@ -166,8 +166,8 @@
<record id="process_transition_supplierreconcilepaid0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Reconcile Paid&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;Paid invoice when reconciled.&quot;&quot;&quot;" name="note"/>
<field eval="&quot;&quot;&quot;System payment&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;As soon as the reconciliation is done, the invoice's state turns to “done” (i.e. paid) in the system.&quot;&quot;&quot;" name="note"/>
<field model="process.node" name="target_node_id" ref="process_node_supplierpaidinvoice0"/>
<field model="process.node" name="source_node_id" ref="process_node_supplierreconciliation0"/>
</record>

View File

@ -189,7 +189,11 @@ class account_analytic_account(osv.osv):
'date': fields.date('Date End'),
'company_id': fields.many2one('res.company', 'Company', required=True),
'company_currency_id': fields.function(_get_company_currency, method=True, type='many2one', relation='res.currency', string='Currency'),
'state': fields.selection([('draft','Draft'), ('open','Open'), ('pending','Pending'), ('close','Close'),], 'State', required=True),
'state': fields.selection([('draft','Draft'), ('open','Open'), ('pending','Pending'), ('close','Close'),], 'State', required=True,
help='* When an account is created its in \'Draft\' state.\
\n* If any associated partner is there, it can be in \'Open\' state.\
\n* If any pending balance is there it can be in \'Pending\'. \
\n* And finally when all the transactions are over, it can be in \'Close\' state.'),
}
def _default_company(self, cr, uid, context={}):
@ -269,10 +273,12 @@ class account_analytic_journal(osv.osv):
'active' : fields.boolean('Active'),
'type': fields.selection([('sale','Sale'), ('purchase','Purchase'), ('cash','Cash'), ('general','General'), ('situation','Situation')], 'Type', size=32, required=True, help="Gives the type of the analytic journal. When a document (eg: an invoice) needs to create analytic entries, Open ERP will look for a matching journal of the same type."),
'line_ids' : fields.one2many('account.analytic.line', 'journal_id', 'Lines'),
'company_id': fields.many2one('res.company', 'Company', required=True),
}
_defaults = {
'active': lambda *a: True,
'type': lambda *a: 'general',
'company_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.id,
}
account_analytic_journal()

View File

@ -80,7 +80,7 @@
</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"/>
<record id="act_account_renew_view" model="ir.actions.act_window">
<field name="name">Accounts to Renew</field>
<field name="type">ir.actions.act_window</field>
@ -88,7 +88,7 @@
<field name="view_type">form</field>
<field name="view_mode">tree,form</field>
<field name="domain">[('date','&lt;',time.strftime('%Y-%m-%d %H:%M:%S'))]</field>
<field name="filter" eval="True"/>
<field name="filter" eval="True"/>
</record>
<record id="action_account_analytic_account_tree2" model="ir.actions.act_window">
@ -105,10 +105,10 @@
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"/>
<menuitem icon="STOCK_INDENT" action="wizard_analytic_account_chart" id="menu_action_analytic_account_tree2" parent="account.menu_finance_charts" type="wizard"/>
<record id="analytic_account_form" model="ir.actions.act_window">
<field name="name">New Analytic Account</field>
<field name="res_model">account.analytic.account</field>
@ -116,7 +116,6 @@
<field name="view_mode">form,tree,graph</field>
<field eval="view_account_analytic_account_form" name="view_id"/>
</record>
<menuitem action="analytic_account_form" id="account_analytic_form" parent="account.account_analytic_def_account"/>
<menuitem id="next_id_40" name="Analytic" parent="account.menu_finance_reporting"/><menuitem action="action_account_analytic_account_tree2" id="account_analytic_chart_balance" parent="next_id_40"/>
@ -183,7 +182,7 @@
<field name="view_type">form</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 Encoding by Line"/>
<wizard id="action_account_analytic_line" menu="False" model="account.analytic.line" name="account.analytic.line" string="Making Entries by Line"/>
<menuitem id="next_id_41" name="Analytic Entries" parent="account.menu_finance_entries"/>
<menuitem type="wizard" icon="STOCK_JUSTIFY_FILL" action="action_account_analytic_line" id="account_entries_analytic_entries" parent="next_id_41"/>
@ -258,6 +257,7 @@
<field name="code" select="1"/>
<field name="type" select="2"/>
<field name="active" select="2"/>
<field name="company_id"/>
</form>
</field>
</record>

View File

@ -12,28 +12,173 @@
<field name="name">Finance / Manager</field>
</record>
<record id="menu_finance_configuration" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_manager')])]" name="groups_id"/>
</record>
<record id="menu_finance_configuration" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_manager')])]" name="groups_id"/>
</record>
<record id="menu_finance_reporting" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_manager')])]" name="groups_id"/>
</record>
<record id="menu_finance_reporting" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_manager')])]" name="groups_id"/>
</record>
<record id="menu_finance_legal_statement" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_manager')])]" name="groups_id"/>
</record>
<record id="menu_finance_legal_statement" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_manager')])]" name="groups_id"/>
</record>
<record id="menu_finance_invoice" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_invoice')])]" name="groups_id"/>
</record>
<record id="menu_finance_invoice" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_invoice')])]" name="groups_id"/>
</record>
<record id="menu_automatic_reconcile" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_user')])]" name="groups_id"/>
</record>
<record id="menu_automatic_reconcile" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_user')])]" name="groups_id"/>
</record>
<record id="menu_finance_charts" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_user'), ref('group_account_manager')])]" name="groups_id"/>
</record>
<record id="menu_finance_charts" model="ir.ui.menu">
<field eval="[(6,0,[ref('group_account_user'), ref('group_account_manager')])]" name="groups_id"/>
</record>
<record id="account_move_comp_rule_group" model="ir.rule.group">
<field name="name">Account Entry</field>
<field ref="model_account_move" name="model_id"/>
<field eval="True" name="global"/>
</record>
<record id="account_move_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.move'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="account_move_comp_rule_group"/>
</record>
<record id="account_move_line_comp_rule_group" model="ir.rule.group">
<field name="name">Entry lines</field>
<field model="ir.model" name="model_id" ref="model_account_move_line"/>
<field eval="True" name="global"/>
</record>
<record id="account_move_line_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.move.line'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="account_move_line_comp_rule_group"/>
</record>
<record id="journal_period_comp_rule_group" model="ir.rule.group">
<field name="name">Journal Period</field>
<field model="ir.model" name="model_id" ref="model_account_journal_period"/>
<field eval="True" name="global"/>
</record>
<record id="journal_period_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.journal.period'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="journal_period_comp_rule_group"/>
</record>
<record id="journal_comp_rule_group" model="ir.rule.group">
<field name="name">Journal multi-company</field>
<field model="ir.model" name="model_id" ref="model_account_journal"/>
<field eval="True" name="global"/>
</record>
<record id="journal_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.journal'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="journal_comp_rule_group"/>
</record>
<record id="analytic_journal_comp_rule_group" model="ir.rule.group">
<field name="name">Analytic journal multi-company</field>
<field model="ir.model" name="model_id" ref="model_account_analytic_journal"/>
<field eval="True" name="global"/>
</record>
<record id="analytic_journal_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.analytic.journal'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="analytic_journal_comp_rule_group"/>
</record>
<record id="analytic_journal_comp_rule_group1" model="ir.rule.group">
<field name="name">Analytic journal multi-company</field>
<field model="ir.model" name="model_id" ref="model_account_analytic_journal"/>
<field eval="True" name="global"/>
</record>
<record id="analytic_journal_comp_rule_false" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.analytic.journal'),('name','=','company_id')]"/>
<field name="operator">=</field>
<field name="operand">False</field>
<field name="rule_group" ref="analytic_journal_comp_rule_group1"/>
</record>
<record id="period_comp_rule_group" model="ir.rule.group">
<field name="name">Period multi-company</field>
<field model="ir.model" name="model_id" ref="model_account_period"/>
<field eval="True" name="global"/>
</record>
<record id="period_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.period'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="period_comp_rule_group"/>
</record>
<record id="fiscal_year_comp_rule_group" model="ir.rule.group">
<field name="name">Fiscal year multi-company</field>
<field model="ir.model" name="model_id" ref="model_account_fiscalyear"/>
<field eval="True" name="global"/>
</record>
<record id="fiscal_year_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.fiscalyear'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="fiscal_year_comp_rule_group"/>
</record>
<record id="account_comp_rule_group" model="ir.rule.group">
<field name="name">Account multi-company</field>
<field model="ir.model" name="model_id" ref="model_account_account"/>
<field eval="True" name="global"/>
</record>
<record id="account_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.account'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="account_comp_rule_group"/>
</record>
<record id="tax_comp_rule_group" model="ir.rule.group">
<field name="name">Tax multi-company</field>
<field model="ir.model" name="model_id" ref="model_account_tax"/>
<field eval="True" name="global"/>
</record>
<record id="tax_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.tax'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="tax_comp_rule_group"/>
</record>
<record id="tax_code_comp_rule_group" model="ir.rule.group">
<field name="name">Tax code multi-company</field>
<field model="ir.model" name="model_id" ref="model_account_tax_code"/>
<field eval="True" name="global"/>
</record>
<record id="tax_code_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.tax.code'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="tax_code_comp_rule_group"/>
</record>
<record id="invoice_comp_rule_group" model="ir.rule.group">
<field name="name">Invoice multi-company</field>
<field model="ir.model" name="model_id" ref="model_account_invoice"/>
<field eval="True" name="global"/>
</record>
<record id="invoice_comp_rule" model="ir.rule">
<field model="ir.model.fields" name="field_id" search="[('model','=','account.invoice'),('name','=','company_id')]"/>
<field name="operator">child_of</field>
<field name="operand">user.company_id.id</field>
<field name="rule_group" ref="invoice_comp_rule_group"/>
</record>
</data></openerp>

View File

@ -60,7 +60,8 @@ def _action_open_window(self, cr, uid, data, context):
state = pooler.get_pool(cr.dbname).get('account.period').read(cr, uid, [form['period_id']])[0]['state']
if state == 'done':
raise wizard.except_wizard(_('UserError'), _('This period is already closed !'))
jp.create(cr, uid, {'name':name, 'period_id': form['period_id'], 'journal_id':form['journal_id']})
company = pooler.get_pool(cr.dbname).get('account.period').read(cr, uid, [form['period_id']])[0]['company_id'][0]
jp.create(cr, uid, {'name':name, 'period_id': form['period_id'], 'journal_id':form['journal_id'], 'company_id':company})
ids = jp.search(cr, uid, [('journal_id','=',form['journal_id']), ('period_id','=',form['period_id'])])
jp = jp.browse(cr, uid, ids, context=context)[0]
name = (jp.journal_id.code or '') + ':' + (jp.period_id.code or '')

View File

@ -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/>.
#
##############################################################################
@ -36,7 +36,7 @@ model_fields = {
form = """<?xml version="1.0"?>
<form string="Use Model">
<label string="Move Lines Created."/>
<label string="Entry Lines Created."/>
</form>
"""
fields = {

View File

@ -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/>.
#
##############################################################################
@ -72,7 +72,7 @@ def _validate_move_lines(self, cr, uid, data, context={}):
move_ids.append(line.move_id.id)
move_ids = list(set(move_ids))
if not move_ids:
raise wizard.except_wizard(_('Warning'), _('Selected Move lines does not have any account move enties in draft state'))
raise wizard.except_wizard(_('Warning'), _('Selected Entry Lines does not have any account move enties in draft state'))
res = move_obj.button_validate(cr, uid, move_ids, context)
return {}

Some files were not shown because too many files have changed in this diff Show More