A tabela SX3 do Dicionário de Dados define de uma forma padronizada a estrutura de campos das tabelas disponíveis dentro do Ambiente Microsiga Protheus.
Toda modificação que se deseje fazer na estrutura de tabelas do Microsiga Protheus, no que se diz respeita a campos deverá ser feita nesta tabela. É importante salientar e reforçar o uso da ferramenta disponível para manipulação do SX3 dentro do Microsiga Protheus, chamado de Configurador, pois algumas modificações só serão replicadas ao banco de dados caso efetuemos a alteração via ferramenta.
O SX3 abre o um leque de inúmeras possibilidades para a customização das tabelas do sistema.
Campos | Tipo | Descrição |
X3_ARQUIVO | Caracter | Nome da tabela de dados, ao qual o campo faz parte, a Tabela deve ser definida na tabela SX2, (X2_CHAVE) |
X3_ORDEM | Caracter | Ordem de apresentação dos campos. A ordem é importante pois alguns LookUPs(Consulta Padrão) retornam mais do que 1 valor e alterar a ordem de um campo pode fazer que o retorno de uma consulta não preencha corretamente. |
X3_CAMPO | Caracter | O nome do campo deve ser único para a mesma tabela, no Microsiga Protheus deve-se seguir o padrão de se utilizar o nome do arquivo, seguido de _ para formar o nome. Dessa forma fica disponível para o usuário 6 dígitos para formação do nome do campo. Existe uma exceção a essa regra, a família de tabelas começada com o prefixo "S" são representadas sem o S inicial, permitindo assim o uso de 7 dígitos para o nome do campo. Por exemplo: PA1_CLIENT / E1_CLIENTE |
X3_TIPO | Caracter | Tipo de dado armazenado pelo campo. Valores possíveis: C-Tipo Caracter; N - Numérico; D - Data ; M - Memo; L - Lógico |
X3_TAMANHO | Inteiro | Determina o tamanho do campo conforme o Tipo. O tamanho máximo é 254 caracteres. A alteração do tamanho de campos deve ser realizada apenas via Configurador. |
X3_DECIMAL | Inteiro | Usado apenas quando o X3_TIPO for Numérico. Determina a quantidade de casas decimais. |
X3_TITULO | Caracter | Rótulo com a descrição resumida do campo no idioma Português |
X3_TITSPA | Caracter | Rótulo com a descrição resumida do campo no idioma Espanhol |
X3_TITENG | Caracter | Rótulo com a descrição resumida do campo no idioma Inglês |
X3_DESCRIC | Caracter | Rótulo com a descrição do campo no idioma Português |
X3_DESCSPA | Caracter | Rótulo com a descrição do campo no idioma Espanhol |
X3_DESCENG | Caracter | Rótulo com a descrição do campo no idioma Inglês |
X3_PICTURE | Caracter | Picture do Campo. A picture de um campo é a mascara de entrada que o campo deve respeitar. |
X3_VALID | Caracter | Função de validação geral do campo, enviada como default pelo sistema, a não ser que seja dado permissão para alteração deste campo, o mesmo não é alterável para o cliente. Exemplo de conteúdo: ExistCpo("SX5","12"+M->A1_EST) .AND. IE(M->A1_INSCR,M->A1_EST) A função deverá ser Function(para GDPs) ou User Function (Cliente) , Static Function não podem ser utilizadas. |
X3_USADO | Caracter | |
X3_RELACAO | Caracter | Inicializador Padrão do Campo. Normalmente utilizamos o inicializador padrão para preenchimento de campos virtuais, ou campos que necessitam de valores padrões já na inclusão do registro. A função deverá ser Function(para GDPs) ou User Function (Cliente) , Static Function não podem ser utilizadas. |
X3_F3 | Caracter | Contem o código do LookUp do campo, esse é código relacionado ao dicionário SXB. |
X3_NIVEL | Caracter | Nível de Campo. Na montagem das telas de cadastro do Microsiga Protheus, é sempre verificado o nível do usuário e dos campos, assim podemos ter usuário que visualizam campos e outros usuário que não. |
X3_RESERV | Caracter | Campo de controle interno para permitir ou não alterar características do campo. |
X3_CHECK | Caracter | ***Não Usado *** |
X3_TRIGGER | Caracter | Quando preenchido com S, ao se preencher o campo, irá executar os gatilhos(SX7) associados a esse campo. |
X3_PROPRI | Caracter | Quando preenchido com U indica campo customizado. |
X3_BROWSE | Caracter | Indica se o campo será apresentado em browse de seleção de registros dessa tabela, valores aceitos são "S" , "N" e Branco, sendo considerando branco com não. |
X3_VISUAL | Caracter | Determina se o campo será apresentado na tela, Se ele estiver em Branco ou com "A" ele é alterável na tela, se estiver com "V" será apresentado apenas para visualização. |
X3_CONTEXT | Caracter | Determina o contexto do campo, Existe dois tipos de contextos, o primeiro é o Real ("R" ou branco) que significa que o campo será gravado fisicamente, ou seja ele existe na tabela de banco de dados. Caso ele seja Virtual, ele é apenas criado nas telas do sistema, não sendo gravado em lugar nenhum. Campos virtuais são útil para normalização de tabelas. Por exemplo se você quiser na sua tabela ter o nome do Cliente, você cria um campo Virtual para mostrar o nome do cliente. Porém o mesmo não será gravado na base de dados, evitando assim redundância de informação. |
X3_OBRIGAT | Caracter | Campo de uso interno para determinar se o campo é obrigatório ou não. |
X3_VLDUSER | Caracter | Campo de validação do usuário. Esse campo pode vir preenchido na instalação padrão do produto, porém é permitido que o cliente o customize. A função deverá ser Function(para GDPs) ou User Function (Cliente) , Static Function não podem ser utilizadas. |
X3_CBOX | Caracter | String com os valores possível para um campo tipo Combo Box em Português. Esses valores seguem no formato: F=Cons.Final;L=Produtor Rural;R=Revendedor;S=Solidario;X=Exportacao |
X3_CBOXSPA | Caracter | String com os valores possível para um campo tipo Combo Box em Espanhol. |
X3_CBOXENG | Caracter | String com os valores possível para um campo tipo Combo Box em Inglês. |
X3_PICTVAR | Caracter | Função que determina a Picture do Campo e tempo de execução. Exemplo de uso, no cadastro de Cliente, quando alteramos o tipo de pessoa (entre jurídica e física), a picture do campo A1_CGC, é alterado para validar CPF ou CNPJ. |
X3_WHEN | Caracter | Função que determina se o campo pode ser alterado em tempo de execução. O When de cada campo e executado a cada mudança de foco no sistema, ou seja, a cada vez que o usuário preencher algum campo ou trocar de campo selecionado. Portanto deve-se sempre se atentar para não produzir funções que efetuam um grande processamento. A função deverá ser Function(para GDPs) ou User Function (Cliente) , Static Function não podem ser utilizadas. |
X3_INIBRW | Caracter | Função chamada na inicialização do Browse da tabela, obrigatoriamente utilizada em campo de contexto Virtual. A função deverá ser Function(para GDPs) ou User Function (Cliente) , Static Function não podem ser utilizadas. |
X3_GRPSXG | Caracter | Código do grupo de campo(SXG) que o campo pertence. Todos os campos que estão associados a um grupo de campo, sofrem as alterações quando alteramos ele. Por exemplo, em uma tabela customizada, colocamos o nosso campo PA1_PRODUT no grupo de campo do produto padrão do sistema, ao se alterar o tamanho do campo do B1_COD por exemplo, nosso campo também será atualizado. |
X3_FOLDER | Caracter | Número da Folder aonde o campo será apresentado. A folder será avaliada apenas se a tabela não for apresentada num Grid. A descrição das tabelas está no Dicionario SXA. |
X3_PYME | Caracter | Determina se a pergunta é utilizada pelo Microsiga Protheus Serie 3 |
X3_CONDSQL | Caracter | ***Não usado*** |
X3_CHKSQL | Caracter | ***Não usado*** |
X3_IDXSRV | Caracter | Protheus Search? |
X3_ORTOGRA | Caracter | Habilita o uso do Corretor ortográfico. |
X3_IDXFLD | Caracter | Protheus Search? |
X3_TELA | Caracter | Utilizado quando precisamos omitir o campo em situação diversas na mesma tabela. Devemos utilizar números separados por | para determinar quando o campo será apresentado. Ao se utilizar a função Enchoice ou a Classe MSMGET. Rotina que utilizam o novo modelo MVC não faz uso desse campo. Devendo utilizar o perfil de usuário para tratar situações assim. |
X3_AGRUP | Caracter | Código do Agrupador (SXA). Disponível para rotina escritas na tecnologia MVC, podemos criar um Agrupador dentro de cada folder. |
X3_POS | Caracter | Indica se o campo será exportado na ferramenta de PDV. |