Example #1
0
 def _salir(self, *args, **kw):
     """
     Si hay cambios pendientes en observaciones, pregunta.
     Después llama a la función salir heredada.
     """
     comprobar_y_preguntar_si_guardar(self)
     self.salir(*args, **kw)
 def set_partida(self, w):
     comprobar_y_preguntar_si_guardar(self)
     numpartida = utils.dialogo_entrada(titulo = 'Nº PARTIDA', 
                     texto = 'Introduzca número de partida:', 
                     padre = self.wids['ventana'])
     if numpartida != None:
         numpartida = numpartida.upper().replace("P-", "")
         partidas = pclases.Partida.select(
                     pclases.Partida.q.codigo.contains(numpartida))
         if partidas.count() == 0:
             utils.dialogo_info(titulo = 'PARTIDA NO ENCONTRADA', 
                 texto = 'No se encontró ninguna partida %s.' % numpartida, 
                 padre = self.wids['ventana'])
             return
         elif partidas.count() > 1:
             filas = [(l.id, 
                       l.numpartida, 
                       l.codigo, 
                       l.partidaCarga and l.partidaCarga.codigo or "" , 
                       l.longitudinal, 
                       l.transversal, 
                       l.compresion, 
                       l.perforacion, 
                       l.permeabilidad, 
                       l.poros, 
                       l.espesor, 
                       l.piramidal
                      ) for l in partidas]
             idpartida = utils.dialogo_resultado(filas, 
                 titulo = 'SELECCIONE PARTIDA',
                 cabeceras = ('ID', 'Número', 'Código', 'Partida Carga', 
                              'Longitudinal', 'Transversal', 'CBR', 
                              'Perforación', 'Permeabilidad', 'Poros', 
                              'Espesor', 'Piramidal'), 
                 padre = self.wids['ventana'])
             if idpartida < 0:
                 return
             partida = pclases.Partida.get(idpartida)
         else:
             partida = partidas[0]
         if len(partida.rollos) == 0:
             utils.dialogo_info(titulo = 'PARTIDA VACÍA', 
                 texto = 'La partida no contiene rollos, no puede\n'
                         'realizar pruebas sobre una partida vacía.', 
                 padre = self.wids['ventana'])
             self.partida = None
             return
         self.partida = partida
         self.actualizar_ventana()
Example #3
0
 def set_loteCem(self, w):
     comprobar_y_preguntar_si_guardar(self)
     codlote = utils.dialogo_entrada(titulo = 'Nº LOTE', 
                 texto = 'Introduzca número o código de lote de fibra '
                         'de cemento:',
                 padre = self.wids['ventana'])
     if codlote != None:
         numlote = utils.parse_numero(codlote)
         loteCems = pclases.LoteCem.select(pclases.OR(
             pclases.LoteCem.q.numlote == numlote, 
             pclases.LoteCem.q.codigo.contains(codlote)))
         if loteCems.count() == 0:
             utils.dialogo_info(titulo = 'LOTE NO ENCONTRADO', 
                 texto = 'No se encontró ningún lote de fibra de cemento'
                         ' %s.' % (codlote), 
                 padre = self.wids['ventana'])
             return
         elif loteCems.count() > 1:
             filas = [(l.id, l.numlote, l.codigo, l.tenacidad, 
                       l.elongacion, l.humedad, l.encogimiento) 
                      for l in loteCems]
             idloteCem = utils.dialogo_resultado(filas, 
                 titulo = 'SELECCIONE LOTE',
                 cabeceras = ('ID', 'Número', 'Código', 'Tenacidad', 
                              'Elongación', 'Humedad', 'Encogimiento'), 
                 padre = self.wids['ventana'])
             if idloteCem < 0:
                 return
             loteCem = pclases.LoteCem.get(idloteCem)
         else:
             loteCem = loteCems[0]
         if len(loteCem.bigbags) == 0:
             utils.dialogo_info(titulo = 'LOTE VACÍO', 
                 texto = 'El lote de cemento no contiene bigbags, no '
                         'puede\nrealizar pruebas sobre un lote vacío.', 
                 padre = self.wids['ventana'])
             self.loteCem = None
             return
         self.loteCem = loteCem
         self.actualizar_ventana()