GFIN - Gerência do Financeiro

Objetivo: Sistema voltado ao gerenciamento de todos os gastos orçamentários e financeiros exercidos pelo TCE.

Linguagem: Visual Basic 5

Banco de Dados: Oracle

Ambiente de produção: Windows XP ou Windows 7, SINI instalado e configurado, Rede local TCE

Usuários: Gerencia de Orçamento e Finanças

Data de entrada em produção: Junho/2007

Data da última atualização/versão: Junho/2013

Gerente: Gerencia de Orçamento e Finanças

Conectividade com outros sistemas: GPRO, GPRO Digital, GORC

DOCUMENTAÇÃO DO SISTEMA LEGADO (GFIN)

Inventário do Sistema Legado — GFIN (VB6)

Este documento contém o mapeamento de superfície e o inventário de arquivos do sistema legado GFIN, desenvolvido em Visual Basic 6 (VB6).

  • Linguagem Principal: Visual Basic 6 (.bas, .cls, .frm, .ctl)
  • Total de Arquivos: 157
  • Estrutura de Pastas:
  • legado/Classes/: 12 arquivos (Classes de regras de negócio, criptografia e tratamento de propriedades).
  • legado/Componentes/: 5 arquivos (Controles personalizados de interface).
  • legado/Módulos/: 7 arquivos (Módulos globais, funções utilitárias e lógica de conexão/APIs).
  • legado/Formulários/: 133 arquivos (Telas .frm e arquivos de recursos binários .frx, além de relatórios e subpastas).

Contêm funções de utilidades gerais, controle de acesso e conexões com banco de dados.

Arquivo Descrição
modGERALfin.bas Ponto de entrada do sistema (Sub Main), funções de conexão com banco de dados (Conectar), controle de variáveis de sessão e inicialização de pacotes do Oracle.
ModFinUtil.bas Utilitários de lógica financeira e de cálculo.
ModUtil.bas Funções auxiliares gerais para manipulação de strings, datas e formatação.
ModuloAPI.bas Declarações de chamadas de API nativas do Windows (User32, Kernel32, etc.) para controle de interface.
modAcessos.bas Lógica de validação de acessos a menus e funcionalidades do sistema.
ModMenus.bas (Modulex.bas) Construção dinâmica de menus com base no perfil do usuário.
modComp.bas Funções de conexão com o subsistema SINI.

Classes COM encapsulando lógica de negócio e segurança.

  • CCript.cls: Lógica de criptografia e hashing de senhas.
  • Classes de controle de acessos e papéis: CAcesRolesEXEC.cls, CAcesRolesREG.cls, CAcessosEXEC.cls, CAcessosREG.cls.
  • Classes de navegação: CAcessosITERATOR.cls, CAcesRolesITERATOR.cls.

Controles de usuário reutilizáveis (UserControls .ctl).

  • AutoCompleteCombo2.ctl: ComboBox com autocompletar avançado.
  • TplBotoes.ctl: Template/conjunto de botões de navegação/ação padrão.
  • divisor.ctl: Divisor visual.
  • usrBotao.ctl: Controle de botão customizado.

Telas do sistema organizadas por casos de uso financeiros (Fundo Rotativo, Empenhos, Caixa, etc.).

Formulário Descrição / Caso de Uso Correspondente
frmLogin.frm Login e autenticação inicial do usuário.
frmCaixa.frm Controle de Caixa (Movimentações e Abertura/Fechamento).
frmEmpenho.frm Emissão e consulta de Empenhos de despesa.
frmAnulacaoEmpenho.frm Anulação (parcial/total) de Empenhos emitidos.
frmOrdemPagamento.frm Emissão e controle de Ordens de Pagamento (OP).
frmGuiaReceita.frm Emissão e consulta de Guias de Receita.
frmFundoDecucoes.frm Deduções de saldo do Fundo Rotativo.
frmRestituicaoFundo.frm Solicitação e processamento de Restituição de Fundo.
frmAjusteConciliacaoBancaria.frm Conciliação e Ajuste de contas bancárias.
frmContaBancaria.frm Cadastro de contas bancárias do órgão.
frmDotacao.frm Controle orçamentário de Dotações.

  • Ponto de Partida: Função Sub Main no módulo modGERALFin.bas.
  • Fluxo de Inicialização:

1. Verifica se o sistema já está ativo (App.PrevInstance).

2. Tenta obter credenciais da linha de comando (''Command()'') para conectar diretamente.
3. Caso contrário, exibe o formulário ''frmLogin'' modally.
4. Após o login bem-sucedido (conexão efetuada no Oracle), inicializa o formulário principal MDI (''mdiPrincipalFin.frm'').

Mapeamento de Dependências — GFIN (VB6)

Este documento descreve as dependências, bibliotecas de terceiros, referências COM/ActiveX e dependências externas utilizadas pelo sistema legado GFIN.

