Classes
Type Definitions
-
ClassDefError
-
Erro na definição de uma classe de dados.
Type:
- Object
Properties:
Name Type Description classKey
number Chave da classe.
className
string Nome da classe.
classPath
string Caminho da classe.
tableName
string Nome da tabela associada à definição da classe de dados ou uma string vazia caso não haja uma.
error
string Mensagem de erro.
stackTrace
string Pilha do erro convertida em uma string.
-
ColumnDataTypeDef
-
Definição do tipo de dado de uma coluna. Em uma hierarquia de classes, uma coluna pode ter várias definições do tipo de dados que são combinadas. Este objeto representa uma dessas definições.
Type:
- Object
Properties:
Name Type Argument Description dataType
string Tipo normalizado da coluna. Deverá ser um dos tipos indicados em
DatabaseDataType
ou nulo caso o tipo não seja suportado pelo Engine.charLength
number <nullable>
Tamanho máximo em caracteres das colunas do tipo
'char'
e'varchar'
.sourceClass
number Chave da classe de dados onde esta definição foi realizada.
-
ColumnInfo
-
Informações de uma coluna da base de dados.
Type:
- Object
- See:
Properties:
Name Type Argument Description name
string Nome da coluna.
dataType
string Tipo normalizado da coluna. Deverá ser um dos tipos indicados em
DatabaseDataType
ou nulo caso o tipo não seja suportado pelo Engine.charLength
number <nullable>
Tamanho máximo em caracteres das colunas do tipo
'char'
e'varchar'
.nullable
boolean Indica que a coluna permite valores nulos.
sparse
boolean Indica que a coluna é otimizada para gravar valores nulos. O conceito de colunas esparsas é exclusivo do Microsoft SQL Server e os demais SGBDs já otimizam a gravação de nulos de forma padrão. No Oracle e PostgreSQL, essa propriedade sempre será
false
.referencedTables
Array.<ReferencedTable> Tabelas que contém os registros referenciados pelas chaves contidas nesta coluna. Será vazio em colunas que não sejam do tipo lookup.
sourceClass
number Chave da classe de dados que definiu a coluna originalmente.
userCanChangeNegativeKeyClasses
Array.<number> Chaves das classes onde esta coluna foi configurada para permitir a sua alteração até em registros de chave negativa.
dataTypeDefs
Array.<ColumnDataTypeDef> Array contendo as distintas configurações de tipo do dado e tamanho da coluna encontradas na hierarquia de classes que define a tabela.
errors
Array.<string> Erros na declaração desta coluna que impedem a sua criação ou atualização.
warnings
Array.<string> Alertas que indicam a necessidade de revisar a definição desta coluna, mas que não impedem a sua criação ou atualização.
-
DataModelSchemaInfo
-
Informações do esquema declarado pelo modelo de dados.
Type:
- Object
Properties:
Name Type Description classDefErrors
Array.<ClassDefError> Erros observados durante a execução das definições das classes de dados.
tables
Array.<TableInfo> Tabelas do modelo de dados.
tableColumns
Record.<string, Array.<ColumnInfo>> Colunas das tabelas do modelo de dados.
tableIndexes
Record.<string, Array.<IndexInfo>> Índices das tabelas do modelo de dados.
unmanagedTableNames
Array.<string> Nomes de outras tabelas que podem existir na base de dados, mas que não são gerenciadas pelo sistema.
unmanagedTableColumns
Record.<string, Array.<string>> Nomes de colunas que podem existir em tabelas do sistema e que não são gerenciadas pelo sistema.
unmanagedTableIndexes
Record.<string, Array.<string>> Nomes de índices que podem estar definidos em tabelas do sistema e que não são gerenciados pelo sistema.
-
DataModelSchemaOptions
-
Opções no processamento das definições das classes de dados.
Type:
- Object
Properties:
Name Type Description baseClass
number Classe a partir da qual será obtido o modelo de dados. Caso não seja informada, será utilizada a classe Raiz (-2010000000).
ignoreClassDefErrors
boolean Indica se os erros que impedem a construção das definições de classes devem ser ignorados e apenas registrados em log. Por padrão, um erro na construção de uma definição de classe irá interromper a execução dos métodos de obtenção de informações sobre as tabelas, colunas e índices. No entanto, se esta opção estiver ativa, esses métodos passam a ignorar esses erros e continuarão a avaliação do modelo de dados, retornando todas as configurações não afetadas pelo erro. Ao utilizar esta opção, sempre utilize o método scanForClassDefErrors para consultar os erros que foram ignorados. Os retornos dos métodos de obtenção de informações do modelo de dados devem ser considerados completos apenas se scanForClassDefErrors não retornar erros.
-
IndexInfo
-
Informações de um índice da base de dados.
Type:
- Object
Properties:
Name Type Argument Description name
string Nome do índice.
columns
Array.<string> Colunas indexadas.
columnsOrder
Array.<string> Array de mesmo tamanho de
columns
, indicando a ordem da coluna no índice. Valores possíveis:'ASC'
e 'DESC
'.filterPredicate
string Expressão de filtro dos registros indexados. A expressão será apresentada em uma representação interna e específica por SGBD. Não é esperado que ela seja igual à expressão informada no momento da construção do índice e ela pode ser alterada em versões futuras do SGBD.
unique
boolean Indica que é um índice único. Índices únicos garantem que os valores contidos neles não se repetem.
tablespace
string Nome do tablespace onde o índice deve ser criado. O Microsoft SQL Server não possui o conceito de tablespaces, portanto, nesse SGBD específico, será considerado como o filegroup, recurso específico desse SGBD que permite implementar uma segregação equivalente a obtida com o uso dos tablespaces. Um valor vazio indica que não há uma configuração específica para esse índice e ele deve ser criado no tablespace padrão.
constraintType
string Tipo da restrição que criou esse índice, caso ele tenha sido criado para validar a chave primária ou alguma outra restrição da tabela. Valores possíveis:
'PRIMARY KEY'
ou'UNIQUE'
.compressed
boolean Indica se o índice deve comprimir as chaves. Esse é um recurso exclusivo do Oracle e é habilitado por meio da opção "COMPRESS" no comando de criação do índice.
sourceClass
number <nullable>
Chave da classe de dados onde o índice foi declarado, caso ele tenha sido definido em um arquivo do tipo x-model ou x-class.
definitionKey
number <nullable>
Chave do registro que declarou o índice, caso ele tenha sido definido por meio de um registro da classe "Índices" (-1898140003).
integrityCheck
boolean Indica se o índice foi criado para a validação de integridade referencial durante a exclusão de registros do sistema.
disabled
boolean Indica se este índice foi desativado. Um índice pode ser desativado automaticamente quando há outro índice que sobrepõe as colunas indexadas por ele ou manualmente pelo administrador do sistema, quando for avaliado que o índice não gera benefícios ao desempenho do sistema. Veja a propriedade #disableReason para detalhes do motivo pelo qual o índice foi desativado.
disableReason
string Motivo pelo qual o índice foi desativado.
errors
Array.<string> Erros na declaração deste índice que impedem a sua criação ou atualização.
warnings
Array.<string> Alertas que indicam a necessidade de revisar a definição deste índice, mas que não impedem a sua criação ou atualização.
-
ReferencedTable
-
Tabela referenciada por uma coluna lookup.
Type:
- Object
Properties:
Name Type Description name
string Nome da tabela que contém os registros referenciados pelas chaves contidas na coluna.
baseClass
number Chave da classe de dados que contém os registros referenciados pelas chaves contidas na coluna. Se uma coluna for definida por mais de uma classe de dados, será retornada a classe ancestral comum a todas as definições de
classKey
encontradas.integrityCheck
boolean Indica se a coluna deve ser verificada na validação de integridade referencial durante a exclusão de registros da tabela referenciada. Se uma coluna for definida por mais de uma classe de dados, será
true
se houver ao menos uma definição com validação de integridade referencial ativa. -
TableInfo
-
Informações de uma tabela da base de dados.
Type:
- Object
Properties:
Name Type Description name
string Nome da tabela normalizado em caixa baixa.
displayName
string Nome da tabela declarado na classe de dados, sem nenhum tipo de normalização.
primaryKey
Array.<string> Nome das colunas que definem a chave primária da tabela.
tableClass
number Classe que definiu a tabela.
tableClassName
string Nome da classe que definiu a tabela.
keyFieldName
string Nome do campo que armazena a chave do registro nesta tabela.
classFieldName
string Nome do campo que armazena a classe do registro nesta tabela.
versionFieldName
string Nome do campo que armazena a versão do registro nesta tabela.
cacheStrategy
TableCacheStrategy Estratégia de como os dados desta tabela devem ser gravados no cache local do Engine.
upgradeMustSyncRecords
boolean Indica que os processos de atualização do sistema devem sincronizar os registros desta tabela.
managedDatabaseSchema
boolean Indica que o esquema da tabela deve ser atualizado pelos processos de atualização do sistema e de atualização do esquema da base de dados.
tablespace
string Nome do tablespace que deve ser utilizado para criar esta tabela.
indexTablespace
string Nome do tablespace que deve ser utilizado para os índices desta tabela.
integerDatabaseType
string Tipo de dado utilizado na base de dados para os campos do tipo "integer".
errors
Array.<string> Erros na declaração desta tabela que impedem a sua criação ou atualização.
warnings
Array.<string> Alertas que indicam a necessidade de revisar a definição desta tabela, mas que não impedem a sua criação ou atualização.