# Extrato Bancário - SAG-ADM

## 📊 **Visão Geral**
Sistema completo de extrato bancário que unifica todos os movimentos financeiros da empresa, proporcionando visão consolidada das movimentações bancárias e controle de fluxo de caixa.

## 🎯 **Funcionalidades Principais**

### **1. Movimentações Incluídas**
- ✅ **Lançamentos Financeiros** baixados e conciliados
- ✅ **Baixas Diretas** de contas a pagar/receber
- ✅ **Conciliações Bancárias** realizadas
- ✅ **Saldo Inicial** calculado automaticamente
- ✅ **Saldo Acumulado** em tempo real

### **2. Filtros Avançados**
- 📅 **Período** (data início/fim)
- 🏦 **Conta Bancária** específica ou todas
- 📊 **Situação** (aberto, baixado, conciliado)
- ✅ **Status Conciliação** (sim/não)
- 👥 **Participante** (cliente/fornecedor)
- 📝 **Histórico** (busca textual)

### **3. Visualização Inteligente**
- 🟡 **Amarelo**: Movimentos em aberto
- 🟢 **Verde**: Movimentos baixados  
- 🔵 **Azul**: Movimentos conciliados
- 📈 **Débitos**: Valores em vermelho
- 📉 **Créditos**: Valores em verde
- 💰 **Saldo**: Colorido conforme positivo/negativo

## 🔧 **Estrutura Técnica**

### **Arquivos Principais**
```
fin_extratobancario/
├── index.php          # Tela principal do extrato
├── select.php         # Query complexa unificada  
├── filtro.php         # Interface de filtros
├── instalacao_rotina.sql # Registro no sistema
└── README.md          # Esta documentação
```

### **Tabelas Utilizadas**
- `fin_lancamento` - Lançamentos financeiros
- `fin_lancamento_baixa` - Baixas de títulos
- `fin_lancamento_conciliacao` - Conciliações
- `dimcaixasbancos` - Contas bancárias
- `dim_participante` - Clientes/Fornecedores

### **Query Unificada**
A query principal utiliza **UNION ALL** para combinar:
1. Lançamentos baixados/conciliados no período
2. Baixas diretas de títulos em aberto  
3. Conciliações bancárias realizadas
4. Cálculo de saldo inicial automático

## 🚀 **Instalação**

### **1. Registrar Rotina**
```sql
psql -d sagadm -f instalacao_rotina.sql
```

### **2. Configurar Permissões**
- Acesse **Sistema → Grupos de Usuário**
- Localize o grupo desejado
- Marque **Visualizar** para `fin_extratobancario`

### **3. Configurar Menu**
A rotina será automaticamente incluída no menu **Financeiro**.

## 📋 **Como Usar**

### **1. Acesso**
- Menu: **Financeiro → Extrato Bancário**
- Ou URL: `/fin_extratobancario/`

### **2. Filtros Básicos**
1. Selecione **período desejado**
2. Escolha **conta bancária** (ou "Todas")
3. Clique em **Filtrar**

### **3. Filtros Avançados**
- Clique no botão **Filtro** laranja
- Configure filtros específicos
- Use **atalhos rápidos** de período
- Aplique filtros textuais

### **4. Interpretação dos Dados**
- **Data**: Data do movimento (baixa/conciliação)
- **Tipo**: CREDITO (entrada) / DEBITO (saída)
- **Documento**: Título ou número do documento
- **Débito/Crédito**: Valores movimentados
- **Saldo**: Saldo acumulado até aquela linha
- **Situação**: Status do lançamento original

## 💡 **Cenários de Uso**

### **1. Conciliação Bancária**
- Filtre por conta específica
- Compare com extrato do banco
- Identifique movimentos não conciliados
- Use ações para baixar/conciliar

### **2. Controle de Fluxo**
- Visualize saldo inicial e final
- Acompanhe entradas vs saídas
- Monitore movimentação por período
- Analise participantes principais

### **3. Auditoria Financeira**
- Filtre movimentos específicos
- Rastreie histórico de transações
- Verifique conciliações realizadas
- Export dados para análise externa

## ⚙️ **Configurações Avançadas**

### **Layout Personalizado**
- Clique em **Layout** para personalizar colunas
- Reordene campos conforme preferência
- Oculte/exiba colunas específicas
- Configurações são salvas por usuário

### **Exportação**
- **Excel**: Exporta dados filtrados
- **PDF**: Relatório formatado
- **CSV**: Para análises externas

## 🔍 **Troubleshooting**

### **Problema**: Saldo não confere
- Verifique se existem movimentos anteriores não baixados
- Confirme que todas as baixas têm conta bancária informada
- Analise conciliações em duplicidade

### **Problema**: Movimentos não aparecem  
- Confirme que os lançamentos estão baixados (situação = 1)
- Verifique se a conta bancária está correta na baixa
- Ajuste o período de consulta

### **Problema**: Performance lenta
- Reduza o período de consulta
- Filtre por conta específica
- Verifique índices das tabelas relacionadas

## 📞 **Suporte**

Para dúvidas ou problemas:
1. Consulte os **logs do sistema** (`error.log`)
2. Verifique **permissões de usuário**
3. Confirme **integridade dos dados**
4. Entre em contato com o **administrador do sistema**

---

**Versão:** 1.0  
**Data:** Março 2026  
**Compatibilidade:** SAG-ADM 2.x+