[MERGE] from trunk
bzr revid: chm@openerp.com-20121017073146-9m5s2hffeekmj068
This commit is contained in:
commit
23e20e95d4
|
@ -300,7 +300,6 @@ class account_account(osv.osv):
|
|||
if aml_query.strip():
|
||||
wheres.append(aml_query.strip())
|
||||
filters = " AND ".join(wheres)
|
||||
_logger.debug('Filters: %s',(filters))
|
||||
# IN might not work ideally in case there are too many
|
||||
# children_and_consolidated, in that case join on a
|
||||
# values() e.g.:
|
||||
|
@ -316,7 +315,6 @@ class account_account(osv.osv):
|
|||
" GROUP BY l.account_id")
|
||||
params = (tuple(children_and_consolidated),) + query_params
|
||||
cr.execute(request, params)
|
||||
_logger.debug('Status: %s',(cr.statusmessage))
|
||||
|
||||
for row in cr.dictfetchall():
|
||||
accounts[row['id']] = row
|
||||
|
@ -2770,7 +2768,6 @@ class account_chart_template(osv.osv):
|
|||
'property_account_income_categ': fields.many2one('account.account.template', 'Income Category Account'),
|
||||
'property_account_expense': fields.many2one('account.account.template', 'Expense Account on Product Template'),
|
||||
'property_account_income': fields.many2one('account.account.template', 'Income Account on Product Template'),
|
||||
'property_reserve_and_surplus_account': fields.many2one('account.account.template', 'Reserve and Profit/Loss Account', domain=[('type', '=', 'payable')], help='This Account is used for transferring Profit/Loss(If It is Profit: Amount will be added, Loss: Amount will be deducted.), Which is calculated from Profilt & Loss Report'),
|
||||
'property_account_income_opening': fields.many2one('account.account.template', 'Opening Entries Income Account'),
|
||||
'property_account_expense_opening': fields.many2one('account.account.template', 'Opening Entries Expense Account'),
|
||||
}
|
||||
|
@ -3218,7 +3215,6 @@ class wizard_multi_charts_accounts(osv.osv_memory):
|
|||
('property_account_income_categ','product.category','account.account'),
|
||||
('property_account_expense','product.template','account.account'),
|
||||
('property_account_income','product.template','account.account'),
|
||||
('property_reserve_and_surplus_account','res.company','account.account')
|
||||
]
|
||||
template = self.pool.get('account.chart.template').browse(cr, uid, chart_template_id, context=context)
|
||||
for record in todo_list:
|
||||
|
|
|
@ -1037,11 +1037,10 @@
|
|||
-->
|
||||
|
||||
<record id="view_move_line_tree_reconcile" model="ir.ui.view">
|
||||
<field name="name">account.move.line.reconcile.tree</field>
|
||||
<field name="model">account.move.line</field>
|
||||
<field eval="24" name="priority"/>
|
||||
<field name="arch" type="xml">
|
||||
<tree colors="red:state == 'draft';black:state == 'valid'" string="Journal Items to Reconcile" create="false">
|
||||
<tree_account_reconciliation colors="red:state == 'draft';black:state == 'valid'" string="Journal Items to Reconcile" create="false" version="7.0">
|
||||
<field name="date"/>
|
||||
<field name="move_id"/>
|
||||
<field name="ref"/>
|
||||
|
@ -1049,9 +1048,10 @@
|
|||
<field name="partner_id"/>
|
||||
<field name="account_id"/>
|
||||
<field name="reconcile_partial_id"/>
|
||||
<field name="state" invisible="1"/>
|
||||
<field name="debit" sum="Total debit"/>
|
||||
<field name="credit" sum="Total credit"/>
|
||||
</tree>
|
||||
</tree_account_reconciliation>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
@ -1542,8 +1542,7 @@
|
|||
<field name="name">Journal Items to Reconcile</field>
|
||||
<field name="res_model">account.move.line</field>
|
||||
<field name="view_id" ref="view_move_line_tree_reconcile"/>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">account_reconciliation_list</field>
|
||||
<field name="view_mode">tree_account_reconciliation</field>
|
||||
<field name="help" type="html">
|
||||
<p>
|
||||
No journal items found.
|
||||
|
@ -2171,7 +2170,6 @@
|
|||
<field name="property_account_income" domain="[('id', 'child_of', [account_root_id])]"/>
|
||||
<field name="property_account_income_opening" domain="[('id', 'child_of', [account_root_id])]"/>
|
||||
<field name="property_account_expense_opening" domain="[('id', 'child_of', [account_root_id])]"/>
|
||||
<field name="property_reserve_and_surplus_account" />
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
|
|
|
@ -32,14 +32,6 @@ class res_company(osv.osv):
|
|||
help="If you select 'Round per Line' : for each tax, the tax amount will first be computed and rounded for each PO/SO/invoice line and then these rounded amounts will be summed, leading to the total amount for that tax. If you select 'Round Globally': for each tax, the tax amount will be computed for each PO/SO/invoice line, then these amounts will be summed and eventually this total tax amount will be rounded. If you sell with tax included, you should choose 'Round per line' because you certainly want the sum of your tax-included line subtotals to be equal to the total amount with taxes."),
|
||||
'paypal_account': fields.char("Paypal Account", size=128, help="Paypal username (usually email) for receiving online payments."),
|
||||
'overdue_msg': fields.text('Overdue Payments Message', translate=True),
|
||||
'property_reserve_and_surplus_account': fields.property(
|
||||
'account.account',
|
||||
type='many2one',
|
||||
relation='account.account',
|
||||
string="Reserve and Profit/Loss Account",
|
||||
view_load=True,
|
||||
domain="[('type', '=', 'other')]",
|
||||
help="This account is used for transferring Profit/Loss (If It is Profit: Amount will be added, Loss : Amount will be deducted.), as calculated in Profit & Loss Report"),
|
||||
}
|
||||
|
||||
_defaults = {
|
||||
|
|
|
@ -15,18 +15,5 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_company_inherit_1_form">
|
||||
<field name="name">res.company.form.inherit</field>
|
||||
<field name="inherit_id" ref="base.view_company_form"/>
|
||||
<field name="model">res.company</field>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//group[@name='account_grp']" position="inside">
|
||||
<field name="property_reserve_and_surplus_account"/>
|
||||
<field name="tax_calculation_rounding_method"/>
|
||||
<field name="paypal_account" placeholder="e.g. sales@openerp.com"/>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
|
@ -381,7 +381,6 @@
|
|||
<field name="property_account_income_categ" ref="conf_a_sale"/>
|
||||
<field name="property_account_income_opening" ref="conf_o_income"/>
|
||||
<field name="property_account_expense_opening" ref="conf_o_expense"/>
|
||||
<field name="property_reserve_and_surplus_account" ref="conf_a_reserve_and_surplus"/>
|
||||
<field name="complete_tax_set" eval="False"/>
|
||||
</record>
|
||||
|
||||
|
|
|
@ -304,14 +304,6 @@
|
|||
<field name="company_id" ref="base.main_company"/>
|
||||
</record>
|
||||
|
||||
<record forcecreate="True" id="property_reserve_and_surplus_account" model="ir.property">
|
||||
<field name="name">property_account_receivable</field>
|
||||
<field name="fields_id" search="[('model','=','res.company'),('name','=','property_reserve_and_surplus_account')]"/>
|
||||
<field eval="'account.account,'+str(rsa)" name="value"/>
|
||||
<field name="company_id" ref="base.main_company"/>
|
||||
</record>
|
||||
|
||||
|
||||
<!--
|
||||
Account Journal
|
||||
-->
|
||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -14,8 +14,8 @@
|
|||
<field name="taxes_id" colspan="2" attrs="{'readonly':[('sale_ok','=',0)]}" widget="many2many_tags"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="property_account_expense" domain="[('type','<>','view'),('type','<>','consolidation')]" attrs="{'readonly':[('purchase_ok','=',0)]}"/>
|
||||
<field name="supplier_taxes_id" colspan="2" attrs="{'readonly':[('purchase_ok','=',0)]}" widget="many2many_tags"/>
|
||||
<field name="property_account_expense" domain="[('type','<>','view'),('type','<>','consolidation')]" />
|
||||
<field name="supplier_taxes_id" colspan="2" widget="many2many_tags"/>
|
||||
</group>
|
||||
</group>
|
||||
</page>
|
||||
|
|
|
@ -163,7 +163,7 @@
|
|||
<para style="terp_tblheader_Details_Right">[[ formatLang(sum_all(get_objects(data['form']['empty_acc']),data['form']['date1'],data['form']['date2'],'credit')) ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(sum_balance(get_objects(data['form']['empty_acc']),data['form']['date1'],data['form']['date2'])) ]] [[ company.currency_id.symbol]]</para>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(sum_balance(get_objects(data['form']['empty_acc']),data['form']['date1'],data['form']['date2']), currency_obj = company.currency_id)]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(sum_all(get_objects(data['form']['empty_acc']),data['form']['date1'],data['form']['date2'],'quantity')) ]]</para>
|
||||
|
@ -187,7 +187,7 @@
|
|||
<para style="terp_default_Right_9_Bold">[[ formatLang(move_sum(o['id'],data['form']['date1'],data['form']['date2'],'credit')) ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9_Bold">[[ formatLang(move_sum_balance(o['id'],data['form']['date1'],data['form']['date2'])) ]] [[ company.currency_id.symbol]]</para>
|
||||
<para style="terp_default_Right_9_Bold">[[ formatLang(move_sum_balance(o['id'],data['form']['date1'],data['form']['date2']), currency_obj = company.currency_id)]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9_Bold">[[ formatLang(move_sum(o['id'],data['form']['date1'],data['form']['date2'],'quantity')) ]]</para>
|
||||
|
@ -211,7 +211,7 @@
|
|||
<para style="terp_default_Right_9">[[ formatLang(move_g['credit']) ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ formatLang(move_g['balance'])]] [[ company.currency_id.symbol ]]</para>
|
||||
<para style="terp_default_Right_9">[[ formatLang(move_g['balance'], currency_obj = company.currency_id) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ formatLang(move_g['quantity']) ]]</para>
|
||||
|
|
|
@ -224,7 +224,7 @@
|
|||
<para style="terp_Default_Bold_Right_9_U">[[ formatLang (sum_credit(objects,data['form']['date1'],data['form']['date2'])) ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_Default_Bold_Right_9_U">[[ formatLang (sum_balance(objects,data['form']['date1'],data['form']['date2'])) ]] [[ company.currency_id.symbol ]]</para>
|
||||
<para style="terp_Default_Bold_Right_9_U">[[ formatLang (sum_balance(objects,data['form']['date1'],data['form']['date2']), currency_obj = company.currency_id) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
@ -245,7 +245,7 @@
|
|||
<para style="terp_Default_Bold_Right_9_U">[[ formatLang (account_sum_credit(account,data['form']['date1'],data['form']['date2'])) ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_Default_Bold_Right_9_U">[[ formatLang (account_sum_balance(account,data['form']['date1'],data['form']['date2']))]] [[ company.currency_id.symbol ]]</para>
|
||||
<para style="terp_Default_Bold_Right_9_U">[[ formatLang (account_sum_balance(account,data['form']['date1'],data['form']['date2']), currency_obj = company.currency_id) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
@ -266,7 +266,7 @@
|
|||
<para style="terp_Default_Bold_Right_9_U">[[ formatLang( move_g['credit']) ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_Default_Bold_Right_9_U">[[ formatLang( move_g['balance']) ]] [[ company.currency_id.symbol ]]</para>
|
||||
<para style="terp_Default_Bold_Right_9_U">[[ formatLang( move_g['balance'], currency_obj = company.currency_id) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
@ -290,7 +290,7 @@
|
|||
<para style="terp_default_9_italic_Rignt">[[ formatLang( move_a['credit']) ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_9_italic_Rignt">[[ formatLang( move_a['balance']) ]] [[ company.currency_id.symbol]]</para>
|
||||
<para style="terp_default_9_italic_Rignt">[[ formatLang( move_a['balance'], currency_obj = company.currency_id)]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
|
@ -164,7 +164,7 @@
|
|||
<para style="terp_tblheader_Details_Right">[[ formatLang(sum_credit(objects,data['form']['date1'],data['form']['date2']))]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(sum_balance(objects,data['form']['date1'],data['form']['date2']))]] [[ company.currency_id.symbol]]</para>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(sum_balance(objects,data['form']['date1'],data['form']['date2']), currency_obj = company.currency_id)]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(sum_quantity(objects,data['form']['date1'],data['form']['date2'])) ]]</para>
|
||||
|
@ -188,7 +188,7 @@
|
|||
<para style="terp_tblheader_Details_Right">[[formatLang(move_g['credit'])]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(move_g['balance'])]] [[ company.currency_id.symbol]]</para>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(move_g['balance'], currency_obj = company.currency_id)]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">[[formatLang(move_g['quantity']) ]]</para>
|
||||
|
@ -212,7 +212,7 @@
|
|||
<para style="terp_default_Right_9">[[ formatLang(move_a['credit']) ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ formatLang(move_a['balance']) ]] [[ company.currency_id.symbol]]</para>
|
||||
<para style="terp_default_Right_9">[[ formatLang(move_a['balance'], currency_obj = company.currency_id)]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ formatLang(move_a['quantity']) ]]</para>
|
||||
|
|
|
@ -63,8 +63,12 @@ class account_analytic_journal_report(osv.osv_memory):
|
|||
if context is None:
|
||||
context = {}
|
||||
res = super(account_analytic_journal_report, self).default_get(cr, uid, fields, context=context)
|
||||
if not context.has_key('active_ids'):
|
||||
journal_ids = self.pool.get('account.analytic.journal').search(cr, uid, [], context=context)
|
||||
else:
|
||||
journal_ids = context.get('active_ids')
|
||||
if 'analytic_account_journal_id' in fields:
|
||||
res.update({'analytic_account_journal_id': context.get('active_ids',[])})
|
||||
res.update({'analytic_account_journal_id': journal_ids})
|
||||
return res
|
||||
|
||||
account_analytic_journal_report()
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<field name="name">analytic.entries.report.tree</field>
|
||||
<field name="model">analytic.entries.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Analytic Entries Analysis">
|
||||
<tree string="Analytic Entries Analysis" create="false">
|
||||
<field name="date" invisible="1"/>
|
||||
<field name="year" invisible="1"/>
|
||||
<field name="day" invisible="1"/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<field name="name">account.entries.report.tree</field>
|
||||
<field name="model">account.entries.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree colors="blue:move_state == 'draft';black:move_state == 'posted'" string="Entries Analysis">
|
||||
<tree colors="blue:move_state == 'draft';black:move_state == 'posted'" create="false" string="Entries Analysis">
|
||||
<field name="date" invisible="1"/>
|
||||
<field name="date_created" invisible="1"/>
|
||||
<field name="date_maturity" invisible="1"/>
|
||||
|
|
|
@ -20,6 +20,7 @@
|
|||
##############################################################################
|
||||
|
||||
import tools
|
||||
import decimal_precision as dp
|
||||
from osv import fields,osv
|
||||
|
||||
class account_invoice_report(osv.osv):
|
||||
|
@ -27,6 +28,31 @@ class account_invoice_report(osv.osv):
|
|||
_description = "Invoices Statistics"
|
||||
_auto = False
|
||||
_rec_name = 'date'
|
||||
|
||||
def _compute_amounts_in_user_currency(self, cr, uid, ids, field_names, args, context=None):
|
||||
"""Compute the amounts in the currency of the user
|
||||
"""
|
||||
if context is None:
|
||||
context={}
|
||||
currency_obj = self.pool.get('res.currency')
|
||||
currency_rate_obj = self.pool.get('res.currency.rate')
|
||||
user_currency_id = self.pool.get('res.users').browse(cr, uid, uid, context=context).company_id.currency_id.id
|
||||
currency_rate_id = currency_rate_obj.search(cr, uid, [('rate', '=', 1)], limit=1, context=context)[0]
|
||||
base_currency_id = currency_rate_obj.browse(cr, uid, currency_rate_id, context=context).currency_id.id
|
||||
res = {}
|
||||
ctx = context.copy()
|
||||
for item in self.browse(cr, uid, ids, context=context):
|
||||
ctx['date'] = item.date
|
||||
price_total = currency_obj.compute(cr, uid, base_currency_id, user_currency_id, item.price_total, context=ctx)
|
||||
price_average = currency_obj.compute(cr, uid, base_currency_id, user_currency_id, item.price_average, context=ctx)
|
||||
residual = currency_obj.compute(cr, uid, base_currency_id, user_currency_id, item.residual, context=ctx)
|
||||
res[item.id] = {
|
||||
'user_currency_price_total': price_total,
|
||||
'user_currency_price_average': price_average,
|
||||
'user_currency_residual': residual,
|
||||
}
|
||||
return res
|
||||
|
||||
_columns = {
|
||||
'date': fields.date('Date', readonly=True),
|
||||
'year': fields.char('Year', size=4, readonly=True),
|
||||
|
@ -47,7 +73,9 @@ class account_invoice_report(osv.osv):
|
|||
'company_id': fields.many2one('res.company', 'Company', readonly=True),
|
||||
'user_id': fields.many2one('res.users', 'Salesperson', readonly=True),
|
||||
'price_total': fields.float('Total Without Tax', readonly=True),
|
||||
'user_currency_price_total': fields.function(_compute_amounts_in_user_currency, string="Total Without Tax", type='float', digits_compute=dp.get_precision('Account'), multi="_compute_amounts"),
|
||||
'price_average': fields.float('Average Price', readonly=True, group_operator="avg"),
|
||||
'user_currency_price_average': fields.function(_compute_amounts_in_user_currency, string="Average Price", type='float', digits_compute=dp.get_precision('Account'), multi="_compute_amounts"),
|
||||
'currency_rate': fields.float('Currency Rate', readonly=True),
|
||||
'nbr':fields.integer('# of Lines', readonly=True),
|
||||
'type': fields.selection([
|
||||
|
@ -69,6 +97,7 @@ class account_invoice_report(osv.osv):
|
|||
'account_line_id': fields.many2one('account.account', 'Account Line',readonly=True),
|
||||
'partner_bank_id': fields.many2one('res.partner.bank', 'Bank Account',readonly=True),
|
||||
'residual': fields.float('Total Residual', readonly=True),
|
||||
'user_currency_residual': fields.function(_compute_amounts_in_user_currency, string="Total Residual", type='float', digits_compute=dp.get_precision('Account'), multi="_compute_amounts"),
|
||||
'delay_to_pay': fields.float('Avg. Delay To Pay', readonly=True, group_operator="avg"),
|
||||
'due_delay': fields.float('Avg. Due Delay', readonly=True, group_operator="avg"),
|
||||
}
|
||||
|
@ -161,7 +190,7 @@ class account_invoice_report(osv.osv):
|
|||
left join product_uom u on (u.id=ail.uos_id),
|
||||
res_currency_rate cr
|
||||
where cr.id in (select id from res_currency_rate cr2 where (cr2.currency_id = ai.currency_id)
|
||||
and ((ai.date_invoice is not null and cr.name <= ai.date_invoice) or (ai.date_invoice is null and cr.name <= NOW())) limit 1)
|
||||
and ((ai.date_invoice is not null and cr.name <= ai.date_invoice) or (ai.date_invoice is null and cr.name <= NOW())) order by name desc limit 1)
|
||||
group by ail.product_id,
|
||||
ai.date_invoice,
|
||||
ai.id,
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<field name="name">account.invoice.report.tree</field>
|
||||
<field name="model">account.invoice.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree colors="blue:state == 'draft';gray:state in ('cancel','paid');black:state in ('proforma','proforma2')" string="Invoices Analysis">
|
||||
<tree colors="blue:state == 'draft';gray:state in ('cancel','paid');black:state in ('proforma','proforma2')" create="false" string="Invoices Analysis">
|
||||
<field name="date" invisible="1"/>
|
||||
<field name="user_id" invisible="1"/>
|
||||
<field name="year" invisible="1"/>
|
||||
|
@ -28,8 +28,8 @@
|
|||
<field name="nbr" sum="# of Lines"/>
|
||||
<field name="product_qty" sum="Qty"/>
|
||||
<!-- <field name="reconciled" sum="# Reconciled"/> -->
|
||||
<field name="price_total" sum="Total Without Tax"/>
|
||||
<field name="residual" sum="Total Residual" invisible="context.get('residual_invisible',False)"/>
|
||||
<field name="user_currency_price_total" sum="Total Without Tax"/>
|
||||
<field name="user_currency_residual" sum="Total Residual" invisible="context.get('residual_invisible',False)"/>
|
||||
<field name="due_delay" sum="Avg. Due Delay" invisible="context.get('residual_invisible',False)"/>
|
||||
<field name="delay_to_pay" sum="Avg. Delay To Pay" invisible="context.get('residual_invisible',False)"/>
|
||||
</tree>
|
||||
|
@ -42,7 +42,7 @@
|
|||
<field name="arch" type="xml">
|
||||
<graph string="Invoices Analysis" type="bar">
|
||||
<field name="product_id"/>
|
||||
<field name="price_total"/>
|
||||
<field name="user_currency_price_total"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
|
|
|
@ -29,34 +29,11 @@ class Overdue(report_sxw.rml_parse):
|
|||
super(Overdue, self).__init__(cr, uid, name, context=context)
|
||||
self.localcontext.update( {
|
||||
'time': time,
|
||||
'adr_get': self._adr_get,
|
||||
'getLines': self._lines_get,
|
||||
'tel_get': self._tel_get,
|
||||
'message': self._message,
|
||||
})
|
||||
self.context = context
|
||||
def _adr_get(self, partner, type):
|
||||
res = []
|
||||
res_partner = pooler.get_pool(self.cr.dbname).get('res.partner')
|
||||
addresses = res_partner.address_get(self.cr, self.uid, [partner.id], [type])
|
||||
adr_id = addresses and addresses[type] or False
|
||||
result = {
|
||||
'name': False,
|
||||
'street': False,
|
||||
'street2': False,
|
||||
'city': False,
|
||||
'zip': False,
|
||||
'state_id':False,
|
||||
'country_id': False,
|
||||
}
|
||||
if adr_id:
|
||||
result = res_partner.read(self.cr, self.uid, [adr_id], context=self.context.copy())
|
||||
result[0]['country_id'] = result[0]['country_id'] and result[0]['country_id'][1] or False
|
||||
result[0]['state_id'] = result[0]['state_id'] and result[0]['state_id'][1] or False
|
||||
return result
|
||||
|
||||
res.append(result)
|
||||
return res
|
||||
|
||||
def _tel_get(self,partner):
|
||||
if not partner:
|
||||
|
|
|
@ -126,15 +126,10 @@
|
|||
<blockTable colWidths="286.0,224.0" style="Tableau2">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_9">[[ repeatIn(adr_get(o, 'invoice'),'addr') ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_9">[[ o.title.name or '' ]] [[ o.name ]]</para>
|
||||
<para style="terp_default_9">[[ addr['street'] ]]</para>
|
||||
<para style="terp_default_9">[[ addr['street2'] or removeParentNode('para') ]]</para>
|
||||
<para style="terp_default_9">[[ addr['zip'] ]] [[ addr['city'] ]]</para>
|
||||
<para style="terp_default_9">[[ addr['state_id'] or removeParentNode('para')]]</para>
|
||||
<para style="terp_default_9">[[ addr['country_id'] ]]</para>
|
||||
<para style="terp_default_9">[[ display_address(o.partner_id) ]]</para>
|
||||
<para style="terp_default_9">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
|
@ -216,7 +211,7 @@
|
|||
<para style="terp_default_Right_9">[[ (line['account_id']['type'] == 'receivable' and formatLang(line['credit']) or 0) or (line['account_id']['type'] == 'payable' and formatLang(line['debit'] * -1) or 0) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ time.strftime('%Y-%m-%d') > formatLang((line['date_maturity'])) and formatLang(line['debit'] - line['credit']) ]] [[ company.currency_id.symbol ]]</para>
|
||||
<para style="terp_default_Right_9">[[ time.strftime('%Y-%m-%d') > formatLang((line['date_maturity'])) and formatLang(line['debit'] - line['credit'], currency_obj = company.currency_id) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Centre_9">[[ line['blocked'] and 'X' or '' ]]</para>
|
||||
|
@ -241,7 +236,7 @@
|
|||
<para style="terp_default_Right_9">[[ formatLang((reduce(lambda x, y: x + ((y['account_id']['type'] == 'receivable' and y['credit'] or 0) or (y['account_id']['type'] == 'payable' and y['debit'] * -1 or 0)), getLines(o), 0))) ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ formatLang((reduce(lambda x, y: x + (y['debit'] - y['credit']), filter(lambda x: x['date_maturity'] < time.strftime('%Y-%m-%d'), getLines(o)), 0))) ]] [[ company.currency_id.symbol ]]</para>
|
||||
<para style="terp_default_Right_9">[[ formatLang((reduce(lambda x, y: x + (y['debit'] - y['credit']), filter(lambda x: x['date_maturity'] < time.strftime('%Y-%m-%d'), getLines(o)), 0)), currency_obj=company.currency_id) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_9">
|
||||
|
@ -261,7 +256,7 @@
|
|||
<para style="terp_default_Bold_9">Balance :</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang((reduce(lambda x, y: x +(y['debit'] - y['credit']), getLines(o), 0))) ]] [[ company.currency_id.symbol ]]</para>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang((reduce(lambda x, y: x +(y['debit'] - y['credit']), getLines(o), 0)), currency_obj = company.currency_id) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<field name="name">account.treasury.report.tree</field>
|
||||
<field name="model">account.treasury.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Treasury Analysis">
|
||||
<tree string="Treasury Analysis" create="false">
|
||||
<field name="date" invisible="1"/>
|
||||
<field name="fiscalyear_id"/>
|
||||
<field name="period_id"/>
|
||||
|
|
|
@ -121,7 +121,7 @@
|
|||
</div>
|
||||
<label for="id" string="Features"/>
|
||||
<div>
|
||||
<div>
|
||||
<div name="group_multi_currency">
|
||||
<field name="group_multi_currency" class="oe_inline"/>
|
||||
<label for="group_multi_currency"/>
|
||||
</div>
|
||||
|
|
|
@ -5,7 +5,7 @@ openerp.account = function (instance) {
|
|||
|
||||
instance.web.account = {};
|
||||
|
||||
instance.web.views.add('account_reconciliation_list', 'instance.web.account.ReconciliationListView');
|
||||
instance.web.views.add('tree_account_reconciliation', 'instance.web.account.ReconciliationListView');
|
||||
instance.web.account.ReconciliationListView = instance.web.ListView.extend({
|
||||
init: function() {
|
||||
this._super.apply(this, arguments);
|
||||
|
@ -101,7 +101,7 @@ openerp.account = function (instance) {
|
|||
return self.rpc("/web/action/load", {
|
||||
action_id: result[1],
|
||||
context: additional_context
|
||||
}, function (result) {
|
||||
}).then(function (result) {
|
||||
result = result.result;
|
||||
result.context = _.extend(result.context || {}, additional_context);
|
||||
result.flags = result.flags || {};
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-02-08 00:35+0000\n"
|
||||
"PO-Revision-Date: 2012-02-08 08:45+0000\n"
|
||||
"PO-Revision-Date: 2012-10-12 23:19+0000\n"
|
||||
"Last-Translator: Ferdinand @ Camptocamp <Unknown>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 06:19+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"X-Launchpad-Export-Date: 2012-10-14 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16137)\n"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: view:analytic.plan.create.model:0
|
||||
|
@ -471,7 +471,7 @@ msgstr "Analyt. Verrechnungsvorlage"
|
|||
#. module: account_analytic_plans
|
||||
#: field:account.analytic.plan.instance,code:0
|
||||
msgid "Distribution Code"
|
||||
msgstr "Kurzbezeichnung"
|
||||
msgstr "Verteilungs-Schlüssel"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: report:account.analytic.account.crossovered.analytic:0
|
||||
|
@ -526,6 +526,8 @@ msgid ""
|
|||
"analytic accounts for each plan set. Then, you must attach a plan set to "
|
||||
"your account journals."
|
||||
msgstr ""
|
||||
"Für jede Kostenrechnung muss ein Stammkonto definiert werden. Dann muss ein "
|
||||
"Plan definiert werden"
|
||||
|
||||
#. module: account_analytic_plans
|
||||
#: constraint:account.move.line:0
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<field name="name">asset.asset.report.tree</field>
|
||||
<field name="model">asset.asset.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Assets">
|
||||
<tree string="Assets" create="false">
|
||||
<field name="name" invisible="1"/>
|
||||
<field name="asset_id" invisible="1"/>
|
||||
<field name="asset_category_id" invisible="1"/>
|
||||
|
|
|
@ -154,7 +154,7 @@
|
|||
<field name="view_id" ref="view_bank_statement_line_list"/>
|
||||
</record>
|
||||
|
||||
<menuitem action="action_bank_statement_line" id="bank_statement_line" parent="account.menu_finance_bank_and_cash" sequence="20"/>
|
||||
<menuitem action="action_bank_statement_line" id="bank_statement_line" parent="account.menu_finance_bank_and_cash" sequence="20" groups="base.group_no_one"/>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
|
|
@ -1,13 +1,8 @@
|
|||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
<!-- budget form and tree view from account module *********************************** -->
|
||||
<record id="action_account_budget_post_tree" model="ir.actions.act_window">
|
||||
<field name="name">Budgets</field>
|
||||
<field name="res_model">account.budget.post</field>
|
||||
<field name="view_type">tree</field>
|
||||
</record>
|
||||
<menuitem action="action_account_budget_post_tree" id="menu_action_account_budget_post_tree" parent="account.menu_finance_generic_reporting" sequence="6"/>
|
||||
|
||||
<menuitem name="Budgets" id="menu_action_account_budget_post_tree" parent="account.menu_finance_generic_reporting" sequence="6"/>
|
||||
|
||||
<!--
|
||||
Budgets
|
||||
|
|
|
@ -32,7 +32,6 @@ class report_print_check(report_sxw.rml_parse):
|
|||
'time': time,
|
||||
'get_lines': self.get_lines,
|
||||
'fill_stars' : self.fill_stars,
|
||||
'get_zip_line': self.get_zip_line,
|
||||
})
|
||||
def fill_stars(self, amount):
|
||||
amount = amount.replace('Dollars','')
|
||||
|
@ -41,25 +40,6 @@ class report_print_check(report_sxw.rml_parse):
|
|||
return ' '.join([amount,'*'*stars])
|
||||
|
||||
else: return amount
|
||||
|
||||
def get_zip_line(self, address):
|
||||
'''
|
||||
Get the address line
|
||||
'''
|
||||
ret = ''
|
||||
if address:
|
||||
if address.city:
|
||||
ret += address.city
|
||||
if address.state_id:
|
||||
if address.state_id.name:
|
||||
if ret:
|
||||
ret += ', '
|
||||
ret += address.state_id.name
|
||||
if address.zip:
|
||||
if ret:
|
||||
ret += ' '
|
||||
ret += address.zip
|
||||
return ret
|
||||
|
||||
def get_lines(self, voucher_lines):
|
||||
result = []
|
||||
|
|
|
@ -281,10 +281,7 @@
|
|||
</td>
|
||||
<td>
|
||||
<para style="P15">[[ voucher.partner_id.name ]]</para>
|
||||
<para style="P15">[[ voucher.partner_id.street or removeParentNode('para') ]]</para>
|
||||
<para style="P15">[[ voucher.partner_id.street2 or removeParentNode('para') ]]</para>
|
||||
<para style="P15">[[ get_zip_line(voucher.partner_id) ]] </para>
|
||||
<para style="P15">[[ voucher.partner_id.country_id.name]]</para>
|
||||
<para style="P15">[[ display_address(voucher.partner_id) or removeParentNode('para') ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
|
@ -237,10 +237,7 @@
|
|||
</td>
|
||||
<td>
|
||||
<para style="P15">[[ voucher.partner_id.name ]]</para>
|
||||
<para style="P15">[[ voucher.partner_id.street or removeParentNode('para') ]]</para>
|
||||
<para style="P15">[[ voucher.partner_id.street2 or removeParentNode('para') ]]</para>
|
||||
<para style="P15">[[ get_zip_line(voucher.partner_id) ]] </para>
|
||||
<para style="P15">[[ voucher.partner_id.country_id.name]]</para>
|
||||
<para style="P15">[[ display_address(voucher.partner_id) or removeParentNode('para') ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
|
@ -153,9 +153,7 @@
|
|||
</td>
|
||||
<td>
|
||||
<para style="P9">[[ voucher.partner_id.name ]] </para>
|
||||
<para style="P15">[[ voucher.partner_id.street2 or removeParentNode('para') ]]</para>
|
||||
<para style="P15">[[ get_zip_line(voucher.partner_id) ]] </para>
|
||||
<para style="P15">[[ voucher.partner_id.country_id.name]]</para>
|
||||
<para style="P15">[[ display_address(voucher.partner_id) or removeParentNode('para') ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para/>
|
||||
|
|
|
@ -30,7 +30,6 @@ class report_rappel(report_sxw.rml_parse):
|
|||
self.localcontext.update({
|
||||
'time': time,
|
||||
'ids_to_objects': self._ids_to_objects,
|
||||
'adr_get': self._adr_get,
|
||||
'getLines': self._lines_get,
|
||||
'get_text': self._get_text
|
||||
})
|
||||
|
@ -43,11 +42,6 @@ class report_rappel(report_sxw.rml_parse):
|
|||
all_lines.append(line)
|
||||
return all_lines
|
||||
|
||||
def _adr_get(self, stat_line, type):
|
||||
res_partner = pooler.get_pool(self.cr.dbname).get('res.partner')
|
||||
adr = res_partner.address_get(self.cr, self.uid, [stat_line.partner_id.id], [type])[type]
|
||||
return adr and res_partner.read(self.cr, self.uid, [adr]) or [{}]
|
||||
|
||||
def _lines_get(self, stat_by_partner_line):
|
||||
pool = pooler.get_pool(self.cr.dbname)
|
||||
moveline_obj = pool.get('account.move.line')
|
||||
|
|
|
@ -129,15 +129,10 @@
|
|||
<blockTable colWidths="298.0,234.0" style="Tableau2">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_9">[[ repeatIn(adr_get(o,'invoice'),'a' )]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_9">[[ o.partner_id.name or '' ]]</para>
|
||||
<para style="terp_default_9">[[ a['street'] or '']]</para>
|
||||
<para style="terp_default_9">[[ a['street2'] or removeParentNode('para') ]]</para>
|
||||
<para style="terp_default_9">[[ a['zip'] or '' ]] [[ a['city'] or '' ]]</para>
|
||||
<para style="terp_default_9">[[( a['state_id'] and a['state_id'][1]) or removeParentNode('para') ]]</para>
|
||||
<para style="terp_default_9">[[( a['country_id'] and a['country_id'][1]) or '']]</para>
|
||||
<para style="terp_default_9">[[ display_address(o.partner_id) or '']]</para>
|
||||
<para style="terp_default_9">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
|
|
|
@ -256,10 +256,10 @@
|
|||
<para style="terp_default_Centre_9">[[line.date=='False' and '-' or formatLang(line.date,date=True) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[formatLang(line.amount) or '-' ]] [[get_company_currency_symbol()]] </para>
|
||||
<para style="terp_default_Right_9">[[formatLang(line.amount, currency_obj= user.company_id.currency_id) or '-' ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ formatLang(line.amount_currency) ]] [[ line.currency.symbol]] </para>
|
||||
<para style="terp_default_Right_9">[[ formatLang(line.amount_currency, currency_obj= line.currency)]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
@ -275,10 +275,10 @@
|
|||
<para style="terp_default_Bold_9">Total:</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ formatLang(get_amount_total(o)) or '' ]] [[get_company_currency_symbol()]] </para>
|
||||
<para style="terp_default_Right_9">[[ formatLang(get_amount_total(o), currency_obj= user.company_id.currency_id) or '' ]] </para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ formatLang(get_amount_total_in_currency(o)) or '' ]] [[get_company_currency_symbol()]] </para>
|
||||
<para style="terp_default_Right_9">[[ formatLang(get_amount_total_in_currency(o), currency_obj= user.company_id.currency_id) or '' ]] </para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
|
@ -32,7 +32,6 @@ class payment_order(report_sxw.rml_parse):
|
|||
'time': time,
|
||||
'get_invoice_name': self._get_invoice_name,
|
||||
'get_company_currency': self._get_company_currency,
|
||||
'get_company_currency_symbol': self._get_company_currency_symbol,
|
||||
'get_amount_total_in_currency': self._get_amount_total_in_currency,
|
||||
'get_amount_total': self._get_amount_total,
|
||||
'get_account_name': self._get_account_name,
|
||||
|
@ -72,12 +71,8 @@ class payment_order(report_sxw.rml_parse):
|
|||
user = pool.get('res.users').browse(self.cr, self.uid, self.uid)
|
||||
return user.company_id and user.company_id.currency_id and user.company_id.currency_id.symbol or False
|
||||
|
||||
def _get_company_currency_symbol(self):
|
||||
pool = pooler.get_pool(self.cr.dbname)
|
||||
user = pool.get('res.users').browse(self.cr, self.uid, self.uid)
|
||||
return user.company_id and user.company_id.currency_id and user.company_id.currency_id.symbol or False
|
||||
|
||||
def _get_account_name(self, bank_id):
|
||||
def _get_account_name(self,bank_id):
|
||||
if bank_id:
|
||||
pool = pooler.get_pool(self.cr.dbname)
|
||||
value_name = pool.get('res.partner.bank').name_get(self.cr, self.uid, [bank_id])
|
||||
|
|
|
@ -42,6 +42,21 @@ class res_company(osv.osv):
|
|||
|
||||
res_company()
|
||||
|
||||
class account_config_settings(osv.osv_memory):
|
||||
_inherit = 'account.config.settings'
|
||||
_columns = {
|
||||
'income_currency_exchange_account_id': fields.related(
|
||||
'company_id', 'income_currency_exchange_account_id',
|
||||
type='many2one',
|
||||
relation='account.account',
|
||||
string="Gain Exchange Rate Account"),
|
||||
'expense_currency_exchange_account_id': fields.related(
|
||||
'company_id', 'expense_currency_exchange_account_id',
|
||||
type="many2one",
|
||||
relation='account.account',
|
||||
string="Loss Exchange Rate Account"),
|
||||
}
|
||||
|
||||
class account_voucher(osv.osv):
|
||||
def _check_paid(self, cr, uid, ids, name, args, context=None):
|
||||
res = {}
|
||||
|
|
|
@ -249,16 +249,23 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<!-- res.company form view -->
|
||||
<record model="ir.ui.view" id="view_company_inherit_currency_xchange_form">
|
||||
<field name="name">res.company.form.inherit</field>
|
||||
<field name="inherit_id" ref="base.view_company_form"/>
|
||||
<field name="model">res.company</field>
|
||||
<!-- res.config form view -->
|
||||
<record model="ir.ui.view" id="view_account_settings_currency_xchange_form">
|
||||
<field name="name">account.config.settings.inherit</field>
|
||||
<field name="inherit_id" ref="account.view_account_config_settings"/>
|
||||
<field name="model">account.config.settings</field>
|
||||
<field name="priority">20</field>
|
||||
<field name="arch" type="xml">
|
||||
<field name="currency_id" position="after">
|
||||
<field name="income_currency_exchange_account_id"/>
|
||||
<field name="expense_currency_exchange_account_id"/>
|
||||
</field>
|
||||
<xpath expr="//div[@name='group_multi_currency']" position="after">
|
||||
<group attrs="{'invisible': [('group_multi_currency', '<>', True)]}" col="2">
|
||||
<group>
|
||||
<field name="income_currency_exchange_account_id"/>
|
||||
<field name="expense_currency_exchange_account_id"/>
|
||||
</group>
|
||||
<group>
|
||||
</group>
|
||||
</group>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
|
|
@ -219,7 +219,7 @@
|
|||
<para style="terp_default_9_30cm">[[ p['pname'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ p['amount'] ]] [[ voucher.currency_id.symbol ]]</para>
|
||||
<para style="terp_default_Right_9">[[ formatLang(p['amount'], currency_obj=voucher.currency_id) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
@ -323,7 +323,7 @@
|
|||
</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9_Bold">[[ voucher.amount ]] [[ voucher.currency_id.symbol ]]</para>
|
||||
<para style="terp_default_Right_9_Bold">[[ formatLang(voucher.amount, currency_obj=voucher.currency_id) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<field name="name">sale.receipt.report.tree</field>
|
||||
<field name="model">sale.receipt.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree colors="blue:state == 'draft';gray:state in ('cancel','paid');black:state in ('proforma','proforma2')" string="Sales Receipt Analysis">
|
||||
<tree colors="blue:state == 'draft';gray:state in ('cancel','paid');black:state in ('proforma','proforma2')" create="false" string="Sales Receipt Analysis">
|
||||
<field name="date" invisible="1"/>
|
||||
<field name="user_id" invisible="1"/>
|
||||
<field name="year" invisible="1"/>
|
||||
|
|
|
@ -0,0 +1,213 @@
|
|||
# Latvian translation for openobject-addons
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the openobject-addons package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-02-08 00:35+0000\n"
|
||||
"PO-Revision-Date: 2012-10-16 20:21+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: Latvian <lv@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-10-17 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16152)\n"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.model,name:anonymization.model_ir_model_fields_anonymize_wizard
|
||||
msgid "ir.model.fields.anonymize.wizard"
|
||||
msgstr "ir.model.fields.anonymize.wizard"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization,field_name:0
|
||||
msgid "Field Name"
|
||||
msgstr "Lauka Nosaukums"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization,field_id:0
|
||||
msgid "Field"
|
||||
msgstr "Lauks"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization.history,state:0
|
||||
#: field:ir.model.fields.anonymize.wizard,state:0
|
||||
msgid "State"
|
||||
msgstr "Stāvoklis"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymize.wizard,file_import:0
|
||||
msgid "Import"
|
||||
msgstr "Importēt"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization
|
||||
msgid "ir.model.fields.anonymization"
|
||||
msgstr "ir.model.fields.anonymization"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization.history,direction:0
|
||||
msgid "Direction"
|
||||
msgstr "Virziens"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymization_tree
|
||||
#: view:ir.model.fields.anonymization:0
|
||||
#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_fields
|
||||
msgid "Anonymized Fields"
|
||||
msgstr "Anonimizēti Lauki"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization
|
||||
msgid "Database anonymization"
|
||||
msgstr "Datubāzes anonimizācija"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization.history,direction:0
|
||||
msgid "clear -> anonymized"
|
||||
msgstr "tīrs -> anonimizēts"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization,state:0
|
||||
#: selection:ir.model.fields.anonymize.wizard,state:0
|
||||
msgid "Anonymized"
|
||||
msgstr "Anonimizēta"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization,state:0
|
||||
msgid "unknown"
|
||||
msgstr "nezināms"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization,model_id:0
|
||||
msgid "Object"
|
||||
msgstr "Objekts"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization.history,filepath:0
|
||||
msgid "File path"
|
||||
msgstr "Ceļš uz failu"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization.history,date:0
|
||||
msgid "Date"
|
||||
msgstr "Datums"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymize.wizard,file_export:0
|
||||
msgid "Export"
|
||||
msgstr "Eksportēt"
|
||||
|
||||
#. module: anonymization
|
||||
#: view:ir.model.fields.anonymize.wizard:0
|
||||
msgid "Reverse the Database Anonymization"
|
||||
msgstr "Atgriezt Datubāzes Anonimizāciju"
|
||||
|
||||
#. module: anonymization
|
||||
#: view:ir.model.fields.anonymize.wizard:0
|
||||
msgid "Database Anonymization"
|
||||
msgstr "Datubāzes Anonimizācija"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_wizard
|
||||
msgid "Anonymize database"
|
||||
msgstr "Anonimizēt datubāzi"
|
||||
|
||||
#. module: anonymization
|
||||
#: view:ir.model.fields.anonymization.history:0
|
||||
#: field:ir.model.fields.anonymization.history,field_ids:0
|
||||
msgid "Fields"
|
||||
msgstr "Lauki"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization,state:0
|
||||
#: selection:ir.model.fields.anonymize.wizard,state:0
|
||||
msgid "Clear"
|
||||
msgstr "Notīrīt"
|
||||
|
||||
#. module: anonymization
|
||||
#: view:ir.model.fields.anonymize.wizard:0
|
||||
#: field:ir.model.fields.anonymize.wizard,summary:0
|
||||
msgid "Summary"
|
||||
msgstr "Kopsavilkums"
|
||||
|
||||
#. module: anonymization
|
||||
#: view:ir.model.fields.anonymization:0
|
||||
msgid "Anonymized Field"
|
||||
msgstr "Anonimizēts lauks"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymize.wizard,state:0
|
||||
msgid "Unstable"
|
||||
msgstr "Nestabīls"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization.history,state:0
|
||||
msgid "Exception occured"
|
||||
msgstr "Notikusī kļūda"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization,state:0
|
||||
#: selection:ir.model.fields.anonymize.wizard,state:0
|
||||
msgid "Not Existing"
|
||||
msgstr "Neeksistē"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymization,model_name:0
|
||||
msgid "Object Name"
|
||||
msgstr "Objekta nosaukums"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymization_history_tree
|
||||
#: view:ir.model.fields.anonymization.history:0
|
||||
#: model:ir.ui.menu,name:anonymization.menu_administration_anonymization_history
|
||||
msgid "Anonymization History"
|
||||
msgstr "Anonimizācijas Vēsture"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.model,name:anonymization.model_ir_model_fields_anonymization_history
|
||||
msgid "ir.model.fields.anonymization.history"
|
||||
msgstr "ir.model.fields.anonymization.history"
|
||||
|
||||
#. module: anonymization
|
||||
#: model:ir.actions.act_window,name:anonymization.action_ir_model_fields_anonymize_wizard
|
||||
#: view:ir.model.fields.anonymize.wizard:0
|
||||
msgid "Anonymize Database"
|
||||
msgstr "Anonimizēt Datubāzi"
|
||||
|
||||
#. module: anonymization
|
||||
#: field:ir.model.fields.anonymize.wizard,name:0
|
||||
msgid "File Name"
|
||||
msgstr "Faila nosaukums"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization.history,direction:0
|
||||
msgid "anonymized -> clear"
|
||||
msgstr "anonimizēts -> tīrs"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization.history,state:0
|
||||
msgid "Started"
|
||||
msgstr "Iesākta"
|
||||
|
||||
#. module: anonymization
|
||||
#: selection:ir.model.fields.anonymization.history,state:0
|
||||
msgid "Done"
|
||||
msgstr "Izdarīts"
|
||||
|
||||
#. module: anonymization
|
||||
#: view:ir.model.fields.anonymization.history:0
|
||||
#: field:ir.model.fields.anonymization.history,msg:0
|
||||
#: field:ir.model.fields.anonymize.wizard,msg:0
|
||||
msgid "Message"
|
||||
msgstr "Ziņojums"
|
||||
|
||||
#. module: anonymization
|
||||
#: code:addons/anonymization/anonymization.py:55
|
||||
#: sql_constraint:ir.model.fields.anonymization:0
|
||||
#, python-format
|
||||
msgid "You cannot have two fields with the same name on the same object!"
|
||||
msgstr "Nevar būt divi lauki ar vienādiem nosaukumiem vienam objektam!"
|
|
@ -145,7 +145,7 @@
|
|||
<field name="name">audittrail.log.tree</field>
|
||||
<field name="model">audittrail.log</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="AuditTrail Logs">
|
||||
<tree string="AuditTrail Logs" create="false">
|
||||
<field name="timestamp"/>
|
||||
<field name="name"/>
|
||||
<field name="object_id"/>
|
||||
|
|
|
@ -21,7 +21,7 @@ class res_users(osv.Model):
|
|||
}
|
||||
|
||||
_sql_constraints = [
|
||||
('uniq_users_oauth_provider_oauht_uid', 'unique(auth_provider_id, auth_uid)', 'OAuth UID must be unique per provider'),
|
||||
('uniq_users_oauth_provider_oauth_uid', 'unique(oauth_provider_id, oauth_uid)', 'OAuth UID must be unique per provider'),
|
||||
]
|
||||
|
||||
def auth_oauth_rpc(self, cr, uid, endpoint, access_token, context=None):
|
||||
|
|
|
@ -69,7 +69,7 @@ instance.web.Login = instance.web.Login.extend({
|
|||
_check_error: function() {
|
||||
var self = this;
|
||||
if (this.params.loginerror !== undefined) {
|
||||
this.rpc('/auth_openid/login/status', {}, function(result) {
|
||||
this.rpc('/auth_openid/login/status', {}).then(function(result) {
|
||||
if (_.contains(['success', 'failure'], result.status) && result.message) {
|
||||
self.do_warn('Invalid OpenID Login', result.message);
|
||||
}
|
||||
|
@ -106,7 +106,7 @@ instance.web.Login = instance.web.Login.extend({
|
|||
|
||||
do_openid_login: function(db, openid_url) {
|
||||
var self = this;
|
||||
this.rpc('/auth_openid/login/verify', {'db': db, 'url': openid_url}, function(result) {
|
||||
this.rpc('/auth_openid/login/verify', {'db': db, 'url': openid_url}).then(function(result) {
|
||||
if (result.error) {
|
||||
self.do_warn(result.title, result.error);
|
||||
return;
|
||||
|
|
|
@ -0,0 +1,45 @@
|
|||
# Latvian translation for openobject-addons
|
||||
# Copyright (c) 2012 Rosetta Contributors and Canonical Ltd 2012
|
||||
# This file is distributed under the same license as the openobject-addons package.
|
||||
# FIRST AUTHOR <EMAIL@ADDRESS>, 2012.
|
||||
#
|
||||
msgid ""
|
||||
msgstr ""
|
||||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-02-08 00:36+0000\n"
|
||||
"PO-Revision-Date: 2012-10-16 16:11+0000\n"
|
||||
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"Language-Team: Latvian <lv@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-10-17 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16152)\n"
|
||||
|
||||
#. module: base_crypt
|
||||
#: model:ir.model,name:base_crypt.model_res_users
|
||||
msgid "res.users"
|
||||
msgstr "res.users"
|
||||
|
||||
#. module: base_crypt
|
||||
#: sql_constraint:res.users:0
|
||||
msgid "You can not have two users with the same login !"
|
||||
msgstr "Nevar būt divi lietotāji ar vienādu pieteikuma vārdu!"
|
||||
|
||||
#. module: base_crypt
|
||||
#: constraint:res.users:0
|
||||
msgid "The chosen company is not in the allowed companies for this user"
|
||||
msgstr "Izvēlētais uzņēmums nav šim lietotājam atļauto uzņēmumu sarakstā"
|
||||
|
||||
#. module: base_crypt
|
||||
#: code:addons/base_crypt/crypt.py:140
|
||||
#, python-format
|
||||
msgid "Please specify the password !"
|
||||
msgstr "Lūdzu norādiet paroli!"
|
||||
|
||||
#. module: base_crypt
|
||||
#: code:addons/base_crypt/crypt.py:140
|
||||
#, python-format
|
||||
msgid "Error"
|
||||
msgstr "Kļūda"
|
|
@ -416,7 +416,7 @@ openerp.base_import = function (instance) {
|
|||
'</div>'
|
||||
].join('')
|
||||
},
|
||||
})).get(0).scrollIntoView();
|
||||
}));
|
||||
},
|
||||
});
|
||||
// FSM-ize DataImport
|
||||
|
|
|
@ -46,7 +46,7 @@ instance.web.form.DashBoard = instance.web.form.FormWidget.extend({
|
|||
delete(action.attrs.colspan);
|
||||
var action_id = _.str.toNumber(action.attrs.name);
|
||||
if (!_.isNaN(action_id)) {
|
||||
self.rpc('/web/action/load', {action_id: action_id}, function(result) {
|
||||
self.rpc('/web/action/load', {action_id: action_id}).then(function(result) {
|
||||
self.on_load_action(result, column_index + '_' + action_index, action.attrs);
|
||||
});
|
||||
}
|
||||
|
@ -81,7 +81,7 @@ instance.web.form.DashBoard = instance.web.form.FormWidget.extend({
|
|||
this.rpc('/web/view/undo_custom', {
|
||||
view_id: this.view.fields_view.view_id,
|
||||
reset: true
|
||||
}, this.do_reload);
|
||||
}).then(this.do_reload);
|
||||
},
|
||||
on_change_layout: function() {
|
||||
var self = this;
|
||||
|
@ -382,7 +382,7 @@ instance.board.AddToDashboard = instance.web.search.Input.extend({
|
|||
domain: domain,
|
||||
view_mode: view_parent.active_view,
|
||||
name: this.$el.find("input").val()
|
||||
}, function(r) {
|
||||
}).then(function(r) {
|
||||
if (r === false) {
|
||||
self.do_warn("Could not add filter to dashboard");
|
||||
} else {
|
||||
|
|
|
@ -777,7 +777,6 @@ class crm_lead(base_stage, format_address, osv.osv):
|
|||
'default_user_id': uid,
|
||||
'default_section_id': opportunity.section_id and opportunity.section_id.id or False,
|
||||
'default_email_from': opportunity.email_from,
|
||||
'default_state': 'open',
|
||||
'default_name': opportunity.name,
|
||||
}
|
||||
return res
|
||||
|
|
|
@ -105,7 +105,23 @@
|
|||
<field name="allow_unlink"/>
|
||||
</group>
|
||||
<separator string="Team Members"/>
|
||||
<field name="member_ids"/>
|
||||
<field name="member_ids" widget="many2many_kanban">
|
||||
<kanban quick_create="false" create="true">
|
||||
<field name="name"/>
|
||||
<templates>
|
||||
<t t-name="kanban-box">
|
||||
<div style="position: relative">
|
||||
<a t-if="! read_only_mode" type="delete" style="position: absolute; right: 0; padding: 4px; diplay: inline-block">X</a>
|
||||
<div class="oe_module_vignette">
|
||||
<div class="oe_module_desc">
|
||||
<field name="name"/>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</t>
|
||||
</templates>
|
||||
</kanban>
|
||||
</field>
|
||||
</page>
|
||||
<page string="Stages">
|
||||
<separator string="Select Stages for this Sales Team"/>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<field name="name">crm.lead.report.tree</field>
|
||||
<field name="model">crm.lead.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Leads Analysis">
|
||||
<tree string="Leads Analysis" create="false">
|
||||
<field name="creation_year" invisible="1"/>
|
||||
<field name="creation_month" invisible="1"/>
|
||||
<field name="creation_day" invisible="1"/>
|
||||
|
@ -130,7 +130,7 @@
|
|||
<field name="name">crm.lead.report.tree</field>
|
||||
<field name="model">crm.lead.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree colors="blue:state == 'draft';black:state in ('open','pending','done');gray:state == 'cancel' " string="Opportunities Analysis">
|
||||
<tree colors="blue:state == 'draft';black:state in ('open','pending','done');gray:state == 'cancel' " create="false" string="Opportunities Analysis">
|
||||
<field name="creation_year" invisible="1"/>
|
||||
<field name="creation_month" invisible="1"/>
|
||||
<field name="creation_day" invisible="1"/>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<field name="name">crm.phonecall.report.tree</field>
|
||||
<field name="model">crm.phonecall.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Phone calls">
|
||||
<tree string="Phone calls" create="false">
|
||||
<field name="name" invisible="1"/>
|
||||
<field name="month" invisible="1"/>
|
||||
<field name="section_id" invisible="1"/>
|
||||
|
|
|
@ -32,6 +32,13 @@ class crm_configuration(osv.osv_memory):
|
|||
'group_fund_raising': fields.boolean("Manage Fund Raising",
|
||||
implied_group='crm.group_fund_raising',
|
||||
help="""Allows you to trace and manage your activities for fund raising."""),
|
||||
'module_crm_claim':fields.boolean("Manage Customer Claims",
|
||||
help="""Allows you to track your customers/suppliers claims and grievances.
|
||||
This installs the module crm_claim."""),
|
||||
'module_crm_helpdesk':fields.boolean("Manage Helpdesk and Support",
|
||||
help="""Allows you to communicate with Customer, process Customer query, and provide better help and support. This installs the module crm_helpdesk."""),
|
||||
|
||||
|
||||
}
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
|
|
@ -7,6 +7,22 @@
|
|||
<field name="model">sale.config.settings</field>
|
||||
<field name="inherit_id" ref="base_setup.view_sale_config_settings"/>
|
||||
<field name="arch" type="xml">
|
||||
<div name="config_sale" position="before">
|
||||
<separator string="After-Sale Services"/>
|
||||
<group>
|
||||
<label for="id" string="Features"/>
|
||||
<div>
|
||||
<div>
|
||||
<field name="module_crm_claim" class="oe_inline"/>
|
||||
<label for="module_crm_claim"/>
|
||||
</div>
|
||||
<div>
|
||||
<field name="module_crm_helpdesk" class="oe_inline"/>
|
||||
<label for="module_crm_helpdesk"/>
|
||||
</div>
|
||||
</div>
|
||||
</group>
|
||||
</div>
|
||||
<group name="On Mail Client" version="7.0" position="after">
|
||||
<group>
|
||||
<label for="id" string="On Mail Server"/>
|
||||
|
|
|
@ -25,8 +25,10 @@
|
|||
'version': '1.0',
|
||||
'category': 'Customer Relationship Management',
|
||||
'description': """
|
||||
This modules allows you to track your customers/suppliers claims and grievances.
|
||||
|
||||
Manage Customer Claims.
|
||||
================================================================================
|
||||
This application allows you to track your customers/suppliers claims and grievances.
|
||||
|
||||
It is fully integrated with the email gateway so that you can create
|
||||
automatically new claims based on incoming emails.
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<field name="name">crm.claim.report.tree</field>
|
||||
<field name="model">crm.claim.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Claims">
|
||||
<tree string="Claims" create="false">
|
||||
<field name="name" invisible="1"/>
|
||||
<field name="month" invisible="1"/>
|
||||
<field name="section_id" invisible="1"/>
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
<field name="name">crm.helpdesk.report.tree</field>
|
||||
<field name="model">crm.helpdesk.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Helpdesk">
|
||||
<tree string="Helpdesk" create="false">
|
||||
<field name="name" invisible="1"/>
|
||||
<field name="month" invisible="1"/>
|
||||
<field name="section_id" invisible="1"/>
|
||||
|
|
|
@ -65,7 +65,7 @@
|
|||
<field name="name">crm.lead.assign.report.tree</field>
|
||||
<field name="model">crm.lead.report.assign</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Opportunities Assignment Analysis">
|
||||
<tree string="Opportunities Assignment Analysis" create="false">
|
||||
<field name="year" invisible="1"/>
|
||||
<field name="month" invisible="1"/>
|
||||
<field name="date_assign" invisible="1"/>
|
||||
|
|
|
@ -41,7 +41,7 @@
|
|||
<field name="name">crm.partner.assign.report.tree</field>
|
||||
<field name="model">crm.partner.report.assign</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Opportunities Assignment Analysis">
|
||||
<tree string="Opportunities Assignment Analysis" create="false">
|
||||
<field name="partner_id" invisible="1"/>
|
||||
<field name="country_id" invisible="1"/>
|
||||
<field name="grade_id" invisible="1"/>
|
||||
|
|
|
@ -170,7 +170,7 @@
|
|||
<field name="model">res.partner</field>
|
||||
<field name="inherit_id" ref="base.view_res_partner_filter"/>
|
||||
<field name="arch" type="xml">
|
||||
<filter string="Salesman" position="after">
|
||||
<filter string="Salesperson" position="after">
|
||||
<filter string="Activation" context="{'group_by' : 'activation'}" domain="[]" icon="terp-personal" />
|
||||
</filter>
|
||||
</field>
|
||||
|
|
|
@ -36,8 +36,7 @@ DMS_ROOT_PATH = tools.config.get('document_path', os.path.join(tools.config['roo
|
|||
|
||||
class document_file(osv.osv):
|
||||
_inherit = 'ir.attachment'
|
||||
_rec_name = 'datas_fname'
|
||||
|
||||
_rec_name = 'name'
|
||||
|
||||
def _attach_parent_id(self, cr, uid, ids=None, context=None):
|
||||
"""Migrate ir.attachments to the document module.
|
||||
|
@ -149,6 +148,13 @@ class document_file(osv.osv):
|
|||
_sql_constraints = [
|
||||
# filename_uniq is not possible in pure SQL
|
||||
]
|
||||
|
||||
def onchange_file(self, cr, uid, ids, datas_fname=False, context=None):
|
||||
res = {'value':{}}
|
||||
if datas_fname:
|
||||
res['value'].update({'name': datas_fname})
|
||||
return res
|
||||
|
||||
def check(self, cr, uid, ids, mode, context=None, values=None):
|
||||
"""Check access wrt. res_model, relax the rule of ir.attachment parent
|
||||
|
||||
|
|
|
@ -228,6 +228,9 @@
|
|||
<field name="priority" eval="1"/>
|
||||
<field name="inherit_id" ref="base.view_attachment_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<xpath expr="//field[@name='datas_fname']" position="replace">
|
||||
<field name="datas_fname" invisible="1" on_change="onchange_file(datas_fname)"/>
|
||||
</xpath>
|
||||
<field name="url" position="after">
|
||||
<field name="user_id"/>
|
||||
</field>
|
||||
|
@ -338,15 +341,6 @@
|
|||
<field name="value" eval="'ir.actions.act_window,%d'%action_document_file_directory_form"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_attachment_form_inherit">
|
||||
<field name="name">ir.attachment.view.inherit</field>
|
||||
<field name="model">ir.attachment</field>
|
||||
<field name="inherit_id" ref="base.view_attachment_form"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="datas_fname" position = "replace" >
|
||||
</field>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="view_process_node_form_inherit1">
|
||||
<field name="name">process.node.form</field>
|
||||
|
|
|
@ -7,25 +7,25 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-02-08 01:37+0100\n"
|
||||
"PO-Revision-Date: 2012-08-13 12:14+0000\n"
|
||||
"Last-Translator: Antony Lesuisse (OpenERP) <al@openerp.com>\n"
|
||||
"PO-Revision-Date: 2012-10-17 00:06+0000\n"
|
||||
"Last-Translator: Syllas F. de O. Neto <syllasneto@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 06:43+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"X-Launchpad-Export-Date: 2012-10-17 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16152)\n"
|
||||
|
||||
#. module: document_page
|
||||
#: field:document.page.type,template:0
|
||||
msgid "Document page Template"
|
||||
msgstr ""
|
||||
msgstr "Modelo de página de Documento"
|
||||
|
||||
#. module: document_page
|
||||
#: model:ir.actions.act_window,name:document_page.action_wiki
|
||||
#: model:ir.ui.menu,name:document_page.menu_action_wiki_wiki
|
||||
msgid "Document Pages"
|
||||
msgstr ""
|
||||
msgstr "Páginas do Documento"
|
||||
|
||||
#. module: document_page
|
||||
#: field:document.page.type,method:0
|
||||
|
@ -56,7 +56,7 @@ msgstr "Indica se estas páginas têm uma tabela de conteúdo ou não"
|
|||
#. module: document_page
|
||||
#: model:ir.model,name:document_page.model_wiki_wiki_history view:document.page.history:0
|
||||
msgid "Document page History"
|
||||
msgstr ""
|
||||
msgstr "Histórico de páginas do Documento"
|
||||
|
||||
#. module: document_page
|
||||
#: field:document.page,minor_edit:0
|
||||
|
@ -269,7 +269,7 @@ msgstr "Todas as Páginas de Históricos"
|
|||
#. module: document_page
|
||||
#: model:ir.model,name:document_page.model_wiki_wiki
|
||||
msgid "document.page"
|
||||
msgstr ""
|
||||
msgstr "document.page"
|
||||
|
||||
#. module: document_page
|
||||
#: help:document.page.type,method:0
|
||||
|
@ -284,7 +284,7 @@ msgstr "Fechar"
|
|||
#. module: document_page
|
||||
#: model:ir.model,name:document_page.model_wizard_wiki_history_show_diff
|
||||
msgid "wizard.document.page.history.show_diff"
|
||||
msgstr ""
|
||||
msgstr "wizard.document.page.history.show_diff"
|
||||
|
||||
#. module: document_page
|
||||
#: field:document.page.history,wiki_id:0
|
||||
|
@ -357,7 +357,7 @@ msgstr "Esta é uma edição Avançada ?"
|
|||
#: model:ir.model,name:document_page.model_wiki_groups
|
||||
#: model:ir.ui.menu,name:document_page.menu_action_wiki_groups view:document.page.type:0
|
||||
msgid "Document Types"
|
||||
msgstr ""
|
||||
msgstr "Tipos de Documento"
|
||||
|
||||
#. module: document_page
|
||||
#: view:document.page:0
|
||||
|
@ -374,12 +374,12 @@ msgstr "Modificado por"
|
|||
#: field:document.page,type:0
|
||||
#, python-format
|
||||
msgid "Type"
|
||||
msgstr ""
|
||||
msgstr "Tipo"
|
||||
|
||||
#. module: document_page
|
||||
#: view:document.page.type:0 view:document.page.page.open:0
|
||||
msgid "Open Document Page"
|
||||
msgstr ""
|
||||
msgstr "Página do documento aberto"
|
||||
|
||||
#. module: document_page
|
||||
#: model:ir.model,name:document_page.model_wiki_wiki_page_open
|
||||
|
|
|
@ -4,14 +4,8 @@ import textwrap
|
|||
import simplejson
|
||||
import werkzeug.wrappers
|
||||
|
||||
try:
|
||||
# embedded
|
||||
import openerp.addons.web.common.http as openerpweb
|
||||
import openerp.addons.web.controllers.main as webmain
|
||||
except ImportError:
|
||||
# standalone
|
||||
import web.common.http as openerpweb
|
||||
import web.controllers.main as webmain
|
||||
import openerp.addons.web.http as openerpweb
|
||||
import openerp.addons.web.controllers.main as webmain
|
||||
|
||||
class EDI(openerpweb.Controller):
|
||||
# http://hostname:8069/edi/view?db=XXXX&token=XXXXXXXXXXX
|
||||
|
|
|
@ -15,7 +15,7 @@ openerp.edi.EdiView = openerp.web.Widget.extend({
|
|||
this._super();
|
||||
var self = this;
|
||||
var param = {"db": self.db, "token": self.token};
|
||||
return self.rpc('/edi/get_edi_document', param, this.on_document_loaded, this.on_document_failed);
|
||||
return self.rpc('/edi/get_edi_document', param).then(this.on_document_loaded, this.on_document_failed);
|
||||
},
|
||||
on_document_loaded: function(docs){
|
||||
this.doc = docs[0];
|
||||
|
@ -149,11 +149,11 @@ openerp.edi.EdiImport = openerp.web.Widget.extend({
|
|||
},
|
||||
|
||||
do_import: function() {
|
||||
this.rpc('/edi/import_edi_url', {url: this.url}, this.on_imported, this.on_imported_error);
|
||||
this.rpc('/edi/import_edi_url', {url: this.url}).then(this.on_imported, this.on_imported_error);
|
||||
},
|
||||
on_imported: function(response) {
|
||||
if ('action' in response) {
|
||||
this.rpc("/web/session/save_session_action", {the_action: response.action}, function(key) {
|
||||
this.rpc("/web/session/save_session_action", {the_action: response.action}).then(function(key) {
|
||||
window.location = "/#sa="+encodeURIComponent(key);
|
||||
});
|
||||
}
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
#
|
||||
##############################################################################
|
||||
|
||||
from datetime import datetime, timedelta
|
||||
from osv import fields, osv
|
||||
from tools.translate import _
|
||||
from openerp import SUPERUSER_ID
|
||||
|
@ -267,27 +268,29 @@ class event_event(osv.osv):
|
|||
return {'value': dic}
|
||||
|
||||
def on_change_address_id(self, cr, uid, ids, address_id, context=None):
|
||||
values = {
|
||||
'street' : False,
|
||||
'street2' : False,
|
||||
'city' : False,
|
||||
'zip' : False,
|
||||
'country_id' : False,
|
||||
'state_id' : False,
|
||||
}
|
||||
if isinstance(address_id, (long, int)):
|
||||
address = self.pool.get('res.partner').browse(cr, uid, address_id, context=context)
|
||||
values.update({
|
||||
'street' : address.street,
|
||||
'street2' : address.street2,
|
||||
'city' : address.city,
|
||||
'country_id' : address.country_id and address.country_id.id,
|
||||
'state_id' : address.state_id and address.state_id.id,
|
||||
'zip' : address.zip,
|
||||
})
|
||||
|
||||
values = {}
|
||||
if not address_id:
|
||||
return values
|
||||
address = self.pool.get('res.partner').browse(cr, uid, address_id, context=context)
|
||||
values.update({
|
||||
'street' : address.street,
|
||||
'street2' : address.street2,
|
||||
'city' : address.city,
|
||||
'country_id' : address.country_id and address.country_id.id or False,
|
||||
'state_id' : address.state_id and address.state_id.id or False,
|
||||
'zip' : address.zip,
|
||||
})
|
||||
return {'value' : values}
|
||||
|
||||
def onchange_start_date(self, cr, uid, ids, date_begin=False, date_end=False, context=None):
|
||||
res = {'value':{}}
|
||||
if date_end:
|
||||
return res
|
||||
if date_begin and isinstance(date_begin, str):
|
||||
date_begin = datetime.strptime(date_begin, "%Y-%m-%d %H:%M:%S")
|
||||
date_end = date_begin + timedelta(hours=1)
|
||||
res['value'] = {'date_end': date_end.strftime("%Y-%m-%d %H:%M:%S")}
|
||||
return res
|
||||
|
||||
# ----------------------------------------
|
||||
# OpenChatter methods and notifications
|
||||
|
|
|
@ -116,30 +116,28 @@
|
|||
<label for="name" class="oe_edit_only"/>
|
||||
<h1><field name="name"/></h1>
|
||||
</div>
|
||||
<div>
|
||||
<group>
|
||||
<group>
|
||||
<group>
|
||||
<label for="address_id" string="Location"/>
|
||||
<div>
|
||||
<field name="address_id" on_change="on_change_address_id(address_id)" />
|
||||
<field name="street" placeholder="Street..."/>
|
||||
<field name="street2"/>
|
||||
<div class="address_format">
|
||||
<field name="city" placeholder="City" style="width: 40%%"/>
|
||||
<field name="state_id" class="oe_no_button" placeholder="State" style="width: 37%%" options='{"no_open": True}'/>
|
||||
<field name="zip" placeholder="ZIP" style="width: 20%%"/>
|
||||
</div>
|
||||
<field name="country_id" placeholder="Country" class="oe_no_button" options='{"no_open": True}'/>
|
||||
</div>
|
||||
</group>
|
||||
<group>
|
||||
<field name="type" on_change="onchange_event_type(type,context)"/>
|
||||
<field name="date_begin"/>
|
||||
<field name="date_end"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
</group>
|
||||
<label for="address_id" string="Location"/>
|
||||
<div>
|
||||
<field name="address_id" on_change="on_change_address_id(address_id)" />
|
||||
<field name="street" placeholder="Street..."/>
|
||||
<field name="street2"/>
|
||||
<div class="address_format">
|
||||
<field name="city" placeholder="City" style="width: 40%%"/>
|
||||
<field name="state_id" class="oe_no_button" placeholder="State" style="width: 37%%" options='{"no_open": true}'/>
|
||||
<field name="zip" placeholder="ZIP" style="width: 20%%"/>
|
||||
</div>
|
||||
<field name="country_id" placeholder="Country" class="oe_no_button" options='{"no_open": true}'/>
|
||||
</div>
|
||||
</group>
|
||||
</div>
|
||||
<group>
|
||||
<field name="type" on_change="onchange_event_type(type,context)" />
|
||||
<field name="date_begin" on_change="onchange_start_date(date_begin,date_end)"/>
|
||||
<field name="date_end"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
</group>
|
||||
</group>
|
||||
<notebook>
|
||||
<page string="Email Configuration" groups="base.group_no_one">
|
||||
<group>
|
||||
|
@ -284,13 +282,13 @@
|
|||
<t t-if="record.register_avail.raw_value != 0">
|
||||
<t t-if="!record.is_subscribed.raw_value">
|
||||
<input t-att-id="record.id.raw_value" type="text" name="subscribe" class="no_of_seats" value="1" onchange="document.getElementById('btn_sub' +this.id).setAttribute('data-context',JSON.stringify({'ticket':this.value}))"/>
|
||||
<button t-att-id="'btn_sub'+record.id.raw_value" type="object" name="subscribe_to_event" class="oe_mail_button_follow">
|
||||
<button t-att-id="'btn_sub'+record.id.raw_value" type="object" name="subscribe_to_event" class="oe_subscribe_button">
|
||||
<span >Subscribe</span>
|
||||
</button>
|
||||
</t>
|
||||
</t>
|
||||
<t t-if="record.is_subscribed.raw_value">
|
||||
<button type="object" name="unsubscribe_to_event" class="oe_mail_button_unfollow">
|
||||
<button type="object" name="unsubscribe_to_event" class="oe_unsubscribe_button ">
|
||||
<span>Subscribed</span>
|
||||
<span class="unsubscribe">Unsubscribe</span>
|
||||
</button>
|
||||
|
|
|
@ -23,16 +23,16 @@ from osv import fields, osv
|
|||
import tools
|
||||
|
||||
class report_event_registration(osv.osv):
|
||||
|
||||
_name = "report.event.registration"
|
||||
_description = "Events Analysis"
|
||||
_auto = False
|
||||
_columns = {
|
||||
'event_date': fields.char('Event Start Date', size=64, readonly=True),
|
||||
'year': fields.char('Year', size=4, readonly=True),
|
||||
'month': fields.selection([('01','January'), ('02','February'), ('03','March'), ('04','April'),
|
||||
('05','May'), ('06','June'), ('07','July'), ('08','August'), ('09','September'),
|
||||
('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True),
|
||||
'month': fields.selection([
|
||||
('01','January'), ('02','February'), ('03','March'), ('04','April'),
|
||||
('05','May'), ('06','June'), ('07','July'), ('08','August'),
|
||||
('09','September'), ('10','October'), ('11','November'), ('12','December')], 'Month',readonly=True),
|
||||
'event_id': fields.many2one('event.event', 'Event', required=True),
|
||||
'draft_state': fields.integer(' # No of Draft Registrations', size=20),
|
||||
'confirm_state': fields.integer(' # No of Confirmed Registrations', size=20),
|
||||
|
@ -48,17 +48,18 @@ class report_event_registration(osv.osv):
|
|||
'company_id': fields.many2one('res.company', 'Company', readonly=True),
|
||||
}
|
||||
_order = 'event_date desc'
|
||||
|
||||
def init(self, cr):
|
||||
"""
|
||||
initialize the sql view for the event registration
|
||||
cr -- the cursor
|
||||
Initialize the sql view for the event registration
|
||||
"""
|
||||
tools.drop_view_if_exists(cr, 'report_event_registration')
|
||||
cr.execute("""
|
||||
CREATE OR REPLACE view report_event_registration AS (
|
||||
SELECT
|
||||
event_id,
|
||||
r.id,
|
||||
|
||||
# TOFIX this request won't select events that have no registration
|
||||
cr.execute(""" CREATE VIEW report_event_registration AS (
|
||||
SELECT
|
||||
e.id::char || '/' || coalesce(r.id::char,'') AS id,
|
||||
e.id AS event_id,
|
||||
e.user_id AS user_id,
|
||||
r.user_id AS user_id_registration,
|
||||
r.name AS name_registration,
|
||||
|
@ -72,23 +73,21 @@ class report_event_registration(osv.osv):
|
|||
CASE WHEN r.state IN ('open','done') THEN r.nb_register ELSE 0 END AS confirm_state,
|
||||
e.type AS event_type,
|
||||
e.register_max AS register_max,
|
||||
e.state AS event_state,
|
||||
r.state AS registration_state
|
||||
FROM
|
||||
e.state AS event_state,
|
||||
r.state AS registration_state
|
||||
FROM
|
||||
event_event e
|
||||
LEFT JOIN event_registration r ON (e.id=r.event_id)
|
||||
|
||||
LEFT JOIN
|
||||
event_registration r ON (e.id=r.event_id)
|
||||
|
||||
GROUP BY
|
||||
GROUP BY
|
||||
event_id,
|
||||
user_id_registration,
|
||||
e.id,
|
||||
r.id,
|
||||
registration_state,
|
||||
r.nb_register,
|
||||
event_type, e.id, e.date_begin, e.main_speaker_id,
|
||||
e.register_max,event_id, e.user_id,e.company_id,
|
||||
event_type,
|
||||
e.id,
|
||||
e.date_begin,
|
||||
e.user_id,
|
||||
event_state,
|
||||
e.company_id,
|
||||
|
@ -97,9 +96,8 @@ class report_event_registration(osv.osv):
|
|||
month,
|
||||
e.register_max,
|
||||
name_registration
|
||||
|
||||
)
|
||||
""")
|
||||
)
|
||||
""")
|
||||
|
||||
report_event_registration()
|
||||
|
||||
|
|
|
@ -1,13 +1,13 @@
|
|||
<?xml version="1.0"?>
|
||||
<openerp>
|
||||
<data>
|
||||
<data>
|
||||
|
||||
<!-- report , event on registration... start -->
|
||||
<!-- Report, event on registration -->
|
||||
<record model="ir.ui.view" id="report_event_registration_tree">
|
||||
<field name="name">report.event.registration.tree</field>
|
||||
<field name="model">report.event.registration</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree colors="blue:event_state == 'draft';black:event_state == 'confirm';gray:event_state in('done','cancel')" string="Events Analysis">
|
||||
<tree colors="blue:event_state == 'draft';black:event_state == 'confirm';gray:event_state in('done','cancel')" create="false" string="Events Analysis">
|
||||
<field name="event_date" invisible="1"/>
|
||||
<field name="user_id" invisible="1"/>
|
||||
<field name="speaker_id" invisible="1"/>
|
||||
|
@ -28,7 +28,6 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
<record model ="ir.ui.view" id="report_event_registration_graph">
|
||||
<field name="name">report.event.registration.graph</field>
|
||||
<field name="model">report.event.registration</field>
|
||||
|
@ -42,8 +41,7 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<!-- Event on Registration search view -->
|
||||
|
||||
<!-- Event on Registration search view -->
|
||||
<record model="ir.ui.view" id="view_report_event_registration_search">
|
||||
<field name="name">report.event.registration.search</field>
|
||||
<field name="model">report.event.registration</field>
|
||||
|
@ -82,28 +80,28 @@
|
|||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window" id="action_report_event_registration">
|
||||
<record model="ir.actions.act_window" id="action_report_event_registration">
|
||||
<field name="name">Events Analysis</field>
|
||||
<field name="res_model">report.event.registration</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="search_view_id" ref="view_report_event_registration_search"/>
|
||||
<field name="context">{"search_default_year":1,"search_default_this_month":1,"search_default_365day":1, "search_default_invoiced":1, "search_default_event":1, 'group_by_no_leaf':1, 'group_by':[]}</field>
|
||||
<field name="context">{"search_default_year":1,"search_default_this_month":1,"search_default_365day":1, "search_default_invoiced":1, "search_default_event":1, "group_by_no_leaf":1, "group_by":[]}</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_report_event_registration_tree">
|
||||
<record model="ir.actions.act_window.view" id="action_report_event_registration_tree">
|
||||
<field name="sequence" eval="1"/>
|
||||
<field name="view_mode">tree</field>
|
||||
<field name="view_id" ref="report_event_registration_tree"/>
|
||||
<field name="act_window_id" ref="action_report_event_registration"/>
|
||||
</record>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_report_event_registration_graph">
|
||||
<record model="ir.actions.act_window.view" id="action_report_event_registration_graph">
|
||||
<field name="sequence" eval="2"/>
|
||||
<field name="view_mode">graph</field>
|
||||
<field name="view_id" ref="report_event_registration_graph"/>
|
||||
<field name="act_window_id" ref="action_report_event_registration"/>
|
||||
</record>
|
||||
</record>
|
||||
|
||||
<menuitem parent="base.menu_reporting" id="menu_reporting_events" sequence="30" groups="event.group_event_manager" name="Events"/>
|
||||
<menuitem parent="menu_reporting_events" action="action_report_event_registration" id="menu_report_event_registration" sequence="3" groups="event.group_event_manager"/>
|
||||
|
|
|
@ -42,4 +42,10 @@
|
|||
width:256px;
|
||||
border: 1px solid #eeeeee;
|
||||
}
|
||||
.oe_unsubscribe, .oe_unsubscribe_button:hover span {
|
||||
display: none;
|
||||
}
|
||||
.oe_unsubscribe_button:hover .oe_unsubscribe {
|
||||
display: inline;
|
||||
}
|
||||
|
||||
|
|
|
@ -6,10 +6,10 @@
|
|||
<field name="model">product.product</field>
|
||||
<field name="inherit_id" ref="product.product_normal_form_view" />
|
||||
<field name="arch" type="xml">
|
||||
<field name="purchase_ok" position="before">
|
||||
<div name="options" position="inside">
|
||||
<field name="event_ok" on_change="onchange_event_ok(event_ok, context)"/>
|
||||
<label for="event_ok"/>
|
||||
</field>
|
||||
</div>
|
||||
<field name='default_code' position='before'>
|
||||
<field name="event_type_id" attrs="{'readonly': [('event_ok', '=', False)]}"/>
|
||||
</field>
|
||||
|
|
|
@ -27,7 +27,6 @@
|
|||
'category': 'Tools',
|
||||
'installable': True,
|
||||
'auto_install': False,
|
||||
'web': True,
|
||||
'js': ['static/src/js/gdocs.js'],
|
||||
'data': [
|
||||
'security/ir.model.access.csv',
|
||||
|
|
|
@ -26,8 +26,11 @@ try:
|
|||
from gdata.client import RequestError
|
||||
from gdata.docs.service import DOCUMENT_LABEL
|
||||
import gdata.auth
|
||||
from gdata.docs.data import Resource
|
||||
except ImportError:
|
||||
raise osv.except_osv(_('Google Docs Error!'), _('Please install gdata-python-client from http://code.google.com/p/gdata-python-client/downloads/list.'))
|
||||
import logging
|
||||
_logger = logging.getLogger(__name__)
|
||||
_logger.warning("Please install latest gdata-python-client from http://code.google.com/p/gdata-python-client/downloads/list")
|
||||
|
||||
class google_docs_ir_attachment(osv.osv):
|
||||
_inherit = 'ir.attachment'
|
||||
|
|
|
@ -8,9 +8,10 @@
|
|||
<field name="name">google_docs.config.tree</field>
|
||||
<field name="model">google.docs.config</field>
|
||||
<field name="arch" type="xml">
|
||||
<group name="default_filters" position="inside">
|
||||
<tree string="Google Docs Configuration">
|
||||
<field name="model_id"/>
|
||||
</group>
|
||||
<field name="name_template"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
@ -18,11 +19,25 @@
|
|||
<field name="name">google_docs.config.form</field>
|
||||
<field name="model">google.docs.config</field>
|
||||
<field name="arch" type="xml">
|
||||
<group colspan='4'>
|
||||
<field name="model_id"/>
|
||||
<field name='gdocs_resource_id'/>
|
||||
<field name='name_template'/>
|
||||
</group>
|
||||
<form string="Google Docs Configuration" version="7.0">
|
||||
<group>
|
||||
<field name="model_id"/>
|
||||
<label for='gdocs_resource_id'/>
|
||||
<div>
|
||||
<field name='gdocs_resource_id'/>
|
||||
<p class="oe_grey">
|
||||
This is the id of the template document, on google side. You can find it thanks to its URL:
|
||||
<ul>
|
||||
<li>for a text document with url like `https://docs.google.com/a/openerp.com/document/d/123456789/edit`, the ID is `document:123456789`</li>
|
||||
<li>for a spreadsheet document with url like `https://docs.google.com/a/openerp.com/spreadsheet/ccc?key=123456789#gid=0`, the ID is `spreadsheet:123456789`</li>
|
||||
<li>for a presentation (slide show) document with url like `https://docs.google.com/a/openerp.com/presentation/d/123456789/edit#slide=id.p`, the ID is `presentation:123456789`</li>
|
||||
<li>for a drawing document with url like `https://docs.google.com/a/openerp.com/drawings/d/123456789/edit`, the ID is `drawings:123456789`</li>
|
||||
</ul>
|
||||
</p>
|
||||
</div>
|
||||
<field name='name_template'/>
|
||||
</group>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@ var _t = instance.web._t;
|
|||
var form = self.getParent();
|
||||
form.sidebar_context().then(function (context) {
|
||||
var ds = new instance.web.DataSet(this, 'ir.attachment', context);
|
||||
ds.call('google_doc_get', [form.dataset.model, [form.datarecord.id], context], function(r) {
|
||||
ds.call('google_doc_get', [form.dataset.model, [form.datarecord.id], context]).then(function(r) {
|
||||
if (r == 'False') {
|
||||
var params = {
|
||||
error: response,
|
||||
|
@ -35,7 +35,7 @@ var _t = instance.web._t;
|
|||
}
|
||||
form.reload();
|
||||
});
|
||||
})
|
||||
});
|
||||
}
|
||||
})
|
||||
}
|
||||
});
|
||||
};
|
||||
|
|
|
@ -36,9 +36,11 @@
|
|||
<page string="Public Information">
|
||||
<group>
|
||||
<group string="Contact Information">
|
||||
<field name="address_id" on_change="onchange_address_id(address_id)" context="{'show_address': 1}" options='{"always_reload": True, "highlight_first_line": True}'/>
|
||||
<field name="work_email" widget="email"/>
|
||||
<field name="work_phone"/>
|
||||
<field name="mobile_phone"/>
|
||||
<field name="work_location"/>
|
||||
</group>
|
||||
<group string="Position">
|
||||
<field name="department_id" on_change="onchange_department_id(department_id)"/>
|
||||
|
@ -49,7 +51,6 @@
|
|||
<group>
|
||||
<field name="company_id" groups="base.group_multi_company" on_change="onchange_company(company_id)"/>
|
||||
<field name="user_id" on_change="onchange_user(user_id)" string="Related User"/>
|
||||
<field name="address_id" on_change="onchange_address_id(address_id)" context="{'show_address': 1}" options='{"always_reload": True, "highlight_first_line": True}'/>
|
||||
</group>
|
||||
</group>
|
||||
<field name="notes" placeholder="Other Information ..." colspan="4"/>
|
||||
|
@ -334,13 +335,10 @@
|
|||
<field name="state" widget="statusbar" statusbar_visible="recruit,open"/>
|
||||
</header>
|
||||
<sheet>
|
||||
<label for="name" class="oe_edit_only"/>
|
||||
<h1>
|
||||
<field name="name" class="oe_inline"/>
|
||||
<label class="oe_inline" string="(" attrs="{'invisible': [('department_id', '=', False)]}"/>
|
||||
<field name="department_id" class="oe_inline"/>
|
||||
<label class="oe_inline" string=")" attrs="{'invisible': [('department_id', '=', False)]}"/>
|
||||
</h1>
|
||||
<div class="oe_title">
|
||||
<label for="name" class="oe_edit_only"/>
|
||||
<h1><field name="name" class="oe_inline"/></h1>
|
||||
</div>
|
||||
<group>
|
||||
<group>
|
||||
<field name="no_of_employee" groups="base.group_user"/>
|
||||
|
@ -349,7 +347,7 @@
|
|||
</group>
|
||||
<group>
|
||||
<field name="company_id" widget="selection" groups="base.group_multi_company"/>
|
||||
</group>
|
||||
<field name="department_id"/> </group>
|
||||
</group>
|
||||
<div>
|
||||
<label for="description"/>
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-02-08 01:37+0100\n"
|
||||
"PO-Revision-Date: 2012-05-10 17:47+0000\n"
|
||||
"Last-Translator: Raphael Collet (OpenERP) <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-10-16 23:42+0000\n"
|
||||
"Last-Translator: Syllas F. de O. Neto <syllasneto@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 06:24+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"X-Launchpad-Export-Date: 2012-10-17 04:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16152)\n"
|
||||
|
||||
#. module: hr
|
||||
#: model:process.node,name:hr.process_node_openerpuser0
|
||||
|
@ -24,7 +24,7 @@ msgstr "Usuário Openerp"
|
|||
#. module: hr
|
||||
#: view:hr.job:0 field:hr.job,requirements:0
|
||||
msgid "Requirements"
|
||||
msgstr "Requisitos"
|
||||
msgstr "Pré-requisitos"
|
||||
|
||||
#. module: hr
|
||||
#: constraint:hr.department:0
|
||||
|
@ -197,6 +197,7 @@ msgstr "Feminino"
|
|||
msgid ""
|
||||
"Expected number of employees for this job position after new recruitment."
|
||||
msgstr ""
|
||||
"Número de empregados para esta posição após o novo processo de contratação."
|
||||
|
||||
#. module: hr
|
||||
#: model:ir.ui.menu,name:hr.menu_open_view_attendance_reason_new_config
|
||||
|
@ -289,7 +290,7 @@ msgstr "Categorias"
|
|||
#. module: hr
|
||||
#: field:hr.job,expected_employees:0
|
||||
msgid "Total Employees"
|
||||
msgstr ""
|
||||
msgstr "Total de Empregados"
|
||||
|
||||
#. module: hr
|
||||
#: selection:hr.employee,marital:0
|
||||
|
@ -462,7 +463,7 @@ msgstr "Erro! Você não pode criar hierarquia recursiva de funcionários."
|
|||
#. module: hr
|
||||
#: model:ir.actions.act_window,name:hr.action2
|
||||
msgid "Subordinate Hierarchy"
|
||||
msgstr ""
|
||||
msgstr "Subordinação hierárquica"
|
||||
|
||||
#. module: hr
|
||||
#: model:ir.actions.act_window,help:hr.view_department_form_installer
|
||||
|
@ -712,12 +713,12 @@ msgstr "Subordinados"
|
|||
#. module: hr
|
||||
#: field:hr.job,no_of_employee:0
|
||||
msgid "Number of employees currently occupying this job position."
|
||||
msgstr ""
|
||||
msgstr "Número de empregados atualmente ocupando esta posição"
|
||||
|
||||
#. module: hr
|
||||
#: field:hr.job,no_of_recruitment:0
|
||||
msgid "Number of new employees you expect to recruit."
|
||||
msgstr ""
|
||||
msgstr "Número de novos empregados a serem contratados."
|
||||
|
||||
#~ msgid "Sunday"
|
||||
#~ msgstr "Domingo"
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-02-08 01:37+0100\n"
|
||||
"PO-Revision-Date: 2012-02-13 11:31+0000\n"
|
||||
"Last-Translator: Mauricio Pacheco de Andrade <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-10-17 00:10+0000\n"
|
||||
"Last-Translator: Syllas F. de O. Neto <syllasneto@gmail.com>\n"
|
||||
"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 06:30+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"X-Launchpad-Export-Date: 2012-10-17 04:36+0000\n"
|
||||
"X-Generator: Launchpad (build 16152)\n"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: help:hr_evaluation.plan.phase,send_anonymous_manager:0
|
||||
|
@ -317,7 +317,7 @@ msgstr "Avaliações feitas no mês passado"
|
|||
#. module: hr_evaluation
|
||||
#: model:ir.model,name:hr_evaluation.model_mail_compose_message
|
||||
msgid "Email composition wizard"
|
||||
msgstr ""
|
||||
msgstr "Assistente para compor Email"
|
||||
|
||||
#. module: hr_evaluation
|
||||
#: view:hr.evaluation.report:0
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<field name="name">hr.evaluation.report.tree</field>
|
||||
<field name="model">hr.evaluation.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree colors="blue:state == 'draft';black:state in ('wait','progress');gray:state in('done','cancel')"
|
||||
<tree colors="blue:state == 'draft';black:state in ('wait','progress');gray:state in('done','cancel')" create="false"
|
||||
string="Appraisal Analysis">
|
||||
<field name="create_date" invisible="1"/>
|
||||
<field name="employee_id" invisible="1"/>
|
||||
|
|
|
@ -243,7 +243,7 @@ class product_product(osv.osv):
|
|||
data_obj = self.pool.get('ir.model.data')
|
||||
cat_id = data_obj._get_id(cr, uid, 'hr_expense', 'cat_expense')
|
||||
categ_id = data_obj.browse(cr, uid, cat_id).res_id
|
||||
res = {'value' : {'type':'service','procure_method':'make_to_stock','supply_method':'buy','purchase_ok':True,'sale_ok' :False,'categ_id':categ_id }}
|
||||
res = {'value' : {'type':'service','sale_ok' :False,'categ_id':categ_id }}
|
||||
return res
|
||||
|
||||
product_product()
|
||||
|
|
|
@ -196,10 +196,10 @@
|
|||
<field name="model">product.product</field>
|
||||
<field name="inherit_id" ref="product.product_normal_form_view"/>
|
||||
<field name="arch" type="xml">
|
||||
<field name="purchase_ok" position="before">
|
||||
<div name="options" position="inside">
|
||||
<field name="hr_expense_ok" on_change="on_change_hr_expense_ok(hr_expense_ok)"/>
|
||||
<label for="hr_expense_ok"/>
|
||||
</field>
|
||||
</div>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
|
|
@ -231,7 +231,7 @@
|
|||
<para style="terp_default_Right_9">[[ formatLang(line.unit_quantity) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ formatLang(line.total_amount) ]] [[ o.currency_id.symbol ]] </para>
|
||||
<para style="terp_default_Right_9">[[ formatLang(line.total_amount, currency_obj=o.currency_id) ]] </para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
|
@ -277,7 +277,7 @@
|
|||
<para style="terp_tblheader_Details">Total:</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(o.amount) ]] [[ o.currency_id.symbol ]]</para>
|
||||
<para style="terp_tblheader_Details_Right">[[ formatLang(o.amount, currency_obj=o.currency_id) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
|
@ -6,7 +6,7 @@
|
|||
<field name="name">hr.expense.report.tree</field>
|
||||
<field name="model">hr.expense.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree colors="blue:state == 'draft';black:state in ('confirm','accepted','done');gray:state == 'cancelled'" string="Expenses Analysis">
|
||||
<tree colors="blue:state == 'draft';black:state in ('confirm','accepted','done');gray:state == 'cancelled'" create="false" string="Expenses Analysis">
|
||||
<field name="employee_id" invisible="1"/>
|
||||
<field name="user_id" invisible="1"/>
|
||||
<field name="year" invisible="1"/>
|
||||
|
|
|
@ -9,6 +9,7 @@ access_product_template_hr_expense_user,product.template.hr.expense.user,product
|
|||
access_product_uom_hr_expense_user,product.uom.hr.expense.user,product.model_product_uom,base.group_hr_user,1,1,1,1
|
||||
access_product_price_type_user,product.price.type.user,product.model_product_price_type,base.group_hr_user,1,1,1,1
|
||||
access_account_journal_user,account.journal.user,account.model_account_journal,base.group_hr_user,1,1,1,1
|
||||
access_account_journal_employee,account.journal.employee,account.model_account_journal,base.group_user,1,0,0,0
|
||||
access_account_invoice_user,account.invoice.user,account.model_account_invoice,base.group_hr_user,1,1,1,1
|
||||
access_account_invoice_line_user,account.invoice.line.user,account.model_account_invoice_line,base.group_hr_user,1,1,1,1
|
||||
access_account_analytic_journal_user,account.ianalytic.journal.user,account.model_account_analytic_journal,base.group_hr_user,1,1,1,1
|
||||
|
|
|
|
@ -353,6 +353,32 @@
|
|||
|
||||
<menuitem name="My Allocation Requests" parent="menu_open_ask_holidays" id="menu_open_allocation_holidays" action="open_allocation_holidays"/>
|
||||
|
||||
<record model="ir.actions.act_window" id="request_approve_allocation">
|
||||
<field name="name">Allocation Requests to Approve</field>
|
||||
<field name="res_model">hr.holidays</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="context">{'default_type': 'add', 'search_default_approve':1}</field>
|
||||
<field name="domain">[('type','=','add')]</field>
|
||||
<field name="view_id" ref="allocation_leave_new"/>
|
||||
<field name="search_view_id" ref="view_hr_holidays_filter"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_request_approve_allocation_tree">
|
||||
<field name="sequence" eval="1"/>
|
||||
<field name="view_mode">tree</field>
|
||||
<field name="view_id" ref="view_holiday_allocation_tree"/>
|
||||
<field name="act_window_id" ref="request_approve_allocation"/>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window.view" id="action_request_approve_allocation_form">
|
||||
<field name="sequence" eval="2"/>
|
||||
<field name="view_mode">form</field>
|
||||
<field name="view_id" ref="allocation_leave_new"/>
|
||||
<field name="act_window_id" ref="request_approve_allocation"/>
|
||||
</record>
|
||||
|
||||
<menuitem parent="menu_open_ask_holidays" id="menu_request_approve_allocation" action="request_approve_allocation" groups="base.group_hr_manager"/>
|
||||
|
||||
<record model="ir.actions.act_window" id="open_company_allocation">
|
||||
<field name="name">Leaves Summary</field>
|
||||
<field name="res_model">hr.holidays</field>
|
||||
|
|
|
@ -8,14 +8,14 @@ msgstr ""
|
|||
"Project-Id-Version: openobject-addons\n"
|
||||
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
|
||||
"POT-Creation-Date: 2012-02-08 01:37+0100\n"
|
||||
"PO-Revision-Date: 2012-02-19 15:06+0000\n"
|
||||
"Last-Translator: Gustavo T <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-10-17 00:16+0000\n"
|
||||
"Last-Translator: Syllas F. de O. Neto <syllasneto@gmail.com>\n"
|
||||
"Language-Team: Brazilian Portuguese <pt_BR@li.org>\n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 06:23+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"X-Launchpad-Export-Date: 2012-10-17 04:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16152)\n"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: selection:hr.holidays.status,color_name:0
|
||||
|
@ -28,7 +28,8 @@ msgid "Allocation Type"
|
|||
msgstr "Tipo de Alocação"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: selection:hr.employee,current_leave_state:0 selection:hr.holidays,state:0
|
||||
#: selection:hr.employee,current_leave_state:0
|
||||
#: selection:hr.holidays,state:0
|
||||
msgid "Waiting Second Approval"
|
||||
msgstr "Aguardando Segunda Aprovação"
|
||||
|
||||
|
@ -53,7 +54,8 @@ msgid "Allocation Mode"
|
|||
msgstr "Modo de Alocação"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays:0 field:hr.holidays,department_id:0
|
||||
#: view:hr.holidays:0
|
||||
#: field:hr.holidays,department_id:0
|
||||
msgid "Department"
|
||||
msgstr "Departamento"
|
||||
|
||||
|
@ -63,7 +65,8 @@ msgid "Requests Approve"
|
|||
msgstr "Aprovar Solicitações"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: selection:hr.employee,current_leave_state:0 selection:hr.holidays,state:0
|
||||
#: selection:hr.employee,current_leave_state:0
|
||||
#: selection:hr.holidays,state:0
|
||||
msgid "Refused"
|
||||
msgstr "Recusado"
|
||||
|
||||
|
@ -140,7 +143,8 @@ msgid "Summary Of Leaves"
|
|||
msgstr "Resumo das Folgas"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: selection:hr.employee,current_leave_state:0 view:hr.holidays:0
|
||||
#: selection:hr.employee,current_leave_state:0
|
||||
#: view:hr.holidays:0
|
||||
#: selection:hr.holidays,state:0
|
||||
msgid "Approved"
|
||||
msgstr "Aprovado"
|
||||
|
@ -204,7 +208,8 @@ msgid "Leaves by Department"
|
|||
msgstr "Folgas por Departamento"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: selection:hr.employee,current_leave_state:0 selection:hr.holidays,state:0
|
||||
#: selection:hr.employee,current_leave_state:0
|
||||
#: selection:hr.holidays,state:0
|
||||
msgid "Cancelled"
|
||||
msgstr "Cancelado"
|
||||
|
||||
|
@ -258,7 +263,8 @@ msgstr ""
|
|||
#. module: hr_holidays
|
||||
#: field:hr.holidays,holiday_status_id:0
|
||||
#: field:hr.holidays.remaining.leaves.user,leave_type:0
|
||||
#: view:hr.holidays.status:0 field:hr.holidays.status,name:0
|
||||
#: view:hr.holidays.status:0
|
||||
#: field:hr.holidays.status,name:0
|
||||
#: field:hr.holidays.summary.dept,holiday_type:0
|
||||
#: model:ir.actions.act_window,name:hr_holidays.open_view_holiday_status
|
||||
#: model:ir.model,name:hr_holidays.model_hr_holidays_status
|
||||
|
@ -313,7 +319,8 @@ msgid "Remaining Leaves"
|
|||
msgstr "Folhas Restantes"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays:0 field:hr.holidays,state:0
|
||||
#: view:hr.holidays:0
|
||||
#: field:hr.holidays,state:0
|
||||
msgid "State"
|
||||
msgstr "Status"
|
||||
|
||||
|
@ -323,14 +330,17 @@ msgid "Total holidays by type"
|
|||
msgstr "Total de Folgas por tipo"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.employee:0 view:hr.holidays:0 field:hr.holidays,employee_id:0
|
||||
#: view:hr.employee:0
|
||||
#: view:hr.holidays:0
|
||||
#: field:hr.holidays,employee_id:0
|
||||
#: field:hr.holidays.remaining.leaves.user,name:0
|
||||
#: model:ir.model,name:hr_holidays.model_hr_employee
|
||||
msgid "Employee"
|
||||
msgstr "Funcionário"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: selection:hr.employee,current_leave_state:0 selection:hr.holidays,state:0
|
||||
#: selection:hr.employee,current_leave_state:0
|
||||
#: selection:hr.holidays,state:0
|
||||
msgid "New"
|
||||
msgstr "Novo"
|
||||
|
||||
|
@ -371,7 +381,8 @@ msgid "Allocation for %s"
|
|||
msgstr "Alocação para %s"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays:0 field:hr.holidays,number_of_days:0
|
||||
#: view:hr.holidays:0
|
||||
#: field:hr.holidays,number_of_days:0
|
||||
#: field:hr.holidays,number_of_days_temp:0
|
||||
msgid "Number of Days"
|
||||
msgstr "Número de Dias"
|
||||
|
@ -413,9 +424,12 @@ msgid ""
|
|||
"When selected, the Allocation/Leave Requests for this type require a second "
|
||||
"validation to be approved."
|
||||
msgstr ""
|
||||
"Quando selecionado, a Locação/Requerimento de Saída deste tipo necessita de "
|
||||
"uma segunda aprovação."
|
||||
|
||||
#. module: hr_holidays
|
||||
#: selection:hr.employee,current_leave_state:0 selection:hr.holidays,state:0
|
||||
#: selection:hr.employee,current_leave_state:0
|
||||
#: selection:hr.holidays,state:0
|
||||
msgid "Waiting Approval"
|
||||
msgstr "Aguardando Aprovação"
|
||||
|
||||
|
@ -449,6 +463,7 @@ msgid "Lavender"
|
|||
msgstr "Lavanda"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: xsl:holidays.summary:0
|
||||
#: view:hr.holidays:0
|
||||
msgid "Month"
|
||||
msgstr "Mês"
|
||||
|
@ -472,7 +487,8 @@ msgid "Employee's Holidays"
|
|||
msgstr "Férias de Funcionários"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays:0 field:hr.holidays,category_id:0
|
||||
#: view:hr.holidays:0
|
||||
#: field:hr.holidays,category_id:0
|
||||
msgid "Category"
|
||||
msgstr "Categoria"
|
||||
|
||||
|
@ -517,7 +533,8 @@ msgid "Holiday"
|
|||
msgstr "Feriado"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: field:hr.holidays,case_id:0 field:hr.holidays.status,categ_id:0
|
||||
#: field:hr.holidays,case_id:0
|
||||
#: field:hr.holidays.status,categ_id:0
|
||||
msgid "Meeting"
|
||||
msgstr "Reunião"
|
||||
|
||||
|
@ -559,7 +576,8 @@ msgid "Error ! You cannot create recursive Hierarchy of Employees."
|
|||
msgstr "Erro! Você não pode criar uma Hierarquia de Funcionários recursiva."
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.employee:0 field:hr.employee,remaining_leaves:0
|
||||
#: view:hr.employee:0
|
||||
#: field:hr.employee,remaining_leaves:0
|
||||
msgid "Remaining Legal Leaves"
|
||||
msgstr "Folgas Restantes"
|
||||
|
||||
|
@ -641,7 +659,8 @@ msgid "Compensatory Days"
|
|||
msgstr "Dias Compensatórios"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays:0 field:hr.holidays,notes:0
|
||||
#: view:hr.holidays:0
|
||||
#: field:hr.holidays,notes:0
|
||||
msgid "Reasons"
|
||||
msgstr "Motivos"
|
||||
|
||||
|
@ -652,7 +671,8 @@ msgid "Leaves Analysis"
|
|||
msgstr "Análise de Folgas"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays.summary.dept:0 view:hr.holidays.summary.employee:0
|
||||
#: view:hr.holidays.summary.dept:0
|
||||
#: view:hr.holidays.summary.employee:0
|
||||
msgid "Cancel"
|
||||
msgstr "Cancelar"
|
||||
|
||||
|
@ -666,13 +686,15 @@ msgstr ""
|
|||
"departamento"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays:0 selection:hr.holidays.summary.dept,holiday_type:0
|
||||
#: view:hr.holidays:0
|
||||
#: selection:hr.holidays.summary.dept,holiday_type:0
|
||||
#: selection:hr.holidays.summary.employee,holiday_type:0
|
||||
msgid "Validated"
|
||||
msgstr "Validado"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays:0 selection:hr.holidays,type:0
|
||||
#: view:hr.holidays:0
|
||||
#: selection:hr.holidays,type:0
|
||||
msgid "Allocation Request"
|
||||
msgstr "Solicitação de Alocação"
|
||||
|
||||
|
@ -688,7 +710,8 @@ msgid "Apply Double Validation"
|
|||
msgstr "Aplicar Validação Dupla"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays.summary.dept:0 view:hr.holidays.summary.employee:0
|
||||
#: view:hr.holidays.summary.dept:0
|
||||
#: view:hr.holidays.summary.employee:0
|
||||
msgid "Print"
|
||||
msgstr "Imprimir"
|
||||
|
||||
|
@ -709,7 +732,8 @@ msgid "By Employee Category"
|
|||
msgstr "Por Categoria de Funcionário"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays:0 selection:hr.holidays,type:0
|
||||
#: view:hr.holidays:0
|
||||
#: selection:hr.holidays,type:0
|
||||
msgid "Leave Request"
|
||||
msgstr "Pedido de Folga"
|
||||
|
||||
|
@ -785,6 +809,8 @@ msgid ""
|
|||
"If you select this checkbox, the system allows the employees to take more "
|
||||
"leaves than the available ones for this type."
|
||||
msgstr ""
|
||||
"Caso esta caixa seja selecionada, o sistema autoriza os empregados deste "
|
||||
"tipo a tirarem mais licenças do que as disponíveis para este tipo."
|
||||
|
||||
#. module: hr_holidays
|
||||
#: help:hr.holidays.status,leaves_taken:0
|
||||
|
@ -839,7 +865,8 @@ msgid "Approve"
|
|||
msgstr "Aprovar"
|
||||
|
||||
#. module: hr_holidays
|
||||
#: view:hr.holidays:0 field:hr.holidays,date_from:0
|
||||
#: view:hr.holidays:0
|
||||
#: field:hr.holidays,date_from:0
|
||||
msgid "Start Date"
|
||||
msgstr "Data Inicial"
|
||||
|
||||
|
|
|
@ -206,7 +206,7 @@
|
|||
<para style="P2">[[ formatLang(r['amount']) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P3">[[ formatLang(r['total']) ]] [[o.company_id and o.company_id.currency_id.symbol or '']]</para>
|
||||
<para style="P3">[[ formatLang(r['total'], currency_obj = o.company_id and o.company_id.currency_id)]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
@ -222,7 +222,7 @@
|
|||
<para style="P15">Total:</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P11">[[ formatLang(sum_total()) ]] [[o.company_id and o.company_id.currency_id.symbol or '']]</para>
|
||||
<para style="P11">[[ formatLang(sum_total(), currency_obj = o.company_id and o.company_id.currency_id)]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
|
@ -197,7 +197,8 @@
|
|||
</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P4">[[o.employee_id.address_home_id and o.employee_id.address_home_id.name or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.street or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.street2 or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.zip or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.city or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.state_id and o.employee_id.address_home_id.state_id.name or '' ]] [[o.employee_id.address_home_id and o.employee_id.address_home_id.country_id and o.employee_id.address_home_id.country_id.name or '' ]]</para>
|
||||
<para style="P4">[[o.employee_id.address_home_id and o.employee_id.address_home_id.name or '' ]]
|
||||
[[o.employee_id.address_home_id and display_address(o.employee_id.address_home_id)]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
@ -293,7 +294,7 @@
|
|||
<para style="P4">[[ formatLang(p.amount) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P5">[[ formatLang(p.total) ]] [[o.company_id and o.company_id.currency_id.symbol or '']]</para>
|
||||
<para style="P5">[[ formatLang(p.total, currency_obj = o.company_id and o.company_id.currency_id)]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
|
@ -234,7 +234,8 @@
|
|||
</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P5">[[o.employee_id.address_home_id and o.employee_id.address_home_id.name or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.street or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.street2 or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.zip or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.city or '' ]],[[o.employee_id.address_home_id and o.employee_id.address_home_id.state_id and o.employee_id.address_home_id.state_id.name or '' ]] [[o.employee_id.address_home_id and o.employee_id.address_home_id.country_id and o.employee_id.address_home_id.country_id.name or '' ]]</para>
|
||||
<para style="P5">[[o.employee_id.address_home_id and o.employee_id.address_home_id.name or '' ]]
|
||||
[[o.employee_id.address_home_id and display_address(o.employee_id.address_home_id)]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
@ -334,7 +335,7 @@
|
|||
<para style="P17"><font face="Helvetica" color="white">[[ '..'*h['level'] ]]</font>[[ h['rule_category'] ]]<font face="Helvetica">[[ h['level']!=0 and ( setTag('para','para',{'style':'terp_default_8'})) or removeParentNode('font') ]]</font></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P6">[[ formatLang(h['total']) ]] [[o.company_id and o.company_id.currency_id.symbol or '']] <font face="Helvetica" size="8.0">[[ h['level']==0 and ( setTag('para','para',{'style':'terp_default_10'})) or removeParentNode('font') ]]</font></para>
|
||||
<para style="P6">[[ formatLang(h['total'], currency_obj = o.company_id and o.company_id.currency_id)]] <font face="Helvetica" size="8.0">[[ h['level']==0 and ( setTag('para','para',{'style':'terp_default_10'})) or removeParentNode('font') ]]</font></para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
@ -391,7 +392,7 @@
|
|||
<para style="P5">[[ formatLang(r['amount']) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P6">[[ formatLang(r['total']) ]] [[ o.company_id and o.company_id.currency_id.symbol or '']]<font face="Helvetica">[[ r.get('register_name', False) and ( setTag('para','para',{'style':'terp_default_10'})) or removeParentNode('font')]]</font></para>
|
||||
<para style="P6">[[ formatLang(r['total'], currency_obj = o.company_id and o.company_id.currency_id)]]<font face="Helvetica">[[ r.get('register_name', False) and ( setTag('para','para',{'style':'terp_default_10'})) or removeParentNode('font')]]</font></para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
|
@ -36,7 +36,7 @@ class hr_payslip(osv.osv):
|
|||
|
||||
_columns = {
|
||||
'period_id': fields.many2one('account.period', 'Force Period',states={'draft': [('readonly', False)]}, readonly=True, domain=[('state','<>','done')], help="Keep empty to use the period of the validation(Payslip) date."),
|
||||
'journal_id': fields.many2one('account.journal', 'Expense Journal',states={'draft': [('readonly', False)]}, readonly=True, required=True),
|
||||
'journal_id': fields.many2one('account.journal', 'Salary Journal',states={'draft': [('readonly', False)]}, readonly=True, required=True),
|
||||
'move_id': fields.many2one('account.move', 'Accounting Entry', readonly=True),
|
||||
}
|
||||
|
||||
|
@ -215,7 +215,7 @@ class hr_payslip_run(osv.osv):
|
|||
_inherit = 'hr.payslip.run'
|
||||
_description = 'Payslip Run'
|
||||
_columns = {
|
||||
'journal_id': fields.many2one('account.journal', 'Expense Journal', states={'draft': [('readonly', False)]}, readonly=True, required=True),
|
||||
'journal_id': fields.many2one('account.journal', 'Salary Journal', states={'draft': [('readonly', False)]}, readonly=True, required=True),
|
||||
}
|
||||
|
||||
def _get_default_journal(self, cr, uid, context=None):
|
||||
|
|
|
@ -297,7 +297,6 @@ class hr_applicant(base_stage, osv.Model):
|
|||
res['context'] = {
|
||||
'default_partner_ids': applicant.partner_id and [applicant.partner_id.id] or False,
|
||||
'default_user_id': uid,
|
||||
'default_state': 'open',
|
||||
'default_name': applicant.name,
|
||||
'default_categ_ids': category and [category.id] or False,
|
||||
}
|
||||
|
|
|
@ -289,7 +289,8 @@
|
|||
</div>
|
||||
<div class="oe_kanban_content" tooltip="kanban-tooltip">
|
||||
<div>
|
||||
<b><field name="name"/></b><br/>
|
||||
<t t-if="record.partner_name.raw_value"><b><field name="partner_name"/></b><br/></t>
|
||||
<i><field name="name"/></i><br/>
|
||||
<field name="job_id"/><br/>
|
||||
<t t-if="record.partner_mobile.raw_value">Mobile: <field name="partner_mobile"/><br/></t>
|
||||
<t t-if="record.title_action.raw_value"><field name="title_action"/><br/></t>
|
||||
|
@ -342,8 +343,8 @@
|
|||
attrs="{'invisible':[('survey_id','=',False)]}"/>
|
||||
</div>
|
||||
</field>
|
||||
<xpath expr="/form/sheet/h1" version="7.0" position="after">
|
||||
<div colspan="4" attrs="{'invisible': [('alias_domain', '=', False)]}">
|
||||
<xpath expr="//div[@class='oe_title']" version="7.0" position="after">
|
||||
<div attrs="{'invisible': [('alias_domain', '=', False)]}">
|
||||
<field name="alias_id" invisible="1" required="0"/>
|
||||
<label for="alias_name" class="oe_edit_only"/>
|
||||
<field name="alias_name" nolabel="1" class="oe_inline" attrs="{'required': [('alias_id', '!=', False)]}"/>@<field name="alias_domain" nolabel="1" class="oe_inline"/>
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
<field name="name">hr.recruitment.report.tree</field>
|
||||
<field name="model">hr.recruitment.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Recruitment Analysis">
|
||||
<tree string="Recruitment Analysis" create="false">
|
||||
<field name="date" invisible="1"/>
|
||||
<field name="user_id" invisible="1"/>
|
||||
<field name="job_id"/>
|
||||
|
|
|
@ -135,6 +135,8 @@ class account_analytic_line(osv.osv):
|
|||
def _default_general_account(self, cr, uid, context=None):
|
||||
proxy = self.pool.get('hr.employee')
|
||||
record_ids = proxy.search(cr, uid, [('user_id', '=', uid)], context=context)
|
||||
if not record_ids:
|
||||
raise osv.except_osv(_('Error!'), _('Please create an employee associated to this user.'))
|
||||
employee = proxy.browse(cr, uid, record_ids[0], context=context)
|
||||
if employee.product_id and employee.product_id.property_account_income:
|
||||
return employee.product_id.property_account_income.id
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 6.0dev\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2012-02-08 00:36+0000\n"
|
||||
"PO-Revision-Date: 2012-05-10 18:04+0000\n"
|
||||
"Last-Translator: Ferdinand-camptocamp <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-10-12 23:22+0000\n"
|
||||
"Last-Translator: Ferdinand @ Camptocamp <Unknown>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 06:20+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"X-Launchpad-Export-Date: 2012-10-14 04:39+0000\n"
|
||||
"X-Generator: Launchpad (build 16137)\n"
|
||||
|
||||
#. module: hr_timesheet_invoice
|
||||
#: view:report.timesheet.line:0
|
||||
|
@ -769,7 +769,7 @@ msgstr "Menge"
|
|||
#. module: hr_timesheet_invoice
|
||||
#: report:hr.timesheet.invoice.account.analytic.account.cost_ledger:0
|
||||
msgid "Date/Code"
|
||||
msgstr "Datum/Kurzbez."
|
||||
msgstr "Dat/Kurzb."
|
||||
|
||||
#. module: hr_timesheet_invoice
|
||||
#: field:report.timesheet.line,general_account_id:0
|
||||
|
|
|
@ -55,11 +55,11 @@
|
|||
<sheet>
|
||||
<label for="employee_id" class="oe_edit_only"/>
|
||||
<h1><field name="employee_id" on_change="onchange_employee_id(employee_id)"/></h1>
|
||||
<label for="date_from" class="oe_edit_only" string="Timesheet Period"/>
|
||||
<h2>From <field name="date_from"/> to <field name="date_to"/></h2>
|
||||
<group>
|
||||
<group>
|
||||
<field name="name"/>
|
||||
<label for="date_from" string="Timesheet Period"/>
|
||||
<div><field name="date_from"/> to <field name="date_to"/></div>
|
||||
<field name="name" invisible="1"/>
|
||||
<field name="department_id"/>
|
||||
<field name="company_id" groups="base.group_multi_company"/>
|
||||
</group>
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
<field name="name">hr.timesheet.report.tree</field>
|
||||
<field name="model">hr.timesheet.report</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Timesheet Analysis">
|
||||
<tree string="Timesheet Analysis" create="false">
|
||||
<field name="year" invisible="1"/>
|
||||
<field name="month" invisible="1"/>
|
||||
<field name="date" invisible="1"/>
|
||||
|
|
|
@ -35,7 +35,7 @@ class hr_timesheet_current_open(osv.osv_memory):
|
|||
|
||||
user_ids = self.pool.get('hr.employee').search(cr, uid, [('user_id','=',uid)], context=context)
|
||||
if not len(user_ids):
|
||||
raise osv.except_osv(_('Error!'), _('Please define employee for your user!'))
|
||||
raise osv.except_osv(_('Error!'), _('Please create an employee and associate it with this user.'))
|
||||
ids = ts.search(cr, uid, [('user_id','=',uid),('state','=','draft'),('date_from','<=',time.strftime('%Y-%m-%d')), ('date_to','>=',time.strftime('%Y-%m-%d'))], context=context)
|
||||
|
||||
if len(ids) > 1:
|
||||
|
|
|
@ -7,14 +7,14 @@ msgstr ""
|
|||
"Project-Id-Version: OpenERP Server 5.0.4\n"
|
||||
"Report-Msgid-Bugs-To: support@openerp.com\n"
|
||||
"POT-Creation-Date: 2011-12-23 09:56+0000\n"
|
||||
"PO-Revision-Date: 2011-03-10 23:28+0000\n"
|
||||
"Last-Translator: Emerson <Unknown>\n"
|
||||
"PO-Revision-Date: 2012-10-17 00:22+0000\n"
|
||||
"Last-Translator: Syllas F. de O. Neto <syllasneto@gmail.com>\n"
|
||||
"Language-Team: \n"
|
||||
"MIME-Version: 1.0\n"
|
||||
"Content-Type: text/plain; charset=UTF-8\n"
|
||||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"X-Launchpad-Export-Date: 2012-08-28 06:22+0000\n"
|
||||
"X-Generator: Launchpad (build 15864)\n"
|
||||
"X-Launchpad-Export-Date: 2012-10-17 04:35+0000\n"
|
||||
"X-Generator: Launchpad (build 16152)\n"
|
||||
|
||||
#. module: l10n_be
|
||||
#: field:partner.vat.intra,test_xml:0
|
||||
|
@ -25,6 +25,7 @@ msgstr "Test XML file"
|
|||
#: view:partner.vat.list_13:0
|
||||
msgid "You can remove customers which you do not want in exported xml file"
|
||||
msgstr ""
|
||||
"Você pode remover os clientes não quer incluir no arquivo xml a ser exportado"
|
||||
|
||||
#. module: l10n_be
|
||||
#: view:partner.vat_13:0
|
||||
|
@ -32,11 +33,13 @@ msgid ""
|
|||
"This wizard will create an XML file for VAT details and total invoiced "
|
||||
"amounts per partner."
|
||||
msgstr ""
|
||||
"Este assistente irá criar um arquivo XML para detalhamento de VAT e "
|
||||
"quantidades totais faturadas por parceiro."
|
||||
|
||||
#. module: l10n_be
|
||||
#: model:account.account.type,name:l10n_be.user_type_tiers_receiv
|
||||
msgid "Tiers - Recevable"
|
||||
msgstr ""
|
||||
msgstr "Níveis - Contas a Receber"
|
||||
|
||||
#. module: l10n_be
|
||||
#: code:addons/l10n_be/wizard/l10n_be_vat_intra.py:102
|
||||
|
@ -59,7 +62,7 @@ msgstr "Error! You can not create recursive companies."
|
|||
#. module: l10n_be
|
||||
#: model:account.account.type,name:l10n_be.user_type_tiers
|
||||
msgid "Tiers"
|
||||
msgstr ""
|
||||
msgstr "Níveis"
|
||||
|
||||
#. module: l10n_be
|
||||
#: field:l1on_be.vat.declaration,period_id:0
|
||||
|
@ -80,7 +83,7 @@ msgstr "Save the File with '.xml' extension."
|
|||
#. module: l10n_be
|
||||
#: model:account.account.type,name:l10n_be.user_type_charge
|
||||
msgid "Charge"
|
||||
msgstr ""
|
||||
msgstr "Despesa"
|
||||
|
||||
#. module: l10n_be
|
||||
#: code:addons/l10n_be/wizard/l10n_be_partner_vat_listing.py:47
|
||||
|
@ -100,12 +103,12 @@ msgstr "Create XML"
|
|||
#. module: l10n_be
|
||||
#: model:account.account.type,name:l10n_be.user_type_capitaux
|
||||
msgid "Capital"
|
||||
msgstr ""
|
||||
msgstr "Capital"
|
||||
|
||||
#. module: l10n_be
|
||||
#: view:partner.vat.list_13:0
|
||||
msgid "Print"
|
||||
msgstr ""
|
||||
msgstr "Impressão"
|
||||
|
||||
#. module: l10n_be
|
||||
#: view:partner.vat.intra:0
|
||||
|
@ -121,7 +124,7 @@ msgstr "Save"
|
|||
#. module: l10n_be
|
||||
#: sql_constraint:res.company:0
|
||||
msgid "The company name must be unique !"
|
||||
msgstr ""
|
||||
msgstr "O nome da empresa deve ser único!"
|
||||
|
||||
#. module: l10n_be
|
||||
#: field:l1on_be.vat.declaration,msg:0
|
||||
|
@ -133,7 +136,7 @@ msgstr "File created"
|
|||
#. module: l10n_be
|
||||
#: view:partner.vat.intra:0
|
||||
msgid "_Close"
|
||||
msgstr ""
|
||||
msgstr "_Fechar"
|
||||
|
||||
#. module: l10n_be
|
||||
#: code:addons/l10n_be/wizard/l10n_be_account_vat_declaration.py:131
|
||||
|
@ -144,7 +147,7 @@ msgstr "Save XML For Vat declaration"
|
|||
#. module: l10n_be
|
||||
#: view:partner.vat.list_13:0
|
||||
msgid "Customers"
|
||||
msgstr ""
|
||||
msgstr "Clientes"
|
||||
|
||||
#. module: l10n_be
|
||||
#: model:account.account.type,name:l10n_be.user_type_tax_in
|
||||
|
|
|
@ -108,7 +108,7 @@
|
|||
<para style="terp_default_9">[[ l['code'] (l['intra_code']) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_9">[[ l['amount'] or O.OO ]] [[ company.currency_id.symbol ]]</para>
|
||||
<para style="terp_default_Right_9">[[ formatLang(l['amount'], currency_obj=company.currency_id) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
@ -129,7 +129,7 @@
|
|||
<para style="terp_tblheader_General_Right">Total:</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_Right">[[ data['form']['amountsum'] or 0.00 ]] [[ company.currency_id.symbol ]]</para>
|
||||
<para style="terp_tblheader_General_Right">[[ formatLang(data['form']['amountsum'], currency_obj=company.currency_id) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue