From 3e269dde253f5e191bcf21daa862e654ae420f5e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Bruno=20Rigueti=20Brand=C3=A3o?=
<44707636+rigueti-bruno@users.noreply.github.com>
Date: Mon, 29 Apr 2024 12:41:26 -0300
Subject: [PATCH] Notebook com ETL de Dados
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
Extração de Dados de uma base SQL Server, tratamento dos dados via script em Python e carregamento dos Dados Tratados em uma nova base MySQL.
---
ETL_Dados.ipynb | 1737 +++++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 1737 insertions(+)
create mode 100644 ETL_Dados.ipynb
diff --git a/ETL_Dados.ipynb b/ETL_Dados.ipynb
new file mode 100644
index 0000000..b7493ae
--- /dev/null
+++ b/ETL_Dados.ipynb
@@ -0,0 +1,1737 @@
+{
+ "cells": [
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "0 - Bibliotecas"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 67,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "import pandas as pd\n",
+ "import sqlalchemy as sq\n",
+ "from sqlalchemy import text\n",
+ "import pyodbc as po\n",
+ "import pymysql as pm\n"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "1 - Acesso à Base de Dados"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 68,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stderr",
+ "output_type": "stream",
+ "text": [
+ "<>:1: SyntaxWarning: invalid escape sequence '\\S'\n",
+ "<>:1: SyntaxWarning: invalid escape sequence '\\S'\n",
+ "C:\\Users\\Controladoria\\AppData\\Local\\Temp\\ipykernel_8712\\1996456862.py:1: SyntaxWarning: invalid escape sequence '\\S'\n",
+ " SERVER = 'CONTROLADORIA\\SQLEXPRESS'\n"
+ ]
+ }
+ ],
+ "source": [
+ "SERVER = 'CONTROLADORIA\\SQLEXPRESS'\n",
+ "DATABASE = 'Service'\n",
+ "DRIVER = 'SQL Server Native Client 11.0'\n",
+ "USERNAME = ''\n",
+ "PASSWORD = ''\n",
+ "DATABASE_CONNECTION = f'mssql://{USERNAME}:{PASSWORD}@{SERVER}/{DATABASE}?driver={DRIVER}'\n",
+ "\n",
+ "engine = sq.create_engine(DATABASE_CONNECTION)\n",
+ "connection = engine.connect()"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "2 - Acesso às Tabelas"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 69,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "ContasPagar = pd.read_sql_query('SELECT * FROM [Service].[dbo].[ContasPagar] where ValorDuplicata > 0 and Pago = 0',connection)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 70,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "ContasPagas = pd.read_sql_query('SELECT * FROM [Service].[dbo].[ContasPagar] where Pago = 1',connection)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 71,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "ContasReceber = pd.read_sql_query('SELECT * FROM [Service].[dbo].[ContasReceber] where Pago = 0',connection)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 72,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "ContasRecebidas = pd.read_sql_query('SELECT * FROM [Service].[dbo].[ContasReceber] where Pago = 1',connection)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 73,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Clientes = pd.read_sql_query(\"SELECT * FROM [Service].[dbo].[clientes] where tipo <> 'F'\",connection)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 74,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Fornecedores = pd.read_sql_query(\"SELECT * FROM [Service].[dbo].[clientes] where tipo = 'F'\",connection)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 75,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Rubricas = pd.read_excel('CentroResultados.xlsx')\n",
+ "Rubricas = Rubricas.query(\"ApuraResultado == True\")"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 76,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Classes = pd.read_csv('Classe.csv',sep=';')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 77,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Empresas = pd.read_csv('Empresas.csv',sep=';')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 78,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "PE = pd.read_csv('PontoEquilibrio.csv',sep=';')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 79,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Receita = pd.read_csv('Receita.csv',sep=';')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 80,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Gasto = pd.read_csv('Gasto.csv',sep=';')"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 81,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "NotasFiscais = pd.read_sql_query(\"SELECT * FROM [Service].[dbo].[NotasFiscaisSaída] where Status <> 'C'\",connection)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "3 - Extração dos Dados"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 82,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "APagar = ContasPagar.filter(['CodInterno','Empresa','CentroResultados','Fornecedor','DataEmissão','Vencimento','ValorDuplicata'])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 83,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Pagos = ContasPagas.filter(['CodInterno','Empresa','CentroResultados','Fornecedor','DataEmissão','Vencimento','DataPagamento','ValorDuplicata'])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 84,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "AReceber = ContasReceber.filter(['CodInterno','Empresa','CentroResultados','Cliente','DataEmissão','Vencimento','ValorDuplicata'])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 85,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Recebido = ContasRecebidas.filter(['CodInterno','Empresa','CentroResultados','Cliente','DataEmissão','Vencimento','DataPagamento','ValorDuplicata'])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 86,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Cliente = Clientes.filter(['CodCliente','CentroResultados','Nome'])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 87,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Fornecedor = Fornecedores.filter(['CodCliente','Nome'])"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 88,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Faturamento = NotasFiscais.filter(['CodInterno','Empresa','Cliente','DataEmissão','ValorNota'])"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "4 - Ajustes"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "4.1 - Renomear Colunas:"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 89,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "APagar = APagar.rename(columns={'CentroResultados':'CodGasto','Fornecedor':'CodFornecedor','DataEmissão':'Emissao'})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 90,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Pagos = Pagos.rename(columns={'CentroResultados':'CodGasto','Fornecedor':'CodFornecedor','DataEmissão':'Emissao'})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 91,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "AReceber = AReceber.rename(columns={'CentroResultados':'CodReceita','Cliente':'CodCliente','DataEmissão':'Emissao'})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 92,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Recebido = Recebido.rename(columns={'CentroResultados':'CodReceita','Cliente':'CodCliente','DataEmissão':'Emissao'})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 93,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Faturamento = Faturamento.rename(columns={'Cliente':'CodCliente','DataEmissão':'Emissao'})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 94,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Cliente = Cliente.rename(columns={'CentroResultados':'CodReceita','Nome':\"Cliente\"})"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 95,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Fornecedor = Fornecedor.rename(columns={'CodCliente':'CodFornecedor','Nome':\"Fornecedor\"})"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "4.2 - Corrigir Tipos de Dados"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 96,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno float64\n",
+ "Empresa object\n",
+ "CodGasto float64\n",
+ "CodFornecedor float64\n",
+ "Emissao datetime64[ns]\n",
+ "Vencimento datetime64[ns]\n",
+ "ValorDuplicata float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 96,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "APagar.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 97,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno int64\n",
+ "Empresa int64\n",
+ "CodGasto int64\n",
+ "CodFornecedor int64\n",
+ "Emissao datetime64[ns]\n",
+ "Vencimento datetime64[ns]\n",
+ "ValorDuplicata float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 97,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "APagar = APagar.astype({'CodInterno':'int64','Empresa':'int64','CodGasto':'int64','CodFornecedor':'int64','Emissao':'datetime64[ns]','Vencimento':'datetime64[ns]','ValorDuplicata':'float64'})\n",
+ "APagar.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 98,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno float64\n",
+ "Empresa object\n",
+ "CodGasto float64\n",
+ "CodFornecedor float64\n",
+ "Emissao datetime64[ns]\n",
+ "Vencimento datetime64[ns]\n",
+ "DataPagamento datetime64[ns]\n",
+ "ValorDuplicata float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 98,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Pagos.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 99,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno int64\n",
+ "Empresa int64\n",
+ "CodGasto int64\n",
+ "CodFornecedor int64\n",
+ "Emissao datetime64[ns]\n",
+ "Vencimento datetime64[ns]\n",
+ "DataPagamento datetime64[ns]\n",
+ "ValorDuplicata float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 99,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Pagos = Pagos.astype({'CodInterno':'int64','Empresa':'int64','CodGasto':'int64','CodFornecedor':'int64','Emissao':'datetime64[ns]','Vencimento':'datetime64[ns]','DataPagamento':'datetime64[ns]','ValorDuplicata':'float64'})\n",
+ "Pagos.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 100,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno float64\n",
+ "Empresa object\n",
+ "CodReceita float64\n",
+ "CodCliente float64\n",
+ "Emissao datetime64[ns]\n",
+ "Vencimento datetime64[ns]\n",
+ "ValorDuplicata float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 100,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "AReceber.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 101,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno int64\n",
+ "Empresa int64\n",
+ "CodReceita int64\n",
+ "CodCliente int64\n",
+ "Emissao datetime64[ns]\n",
+ "Vencimento datetime64[ns]\n",
+ "ValorDuplicata float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 101,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "AReceber = AReceber.astype({'CodInterno':'int64','Empresa':'int64','CodReceita':'int64','CodCliente':'int64','Emissao':'datetime64[ns]','Vencimento':'datetime64[ns]','ValorDuplicata':'float64'})\n",
+ "AReceber.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 102,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno float64\n",
+ "Empresa object\n",
+ "CodReceita float64\n",
+ "CodCliente float64\n",
+ "Emissao datetime64[ns]\n",
+ "Vencimento datetime64[ns]\n",
+ "DataPagamento datetime64[ns]\n",
+ "ValorDuplicata float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 102,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Recebido.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 103,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno int64\n",
+ "Empresa int64\n",
+ "CodReceita int64\n",
+ "CodCliente int64\n",
+ "Emissao datetime64[ns]\n",
+ "Vencimento datetime64[ns]\n",
+ "DataPagamento datetime64[ns]\n",
+ "ValorDuplicata float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 103,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Recebido = Recebido.astype({'CodInterno':'int64','Empresa':'int64','CodReceita':'int64','CodCliente':'int64','Emissao':'datetime64[ns]','Vencimento':'datetime64[ns]','DataPagamento':'datetime64[ns]','ValorDuplicata':'float64'})\n",
+ "Recebido.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 104,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno float64\n",
+ "Empresa int64\n",
+ "CodCliente float64\n",
+ "Emissao datetime64[ns]\n",
+ "ValorNota float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 104,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Faturamento.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 105,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodInterno int64\n",
+ "Empresa int64\n",
+ "CodCliente int64\n",
+ "Emissao datetime64[ns]\n",
+ "ValorNota float64\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 105,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Faturamento = Faturamento.astype({'CodInterno':'int64','Empresa':'int64','CodCliente':'int64','Emissao':'datetime64[ns]','ValorNota':'float64'})\n",
+ "Faturamento.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 106,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "
\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CodCliente | \n",
+ " CodReceita | \n",
+ " Cliente | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " 35.0 | \n",
+ " 43.0 | \n",
+ " CONSUMIDOR ESPECIAL | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " 146.0 | \n",
+ " 43.0 | \n",
+ " BRAZ DA SILVA XIMENES | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " 147.0 | \n",
+ " 43.0 | \n",
+ " BRUNO ALMEIDA BASTOS DA SILVEIRA | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " 154.0 | \n",
+ " 43.0 | \n",
+ " CONDOMÍNIO RESIDENCIAL VIENA | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " 194.0 | \n",
+ " 43.0 | \n",
+ " LUKKENT TECHNOLOGIES LTDA EPP | \n",
+ "
\n",
+ " \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " 1505 | \n",
+ " 1369.0 | \n",
+ " 85.0 | \n",
+ " SINDICATO NACIONAL DOS OFICIAIS DA MARINHA MER... | \n",
+ "
\n",
+ " \n",
+ " 1506 | \n",
+ " 569.0 | \n",
+ " 43.0 | \n",
+ " MARTI DA SERRA COMERCIO E REPRESENTACOES LTDA | \n",
+ "
\n",
+ " \n",
+ " 1507 | \n",
+ " 1590.0 | \n",
+ " 16.0 | \n",
+ " ALEXANDRO CHERIGATI | \n",
+ "
\n",
+ " \n",
+ " 1508 | \n",
+ " 1134.0 | \n",
+ " 43.0 | \n",
+ " FERREIRA E BASTOS DISTRIBUIDORA LTDA | \n",
+ "
\n",
+ " \n",
+ " 1509 | \n",
+ " 1522.0 | \n",
+ " 93.0 | \n",
+ " G. CAMPOS PRUDENTE ROUPAS LTDA | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
1510 rows × 3 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CodCliente CodReceita \\\n",
+ "0 35.0 43.0 \n",
+ "1 146.0 43.0 \n",
+ "2 147.0 43.0 \n",
+ "3 154.0 43.0 \n",
+ "4 194.0 43.0 \n",
+ "... ... ... \n",
+ "1505 1369.0 85.0 \n",
+ "1506 569.0 43.0 \n",
+ "1507 1590.0 16.0 \n",
+ "1508 1134.0 43.0 \n",
+ "1509 1522.0 93.0 \n",
+ "\n",
+ " Cliente \n",
+ "0 CONSUMIDOR ESPECIAL \n",
+ "1 BRAZ DA SILVA XIMENES \n",
+ "2 BRUNO ALMEIDA BASTOS DA SILVEIRA \n",
+ "3 CONDOMÍNIO RESIDENCIAL VIENA \n",
+ "4 LUKKENT TECHNOLOGIES LTDA EPP \n",
+ "... ... \n",
+ "1505 SINDICATO NACIONAL DOS OFICIAIS DA MARINHA MER... \n",
+ "1506 MARTI DA SERRA COMERCIO E REPRESENTACOES LTDA \n",
+ "1507 ALEXANDRO CHERIGATI \n",
+ "1508 FERREIRA E BASTOS DISTRIBUIDORA LTDA \n",
+ "1509 G. CAMPOS PRUDENTE ROUPAS LTDA \n",
+ "\n",
+ "[1510 rows x 3 columns]"
+ ]
+ },
+ "execution_count": 106,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Cliente"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 107,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodCliente float64\n",
+ "CodReceita float64\n",
+ "Cliente object\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 107,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Cliente.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 108,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodCliente int64\n",
+ "CodReceita float64\n",
+ "Cliente object\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 108,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Cliente = Cliente.astype({'CodCliente':'int64','CodReceita':'float64','Cliente':'str'})\n",
+ "Cliente.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 109,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/plain": [
+ "CodFornecedor int64\n",
+ "Fornecedor object\n",
+ "dtype: object"
+ ]
+ },
+ "execution_count": 109,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Fornecedor = Fornecedor.astype({'CodFornecedor':'int64','Fornecedor':'str'})\n",
+ "Fornecedor.dtypes"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 110,
+ "metadata": {},
+ "outputs": [
+ {
+ "data": {
+ "text/html": [
+ "\n",
+ "\n",
+ "
\n",
+ " \n",
+ " \n",
+ " | \n",
+ " CodFornecedor | \n",
+ " Fornecedor | \n",
+ "
\n",
+ " \n",
+ " \n",
+ " \n",
+ " 0 | \n",
+ " 166 | \n",
+ " QTC BRASIL INDUSTRIA E BENEFICIAMENTO DE MATER... | \n",
+ "
\n",
+ " \n",
+ " 1 | \n",
+ " 169 | \n",
+ " INFOTEC COM. DE EQUIP. E SIST. DE SEGURANCA LTDA | \n",
+ "
\n",
+ " \n",
+ " 2 | \n",
+ " 176 | \n",
+ " SEGTEC DISTRIBUIDORA DE EQUIPAMENTOS DE SEGURA... | \n",
+ "
\n",
+ " \n",
+ " 3 | \n",
+ " 178 | \n",
+ " FUNDO DO REGIME GERAL DE PREVIDENCIA SOCIAL | \n",
+ "
\n",
+ " \n",
+ " 4 | \n",
+ " 181 | \n",
+ " BANCO PAN S.A. | \n",
+ "
\n",
+ " \n",
+ " ... | \n",
+ " ... | \n",
+ " ... | \n",
+ "
\n",
+ " \n",
+ " 601 | \n",
+ " 2264 | \n",
+ " JUNTA COMERCIAL DO ESTADO DO RIO DE JANEIRO - ... | \n",
+ "
\n",
+ " \n",
+ " 602 | \n",
+ " 1253 | \n",
+ " MUNICIPIO DE ITAPERUNA | \n",
+ "
\n",
+ " \n",
+ " 603 | \n",
+ " 285 | \n",
+ " MATHIAS NETTO E REZENDE UTILIDADES LTDA | \n",
+ "
\n",
+ " \n",
+ " 604 | \n",
+ " 100 | \n",
+ " NEOGUARD SEGURANCA ELETRONICA LTDA | \n",
+ "
\n",
+ " \n",
+ " 605 | \n",
+ " 866 | \n",
+ " MEGA LIDER INFORMATICA EIRELI | \n",
+ "
\n",
+ " \n",
+ "
\n",
+ "
606 rows × 2 columns
\n",
+ "
"
+ ],
+ "text/plain": [
+ " CodFornecedor Fornecedor\n",
+ "0 166 QTC BRASIL INDUSTRIA E BENEFICIAMENTO DE MATER...\n",
+ "1 169 INFOTEC COM. DE EQUIP. E SIST. DE SEGURANCA LTDA\n",
+ "2 176 SEGTEC DISTRIBUIDORA DE EQUIPAMENTOS DE SEGURA...\n",
+ "3 178 FUNDO DO REGIME GERAL DE PREVIDENCIA SOCIAL\n",
+ "4 181 BANCO PAN S.A.\n",
+ ".. ... ...\n",
+ "601 2264 JUNTA COMERCIAL DO ESTADO DO RIO DE JANEIRO - ...\n",
+ "602 1253 MUNICIPIO DE ITAPERUNA\n",
+ "603 285 MATHIAS NETTO E REZENDE UTILIDADES LTDA\n",
+ "604 100 NEOGUARD SEGURANCA ELETRONICA LTDA\n",
+ "605 866 MEGA LIDER INFORMATICA EIRELI\n",
+ "\n",
+ "[606 rows x 2 columns]"
+ ]
+ },
+ "execution_count": 110,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Fornecedor"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "4.3 - Ajustes nos Registros"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 111,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "emp1 = [43,47,35,7,19,93,22,17,16,8,166]\n",
+ "for x in emp1:\n",
+ " for i, row in Recebido.iterrows():\n",
+ " if row['CodReceita'] == x:\n",
+ " Recebido.loc[i,'Empresa'] = 1\n",
+ "\n",
+ "for x in emp1:\n",
+ " for i, row in AReceber.iterrows():\n",
+ " if row['CodReceita'] == x:\n",
+ " AReceber.loc[i,'Empresa'] = 1"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 112,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "for i, row in Recebido.iterrows():\n",
+ " if row['Empresa'] == 1001:\n",
+ " Recebido.loc[i,'Empresa'] = 1\n",
+ "\n",
+ "for i, row in Recebido.iterrows():\n",
+ " if row['Empresa'] == 1002:\n",
+ " Recebido.loc[i,'Empresa'] = 2\n",
+ "\n",
+ "for i, row in Recebido.iterrows():\n",
+ " if row['Empresa'] == 1003:\n",
+ " Recebido.loc[i,'Empresa'] = 3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 113,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "for i, row in AReceber.iterrows():\n",
+ " if row['Empresa'] == 1001:\n",
+ " AReceber.loc[i,'Empresa'] = 1\n",
+ "\n",
+ "for i, row in AReceber.iterrows():\n",
+ " if row['Empresa'] == 1002:\n",
+ " AReceber.loc[i,'Empresa'] = 2\n",
+ "\n",
+ "for i, row in AReceber.iterrows():\n",
+ " if row['Empresa'] == 1003:\n",
+ " AReceber.loc[i,'Empresa'] = 3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 114,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "emp2 = [85,165,171,182]\n",
+ "for x in emp2:\n",
+ " for i, row in Recebido.iterrows():\n",
+ " if row['CodReceita'] == x:\n",
+ " Recebido.loc[i,'Empresa'] = 2\n",
+ "\n",
+ "for x in emp2:\n",
+ " for i, row in AReceber.iterrows():\n",
+ " if row['CodReceita'] == x:\n",
+ " AReceber.loc[i,'Empresa'] = 2"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 115,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "emp3 = [76,207]\n",
+ "for x in emp3:\n",
+ " for i, row in Recebido.iterrows():\n",
+ " if row['CodReceita'] == x:\n",
+ " Recebido.loc[i,'Empresa'] = 3\n",
+ "\n",
+ "for x in emp3:\n",
+ " for i, row in AReceber.iterrows():\n",
+ " if row['CodReceita'] == x:\n",
+ " AReceber.loc[i,'Empresa'] = 3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 116,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "for i, row in APagar.iterrows():\n",
+ " if row['Empresa'] == 1001:\n",
+ " APagar.loc[i,'Empresa'] = 1\n",
+ "\n",
+ "for i, row in APagar.iterrows():\n",
+ " if row['Empresa'] == 1002:\n",
+ " APagar.loc[i,'Empresa'] = 2\n",
+ "\n",
+ "for i, row in APagar.iterrows():\n",
+ " if row['Empresa'] == 1003:\n",
+ " APagar.loc[i,'Empresa'] = 3"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 117,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "for i, row in Pagos.iterrows():\n",
+ " if row['Empresa'] == 1001:\n",
+ " Pagos.loc[i,'Empresa'] = 1\n",
+ "\n",
+ "for i, row in Pagos.iterrows():\n",
+ " if row['Empresa'] == 1002:\n",
+ " Pagos.loc[i,'Empresa'] = 2\n",
+ "\n",
+ "for i, row in Pagos.iterrows():\n",
+ " if row['Empresa'] == 1003:\n",
+ " Pagos.loc[i,'Empresa'] = 3"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "5 - Carregar os Dados"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "5.1 - Fatos"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 118,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "APagar.to_csv(\"APagar.csv\",encoding='utf-8',index=False)\n",
+ "Pagos.to_csv(\"Pagos.csv\",encoding='utf-8',index=False)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 119,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "AReceber.to_csv(\"AReceber.csv\",encoding='utf-8',index=False)\n",
+ "Recebido.to_csv(\"Recebido.csv\",encoding='utf-8',index=False)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 120,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Faturamento.to_csv(\"Faturamento.csv\",encoding='utf-8',index=False)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "5.2 - Dimensões"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 121,
+ "metadata": {},
+ "outputs": [],
+ "source": [
+ "Cliente.to_csv(\"Cliente.csv\",encoding='utf-8',index=False)\n",
+ "Fornecedor.to_csv(\"Fornecedor.csv\",encoding='utf-8',index=False)"
+ ]
+ },
+ {
+ "cell_type": "markdown",
+ "metadata": {},
+ "source": [
+ "5.3 - Carregando para o MySQL"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 122,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-04-29 08:22:44,243 INFO sqlalchemy.engine.Engine SELECT DATABASE()\n",
+ "2024-04-29 08:22:44,243 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,245 INFO sqlalchemy.engine.Engine SELECT @@sql_mode\n",
+ "2024-04-29 08:22:44,245 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,246 INFO sqlalchemy.engine.Engine SELECT @@lower_case_table_names\n",
+ "2024-04-29 08:22:44,247 INFO sqlalchemy.engine.Engine [raw sql] {}\n"
+ ]
+ }
+ ],
+ "source": [
+ "url = 'mysql+pymysql://root:1508@localhost:3306/neoguardcontrol' # define o acesso ao MySQL\n",
+ "\n",
+ "engine = sq.create_engine(url, echo=True) # cria a Conexão\n",
+ "\n",
+ "con = engine.connect()"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 123,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-04-29 08:22:44,259 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:44,260 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`apagar`\n",
+ "2024-04-29 08:22:44,261 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,265 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`apagar`\n",
+ "2024-04-29 08:22:44,266 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,268 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:44,268 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,270 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:44,271 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,274 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `apagar`\n",
+ "2024-04-29 08:22:44,274 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,277 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE apagar\n",
+ "2024-04-29 08:22:44,278 INFO sqlalchemy.engine.Engine [no key 0.00045s] {}\n",
+ "2024-04-29 08:22:44,292 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE apagar (\n",
+ "\t`CodInterno` BIGINT, \n",
+ "\t`Empresa` BIGINT, \n",
+ "\t`CodGasto` BIGINT, \n",
+ "\t`CodFornecedor` BIGINT, \n",
+ "\t`Emissao` DATETIME, \n",
+ "\t`Vencimento` DATETIME, \n",
+ "\t`ValorDuplicata` FLOAT(53)\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:44,293 INFO sqlalchemy.engine.Engine [no key 0.00068s] {}\n",
+ "2024-04-29 08:22:44,319 INFO sqlalchemy.engine.Engine INSERT INTO apagar (`CodInterno`, `Empresa`, `CodGasto`, `CodFornecedor`, `Emissao`, `Vencimento`, `ValorDuplicata`) VALUES (%(CodInterno)s, %(Empresa)s, %(CodGasto)s, %(CodFornecedor)s, %(Emissao)s, %(Vencimento)s, %(ValorDuplicata)s)\n",
+ "2024-04-29 08:22:44,320 INFO sqlalchemy.engine.Engine [generated in 0.00499s] [{'CodInterno': 46810, 'Empresa': 1, 'CodGasto': 130, 'CodFornecedor': 293, 'Emissao': datetime.datetime(2020, 7, 3, 0, 0), 'Vencimento': datetime.datetime(2024, 5, 10, 0, 0), 'ValorDuplicata': 297.95}, {'CodInterno': 46811, 'Empresa': 1, 'CodGasto': 130, 'CodFornecedor': 293, 'Emissao': datetime.datetime(2020, 7, 3, 0, 0), 'Vencimento': datetime.datetime(2024, 6, 10, 0, 0), 'ValorDuplicata': 297.95}, {'CodInterno': 46812, 'Empresa': 1, 'CodGasto': 130, 'CodFornecedor': 293, 'Emissao': datetime.datetime(2020, 7, 3, 0, 0), 'Vencimento': datetime.datetime(2024, 7, 10, 0, 0), 'ValorDuplicata': 297.95}, {'CodInterno': 46813, 'Empresa': 1, 'CodGasto': 130, 'CodFornecedor': 293, 'Emissao': datetime.datetime(2020, 7, 3, 0, 0), 'Vencimento': datetime.datetime(2024, 8, 10, 0, 0), 'ValorDuplicata': 297.95}, {'CodInterno': 46814, 'Empresa': 1, 'CodGasto': 130, 'CodFornecedor': 293, 'Emissao': datetime.datetime(2020, 7, 3, 0, 0), 'Vencimento': datetime.datetime(2024, 9, 10, 0, 0), 'ValorDuplicata': 297.95}, {'CodInterno': 46815, 'Empresa': 1, 'CodGasto': 130, 'CodFornecedor': 293, 'Emissao': datetime.datetime(2020, 7, 3, 0, 0), 'Vencimento': datetime.datetime(2024, 10, 10, 0, 0), 'ValorDuplicata': 297.95}, {'CodInterno': 46816, 'Empresa': 1, 'CodGasto': 130, 'CodFornecedor': 293, 'Emissao': datetime.datetime(2020, 7, 3, 0, 0), 'Vencimento': datetime.datetime(2024, 11, 10, 0, 0), 'ValorDuplicata': 297.95}, {'CodInterno': 46817, 'Empresa': 1, 'CodGasto': 130, 'CodFornecedor': 293, 'Emissao': datetime.datetime(2020, 7, 3, 0, 0), 'Vencimento': datetime.datetime(2024, 12, 10, 0, 0), 'ValorDuplicata': 297.95} ... displaying 10 of 918 total bound parameter sets ... {'CodInterno': 78311, 'Empresa': 2, 'CodGasto': 556, 'CodFornecedor': 818, 'Emissao': datetime.datetime(2023, 2, 7, 0, 0), 'Vencimento': datetime.datetime(2028, 1, 28, 0, 0), 'ValorDuplicata': 2003.6}, {'CodInterno': 88895, 'Empresa': 1, 'CodGasto': 991, 'CodFornecedor': 331, 'Emissao': datetime.datetime(2023, 3, 16, 0, 0), 'Vencimento': datetime.datetime(2023, 3, 16, 0, 0), 'ValorDuplicata': 192.89}]\n",
+ "2024-04-29 08:22:44,353 INFO sqlalchemy.engine.Engine COMMIT\n",
+ "2024-04-29 08:22:44,369 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:44,372 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`pagos`\n",
+ "2024-04-29 08:22:44,373 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,376 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`pagos`\n",
+ "2024-04-29 08:22:44,376 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,379 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:44,380 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,383 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:44,383 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,386 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `pagos`\n",
+ "2024-04-29 08:22:44,386 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:44,389 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE pagos\n",
+ "2024-04-29 08:22:44,389 INFO sqlalchemy.engine.Engine [no key 0.00062s] {}\n",
+ "2024-04-29 08:22:44,429 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE pagos (\n",
+ "\t`CodInterno` BIGINT, \n",
+ "\t`Empresa` BIGINT, \n",
+ "\t`CodGasto` BIGINT, \n",
+ "\t`CodFornecedor` BIGINT, \n",
+ "\t`Emissao` DATETIME, \n",
+ "\t`Vencimento` DATETIME, \n",
+ "\t`DataPagamento` DATETIME, \n",
+ "\t`ValorDuplicata` FLOAT(53)\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:44,430 INFO sqlalchemy.engine.Engine [no key 0.00044s] {}\n",
+ "2024-04-29 08:22:44,602 INFO sqlalchemy.engine.Engine INSERT INTO pagos (`CodInterno`, `Empresa`, `CodGasto`, `CodFornecedor`, `Emissao`, `Vencimento`, `DataPagamento`, `ValorDuplicata`) VALUES (%(CodInterno)s, %(Empresa)s, %(CodGasto)s, %(CodFornecedor)s, %(Emissao)s, %(Vencimento)s, %(DataPagamento)s, %(ValorDuplicata)s)\n",
+ "2024-04-29 08:22:44,603 INFO sqlalchemy.engine.Engine [generated in 0.06022s] [{'CodInterno': 43102, 'Empresa': 1, 'CodGasto': 1252, 'CodFornecedor': 174, 'Emissao': datetime.datetime(2018, 11, 7, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 13, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 13, 0, 0), 'ValorDuplicata': 1977.0}, {'CodInterno': 43103, 'Empresa': 1, 'CodGasto': 396, 'CodFornecedor': 175, 'Emissao': datetime.datetime(2018, 11, 6, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 20, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 20, 0, 0), 'ValorDuplicata': 579.57}, {'CodInterno': 43104, 'Empresa': 1, 'CodGasto': 10584, 'CodFornecedor': 136, 'Emissao': datetime.datetime(2018, 8, 8, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 20, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 20, 0, 0), 'ValorDuplicata': 59.9}, {'CodInterno': 43105, 'Empresa': 1, 'CodGasto': 28, 'CodFornecedor': 168, 'Emissao': datetime.datetime(2018, 11, 5, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 20, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 20, 0, 0), 'ValorDuplicata': 4458.25}, {'CodInterno': 43110, 'Empresa': 1, 'CodGasto': 559, 'CodFornecedor': 178, 'Emissao': datetime.datetime(2018, 11, 13, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 19, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 19, 0, 0), 'ValorDuplicata': 1221.45}, {'CodInterno': 43111, 'Empresa': 1, 'CodGasto': 559, 'CodFornecedor': 177, 'Emissao': datetime.datetime(2018, 11, 12, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 19, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 19, 0, 0), 'ValorDuplicata': 1384.81}, {'CodInterno': 43112, 'Empresa': 1, 'CodGasto': 191, 'CodFornecedor': 171, 'Emissao': datetime.datetime(2018, 10, 17, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 16, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 16, 0, 0), 'ValorDuplicata': 373.47}, {'CodInterno': 43113, 'Empresa': 1, 'CodGasto': 191, 'CodFornecedor': 171, 'Emissao': datetime.datetime(2018, 8, 16, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 14, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 19, 0, 0), 'ValorDuplicata': 291.45} ... displaying 10 of 17833 total bound parameter sets ... {'CodInterno': 88954, 'Empresa': 2, 'CodGasto': 299, 'CodFornecedor': 1181, 'Emissao': datetime.datetime(2023, 3, 20, 0, 0), 'Vencimento': datetime.datetime(2023, 3, 20, 0, 0), 'DataPagamento': datetime.datetime(2023, 3, 22, 0, 0), 'ValorDuplicata': 570.9}, {'CodInterno': 88958, 'Empresa': 1, 'CodGasto': 299, 'CodFornecedor': 548, 'Emissao': datetime.datetime(2023, 3, 21, 0, 0), 'Vencimento': datetime.datetime(2023, 3, 21, 0, 0), 'DataPagamento': datetime.datetime(2023, 3, 21, 0, 0), 'ValorDuplicata': 243.0}]\n",
+ "2024-04-29 08:22:45,169 INFO sqlalchemy.engine.Engine COMMIT\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "17833"
+ ]
+ },
+ "execution_count": 123,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "APagar.to_sql('apagar', con=engine, if_exists='replace', index=False)\n",
+ "Pagos.to_sql('pagos', con=engine, if_exists='replace', index=False)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 124,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-04-29 08:22:45,216 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:45,218 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`areceber`\n",
+ "2024-04-29 08:22:45,219 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,222 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`areceber`\n",
+ "2024-04-29 08:22:45,222 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,225 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:45,225 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,227 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:45,227 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,230 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `areceber`\n",
+ "2024-04-29 08:22:45,230 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,232 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE areceber\n",
+ "2024-04-29 08:22:45,233 INFO sqlalchemy.engine.Engine [no key 0.00048s] {}\n",
+ "2024-04-29 08:22:45,248 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE areceber (\n",
+ "\t`CodInterno` BIGINT, \n",
+ "\t`Empresa` BIGINT, \n",
+ "\t`CodReceita` BIGINT, \n",
+ "\t`CodCliente` BIGINT, \n",
+ "\t`Emissao` DATETIME, \n",
+ "\t`Vencimento` DATETIME, \n",
+ "\t`ValorDuplicata` FLOAT(53)\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:45,248 INFO sqlalchemy.engine.Engine [no key 0.00058s] {}\n",
+ "2024-04-29 08:22:45,276 INFO sqlalchemy.engine.Engine INSERT INTO areceber (`CodInterno`, `Empresa`, `CodReceita`, `CodCliente`, `Emissao`, `Vencimento`, `ValorDuplicata`) VALUES (%(CodInterno)s, %(Empresa)s, %(CodReceita)s, %(CodCliente)s, %(Emissao)s, %(Vencimento)s, %(ValorDuplicata)s)\n",
+ "2024-04-29 08:22:45,276 INFO sqlalchemy.engine.Engine [generated in 0.00644s] [{'CodInterno': 192551, 'Empresa': 1, 'CodReceita': 16, 'CodCliente': 856, 'Emissao': datetime.datetime(2021, 1, 25, 0, 0), 'Vencimento': datetime.datetime(2021, 6, 15, 0, 0), 'ValorDuplicata': 70.8}, {'CodInterno': 177186, 'Empresa': 1, 'CodReceita': 47, 'CodCliente': 364, 'Emissao': datetime.datetime(2019, 8, 28, 0, 0), 'Vencimento': datetime.datetime(2019, 10, 25, 0, 0), 'ValorDuplicata': 389.15}, {'CodInterno': 177187, 'Empresa': 1, 'CodReceita': 47, 'CodCliente': 364, 'Emissao': datetime.datetime(2019, 8, 28, 0, 0), 'Vencimento': datetime.datetime(2019, 11, 15, 0, 0), 'ValorDuplicata': 389.15}, {'CodInterno': 177563, 'Empresa': 1, 'CodReceita': 47, 'CodCliente': 244, 'Emissao': datetime.datetime(2019, 11, 1, 0, 0), 'Vencimento': datetime.datetime(2019, 12, 6, 0, 0), 'ValorDuplicata': 1048.88}, {'CodInterno': 177564, 'Empresa': 1, 'CodReceita': 47, 'CodCliente': 244, 'Emissao': datetime.datetime(2019, 11, 1, 0, 0), 'Vencimento': datetime.datetime(2020, 1, 6, 0, 0), 'ValorDuplicata': 1048.88}, {'CodInterno': 177565, 'Empresa': 1, 'CodReceita': 47, 'CodCliente': 244, 'Emissao': datetime.datetime(2019, 11, 1, 0, 0), 'Vencimento': datetime.datetime(2020, 2, 6, 0, 0), 'ValorDuplicata': 1048.88}, {'CodInterno': 177566, 'Empresa': 1, 'CodReceita': 47, 'CodCliente': 244, 'Emissao': datetime.datetime(2019, 11, 1, 0, 0), 'Vencimento': datetime.datetime(2020, 3, 6, 0, 0), 'ValorDuplicata': 1048.88}, {'CodInterno': 177567, 'Empresa': 1, 'CodReceita': 47, 'CodCliente': 244, 'Emissao': datetime.datetime(2019, 11, 1, 0, 0), 'Vencimento': datetime.datetime(2020, 4, 6, 0, 0), 'ValorDuplicata': 1048.89} ... displaying 10 of 1636 total bound parameter sets ... {'CodInterno': 227774, 'Empresa': 1, 'CodReceita': 16, 'CodCliente': 1279, 'Emissao': datetime.datetime(2023, 3, 22, 0, 0), 'Vencimento': datetime.datetime(2023, 4, 15, 0, 0), 'ValorDuplicata': 59.0}, {'CodInterno': 227778, 'Empresa': 1, 'CodReceita': 16, 'CodCliente': 1226, 'Emissao': datetime.datetime(2023, 3, 22, 0, 0), 'Vencimento': datetime.datetime(2023, 4, 25, 0, 0), 'ValorDuplicata': 59.0}]\n",
+ "2024-04-29 08:22:45,325 INFO sqlalchemy.engine.Engine COMMIT\n",
+ "2024-04-29 08:22:45,328 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:45,330 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`recebido`\n",
+ "2024-04-29 08:22:45,330 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,332 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`recebido`\n",
+ "2024-04-29 08:22:45,333 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,334 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:45,335 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,337 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:45,337 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,339 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `recebido`\n",
+ "2024-04-29 08:22:45,340 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:45,342 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE recebido\n",
+ "2024-04-29 08:22:45,342 INFO sqlalchemy.engine.Engine [no key 0.00044s] {}\n",
+ "2024-04-29 08:22:45,352 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE recebido (\n",
+ "\t`CodInterno` BIGINT, \n",
+ "\t`Empresa` BIGINT, \n",
+ "\t`CodReceita` BIGINT, \n",
+ "\t`CodCliente` BIGINT, \n",
+ "\t`Emissao` DATETIME, \n",
+ "\t`Vencimento` DATETIME, \n",
+ "\t`DataPagamento` DATETIME, \n",
+ "\t`ValorDuplicata` FLOAT(53)\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:45,352 INFO sqlalchemy.engine.Engine [no key 0.00046s] {}\n",
+ "2024-04-29 08:22:45,553 INFO sqlalchemy.engine.Engine INSERT INTO recebido (`CodInterno`, `Empresa`, `CodReceita`, `CodCliente`, `Emissao`, `Vencimento`, `DataPagamento`, `ValorDuplicata`) VALUES (%(CodInterno)s, %(Empresa)s, %(CodReceita)s, %(CodCliente)s, %(Emissao)s, %(Vencimento)s, %(DataPagamento)s, %(ValorDuplicata)s)\n",
+ "2024-04-29 08:22:45,554 INFO sqlalchemy.engine.Engine [generated in 0.12880s] [{'CodInterno': 175299, 'Empresa': 1, 'CodReceita': 43, 'CodCliente': 162, 'Emissao': datetime.datetime(2018, 11, 6, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 16, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 6, 0, 0), 'ValorDuplicata': 10.0}, {'CodInterno': 175311, 'Empresa': 1, 'CodReceita': 43, 'CodCliente': 115, 'Emissao': datetime.datetime(2018, 8, 15, 0, 0), 'Vencimento': datetime.datetime(2018, 12, 15, 0, 0), 'DataPagamento': datetime.datetime(2018, 12, 11, 0, 0), 'ValorDuplicata': 150.0}, {'CodInterno': 175312, 'Empresa': 1, 'CodReceita': 43, 'CodCliente': 108, 'Emissao': datetime.datetime(2017, 12, 20, 0, 0), 'Vencimento': datetime.datetime(2018, 12, 15, 0, 0), 'DataPagamento': datetime.datetime(2018, 12, 17, 0, 0), 'ValorDuplicata': 90.0}, {'CodInterno': 175507, 'Empresa': 1, 'CodReceita': 47, 'CodCliente': 153, 'Emissao': datetime.datetime(2018, 12, 6, 0, 0), 'Vencimento': datetime.datetime(2019, 1, 28, 0, 0), 'DataPagamento': datetime.datetime(2019, 1, 29, 0, 0), 'ValorDuplicata': 980.55}, {'CodInterno': 175314, 'Empresa': 1, 'CodReceita': 16, 'CodCliente': 123, 'Emissao': datetime.datetime(2018, 10, 30, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 15, 0, 0), 'DataPagamento': datetime.datetime(2018, 12, 17, 0, 0), 'ValorDuplicata': 78.66}, {'CodInterno': 175335, 'Empresa': 1, 'CodReceita': 16, 'CodCliente': 122, 'Emissao': datetime.datetime(2018, 10, 30, 0, 0), 'Vencimento': datetime.datetime(2018, 11, 15, 0, 0), 'DataPagamento': datetime.datetime(2018, 11, 16, 0, 0), 'ValorDuplicata': 720.0}, {'CodInterno': 175316, 'Empresa': 1, 'CodReceita': 43, 'CodCliente': 106, 'Emissao': datetime.datetime(2017, 12, 19, 0, 0), 'Vencimento': datetime.datetime(2018, 12, 15, 0, 0), 'DataPagamento': datetime.datetime(2018, 12, 5, 0, 0), 'ValorDuplicata': 90.0}, {'CodInterno': 175317, 'Empresa': 1, 'CodReceita': 16, 'CodCliente': 124, 'Emissao': datetime.datetime(2017, 12, 19, 0, 0), 'Vencimento': datetime.datetime(2018, 12, 20, 0, 0), 'DataPagamento': datetime.datetime(2019, 1, 4, 0, 0), 'ValorDuplicata': 49.0} ... displaying 10 of 19735 total bound parameter sets ... {'CodInterno': 227929, 'Empresa': 1, 'CodReceita': 43, 'CodCliente': 285, 'Emissao': datetime.datetime(2023, 3, 30, 0, 0), 'Vencimento': datetime.datetime(2023, 10, 5, 0, 0), 'DataPagamento': datetime.datetime(2023, 10, 5, 0, 0), 'ValorDuplicata': 224.0}, {'CodInterno': 227939, 'Empresa': 1, 'CodReceita': 47, 'CodCliente': 1046, 'Emissao': datetime.datetime(2023, 3, 30, 0, 0), 'Vencimento': datetime.datetime(2023, 3, 30, 0, 0), 'DataPagamento': datetime.datetime(2023, 3, 31, 0, 0), 'ValorDuplicata': 35.0}]\n",
+ "2024-04-29 08:22:46,195 INFO sqlalchemy.engine.Engine COMMIT\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "19735"
+ ]
+ },
+ "execution_count": 124,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "AReceber.to_sql('areceber', con=engine, if_exists='replace', index=False)\n",
+ "Recebido.to_sql('recebido', con=engine, if_exists='replace', index=False)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 125,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-04-29 08:22:46,214 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:46,217 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`faturamento`\n",
+ "2024-04-29 08:22:46,217 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,220 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`faturamento`\n",
+ "2024-04-29 08:22:46,220 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,222 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,223 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,225 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,225 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,227 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `faturamento`\n",
+ "2024-04-29 08:22:46,228 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,230 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE faturamento\n",
+ "2024-04-29 08:22:46,231 INFO sqlalchemy.engine.Engine [no key 0.00070s] {}\n",
+ "2024-04-29 08:22:46,277 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE faturamento (\n",
+ "\t`CodInterno` BIGINT, \n",
+ "\t`Empresa` BIGINT, \n",
+ "\t`CodCliente` BIGINT, \n",
+ "\t`Emissao` DATETIME, \n",
+ "\t`ValorNota` FLOAT(53)\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:46,278 INFO sqlalchemy.engine.Engine [no key 0.00069s] {}\n",
+ "2024-04-29 08:22:46,350 INFO sqlalchemy.engine.Engine INSERT INTO faturamento (`CodInterno`, `Empresa`, `CodCliente`, `Emissao`, `ValorNota`) VALUES (%(CodInterno)s, %(Empresa)s, %(CodCliente)s, %(Emissao)s, %(ValorNota)s)\n",
+ "2024-04-29 08:22:46,350 INFO sqlalchemy.engine.Engine [generated in 0.03547s] [{'CodInterno': 183280, 'Empresa': 1, 'CodCliente': 198, 'Emissao': datetime.datetime(2018, 11, 16, 0, 0), 'ValorNota': 39.35}, {'CodInterno': 183281, 'Empresa': 1, 'CodCliente': 199, 'Emissao': datetime.datetime(2018, 11, 19, 0, 0), 'ValorNota': 50.0}, {'CodInterno': 183282, 'Empresa': 1, 'CodCliente': 199, 'Emissao': datetime.datetime(2018, 11, 19, 0, 0), 'ValorNota': 30.0}, {'CodInterno': 183283, 'Empresa': 1, 'CodCliente': 193, 'Emissao': datetime.datetime(2018, 11, 20, 0, 0), 'ValorNota': 338.3}, {'CodInterno': 183284, 'Empresa': 1, 'CodCliente': 193, 'Emissao': datetime.datetime(2018, 11, 20, 0, 0), 'ValorNota': 200.0}, {'CodInterno': 183286, 'Empresa': 1001, 'CodCliente': 157, 'Emissao': datetime.datetime(2018, 11, 20, 0, 0), 'ValorNota': 2475.06}, {'CodInterno': 183278, 'Empresa': 1, 'CodCliente': 167, 'Emissao': datetime.datetime(2018, 11, 12, 0, 0), 'ValorNota': 6554.0}, {'CodInterno': 183285, 'Empresa': 1001, 'CodCliente': 158, 'Emissao': datetime.datetime(2018, 11, 20, 0, 0), 'ValorNota': 761.79} ... displaying 10 of 15090 total bound parameter sets ... {'CodInterno': 215274, 'Empresa': 1001, 'CodCliente': 320, 'Emissao': datetime.datetime(2023, 3, 22, 0, 0), 'ValorNota': 800.0}, {'CodInterno': 215398, 'Empresa': 1, 'CodCliente': 153, 'Emissao': datetime.datetime(2023, 4, 10, 0, 0), 'ValorNota': 2938.0}]\n",
+ "2024-04-29 08:22:46,697 INFO sqlalchemy.engine.Engine COMMIT\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "15090"
+ ]
+ },
+ "execution_count": 125,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Faturamento.to_sql('faturamento', con=engine, if_exists='replace', index=False)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 126,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-04-29 08:22:46,711 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:46,713 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`cliente`\n",
+ "2024-04-29 08:22:46,713 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,716 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`cliente`\n",
+ "2024-04-29 08:22:46,716 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,718 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,719 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,721 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,721 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,724 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `cliente`\n",
+ "2024-04-29 08:22:46,724 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,727 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE cliente\n",
+ "2024-04-29 08:22:46,727 INFO sqlalchemy.engine.Engine [no key 0.00049s] {}\n",
+ "2024-04-29 08:22:46,738 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE cliente (\n",
+ "\t`CodCliente` BIGINT, \n",
+ "\t`CodReceita` FLOAT(53), \n",
+ "\t`Cliente` TEXT\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:46,739 INFO sqlalchemy.engine.Engine [no key 0.00065s] {}\n",
+ "2024-04-29 08:22:46,768 INFO sqlalchemy.engine.Engine INSERT INTO cliente (`CodCliente`, `CodReceita`, `Cliente`) VALUES (%(CodCliente)s, %(CodReceita)s, %(Cliente)s)\n",
+ "2024-04-29 08:22:46,769 INFO sqlalchemy.engine.Engine [generated in 0.00267s] [{'CodCliente': 35, 'CodReceita': 43.0, 'Cliente': 'CONSUMIDOR ESPECIAL'}, {'CodCliente': 146, 'CodReceita': 43.0, 'Cliente': 'BRAZ DA SILVA XIMENES'}, {'CodCliente': 147, 'CodReceita': 43.0, 'Cliente': 'BRUNO ALMEIDA BASTOS DA SILVEIRA'}, {'CodCliente': 154, 'CodReceita': 43.0, 'Cliente': 'CONDOMÍNIO RESIDENCIAL VIENA'}, {'CodCliente': 194, 'CodReceita': 43.0, 'Cliente': 'LUKKENT TECHNOLOGIES LTDA EPP'}, {'CodCliente': 199, 'CodReceita': 43.0, 'Cliente': 'RHUAN COSTA DOS SANTOS'}, {'CodCliente': 200, 'CodReceita': None, 'Cliente': 'MEGA POPULAR DROGARIA ITAPERUNA LTDA'}, {'CodCliente': 202, 'CodReceita': 43.0, 'Cliente': 'LUCIANO MIRANDA TEIXEIRA'} ... displaying 10 of 1510 total bound parameter sets ... {'CodCliente': 1134, 'CodReceita': 43.0, 'Cliente': 'FERREIRA E BASTOS DISTRIBUIDORA LTDA'}, {'CodCliente': 1522, 'CodReceita': 93.0, 'Cliente': 'G. CAMPOS PRUDENTE ROUPAS LTDA'}]\n",
+ "2024-04-29 08:22:46,798 INFO sqlalchemy.engine.Engine COMMIT\n",
+ "2024-04-29 08:22:46,801 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:46,802 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`fornecedor`\n",
+ "2024-04-29 08:22:46,802 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,804 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`fornecedor`\n",
+ "2024-04-29 08:22:46,804 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,806 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,807 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,809 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,810 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,811 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `fornecedor`\n",
+ "2024-04-29 08:22:46,812 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,813 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE fornecedor\n",
+ "2024-04-29 08:22:46,814 INFO sqlalchemy.engine.Engine [no key 0.00043s] {}\n",
+ "2024-04-29 08:22:46,823 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE fornecedor (\n",
+ "\t`CodFornecedor` BIGINT, \n",
+ "\t`Fornecedor` TEXT\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:46,824 INFO sqlalchemy.engine.Engine [no key 0.00070s] {}\n",
+ "2024-04-29 08:22:46,843 INFO sqlalchemy.engine.Engine INSERT INTO fornecedor (`CodFornecedor`, `Fornecedor`) VALUES (%(CodFornecedor)s, %(Fornecedor)s)\n",
+ "2024-04-29 08:22:46,843 INFO sqlalchemy.engine.Engine [generated in 0.00132s] [{'CodFornecedor': 166, 'Fornecedor': 'QTC BRASIL INDUSTRIA E BENEFICIAMENTO DE MATERIAIS EIRELI'}, {'CodFornecedor': 169, 'Fornecedor': 'INFOTEC COM. DE EQUIP. E SIST. DE SEGURANCA LTDA'}, {'CodFornecedor': 176, 'Fornecedor': 'SEGTEC DISTRIBUIDORA DE EQUIPAMENTOS DE SEGURANCA ELETRONICA E INFORMATICA LTDA'}, {'CodFornecedor': 178, 'Fornecedor': 'FUNDO DO REGIME GERAL DE PREVIDENCIA SOCIAL'}, {'CodFornecedor': 181, 'Fornecedor': 'BANCO PAN S.A.'}, {'CodFornecedor': 174, 'Fornecedor': 'POSTO DE GASOLINA TIMBOZAO III LTDA'}, {'CodFornecedor': 183, 'Fornecedor': 'SEG CAMPOS-COMERCIO DE EQUIPAMENTOS ELETRONICOS LTDA'}, {'CodFornecedor': 185, 'Fornecedor': 'SUPERMERCADO FLUMINENSE DE ITAPERUNA LTDA'} ... displaying 10 of 606 total bound parameter sets ... {'CodFornecedor': 100, 'Fornecedor': 'NEOGUARD SEGURANCA ELETRONICA LTDA'}, {'CodFornecedor': 866, 'Fornecedor': 'MEGA LIDER INFORMATICA EIRELI'}]\n",
+ "2024-04-29 08:22:46,853 INFO sqlalchemy.engine.Engine COMMIT\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "606"
+ ]
+ },
+ "execution_count": 126,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Cliente.to_sql('cliente', con=engine, if_exists='replace', index=False)\n",
+ "Fornecedor.to_sql('fornecedor', con=engine, if_exists='replace', index=False)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 127,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-04-29 08:22:46,869 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:46,871 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`receita`\n",
+ "2024-04-29 08:22:46,872 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,875 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`receita`\n",
+ "2024-04-29 08:22:46,875 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,877 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,878 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,880 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,880 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,882 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `receita`\n",
+ "2024-04-29 08:22:46,882 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,884 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE receita\n",
+ "2024-04-29 08:22:46,885 INFO sqlalchemy.engine.Engine [no key 0.00046s] {}\n",
+ "2024-04-29 08:22:46,897 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE receita (\n",
+ "\t`CodReceita` BIGINT, \n",
+ "\t`CodClasse` BIGINT, \n",
+ "\t`Receita` TEXT, \n",
+ "\t`Tipo` TEXT, \n",
+ "\t`CodPE` BIGINT\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:46,897 INFO sqlalchemy.engine.Engine [no key 0.00056s] {}\n",
+ "2024-04-29 08:22:46,947 INFO sqlalchemy.engine.Engine INSERT INTO receita (`CodReceita`, `CodClasse`, `Receita`, `Tipo`, `CodPE`) VALUES (%(CodReceita)s, %(CodClasse)s, %(Receita)s, %(Tipo)s, %(CodPE)s)\n",
+ "2024-04-29 08:22:46,948 INFO sqlalchemy.engine.Engine [generated in 0.00083s] [{'CodReceita': 43, 'CodClasse': 1, 'Receita': 'Receita monitoramento', 'Tipo': 'R', 'CodPE': 10}, {'CodReceita': 47, 'CodClasse': 1, 'Receita': 'Receita venda de produtos', 'Tipo': 'R', 'CodPE': 10}, {'CodReceita': 76, 'CodClasse': 1, 'Receita': 'Receita facilities', 'Tipo': 'R', 'CodPE': 10}, {'CodReceita': 450, 'CodClasse': 1, 'Receita': 'Recebimento de empréstimo', 'Tipo': 'R', 'CodPE': 10}, {'CodReceita': 1571, 'CodClasse': 1, 'Receita': 'Juros Recebidos', 'Tipo': 'R', 'CodPE': 10}, {'CodReceita': 48, 'CodClasse': 1, 'Receita': 'Outras Entradas', 'Tipo': 'R', 'CodPE': 10}, {'CodReceita': 207, 'CodClasse': 1, 'Receita': 'Receita limpeza e conservação', 'Tipo': 'R', 'CodPE': 10}, {'CodReceita': 35, 'CodClasse': 1, 'Receita': 'Receita backup de imagens (mensal)', 'Tipo': 'R', 'CodPE': 10} ... displaying 10 of 24 total bound parameter sets ... {'CodReceita': 171, 'CodClasse': 1, 'Receita': 'Receita projetos energia solar', 'Tipo': 'R', 'CodPE': 10}, {'CodReceita': 182, 'CodClasse': 1, 'Receita': 'Receita escolta armada', 'Tipo': 'R', 'CodPE': 10}]\n",
+ "2024-04-29 08:22:46,950 INFO sqlalchemy.engine.Engine COMMIT\n",
+ "2024-04-29 08:22:46,953 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:46,956 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`gasto`\n",
+ "2024-04-29 08:22:46,957 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,959 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`gasto`\n",
+ "2024-04-29 08:22:46,959 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,962 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,962 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,964 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:46,964 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,966 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `gasto`\n",
+ "2024-04-29 08:22:46,966 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:46,968 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE gasto\n",
+ "2024-04-29 08:22:46,969 INFO sqlalchemy.engine.Engine [no key 0.00045s] {}\n",
+ "2024-04-29 08:22:46,979 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE gasto (\n",
+ "\t`CodGasto` BIGINT, \n",
+ "\t`CodClasse` BIGINT, \n",
+ "\t`Gasto` TEXT, \n",
+ "\t`Tipo` TEXT, \n",
+ "\t`CodPE` BIGINT\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:46,980 INFO sqlalchemy.engine.Engine [no key 0.00047s] {}\n",
+ "2024-04-29 08:22:46,998 INFO sqlalchemy.engine.Engine INSERT INTO gasto (`CodGasto`, `CodClasse`, `Gasto`, `Tipo`, `CodPE`) VALUES (%(CodGasto)s, %(CodClasse)s, %(Gasto)s, %(Tipo)s, %(CodPE)s)\n",
+ "2024-04-29 08:22:46,998 INFO sqlalchemy.engine.Engine [generated in 0.00067s] [{'CodGasto': 186, 'CodClasse': 6, 'Gasto': 'Folha de pagamento neoguard vigilância', 'Tipo': 'D', 'CodPE': 20}, {'CodGasto': 180, 'CodClasse': 6, 'Gasto': 'Repouso remunerado', 'Tipo': 'D', 'CodPE': 20}, {'CodGasto': 87, 'CodClasse': 8, 'Gasto': 'GRU', 'Tipo': 'D', 'CodPE': 20}, {'CodGasto': 88, 'CodClasse': 3, 'Gasto': 'Desp. material de higiene e limpeza', 'Tipo': 'D', 'CodPE': 30}, {'CodGasto': 353, 'CodClasse': 9, 'Gasto': 'Ativos Imobilizados', 'Tipo': 'D', 'CodPE': 40}, {'CodGasto': 1031, 'CodClasse': 4, 'Gasto': 'Água Cedae', 'Tipo': 'D', 'CodPE': 20}, {'CodGasto': 1029, 'CodClasse': 4, 'Gasto': 'Aluguel Base operacional', 'Tipo': 'D', 'CodPE': 20}, {'CodGasto': 109, 'CodClasse': 3, 'Gasto': 'Manutenção/ reparo de equipamentos de clientes', 'Tipo': 'D', 'CodPE': 30} ... displaying 10 of 77 total bound parameter sets ... {'CodGasto': 219, 'CodClasse': 6, 'Gasto': 'Acordo Judicial', 'Tipo': 'D', 'CodPE': 30}, {'CodGasto': 150, 'CodClasse': 8, 'Gasto': 'Encargos/Tarifas Polícia Federal', 'Tipo': 'D', 'CodPE': 30}]\n",
+ "2024-04-29 08:22:47,002 INFO sqlalchemy.engine.Engine COMMIT\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "77"
+ ]
+ },
+ "execution_count": 127,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Receita.to_sql('receita', con=engine, if_exists='replace', index=False)\n",
+ "Gasto.to_sql('gasto', con=engine, if_exists='replace', index=False)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 128,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-04-29 08:22:47,014 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:47,016 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`classes`\n",
+ "2024-04-29 08:22:47,017 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,019 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`classes`\n",
+ "2024-04-29 08:22:47,019 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,021 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:47,022 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,024 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:47,024 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,026 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `classes`\n",
+ "2024-04-29 08:22:47,027 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,029 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE classes\n",
+ "2024-04-29 08:22:47,029 INFO sqlalchemy.engine.Engine [no key 0.00045s] {}\n",
+ "2024-04-29 08:22:47,038 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE classes (\n",
+ "\t`CodClasse` BIGINT, \n",
+ "\t`Classe` TEXT\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:47,039 INFO sqlalchemy.engine.Engine [no key 0.00055s] {}\n",
+ "2024-04-29 08:22:47,060 INFO sqlalchemy.engine.Engine INSERT INTO classes (`CodClasse`, `Classe`) VALUES (%(CodClasse)s, %(Classe)s)\n",
+ "2024-04-29 08:22:47,061 INFO sqlalchemy.engine.Engine [generated in 0.00136s] [{'CodClasse': 1, 'Classe': 'Entradas'}, {'CodClasse': 2, 'Classe': 'Administrativas'}, {'CodClasse': 3, 'Classe': 'Despesa Operacional'}, {'CodClasse': 4, 'Classe': 'Despesas fixas'}, {'CodClasse': 5, 'Classe': 'Financiamentos'}, {'CodClasse': 6, 'Classe': 'Folha de Pagamento'}, {'CodClasse': 7, 'Classe': 'Fornecedores'}, {'CodClasse': 8, 'Classe': 'Impostos'} ... displaying 10 of 12 total bound parameter sets ... {'CodClasse': 11, 'Classe': 'Merc.Vendas'}, {'CodClasse': 12, 'Classe': 'Outros'}]\n",
+ "2024-04-29 08:22:47,063 INFO sqlalchemy.engine.Engine COMMIT\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "12"
+ ]
+ },
+ "execution_count": 128,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Classes.to_sql('classes', con=engine, if_exists='replace', index=False)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 129,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-04-29 08:22:47,073 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:47,075 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`empresas`\n",
+ "2024-04-29 08:22:47,076 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,078 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`empresas`\n",
+ "2024-04-29 08:22:47,079 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,081 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:47,081 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,083 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:47,083 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,085 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `empresas`\n",
+ "2024-04-29 08:22:47,085 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,087 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE empresas\n",
+ "2024-04-29 08:22:47,088 INFO sqlalchemy.engine.Engine [no key 0.00068s] {}\n",
+ "2024-04-29 08:22:47,099 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE empresas (\n",
+ "\t`CodEmpresa` BIGINT, \n",
+ "\t`Empresa` TEXT\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:47,100 INFO sqlalchemy.engine.Engine [no key 0.00077s] {}\n",
+ "2024-04-29 08:22:47,118 INFO sqlalchemy.engine.Engine INSERT INTO empresas (`CodEmpresa`, `Empresa`) VALUES (%(CodEmpresa)s, %(Empresa)s)\n",
+ "2024-04-29 08:22:47,119 INFO sqlalchemy.engine.Engine [generated in 0.00065s] [{'CodEmpresa': 1, 'Empresa': 'Neoguard Segurança Eletronica'}, {'CodEmpresa': 2, 'Empresa': 'Neoguard Vigilancia'}, {'CodEmpresa': 3, 'Empresa': 'Neoguard Serviços'}]\n",
+ "2024-04-29 08:22:47,121 INFO sqlalchemy.engine.Engine COMMIT\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "3"
+ ]
+ },
+ "execution_count": 129,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "Empresas.to_sql('empresas', con=engine, if_exists='replace', index=False)"
+ ]
+ },
+ {
+ "cell_type": "code",
+ "execution_count": 130,
+ "metadata": {},
+ "outputs": [
+ {
+ "name": "stdout",
+ "output_type": "stream",
+ "text": [
+ "2024-04-29 08:22:47,131 INFO sqlalchemy.engine.Engine BEGIN (implicit)\n",
+ "2024-04-29 08:22:47,133 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`pe`\n",
+ "2024-04-29 08:22:47,134 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,136 INFO sqlalchemy.engine.Engine DESCRIBE `neoguardcontrol`.`pe`\n",
+ "2024-04-29 08:22:47,137 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,139 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:47,139 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,142 INFO sqlalchemy.engine.Engine SHOW FULL TABLES FROM `neoguardcontrol`\n",
+ "2024-04-29 08:22:47,142 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,144 INFO sqlalchemy.engine.Engine SHOW CREATE TABLE `pe`\n",
+ "2024-04-29 08:22:47,145 INFO sqlalchemy.engine.Engine [raw sql] {}\n",
+ "2024-04-29 08:22:47,146 INFO sqlalchemy.engine.Engine \n",
+ "DROP TABLE pe\n",
+ "2024-04-29 08:22:47,147 INFO sqlalchemy.engine.Engine [no key 0.00043s] {}\n",
+ "2024-04-29 08:22:47,163 INFO sqlalchemy.engine.Engine \n",
+ "CREATE TABLE pe (\n",
+ "\t`CodPE` BIGINT, \n",
+ "\t`PE` TEXT\n",
+ ")\n",
+ "\n",
+ "\n",
+ "2024-04-29 08:22:47,163 INFO sqlalchemy.engine.Engine [no key 0.00073s] {}\n",
+ "2024-04-29 08:22:47,183 INFO sqlalchemy.engine.Engine INSERT INTO pe (`CodPE`, `PE`) VALUES (%(CodPE)s, %(PE)s)\n",
+ "2024-04-29 08:22:47,184 INFO sqlalchemy.engine.Engine [generated in 0.00080s] [{'CodPE': 10, 'PE': 'receita'}, {'CodPE': 20, 'PE': 'fixo'}, {'CodPE': 30, 'PE': 'variavel'}, {'CodPE': 40, 'PE': 'investimento'}]\n",
+ "2024-04-29 08:22:47,186 INFO sqlalchemy.engine.Engine COMMIT\n"
+ ]
+ },
+ {
+ "data": {
+ "text/plain": [
+ "4"
+ ]
+ },
+ "execution_count": 130,
+ "metadata": {},
+ "output_type": "execute_result"
+ }
+ ],
+ "source": [
+ "PE.to_sql('pe', con=engine, if_exists='replace', index=False)"
+ ]
+ }
+ ],
+ "metadata": {
+ "kernelspec": {
+ "display_name": "Python 3",
+ "language": "python",
+ "name": "python3"
+ },
+ "language_info": {
+ "codemirror_mode": {
+ "name": "ipython",
+ "version": 3
+ },
+ "file_extension": ".py",
+ "mimetype": "text/x-python",
+ "name": "python",
+ "nbconvert_exporter": "python",
+ "pygments_lexer": "ipython3",
+ "version": "3.12.3"
+ }
+ },
+ "nbformat": 4,
+ "nbformat_minor": 2
+}