SX3 — Campos do Dicionario

Definicao de TODOS os campos de TODAS as tabelas. Tipo, tamanho, validacao, picture, default. O dicionario por excelencia. Funcoes TamSx3 leem daqui.

SX3 e o dicionario por excelencia — cada campo do sistema (A1_NOME, E1_VALOR, B1_DESC...) tem 1 registro aqui com tipo, tamanho, picture, validacoes, valor default. Toda customizacao que adiciona campo customizado mexe na SX3.

Campos principais

CampoTipoDescricao
X3_CAMPOCNome do campo (ex: "A1_NOME")
X3_ARQUIVOCAlias da tabela (ex: "SA1")
X3_ORDEMCOrdem de exibicao
X3_TITULOCTitulo PT-BR (label tela)
X3_TITSPACTitulo espanhol
X3_TITENGCTitulo ingles
X3_DESCRICCDescricao
X3_TIPOCC=Char, N=Num, D=Date, L=Log, M=Memo, B=Block
X3_TAMANHONTamanho
X3_DECIMALNDecimais
X3_PICTURECMascara exibicao (@E 999.99)
X3_VALIDCValidacao (expressao)
X3_USADOCSequencia de bits (usado/nao usado por modulo)
X3_RELACAOCConteudo default ou link
X3_F3CConsulta padrao
X3_OBRIGATCS=Obrigatorio
X3_BROWSECS=Aparece em browse

Indices

OrdemChave
1X3_ARQUIVO+X3_ORDEM
2X3_CAMPO
3X3_ARQUIVO+X3_CAMPO

Codigo tipico

// Obter info de campo (forma "manual")
SX3->(DBSetOrder(2))
If SX3->(DBSeek("A1_NOME"))
    nTam := SX3->X3_TAMANHO
    cPic := SX3->X3_PICTURE
EndIf

// Forma preferida — helper TamSx3
nTam := TamSx3("A1_NOME")[1]
nDec := TamSx3("A1_LC")[2]
cTipo := TamSx3("A1_DTNASC")[3]   // "D" pra Date

Tabelas relacionadas

TabelaRelacao
SX2Tabela (cada SX3 pertence a uma SX2)
SX6Parametros podem referenciar SX3 em SVar

Pegadinhas

Veja também