CD_CONTASALDOCAIXA - Conta de Saldo Caixa (Comportamento)
Tela de configuração: ADM012 - Parâmetros do Usuário
Localização: Aba "Parâmetros do Usuário"
Tabela:PARMUSUARIO.CD_CONTASALDOCAIXA
Tipo:INTEGER
Valor padrão:NULL(sem conta vinculada)
Componente:edtCD_CONTASALDOCAIXA(TDBEdit)
Telas impactadas
| Tela | Descrição | Impacto |
|---|---|---|
| ADM012 | Parâmetros do Usuário | Configuração direta do campo |
| ADM013 | Manutenção de Usuário (Duplicação) | Copia o valor ao duplicar usuário |
| MNF017 | Emissão de Nota Fiscal / Confirmação de Pedido | Usa a conta para gerar movimento de caixa |
Campos envolvidos
| Campo | Tabela | Tipo | Descrição |
|---|---|---|---|
CD_CONTASALDOCAIXA | PARMUSUARIO | INTEGER | Código da conta de saldo vinculada ao usuário |
DS_CONTASALDOCAIXA | PARMUSUARIO (campo derivado via VIEW) | VARCHAR(60) | Descrição da conta obtida via VIEW_PLANOCONTAS |
Opções disponiveis
| O que faz | Detalhe |
|---|---|
Informado (valor <> NULL) | Vincula uma conta de saldo do tipo "Caixa" ao usuário; o sistema exige que a conta exista, esteja ativa, seja do tipo "X" (Caixa) e o usuário tenha permissão na tabela USUARIOCONTASALDO |
Vazio (NULL ou '') | Nenhuma conta de saldo pré-definida; ao gerar movimento de caixa o sistema abre a rotina normal de caixa |
Conta informada (valor preenchido)
Simulação passo a passo
- Acesse ADM012 — Parâmetros do Usuário.
- Selecione um registro de usuário (empresa + código de usuário).
- Localize o campo CD_CONTASALDOCAIXA.
- Pressione
<F9>para abrir a consulta de contas de saldo (tabelaPARMSALDO).- A consulta filtra
CD_EMPRESA = empresa do parâmetro,TP_SALDO = 'X'eST_ATIVO = 'S'.
- A consulta filtra
- Selecione uma conta de saldo válida.
- O sistema preenche automaticamente
CD_CONTASALDOCAIXAcom o código da conta selecionada e exibe a descrição no campoDS_CONTASALDOCAIXA. - Salve o registro.
Resultado esperado: A conta de saldo fica vinculada ao usuário. Ao confirmar uma Nota Fiscal/Pedido (MNF017), o sistema usa essa conta como conta de débito no movimento de caixa (GRAVA_MOVTOCAIXA), sem abrir a rotina normal de caixa.
Exceção / Importante: O sistema valida quatro condições ao salvar:
- A conta deve existir na tabela
PARMSALDO— senão: "A Conta de Saldo não Está Cadastrada. Verifique! [FNC002]".- O tipo de saldo deve ser
"X"(Caixa) — senão: "A Conta de Saldo Deve ser do Tipo Saldo 'Caixa'. Verifique! [FNC002]".- A conta deve estar ativa (
ST_ATIVO = 'S') — senão: "A Conta de Saldo não Está Ativa. Verifique! [FNC002]".- O usuário deve ter liberação na tabela
USUARIOCONTASALDO— senão: "O Usuário 'X' não tem Liberação Para Essa Conta de Saldo. Verifique! [FNC002]".
Conta vazia (NULL)
Simulação passo a passo
- Acesse ADM012 — Parâmetros do Usuário.
- Selecione um usuário.
- Limpe o campo CD_CONTASALDOCAIXA (delete o valor).
- Salve o registro.
Resultado esperado: O campo DS_CONTASALDOCAIXA é limpo automaticamente. Ao confirmar uma NF/Pedido (MNF017), como não há conta de saldo pré-definida e também não há histórico de caixa (CD_HISTCAIXA), o sistema executa a rotina normal de abertura de caixa (abreCaixa), permitindo que o operador escolha a conta no momento da operação.
Exceção / Importante: Na confirmação de pedido (MNF017), se ambos
CD_HISTCAIXAeCD_CONTASALDOCAIXAestiverem vazios, o sistema abre a rotina de caixa. CasoCD_HISTCAIXAesteja preenchido, a conta de saldo do caixa pode ser definida por outro mecanismo.CD_HISTCAIXAé um parâmetro separado da rotina de caixa.
Procedures impactadas
Rotinas Delphi com referencia direta ao campo
| Rotina | Arquivo | Impacto |
|---|---|---|
TfrmADM012.edtCD_CONTASALDOCAIXAKeyDown | source/ADM012/UADM012.pas:921 | Abre lookup de PARMSALDO via <F9> e preenche o campo |
TdmADM012.tabPARMUSUARIOCD_CONTASALDOCAIXAValidate | source/ADM012/UdmADM012.pas:769 | Valida existência, tipo "X", ativo e permissão do usuário |
TfrmADM013.btnDuplicaUsuarioClick | source/ADM013/UADM013.pas:476 | Copia o valor ao duplicar parâmetros de um usuário para outro |
iniciar | source/MNF017/UMNF017.pas:410 | Lê o valor de PARMUSUARIO e armazena em iCD_CONTASALDOCAIXA ao abrir MNF017 |
TfrmMNF017ConfPedido.btnConfirmaClick | source/MNF017/uMNF017ConfPedido.pas:1040 | Usa iCD_CONTASALDOCAIXA como conta de débito na chamada de GRAVA_MOVTOCAIXA; se vazio (junto com iCD_HISTCAIXA), abre rotina de caixa |
Referencias SQL diretas ao campo
Nao foi encontrada referencia direta ao campo CD_CONTASALDOCAIXA nos scripts de banco (Scripts/).
Candidatas por uso da tabela PARMUSUARIO
As rotinas abaixo usam a tabela PARMUSUARIO mas nao citam CD_CONTASALDOCAIXA literalmente. O impacto direto nao foi confirmado em nivel de script:
CANCELA_NOTAFISCAL, CONTROLE_CAIXA, GERA_ETIQUETABALANCA, PERMISSAO_CAIXA, RETORNA_IMPRESSORAUSUARIO, TRGPARMFATUR_BU, VALIDA_BLOQDESCMAXSUBGRUPO, VALIDA_CODIGOBARRA, VALIDA_LIBERACAOUSUARIO, VALIDA_MODELOBLOQUEIODIASATRASO, VALIDA_MODELOBLOQUEIOPCDESCMAX, VALIDA_MODELOBLOQUEIOVLLIMITE, VERIFICA_BLOQUEIO, VIEW_DOCUMENTOSBLOQUEADOS.
Tabela Comparativa Resumida
| Cenário | CD_CONTASALDOCAIXA | Comportamento no MNF017 |
|---|---|---|
| Conta vinculada | Preenchido (ex: 15) | Usa a conta como débito automaticamente via GRAVA_MOVTOCAIXA |
| Sem conta vinculada | NULL ou '' | Abre rotina de caixa (abreCaixa) para o operador escolher |