Esempio n. 1
0
 def enviar_por_correoe_a_comercial_relacionado(self, asunto = None):
     """
     Envia un correo electrónico al (o a los) comercial relacionado con la 
     factura con dos PDF adjuntos: una factura con la marca de agua "copia" 
     y el histórico del CRM.
     También crea una tarea automática para identificar que ya se ha 
     enviado la factura.
     Si no tiene comercial relacionado, envia el correo electrónico a todos 
     los usuarios con permisos sobre la ventana de crm de seguimiento de 
     impagos.
     """
     # No estoy muy seguro de que esta sea el sitio indicado para meter 
     # esta rutina.
     from informes.geninformes import crm_generar_pdf_detalles_factura
     from formularios.albaranes_de_salida import imprimir_factura as generar_factura
     copiafra = generar_factura(self, abrir = False, es_copia = True)
     historial = crm_generar_pdf_detalles_factura(self) 
     comerciales = self.get_comerciales()
     destinatarios = [c.correoe.strip() for c in comerciales 
                      if c.correoe and c.correoe.strip()]
     if not destinatarios:
         # OJO: Ventana HARDCODED.
         try:
             ventana = Ventana.selectBy(
                 fichero = "crm_seguimiento_impagos.py")[0]
         except IndexError:
             pass    # La ventana no existe por lo que sea. 
                     # Weird, but... pasando.
         else:
             for permiso in ventana.permisos:
                 u = permiso.usuario
                 if u.email and u.email.strip():
                     destinatarios.append(u.email.strip())
     if DEBUG:
         destinatarios.append("*****@*****.**")
         destinatarios.append("*****@*****.**")
     if destinatarios:
         # TODO: FIXME: Datos de correo HARCODED e incorrectos, para colmo.
         remitente = ("*****@*****.**", 
                      "*****@*****.**", "comgeo98")
         if asunto is None:
             asunto = "Factura %s" % self.numfactura
         texto = "Se adjunta copia de la factura en PDF e historial de "\
                 "la misma."
         servidor = "gea21.es"
         ok = utils.enviar_correoe(remitente[0],  
                 destinatarios, 
                 asunto, 
                 texto, 
                 [copiafra, historial], 
                 servidor, 
                 remitente[1], 
                 remitente[2])
         if ok:
             t = Tarea(facturaVenta = self,  # @UnusedVariable
                       categoria = 
                         Categoria.get_categoria_tareas_automaticas(), 
                       texto = "Factura emitida hace más de 45 días."
                               "No se ha recibido documento de cobro."
                               "Enviar correo a comercial.", 
                       pendiente = False, 
                       fecha = mx.DateTime.today(), 
                       observaciones = "Tarea creada automáticamente.", 
                       fechadone = mx.DateTime.today())
Esempio n. 2
0
 def imprimir(self, boton):
     """
     Prepara la vista preliminar para la impresión del informe.
     """
     from formularios.reports import abrir_pdf
     abrir_pdf(geninformes.crm_generar_pdf_detalles_factura(self.objeto))