Pular para o conteúdo principal

CD_IMPRECEITA — Impressora de Receita

Tela de configuração: ADM012 — Parâmetros do Usuário
Localização: Aba "Impressoras do Usuário"
Tabela: PARMUSUARIO.CD_IMPRECEITA
Tipo: INTEGER (FK para IMPRESSORA.CD_IMPRESSORA)
Componente: edtCD_IMPRECEITA (edit)
Valor padrão: Não informado (campo nulo permitido)

Telas impactadas​

TelaDescriçãoComo é impactada
ADM012Parâmetros do UsuárioTela de configuração direta do parâmetro
ADM013Autorizador de UsuárioInclui CD_IMPRECEITA no SELECT/UPDATE OR INSERT ao duplicar ou salvar configurações de usuário
OFI001Parâmetros de OficinaLê CD_IMPRECEITA via consulta na tabela PARMUSUARIO

Campos envolvidos​

CampoTabelaTipoDescrição
CD_IMPRECEITAPARMUSUARIOINTEGERCódigo da impressora vinculada para impressão de documentos de receita
DS_IMPRECEITAPARMUSUARIO (campo derivado/exibido)STRINGNome da impressora obtido por join com IMPRESSORA — exibido ao lado do código

A FK CD_IMPRECEITA referencia a tabela IMPRESSORA, porém não há constraint declarada com ALTER TABLE ... ADD CONSTRAINT no schema conhecido para este campo (ao contrário de campos vizinhos como CD_IMPNOTA, CD_IMPCHEQUE, CD_IMPRECIBO, CD_IMPDUPLICATA).

Opções disponíveis​

Este é um campo livre (edit) — não possui opções predefinidas. O usuário informa o código de uma impressora cadastrada na tabela IMPRESSORA, ou seleciona via pesquisa <F9>.

O que fazDetalhe
Pesquisa <F9>Abre grid com impressoras (DS_IMPRESSORA, CD_IMPRESSORA) da tabela IMPRESSORA
ValidaçãoSe campo preenchido, verifica existência do código em IMPRESSORA; se não existir, dispara erro "A Impressora não está Cadastrada [ADM008]!"
EditávelSim — campo editável pelo usuário
ObrigatórioNão — campo nulo/permitido em branco

Simulação passo a passo​

  1. Acesse ADM012 (Parâmetros do Usuário).
  2. Navegue à aba "Impressoras do Usuário".
  3. Localize o campo "Impressoras do Usuário" (CD_IMPRECEITA).
  4. Posicione o cursor no campo e pressione <F9>.
  5. Selecione a impressora desejada na lista que exibe "Nome" e "Código".
  6. Confirme — o campo é preenchido com o nome da impressora selecionada.
  7. Salve o registro.

Resultado esperado: O código da impressora selecionada é gravado no campo CD_IMPRECEITA da tabela PARMUSUARIO para o usuário/empresa em questão. Quando documentos de receita forem emitidos, o sistema usará essa impressora.

Exceção / Importante: Se o usuário digitar manualmente um código de impressora que não existe na tabela IMPRESSORA, ao salvar a validação do dataset dispara: "A Impressora não está Cadastrada [ADM008]!". Neste caso, a salva é bloqueada até que um código válido seja informado ou o campo seja deixado em branco.

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoEvidência
edtCD_IMPRECEITAKeyDownsource/ADM012/UADM012.pasPesquisa <F9> na tabela IMPRESSORA para selecionar impressora
tabPARMUSUARIOCD_IMPRECEITAValidatesource/ADM012/UdmADM012.pasValida se código informado existe em IMPRESSORA; preenche DS_IMPRECEITA

Referências SQL diretas ao campo​

ProcedureEvidência
RETORNA_IMPRESSORAUSUARIODeclara V_CD_IMPRECEITA, faz LEFT JOIN IMPRESSORA A ON A.CD_IMPRESSORA = CD_IMPRECEITA, retorna O_CD_IMPRESSORA quando I_TP_IMPRESSORA = 'A' (A = Receita)

Candidatas por uso da tabela PARMUSUARIO​

As procedures abaixo usam a tabela PARMUSUARIO, mas não há referência direta ao campo CD_IMPRECEITA no código inspecionado — validar antes de afirmar impacto funcional:

  • CANCELA_NOTAFISCAL
  • CONTROLE_CAIXA
  • GERA_ETIQUETABALANCA
  • PERMISSAO_CAIXA
  • TRGPARMFATUR_BU
  • VALIDA_BLOQDESCMAXSUBGRUPO
  • VALIDA_CODIGOBARRA
  • VALIDA_LIBERACAOUSUARIO
  • VALIDA_MODELOBLOQUEIODIASATRASO
  • VALIDA_MODELOBLOQUEIOPCDESCMAX
  • VALIDA_MODELOBLOQUEIOVLLIMITE
  • VERIFICA_BLOQUEIO
  • VIEW_DOCUMENTOSBLOQUEADOS

Comportamento da procedure RETORNA_IMPRESSORAUSUARIO​

A procedure RETORNA_IMPRESSORAUSUARIO lê o parâmetro CD_IMPRECEITA da tabela PARMUSUARIO e retorna a impressora correspondente quando:

  • I_TP_IMPRESSORA = 'A' (código interno para "Receita").
  • O join é feito via: LEFT JOIN IMPRESSORA A ON A.CD_IMPRESSORA = CD_IMPRECEITA.
  • O nome e código da impressora são atribuídos às variáveis V_NM_IMPRECEITA e V_CD_IMPRECEITA, e então retornados em O_DS_IMPRESSORA / O_CD_IMPRESSORA.
  • A porta de impressão é retornada conforme o tipo de porta (I_TP_PORTA = 'D' para DOS, senão Windows): DS_PORTADOS ou DS_PORTAWIN.

Tabela comparativa resumida​

AspectoDetalhe
CampoCD_IMPRECEITA
TabelaPARMUSUARIO
TipoINTEGER
FK declaradaNão (há join, mas sem ALTER TABLE ... ADD CONSTRAINT no schema conhecido)
TelaADM012 — Aba "Impressoras do Usuário"
ComponenteedtCD_IMPRECEITA (TDBEdit)
EditávelSim
ObrigatórioNão
Pesquisa<F9> → tabela IMPRESSORA
ValidaçãoConfere existência em IMPRESSORA; dispara "E-0000" se inválido
Impacto funcionalDefine a impressora usada para impressão de documentos de receita (via RETORNA_IMPRESSORAUSUARIO com I_TP_IMPRESSORA = 'A')