Pular para o conteúdo principal

ST_TRANSFEMPRESAS — Parâmetro de Transferência entre Empresas

Tela de configuração: MEQ001 — Parâmetros de Estoque Tabela: PARMESTOQUE.ST_TRANSFEMPRESAS Tipo: CHAR(1) · Valor padrão: S (Sim) · NOT NULL Componente na tela: cmbST_TRANSFEMPRESAS (combo box)


Resumo​

Controla se o sistema permite transferências de estoque entre empresas (filiais) distintas. Quando habilitado ('S'), as telas de transferência (MEQ008, MEQ016, MEQ052) liberam os campos de empresa origem e empresa destino para seleção livre. Quando desabilitado ('N'), esses campos ficam travados na empresa da sessão corrente, restringindo transferências ao âmbito da mesma empresa.


Telas impactadas​

TelaNomeEfeito do parâmetro
MEQ008Transferência de EstoqueBloqueia/desbloqueia campos CD_EMPRESAOR e CD_EMPRESADS
MEQ016Transferência de Estoque (Outra rotina)Consulta o parâmetro via Busca_Parametros
MEQ052Transferência Avulsa de EstoqueMesma lógica do MEQ008 — bloqueia empresa origem/destino

Campos envolvidos​

CampoTabelaFunção
ST_TRANSFEMPRESASPARMESTOQUEFlag S/N que habilita transferência entre empresas
CD_EMPRESAORMOVESTOQUEEmpresa origem da transferência
CD_EMPRESADSMOVESTOQUEEmpresa destino da transferência

Opções disponíveis​

S — Permite Transferência entre Empresas (Padrão)​

O que fazDetalhe
Transferência entre filiaisHabilitada — campos empresa origem/destino ficam editáveis
RestriçãoNenhuma — qualquer combinação de empresas é permitida

Simulação passo a passo​

  1. Acesse MEQ001 — Parâmetros de Estoque.
  2. Localize o campo ST_TRANSFEMPRESAS e selecione "Sim".
  3. Salve o registro.
  4. Abra MEQ008 — Transferência de Estoque e clique em Novo.
  5. Observe que os campos Empresa Origem e Empresa Destino estão habilitados para edição.
  6. Selecione empresas diferentes em cada campo e prossiga com a transferência.

Resultado esperado: O sistema aceita a transferência entre filiais distintas, movimentando estoque de uma empresa para outra.


N — Restrito à Mesma Empresa​

O que fazDetalhe
Transferência entre filiaisBloqueada — campos empresa origem/destino ficam readonly
RestriçãoEmpresa origem e destino são travados automaticamente na empresa da sessão

Simulação passo a passo​

  1. Acesse MEQ001 — Parâmetros de Estoque.
  2. Localize o campo ST_TRANSFEMPRESAS e selecione "Não".
  3. Salve o registro.
  4. Abra MEQ008 — Transferência de Estoque e clique em Novo.
  5. Observe que os campos Empresa Origem e Empresa Destino estão bloqueados (cinza) e preenchidos automaticamente com a empresa da sessão.
  6. Os campos não permitem alteração manual.

Resultado esperado: A transferência só pode ocorrer dentro da mesma empresa. Os campos de empresa ficam travados e o cursor muda para crDefault, indicando campo não editável.

Excecao / Importante: Mesmo com 'N', os campos CD_EMPRESAOR e CD_EMPRESADS são preenchidos automaticamente com sessao.empresa.cd_empresa no evento btnNovoClick. A transferência dentro da mesma empresa continua funcionando normalmente.


Regra Geral​

O parâmetro é lido na inicialização das telas de transferência via procedure Busca_Parametros, que executa:

SELECT CD_TRANSFSAI, CD_TRANSFENT, ST_TRANSFEMPRESAS
FROM PARMESTOQUE
WHERE CD_EMPRESA = :cd_empresa_sessao

O valor retornado é armazenado na variável iST_TRANSFEMPRESAS e verificado no momento em que o usuário clica em Novo para iniciar uma nova transferência.


Tabela Comparativa Resumida​

Aspecto'S' (Sim)'N' (Não)
Transferência entre filiais✅ Permitida❌ Bloqueada
Campos empresa origem/destinoEditáveisReadonly (travados)
Empresa forçadaLivre seleçãoEmpresa da sessão
Valor padrão✅—

Procedures impactadas​

Rotinas Delphi com referência direta ao campo​

RotinaArquivoLinhaEvidência
TdmMEQ001.tabPARMESTOQUEAfterInsertsource/MEQ001/UdmMEQ001.pas285Define valor padrão 'S' ao inserir novo registro
TfrmMEQ008.btnNovoClicksource/MEQ008/UMEQ008.pas640Verifica iST_TRANSFEMPRESAS = 'N' para travar campos
Busca_Parametrossource/MEQ008/UdmMEQ008.pas90Lê ST_TRANSFEMPRESAS de PARMESTOQUE
Busca_Parametrossource/MEQ016/UdmMEQ016.pas163Lê ST_TRANSFEMPRESAS de PARMESTOQUE
TfrmMEQ052.btnNovoClicksource/MEQ052/UMEQ052.pas346Verifica iST_TRANSFEMPRESAS = 'N' para travar campos
Busca_Parametrossource/MEQ052/UdmMEQ052.pas88Lê ST_TRANSFEMPRESAS de PARMESTOQUE

Referências SQL diretas ao campo em Scripts/​

Nenhuma referência direta ao campo ST_TRANSFEMPRESAS foi encontrada em procedures SQL sob Scripts/. O campo é consultado exclusivamente via SQL dinâmico nas units Delphi listadas acima.

Candidatas por uso da tabela PARMESTOQUE​

As seguintes procedures fazem JOIN ou SELECT na tabela PARMESTOQUE, mas não citam o campo ST_TRANSFEMPRESAS diretamente — podem indiretamente depender de outros parâmetros da mesma tabela:

<details> <summary>Lista de procedures candidatas (expandir)</summary>

ProcedureArquivo
AJUSTA_ORDEMPRODPEDANTECIPADOScripts/AJUSTA_ORDEMPRODPEDANTECIPADO.sql
ALTERACAO_BANDAScripts/ALTERACAO_BANDA.sql
ATUALIZA_CONSUMOMEDIOScripts/ATUALIZA_CONSUMOMEDIO.sql
ATUALIZA_ESTOQUEDIAPESSOAScripts/ATUALIZA_ESTOQUEDIAPESSOA.sql
CALCULA_FORMACAOPRECOVENDAScripts/CALCULA_FORMACAOPRECOVENDA.sql
CANCELA_ESTOQUEScripts/CANCELA_ESTOQUE.sql
CONFIRMA_ORDEMSERVICOScripts/CONFIRMA_ORDEMSERVICO.sql
GERA_ESTOQUEScripts/GERA_ESTOQUE.sql
GERA_ESTOQUE_NOTAFISCALScripts/GERA_ESTOQUE_NOTAFISCAL.sql
GERA_NOTAFISCALESTOQUEScripts/GERA_NOTAFISCALESTOQUE.sql
GERA_ORDEMPRODUCAOScripts/GERA_ORDEMPRODUCAO.sql
GERA_SPEDBLOCOLScripts/GERA_SPEDBLOCOL.sql
GRAVA_AVISOSScripts/GRAVA_AVISOS.sql

</details>