Example #1
0
 def generar_etiquetas(self, balas):
     """
     Genera una lista de diccionarios con los datos de las balas 
     para generar sus etiquetas.
     """
     from listado_balas import preparar_datos_etiquetas_balas_cable
     data = preparar_datos_etiquetas_balas_cable(balas)
     if data:
         import informes
         informes.abrir_pdf(geninformes.etiquetasBalasCableEtiquetadora(data))
Example #2
0
 def etiquetar(self, boton):
     """
     Genera el PDF de las etiquetas seleccionadas en el TreeView.
     Para poder imprimir es necesario que el usuario tenga el permiso 
     "escritura" sobre la ventana.
     """
     # TODO: Falta adaptar esto a cajas. Para palés ya está. 
     ventana = pclases.Ventana.select(               # OJO: HARCODED
                 pclases.Ventana.q.fichero == "listado_balas.py")[0]
     if (self.usuario == None 
         or self.usuario.get_permiso(ventana).escritura): 
         sel = self.wids['tv_balas'].get_selection()
         model, paths = sel.get_selected_rows()
         balas_defecto = []
         for path in paths: 
             balas_defecto.append(model[path][0])
             balas_defecto.sort()
         balas_defecto = ', '.join(balas_defecto)
         import informes
         entrada = utils.dialogo_entrada(titulo='ETIQUETAS', 
                     texto="Introduzca los números de bala o bigbags que "
                           "desea etiquetar separados por coma o espacio."
                           "\nUse guiones para especificar rangos.)",
                     valor_por_defecto = balas_defecto,
                     padre = self.wids['ventana'])
         if entrada != None:
             entrada = entrada.replace(",", " ")
             codigos = [c for c in entrada.split() if c.strip() != ""]
             balas, bigbags, balas_cable, pales = separar_balas_y_bigbags_from_codigos(codigos)
             etiqsbalas = preparar_datos_etiquetas_balas(balas)
             etiqsbalascable = preparar_datos_etiquetas_balas_cable(balas_cable)
             if etiqsbalas:
                 etpdf = geninformes.etiquetasBalasEtiquetadora(etiqsbalas)
                 informes.abrir_pdf(etpdf)
             if bigbags:
                 etpdf = geninformes.etiquetasBigbags(bigbags)
                 informes.abrir_pdf(etpdf)
             if balas_cable:
                 etpdf = geninformes.etiquetasBalasCableEtiquetadora(
                             etiqsbalascable)
                 informes.abrir_pdf(etpdf)
             if pales:
                 from partes_de_fabricacion_bolsas import imprimir_etiquetas_pales
                 imprimir_etiquetas_pales(pales, self.wids['ventana'], mostrar_dialogo = True)
     else:
         utils.dialogo_info(titulo = "USUARIO SIN PRIVILEGIOS", 
             texto = "Para poder crear etiquetas de balas existentes es ne"\
                     "cesario\nque tenga permiso de escritura sobre la ven"\
                     "tana actual.", 
             padre = self.wids['ventana'])