Use direct access to backend classes

This commit is contained in:
Adrián Bernardi 2020-08-05 18:47:44 -03:00
parent dd5b903e2d
commit a6bd080015
4 changed files with 14 additions and 31 deletions

View File

@ -8,7 +8,6 @@ from email.mime.base import MIMEBase
from email.mime.multipart import MIMEMultipart
from email.mime.application import MIMEApplication
from trytond import backend
from trytond.model import Workflow, ModelView, ModelSQL, fields, Unique
from trytond.wizard import Wizard, StateTransition, StateView, StateReport, \
Button
@ -804,13 +803,9 @@ class EntryDetailAnalysis(ModelSQL, ModelView):
@classmethod
def __register__(cls, module_name):
TableHandler = backend.get('TableHandler')
tablehandler = TableHandler(cls, module_name)
plannable_exist = tablehandler.column_exist('plannable')
table_h = cls.__table_handler__(module_name)
plannable_exist = table_h.column_exist('plannable')
super(EntryDetailAnalysis, cls).__register__(module_name)
if not plannable_exist:
cursor = Transaction().connection.cursor()
pool = Pool()

View File

@ -8,7 +8,6 @@ from datetime import datetime
from dateutil.relativedelta import relativedelta
from sql import Literal, Join
from trytond import backend
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard, StateTransition, StateView, StateAction, \
StateReport, Button
@ -853,13 +852,9 @@ class NotebookLine(ModelSQL, ModelView):
@classmethod
def __register__(cls, module_name):
TableHandler = backend.get('TableHandler')
tablehandler = TableHandler(cls, module_name)
urgent_exist = tablehandler.column_exist('urgent')
table_h = cls.__table_handler__(module_name)
urgent_exist = table_h.column_exist('urgent')
super(NotebookLine, cls).__register__(module_name)
if not urgent_exist:
cursor = Transaction().connection.cursor()
Service = Pool().get('lims.service')

View File

@ -6,7 +6,6 @@ from io import BytesIO
from datetime import datetime
from PyPDF2 import PdfFileMerger
from trytond import backend
from trytond.model import ModelView, ModelSQL, fields
from trytond.wizard import Wizard, StateTransition, StateView, StateAction, \
Button
@ -77,13 +76,10 @@ class ResultsReport(ModelSQL, ModelView):
@classmethod
def __register__(cls, module_name):
TableHandler = backend.get('TableHandler')
tablehandler = TableHandler(cls, module_name)
notebook_exist = tablehandler.column_exist('notebook')
entry_exist = tablehandler.column_exist('entry')
table_h = cls.__table_handler__(module_name)
notebook_exist = table_h.column_exist('notebook')
entry_exist = table_h.column_exist('entry')
super(ResultsReport, cls).__register__(module_name)
if notebook_exist and not entry_exist:
cursor = Transaction().connection.cursor()
cursor.execute('UPDATE "lims_results_report" r '
@ -1036,11 +1032,11 @@ class ResultsReportVersionDetailLine(ModelSQL, ModelView):
@classmethod
def __register__(cls, module_name):
table = cls.__table_handler__(module_name)
table_h = cls.__table_handler__(module_name)
super(ResultsReportVersionDetailLine, cls).__register__(module_name)
if table.column_exist('report_version_detail'):
if table_h.column_exist('report_version_detail'):
cls._migrate_lines()
table.drop_column('report_version_detail')
table_h.drop_column('report_version_detail')
@classmethod
def _migrate_lines(cls):

View File

@ -34,16 +34,14 @@ class Table(ModelSQL, ModelView):
'table', 'Grouped Views')
def create_table(self):
TableHandler = backend.get('TableHandler')
model = ModelEmulation()
model.__doc__ = self.name
model._table = self.name
if TableHandler.table_exist(self.name):
TableHandler.drop_table('', self.name)
if backend.TableHandler.table_exist(self.name):
backend.TableHandler.drop_table('', self.name)
table = TableHandler(model)
table = backend.TableHandler(model)
for name, field in [
('create_uid', fields.Integer),
@ -63,8 +61,7 @@ class Table(ModelSQL, ModelView):
def drop_table(self):
transaction = Transaction()
TableHandler = backend.get('TableHandler')
TableHandler.drop_table('', self.name, cascade=True)
backend.TableHandler.drop_table('', self.name, cascade=True)
transaction.database.sequence_delete(transaction.connection,
self.name + '_id_seq')