def generatePDF(self, contenido): hoy = str(datetime.datetime.now().year) + str( datetime.datetime.now().month) + str( datetime.datetime.now().day) + str( datetime.datetime.now().hour) + str( datetime.datetime.now().minute) + str( datetime.datetime.now().second) nombrePdf = '../archivos/' + str(hoy + 'LIST') + '.pdf' fecha = str(datetime.datetime.now()) html = """ <table width="600"> <tr width="600" color="#000000"> <td width="80%"> </td> <td width="20%" align="right"> <IMG SRC="kde1.png"> </td> </tr> </table> <hr> <br> <p> SALDOS </p> <br> """ + contenido doc = QTextDocument() doc.setHtml(html) printer = QPrinter() printer.setOutputFileName(nombrePdf) printer.setOutputFormat(QPrinter.PdfFormat) doc.print(printer) printer.newPage() url = QUrl url = QUrl(nombrePdf) QDesktopServices.openUrl(url)
def generatePDF(self, contenido): hoy = str(datetime.datetime.now().year) + str(datetime.datetime.now().month) + str(datetime.datetime.now().day) + str(datetime.datetime.now().hour) + str(datetime.datetime.now().minute) + str(datetime.datetime.now().second) nombrePdf = '../archivos/' + str(hoy + 'LIST') + '.pdf' fecha = str(datetime.datetime.now()) html = """ <table width="600"> <tr width="600" color="#000000"> <td width="80%"> </td> <td width="20%" align="right"> <IMG SRC="kde1.png"> </td> </tr> </table> <hr> <br> <p> SALDOS </p> <br> """+ contenido doc = QTextDocument() doc.setHtml(html) printer = QPrinter() printer.setOutputFileName(nombrePdf) printer.setOutputFormat(QPrinter.PdfFormat) doc.print(printer) printer.newPage() url = QUrl url = QUrl(nombrePdf) QDesktopServices.openUrl(url)
def createFactura(self, listTransaccion, subNom, idRecibo): hoy = str(datetime.datetime.now().year) + str(datetime.datetime.now().month) + str(datetime.datetime.now().day) + str(datetime.datetime.now().hour) + str(datetime.datetime.now().minute) + str(datetime.datetime.now().second) nombrePdf = '../archivos/' + str(hoy + subNom) + '.pdf' listTransaccionTable = "" for transaccion in listTransaccion: listTransaccionTable += """ <tr height="80"> <td width="10%" align="center" > <br>""" + str(transaccion[1]) + """<br> </td> <td width="20%" > <br> """ + str(transaccion[3]) + """<br> </td> <td width="50%" > <br> """ + str(transaccion[4]) + """<br> </td> <td width="10%" align="right" > <br> $ """ + str(transaccion[5]) + """ <br> </td> <td width="10%" align="right" > <br> $ """ + str( int(transaccion[1]) * float(transaccion[5])) + """ <br> </td> </tr> """ nombre = "" apellido = "" if(self.tipoTransaccion == "VENTA"): nombre = self.cliente.getNombre() apellido = self.cliente.getApellido() elif(self.tipoTransaccion == "COMPRA"): nombre = self.proveedor.getNombre() apellido = self.proveedor.getDescripcion() total = self.winPrincipal.lblTotal.text() fecha = str(datetime.datetime.now()) html = """ <table width="600"> <tr width="600" color="#000000"> <td width="80%"> Perfumeria La que vende perfumes <br> LABOULAYE, CORDOBA, ARGENTINA <br> TEL: 0351-111111 <br> MAIL: [email protected] <br> </td> <td width="20%" align="right"> <IMG SRC="kde1.png"> </td> </tr> </table> _______________________________________________________________________________________________________ <p> DATOS DEL CLIENTE: </p> <br> <table> <tr> <td> NOMBRE: """+ nombre +""" <br> APELLIDO: """ + apellido + """ <br> </td> <td> </td> </tr> </table> <br> _______________________________________________________________________________________________________ <br> <p> DETALLES DE LA COMPRA: </p> <br> <table width="600" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> <tr style=" background-color: gray; border-style: inset;"> <td width="10%" align="center" valign="middle"> <b> CANT </b> </td> <td width="20%" align="center" valign="middle"> <b> PRODUCTO </b> </td> <td width="50%" align="center" valign="middle"> <b> DESCRIPCION </b> </td> <td width="10%" align="center" valign="middle"> <b> PREC <br>UNIT </b> </td> <td width="10%" align="center" valign="middle"> <b> PREC <br>TOT </b> </td> </tr> </table> <br> <br> <br> <br> <table height="350" width="600" style="border-color: gray; border-width: .4px; border-collapse: collapse;"> """ + listTransaccionTable + """ </table> <br> <br> <table width="600" border="0.5" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> <tr > <td width="90%" align="right"> <br> TOTAL.................................................................................................................. <br> </td> <td width="10%" align="center"> <br> $ """ + total + """<br> </td> </tr> </table> <br> <br> <br> <p width="600" align="center" style=" font-size: 10; " > Por cualquier consulta, sobre este recibo, dirigirse al local que se encuentra ubicado en la calle independencia 450. <br> O Comunicarse a los telefonos 03382-123123123 / 4231231 </p> <br> <br> <br> <br> <br> _______________________________________________________________________________________________________ <br> <table width="600"> <tr> <td align="right" width="80%"> FECHA/HORA : """+ fecha + """ </td> <td align="right"> N° : """+ str(idRecibo) +""" </td> </tr> </table> _______________________________________________________________________________________________________ """ doc = QTextDocument() doc.setHtml(html) #doc.setDefaultStyleSheet(style) printer = QPrinter() printer.setOutputFileName(nombrePdf) printer.setOutputFormat(QPrinter.PdfFormat) doc.print(printer) printer.newPage() url = QUrl url = QUrl(nombrePdf) QDesktopServices.openUrl(url) """
def generateList(self): hoy = str(datetime.datetime.now().year) + str( datetime.datetime.now().month) + str( datetime.datetime.now().day) + str( datetime.datetime.now().hour) + str( datetime.datetime.now().minute) + str( datetime.datetime.now().second) nombrePdf = '../archivos/' + str(hoy + 'LIST') + '.pdf' listTable = "" for lista in self.listProducto: listTable += """ <tr height="80"> <td width="60%" align="left" > <br>""" + str(lista[1]) + """<br> </td> <td width="20%" align="center"> <br> """ + str( lista[3]) + """<br> </td> <td width="20%" align="center"> <br> """ + str( lista[2]) + """<br> </td> </tr> """ fecha = str(datetime.datetime.now()) html = """ <table width="600"> <tr width="600" color="#000000"> <td width="80%"> </td> <td width="20%" align="right"> <IMG SRC="kde1.png"> </td> </tr> </table> <hr> <br> <p> LISTADO DE PRODUCTOS SIN STOCK : </p> <br> <table width="600" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> <tr style=" background-color: gray; border-style: inset;"> <td width="60%" align="center" valign="middle"> <b> PRODUCTOS </b> </td> <td width="20%" align="center" valign="middle"> <b> CANTIDAD MINIMA </b> </td> <td width="20%" align="center" valign="middle"> <b> CANTIDAD </b> </td> </tr> </table> <br> <br> <table width="600" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> """ + listTable + """ </table> <br> <br> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <br> <hr> <br> <table width="600"> <tr> <td align="right" width="100%"> FECHA/HORA : """ + fecha + """ </td> </tr> </table> <hr> """ doc = QTextDocument() doc.setHtml(html) printer = QPrinter() printer.setOutputFileName(nombrePdf) printer.setOutputFormat(QPrinter.PdfFormat) doc.print(printer) printer.newPage() url = QUrl url = QUrl(nombrePdf) QDesktopServices.openUrl(url)
def generarRecibo(self, listDetail, subName, id, header): """ @param listDetail: lista de detalles @param subName: Sub-nombre para generar el PDF @param id: Id del recibo """ self.nombrePdf = '../archivos/' + str(self.hoy + subName) + '.pdf' listDetalHtml = self.generateTableTransaction(listDetail, header) nombre = "" apellido = "" if (self.tipoTransaccion == "VENTA"): nombre = self.cliente.getNombre() apellido = self.cliente.getApellido() elif (self.tipoTransaccion == "COMPRA"): nombre = self.proveedor.getNombre() apellido = self.proveedor.getDescripcion() total = self.winPrincipal.lblTotal.text() fecha = str(datetime.datetime.now()) html = """ <table width="600"> <tr width="600" color="#000000"> <td width="80%"> Perfumeria La que vende perfumes <br> LABOULAYE, CORDOBA, ARGENTINA <br> TEL: 0351-111111 <br> MAIL: [email protected] <br> </td> <td width="20%" align="right"> <IMG SRC="kde1.png"> </td> </tr> </table> _______________________________________________________________________________________________________ <p> DATOS DEL CLIENTE: </p> <br> <table> <tr> <td> NOMBRE: """ + nombre + """ <br> APELLIDO: """ + apellido + """ <br> </td> <td> </td> </tr> </table> <br> _______________________________________________________________________________________________________ <br> <p> DETALLES DE LA COMPRA: </p> <br> <table width="600" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> <tr style=" background-color: gray; border-style: inset;"> <td width="10%" align="center" valign="middle"> <b> CANT </b> </td> <td width="20%" align="center" valign="middle"> <b> PRODUCTO </b> </td> <td width="50%" align="center" valign="middle"> <b> DESCRIPCION </b> </td> <td width="10%" align="center" valign="middle"> <b> PREC <br>UNIT </b> </td> <td width="10%" align="center" valign="middle"> <b> PREC <br>TOT </b> </td> </tr> </table> <br> <br> <br> <br> <table height="350" width="600" style="border-color: gray; border-width: .4px; border-collapse: collapse;"> """ + listTransaccionTable + """ </table> <br> <br> <table width="600" border="0.5" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> <tr > <td width="90%" align="right"> <br> TOTAL.................................................................................................................. <br> </td> <td width="10%" align="center"> <br> $ """ + total + """<br> </td> </tr> </table> <br> <br> <br> <p width="600" align="center" style=" font-size: 10; " > Por cualquier consulta, sobre este recibo, dirigirse al local que se encuentra ubicado en la calle independencia 450. <br> O Comunicarse a los telefonos 03382-123123123 / 4231231 </p> <br> <br> <br> <br> <br> _______________________________________________________________________________________________________ <br> <table width="600"> <tr> <td align="right" width="80%"> FECHA/HORA : """ + fecha + """ </td> <td align="right"> N° : """ + str(idRecibo) + """ </td> </tr> </table> _______________________________________________________________________________________________________ """ doc = QTextDocument() doc.setHtml(html) #doc.setDefaultStyleSheet(style) printer = QPrinter() printer.setOutputFileName(nombrePdf) printer.setOutputFormat(QPrinter.PdfFormat) doc.print(printer) printer.newPage() url = QUrl url = QUrl(nombrePdf) QDesktopServices.openUrl(url)
def createList(self): hoy = str(datetime.datetime.now().year) + str(datetime.datetime.now().month) + str(datetime.datetime.now().day) + str(datetime.datetime.now().hour) + str(datetime.datetime.now().minute) + str(datetime.datetime.now().second) nombrePdf = '../archivos/' + str(hoy + 'LIST') + '.pdf' listTable = "" for lista in self.listFinal: listTable += """ <tr height="80"> <td width="40%" align="center" > <br>""" + str(lista[0]) + """<br> </td> <td width="40%" > <br> """ + str(lista[1]) + """<br> </td> <td width="20%" > <br> """ + str(lista[2]) + """<br> </td> </tr> """ subtitle = "Listado de clientes con deudas : " if self.type == 'PROV': subtitle = "Listado de deudas a proveedores : " fecha = str(datetime.datetime.now()) html = """ <table width="600"> <tr width="600" color="#000000"> <td width="80%"> </td> <td width="20%" align="right"> <IMG SRC="kde1.png"> </td> </tr> </table> <hr> <br> <p> """+ subtitle + """ </p> <br> <table width="600" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> <tr style=" background-color: gray; border-style: inset;"> <td width="40%" align="center" valign="middle"> <b> APELLIDO </b> </td> <td width="40%" align="center" valign="middle"> <b> NOMBRE </b> </td> <td width="20%" align="center" valign="middle"> <b> DEUDA </b> </td> </tr> </table> <br> <br> <table width="600" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> """ + listTable + """ </table> <br> <br> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <br> <hr> <br> <table width="600"> <tr> <td align="right" width="100%"> FECHA/HORA : """+ fecha + """ </td> </tr> </table> <hr> """ doc = QTextDocument() doc.setHtml(html) printer = QPrinter() printer.setOutputFileName(nombrePdf) printer.setOutputFormat(QPrinter.PdfFormat) doc.print(printer) printer.newPage() url = QUrl url = QUrl(nombrePdf) QDesktopServices.openUrl(url)
def generateList(self): hoy = str(datetime.datetime.now().year) + str(datetime.datetime.now().month) + str(datetime.datetime.now().day) + str(datetime.datetime.now().hour) + str(datetime.datetime.now().minute) + str(datetime.datetime.now().second) nombrePdf = '../archivos/' + str(hoy + 'LIST') + '.pdf' listTable = "" for lista in self.listProducto: listTable += """ <tr height="80"> <td width="60%" align="left" > <br>""" + str(lista[1]) + """<br> </td> <td width="20%" align="center"> <br> """ + str(lista[3]) + """<br> </td> <td width="20%" align="center"> <br> """ + str(lista[2]) + """<br> </td> </tr> """ fecha = str(datetime.datetime.now()) html = """ <table width="600"> <tr width="600" color="#000000"> <td width="80%"> </td> <td width="20%" align="right"> <IMG SRC="kde1.png"> </td> </tr> </table> <hr> <br> <p> LISTADO DE PRODUCTOS SIN STOCK : </p> <br> <table width="600" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> <tr style=" background-color: gray; border-style: inset;"> <td width="60%" align="center" valign="middle"> <b> PRODUCTOS </b> </td> <td width="20%" align="center" valign="middle"> <b> CANTIDAD MINIMA </b> </td> <td width="20%" align="center" valign="middle"> <b> CANTIDAD </b> </td> </tr> </table> <br> <br> <table width="600" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> """ + listTable + """ </table> <br> <br> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br><br> <br> <hr> <br> <table width="600"> <tr> <td align="right" width="100%"> FECHA/HORA : """+ fecha + """ </td> </tr> </table> <hr> """ doc = QTextDocument() doc.setHtml(html) printer = QPrinter() printer.setOutputFileName(nombrePdf) printer.setOutputFormat(QPrinter.PdfFormat) doc.print(printer) printer.newPage() url = QUrl url = QUrl(nombrePdf) QDesktopServices.openUrl(url)
def createRecibo(self, subNom, idRecibo, total, totDeuda, totPago): hoy = str(datetime.datetime.now().year) + str( datetime.datetime.now().month) + str( datetime.datetime.now().day) + str( datetime.datetime.now().hour) + str( datetime.datetime.now().minute) + str( datetime.datetime.now().second) nombrePdf = '../archivos/' + str(hoy + subNom) + '.pdf' listTransaccionTable = "" nombre = "" apellido = "" if (self.state == "COBRANZA"): nombre = self.cliente.getNombre() apellido = self.cliente.getApellido() elif (self.state == "PAGO"): nombre = self.proveedor.getNombre() apellido = self.proveedor.getDescripcion() totalDeuda = float(totDeuda) deudaString = "$ " + "{0:.2f}".format(totalDeuda) totalPago = float(totPago) pagoString = "$ +" + "{0:.2f}".format(totalPago) total = float(totalDeuda + totalPago) totalString = "{0:.2f}".format(total) fecha = str(datetime.datetime.now()) html = """ <table width="600"> <tr width="600" color="#000000"> <td width="80%"> Perfumeria La que vende perfumes <br> LABOULAYE, CORDOBA, ARGENTINA <br> TEL: 0351-111111 <br> MAIL: [email protected] <br> </td> <td width="20%" align="right"> <IMG SRC="kde1.png"> </td> </tr> </table> _______________________________________________________________________________________________________ <p> DATOS DEL CLIENTE: </p> <br> <table> <tr> <td> NOMBRE: """ + nombre + """ <br> APELLIDO: """ + apellido + """ <br> </td> <td> </td> </tr> </table> <br> _______________________________________________________________________________________________________ <br> <p> DETALLES DEL RECIBO: </p> <br> <table width="600" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> <tr style=" background-color: gray; border-style: inset;"> <td width="80%" align="center" valign="middle"> <b> DESCRIPCION </b> </td> <td width="20%" align="center" valign="middle"> <b> MONTO </b> </td> </tr> </table> <br> <br> <br> <br> <table height="350" width="600" style="border-color: gray; border-width: .4px; border-collapse: collapse;"> <tr height="80"> <td width="80%" align="left" > <br>DEUDA <br> </td> <td width="20%" > <br> """ + str( deudaString) + """<br> </td> </tr> <tr height="80"> <td width="80%" align="left" > <br> PAGO<br> </td> <td width="20%" > <br> """ + str( pagoString) + """<br> </td> </tr> </table> <br> <br> <table width="600" border="0.5" height="0" style="border-color: black; border-width: 0.5px; border-spacing: 0;"> <tr > <td width="90%" align="right"> <br> TOTAL.................................................................................................................. <br> </td> <td width="10%" align="center"> <br> $ """ + str(totalString) + """<br> </td> </tr> </table> <br> <br> <br> <br> <br> <br> <p width="600" align="center" style=" font-size: 10; " > Por cualquier consulta, sobre este recibo, dirigirse al local que se encuentra ubicado en la calle independencia 450. <br> O Comunicarse a los telefonos 03382-123123123 / 4231231 </p> <br> <br> <br> <br> <br> _______________________________________________________________________________________________________ <br> <table width="600"> <tr> <td align="right" width="80%"> FECHA/HORA : """ + fecha + """ </td> <td align="right"> N° : """ + str(idRecibo) + """ </td> </tr> </table> _______________________________________________________________________________________________________ """ doc = QTextDocument() doc.setHtml(html) printer = QPrinter() printer.setOutputFileName(nombrePdf) printer.setOutputFormat(QPrinter.PdfFormat) doc.print(printer) printer.newPage() url = QUrl url = QUrl(nombrePdf) QDesktopServices.openUrl(url)