def setDB(self): self.database_connection = con_.con_1() table_name = "tbl_gado" filtro = None lstVal2Real = [None,['id ', 'nome']] lstRelTblName = [None,'tbl_categorias'] """ Setting up Models """ """ This is the model for the table that will be displayed:: tbl_gado """ _, self.model = mixedModel.setViewModel(tblName= table_name, filtro=None, lstVal2Rel = lstVal2Real, lstRelTblName=lstRelTblName) self.tableView.setModel(self.model) self.tableView.setSelectionMode(QAbstractItemView.SingleSelection) self.tableView.setSelectionBehavior(QAbstractItemView.SelectRows) """THis is the model for the table that won't be displayed but it will be necessary for mapping the widgets """ self.second_model = SimpleModel(self.database_connection, tblName='tbl_log') self.second_model.setModel() self.second_model.model.sort(2, Qt.AscendingOrder) '''Need to sort the tableView according to the id_gado so the values from the first model can correspond to the values of the second model''' self.index_gado_in_log = [] for x in range(int(self.second_model.model.rowCount())): self.index_gado_in_log.append(self.second_model.model.record(x).value(2)) self.index_gado_in_log.sort()
def setModel(self): tblName = 'prc_relatorios' fldToMap = [self.LECod, self.LENome, self.PTEDescricao] fldSize = [50, 150,150] bOK, model = mixedModel.setViewModel(tblName= tblName, filtro='parametros = False') if bOK: QT_tblViewUtility.setModelInView(tblView= self.TVReports, ViewModel=model) QT_tblViewUtility.setViewCustom(tblView= self.TVReports, lstSizeCol=fldSize) mixedModel.withWidgets.setMapper(self, model=model, fldToMap= fldToMap)
def setModel(self): relTblName = self.dictSql['tblName'] relVal = self.dictSql['fld'] lstWdgts = self.dictUser['fldName'] bOK, model = mixedModel.setViewModel(tblName=self.tblName, lstVal2Rel=relVal, lstRelTblName=relTblName) if bOK: lstWdgts = self.dictUser['widgets'] Cmodle = mixedModel.withWidgets() Cmodle.setMapper(model=model, fldToMap=lstWdgts) self.LViewUser.setModel(model) self.LViewUser.setModelColumn(1)
def setDB(self): self.dbConnection = con_.con_1() table_name = 'tbl_gado' list_of_values_tRelate = [None, ['id', 'nome']] list_of_tableNames = [None, 'tbl_categorias'] list_of_new_names = [ 'id', 'Categoria', 'sexo', 'Data de Nascimento', 'Total' ] _, self.model = mx.setViewModel(tblName=table_name, lstVal2Rel=list_of_values_tRelate, lstRelTblName=list_of_tableNames, lstNewNames=list_of_new_names) self.tableView.setModel(self.model) self.tableView.setSelectionMode(QAbstractItemView.SingleSelection) self.tableView.setSelectionBehavior(QAbstractItemView.SelectRows)
def setModelView(self): for idx, val in enumerate(self.dictView['filtro']): filtro = val.format(id=self.LEN_Sequencial.text()) bOK, model = mixedModel.setViewModel( tblName=self.dictView['tblName'][idx], filtro=filtro, lstVal2Rel=self.dictView['MainDict'][idx]['val2Rel'], lstRelTblName=self.dictView['MainDict'][idx]['relTblName'], lstNewNames=self.dictView['MainDict'][idx]['newNames']) if bOK: lstSizeCol = self.dictView['MainDict'][idx]['sizeCol'] tblView = self.dictView['tblView'][idx] toHide = self.dictView['MainDict'][idx]['toHide'] QT_tblViewUtility.setModelInView(tblView=tblView, ViewModel=model, toHide=toHide) QT_tblViewUtility.setViewCustom(tblView=tblView, lstSizeCol=lstSizeCol)
def setModel(self, filtro=None): #6 ''' Metodo para configurar o modelo que sera usado para relaizar a visualizacao de dados Args: filtro: sera passado, quando se usar o bottao pesquisar ''' tblName = self.dictMain["tblName"][self.idx] lstVal2Rel = self.dictMain['fldDlgDict'][self.idx]['val2Rel'] lstRelTblName = self.dictMain['fldDlgDict'][self.idx]['fldRelTblMain'] lstNewNames = self.dictMain['fldDlgDict'][self.idx]['headerTitle'] bOK, model = wrapModel.setViewModel(tblName=tblName, filtro=filtro, lstVal2Rel=lstVal2Rel, lstRelTblName=lstRelTblName, lstNewNames=lstNewNames) self.deleg = CustomItemDelegates.CustomItemDelegate() lstToHide = self.dictMain['fldDlgDict'][self.idx]['lstToHide'] QT_tblViewUtility.setModelInView(tblView=self.TVMain, ViewModel=model, toHide=lstToHide) self.TVMain.setItemDelegate(self.deleg) return (bOK, model)
def setModelInView(self, tblView=None): ''' Metodo de configuracao do modelo, este metodo cria o modelo que sera usado, para-se vizualizar os dados, nos POPIN'S. o modelo apois serem Criado, Costumizamos os Headers e o tamanho. Args: tblView= Nome do TableView ''' lstVal2Rel = self.dictFields['fldRelName'] lstRelTblName = self.dictFields['fldRelTblMain'] lstNewNames = self.dictFields['HeaderNames'] bOK, self.model = mModel.setViewModel(tblName=self.tblName, filtro=self.filtro, lstVal2Rel=lstVal2Rel, lstRelTblName=lstRelTblName, lstNewNames=lstNewNames) if bOK: toHide = self.dictFields['fldToHide'] lstSizeCol = self.dictFields['sizeCol'] QT_tblViewUtility.setModelInView(tblView=tblView, ViewModel=self.model, toHide=toHide) QT_tblViewUtility.setViewCustom(tblView=tblView, lstSizeCol=lstSizeCol)