As dependências são configuradas no arquivo de projeto prjGfin.vbp e registradas no Registro do Windows (Registry).

Dependência DLL / TLB Descrição
OLE Automation STDOLE2.TLB Serviços padrão de automação OLE do Windows.
Win32 Type Library v0.6 WIN32.TLB Biblioteca de tipos para acesso facilitado a APIs nativas do Win32.
Microsoft Data Formatting Object Library 6.0 msstdfmt.dll Formatação de dados para bindings e grids.
Microsoft Scripting Runtime SCRRUN.DLL Manipulação de arquivos (FileSystemObject), dicionários e streams.
Microsoft ActiveX Data Objects 6.0 BackCompat Library msado60_Backcompat_i386.tlb Biblioteca ADODB para conectividade e execução de consultas em banco de dados.

Componente Caminho / Registro Descrição
TCE_Acessos.dll \Windows\SysWow64\TCE_Acessos.dll Biblioteca proprietária do TCE-GO para controle de permissões e acessos a perfis.
Crystal Report Engine 8 Object Library \Windows\SysWow64\cpeaut32.dll Engine integrada para renderização e exportação de relatórios.

Controles visuais importados e exibidos nas telas (.frm).

  • TABCTL32.OCX (Microsoft Tabbed Dialog Control): Utilizado para criar abas de navegação nas telas mais densas (ex: cadastro de empenho e movimentações de caixa).
  • MSMASK32.OCX (Microsoft Masked Edit Control): Fornece caixas de texto com máscaras de entrada (ex: CPF, CNPJ, datas, contas bancárias).
  • Mscomctl.ocx & MSCOMCT2.OCX (Windows Common Controls): Componentes como ListView, TreeView, StatusBar e seletores de data.
  • comdlg32.ocx (Microsoft Common Dialog Control): Diálogos padrão de abrir/salvar arquivos e impressão.
  • CaixaTextoDPD.ocx: Controle personalizado de caixa de texto específico do ambiente do TCE-GO.

  • Database Engine: Oracle Database (conectado via ADODB).
  • Provider Utilizado: ORAOLEDB.ORACLE.1 (Oracle Provider for OLE DB) ou fallback para MSDAORA.1 (Microsoft OLE DB Provider for Oracle).
  • Nome do Data Source (TNS): ACERTO / ACERTO2.
  • Tratamento de Dados Específico: Uso de stored procedures e packages do Oracle como TCE_PACKAGE.PTCE_CARREGA_DADOS para controle e validação de sessão do usuário.

Dicionário de Dados do Sistema Legado — GFIN

Este documento mapeia as tabelas, campos e chaves do banco de dados relacional (Oracle Database) acessado pelo sistema legado GFIN, identificados através do código fonte VB6. —

Armazena a situação financeira e saldo consolidado do Fundo Rotativo por órgão, exercício e trimestre.

Campo Tipo Oracle Nulidade Descrição / Regras de Negócio
gersege_id NUMBER(10) NOT NULL ID do órgão/setor geral associado ao fundo (FK para GER_SETOGERAL).
numr_exercicio_n NUMBER(4) NOT NULL Ano do exercício financeiro (ex: 2026).
numr_trimestre_n NUMBER(1) NOT NULL Trimestre de referência (valores de 1 a 4).
vl_saldo_n NUMBER(15,2) NOT NULL Saldo atual disponível no fundo rotativo.
vl_pendente_n NUMBER(15,2) NOT NULL Valor pendente de restituição/compensação.
vl_reposicao_n NUMBER(15,2) NOT NULL Valor acumulado de reposições no trimestre.
indr_trimestre_a CHAR(1) NOT NULL Situação do trimestre: A (Aberto), E (Encerrado).

Registra as despesas (deduções) individuais executadas no âmbito do Fundo Rotativo.

Campo Tipo Oracle Nulidade Descrição / Regras de Negócio
findesp_id NUMBER(10) PK Identificador único da despesa (dedução).
gersege_id NUMBER(10) FK ID do órgão que realizou a despesa.
findueo_id_res NUMBER(10) NULL ID da Ordem de Pagamento que realizou a restituição desta despesa (FK).
vl_despesa_n NUMBER(15,2) NOT NULL Valor monetário da despesa/dedução.
dt_despesa_d DATE NOT NULL Data em que a despesa foi efetuada.
txt_historico_a VARCHAR2(500) NULL Descrição histórica ou justificativa da despesa.

Representa os usuários autenticados no sistema GFIN e suas conexões com o Active Directory / Perfis internos.

Campo Tipo Oracle Nulidade Descrição / Regras de Negócio
gerusua_id NUMBER(10) PK ID único do usuário do sistema.
sys_user_name VARCHAR2(50) NOT NULL Nome de usuário da rede/sistema (ex: gsLogin).
gersein_id NUMBER(10) FK ID do setor interno de lotação do usuário.

