mirror of
https://github.com/OCA/report-print-send.git
synced 2025-02-16 07:11:31 +02:00
[10.0][MIG] base_report_to_printer (#68)
* Set api.multi for action called as `object` on view * Merge syleam printers module into base_report_to_printer (#60) * [IMP] Updated unit tests * [FIX] Fixed renamed attributes * [FIX] Remove deleted fields * [IMP] Add printing.server and printing.job models * [IMP] Allow to cancel all jobs, enable, and disable printers * [IMP] Split the cups part of print_document into a new print_file method * [IMP] Updated cron job to run the action_update_jobs method * [ADD] Add a migration script to create a printing server from configuration * [MIG] Migrate base_report_to_printer to v10.0 Removed deprecated methods on printing.printer (replaced by methods on printing.server) * [IMP] Add wkhtmltopdf in travis configuration file * [FIX] base_report_to_printer: Fix Update Job Cron * Fix API issue with Update Job Cron ** Forward Port from 9.0 * [FIX] Fixed the res.users view The string attribute should not be used as a selector, because it is translatable. * [FIX] Fixed the print_document method of report The new API migration was made to @api.multi because of the "cr, uid, ids" signature, but "ids" was the ids of the records to print here, not the report's ids. Also, the new API version of "get_pdf" get directly the ids of the records to print in the standard module, not a recordset. * [FIX] UI is now (un)blocked only when using qweb-pdf reports in standard addons
This commit is contained in:
committed by
Carlos Roca
parent
6c943e09b8
commit
5dda3b475e
44
base_report_to_printer/views/printing_job.xml
Normal file
44
base_report_to_printer/views/printing_job.xml
Normal file
@@ -0,0 +1,44 @@
|
||||
<?xml version="1.0"?>
|
||||
<odoo>
|
||||
|
||||
<record model="ir.ui.view" id="printing_job_view_form">
|
||||
<field name="name">printing.job.form</field>
|
||||
<field name="model">printing.job</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Job">
|
||||
<sheet>
|
||||
<header>
|
||||
<button name="action_cancel" type="object" string="Cancel" attrs="{'invisible': [('job_state', 'in', ('canceled', 'aborted', 'completed'))]}"/>
|
||||
<field name="job_state" widget="statusbar"/>
|
||||
</header>
|
||||
<group>
|
||||
<group>
|
||||
<field name="name"/>
|
||||
<field name="job_id_cups"/>
|
||||
<field name="job_media_progress" widget="progressbar"/>
|
||||
<field name="job_state_reason"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="time_at_creation"/>
|
||||
<field name="time_at_processing"/>
|
||||
<field name="time_at_completed"/>
|
||||
</group>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="printing_job_view_tree">
|
||||
<field name="name">printing.job.tree</field>
|
||||
<field name="model">printing.job</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Job">
|
||||
<field name="name"/>
|
||||
<field name="job_id_cups"/>
|
||||
<field name="job_state"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
</odoo>
|
||||
@@ -1,81 +1,90 @@
|
||||
<?xml version="1.0"?>
|
||||
<odoo>
|
||||
|
||||
<menuitem name="Printing"
|
||||
id="printing_menu"
|
||||
parent="base.menu_administration"
|
||||
groups="printing_group_manager"
|
||||
/>
|
||||
<menuitem name="Printing"
|
||||
id="printing_menu"
|
||||
parent="base.menu_administration"
|
||||
groups="printing_group_manager"
|
||||
/>
|
||||
|
||||
<record model="ir.ui.view" id="printing_printer_view_form">
|
||||
<field name="name">printing.printer.form</field>
|
||||
<field name="model">printing.printer</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Printers">
|
||||
<sheet>
|
||||
<div class="oe_title">
|
||||
<h1>
|
||||
<label for="name"/>
|
||||
<field name="name"/>
|
||||
</h1>
|
||||
</div>
|
||||
<group>
|
||||
<field name="system_name"/>
|
||||
</group>
|
||||
<group col="3" colspan="4">
|
||||
<field name="default"/>
|
||||
<button name="set_default" string="Set Default" type="object"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="uri"/>
|
||||
<field name="model"/>
|
||||
<field name="location"/>
|
||||
<field name="status"/>
|
||||
<field name="status_message"/>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
<record model="ir.ui.view" id="printing_printer_view_form">
|
||||
<field name="name">printing.printer.form</field>
|
||||
<field name="model">printing.printer</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Printers">
|
||||
<sheet>
|
||||
<header>
|
||||
<button name="enable" type="object" string="Enable" attrs="{'invisible': [('status', 'in', ('available', 'printing'))]}"/>
|
||||
<button name="disable" type="object" string="Disable" attrs="{'invisible': [('status', '=', 'unavailable')]}"/>
|
||||
<button name="action_cancel_all_jobs" type="object" string="Cancel all running jobs"/>
|
||||
</header>
|
||||
<div class="oe_title">
|
||||
<h1>
|
||||
<label for="name"/>
|
||||
<field name="name"/>
|
||||
</h1>
|
||||
</div>
|
||||
<group>
|
||||
<field name="system_name"/>
|
||||
</group>
|
||||
<group col="3" colspan="4">
|
||||
<field name="default"/>
|
||||
<button name="set_default" string="Set Default" type="object"/>
|
||||
</group>
|
||||
<group>
|
||||
<field name="uri"/>
|
||||
<field name="model"/>
|
||||
<field name="location"/>
|
||||
<field name="status"/>
|
||||
<field name="status_message"/>
|
||||
</group>
|
||||
<group>
|
||||
<separator string="Jobs" colspan="2"/>
|
||||
<field name="job_ids" nolabel="1"/>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="printing_printer_view_tree">
|
||||
<field name="name">printing.printer.tree</field>
|
||||
<field name="model">printing.printer</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Printers" colors="green:status=='available'; orange:status=='printing'; red:1;">
|
||||
<field name="default"/>
|
||||
<field name="name"/>
|
||||
<field name="system_name"/>
|
||||
<field name="status"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
<record model="ir.ui.view" id="printing_printer_view_tree">
|
||||
<field name="name">printing.printer.tree</field>
|
||||
<field name="model">printing.printer</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Printers" colors="green:status=='available'; orange:status=='printing'; red:1;">
|
||||
<field name="default"/>
|
||||
<field name="name"/>
|
||||
<field name="system_name"/>
|
||||
<field name="status"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="printing_printer_view_search">
|
||||
<field name="name">printing.printer.search</field>
|
||||
<field name="model">printing.printer</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Printers">
|
||||
<field name="name"/>
|
||||
<field name="system_name"/>
|
||||
<field name="location"/>
|
||||
<field name="status"/>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
<record model="ir.ui.view" id="printing_printer_view_search">
|
||||
<field name="name">printing.printer.search</field>
|
||||
<field name="model">printing.printer</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Printers">
|
||||
<field name="name"/>
|
||||
<field name="system_name"/>
|
||||
<field name="location"/>
|
||||
<field name="status"/>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window" id="printing_printer_action">
|
||||
<field name="name">Show Printers</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">printing.printer</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
<field name="auto_refresh">20</field>
|
||||
</record>
|
||||
<record model="ir.actions.act_window" id="printing_printer_action">
|
||||
<field name="name">Show Printers</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">printing.printer</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
|
||||
<menuitem name="Printers"
|
||||
id="printing_printer_menu"
|
||||
parent="printing_menu"
|
||||
action="printing_printer_action"/>
|
||||
<menuitem name="Printers"
|
||||
sequence="20"
|
||||
id="printing_printer_menu"
|
||||
parent="printing_menu"
|
||||
action="printing_printer_action"/>
|
||||
|
||||
</odoo>
|
||||
|
||||
@@ -28,6 +28,7 @@
|
||||
|
||||
<!-- Add a shorcut to "Actions/Report" in the Printing menu -->
|
||||
<menuitem id="printing_report_xml_action_menu"
|
||||
sequence="30"
|
||||
parent="printing_menu"
|
||||
action="base.ir_action_report_xml"/>
|
||||
|
||||
|
||||
70
base_report_to_printer/views/printing_server.xml
Normal file
70
base_report_to_printer/views/printing_server.xml
Normal file
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0"?>
|
||||
<odoo>
|
||||
|
||||
<record model="ir.ui.view" id="printing_server_view_form">
|
||||
<field name="name">printing.server.form</field>
|
||||
<field name="model">printing.server</field>
|
||||
<field name="arch" type="xml">
|
||||
<form string="Servers">
|
||||
<sheet>
|
||||
<header>
|
||||
<button name="action_update_printers" type="object" string="Update Printers"/>
|
||||
<button name="action_update_jobs" type="object" string="Update Jobs"/>
|
||||
</header>
|
||||
<div class="oe_title">
|
||||
<h1>
|
||||
<field name="name"/>
|
||||
</h1>
|
||||
</div>
|
||||
<group>
|
||||
<field name="address"/>
|
||||
<field name="port"/>
|
||||
</group>
|
||||
<group>
|
||||
<separator string="Printers" colspan="2"/>
|
||||
<field name="printer_ids" nolabel="1"/>
|
||||
</group>
|
||||
</sheet>
|
||||
</form>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="printing_server_view_tree">
|
||||
<field name="name">printing.server.tree</field>
|
||||
<field name="model">printing.server</field>
|
||||
<field name="arch" type="xml">
|
||||
<tree string="Servers">
|
||||
<field name="name"/>
|
||||
<field name="address"/>
|
||||
<field name="port"/>
|
||||
</tree>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.ui.view" id="printing_server_view_search">
|
||||
<field name="name">printing.server.search</field>
|
||||
<field name="model">printing.server</field>
|
||||
<field name="arch" type="xml">
|
||||
<search string="Servers">
|
||||
<field name="name"/>
|
||||
<field name="address"/>
|
||||
<field name="port"/>
|
||||
</search>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
<record model="ir.actions.act_window" id="printing_server_action">
|
||||
<field name="name">Servers</field>
|
||||
<field name="type">ir.actions.act_window</field>
|
||||
<field name="res_model">printing.server</field>
|
||||
<field name="view_type">form</field>
|
||||
<field name="view_mode">tree,form</field>
|
||||
</record>
|
||||
|
||||
<menuitem name="Servers"
|
||||
sequence="10"
|
||||
id="printing_server_menu"
|
||||
parent="printing_menu"
|
||||
action="printing_server_action"/>
|
||||
|
||||
</odoo>
|
||||
@@ -6,12 +6,12 @@
|
||||
<field name="model">res.users</field>
|
||||
<field name="inherit_id" ref="base.view_users_form" />
|
||||
<field name="arch" type="xml">
|
||||
<page string="Preferences">
|
||||
<group name="printing">
|
||||
<xpath expr="//group[@name='preferences']/ancestor::page" position="inside">
|
||||
<group string="Printing" name="printing">
|
||||
<field name="printing_action"/>
|
||||
<field name="printing_printer_id"/>
|
||||
</group>
|
||||
</page>
|
||||
</xpath>
|
||||
</field>
|
||||
</record>
|
||||
|
||||
|
||||
Reference in New Issue
Block a user