This commit is contained in:
Yannick Vaucher
2013-10-24 15:36:01 +02:00
parent 935c24c893
commit 1f720317d1
6 changed files with 25 additions and 26 deletions

View File

@@ -20,12 +20,14 @@
##############################################################################
from openerp.osv import orm, fields
class ReportXML(orm.Model):
_inherit = 'ir.actions.report.xml'
_columns = {
'printer_tray_id': fields.many2one('printing.tray', 'Paper Source',
'printer_tray_id': fields.many2one(
'printing.tray', 'Paper Source',
domain="[('printer_id', '=', printing_printer_id)]"),
}
@@ -46,7 +48,8 @@ class ReportXML(orm.Model):
tray = report.printer_tray_id
# Retrieve report-user specific values
act_ids = printing_act_obj.search(cr, uid,
act_ids = printing_act_obj.search(
cr, uid,
[('report_id', '=', report.id),
('user_id', '=', uid),
('action', '!=', 'user_default')], context=context)
@@ -58,4 +61,3 @@ class ReportXML(orm.Model):
if tray:
options['InputSlot'] = str(tray.system_name)
return options

View File

@@ -24,6 +24,7 @@ from cups import PPD
from openerp import pooler
from openerp.osv import orm, fields
class Printer(orm.Model):
_inherit = 'printing.printer'
@@ -45,14 +46,12 @@ class Printer(orm.Model):
ppd_file_path = connection.getPPD3(printer.system_name)
except:
return
if not ppd_file_path[2]:
return
ppd = PPD(ppd_file_path[2])
option = ppd.findOption('InputSlot')
if not option:
return
try:
for tray_opt in option.choices:
if tray_opt['choice'] not in [t.system_name for t in printer.tray_ids]:
@@ -63,7 +62,6 @@ class Printer(orm.Model):
}
tray_obj.create(cr, uid, tray_vals, context=context)
cr.commit()
except:
cr.rollback()
@@ -72,7 +70,6 @@ class Printer(orm.Model):
cr.close()
return True
def update_printers_status(self, db_name, uid, context=None):
"""
Add creation of tray if no tray are defined
@@ -95,6 +92,4 @@ class Printer(orm.Model):
# XXX we consider config of printer won't change
if not printer.tray_ids:
self._update_tray_option(db_name, uid, printer, context=context)
return res

View File

@@ -20,6 +20,7 @@
##############################################################################
from openerp.osv import orm, fields
class PrinterTray(orm.Model):
_name = 'printing.tray'

View File

@@ -21,11 +21,13 @@
from openerp.osv import orm, fields
class ReportXMLAction(orm.Model):
_inherit = 'printing.report.xml.action'
_columns = {
'printer_tray_id': fields.many2one('printing.tray', 'Paper Source',
'printer_tray_id': fields.many2one(
'printing.tray', 'Paper Source',
domain="[('printer_id', '=', printer_id)]"),
}
@@ -34,6 +36,3 @@ class ReportXMLAction(orm.Model):
action = self.browse(cr, uid, act_id, context=context)
res['tray'] = action.printer_tray_id.system_name
return res

View File

@@ -20,11 +20,13 @@
##############################################################################
from openerp.osv import orm, fields
class ResUsers(orm.Model):
_inherit = "res.users"
_columns = {
'printer_tray_id': fields.many2one('printing.tray', 'Default Printer Paper Source',
'printer_tray_id': fields.many2one(
'printing.tray', 'Default Printer Paper Source',
domain="[('printer_id', '=', printing_printer_id)]"),
}