@@ -1,17 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>addons</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.python.pydev.PyDevBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.python.pydev.pythonNature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
@@ -1,17 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<projectDescription>
|
||||
<name>new-report-apa</name>
|
||||
<comment></comment>
|
||||
<projects>
|
||||
</projects>
|
||||
<buildSpec>
|
||||
<buildCommand>
|
||||
<name>org.python.pydev.PyDevBuilder</name>
|
||||
<arguments>
|
||||
</arguments>
|
||||
</buildCommand>
|
||||
</buildSpec>
|
||||
<natures>
|
||||
<nature>org.python.pydev.pythonNature</nature>
|
||||
</natures>
|
||||
</projectDescription>
|
||||
@@ -1,6 +0,0 @@
|
||||
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||||
<?eclipse-pydev version="1.0"?>
|
||||
|
||||
<pydev_project>
|
||||
<pydev_property name="org.python.pydev.PYTHON_PROJECT_VERSION">python 2.4</pydev_property>
|
||||
</pydev_project>
|
||||
@@ -29,7 +29,7 @@
|
||||
{
|
||||
"name" : "Accounting and financial management",
|
||||
"version" : "1.0",
|
||||
"depends" : ["product", "base"],
|
||||
"depends" : ["product", "base", "process"],
|
||||
"author" : "Tiny",
|
||||
"description": """Financial and accounting module that covers:
|
||||
General accounting
|
||||
@@ -66,6 +66,8 @@
|
||||
"project/project_report.xml",
|
||||
"product_view.xml",
|
||||
"account_assert_test.xml",
|
||||
"process/invoice_process.xml",
|
||||
"process/statement_process.xml"
|
||||
],
|
||||
"translations" : {
|
||||
"fr": "i18n/french_fr.csv"
|
||||
|
||||
@@ -141,7 +141,7 @@
|
||||
<field name="name">List of Accounts</field>
|
||||
<field name="res_model">account.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="view_mode">tree,form,graph</field>
|
||||
</record>
|
||||
<menuitem id="account_account_menu" name="Financial Accounts" parent="account.menu_finance_accounting"/>
|
||||
<menuitem action="action_account_form" id="menu_action_account_form" parent="account_account_menu"/>
|
||||
@@ -166,6 +166,7 @@
|
||||
<field name="name">Chart of Accounts</field>
|
||||
<field name="res_model">account.account</field>
|
||||
<field name="view_type">tree</field>
|
||||
<field name="view_mode">form</field>
|
||||
<field name="view_id" ref="view_account_tree"/>
|
||||
<field name="domain">[('parent_id','=',False)]</field>
|
||||
</record>
|
||||
@@ -1629,6 +1630,17 @@
|
||||
|
||||
<menuitem parent="account.account_account_menu" action="action_wizard_multi_chart" id="menu_wizard"/>
|
||||
|
||||
<record id="account_account_graph" model="ir.ui.view">
|
||||
<field name="name">account.account.graph</field>
|
||||
<field name="model">account.account</field>
|
||||
<field name="type">graph</field>
|
||||
<field name="arch" type="xml">
|
||||
<graph string="Account Statistics" type="bar">
|
||||
<field name="name"/>
|
||||
<field name="balance" operator="+"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -0,0 +1,174 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process
|
||||
-->
|
||||
|
||||
<record id="process_process_invoiceworkflow0" model="process.process">
|
||||
<field eval=""""Invoice flow for services companies."""" name="note"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field eval=""""Invoice Workflow"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_analytic0" model="process.node">
|
||||
<field name="menu_id" ref="account.account_analytic_def_account"/>
|
||||
<field name="model_id" ref="account.model_account_analytic_account"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Analytic"""" name="name"/>
|
||||
<field eval=""""From analytic accounts, It creates invoice."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_invoiceworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'open', 'pending', 'close')"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_draftinvoices0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_invoice_draft"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Draft Invoices"""" name="name"/>
|
||||
<field eval=""""Proposed invoice to be checked, validated and printed"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_invoiceworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_invoiceinvoice0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_finance_invoice"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Invoice_invoice"""" name="name"/>
|
||||
<field eval=""""Have a number and entries are generated"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_invoiceworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_accountingentries0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_form"/>
|
||||
<field name="model_id" ref="account.model_account_move"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Accounting Entries"""" name="name"/>
|
||||
<field eval=""""Validated accounting entries."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_invoiceworkflow0"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_bankstatement0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_bank_statement_tree2"/>
|
||||
<field name="model_id" ref="account.model_account_bank_statement"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Bank Statement"""" name="name"/>
|
||||
<field eval=""""Statement encoding produces payment entries"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_invoiceworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_paymententries0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_form"/>
|
||||
<field name="model_id" ref="account.model_account_move_line"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Payment Entries"""" name="name"/>
|
||||
<field eval=""""Can be draft or validated"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_invoiceworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'valid')"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_reconciliation0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_search"/>
|
||||
<field name="model_id" ref="account.model_account_move_reconcile"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Reconciliation"""" name="name"/>
|
||||
<field eval=""""Reconciliation of entries from end of the payment """" name="note"/>
|
||||
<field name="process_id" ref="process_process_invoiceworkflow0"/>
|
||||
<field eval=""""object.state=='valid'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_paidinvoice0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_invoice_tree1"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Paid invoice"""" name="name"/>
|
||||
<field eval=""""Paid invoice when reconciled."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_invoiceworkflow0"/>
|
||||
<field eval=""""object.state=='paid'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_analyticinvoice0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""analytic Invoice"""" name="name"/>
|
||||
<field eval=""""From analytic accounts, Create invoice."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_draftinvoices0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_analytic0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_customerinvoice0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Customer Invoice"""" name="name"/>
|
||||
<field eval=""""Number of entries are generated"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_invoiceinvoice0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_draftinvoices0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_validentries0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Valid Entries"""" name="name"/>
|
||||
<field eval=""""Valid entries from invoice"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_accountingentries0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_invoiceinvoice0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_entriesreconcile0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Entries Reconcile"""" name="name"/>
|
||||
<field eval=""""Reconcile Entries."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_reconciliation0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_accountingentries0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_statemententries0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Statement Entries"""" name="name"/>
|
||||
<field eval=""""From statement, create entries"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_paymententries0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_bankstatement0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_paymentreconcile0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Payment Reconcile"""" name="name"/>
|
||||
<field eval=""""Reconcilate the entries from payment"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_reconciliation0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_paymententries0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_reconcilepaid0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Reconcile Paid"""" name="name"/>
|
||||
<field eval=""""Paid invoice when reconciled."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_paidinvoice0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_reconciliation0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -0,0 +1,135 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process
|
||||
-->
|
||||
|
||||
<record id="process_process_statementworkflow0" model="process.process">
|
||||
<field eval=""""Statement flow for services companies."""" name="note"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field eval=""""Statement workflow"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_electronicfile0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_bank_statement_tree2"/>
|
||||
<field name="model_id" ref="account.model_account_bank_statement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Electronic File"""" name="name"/>
|
||||
<field eval=""""Import from your bank statements"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_statementworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_importinvoice0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_bank_statement_tree2"/>
|
||||
<field name="model_id" ref="account.model_account_bank_statement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Import invoice"""" name="name"/>
|
||||
<field eval=""""Import from invoices or payments"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_statementworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_draftstatement0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_bank_statement_tree2"/>
|
||||
<field name="model_id" ref="account.model_account_bank_statement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Draft statement"""" name="name"/>
|
||||
<field eval=""""Set starting and ending balance if bank statement"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_statementworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_confirmedstatement0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_bank_statement_tree"/>
|
||||
<field name="model_id" ref="account.model_account_bank_statement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Confirmed statement"""" name="name"/>
|
||||
<field eval=""""Confirmed with/with out Reconciliation and Real balance=Computed balance"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_statementworkflow0"/>
|
||||
<field eval=""""object.state=='confirm'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_accountingstatemententries0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_search"/>
|
||||
<field name="model_id" ref="account.model_account_move_line"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Accounting Statement"""" name="name"/>
|
||||
<field eval=""""Accounting entries can be draft or validated"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_statementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'valid')"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_reconciliationofentries0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_move_line_search"/>
|
||||
<field name="model_id" ref="account.model_account_move_line"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Reconciliation of Entries"""" name="name"/>
|
||||
<field eval=""""Reconcilation of the entries with invoice."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_statementworkflow0"/>
|
||||
<field eval=""""object.state=='valid'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_filestatement0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""File statement"""" name="name"/>
|
||||
<field eval=""""Import file from your bank statement"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_draftstatement0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_electronicfile0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_invoiceimport0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Invoice import"""" name="name"/>
|
||||
<field eval=""""Import invoice from statement"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_draftstatement0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_importinvoice0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_confirmstatementfromdraft0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Confirm statement from draft"""" name="name"/>
|
||||
<field eval=""""Confirm statement with/without reconciliation from draft statement"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_confirmedstatement0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_draftstatement0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_confirmaccountingentries0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Confirm Accounting entries"""" name="name"/>
|
||||
<field eval=""""After confirming statement, it creates Entries and its entry lines"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_accountingstatemententries0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_confirmedstatement0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_accountentryreconcile0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Account entry reconcile"""" name="name"/>
|
||||
<field eval=""""Reconciliation of entries of accounting entries"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_reconciliationofentries0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_accountingstatemententries0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -73,6 +73,7 @@
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="view_id" ref="view_account_analytic_account_tree"/>
|
||||
</record>
|
||||
<!--<menuitem id="menu_analytic_account" name="Analytic Accounts" parent="account.menu_analytic_accounting"/>-->
|
||||
@@ -84,6 +85,7 @@
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="domain">[('parent_id','=',False)]</field>
|
||||
<field name="view_type">tree</field>
|
||||
<field name="view_mode">form,graph</field>
|
||||
<field name="view_id" ref="view_account_analytic_account_tree"/>
|
||||
</record>
|
||||
<menuitem
|
||||
@@ -96,7 +98,7 @@
|
||||
<field name="name">New Analytic Account</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">form,tree</field>
|
||||
<field name="view_mode">form,tree,graph</field>
|
||||
<field eval="view_account_analytic_account_form" name="view_id"/>
|
||||
</record>
|
||||
<menuitem action="analytic_account_form" id="account_analytic_form" parent="account.account_analytic_def_account"/>
|
||||
@@ -356,5 +358,17 @@
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record id="analytic_accounts_graph" model="ir.ui.view">
|
||||
<field name="name">analytic.accounts.graph</field>
|
||||
<field name="model">account.analytic.account</field>
|
||||
<field name="type">graph</field>
|
||||
<field name="arch" type="xml">
|
||||
<graph string="Analytic Account Statistics" type="bar">
|
||||
<field name="complete_name"/>
|
||||
<field name="balance" operator="+"/>
|
||||
</graph>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -128,16 +128,16 @@
|
||||
</td>
|
||||
<td></td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ sum_debit(objects,data['form']['date1'],data['form']['date2']) or 0.0 ]]</u></para>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ sum_debit(objects,data['form']['date1'],data['form']['date2']) or '0.0' ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ sum_credit(objects,data['form']['date1'],data['form']['date2']) or 0.0 ]]</u></para>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ sum_credit(objects,data['form']['date1'],data['form']['date2']) or '0.0' ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ sum_balance(objects,data['form']['date1'],data['form']['date2']) or 0.0 ]]</u></para>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ sum_balance(objects,data['form']['date1'],data['form']['date2']) or '0.0' ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ sum_quantity(objects,data['form']['date1'],data['form']['date2']) or 0.0 ]]</u></para>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ sum_quantity(objects,data['form']['date1'],data['form']['date2']) or '0.0' ]]</u></para>
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -153,16 +153,16 @@
|
||||
<para style="terp_default_8_bold">[[ o.complete_name ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8_right_bold"><u>[[ move_sum_debit(o.id,data['form']['date1'],data['form']['date2']) or 0.0 ]]</u></para>
|
||||
<para style="terp_default_8_right_bold"><u>[[ move_sum_debit(o.id,data['form']['date1'],data['form']['date2']) or '0.0' ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8_right_bold"><u>[[ move_sum_credit(o.id,data['form']['date1'],data['form']['date2']) or 0.0 ]]</u></para>
|
||||
<para style="terp_default_8_right_bold"><u>[[ move_sum_credit(o.id,data['form']['date1'],data['form']['date2']) or '0.0' ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8_right_bold"><u>[[ move_sum_balance(o.id,data['form']['date1'],data['form']['date2']) or 0.0 ]]</u></para>
|
||||
<para style="terp_default_8_right_bold"><u>[[ move_sum_balance(o.id,data['form']['date1'],data['form']['date2']) or '0.0' ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8_right_bold"><u>[[ move_sum_quantity(o.id,data['form']['date1'],data['form']['date2']) or 0.0 ]]</u></para>
|
||||
<para style="terp_default_8_right_bold"><u>[[ move_sum_quantity(o.id,data['form']['date1'],data['form']['date2']) or '0.0']]</u></para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
@@ -174,16 +174,16 @@
|
||||
<para style="terp_default_8">[[ move_g['name'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ move_g['debit'] ]]</para>
|
||||
<para style="terp_default_Right_8">[[ move_g['debit'] or '0.0']]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ move_g['credit'] ]]</para>
|
||||
<para style="terp_default_Right_8">[[ move_g['credit'] or '0.0']]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ move_g['balance'] ]]</para>
|
||||
<para style="terp_default_Right_8">[[ move_g['balance'] or '0.0']]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ (move_g['quantity'] or 0.0) ]]</para>
|
||||
<para style="terp_default_Right_8">[[ (move_g['quantity'] or '0.0') ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
|
||||
@@ -49,11 +49,12 @@ class account_analytic_analytic_check(report_sxw.rml_parse):
|
||||
'delta_debit': self._delta_deb,
|
||||
'delta_credit': self._delta_cred,
|
||||
})
|
||||
|
||||
def _lines_p(self, date1, date2):
|
||||
res = []
|
||||
acc_obj = self.pool.get('account.account')
|
||||
for a in acc_obj.read(self.cr, self.uid, self.ids, ['name', 'code', 'sign']):
|
||||
# print"3333333acc_obj3333333",acc_obj.read(self.cr, self.uid, self.ids, ['name', 'code','user_type'])
|
||||
|
||||
for a in acc_obj.read(self.cr, self.uid, self.ids, ['name', 'code']):
|
||||
self.cr.execute("SELECT sum(debit), sum(credit) \
|
||||
FROM account_move_line \
|
||||
WHERE date>=%s AND date<=%s AND state<>'draft' AND account_id = %d", (date1, date2, a['id']))
|
||||
@@ -63,12 +64,12 @@ class account_analytic_analytic_check(report_sxw.rml_parse):
|
||||
|
||||
self.cr.execute("SELECT abs(sum(amount)) AS balance \
|
||||
FROM account_analytic_line \
|
||||
WHERE date>=%s AND date<=%s AND amount*%d>0 AND general_account_id = %d", (date1, date2, a['sign'], a['id']))
|
||||
WHERE date>=%s AND date<=%s AND amount>0 AND general_account_id = %d", (date1, date2, a['id']))
|
||||
(ad,) = self.cr.fetchone()
|
||||
ad = ad or 0.0
|
||||
self.cr.execute("SELECT abs(sum(amount)) AS balance \
|
||||
FROM account_analytic_line \
|
||||
WHERE date>=%s AND date<=%s AND amount*%d<0 AND general_account_id = %d", (date1, date2, a['sign'], a['id']))
|
||||
WHERE date>=%s AND date<=%s AND amount<0 AND general_account_id = %d", (date1, date2, a['id']))
|
||||
(ac,) = self.cr.fetchone()
|
||||
ac = ac or 0.0
|
||||
|
||||
@@ -83,8 +84,44 @@ class account_analytic_analytic_check(report_sxw.rml_parse):
|
||||
self.sum_gen_cred += gc
|
||||
self.sum_ana_deb += ad
|
||||
self.sum_ana_cred += ac
|
||||
|
||||
return res
|
||||
|
||||
# def _lines_p(self, date1, date2):
|
||||
# res = []
|
||||
# acc_obj = self.pool.get('account.account')
|
||||
# for a in acc_obj.read(self.cr, self.uid, self.ids, ['name', 'code','sign']):
|
||||
# self.cr.execute("SELECT sum(debit), sum(credit) \
|
||||
# FROM account_move_line \
|
||||
# WHERE date>=%s AND date<=%s AND state<>'draft' AND account_id = %d", (date1, date2, a['id']))
|
||||
# (gd, gc) = self.cr.fetchone()
|
||||
# gd = gd or 0.0
|
||||
# gc = gc or 0.0
|
||||
#
|
||||
# self.cr.execute("SELECT abs(sum(amount)) AS balance \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE date>=%s AND date<=%s AND amount*%d>0 AND general_account_id = %d", (date1, date2, a['sign'], a['id']))
|
||||
# (ad,) = self.cr.fetchone()
|
||||
# ad = ad or 0.0
|
||||
# self.cr.execute("SELECT abs(sum(amount)) AS balance \
|
||||
# FROM account_analytic_line \
|
||||
# WHERE date>=%s AND date<=%s AND amount*%d<0 AND general_account_id = %d", (date1, date2, a['sign'], a['id']))
|
||||
# (ac,) = self.cr.fetchone()
|
||||
# ac = ac or 0.0
|
||||
#
|
||||
# res.append({'code': a['code'], 'name': a['name'],
|
||||
# 'gen_debit': gd,
|
||||
# 'gen_credit': gc,
|
||||
# 'ana_debit': ad,
|
||||
# 'ana_credit': ac,
|
||||
# 'delta_debit': gd - ad,
|
||||
# 'delta_credit': gc - ac,})
|
||||
# self.sum_gen_deb += gd
|
||||
# self.sum_gen_cred += gc
|
||||
# self.sum_ana_deb += ad
|
||||
# self.sum_ana_cred += ac
|
||||
# return res
|
||||
|
||||
def _gen_deb(self, date1, date2):
|
||||
return self.sum_gen_deb
|
||||
|
||||
@@ -99,7 +136,7 @@ class account_analytic_analytic_check(report_sxw.rml_parse):
|
||||
|
||||
def _delta_deb(self, date1, date2):
|
||||
return (self._gen_deb(date1,date2)-self._ana_deb(date1,date2))
|
||||
|
||||
|
||||
def _delta_cred(self, date1, date2):
|
||||
return (self._gen_cred(date1,date2)-self._ana_cred(date1,date2))
|
||||
|
||||
@@ -107,4 +144,3 @@ report_sxw.report_sxw('report.account.analytic.account.analytic.check', 'account
|
||||
|
||||
|
||||
# vim:expandtab:smartindent:tabstop=4:softtabstop=4:shiftwidth=4:
|
||||
|
||||
|
||||
@@ -3,6 +3,36 @@
|
||||
<template pageSize="(595.0,842.0)" title="Test" author="Martin Simon" allowSplitting="20">
|
||||
<pageTemplate id="first">
|
||||
<frame id="first" x1="57.0" y1="57.0" width="481" height="728"/>
|
||||
<header>
|
||||
<pageGraphics>
|
||||
<!--logo-->
|
||||
<!--<fill color="darkblue"/>-->
|
||||
<!--<stroke color="darkblue"/>-->
|
||||
|
||||
<!--TITLE COMPANY-->
|
||||
<!-- <drawString x="4.6cm" y="28.7cm">[[ company.partner_id.name ]]</drawString> -->
|
||||
|
||||
<setFont name="Helvetica-Bold" size="9"/>
|
||||
|
||||
|
||||
<!--COL 1-->
|
||||
<drawString x="1.0cm" y="28.1cm">[[ company.name ]]</drawString>
|
||||
<drawRightString x="20cm" y="28.1cm">Analytic Check</drawRightString>
|
||||
|
||||
<!-- Header -->
|
||||
|
||||
|
||||
<setFont name="Helvetica" size="9"/>
|
||||
<drawString x="1.0cm" y="1cm"> [[ time.strftime("%Y-%m-%d %H:%M", time.localtime()) ]]</drawString>
|
||||
<drawString x="19.0cm" y="1cm">Page <pageNumber/></drawString>
|
||||
<!--<drawRightString x="19.8cm" y="28cm">[[ company.rml_header1 ]]</drawRightString>-->
|
||||
|
||||
|
||||
<lineMode width="0.7"/>
|
||||
<lines>1cm 27.7cm 20cm 27.7cm</lines>
|
||||
<setFont name="Helvetica" size="8"/>
|
||||
</pageGraphics>
|
||||
</header>
|
||||
</pageTemplate>
|
||||
</template>
|
||||
<stylesheet>
|
||||
@@ -10,45 +40,36 @@
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Tableau1">
|
||||
<blockTableStyle id="Table4">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<blockBackground colorName="#e6e6e6" start="0,0" stop="0,0"/>
|
||||
<blockBackground colorName="#e6e6e6" start="1,0" stop="1,0"/>
|
||||
<blockBackground colorName="#e6e6e6" start="2,0" stop="2,0"/>
|
||||
<blockBackground colorName="#e6e6e6" start="0,1" stop="0,1"/>
|
||||
<blockBackground colorName="#e6e6e6" start="1,1" stop="1,1"/>
|
||||
<blockBackground colorName="#e6e6e6" start="2,1" stop="2,1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,1" stop="-1,-1"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,2" stop="1,2"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,0" stop="-1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,1" stop="-1,1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Tableau2">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="GRID" colorName="black"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Tableau3">
|
||||
<blockTableStyle id="Table5">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Tableau4">
|
||||
<blockTableStyle id="Table3">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<blockValign value="TOP"/>
|
||||
<lineStyle kind="GRID" colorName="black"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#000000" start="0,-1" stop="-1,-1"/>
|
||||
</blockTableStyle>
|
||||
<blockTableStyle id="Table1">
|
||||
<blockAlignment value="LEFT"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#777777" start="0,0" stop="1,0"/>
|
||||
<lineStyle kind="LINEBELOW" colorName="#e6e6e6" start="0,1" stop="-1,-1"/>
|
||||
<blockValign value="TOP"/>
|
||||
</blockTableStyle>
|
||||
<initialize>
|
||||
<paraStyle name="all" alignment="justify"/>
|
||||
</initialize>
|
||||
<paraStyle name="P1" fontName="Times-Roman" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P2" fontName="Times-Bold" fontSize="20.0" leading="25" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P3" fontName="Times-Roman" fontSize="10.0" leading="13" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P4" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P5" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P6" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="CENTER"/>
|
||||
<paraStyle name="P7" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="LEFT"/>
|
||||
<paraStyle name="P8" fontName="Times-Roman" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P9" fontName="Times-Roman" fontSize="10.0" leading="13" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P10" fontName="Times-Roman" fontSize="10.0" leading="13" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P11" fontName="Times-Roman" fontSize="10.0" leading="13" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P12" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P1" fontName="Times-Roman" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P2" fontName="Times-Roman" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="P3" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Standard" fontName="Times-Roman"/>
|
||||
<paraStyle name="Text body" fontName="Times-Roman" spaceBefore="0.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Heading" fontName="Helvetica" fontSize="14.0" leading="17" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
@@ -58,149 +79,112 @@
|
||||
<paraStyle name="Caption" fontName="Times-Roman" fontSize="12.0" leading="15" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Index" fontName="Times-Roman"/>
|
||||
<paraStyle name="Preformatted Text" fontName="Courier" fontSize="10.0" leading="13" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_header" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_default_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Bold_8" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Bold_9" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_tblheader_General" fontName="Helvetica" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_General_R" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_General_Centre" fontName="Helvetica-Bold" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_default_Centre_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_tblheader_Details" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="LEFT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="Footer" fontName="Times-Roman"/>
|
||||
<paraStyle name="Horizontal Line" fontName="Times-Roman" fontSize="6.0" leading="8" spaceBefore="0.0" spaceAfter="14.0"/>
|
||||
<paraStyle name="Heading 9" fontName="Helvetica-Bold" fontSize="75%" leading="NaN" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_General_Right" fontName="Helvetica-Bold" fontSize="8.0" leading="10.0" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_tblheader_Details_Centre" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_tblheader_Details_Right" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="6.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_default_Right_8" fontName="Helvetica" fontSize="8.0" leading="10" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_header_Right" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="LEFT" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_header_Centre" fontName="Helvetica-Bold" fontSize="15.0" leading="19" alignment="CENTER" spaceBefore="12.0" spaceAfter="6.0"/>
|
||||
<paraStyle name="terp_default_address" fontName="Helvetica" fontSize="10.0" leading="13" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Centre_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="CENTER" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Right_9" fontName="Helvetica" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_1" fontName="Helvetica" fontSize="2.0" leading="3" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_Right_9_Bold" fontName="Helvetica-Bold" fontSize="9.0" leading="11" alignment="RIGHT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
<paraStyle name="terp_default_8_Italic" fontName="Helvetica-Oblique" fontSize="8.0" leading="10" alignment="LEFT" spaceBefore="0.0" spaceAfter="0.0"/>
|
||||
</stylesheet>
|
||||
<images/>
|
||||
<story>
|
||||
<blockTable colWidths="161.0,161.0,161.0" repeatRows="1" style="Tableau1">
|
||||
<blockTable colWidths="46.0,135.0,60.0,59.0,60.0,59.0,59.0,60.0" style="Table4" repeatRows="1">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P1">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<para style="terp_tblheader_General">Code</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P2">Analytic Check</para>
|
||||
<para style="terp_tblheader_General">Account Name</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P10">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<para style="terp_tblheader_General_R">General Debit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_R">General Credit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_R">Analytic Debit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_R">Analytic Credit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_R">Delta Debit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_R">Delta Credit</para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P1">[[ company.name ]]</para>
|
||||
<para style="terp_tblheader_Details">[[ (lines_p(data['form']['date1'],data['form']['date2']),'acc') == False or removeParentNode('para') ]]</para>
|
||||
<para style="terp_tblheader_Details">Total</para>
|
||||
</td>
|
||||
<td></td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ '%.2f' % general_debit(data['form']['date1'],data['form']['date2']) ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P9">Periods from [[ data['form']['date1'] ]]</para>
|
||||
<para style="P9">to [[ data['form']['date2'] ]]</para>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ '%.2f' % general_credit(data['form']['date1'],data['form']['date2']) ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P10">Currency: [[ company.currency_id.name ]]</para>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ '%.2f' % analytic_debit(data['form']['date1'],data['form']['date2']) ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ '%.2f' % analytic_credit(data['form']['date1'],data['form']['date2']) ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ '%.2f' % delta_debit(data['form']['date1'],data['form']['date2']) ]]</u></para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_tblheader_General_Right"><u>[[ '%.2f' % delta_credit(data['form']['date1'],data['form']['date2']) ]]</u></para>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td>
|
||||
<para style="terp_default_8"><font face="Times-Roman">[[ repeatIn(lines_p(data['form']['date1'],data['form']['date2']),'acc') ]] </font>[[ acc['code'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_8">[[ acc['name'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ '%.2f' % acc['gen_debit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ '%.2f' % acc['gen_credit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ '%.2f' % acc['ana_debit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ '%.2f' % acc['ana_credit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ '%.2f' % acc['delta_debit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="terp_default_Right_8">[[ '%.2f' % acc['delta_credit'] ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<para style="Standard">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<para style="P6">Printing date: [[ time.strftime('%Y-%m-%d') ]] at [[ time.strftime('%H:%M:%S') ]]</para>
|
||||
<para style="P6">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<blockTable colWidths="28.0,96.0,60.0,59.0,60.0,59.0,59.0,59.0" style="Tableau2">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P3">Code</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P3">Account Name</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P3">
|
||||
<font face="Times-Roman" size="10.0">General</font>
|
||||
</para>
|
||||
<para style="P3">Debit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P3">
|
||||
<font face="Times-Roman" size="10.0">General</font>
|
||||
</para>
|
||||
<para style="P3">Credit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P3">
|
||||
<font face="Times-Roman" size="10.0">Analytic</font>
|
||||
</para>
|
||||
<para style="P3">Debit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P3">
|
||||
<font face="Times-Roman" size="10.0">Analytic</font>
|
||||
</para>
|
||||
<para style="P3">Credit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P3">Delta</para>
|
||||
<para style="P3">Debit</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P3">Delta</para>
|
||||
<para style="P3">Credit</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<para style="P7">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<blockTable colWidths="28.0,96.0,59.0,59.0,59.0,59.0,59.0,59.0" style="Tableau3">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P4">[[ repeatIn(lines_p(data['form']['date1'],data['form']['date2']),'acc') ]]</para>
|
||||
<para style="P4">[[ acc['code'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P4">[[ acc['name'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P4">[[ '%.2f' % acc['gen_debit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P4">[[ '%.2f' % acc['gen_credit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P4">[[ '%.2f' % acc['ana_debit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P4">[[ '%.2f' % acc['ana_credit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P4">[[ '%.2f' % acc['delta_debit'] ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P4">[[ '%.2f' % acc['delta_credit'] ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<para style="P7">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
<blockTable colWidths="125.0,59.0,59.0,59.0,59.0,59.0,59.0" style="Tableau4">
|
||||
<tr>
|
||||
<td>
|
||||
<para style="P5">Total</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P5">[[ '%.2f' % general_debit(data['form']['date1'],data['form']['date2']) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P5">[[ '%.2f' % general_credit(data['form']['date1'],data['form']['date2']) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P5">[[ '%.2f' % analytic_debit(data['form']['date1'],data['form']['date2']) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P5">[[ '%.2f' % analytic_credit(data['form']['date1'],data['form']['date2']) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P5">[[ '%.2f' % delta_debit(data['form']['date1'],data['form']['date2']) ]]</para>
|
||||
</td>
|
||||
<td>
|
||||
<para style="P5">[[ '%.2f' % delta_credit(data['form']['date1'],data['form']['date2']) ]]</para>
|
||||
</td>
|
||||
</tr>
|
||||
</blockTable>
|
||||
<para style="P7">
|
||||
<font color="white"> </font>
|
||||
</para>
|
||||
</story>
|
||||
</document>
|
||||
|
||||
</document>
|
||||
@@ -1,18 +1,19 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
|
||||
<menuitem icon="terp-project" id="menu_main" name="Project Management"/>
|
||||
|
||||
|
||||
<record id="action_account_analytic_managed" model="ir.actions.act_window">
|
||||
<field name="name">My managed accounts</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="domain">[('user_id','=',uid)]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem id="next_id_71" name="Analytic Accounts" parent="account_analytic_analysis.menu_main"/><menuitem action="action_account_analytic_managed" id="menu_analytic_account_managed" parent="next_id_71"/>
|
||||
|
||||
|
||||
<record id="action_hr_tree_invoiced_my" model="ir.actions.act_window">
|
||||
<field name="name">Uninvoiced entries of my accounts</field>
|
||||
<field name="res_model">account.analytic.line</field>
|
||||
@@ -20,85 +21,93 @@
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="domain">[('invoice_id','=',False),('to_invoice','!=',False),('account_id.user_id','=',uid)]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem action="action_hr_tree_invoiced_my" id="menu_action_hr_tree_invoiced_my" parent="account_analytic_analysis.next_id_71"/>
|
||||
|
||||
|
||||
<record id="action_account_analytic_managed_open" model="ir.actions.act_window">
|
||||
<field name="name">My Open Managed Accounts</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="domain">[('user_id','=',uid),('state','=','open')]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem action="action_account_analytic_managed_open" id="menu_analytic_account_to_valid_open" parent="account_analytic_analysis.menu_analytic_account_managed"/>
|
||||
|
||||
|
||||
<record id="action_account_analytic_managed_pending" model="ir.actions.act_window">
|
||||
<field name="name">My Pending Managed Accounts</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="domain">[('user_id','=',uid),('state','=','pending')]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem action="action_account_analytic_managed_pending" id="menu_analytic_account_to_valid_pending" parent="account_analytic_analysis.menu_analytic_account_managed"/>
|
||||
|
||||
<record id="action_account_analytic_managed_overpassed" model="ir.actions.act_window">
|
||||
|
||||
<record id="action_account_analytic_managed_overpassed" model="ir.actions.act_window">
|
||||
<field name="name">Overpassed accounts</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="domain">[('date','<=',time.strftime('%Y-%m-%d')),('state','=','open')]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem action="action_account_analytic_managed_overpassed" id="menu_action_account_analytic_managed_overpassed" parent="account_analytic_analysis.next_id_71"/>
|
||||
|
||||
|
||||
<record id="action_account_analytic_all" model="ir.actions.act_window">
|
||||
<field name="name">All Analytic Accounts</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="view_id" ref="account.view_account_analytic_account_list"/>
|
||||
<field name="domain">[]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem action="action_account_analytic_all" id="menu_action_account_analytic_all" parent="account_analytic_analysis.next_id_71"/>
|
||||
|
||||
|
||||
<record id="action_account_analytic_all_draft" model="ir.actions.act_window">
|
||||
<field name="name">Draft Analytic Accounts</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="view_id" ref="account.view_account_analytic_account_list"/>
|
||||
<field name="domain">[('state','=','draft')]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem id="next_id_72" name="All Analytic Accounts" parent="account_analytic_analysis.next_id_71"/><menuitem action="action_account_analytic_all_draft" id="menu_action_account_analytic_all_draft" parent="next_id_72"/>
|
||||
|
||||
|
||||
<record id="action_account_analytic_all_open" model="ir.actions.act_window">
|
||||
<field name="name">Open Analytic Accounts</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="view_id" ref="account.view_account_analytic_account_list"/>
|
||||
<field name="domain">[('state','=','open')]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem action="action_account_analytic_all_open" id="menu_action_account_analytic_all_open" parent="account_analytic_analysis.next_id_72"/>
|
||||
|
||||
|
||||
<record id="action_account_analytic_all_pending" model="ir.actions.act_window">
|
||||
<field name="name">Pending Analytic Accounts</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="view_id" ref="account.view_account_analytic_account_list"/>
|
||||
<field name="domain">[('state','=','pending')]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem action="action_account_analytic_all_pending" id="menu_action_account_analytic_all_pending" parent="account_analytic_analysis.next_id_72"/>
|
||||
|
||||
|
||||
<record id="action_account_analytic_all_simplified" model="ir.actions.act_window">
|
||||
<field name="name">Simplified View Analytic Accounts</field>
|
||||
<field name="res_model">account.analytic.account</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,graph</field>
|
||||
<field name="view_id" ref="view_account_analytic_simplified"/>
|
||||
<field name="domain">[]</field>
|
||||
</record>
|
||||
|
||||
|
||||
<menuitem action="action_account_analytic_all_simplified" id="menu_action_account_analytic_all_simplified" parent="account_analytic_analysis.next_id_72"/>
|
||||
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0" ?>
|
||||
<terp>
|
||||
<openerp>
|
||||
<data>
|
||||
<!-- Create the functions -->
|
||||
<record id="res_partner_function_privateaddress0" model="res.partner.function">
|
||||
@@ -323,4 +323,4 @@
|
||||
<field name="sequence_contact">1</field>
|
||||
</record>
|
||||
</data>
|
||||
</terp>
|
||||
</openerp>
|
||||
|
||||
@@ -172,7 +172,7 @@ class base_module_record(osv.osv):
|
||||
# Create the minidom document
|
||||
self.ids = {}
|
||||
doc = minidom.Document()
|
||||
terp = doc.createElement("terp")
|
||||
terp = doc.createElement("openerp")
|
||||
doc.appendChild(terp)
|
||||
for rec in self.recording_data:
|
||||
if rec[0]=='workflow':
|
||||
@@ -199,8 +199,7 @@ class base_module_record(osv.osv):
|
||||
data.appendChild(res)
|
||||
elif rec[0]=='assert':
|
||||
pass
|
||||
res = doc.toprettyxml(indent="\t")
|
||||
return doc.toprettyxml(indent="\t").encode('utf8')
|
||||
return doc.toprettyxml(indent=" ").encode('utf8')
|
||||
base_module_record()
|
||||
|
||||
def fnct_call(fnct):
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
people to intelligently and efficiently manage tasks, issues,
|
||||
and requests. It manages key tasks such as communication,
|
||||
identification, prioritization, assignment, resolution and notification.""",
|
||||
"depends" : ["crm","report_crm"],
|
||||
"depends" : ["crm","report_crm", "process"],
|
||||
"init_xml" : [
|
||||
"crm_config_view.xml",
|
||||
"crm_bugs_view.xml",
|
||||
@@ -34,8 +34,12 @@
|
||||
"crm_jobs_data.xml",
|
||||
"crm_meeting_data.xml",
|
||||
"crm_lead_data.xml",
|
||||
"crm_opportunity_data.xml",
|
||||
|
||||
"crm_opportunity_data.xml",
|
||||
"crm_bugs_menu.xml", "crm_fund_menu.xml",
|
||||
"crm_jobs_menu.xml", "crm_opportunity_menu.xml",
|
||||
"crm_helpdesk_menu.xml", "crm_lead_menu.xml",
|
||||
"crm_meeting_menu.xml",
|
||||
"process/crm_configuration_process.xml"
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0"?>
|
||||
<terp>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
</data>
|
||||
</terp>
|
||||
</openerp>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<terp>
|
||||
<openerp>
|
||||
<data>
|
||||
<record model="res.groups" id="group_compta_user">
|
||||
<field name="name">grcompta</field>
|
||||
@@ -8,5 +8,5 @@
|
||||
</record>
|
||||
<menuitem name="Administration" groups="admin,grcomptaadmin" icon="terp-stock" id="menu_admin_compta"/>
|
||||
</data>
|
||||
</terp>
|
||||
</openerp>
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0"?>
|
||||
<terp>
|
||||
<openerp>
|
||||
<data noupdate="1">
|
||||
|
||||
</data>
|
||||
</terp>
|
||||
</openerp>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
<?xml version="1.0"?>
|
||||
<terp>
|
||||
<openerp>
|
||||
<data noupdate="1">
|
||||
|
||||
<record model="document.directory" id="dir_root">
|
||||
@@ -90,4 +90,4 @@
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</terp>
|
||||
</openerp>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<terp>
|
||||
<openerp>
|
||||
<data>
|
||||
<menuitem name="Document Management" icon="terp-stock" id="menu_document"/>
|
||||
|
||||
@@ -237,5 +237,5 @@
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</terp>
|
||||
</openerp>
|
||||
|
||||
|
||||
@@ -137,7 +137,7 @@ class event(osv.osv):
|
||||
#change the description of the registration linked to this event
|
||||
if 'mail_auto_confirm' in vals:
|
||||
if vals['mail_auto_confirm']:
|
||||
if 'mail_confirm' not in vals:
|
||||
if 'mail_confirm' not in vals:
|
||||
for eve in self.browse(cr, uid, ids):
|
||||
vals['mail_confirm'] = eve.mail_confirm
|
||||
else:
|
||||
@@ -288,8 +288,9 @@ class event_registration(osv.osv):
|
||||
data['badge_title'] = contact_id.title
|
||||
if partner:
|
||||
partner_addresses = self.pool.get('res.partner.address').search(cr, uid, [('partner_id','=',partner)])
|
||||
job_id = self.pool.get('res.partner.job').search(cr, uid, [('contact_id','=',contact),('address_id','in',partner_addresses)])[0]
|
||||
data['email_from'] = self.pool.get('res.partner.job').browse(cr, uid, job_id).email
|
||||
job_ids = self.pool.get('res.partner.job').search(cr, uid, [('contact_id','=',contact),('address_id','in',partner_addresses)])
|
||||
if job_ids:
|
||||
data['email_from'] = self.pool.get('res.partner.job').browse(cr, uid, job_ids[0]).email
|
||||
d = self.onchange_badge_name(cr, uid, ids,data['badge_name'])
|
||||
data.update(d['value'])
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@
|
||||
|
||||
Different reports are also provided, mainly for attendance statistics.
|
||||
""",
|
||||
"depends" : ["base"],
|
||||
"depends" : ["base", "process"],
|
||||
"init_xml" : [],
|
||||
"demo_xml" : [
|
||||
"hr_demo.xml",
|
||||
|
||||
@@ -46,7 +46,7 @@
|
||||
"demo_xml" : [],
|
||||
"update_xml" : [
|
||||
"security/hr_contract_security.xml",
|
||||
"security/ir.model.access.csv",
|
||||
# "security/ir.model.access.csv",
|
||||
"hr_contract_view.xml",
|
||||
],
|
||||
"active": False,
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
Administration \ Users \ Users
|
||||
for example, you maybe will do it for the user 'admin'.
|
||||
""",
|
||||
"depends" : ["hr","crm_configuration"],
|
||||
"depends" : ["hr","crm_configuration", "process"],
|
||||
"init_xml" : [],
|
||||
"update_xml" : [
|
||||
"security/ir.model.access.csv",
|
||||
@@ -32,6 +32,7 @@
|
||||
"hr_view.xml",
|
||||
"hr_holidays_report.xml",
|
||||
"hr_holidays_wizard.xml",
|
||||
# "process/hr_holidays_process.xml"
|
||||
],
|
||||
# "demo_xml" : ["hr_bel_holidays_2008.xml",],
|
||||
"demo_xml" : [],
|
||||
|
||||
@@ -43,7 +43,7 @@ Lots of reporting on time and employee tracking are provided.
|
||||
It is completly integrated with the cost accounting module. It allows you
|
||||
to set up a management by affair.
|
||||
""",
|
||||
"depends" : ["account", "hr", "base", "hr_attendance"],
|
||||
"depends" : ["account", "hr", "base", "hr_attendance", "process"],
|
||||
"init_xml" : ["hr_timesheet_data.xml"],
|
||||
"demo_xml" : ["hr_timesheet_demo.xml",],
|
||||
"update_xml" : [
|
||||
@@ -51,6 +51,7 @@ to set up a management by affair.
|
||||
"hr_timesheet_view.xml",
|
||||
"hr_timesheet_report.xml",
|
||||
"hr_timesheet_wizard.xml",
|
||||
"process/hr_timesheet_process.xml"
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
|
||||
@@ -0,0 +1,16 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process
|
||||
-->
|
||||
|
||||
<record id="process_process_timesheetworkflow0" model="process.process">
|
||||
<field eval=""""Timesheet Lines flow for services companies."""" name="note"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field eval=""""Timesheet Workflow"""" name="name"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -33,8 +33,8 @@
|
||||
"category" : "Generic Modules/Human Resources",
|
||||
"description": """Auto-complete timesheet based on tasks made on the project management module.""",
|
||||
"website" : "http://tinyerp.com/module_hr.html",
|
||||
"depends" : ["project", "hr_timesheet"],
|
||||
"update_xml" : ["hr_timesheet_project_view.xml"],
|
||||
"depends" : ["project", "hr_timesheet_sheet"],
|
||||
"update_xml" : ["hr_timesheet_project_view.xml", "process/hr_timesheet_project_process.xml"],
|
||||
"active": False,
|
||||
"installable": True
|
||||
}
|
||||
|
||||
@@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_timesheettask0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet.menu_act_hr_timesheet_line_evry1_today_form"/>
|
||||
<field name="model_id" ref="hr.model_hr_timesheet"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Timesheet_task"""" name="name"/>
|
||||
<field eval=""""Complete Your Timesheet."""" name="note"/>
|
||||
<field name="process_id" ref="project.process_process_tasksworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_workontask0" model="process.node">
|
||||
<field name="menu_id" ref="project.menu_action_view_task"/>
|
||||
<field name="model_id" ref="project.model_project_task"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Work on Task"""" name="name"/>
|
||||
<field eval=""""Defines the work summary of task"""" name="note"/>
|
||||
<field name="process_id" ref="hr_timesheet_sheet.process_process_hrtimesheetworkflow0"/>
|
||||
<field eval=""""object.state in ('open', pending', 'done', 'cancelled')"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_taskwork0" model="process.node">
|
||||
<field name="menu_id" ref="project.menu_action_view_task6"/>
|
||||
<field name="model_id" ref="project.model_project_task_work"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Task Work"""" name="name"/>
|
||||
<field eval=""""Work on task"""" name="note"/>
|
||||
<field name="process_id" ref="hr_timesheet.process_process_timesheetworkflow0"/>
|
||||
<field eval=""""object.state=='open'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_filltimesheet0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Fill Timesheet"""" name="name"/>
|
||||
<field eval=""""Task summary is comes into the timesheet line"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_timesheettask0"/>
|
||||
<field model="process.node" name="source_node_id" ref="project.process_node_opentask0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_taskencoding0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Task encoding"""" name="name"/>
|
||||
<field eval=""""Encode how much time u spent on your task"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="hr_timesheet_sheet.process_node_timesheetline0"/>
|
||||
<field model="process.node" name="source_node_id" ref="project.process_node_taskwork0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_tasktimesheet0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Task timesheet"""" name="name"/>
|
||||
<field eval=""""Moves task entry into the timesheet line"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_timesheettask0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_workontask0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
|
||||
@@ -51,13 +51,14 @@ The validation can be configured in te company:
|
||||
* Period size (day, week, month, year)
|
||||
* Maximal difference between timesheet and attendances
|
||||
""",
|
||||
"depends" : ["hr_timesheet", "hr_timesheet_invoice"],
|
||||
"depends" : ["hr_timesheet", "hr_timesheet_invoice", "process"],
|
||||
"init_xml" : [],
|
||||
"demo_xml" : ["hr_timesheet_sheet_demo.xml",],
|
||||
"update_xml" : [
|
||||
"security/ir.model.access.csv",
|
||||
"hr_timesheet_sheet_view.xml",
|
||||
"hr_timesheet_workflow.xml"
|
||||
"hr_timesheet_workflow.xml",
|
||||
"process/hr_timesheet_sheet_process.xml",
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
|
||||
@@ -0,0 +1,226 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process
|
||||
-->
|
||||
|
||||
<record id="process_process_hrtimesheetworkflow0" model="process.process">
|
||||
<field eval=""""Hr Timesheet flow for services companies."""" name="note"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field eval=""""Hr Timesheet Workflow"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_analyticcost0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current"/>
|
||||
<field name="model_id" ref="hr_timesheet_sheet.model_hr_timesheet_sheet_sheet"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Analytic cost"""" name="name"/>
|
||||
<field eval=""""Analytic cost is created"""" name="note"/>
|
||||
<field name="process_id" ref="hr_timesheet.process_process_timesheetworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_review0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current"/>
|
||||
<field name="model_id" ref="hr_timesheet_sheet.model_hr_timesheet_sheet_sheet"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Review"""" name="name"/>
|
||||
<field eval=""""Review end of day check day is complete"""" name="note"/>
|
||||
<field name="process_id" ref="hr_timesheet.process_process_timesheetworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_timesheetconfirming0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current"/>
|
||||
<field name="model_id" ref="hr_timesheet_sheet.model_hr_timesheet_sheet_sheet"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Timesheet Confirming"""" name="name"/>
|
||||
<field eval=""""Timesheet sheet confirm at the end of the period"""" name="note"/>
|
||||
<field name="process_id" ref="hr_timesheet.process_process_timesheetworkflow0"/>
|
||||
<field eval=""""object.state=='confirm'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_timesheetline0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current"/>
|
||||
<field name="model_id" ref="hr_timesheet_sheet.model_hr_timesheet_sheet_sheet"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Timesheet Line"""" name="name"/>
|
||||
<field eval=""""Encode your timesheet line"""" name="note"/>
|
||||
<field name="process_id" ref="hr_timesheet.process_process_timesheetworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_phonecall0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current"/>
|
||||
<field name="model_id" ref="hr_timesheet_sheet.model_hr_timesheet_sheet_sheet"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Phone call"""" name="name"/>
|
||||
<field eval=""""Whatever time u spent for phone call"""" name="note"/>
|
||||
<field name="process_id" ref="hr_timesheet.process_process_timesheetworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
|
||||
<record id="process_node_attendance0" model="process.node">
|
||||
<field name="menu_id" ref="hr_attendance.menu_si_so"/>
|
||||
<field name="model_id" ref="hr.model_hr_employee"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Attendance"""" name="name"/>
|
||||
<field eval=""""Defines employee's timesheet entry"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_hrtimesheetworkflow0"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_timesheet0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current"/>
|
||||
<field name="model_id" ref="hr_timesheet_sheet.model_hr_timesheet_sheet_sheet"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Timesheet"""" name="name"/>
|
||||
<field eval=""""Defines the task work entry into timesheet line"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_hrtimesheetworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_drafttimesheetsheet0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current"/>
|
||||
<field name="model_id" ref="hr_timesheet_sheet.model_hr_timesheet_sheet_sheet"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Draft Timesheet sheet"""" name="name"/>
|
||||
<field eval=""""Encode Your hours and Sign in / out"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_hrtimesheetworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_confirmedtimesheet0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current"/>
|
||||
<field name="model_id" ref="hr_timesheet_sheet.model_hr_timesheet_sheet_sheet"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Confirmed Timesheet"""" name="name"/>
|
||||
<field eval=""""At the end of the period (week/month)"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_hrtimesheetworkflow0"/>
|
||||
<field eval=""""object.state=='confirm'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_validatedtimesheet0" model="process.node">
|
||||
<field name="menu_id" ref="hr_timesheet_sheet.menu_act_hr_timesheet_sheet_form_my_current"/>
|
||||
<field name="model_id" ref="hr_timesheet_sheet.model_hr_timesheet_sheet_sheet"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Validated Timesheet"""" name="name"/>
|
||||
<field eval=""""Control by the project manager"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_hrtimesheetworkflow0"/>
|
||||
<field eval=""""object.state=='done'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_invoiceonwork0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_finance_invoice"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Invoice on Work"""" name="name"/>
|
||||
<field eval=""""Invoice based on timesheet"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_hrtimesheetworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_attendance0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Attendance"""" name="name"/>
|
||||
<field eval=""""Attendance entry moves into the timesheet"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_drafttimesheetsheet0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_attendance0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_timesheet0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Timesheet"""" name="name"/>
|
||||
<field eval=""""timesheet entry is into draft state."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_drafttimesheetsheet0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_timesheet0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_confirmtimesheet0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Confirm Timesheet"""" name="name"/>
|
||||
<field eval=""""timesheet is confirmed at the end of the week / month"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_confirmedtimesheet0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_drafttimesheetsheet0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_validatetimesheet0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Validate Timesheet"""" name="name"/>
|
||||
<field eval=""""Timesheet is validate by project manager."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_validatedtimesheet0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_confirmedtimesheet0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_invoiceontimesheet0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Invoice on timesheet"""" name="name"/>
|
||||
<field eval=""""Creates invoice based on timesheet"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_invoiceonwork0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_confirmedtimesheet0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_phonecallencoding0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Phone call encoding"""" name="name"/>
|
||||
<field eval=""""Encode how much time u spent on phone call"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_timesheetline0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_phonecall0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_createanalyticcose0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Create Analytic cost"""" name="name"/>
|
||||
<field eval=""""Creates your analytic cost accoording to quantity"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_analyticcost0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_timesheetline0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_reviewofwork0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Review of work"""" name="name"/>
|
||||
<field eval=""""Review of your work at the end of the day"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_review0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_timesheetline0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_confirmtimesheetsheet0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Confirm timesheet sheet"""" name="name"/>
|
||||
<field eval=""""Confirm timesheet at the end of the period"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_timesheetconfirming0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_review0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -1,4 +1,5 @@
|
||||
# -*- encoding: utf-8 -*-
|
||||
|
||||
{
|
||||
"name" : "Idea Manager",
|
||||
"version" : "0.1",
|
||||
|
||||
@@ -32,7 +32,7 @@
|
||||
"author" : "Tiny",
|
||||
"website" : "http://tinyerp.com/module_mrp.html",
|
||||
"category" : "Generic Modules/Production",
|
||||
"depends" : ["stock", "hr", "purchase", "product"],
|
||||
"depends" : ["stock", "hr", "purchase", "product", "process"],
|
||||
"description": """
|
||||
This is the base module to manage the manufacturing process in Tiny ERP.
|
||||
|
||||
@@ -70,6 +70,7 @@
|
||||
"mrp_wizard.xml",
|
||||
"mrp_report.xml",
|
||||
"company_view.xml",
|
||||
"process/procurement_process.xml",
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
|
||||
@@ -0,0 +1,302 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process
|
||||
-->
|
||||
|
||||
<record id="process_process_procurementworkflow0" model="process.process">
|
||||
<field eval=""""Procurements flow for services companies."""" name="note"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field eval=""""Procurement Workflow"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_minimumstockrule0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_action_orderpoint_form"/>
|
||||
<field name="model_id" ref="mrp.model_stock_warehouse_orderpoint"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Minimum stock rule"""" name="name"/>
|
||||
<field eval=""""Create minimum stock rules"""" name="note"/>
|
||||
<field name="process_id" ref="product.process_process_productworkflow0"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_billofmaterial0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_bom_form_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_bom"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Bill of Material"""" name="name"/>
|
||||
<field eval=""""Defines Bill of materials"""" name="note"/>
|
||||
<field name="process_id" ref="product.process_process_productworkflow0"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_procurements0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_procurement"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Procurements"""" name="name"/>
|
||||
<field eval=""""Procurement Orders"""" name="note"/>
|
||||
<field name="process_id" ref="purchase.process_process_purchaseworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting') """" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_productionorder0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_production_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_production"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Production order"""" name="name"/>
|
||||
<field eval=""""Procurement for raw materials"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'picking_except', 'confirmed', 'ready', 'in_production', 'cancel', 'done')"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_procureproducts0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_procurement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Procure Products"""" name="name"/>
|
||||
<field eval=""""Central document to procure products"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting') """" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_serviceproduct0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_procurement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Service Product"""" name="name"/>
|
||||
<field eval=""""If Product type is service"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting') """" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_maketoorder0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_procurement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Make to order"""" name="name"/>
|
||||
<field eval=""""If Procurement is make to order"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting') """" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_maketostock0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_procurement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Make to stock"""" name="name"/>
|
||||
<field eval=""""If Procurement is make to stock"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting') """" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_subcontracting0" model="process.node">
|
||||
<field name="menu_id" ref="purchase.menu_purchase_order_draft"/>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Subcontracting"""" name="name"/>
|
||||
<field eval=""""Procure method is purchase"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_stockableproduct0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_procurement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Stockable product"""" name="name"/>
|
||||
<field eval=""""For stockable and consumable"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting') """" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_stockablemaketostock0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_procurement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Stockable make to stock"""" name="name"/>
|
||||
<field eval=""""Wait for available products for reservation"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting') """" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_stockablemaketoorder0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_procurement_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_procurement"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Stockable make to order"""" name="name"/>
|
||||
<field eval=""""If Procurement is make to order"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'confirmed', 'cancel', 'exception', 'running', 'done', 'waiting') """" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_stockablerequest0" model="process.node">
|
||||
<field name="menu_id" ref="purchase.menu_purchase_order_draft"/>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Stockable request"""" name="name"/>
|
||||
<field eval=""""If procure method is purchase"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_stockableproduction0" model="process.node">
|
||||
<field name="menu_id" ref="mrp.menu_mrp_production_action"/>
|
||||
<field name="model_id" ref="mrp.model_mrp_production"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Stockable production"""" name="name"/>
|
||||
<field eval=""""If procure method is produce"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state=='confirmed'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_productionprocurement0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Production Procurement"""" name="name"/>
|
||||
<field eval=""""When any procuere products, it comes into the prpcurement orders"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_procureproducts0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_productionorder0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_procurementservice0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Procurement Service"""" name="name"/>
|
||||
<field eval=""""In procurement order, if product type is service"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_serviceproduct0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_procureproducts0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_servicemaketoorder0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Service make to order"""" name="name"/>
|
||||
<field eval=""""If product type is service and procure method is Make to order"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_maketoorder0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_serviceproduct0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_servicemaketostock0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Service make to stock"""" name="name"/>
|
||||
<field eval=""""If Product type is service and procure method is Make to stock"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_maketostock0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_serviceproduct0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_ordersubcontracting0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Order Subcontracting"""" name="name"/>
|
||||
<field eval=""""If procure method is Make to order and supply method is buy"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_subcontracting0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_maketoorder0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_procurementstockable0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Procurement Stockable"""" name="name"/>
|
||||
<field eval=""""if Product type is Stockable in procurement order"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_stockableproduct0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_procureproducts0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_stockablemaketostock0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Stockable make to stock"""" name="name"/>
|
||||
<field eval=""""If Product type is Stockable and procure method is make to stock"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_stockablemaketostock0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_stockableproduct0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_stockablemaketoorder0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Stockable make to order"""" name="name"/>
|
||||
<field eval=""""If Product type is Stockable and procure method is Make to order"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_stockablemaketoorder0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_stockableproduct0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_stockableorderrequest0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Stockable Order Request"""" name="name"/>
|
||||
<field eval=""""If Procure method is Make to order and supply method is buy"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_stockablerequest0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_stockablemaketoorder0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_stockableorderproduction0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Stockable Order Production"""" name="name"/>
|
||||
<field eval=""""If Procure method is Make to order and supply method is produce"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_stockableproduction0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_stockablemaketoorder0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_procurementtopurchase0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""procurement to purchase"""" name="name"/>
|
||||
<field eval=""""After procurementing order , it comes into the Draft Purchase Order"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="purchase.process_node_draftpurchaseorder0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_procurements0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_producttostockrules0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Product to stock rules"""" name="name"/>
|
||||
<field eval=""""you can see the minimum stock rules from product"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_minimumstockrule0"/>
|
||||
<field model="process.node" name="source_node_id" ref="product.process_node_product0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_bom0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""BOM"""" name="name"/>
|
||||
<field eval=""""You can see its bill of material which are used to make product"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_billofmaterial0"/>
|
||||
<field model="process.node" name="source_node_id" ref="product.process_node_product0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_bomtook0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Bom to Ok"""" name="name"/>
|
||||
<field eval=""""Set status of Bill of material to ok"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="product.process_node_statusok0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_billofmaterial0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -8,13 +8,13 @@
|
||||
"description": """
|
||||
This module allows you to manage your process for the end-users.
|
||||
""",
|
||||
"depends" : ["base", "sale"],
|
||||
"depends" : ["base"],
|
||||
"init_xml" : [],
|
||||
"demo_xml" : ['process_demo.xml'],
|
||||
"demo_xml" : [],
|
||||
"update_xml" : [
|
||||
"security/ir.model.access.csv",
|
||||
'process_view.xml',
|
||||
],
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
}
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
"version" : "1.0",
|
||||
"author" : "Tiny",
|
||||
"category" : "Generic Modules/Inventory Control",
|
||||
"depends" : ["base"],
|
||||
"depends" : ["base", "process"],
|
||||
"init_xml" : [],
|
||||
"demo_xml" : ["product_demo.xml"],
|
||||
"description": """
|
||||
@@ -57,7 +57,9 @@
|
||||
"security/ir.model.access.csv",
|
||||
"product_data.xml","product_report.xml",
|
||||
"product_view.xml", "pricelist_view.xml",
|
||||
"partner_view.xml", "product_wizard.xml"],
|
||||
"partner_view.xml", "product_wizard.xml",
|
||||
"process/product_process.xml"
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
}
|
||||
|
||||
@@ -0,0 +1,94 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process
|
||||
-->
|
||||
|
||||
<record id="process_process_productworkflow0" model="process.process">
|
||||
<field eval=""""Products flow for services companies."""" name="note"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field eval=""""Product Workflow"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_product0" model="process.node">
|
||||
<field name="menu_id" ref="product.menu_products"/>
|
||||
<field name="model_id" ref="product.model_product_product"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Product"""" name="name"/>
|
||||
<field eval=""""Create new Product"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_productworkflow0"/>
|
||||
<field eval=""""object.state in ('', 'sellable', 'draft', 'obsolete', 'end') """" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_supplier0" model="process.node">
|
||||
<field name="menu_id" ref="product.menu_products"/>
|
||||
<field name="model_id" ref="product.model_product_product"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Supplier"""" name="name"/>
|
||||
<field eval=""""Defines the list of supplier"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_productworkflow0"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_statusok0" model="process.node">
|
||||
<field name="menu_id" ref="product.menu_products"/>
|
||||
<field name="model_id" ref="product.model_product_product"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Status ok"""" name="name"/>
|
||||
<field eval=""""Set Status OK"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_productworkflow0"/>
|
||||
<field eval=""""object.state=='sellable'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_endlifecycle0" model="process.node">
|
||||
<field name="menu_id" ref="product.menu_products"/>
|
||||
<field name="model_id" ref="product.model_product_product"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""End lifecycle"""" name="name"/>
|
||||
<field eval=""""End Of lifecycle"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_productworkflow0"/>
|
||||
<field eval=""""object.state=='end'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_supplierofproduct0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Supplier of Product"""" name="name"/>
|
||||
<field eval=""""You can see the list of supplier for that product."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_supplier0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_product0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_suppliertook0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Supplier to ok"""" name="name"/>
|
||||
<field eval=""""Set the status of list of supplier to ok"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_statusok0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_supplier0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_oktoend0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Ok to End"""" name="name"/>
|
||||
<field eval=""""End of lifecycle after Ok"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_endlifecycle0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_statusok0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -32,7 +32,7 @@
|
||||
"author" : "Tiny",
|
||||
"website" : "http://tinyerp.com/module_project.html",
|
||||
"category" : "Generic Modules/Projects & Services",
|
||||
"depends" : ["product", "account", "hr"],
|
||||
"depends" : ["product", "account", "hr", "process"],
|
||||
"description": "Project management module that track multi-level projects, tasks, works done on tasks, eso. It is able to render planning, order tasks, eso.",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : ["project_demo.xml"],
|
||||
@@ -43,6 +43,7 @@
|
||||
"project_wizard.xml",
|
||||
"project_view.xml",
|
||||
"project_report.xml",
|
||||
"process/task_process.xml"
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
|
||||
@@ -0,0 +1,116 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process
|
||||
-->
|
||||
|
||||
<record id="process_process_tasksworkflow0" model="process.process">
|
||||
<field eval=""""Tasks flow for services companies."""" name="note"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field eval=""""Tasks workflow"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_taskbydelegate0" model="process.node">
|
||||
<field name="menu_id" ref="project.menu_action_view_task"/>
|
||||
<field name="model_id" ref="project.model_project_task"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Task by delegate"""" name="name"/>
|
||||
<field eval=""""Delegate your task to the other user"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_tasksworkflow0"/>
|
||||
<field eval=""""object.state in ('open', 'pending')"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_drafttask0" model="process.node">
|
||||
<field name="menu_id" ref="project.menu_action_view_task"/>
|
||||
<field name="model_id" ref="project.model_project_task"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Draft task"""" name="name"/>
|
||||
<field eval=""""Define the Requirements and Set Planned Hours."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_tasksworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_opentask0" model="process.node">
|
||||
<field name="menu_id" ref="project.menu_action_view_task6"/>
|
||||
<field name="model_id" ref="project.model_project_task"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Open task"""" name="name"/>
|
||||
<field eval=""""Encode your working hours."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_tasksworkflow0"/>
|
||||
<field eval=""""object.state=='open'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_donetask0" model="process.node">
|
||||
<field name="menu_id" ref="project.menu_action_view_task"/>
|
||||
<field name="model_id" ref="project.model_project_task"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Done task"""" name="name"/>
|
||||
<field eval=""""Task is Completed"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_tasksworkflow0"/>
|
||||
<field eval=""""object.state=='done'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_triggerinvoice0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_finance_invoice"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Trigger Invoice"""" name="name"/>
|
||||
<field name="subflow_id" search="[('name','=','sale.order.basic')]"/>
|
||||
<field eval=""""Trigger invoices from sale order lines (sale subflow)"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_tasksworkflow0"/>
|
||||
<field eval=""""object.state=='paid'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_delegate0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Delegate"""" name="name"/>
|
||||
<field eval=""""Delegates tasks to the other user"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_drafttask0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_taskbydelegate0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_draftopentask0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Draft Open task"""" name="name"/>
|
||||
<field eval=""""From draft state, it will come into the open state."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_opentask0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_drafttask0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_opendonetask0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Open Done Task"""" name="name"/>
|
||||
<field eval=""""When task is completed, it will come into the done state."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_donetask0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_opentask0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_taskinvoice0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Task invoice"""" name="name"/>
|
||||
<field eval=""""After task is completed, Create its invoice."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_triggerinvoice0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_donetask0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -5,7 +5,7 @@
|
||||
"author" : "Tiny",
|
||||
"website" : "http://tinyerp.com/module_project.html",
|
||||
"category" : "Generic Modules/Projects & Services",
|
||||
"depends" : ["project", 'mrp'],
|
||||
"depends" : ["project", 'mrp', "sale"],
|
||||
"description": """
|
||||
This module is used to automatically create tasks base on different
|
||||
procurements: sales order, manufacturing order, ...
|
||||
@@ -15,7 +15,9 @@ order on services products.
|
||||
""",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : [],
|
||||
"update_xml": ["project_workflow.xml"],
|
||||
"update_xml": ["project_workflow.xml",
|
||||
"process/project_mrp_process.xml"
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
}
|
||||
|
||||
@@ -0,0 +1,84 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_tasks0" model="process.node">
|
||||
<field name="menu_id" ref="project.menu_action_view_task"/>
|
||||
<field name="model_id" ref="project.model_project_task"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Tasks"""" name="name"/>
|
||||
<field eval=""""In case you sell services on sale order (task subflow)"""" name="note"/>
|
||||
<field name="process_id" ref="sale.process_process_salesworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_saleordertask0" model="process.node">
|
||||
<field name="menu_id" ref="sale.menu_sale_order"/>
|
||||
<field name="model_id" ref="sale.model_sale_order"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Sale_Order_Task"""" name="name"/>
|
||||
<field eval=""""In case you sell services on sale order (task subflow)"""" name="note"/>
|
||||
<field name="process_id" ref="project.process_process_tasksworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_procuretask0" model="process.node">
|
||||
<field name="menu_id" ref="project.menu_action_view_task"/>
|
||||
<field name="model_id" ref="project.model_project_task"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Procure task"""" name="name"/>
|
||||
<field eval=""""If Procure method is produce"""" name="note"/>
|
||||
<field name="process_id" ref="mrp.process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Condition
|
||||
-->
|
||||
|
||||
<record id="process_condition_conditiontask0" model="process.condition">
|
||||
<field name="model_id" ref="product.model_product_template"/>
|
||||
<field name="node_id" ref="process_node_tasks0"/>
|
||||
<field eval=""""object.type=='service'"""" name="model_states"/>
|
||||
<field eval=""""condition_task"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_task0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Task"""" name="name"/>
|
||||
<field eval=""""When you select any product's type as a 'service' after confiming sale order, it will create a task of product."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_tasks0"/>
|
||||
<field model="process.node" name="source_node_id" ref="sale.process_node_saleorder0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_createtask0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Create Task"""" name="name"/>
|
||||
<field eval=""""Product type is service, then its creates the task."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="project.process_node_drafttask0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_saleordertask0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_ordertask0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Order Task"""" name="name"/>
|
||||
<field eval=""""If procure method is Make to order and supply method is produce"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_procuretask0"/>
|
||||
<field model="process.node" name="source_node_id" ref="mrp.process_node_maketoorder0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -31,7 +31,7 @@
|
||||
"version" : "1.0",
|
||||
"author" : "Tiny",
|
||||
"website" : "http://tinyerp.com/module_purchase.html",
|
||||
"depends" : ["base", "account", "stock"],
|
||||
"depends" : ["base", "account", "stock", "process"],
|
||||
"category" : "Generic Modules/Sales & Purchases",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : ["purchase_demo.xml",
|
||||
@@ -47,7 +47,8 @@
|
||||
"purchase_report.xml",
|
||||
"purchase_wizard.xml",
|
||||
"stock_view.xml",
|
||||
"partner_view.xml"
|
||||
"partner_view.xml",
|
||||
"process/purchase_process.xml"
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
|
||||
@@ -0,0 +1,155 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process
|
||||
-->
|
||||
|
||||
<record id="process_process_purchaseworkflow0" model="process.process">
|
||||
<field eval=""""Purchase flow for services companies."""" name="note"/>
|
||||
<field eval="1" name="active"/>
|
||||
<field eval=""""Purchase Workflow"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_purchaseorder0" model="process.node">
|
||||
<field name="menu_id" ref="purchase.menu_purchase_form_action"/>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Purchase Order"""" name="name"/>
|
||||
<field eval=""""After confirming purchase order, it is approved by supplier."""" name="note"/>
|
||||
<field name="process_id" ref="account.process_process_invoiceworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_draftpurchaseorder0" model="process.node">
|
||||
<field name="menu_id" ref="purchase.menu_purchase_order_draft"/>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Draft Purchase Order"""" name="name"/>
|
||||
<field eval=""""Proposed by the system or manually"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_purchaseworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_confirmpurchaseorder0" model="process.node">
|
||||
<field name="menu_id" ref="purchase.menu_purchase_form_action3"/>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Confirm Purchase Order"""" name="name"/>
|
||||
<field eval=""""The user confirm he wants to purchase"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_purchaseworkflow0"/>
|
||||
<field eval=""""object.state=='confirmed'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_approvepurchaseorder0" model="process.node">
|
||||
<field name="menu_id" ref="purchase.menu_purchase_form_action4"/>
|
||||
<field name="model_id" ref="purchase.model_purchase_order"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Approve Purchase Order"""" name="name"/>
|
||||
<field eval=""""The supplier confirms he can deliver"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_purchaseworkflow0"/>
|
||||
<field eval=""""object.state=='approved'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_invoicecontrol0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_action_invoice_tree8"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Invoice Control"""" name="name"/>
|
||||
<field eval=""""Draft invoices are pre-generated for control."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_purchaseworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_packinglist0" model="process.node">
|
||||
<field name="menu_id" ref="stock.menu_action_picking_tree4"/>
|
||||
<field name="model_id" ref="stock.model_stock_picking"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Packing list"""" name="name"/>
|
||||
<field eval=""""Pre-generated in draft for control"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_purchaseworkflow0"/>
|
||||
<field eval=""""object.state=='assigned'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_invoiceafterpacking0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_finance_invoice"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Invoice after packing"""" name="name"/>
|
||||
<field eval=""""In case you control based on delivery"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_purchaseworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_confirmingpurchaseorder0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Confirming Purchase Order"""" name="name"/>
|
||||
<field eval=""""Confirm Purchase order from Request for quotation"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_confirmpurchaseorder0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_draftpurchaseorder0"/>
|
||||
</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=""""Approving Purchase Order"""" name="name"/>
|
||||
<field eval=""""Approve Purchase order after Confirming"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_approvepurchaseorder0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_confirmpurchaseorder0" />
|
||||
</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=""""Invoice from Purchase"""" name="name"/>
|
||||
<field eval=""""After approved purchase order , it comes into the supplier invoice"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_invoicecontrol0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_approvepurchaseorder0"/>
|
||||
</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=""""Create Packing list"""" name="name"/>
|
||||
<field eval=""""When purchase order is approved , it creates its packing list."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_packinglist0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_approvepurchaseorder0"/>
|
||||
</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=""""Invoice from Packing list"""" name="name"/>
|
||||
<field eval=""""Creates invoice from packin list"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_invoiceafterpacking0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_packinglist0"/>
|
||||
</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=""""Purchase Invoice"""" name="name"/>
|
||||
<field eval=""""After Purchase order , Create invoice."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="account.process_node_draftinvoices0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_purchaseorder0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -31,7 +31,7 @@
|
||||
"version" : "1.0",
|
||||
"author" : "Tiny",
|
||||
"website" : "http://tinyerp.com/module_sale.html",
|
||||
"depends" : ["product", "stock", "mrp"],
|
||||
"depends" : ["product", "stock", "mrp", "process"],
|
||||
"category" : "Generic Modules/Sales & Purchases",
|
||||
"init_xml" : [],
|
||||
"demo_xml" : ["sale_demo.xml"],
|
||||
@@ -62,6 +62,7 @@
|
||||
"sale_report.xml",
|
||||
"sale_wizard.xml",
|
||||
"stock_view.xml",
|
||||
"process/sale_process.xml",
|
||||
"product_view.xml",
|
||||
],
|
||||
"active": False,
|
||||
|
||||
@@ -0,0 +1,274 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process
|
||||
-->
|
||||
|
||||
<record id="process_process_salesworkflow0" model="process.process">
|
||||
<field eval="1" name="active"/>
|
||||
<field eval=""""Sales flow for services companies."""" name="note"/>
|
||||
<field eval=""""Sales Workflow"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_order0" model="process.node">
|
||||
<field name="menu_id" ref="sale.menu_sale_order"/>
|
||||
<field name="model_id" ref="sale.model_sale_order"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Order"""" name="name"/>
|
||||
<field eval=""""After confirming order, Create the invoice."""" name="note"/>
|
||||
<field name="process_id" ref="account.process_process_invoiceworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_saleorderprocurement0" model="process.node">
|
||||
<field name="menu_id" ref="sale.menu_sale_order"/>
|
||||
<field name="model_id" ref="sale.model_sale_order"/>
|
||||
<field eval=""""subflow"""" name="kind"/>
|
||||
<field eval=""""Sale Order Procurement"""" name="name"/>
|
||||
<field eval=""""Procurement for each line"""" name="note"/>
|
||||
<field name="process_id" ref="mrp.process_process_procurementworkflow0"/>
|
||||
<field eval=""""object.state in ('draft', 'waiting_date', 'manual', 'progress', 'shipping_except', 'invoice_except', 'done', 'cancel')"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_quotation0" model="process.node">
|
||||
<field name="menu_id" ref="sale.menu_action_order_tree10"/>
|
||||
<field name="model_id" ref="sale.model_sale_order"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Quotation"""" name="name"/>
|
||||
<field eval=""""Quotations are sale order in draft state."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_salesworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_saleorder0" model="process.node">
|
||||
<field name="menu_id" ref="sale.menu_action_order_tree9"/>
|
||||
<field name="model_id" ref="sale.model_sale_order"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Sale Order"""" name="name"/>
|
||||
<field eval=""""Manages the delivery and invoicing progress."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_salesworkflow0"/>
|
||||
<field eval=""""object.state=='manual'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_packinglist0" model="process.node">
|
||||
<field name="menu_id" ref="stock.menu_picking_waiting"/>
|
||||
<field name="model_id" ref="stock.model_stock_picking"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Packing List"""" name="name"/>
|
||||
<field eval=""""The worker packs the requested items."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_salesworkflow0"/>
|
||||
<field eval=""""object.state in ('assigned', 'confirmed')"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_deliveryorder0" model="process.node">
|
||||
<field name="menu_id" ref="stock.menu_picking_waiting_delivery"/>
|
||||
<field name="model_id" ref="stock.model_stock_picking"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Delivery Order"""" name="name"/>
|
||||
<field eval=""""The transporter take the box and deliver it."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_salesworkflow0"/>
|
||||
<field eval=""""object.state in ('done', 'assigned')"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_invoice0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_invoice_draft"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Invoice"""" name="name"/>
|
||||
<field eval=""""In case you invoice based on sale order."""" name="note"/>
|
||||
<field name="process_id" ref="process_process_salesworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<record id="process_node_invoiceafterdelivery0" model="process.node">
|
||||
<field name="menu_id" ref="account.menu_invoice_draft"/>
|
||||
<field name="model_id" ref="account.model_account_invoice"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Invoice after delivery"""" name="name"/>
|
||||
<field eval=""""In case you invoice based on deliveries (subflow)"""" name="note"/>
|
||||
<field name="process_id" ref="process_process_salesworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="0" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Condition
|
||||
-->
|
||||
|
||||
<record id="process_condition_conditionafterdelivery0" model="process.condition">
|
||||
<field name="model_id" ref="sale.model_sale_order"/>
|
||||
<field name="node_id" ref="process_node_invoiceafterdelivery0"/>
|
||||
<field eval=""""object.order_policy=='postpaid'"""" name="model_states"/>
|
||||
<field eval=""""condition_after_delivery"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_confirmquotation0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Confirm Quotation"""" name="name"/>
|
||||
<field eval=""""Whenever confirm button is clicked, the draft state is moved to manual. that is, quotation is moved to sale order."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_saleorder0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_quotation0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_confirm0" model="process.transition.action">
|
||||
<field eval=""""action_wait"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Confirm"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_confirmquotation0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_cancel0" model="process.transition.action">
|
||||
<field eval=""""action_cancel"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Cancel"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_confirmquotation0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_packing0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Packing"""" name="name"/>
|
||||
<field eval=""""Packing list is created when 'Assign' is being clicked after confirming the sale order. This transaction moves the sale order to packing list."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_packinglist0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_saleorder0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_assign0" model="process.transition.action">
|
||||
<field eval=""""action_assign"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Assign"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_packing0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_forceassignation0" model="process.transition.action">
|
||||
<field eval=""""force_assign"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Force Assignation"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_packing0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_cancel1" model="process.transition.action">
|
||||
<field eval=""""action_cancel"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Cancel"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_packing0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_deliver0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Deliver"""" name="name"/>
|
||||
<field eval=""""Confirming the packing list moves them to delivery order. This can be done by clicking on 'Validate' button."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_deliveryorder0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_packinglist0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_cancelassignation0" model="process.transition.action">
|
||||
<field eval=""""cancel_assign"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Cancel Assignation"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_deliver0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_validate0" model="process.transition.action">
|
||||
<field eval=""""test_finnished"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Validate"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_deliver0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_cancel2" model="process.transition.action">
|
||||
<field eval=""""action_cancel"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Cancel"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_deliver0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_invoice0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Invoice"""" name="name"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_invoice0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_saleorder0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_createinvoice0" model="process.transition.action">
|
||||
<field eval=""""action_invoice_create"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Create Invoice"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_invoice0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_action_cancelorder0" model="process.transition.action">
|
||||
<field eval=""""action_cancel"""" name="action"/>
|
||||
<field eval=""""object"""" name="state"/>
|
||||
<field eval=""""Cancel Order"""" name="name"/>
|
||||
<field name="transition_id" ref="process_transition_invoice0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_invoice0" model="process.transition">
|
||||
<field eval=""""Invoice is created when 'Create Invoice' is being clicked after confirming the sale order. This transaction moves the sale order to invoices."""" name="note"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_invoiceafterdelivery0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Invoice after delivery"""" name="name"/>
|
||||
<field eval=""""When you select Shipping Ploicy = 'Automatic Invoice after delivery' , it will automatic create after delivery."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="process_node_invoiceafterdelivery0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_deliveryorder0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_saleprocurement0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Sale Procurement"""" name="name"/>
|
||||
<field eval=""""In sale order , procuerement for each line and it comes into the procurement order"""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="mrp.process_node_procureproducts0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_saleorderprocurement0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_saleinvoice0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Sale Invoice"""" name="name"/>
|
||||
<field eval=""""Confirm sale order and Create invoice."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="account.process_node_draftinvoices0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_order0"/>
|
||||
</record>
|
||||
|
||||
<record id="res_roles_salesman0" model="res.roles">
|
||||
<field eval=""""Salesman"""" name="name"/>
|
||||
</record>
|
||||
|
||||
<record id="sale.trans_draft_router" model="workflow.transition">
|
||||
<field name="role_id" ref="res_roles_salesman0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_confirmquotation0" model="process.transition">
|
||||
<field eval="[(6,0,[ref('sale.trans_draft_router')])]" name="transition_ids"/>
|
||||
</record>
|
||||
|
||||
<record id="sale.trans_wait_invoice_invoice_manual" model="workflow.transition">
|
||||
<field name="role_id" ref="res_roles_salesman0"/>
|
||||
</record>
|
||||
|
||||
<record id="process_transition_invoice0" model="process.transition">
|
||||
<field eval="[(6,0,[ref('sale.trans_wait_invoice_invoice_manual')])]" name="transition_ids"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
@@ -30,7 +30,7 @@
|
||||
"name" : "Scrum, Agile Development Method",
|
||||
"version": "1.0",
|
||||
"author" : "Tiny",
|
||||
"depends" : ["project"],
|
||||
"depends" : ["project", "process"],
|
||||
"category" : "Enterprise Specific Modules/Information Technology",
|
||||
"init_xml" : [],
|
||||
"description": """
|
||||
@@ -61,6 +61,7 @@
|
||||
"scrum_view.xml",
|
||||
"scrum_report.xml",
|
||||
"scrum_wizard.xml",
|
||||
"process/scrum_process.xml",
|
||||
],
|
||||
"active": False,
|
||||
"installable": True
|
||||
|
||||
@@ -0,0 +1,34 @@
|
||||
<?xml version="1.0" ?>
|
||||
<openerp>
|
||||
<data>
|
||||
|
||||
<!--
|
||||
Process Node
|
||||
-->
|
||||
|
||||
<record id="process_node_productbacklog0" model="process.node">
|
||||
<field name="menu_id" ref="scrum.menu_action_product_backlog_form"/>
|
||||
<field name="model_id" ref="scrum.model_scrum_product_backlog"/>
|
||||
<field eval=""""state"""" name="kind"/>
|
||||
<field eval=""""Product backlog"""" name="name"/>
|
||||
<field eval=""""Create task from backlogs"""" name="note"/>
|
||||
<field name="process_id" ref="project.process_process_tasksworkflow0"/>
|
||||
<field eval=""""object.state=='draft'"""" name="model_states"/>
|
||||
<field eval="1" name="flow_start"/>
|
||||
</record>
|
||||
|
||||
<!--
|
||||
Process Transition
|
||||
-->
|
||||
|
||||
<record id="process_transition_backlogtask0" model="process.transition">
|
||||
<field eval="[(6,0,[])]" name="role_ids"/>
|
||||
<field eval="[(6,0,[])]" name="transition_ids"/>
|
||||
<field eval=""""Backlog Task"""" name="name"/>
|
||||
<field eval=""""From backlog create task."""" name="note"/>
|
||||
<field model="process.node" name="target_node_id" ref="project.process_node_drafttask0"/>
|
||||
<field model="process.node" name="source_node_id" ref="process_node_productbacklog0"/>
|
||||
</record>
|
||||
|
||||
</data>
|
||||
</openerp>
|
||||
Reference in New Issue
Block a user