Compartilhamento de tabelas entre empresas e filiais
Obtém a filial da tabela conforme seu modo de compartilhamento.
Visão geral
Não fixe o código da filial em buscas e consultas. xFilial consulta o contexto de compartilhamento da tabela no SX2; seu resultado não é necessariamente igual à filial de login. Monte chaves e filtros conforme o alias e o índice efetivamente usados. O exemplo apenas obtém a filial aplicável a SA1 e registra o tamanho, sem expor registros. Alterar compartilhamento é uma mudança de dados e de regras de unicidade, não uma simples troca de string em um fonte; planeje a migração pelo procedimento suportado. (TOTVS, s.d., ref. 1)
Exemplo comentado
#Include "Protheus.ch"
User Function Ed307()
Local cFilial := xFilial("SA1")
// Nao presume codigo fixo nem altera o SX2.
ConOut(cValToChar(Len(cFilial)))
Return NilComprimento dependente do dicionário; sem mudança de configuração ou consulta de clientes. Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.
- Revisar relacionamentos, índices e dados duplicados antes de compartilhar. Usar a filial do alias correto, especialmente em joins de tabelas com modos diferentes.
- Em revisão: exemplo editorial não compilado nem executado em Protheus. Conferir includes, release, RDD e contexto antes de homologar.

Comentários
Ainda não há comentários aprovados.
Entre com Google ou Microsoft para comentar.