Pular para o conteúdo principal

CD_TRANSFSAI — Operação de Transferência Avulsa de Saída

Tela de configuração: MEQ001 — Parâmetros de Estoque Tabela: PARMESTOQUE.CD_TRANSFSAI Tipo: INTEGER, nullable Chave estrangeira: OPERACAO.CD_OPERACAO (constraint RPARMESTOQUE_TRANSFSAI) Valor padrão: NULL

Descrição​

Define a operação de estoque utilizada para registrar a saída em transferências avulsas de produtos entre locais ou empresas. Quando um movimento de transferência avulsa é executado, o sistema gera um registro na tabela MOVESTOQUE utilizando este código de operação para o lançamento de saída.

O parâmetro é lido por diversas telas de transferência (MEQ008, MEQ016, MEQ035, MEQ052) e pela tela de Leira (MEQ066), que valida sua existência antes de permitir o início de operações.

Telas impactadas​

TelaNomeUso do parâmetro
MEQ008Transferência entre EmpresasLê CD_TRANSFSAI para obter a operação de saída
MEQ016Transferência entre Empresas (alternativa)Lê CD_TRANSFSAI com LEFT JOIN OPERACAO para verificar ST_CONTABIL
MEQ035Transferência AvulsaLê CD_TRANSFSAI; valida que está configurado antes de permitir a transferência
MEQ052Transferência Avulsa (lote)Lê CD_TRANSFSAI de PARMESTOQUE
MEQ066LeiraValida existência na abertura; usa o valor para preencher CD_OPERSAI na manutenção de ordens de leira

Campos envolvidos​

CampoTabelaTipoDescrição
CD_TRANSFSAIPARMESTOQUEINTEGER (nullable)Código da operação de estoque para saída na transferência avulsa
DS_TRANSFSAI(calculado via JOIN)VARCHARDescrição da operação, obtida via LEFT JOIN OPERACAO TS ON (P.CD_TRANSFSAI = TS.CD_OPERACAO)

Opções disponíveis​

Campo vazio (NULL)​

O que fazDetalhe
PermitidoSim — o campo é nullable e aceita valor em branco
Efeito no sistemaO campo DS_TRANSFSAI é limpo automaticamente
Restrição em telas dependentesMEQ066 oculta todos os botões de ação e exige configuração prévia. MEQ035 e MEQ008 exibem mensagem de erro impedindo a transferência

Simulação passo a passo​

  1. Acesse MEQ001 — Parâmetros de Estoque.
  2. Localize o campo Transferência Avulsa (coluna de saída).
  3. Deixe o campo em branco (ou apague o valor existente).
  4. Salve o registro.
  5. Acesse MEQ066 — Leira e tente iniciar uma operação.

Resultado esperado: Em MEQ066, o sistema exibe a mensagem "A Operação de Estoque de Transferência Avulsa de Saída deve ser parametrizada. Verifique [MEQ001]!" e oculta os botões Salvar, Lançar Acabado, Iniciar Leira, Finalizar Leira, Incluir Produtos, Cancelar Leira e Salvar Leira.

Exceção / Importante: Se CD_TRANSFENT (operação complementar de entrada) também estiver vazio, a mensagem de erro será exibida para ambos os campos simultaneamente em MEQ066.

Código válido (operação de saída ativa)​

O que fazDetalhe
Campo editávelAceita digitação direta do código numérico ou busca via <F9>
Busca por <F9>Abre pesquisa de operações com filtro ST_ATIVO = 'S' e TP_OPERACAO = 'S' (apenas operações de Saída ativas)
Preenchimento automáticoAo informar um código válido, o campo DS_TRANSFSAI é preenchido com a descrição da operação

Simulação passo a passo — Preenchimento via <F9>​

  1. Acesse MEQ001 — Parâmetros de Estoque.
  2. Posicione no campo Transferência Avulsa (saída).
  3. Pressione <F9>.
  4. Na janela de pesquisa, selecione uma operação de saída ativa (ex: código 5, descrição "Transferência Saída").
  5. Confirme a seleção.

Resultado esperado: O campo recebe o código 5 e o campo de descrição ao lado exibe "Transferência Saída" automaticamente.

