Em ambientes corporativos é comum uma mesma instalação do TOTVS Protheus atender a várias empresas, cada uma com diversas filiais. Para organizar isso, o Protheus permite definir um leiaute de código que separa, dentro do campo Filial, quantos caracteres pertencem à empresa e quantos pertencem à filial. Neste guia, vamos montar do zero uma estrutura com duas empresas e quatro filiais em cada uma, usando o padrão EEEEFFFF, e entender o que cada passo significa por baixo dos panos.

O que significa o padrão EEEEFFFF

A partir da versão 11, o Protheus oferece dois modelos para estruturar empresas: o conceito clássico Empresa / Filial e o conceito de Gestão de Empresas. O segundo permite compartilhar o mesmo dicionário de dados entre várias empresas e configurar livremente o tamanho dos códigos. Sempre que o código contém mais de dois dígitos para a empresa, você já está no modelo de Gestão de Empresas — e é exatamente o caso do padrão EEEEFFFF.

O leiaute é uma máscara que diz como o campo Filial das tabelas será composto. Cada letra representa um nível:

LetraNívelDescrição
EEmpresaIdentifica a empresa dentro do grupo
UUnidade de NegócioAgrupamento opcional de filiais
FFilialIdentifica a filial em si

No padrão EEEEFFFF temos 8 caracteres no total: os quatro primeiros para a empresa e os quatro últimos para a filial. Não há Unidade de Negócio nesse leiaute, o que mantém a estrutura simples. O limite máximo do campo é de 12 caracteres, então 8 está perfeitamente dentro do permitido.

Defina o leiaute com calma. Ele determina o tamanho do campo Filial em todas as tabelas do grupo e mudar isso depois, com base já populada, é um processo de migração trabalhoso. Planeje pensando no crescimento futuro da operação.

Planejando a estrutura antes de cadastrar

Antes de abrir o Configurador, vale desenhar a estrutura no papel. Com duas empresas (0001 e 0002) e quatro filiais em cada (0001 a 0004), o código composto que ficará gravado nas tabelas é a junção da empresa com a filial:

EmpresaFilialCódigo composto (EEEEFFFF)
00010001 (Matriz)00010001
0001000200010002
0001000300010003
0001000400010004
00020001 (Matriz)00020001
0002000200020002
0002000300020003
0002000400020004

Repare que o código da filial se repete (0001 a 0004) em cada empresa — o que diferencia as filiais entre as empresas é o prefixo da empresa. Por isso o código composto é único em todo o grupo.

Passo 1 — Criar o Grupo de Empresas

O grupo é o nível mais alto da estrutura e é ele quem controla o dicionário de dados compartilhado. Acesse o Configurador (SIGACFG) e siga o caminho Ambiente > Empresas > Grupo de Empresas. Clique em Incluir e preencha:

  • Código: um identificador para o grupo, por exemplo 99. Esse código entra no nome físico das tabelas do grupo (algo como SB199).
  • Descrição: o nome do grupo, por exemplo Grupo Golden Demonstração.
  • Tamanho: a quantidade de caracteres que o campo Filial terá. Para EEEEFFFF, informe 8.
  • Leiaute: defina EEEEFFFF, indicando 4 posições de empresa seguidas de 4 de filial.

Confirme a criação do grupo. A partir daqui, todas as empresas e filiais que você cadastrar herdarão essa máscara de 8 dígitos.

Passo 2 — Cadastrar as duas empresas

Ainda no menu de empresas do Configurador, acesse o cadastro de Empresas e inclua a primeira:

  • Grupo: selecione o grupo criado no passo anterior (99).
  • Código da empresa: 0001 (quatro dígitos, conforme as quatro letras E do leiaute).
  • Descrição / Razão Social: por exemplo Golden Comércio S.A..

Confirme e repita o processo para a segunda empresa, usando o código 0002 e a descrição correspondente (por exemplo Golden Serviços Ltda.). Preencha CNPJ, endereço e demais dados fiscais de cada empresa quando disponíveis — os campos com asterisco são obrigatórios; os demais são opcionais.

Passo 3 — Cadastrar as quatro filiais de cada empresa

Com as empresas criadas, acesse o cadastro de Filial em Ambiente > Empresas > Filial e clique em Incluir. Para cada filial:

  1. Selecione o Grupo e a Empresa à qual a filial pertence (comece pela empresa 0001).
  2. Informe o Código da Filial, começando por 0001 para a matriz.
  3. Preencha a Descrição, por exemplo Matriz São Paulo.
  4. Complete os dados fiscais e de endereço e clique em Confirmar.

Repita para as filiais 0002, 0003 e 0004 da empresa 0001 e, em seguida, faça o mesmo conjunto de quatro filiais para a empresa 0002.

Ao confirmar a criação, o Protheus normalmente pergunta se deseja criar o dicionário de dados agora. As opções costumam ser: criar a partir de uma base existente (recomendado quando já existe uma empresa configurada do jeito que você quer replicar), criar com registros padrão do Protheus, ou não criar agora (o dicionário será gerado ao acessar um módulo pela primeira vez por aquela empresa). Em ambientes novos, criar a partir de uma base já ajustada poupa muito retrabalho.

Como o código composto aparece nas tabelas

Depois de tudo cadastrado, o campo Filial de cada tabela passa a armazenar o código composto de 8 dígitos. No cadastro de produtos (tabela SB1), por exemplo, o campo B1_FILIAL de um produto criado na segunda filial da primeira empresa terá o valor 00010002. Uma consulta direta no banco deixa isso claro:

SELECT B1_FILIAL, B1_COD, B1_DESC
FROM SB1990
WHERE B1_FILIAL = '00010002'
  AND D_E_L_E_T_ = ' ';

No exemplo acima, SB1990 representa a tabela de produtos do grupo 99, e o filtro por B1_FILIAL = '00010002' isola os registros da filial 0002 da empresa 0001. É esse formato que garante o isolamento dos dados entre empresas e filiais, mesmo elas compartilhando o mesmo dicionário.

Boas práticas e armadilhas comuns

  • Teste antes em uma base de homologação. Estruturação de empresas mexe na base inteira do grupo; nunca faça isso direto em produção sem validar.
  • Atenção ao leiaute escolhido. Migrar de um padrão menor (como FF ou EEFF) para outro maior depois exige procedimento de migração de tabelas. Comece já no tamanho que comporta o crescimento.
  • Contrato Corporativo e o arquivo sigamat.emp. Em contratos corporativos, a inclusão de novas empresas ou filiais pode exigir revalidação do sigamat.emp junto à TOTVS, pois o CNPJ é verificado no arquivo de licenças. Confirme o tipo do seu contrato antes de iniciar.
  • Padronize a numeração. Manter a filial 0001 sempre como matriz em todas as empresas facilita relatórios, parametrizações e a leitura do ambiente por novos integrantes da equipe.
  • Faça backup. Antes de qualquer alteração estrutural, garanta backup da base de dados e dos diretórios de dicionário.

Conclusão

Montar um ambiente com duas empresas e quatro filiais cada no padrão EEEEFFFF é, na prática, uma sequência clara: criar o grupo com tamanho 8 e leiaute definido, cadastrar as empresas com código de quatro dígitos e, por fim, as filiais de cada uma — entendendo sempre que o campo Filial das tabelas guardará o código composto de empresa mais filial. Com a estrutura bem planejada desde o início, você evita migrações dolorosas e ganha um ambiente organizado e fácil de manter.

Se a sua equipe quer dominar a administração de ambientes TOTVS e a modelagem de dados por trás deles, vale conhecer os cursos da Golden Dados ou falar com a gente em nosso canal de contato.