ST_BLOQUEIO - Permite Alteração do Complemento
Tela de configuração: TFC007 - Parâmetros de Complemento (Caixa)
Localização: Parâmetros → Complemento Caixa → campo Permite Alteração
Componente: cmbST_BLOQUEIO (ComboBox)
Tabela / Campo: PARMCOMPLCAIXA.ST_BLOQUEIO
Tipo: DOM_CHAR1 (CHAR(1))
Valor padrão: S (Sim)
Obrigatório: Sim (NOT NULL)
Descrição
Controla se o campo Complemento (DS_COMPLEMENTO) pode ser editado manualmente pelo usuário na tela de movimentação de caixa. Quando S, o complemento gerado automaticamente pelo sistema pode ser alterado pelo operador; quando N, o campo fica somente leitura.
O valor deste campo é retornado pela procedure RETORNA_COMPLEMENTO no parâmetro de saída O_ST_BLOQUEIO e consumido pelo módulo de Caixa (UdmCaixa.pas) para definir a propriedade ReadOnly do campo de complemento na tela.
Telas impactadas
| Tela | Efeito |
|---|
| TFC007 | Tela de configuração do parâmetro |
Caixa (jCaixa) | Define se edtDS_COMPLEMENTO fica editável ou somente leitura |
| MFC002 | Utiliza RETORNA_COMPLEMENTO, que retorna O_ST_BLOQUEIO |
| MFC003 | Utiliza RETORNA_COMPLEMENTO, que retorna O_ST_BLOQUEIO |
| MFC004 | Utiliza RETORNA_COMPLEMENTO, que retorna O_ST_BLOQUEIO |
Campos envolvidos
| Campo | Tabela | Relação |
|---|
ST_BLOQUEIO | PARMCOMPLCAIXA | Campo principal — define permissão de edição do complemento |
DS_COMPLEMENTO | PARMCOMPLCAIXA | Texto-template do complemento associado ao tipo de conta |
DS_COMPLEMENTO | PARMFINANC | Complemento padrão do financeiro, usado como fallback |
Opções disponíveis
S - Sim (Permite Alteração — Padrão)
| O que faz | Detalhe |
|---|
| Comportamento | O campo de complemento na tela de caixa fica editável |
| Valor padrão | Sim — é o default aplicado ao inserir novo registro (AfterInsert) |
| Restrição | Nenhuma — o operador pode alterar livremente o texto do complemento |
Simulação passo a passo
- Acesse TFC007 (Parâmetros de Complemento de Caixa).
- No campo Permite Alteração, selecione Sim.
- Salve o registro (
<Ctrl+S> ou botão Salvar).
- Abra a tela de Caixa e realize um movimento (ex: baixa de conta a receber de R$ 150,00 para o cliente João Silva).
- Após o sistema preencher automaticamente o campo Complemento, clique sobre ele.
Resultado esperado: O campo edtDS_COMPLEMENTO fica habilitado para edição (ReadOnly = False). O operador pode alterar o texto antes de confirmar o lançamento.
N - Não (Bloqueado)
| O que faz | Detalhe |
|---|
| Comportamento | O campo de complemento na tela de caixa fica somente leitura |
| Valor padrão | — |
| Restrição | O operador não consegue alterar o complemento gerado automaticamente |
Simulação passo a passo
- Acesse TFC007 (Parâmetros de Complemento de Caixa).
- No campo Permite Alteração, selecione Não.
- Salve o registro (
<Ctrl+S> ou botão Salvar).
- Abra a tela de Caixa e realize um movimento (ex: pagamento de R$ 350,00 no banco para o fornecedor Empresa ABC).
- Observe o campo Complemento preenchido automaticamente pelo sistema.
Resultado esperado: O campo edtDS_COMPLEMENTO fica bloqueado (ReadOnly = True). O operador visualiza o complemento gerado mas não consegue editá-lo.
Exceção / Importante: O O_ST_BLOQUEIO retornado por RETORNA_COMPLEMENTO é inicializado como 'S' no início da procedure (linha 56). Se não houver nenhum registro em PARMCOMPLCAIXA correspondente à combinação de tipo de conta / documento / baixa / processo, o valor retornado será sempre 'S' (editável). Apenas quando existe o registro com ST_BLOQUEIO = 'N' é que o campo será bloqueado.
Regra Geral de Funcionamento
- O parâmetro é gravado por registro na tabela
PARMCOMPLCAIXA, que permite configurações diferentes por Tipo de Conta, Tipo de Documento, Tipo de Baixa e Tipo de Processo.
- A procedure
RETORNA_PARMCOMPLEMENTOCAIXA busca o complemento com resolução progressiva: tenta a combinação exata de 4 filtros; se não encontrar, remove filtros um a um até achar um registro.
- A procedure
RETORNA_COMPLEMENTO recebe o parâmetro O_ST_BLOQUEIO (sempre iniciando como 'S') e o retorna ao chamador.
- No módulo de Caixa (
UdmCaixa.pas, linha ~1285), o valor Complemento[1] (que corresponde a O_ST_BLOQUEIO) é verificado: se 'S', o campo de complemento fica editável; caso contrário, fica somente leitura.
Tabela Comparativa Resumida
| Opção | Valor | Campo Complemento | Uso |
|---|
| Sim | S | Editável (ReadOnly = False) | Padrão — operador pode alterar o texto |
| Não | N | Somente leitura (ReadOnly = True) | Complemento automático sem alteração manual |
Procedures impactadas
Referência direta ao campo em Scripts SQL
| Procedure | Arquivo | Evidência |
|---|
RETORNA_COMPLEMENTO | Scripts/RETORNA_COMPLEMENTO.sql | Retorna O_ST_BLOQUEIO (inicializado como 'S') |
Candidatas por uso da tabela (sem referência direta ao campo)
| Procedure | Arquivo | Observação |
|---|
RETORNA_PARMCOMPLEMENTOCAIXA | Scripts/RETORNA_PARMCOMPLEMENTOCAIXA.sql | Lê DS_COMPLEMENTO da PARMCOMPLCAIXA mas não retorna ST_BLOQUEIO — o bloqueio é resolvido por RETORNA_COMPLEMENTO |
Rotinas Delphi consumidoras
| Rotina | Arquivo | Evidência |
|---|
TdmTFC007.tabPARMCOMPLCAIXAAfterInsert | source/TFC007/UdmTFC007.pas | Atribui default 'S' ao campo ao inserir novo registro |
UdmCaixa (módulo Caixa) | source/jCaixa/UdmCaixa.pas | Lê O_ST_BLOQUEIO de RETORNA_COMPLEMENTO e define ReadOnly do edtDS_COMPLEMENTO |