[MERGE] merge with trunk addons

bzr revid: mra@mra-laptop-20100630103108-oymriu399ww27gyf
bzr revid: mra@mra-laptop-20100630103532-56weoteofxj2669e
This commit is contained in:
Mustufa Rangwala
2010-06-30 16:05:32 +05:30
81 changed files with 2952 additions and 1427 deletions
+2 -2
View File
@@ -245,13 +245,13 @@ your own chart of account.
<record id="property_account_expense_prd" model="ir.property">
<field name="name">property_account_expense</field>
<field name="fields_id" search="[('model','=','product.template'),('name','=','property_account_expense')]"/>
<field eval="False" name="value"/>
<field eval="'account.account,'+str(ref('account.a_expense'))" name="value"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="property_account_income_prd" model="ir.property">
<field name="name">property_account_income</field>
<field name="fields_id" search="[('model','=','product.template'),('name','=','property_account_income')]"/>
<field eval="False" name="value"/>
<field eval="'account.account,'+str(ref('account.a_sale'))" name="value"/>
<field name="company_id" ref="base.main_company"/>
</record>
<record id="property_account_expense_categ" model="ir.property">
+449 -236
View File
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -33,7 +33,7 @@ class product_category(osv.osv):
string="Income Account",
method=True,
view_load=True,
help="This account will be used to value incoming stock(i.e. credit of incoming goods) for the current product category"),
help="This account will be used for invoices to value sales for the current product category"),
'property_account_expense_categ': fields.property(
'account.account',
type='many2one',
@@ -41,7 +41,7 @@ class product_category(osv.osv):
string="Expense Account",
method=True,
view_load=True,
help="This account will be used to value outgoing stock(i.e. debit of outgoing goods) for the current product category"),
help="This account will be used for invoices to value expenses for the current product category"),
}
product_category()
@@ -64,7 +64,7 @@ class product_template(osv.osv):
string="Income Account",
method=True,
view_load=True,
help="This account will be used instead of the default one to value incoming stock for the current product"),
help="This account will be used for invoices instead of the default one to value sales for the current product"),
'property_account_expense': fields.property(
'account.account',
type='many2one',
@@ -72,7 +72,7 @@ class product_template(osv.osv):
string="Expense Account",
method=True,
view_load=True,
help="This account will be used instead of the default one to value outgoing stock for the current product"),
help="This account will be used for invoices instead of the default one to value expenses for the current product"),
}
product_template()
@@ -88,54 +88,3 @@
"access_report_account_type_sales","report.account_type.sales","model_report_account_type_sales","account.group_account_manager",1,0,0,0
"access_report_account_sales","report.account.sales","model_report_account_sales","account.group_account_manager",1,0,0,0
"access_account_invoice_report","account.invoice.report","model_account_invoice_report","account.group_account_manager",1,0,0,0
"access_account_account_report_manager","account.account.report","model_account_account_report","account.group_account_manager",1,0,0,0
"access_account_entries_report_manager","account.entries.report","model_account_entries_report","account.group_account_manager",1,0,0,0
"access_analytic_entries_report_manager","analytic.entries.report","model_analytic_entries_report","account.group_account_manager",1,0,0,0
"access_project_account_analytic_line","project.account.analytic.line","model_project_account_analytic_line","account.group_account_manager",1,1,1,1
"access_account_move_line_reconcile_select","account.move.line.reconcile.select","model_account_move_line_reconcile_select","account.group_account_manager",1,1,1,1
"access_account_move_line_unreconcile_select","account.move.line.unreconcile.select","model_account_move_line_unreconcile_select","account.group_account_manager",1,1,1,1
"access_account_invoice_refund","account.invoice.refund","model_account_invoice_refund","account.group_account_manager",1,1,1,1
"access_account_move_journal","account.move.journal","model_account_move_journal","account.group_account_manager",1,1,1,1
"access_account_move_bank_reconcile","account.move.bank.reconcile","model_account_move_bank_reconcile","account.group_account_manager",1,1,1,1
"access_account_subscription_generate","account.subscription.generate","model_account_subscription_generate","account.group_account_manager",1,1,1,1
"access_account_period_close","account.period.close","model_account_period_close","account.group_account_manager",1,1,1,1
"access_account_fiscalyear_close_state","account.fiscalyear.close.state","model_account_fiscalyear_close_state","account.group_account_manager",1,1,1,1
"access_account_chart","account.chart","model_account_chart","account.group_account_manager",1,1,1,1
"access_account_analytic_Journal_report_manager","account.analytic.Journal.report","model_account_analytic_Journal_report","account.group_account_manager",1,1,1,1
"access_account_analytic_balance_manager","account.analytic.balance","model_account_analytic_balance","account.group_account_manager",1,1,1,1
"access_account_analytic_inverted_balance_manager","account.analytic.inverted.balance","model_account_analytic_inverted_balance","account.group_account_manager",1,1,1,1
"access_account_analytic_cost_ledger_manager","account.analytic.cost.ledger","model_account_analytic_cost_ledger","account.group_account_manager",1,1,1,1
"access_account_analytic_cost_ledger_journal_report_manager","account.analytic.cost.ledger.journal.report","model_account_analytic_cost_ledger_journal_report","account.group_account_manager",1,1,1,1
"access_account_analytic_check_manager","account.analytic.check","model_account_analytic_check","account.group_account_manager",1,1,1,1
"access_account_analytic_chart_manager","account.analytic.chart","model_account_analytic_chart","account.group_account_manager",1,1,1,1
"access_account_automatic_reconcile_manager","account.automatic.reconcile","model_account_automatic_reconcile","account.group_account_manager",1,1,1,1
"access_account_partner_reconcile_process_manager","account.partner.reconcile.process","model_account_partner_reconcile_process","account.group_account_manager",1,1,1,1
"access_account_move_line_reconcile_manager","account.move.line.reconcile","model_account_move_line_reconcile","account.group_account_manager",1,1,1,1
"access_account_move_line_reconcile_writeoff_manager","account.move.line.reconcile.writeoff","model_account_move_line_reconcile_writeoff","account.group_account_manager",1,1,1,1
"access_account_unreconcile_manager","account.unreconcile","model_account_unreconcile","account.group_account_manager",1,1,1,1
"access_account_unreconcile_reconcile_manager","account.unreconcile.reconcile","model_account_unreconcile_reconcile","account.group_account_manager",1,1,1,1
"access_account_invoice_pay_writeoff_manager","account.invoice.pay.writeoff","model_account_invoice_pay_writeoff","account.group_account_manager",1,1,1,1
"access_account_invoice_pay_manager","account.invoice.pay","model_account_invoice_pay","account.group_account_manager",1,1,1,1
"access_account_journal_select_manager","account.journal.select","model_account_journal_select","account.group_account_manager",1,1,1,1
"access_account_aged_trial_balance_manager","account.aged.trial.balance","model_account_aged_trial_balance","account.group_account_manager",1,1,1,1
"access_account_general_ledger_report_manager","account.general.ledger.report","model_account_general_ledger_report","account.group_account_manager",1,1,1,1
"access_account_partner_ledger_manager","account.partner.ledger","model_account_partner_ledger","account.group_account_manager",1,1,1,1
"access_account_partner_balance_manager","account.partner.balance","model_account_partner_balance","account.group_account_manager",1,1,1,1
"access_account_balance_report_manager","account.balance.report","model_account_balance_report","account.group_account_manager",1,1,1,1
"access_account_fiscalyear_close_manager","account.fiscalyear.close","model_account_fiscalyear_close","account.group_account_manager",1,1,1,1
"access_account_vat_declaration_manager","account.vat.declaration","model_account_vat_declaration","account.group_account_manager",1,1,1,1
"access_account_open_closed_fiscalyear_manager","account.open.closed.fiscalyear","model_account_open_closed_fiscalyear","account.group_account_manager",1,1,1,1
"access_account_compare_account_balance_report_manager","account.compare.account.balance.report","model_account_compare_account_balance_report","account.group_account_manager",1,1,1,1
"access_account_invoice_confirm_manager","account.invoice.confirm","model_account_invoice_confirm","account.group_account_manager",1,1,1,1
"access_account_invoice_cancel_manager","account.invoice.cancel","model_account_invoice_cancel","account.group_account_manager",1,1,1,1
"access_account_move_line_select_manager","account.move.line.select","model_account_move_line_select","account.group_account_manager",1,1,1,1
"access_validate_account_move_manager","validate.account.move","model_validate_account_move","account.group_account_manager",1,1,1,1
"access_validate_account_move_lines_manager","validate.account.move.lines","model_validate_account_move_lines","account.group_account_manager",1,1,1,1
"access_account_use_model_manager","account.use.model","model_account_use_model","account.group_account_manager",1,1,1,1
"access_account_state_open_manager","account.state.open","model_account_state_open","account.group_account_manager",1,1,1,1
"access_account_statement_from_invoice_lines_manager","account.statement.from.invoice.lines","model_account_statement_from_invoice_lines","account.group_account_manager",1,1,1,1
"access_account_statement_from_invoice_manager","account.statement.from.invoice","model_account_statement_from_invoice","account.group_account_manager",1,1,1,1
"access_account_print_journal_manager","account.print.journal","model_account_print_journal","account.group_account_manager",1,1,1,1
"access_account_central_journal_manager","account.central.journal","model_account_central_journal","account.group_account_manager",1,1,1,1
"access_account_general_journal_manager","account.general.journal","model_account_general_journal","account.group_account_manager",1,1,1,1
"access_account_change_currency_manager","account.change.currency","model_account_change_currency","account.group_account_manager",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
88 access_report_account_type_sales report.account_type.sales model_report_account_type_sales account.group_account_manager 1 0 0 0
89 access_report_account_sales report.account.sales model_report_account_sales account.group_account_manager 1 0 0 0
90 access_account_invoice_report account.invoice.report model_account_invoice_report account.group_account_manager 1 0 0 0
access_account_account_report_manager account.account.report model_account_account_report account.group_account_manager 1 0 0 0
access_account_entries_report_manager account.entries.report model_account_entries_report account.group_account_manager 1 0 0 0
access_analytic_entries_report_manager analytic.entries.report model_analytic_entries_report account.group_account_manager 1 0 0 0
access_project_account_analytic_line project.account.analytic.line model_project_account_analytic_line account.group_account_manager 1 1 1 1
access_account_move_line_reconcile_select account.move.line.reconcile.select model_account_move_line_reconcile_select account.group_account_manager 1 1 1 1
access_account_move_line_unreconcile_select account.move.line.unreconcile.select model_account_move_line_unreconcile_select account.group_account_manager 1 1 1 1
access_account_invoice_refund account.invoice.refund model_account_invoice_refund account.group_account_manager 1 1 1 1
access_account_move_journal account.move.journal model_account_move_journal account.group_account_manager 1 1 1 1
access_account_move_bank_reconcile account.move.bank.reconcile model_account_move_bank_reconcile account.group_account_manager 1 1 1 1
access_account_subscription_generate account.subscription.generate model_account_subscription_generate account.group_account_manager 1 1 1 1
access_account_period_close account.period.close model_account_period_close account.group_account_manager 1 1 1 1
access_account_fiscalyear_close_state account.fiscalyear.close.state model_account_fiscalyear_close_state account.group_account_manager 1 1 1 1
access_account_chart account.chart model_account_chart account.group_account_manager 1 1 1 1
access_account_analytic_Journal_report_manager account.analytic.Journal.report model_account_analytic_Journal_report account.group_account_manager 1 1 1 1
access_account_analytic_balance_manager account.analytic.balance model_account_analytic_balance account.group_account_manager 1 1 1 1
access_account_analytic_inverted_balance_manager account.analytic.inverted.balance model_account_analytic_inverted_balance account.group_account_manager 1 1 1 1
access_account_analytic_cost_ledger_manager account.analytic.cost.ledger model_account_analytic_cost_ledger account.group_account_manager 1 1 1 1
access_account_analytic_cost_ledger_journal_report_manager account.analytic.cost.ledger.journal.report model_account_analytic_cost_ledger_journal_report account.group_account_manager 1 1 1 1
access_account_analytic_check_manager account.analytic.check model_account_analytic_check account.group_account_manager 1 1 1 1
access_account_analytic_chart_manager account.analytic.chart model_account_analytic_chart account.group_account_manager 1 1 1 1
access_account_automatic_reconcile_manager account.automatic.reconcile model_account_automatic_reconcile account.group_account_manager 1 1 1 1
access_account_partner_reconcile_process_manager account.partner.reconcile.process model_account_partner_reconcile_process account.group_account_manager 1 1 1 1
access_account_move_line_reconcile_manager account.move.line.reconcile model_account_move_line_reconcile account.group_account_manager 1 1 1 1
access_account_move_line_reconcile_writeoff_manager account.move.line.reconcile.writeoff model_account_move_line_reconcile_writeoff account.group_account_manager 1 1 1 1
access_account_unreconcile_manager account.unreconcile model_account_unreconcile account.group_account_manager 1 1 1 1
access_account_unreconcile_reconcile_manager account.unreconcile.reconcile model_account_unreconcile_reconcile account.group_account_manager 1 1 1 1
access_account_invoice_pay_writeoff_manager account.invoice.pay.writeoff model_account_invoice_pay_writeoff account.group_account_manager 1 1 1 1
access_account_invoice_pay_manager account.invoice.pay model_account_invoice_pay account.group_account_manager 1 1 1 1
access_account_journal_select_manager account.journal.select model_account_journal_select account.group_account_manager 1 1 1 1
access_account_aged_trial_balance_manager account.aged.trial.balance model_account_aged_trial_balance account.group_account_manager 1 1 1 1
access_account_general_ledger_report_manager account.general.ledger.report model_account_general_ledger_report account.group_account_manager 1 1 1 1
access_account_partner_ledger_manager account.partner.ledger model_account_partner_ledger account.group_account_manager 1 1 1 1
access_account_partner_balance_manager account.partner.balance model_account_partner_balance account.group_account_manager 1 1 1 1
access_account_balance_report_manager account.balance.report model_account_balance_report account.group_account_manager 1 1 1 1
access_account_fiscalyear_close_manager account.fiscalyear.close model_account_fiscalyear_close account.group_account_manager 1 1 1 1
access_account_vat_declaration_manager account.vat.declaration model_account_vat_declaration account.group_account_manager 1 1 1 1
access_account_open_closed_fiscalyear_manager account.open.closed.fiscalyear model_account_open_closed_fiscalyear account.group_account_manager 1 1 1 1
access_account_compare_account_balance_report_manager account.compare.account.balance.report model_account_compare_account_balance_report account.group_account_manager 1 1 1 1
access_account_invoice_confirm_manager account.invoice.confirm model_account_invoice_confirm account.group_account_manager 1 1 1 1
access_account_invoice_cancel_manager account.invoice.cancel model_account_invoice_cancel account.group_account_manager 1 1 1 1
access_account_move_line_select_manager account.move.line.select model_account_move_line_select account.group_account_manager 1 1 1 1
access_validate_account_move_manager validate.account.move model_validate_account_move account.group_account_manager 1 1 1 1
access_validate_account_move_lines_manager validate.account.move.lines model_validate_account_move_lines account.group_account_manager 1 1 1 1
access_account_use_model_manager account.use.model model_account_use_model account.group_account_manager 1 1 1 1
access_account_state_open_manager account.state.open model_account_state_open account.group_account_manager 1 1 1 1
access_account_statement_from_invoice_lines_manager account.statement.from.invoice.lines model_account_statement_from_invoice_lines account.group_account_manager 1 1 1 1
access_account_statement_from_invoice_manager account.statement.from.invoice model_account_statement_from_invoice account.group_account_manager 1 1 1 1
access_account_print_journal_manager account.print.journal model_account_print_journal account.group_account_manager 1 1 1 1
access_account_central_journal_manager account.central.journal model_account_central_journal account.group_account_manager 1 1 1 1
access_account_general_journal_manager account.general.journal model_account_general_journal account.group_account_manager 1 1 1 1
access_account_change_currency_manager account.change.currency model_account_change_currency account.group_account_manager 1 1 1 1
@@ -4,9 +4,5 @@
"access_account_analytic_plan_instance","account.analytic.plan.instance","model_account_analytic_plan_instance","account.group_account_user",1,1,1,1
"access_account_analytic_plan_instance_line","account.analytic.plan.instance.line","model_account_analytic_plan_instance_line","account.group_account_user",1,1,1,1
"access_account_analytic_plan_line_invoice","account.analytic.plan.line.invoice","model_account_analytic_plan_line","account.group_account_user",1,1,1,1
"access_account_analytic_plan_create_model","access.account.analytic.plan.create.model","model_analytic_plan_create_model","account.group_account_user",1,1,1,1
"access_account_crossovered_analytic","access.account.crossovered.analytic","model_account_crossovered_analytic","account.group_account_user",1,1,1,1
"access_account_analytic_plan_instance_manager","account.analytic.plan.instance manager","model_account_analytic_plan_instance","account.group_account_manager",1,1,1,1
"access_account_analytic_plan_instance_line_manager","account.analytic.plan.instance.line manager","model_account_analytic_plan_instance_line","account.group_account_manager",1,1,1,1
"access_account_analytic_plan_create_model_manager","access.account.analytic.plan.create.mode.manager","model_analytic_plan_create_model","account.group_account_manager",1,1,1,1
"access_account_crossovered_analytic_manager","access.account.crossovered.analytic.manageraccess.account.crossovered.analytic.manager","model_account_crossovered_analytic","account.group_account_manager",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
4 access_account_analytic_plan_instance account.analytic.plan.instance model_account_analytic_plan_instance account.group_account_user 1 1 1 1
5 access_account_analytic_plan_instance_line account.analytic.plan.instance.line model_account_analytic_plan_instance_line account.group_account_user 1 1 1 1
6 access_account_analytic_plan_line_invoice account.analytic.plan.line.invoice model_account_analytic_plan_line account.group_account_user 1 1 1 1
access_account_analytic_plan_create_model access.account.analytic.plan.create.model model_analytic_plan_create_model account.group_account_user 1 1 1 1
access_account_crossovered_analytic access.account.crossovered.analytic model_account_crossovered_analytic account.group_account_user 1 1 1 1
7 access_account_analytic_plan_instance_manager account.analytic.plan.instance manager model_account_analytic_plan_instance account.group_account_manager 1 1 1 1
8 access_account_analytic_plan_instance_line_manager account.analytic.plan.instance.line manager model_account_analytic_plan_instance_line account.group_account_manager 1 1 1 1
access_account_analytic_plan_create_model_manager access.account.analytic.plan.create.mode.manager model_analytic_plan_create_model account.group_account_manager 1 1 1 1
access_account_crossovered_analytic_manager access.account.crossovered.analytic.manageraccess.account.crossovered.analytic.manager model_account_crossovered_analytic account.group_account_manager 1 1 1 1
@@ -3,8 +3,3 @@
"access_crossovered_budget_lines","crossovered.budget.lines","model_crossovered_budget_lines","account.group_account_manager",1,1,1,1
"access_account_budget_post","account.budget.post","model_account_budget_post","account.group_account_manager",1,1,1,1
"access_account_budget_post_dotation","account.budget.post.dotation","model_account_budget_post_dotation","account.group_account_manager",1,1,1,1
"access_account_budget_crossvered_report","account.budget.crossvered.report","model_account_budget_crossvered_report","account.group_account_manager",1,1,1,1
"access_account_budget_analytic","account.budget.analytic","model_account_budget_analytic","account.group_account_manager",1,1,1,1
"access_account_budget_crossvered_summary_report","account.budget.crossvered.summary.report","model_account_budget_crossvered_summary_report","account.group_account_manager",1,1,1,1
"access_account_budget_spread","account.budget.spread","model_account_budget_spread","account.group_account_manager",1,1,1,1
"access_account_budget_report","account.budget.report","model_account_budget_report","account.group_account_manager",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
3 access_crossovered_budget_lines crossovered.budget.lines model_crossovered_budget_lines account.group_account_manager 1 1 1 1
4 access_account_budget_post account.budget.post model_account_budget_post account.group_account_manager 1 1 1 1
5 access_account_budget_post_dotation account.budget.post.dotation model_account_budget_post_dotation account.group_account_manager 1 1 1 1
access_account_budget_crossvered_report account.budget.crossvered.report model_account_budget_crossvered_report account.group_account_manager 1 1 1 1
access_account_budget_analytic account.budget.analytic model_account_budget_analytic account.group_account_manager 1 1 1 1
access_account_budget_crossvered_summary_report account.budget.crossvered.summary.report model_account_budget_crossvered_summary_report account.group_account_manager 1 1 1 1
access_account_budget_spread account.budget.spread model_account_budget_spread account.group_account_manager 1 1 1 1
access_account_budget_report account.budget.report model_account_budget_report account.group_account_manager 1 1 1 1
@@ -2,10 +2,6 @@
"access_account_followup_stat","account_followup.stat","model_account_followup_stat","account.group_account_user",1,0,0,0
"access_account_followup_followup","account_followup.followup","model_account_followup_followup","account.group_account_user",1,0,0,0
"access_account_followup_followup_line","account_followup.followup.line","model_account_followup_followup_line","account.group_account_user",1,0,0,0
"access_account_followup_print","account_followup.print","model_account_followup_print","account.group_account_user",1,0,0,0
"access_account_followup_print_all","account_followup.print.all","model_account_followup_print_all","account.group_account_user",1,0,0,0
"access_account_followup_stat_manager","account_followup.stat.manager","model_account_followup_stat","account.group_account_manager",1,1,1,1
"access_account_followup_followup_manager","account_followup.followup.manager","model_account_followup_followup","account.group_account_manager",1,1,1,1
"access_account_followup_followup_line_manager","account_followup.followup.line.manager","model_account_followup_followup_line","account.group_account_manager",1,1,1,1
"access_account_followup_print_manager","account_followup.print.manager","model_account_followup_print","account.group_account_manager",1,1,1,1
"access_account_followup_print_all_manager","account_followup.print.all.manager","model_account_followup_print_all","account.group_account_manager",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_account_followup_stat account_followup.stat model_account_followup_stat account.group_account_user 1 0 0 0
3 access_account_followup_followup account_followup.followup model_account_followup_followup account.group_account_user 1 0 0 0
4 access_account_followup_followup_line account_followup.followup.line model_account_followup_followup_line account.group_account_user 1 0 0 0
access_account_followup_print account_followup.print model_account_followup_print account.group_account_user 1 0 0 0
access_account_followup_print_all account_followup.print.all model_account_followup_print_all account.group_account_user 1 0 0 0
5 access_account_followup_stat_manager account_followup.stat.manager model_account_followup_stat account.group_account_manager 1 1 1 1
6 access_account_followup_followup_manager account_followup.followup.manager model_account_followup_followup account.group_account_manager 1 1 1 1
7 access_account_followup_followup_line_manager account_followup.followup.line.manager model_account_followup_followup_line account.group_account_manager 1 1 1 1
access_account_followup_print_manager account_followup.print.manager model_account_followup_print account.group_account_manager 1 1 1 1
access_account_followup_print_all_manager account_followup.print.all.manager model_account_followup_print_all account.group_account_manager 1 1 1 1
@@ -1,3 +1,2 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_notify_message","notify.message","model_notify_message","account.group_account_invoice",1,1,1,1
"access_account_invoice_special_msg","account.invoice.special.msg","model_account_invoice_special_msg","account.group_account_invoice",1,1,1,1
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_notify_message,notify.message,model_notify_message,account.group_account_invoice,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_notify_message notify.message model_notify_message account.group_account_invoice 1 1 1 1
access_account_invoice_special_msg account.invoice.special.msg model_account_invoice_special_msg account.group_account_invoice 1 1 1 1
@@ -6,6 +6,3 @@
"access_account_journal_payement","account.journal payment","account.model_account_journal","group_account_payment",1,0,0,0
"access_account_invoice_payment","account.invoice payment","account.model_account_invoice","group_account_payment",1,0,0,0
"access_account_move_line_payment","account.move.line payment","account.model_account_move_line","group_account_payment",1,0,0,0
"access_payment_order_create","payment.order.create","model_payment_order_create","group_account_payment",1,1,1,1
"access_account_payment_populate_statement","account.payment.populate.statement","model_account_payment_populate_statement","group_account_payment",1,1,1,1
"access_account_payment_make_payment","account.payment.make.payment","model_account_payment_make_payment","group_account_payment",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
6 access_account_journal_payement account.journal payment account.model_account_journal group_account_payment 1 0 0 0
7 access_account_invoice_payment account.invoice payment account.model_account_invoice group_account_payment 1 0 0 0
8 access_account_move_line_payment account.move.line payment account.model_account_move_line group_account_payment 1 0 0 0
access_payment_order_create payment.order.create model_payment_order_create group_account_payment 1 1 1 1
access_account_payment_populate_statement account.payment.populate.statement model_account_payment_populate_statement group_account_payment 1 1 1 1
access_account_payment_make_payment account.payment.make.payment model_account_payment_make_payment group_account_payment 1 1 1 1
@@ -1,5 +1,3 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_account_report_report","account.report.report","model_account_report_report","account.group_account_manager",1,0,0,0
"access_account_report_history","account.report.history","model_account_report_history","account.group_account_manager",1,0,0,0
"access_account_report_print_indicators","account.report.print.indicators","model_account_report_print_indicators","account.group_account_manager",1,0,0,0
"access_account_report_print_indicators_with_pdf","account.report.print.indicators.with.pdf","model_account_report_print_indicators_with_pdf","account.group_account_manager",1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_account_report_report account.report.report model_account_report_report account.group_account_manager 1 0 0 0
3 access_account_report_history account.report.history model_account_report_history account.group_account_manager 1 0 0 0
access_account_report_print_indicators account.report.print.indicators model_account_report_print_indicators account.group_account_manager 1 0 0 0
access_account_report_print_indicators_with_pdf account.report.print.indicators.with.pdf model_account_report_print_indicators_with_pdf account.group_account_manager 1 0 0 0
+15 -16
View File
@@ -9,22 +9,21 @@
<field name="arch" type="xml">
<form string="Account reporting">
<notebook>
<page string="General">
<field name="name" colspan="2"/>
<field name="code"/>
<field name="parent_id"/>
<field name="sequence"/>
<field name="color_font"/>
<field name="color_back"/>
<field name="font_style"/>
<field name="report_type"/>
<newline/>
<separator string="Accounts" colspan="4"/>
<field name="account_id" colspan="4" nolabel="1"/>
</page>
<page string="Notes">
<field name="note" nolabel="1" colspan="4"/>
</page>
<page string="General">
<field name="name" select="1" colspan="3"/>
<field name="code" select="1"/>
<field name="parent_id" select="1" />
<field name="sequence"/>
<field name="color_font"/>
<field name="color_back"/>
<field name="font_style" />
<field name="report_type" />
<newline/>
<separator string="Accounts" colspan="4"/>
<field name="account_id" colspan="4" nolabel="1"/>
</page><page string="Notes">
<field name="note" nolabel="1" colspan="4"/>
</page>
</notebook>
</form>
</field>
@@ -1,4 +1,3 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_color_rml","color.rml","model_color_rml","account.group_account_manager",1,1,1,1
"access_account_report_bs","account.report.bs","model_account_report_bs","account.group_account_manager",1,1,1,1
"access_account_reporting_balance_report","account.reporting.balance.report","model_account_reporting_balance_report","account.group_account_manager",1,1,1,1
id,name,model_id:id,group_id:id,perm_read,perm_write,perm_create,perm_unlink
access_color_rml,color.rml,model_color_rml,account.group_account_manager,1,1,1,1
access_account_report_bs,account.report.bs,model_account_report_bs,account.group_account_manager,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_color_rml color.rml model_color_rml account.group_account_manager 1 1 1 1
3 access_account_report_bs account.report.bs model_account_report_bs account.group_account_manager 1 1 1 1
access_account_reporting_balance_report account.reporting.balance.report model_account_reporting_balance_report account.group_account_manager 1 1 1 1
+1
View File
@@ -992,6 +992,7 @@ class calendar_event(osv.osv):
if datas.get('rrule_type'):
if datas.get('rrule_type') == 'none':
result[event] = False
cr.execute("UPDATE %s set exrule=Null where id=%s" % (self._table, event))
elif datas.get('rrule_type') == 'custom':
if datas.get('interval', 0) < 0:
raise osv.except_osv('Warning!', 'Interval can not be Negative')
+7 -2
View File
@@ -222,10 +222,15 @@
<field name="rrule_type" string="Recurrency"
colspan="1" attrs="{'readonly':[('recurrent_uid','!=',False)]}"/>
<button string="Edit All"
help="Edit all Ourrences of recurrent Meeting"
help="Edit all Ourrences of recurrent Events"
attrs="{'invisible':[('rrule_type','in', ('none', False))]}"
name="open_event" icon="gtk-edit"
type="object" />
<button string="ExRule"
help="Add Exception Rule"
name="%(base_calendar.action_base_calendar_set_exrule)d" icon="gtk-zoom-out" type="action"
context="{'model' : 'calendar.event'}"
attrs="{'invisible':[('rrule_type','in', ('none', False))]}"/>
</group>
</group>
<group col="4" colspan="4" name="rrule" attrs="{'invisible': [('rrule_type','!=','custom')]}">
@@ -350,7 +355,7 @@
<field name="arch" type="xml">
<tree string="Events">
<field name="name" string="Subject" />
<field name="date" string="Meeting Date" />
<field name="date" string="Event Date" />
<field name="location" />
<field name="show_as" />
<field name="class" string="Privacy" />
@@ -82,12 +82,11 @@ class base_calendar_set_exrule(osv.osv_memory):
@param uid: the current user’s ID for security checks,
@param fields: List of fields for default value
@param context: A standard dictionary for contextual values
"""
crm_obj = self.pool.get('crm.meeting')
for meeting in crm_obj.browse(cr, uid, context.get('active_ids', [])):
if not meeting.rrule:
raise osv.except_osv(_("Warning !"), _("Please Apply Recurrency after Apply Exception Rule"))
event_obj = self.pool.get(context.get('active_model'))
for event in event_obj.browse(cr, uid, context.get('active_ids', [])):
if not event.rrule:
raise osv.except_osv(_("Warning !"), _("Please Apply Recurrency before applying Exception Rule."))
return False
def compute_exrule_string(self, cr, uid, ids, context=None):
+3 -3
View File
@@ -53,11 +53,11 @@
<field name="view_id" ref="view_calendar_collection_form"/>
<field name="act_window_id" ref="action_calendar_collection_form"/>
</record>
<menuitem
<menuitem
id="menu_calendar"
name="Calendar"
parent="base.menu_document_configuration"/>
parent="knowledge.menu_document_configuration"/>
<menuitem
action="action_calendar_collection_form"
+1 -5
View File
@@ -277,11 +277,7 @@ class CalDAV(object):
% (model_obj._table, data[map_field]))
r_ids = map(lambda x: x[0], cr.fetchall())
if r_ids:
rdata = self.pool.get(model).read(cr, uid, r_ids)
event_obj = self.pool.get('basic.calendar.event')
rcal = event_obj.export_cal(cr, uid, rdata, context=context)
for revents in rcal.contents['vevent']:
ical.contents['vevent'].append(revents)
rcal = self.export_cal(cr, uid, r_ids, 'vevent', context=context)
if data.get('recurrent_uid', None):
uidval = openobjectid2uid(cr, data['recurrent_uid'], model)
vevent.add('uid').value = uidval
-4
View File
@@ -387,10 +387,6 @@ class crm_case(object):
attach=attach_to_send
)
self._history(cr, uid, [case], _('Send'), history=True, email=dest, details=body, email_from=src)
#if flag:
# raise osv.except_osv(_('Email!'),("Email Successfully Sent"))
#else:
# raise osv.except_osv(_('Email Fail!'),("Email is not sent successfully"))
return True
def _check(self, cr, uid, ids=False, context={}):
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data noupdate="1">
<data>
<record model="crm.case.section" id="section_sales_department">
<field name="name">Sales Department</field>
<field name="code">Sales</field>
+6 -112
View File
@@ -12,7 +12,7 @@
<field name="type">lead</field>
<field name="user_id" ref="base.user_root"/>
<field eval="'Luc Latour'" name="partner_name"/>
<field eval="'draft'" name="state"/>
<field eval="'open'" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="'(726) 782-0636'" name="mobile"/>
<field eval="1" name="active"/>
@@ -21,14 +21,13 @@
<field eval="'The Oil Company'" name="name"/>
<field eval="'(769) 703-274'" name="phone"/>
</record>
<record id="crm_case_electonicgoodsdealer0" model="crm.lead">
<field name="type_id" ref="crm.type_lead7"/>
<field eval="'4'" name="priority"/>
<field name="type">lead</field>
<field name="user_id" ref="base.user_root"/>
<field eval="'Marc Dufour'" name="partner_name"/>
<field eval="'draft'" name="state"/>
<field eval="'open'" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="'(392) 895-7917'" name="mobile"/>
<field eval="1" name="active"/>
@@ -37,14 +36,13 @@
<field eval="'Le Club SARL'" name="name"/>
<field eval="'(956) 293-2595'" name="phone"/>
</record>
<record id="crm_case_developingwebapplications0" model="crm.lead">
<field name="type_id" ref="crm.type_lead5"/>
<field eval="'2'" name="priority"/>
<field name="type">lead</field>
<field name="user_id" ref="base.user_demo"/>
<field eval="'Fabien Pinckaers'" name="partner_name"/>
<field eval="'draft'" name="state"/>
<field eval="'done'" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="'(820) 167-3208'" name="mobile"/>
<field eval="1" name="active"/>
@@ -69,14 +67,13 @@
<field eval="'The Gas Company'" name="name"/>
<field eval="'(514) 698-4118'" name="phone"/>
</record>
<record id="crm_case_itdeveloper0" model="crm.lead">
<field name="type_id" ref="crm.type_lead4"/>
<field eval="'3'" name="priority"/>
<field name="type">lead</field>
<field name="user_id" ref="base.user_root"/>
<field eval="'Carrie Helle'" name="partner_name"/>
<field eval="'draft'" name="state"/>
<field eval="'pending'" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="'(333) 715-1450'" name="mobile"/>
<field eval="1" name="active"/>
@@ -85,7 +82,6 @@
<field eval="'Stonage IT'" name="name"/>
<field eval="'(855) 924-4364'" name="phone"/>
</record>
<record id="crm_case_mgroperations0" model="crm.lead">
<field name="partner_address_id" ref="base.res_partner_address_1"/>
<field eval="1" name="active"/>
@@ -95,7 +91,7 @@
<field name="type">lead</field>
<field name="user_id" ref="base.user_root"/>
<field eval="'Tina Pinero'" name="partner_name"/>
<field eval="'draft'" name="state"/>
<field eval="'cancel'" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="'(468) 017-2684'" name="mobile"/>
<field name="categ_id" ref="crm.categ_oppor8"/>
@@ -111,7 +107,7 @@
<field name="type">lead</field>
<field name="user_id" ref="base.user_root"/>
<field eval="'Wendi Baltz'" name="partner_name"/>
<field eval="'draft'" name="state"/>
<field eval="'done'" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="'(463) 014-1208'" name="mobile"/>
<field name="categ_id" ref="crm.categ_oppor4"/>
@@ -119,107 +115,5 @@
<field eval="'Gardner Group'" name="name"/>
<field eval="'(282) 603-7489'" name="phone"/>
</record>
<record id="crm_case_webvisitor0" model="crm.lead">
<field eval="1" name="active"/>
<field name="type_id" ref="crm.type_lead5"/>
<field eval="&quot;1&quot;" name="priority"/>
<field name="type">lead</field>
<field name="user_id" ref="base.user_demo"/>
<field eval="&quot;Questionnaire&quot;" name="name"/>
<field eval="&quot;open&quot;" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="&quot;Smith John&quot;" name="partner_name2"/>
<field eval="&quot;(487) 013-1504&quot;" name="partner_mobile"/>
<field name="categ_id" ref="crm.categ_oppor6"/>
<field eval="&quot;Website Visitor&quot;" name="partner_name"/>
<field eval="&quot;smith_john@gmail.com&quot;" name="email_from"/>
<field eval="time.strftime('%Y-%m-16 10:05:15')" name="date"/>
</record>
<record id="crm_case_business_card0" model="crm.lead">
<field eval="1" name="active"/>
<field name="type_id" ref="crm.type_lead3"/>
<field eval="&quot;2&quot;" name="priority"/>
<field name="type">lead</field>
<field name="user_id" ref="base.user_root"/>
<field eval="&quot;Marketing Products&quot;" name="name"/>
<field eval="&quot;open&quot;" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="&quot;Elvis Borne&quot;" name="partner_name2"/>
<field eval="&quot;(147) 014-6574&quot;" name="partner_mobile"/>
<field name="categ_id" ref="crm.categ_oppor5"/>
<field name="stage_id" ref="crm.stage_lead1"/>
<field eval="&quot;Business Card&quot;" name="partner_name"/>
<field eval="&quot;(124) 587-8974&quot;" name="partner_phone"/>
<field eval="time.strftime('%Y-%m-16 11:05:15')" name="date"/>
</record>
<record id="crm_case_imported_contact0" model="crm.lead">
<field eval="1" name="active"/>
<field name="type_id" ref="crm.type_lead8"/>
<field eval="&quot;2&quot;" name="priority"/>
<field name="type">lead</field>
<field name="user_id" ref="base.user_demo"/>
<field eval="&quot;Business Group&quot;" name="name"/>
<field eval="&quot;cancel&quot;" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="&quot;Drew Clark&quot;" name="partner_name2"/>
<field eval="&quot;(125) 021-4781&quot;" name="partner_mobile"/>
<field name="categ_id" ref="crm.categ_oppor1"/>
<field name="stage_id" ref="crm.stage_lead2"/>
<field eval="&quot;Imported Contact&quot;" name="partner_name"/>
</record>
<record id="crm_case_employee0" model="crm.lead">
<field eval="1" name="active"/>
<field name="type_id" ref="crm.type_lead3"/>
<field eval="&quot;3&quot;" name="priority"/>
<field name="type">lead</field>
<field name="user_id" ref="base.user_root"/>
<field eval="&quot;OpenERP Campaining&quot;" name="name"/>
<field eval="&quot;draft&quot;" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="&quot;Carl Nelson&quot;" name="partner_name2"/>
<field eval="&quot;(874) 022-6574&quot;" name="partner_mobile"/>
<field name="categ_id" ref="crm.categ_oppor3"/>
<field name="stage_id" ref="crm.stage_lead3"/>
<field eval="&quot;Campaining&quot;" name="partner_name"/>
<field eval="&quot;(232) 147-6329&quot;" name="partner_phone"/>
</record>
<record id="crm_case_company_partnership0" model="crm.lead">
<field eval="1" name="active"/>
<field name="type_id" ref="crm.type_lead3"/>
<field eval="&quot;3&quot;" name="priority"/>
<field name="type">lead</field>
<field name="user_id" ref="base.user_demo"/>
<field eval="&quot;Offer&quot;" name="name"/>
<field eval="&quot;done&quot;" name="state"/>
<field name="section_id" ref="crm.section_sales_department"/>
<field eval="&quot;Joe Lucas&quot;" name="partner_name2"/>
<field eval="&quot;(234) 031-1254&quot;" name="partner_mobile"/>
<field name="categ_id" ref="crm.categ_oppor7"/>
<field name="stage_id" ref="crm.stage_lead1"/>
<field eval="&quot;Partnership Offer&quot;" name="partner_name"/>
<field eval="&quot;(254) 954-2147&quot;" name="partner_phone"/>
</record>
<!-- Call Function to Open the leads-->
<function model="crm.lead" name="case_open">
<value eval="[ref('crm_case_itisatelesalescampaign0'), ref('crm_case_electonicgoodsdealer0'), ref('crm_case_company_partnership0'), ref('crm_case_webvisitor0'), ref('crm_case_business_card0')]"/>
</function>
<!-- Call Function to mark the lead as Pending-->
<function model="crm.lead" name="case_pending">
<value eval="[ref('crm_case_itdeveloper0')]"/>
</function>
<!-- Call Function to Close the leads-->
<function model="crm.lead" name="case_close">
<value eval="[ref('crm_case_vpoperations0'), ref('crm_case_developingwebapplications0'), ref('crm_case_webvisitor0')]"/>
</function>
<!-- Call Function to Cancel the leads-->
<function model="crm.lead" name="case_cancel">
<value eval="[ref('crm_case_mgroperations0'), ref('crm_case_imported_contact0')]"/>
</function>
</data>
</openerp>
+10 -10
View File
@@ -182,7 +182,7 @@
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'crm.lead', 'include_original' : True}"
icon="terp-mail-replied" type="action" />
icon="gtk-undo" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
@@ -194,10 +194,10 @@
<button colspan="2" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'crm.lead'}"
icon="terp-mail-message-new" type="action" />
icon="gtk-go-forward" type="action" />
<button colspan="2" string="Forward to Partner"
name="%(crm_lead_forward_to_partner_act)d"
icon="terp-mail-forward" type="action" />
icon="gtk-go-forward" type="action" />
</page>
</notebook>
@@ -280,23 +280,23 @@
<field name="arch" type="xml">
<search string="Search Leads">
<filter icon="terp-check"
string="Current" help="Current Leads"
string="Current"
default="1" name="current"
domain="[('state','in',('draft','open'))]"/>
<filter icon="terp-camera_test"
string="Open" help="Open Leads"
string="Open"
domain="[('state','=','open')]"/>
<filter icon="terp-gtk-media-pause"
string="Pending" help="Pending Leads"
string="Pending"
domain="[('state','=','pending')]"/>
<separator orientation="vertical"/>
<filter icon="terp-go-today" string="Today"
domain="[('create_date','&lt;', time.strftime('%%Y-%%m-%%d 23:59:59')), \
('create_date','&gt;=', time.strftime('%%Y-%%m-%%d 23:59:59'))]"
help="Today's Leads" />
help="Todays' Opportunities" />
<filter icon="terp-go-week" string="7 Days"
help="Leads during last 7 days"
help="Opportunities during last 7 days"
domain="[('create_date','&lt;', time.strftime('%%Y-%%m-%%d')),\
('create_date','&gt;=',(datetime.date.today()-datetime.timedelta(days=7)).strftime('%%Y-%%m-%%d'))]"
/>
@@ -338,9 +338,9 @@
<group expand="0" string="Group By...">
<filter string="Stage" icon="terp-stage" domain="[]" context="{'group_by':'stage_id'}"/>
<filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
<filter string="Source" help="Lead's Source" icon="terp-purchase" domain="[]" context="{'group_by':'categ_id'}"/>
<filter string="Source" icon="terp-gtk-jump-to-rtl" domain="[]" context="{'group_by':'categ_id'}"/>
<separator orientation="vertical"/>
<filter string="Team" help="Sales Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
<filter string="Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
<filter string="Salesman" icon="terp-personal" domain="[]" context="{'group_by':'user_id'}"/>
<filter string="Referrer" icon="terp-personal" domain="[]" context="{'group_by':'referred'}"/>
<separator orientation="vertical"/>
+4 -3
View File
@@ -51,9 +51,10 @@
name="open_meeting" icon="gtk-edit"
type="object" />
<button string="ExRule"
name="%(base_calendar.action_base_calendar_set_exrule)d" icon="gtk-zoom-out" type="action"
context="{'model' : 'crm.meeting'}"
attrs="{'invisible':[('rrule_type','in', ('none', False))]}"/>
help="Add Exception Rule"
name="%(base_calendar.action_base_calendar_set_exrule)d" icon="gtk-zoom-out" type="action"
context="{'model' : 'crm.meeting'}"
attrs="{'invisible':[('rrule_type','in', ('none', False))]}"/>
</group>
</group>
<group col="4" colspan="4" name="rrule" attrs="{'invisible': [('rrule_type','!=','custom')]}">
+5 -3
View File
@@ -182,7 +182,7 @@
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'crm.lead', 'include_original' : True}"
icon="terp-mail-replied" type="action" />
icon="gtk-undo" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
@@ -194,10 +194,10 @@
<button colspan="2" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'crm.lead'}"
icon="terp-mail-message-new" type="action" />
icon="gtk-go-forward" type="action" />
<button colspan="2" string="Forward to Partner"
name="%(crm_lead_forward_to_partner_act)d"
icon="terp-mail-forward" type="action" />
icon="gtk-go-forward" type="action" />
</page>
<page string="History" groups="base.group_extended">
<group col="2" colspan="2">
@@ -360,6 +360,7 @@
<group expand="0" string="Group By..." colspan="16">
<filter string="Stage" icon="terp-stage" domain="[]"
context="{'group_by':'stage_id'}" />
<filter string="State" icon="terp-stock_effects-object-colorize" domain="[]" context="{'group_by':'state'}"/>
<filter string="Priority" icon="terp-rating-rated" domain="[]"
context="{'group_by':'priority'}" />
<filter string="Category" icon="terp-stock_symbol-selection"
@@ -368,6 +369,7 @@
<separator orientation="vertical" />
<filter string="Salesman" icon="terp-personal"
domain="[]" context="{'group_by':'user_id'}" />
<filter string="Team" help="Sales Team" icon="terp-personal+" domain="[]" context="{'group_by':'section_id'}"/>
<separator orientation="vertical" />
<filter string="Creation" icon="terp-go-month"
domain="[]" context="{'group_by':'create_date'}" />
+1 -4
View File
@@ -1,10 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<record model="ir.ui.menu" id="base.menu_base_config">
<field eval="[(4, ref('crm.group_crm_manager'))]" name="groups_id"/>
</record>
<menuitem id="base.menu_crm_config_sales" name="Sales"
parent="base.menu_base_config" sequence="1"/>
+1 -1
View File
@@ -13,7 +13,7 @@ msgstr ""
"MIME-Version: 1.0\n"
"Content-Type: text/plain; charset=UTF-8\n"
"Content-Transfer-Encoding: 8bit\n"
"X-Launchpad-Export-Date: 2010-06-29 03:37+0000\n"
"X-Launchpad-Export-Date: 2010-06-30 03:34+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: crm
+14 -35
View File
@@ -51,7 +51,7 @@ class crm_lead_report(osv.osv):
for case in self.browse(cr, uid, ids, context):
if field_name != 'avg_answers':
state = field_name[5:]
cr.execute("select count(*) from crm_opportunity where \
cr.execute("select count(id) from crm_opportunity where \
section_id =%s and state='%s'"%(case.section_id.id, state))
state_cases = cr.fetchone()[0]
perc_state = (state_cases / float(case.nbr)) * 100
@@ -64,7 +64,7 @@ class crm_lead_report(osv.osv):
else:
model_name = model_name[1]
cr.execute("select count(*) from crm_case_log l, ir_model m \
cr.execute("select count(id) from crm_case_log l, ir_model m \
where l.model_id=m.id and m.model = '%s'" , model_name)
logs = cr.fetchone()[0]
@@ -90,7 +90,7 @@ class crm_lead_report(osv.osv):
'company_id': fields.many2one('res.company', 'Company', readonly=True),
'create_date': fields.datetime('Create Date', readonly=True),
'day': fields.char('Day', size=128, readonly=True),
'email': fields.integer('# of Emails', size=128, readonly=True),
'email': fields.integer('# Emails', size=128, readonly=True),
'delay_open': fields.float('Delay to Open',digits=(16,2),readonly=True, group_operator="avg",help="Number of Days to open the case"),
'delay_close': fields.float('Delay to Close',digits=(16,2),readonly=True, group_operator="avg",help="Number of Days to close the case"),
'delay_expected': fields.float('Overpassed Deadline',digits=(16,2),readonly=True, group_operator="avg"),
@@ -120,60 +120,39 @@ class crm_lead_report(osv.osv):
CRM Lead Report
@param cr: the current row, from the database cursor
"""
tools.drop_view_if_exists(cr, 'crm_lead_report')
cr.execute("""
create or replace view crm_lead_report as (
select
min(c.id) as id,
CREATE OR REPLACE VIEW crm_lead_report AS (
SELECT
id,
to_char(c.create_date, 'YYYY') as name,
to_char(c.create_date, 'MM') as month,
to_char(c.create_date, 'YYYY-MM-DD') as day,
to_char(c.create_date, 'YYYY-MM-DD') as creation_date,
to_char(c.date_open, 'YYYY-MM-DD') as opening_date,
to_char(c.date_closed, 'YYYY-mm-dd') as date_closed,
c.state as state,
c.state,
c.user_id,
c.probability,
c.stage_id,
c.type as type,
c.type,
c.company_id,
c.priority,
c.section_id,
c.categ_id,
c.partner_id,
c.planned_revenue,
(select 1) as nbr,
1 as nbr,
0 as avg_answers,
0.0 as perc_done,
0.0 as perc_cancel,
(select count(id) from mailgate_message where res_id=c.id and model='crm.lead') as email,
(SELECT count(id) FROM mailgate_message WHERE model='crm.lead' AND res_id=c.id) AS email,
date_trunc('day',c.create_date) as create_date,
avg(extract('epoch' from (c.date_closed-c.create_date)))/(3600*24) as delay_close,
avg(extract('epoch' from (c.date_deadline - c.date_closed)))/(3600*24) as delay_expected,
avg(extract('epoch' from (c.date_open-c.create_date)))/(3600*24) as delay_open
from
extract('epoch' from (c.date_closed-c.create_date))/(3600*24) as delay_close,
extract('epoch' from (c.date_deadline - c.date_closed))/(3600*24) as delay_expected,
extract('epoch' from (c.date_open-c.create_date))/(3600*24) as delay_open
FROM
crm_lead c
group by
to_char(c.create_date, 'YYYY'),
to_char(c.date_open, 'YYYY-MM-DD'),
to_char(c.date_closed, 'YYYY-mm-dd'),
to_char(c.create_date, 'MM'),
c.state,
c.user_id,
c.id,
c.section_id,
c.stage_id,
c.probability,
c.categ_id,
c.partner_id,
c.planned_revenue,
c.company_id,
c.priority,
c.type,
c.create_date,
to_char(c.create_date, 'YYYY-MM-DD')
)""")
crm_lead_report()
+5 -23
View File
@@ -114,12 +114,11 @@ class crm_phonecall_report(osv.osv):
""" Phone Calls By User And Section
@param cr: the current row, from the database cursor,
"""
tools.drop_view_if_exists(cr, 'crm_phonecall_report')
cr.execute("""
create or replace view crm_phonecall_report as (
select
min(c.id) as id,
id,
to_char(c.create_date, 'YYYY') as name,
to_char(c.create_date, 'MM') as month,
to_char(c.create_date, 'YYYY-MM-DD') as day,
@@ -135,33 +134,16 @@ class crm_phonecall_report(osv.osv):
c.duration,
c.company_id,
c.priority,
(select 1) as nbr,
1 as nbr,
0 as avg_answers,
0.0 as perc_done,
0.0 as perc_cancel,
date_trunc('day',c.create_date) as create_date,
avg(extract('epoch' from (c.date_closed-c.create_date)))/(3600*24) as delay_close,
avg(extract('epoch' from (c.date_open-c.create_date)))/(3600*24) as delay_open
extract('epoch' from (c.date_closed-c.create_date))/(3600*24) as delay_close,
extract('epoch' from (c.date_open-c.create_date))/(3600*24) as delay_open
from
crm_phonecall c
where c.categ_id in (select res_id from ir_model_data where (name = 'categ_phone1' or name ='categ_phone2'))
group by
to_char(c.create_date, 'YYYY'),
to_char(c.create_date, 'MM'),\
c.state,
c.user_id,
c.section_id,
c.categ_id,
c.partner_id,
c.company_id,
c.duration,
c.priority,
to_char(c.date_open, 'YYYY-MM-DD'),
to_char(c.date_closed, 'YYYY-mm-dd'),
c.stage_id,
to_char(c.create_date, 'YYYY-MM-DD'),
c.create_date
where c.categ_id in (select res_id from ir_model_data where (name = 'categ_phone1' or name ='categ_phone2') and model = 'crm.case.categ')
)""")
crm_phonecall_report()
+7 -7
View File
@@ -9,14 +9,14 @@
<record id="group_crm_user" model="res.groups">
<field name="name">CRM / User</field>
</record>
<!---->
<!-- <record model='ir.ui.menu' id='menu_crm'>-->
<!-- <field name="groups_id" eval="[(6,0,[ref('group_crm_manager'),ref('group_crm_user')])]"/>-->
<!-- </record>-->
<!-- <record model='ir.ui.menu' id='menu_crm_configuration'>-->
<!-- <field name="groups_id" eval="[(6,0,[ref('group_crm_manager')])]"/>-->
<!-- </record>-->
<record model='ir.ui.menu' id='base.menu_base_partner'>
<field name="groups_id" eval="[(4,ref('group_crm_manager')),(4,ref('group_crm_user'))]"/>
</record>
<record model="ir.ui.menu" id="base.menu_base_config">
<field eval="[(4, ref('crm.group_crm_manager'))]" name="groups_id"/>
</record>
</data>
</openerp>
@@ -125,7 +125,6 @@ class crm_lead_forward_to_partner(osv.osv_memory):
msg_val = ''
model_pool = self.pool.get('crm.lead')
print history_type
if history_type == 'info':
msg_val = self.get_lead_details(cr, uid, res_id, context=context)
@@ -188,7 +187,6 @@ class crm_lead_forward_to_partner(osv.osv_memory):
this = self.browse(cr, uid, ids[0], context=context)
smtp_pool = self.pool.get('email.smtpclient')
case_pool = self.pool.get(model)
case = case_pool.browse(cr, uid, res_id, context=context)
@@ -29,7 +29,7 @@
<separator string="" colspan="4" />
<group colspan="4" col="2">
<button name="action_cancel" special="cancel" string="Cancel" icon="gtk-cancel" type="object" />
<button name="action_forward" string="Forward" icon="terp-mail-forward" type="object" />
<button name="action_forward" string="Forward" icon="gtk-go-forward" type="object" />
</group>
</form>
</field>
+233 -234
View File
@@ -2,266 +2,265 @@
<openerp>
<data>
<menuitem id="menu_config_claim" name="Claim"
groups="base.group_extended"
parent="base.menu_base_config" sequence="6" />
<menuitem id="menu_config_claim" name="Claim"
groups="base.group_extended"
parent="base.menu_base_config" sequence="6" />
<!-- Claims categories -->
<!-- Claims categories -->
<record id="crm_claim_categ_action" model="ir.actions.act_window">
<field name="name">Claim Categories</field>
<field name="res_model">crm.case.categ</field>
<field name="view_type">form</field>
<field name="view_id" ref="crm.crm_case_categ_tree-view"/>
<field name="domain">[('object_id.model', '=', 'crm.claim')]</field>
<field name="context">{'object_id':'crm.claim'}</field>
</record>
<record id="crm_claim_categ_action" model="ir.actions.act_window">
<field name="name">Claim Categories</field>
<field name="res_model">crm.case.categ</field>
<field name="view_type">form</field>
<field name="view_id" ref="crm.crm_case_categ_tree-view"/>
<field name="domain">[('object_id.model', '=', 'crm.claim')]</field>
<field name="context">{'object_id':'crm.claim'}</field>
</record>
<menuitem action="crm_claim_categ_action" name="Categories"
id="menu_crm_case_claim-act" parent="menu_config_claim" />
<menuitem action="crm_claim_categ_action" name="Categories"
id="menu_crm_case_claim-act" parent="menu_config_claim" />
<!-- Claim Stages -->
<!-- Claim Stages -->
<record id="crm_claim_stage_act" model="ir.actions.act_window">
<field name="name">Claim Stages</field>
<field name="res_model">crm.case.stage</field>
<field name="view_type">form</field>
<field name="view_id" ref="crm.crm_case_stage_tree"/>
<field name="domain">[('object_id.model', '=', 'crm.claim')]</field>
<field name="context">{'object_id':'crm.claim'}</field>
</record>
<record id="crm_claim_stage_act" model="ir.actions.act_window">
<field name="name">Claim Stages</field>
<field name="res_model">crm.case.stage</field>
<field name="view_type">form</field>
<field name="view_id" ref="crm.crm_case_stage_tree"/>
<field name="domain">[('object_id.model', '=', 'crm.claim')]</field>
<field name="context">{'object_id':'crm.claim'}</field>
</record>
<menuitem action="crm_claim_stage_act" name="Stages"
id="menu_crm_claim_stage_act" parent="menu_config_claim" />
<menuitem action="crm_claim_stage_act" name="Stages"
id="menu_crm_claim_stage_act" parent="menu_config_claim" />
<!-- Claim Resource Type -->
<!-- Claim Resource Type -->
<record id="crm_claim_resource_act" model="ir.actions.act_window">
<field name="name">Claim Resource Type</field>
<field name="res_model">crm.case.resource.type</field>
<field name="view_type">form</field>
<field name="view_id" ref="crm.crm_case_resource_type_tree"/>
<field name="domain">[('object_id.model', '=', 'crm.claim')]</field>
<field name="context">{'object_id':'crm.claim'}</field>
</record>
<record id="crm_claim_resource_act" model="ir.actions.act_window">
<field name="name">Claim Resource Type</field>
<field name="res_model">crm.case.resource.type</field>
<field name="view_type">form</field>
<field name="view_id" ref="crm.crm_case_resource_type_tree"/>
<field name="domain">[('object_id.model', '=', 'crm.claim')]</field>
<field name="context">{'object_id':'crm.claim'}</field>
</record>
<menuitem action="crm_claim_resource_act" name="Resource Type"
id="menu_crm_claim_stage_act"
parent="menu_config_claim" />
<menuitem action="crm_claim_resource_act" name="Resource Type"
id="menu_crm_claim_stage_act"
parent="menu_config_claim" />
<!-- Claims -->
<record model="ir.ui.view" id="crm_case_claims_tree_view">
<field name="name">CRM - Claims Tree</field>
<field name="model">crm.claim</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Claims" colors="blue:state=='pending';black:state=='open';grey:state in ('close', 'cancel')">
<field name="name"/>
<field name="partner_id"/>
<field name="user_id" />
<field name="section_id"/>
<field name="date" string="Claim Date"/>
<field name="date_deadline" string="Deadline"/>
<field name="date_closed" string="Closure Date"/>
<field name="categ_id" string="Type" select="1"/>
<field name="stage_id" invisible="1"/>
<field name="som" invisible="1"/>
<field name="state"/>
<button name="case_open" string="Open"
states="draft,pending" type="object"
icon="gtk-go-forward" />
<button name="case_pending" string="Pending"
states="draft,open" type="object"
icon="gtk-media-pause" />
<button name="case_close" string="Close"
states="open,draft,pending" type="object"
icon="gtk-close" />
<button name="case_cancel" string="Cancel"
states="draft,open,pending" type="object"
icon="gtk-cancel" />
<button name="case_reset" string="Reset to Draft"
states="done,cancel" type="object" icon="gtk-convert" />
</tree>
</field>
</record>
<record model="ir.ui.view" id="crm_case_claims_tree_view">
<field name="name">CRM - Claims Tree</field>
<field name="model">crm.claim</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Claims" colors="blue:state=='pending';black:state=='open';grey:state in ('close', 'cancel')">
<field name="name"/>
<field name="partner_id"/>
<field name="user_id" />
<field name="section_id"/>
<field name="date" string="Claim Date"/>
<field name="date_deadline" string="Deadline"/>
<field name="date_closed" string="Closure Date"/>
<field name="categ_id" string="Type" select="1"/>
<field name="stage_id" invisible="1"/>
<field name="som" invisible="1"/>
<field name="state"/>
<button name="case_open" string="Open"
states="draft,pending" type="object"
icon="gtk-go-forward" />
<button name="case_pending" string="Pending"
states="draft,open" type="object"
icon="gtk-media-pause" />
<button name="case_close" string="Close"
states="open,draft,pending" type="object"
icon="gtk-close" />
<button name="case_cancel" string="Cancel"
states="draft,open,pending" type="object"
icon="gtk-cancel" />
<button name="case_reset" string="Reset to Draft"
states="done,cancel" type="object" icon="gtk-convert" />
</tree>
</field>
</record>
<record model="ir.ui.view" id="crm_case_claims_form_view">
<field name="name">CRM - Claims Form</field>
<field name="model">crm.claim</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Claims">
<record model="ir.ui.view" id="crm_case_claims_form_view">
<field name="name">CRM - Claims Form</field>
<field name="model">crm.claim</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Claims">
<group colspan="4" col="4">
<group colspan="1" col="2">
<field name="name" />
</group>
<group colspan="1" col="2">
<field name="date" string="Date of Claim"/>
</group>
<group colspan="1" col="2">
<field name="date_deadline" string="Deadline"/><newline/>
</group>
</group>
<group colspan="4" col="4">
<notebook>
<page string="Claim Info">
<separator colspan="4" string="Communication"/>
<group colspan="4" col="4">
<field name="partner_id" string="Partner"
on_change="onchange_partner_id(partner_id)" />
<field name="partner_address_id" string="Contact"
on_change="onchange_partner_address_id(partner_address_id, email_from)" />
<field name="partner_phone"/>
<field name="partner_mobile"/>
<field name="email_from"/>
</group>
<separator colspan="4" string="Status and Categorization"/>
<group colspan="4" col="6">
<field name="user_id" string="Responsible"/>
<field name="section_id" widget="selection"/>
<label string="Stage: " align="1.0"/>
<group colspan="1" col="3">
<field name="stage_id" select="1" nolabel="1"/>
<button name="stage_previous" string="" type="object" icon="gtk-go-back" />
<button icon="gtk-go-forward" string="" name="stage_next" type="object"/>
<group colspan="1" col="2">
<field name="name" />
</group>
<group colspan="1" col="2">
<field name="date" string="Date of Claim"/>
</group>
<group colspan="1" col="2">
<field name="date_deadline" string="Deadline"/><newline/>
</group>
<field name="categ_id" select="1" widget="selection"
domain="[('object_id.model', '=', 'crm.claim')]" />
<field name="type_id" string="Type of Action" select="1"
domain="[('object_id.model', '=', 'crm.claim')]" />
<field name="priority"/>
</group>
<separator colspan="4" string="References"/>
<group colspan="4" col="4">
<field name="ref"/>
<field name="ref2"/>
</group>
<separator colspan="4" string="Claim/Action Description"/>
<field name="description" colspan="4" nolabel="1"/>
<separator colspan="4" string=""/>
<group col="8" colspan="4">
<field name="state" select="1"/>
<button name="case_open" string="Open"
states="draft,pending" type="object"
icon="gtk-go-forward" />
<button name="case_pending" string="Pending"
states="draft,open" type="object"
icon="gtk-media-pause" />
<button name="case_close" string="Done"
states="open,draft,pending" type="object"
icon="gtk-jump-to" />
<button name="case_cancel" string="Cancel"
states="draft,open,pending" type="object"
icon="gtk-cancel" />
<button name="case_reset"
string="Reset to Draft" states="done,cancel"
type="object" icon="gtk-convert" />
</group>
</page>
<page string="History" groups="base.group_extended">
<field name="id" select="1"/>
<field name="active"/>
<field name="canal_id"/>
<field name="som"/>
<separator colspan="4" string="Dates"/>
<field name="create_date"/>
<field name="date_closed"/>
<field name="log_ids" nolabel="1" colspan="4">
<tree string="Logs">
<field name="name" colspan="4"/>
<field name="date"/>
<field name="user_id"/>
</tree>
<form string="Logs">
<separator string="Action Information" colspan="4"/>
<field name="name" colspan="4"/>
<field name="date"/>
<field name="user_id"/>
</form>
</field>
</page>
<page string="Emails" groups="base.group_extended">
<group colspan="4">
<field colspan="4" name="email_cc" string="CC"/>
</group>
<field name="message_ids" colspan="4" nolabel="1" mode="form,tree" height="280">
<form string="Communication history">
<group col="6" colspan="4">
<field name="date"/>
<field name="email_to"/>
<field name="email_from"/>
<notebook>
<page string="Claim Info">
<separator colspan="4" string="Communication"/>
<group colspan="4" col="4">
<field name="partner_id" string="Partner"
on_change="onchange_partner_id(partner_id)" />
<field name="partner_address_id" string="Contact"
on_change="onchange_partner_address_id(partner_address_id, email_from)" />
<field name="partner_phone"/>
<field name="partner_mobile"/>
<field name="email_from"/>
</group>
<separator colspan="4" string="Status and Categorization"/>
<group colspan="4" col="6">
<field name="user_id" string="Responsible"/>
<field name="section_id" widget="selection"/>
<label string="Stage: " align="1.0"/>
<group colspan="1" col="3">
<field name="stage_id" select="1" nolabel="1"/>
<button name="stage_previous" string="" type="object" icon="gtk-go-back" />
<button icon="gtk-go-forward" string="" name="stage_next" type="object"/>
</group>
<notebook colspan="4">
<page string="Details">
<field name="description" colspan="4" nolabel="1"/>
</page>
<page string="Attachments">
<field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
</page>
</notebook>
<button colspan="4"
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'crm.lead'}"
icon="terp-mail-replied" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
<field name="email_from" />
<field name="email_to"/>
<field name="description"/>
</tree>
</field>
<button colspan="4" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'crm.claim'}"
icon="terp-mail-message-new" type="action" />
</page>
</notebook>
<field name="categ_id" select="1" widget="selection"
domain="[('object_id.model', '=', 'crm.claim')]" />
<field name="type_id" string="Type of Action" select="1"
domain="[('object_id.model', '=', 'crm.claim')]" />
<field name="priority"/>
</group>
<separator colspan="4" string="References"/>
<group colspan="4" col="4">
<field name="ref"/>
<field name="ref2"/>
</group>
<separator colspan="4" string="Claim/Action Description"/>
<field name="description" colspan="4" nolabel="1"/>
<separator colspan="4" string=""/>
<group col="8" colspan="4">
<field name="state" select="1"/>
<button name="case_open" string="Open"
states="draft,pending" type="object"
icon="gtk-go-forward" />
<button name="case_pending" string="Pending"
states="draft,open" type="object"
icon="gtk-media-pause" />
<button name="case_close" string="Done"
states="open,draft,pending" type="object"
icon="gtk-jump-to" />
<button name="case_cancel" string="Cancel"
states="draft,open,pending" type="object"
icon="gtk-cancel" />
<button name="case_reset"
string="Reset to Draft" states="done,cancel"
type="object" icon="gtk-convert" />
</group>
</page>
<page string="Emails" groups="base.group_extended">
<group colspan="4">
<field colspan="4" name="email_cc" string="CC"/>
</group>
<field name="message_ids" colspan="4" nolabel="1" mode="form,tree" height="280">
<form string="Communication history">
<group col="6" colspan="4">
<field name="date"/>
<field name="email_to"/>
<field name="email_from"/>
</group>
<notebook colspan="4">
<page string="Details">
<field name="description" colspan="4" nolabel="1"/>
</page>
<page string="Attachments">
<field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
</page>
</notebook>
<button colspan="4"
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'crm.lead'}"
icon="terp-mail-replied" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
<field name="email_from" />
<field name="email_to"/>
<field name="description"/>
</tree>
</field>
<button colspan="4" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'crm.claim'}"
icon="terp-mail-message-new" type="action" />
</page>
<page string="History" groups="base.group_extended">
<field name="id" select="1"/>
<field name="active"/>
<field name="canal_id"/>
<field name="som"/>
<separator colspan="4" string="Dates"/>
<field name="create_date"/>
<field name="date_closed"/>
<field name="log_ids" nolabel="1" colspan="4">
<tree string="Logs">
<field name="name" colspan="4"/>
<field name="date"/>
<field name="user_id"/>
</tree>
<form string="Logs">
<separator string="Action Information" colspan="4"/>
<field name="name" colspan="4"/>
<field name="date"/>
<field name="user_id"/>
</form>
</field>
</page>
</notebook>
</group>
</form>
</field>
</record>
</group>
</form>
</field>
</record>
<!-- Claim Calendar view -->
<!-- Claim Calendar view -->
<record model="ir.ui.view" id="crm_case_claims_calendar_view">
<field name="name">CRM - Claims Calendar</field>
<field name="model">crm.claim</field>
<field name="type">calendar</field>
<field name="priority" eval="2"/>
<field name="arch" type="xml">
<calendar string="Claims" date_start="date" color="user_id">
<field name="name"/>
<field name="partner_name"/>
<field name="categ_id"/>
</calendar>
</field>
</record>
<record model="ir.ui.view" id="crm_case_claims_calendar_view">
<field name="name">CRM - Claims Calendar</field>
<field name="model">crm.claim</field>
<field name="type">calendar</field>
<field name="priority" eval="2"/>
<field name="arch" type="xml">
<calendar string="Claims" date_start="date" color="user_id">
<field name="name"/>
<field name="partner_name"/>
<field name="categ_id"/>
</calendar>
</field>
</record>
<!-- Claim Graph view -->
<!-- Claim Graph view -->
<record model="ir.ui.view" id="crm_case_graph_view_stage_cost">
<field name="name">CRM -Graph</field>
<field name="model">crm.claim</field>
<field name="type">graph</field>
<field name="arch" type="xml">
<graph string="Cases By Stage and Estimates" type="bar" orientation="vertical">
<field name="stage_id"/>
<field name="planned_cost" operator="+"/>
<field name="planned_revenue" operator="+"/>
</graph>
</field>
</record>
<record model="ir.ui.view" id="crm_case_graph_view_stage_cost">
<field name="name">CRM -Graph</field>
<field name="model">crm.claim</field>
<field name="type">graph</field>
<field name="arch" type="xml">
<graph string="Cases By Stage and Estimates" type="bar" orientation="vertical">
<field name="stage_id"/>
<field name="planned_cost" operator="+"/>
<field name="planned_revenue" operator="+"/>
</graph>
</field>
</record>
<!-- Crm claim Search view -->
<!-- Crm claim Search view -->
<record id="view_crm_case_claims_filter" model="ir.ui.view">
<record id="view_crm_case_claims_filter" model="ir.ui.view">
<field name="name">CRM - Claims Search</field>
<field name="model">crm.claim</field>
<field name="type">search</field>
+38 -38
View File
@@ -17,7 +17,7 @@
<field name="context">{'object_id':'crm.fundraising'}</field>
</record>
<menuitem action="crm_fund_categ_action" name="Categories"
<menuitem action="crm_fund_categ_action" name="Categories"
id="menu_crm_case_fundraising-act" groups="base.group_extended"
parent="menu_config_fundrising" />
@@ -154,6 +154,43 @@
type="object" icon="gtk-convert" />
</group>
</page>
<page string="Emails" groups="base.group_extended">
<group colspan="4">
<field colspan="4" name="email_cc" string="CC"/>
</group>
<field name="message_ids" colspan="4" nolabel="1" mode="form,tree">
<form string="Communication history">
<group col="6" colspan="4">
<field name="date"/>
<field name="email_to"/>
<field name="email_from"/>
</group>
<notebook colspan="4">
<page string="Details">
<field name="description" colspan="4" nolabel="1"/>
</page>
<page string="Attachments">
<field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
</page>
</notebook>
<button colspan="4"
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'crm.fundraising'}"
icon="gtk-undo" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
<field name="email_from" />
<field name="email_to"/>
<field name="description"/>
</tree>
</field>
<button colspan="4" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'crm.fundraising'}"
icon="gtk-go-forward" type="action" />
</page>
<page string="History" groups="base.group_extended">
<group col="2" colspan="2">
<separator colspan="4" string="Misc"/>
@@ -189,43 +226,6 @@
</form>
</field>
</page>
<page string="Emails" groups="base.group_extended">
<group colspan="4">
<field colspan="4" name="email_cc" string="CC"/>
</group>
<field name="message_ids" colspan="4" nolabel="1" mode="form,tree">
<form string="Communication history">
<group col="6" colspan="4">
<field name="date"/>
<field name="email_to"/>
<field name="email_from"/>
</group>
<notebook colspan="4">
<page string="Details">
<field name="description" colspan="4" nolabel="1"/>
</page>
<page string="Attachments">
<field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
</page>
</notebook>
<button colspan="4"
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'crm.fundraising'}"
icon="terp-mail-replied" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
<field name="email_from" />
<field name="email_to"/>
<field name="description"/>
</tree>
</field>
<button colspan="4" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'crm.fundraising'}"
icon="terp-mail-message-new" type="action" />
</page>
</notebook>
</form>
</field>
+37 -37
View File
@@ -93,6 +93,43 @@
icon="gtk-convert" />
</group>
</page>
<page string="Emails" groups="base.group_extended">
<group colspan="4">
<field colspan="4" name="email_cc" string="CC"/>
</group>
<field name="message_ids" colspan="4" nolabel="1" mode="form,tree">
<form string="Communication history">
<group col="6" colspan="4">
<field name="date"/>
<field name="email_to"/>
<field name="email_from"/>
</group>
<notebook colspan="4">
<page string="Details">
<field name="description" colspan="4" nolabel="1"/>
</page>
<page string="Attachments">
<field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
</page>
</notebook>
<button colspan="4"
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'crm.helpdesk'}"
icon="gtk-undo" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
<field name="email_from" />
<field name="email_to"/>
<field name="description"/>
</tree>
</field>
<button colspan="4" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'crm.helpdesk'}"
icon="gtk-go-forward" type="action" />
</page>
<page string="History" groups="base.group_extended">
<group colspan="2" col="2">
<separator colspan="4" string="Dates"/>
@@ -128,43 +165,6 @@
</form>
</field>
</page>
<page string="Emails" groups="base.group_extended">
<group colspan="4">
<field colspan="4" name="email_cc" string="CC"/>
</group>
<field name="message_ids" colspan="4" nolabel="1" mode="form,tree">
<form string="Communication history">
<group col="6" colspan="4">
<field name="date"/>
<field name="email_to"/>
<field name="email_from"/>
</group>
<notebook colspan="4">
<page string="Details">
<field name="description" colspan="4" nolabel="1"/>
</page>
<page string="Attachments">
<field name="attachment_ids" colspan="4" readonly="1" nolabel="1"/>
</page>
</notebook>
<button colspan="4"
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'crm.helpdesk'}"
icon="terp-mail-replied" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
<field name="email_from" />
<field name="email_to"/>
<field name="description"/>
</tree>
</field>
<button colspan="4" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'crm.helpdesk'}"
icon="terp-mail-message-new" type="action" />
</page>
</notebook>
</form>
</field>
+1 -1
View File
@@ -40,7 +40,7 @@
""",
'author': 'Tiny',
'website': 'http://www.openerp.com',
'depends': ['base', 'process','board'],
'depends': ['process','board', 'knowledge'],
'init_xml': [],
'update_xml': [
'security/document_security.xml',
+2 -7
View File
@@ -1,11 +1,6 @@
<openerp>
<data>
<!--<menuitem name="Document Management" icon="terp-stock" id="menu_document"/>
<menuitem name="Document Configuration" id="menu_document_configuration" parent="menu_document"/>-->
<menuitem name="Knowledge" icon="terp-stock" id="base.menu_document" sequence="19" groups="group_document_user"/>
<menuitem name="Configuration" id="base.menu_document_configuration" parent="base.menu_document" sequence="50"/>
<menuitem name="Document Management" id="menu_document_management_configuration" parent="base.menu_document_configuration" sequence="1"/>
<menuitem name="Document Management" id="menu_document_management_configuration" parent="knowledge.menu_document_configuration" sequence="1"/>
<record model="ir.ui.view" id="view_document_storage_form">
<field name="name">document.storage</field>
@@ -323,7 +318,7 @@
<field name="name">Document</field>
<field name="view_type">form</field>
</record>
<menuitem name="Documents" id="menu_document_doc" parent="base.menu_document" sequence="5"/>
<menuitem name="Documents" id="menu_document_doc" parent="knowledge.menu_document" sequence="5"/>
<menuitem
name="Documents"
action="action_document_file_form"
@@ -10,7 +10,7 @@
<field name="name">Document / Manager</field>
</record>
<record id="base.menu_document_configuration" model="ir.ui.menu">
<record id="knowledge.menu_document_configuration" model="ir.ui.menu">
<field name="groups_id" eval="[(6,0,[ref('group_document_manager')])]"/>
</record>
+1 -7
View File
@@ -92,12 +92,6 @@
<field name="context">{}</field>
<field name="domain">[]</field>
</record>
<!-- <menuitem -->
<!-- parent="base.menu_document"-->
<!-- id="menu_action_document_email_tree" -->
<!-- name="Email to Documents"-->
<!-- action="action_document_email_form"/>-->
</data>
</openerp>
+2 -2
View File
@@ -9,7 +9,7 @@
<menuitem
id="menu_hr_main"
parent="menu_hr_root"
name="Human Resources Management"
name="Human Resources"
sequence="0"/>
<menuitem
id="menu_hr_configuration"
@@ -19,7 +19,7 @@
sequence="50" />
<menuitem
id="menu_hr_management"
name="Human Resources Management"
name="Human Resources"
parent="hr.menu_hr_configuration"
groups="group_hr_manager"
sequence="1" />
+279
View File
@@ -0,0 +1,279 @@
# Spanish translation for openobject-addons
# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-11-25 12:18+0000\n"
"PO-Revision-Date: 2010-06-29 22:34+0000\n"
"Last-Translator: Borja López Soilán (Pexego) <borjals@pexego.es>\n"
"Language-Team: Spanish <es@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: 2010-06-30 03:34+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: hr_evaluation
#: view:hr_evaluation.type:0
#: field:hr_evaluation.type,info:0
msgid "Information"
msgstr "Información"
#. module: hr_evaluation
#: constraint:ir.model:0
msgid ""
"The Object name must start with x_ and not contain any special character !"
msgstr ""
"¡El nombre del objeto debe empezar con x_ y no puede contener ningún "
"carácter especial!"
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
msgid "Schedule next evaluation"
msgstr "Programar siguiente evaluación"
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
#: field:hr_evaluation.evaluation,info_bad:0
msgid "Bad Points"
msgstr "Puntos malos"
#. module: hr_evaluation
#: model:ir.actions.act_window,name:hr_evaluation.open_view_employee_evaluation_next_my_list
msgid "My Next Evaluation"
msgstr "Mi siguiente evaluación"
#. module: hr_evaluation
#: field:hr_evaluation.type,value_ids:0
msgid "Values"
msgstr "Valores"
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
#: field:hr_evaluation.evaluation,info_good:0
msgid "Good Points"
msgstr "Puntos buenos"
#. module: hr_evaluation
#: field:hr_evaluation.evaluation,state:0
msgid "State"
msgstr "Estado"
#. module: hr_evaluation
#: field:hr_evaluation.evaluation,score:0
#: field:hr_evaluation.quote,score:0
#: field:hr_evaluation.type,score:0
#: field:hr_evaluation.type.value,score:0
msgid "Score"
msgstr "Puntuación"
#. module: hr_evaluation
#: selection:hr_evaluation.evaluation,state:0
msgid "Draft"
msgstr "Borrador"
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
msgid "Informal Data"
msgstr "Datos informales"
#. module: hr_evaluation
#: constraint:ir.actions.act_window:0
msgid "Invalid model name in the action definition."
msgstr "Nombre de modelo inválido en la definición de acción."
#. module: hr_evaluation
#: field:hr_evaluation.evaluation,employee_id:0
msgid "Employee"
msgstr "Empleado"
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
#: field:hr_evaluation.evaluation,info_improve:0
msgid "To Improve"
msgstr "A mejorar"
#. module: hr_evaluation
#: field:hr_evaluation.quote,evaluation_id:0
msgid "Evaluation"
msgstr "Evaluación"
#. module: hr_evaluation
#: field:hr_evaluation.type.value,type_id:0
msgid "Evaluation Type"
msgstr "Tipo de evaluación"
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
msgid "Status"
msgstr "Estado"
#. module: hr_evaluation
#: view:hr_evaluation.type:0
msgid "Apply to categories"
msgstr "Aplicar a categorias"
#. module: hr_evaluation
#: model:ir.module.module,description:hr_evaluation.module_meta_information
msgid "Ability to create employees evaluation."
msgstr "Capacidad de crear evaluaciones de empleados"
#. module: hr_evaluation
#: field:hr_evaluation.quote,name:0
msgid "Quote"
msgstr "Cita"
#. module: hr_evaluation
#: field:hr_evaluation.type,category_ids:0
msgid "Appliable Role"
msgstr ""
#. module: hr_evaluation
#: field:hr_evaluation.evaluation,user_id:0
msgid "Evaluation User"
msgstr "Usuario evaluación"
#. module: hr_evaluation
#: view:hr_evaluation.type:0
msgid "Choices Results"
msgstr "Resultados elecciones"
#. module: hr_evaluation
#: field:hr_evaluation.evaluation,date:0
msgid "Date"
msgstr "Fecha"
#. module: hr_evaluation
#: model:ir.ui.menu,name:hr_evaluation.menu_eval_hr
#: model:ir.ui.menu,name:hr_evaluation.menu_open_view_employee_evaluation_form
msgid "Evaluations"
msgstr "Evaluaciones"
#. module: hr_evaluation
#: model:ir.ui.menu,name:hr_evaluation.menu_eval_config
msgid "Configuration"
msgstr "Configuración"
#. module: hr_evaluation
#: model:ir.ui.menu,name:hr_evaluation.menu_open_view_employee_evaluation_next_list
msgid "Next Evaluations"
msgstr "Siguientes evaluaciones"
#. module: hr_evaluation
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
msgstr "¡XML inválido para la estructura de la vista!"
#. module: hr_evaluation
#: model:ir.ui.menu,name:hr_evaluation.menu_open_view_evaluation_type_form
msgid "Evaluation Criterions"
msgstr "Criterios de evaluación"
#. module: hr_evaluation
#: model:ir.ui.menu,name:hr_evaluation.menu_open_view_employee_my_old_evaluation_list
msgid "My Preceeding Evaluations"
msgstr "Mis evaluaciones previas"
#. module: hr_evaluation
#: model:ir.ui.menu,name:hr_evaluation.menu_resp_hr
msgid "HR Responsible"
msgstr "Responsable RRHH"
#. module: hr_evaluation
#: field:hr_evaluation.quote,value_id:0
#: field:hr_evaluation.type.value,name:0
msgid "Value"
msgstr "Valor"
#. module: hr_evaluation
#: field:hr_evaluation.evaluation,name:0
msgid "Summary"
msgstr "Resúmen"
#. module: hr_evaluation
#: field:hr_evaluation.type,active:0
msgid "Active"
msgstr "Activo"
#. module: hr_evaluation
#: view:hr_evaluation.type:0
msgid "Notes"
msgstr "Notas"
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_evaluation
msgid "Employee Evaluation"
msgstr "Evaluación empleado"
#. module: hr_evaluation
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_type
msgid "Employee Evaluation Type"
msgstr "Tipo evaluación empleado"
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
msgid "Quotations"
msgstr "Citas"
#. module: hr_evaluation
#: model:ir.actions.act_window,name:hr_evaluation.open_view_employee_evaluation_next_list
msgid "Next Employee Evaluation"
msgstr "Siguiente evaluación empleado"
#. module: hr_evaluation
#: field:hr_evaluation.quote,type_id:0
msgid "Type"
msgstr "Tipo"
#. module: hr_evaluation
#: view:hr_evaluation.type:0
#: field:hr_evaluation.type,name:0
msgid "Evaluation Criterion"
msgstr ""
#. module: hr_evaluation
#: model:ir.ui.menu,name:hr_evaluation.menu_open_view_employee_evaluation_next_my_list
msgid "My Next Evaluations"
msgstr ""
#. module: hr_evaluation
#: view:hr_evaluation.quote:0
msgid "Evalution Quote"
msgstr ""
#. module: hr_evaluation
#: model:ir.module.module,shortdesc:hr_evaluation.module_meta_information
msgid "Human Resources Evaluation"
msgstr ""
#. module: hr_evaluation
#: field:hr_evaluation.evaluation,quote_ids:0
msgid "Quotes"
msgstr ""
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
#: selection:hr_evaluation.evaluation,state:0
msgid "Done"
msgstr ""
#. module: hr_evaluation
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_quote
msgid "Employee Evaluation Quote"
msgstr ""
#. module: hr_evaluation
#: view:hr_evaluation.evaluation:0
#: field:hr_evaluation.evaluation,info_employee:0
msgid "Employee Response"
msgstr ""
#. module: hr_evaluation
#: model:ir.model,name:hr_evaluation.model_hr_evaluation_type_value
msgid "Evaluation Type Value"
msgstr ""
+9 -9
View File
@@ -1,14 +1,14 @@
<?xml version="1.0"?>
<openerp>
<data>
<report id="report_holidays_summary"
string="Summary Of Leaves"
model="hr.holidays"
name="holidays.summary"
xsl="hr_holidays/report/holidays_summary.xsl"
auto="False"
menu="False"/>
<data>
<report id="report_holidays_summary"
string="Summary Of Leaves"
model="hr.holidays"
name="holidays.summary"
xsl="hr_holidays/report/holidays_summary.xsl"
auto="False"
menu="False"/>
</data>
</data>
</openerp>
+92 -94
View File
@@ -55,11 +55,11 @@
</group>
<notebook colspan="4">
<page string="General">
<field name="holiday_status_id" select="1" on_change="onchange_sec_id(holiday_status_id)" context="{'employee_id':employee_id}" />
<field name="holiday_status_id" select="1" on_change="onchange_sec_id(holiday_status_id)" context="{'employee_id':employee_id}" />
<field name="department_id"/>
<field name="date_from" select="1" on_change="onchange_date_from(date_to, date_from)" required="1"/>
<field name="date_to" select="1" on_change="onchange_date_to(date_from, date_to)" required="1"/>
<field name="number_of_days_temp"/>
<field name="date_from" select="1" on_change="onchange_date_from(date_to, date_from)" required="1"/>
<field name="date_to" select="1" on_change="onchange_date_to(date_from, date_to)" required="1"/>
<field name="number_of_days_temp"/>
<newline/>
<field name="manager_id"/>
<field name="manager_id2"/>
@@ -70,7 +70,7 @@
<group colspan="2">
<button string="Confirm" name="confirm" states="draft" type="workflow" icon="gtk-yes"/>
<button string="Validate" name="validate" states="confirm" type="workflow" icon="gtk-apply"/>
<button string="Approve" name="second_validate" states="validate1" type="workflow" icon="gtk-apply"/>
<button string="Approve" name="second_validate" states="validate1" type="workflow" icon="gtk-apply"/>
<button string="Refuse" name="refuse" states="confirm,validate1" type="workflow" icon="gtk-no"/>
<button string="Cancel" name="cancel" states="validate,refuse" type="workflow" icon="gtk-cancel"/>
<button string="Set to Draft" name="set_to_draft" states="cancel" type="object" icon="gtk-convert"/>
@@ -82,48 +82,48 @@
</record>
<!-- Holidays: Allocation Request -->
<record model="ir.ui.view" id="allocation_leave_new">
<field name="name">Allocation Request</field>
<field name="model">hr.holidays</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Allocation Request">
<group col="4" colspan="4">
<field name="name" select="1"/>
<field name="holiday_status_id" select="1"/>
<field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" string="Allocation Type"/>
<group col="2" colspan="2">
<group attrs="{'invisible':[('holiday_type','=','category')]}">
<field name="employee_id" select="1" attrs="{'required':[('holiday_type','=','employee')]}"/>
</group>
<group attrs="{'invisible':[('holiday_type','=','employee')]}">
<field name="category_id" select="1" attrs="{'required':[('holiday_type','=','category')], 'readonly':[('state','!=','draft')]}"/>
</group>
</group>
</group>
<notebook colspan="4">
<page string="General">
<field name="number_of_days_temp"/>
<field name="department_id"/>
<field name="manager_id"/>
<field name="manager_id2"/>
<separator string="Notes" colspan="4"/>
<field name="notes" nolabel="1" colspan="4" />
<newline/>
<field name="state" select="1" colspan="2"/>
<group colspan="2">
<button string="Confirm" name="confirm" states="draft" type="workflow" icon="gtk-yes"/>
<button string="Validate" name="validate" states="confirm" type="workflow" icon="gtk-apply"/>
<button string="Approve" name="second_validate" states="validate1" type="workflow" icon="gtk-apply"/>
<button string="Refuse" name="refuse" states="confirm,validate1" type="workflow" icon="gtk-no"/>
<button string="Cancel" name="cancel" states="validate,refuse" type="workflow" icon="gtk-cancel"/>
<button string="Set to Draft" name="set_to_draft" states="cancel" type="object" icon="gtk-convert"/>
</group>
</page>
</notebook>
</form>
</field>
</record>
<record model="ir.ui.view" id="allocation_leave_new">
<field name="name">Allocation Request</field>
<field name="model">hr.holidays</field>
<field name="type">form</field>
<field name="arch" type="xml">
<form string="Allocation Request">
<group col="4" colspan="4">
<field name="name" select="1"/>
<field name="holiday_status_id" select="1"/>
<field name="holiday_type" on_change="onchange_type(holiday_type)" attrs="{'readonly':[('state','!=','draft')]}" string="Allocation Type"/>
<group col="2" colspan="2">
<group attrs="{'invisible':[('holiday_type','=','category')]}">
<field name="employee_id" select="1" attrs="{'required':[('holiday_type','=','employee')]}"/>
</group>
<group attrs="{'invisible':[('holiday_type','=','employee')]}">
<field name="category_id" select="1" attrs="{'required':[('holiday_type','=','category')], 'readonly':[('state','!=','draft')]}"/>
</group>
</group>
</group>
<notebook colspan="4">
<page string="General">
<field name="number_of_days_temp"/>
<field name="department_id"/>
<field name="manager_id"/>
<field name="manager_id2"/>
<separator string="Notes" colspan="4"/>
<field name="notes" nolabel="1" colspan="4" />
<newline/>
<field name="state" select="1" colspan="2"/>
<group colspan="2">
<button string="Confirm" name="confirm" states="draft" type="workflow" icon="gtk-yes"/>
<button string="Validate" name="validate" states="confirm" type="workflow" icon="gtk-apply"/>
<button string="Approve" name="second_validate" states="validate1" type="workflow" icon="gtk-apply"/>
<button string="Refuse" name="refuse" states="confirm,validate1" type="workflow" icon="gtk-no"/>
<button string="Cancel" name="cancel" states="validate,refuse" type="workflow" icon="gtk-cancel"/>
<button string="Set to Draft" name="set_to_draft" states="cancel" type="object" icon="gtk-convert"/>
</group>
</page>
</notebook>
</form>
</field>
</record>
<record model="ir.ui.view" id="view_holiday_allocation_tree">
<field name="name">hr.holidays.allocation.tree</field>
@@ -242,7 +242,7 @@
</record>
-->
<menuitem
name="Holidays Management"
name="Holidays"
parent="hr.menu_hr_root"
id="menu_open_ask_holidays"
sequence="5"/>
@@ -257,53 +257,51 @@
<field name="search_view_id" ref="view_hr_holidays_filter"/>
</record>
<record model="ir.actions.act_window.view" id="action_open_ask_holidays_tree">
<field name="sequence" eval="1"/>
<field name="view_mode">tree</field>
<field name="view_id" ref="view_holiday"/>
<field name="act_window_id" ref="open_ask_holidays"/>
</record>
<record model="ir.actions.act_window.view" id="action_open_ask_holidays_tree">
<field name="sequence" eval="1"/>
<field name="view_mode">tree</field>
<field name="view_id" ref="view_holiday"/>
<field name="act_window_id" ref="open_ask_holidays"/>
</record>
<record model="ir.actions.act_window.view" id="action_open_ask_holidays_form">
<field name="sequence" eval="2"/>
<field name="view_mode">form</field>
<field name="view_id" ref="edit_holiday_new"/>
<field name="act_window_id" ref="open_ask_holidays"/>
</record>
<record model="ir.actions.act_window.view" id="action_open_ask_holidays_form">
<field name="sequence" eval="2"/>
<field name="view_mode">form</field>
<field name="view_id" ref="edit_holiday_new"/>
<field name="act_window_id" ref="open_ask_holidays"/>
</record>
<menuitem
name="Leave Requests"
parent="menu_open_ask_holidays"
id="menu_open_ask_holidays_new"
action="open_ask_holidays"/>
<menuitem
name="Leave Requests"
parent="menu_open_ask_holidays"
id="menu_open_ask_holidays_new"
action="open_ask_holidays"/>
<record model="ir.actions.act_window" id="open_allocation_holidays">
<field name="name">Allocation Requests</field>
<field name="res_model">hr.holidays</field>
<field name="view_type">form</field>
<field name="context">{'search_default_user_id':uid,'type':'add'}</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" id="open_allocation_holidays">
<field name="name">Allocation Requests</field>
<field name="res_model">hr.holidays</field>
<field name="view_type">form</field>
<field name="context">{'search_default_user_id':uid,'type':'add'}</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_open_allocation_holidays_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="open_allocation_holidays"/>
</record>
<record model="ir.actions.act_window.view" id="action_open_allocation_holidays_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="open_allocation_holidays"/>
</record>
<record model="ir.actions.act_window.view" id="action_open_allocation_holidays_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="open_allocation_holidays"/>
</record>
<record model="ir.actions.act_window.view" id="action_open_allocation_holidays_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="open_allocation_holidays"/>
</record>
<menuitem
<menuitem
name="Allocation Requests"
parent="menu_open_ask_holidays"
id="menu_open_allocation_holidays"
@@ -368,18 +366,18 @@
id="menu_open_view_holiday_status"
parent="hr.menu_open_view_attendance_reason_config"/>
<!-- holiday on resource leave -->
<!-- holiday on resource leave -->
<record id="resource_calendar_leave_form_inherit" model="ir.ui.view">
<field name="name">resource.calendar.leaves.form.inherit</field>
<field name="model">resource.calendar.leaves</field>
<field name="type">form</field>
<field name="inherit_id" ref="resource.resource_calendar_leave_form"/>
<field name="arch" type="xml">
<field name="date_to" position="after">
<field name="holiday_id"/>
</field>
<field name="date_to" position="after">
<field name="holiday_id"/>
</field>
</field>
</record>
</record>
<!-- Shortcuts -->
<act_window name="Holidays"
+2 -18
View File
@@ -1,7 +1,7 @@
<?xml version="1.0" ?>
<openerp>
<data>
<menuitem
<data>
<menuitem
id="hr.menu_hr_reporting"
name="Reporting"
parent="hr.menu_hr_root"
@@ -11,21 +11,5 @@
name="Holidays"
parent="hr.menu_hr_reporting"
sequence="6" />
<!--<wizard string="Holidays by Departement"
name="hr.holidays.summary"
id="holidays_summary"/>-->
<!--<menuitem name="Leaves by Departement" parent="menu_hr_reporting_holidays"
icon="STOCK_PRINT"
action="holidays_summary"
type="wizard"
id="menu_holidays_summary" sequence="20"/>
<record model='ir.ui.menu' id="menu_holidays_summary">
<field eval="[(6,0,[ref('hr.group_hr_manager')])]" name="groups_id"/>
</record>
-->
<!--<wizard string="Employee's Holidays"
model="hr.employee" name="hr.holidays.summary.employee"
keyword="client_print_multi" id="wizard_holidays_summary" />-->
</data>
</openerp>
+2 -3
View File
@@ -37,10 +37,10 @@
'website':'http://www.openerp.com',
'depends': [
'hr',
'account',
'hr_contract',
'hr_holidays',
'hr_expense',
'account'
'hr_expense'
],
'init_xml': [
],
@@ -53,7 +53,6 @@
'hr_payroll_wizard.xml'
],
'demo_xml': [
'hr_payroll_demo.xml'
],
'installable': True,
'active': False,
File diff suppressed because it is too large Load Diff
+1 -11
View File
@@ -1,16 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<openerp>
<data>
<!-- Wages Type-->
<record model="hr.contract.wage.type" id="wage_basic">
<field name="name">Monthly Basic Wage</field>
<field name="period_id" ref="hr_contract.hr_contract_wage_type_period_monthly"/>
<field name="type">basic</field>
<field name="factor_type">1.80</field>
</record>
<!-- Payroll Heads -->
<record id="hra" model="hr.allounce.deduction.categoty">
<record id="HRA" model="hr.allounce.deduction.categoty">
<field name="code">HRA</field>
<field name="type">allowance</field>
<field name="name">House Rant Allowance</field>
@@ -117,6 +108,5 @@
<field name="type">allowance</field>
<field name="name">Other Taxable Allowance</field>
</record>
</data>
</openerp>
+63 -23
View File
@@ -131,7 +131,7 @@
<group colspan="2" col="2">
<separator string="Personal Info" colspan="2"/>
<field name="pan_no" select="1"/>
<field name="bank_account_id"/>
<field name="bank_account"/>
<field name="place_of_birth"/>
<field name="children"/>
</group>
@@ -458,8 +458,23 @@
</group>
</page>
<page string="Accounting Details">
<group col="2" colspan="2">
<separator colspan="2" string="Other Informations"/>
<group col="2" colspan="3">
<separator colspan="4" string="Accounting Informations"/>
<field name="move_ids" colspan="2" nolabel="1" readonly="1">
<tree string="Accounting Vouchers">
<field name="sequence"/>
<field name="name"/>
<field name="move_id"/>
</tree>
<form string="Accounting Vouchers">
<field name="sequence"/>
<field name="name"/>
<field name="move_id"/>
</form>
</field>
</group>
<group col="2" colspan="1">
<separator colspan="4" string="Other Informations"/>
<field name="paid" readonly="1"/>
<field name="company_id"/>
<field name="register_id"/>
@@ -469,26 +484,59 @@
<separator colspan="4" string="Description"/>
<field name="note" colspan="4" nolabel="1"/>
</page>
<page string="Account Lines">
<field name="move_line_ids" colspan="4" nolabel="1"/>
</page>
<page string="Payment Lines">
<field name="move_payment_ids" colspan="4" nolabel="1"/>
</page>
</notebook>
<group col="9" colspan="4">
<group col="10" colspan="4">
<field name="state"/>
<button string="Compute Sheet" name="compute_sheet" states="new"/>
<button string="Recompute Sheet" name="compute_sheet" type="object" states="draft"/>
<button string="Verify Sheet" name="verify_sheet" states="draft"/>
<button string="Complete HR Checking" name="verify_twice_sheet" states="hr_check"/>
<button string="Complete Accountant Checking" name="final_verify_sheet" states="accont_check"/>
<button string="Pay Salary" name="process_sheet" states="confirm"/>
<button string="Cancel" name="cancel_sheet" states="draft,hr_check,accont_check,confirm"/>
<button string="Set to Draft" name="set_to_draft" states="cancel"/>
<button string="Compute Sheet" icon="terp-stock_format-scientific" name="compute_sheet" states="new"/>
<button string="Recompute Sheet" icon="terp-stock_format-scientific" name="compute_sheet" type="object" states="draft"/>
<button string="Verify Sheet" icon="terp-camera_test" name="verify_sheet" states="draft"/>
<button string="Complete HR Checking" icon="terp-camera_test" name="verify_twice_sheet" states="hr_check"/>
<button string="Complete Accountant Checking" icon="terp-camera_test" name="final_verify_sheet" states="accont_check"/>
<button string="Pay Salary" icon="terp-dolar_ok!" name="process_sheet" states="confirm"/>
<button string="Cancel" icon="terp-dialog-close" name="cancel_sheet" states="draft,hr_check,accont_check,confirm"/>
<button string="Set to Draft" icon="terp-stock_effects-object-colorize" name="set_to_draft" states="cancel"/>
</group>
</form>
</field>
</record>
<record id="view_hr_payslip_filter" model="ir.ui.view">
<field name="name">hr.payslip.select</field>
<field name="model">hr.payslip</field>
<field name="type">search</field>
<field name="arch" type="xml">
<search string="Search Payslips">
<group col="8" colspan="4">
<filter icon="terp-document-new" string="Draft" domain="[('state','=','draft')]" help="Draft Slip"/>
<filter icon="terp-camera_test" string="Posted" domain="[('state','=','posted')]" help="Posted Slip"/>
<separator orientation="vertical"/>
<filter icon="terp-account" string="Paid" domain="[('state','=','done'),('paid','=',True)]" help="Paid Slip"/>
<field name="name"/>
<field name="employee_id"/>
<field name="number"/>
<field name="date"/>
</group>
<newline/>
<group col="8" colspan="4" expand="0" string="Group By...">
<filter string="Register" icon="terp-folder-yellow" name="register_id" context="{'register_id':self}"/>
<filter string="Employees" icon="terp-partner" name="employee_id" context="{'employee_id':self}"/>
<filter string="Periods" name="period_id" icon="terp-go-month" context="{'period_id':self}"/>
<filter string="Staes" name="state" icon="terp-stock_effects-object-colorize" context="{'state':self}"/>
</group>
</search>
</field>
</record>
<record id="action_view_hr_payslip_form" model="ir.actions.act_window">
<field name="name">Employee Payslip</field>
<field name="res_model">hr.payslip</field>
<field name="view_type">form</field>
<field name="view_id" ref="view_hr_payslip_tree"/>
<field name="search_view_id" ref="view_hr_payslip_filter"/>
</record>
<menuitem action="action_view_hr_payslip_form" id="menu_department_tree" parent="menu_hr_root_payroll"/>
@@ -505,22 +553,14 @@
<field name="name" select="1"/>
<field name="code" select="1"/>
<field name="type" select="1"/>
<group col="4" colspan="4">
<separator colspan="2" string="Based on"/>
<field name="base" colspan="4" nolabel="1"/>
</group>
<group col="2" colspan="2">
<separator colspan="2" string="Dynamic Computation"/>
<group col="2" colspan="4">
<separator colspan="4" string="Dynamic Computation"/>
<field name="base"/>
<field name="condition"/>
<field name="sequence"/>
</group>
</group>
<notebook colspan="4">
<page string="Contribution">
<field name="contribute_ids" colspan="4" nolabel="1" height="300"/>
</page>
<page string="Description">
<field name="note" colspan="4" nolabel="1"/>
</page>
+16 -16
View File
@@ -1,40 +1,40 @@
<?xml version="1.0" ?>
<openerp>
<data>
<data>
<menuitem id="menu_hr_payroll_reporting" parent="hr.menu_hr_reporting" name="Payroll"/>
<wizard id="wizard_print_year_salary"
menu="False"
model="hr.payslip"
name="wizard.year.salary"
string="Year Salary Detail"/>
string="Salary Register"/>
<menuitem id="menu_wizard_print_year_salary"
icon="STOCK_PRINT"
action="wizard_print_year_salary"
parent="menu_hr_payroll_reporting"
name="Employee Year Salary"
name="Salary Register"
type="wizard"/>
<wizard id="wizard_print_employees_detail"
menu="False"
model="hr.payslip"
name="wizard.employees.detail"
string="Employees Salary Detail"/>
string="Employee Salary Statement"/>
<menuitem id="menu_wizard_print_employees_detail"
icon="STOCK_PRINT"
action="wizard_print_employees_detail"
parent="menu_hr_payroll_reporting"
name="Employees Salary Detail"
name="Employee Salary Statement"
type="wizard"/>
<wizard id="wizard_payroll_analysis"
menu="False"
model="account.analytic.account"
name="payroll.analysis"
string="Create Analytic Structure"/>
<menuitem id="menu_wizard_payroll_analysis"
action="wizard_payroll_analysis"
parent="payroll_configure"
name="Create Analytic Structure"
type="wizard"/>
</data>
<!-- <wizard id="wizard_payroll_analysis"-->
<!-- menu="False" -->
<!-- model="account.analytic.account" -->
<!-- name="payroll.analysis" -->
<!-- string="Create Analytic Structure"/>-->
<!-- <menuitem id="menu_wizard_payroll_analysis" -->
<!-- action="wizard_payroll_analysis" -->
<!-- parent="payroll_configure" -->
<!-- name="Create Analytic Structure"-->
<!-- type="wizard"/>-->
</data>
</openerp>
+29 -2
View File
@@ -28,6 +28,13 @@
<field name="kind">function</field>
</record>
<record id="act_account_check" model="workflow.activity">
<field name="wkf_id" ref="wkf"/>
<field name="name">account_check</field>
<field name="action">account_check_sheet()</field>
<field name="kind">function</field>
</record>
<record id="act_confirm" model="workflow.activity">
<field name="wkf_id" ref="wkf"/>
<field name="name">confirm</field>
@@ -59,13 +66,27 @@
<record id="t2" model="workflow.transition">
<field name="act_from" ref="act_draft"/>
<field name="act_to" ref="act_hr_check"/>
<field name="condition">basic&gt;=10000</field>
<field name="signal">verify_sheet</field>
</record>
<record id="t3" model="workflow.transition">
<field name="act_from" ref="act_hr_check"/>
<field name="act_to" ref="act_account_check"/>
<field name="signal">verify_twice_sheet</field>
</record>
<record id="t4" model="workflow.transition">
<field name="act_from" ref="act_draft"/>
<field name="act_to" ref="act_account_check"/>
<field name="condition">basic&lt;10000</field>
<field name="signal">verify_sheet</field>
</record>
<record id="t5" model="workflow.transition">
<field name="act_from" ref="act_hr_check"/>
<field name="act_from" ref="act_account_check"/>
<field name="act_to" ref="act_confirm"/>
<field name="signal">verify_twice_sheet</field>
<field name="signal">final_verify_sheet</field>
</record>
<record id="t6" model="workflow.transition">
@@ -86,6 +107,12 @@
<field name="signal">cancel_sheet</field>
</record>
<record id="t9" model="workflow.transition">
<field name="act_from" ref="act_account_check"/>
<field name="act_to" ref="act_cancel"/>
<field name="signal">cancel_sheet</field>
</record>
<record id="t10" model="workflow.transition">
<field name="act_from" ref="act_confirm"/>
<field name="act_to" ref="act_cancel"/>
@@ -177,7 +177,7 @@
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'hr.applicant'}"
icon="terp-mail-replied" type="action" />
icon="gtk-undo" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
@@ -189,7 +189,7 @@
<button colspan="4" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'hr.applicant'}"
icon="terp-mail-message-new" type="action" />
icon="gtk-go-forward" type="action" />
</page>
</notebook>
</form>
+1
View File
@@ -32,6 +32,7 @@
'update_xml': [
'security/ir.model.access.csv',
'knowledge_installer.xml',
'knowledge_view.xml',
],
'demo_xml': [],
'installable': True,
+10
View File
@@ -0,0 +1,10 @@
<openerp>
<data>
<menuitem name="Knowledge" icon="terp-stock" id="knowledge.menu_document" sequence="19"/>
<menuitem name="Configuration" id="knowledge.menu_document_configuration" parent="knowledge.menu_document" sequence="50"/>
<menuitem id="knowledge.menu_document2" name="Collaborative Content"
parent="knowledge.menu_document" />
</data>
</openerp>
@@ -62,7 +62,6 @@ class partner_vat(osv.osv_memory):
obj_vat_lclient = self.pool.get('vat.listing.clients')
obj_model_data = self.pool.get('ir.model.data')
data = self.read(cursor, user, ids)[0]
context['test_xml'] = data['test_xml']
period = obj_period.search(cursor, user, [('fiscalyear_id', '=', data['fyear'])], context=context)
p_id_list = obj_partner.search(cursor, user, [('vat_subjected', '!=', False)], context=context)
if not p_id_list:
@@ -197,7 +196,7 @@ class partner_vat_list(osv.osv_memory):
data_file = '<?xml version="1.0"?>\n<VatList xmlns="http://www.minfin.fgov.be/VatList" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.minfin.fgov.be/VatList VatList.xml" RecipientId="VAT-ADMIN" SenderId="'+ str(company_vat) + '"'
data_file +=' ControlRef="'+ cref + '" MandataireId="'+ tools.ustr(context['mand_id']) + '" SenderDate="'+ str(sender_date)+ '"'
if context['test_xml']:
if ['test_xml']:
data_file += ' Test="0"'
data_file += ' VersionTech="1.2">'
data_file += '\n<AgentRepr DecNumber="1">\n\t<CompanyInfo>\n\t\t<VATNum>'+str(company_vat)+'</VATNum>\n\t\t<Name>'+tools.ustr(obj_cmpny.name)+'</Name>\n\t\t<Street>'+ tools.ustr(street) +'</Street>\n\t\t<CityAndZipCode>'+ tools.ustr(zip_city) +'</CityAndZipCode>'
@@ -226,7 +225,7 @@ class partner_vat_list(osv.osv_memory):
seq +=1
sum_tax +=line['amount']
sum_turnover +=line['turnover']
data_clientinfo +='\n<ClientList SequenceNum="'+str(seq)+'">\n\t<CompanyInfo>\n\t\t<VATNum>'+str(line['vat']) +'</VATNum>\n\t\t<Country>'+tools.ustr(line['country']) +'</Country>\n\t</CompanyInfo>\n\t<Amount>'+str(int(line['amount'] * 100)) +'</Amount>\n\t<TurnOver>'+str(int(line['turnover'] * 100)) +'</TurnOver>\n</ClientList>'
data_clientinfo +='\n<ClientList SequenceNum="'+str(seq)+'">\n\t<CompanyInfo>\n\t\t<VATNum>'+line['vat'] +'</VATNum>\n\t\t<Country>'+tools.ustr(line['country']) +'</Country>\n\t</CompanyInfo>\n\t<Amount>'+str(int(line['amount'] * 100)) +'</Amount>\n\t<TurnOver>'+str(int(line['turnover'] * 100)) +'</TurnOver>\n</ClientList>'
data_decl ='\n<DeclarantList SequenceNum="1" DeclarantNum="'+ dnum + '" ClientNbr="'+ str(seq) +'" TurnOverSum="'+ str(int(sum_turnover * 100)) +'" TaxSum="'+ str(int(sum_tax * 100)) +'" />'
data_file += tools.ustr(data_decl) + tools.ustr(data_comp) + tools.ustr(data_period) + tools.ustr(data_clientinfo) + '\n</VatList>'
+33 -25
View File
@@ -127,7 +127,7 @@ class mailgate_thread(osv.osv):
'message_id': message_id,
'attachment_ids': [(6, 0, attachments)]
}
res = obj.create(cr, uid, data, context)
obj.create(cr, uid, data, context)
return True
mailgate_thread()
@@ -139,25 +139,33 @@ class mailgate_message(osv.osv):
_description = 'Mailgateway Message'
_order = 'id desc'
_columns = {
'name':fields.char('Subject', size=128),
'model': fields.char('Object Name', size=128),
'res_id': fields.integer('Resource ID'),
'name':fields.char('Subject', size=128),
'model': fields.char('Object Name', size=128, select=1),
'res_id': fields.integer('Resource ID', select=1),
'ref_id': fields.char('Reference Id', size=256, readonly=True, help="Message Id in Email Server.", select=True),
'date': fields.datetime('Date'),
'date': fields.datetime('Date'),
'history': fields.boolean('Is History?'),
'user_id': fields.many2one('res.users', 'User Responsible', readonly=True),
'message': fields.text('Description'),
'email_from': fields.char('Email From', size=84),
'email_to': fields.char('Email To', size=84),
'email_cc': fields.char('Email CC', size=84),
'email_bcc': fields.char('Email BCC', size=84),
'user_id': fields.many2one('res.users', 'User Responsible', readonly=True),
'message': fields.text('Description'),
'email_from': fields.char('Email From', size=84),
'email_to': fields.char('Email To', size=84),
'email_cc': fields.char('Email CC', size=84),
'email_bcc': fields.char('Email BCC', size=84),
'message_id': fields.char('Message Id', size=1024, readonly=True, help="Message Id on Email.", select=True),
'references': fields.text('References', readonly=True, help="Referencess emails."),
'description': fields.text('Description'),
'partner_id': fields.many2one('res.partner', 'Partner', required=False),
'attachment_ids': fields.many2many('ir.attachment', 'message_attachment_rel', 'message_id', 'attachment_id', 'Attachments'),
'description': fields.text('Description'),
'partner_id': fields.many2one('res.partner', 'Partner', required=False),
'attachment_ids': fields.many2many('ir.attachment', 'message_attachment_rel', 'message_id', 'attachment_id', 'Attachments'),
}
def init(self, cr):
cr.execute("""SELECT indexname
FROM pg_indexes
WHERE indexname = 'mailgate_message_res_id_model_idx'""")
if not cr.fetchone():
cr.execute("""CREATE INDEX mailgate_message_res_id_model_idx
ON mailgate_message (model, res_id)""")
mailgate_message()
class mailgate_tool(osv.osv_memory):
@@ -214,7 +222,7 @@ class mailgate_tool(osv.osv_memory):
'user_id': uid,
'attachment_ids': [(6, 0, attach)]
}
msg_id = msg_pool.create(cr, uid, msg_data, context=context)
msg_pool.create(cr, uid, msg_data, context=context)
return True
def email_forward(self, cr, uid, model, res_ids, msg, email_error=False, context=None):
@@ -262,6 +270,7 @@ class mailgate_tool(osv.osv_memory):
res_id = False
# Create New Record into particular model
def create_record(msg):
att_ids = []
if hasattr(model_pool, 'message_new'):
res_id = model_pool.message_new(cr, uid, msg, context)
else:
@@ -276,7 +285,6 @@ class mailgate_tool(osv.osv_memory):
data.update(self.get_partner(cr, uid, msg.get('from'), context=context))
res_id = model_pool.create(cr, uid, data, context=context)
att_ids = []
if attach:
for attachment in msg.get('attachments', []):
data_attach = {
@@ -289,7 +297,7 @@ class mailgate_tool(osv.osv_memory):
}
att_ids.append(self.pool.get('ir.attachment').create(cr, uid, data_attach))
return res_id
return res_id, att_ids
# Warning: message_from_string doesn't always work correctly on unicode,
# we must use utf-8 strings here :-(
@@ -346,7 +354,6 @@ class mailgate_tool(osv.osv_memory):
attachments = {}
if msg_txt.is_multipart() or 'multipart/alternative' in msg.get('content-type', ''):
body = ""
counter = 1
for part in msg_txt.walk():
if part.get_content_maintype() == 'multipart':
continue
@@ -362,22 +369,23 @@ class mailgate_tool(osv.osv_memory):
if encoding:
content = unicode(content, encoding)
if part.get_content_subtype() == 'html':
body = tools.html2plaintext(content)
body = tools.ustr(tools.html2plaintext(content))
elif part.get_content_subtype() == 'plain':
body = content
elif part.get_content_maintype()=='application' or part.get_content_maintype()=='image' or part.get_content_maintype()=='text':
body = tools.ustr(content)
elif part.get_content_maintype() in ('application', 'image', 'text'):
filename = part.get_filename();
if filename :
attachments[filename] = part.get_payload(decode=True)
else:
res = part.get_payload(decode=True)
if encoding:
res = tools.ustr(res)
res = tools.ustr(res, encoding)
body += res
msg['body'] = body
msg['attachments'] = attachments
res_ids = []
attachment_ids = []
new_res_id = False
if msg.get('references'):
references = msg.get('references')
@@ -404,7 +412,7 @@ class mailgate_tool(osv.osv_memory):
model_pool.message_update(cr, uid, [res_id], vals, msg, context=context)
if not len(res_ids):
new_res_id = create_record(msg)
new_res_id, attachment_ids = create_record(msg)
res_ids = [new_res_id]
# Store messages
context.update({'model' : model})
@@ -416,10 +424,10 @@ class mailgate_tool(osv.osv_memory):
email_from = msg.get('from'),
message_id = msg.get('message-id'),
references = msg.get('references', False),
attach = msg.get('attachments', {}).items(),
attach = attachments.items(),
context = context)
else:
self.history(cr, uid, model, res_ids, msg, att_ids, context=context)
self.history(cr, uid, model, res_ids, msg, attachment_ids, context=context)
self.email_forward(cr, uid, model, res_ids, msg_txt)
return new_res_id
+22 -15
View File
@@ -26,16 +26,20 @@ import random, time
from tools.translate import _
def geo_find(addr):
import urllib,re
regex = '<coordinates>([+-]?[0-9\.]+),([+-]?[0-9\.]+),([+-]?[0-9\.]+)</coordinates>'
url = 'http://maps.google.com/maps/geo?q=' + urllib.quote(addr) + '&output=xml&oe=utf8&sensor=false'
xml = urllib.urlopen(url).read()
if '<error>' in xml:
return None
result = re.search(regex, xml, re.M|re.I)
if not result:
return None
return float(result.group(1)),float(result.group(2))
try:
regex = '<coordinates>([+-]?[0-9\.]+),([+-]?[0-9\.]+),([+-]?[0-9\.]+)</coordinates>'
url = 'http://maps.google.com/maps/geo?q=' + urllib.quote(addr) + '&output=xml&oe=utf8&sensor=false'
xml = urllib.urlopen(url).read()
if '<error>' in xml:
return None
result = re.search(regex, xml, re.M|re.I)
if not result:
return None
return float(result.group(1)),float(result.group(2))
except Exception, e:
raise osv.except_osv(_('Network error'),
_('Could not contact geolocation servers, please make sure you have a working internet connection (%s)') % e)
class res_partner(osv.osv):
_inherit = "res.partner"
@@ -50,7 +54,6 @@ class res_partner(osv.osv):
'partner_weight': lambda *args: 0
}
def geo_localize(self, cr, uid, ids, context=None):
regex = '<coordinates>([+-]?[0-9\.]+),([+-]?[0-9\.]+),([+-]?[0-9\.]+)</coordinates>'
for partner in self.browse(cr, uid, ids, context=context):
if not partner.address:
continue
@@ -84,12 +87,16 @@ class crm_lead(osv.osv):
email = lead.partner_assigned_id.address[0].email
if not email:
raise osv.except_osv(_('Error !'), _('No email on the partner assigned to this opportunity'))
forward = fobj.create(cr, uid, {
'name': 'email',
values = fobj.default_get(cr, uid, ['name', 'email_from'], context=context)
if not values.get('email_from'):
raise osv.except_osv(_('Error !'), _('Please set an email address in your user preferences'))
values.update({
'history': 'whole',
'email_to': email,
'message': fobj._get_case_history(cr, uid, 'whole', lead.id, context) or False
}, context)
'message': fobj._get_case_history(cr, uid, 'whole', lead.id, context) or False,
})
forward = fobj.create(cr, uid, values, context)
fobj.action_forward(cr, uid, [forward], context)
else:
raise osv.except_osv(_('Error !'), _('No partner assigned to this opportunity'))
@@ -1,7 +1,6 @@
<?xml version="1.0"?>
<openerp>
<data>
<record id="view_crm_opportunity_geo_assign_form" model="ir.ui.view">
<field name="name">crm.lead.geo_assign.inherit</field>
<field name="model">crm.lead</field>
@@ -9,7 +8,7 @@
<field name="inherit_id" ref="crm.crm_case_form_view_oppor"/>
<field name="arch" type="xml">
<xpath expr="//notebook[last()]" position="inside">
<page string="Partner Assignation">
<page string="Geo Assignation">
<field name="partner_assigned_id"/>
<newline/>
<field name="partner_latitude"/>
@@ -36,7 +35,7 @@
<field name="inherit_id" ref="base.view_partner_form"/>
<field name="arch" type="xml">
<xpath expr="//notebook[last()]" position="inside">
<page string="Partner Association">
<page string="Geo Location">
<field name="partner_weight"/>
<label string="" colspan="1"/>
<button
+9 -9
View File
@@ -464,7 +464,7 @@ class stock_warehouse_orderpoint(osv.osv):
"""
_name = "stock.warehouse.orderpoint"
_description = "Minimum Inventory Rule"
_columns = {
'name': fields.char('Name', size=32, required=True),
'active': fields.boolean('Active', help="If the active field is set to true, it will allow you to hide the orderpoint without removing it."),
@@ -485,17 +485,17 @@ class stock_warehouse_orderpoint(osv.osv):
'company_id': fields.many2one('res.company','Company',required=True),
}
_defaults = {
'active': 1,
'logic': 'max',
'qty_multiple': 1,
'active': lambda *a: 1,
'logic': lambda *a: 'max',
'qty_multiple': lambda *a: 1,
'name': lambda x,y,z,c: x.pool.get('ir.sequence').get(y,z,'stock.orderpoint') or '',
'product_uom': lambda sel, cr, uid, context: context.get('product_uom', False),
'company_id': lambda self, cr, uid, c: self.pool.get('res.company')._company_default_get(cr, uid, 'stock.warehouse.orderpoint', context=c)
}
_sql_constraints = [
('qty_multiple_check', 'CHECK( qty_multiple > 0 )', _('Qty Multiple must be greater than zero.')),
]
]
def onchange_warehouse_id(self, cr, uid, ids, warehouse_id, context={}):
""" Finds location id for changed warehouse.
@param warehouse_id: Changed id of warehouse.
@@ -506,7 +506,7 @@ class stock_warehouse_orderpoint(osv.osv):
v = {'location_id': w.lot_stock_id.id}
return {'value': v}
return {}
def onchange_product_id(self, cr, uid, ids, product_id, context={}):
""" Finds UoM for changed product.
@param product_id: Changed id of product.
@@ -517,7 +517,7 @@ class stock_warehouse_orderpoint(osv.osv):
v = {'product_uom': prod.uom_id.id}
return {'value': v}
return {}
def copy(self, cr, uid, id, default=None,context={}):
if not default:
default = {}
@@ -525,6 +525,6 @@ class stock_warehouse_orderpoint(osv.osv):
'name': self.pool.get('ir.sequence').get(cr, uid, 'stock.orderpoint') or '',
})
return super(stock_warehouse_orderpoint, self).copy(cr, uid, id, default, context)
stock_warehouse_orderpoint()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -1,12 +1,7 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_mrp_property_group","mrp.property.group","model_mrp_property_group","stock.group_stock_manager",1,1,1,1
"access_mrp_property","mrp.property","model_mrp_property","stock.group_stock_manager",1,1,1,1
"access_mrp_property_group","mrp.property.group","model_mrp_property_group",stock.group_stock_manager,1,1,1,1
"access_mrp_property","mrp.property","model_mrp_property",stock.group_stock_manager,1,1,1,1
"access_mrp_property_group","mrp.property.group","model_mrp_property_group",,1,0,0,0
"access_mrp_property","mrp.property","model_mrp_property","base.group_user",1,0,0,0
"access_procurement","procurement.order","model_procurement_order","base.group_user",1,0,0,0
"access_stock_warehouse_orderpoint","stock.warehouse.orderpoint","model_stock_warehouse_orderpoint","stock.group_stock_manager",1,1,1,1
"access_procurement_compute_all","procurement.order.compute.all","model_procurement_order_compute_all","stock.group_stock_manager",1,1,1,1
"access_procurement_orderpoint_compute","procurement.orderpoint.compute","model_procurement_orderpoint_compute","stock.group_stock_manager",1,1,1,1
"access_mrp_make_procurement","make.procurement","model_make_procurement","stock.group_stock_manager",1,1,1,1
"access_mrp_make_procurement","procurement.order.compute","model_procurement_order_compute","stock.group_stock_manager",1,1,1,1
"access_make_procurement","make.procurement","model_make_procurement","stock.group_stock_manager",1,1,1,1
"access_mrp_property","mrp.property","model_mrp_property",base.group_user,1,0,0,0
"access_procurement","procurement.order","model_procurement_order",base.group_user,1,0,0,0
"access_stock_warehouse_orderpoint","stock.warehouse.orderpoint","model_stock_warehouse_orderpoint",stock.group_stock_manager,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_mrp_property_group mrp.property.group model_mrp_property_group stock.group_stock_manager 1 1 1 1
3 access_mrp_property mrp.property model_mrp_property stock.group_stock_manager 1 1 1 1
4 access_mrp_property_group mrp.property.group model_mrp_property_group 1 0 0 0
5 access_mrp_property mrp.property model_mrp_property base.group_user 1 0 0 0
6 access_procurement procurement.order model_procurement_order base.group_user 1 0 0 0
7 access_stock_warehouse_orderpoint stock.warehouse.orderpoint model_stock_warehouse_orderpoint stock.group_stock_manager 1 1 1 1
access_procurement_compute_all procurement.order.compute.all model_procurement_order_compute_all stock.group_stock_manager 1 1 1 1
access_procurement_orderpoint_compute procurement.orderpoint.compute model_procurement_orderpoint_compute stock.group_stock_manager 1 1 1 1
access_mrp_make_procurement make.procurement model_make_procurement stock.group_stock_manager 1 1 1 1
access_mrp_make_procurement procurement.order.compute model_procurement_order_compute stock.group_stock_manager 1 1 1 1
access_make_procurement make.procurement model_make_procurement stock.group_stock_manager 1 1 1 1
+1 -2
View File
@@ -28,5 +28,4 @@
"access_product_pricelist_item_user","product.pricelist.item.user","model_product_pricelist_item","base.group_user",1,0,0,0
"access_product_pricelist_type_partner_manager","product.pricelist.type partner manager","model_product_pricelist_type","base.group_partner_manager",1,0,0,0
"access_product_pricelist_partner_manager","product.pricelist partner manager","model_product_pricelist","base.group_partner_manager",1,0,0,0
"access_ir_property_group_product_manager","ir_property group_product_manager","base.model_ir_property","product.group_product_manager",1,1,1,1
"access_product_price_list","product.price_list","model_product_price_list","base.group_user",1,0,0,0
"access_ir_property_group_product_manager","ir_property group_product_manager","base.model_ir_property",product.group_product_manager,1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
28 access_product_pricelist_item_user product.pricelist.item.user model_product_pricelist_item base.group_user 1 0 0 0
29 access_product_pricelist_type_partner_manager product.pricelist.type partner manager model_product_pricelist_type base.group_partner_manager 1 0 0 0
30 access_product_pricelist_partner_manager product.pricelist partner manager model_product_pricelist base.group_partner_manager 1 0 0 0
31 access_ir_property_group_product_manager ir_property group_product_manager base.model_ir_property product.group_product_manager 1 1 1 1
access_product_price_list product.price_list model_product_price_list base.group_user 1 0 0 0
+1 -27
View File
@@ -104,7 +104,7 @@ class report_project_task_user(osv.osv):
(extract('epoch' from (t.date_deadline-t.date_end)))/(3600*24) as delay_endings_days
from project_task t
group by
group by
t.id,
remaining_hours,
t.effective_hours,
@@ -203,31 +203,5 @@ class task_by_days(osv.osv):
""")
task_by_days()
class task_by_days_vs_planned_hours(osv.osv):
_name = "task.by.days.vs.planned.hours"
_description = "Task By Days vs Planned Hours"
_auto = False
_columns = {
'day': fields.char('Day', size=128, required=True),
'planned_hour': fields.float('Planned Hours', readonly=True),
'project_id':fields.many2one('project.project','Project')
}
_order = 'day desc'
def init(self, cr):
tools.sql.drop_view_if_exists(cr, 'task_by_days_vs_planned_hours')
cr.execute("""
create or replace view task_by_days_vs_planned_hours as (
select
min(pt.id) as id,
to_char(pt.create_date, 'YYYY-MM-DD') as day,
sum(planned_hours) as planned_hour,
pt.project_id
from
project_task as pt
group by
to_char(pt.create_date, 'YYYY-MM-DD'),pt.project_id
)
""")
task_by_days_vs_planned_hours()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
@@ -221,24 +221,24 @@
<!-- Views and action for project dashboard -->
<record id="view_task_by_days_vs_planned_hours_tree" model="ir.ui.view">
<field name="name">task.by.days.vs.planned.hours.tree</field>
<field name="model">task.by.days.vs.planned.hours</field>
<field name="model">report.project.task.user</field>
<field name="type">tree</field>
<field name="arch" type="xml">
<tree string="Task By Days vs Planned Hours" >
<field name="day"/>
<field name="planned_hour"/>
<field name="hours_planned"/>
</tree>
</field>
</record>
<record id="view_task_by_days_vs_planned_hours_graph" model="ir.ui.view">
<field name="name">task.by.days.vs.planned.hours.graph</field>
<field name="model">task.by.days.vs.planned.hours</field>
<field name="model">report.project.task.user</field>
<field name="type">graph</field>
<field name="arch" type="xml">
<graph string="Task By Days vs Planned Hours" type="bar">
<field name="day"/>
<field name="planned_hour" operator="+"/>
<field name="hours_planned" operator="+"/>
<field name="project_id" group="True"/>
</graph>
</field>
@@ -246,7 +246,7 @@
<record id="action_task_by_days_vs_planned_hours_graph" model="ir.actions.act_window">
<field name="name">Task By Days vs Planned Hours</field>
<field name="res_model">task.by.days.vs.planned.hours</field>
<field name="res_model">report.project.task.user</field>
<field name="view_type">form</field>
<field name="view_mode">graph,tree</field>
<field name="view_id" ref="view_task_by_days_vs_planned_hours_graph"/>
@@ -12,7 +12,6 @@
"access_project_message","project.message","model_project_message","project.group_project_user",1,1,1,1
"access_report_project_task_user","report.project.task.user","model_report_project_task_user","project.group_project_manager",1,0,0,0
"access_project_vs_remaining_hours","project.vs.remaining.hours","model_project_vs_remaining_hours","project.group_project_user",1,1,1,1
"access_task_by_days_vs_planned_hours","task.by.days.vs.planned.hour","model_task_by_days_vs_planned_hours","project.group_project_user",1,1,1,1
"access_task_by_days","task.by.days","model_task_by_days","project.group_project_user",1,1,1,1
"access_partner_task user","base.res.partner user","base.model_res_partner","project.group_project_user",1,0,0,0
"access_partner_task manager","base.res.partner manager","base.model_res_partner","project.group_project_manager",1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
12 access_project_message project.message model_project_message project.group_project_user 1 1 1 1
13 access_report_project_task_user report.project.task.user model_report_project_task_user project.group_project_manager 1 0 0 0
14 access_project_vs_remaining_hours project.vs.remaining.hours model_project_vs_remaining_hours project.group_project_user 1 1 1 1
access_task_by_days_vs_planned_hours task.by.days.vs.planned.hour model_task_by_days_vs_planned_hours project.group_project_user 1 1 1 1
15 access_task_by_days task.by.days model_task_by_days project.group_project_user 1 1 1 1
16 access_partner_task user base.res.partner user base.model_res_partner project.group_project_user 1 0 0 0
17 access_partner_task manager base.res.partner manager base.model_res_partner project.group_project_manager 1 0 0 0
+58 -9
View File
@@ -67,15 +67,64 @@
<field name="type">form</field>
<field name="arch" type="xml">
<field name="progress" position="after">
<group colspan="2" col="3">
<!-- <field name="rrule_type" string="Recurrency"
on_change="onchange_rrule_type(rrule_type)" colspan="1" />
--> <field name="rrule_type" string="Recurrency"
colspan="1" />
<button string="Custom" name="101"
icon="gtk-save-as" type="action"
context="{'model' : 'project.task'}"
attrs="{'readonly': [('rrule_type','!=','custom')]}" />
<group colspan="2" col="4" >
<field name="rrule_type" string="Recurrency"
colspan="1" attrs="{'readonly':[('recurrent_uid','!=',False)]}"/>
<button string="Edit All"
help="Edit all Ourrences of recurrent Task"
attrs="{'invisible':[('rrule_type','in', ('none', False))]}"
name="open_meeting" icon="gtk-edit"
type="object" />
<button string="ExRule"
help="Add Exception Rule"
name="%(base_calendar.action_base_calendar_set_exrule)d" icon="gtk-zoom-out" type="action"
context="{'model' : 'project.task'}"
attrs="{'invisible':[('rrule_type','in', ('none', False))]}"/>
</group>
<newline/>
<group col="4" colspan="6" name="rrule" attrs="{'invisible': [('rrule_type','!=','custom')]}">
<separator string="Data for Custom Rule" colspan="8"/>
<group col="8" colspan="4">
<field name="freq" />
<field name="interval" />
<field name="count" />
<field name="end_date" />
</group>
<group col="14" colspan="4" name="Select weekdays"
attrs="{'invisible' : [('freq','!=','weekly')]}">
<field name="mo" colspan="1" />
<field name="tu" colspan="1" />
<field name="we" colspan="1" />
<field name="th" colspan="1" />
<field name="fr" colspan="1" />
<field name="sa" colspan="1" />
<field name="su" colspan="1" />
<newline />
</group>
<group col="10" colspan="4"
attrs="{'invisible' : [('freq','!=','monthly'), ('freq','!=','yearly')]}">
<group col="2" colspan="1">
<field name="select1" />
</group>
<group col="2" colspan="1"
attrs="{'invisible' : [('select1','=','day')]}">
<field name="day"
attrs="{'required' : [('select1','=','date')]}" />
</group>
<group col="3" colspan="1"
attrs="{'invisible' : [('select1','=','date')]}">
<field name="byday" string="The"
attrs="{'required' : [('select1','=','day')]}" />
<field name="week_list" nolabel="1"
attrs="{'required' : [('select1','=','day')]}" />
</group>
<group col="1" colspan="1"
attrs="{'invisible' : [('freq','!=','yearly')]}">
<field name="month_list" string="of"
colspan="1"
attrs="{'required' : [('freq','=','yearly')]}" />
</group>
</group>
</group>
</field>
</field>
+5 -13
View File
@@ -188,10 +188,10 @@ class project_issue(osv.osv, crm.crm_case):
}
def _get_project(self, cr, uid, context):
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
if user.context_project_id:
return user.context_project_id.id
return False
user = self.pool.get('res.users').browse(cr, uid, uid, context=context)
if user.context_project_id:
return user.context_project_id.id
return False
_defaults = {
'active': lambda *a: 1,
@@ -214,11 +214,6 @@ class project_issue(osv.osv, crm.crm_case):
if context is None:
context = {}
# for case in case_obj.browse(cr, uid, ids, context=context):
# if case.state != 'open':
# raise osv.except_osv(_('Warning !'),
# _('Issues or Feature Requests should be in \'Open\' state before converting into Task.'))
result = data_obj._get_id(cr, uid, 'project', 'view_task_search_form')
res = data_obj.read(cr, uid, result, ['res_id'])
id2 = data_obj._get_id(cr, uid, 'project', 'view_task_form2')
@@ -240,11 +235,9 @@ class project_issue(osv.osv, crm.crm_case):
'planned_hours': 0.0,
})
new_task = task_obj.browse(cr, uid, new_task_id)
vals = {
'task_id': new_task_id,
}
}
case_obj.write(cr, uid, [bug.id], vals)
return {
@@ -361,7 +354,6 @@ class project_issue(osv.osv, crm.crm_case):
if isinstance(ids, (str, int, long)):
ids = [ids]
msg_from = msg['from']
vals.update({
'description': msg['body']
})
+2 -2
View File
@@ -96,7 +96,7 @@
string="Reply to Last Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'reply', 'model': 'project.issue', 'include_original' : True}"
icon="terp-mail-replied" type="action" />
icon="gtk-undo" type="action" />
</form>
<tree string="Communication history">
<field name="date"/>
@@ -108,7 +108,7 @@
<button colspan="4" string="Send New Email"
name="%(crm.action_crm_send_mail)d"
context="{'mail':'new', 'model': 'project.issue'}"
icon="terp-mail-message-new" type="action" />
icon="gtk-go-forward" type="action" />
</page>
<page string="History" groups="base.group_extended">
<group col="2" colspan="2">
@@ -20,7 +20,6 @@ class project_issue_report(osv.osv):
@param context: A standard dictionary for contextual values """
res = {}
state_perc = 0.0
avg_ans = 0.0
for case in self.browse(cr, uid, ids, context):
@@ -85,15 +84,16 @@ class project_issue_report(osv.osv):
'assigned_to' : fields.many2one('res.users', 'Assigned to',readonly=True),
'partner_id': fields.many2one('res.partner','Partner',domain="[('object_id.model', '=', 'project.issue')]"),
'canal_id': fields.many2one('res.partner.canal', 'Channel',readonly=True),
'task_id': fields.many2one('project.task', 'Task',domain="[('object_id.model', '=', 'project.issue')]" )
'task_id': fields.many2one('project.task', 'Task',domain="[('object_id.model', '=', 'project.issue')]" ),
'email': fields.integer('# Emails', size=128, readonly=True),
}
def init(self, cr):
tools.drop_view_if_exists(cr, 'project_issue_report')
cr.execute("""
create or replace view project_issue_report as (
select
min(c.id) as id,
CREATE OR REPLACE VIEW project_issue_report AS (
SELECT
c.id as id,
to_char(c.create_date, 'YYYY') as name,
to_char(c.create_date, 'MM') as month,
to_char(c.create_date, 'YYYY-MM-DD') as day,
@@ -111,44 +111,19 @@ class project_issue_report(osv.osv):
c.priority as priority,
c.project_id as project_id,
c.type_id as type_id,
(select 1) as nbr,
1 as nbr,
c.assigned_to,
c.partner_id,
c.canal_id,
c.task_id,
date_trunc('day',c.create_date) as create_date,
avg(extract('epoch' from (c.date_open-c.create_date)))/(3600*24) as delay_open,
avg(extract('epoch' from (c.date_closed-c.create_date)))/(3600*24) as delay_close
from
extract('epoch' from (c.date_open-c.create_date))/(3600*24) as delay_open,
extract('epoch' from (c.date_closed-c.create_date))/(3600*24) as delay_close,
(SELECT count(id) FROM mailgate_message WHERE model='project.issue' AND res_id=c.id) AS email
FROM
project_issue c
where c.categ_id in (select res_id from ir_model_data where name='bug_categ')
group by
to_char(c.create_date, 'YYYY'),
to_char(c.create_date, 'MM'),
to_char(c.create_date, 'YYYY-MM-DD'),
c.state,
to_char(c.date_open, 'YYYY-MM-DD'),
to_char(c.date_closed, 'YYYY-mm-dd'),
c.user_id,
c.section_id,
c.categ_id,
c.stage_id,
c.company_id,
c.priority,
c.working_hours_open,
c.working_hours_close,
c.project_id,
to_char(c.date_closed, 'YYYY-MM-DD'),
c.type_id,
c.working_hours_open,
c.working_hours_close,
date_trunc('day',c.create_date),
c.assigned_to,
c.partner_id,
c.canal_id,
c.task_id
)""")
WHERE c.categ_id IN (select res_id from ir_model_data WHERE model = 'crm.case.categ' and name='bug_categ')
)""")
project_issue_report()
@@ -25,11 +25,12 @@
<field name="date_closed" invisible="1"/>
<field name="state" invisible="1"/>
<field name="day" invisible="1"/>
<field name="nbr" string="#Project Issue" sum='#Number of Project Issue'/>
<field name="nbr" string="#Project Issues" sum='#Number of Project Issues'/>
<field name="delay_open" avg='Avg Opening Delay'/>
<field name="delay_close" avg='Avg Closing Delay'/>
<field name="working_hours_open" sum='Open Working Hours'/>
<field name="working_hours_close" sum='Close Working hours'/>
<field name="email" sum='# Emails'/>
</tree>
</field>
</record>
+3 -3
View File
@@ -28,9 +28,9 @@ class company(osv.osv):
help="This is the leads/security time for each purchase order."),
}
_defaults = {
'po_lead': 1.0,
'po_lead': lambda *a: 1.0,
}
company()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+9 -6
View File
@@ -1,6 +1,6 @@
# -*- coding: utf-8 -*-
##############################################################################
#
#
# OpenERP, Open Source Management Solution
# Copyright (C) 2004-2010 Tiny SPRL (<http://tiny.be>).
#
@@ -15,7 +15,7 @@
# GNU Affero General Public License for more details.
#
# You should have received a copy of the GNU Affero General Public License
# along with this program. If not, see <http://www.gnu.org/licenses/>.
# along with this program. If not, see <http://www.gnu.org/licenses/>.
#
##############################################################################
@@ -27,14 +27,17 @@ class res_partner(osv.osv):
_columns = {
'property_product_pricelist_purchase': fields.property(
'product.pricelist',
type='many2one',
relation='product.pricelist',
type='many2one',
relation='product.pricelist',
domain=[('type','=','purchase')],
string="Purchase Pricelist",
string="Purchase Pricelist",
method=True,
view_load=True,
help="This pricelist will be used, instead of the default one, for purchases from the current partner"),
}
res_partner()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
+1 -22
View File
@@ -141,7 +141,7 @@
<field eval="&quot;&quot;&quot;condition_origin&quot;&quot;&quot;" name="name"/>
</record>
<record id="process_condition_conditioninvoicemanual" model="process.condition">
<record id="process_condition_conditioninvoicemanual" model="process.condition">
<field name="model_id" ref="purchase.model_purchase_order"/>
<field name="node_id" ref="process_node_invoicecontrol0"/>
<field eval="&quot;&quot;&quot;object.invoice_method=='manual'&quot;&quot;&quot;" name="model_states"/>
@@ -152,20 +152,7 @@
Process Transition
-->
<record id="res_roles_purchase0" model="res.roles">
<field eval="&quot;&quot;&quot;Purchase&quot;&quot;&quot;" name="name"/>
</record>
<record id="purchase.trans_draft_confirmed" model="workflow.transition">
<field name="role_id" ref="res_roles_purchase0"/>
</record>
<record id="purchase.trans_router_invoice" model="workflow.transition">
<field name="role_id" ref="res_roles_purchase0"/>
</record>
<record id="process_transition_productrecept0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;From a Pick list&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;A Pick list generates a supplier invoice. Depending on the Invoicing control of the purchase order, the invoice is based on received or on ordered quantities.&quot;&quot;&quot;" name="note"/>
@@ -174,7 +161,6 @@
</record>
<record id="process_transition_confirmingpurchaseorder0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Confirmation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;The buyer has to approve the RFQ before being sent to the supplier. The RFQ becomes a confirmed Purchase Order.&quot;&quot;&quot;" name="note"/>
@@ -184,7 +170,6 @@
</record>
<record id="process_transition_confirmingpurchaseorder1" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Confirmation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;In case there is no supplier for this product, the buyer can fill the form manually and confirm it. The RFQ becomes a confirmed Purchase Order.&quot;&quot;&quot;" name="note"/>
@@ -193,7 +178,6 @@
</record>
<record id="process_transition_approvingpurchaseorder0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Approbation&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;The supplier approves the Purchase Order.&quot;&quot;&quot;" name="note"/>
@@ -202,7 +186,6 @@
</record>
<record id="process_transition_invoicefrompurchase0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;The invoice is created automatically if the Invoice control of the purchase order is 'On order'. The invoice can also be generated manually by the accountant (Invoice control = Manual).&quot;&quot;&quot;" name="note"/>
@@ -212,7 +195,6 @@
</record>
<record id="process_transition_createpackinglist0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Pick list generated&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;A pick list is generated to track the incoming products.&quot;&quot;&quot;" name="note"/>
@@ -221,7 +203,6 @@
</record>
<record id="process_transition_invoicefrompackinglist0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;Invoice&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;The invoice is created automatically if the Invoice control of the purchase order is 'On picking'. The invoice can also be generated manually by the accountant (Invoice control = Manual).&quot;&quot;&quot;" name="note"/>
@@ -230,7 +211,6 @@
</record>
<record id="process_transition_purchaseinvoice0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;From a purchase order&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;A purchase order generates a supplier invoice, as soon as it is confirmed by the buyer. Depending on the Invoicing control of the purchase order, the invoice is based on received or on ordered quantities.&quot;&quot;&quot;" name="note"/>
@@ -239,7 +219,6 @@
</record>
<record id="process_transition_packinginvoice0" model="process.transition">
<field eval="[(6,0,[])]" name="role_ids"/>
<field eval="[(6,0,[])]" name="transition_ids"/>
<field eval="&quot;&quot;&quot;From a Pick list&quot;&quot;&quot;" name="name"/>
<field eval="&quot;&quot;&quot;A Pick list generates an invoice. Depending on the Invoicing control of the sale order, the invoice is based on delivered or on ordered quantities.&quot;&quot;&quot;" name="note"/>
+1 -4
View File
@@ -19,13 +19,10 @@
"access_product_product_purchase_user","product.product.purchase.user","product.model_product_product","group_purchase_user",1,0,0,0
"access_account_invoice_purchase","account_invoice purchase","account.model_account_invoice","group_purchase_user",1,1,1,1
"access_account_invoice_line_purchase","account_invoice.line purchase","account.model_account_invoice_line","group_purchase_user",1,1,1,1
"access_account_invoice_tax_purchase","account_invoice.tax purchase","account.model_account_invoice_tax","group_purchase_user",1,1,1,1
"access_account_fiscal_position_purchase_user","account.fiscal.position purchase","account.model_account_fiscal_position","group_purchase_user",1,0,0,0
"access_account_sequence_fiscalyear_purchase_user","account.sequence.fiscalyear purchase","account.model_account_sequence_fiscalyear","group_purchase_user",1,1,1,1
"access_res_partner_purchase_user","res.partner purchase","base.model_res_partner","group_purchase_user",1,0,0,0
"access_res_partner_address_purchase_user","res.partner.address purchase","base.model_res_partner_address","group_purchase_user",1,0,0,0
"access_account_journal","account.journal","account.model_account_journal","purchase.group_purchase_user",1,1,1,0
"access_account_journal_manager","account.journal","account.model_account_journal","purchase.group_purchase_manager",1,1,1,1
"access_purchase_order_line_invoice_user","purchase.order.line_invoice","model_purchase_order_line_invoice","group_purchase_user",1,0,0,0
"access_purchase_order_line_invoice_manager","purchase.order.line_invoice","model_purchase_order_line_invoice","group_purchase_manager",1,1,1,1
"access_purchase_installer_user","purchase.installer","model_purchase_installer","group_purchase_user",1,0,0,0
"access_purchase_installer_manager","purchase.installer","model_purchase_installer","group_purchase_manager",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
19 access_product_product_purchase_user product.product.purchase.user product.model_product_product group_purchase_user 1 0 0 0
20 access_account_invoice_purchase account_invoice purchase account.model_account_invoice group_purchase_user 1 1 1 1
21 access_account_invoice_line_purchase account_invoice.line purchase account.model_account_invoice_line group_purchase_user 1 1 1 1
22 access_account_invoice_tax_purchase account_invoice.tax purchase account.model_account_invoice_tax group_purchase_user 1 1 1 1
23 access_account_fiscal_position_purchase_user account.fiscal.position purchase account.model_account_fiscal_position group_purchase_user 1 0 0 0
24 access_account_sequence_fiscalyear_purchase_user account.sequence.fiscalyear purchase account.model_account_sequence_fiscalyear group_purchase_user 1 1 1 1
25 access_res_partner_purchase_user res.partner purchase base.model_res_partner group_purchase_user 1 0 0 0
26 access_res_partner_address_purchase_user res.partner.address purchase base.model_res_partner_address group_purchase_user 1 0 0 0
27 access_account_journal account.journal account.model_account_journal purchase.group_purchase_user 1 1 1 0
28 access_account_journal_manager account.journal account.model_account_journal purchase.group_purchase_manager 1 1 1 1
access_purchase_order_line_invoice_user purchase.order.line_invoice model_purchase_order_line_invoice group_purchase_user 1 0 0 0
access_purchase_order_line_invoice_manager purchase.order.line_invoice model_purchase_order_line_invoice group_purchase_manager 1 1 1 1
access_purchase_installer_user purchase.installer model_purchase_installer group_purchase_user 1 0 0 0
access_purchase_installer_manager purchase.installer model_purchase_installer group_purchase_manager 1 1 1 1
@@ -11,14 +11,14 @@
<record model="ir.rule" id="purchase_order_comp_rule">
<field name="name">Purchase Order multi-company</field>
<field name="name">Purchase Order multi-company</field>
<field name="model_id" ref="model_purchase_order"/>
<field name="global" eval="True"/>
<field name="domain_force">['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]</field>
</record>
<record model="ir.rule" id="purchase_order_line_comp_rule">
<field name="name">Purchase Order Line multi-company</field>
<field name="name">Purchase Order Line multi-company</field>
<field name="model_id" ref="model_purchase_order_line"/>
<field name="global" eval="True"/>
<field name="domain_force">['|',('company_id','=',False),('company_id','child_of',[user.company_id.id])]</field>
@@ -1,4 +1,3 @@
"id","name","model_id:id","group_id:id","perm_read","perm_write","perm_create","perm_unlink"
"access_purchase_requisition","purchase.requisition","model_purchase_requisition","purchase.group_purchase_user",1,0,0,0
"access_purchase_requisition_line","purchase.requisition.line","model_purchase_requisition_line","purchase.group_purchase_user",1,0,0,0
"access_purchase_requisition_partner","purchase.requisition.partner","model_purchase_requisition_partner","purchase.group_purchase_user",1,0,0,0
"access_purchase_requisition","purchase.requisition","model_purchase_requisition","purchase.group_purchase_user",1,1,1,1
"access_purchase_requisition_line","purchase.requisition.line","model_purchase_requisition_line","purchase.group_purchase_user",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_purchase_requisition purchase.requisition model_purchase_requisition purchase.group_purchase_user 1 0 1 0 1 0 1
3 access_purchase_requisition_line purchase.requisition.line model_purchase_requisition_line purchase.group_purchase_user 1 0 1 0 1 0 1
access_purchase_requisition_partner purchase.requisition.partner model_purchase_requisition_partner purchase.group_purchase_user 1 0 0 0
+2 -1
View File
@@ -33,4 +33,5 @@ class company(osv.osv):
}
company()
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
-2
View File
@@ -19,5 +19,3 @@
"access_sale_open_invoice_manager","sale.open.invoice","model_sale_open_invoice","group_sale_manager",1,1,1,1
"access_product_product_sale_user","product.product.sale.user","model_product_product","group_sale_user",1,0,0,0
"access_sale_account_journal","account.journal sale order.user","account.model_account_journal","group_sale_user",1,0,0,0
"access_sale_make_invoice_user","sale.make.invoice","model_sale_make_invoice","group_sale_user",1,0,0,0
"access_sale_make_invoice_manager","sale.make.invoice","model_sale_make_invoice","group_sale_manager",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
19 access_sale_open_invoice_manager sale.open.invoice model_sale_open_invoice group_sale_manager 1 1 1 1
20 access_product_product_sale_user product.product.sale.user model_product_product group_sale_user 1 0 0 0
21 access_sale_account_journal account.journal sale order.user account.model_account_journal group_sale_user 1 0 0 0
access_sale_make_invoice_user sale.make.invoice model_sale_make_invoice group_sale_user 1 0 0 0
access_sale_make_invoice_manager sale.make.invoice model_sale_make_invoice group_sale_manager 1 1 1 1
+4
View File
@@ -12,6 +12,10 @@
<record model='ir.ui.menu' id='menu_action_shop_form'>
<field name="groups_id" eval="[(6,0,[ref('group_sale_manager')])]"/>
</record>
<record model="ir.ui.menu" id="base.menu_base_partner">
<field eval="[(4, ref('sale.group_sale_user'))]" name="groups_id"/>
</record>
<record model="ir.rule" id="sale_order_comp_rule">
<field name="name">Sale Order multi-company</field>
@@ -8,7 +8,3 @@
"access_sale_journal_sale_journal_stock_worker","sale_journal.sale.journal stock worker","model_sale_journal_sale_journal","stock.group_stock_user",1,0,0,0
"access_sale_journal_picking_journal_stock_worker","sale_journal.picking.journal stock worker","model_sale_journal_picking_journal","stock.group_stock_user",1,0,0,0
"access_sale_journal_invoice_type_stock_worker","sale_journal.invoice_type stock worker","model_sale_journal_invoice_type","stock.group_stock_user",1,0,0,0
"access_sale_journal_report_user","sale_journal.sale.journal.report","model_sale_journal_report","sale.group_sale_user",1,0,0,0
"access_sale_journal_report_manager","sale_journal.sale.journal.report","model_sale_journal_report","sale.group_sale_manager",1,1,1,1
"access_sale_journal_picking_report_user","sale_journal.sale.journal.picking.report","model_sale_journal_picking_report","sale.group_sale_user",1,0,0,0
"access_sale_journal_picking_report_manager","sale_journal.sale.journal.picking.report","model_sale_journal_picking_report","sale.group_sale_manager",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
8 access_sale_journal_sale_journal_stock_worker sale_journal.sale.journal stock worker model_sale_journal_sale_journal stock.group_stock_user 1 0 0 0
9 access_sale_journal_picking_journal_stock_worker sale_journal.picking.journal stock worker model_sale_journal_picking_journal stock.group_stock_user 1 0 0 0
10 access_sale_journal_invoice_type_stock_worker sale_journal.invoice_type stock worker model_sale_journal_invoice_type stock.group_stock_user 1 0 0 0
access_sale_journal_report_user sale_journal.sale.journal.report model_sale_journal_report sale.group_sale_user 1 0 0 0
access_sale_journal_report_manager sale_journal.sale.journal.report model_sale_journal_report sale.group_sale_manager 1 1 1 1
access_sale_journal_picking_report_user sale_journal.sale.journal.picking.report model_sale_journal_picking_report sale.group_sale_user 1 0 0 0
access_sale_journal_picking_report_manager sale_journal.sale.journal.picking.report model_sale_journal_picking_report sale.group_sale_manager 1 1 1 1
+1 -7
View File
@@ -2,14 +2,8 @@
"access_scrum_sprint","scrum.sprint","model_scrum_sprint","project.group_project_user",1,0,0,0
"access_scrum_product_backlog","scrum.product.backlog","model_scrum_product_backlog","project.group_project_user",1,1,1,1
"access_scrum_meeting","scrum.meeting","model_scrum_meeting","project.group_project_user",1,0,0,0
"access_product_uom_project_user","product.uom project user","product.model_product_uom","project.group_project_user",1,0,0,0
"access_backlog_create_task_user","backlog.create.task user","model_backlog_create_task","project.group_project_user",1,1,1,1
"access_scrum_backlog_merge_user","scrum.backlog.merge user","model_scrum_backlog_merge","project.group_project_user",1,1,1,1
"access_backlog_assign_sprint_user ","backlog.assign.sprint user","model_backlog_assign_sprint","project.group_project_user",1,0,0,0
"access_scrum_meeting_manager","scrum.meeting.manager","model_scrum_meeting","project.group_project_manager",1,1,1,1
"access_scrum_sprint_manager","scrum.sprint.manager","model_scrum_sprint","project.group_project_manager",1,1,1,1
"access_scrum_product_backlog_manager","scrum.product.backlog manager","model_scrum_product_backlog","project.group_project_manager",1,1,1,1
"access_product_uom_project_manager","product.uom project manager","product.model_product_uom","project.group_project_manager",1,1,1,1
"access_backlog_create_task_manager","backlog.create.task manager","model_backlog_create_task","project.group_project_manager",1,1,1,1
"access_scrum_backlog_merge_manager","scrum.backlog.merge manager","model_scrum_backlog_merge","project.group_project_manager",1,1,1,1
"access_backlog_assign_sprint_manager","backlog.assign.sprint manager","model_backlog_assign_sprint","project.group_project_manager",1,1,1,1
"access_product_uom_project_user","product.uom project user","product.model_product_uom","project.group_project_user",1,0,0,0
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
2 access_scrum_sprint scrum.sprint model_scrum_sprint project.group_project_user 1 0 0 0
3 access_scrum_product_backlog scrum.product.backlog model_scrum_product_backlog project.group_project_user 1 1 1 1
4 access_scrum_meeting scrum.meeting model_scrum_meeting project.group_project_user 1 0 0 0
access_product_uom_project_user product.uom project user product.model_product_uom project.group_project_user 1 0 0 0
access_backlog_create_task_user backlog.create.task user model_backlog_create_task project.group_project_user 1 1 1 1
access_scrum_backlog_merge_user scrum.backlog.merge user model_scrum_backlog_merge project.group_project_user 1 1 1 1
access_backlog_assign_sprint_user backlog.assign.sprint user model_backlog_assign_sprint project.group_project_user 1 0 0 0
5 access_scrum_meeting_manager scrum.meeting.manager model_scrum_meeting project.group_project_manager 1 1 1 1
6 access_scrum_sprint_manager scrum.sprint.manager model_scrum_sprint project.group_project_manager 1 1 1 1
7 access_scrum_product_backlog_manager scrum.product.backlog manager model_scrum_product_backlog project.group_project_manager 1 1 1 1
8 access_product_uom_project_manager product.uom project manager product.model_product_uom project.group_project_manager 1 1 1 1
9 access_backlog_create_task_manager access_product_uom_project_user backlog.create.task manager product.uom project user model_backlog_create_task product.model_product_uom project.group_project_manager project.group_project_user 1 1 0 1 0 1 0
access_scrum_backlog_merge_manager scrum.backlog.merge manager model_scrum_backlog_merge project.group_project_manager 1 1 1 1
access_backlog_assign_sprint_manager backlog.assign.sprint manager model_backlog_assign_sprint project.group_project_manager 1 1 1 1
@@ -23,11 +23,3 @@
"access_stock_inventory_line_split","stock.inventory.line.split","model_stock_inventory_line_split","stock.group_stock_user",1,1,1,1
"access_report_stock_move","report.stock.move","model_report_stock_move","stock.group_stock_user",1,1,1,1
"access_report_stock_inventory","report.stock.inventory","model_report_stock_inventory","stock.group_stock_user",1,1,1,1
"access_stock_replacement","stock.replacement","model_stock_replacement","stock.group_stock_user",1,1,1,1
"access_stock_replacement_result","stock.replacement.result","model_stock_replacement_result","stock.group_stock_user",1,1,1,1
"access_stock_ups","stock.ups","model_stock_ups","stock.group_stock_user",1,1,1,1
"access_stock_ups_final","stock.ups.final","model_stock_ups_final","stock.group_stock_user",1,1,1,1
"access_stock_ups_upload","stock.ups.upload","model_stock_ups_upload","stock.group_stock_user",1,1,1,1
"access_stock_split_into","stock.split.into","model_stock_split_into","stock.group_stock_user",1,1,1,0
"access_stock_split_into_manager","stock.split.into","model_stock_split_into","stock.group_stock_manager",1,1,1,1
"access_report_stock_picking","report.stock.picking","model_report_stock_picking","stock.group_stock_manager",1,1,1,1
1 id name model_id:id group_id:id perm_read perm_write perm_create perm_unlink
23 access_stock_inventory_line_split stock.inventory.line.split model_stock_inventory_line_split stock.group_stock_user 1 1 1 1
24 access_report_stock_move report.stock.move model_report_stock_move stock.group_stock_user 1 1 1 1
25 access_report_stock_inventory report.stock.inventory model_report_stock_inventory stock.group_stock_user 1 1 1 1
access_stock_replacement stock.replacement model_stock_replacement stock.group_stock_user 1 1 1 1
access_stock_replacement_result stock.replacement.result model_stock_replacement_result stock.group_stock_user 1 1 1 1
access_stock_ups stock.ups model_stock_ups stock.group_stock_user 1 1 1 1
access_stock_ups_final stock.ups.final model_stock_ups_final stock.group_stock_user 1 1 1 1
access_stock_ups_upload stock.ups.upload model_stock_ups_upload stock.group_stock_user 1 1 1 1
access_stock_split_into stock.split.into model_stock_split_into stock.group_stock_user 1 1 1 0
access_stock_split_into_manager stock.split.into model_stock_split_into stock.group_stock_manager 1 1 1 1
access_report_stock_picking report.stock.picking model_report_stock_picking stock.group_stock_manager 1 1 1 1
+695
View File
@@ -0,0 +1,695 @@
# Spanish translation for openobject-addons
# Copyright (c) 2010 Rosetta Contributors and Canonical Ltd 2010
# This file is distributed under the same license as the openobject-addons package.
# FIRST AUTHOR <EMAIL@ADDRESS>, 2010.
#
msgid ""
msgstr ""
"Project-Id-Version: openobject-addons\n"
"Report-Msgid-Bugs-To: FULL NAME <EMAIL@ADDRESS>\n"
"POT-Creation-Date: 2009-11-26 06:01+0000\n"
"PO-Revision-Date: 2010-06-29 22:27+0000\n"
"Last-Translator: Borja López Soilán (Pexego) <borjals@pexego.es>\n"
"Language-Team: Spanish <es@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: 2010-06-30 03:34+0000\n"
"X-Generator: Launchpad (build Unknown)\n"
#. module: survey
#: model:ir.ui.menu,name:survey.menu_survey_form
msgid "Surveys"
msgstr "Encuestas"
#. module: survey
#: model:ir.actions.report.xml,name:survey.survey
msgid "Survey Analysis Report"
msgstr "Informe de análisis de encuestas"
#. module: survey
#: model:ir.actions.act_window,name:survey.act_survey_page_question
#: model:ir.ui.menu,name:survey.menu_survey_question_form1
msgid "Survey Questions"
msgstr "Preguntas de las encuestas"
#. module: survey
#: view:survey:0
#: view:survey.response:0
msgid "Set to draft"
msgstr "Cambiar a borrador"
#. module: survey
#: constraint:ir.actions.act_window:0
msgid "Invalid model name in the action definition."
msgstr "Nombre de modelo inválido en la definición de acción."
#. module: survey
#: field:survey.history,date:0
msgid "Date started"
msgstr "Fecha de inicio"
#. module: survey
#: field:survey,history:0
msgid "History Lines"
msgstr "Líneas histórico"
#. module: survey
#: wizard_field:wizard.send.invitation,init,mail:0
msgid "Body"
msgstr "Cuerpo"
#. module: survey
#: model:ir.actions.act_window,name:survey.action_view_survey_name
#: model:ir.ui.menu,name:survey.menu_run_survey_form
msgid "Give Survey Response"
msgstr "Responder la encuesta"
#. module: survey
#: model:ir.actions.act_window,name:survey.act_survey_question
msgid "All Questions"
msgstr "Todas las preguntas"
#. module: survey
#: field:survey,date_open:0
msgid "Survey Open Date"
msgstr "Fecha apertura de encuesta"
#. module: survey
#: model:ir.model,name:survey.model_survey_name_wiz
msgid "survey.name.wiz"
msgstr "encuesta.nombre.asist"
#. module: survey
#: view:survey:0
msgid "Users Details"
msgstr "Detalles usuarios"
#. module: survey
#: model:ir.actions.act_window,name:survey.action_view_survey_question_message
#: model:ir.model,name:survey.model_survey_question
#: view:survey:0
#: view:survey.page:0
#: view:survey.question:0
msgid "Survey Question"
msgstr "Pregunta de la encuesta"
#. module: survey
#: help:survey,response_user:0
msgid "Set to one if you require only one response per user"
msgstr "Establecer a uno si sólo necesita una respuesta por usuario"
#. module: survey
#: field:survey.page,title:0
msgid "Page Title"
msgstr "Título de la página"
#. module: survey
#: model:ir.model,name:survey.model_survey_history
msgid "Survey History"
msgstr "Histórico encuestas"
#. module: survey
#: field:survey.response,comment:0
#: field:survey.response.answer,comment:0
msgid "Notes"
msgstr "Notas"
#. module: survey
#: field:survey.question,tot_resp:0
msgid "Total Response"
msgstr "Respuesta total"
#. module: survey
#: view:survey.question.wiz:0
msgid "Your Messages"
msgstr "Sus mensajes"
#. module: survey
#: selection:survey,state:0
msgid "Cancelled"
msgstr "Cancelada"
#. module: survey
#: field:survey.question,allow_comment:0
msgid "Allow Comment Field"
msgstr "Permitir campo comentario"
#. module: survey
#: code:addons/survey/survey.py:0
#, python-format
msgid "Warning !"
msgstr "¡ Advertencia !"
#. module: survey
#: wizard_view:wizard.send.invitation,init:0
#: wizard_field:wizard.send.invitation,init,send_mail_existing:0
msgid "Send reminder for existing user"
msgstr "Enviar recordatorio para usuario existente"
#. module: survey
#: model:ir.actions.act_window,name:survey.action_new_survey_question_form
#: model:ir.ui.menu,name:survey.menu_new_survey_question_form1
msgid "New Survey Question"
msgstr "Nueva pregunta de encuesta"
#. module: survey
#: view:survey.response:0
msgid "Skip"
msgstr "Saltar"
#. module: survey
#: wizard_field:wizard.send.invitation,init,partner_ids:0
msgid "Partner"
msgstr "Empresa"
#. module: survey
#: wizard_field:wizard.send.invitation,init,mail_subject:0
#: wizard_field:wizard.send.invitation,init,mail_subject_existing:0
msgid "Subject"
msgstr "Asunto"
#. module: survey
#: field:survey,max_response_limit:0
msgid "Maximum Response Limit"
msgstr "Límite respuesta máxima"
#. module: survey
#: wizard_field:wizard.send.invitation,init,mail_from:0
msgid "From"
msgstr "De"
#. module: survey
#: field:survey.response,response_type:0
msgid "Response Type"
msgstr ""
#. module: survey
#: field:survey.name.wiz,transfer:0
msgid "Page Transfer"
msgstr ""
#. module: survey
#: field:survey.answer,question_id:0
#: field:survey.page,question_ids:0
#: field:survey.question,question:0
#: field:survey.response,question_id:0
msgid "Question"
msgstr ""
#. module: survey
#: wizard_button:wizard.send.invitation,init,send:0
msgid "Send"
msgstr ""
#. module: survey
#: field:survey.answer,response:0
msgid "#Response"
msgstr ""
#. module: survey
#: field:survey.response,response_answer_ids:0
msgid "Response Answer"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Response Summary"
msgstr ""
#. module: survey
#: wizard_view:wizard.send.invitation,init:0
#: wizard_field:wizard.send.invitation,init,send_mail:0
msgid "Send mail for new user"
msgstr ""
#. module: survey
#: code:addons/survey/survey.py:0
#, python-format
msgid "Error !"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Skipped Question"
msgstr ""
#. module: survey
#: wizard_button:wizard.send.invitation,send,end:0
msgid "_Ok"
msgstr ""
#. module: survey
#: selection:survey.response,response_type:0
msgid "Link"
msgstr ""
#. module: survey
#: model:ir.ui.menu,name:survey.menu_survey_config
msgid "Configuration"
msgstr ""
#. module: survey
#: model:ir.model,name:survey.model_survey_question_wiz
msgid "survey.question.wiz"
msgstr ""
#. module: survey
#: constraint:ir.ui.view:0
msgid "Invalid XML for View Architecture!"
msgstr ""
#. module: survey
#: model:ir.model,name:survey.model_survey_response_answer
#: view:survey.response.answer:0
msgid "Survey Response Answer"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Page :-"
msgstr ""
#. module: survey
#: field:survey,response_user:0
msgid "Maximum Response per User"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Total Started Survey :-"
msgstr ""
#. module: survey
#: view:survey.response:0
msgid "Comment"
msgstr ""
#. module: survey
#: field:survey.response,date_modify:0
msgid "Modify Date"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Answered Question"
msgstr ""
#. module: survey
#: code:addons/survey/survey.py:0
#, python-format
msgid "You can not give response for this survey more than %s times"
msgstr ""
#. module: survey
#: selection:survey.response,response_type:0
msgid "Manually"
msgstr ""
#. module: survey
#: model:ir.actions.act_window,name:survey.action_survey_form1
msgid "All Surveys"
msgstr ""
#. module: survey
#: view:survey:0
#: field:survey,users:0
msgid "Users"
msgstr ""
#. module: survey
#: wizard_view:wizard.send.invitation,init:0
msgid "Message"
msgstr ""
#. module: survey
#: field:survey.name.wiz,page_no:0
msgid "Page Number"
msgstr ""
#. module: survey
#: wizard_field:wizard.send.invitation,send,note:0
msgid "Log"
msgstr ""
#. module: survey
#: model:ir.actions.act_window,name:survey.action_survey_question_form
msgid "All Survey Questions"
msgstr ""
#. module: survey
#: field:survey,date_close:0
msgid "Survey Close Date"
msgstr ""
#. module: survey
#: view:survey.name.wiz:0
msgid "Start"
msgstr ""
#. module: survey
#: selection:survey,state:0
#: selection:survey.response,state:0
msgid "Draft"
msgstr ""
#. module: survey
#: selection:survey,state:0
msgid "Closed"
msgstr ""
#. module: survey
#: view:survey:0
#: field:survey.answer,answer:0
#: view:survey.page:0
#: view:survey.question:0
#: field:survey.question,answer_choice_ids:0
#: field:survey.response.answer,answer_id:0
msgid "Answer"
msgstr ""
#. module: survey
#: model:ir.actions.act_window,name:survey.action_survey_page_form
msgid "All Survey Pages"
msgstr ""
#. module: survey
#: field:survey.name.wiz,store_ans:0
msgid "Store Answer"
msgstr ""
#. module: survey
#: field:survey,state:0
#: field:survey.response,state:0
msgid "Status"
msgstr ""
#. module: survey
#: model:ir.module.module,shortdesc:survey.module_meta_information
msgid "Survey Module"
msgstr ""
#. module: survey
#: model:ir.module.module,description:survey.module_meta_information
msgid ""
"\n"
" This module is used for surveing. It depends on the answers or reviews "
"of some questions by different users.\n"
" A survey may have multiple pages. Each page may contain multiple "
"questions and each question may have multiple answers.\n"
" Different users may give different answers of question and according to "
"that survey is done. \n"
" Partners are also sent mails with user name and password for the "
"invitation of the survey\n"
" "
msgstr ""
#. module: survey
#: view:survey:0
#: view:survey.name.wiz:0
msgid "Survey Details"
msgstr ""
#. module: survey
#: field:survey.question,is_require_answer:0
msgid "Required Answer"
msgstr ""
#. module: survey
#: field:survey.history,user_id:0
#: field:survey.response,response_id:0
msgid "User"
msgstr ""
#. module: survey
#: field:res.users,survey_id:0
msgid "Groups"
msgstr ""
#. module: survey
#: view:survey:0
#: view:survey.page:0
#: view:survey.question:0
#: field:survey.question,response_ids:0
#: view:survey.response:0
#: field:survey.response.answer,response_id:0
msgid "Response"
msgstr ""
#. module: survey
#: model:ir.actions.act_window,name:survey.action_new_survey_form1
#: model:ir.ui.menu,name:survey.menu_new_survey_form
msgid "New Survey"
msgstr ""
#. module: survey
#: model:ir.ui.menu,name:survey.main_menu_survey
msgid "Survey Management"
msgstr ""
#. module: survey
#: selection:survey.response,state:0
msgid "Skiped"
msgstr ""
#. module: survey
#: model:ir.model,name:survey.model_survey_answer
#: view:survey.answer:0
msgid "Survey Answer"
msgstr ""
#. module: survey
#: code:addons/survey/wizard/wizard_survey.py:0
#, python-format
msgid "Attention!"
msgstr ""
#. module: survey
#: model:ir.model,name:survey.model_survey
#: view:res.users:0
#: view:survey:0
#: field:survey.history,survey_id:0
#: view:survey.name.wiz:0
#: field:survey.name.wiz,survey_id:0
#: field:survey.page,survey_id:0
#: field:survey.question,survey:0
msgid "Survey"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Total Completed Survey :-"
msgstr ""
#. module: survey
#: view:survey:0
msgid "History"
msgstr ""
#. module: survey
#: view:survey:0
#: view:survey.answer:0
#: view:survey.page:0
#: view:survey.question:0
msgid "Seq"
msgstr ""
#. module: survey
#: field:survey,tot_comp_survey:0
msgid "Total Completed Survey"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Response Percentage"
msgstr ""
#. module: survey
#: field:survey.question.wiz,name:0
msgid "Number"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Survey Title :-"
msgstr ""
#. module: survey
#: view:survey.response:0
msgid "Done"
msgstr ""
#. module: survey
#: code:addons/survey/survey.py:0
#, python-format
msgid "'\" + que_rec[0]['question'] + \"' This question requires an answer."
msgstr ""
#. module: survey
#: view:survey:0
#: view:survey.name.wiz:0
#: wizard_button:wizard.send.invitation,init,end:0
msgid "Cancel"
msgstr ""
#. module: survey
#: view:survey:0
msgid "Close"
msgstr ""
#. module: survey
#: view:survey:0
#: selection:survey,state:0
msgid "Open"
msgstr ""
#. module: survey
#: field:survey,tot_start_survey:0
msgid "Total Started Survey"
msgstr ""
#. module: survey
#: constraint:ir.model:0
msgid ""
"The Object name must start with x_ and not contain any special character !"
msgstr ""
#. module: survey
#: model:ir.model,name:survey.model_survey_response
#: view:survey.response:0
msgid "Survey Response"
msgstr ""
#. module: survey
#: field:survey.answer,average:0
msgid "#Avg"
msgstr ""
#. module: survey
#: field:survey,responsible_id:0
msgid "Responsible"
msgstr ""
#. module: survey
#: selection:survey.response,state:0
msgid "Answered"
msgstr ""
#. module: survey
#: view:survey:0
msgid "Other"
msgstr ""
#. module: survey
#: model:ir.actions.wizard,name:survey.wizard_send_invitation
#: wizard_view:wizard.send.invitation,init:0
msgid "Send Invitation"
msgstr ""
#. module: survey
#: field:survey,title:0
msgid "Survey Title"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "%"
msgstr ""
#. module: survey
#: view:survey:0
#: field:survey,note:0
#: field:survey.name.wiz,note:0
#: view:survey.page:0
#: field:survey.page,note:0
#: view:survey.response:0
msgid "Description"
msgstr ""
#. module: survey
#: view:survey.name.wiz:0
msgid "Select Survey"
msgstr ""
#. module: survey
#: model:ir.actions.act_window,name:survey.action_new_survey_page_form
#: model:ir.ui.menu,name:survey.menu_new_survey_page_form1
msgid "New Survey Page"
msgstr ""
#. module: survey
#: view:survey:0
#: view:survey.page:0
#: field:survey.question,page_id:0
msgid "Survey Page"
msgstr ""
#. module: survey
#: model:ir.actions.act_window,name:survey.act_survey_answer
msgid "Survey Answers"
msgstr ""
#. module: survey
#: view:survey.page:0
msgid "#Questions"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Que:"
msgstr ""
#. module: survey
#: field:survey,page_ids:0
msgid "Page"
msgstr ""
#. module: survey
#: wizard_view:wizard.send.invitation,send:0
msgid "User creation"
msgstr ""
#. module: survey
#: field:survey.answer,sequence:0
#: field:survey.page,sequence:0
#: field:survey.question,sequence:0
msgid "Sequence"
msgstr ""
#. module: survey
#: wizard_view:wizard.send.invitation,send:0
msgid "Results :"
msgstr ""
#. module: survey
#: code:addons/survey/wizard/wizard_survey.py:0
#, python-format
msgid "%sSurvey is not in open state"
msgstr ""
#. module: survey
#: wizard_view:wizard.send.invitation,init:0
msgid "Select Partner"
msgstr ""
#. module: survey
#: field:survey.response,date_create:0
msgid "Create Date"
msgstr ""
#. module: survey
#: model:ir.actions.act_window,name:survey.act_survey_pages
#: model:ir.model,name:survey.model_survey_page
#: model:ir.ui.menu,name:survey.menu_survey_page_form1
msgid "Survey Pages"
msgstr ""
#. module: survey
#: rml:survey_analysis_report:0
msgid "Response Count"
msgstr ""
#. module: survey
#: field:survey.name.wiz,page:0
msgid "Page Position"
msgstr ""
+3 -3
View File
@@ -24,13 +24,13 @@
'version': '1.0',
'category': 'Generic Modules/Others',
'description': """
The base module to manage documents(wiki)
The base module to manage documents(wiki)
keep track for the wiki groups, pages, and history
keep track for the wiki groups, pages, and history
""",
'author': 'Tiny & Axelor',
'website': 'http://openerp.com',
'depends': ['base'],
'depends': ['knowledge'],
'init_xml': [],
'update_xml': [
'wizard/wiki_wiki_page_open_view.xml',
+6 -8
View File
@@ -1,18 +1,16 @@
<?xml version="1.0"?>
<openerp>
<data>
<menuitem name="Knowledge Management" icon="terp-stock"
id="base.menu_document" sequence="19" />
<menuitem name="Knowledge" icon="terp-stock"
id="knowledge.menu_document" sequence="19" />
<menuitem name="Configuration"
id="base.menu_document_configuration"
parent="base.menu_document" sequence="50" />
id="knowledge.menu_document_configuration"
parent="knowledge.menu_document" sequence="50" />
<menuitem name="Wiki" id="menu_wiki_configuration"
parent="base.menu_document_configuration" sequence="2" />
parent="knowledge.menu_document_configuration" sequence="2" />
<menuitem id="base.menu_document2" name="Collaborative Content"
parent="base.menu_document" />
<!-- Wiki Groups Tree view -->
@@ -190,7 +188,7 @@
<field name="search_view_id" ref="view_wiki_filter"/>
</record>
<menuitem parent="base.menu_document2"
<menuitem parent="knowledge.menu_document2"
id="menu_action_wiki_wiki" name="Wiki Pages"
action="action_wiki" />