我用数据库中的数据在excel中填写了电子表格,但列标题没有出现。我尝试了一些选项,但无法将其添加到电子表格中。有人知道如何从数据库表中获取数据来实现这一点吗?我只是使用pandas和手动输入的数据找到它
def gerarRelatorio(self):
try:
banco.conecta()
cursor = banco.conexao.cursor()
query = """SELECT E.CODBARRA, E.PRODUTO,
C.CATEGORIA, printf("%.2f",E.ESTOQUE) AS "ESTOQUE",
printf("%.2f",E.ESTOQUE_MIN) AS "ESTOQUE MINIMO", printf("%.2f",E.VALOR_CUSTO) AS "VALOR CUSTO",
printf("%.2f",E.VALOR_VENDA) AS "VALOR VENDA", printf("%.2f",E.ESTOQUE*E.VALOR_CUSTO) AS "TOTAL MERCADORIA",
printf("%.2f",E.VALOR_VENDA-E.VALOR_CUSTO) AS "LUCRO UNID.", printf("%.2f",(E.VALOR_VENDA-E.VALOR_CUSTO)*E.ESTOQUE) AS "LUCRO TOTAL",
F.FORNECEDOR
FROM ESTOQUE E
INNER JOIN FORNECEDOR F
ON E.ID_FORNECEDOR = F.IDFORNECEDOR
INNER JOIN CATEGORIA C
ON E.ID_CATEGORIA = C.IDCATEGORIA
ORDER BY E.PRODUTO"""
workbook = Workbook('Estoque.xlsx')
worksheet = workbook.add_worksheet()
bold = workbook.add_format ({'bold': True})
worksheet.write ( 'A1', 'CODBARRA', bold )
worksheet.write ( 'B1', 'PRODUTO', bold )
worksheet.write ( 'C1', 'CATEGORIA', bold )
worksheet.write ( 'D1', 'ESTOQUE', bold )
worksheet.write ( 'E1', 'ESTOQUE MIN', bold )
worksheet.write ( 'F1', 'VALOR CUSTO', bold )
worksheet.write ( 'G1', 'VALOR VENDA', bold )
worksheet.write ( 'H1', 'VALOR CUSTO TOTAL', bold )
worksheet.write ( 'I1', 'LUCRO UNITÁRIO', bold )
worksheet.write ( 'J1', 'LUCRO TOTAL', bold )
worksheet.write ( 'K1', 'FORNECEDOR', bold )
result = cursor.execute(query)
for row, rows in enumerate(result):
for c, value in enumerate(rows):
worksheet.write(row, c, value)
row = 1
workbook.close()
但结果是:
目前没有回答
相关问题 更多 >
编程相关推荐