Dicionário de Dados (SX)¶
Status: parcial — afirmações verificadas, com lacunas declaradas.
[n · F]remete à fontenda lista de fontes; a letra marca a procedência: F fato em fonte oficial TOTVS/TDN · S fonte secundária (blog, fórum) · unverified sem fonte que sustente.
Escopo desta seção¶
O que é o Dicionário de Dados, o mapa oficial das tabelas SX, as colunas-chave de SIX, os campos de controle do DBAccess e as duas regras obrigatórias de leitura que evitam a maior parte dos bugs de consulta.
O que é¶
- O Dicionário de Dados é uma coleção de metadados que contém definições e representações de elementos de dados do sistema.[22 · F]
Mapa oficial das tabelas¶
| Tabela | Papel |
|---|---|
| SX1 | Perguntas do usuário |
| SIX | Índices das tabelas do sistema |
| SX2 | Tabelas do sistema |
| SX3 | Estrutura de campos |
| SX5 | Tabelas genéricas |
| SX6 | Parâmetros do sistema |
| SX7 | Gatilhos de campos |
| SX9 | Relacionamento das tabelas |
| SXA | Pastas e agrupamentos dos campos |
| SXB | Lookups |
| SXE | Controle de numeração utilizados |
| SXF | Próximos números |
| SXG | Grupo de campos |
| XXA | Regras de dependência entre campos |
(mapa conforme a TDN[22])
SIX — índices¶
- SIX tem as colunas-chave
INDICE,ORDEM,CHAVE— conjunto de campos separados por+—,DESCRICAO,PROPRI,NICKNAMEeSHOWPESQ, que quando preenchido com"S"faz o índice aparecer no Browse do sistema.[23 · F] - Toda tabela precisa de pelo menos um índice com
SHOWPESQ = "S"para poder ser exibida dentro de um browse.[23 · F]
Campos de controle do DBAccess¶
- Campos de controle:
R_E_C_N_O_como chave primária do registro,D_E_L_E_T_como flag de exclusão lógica — branco para linha ativa e asterisco para linha excluída —, eR_E_C_D_E_L_.[28 · F] - Representação física: campos
DATAsão armazenados como caractere de 8 dígitos e campos numéricos como FLOAT.[28 · F] - Em
INSERT, o registro nasce com valores vazios por tipo — caractere com espaços, numérico com 0, data vazia, booleano.F.— e só é definitivo ao soltar o lock.[29 · F]
As duas regras obrigatórias de leitura¶
Regra 1 e Regra 2 — não são estilo, são correção
- Filial: igualar o campo filial da tabela ao
xFilialdaquela tabela. Nunca comparar_FILIALde uma tabela com o de outra.[28] - Exclusão lógica: filtrar as linhas excluídas com
D_E_L_E_T_ = ' '— que é mais rápido queD_E_L_E_T_ <> '*'.[28]
- A recomendação da TOTVS é usar sempre que possível SQL em vez de varredura ISAM/
DbSkip, porque a query descarta eficientemente as linhas excluídas logicamente.[28 · F]
Lacunas declaradas¶
Lacuna: o detalhamento coluna a coluna de SX2, SX3, SX5, SX6, SX7, SX1, SX9 e SXB não vem da pesquisa. Vem do dicionário coletado — veja Busca de tabelas (e, para agentes,
camposerelacionamentos): são campos, índices e ligações por tabela, com a fonte declarada.Lacuna: a skill
data-dictionary-lookup(emskills/) carrega referência de colunas própria — útil para consulta offline.
Fontes¶
[22] · [23] · [28] · [29] — ver lista completa.