SM0 — Empresas e Filiais
Cadastro mestre de empresas e filiais. Arquivo binario proprietario (sigamat.emp), nao tabela SQL. Lido via FwLoadSM0().
SM0 NAO e tabela SQL — e arquivo binario (sigamat.emp na pasta system). Cadastra empresas/filiais, dados fiscais, configuracao por filial. Lido programaticamente via FwLoadSM0().
Campos principais
| Campo | Tipo | Descricao |
|---|---|---|
| M0_CODIGO | C | Codigo empresa (ex: "99") |
| M0_CODFIL | C | Codigo filial (ex: "01") |
| M0_NOMECOM | C | Nome comercial |
| M0_FILIAL | C | Filial nome |
| M0_NOME | C | Razao social |
| M0_CGC | C | CNPJ |
| M0_INSC | C | IE |
| M0_ENDCOB | C | Endereco cobranca |
| M0_ESTCOB | C | UF |
| M0_TEL | C | Telefone |
| M0_FAX | C | Fax |
Codigo tipico
// Listar todas empresas/filiais
aEmp := FwLoadSM0()
For i := 1 To Len(aEmp)
ConOut(aEmp[i][1] + "/" + aEmp[i][2] + " - " + AllTrim(aEmp[i][7]))
Next
// Em loop pra processar todas filiais (multiempresa)
For i := 1 To Len(aEmp)
RpcSetType(3)
RpcSetEnv(aEmp[i][1], aEmp[i][2])
U_ProcessaFilial()
RpcClearEnv()
Next
Pegadinhas
- Nao acessivel via DBSeek — usar FwLoadSM0/OpenSM0.
- Edicao via Configurador → Ambiente → Empresas/Filiais.
- cEmpAnt + cFilAnt sao as variaveis vivas com codigos da sessao atual.
- Backup do sigamat.emp e CRITICO — perda derruba todas filiais.