Simulação passo a passo — Digitação direta​

  1. Acesse MEQ001 — Parâmetros de Estoque.
  2. No campo Transferência Avulsa (saída), digite diretamente o código de uma operação de saída ativa (ex: 5).
  3. Pressione <Tab> para sair do campo.

Resultado esperado: O sistema valida o código, preenche a descrição no campo DS_TRANSFSAI e permite a navegação normalmente.

Código inválido — operação inexistente​

O que fazDetalhe
RejeiçãoO sistema impede a saída do campo e exibe erro
Mensagem"A Operação de Estoque não está Cadastrada [TEQ001]!"

Simulação passo a passo​

  1. Acesse MEQ001 — Parâmetros de Estoque.
  2. No campo Transferência Avulsa (saída), digite um código que não exista na tabela OPERACAO (ex: 99999).
  3. Pressione <Tab>.

Resultado esperado: O sistema exibe "A Operação de Estoque não está Cadastrada [TEQ001]!" e mantém o foco no campo.

Código inválido — operação inativa​

O que fazDetalhe
RejeiçãoO sistema impede a saída do campo e exibe erro
Mensagem"A Operação de Estoque não está Ativa [TEQ001]!"

Simulação passo a passo​

  1. Acesse MEQ001 — Parâmetros de Estoque.
  2. No campo Transferência Avulsa (saída), digite o código de uma operação que exista mas esteja com ST_ATIVO = 'N'.
  3. Pressione <Tab>.

Resultado esperado: O sistema exibe "A Operação de Estoque não está Ativa [TEQ001]!" e mantém o foco no campo.

Código inválido — operação do tipo Entrada​

O que fazDetalhe
RejeiçãoO sistema impede a saída do campo e exibe erro
Mensagem"A Operação de Estoque deve ser de Saída [TEQ001]!"

Simulação passo a passo​

  1. Acesse MEQ001 — Parâmetros de Estoque.
  2. No campo Transferência Avulsa (saída), digite o código de uma operação de Entrada (TP_OPERACAO = 'E').
  3. Pressione <Tab>.

Resultado esperado: O sistema exibe "A Operação de Estoque deve ser de Saída [TEQ001]!" e mantém o foco no campo.

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinhaComportamento
TdmMEQ001.tabPARMESTOQUECD_TRANSFSAIValidateUdmMEQ001.pas779Valida o código: consulta OPERACAO, verifica existência, status ativo e tipo (saída)
TfrmMEQ001.edtCD_TRANSFSAIKeyDownUMEQ001.pas1175Trata <F9>, abrindo pesquisa de operações de saída ativas (ST_ATIVO = 'S', TP_OPERACAO = 'S')
Busca_Parametros (MEQ008)UdmMEQ008.pas90Lê CD_TRANSFSAI para transferência entre empresas
Busca_Parametros (MEQ016)UdmMEQ016.pas163Lê CD_TRANSFSAI com LEFT JOIN OPERACAO para verificar ST_CONTABIL
Busca_Parametros (MEQ035)UdmMEQ035.pas176Lê CD_TRANSFSAI para transferência avulsa
Busca_Parametros (MEQ052)UdmMEQ052.pas88Lê CD_TRANSFSAI para transferência avulsa
iniciar (MEQ066)UMEQ066.pas242Valida que CD_TRANSFSAI está preenchido; se vazio, oculta botões de ação
TfrmMEQ066.btnTransferenciaClickUMEQ066.pas1224Atribui CD_TRANSFSAI ao campo CD_OPERSAI da manutenção de ordem de leira

Referências SQL diretas ao campo em Scripts/​

Sem referência direta ao campo CD_TRANSFSAI identificada nos scripts SQL em Scripts/. As procedures candidatas que acessam a tabela PARMESTOQUE (ex: GERA_ESTOQUE, CANCELA_ESTOQUE, etc.) não citam este campo nas evidências disponíveis.

Parâmetros relacionados​

ParâmetroTelaRelação
CD_TRANSFENTMEQ001Operação complementar de Entrada para transferências avulsas. Configurado em paralelo com CD_TRANSFSAI
ST_TRANSFEMPRESASMEQ001Indica se transferências entre empresas estão habilitadas; controla se CD_TRANSFSAI/CD_TRANSFENT serão utilizados em contexto interempresas