CD_IMPEXTRATO - Impressora de Extrato do Usuário
Tela de configuração: ADM012 - Parâmetros do Usuário
Aba: Impressoras do Usuário
Tabela:PARMUSUARIO.CD_IMPEXTRATO
Tipo:INTEGER
Valor padrão: (nenhum) — campo opcional
Visão geral
O parâmetro CD_IMPEXTRATO armazena o código da impressora que será utilizada para imprimir o extrato de pagamento (restaurantes/restaurante) vinculado ao usuário logado.
Quando configurado, sobrepõe a impressora padrão do sistema nos processos de fechamento de caixa e impressão de extrato do módulo de restaurante (MRE005).
Telas impactadas
| Tela | Descrição | Como é usada |
|---|---|---|
ADM012 | Parâmetros do Usuário | Campo de configuração direta |
MRE005 | Fechamento de Caixa / Restaurante | Leitura para determinar a impressora do extrato |
Procedures impactadas
Rotinas Delphi
| Rotina | Arquivo | Como é usada |
|---|---|---|
TfrmADM012.edtCD_IMPEXTRATOKeyDown | source/ADM012/UADM012.pas | Pesquisa impressoras (<F9>) na tabela IMPRESSORA e atribui o código selecionado |
TdmADM012.tabPARMUSUARIOCD_IMPEXTRATOValidate | source/ADM012/UdmADM012.pas | Valida se o código informado existe em IMPRESSORA; exibe E-0000 com mensagem "A Impressora não está Cadastrada [ADM008]!" se não encontrar |
TfrmADM013.btnDuplicaUsuarioClick | source/ADM013/UADM013.pas | Inclui CD_IMPEXTRATO no SQL de duplicação de parâmetros de usuário |
TmainDataModule.InicializaTEF | source/Junsoft/UmainDataModule.pas | JOIN com IMPRESSORA via CD_IMPEXTRATO (uso no contexto TEF) |
TfrmFechamento.btnOKClick | source/MRE005/UFechamento.pas | Consulta CD_IMPEXTRATO para definir a impressora do extrato no fechamento de caixa |
TfrmMRE005.btnImprimirClick | source/MRE005/UMRE005.pas | Consulta CD_IMPEXTRATO para definir a impressora do extrato na impressão direta |
Referências SQL diretas ao campo
Nenhuma referência direta ao campo CD_IMPEXTRATO foi encontrada nos scripts SQL da pasta Scripts/.
Candidatas por uso da tabela PARMUSUARIO
As rotinas abaixo citam a tabela PARMUSUARIO, mas não o campo CD_IMPEXTRATO literalmente — impacto não confirmado:
| Procedure/View | Arquivo |
|---|---|
RETORNA_IMPRESSORAUSUARIO | Scripts/RETORNA_IMPRESSORAUSUARIO.sql |
CANCELA_NOTAFISCAL | Scripts/CANCELA_NOTAFISCAL.sql |
CONTROLE_CAIXA | Scripts/CONTROLE_CAIXA.sql |
Comportamento
| O que faz | Detalhe |
|---|---|
| Armazena código da impressora de extrato | Valor inteiro referenciando IMPRESSORA.CD_IMPRESSORA |
Permite pesquisa com <F9> | Abre grid com colunas Nome e Código da tabela IMPRESSORA |
| Valida existência ao salvar | Se o código não existir em IMPRESSORA, exibe erro e bloqueia o salvamento |
| Exibe nome descritivo (lookup) | Campo NM_IMPEXTRATO é preenchido automaticamente via JOIN na query do DataModule |
| Campo opcional | Pode ficar vazio; nesse caso, o sistema usa a impressora padrão do módulo |
Simulação passo a passo
Configurando a impressora de extrato
- Acesse a tela
ADM012— Parâmetros do Usuário. - Navegue até a aba Impressoras do Usuário.
- Localize o campo Impressoras do Usuário (CD_IMPEXTRATO).
- Pressione
<F9>sobre o campo para abrir a pesquisa de impressoras. - Selecione a impressora desejada na lista (exemplo: "EPSON TM-T20" — código
3). - Confirme a seleção — o código
3é preenchido automaticamente no campo. - Salve o registro.
Resultado esperado: O código da impressora é validado contra a tabela IMPRESSORA e o nome descritivo da impressora é exibido ao lado do campo. Nas próximas impressões de extrato no módulo de restaurante (MRE005), essa impressora será utilizada.
Exceção / Importante: Se o código digitado manualmente não existir na tabela
IMPRESSORA, o sistema exibe a mensagem "A Impressora não está Cadastrada [ADM008]!" (erroE-0000) e impede o salvamento. Cadastre a impressora previamente emADM008(tabelaIMPRESSORA).
Efeito no fechamento de caixa (MRE005)
- Abra o módulo de restaurante (
MRE005) com o usuário que possuiCD_IMPEXTRATOconfigurado. - Finalize um pedido/restaurante e confirme a impressão do extrato quando questionado: "Deseja imprimir o Extrato?"
- Observe que a impressão é direcionada para a impressora configurada em
CD_IMPEXTRATO.
Resultado esperado: O extrato é impresso na impressora definida no parâmetro do usuário. Se o campo estiver vazio, o sistema usa a impressora padrão do módulo (dmMRE005.iCD_IMPRESSORA).
Tabela comparativa resumida
| Cenário | CD_IMPEXTRATO configurado | CD_IMPEXTRATO vazio |
|---|---|---|
| Fechamento de caixa (MRE005) | Usa a impressora definida no parâmetro | Usa a impressora padrão do módulo |
| Impressão direta de extrato (MRE005) | Usa a impressora definida no parâmetro | Usa a impressora padrão do módulo |
| Validação no ADM012 | Código deve existir em IMPRESSORA ADM008 | Nenhum erro — campo é opcional |
Referências cruzadas
| Parâmetro relacionado | Descrição | Tela de configuração |
|---|---|---|
CD_IMPNOTA | Impressora de Nota Fiscal | ADM012 |
CD_IMPCHEQUE | Impressora de Cheque | ADM012 |
CD_IMPRECIBO | Impressora de Recibo | ADM012 |
CD_IMPDUPLICATA | Impressora de Duplicata | ADM012 |
CD_IMPETIQUETA | Impressora de Etiqueta | ADM012 |
CD_IMPPEDIDO | Impressora de Pedido | ADM012 |
CD_IMPRECEITA | Impressora de Receita | ADM012 |
iCD_LAYEXTRATO | Layout do extrato (interno) | Configurado via parâmetro de sistema |