Mapeia os setores internos de cada diretoria/departamento.

Campo Tipo Oracle Nulidade Descrição / Regras de Negócio
gersein_id NUMBER(10) PK ID do setor interno.
gersege_id NUMBER(10) FK ID do setor geral/órgão (FK para GER_SETOGERAL).

Contém os setores e órgãos administrativos gerais do Tribunal de Contas.

Campo Tipo Oracle Nulidade Descrição / Regras de Negócio
gersege_id NUMBER(10) PK ID único do órgão/setor geral.
codg_setor_a VARCHAR2(20) NOT NULL Sigla/Código do setor (ex: GER-TI).

Configurações e parâmetros operacionais globais por subsistema.

Campo Tipo Oracle Nulidade Descrição / Regras de Negócio
sigla_sistema_a VARCHAR2(10) PK Sigla identificadora do sistema (ex: 'GPRO', 'GFIN').
id_dpd_n NUMBER(10) NULL ID do Departamento de Protocolo e Documentação padrão.
id_distribnormal_n NUMBER(10) NULL ID padrão de distribuição de processos.
id_protocolo_n NUMBER(10) NULL ID de controle de protocolo.

Análise Técnica do Código Legado (VB6) — GFIN

Este documento consolida a análise detalhada das regras de negócio, fluxos de controle e lógica operacional de cada módulo identificado no sistema legado GFIN. —

Controla o fluxo financeiro do Fundo Rotativo, garantindo dotações para despesas administrativas e adiantamentos do Tribunal.

  • Restituição de Fundo (frmRestituicaoFundo.frm):
  • Lógica de Entrada: O usuário escolhe um empenho e uma Ordem de Pagamento (OP) aberta e seleciona deduções pendentes (FIN_DESPESA).
  • Fluxo de Persistência:

1. Vincula as deduções selecionadas atualizando a coluna findueo_id_res com o ID da OP de reposição.

  2. Atualiza a tabela ''FIN_FUNDROTATIVO'' recalculando os saldos:
     $$\text{vl\_saldo\_n} \leftarrow \text{vl\_saldo\_n} + \text{total\_deduções}$$
     $$\text{vl\_reposicao\_n} \leftarrow \text{vl\_reposicao\_n} + \text{total\_deduções}$$
     $$\text{vl\_pendente\_n} \leftarrow \text{vl\_pendente\_n} - \text{total\_deduções}$$
* **Encerramento de Trimestre (''frmEncerraTrimestreFundo.frm''):**
* **Lógica de Fechamento:** Bloqueia qualquer nova dedução ou alteração definindo o campo ''indr_trimestre_a'' para '''E''' (Encerrado).
* **Validação:** Não permite fechar se houver pendências de prestação de contas no trimestre.

Controla a emissão de notas de empenho orçamentário.

  • Reserva de Saldo: Antes de emitir o empenho, o sistema valida no Oracle se a dotação correspondente possui saldo orçamentário disponível suficiente:

$$\text{Saldo Disponível} = \text{Valor Dotação} - \text{Total Empenhado} - \text{Total Reservado}$$

  • Anulação de Empenho (frmAnulacaoEmpenho.frm):
  • Permite anulações parciais ou totais.
  • Libera o saldo orçamentário na dotação ao estornar/anular a reserva de despesa.

Registra movimentações financeiras de caixa e depósitos diários.

  • Abertura/Fechamento Diário: Exige a indicação do operador de caixa e validação física do saldo de abertura contra o saldo de fechamento do dia anterior.
  • Lançamentos de Débito/Crédito: Fluxos de caixa direto vinculados a contas correntes específicas.

Controle das receitas orçamentárias e arrecadação de taxas e multas.

  • Guia de Receita (frmGuiaReceita.frm):
  • Geração de guias de recolhimento contendo código de barras para recebimento no banco conveniado.
  • Vinculação com o CPF/CNPJ do contribuinte ou credor.

  • Dotação/Orçamento (orcamento): Gerenciamento e controle de dotações, cronograma de desembolso mensal e alterações de crédito (suplementação/redução).
  • Serviços (servicos): Cadastro de prestação de serviços por fornecedores credenciados e controle de pagamentos correspondentes.
  • Conciliação Bancária (conciliacao): Cruzamento entre o extrato eletrônico bancário fornecido pelo banco e as movimentações financeiras registradas na contabilidade interna.
  • Multas (multas): Módulo de importação e processamento de arquivos de controle de multas enviadas/recebidas por descumprimento de prazos processuais.
  • pres/gerti/servico_de_desenvolvimento_de_sistemas_de_informacao/projetos/gfin_gerencia_do_financeiro.txt
  • Última modificação: 15/07/2026 13:20
  • por bholiveira