[MERGE] merge with dev3 branch
bzr revid: psi@tinyerp.co.in-20100513044445-qoveaysl25oiboxb
This commit is contained in:
+25
-47
@@ -122,6 +122,16 @@ class account_account_type(osv.osv):
|
||||
'partner_account': fields.boolean('Partner account'),
|
||||
'close_method': fields.selection([('none', 'None'), ('balance', 'Balance'), ('detail', 'Detail'), ('unreconciled', 'Unreconciled')], 'Deferral Method', required=True),
|
||||
'sign': fields.selection([(-1, 'Negative'), (1, 'Positive')], 'Sign on Reports', required=True, help='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.'),
|
||||
'report_type':fields.selection([
|
||||
('none','/'),
|
||||
('income','Profilt & Loss (Income Accounts)'),
|
||||
('expanse','Profilt & Loss (Expanse Accounts)'),
|
||||
('asset','Balance Sheet (Assets Accounts)'),
|
||||
('liabilities','Balance Sheet (Liabilities Accounts)')
|
||||
],'Type Heads', select=True, readonly=False, help="According value related accounts will be display on respective reports (Balance Sheet Profit & Loss Account)"),
|
||||
'parent_id':fields.many2one('account.account.type', 'Parent Type', required=False),
|
||||
'child_ids':fields.one2many('account.account.type', 'parent_id', 'Child Types', required=False),
|
||||
'note': fields.text('Description'),
|
||||
}
|
||||
_defaults = {
|
||||
'close_method': lambda *a: 'none',
|
||||
@@ -129,6 +139,15 @@ class account_account_type(osv.osv):
|
||||
'sign': lambda *a: 1,
|
||||
}
|
||||
_order = "sequence"
|
||||
|
||||
def _check_recursion(self, cr, uid, ids):
|
||||
#TODO: Need to check for recusrion
|
||||
return True
|
||||
|
||||
_constraints = [
|
||||
(_check_recursion, 'Error ! You can not create recursive types.', ['parent_id'])
|
||||
]
|
||||
|
||||
account_account_type()
|
||||
|
||||
def _code_get(self, cr, uid, context={}):
|
||||
@@ -1764,52 +1783,6 @@ class account_subscription_line(osv.osv):
|
||||
_rec_name = 'date'
|
||||
account_subscription_line()
|
||||
|
||||
|
||||
class account_config_wizard(osv.osv_memory):
|
||||
_name = 'account.config.wizard'
|
||||
_inherit = 'res.config'
|
||||
|
||||
_columns = {
|
||||
'name':fields.char(
|
||||
'Name', required=True, size=64,
|
||||
help="Name of the fiscal year as displayed on screens."),
|
||||
'code':fields.char(
|
||||
'Code', required=True, size=64,
|
||||
help="Name of the fiscal year as displayed in reports."),
|
||||
'date1': fields.date('Start Date', required=True),
|
||||
'date2': fields.date('End Date', required=True),
|
||||
'period':fields.selection([('month','Month'), ('3months','3 Months')],
|
||||
'Periods', required=True),
|
||||
}
|
||||
_defaults = {
|
||||
'code': lambda *a: time.strftime('%Y'),
|
||||
'name': lambda *a: time.strftime('%Y'),
|
||||
'date1': lambda *a: time.strftime('%Y-01-01'),
|
||||
'date2': lambda *a: time.strftime('%Y-12-31'),
|
||||
'period':lambda *a:'month',
|
||||
}
|
||||
|
||||
def execute(self, cr, uid, ids, context=None):
|
||||
for res in self.read(cr,uid,ids):
|
||||
if 'date1' in res and 'date2' in res:
|
||||
res_obj = self.pool.get('account.fiscalyear')
|
||||
start_date=res['date1']
|
||||
end_date=res['date2']
|
||||
name=res['name']#DateTime.strptime(start_date, '%Y-%m-%d').strftime('%m.%Y') + '-' + DateTime.strptime(end_date, '%Y-%m-%d').strftime('%m.%Y')
|
||||
vals={
|
||||
'name':name,
|
||||
'code':name,
|
||||
'date_start':start_date,
|
||||
'date_stop':end_date,
|
||||
}
|
||||
new_id=res_obj.create(cr, uid, vals, context=context)
|
||||
if res['period']=='month':
|
||||
res_obj.create_period(cr,uid,[new_id])
|
||||
elif res['period']=='3months':
|
||||
res_obj.create_period3(cr,uid,[new_id])
|
||||
account_config_wizard()
|
||||
|
||||
|
||||
# ---------------------------------------------------------------
|
||||
# Account Templates : Account, Tax, Tax Code and chart. + Wizard
|
||||
# ---------------------------------------------------------------
|
||||
@@ -2164,6 +2137,7 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
||||
'company_id': lambda self, cr, uid, c: self.pool.get('res.users').browse(cr,uid,[uid],c)[0].company_id.id,
|
||||
'chart_template_id': _get_chart,
|
||||
'code_digits': lambda *a:6,
|
||||
'seq_journal': True
|
||||
}
|
||||
|
||||
def execute(self, cr, uid, ids, context=None):
|
||||
@@ -2436,10 +2410,14 @@ class account_bank_accounts_wizard(osv.osv_memory):
|
||||
_name='account.bank.accounts.wizard'
|
||||
|
||||
_columns = {
|
||||
'acc_no':fields.many2one('res.partner.bank','Account No.',required=True),
|
||||
'acc_name':fields.char('Account Name.', size=64, required=True),
|
||||
'bank_account_id':fields.many2one('wizard.multi.charts.accounts', 'Bank Account', required=True),
|
||||
'currency_id':fields.many2one('res.currency', 'Currency'),
|
||||
'account_type':fields.selection([('cash','Cash'),('check','Check'),('bank','Bank')], 'Type', size=32),
|
||||
}
|
||||
_defaults = {
|
||||
'currency_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.currency_id.id,
|
||||
}
|
||||
|
||||
account_bank_accounts_wizard()
|
||||
|
||||
|
||||
@@ -17,17 +17,51 @@
|
||||
</separator>
|
||||
<xpath expr="//label[@string='description']"
|
||||
position="attributes">
|
||||
<attribute name="string">You can enhance OpenERP's basic accounting support with a few additional OpenERP applications</attribute>
|
||||
<attribute name="string">You can enhance OpenERP's basic accounting support with a few additional OpenERP applications.</attribute>
|
||||
</xpath>
|
||||
|
||||
<group colspan="8">
|
||||
<separator string="Accounting" colspan="4"/>
|
||||
<xpath expr="//button[@string='Install Modules']" position="attributes">
|
||||
<attribute name="string">Configure</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='rowspan'>23</attribute>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
<group colspan="8">
|
||||
<group colspan="4" height="450" width="600">
|
||||
<field name="charts"/>
|
||||
<field name="account_analytic_default"/>
|
||||
<field name="account_analytic_plans"/>
|
||||
<field name="account_payment"/>
|
||||
<field name="account_followup"/>
|
||||
<field name="account_asset"/>
|
||||
<group colspan="4" attrs="{'invisible':[('charts','!=','configurable')]}">
|
||||
<field name="sale_tax" colspan="2"/>
|
||||
<field name="purchase_tax" colspan="2"/>
|
||||
</group>
|
||||
<group colspan="4" attrs="{'invisible':[('charts','!=','configurable')]}">
|
||||
<separator col="4" colspan="4" string="Bank and Cost Account"/>
|
||||
<field colspan="4" mode="tree" name="bank_accounts_id" nolabel="1" widget="one2many_list">
|
||||
<form string="Bank Information">
|
||||
<field name="acc_name"/>
|
||||
<field name="account_type"/>
|
||||
<field name="currency_id" widget="selection"/>
|
||||
</form>
|
||||
<tree editable="bottom" string="Bank Information">
|
||||
<field name="acc_name"/>
|
||||
<field name="account_type"/>
|
||||
<field name="currency_id" widget="selection"/>
|
||||
</tree>
|
||||
</field>
|
||||
</group>
|
||||
<group colspan="4">
|
||||
<separator col="4" colspan="4" string="Configure Fiscal Year"/>
|
||||
<field name="date_start" on_change="on_change_start_date(date_start)"/>
|
||||
<field name="date_stop"/>
|
||||
<field name="period" colspan="4"/>
|
||||
</group>
|
||||
<group colspan="4" groups="base.group_extended">
|
||||
<separator col="4" colspan="4" string="Install Extra Account Module"/>
|
||||
<field name="account_analytic_plans"/>
|
||||
<field name="account_payment"/>
|
||||
<field name="account_followup"/>
|
||||
<field name="account_asset"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
</data>
|
||||
</field>
|
||||
@@ -46,6 +80,20 @@
|
||||
<record id="account_installer_todo" model="ir.actions.todo">
|
||||
<field name="action_id" ref="action_account_installer"/>
|
||||
<field name="sequence">3</field>
|
||||
<field name="restart">onskip</field>
|
||||
</record>
|
||||
|
||||
<record id="account_ir_actions_todo_tree" model="ir.ui.view">
|
||||
<field name="model">ir.actions.todo</field>
|
||||
<field name="name">account_installer_action_replace</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="inherit_id" ref="base.ir_actions_todo_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@string='Launch']" position="replace">
|
||||
<button name="%(action_account_installer)d" states="open,skip" string="Launch" type="action" icon="gtk-execute" help="Launch Configuration Wizard"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -467,12 +467,24 @@
|
||||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Account Type">
|
||||
<field name="name" select="1"/>
|
||||
<field name="code" select="1"/>
|
||||
<field name="sequence"/>
|
||||
<field name="sign"/>
|
||||
<field name="close_method"/>
|
||||
<field name="partner_account"/>
|
||||
<group col="6" colspan="4">
|
||||
<field name="name" select="1" colspan="4"/>
|
||||
<field name="code" select="1"/>
|
||||
<field name="sequence"/>
|
||||
<field name="parent_id"/>
|
||||
<field name="partner_account"/>
|
||||
</group>
|
||||
<group col="2" colspan="2">
|
||||
<separator string="Reporting Configuration" colspan="4"/>
|
||||
<field name="report_type" select="2"/>
|
||||
<field name="sign"/>
|
||||
</group>
|
||||
<group col="2" colspan="2">
|
||||
<separator string="Closing Method" colspan="4"/>
|
||||
<field name="close_method"/>
|
||||
</group>
|
||||
<separator string="Description" colspan="4"/>
|
||||
<field name="note" colspan="4" nolabel="1"/>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
@@ -1445,49 +1457,6 @@
|
||||
|
||||
<act_window domain="[('partner_id', '=', active_id)]" id="act_account_partner_account_move" name="All account entries" res_model="account.move.line" src_model="res.partner"/>
|
||||
|
||||
|
||||
|
||||
<!-- configuration wizard view -->
|
||||
|
||||
<record id="view_account_config_wizard_form" model="ir.ui.view">
|
||||
<field name="name">Account Configure wizard</field>
|
||||
<field name="model">account.config.wizard</field>
|
||||
<field name="type">form</field>
|
||||
<field name="inherit_id" ref="base.res_config_view_base"/>
|
||||
<field name="arch" type="xml">
|
||||
<data>
|
||||
<form position="attributes">
|
||||
<attribute name="string">Account Configure</attribute>
|
||||
</form>
|
||||
<group string="res_config_contents" position="replace">
|
||||
<separator col="4" colspan="4" string="Create a Fiscal Year"/>
|
||||
<field name="name"/>
|
||||
<field name="code"/>
|
||||
<field name="date1"/>
|
||||
<field name="date2"/>
|
||||
<field name="period" colspan="4"/>
|
||||
</group>
|
||||
<xpath expr='//button[@name="action_skip"]' position="replace"/>
|
||||
</data>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="action_account_config_wizard_form" model="ir.actions.act_window">
|
||||
<field name="name">Account Configure Wizard </field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">account.config.wizard</field>
|
||||
<field name="view_id" ref="view_account_config_wizard_form"/>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">form</field>
|
||||
<field name="target">new</field>
|
||||
</record>
|
||||
|
||||
<!-- register configuration wizard -->
|
||||
<record id="config_fiscalyear" model="ir.actions.todo">
|
||||
<field name="action_id" ref="action_account_config_wizard_form"/>
|
||||
<field name="restart">onskip</field>
|
||||
</record>
|
||||
|
||||
<record id="view_account_addtmpl_wizard_form" model="ir.ui.view">
|
||||
<field name="name">Account Add wizard</field>
|
||||
<field name="model">account.addtmpl.wizard</field>
|
||||
@@ -1741,25 +1710,35 @@
|
||||
<form position="attributes">
|
||||
<attribute name="string">Generate Chart of Accounts from a Chart Template</attribute>
|
||||
</form>
|
||||
<separator string="title" position="attributes">
|
||||
<attribute name="string"
|
||||
>Generate Chart of Accounts from a Chart Template</attribute>
|
||||
</separator>
|
||||
<xpath expr="//label[@string='description']" position="attributes">
|
||||
<attribute name="string">This will automatically configure your chart of accounts, bank accounts, taxes and journals according to the selected template</attribute>
|
||||
<attribute name="width">150</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='rowspan'>15</attribute>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
<group string="res_config_contents" position="replace">
|
||||
<separator col="4" colspan="4" string="
|
||||
Generate Chart of Accounts from a Chart Template"/>
|
||||
<label align="0.0" colspan="4"
|
||||
string="This will automatically configure your chart of accounts, bank accounts, taxes and journals according to the selected template"/>
|
||||
<field name="company_id" widget="selection"
|
||||
groups="base.group_multi_company"/>
|
||||
/>
|
||||
<field name ="code_digits" />
|
||||
<field name="chart_template_id"/>
|
||||
<field name ="seq_journal" />
|
||||
<field colspan="4" mode="tree" name="bank_accounts_id"
|
||||
nolabel="1" widget="one2many_list">
|
||||
<form string="Bank Information">
|
||||
<field name="acc_no"/>
|
||||
<field name="currency_id"/>
|
||||
<field name="acc_name"/>
|
||||
<field name="account_type"/>
|
||||
<field name="currency_id" widget="selection"/>
|
||||
</form>
|
||||
<tree editable="bottom" string="Bank Information">
|
||||
<field name="acc_no"/>
|
||||
<field name="currency_id"/>
|
||||
<field name="acc_name"/>
|
||||
<field name="account_type"/>
|
||||
<field name="currency_id" widget="selection"/>
|
||||
</tree>
|
||||
</field>
|
||||
</group>
|
||||
|
||||
@@ -0,0 +1,516 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data noupdate="1">
|
||||
|
||||
<!-- Types -->
|
||||
<record model="account.account.type" id="conf_account_type_receivable" >
|
||||
<field name="name">Receivable</field>
|
||||
<field name="code">receivable</field>
|
||||
<field name="close_method">unreconciled</field>
|
||||
</record>
|
||||
|
||||
<record model="account.account.type" id="conf_account_type_payable" >
|
||||
<field name="name">Payable</field>
|
||||
<field name="code">payable</field>
|
||||
<field name="close_method">unreconciled</field>
|
||||
</record>
|
||||
|
||||
<record model="account.account.type" id="conf_account_type_view">
|
||||
<field name="name">View</field>
|
||||
<field name="code">view</field>
|
||||
<field name="close_method">none</field>
|
||||
</record>
|
||||
|
||||
<record model="account.account.type" id="conf_account_type_income" >
|
||||
<field name="name">Income</field>
|
||||
<field name="code">income</field>
|
||||
<field name="close_method">none</field>
|
||||
</record>
|
||||
|
||||
<record model="account.account.type" id="conf_account_type_expense">
|
||||
<field name="name">Expense</field>
|
||||
<field name="code">expense</field>
|
||||
<field name="close_method">none</field>
|
||||
</record>
|
||||
|
||||
<record model="account.account.type" id="conf_account_type_tax">
|
||||
<field name="name">Tax</field>
|
||||
<field name="code">tax</field>
|
||||
<field name="close_method">unreconciled</field>
|
||||
</record>
|
||||
|
||||
<record model="account.account.type" id="conf_account_type_cash">
|
||||
<field name="name">Cash</field>
|
||||
<field name="code">cash</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
|
||||
<record model="account.account.type" id="conf_account_type_asset">
|
||||
<field name="name">Asset</field>
|
||||
<field name="code">asset</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
|
||||
<record model="account.account.type" id="conf_account_type_equity">
|
||||
<field name="name">Equity</field>
|
||||
<field name="code">equity</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
|
||||
<record model="account.account.type" id="conf_account_type_bnk">
|
||||
<field name="name">Bank</field>
|
||||
<field name="code">bank</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
<record model="account.account.type" id="conf_account_type_chk">
|
||||
<field name="name">Check</field>
|
||||
<field name="code">check</field>
|
||||
<field name="close_method">balance</field>
|
||||
</record>
|
||||
|
||||
|
||||
|
||||
<!-- Account Templates-->
|
||||
<record id="conf_chart0" model="account.account.template">
|
||||
<field name="code">0</field>
|
||||
<field name="name">Configurable Account Chart</field>
|
||||
<field eval="0" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<!-- Balance Sheet -->
|
||||
|
||||
<record id="conf_bal" model="account.account.template">
|
||||
<field name="code">1</field>
|
||||
<field name="name">Balance Sheet</field>
|
||||
<field ref="conf_chart0" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_fas" model="account.account.template">
|
||||
<field name="code">10</field>
|
||||
<field name="name">Fixed Assets</field>
|
||||
<field ref="conf_bal" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_xfa" model="account.account.template">
|
||||
<field name="code">100</field>
|
||||
<field name="name">Fixed Asset Account</field>
|
||||
<field ref="conf_fas" name="parent_id"/>
|
||||
<field name="type">other</field>
|
||||
<field name="user_type" ref="conf_account_type_asset"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_nca" model="account.account.template">
|
||||
<field name="code">11</field>
|
||||
<field name="name">Net Current Assets</field>
|
||||
<field ref="conf_bal" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_cas" model="account.account.template">
|
||||
<field name="code">110</field>
|
||||
<field name="name">Current Assets</field>
|
||||
<field ref="conf_nca" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_stk" model="account.account.template">
|
||||
<field name="code">1101</field>
|
||||
<field name="name">Purchased Stocks</field>
|
||||
<field ref="conf_cas" name="parent_id"/>
|
||||
<field name="type">other</field>
|
||||
<field name="user_type" ref="conf_account_type_asset"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_a_recv" model="account.account.template">
|
||||
<field name="code">1102</field>
|
||||
<field name="name">Debtors</field>
|
||||
<field ref="conf_cas" name="parent_id"/>
|
||||
<field name="type">receivable</field>
|
||||
<field eval="True" name="reconcile"/>
|
||||
<field name="user_type" ref="conf_account_type_receivable"/>
|
||||
</record>
|
||||
|
||||
<!-- <record id="account.property_account_receivable" model="ir.property">
|
||||
<field eval="'account.account,'+str(a_recv)" name="value"/>
|
||||
</record> -->
|
||||
|
||||
<record id="conf_ova" model="account.account.template">
|
||||
<field name="code">1103</field>
|
||||
<field name="name">Output VAT</field>
|
||||
<field ref="conf_cas" name="parent_id"/>
|
||||
<field name="type">other</field>
|
||||
<field name="user_type" ref="conf_account_type_tax"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_bnk" model="account.account.template">
|
||||
<field name="code">1104</field>
|
||||
<field name="name">Bank Current Account</field>
|
||||
<field ref="conf_cas" name="parent_id"/>
|
||||
<field name="type">other</field>
|
||||
<field name="user_type" ref="conf_account_type_cash"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_cash" model="account.account.template">
|
||||
<field name="code">1105</field>
|
||||
<field name="name">Cash</field>
|
||||
<field ref="conf_cas" name="parent_id"/>
|
||||
<field name="type">other</field>
|
||||
<field name="user_type" ref="conf_account_type_cash"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_cli" model="account.account.template">
|
||||
<field name="code">111</field>
|
||||
<field name="name">Current Liabilities</field>
|
||||
<field ref="conf_nca" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_a_pay" model="account.account.template">
|
||||
<field name="code">1111</field>
|
||||
<field name="name">Creditors</field>
|
||||
<field ref="conf_cli" name="parent_id"/>
|
||||
<field name="type">payable</field>
|
||||
<field eval="True" name="reconcile"/>
|
||||
<field name="user_type" ref="conf_account_type_payable"/>
|
||||
</record>
|
||||
|
||||
<!-- <record id="account.property_account_payable" model="ir.property">
|
||||
<field eval="'account.account,'+str(a_pay)" name="value"/>
|
||||
</record>-->
|
||||
|
||||
<record id="conf_iva" model="account.account.template">
|
||||
<field name="code">1112</field>
|
||||
<field name="name">Input VAT</field>
|
||||
<field ref="conf_cli" name="parent_id"/>
|
||||
<field name="type">other</field>
|
||||
<field name="user_type" ref="conf_account_type_tax"/>
|
||||
</record>
|
||||
|
||||
<!-- Profit and Loss -->
|
||||
|
||||
<record id="conf_gpf" model="account.account.template">
|
||||
<field name="code">2</field>
|
||||
<field name="name">Profit and Loss</field>
|
||||
<field ref="conf_chart0" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_rev" model="account.account.template">
|
||||
<field name="code">20</field>
|
||||
<field name="name">Revenue</field>
|
||||
<field ref="conf_gpf" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_a_sale" model="account.account.template">
|
||||
<field name="code">200</field>
|
||||
<field name="name">Product Sales</field>
|
||||
<field ref="conf_rev" name="parent_id"/>
|
||||
<field name="type">other</field>
|
||||
<field name="user_type" ref="conf_account_type_income"/>
|
||||
</record>
|
||||
|
||||
<!-- <record id="account.property_account_income_categ" model="ir.property">
|
||||
<field eval="'account.account,'+str(a_sale)" name="value"/>
|
||||
</record> -->
|
||||
|
||||
<record id="conf_cos" model="account.account.template">
|
||||
<field name="code">21</field>
|
||||
<field name="name">Cost of Sales</field>
|
||||
<field ref="conf_gpf" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_cog" model="account.account.template">
|
||||
<field name="code">210</field>
|
||||
<field name="name">Cost of Goods Sold</field>
|
||||
<field ref="conf_cos" name="parent_id"/>
|
||||
<field name="type">other</field>
|
||||
<field name="user_type" ref="conf_account_type_expense"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_ovr" model="account.account.template">
|
||||
<field name="code">22</field>
|
||||
<field name="name">Overheads</field>
|
||||
<field ref="conf_gpf" name="parent_id"/>
|
||||
<field name="type">view</field>
|
||||
<field name="user_type" ref="conf_account_type_view"/>
|
||||
</record>
|
||||
|
||||
<record id="conf_a_expense" model="account.account.template">
|
||||
<field name="code">220</field>
|
||||
<field name="name">Expenses</field>
|
||||
<field ref="conf_ovr" name="parent_id"/>
|
||||
<field name="type">other</field>
|
||||
<field name="user_type" ref="conf_account_type_expense"/>
|
||||
</record>
|
||||
|
||||
<!-- <record id="account.property_account_expense_categ" model="ir.property">
|
||||
<field eval="'account.account,'+str(a_expense)" name="value"/>
|
||||
</record> -->
|
||||
|
||||
<!-- Taxes -->
|
||||
<!-- VAT Code Definitions -->
|
||||
|
||||
<!-- Invoiced VAT -->
|
||||
|
||||
<!-- Input VAT -->
|
||||
|
||||
<record id="vat_code_chart_root" model="account.tax.code.template">
|
||||
<field name="name">Plan Fees </field>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_balance_net" model="account.tax.code.template">
|
||||
<field name="name">VAT Balance to Pay</field>
|
||||
<field name="parent_id" ref="vat_code_chart_root"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_input" model="account.tax.code.template">
|
||||
<field name="name">Input VAT</field>
|
||||
<field name="parent_id" ref="vat_code_balance_net"/>
|
||||
<field eval="-1" name="sign"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_input_S" model="account.tax.code.template">
|
||||
<field name="name">Input VAT Rate S (15%)</field>
|
||||
<field name="parent_id" ref="vat_code_input"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_input_R" model="account.tax.code.template">
|
||||
<field name="name">Input VAT Rate R (5%)</field>
|
||||
<field name="parent_id" ref="vat_code_input"/>
|
||||
</record>
|
||||
|
||||
<!-- Output VAT -->
|
||||
|
||||
<record id="vat_code_output" model="account.tax.code.template">
|
||||
<field name="name">Output VAT</field>
|
||||
<field name="parent_id" ref="vat_code_balance_net"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_output_S" model="account.tax.code.template">
|
||||
<field name="name">Output VAT Rate S (15%)</field>
|
||||
<field name="parent_id" ref="vat_code_output"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_output_R" model="account.tax.code.template">
|
||||
<field name="name">Output VAT Rate R (5%)</field>
|
||||
<field name="parent_id" ref="vat_code_output"/>
|
||||
</record>
|
||||
|
||||
<!-- Invoiced Base of VAT -->
|
||||
|
||||
<!-- Purchases -->
|
||||
|
||||
<record id="vat_code_base_net" model="account.tax.code.template">
|
||||
<field name="name">Tax Bases</field>
|
||||
<field name="parent_id" ref="vat_code_chart_root"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_base_purchases" model="account.tax.code.template">
|
||||
<field name="name">Taxable Purchases Base</field>
|
||||
<field name="parent_id" ref="vat_code_base_net"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_purch_S" model="account.tax.code.template">
|
||||
<field name="name">Taxable Purchases Rated S (15%)</field>
|
||||
<field name="parent_id" ref="vat_code_base_purchases"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_purch_R" model="account.tax.code.template">
|
||||
<field name="name">Taxable Purchases Rated R (5%)</field>
|
||||
<field name="parent_id" ref="vat_code_base_purchases"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_purch_Z" model="account.tax.code.template">
|
||||
<field name="name">Taxable Purchases Rated Z (0%)</field>
|
||||
<field name="parent_id" ref="vat_code_base_purchases"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_purch_X" model="account.tax.code.template">
|
||||
<field name="name">Taxable Purchases Type X (Exempt)</field>
|
||||
<field name="parent_id" ref="vat_code_base_purchases"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_purch_O" model="account.tax.code.template">
|
||||
<field name="name">Taxable Purchases Type O (Out of scope)</field>
|
||||
<field name="parent_id" ref="vat_code_base_purchases"/>
|
||||
</record>
|
||||
|
||||
<!-- Sales -->
|
||||
|
||||
<record id="vat_code_base_sales" model="account.tax.code.template">
|
||||
<field name="name">Base of Taxable Sales</field>
|
||||
<field name="parent_id" ref="vat_code_base_net"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_sales_S" model="account.tax.code.template">
|
||||
<field name="name">Taxable Sales Rated S (15%)</field>
|
||||
<field name="parent_id" ref="vat_code_base_sales"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_sales_R" model="account.tax.code.template">
|
||||
<field name="name">Taxable Sales Rated R (5%)</field>
|
||||
<field name="parent_id" ref="vat_code_base_sales"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_sales_Z" model="account.tax.code.template">
|
||||
<field name="name">Taxable Sales Rated Z (0%)</field>
|
||||
<field name="parent_id" ref="vat_code_base_sales"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_sales_X" model="account.tax.code.template">
|
||||
<field name="name">Taxable Sales Type X (Exempt)</field>
|
||||
<field name="parent_id" ref="vat_code_base_sales"/>
|
||||
</record>
|
||||
|
||||
<record id="vat_code_sales_O" model="account.tax.code.template">
|
||||
<field name="name">Taxable Sales Type O (Out of scope)</field>
|
||||
<field name="parent_id" ref="vat_code_base_sales"/>
|
||||
</record>
|
||||
|
||||
<record id="configurable_chart_template" model="account.chart.template">
|
||||
<field name="name">Configurable Account Chart Template</field>
|
||||
<field name="account_root_id" ref="conf_chart0"/>
|
||||
<field name="tax_code_root_id" ref="vat_code_chart_root"/>
|
||||
<field name="bank_account_view_id" ref="conf_bnk"/>
|
||||
<field name="property_account_receivable" ref="conf_a_recv"/>
|
||||
<field name="property_account_payable" ref="conf_a_pay"/>
|
||||
<field name="property_account_expense_categ" ref="conf_a_expense"/>
|
||||
<field name="property_account_income_categ" ref="conf_a_sale"/>
|
||||
</record>
|
||||
|
||||
<!-- VAT Codes -->
|
||||
<!-- Purchases + Input VAT -->
|
||||
|
||||
<record id="ivats" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">IVAT S</field>
|
||||
<field eval="0.15" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="account_collected_id" ref="conf_iva"/>
|
||||
<field name="account_paid_id" ref="conf_iva"/>
|
||||
<field name="base_code_id" ref="vat_code_purch_S"/>
|
||||
<field name="tax_code_id" ref="vat_code_input_S"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_purch_S"/>
|
||||
<field name="ref_tax_code_id" ref="vat_code_input_S"/>
|
||||
<field name="type_tax_use">purchase</field>
|
||||
</record>
|
||||
|
||||
<record id="ivatr" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">IVAT R</field>
|
||||
<field eval="0.005" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="account_collected_id" ref="conf_iva"/>
|
||||
<field name="account_paid_id" ref="conf_iva"/>
|
||||
<field name="base_code_id" ref="vat_code_purch_R"/>
|
||||
<field name="tax_code_id" ref="vat_code_input_R"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_purch_R"/>
|
||||
<field name="ref_tax_code_id" ref="vat_code_input_R"/>
|
||||
<field name="type_tax_use">purchase</field>
|
||||
</record>
|
||||
|
||||
<record id="ivatz" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">IVAT Z</field>
|
||||
<field eval="0.0" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="base_code_id" ref="vat_code_purch_Z"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_purch_Z"/>
|
||||
<field name="type_tax_use">purchase</field>
|
||||
</record>
|
||||
|
||||
<record id="ivatx" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">IVAT X</field>
|
||||
<field eval="0.0" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="base_code_id" ref="vat_code_purch_X"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_purch_X"/>
|
||||
<field name="type_tax_use">purchase</field>
|
||||
</record>
|
||||
|
||||
<record id="ivato" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">IVAT O</field>
|
||||
<field eval="0.0" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="base_code_id" ref="vat_code_purch_O"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_purch_O"/>
|
||||
<field name="type_tax_use">purchase</field>
|
||||
</record>
|
||||
|
||||
<!-- Sales + Output VAT -->
|
||||
|
||||
<record id="ovats" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">OVAT S</field>
|
||||
<field eval="0.15" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="account_collected_id" ref="conf_ova"/>
|
||||
<field name="account_paid_id" ref="conf_ova"/>
|
||||
<field name="base_code_id" ref="vat_code_sales_S"/>
|
||||
<field name="tax_code_id" ref="vat_code_output_S"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_sales_S"/>
|
||||
<field name="ref_tax_code_id" ref="vat_code_output_S"/>
|
||||
<field name="type_tax_use">sale</field>
|
||||
</record>
|
||||
|
||||
<record id="ovatr" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">OVAT R</field>
|
||||
<field eval="0.005" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="account_collected_id" ref="conf_ova"/>
|
||||
<field name="account_paid_id" ref="conf_ova"/>
|
||||
<field name="base_code_id" ref="vat_code_sales_R"/>
|
||||
<field name="tax_code_id" ref="vat_code_output_R"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_sales_R"/>
|
||||
<field name="ref_tax_code_id" ref="vat_code_output_R"/>
|
||||
<field name="type_tax_use">sale</field>
|
||||
</record>
|
||||
|
||||
<record id="ovatz" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">OVAT Z</field>
|
||||
<field eval="0.0" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="base_code_id" ref="vat_code_sales_Z"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_sales_Z"/>
|
||||
<field name="type_tax_use">sale</field>
|
||||
</record>
|
||||
|
||||
<record id="ovatx" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">OVAT X</field>
|
||||
<field eval="0.0" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="base_code_id" ref="vat_code_sales_X"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_sales_X"/>
|
||||
<field name="type_tax_use">sale</field>
|
||||
</record>
|
||||
|
||||
<record id="ovato" model="account.tax.template">
|
||||
<field name="chart_template_id" ref="configurable_chart_template"/>
|
||||
<field name="name">OVAT O</field>
|
||||
<field eval="0.0" name="amount"/>
|
||||
<field name="type">percent</field>
|
||||
<field name="base_code_id" ref="vat_code_sales_O"/>
|
||||
<field name="ref_base_code_id" ref="vat_code_sales_O"/>
|
||||
<field name="type_tax_use">sale</field>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -785,10 +785,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
|
||||
@@ -805,10 +805,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
|
||||
@@ -819,11 +819,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -816,11 +816,6 @@ msgstr "(Ostaviti prazno za sve otvorene fiskalne godine)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Retci prijenosa"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -829,11 +829,6 @@ msgstr "(deixar-lo buit per a tots els exercicis fiscals oberts)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Línies moviment"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.assistent"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -809,11 +809,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -811,11 +811,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -827,11 +827,6 @@ msgstr "(frei lassen für alle Wirtschaftsjahre)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Buchungszeilen"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -829,11 +829,6 @@ msgstr "(Διατηρήστε κενό για όλα τα ανοιχτά λογ
|
||||
msgid "Move Lines"
|
||||
msgstr "Μετακίνηση Γραμμών"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -828,11 +828,6 @@ msgstr "(dejarlo vacío para todos los ejercicios fiscales abiertos)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Líneas movimiento"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.asistente"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -827,11 +827,6 @@ msgstr "(dejar vacío para todos los ejercicios fiscales abiertos)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Líneas del movimiento"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "asistente.configuracion.contable"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -826,11 +826,6 @@ msgstr "(dejarlo vacío para todos los ejercicios fiscales abiertos)"
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -807,11 +807,6 @@ msgstr "(Jäta tühjaks kõigi avatud majandusaastate jaoks)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Liiguta read"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -826,11 +826,6 @@ msgstr "(Jätä tyhjäksi käyttääksesi kaikkia avoimia tilikausia)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Siirron rivit"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -1240,11 +1240,6 @@ msgstr "Livre de coûts"
|
||||
msgid "Move Lines"
|
||||
msgstr "Lignes de mouvements"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,10 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -805,11 +805,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -805,11 +805,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -826,11 +826,6 @@ msgstr "(Lasciare vuoto per tutti gli esercizi fiscali aperti)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Righe Movimentate"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,10 +806,7 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -809,11 +809,6 @@ msgstr "(palikite tuščią, jei norite visų atvirų fiskalinių metų)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Didžiosios knygos įrašai"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -818,11 +818,6 @@ msgstr "(Atstāt tukšu visiem nenoslēgtajiem fiskālajiem gadiem)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Grāmatojumu Rindas"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -827,11 +827,6 @@ msgstr "(laat leeg om alle boekjaren mee te nemen)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Verplaats boekingsregels"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -805,11 +805,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -808,10 +808,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
|
||||
@@ -825,11 +825,6 @@ msgstr "(Pozostaw puste dla wszystkich otwartych lat podatkowych)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Pozycje zapisów"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -823,11 +823,6 @@ msgstr "(Manter vazio para todos os anos fiscais aberto)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Linhas de movimentos"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -826,11 +826,6 @@ msgstr "(Manter vazio para todos os anos fiscais abertos)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Mover Linhas"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -827,11 +827,6 @@ msgstr "(Lasaţi necompletat pentru toţi anii fiscali deschişi)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Linii mişcări"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -820,11 +820,6 @@ msgstr "Оставить пустым для всех открытых фина
|
||||
msgid "Move Lines"
|
||||
msgstr "Строки финансового документа"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "Мастер конфигурации"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -809,11 +809,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -818,11 +818,6 @@ msgstr "(Prazno za vsa odprta davčna leta)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Postavke knjižb"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -828,11 +828,6 @@ msgstr "(Mbaje zbrazët për të gjitha vitet fiskale)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Lëviz Linjat"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -809,11 +809,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -815,11 +815,6 @@ msgstr "(tomt för alla öppna verksamhetsår)"
|
||||
msgid "Move Lines"
|
||||
msgstr "Flytta rader"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "account.config.wizard"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -805,11 +805,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -805,11 +805,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr "Hareket Kalemleri"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -805,11 +805,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -817,11 +817,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -808,11 +808,6 @@ msgstr "(留空为所有开启的会计年度)"
|
||||
msgid "Move Lines"
|
||||
msgstr "凭证明细"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr "科目.设置.向导"
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -806,11 +806,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
@@ -805,11 +805,6 @@ msgstr ""
|
||||
msgid "Move Lines"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.model,name:account.model_account_config_wizard
|
||||
msgid "account.config.wizard"
|
||||
msgstr ""
|
||||
|
||||
#. module: account
|
||||
#: model:ir.actions.act_window,name:account.report_account_analytic_journal_tree
|
||||
#: model:ir.ui.menu,name:account.report_account_analytic_journal_print
|
||||
|
||||
+418
-8
@@ -18,10 +18,15 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
import time
|
||||
import datetime
|
||||
from dateutil.relativedelta import relativedelta
|
||||
from tools.translate import _
|
||||
from operator import itemgetter
|
||||
|
||||
from osv import fields, osv
|
||||
import netsvc
|
||||
import tools
|
||||
from os.path import join as opj
|
||||
|
||||
class account_installer(osv.osv_memory):
|
||||
_name = 'account.installer'
|
||||
@@ -30,10 +35,12 @@ class account_installer(osv.osv_memory):
|
||||
def _get_charts(self, cr, uid, context=None):
|
||||
modules = self.pool.get('ir.module.module')
|
||||
ids = modules.search(cr, uid, [('category_id','=','Account Charts')])
|
||||
return list(
|
||||
charts = list(
|
||||
sorted(((m.name, m.shortdesc)
|
||||
for m in modules.browse(cr, uid, ids)),
|
||||
key=itemgetter(1)))
|
||||
charts.insert(0,('configurable','Configurable Chart of Account'))
|
||||
return charts
|
||||
|
||||
_columns = {
|
||||
# Accounting
|
||||
@@ -42,9 +49,6 @@ class account_installer(osv.osv_memory):
|
||||
help="Installs localized accounting charts to match as closely as "
|
||||
"possible the accounting needs of your company based on your "
|
||||
"country."),
|
||||
'account_analytic_default':fields.boolean('Analytic Accounting',
|
||||
help="Automatically selects analytic accounts based on various "
|
||||
"criteria."),
|
||||
'account_analytic_plans':fields.boolean('Multiple Analytic Plans',
|
||||
help="Allows invoice lines to impact multiple analytic accounts "
|
||||
"simultaneously."),
|
||||
@@ -57,16 +61,407 @@ class account_installer(osv.osv_memory):
|
||||
"per-partner policies."),
|
||||
'account_asset':fields.boolean('Assets Management',
|
||||
help="Enables asset management in the accounting application, "
|
||||
"including asset categories and usage periods.")
|
||||
"including asset categories and usage periods."),
|
||||
'date_start': fields.date('Start Date', required=True),
|
||||
'date_stop': fields.date('End Date', required=True),
|
||||
'period':fields.selection([('month','Monthly'), ('3months','3 Monthly')],
|
||||
'Periods', required=True),
|
||||
'bank_accounts_id': fields.one2many('account.bank.accounts.wizard', 'bank_account_id', 'Bank Accounts',required=True),
|
||||
'sale_tax':fields.float('Sale Tax(%)'),
|
||||
'purchase_tax':fields.float('Purchase Tax(%)')
|
||||
}
|
||||
_defaults = {
|
||||
'account_analytic_default':True,
|
||||
'date_start': lambda *a: time.strftime('%Y-01-01'),
|
||||
'date_stop': lambda *a: time.strftime('%Y-12-31'),
|
||||
'period':lambda *a:'month',
|
||||
'sale_tax':lambda *a:0.0,
|
||||
'purchase_tax':lambda *a:0.0,
|
||||
'charts':'configurable',
|
||||
}
|
||||
|
||||
def on_change_start_date(self, cr, uid, id, start_date):
|
||||
if start_date:
|
||||
start_date = datetime.datetime.strptime(start_date, "%Y-%m-%d")
|
||||
end_date = (start_date + relativedelta(months=12)) - relativedelta(days=1)
|
||||
return {'value':{'date_stop':end_date.strftime('%Y-%m-%d')}}
|
||||
return {}
|
||||
|
||||
def generate_configurable_chart(self, cr, uid, ids, context=None):
|
||||
mod_obj = self.pool.get('ir.model.data')
|
||||
result = mod_obj._get_id(cr, uid, 'account', 'configurable_chart_template')
|
||||
id = mod_obj.read(cr, uid, [result], ['res_id'])[0]['res_id']
|
||||
obj_multi = self.pool.get('account.chart.template').browse(cr,uid, id)
|
||||
|
||||
obj_acc = self.pool.get('account.account')
|
||||
obj_acc_tax = self.pool.get('account.tax')
|
||||
obj_journal = self.pool.get('account.journal')
|
||||
obj_sequence = self.pool.get('ir.sequence')
|
||||
obj_acc_template = self.pool.get('account.account.template')
|
||||
obj_fiscal_position_template = self.pool.get('account.fiscal.position.template')
|
||||
obj_fiscal_position = self.pool.get('account.fiscal.position')
|
||||
company_id = self.pool.get('res.users').browse(cr,uid,[uid],context)[0].company_id
|
||||
seq_journal = True
|
||||
|
||||
# Creating Account
|
||||
obj_acc_root = obj_multi.account_root_id
|
||||
tax_code_root_id = obj_multi.tax_code_root_id.id
|
||||
|
||||
#new code
|
||||
acc_template_ref = {}
|
||||
tax_template_ref = {}
|
||||
tax_code_template_ref = {}
|
||||
todo_dict = {}
|
||||
|
||||
#create all the tax code
|
||||
children_tax_code_template = self.pool.get('account.tax.code.template').search(cr, uid, [('parent_id','child_of',[tax_code_root_id])], order='id')
|
||||
children_tax_code_template.sort()
|
||||
for tax_code_template in self.pool.get('account.tax.code.template').browse(cr, uid, children_tax_code_template):
|
||||
vals={
|
||||
'name': (tax_code_root_id == tax_code_template.id) and company_id.name or tax_code_template.name,
|
||||
'code': tax_code_template.code,
|
||||
'info': tax_code_template.info,
|
||||
'parent_id': tax_code_template.parent_id and ((tax_code_template.parent_id.id in tax_code_template_ref) and tax_code_template_ref[tax_code_template.parent_id.id]) or False,
|
||||
'company_id': company_id.id,
|
||||
'sign': tax_code_template.sign,
|
||||
}
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr,uid,vals)
|
||||
#recording the new tax code to do the mapping
|
||||
tax_code_template_ref[tax_code_template.id] = new_tax_code
|
||||
|
||||
#create all the tax
|
||||
for tax in obj_multi.tax_template_ids:
|
||||
#create it
|
||||
vals_tax = {
|
||||
'name':tax.name,
|
||||
'sequence': tax.sequence,
|
||||
'amount':tax.amount,
|
||||
'type':tax.type,
|
||||
'applicable_type': tax.applicable_type,
|
||||
'domain':tax.domain,
|
||||
'parent_id': tax.parent_id and ((tax.parent_id.id in tax_template_ref) and tax_template_ref[tax.parent_id.id]) or False,
|
||||
'child_depend': tax.child_depend,
|
||||
'python_compute': tax.python_compute,
|
||||
'python_compute_inv': tax.python_compute_inv,
|
||||
'python_applicable': tax.python_applicable,
|
||||
'tax_group':tax.tax_group,
|
||||
'base_code_id': tax.base_code_id and ((tax.base_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.base_code_id.id]) or False,
|
||||
'tax_code_id': tax.tax_code_id and ((tax.tax_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.tax_code_id.id]) or False,
|
||||
'base_sign': tax.base_sign,
|
||||
'tax_sign': tax.tax_sign,
|
||||
'ref_base_code_id': tax.ref_base_code_id and ((tax.ref_base_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.ref_base_code_id.id]) or False,
|
||||
'ref_tax_code_id': tax.ref_tax_code_id and ((tax.ref_tax_code_id.id in tax_code_template_ref) and tax_code_template_ref[tax.ref_tax_code_id.id]) or False,
|
||||
'ref_base_sign': tax.ref_base_sign,
|
||||
'ref_tax_sign': tax.ref_tax_sign,
|
||||
'include_base_amount': tax.include_base_amount,
|
||||
'description':tax.description,
|
||||
'company_id': company_id.id,
|
||||
'type_tax_use': tax.type_tax_use
|
||||
}
|
||||
new_tax = obj_acc_tax.create(cr,uid,vals_tax)
|
||||
#as the accounts have not been created yet, we have to wait before filling these fields
|
||||
todo_dict[new_tax] = {
|
||||
'account_collected_id': tax.account_collected_id and tax.account_collected_id.id or False,
|
||||
'account_paid_id': tax.account_paid_id and tax.account_paid_id.id or False,
|
||||
}
|
||||
tax_template_ref[tax.id] = new_tax
|
||||
|
||||
#deactivate the parent_store functionnality on account_account for rapidity purpose
|
||||
self.pool._init = True
|
||||
|
||||
children_acc_template = obj_acc_template.search(cr, uid, [('parent_id','child_of',[obj_acc_root.id]),('nocreate','!=',True)])
|
||||
children_acc_template.sort()
|
||||
for account_template in obj_acc_template.browse(cr, uid, children_acc_template):
|
||||
tax_ids = []
|
||||
for tax in account_template.tax_ids:
|
||||
tax_ids.append(tax_template_ref[tax.id])
|
||||
#create the account_account
|
||||
|
||||
dig = 6
|
||||
code_main = account_template.code and len(account_template.code) or 0
|
||||
code_acc = account_template.code or ''
|
||||
if code_main>0 and code_main<=dig and account_template.type != 'view':
|
||||
code_acc=str(code_acc) + (str('0'*(dig-code_main)))
|
||||
vals={
|
||||
'name': (obj_acc_root.id == account_template.id) and company_id.name or account_template.name,
|
||||
#'sign': account_template.sign,
|
||||
'currency_id': account_template.currency_id and account_template.currency_id.id or False,
|
||||
'code': code_acc,
|
||||
'type': account_template.type,
|
||||
'user_type': account_template.user_type and account_template.user_type.id or False,
|
||||
'reconcile': account_template.reconcile,
|
||||
'shortcut': account_template.shortcut,
|
||||
'note': account_template.note,
|
||||
'parent_id': account_template.parent_id and ((account_template.parent_id.id in acc_template_ref) and acc_template_ref[account_template.parent_id.id]) or False,
|
||||
'tax_ids': [(6,0,tax_ids)],
|
||||
'company_id': company_id.id,
|
||||
}
|
||||
new_account = obj_acc.create(cr,uid,vals)
|
||||
acc_template_ref[account_template.id] = new_account
|
||||
if account_template.name == 'Bank Current Account':
|
||||
view_id_cash = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Cash Journal View')])[0]
|
||||
view_id_cur = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Multi-Currency Cash Journal View')])[0]
|
||||
ref_acc_bank = obj_multi.bank_account_view_id
|
||||
|
||||
cash_result = mod_obj._get_id(cr, uid, 'account', 'conf_account_type_cash')
|
||||
cash_type_id = mod_obj.read(cr, uid, [cash_result], ['res_id'])[0]['res_id']
|
||||
|
||||
bank_result = mod_obj._get_id(cr, uid, 'account', 'conf_account_type_bnk')
|
||||
bank_type_id = mod_obj.read(cr, uid, [bank_result], ['res_id'])[0]['res_id']
|
||||
|
||||
check_result = mod_obj._get_id(cr, uid, 'account', 'conf_account_type_chk')
|
||||
check_type_id = mod_obj.read(cr, uid, [check_result], ['res_id'])[0]['res_id']
|
||||
|
||||
record = self.browse(cr, uid, ids, context=context)[0]
|
||||
code_cnt = 1
|
||||
vals_seq = {
|
||||
'name': _('Bank Journal '),
|
||||
'code': 'account.journal',
|
||||
}
|
||||
seq_id = obj_sequence.create(cr,uid,vals_seq)
|
||||
|
||||
#create the bank journal
|
||||
vals_journal = {}
|
||||
vals_journal['name']= _('Bank Journal ')
|
||||
vals_journal['code']= _('BNK')
|
||||
vals_journal['sequence_id'] = seq_id
|
||||
vals_journal['type'] = 'cash'
|
||||
if vals.get('currency_id', False):
|
||||
vals_journal['view_id'] = view_id_cur
|
||||
vals_journal['currency'] = vals.get('currency_id', False)
|
||||
else:
|
||||
vals_journal['view_id'] = view_id_cash
|
||||
vals_journal['default_credit_account_id'] = new_account
|
||||
vals_journal['default_debit_account_id'] = new_account
|
||||
obj_journal.create(cr,uid,vals_journal)
|
||||
|
||||
for val in record.bank_accounts_id:
|
||||
if val.account_type == 'cash':type = cash_type_id
|
||||
elif val.account_type == 'bank':type = bank_type_id
|
||||
else:type = check_type_id
|
||||
vals_bnk = {'name': val.acc_name or '',
|
||||
'currency_id': val.currency_id.id or False,
|
||||
'code': str(110400 + code_cnt),
|
||||
'type': 'other',
|
||||
'user_type': type,
|
||||
'parent_id':new_account,
|
||||
'company_id': company_id.id }
|
||||
child_bnk_acc = obj_acc.create(cr, uid, vals_bnk)
|
||||
vals_seq_child = {
|
||||
'name': _(vals_bnk['name']),
|
||||
'code': 'account.journal',
|
||||
}
|
||||
seq_id = obj_sequence.create(cr, uid, vals_seq_child)
|
||||
|
||||
#create the bank journal
|
||||
vals_journal = {}
|
||||
vals_journal['name']= vals_bnk['name'] + ' Journal'
|
||||
vals_journal['code']= _(vals_bnk['name'][:3])
|
||||
vals_journal['sequence_id'] = seq_id
|
||||
vals_journal['type'] = 'cash'
|
||||
if vals.get('currency_id', False):
|
||||
vals_journal['view_id'] = view_id_cur
|
||||
vals_journal['currency'] = vals_bnk.get('currency_id', False)
|
||||
else:
|
||||
vals_journal['view_id'] = view_id_cash
|
||||
vals_journal['default_credit_account_id'] = child_bnk_acc
|
||||
vals_journal['default_debit_account_id'] = child_bnk_acc
|
||||
obj_journal.create(cr,uid,vals_journal)
|
||||
code_cnt += 1
|
||||
|
||||
|
||||
#reactivate the parent_store functionnality on account_account
|
||||
self.pool._init = False
|
||||
self.pool.get('account.account')._parent_store_compute(cr)
|
||||
|
||||
for key,value in todo_dict.items():
|
||||
if value['account_collected_id'] or value['account_paid_id']:
|
||||
obj_acc_tax.write(cr, uid, [key], {
|
||||
'account_collected_id': acc_template_ref[value['account_collected_id']],
|
||||
'account_paid_id': acc_template_ref[value['account_paid_id']],
|
||||
})
|
||||
|
||||
# Creating Journals
|
||||
vals_journal={}
|
||||
view_id = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Journal View')])[0]
|
||||
seq_id = obj_sequence.search(cr,uid,[('name','=','Account Journal')])[0]
|
||||
|
||||
if seq_journal:
|
||||
seq_id_sale = obj_sequence.search(cr,uid,[('name','=','Sale Journal')])[0]
|
||||
seq_id_purchase = obj_sequence.search(cr,uid,[('name','=','Purchase Journal')])[0]
|
||||
else:
|
||||
seq_id_sale = seq_id
|
||||
seq_id_purchase = seq_id
|
||||
|
||||
vals_journal['view_id'] = view_id
|
||||
|
||||
#Sales Journal
|
||||
vals_journal['name'] = _('Sales Journal')
|
||||
vals_journal['type'] = 'sale'
|
||||
vals_journal['code'] = _('SAJ')
|
||||
vals_journal['sequence_id'] = seq_id_sale
|
||||
|
||||
if obj_multi.property_account_receivable:
|
||||
vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.property_account_income_categ.id]
|
||||
vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.property_account_income_categ.id]
|
||||
|
||||
obj_journal.create(cr,uid,vals_journal)
|
||||
|
||||
# Purchase Journal
|
||||
vals_journal['name'] = _('Purchase Journal')
|
||||
vals_journal['type'] = 'purchase'
|
||||
vals_journal['code'] = _('EXJ')
|
||||
vals_journal['sequence_id'] = seq_id_purchase
|
||||
|
||||
if obj_multi.property_account_payable:
|
||||
vals_journal['default_credit_account_id'] = acc_template_ref[obj_multi.property_account_expense_categ.id]
|
||||
vals_journal['default_debit_account_id'] = acc_template_ref[obj_multi.property_account_expense_categ.id]
|
||||
|
||||
obj_journal.create(cr,uid,vals_journal)
|
||||
|
||||
# Bank Journals
|
||||
view_id_cash = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Cash Journal View')])[0]
|
||||
view_id_cur = self.pool.get('account.journal.view').search(cr,uid,[('name','=','Multi-Currency Cash Journal View')])[0]
|
||||
ref_acc_bank = obj_multi.bank_account_view_id
|
||||
|
||||
|
||||
#create the properties
|
||||
property_obj = self.pool.get('ir.property')
|
||||
fields_obj = self.pool.get('ir.model.fields')
|
||||
|
||||
todo_list = [
|
||||
('property_account_receivable','res.partner','account.account'),
|
||||
('property_account_payable','res.partner','account.account'),
|
||||
('property_account_expense_categ','product.category','account.account'),
|
||||
('property_account_income_categ','product.category','account.account'),
|
||||
('property_account_expense','product.template','account.account'),
|
||||
('property_account_income','product.template','account.account')
|
||||
]
|
||||
for record in todo_list:
|
||||
r = []
|
||||
r = property_obj.search(cr, uid, [('name','=', record[0] ),('company_id','=',company_id.id)])
|
||||
account = getattr(obj_multi, record[0])
|
||||
field = fields_obj.search(cr, uid, [('name','=',record[0]),('model','=',record[1]),('relation','=',record[2])])
|
||||
vals = {
|
||||
'name': record[0],
|
||||
'company_id': company_id.id,
|
||||
'fields_id': field[0],
|
||||
'value': account and 'account.account,'+str(acc_template_ref[account.id]) or False,
|
||||
}
|
||||
if r:
|
||||
#the property exist: modify it
|
||||
property_obj.write(cr, uid, r, vals)
|
||||
else:
|
||||
#create the property
|
||||
property_obj.create(cr, uid, vals)
|
||||
|
||||
fp_ids = obj_fiscal_position_template.search(cr, uid,[('chart_template_id', '=', obj_multi.id)])
|
||||
|
||||
if fp_ids:
|
||||
for position in obj_fiscal_position_template.browse(cr, uid, fp_ids):
|
||||
|
||||
vals_fp = {
|
||||
'company_id' : company_id.id,
|
||||
'name' : position.name,
|
||||
}
|
||||
new_fp = obj_fiscal_position.create(cr, uid, vals_fp)
|
||||
|
||||
obj_tax_fp = self.pool.get('account.fiscal.position.tax')
|
||||
obj_ac_fp = self.pool.get('account.fiscal.position.account')
|
||||
|
||||
for tax in position.tax_ids:
|
||||
vals_tax = {
|
||||
'tax_src_id' : tax_template_ref[tax.tax_src_id.id],
|
||||
'tax_dest_id' : tax.tax_dest_id and tax_template_ref[tax.tax_dest_id.id] or False,
|
||||
'position_id' : new_fp,
|
||||
}
|
||||
obj_tax_fp.create(cr, uid, vals_tax)
|
||||
|
||||
for acc in position.account_ids:
|
||||
vals_acc = {
|
||||
'account_src_id' : acc_template_ref[acc.account_src_id.id],
|
||||
'account_dest_id' : acc_template_ref[acc.account_dest_id.id],
|
||||
'position_id' : new_fp,
|
||||
}
|
||||
obj_ac_fp.create(cr, uid, vals_acc)
|
||||
|
||||
def execute(self, cr, uid, ids, context=None):
|
||||
super(account_installer, self).execute(cr, uid, ids, context=context)
|
||||
record = self.browse(cr, uid, ids, context=context)[0]
|
||||
company_id = self.pool.get('res.users').browse(cr,uid,[uid],context)[0].company_id
|
||||
for res in self.read(cr,uid,ids):
|
||||
if record.charts == 'configurable':
|
||||
fp = tools.file_open(opj('account','configurable_account_chart.xml'))
|
||||
tools.convert_xml_import(cr, 'account', fp, {}, 'init',True, None)
|
||||
fp.close()
|
||||
self.generate_configurable_chart(cr, uid, ids, context=context)
|
||||
obj_tax = self.pool.get('account.tax')
|
||||
obj_product = self.pool.get('product.product')
|
||||
ir_values = self.pool.get('ir.values')
|
||||
s_tax = (res.get('sale_tax',0.0))/100
|
||||
p_tax = (res.get('purchase_tax',0.0))/100
|
||||
tax_val = {}
|
||||
default_tax = []
|
||||
if s_tax*100 > 0.0:
|
||||
vals_tax_code = {
|
||||
'name': 'VAT%s%%'%(s_tax*100),
|
||||
'code': 'VAT%s%%'%(s_tax*100),
|
||||
'company_id': company_id.id,
|
||||
'sign': 1,
|
||||
}
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr,uid,vals_tax_code)
|
||||
sales_tax = obj_tax.create(cr, uid,
|
||||
{'name':'VAT%s%%'%(s_tax*100),
|
||||
'description':'VAT%s%%'%(s_tax*100),
|
||||
'amount':s_tax,
|
||||
'base_code_id':new_tax_code,
|
||||
'tax_code_id':new_tax_code
|
||||
})
|
||||
tax_val.update({'taxes_id':[(6,0,[sales_tax])]})
|
||||
default_tax.append(('taxes_id',sales_tax))
|
||||
if p_tax*100 > 0.0:
|
||||
vals_tax_code = {
|
||||
'name': 'VAT%s%%'%(p_tax*100),
|
||||
'code': 'VAT%s%%'%(p_tax*100),
|
||||
'company_id': company_id.id,
|
||||
'sign': 1,
|
||||
}
|
||||
new_tax_code = self.pool.get('account.tax.code').create(cr,uid,vals_tax_code)
|
||||
purchase_tax = obj_tax.create(cr, uid,
|
||||
{'name':'VAT%s%%'%(p_tax*100),
|
||||
'description':'VAT%s%%'%(p_tax*100),
|
||||
'amount':p_tax,
|
||||
'base_code_id':new_tax_code,
|
||||
'tax_code_id':new_tax_code
|
||||
})
|
||||
tax_val.update({'supplier_taxes_id':[(6,0,[purchase_tax])]})
|
||||
default_tax.append(('supplier_taxes_id',purchase_tax))
|
||||
if len(tax_val):
|
||||
product_ids = obj_product.search(cr,uid, [])
|
||||
for product in obj_product.browse(cr, uid, product_ids):
|
||||
obj_product.write(cr, uid, product.id, tax_val)
|
||||
for name, value in default_tax:
|
||||
ir_values.set(cr, uid, key='default', key2=False, name=name, models =[('product.product',False)], value=[value])
|
||||
|
||||
if 'date_start' in res and 'date_stop' in res:
|
||||
name = code = res['date_start'][:4]
|
||||
if int(name) != int(res['date_stop'][:4]):
|
||||
name = res['date_start'][:4] +'-'+ res['date_stop'][:4]
|
||||
code = res['date_start'][2:4] +'-'+ res['date_stop'][2:4]
|
||||
res_obj = self.pool.get('account.fiscalyear')
|
||||
vals = {'name':name,
|
||||
'code':code,
|
||||
'date_start':res['date_start'],
|
||||
'date_stop':res['date_stop'],
|
||||
}
|
||||
period_id = res_obj.create(cr, uid, vals, context=context)
|
||||
if res['period'] == 'month':
|
||||
res_obj.create_period(cr, uid, [period_id])
|
||||
elif res['period'] == '3months':
|
||||
res_obj.create_period3(cr, uid, [period_id])
|
||||
|
||||
def modules_to_install(self, cr, uid, ids, context=None):
|
||||
modules = super(account_installer, self).modules_to_install(
|
||||
cr, uid, ids, context=context)
|
||||
|
||||
chart = self.read(cr, uid, ids, ['charts'],
|
||||
context=context)[0]['charts']
|
||||
self.logger.notifyChannel(
|
||||
@@ -76,3 +471,18 @@ class account_installer(osv.osv_memory):
|
||||
|
||||
|
||||
account_installer()
|
||||
|
||||
class account_bank_accounts_wizard(osv.osv_memory):
|
||||
_name='account.bank.accounts.wizard'
|
||||
|
||||
_columns = {
|
||||
'acc_name':fields.char('Account Name.', size=64, required=True),
|
||||
'bank_account_id':fields.many2one('wizard.multi.charts.accounts', 'Bank Account', required=True),
|
||||
'currency_id':fields.many2one('res.currency', 'Currency'),
|
||||
'account_type':fields.selection([('cash','Cash'),('check','Check'),('bank','Bank')], 'Type', size=32),
|
||||
}
|
||||
_defaults = {
|
||||
'currency_id': lambda self,cr,uid,c: self.pool.get('res.users').browse(cr, uid, uid, c).company_id.currency_id.id,
|
||||
}
|
||||
|
||||
account_bank_accounts_wizard()
|
||||
|
||||
@@ -65,8 +65,6 @@
|
||||
"access_account_fiscalyear_invoice","account.fiscalyear.invoice","model_account_fiscalyear","account.group_account_invoice",1,0,0,0
|
||||
"access_res_currency_account_manager","res.currency account manager","base.model_res_currency","group_account_manager",1,1,1,1
|
||||
"access_res_currency_rate_account_manager","res.currency.rate account manager","base.model_res_currency_rate","group_account_manager",1,1,1,1
|
||||
"access_account_config_wizard_account_manager","account.config.wizard account manager","model_account_config_wizard","group_account_manager",1,1,1,1
|
||||
"access_account_config_wizard_system_manager","account.config.wizard system manager","model_account_config_wizard","base.group_system",1,1,1,1
|
||||
"access_account_add_tmpl_wizard_account_manager","account.addtmpl.wizard account manager","model_account_addtmpl_wizard","group_account_manager",1,1,1,1
|
||||
"access_account_add_tmpl_wizard_system_manager","account.addtmpl.wizard system manager","model_account_addtmpl_wizard","base.group_system",1,1,1,1
|
||||
"access_account_invoice_user","account.invoice user","model_account_invoice","base.group_user",1,0,0,0
|
||||
|
||||
|
@@ -42,6 +42,7 @@ class account_change_currency(osv.osv_memory):
|
||||
obj_inv = self.pool.get('account.invoice')
|
||||
obj_inv_line = self.pool.get('account.invoice.line')
|
||||
obj_currency = self.pool.get('res.currency')
|
||||
invoice_ids = []
|
||||
if context is None:
|
||||
context = {}
|
||||
data = self.read(cr, uid, ids)[0]
|
||||
@@ -66,7 +67,8 @@ class account_change_currency(osv.osv_memory):
|
||||
new_price = (line.price_unit / old_rate ) * rate
|
||||
|
||||
obj_inv_line.write(cr, uid, [line.id], {'price_unit' : new_price})
|
||||
obj_inv.write(cr, uid, [invoice.id], {'currency_id' : new_currency})
|
||||
invoice_ids.append(invoice.id)
|
||||
obj_inv.write(cr, uid, invoice_ids, {'currency_id' : new_currency}, context=context)
|
||||
return {}
|
||||
|
||||
account_change_currency()
|
||||
|
||||
@@ -54,7 +54,8 @@
|
||||
id="analytic_rule_action_partner"
|
||||
res_model="account.analytic.default"
|
||||
src_model="res.partner"
|
||||
domain="[('partner_id','=',active_id)]"/>
|
||||
domain="[('partner_id','=',active_id)]"
|
||||
groups="base.group_extended"/>
|
||||
<act_window
|
||||
name="Analytic Rules"
|
||||
id="analytic_rule_action_user"
|
||||
@@ -66,7 +67,8 @@
|
||||
res_model="account.analytic.default"
|
||||
id="analytic_rule_action_product"
|
||||
src_model="product.product"
|
||||
domain="[('product_id','=',active_id)]"/>
|
||||
domain="[('product_id','=',active_id)]"
|
||||
groups="base.group_extended"/>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -7,13 +7,13 @@ msgstr ""
|
||||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2009-08-28 16:01+0000\n"
|
||||
"PO-Revision-Date: 2009-11-17 09:28+0000\n"
|
||||
"Last-Translator: Fabien (Open ERP) <fp@tinyerp.com>\n"
|
||||
"PO-Revision-Date: 2010-05-11 10:20+0000\n"
|
||||
"Last-Translator: Simon Vidmar <Unknown>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2010-04-17 04:12+0000\n"
|
||||
"X-Launchpad-Export-Date: 2010-05-12 04:20+0000\n"
|
||||
"X-Generator: Launchpad (build Unknown)\n"
|
||||
|
||||
#. module: account_payment
|
||||
@@ -46,7 +46,7 @@ msgstr "Napačno ime modela v definiciji dejanja."
|
||||
#: field:payment.line,info_owner:0
|
||||
#: view:payment.order:0
|
||||
msgid "Owner Account"
|
||||
msgstr ""
|
||||
msgstr "Konto lastnika"
|
||||
|
||||
#. module: account_payment
|
||||
#: help:account.invoice,amount_to_pay:0
|
||||
@@ -54,6 +54,8 @@ msgid ""
|
||||
"The amount which should be paid at the current date\n"
|
||||
"minus the amount which is already in payment order"
|
||||
msgstr ""
|
||||
"Znesek, ki ga je potrebno plačati na trenutni datum\n"
|
||||
"zmanjšan za znesek že posredovanih plačilnih nalogov."
|
||||
|
||||
#. module: account_payment
|
||||
#: help:payment.line,date:0
|
||||
@@ -61,6 +63,8 @@ msgid ""
|
||||
"If no payment date is specified, the bank will treat this payment line "
|
||||
"directly"
|
||||
msgstr ""
|
||||
"Če datum plačilnega naloga ni podan, ga bo banka takoj posredovala v "
|
||||
"plačilni sistem"
|
||||
|
||||
#. module: account_payment
|
||||
#: field:payment.order,date_prefered:0
|
||||
@@ -147,7 +151,7 @@ msgstr "Vrstica plačila"
|
||||
#. module: account_payment
|
||||
#: field:payment.type,suitable_bank_types:0
|
||||
msgid "Suitable bank types"
|
||||
msgstr ""
|
||||
msgstr "Primerne vrste bank"
|
||||
|
||||
#. module: account_payment
|
||||
#: view:payment.line:0
|
||||
@@ -182,7 +186,7 @@ msgstr ""
|
||||
#. module: account_payment
|
||||
#: field:payment.order,state:0
|
||||
msgid "State"
|
||||
msgstr ""
|
||||
msgstr "Država"
|
||||
|
||||
#. module: account_payment
|
||||
#: view:payment.line:0
|
||||
|
||||
@@ -11,6 +11,9 @@
|
||||
<form position="attributes">
|
||||
<attribute name="string">Install Extra Modules</attribute>
|
||||
</form>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
<xpath expr="//label[@string='description']"
|
||||
position="attributes">
|
||||
<attribute name="string">Install more modules. A few modules are proposed according to the Association Profile you selected. You will be able to install them based on our requirements.</attribute>
|
||||
@@ -45,5 +48,16 @@
|
||||
<field name="action_id" ref="action_config_install_module"/>
|
||||
<field name="sequence">3</field>
|
||||
</record>
|
||||
<record id="association_ir_actions_todo_tree" model="ir.ui.view">
|
||||
<field name="model">ir.actions.todo</field>
|
||||
<field name="name">association_installer_action_replace</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="inherit_id" ref="base.ir_actions_todo_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@string='Launch']" position="replace">
|
||||
<button name="%(action_config_install_module)d" states="open,skip" string="Launch" type="action" icon="gtk-execute" help="Launch Configuration Wizard"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -18,8 +18,6 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
|
||||
{
|
||||
'name': 'Create IBAN bank accounts',
|
||||
'version': '1.0',
|
||||
@@ -29,7 +27,8 @@ This module install the base for IBAN (International Bank Account Number) bank a
|
||||
|
||||
""",
|
||||
'author': 'Tiny',
|
||||
'depends': ['base', 'account'],
|
||||
'website': 'http://www.openerp.com',
|
||||
'depends': ['account'],
|
||||
'init_xml': ['base_iban_data.xml'],
|
||||
'update_xml': ['base_iban_view.xml'],
|
||||
'installable': True,
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
|
||||
#
|
||||
@@ -15,12 +15,50 @@
|
||||
# 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/>.
|
||||
#
|
||||
##############################################################################
|
||||
import string
|
||||
|
||||
import netsvc
|
||||
from osv import fields, osv
|
||||
from tools.translate import _
|
||||
|
||||
# Length of IBAN
|
||||
_iban_len = {'al':28, 'ad':24, 'at':20, 'be': 16, 'ba': 20, 'bg': 22, 'hr': 21, 'cy': 28,
|
||||
'cz': 24, 'dk': 18, 'ee': 20, 'fo':18, 'fi': 18, 'fr': 27, 'ge': 22, 'de': 22, 'gi': 23,
|
||||
'gr': 27, 'gl': 18, 'hu': 28, 'is':26, 'ie': 22, 'il': 23, 'it': 27, 'kz': 20, 'lv': 21,
|
||||
'lb': 28, 'li': 21, 'lt': 20, 'lu':20 ,'mk': 19, 'mt': 31, 'mu': 30, 'mc': 27, 'gb': 22,
|
||||
'me': 22, 'nl': 18, 'no': 15, 'pl':28, 'pt': 25, 'ro': 24, 'sm': 27, 'sa': 24, 'rs': 22,
|
||||
'sk': 24, 'si': 19, 'es': 24, 'se':24, 'ch': 21, 'tn': 24, 'tr': 26}
|
||||
|
||||
# Reference Examples of IBAN
|
||||
_ref_iban = { 'al':'ALkk BBBS SSSK CCCC CCCC CCCC CCCC', 'ad':'ADkk BBBB SSSS CCCC CCCC CCCC',
|
||||
'at':'ATkk BBBB BCCC CCCC CCCC', 'be': 'BEkk BBBC CCCC CCKK', 'ba': 'BAkk BBBS SSCC CCCC CoKK',
|
||||
'bg': 'BGkk BBBB SSSS DDCC CCCC CC', 'hr': 'HRkk BBBB BBBC CCCC CCCC C',
|
||||
'cy': 'CYkk BBBS SSSS CCCC CCCC CCCC CCCC',
|
||||
'cz': 'CZkk BBBB SSSS SSCC CCCC CCCC', 'dk': 'DKkk BBBB CCCC CCCC CC',
|
||||
'ee': 'EEkk BBSS CCCC CCCC CCCK', 'fo': 'FOkk CCCC CCCC CCCC CC',
|
||||
'fi': 'FIkk BBBB BBCC CCCC CK', 'fr': 'FRkk BBBB BGGG GGCC CCCC CCCC CKK',
|
||||
'ge': 'GEkk BBCC CCCC CCCC CCCC CC', 'de': 'DEkk BBBB BBBB CCCC CCCC CC',
|
||||
'gi': 'GIkk BBBB CCCC CCCC CCCC CCC', 'gr': 'GRkk BBBS SSSC CCCC CCCC CCCC CCC',
|
||||
'gl': 'GLkk BBBB CCCC CCCC CC', 'hu': 'HUkk BBBS SSSC CCCC CCCC CCCC CCCC',
|
||||
'is':'ISkk BBBB SSCC CCCC XXXX XXXX XX', 'ie': 'IEkk AAAA BBBB BBCC CCCC CC',
|
||||
'il': 'ILkk BBBN NNCC CCCC CCCC CCC', 'it': 'ITkk KAAA AABB BBBC CCCC CCCC CCC',
|
||||
'kz': 'KZkk BBBC CCCC CCCC CCCC', 'lv': 'LVkk BBBB CCCC CCCC CCCC C',
|
||||
'lb': 'LBkk BBBB AAAA AAAA AAAA AAAA AAAA', 'li': 'LIkk BBBB BCCC CCCC CCCC C',
|
||||
'lt': 'LTkk BBBB BCCC CCCC CCCC', 'lu': 'LUkk BBBC CCCC CCCC CCCC' ,
|
||||
'mk': 'MKkk BBBC CCCC CCCC CKK', 'mt': 'MTkk BBBB SSSS SCCC CCCC CCCC CCCC CCC',
|
||||
'mu': 'MUkk BBBB BBSS CCCC CCCC CCCC CCCC CC', 'mc': 'MCkk BBBB BGGG GGCC CCCC CCCC CKK',
|
||||
'gb': 'GBkk BBBB SSSS SSCC CCCC CC', 'me': 'MEkk BBBC CCCC CCCC CCCC KK',
|
||||
'nl': 'NLkk BBBB CCCC CCCC CC', 'no': 'NOkk BBBB CCCC CCK', 'pl':'PLkk BBBS SSSK CCCC CCCC CCCC CCCC',
|
||||
'pt': 'PTkk BBBB SSSS CCCC CCCC CCCK K', 'ro': 'ROkk BBBB CCCC CCCC CCCC CCCC',
|
||||
'sm': 'SMkk KAAA AABB BBBC CCCC CCCC CCC', 'sa': 'SAkk BBCC CCCC CCCC CCCC CCCC',
|
||||
'rs': 'RSkk BBBC CCCC CCCC CCCC KK', 'sk': 'SKkk BBBB SSSS SSCC CCCC CCCC',
|
||||
'si': 'SIkk BBSS SCCC CCCC CKK', 'es': 'ESkk BBBB GGGG KKCC CCCC CCCC',
|
||||
'se': 'SEkk BBBB CCCC CCCC CCCC CCCC', 'ch': 'CHkk BBBB BCCC CCCC CCCC C',
|
||||
'tn': 'TNkk BBSS SCCC CCCC CCCC CCCC', 'tr': 'TRkk BBBB BRCC CCCC CCCC CCCC CC'
|
||||
}
|
||||
|
||||
def _format_iban(string):
|
||||
'''
|
||||
@@ -54,7 +92,9 @@ class res_partner_bank(osv.osv):
|
||||
for bank_acc in self.browse(cr, uid, ids):
|
||||
if not bank_acc.iban:
|
||||
continue
|
||||
iban =_format_iban(bank_acc.iban)
|
||||
iban = _format_iban(bank_acc.iban)
|
||||
if iban[:2] in _iban_len and len(iban) != _iban_len[iban[:2]]:
|
||||
return False
|
||||
#the four first digits have to be shifted to the end
|
||||
iban = iban[4:] + iban[:4]
|
||||
#letters have to be transformed into numbers (a = 10, b = 11, ...)
|
||||
@@ -69,6 +109,17 @@ class res_partner_bank(osv.osv):
|
||||
return False
|
||||
return True
|
||||
|
||||
def _construct_constraint_msg(self, cr, uid, ids):
|
||||
|
||||
def default_iban_check(iban_cn):
|
||||
return iban_cn[0] in string.ascii_lowercase and iban_cn[1] in string.ascii_lowercase
|
||||
|
||||
iban_country = self.browse(cr, uid, ids)[0].iban[:2]
|
||||
if default_iban_check(iban_country):
|
||||
iban_example = iban_country in _ref_iban and _ref_iban[iban_country] + ' \nWhere A = Account number, B = National bank code, S = Branch code, C = account No, N = branch No, K = National check digits....' or ''
|
||||
return _('The IBAN does not seems to be correct. You should have entered something like this %s'), (iban_example)
|
||||
return _('The IBAN is invalid, It should begin with the country code'), ()
|
||||
|
||||
def name_get(self, cr, uid, ids, context=None):
|
||||
res = []
|
||||
to_check_ids = []
|
||||
@@ -122,10 +173,8 @@ class res_partner_bank(osv.osv):
|
||||
'iban': fields.char('IBAN', size=34, readonly=True, help="International Bank Account Number"),
|
||||
}
|
||||
|
||||
_constraints = [(check_iban, "The IBAN number doesn't seem to be correct.", ["iban"])]
|
||||
_constraints = [(check_iban, _construct_constraint_msg, ["iban"])]
|
||||
|
||||
res_partner_bank()
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
@@ -1,6 +1,6 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
|
||||
#
|
||||
@@ -15,16 +15,21 @@
|
||||
# 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/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
import installer
|
||||
import todo
|
||||
import gtk_contact_form
|
||||
import wizard
|
||||
|
||||
from osv import osv
|
||||
import os
|
||||
import base64
|
||||
import random
|
||||
import tools
|
||||
from osv import fields, osv
|
||||
import netsvc
|
||||
from tools.translate import _
|
||||
|
||||
class base_setup_config_choice(osv.osv_memory):
|
||||
"""
|
||||
@@ -32,6 +37,29 @@ class base_setup_config_choice(osv.osv_memory):
|
||||
_name = 'base.setup.config'
|
||||
logger = netsvc.Logger()
|
||||
|
||||
def _get_image(self, cr, uid, context=None):
|
||||
file_no = str(random.randint(1,3))
|
||||
path = os.path.join('base','res','config_pixmaps/%s.png'%file_no)
|
||||
file_data = tools.file_open(path,'rb').read()
|
||||
return base64.encodestring(file_data)
|
||||
|
||||
def get_users(self, cr, uid, context={}):
|
||||
user_obj = self.pool.get('res.users')
|
||||
user_ids = user_obj.search(cr, uid, [])
|
||||
users = user_obj.browse(cr, uid, user_ids)
|
||||
user_str = '\n'.join(map(lambda x: ' - %s: %s / %s' % (x.name, x.login, x.password), users))
|
||||
return _('The following users have been installed on your database: \n')+ user_str
|
||||
|
||||
_columns = {
|
||||
'installed_users':fields.text('Installed Users', readonly=True),
|
||||
'config_logo' : fields.binary('Image', readonly=True),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
'installed_users':get_users,
|
||||
'config_logo' : _get_image
|
||||
}
|
||||
|
||||
def set_default_menu(self, cr, uid, menu, context=None):
|
||||
user = self.pool.get('res.users')\
|
||||
.browse(cr, uid, uid, context=context)
|
||||
|
||||
@@ -43,7 +43,7 @@
|
||||
'init_xml': ['base_setup_data.xml'],
|
||||
'update_xml': ['security/ir.model.access.csv',
|
||||
'base_setup_installer.xml',
|
||||
'base_setup_todo.xml',],
|
||||
'base_setup_todo.xml','gtk_contact_form.xml'],
|
||||
'demo_xml': ['base_setup_demo.xml'],
|
||||
'installable': True,
|
||||
'active': True,
|
||||
|
||||
@@ -6,25 +6,27 @@
|
||||
<field name="model">base.setup.config</field>
|
||||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Setup">
|
||||
<group colspan="4">
|
||||
<image name="gtk-dialog-info"/>
|
||||
<group colspan="2" col="4">
|
||||
<separator colspan="4" string="Installation Done"/>
|
||||
<label align="0.0" colspan="4"
|
||||
string="Your new database is now fully installed."/>
|
||||
<label align="0.0" colspan="4"
|
||||
string="You can start configuring the system or connect directly to the database using the default setup."/>
|
||||
</group>
|
||||
</group>
|
||||
<separator string="" colspan="4"/>
|
||||
<button name="menu" icon="gtk-ok" type="object"
|
||||
string="Use Directly"/>
|
||||
<button name="config" icon="gtk-go-forward" type="object"
|
||||
string="Start Configuration"/>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
<form string="Setup">
|
||||
<group colspan="4" col="8" width="600">
|
||||
<group>
|
||||
<field name="config_logo" widget="image" width="150" height="100" nolabel="1" colspan="1"/>
|
||||
</group>
|
||||
<group colspan="6">
|
||||
<separator string="Installation Done" colspan="8"/>
|
||||
<label align="0.0" string="Your new database is now fully installed." colspan="8"/>
|
||||
<field name="installed_users" nolabel= "1" colspan="8"/>
|
||||
<label align="0.0" colspan="8" string="You can start configuring the system or connect directly to the database as an administrator."/>
|
||||
</group>
|
||||
</group>
|
||||
<group colspan="8" col="8">
|
||||
<separator string="" colspan="8"/>
|
||||
<label string="" colspan="6"/>
|
||||
<button name="menu" icon="gtk-ok" type="object" string="Use Directly" colspan="1"/>
|
||||
<button name="config" icon="gtk-go-forward" type="object" string="Start Configuration" colspan="1"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="action_base_setup" model="ir.actions.act_window">
|
||||
<field name="name">Setup</field>
|
||||
|
||||
@@ -10,29 +10,32 @@
|
||||
<form position="attributes">
|
||||
<attribute name="string">Base Setup Modules Installation</attribute>
|
||||
</form>
|
||||
<separator string="title" position="attributes">
|
||||
<attribute name="string">Install Modules</attribute>
|
||||
</separator>
|
||||
<xpath expr="//label[@string='description']"
|
||||
position="attributes">
|
||||
<attribute name="string"
|
||||
>Now that OpenERP is installed, we have selected applications commonly useful to users which you can install directly, as well as sets of applications for more specific types or groups of businesses (the vertical modules).
|
||||
>Now that OpenERP is installed, We have selected applications commonly useful to users which you can install directly, as well as sets of applications for more specific types or groups of businesses (the vertical modules).
|
||||
|
||||
If you don't think you need any of these right now, you can easily install them later on.</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='string'></attribute>
|
||||
<attribute name='rowspan'>15</attribute>
|
||||
</xpath>
|
||||
<separator string="title" position="attributes">
|
||||
<attribute name="string">Install Generic Modules</attribute>
|
||||
</separator>
|
||||
<group colspan="8">
|
||||
<separator string="Generic Modules" colspan="4"/>
|
||||
<field name="crm"/> <field name="sale"/>
|
||||
<field name="project"/> <field name="knowledge"/>
|
||||
<field name="stock"/> <field name="mrp"/>
|
||||
<field name="account"/> <field name="purchase"/>
|
||||
<field name="hr"/> <field name="point_of_sale"/>
|
||||
<field name="marketing"/> <field name="misc_tools"/>
|
||||
<field name="report_designer"/>
|
||||
<separator string="Vertical Modules" colspan="4"/>
|
||||
<field name="profile_association"/>
|
||||
<field name="profile_auction"/>
|
||||
<field name="profile_bookstore"/>
|
||||
<field name="crm" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/> <field name="sale" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/>
|
||||
<field name="project" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/> <field name="knowledge" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/>
|
||||
<field name="stock" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/> <field name="mrp" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/>
|
||||
<field name="account" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/> <field name="purchase" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/>
|
||||
<field name="hr" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/> <field name="point_of_sale" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)" groups="base.group_extended"/>
|
||||
<field name="marketing" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)" groups="base.group_extended"/> <field name="misc_tools" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/>
|
||||
<field name="report_designer" groups="base.group_extended" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/>
|
||||
<separator string="Install Specific Business Modules" colspan="4"/>
|
||||
<field name="profile_association" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/>
|
||||
<field name="profile_auction" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/>
|
||||
<field name="profile_bookstore" on_change="onchange_moduleselection(crm,sale,project,knowledge,stock,mrp,account,purchase,hr,point_of_sale,marketing,misc_tools,report_designer,profile_association,profile_auction,profile_bookstore)"/>
|
||||
</group>
|
||||
</data>
|
||||
</field>
|
||||
@@ -52,5 +55,16 @@ If you don't think you need any of these right now, you can easily install them
|
||||
<field name="action_id" ref="action_base_setup_installer"/>
|
||||
<field name="sequence">2</field>
|
||||
</record>
|
||||
<record id="base_setup_ir_actions_todo_tree" model="ir.ui.view">
|
||||
<field name="model">ir.actions.todo</field>
|
||||
<field name="name">base_setup_installer_action_replace</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="inherit_id" ref="base.ir_actions_todo_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@string='Launch']" position="replace">
|
||||
<button name="%(action_base_setup_installer)d" states="open,skip" string="Launch" type="action" icon="gtk-execute" help="Launch Configuration Wizard"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -10,33 +10,44 @@
|
||||
<form position="attributes">
|
||||
<attribute name="string">Main Company Setup</attribute>
|
||||
</form>
|
||||
|
||||
<xpath expr="//label[@string='description']" position="attributes">
|
||||
<attribute name="string">Information of your company will be used to custiomize your documents like Invoices, Sale Orders,...</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="title"]' position='attributes'>
|
||||
<attribute name='string'>Configure Your Company</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='rowspan'>23</attribute>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
<group string="res_config_contents" position="replace">
|
||||
<field name="company_id" invisible="1"/>
|
||||
<group colspan="5">
|
||||
<group colspan="2">
|
||||
<field name="company_id" invisible="1"/>
|
||||
<field name="name" colspan="4" required="True"/>
|
||||
<newline/>
|
||||
<field name="street"/>
|
||||
<field name="street2"/>
|
||||
<field name="zip"/>
|
||||
<field name="city"/>
|
||||
<field name="country_id"/>
|
||||
<field name="state_id"/>
|
||||
<field name="email"/>
|
||||
<field name="phone"/>
|
||||
<field name="currency" widget="selection"/>
|
||||
|
||||
<separator string="Configure Your Company" colspan="4"/>
|
||||
<field name="name" colspan="4" required="True"/>
|
||||
<newline/>
|
||||
<field name="street"/>
|
||||
<field name="street2"/>
|
||||
<field name="zip"/>
|
||||
<field name="city"/>
|
||||
<field name="country_id"/>
|
||||
<field name="state_id"/>
|
||||
<field name="email"/>
|
||||
<field name="phone"/>
|
||||
<field name="currency"/>
|
||||
<separator string="Report Information" colspan="4"/>
|
||||
<field name="rml_header1" colspan="4"/>
|
||||
<field name="rml_footer1" colspan="4"/>
|
||||
<field name="rml_footer2" colspan="4"/>
|
||||
|
||||
<separator string="Report Information" colspan="4"/>
|
||||
<field name="rml_header1" colspan="4"/>
|
||||
<field name="rml_footer1" colspan="4"/>
|
||||
<field name="rml_footer2" colspan="4"/>
|
||||
|
||||
<separator colspan="4"
|
||||
string="Your Logo - Use a size of about 450x150 pixels."/>
|
||||
<field colspan="4" name="logo" widget="image"
|
||||
nolabel="1"/>
|
||||
</group>
|
||||
<separator colspan="4"
|
||||
string="Your Logo - Use a size of about 450x150 pixels."/>
|
||||
<field colspan="4" name="logo" widget="image"
|
||||
nolabel="1"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
|
||||
<xpath expr='//button[@name="action_skip"]' position='replace'/>
|
||||
</data>
|
||||
|
||||
@@ -0,0 +1,99 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
##############################################################################
|
||||
#
|
||||
# OpenERP, Open Source Management Solution
|
||||
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
|
||||
#
|
||||
# This program is free software: you can redistribute it and/or modify
|
||||
# it under the terms of the GNU Affero General Public License as
|
||||
# published by the Free Software Foundation, either version 3 of the
|
||||
# License, or (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful,
|
||||
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
# GNU Affero General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU Affero General Public License
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
from operator import itemgetter
|
||||
|
||||
from osv import osv, fields
|
||||
import netsvc
|
||||
import tools
|
||||
from tools import misc
|
||||
|
||||
class base_gtkcontactform(osv.osv_memory):
|
||||
"""
|
||||
"""
|
||||
_name = 'base.gtkcontactform'
|
||||
_inherit = 'res.config'
|
||||
logger = netsvc.Logger()
|
||||
|
||||
def default_get(self, cr, uid, fields_list=None, context=None):
|
||||
''' set email and phone number selected in the previous company information
|
||||
form '''
|
||||
defaults = super(base_gtkcontactform, self)\
|
||||
.default_get(cr, uid, fields_list=fields_list, context=context)
|
||||
company_id = self.pool.get('base.setup.company').search(cr, uid, [])
|
||||
company = self.pool.get('base.setup.company').read(cr, uid, company_id)
|
||||
company = company and company[0] or False
|
||||
if company:
|
||||
defaults.update({'email':company.get('email',''),
|
||||
'phone': company.get('phone','')})
|
||||
return defaults
|
||||
|
||||
_columns = {
|
||||
'name':fields.char('Your Name', size=64, required=True),
|
||||
'job':fields.char('Job Title', size=64,),
|
||||
'email':fields.char('E-mail', size=64, required=True),
|
||||
'phone':fields.char('Phone', size=64, required=True),
|
||||
'total_employees':fields.selection([('1-5','1-5'),('5-20','5-20'),('20-100','20-100'),('100-500','100-500'),('500','500+')], 'No Of Employees', size=32),
|
||||
'industry':fields.selection([('apparel','Apparel'),('banking','Banking'),('biotechnology','Biotechnology'),('chemicals','Chemicals'),('communications','Communications'),
|
||||
('construction','Construction'),('consulting','Consulting'),('education','Education'),('electronics','Electronics'),('energy','Energy'),('engineering','Engineering'),
|
||||
('entertainment','Entertainment'),('environmental','Environmental'),('finance','Finance'),('government','Government'),('healthcare','Healthcare'),('hospitality','Hospitality'),
|
||||
('insurance','Insurance'),('machinery','Machinery'),('manufacturing','Manufacturing'),('media','Media'),('notforprofit','Not For Profit'),
|
||||
('recreation','Recreation'),('retail','Retail'),('shipping','Shipping'),('technology','Technology'),('telecommunications','Telecommunications'),
|
||||
('transportation','Transportation'),('utilities','Utilities'),('other','Other'),
|
||||
], 'Industry', size=32),
|
||||
'use_openerp':fields.boolean('We plan to use OpenERP'),
|
||||
'already_using_openerp':fields.boolean('Already using OpenERP'),
|
||||
'sell_openerp':fields.boolean('Plan to sell OpenERP'),
|
||||
'already_selling__openerp':fields.boolean('Already selling OpenERP'),
|
||||
|
||||
'features':fields.boolean('The features of OpenERP'),
|
||||
'saas':fields.boolean('OpenERP Online Solutions (SaaS)'),
|
||||
'partners_program':fields.boolean('OpenERP Partners Program (for integrators)'),
|
||||
'support':fields.boolean('Support and Maintenance Solutions'),
|
||||
'training':fields.boolean('OpenERP Training Program'),
|
||||
'other':fields.boolean('Other'),
|
||||
'ebook':fields.boolean('ebook'),
|
||||
'updates':fields.boolean('updates'),
|
||||
}
|
||||
def execute(self, cr, uid, ids, context=None):
|
||||
company_id = self.pool.get('base.setup.company').search(cr, uid, [])
|
||||
company_data = self.pool.get('base.setup.company').read(cr, uid, company_id)
|
||||
company_data = company_data and company_data[0] or False
|
||||
country1 = ''
|
||||
if company_data and company_data.get('country_id', False):
|
||||
country = self.pool.get('res.country').read(cr, uid, company_data['country_id'],['name'])['name']
|
||||
for res in self.read(cr, uid, ids):
|
||||
email = res.get('email','')
|
||||
result = "\ncompany: "+ str(company_data.get('name',''))
|
||||
result += "\nname: " + str(res.get('name',''))
|
||||
result += "\nphone: " + str(res.get('phone',''))
|
||||
result += "\ncity: " + str(company_data.get('city',''))
|
||||
result += "\ncountry: " + str(country)
|
||||
result += "\nindustry: " + str(res.get('industry', ''))
|
||||
result += "\ntotal_employees: " + str(res.get('total_employees', ''))
|
||||
result += "\nplan_use: " + str(res.get('use_openerp', False))
|
||||
result += "\nsell_openerp: " + str(res.get('sell_openerp', False))
|
||||
result += "\nebook: " + str(res.get('ebook',False))
|
||||
result += "\ngtk: " + str(True)
|
||||
misc.upload_data(email, result, type='SURVEY')
|
||||
|
||||
|
||||
|
||||
base_gtkcontactform()
|
||||
@@ -0,0 +1,77 @@
|
||||
<openerp>
|
||||
<data>
|
||||
<record id="view_base_setup_contact" model="ir.ui.view">
|
||||
<field name="name">Contact information</field>
|
||||
<field name="model">base.gtkcontactform</field>
|
||||
<field name="type">form</field>
|
||||
<field name="inherit_id" ref="base.res_config_view_base"/>
|
||||
<field name="arch" type="xml">
|
||||
<data>
|
||||
<form position="attributes">
|
||||
<attribute name="string">Contact Information</attribute>
|
||||
</form>
|
||||
<xpath expr="//label[@string='description']" position="attributes">
|
||||
<attribute name="string">Information about you and the company you are related too. The Basic information related to the company has already been collected and some more information required by you to fill.</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="title"]' position='attributes'>
|
||||
<attribute name='string'>Do You Need Them ?</attribute>
|
||||
<attribute name='colspan'>4</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='rowspan'>22</attribute>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
<group string="res_config_contents" position="replace">
|
||||
<group colspan="4" height="450" width="600">
|
||||
<group colspan="4">
|
||||
<field name="ebook" nolabel="1"/>
|
||||
<label align="0.0" string="I want to receive the Open ERP ebook (PDF) by email." colspan="3"/>
|
||||
<field name="updates" nolabel="1"/>
|
||||
<label align="0.0" string="Yes, I would like to receive information updates from OpenERP." colspan="3"/>
|
||||
</group>
|
||||
<group colspan="4" attrs="{'invisible':[('ebook','=',False),('updates','=',False)]}">
|
||||
<separator colspan="4" string="About You"/>
|
||||
<field name="name" colspan="2" required="True"/>
|
||||
<field name="job" colspan="2"/>
|
||||
<field name="email" colspan="2"/>
|
||||
<field name="phone" colspan="2"/>
|
||||
<field name="total_employees" colspan="2"/>
|
||||
<field name="industry" colspan="2"/>
|
||||
</group>
|
||||
<group colspan="4" attrs="{'invisible':[('ebook','=',False),('updates','=',False)]}">
|
||||
<separator string="Your projects with OpenERP" colspan="4"/>
|
||||
<field name="use_openerp" align="0.0" colspan="1"/>
|
||||
<field name="already_using_openerp" align="0.0" colspan="1"/>
|
||||
<field name="sell_openerp" align="0.0" colspan="1"/>
|
||||
<field name="already_selling__openerp" align="0.0" colspan="1"/>
|
||||
<separator colspan="4" string="You would like to know more about"/>
|
||||
<field name="features" align="0.0" colspan="1"/>
|
||||
<field name="training" align="0.0" colspan="1"/>
|
||||
<field name="saas" align="0.0" colspan="1"/>
|
||||
<field name="support" align="0.0" colspan="1"/>
|
||||
<field name="partners_program" align="0.0" colspan="1"/>
|
||||
<field name="other" align="0.0" colspan="1"/>
|
||||
</group>
|
||||
</group>
|
||||
</group>
|
||||
</data>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="action_base_contact" model="ir.actions.act_window">
|
||||
<field name="name">Setup contact information</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">base.gtkcontactform</field>
|
||||
<field name="view_id" ref="view_base_setup_contact"/>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">form</field>
|
||||
<field name="target">new</field>
|
||||
</record>
|
||||
|
||||
<record id="base_setup_contact_todo" model="ir.actions.todo">
|
||||
<field name="action_id" ref="action_base_contact"/>
|
||||
<field name="sequence">1</field>
|
||||
<field name="restart">onskip</field>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -69,7 +69,7 @@ class base_setup_installer(osv.osv_memory):
|
||||
help="Helps you manage your marketing campaigns step by step."),
|
||||
'misc_tools':fields.boolean('Miscellaneous Tools',
|
||||
help="Lets you install various interesting but non-essential "
|
||||
"tools."),
|
||||
"tools like Survey, Lunch,..."),
|
||||
'report_designer':fields.boolean('Advanced Reporting',
|
||||
help="Lets you install various tools to simplify and enhance "
|
||||
"OpenERP's report creation."),
|
||||
@@ -90,5 +90,25 @@ class base_setup_installer(osv.osv_memory):
|
||||
_defaults = {
|
||||
'crm': True,
|
||||
}
|
||||
|
||||
|
||||
def onchange_moduleselection(self, cr, uid, ids, *args):
|
||||
progress = self._progress(cr, uid) - (2.5 * len(filter(lambda x: x==1, args)))
|
||||
if progress <= 5.0:
|
||||
progress = 5.0
|
||||
return {'value':{'progress':progress}}
|
||||
|
||||
def modules_to_install(self, cr, uid, ids, context=None):
|
||||
modules = super(base_setup_installer, self).modules_to_install(cr, uid, ids, context=context)
|
||||
interface_id = self.pool.get('res.config.view').search(cr, uid, [])
|
||||
interface = self.pool.get('res.config.view').read(cr, uid, interface_id)[0]
|
||||
modules_selected = self.read(cr, uid, ids)[0]
|
||||
added_modules = []
|
||||
if interface.get('view', '') == 'simple' :
|
||||
if modules_selected.get('mrp', False):
|
||||
added_modules.append('mrp_jit')
|
||||
if modules_selected.get('knowledge', False):
|
||||
added_modules.append('document_ftp')
|
||||
return modules | set(added_modules)
|
||||
base_setup_installer()
|
||||
|
||||
|
||||
@@ -48,23 +48,23 @@ class base_setup_company(osv.osv_memory):
|
||||
cr, uid, 'res.country.state', context=context)
|
||||
def _get_all_countries(self, cr, uid, context=None):
|
||||
return self._get_all(cr, uid, 'res.country', context=context)
|
||||
def _get_all_currencies(self, cr, uid, context=None):
|
||||
return self._get_all(cr, uid, 'res.currency', context=context)
|
||||
|
||||
def default_get(self, cr, uid, fields_list=None, context=None):
|
||||
""" get default company if any, and the various other fields
|
||||
from the company's fields
|
||||
"""
|
||||
base_mod = self.pool.get('ir.module.module').search(cr, uid, [('name','ilike','base')])
|
||||
base_mod_rec = self.pool.get('ir.module.module').browse(cr, uid, base_mod)[0]
|
||||
defaults = super(base_setup_company, self)\
|
||||
.default_get(cr, uid, fields_list=fields_list, context=context)
|
||||
|
||||
companies = self.pool.get('res.company')
|
||||
company_id = companies.search(cr, uid, [], limit=1, order="id")
|
||||
if not company_id or 'company_id' not in fields_list:
|
||||
return defaults
|
||||
company = companies.browse(cr, uid, company_id[0])
|
||||
|
||||
defaults['company_id'] = company.id
|
||||
if not base_mod_rec.demo:
|
||||
return defaults
|
||||
defaults['currency'] = company.currency_id.id
|
||||
for field in ['name','logo','rml_header1','rml_footer1','rml_footer2']:
|
||||
defaults[field] = company[field]
|
||||
@@ -90,7 +90,7 @@ class base_setup_company(osv.osv_memory):
|
||||
'country_id':fields.selection(_get_all_countries, 'Countries'),
|
||||
'email':fields.char('E-mail', size=64),
|
||||
'phone':fields.char('Phone', size=64),
|
||||
'currency':fields.selection(_get_all_currencies, 'Currency', required=True),
|
||||
'currency':fields.many2one('res.currency', 'Currency', required=True),
|
||||
'rml_header1':fields.char('Report Header', size=200,
|
||||
help='''This sentence will appear at the top right corner of your reports.
|
||||
We suggest you to put a slogan here:
|
||||
@@ -112,7 +112,6 @@ IBAN: BE74 1262 0121 6907 - SWIFT: CPDF BE71 - VAT: BE0477.472.701'''),
|
||||
if not getattr(payload, 'company_id', None):
|
||||
raise ValueError('Case where no default main company is setup '
|
||||
'not handled yet')
|
||||
|
||||
company = payload.company_id
|
||||
company.write({
|
||||
'name':payload.name,
|
||||
@@ -120,6 +119,7 @@ IBAN: BE74 1262 0121 6907 - SWIFT: CPDF BE71 - VAT: BE0477.472.701'''),
|
||||
'rml_footer1':payload.rml_footer1,
|
||||
'rml_footer2':payload.rml_footer2,
|
||||
'logo':payload.logo,
|
||||
'currency_id':payload.currency.id,
|
||||
})
|
||||
|
||||
company.partner_id.write({
|
||||
|
||||
@@ -29,7 +29,8 @@
|
||||
checking the validity of VAT Number assinged to partners in European countries.
|
||||
""",
|
||||
'author': 'Tiny',
|
||||
'depends': ['base', 'account'],
|
||||
'depends': ['account'],
|
||||
'website': 'http://www.openerp.com',
|
||||
'update_xml': ['base_vat_view.xml'],
|
||||
'installable': True,
|
||||
'active': False,
|
||||
|
||||
+22
-11
@@ -19,16 +19,28 @@
|
||||
# along with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
#
|
||||
##############################################################################
|
||||
|
||||
from osv import osv
|
||||
from osv import fields
|
||||
import string
|
||||
|
||||
from osv import osv, fields
|
||||
from tools.func import partial
|
||||
from tools.translate import _
|
||||
|
||||
_ref_vat = {
|
||||
'be': 'BE0477472701',
|
||||
}
|
||||
'be': 'BE0477472701', 'at': 'ATU12345675',
|
||||
'bg': 'BG1234567892', 'cy': 'CY12345678F',
|
||||
'cz': 'CZ12345679', 'de': 'DE123456788',
|
||||
'dk': 'DK12345674', 'ee': 'EE123456780',
|
||||
'es': 'ESA12345674', 'fi': 'FI12345671',
|
||||
'fr': 'FR32123456789', 'gb': 'GB123456782',
|
||||
'gr': 'GR12345670', 'hu': 'HU12345676',
|
||||
'ie': 'IE1234567T', 'it': 'IT12345670017',
|
||||
'lt': 'LT123456715', 'lu': 'LU12345613',
|
||||
'lv': 'LV41234567891', 'mt': 'MT12345634',
|
||||
'nl': 'NL123456782B90', 'pl': 'PL1234567883',
|
||||
'pt': 'PT123456789', 'ro': 'RO1234567897',
|
||||
'se': 'SE123456789701', 'si': 'SI12345679',
|
||||
'sk': 'SK0012345675', 'el': 'EL12345670'
|
||||
}
|
||||
|
||||
def mult_add(i, j):
|
||||
"""Sum each digits of the multiplication of i and j."""
|
||||
@@ -55,10 +67,9 @@ class res_partner(osv.osv):
|
||||
check = getattr(self, 'check_vat_' + vat_country)
|
||||
if not check(vat_number):
|
||||
return False
|
||||
|
||||
return True
|
||||
|
||||
def vat_change(self, cr, uid, ids, value, context={}):
|
||||
def vat_change(self, cr, uid, ids, value, context=None):
|
||||
return {'value': {'vat_subjected': bool(value)}}
|
||||
|
||||
_columns = {
|
||||
@@ -74,8 +85,9 @@ class res_partner(osv.osv):
|
||||
|
||||
vat_country, vat_number = self._split_vat(self.browse(cr, uid, ids)[0].vat)
|
||||
if default_vat_check(vat_country, vat_number):
|
||||
return _('The Vat does not seems to be correct. You should have entered something like this %s'), (_ref_vat[vat_country])
|
||||
return _('The VAT is invalid, it should begin with the country code'), ()
|
||||
vat_no = vat_country in _ref_vat and _ref_vat[vat_country] or 'Country Code + Vat Number'
|
||||
return _('The Vat does not seems to be correct. You should have entered something like this %s'), (vat_no)
|
||||
return _('The VAT is invalid, It should begin with the country code'), ()
|
||||
|
||||
_constraints = [(check_vat, _construct_constraint_msg, ["vat"])]
|
||||
|
||||
@@ -1065,5 +1077,4 @@ class res_partner(osv.osv):
|
||||
|
||||
res_partner()
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
@@ -121,6 +121,12 @@
|
||||
action="crm_case_categ_meet" parent="menu_meeting_sale"
|
||||
sequence="1" />
|
||||
|
||||
<record id="ir_ui_view_sc_calendar0" model="ir.ui.view_sc">
|
||||
<field name="name">Calendar</field>
|
||||
<field name="resource">ir.ui.menu</field>
|
||||
<field name="user_id" ref="base.user_root"/>
|
||||
<field name="res_id" ref="crm.menu_crm_case_categ_meet"/>
|
||||
</record>
|
||||
<record id="action_view_attendee_form" model="ir.actions.act_window">
|
||||
<field name="name">Meeting Invitations</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
|
||||
@@ -101,7 +101,7 @@
|
||||
<group col="2" colspan="2">
|
||||
<separator colspan="2" string="Categorization"/>
|
||||
<field name="section_id" colspan="1" widget="selection"/>
|
||||
<field name="categ_id" select="1"
|
||||
<field name="categ_id" select="1" groups="base.group_extended"
|
||||
string="Category" widget="selection"
|
||||
domain="[('object_id.model', '=', 'crm.opportunity')]" />
|
||||
</group>
|
||||
@@ -224,7 +224,7 @@
|
||||
<field name="planned_revenue" sum="Total of Planned Revenue"/>
|
||||
<field name="probability" widget="progressbar" avg="Avg. of Probability"/>
|
||||
<field name="date_action"/>
|
||||
<field name="section_id"/>
|
||||
<field name="section_id" groups="base.group_extended"/>
|
||||
<field name="user_id"/>
|
||||
<field name="priority"/>
|
||||
<field name="state"/>
|
||||
@@ -288,7 +288,6 @@
|
||||
/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" string="Opportunity"/>
|
||||
<field name="partner_id"/>
|
||||
<field name="user_id" widget="selection">
|
||||
<filter icon="terp-partner"
|
||||
domain="[('user_id','=',uid)]"
|
||||
@@ -318,7 +317,7 @@
|
||||
<filter string="Partner" icon="terp-crm" domain="[]"
|
||||
context="{'group_by':'partner_id'}" />
|
||||
<filter string="Salesman" icon="terp-crm"
|
||||
domain="[]" context="{'group_by':'user_id'}" />
|
||||
domain="[('user_id','=',uid)]" context="{'group_by':'user_id'}" />
|
||||
<separator orientation="vertical" />
|
||||
<filter string="Creation" icon="terp-project"
|
||||
domain="[]" context="{'group_by':'create_date'}" />
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<openerp>
|
||||
<data>
|
||||
<menuitem id="menu_crm_configuration" name="Cases"
|
||||
parent="base.menu_base_config" sequence="0"/>
|
||||
parent="base.menu_base_config" sequence="0" groups="base.group_extended"/>
|
||||
|
||||
<!-- Case Sections Form View -->
|
||||
|
||||
@@ -115,7 +115,7 @@
|
||||
<field name="view_id" ref="crm_case_stage_tree"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="menu_crm_case_stage" name="Stages" parent="crm.menu_crm_configuration"/>
|
||||
<menuitem id="menu_crm_case_stage" name="Stages" parent="crm.menu_crm_configuration" groups="base.group_extended"/>
|
||||
|
||||
|
||||
<!-- Case Categories Form View -->
|
||||
@@ -155,7 +155,7 @@
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_id" ref="crm_case_categ_tree-view"/>
|
||||
</record>
|
||||
<menuitem id="menu_crm_case_categ" name="Categories" parent="crm.menu_crm_configuration"/>
|
||||
<menuitem id="menu_crm_case_categ" name="Categories" parent="crm.menu_crm_configuration" groups="base.group_extended"/>
|
||||
|
||||
<menuitem action="crm_case_section_act"
|
||||
id="menu_crm_case_section_act"
|
||||
@@ -201,7 +201,7 @@
|
||||
<field name="view_id" ref="crm_case_resource_type_tree"/>
|
||||
</record>
|
||||
<menuitem id="menu_crm_case_resource_type" name="Resource Type"
|
||||
parent="crm.menu_crm_configuration" />
|
||||
parent="crm.menu_crm_configuration" groups="base.group_extended" />
|
||||
|
||||
<record id="crm_case_section_act_tree" model="ir.actions.act_window">
|
||||
<field name="name">Cases by section</field>
|
||||
|
||||
@@ -315,7 +315,8 @@ class email_parser(object):
|
||||
'res_id': id
|
||||
}
|
||||
self.rpc('ir.attachment', 'create', data_attach)
|
||||
self.rpc(self.model, 'history', [id], 'Send', True, self._decode_header(msg['From']), body['body'])
|
||||
|
||||
self.rpc(self.model, 'history', [id], 'Send', True, self._decode_header(msg['To']), body['body'], self._decode_header(msg['From']), False, {'model' : self.model})
|
||||
return id
|
||||
|
||||
def msg_send(self, msg, emails, priority=None):
|
||||
@@ -358,7 +359,8 @@ class email_parser(object):
|
||||
'res_id': id
|
||||
}
|
||||
self.rpc('ir.attachment', 'create', data_attach)
|
||||
self.rpc(self.model, 'history', [id], 'Send', True, self._decode_header(msg['From']), message['body'])
|
||||
|
||||
self.rpc(self.model, 'history', [id], 'Send', True, self._decode_header(msg['To']), message['body'], self._decode_header(msg['From']), False, {'model' : self.model})
|
||||
return id
|
||||
|
||||
def msg_test(self, msg, case_str):
|
||||
|
||||
@@ -40,5 +40,6 @@
|
||||
"access_crm_phonecall2opportunity","crm.phonecall2opportunity","model_crm_phonecall2opportunity","crm.group_crm_user",1,1,1,1
|
||||
"access_report_crm_helpdesk","report.crm.helpdesk","model_crm_helpdesk_report","crm.group_crm_user",1,1,1,1
|
||||
"access_crm_send_mail","crm.send.mail","model_crm_send_mail","crm.group_crm_user",1,1,1,1
|
||||
"access_crm_send_mail_attachment","crm.send.mail.attachment","model_crm_send_mail_attachment","crm.group_crm_user",1,1,1,1
|
||||
"access_crm_partner2opportunity","crm.partner2opportunity","model_crm_partner2opportunity","crm.group_crm_user",1,1,1,1
|
||||
"access_crm_lead2opportunity_partner","crm.lead2opportunity.partner","model_crm_lead2opportunity_partner","crm.group_crm_user",1,1,1,1
|
||||
|
||||
|
@@ -216,6 +216,9 @@ class crm_send_new_email(osv.osv_memory):
|
||||
(case.user_id and case.user_id.address_id and \
|
||||
case.user_id.address_id.email) or hist.email_to or tools.config.get('email_from',False)})
|
||||
|
||||
signature = '\n' + (case.user_id.signature or '')
|
||||
original = [signature]
|
||||
|
||||
if include_original == True and 'text' in fields:
|
||||
header = '-------- Original Message --------'
|
||||
sender = 'From: %s' %(hist.email_from or '')
|
||||
@@ -223,13 +226,10 @@ class crm_send_new_email(osv.osv_memory):
|
||||
sentdate = 'Date: %s' % (hist.date)
|
||||
desc = '\n%s'%(hist.description)
|
||||
|
||||
signature = ''
|
||||
if case.user_id.signature:
|
||||
signature = '--\n' + case.user_id.signature
|
||||
|
||||
original = [header, sender, to, sentdate, desc, signature]
|
||||
original = '\n'.join(original)
|
||||
res['text']=original
|
||||
|
||||
res['text']= '\n'.join(original)
|
||||
|
||||
if 'subject' in fields:
|
||||
res.update({'subject': '[%s] %s' %(str(case.id), case.name or '')})
|
||||
if 'state' in fields:
|
||||
|
||||
@@ -61,14 +61,16 @@
|
||||
<field name="name" select="1"/>
|
||||
<field name="active" select="1"/>
|
||||
<field name="carrier_id" select="1"/>
|
||||
<field name="sequence" select="1"/>
|
||||
<field name="sequence" groups="base.group_extended" select="1"/>
|
||||
<notebook colspan="4">
|
||||
<page string="Grid definition">
|
||||
<field colspan="4" name="line_ids" nolabel="1" select="1"/>
|
||||
</page>
|
||||
<page string="Destination">
|
||||
<field colspan="4" name="country_ids"/>
|
||||
<field colspan="4" name="state_ids"/>
|
||||
<separator colspan="4" string="Countries"/>
|
||||
<field colspan="4" name="country_ids" nolabel="1"/>
|
||||
<separator colspan="4" string="States"/>
|
||||
<field colspan="4" name="state_ids" nolabel="1"/>
|
||||
<field name="zip_from"/>
|
||||
<field name="zip_to"/>
|
||||
</page>
|
||||
|
||||
@@ -317,7 +317,8 @@
|
||||
<act_window domain="[('partner_id', '=', active_id)]"
|
||||
id="act_res_partner_document" name="Related Documents"
|
||||
res_model="ir.attachment"
|
||||
src_model="res.partner"/>
|
||||
src_model="res.partner"
|
||||
groups="base.group_extended"/>
|
||||
|
||||
<act_window domain="[('parent_id', '=', active_id)]"
|
||||
id="zoom_directory" name="Related Documents"
|
||||
|
||||
@@ -24,10 +24,17 @@
|
||||
<form position="attributes">
|
||||
<attribute name="string">Auto Configure</attribute>
|
||||
</form>
|
||||
<separator string="title" position="attributes">
|
||||
<attribute name="string">FTP Server Configuration</attribute>
|
||||
</separator>
|
||||
<xpath expr="//label[@string='description']" position="attributes">
|
||||
<attribute name="string">Choose the address for the Document Management System's FTP server.</attribute>
|
||||
</xpath>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='rowspan'>12</attribute>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
<group string="res_config_contents" position="replace">
|
||||
<separator string="FTP Server Configuration." colspan="4"/>
|
||||
<label align="0.0" colspan="4"
|
||||
string="Choose the address for the Document Management System's FTP server."/>
|
||||
<field name="host"/>
|
||||
</group>
|
||||
<xpath expr="//button[@name='action_skip']" position="replace"/>
|
||||
@@ -47,6 +54,7 @@
|
||||
|
||||
<record model="ir.actions.todo" id="config_auto_directory">
|
||||
<field name="action_id" ref="action_config_auto_directory"/>
|
||||
<field name="groups_id" eval="[(6,0,[ref('base.group_extended')])]"/>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
</record>
|
||||
|
||||
<menuitem action="open_module_tree_department" id="menu_department_def" parent="hr.menu_department_tree"/>
|
||||
<menuitem action="open_module_tree_department" id="menu_hr_department_tree" parent="menu_hr_human_resources"/>
|
||||
<menuitem action="open_module_tree_department" id="menu_hr_department_tree" parent="menu_hr_root" sequence="5"/>
|
||||
|
||||
<record model="ir.ui.view" id="view_users_form_inherit">
|
||||
<field name="name">res.users.form</field>
|
||||
|
||||
@@ -8,18 +8,20 @@
|
||||
<field name="arch" type="xml">
|
||||
<data>
|
||||
<form position="attributes">
|
||||
<attribute name="string">Human Resources Modules Installation</attribute>
|
||||
<attribute name="string">Select Human Resources Modules To Install</attribute>
|
||||
</form>
|
||||
|
||||
<separator string="title" position="attributes">
|
||||
<attribute name="string">Configure Human Resources"</attribute>
|
||||
<attribute name="string">Select Human Resources Modules To Install</attribute>
|
||||
</separator>
|
||||
<xpath expr='//separator[@string="vsep"]' position='attributes'>
|
||||
<attribute name='string'></attribute>
|
||||
</xpath>
|
||||
<xpath expr="//label[@string='description']"
|
||||
position="attributes">
|
||||
<attribute name="string">The base Human Resources addon will help you manage your employee roster, but your can enhance it even further by installing a few HR-related applications.</attribute>
|
||||
</xpath>
|
||||
<group colspan="8">
|
||||
<separator string="Human Resources Management" colspan="4"/>
|
||||
<field name="hr_holidays"/>
|
||||
<field name="hr_expense"/>
|
||||
<field name="hr_recruitment"/>
|
||||
@@ -28,6 +30,9 @@
|
||||
<field name="hr_evaluation"/>
|
||||
<field name="hr_attendance"/>
|
||||
</group>
|
||||
<xpath expr="//button[@string='Install Modules']" position="attributes">
|
||||
<attribute name="string">Configure</attribute>
|
||||
</xpath>
|
||||
</data>
|
||||
</field>
|
||||
</record>
|
||||
@@ -46,5 +51,16 @@
|
||||
<field name="action_id" ref="action_hr_installer"/>
|
||||
<field name="sequence">3</field>
|
||||
</record>
|
||||
<record id="hr_ir_actions_todo_tree" model="ir.ui.view">
|
||||
<field name="model">ir.actions.todo</field>
|
||||
<field name="name">hr_installer_action_replace</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="inherit_id" ref="base.ir_actions_todo_tree"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//button[@string='Launch']" position="replace">
|
||||
<button name="%(action_hr_installer)d" states="open,skip" string="Launch" type="action" icon="gtk-execute" help="Launch Configuration Wizard"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
+18
-14
@@ -2,7 +2,7 @@
|
||||
<openerp>
|
||||
<data>
|
||||
<menuitem icon="terp-hr" id="menu_hr_root" name="Human Resources" sequence="6"/>
|
||||
<menuitem id="menu_hr_human_resources" sequence="1" name="Human Resources" parent="menu_hr_root"/>
|
||||
<menuitem id="menu_hr_human_resources" sequence="2" name="Human Resources" parent="menu_hr_root"/>
|
||||
<menuitem
|
||||
id="menu_hr_configuration"
|
||||
name="Configuration"
|
||||
@@ -58,7 +58,7 @@
|
||||
<group col="2" colspan="2">
|
||||
<separator string="Status" colspan="2"/>
|
||||
<field name="gender"/>
|
||||
<field name="marital"/>
|
||||
<field name="marital" widget="selection"/>
|
||||
<field name="country_id"/>
|
||||
<field name="birthday"/>
|
||||
</group>
|
||||
@@ -103,7 +103,7 @@
|
||||
<newline />
|
||||
<group expand="1" string="Group By..." colspan="11" col="11">
|
||||
<filter string="Manager" icon="terp-sale" domain="[]" context="{'group_by':'parent_id'}"/>
|
||||
<filter string="Coach" icon="terp-sale" domain="[]" context="{'group_by':'coach_id'}"/>
|
||||
<filter string="Coach" icon="terp-sale" domain="[]" context="{'group_by':'coach_id'}" groups="base.group_extended"/>
|
||||
<separator orientation="vertical" />
|
||||
<filter string="Department" icon="terp-sale" domain="[]" context="{'group_by':'department_id'}"/>
|
||||
<filter string="Job" icon="terp-sale" domain="[]" context="{'group_by':'job_id'}"/>
|
||||
@@ -141,13 +141,15 @@
|
||||
<menuitem
|
||||
action="open_view_employee_list_my"
|
||||
id="menu_open_view_employee_list_my"
|
||||
parent="menu_hr_human_resources"/>
|
||||
sequence="3"
|
||||
parent="menu_hr_root"/>
|
||||
|
||||
|
||||
<!--
|
||||
=======================
|
||||
Employee marital status
|
||||
=======================
|
||||
-->
|
||||
======================= -->
|
||||
|
||||
<record id="hr_hr_employee_marital_status_form" model="ir.ui.view">
|
||||
<field name="name">hr.hr.employee.marital.status</field>
|
||||
<field name="model">hr.employee.marital.status</field>
|
||||
@@ -172,6 +174,7 @@
|
||||
id="hr_menu_marital_status"
|
||||
parent="hr.menu_view_employee_category_configuration_form" sequence="3"/>
|
||||
|
||||
|
||||
<!--
|
||||
=======================
|
||||
Employee architecture
|
||||
@@ -257,9 +260,10 @@
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
|
||||
<menuitem action="open_view_categ_form"
|
||||
id="menu_view_employee_category_form"
|
||||
parent="menu_view_employee_category_configuration_form" sequence="1"/>
|
||||
<menuitem action="open_view_categ_form"
|
||||
id="menu_view_employee_category_form"
|
||||
parent="menu_view_employee_category_configuration_form" sequence="1"
|
||||
groups="base.group_extended"/>
|
||||
|
||||
<record id="open_view_categ_tree" model="ir.actions.act_window">
|
||||
<field name="name">Categories structure</field>
|
||||
@@ -287,8 +291,8 @@
|
||||
<field eval="True" name="object"/>
|
||||
</record>
|
||||
|
||||
<menuitem
|
||||
action="open_view_categ_tree"
|
||||
<menuitem
|
||||
action="open_view_categ_tree"
|
||||
groups="base.group_extended"
|
||||
id="menu_view_employee_category_tree" parent="hr.menu_view_employee_category_form"/>
|
||||
|
||||
@@ -375,9 +379,9 @@
|
||||
name="Recruitment"
|
||||
id="base.menu_crm_case_job_req_main"
|
||||
parent="menu_hr_root"/>
|
||||
<menuitem
|
||||
parent="base.menu_crm_case_job_req_main"
|
||||
id="menu_hr_job"
|
||||
<menuitem
|
||||
parent="base.menu_crm_case_job_req_main"
|
||||
id="menu_hr_job"
|
||||
action="action_hr_job" sequence="2"/>
|
||||
|
||||
</data>
|
||||
|
||||
@@ -56,18 +56,19 @@
|
||||
<field name="action" select="1" />
|
||||
<newline/>
|
||||
<group expand="1" string="Group By..." colspan="11" col="11">
|
||||
<filter string="Employee" icon="terp-sale" domain="[]" context="{'group_by':'employee_id'}"/>
|
||||
<filter name="employee" string="Employee" icon="terp-sale" domain="[]" context="{'group_by':'employee_id'}"/>
|
||||
<filter string="Day" icon="terp-sale" domain="[]" context="{'group_by':'day'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
<record id="open_view_attendance" model="ir.actions.act_window">
|
||||
<field name="name">Attendances</field>
|
||||
<field name="res_model">hr.attendance</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="context">{"search_default_employee":1}</field>
|
||||
<field name="search_view_id" ref="view_hr_attendance_filter" />
|
||||
</record>
|
||||
|
||||
@@ -76,7 +77,7 @@
|
||||
<menuitem
|
||||
id="menu_hr_time_tracking"
|
||||
name="Time Tracking"
|
||||
parent="hr.menu_hr_root" sequence="5"/>
|
||||
parent="hr.menu_hr_root" sequence="7"/>
|
||||
<menuitem action="open_view_attendance" id="menu_open_view_attendance"
|
||||
parent="menu_hr_time_tracking" groups="hr.group_hr_manager"/>
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
<separator colspan="4"/>
|
||||
<group col="2" colspan="4">
|
||||
<button special="cancel" string="Cancel" icon='gtk-cancel'/>
|
||||
<button name="print_report" string="Print" colspan="1" type="object" icon="gtk-print"/>
|
||||
<button name="print_report" string="Print" colspan="1" type="object" icon="gtk-yes"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
<separator colspan="4"/>
|
||||
<group col="2" colspan="4">
|
||||
<button special="cancel" string="Cancel" icon='gtk-cancel'/>
|
||||
<button name="print_report" string="Print" colspan="1" type="object" icon="gtk-print"/>
|
||||
<button name="print_report" string="Print" colspan="1" type="object" icon="gtk-yes"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
<separator colspan="4"/>
|
||||
<group col="2" colspan="4">
|
||||
<button special="cancel" string="Cancel" icon='gtk-cancel'/>
|
||||
<button name="print_report" string="Print" colspan="1" type="object" icon="gtk-print"/>
|
||||
<button name="print_report" string="Print" colspan="1" type="object" icon="gtk-yes"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
|
||||
<menuitem action="action_hr_attendance_sigh_in_out"
|
||||
id="menu_hr_attendance_sigh_in_out"
|
||||
parent="menu_hr_time_tracking" groups="group_hr_attendance" />
|
||||
parent="menu_hr_time_tracking" groups="base.group_extended" />
|
||||
|
||||
<record id="view_hr_attendance_so_ask" model="ir.ui.view">
|
||||
<field name="name">hr.sign.in.out.ask.form</field>
|
||||
|
||||
@@ -21,7 +21,7 @@
|
||||
<field name="arch" type="xml">
|
||||
<form string="Wage Type">
|
||||
<field colspan="4" name="name"/>
|
||||
<field name="period_id"/>
|
||||
<field name="period_id" widget="selection"/>
|
||||
<field name="type"/>
|
||||
<separator colspan="4" string="Hourly cost computation"/>
|
||||
<field name="factor_type"/>
|
||||
@@ -70,7 +70,7 @@
|
||||
<field name="arch" type="xml">
|
||||
<notebook position="inside">
|
||||
<page string="Contracts">
|
||||
<field colspan="4" name="contract_ids" nolabel="1">
|
||||
<field colspan="4" mode="form,tree" name="contract_ids" nolabel="1">
|
||||
<tree string="Contracts">
|
||||
<field name="name"/>
|
||||
<field name="job_id"/>
|
||||
@@ -133,14 +133,24 @@
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="hr_contract_type_view_form" model="ir.ui.view">
|
||||
<field name="name">hr.contract.type.view.form</field>
|
||||
<field name="model">hr.contract.type</field>
|
||||
<field name="type">form</field>
|
||||
<record id="hr_contract_view_search" model="ir.ui.view">
|
||||
<field name="name">hr.contract.view.search</field>
|
||||
<field name="model">hr.contract</field>
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Contract Type">
|
||||
<field colspan="4" name="name" select="1"/>
|
||||
</form>
|
||||
<search string="Search Contract">
|
||||
<group col='15' colspan='4'>
|
||||
<field name="name"/>
|
||||
<field name="employee_id"/>
|
||||
<field name="department_id"/>
|
||||
<field name="date_start"/>
|
||||
<field name="date_end"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By..." colspan="4" col="20">
|
||||
<filter string="Department" icon="terp-project" domain="[]" context="{'group_by':'department_id'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
@@ -180,17 +190,6 @@
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="hr_contract_type_view_tree" model="ir.ui.view">
|
||||
<field name="name">hr.contract.type.view.tree</field>
|
||||
<field name="model">hr.contract.type</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Contract Type">
|
||||
<field colspan="4" name="name"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="hr_contract_view_tree" model="ir.ui.view">
|
||||
<field name="name">hr.contract.view.tree</field>
|
||||
<field name="model">hr.contract</field>
|
||||
@@ -216,9 +215,30 @@
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="domain">[]</field>
|
||||
<field name="search_view_id" ref="hr_contract_view_search"/>
|
||||
</record>
|
||||
|
||||
<record id="hr_contract_type_view_form" model="ir.ui.view">
|
||||
<field name="name">hr.contract.type.view.form</field>
|
||||
<field name="model">hr.contract.type</field>
|
||||
<field name="type">form</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Contract Type">
|
||||
<field colspan="4" name="name" select="1"/>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="hr_contract_type_view_tree" model="ir.ui.view">
|
||||
<field name="name">hr.contract.type.view.tree</field>
|
||||
<field name="model">hr.contract.type</field>
|
||||
<field name="type">tree</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Contract Type">
|
||||
<field colspan="4" name="name"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
<record id="action_hr_contract_type" model="ir.actions.act_window">
|
||||
<field name="name">Contract Types</field>
|
||||
<field name="res_model">hr.contract.type</field>
|
||||
@@ -227,8 +247,8 @@
|
||||
</record>
|
||||
<menuitem action="action_hr_contract_type" id="hr_menu_contract_type" parent="next_id_56"/>
|
||||
|
||||
<menuitem id="hr_menu_contract_main" parent="hr.menu_hr_root" name="Contracts" sequence="3"/>
|
||||
<menuitem action="action_hr_contract" id="hr_menu_contract" parent="hr_menu_contract_main" name="Contracts"/>
|
||||
<!--<menuitem id="hr_menu_contract_main" parent="hr.menu_hr_root" name="Contracts" sequence="3"/> -->
|
||||
<menuitem action="action_hr_contract" id="hr_menu_contract" parent="hr.menu_hr_root" name="Contracts" sequence="4"/>
|
||||
|
||||
<!-- Contracts Button on Employee Form -->
|
||||
<act_window domain="[('employee_id', '=', active_id)]" id="act_hr_employee_2_hr_contract" name="Contracts" res_model="hr.contract" src_model="hr.employee"/>
|
||||
|
||||
@@ -1,6 +1,25 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<record id="view_hr_evaluation_plan_search" model="ir.ui.view">
|
||||
<field name="name">hr_evaluation.plan.search</field>
|
||||
<field name="model">hr_evaluation.plan</field>
|
||||
<field name="type">search</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Search Evaluation Plan">
|
||||
<group col='15' colspan='4'>
|
||||
<field name="name"/>
|
||||
<field name="company_id" widget="selection"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<group expand="1" string="Group By..." colspan="4" col="20">
|
||||
<filter string="Company" icon="terp-project" domain="[]" context="{'group_by':'company_id'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_hr_evaluation_plan_form">
|
||||
<field name="name">hr_evaluation.plan.form</field>
|
||||
<field name="model">hr_evaluation.plan</field>
|
||||
@@ -42,7 +61,7 @@
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
<menuitem name="Evaluations" parent="hr.menu_hr_root" id="menu_eval_hr" sequence="3"/>
|
||||
<menuitem name="Evaluations" parent="hr.menu_hr_root" id="menu_eval_hr" sequence="6"/>
|
||||
|
||||
<menuitem
|
||||
name="Periodic Evaluations" parent="hr.menu_hr_configuration" id="menu_eval_hr_config" sequence="3"/>
|
||||
@@ -169,19 +188,23 @@
|
||||
<button name="button_plan_in_progress"
|
||||
string="Start Evaluation"
|
||||
states="draft"
|
||||
type="object"/>
|
||||
type="object"
|
||||
icon="gtk-execute"/>
|
||||
<button name="button_final_validation"
|
||||
string="Final Validation"
|
||||
states="wait"
|
||||
type="object"/>
|
||||
type="object"
|
||||
icon="gtk-execute"/>
|
||||
<button name="button_done"
|
||||
string="Done"
|
||||
states="progress"
|
||||
type="object"/>
|
||||
type="object"
|
||||
icon="gtk-jump-to"/>
|
||||
<button name="button_cancel"
|
||||
string="Cancel"
|
||||
states="draft,wait,progress"
|
||||
type="object"/>
|
||||
type="object"
|
||||
icon="gtk-cancel"/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
@@ -279,7 +302,7 @@
|
||||
<field name="date_deadline"/>
|
||||
<field name="response" readonly="1"/>
|
||||
<field name="user_to_review_id"/>
|
||||
<field name="user_id"/>
|
||||
<field name="user_id" string="Interviewer"/>
|
||||
</group>
|
||||
<newline/>
|
||||
<separator string="State" colspan="4"/>
|
||||
@@ -328,7 +351,7 @@
|
||||
<filter icon="terp-stock" string="Late" domain="[('date_deadline','<',current_date)]"/>
|
||||
<separator orientation="vertical"/>
|
||||
<field name="user_to_review_id" widget="selection"/>
|
||||
<field name="user_id" widget="selection"/>
|
||||
<field name="user_id" string="Interviewer" widget="selection"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
|
||||
@@ -112,8 +112,8 @@
|
||||
<field name="search_view_id" ref="view_evaluation_report_search"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="hr.menu_hr_reporting" name="Reporting" parent="hr.menu_hr_root" sequence="8"/>
|
||||
<menuitem action="action_evaluation_report_all" id="menu_evaluation_report_all" parent="hr.menu_hr_reporting" sequence="0"/>
|
||||
<menuitem id="hr.menu_hr_reporting" name="Reporting" parent="hr.menu_hr_root" sequence="10"/>
|
||||
<menuitem action="action_evaluation_report_all" id="menu_evaluation_report_all" parent="hr.menu_hr_reporting" sequence="3"/>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -10,8 +10,8 @@
|
||||
<form string="Evaluation Reminders">
|
||||
<field name="evaluation_id"/>
|
||||
<newline/>
|
||||
<button special="cancel" string="Cancel" />
|
||||
<button name="send_mail" string="Send Mail" type="object"/>
|
||||
<button special="cancel" string="Cancel" icon="gtk-cancel"/>
|
||||
<button name="send_mail" string="Send Mail" type="object" icon="gtk-ok"/>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
@@ -30,8 +30,8 @@
|
||||
<field name="date"/>
|
||||
<field name="employee_id"/>
|
||||
<field name="department_id" groups="base.group_extended"/>
|
||||
<field name="name"/>
|
||||
<field name="ref"/>
|
||||
<field name="name"/>
|
||||
<field name="amount"/>
|
||||
<field name="state"/>
|
||||
<button name="confirm" states="draft" string="Confirm" type="workflow" icon="gtk-apply"/>
|
||||
@@ -49,8 +49,8 @@
|
||||
<field name="date"/>
|
||||
<field name="employee_id"/>
|
||||
<field name="department_id" groups="base.group_extended"/>
|
||||
<field name="name"/>
|
||||
<field name="ref"/>
|
||||
<field name="name"/>
|
||||
<field name="amount"/>
|
||||
<field name="state"/>
|
||||
<button name="confirm" states="draft" string="Confirm" type="workflow" icon="gtk-apply"/>
|
||||
@@ -67,8 +67,7 @@
|
||||
<form string="Expenses Sheet">
|
||||
<group colspan="4" col="6">
|
||||
<field name="name" select="1"/>
|
||||
<field name="employee_id" select="1"/>
|
||||
<field name="ref"/>
|
||||
<field name="ref" groups="base.group_extended"/>
|
||||
<field name="date" select="1"/>
|
||||
<field name="amount"/>
|
||||
<field name="currency_id"/>
|
||||
@@ -81,7 +80,7 @@
|
||||
<field colspan="4" name="line_ids" nolabel="1">
|
||||
<form string="Expense Lines">
|
||||
<field name="product_id" on_change="onchange_product_id(product_id, uom_id, parent.employee_id)"/>
|
||||
<field name="uom_id" on_change="onchange_product_id(product_id, uom_id, parent.employee_id)"/>
|
||||
<field name="uom_id" on_change="onchange_product_id(product_id, uom_id, parent.employee_id)" widget="selection"/>
|
||||
<field name="name" select="1"/>
|
||||
<field name="date_value" select="1"/>
|
||||
<field name="unit_quantity"/>
|
||||
@@ -132,6 +131,12 @@
|
||||
domain="[('state','=','draft')]"
|
||||
string="Draft"
|
||||
help="Draft Expense"/>
|
||||
<filter
|
||||
icon="terp-hr"
|
||||
string="My Expenses"
|
||||
default="1"
|
||||
domain="[('user_id','=',uid)]"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter
|
||||
icon="terp-hr"
|
||||
domain="[('state','=','confirm')]"
|
||||
@@ -145,12 +150,7 @@
|
||||
<separator orientation="vertical"/>
|
||||
<field name="name" select='1'/>
|
||||
<field name="date" select='1'/>
|
||||
<field name="user_id" select="1" widget="selection">
|
||||
<filter
|
||||
icon="gtk-execute"
|
||||
help="My Expenses"
|
||||
default="1"
|
||||
domain="[('user_id','=',uid)]"/>
|
||||
<field name="user_id" select="1" widget="selection" string="User">
|
||||
<filter icon="terp-hr"
|
||||
domain="[('department_id','=',context.get('department_id',False))]"
|
||||
string="Expenses of My Department"/>
|
||||
@@ -160,9 +160,9 @@
|
||||
<newline />
|
||||
<group expand="1" string="Group By..." colspan="11" col="11">
|
||||
<filter string="Department" icon="terp-sale" domain="[]" context="{'group_by':'department_id'}"/>
|
||||
<filter string="Employee" icon="terp-sale" domain="[]" context="{'group_by':'user_id'}"/>
|
||||
<filter string="User" icon="terp-sale" domain="[]" context="{'group_by':'user_id'}"/>
|
||||
<separator orientation="vertical"/>
|
||||
<filter string="Date" icon="terp-sale" domain="[]" context="{'group_by':'date'}"/>
|
||||
<filter string="Month" icon="terp-sale" domain="[]" context="{'group_by':'date'}"/>
|
||||
</group>
|
||||
</search>
|
||||
</field>
|
||||
@@ -175,7 +175,7 @@
|
||||
<field name="search_view_id" ref="view_hr_expense_filter"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="next_id_49" name="Expenses" sequence="6"
|
||||
<menuitem id="next_id_49" name="Expenses" sequence="8"
|
||||
parent="hr.menu_hr_root"/>
|
||||
|
||||
<menuitem action="expense_all" id="menu_expense_all" name="Expenses"
|
||||
|
||||
@@ -137,8 +137,8 @@
|
||||
<field name="search_view_id" ref="view_hr_expense_report_search"/>
|
||||
</record>
|
||||
|
||||
<menuitem id="hr.menu_hr_reporting" name="Reporting" parent="hr.menu_hr_root" sequence="8"/>
|
||||
<menuitem action="action_hr_expense_report_all" id="menu_hr_expense_report_all" parent="hr.menu_hr_reporting" sequence="0"/>
|
||||
<menuitem id="hr.menu_hr_reporting" name="Reporting" parent="hr.menu_hr_root" sequence="10"/>
|
||||
<menuitem action="action_hr_expense_report_all" id="menu_hr_expense_report_all" parent="hr.menu_hr_reporting" sequence="1"/>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -221,7 +221,8 @@
|
||||
<menuitem
|
||||
name="Holidays Management"
|
||||
parent="hr.menu_hr_root"
|
||||
id="menu_open_ask_holidays"/>
|
||||
id="menu_open_ask_holidays"
|
||||
sequence="9"/>
|
||||
|
||||
<record model="ir.actions.act_window" id="open_ask_holidays">
|
||||
<field name="name">Leave Requests</field>
|
||||
|
||||
@@ -5,12 +5,12 @@
|
||||
id="hr.menu_hr_reporting"
|
||||
name="Reporting"
|
||||
parent="hr.menu_hr_root"
|
||||
sequence="40" />
|
||||
sequence="10" />
|
||||
<menuitem
|
||||
id="menu_hr_reporting_holidays"
|
||||
name="Holidays"
|
||||
parent="hr.menu_hr_reporting"
|
||||
sequence="3" />
|
||||
sequence="6" />
|
||||
<!--<wizard string="Holidays by Departement"
|
||||
name="hr.holidays.summary"
|
||||
id="holidays_summary"/>-->
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user