1 from PyQt4 import QtSql, QtCore
2 from tableDeBase import TableDeBase
4 class TableMailles (TableDeBase):
6 TableDeBase.__init__(self,"Mailles")
7 # self.setField(('Maillage','Version','Machine','Node','N0D','Edge','Quad_Edge','Triangle','Quad_Triangle','BiQuad_Triangle','Quadrangle','Quad_Quadrangle','BiQuad_Quadrangle','Polygon','Quad_Polygon','Tetra','Quad_Tetra','Pyramid','Quad_Pyramid','Hexa','Quad_Hexa','TriQuad_Hexa','Penta','Quad_Penta','Hexagonal_Prism','Polyhedra','Quad_Polyhedra',))
8 # self.setTypeField(('int','int','str','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int','int'),('idMaillage','idVersion','Machine'))
9 self.setField(('Maillage','Version','Machine','Entite','NbEntite'))
10 self.setTypeField(('int','int','str','str','int'),('idMaillage','idVersion','Machine','Entite'))
13 def createSqlTable(self):
14 query=QtSql.QSqlQuery()
16 #texteQuery ="create table Mailles(idMaillage int, idVersion int,Machine var(10), Node int, "
17 #texteQuery+="N0D int, Edge int, Quad_Edge int, Triangle int, Quad_Triangle int, BiQuad_Triangle int,"
18 #texteQuery+="Quadrangle int, Quad_Quadrangle int, BiQuad_Quadrangle int, Polygon int,"
19 #texteQuery+="Quad_Polygon int, Tetra int, Quad_Tetra int, Pyramid int, Quad_Pyramid int,"
20 #texteQuery+="Hexa int, Quad_Hexa int, TriQuad_Hexa int, Penta int, Quad_Penta int,"
21 #texteQuery+="Hexagonal_Prism int, Polyhedra int, Quad_Polyhedra int, "
23 texteQuery ="create table Mailles(idMaillage int, idVersion int, Machine var(40), Entite var(40), NbEntite int, "
24 texteQuery+="foreign key (idMaillage) references Maillages(id),"
25 texteQuery+="foreign key (idVersion) references Versions(id),"
26 texteQuery+="foreign key (Machine) references Machines(nomMachine),"
27 texteQuery+="primary key (idMaillage,idVersion,Machine,Entite));"
29 print "Creation de TableMailles : " , query.exec_(texteQuery)
32 def getVal(self,idMaillage, idVersion, Machine, Entite):
33 query=QtSql.QSqlQuery()
34 texteQuery ='select NbEntite from Mailles where idMaillage='+str(idMaillage)
35 texteQuery+=' and idVersion='+str(idVersion)
36 texteQuery+=" and Machine='" + str(Machine) +"'"
37 texteQuery+=" and Entite='" + str(Entite) +"';"
38 query.exec_(texteQuery)
40 val=0 # Valeur si l enregistrement n existe pas
41 while (query.next()) :
42 val=query.value(0).toInt()[0]
44 if nb > 1 : print "Double valeur de Reference dans la table des mailles"
48 def getAllEntity(self):
49 query=QtSql.QSqlQuery()
50 texteQuery ="select distinct Entite from Mailles;"
51 query.exec_(texteQuery)
53 while (query.next()) :
54 maListe.append(str(query.value(0).toString()))