CD_OPERACAO - Operação de Estoque do Restaurante
Tela de configuração: TFA007 — Parâmetros do Restaurante
Tabela:PARMRESTAURANTE.CD_OPERACAO
Tipo:DOM_INTEGER(FK →OPERACAO.CD_OPERACAO)
Valor padrão:NULL
Descrição
Define a operação de estoque padrão utilizada pelo módulo Restaurante para baixa automática de insumos e produtos ao encerrar mesas/comandas. O valor armazenado é uma chave estrangeira para a tabela OPERACAO, indicando qual tipo de movimentação de estoque será gerada (normalmente uma operação de saída por consumo).
Telas impactadas
- TFA007 — tela de origem do parâmetro.
- Encerramento de Mesa / Comanda — consome
CD_OPERACAOpara gerar movimentação de estoque no fechamento (procedureENCERRA_MESA). - Telas de consulta de estoque que exibem movimentações originadas por essa operação (ex.: CEQ001, CEQ005, CNF001).
Campos envolvidos
PARMRESTAURANTE.CD_OPERACAO— operação de baixa principal.PARMRESTAURANTE.CD_OPERESTORNO— operação de estorno complementar.OPERACAO.CD_OPERACAO,OPERACAO.DS_OPERACAO,OPERACAO.TP_OPERACAO.MOVESTOQUE.CD_OPERACAO— campo onde a operação é efetivamente registrada na movimentação.
Configuração da operação padrão
| O que faz | Detalhe |
|---|---|
| Seleciona a operação de estoque | Campo editável; ao informar um código válido de OPERACAO, o sistema valida a existência e vincula a movimentação de saída de insumos |
| Sem preenchimento | NULL; pode impedir a baixa automática de estoque no encerramento de mesa, dependendo da lógica da procedure ENCERRA_MESA |
Combinação com CD_OPERESTORNO | Quando ambos estão preenchidos, permite gerar movimento de estorno caso ocorra cancelamento/reabertura de comanda |
Simulação passo a passo
- Acesse Faturamento → Restaurante → Parâmetros (
TFA007). - Localize o campo Operação (
CD_OPERACAO). - Pressione
<F9>ou clique no botão de consulta para abrir o cadastro de Operações de Estoque. - Selecione a operação desejada (ex.: Saída por Consumo Restaurante — verifique se
TP_OPERACAOindica saída). - Preencha, se necessário, o campo Operação Estorno (
CD_OPERESTORNO) com a operação inversa (ex.: Entrada por Estorno Restaurante). - Salve a alteração (
Ctrl+S).
Resultado esperado:
Ao encerrar uma mesa/comanda, o sistema automaticamente gera registro(s) em MOVESTOQUE vinculado(s) à operação configurada, dando baixa nos insumos/produtos consumidos. O custo médio e saldo em estoque são atualizados conforme o tipo da operação.
Exceção / Importante:
SeCD_OPERACAOestiverNULL(vazio), a baixa de estoque pode não ocorrer no fechamento da mesa. A operação de estorno é controlada pelo campoCD_OPERESTORNO— quando este também está vazio, estornos de comanda poderão não refletir correção de estoque.
Procedures impactadas
Rotinas Delphi — referência ao campo CD_OPERACAO (contexto geral)
O pacote de evidências não identificou referência direta a PARMRESTAURANTE.CD_OPERACAO nas rotinas Delphi. As rotinas abaixo manipulam o campo CD_OPERACAO em tabelas como OPERACAO, MOVESTOQUE e EMPRESA, servindo de infraestrutura para validação e exibição das operações de estoque:
| Rotina | Arquivo | Linha |
|---|---|---|
TfrmCEQ001.PaginasChange | source/CEQ001/UCEQ001.pas | 498 |
TdmCEQ001.tabSALDOCalcFields | source/CEQ001/UdmCEQ001.pas | 301 |
TfrmCEQ005.btnProcurarClick | source/CEQ005/UCEQ005.pas | 784 |
TfrmCEQ005.edtCD_OPERACAO1KeyDown | source/CEQ005/UCEQ005.pas | 1205 |
TfrmCNF001.PaginasChange | source/CNF001/UCNF001.pas | 1905 |
TfrmCNF005.montaConsultaNotasVenda | source/CNF005/UCNF005.pas | 4143 |
ValidaOperacao | source/jCommon/jValidate.pas | 2924 |
ValidaMovimentacao | source/jCommon/jValidate.pas | 3490 |
TfrmProdutoRecap.tabPRODUTORECAPIDOPRESTOQUEValidate | source/jRecapadora/UProdutoRecap.pas | 1153 |
Scripts SQL — referência direta ao campo CD_OPERACAO
Procedures/views que manipulam diretamente o campo genérico CD_OPERACAO e são relevantes ao fluxo de estoque:
| Procedure/View | Arquivo | Observação |
|---|---|---|
ENCERRA_MESA | Scripts/ENCERRA_MESA.sql | Linha 38 — declara V_CD_OPERACAO para movimentar estoque no fechamento de mesa. |
GERA_ESTOQUE | Scripts/GERA_ESTOQUE.sql | Movimentação de estoque genérica. |
GERA_NOTAFISCAL | Scripts/GERA_NOTAFISCAL.sql | Recebe e propaga operação na geração de nota. |
GERA_ORDEMPRODUCAO | Scripts/GERA_ORDEMPRODUCAO.sql | Usa operação para movimentar matéria-prima. |
GERA_PRODUCAO_RESTAURANTE | Scripts/PRODUCAO_RESTAURANTE.sql | Candidata por uso da tabela PARMRESTAURANTE; provavelmente consome o parâmetro diretamente. |
Scripts SQL — candidatas por uso da tabela PARMRESTAURANTE
Procedures/views que acessam PARMRESTAURANTE mas não citam explicitamente CD_OPERACAO no trecho analisado:
| Procedure/View | Arquivo | Observação |
|---|---|---|
ATUALIZA_PESSOA | Scripts/ATUALIZA_PESSOA.sql | Atualiza dados da tabela PARMRESTAURANTE. |
PROCESSA_PEDIDOSITE | Scripts/PROCESSA_PEDIDOSITE.sql | Realiza join com PARMRESTAURANTE. |
VIEW_LCM006 | Scripts/VIEW_LCM006.sql | Join com PARMRESTAURANTE para leitura de parâmetros. |
Regras de integridade
- O código informado deve existir em
OPERACAO(CD_OPERACAO). - O ideal é utilizar uma operação do tipo Saída para baixa por consumo.
- O campo
CD_OPERESTORNO(mesma tabela) deve ser mantido com a operação inversa para garantir consistência em estornos.
Tabela Comparativa Resumida
| Campo | Tipo | Tabela de origem | Finalidade |
|---|---|---|---|
CD_OPERACAO | INTEGER | OPERACAO | Operação de estoque padrão para baixa de insumos no restaurante |
CD_OPERESTORNO | INTEGER | OPERACAO | Operação de estorno da baixa (complementar) |