Skip to content

Projeto de automação de processos "no computador" facilitando tarefas diárias e rotineiras com Python.

Notifications You must be signed in to change notification settings

dev-daniel-amorim/Automacao_de_processos-OnePage

Repository files navigation

Automação de processos - OnePage

  • Neste projeto iremos realizar análise de dados com pandas e automação de processos para executar tarefas rotineiras, ainda criaremos um app em produção com auxilio da biblioteca Tkinter do Python.

Entendimento do negócio

  • Imagine que voçê é analista de dados de uma empresa que tem 25 filiais espalhadas em todo o Brasil, todos os dias voçê tem que enviar relatórios por e-mail (One Page) para cada gerente de loja e para a diretoria, esse relatório deve conter todo o resumo em uma página (por isso o nome One Page) informando os indicadores e enviando uma planilha com resumo diário de movimentações financeiras.
    Devemos também manter um backup diário com histórico de vendas de todas as lojas organizados por dia.

Indicadores OnePage

  • Faturamento;
  • Diversidade de produtos (quantos produtos diferentes foram vendidos naquele período);
  • Ticket médio por venda.

Metas

  • Faturamento por dia = 1000;
  • Faturamento por ano = 1650000;
  • Quantidade de vendas de produtos por dia = 4;
  • Quantidade de vendas de produtos por ano = 120;
  • Ticket médio por dia = 500;
  • Ticket médio por ano = 500.

Configurações importantes do projeto

Configurando email outlook

Os emails deste projeto serão enviados via "outlook" abaixo a configuração para envio:

import win32com.client as win32
outlook = win32.Dispatch('outlook.application')

mail = outlook.CreateItem(0)
mail.To = 'dev.daniel.amorim@gmail.com'
# Com copia? (não obrigatório)
mail.CC = 'email@gmail.com'
# Com copia oculta? (não obrigatório)
mail.BCC = 'email@gmail.com'
mail.Subject = 'Email vindo do outlook'
mail.Body = 'texto do email'
# ou mail.HTML.Body = '<p>email em HTML</p>'

# Anexos (pode ser quantos quiser):
attachment = "caminho do arquivo"
mail.Attachments.Add(attachment)
# Envia o email
mail.Send()

Dica interessante:

Um e-mail pode ser enviado em formato HTML, caso queira enviar uma tabela no corpo do e-mail, basta
pra isso transformar a tabela em HTML da seguinte maneira:

mail.HTMLBody = f'''
Bom dia,
Segue a tabela de pesquisa de preços!
{tabela.to_html(index=False)} #index false exclui a coluna de index
'''

Modelo em produção

Abaixo a imagem do modelo em produção de disparo de e-mails:

  • ENVIAR PARA LOJA: Ao digitar no input o nome da loja dispara e-mail somente para a loja específica;
  • ENVIAR PARA TODAS AS LOJAS: Envia para todas as lojas cadastradas de uma vez;
  • ENVIAR PARA DIRETORIA: Envia e-mails com resumo das lojas somente para diretoria.

Modelo em produção:

Captura de tela_20230102_153601

E-mails enviados:

Segue abaixo os exemplos de e-mails enviados:

E-mail para loja:

Captura de tela_20230102_153006

E-mail para diretoria:

Captura de tela_20230102_152911


<< Voltar

About

Projeto de automação de processos "no computador" facilitando tarefas diárias e rotineiras com Python.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published