new ViewDef(key)
Abstração da definição da camada de visão a partir de uma classe. Pode ser entendido como uma interface stateful para um mapeamentos objeto-relacional, na camada MVC.
Parameters:
| Name | Type | Description |
|---|---|---|
key |
string |
Chave da classe |
Extends
Members
-
cache :module:@nginstack/engine/lib/classdef/ClassDefCache~ClassDefCache
-
Objeto utilizado para guardar informações de cache associadas a uma definição de modelo de dados de uma classe. Quando uma definição é modificada, todas as informações no cache associadas a ela são descartadas. O sistema também poderá realizar descarte das informações a qualquer momento por outros critérios, como limite do tamanho do cache ou redução do consumo de memória da aplicação.
Importante: como o cache a princípio é mantido durante toda a vida do sistema, não utilize-o para guardar dados de informações úteis apenas para um processamento específico que não será reutilizado em outro momento da vida de uma sessão.Type:
- Inherited From:
-
cacheStrategy :TableCacheStrategy
-
Define a estratégia de cache da tabela associada a esta classe no cache local dos Engines.
Type:
- TableCacheStrategy
-
cachedData :boolean|CachedDataOptions
-
Determina a existência de replicação de dados da tabela em disco.
Type:
- boolean| CachedDataOptions
-
cachedFields :Array.<string>
-
Determina quais campos serão armazenados no cache local. Conceito desligado na versão 4.0 ou superior.
Type:
- Array.<string>
-
cachedVfsContent :boolean
-
Determina como será armazenado o conteúdo dos arquivos da VFS (coluna iContent) desta classe. Caso seja
true, o conteúdo dos arquivos será armazenado diretamente na tabela iVfs, fazendo parte do cache local. Caso sejafalse, o conteúdo será armazenado na tabela iVfsLob apenas na base de dados, sendo necessária uma consulta ao banco de dados na leitura do conteúdo do arquivo.Importante: arquivos do tipos "application/x-config", "application/x-model", "application/x-view" e "application/x-class" sempre são armazenados diretamente na tabela iVfs, independentemente do valor desta propriedade.
Type:
- boolean
-
canDuplicate :boolean
-
Indica se os registros da classe de dados podem ser duplicados pela grade do Web Framework.
Type:
- boolean
- Default Value:
-
true
-
canNavigate :boolean
-
Permite que a classe seja navegável para o menu principal do sistema.
Type:
- boolean
-
classChangePolicy :number
-
Indica a forma como se valida a mudança de classe dos registros.
Type:
- number
-
classDefManager :module:@nginstack/engine/lib/classdef/ClassDefManager~ClassDefManager
-
Gestor de definições de classe.
Type:
-
classFieldName :string
-
Indica qual é o nome do campo na tabela que irá relacionar a classe no registro.
Type:
- string
-
<nullable> classKey :number
-
Chave da classe de dados a qual esta definição está associada.
Type:
- number
- Inherited From:
-
confirmCancel :boolean|undefined
-
Habilita a confirmação de cancelamento na interface de grade do web framework quando conter o valor true.
Type:
- boolean| undefined
-
confirmChange :boolean|undefined
-
Habilita a confirmação de alteração na interface de grade do web framework quando conter o valor true.
Type:
- boolean| undefined
-
confirmDelete :boolean|undefined
-
Habilita a confirmação de remoção na interface de grade do web framework quando conter o valor true.
Type:
- boolean| undefined
-
dataDictionary :string
-
Ajuda sobre o que representa a tabela no nível da classe. Aqui devem ser abordados assuntos técnicos e relacionados a estrutura e relacionamentos entre as tabelas
Type:
- string
-
<non-null> datasourceDefaultFilters :Array.<string>
-
Indica quais campos serão filtros da consulta de um datasource.
Type:
- Array.<string>
- Inherited From:
- Deprecated:
-
- Yes
-
dbIndexSpace :string
-
Indica em qual tablespace serão criados os índices da tabela definida por esta classe ou uma de suas filhas.
Type:
- string
-
<non-null> dbIndexes :Array.<string>
-
Índices que devem ser criados no banco de dados. Cada item do array deve ser uma expressão de uma ou mais colunas, separadas por vírgula.
Type:
- Array.<string>
Example
this.dbIndexes.push('CLASSE'); this.dbIndexes.push('UF,CLASSE'); -
<non-null> dbSums :Array
-
Utilize a API nova de tabela de soma.
Type:
- Array
- Inherited From:
- Deprecated:
-
- Yes
-
dbTableSpace :string
-
Indica em qual TABLE_SPACE as tabelas serão criadas.
Type:
- string
-
defaultExplorerIndex :Array.<string>|string
-
Índice utilizado para ordenar o DataSet do processo "Explorador de registros.ip". Esse processo utilizará o método DataSet.setIndex se esta propriedade for um array de strings ou o processo utilizará a propriedade DataSet.indexFieldNames se defaultExplorerIndex for uma string.
Type:
- Array.<string>| string
-
defaultGlobalActionName :string
-
Registra o nome de uma uma ação global para que esta ação seja executada automaticamente quando o usuário clicar sobre um dos registros da "Busca do sistema" no diálogo de busca. Será disparado um erro para o usuário caso a ação global, cujo nome for configurado nesta propriedade, tenha sua visibilidade removida no evento 'show', portanto, deve-se evitar alterar a visibilidade de ações globais configuradas como padrão.
Somente é possível existir uma ação global padrão em uma definição de classe. Informar um novo nome de ação global irá substituir o anteriormente informado.
Type:
- string
-
defaultIndex :Array.<string>|string
-
Esta propriedade faz a mesma coisa que ViewDef.defaultExplorerIndex.
Type:
- Array.<string>| string
- Deprecated:
-
- ViewDef.defaultExplorerIndex
-
defaultOpenInteraction :string
-
Interação padrão que será executada logo após a abertura do processo, através da API de link.
Type:
- string
-
<non-null> defaultOpenInteractionParameters :Array.<string>
-
Parâmetros que serão passados para interação quando um processo abrir através da API de link.
Type:
- Array.<string>
-
defaultProcess :number
-
Processo que deve ser executado ao clicar no menu principal em qualquer classe que essa propriedade estiver definida com a chave do processo.
Essa funcionalidade não é mais suportada no menu principal do sistema e os valores atribuídos a ela são ignorados.
Type:
- number
- Deprecated:
-
- Yes
-
deprecatedInterfaceEnabled :boolean
-
Habilita o uso do iWeb.
Type:
- boolean
-
displayName :string
-
Nome de execução desta classe. Caso não seja informada, será o nome da classe que definiu este modelo.
Type:
- string
-
displayOrder :number
-
Ordem de exibição da classe, quando exibida em menus ou em conjunto com classes irmãs. Se nenhum valor for fornecido, a ordem considerada é a ordem alfabética.
Type:
- number
-
duplicationHandling :module:@nginstack/engine/lib/event/DuplicationHandling
-
Indica como deve ser tratada a tentativa de registrar uma função de listener duplicada neste Emitter. Valores possíveis: DuplicationHandling.IGNORE (padrão), DuplicationHandling.ACCEPT e DuplicationHandling.REMOVE.
Type:
-
fieldClass :function
-
Determina qual é a classe que é utilizada para construção de campos no Mapeamento objeto-relacional. O método ViewDef#field retornará uma instância da classe apresentada nesta propriedade. Ou seja, se existir um campo criado para o nome de campo fornecido, uma instancia da classe em fieldClass é fornecido se não houver é criada uma e retornada.
Type:
- function
-
fields :module:@nginstack/engine/lib/classdef/FieldList~FieldList
-
Campos definidos na classe de dados e na hierarquia de classes mãe.
Type:
- Inherited From:
-
findOrder :number
-
Determina a ordem de pesquisa dentro do x-find nas classes. A ordenação é realizada para todas as classes que possuem x-find na hierarquia da mãe para os filhos.
Type:
- number
-
globalActions :module:@nginstack/web-framework/lib/classdef/GlobalActionSet~GlobalActionSet
-
Ações globais de uma classe. Uma ação global é uma espécie de link para qualquer relatório ou processo do sistema.
Type:
-
<non-null> gridDefinition :Object
-
Guarda as definições de grade que são declaradas por defineGrid.
Type:
- Object
- See:
-
- ViewDef#defineGrid
-
groups :module:@nginstack/engine/lib/classdef/FieldGroupSet~FieldGroupSet
-
Conjunto de grupos de campo.
Type:
- Inherited From:
-
hasOwnJustToGroup :boolean
-
Propriedade que indica se o justToGroup foi definido explicitamente para a classe corrente.
Type:
- boolean
-
help :string
-
Ajuda conceitual sobre uma determinada classe. É importante que o help não informe conceitos técnicos ou de interface. Essas informações devem estar descritas na propriedade dataDictionary.
Type:
- string
- Inherited From:
-
icon :string
-
Ícone será apresentado no menu de navegação, caso esta classe represente um módulo do sistema. Deve ser um dos ícones disponíveis em Menu > Desenvolvimento > Componentes > Ícones.
Type:
- string
-
imageHeight :number|string
-
Altura padrão em pixels da imagem associada a este registro, caso exista uma.
Type:
- number| string
-
imageWidth :number|string
-
Largura padrão em pixels da imagem associada a este registro, caso exista uma.
Type:
- number| string
-
<non-null> indexes :Array.<string>
-
Índices que devem ser criados no cache local na inicialização do sistema.
Type:
- Array.<string>
- Inherited From:
- Deprecated:
-
- Propriedade não mais utilizado pelo Engine. Os valores declarados serão ignorados pelo sistema.
-
integerDatabaseType :string
-
Tipo de dado que deve ser utilizado na base de dados para os campos do tipo "integer".
O tipo "integer" é um opção legada que existia antes da criação dos tipos "int64" e "int32".
Type:
- string
-
justToGroup :boolean
-
Determina se a classe utilizada é somente para agrupamento.
Type:
- boolean
-
<nullable> key :number
-
Chave da classe de dados a qual esta definição está associada.
Type:
- number
- Inherited From:
- Deprecated:
-
- Utilize #classKey.
-
keyFieldName :string
-
Informa qual é o campo chave da tabela.
Type:
- string
-
listenerCompareFunction :function
-
Indica como devem ser comparados dois listeners para determinar se eles são iguais. Valores possíveis: ListenerCompareFunctions.STRICT e ListenerCompareFunctions.SOURCE. O tratamento do registro de um listener duplicado é determinada pela propriedade #duplicationHandling.
Type:
- function
- Inherited From:
- See:
-
- ListenerCompareFunctions
- #duplicationHandling
-
lookupDisplayFieldName :string
-
Especifica o campo que será utilizado para exibir o valor padrão dos registros desta classe quando apresentados em campos ou operações lookup.
Este valor é exibido quando campos lookup recebem foco ou em outros contextos onde a identificação visual do registro é necessária.
Esta propriedade complementa o evento
lookupDisplay, que pode ser usado para personalizar o valor de exibição quando o campo não está em foco. Recomenda-se que, ao utilizar este evento, o valor calculado mantenha o conteúdo deste campo como base, adicionando informações complementares como sufixo, proporcionando assim uma transição visual mais consistente entre os estados.O campo configurado nesta propriedade deve ser definido como obrigatório na classe atual e em todas as suas subclasses, e não deve permitir valores vazios nos registros.
Type:
- string
- Inherited From:
- See:
-
- module:@nginstack/engine/lib/classdef/Field/Field#event:lookupDisplay
-
lookupTableViewWidth :string|number
-
Largura do campo lookup quado a grade estiver em visão de tabela. Pode ser definido um valor em quantidade de caracteres ou em pixels.
Type:
- string| number
-
lookupWidth :string|number
-
Define a largura do campo lookup. Pode ser definido um valor em quantidade de caracteres ou em pixels.
Type:
- string| number
-
managedDatabaseSchema :boolean
-
Indica se os processos de atualização devem modificar o esquema da tabela definido por esta classe. Deve ser
truepara as tabelas gerenciadas pelo sistema efalsepara as tabelas criadas e mantidas por sistemas de terceiros.Importante: esta configuração deve ser realizada apenas no arquivo x-model ou x-class que definiu a tabela por meio da propriedade tableName.
Type:
- boolean
-
memoDbType :string
-
Tipo de dado que representa o campo memo no banco. Esse tipo pode variar para os diversos bancos que o Engine suporta.
Type:
- string
-
metaClass :number
-
Campo classe utilizado na tabela classe.
Type:
- number
-
occurrenceLimit :number
-
Máxima quantidade de ocorrências a serem pesquisadas durante a pesquisa de um x-finder.
Type:
- number
-
onAfterChange :module:@nginstack/engine/lib/event/LegacyEvent~LegacyEvent
-
Evento que injeta comportamento no momento depois da alteração de um registro. Esse evento apresenta a característica de disparar os listeners definidos nas classes ancestrais.
Type:
- Deprecated:
-
- Este evento não é emitido pelo Web Framework. Utilize o evento "afterChange" dos campos da classe.
-
onBeforeChange :module:@nginstack/engine/lib/event/LegacyEvent~LegacyEvent
-
Evento que injeta comportamento no momento antes da alteração de um registro. Esse evento apresenta a característica de disparar os listeners definidos nas classes ancestrais.
Type:
- Deprecated:
-
- Este evento não é emitido pelo Web Framework. Utilize o evento "beforeChange" dos campos da classe.
-
onCalculate :module:@nginstack/engine/lib/event/LegacyEvent~LegacyEvent
-
Evite o uso deste evento, ele não faz sentido para definição de classe.
Este evento não é emitido pelo Web Framework. Utilize o evento "calculate" dos campos da classe.
Type:
- Deprecated:
-
- Yes
-
<non-null> onLookupAddResult :module:@nginstack/engine/lib/event/Event~Event
-
Evento que filtra ocorrências válidas. Esse evento apresenta a característica de disparar os listeners definidos nas classes ancestrais.
Type:
- Inherited From:
- Deprecated:
-
- Este evento não é emitido pelo Web Framework. Utilize o evento "lookupAddResult" do campo lookup.
-
ownFields :Array.<module:@nginstack/engine/lib/classdef/Field~Field>
-
Array com os campos criados ou potencialmente modificados na definição do modelo da classe de dados indicada por #key. Diferente de #fields, não farão parte desta coleção os campos herdados da classe-mãe que não tenham sido acessados ou modificados nesta definição de classe.
Type:
-
parentDef :module:@nginstack/engine/lib/classdef/ClassDef~ClassDef
-
Definição da qual esta definição é filha.
Type:
-
realm :string
-
Determina o realm a qual esta classe/diretório da Virtual File System está associado. Requisições HTTP que executem scripts contidos neste diretório utilizarão ambientes JavaScripts do realm informado. Veja module:@nginstack/engine/lib/classdef/RealmConfig para mais detalhes sobre a configuração de realms.
Type:
- string
- Inherited From:
-
session :Object
-
Sessão do usuário que invocou a criação da definição de modelo.
Type:
- Object
- Inherited From:
-
sourceType :SourceType
-
Indica o tipo de fonte que foi utilizado para criar esta definição.
Type:
- SourceType
-
tableName :string
-
Nome da tabela que o modelo objeto-relacional da classe irá mapear.
Type:
- string
-
<non-null> thumbnail :module:@nginstack/web-framework/lib/classdef/CellThumbnail~CellThumbnail
-
Controla a disposição da célula de imagem.
Type:
-
tooltip :string
-
Conteúdo de ajuda que será exibido ao repousar o cursor sobre a classe em um menu.
Essa funcionalidade não é mais suportada no menu principal do sistema e os valores atribuídos a esta propriedade são ignorados.
Type:
- string
- Deprecated:
-
- Yes
-
upgradeChangesTableStructure :boolean
-
Indica se os processos de atualização devem modificar o esquema da tabela definido por esta classe.
Type:
- boolean
- Inherited From:
- Deprecated:
-
- Utilize #managedDatabaseSchema.
-
upgradeMustSyncRecords :boolean
-
Indica se os processos de atualização devem sincronizar os registros negativos da tabela configurada por esse x-class. Por padrão, apenas as tabelas que participam do cache local têm os seus registros sincronizados. Esse comportamento pode ser modificado por meio de uma configuração explícita desta propriedade.
Importante: Essa configuração deve ser realizada apenas em x-class que definem uma tabela por meio da propriedade tableName.Type:
- boolean
-
versionFieldName :string
-
Nome do campo que guardará as versões do registro.
Type:
- string
-
zoomImageHeight :number|string
-
Indica a altura padrão em pixels da imagem associada a este registro quando está sendo exibida a ampliação dela, normalmente ativa quando ela recebe o foco do mouse.
Type:
- number| string
-
zoomImageOnHover :boolean
-
Indica se haverá ampliação ao passar o cursor do mouse sobre uma imagem associada a este registro.
Type:
- boolean
-
zoomImageWidth :number|string
-
Indica a largura padrão em pixels da imagem associada a este registro quando está sendo exibida a ampliação dela, normalmente ativa quando ela recebe o foco do mouse.
Type:
- number| string
Methods
-
addListenersFromEmitter(emitter [, opt_type])
-
Adiciona neste emitter os listeners do emitter informado.
Parameters:
Name Type Argument Description emittermodule:@nginstack/engine/lib/event/Emitter~Emitter Emitter que terá os eventos copiados.
opt_typestring <optional>
Tipo do evento a ser copiado. Caso não seja informado, serão copiados os listeners de todos os tipos de evento.
-
assignListeners(emitter [, opt_type])
-
Torna este emitter uma cópia do emitter informado. Os tipos de eventos registrados nesta instância serão preservados e complementados com os existentes em emitter.
Parameters:
Name Type Argument Description emittermodule:@nginstack/engine/lib/event/Emitter~Emitter Emitter que terá os eventos copiados.
opt_typestring| Array.<string> <optional>
Tipo do evento a ser copiado. Caso não seja informado, serão copiados os listeners de todos os tipos de evento. Também pode ser informado um array de tipo de eventos a sere copiados.
-
canAddAdaptedListeners()
-
Determina se os eventos declarados utilizando a API antiga antiga de eventos (onNomeEvento) serão ignorados.
Por padrão, os listeners adicionados utilizando a API antiga de eventos serão ignorados caso sejam definidos em um arquivo do tipo x-class quando solicitado o modelo (getModelDef) de uma classe que não está configurada em modo estrito.
Returns:
- Type
- boolean
-
clone()
-
Cria uma cópia desta definição de modelo de dados.
- Inherited From:
Returns:
Example
var modelDef = classDefManager.getModelDef(ClassKeys.LICENSES); var modelDefWithoutEvents = modelDef.clone(); modelDefWithoutEvents.offAll(); modelDefWithoutEvents.fields.map(function (fld) { fld.offAll(); }); -
declareCloneableObject(propertyName, initialValue)
-
Declara um objeto que pode sofrer o processo de clonagem.
Parameters:
Name Type Description propertyNamestring Nome da propriedade.
initialValue* Valor inicial.
-
declareEvent(name)
-
Declara um getter para um evento na definição de classe, respeitando as definições declaradas na hierarquia de classes.
Parameters:
Name Type Description namestring Nome do evento.
-
declareGetterOfObjectProperty(propertyName, objectClassName)
-
Declara um Getter que manipula uma instância de uma determinada classe Javascript na instância da camada de modelo, respeitando as definições declaradas na hierarquia de classes.
Parameters:
Name Type Description propertyNamestring Nome da propriedade.
objectClassNamestring Nome da classe que irá construir uma instância.
-
declareObject(name)
-
Declara um objeto na instância da camada de modelo, respeitando as definições declaradas na hierarquia de classes.
Parameters:
Name Type Description namestring Nome do objeto.
-
defineGrid(gridName, func)
-
Registra uma função de configuração que será executada para grades cujo nome seja gridName e que utilizem esta classe como a de definição dos dados. A classe de definição dos dados de uma grade é determinada pela propriedade Grid#definitionClass. Caso ela não tenha sido informada, será considerada a propriedade Grid#classKey. O uso desta função é recomendado para realizar configurações específicas de uma grade, que não se aplicam para todas as grades de uma classe de dados.
Caso sejam registradas várias funções de configuração para um mesmo nome de grade, será executada apenas a última registrada. Para executar as definições anteriores, deve ser executada a função global inherited.
Em campos do tipo masterDetail, o nome do campo será utilizado para obter as definições da grade. Ou seja, serão executadas as funções registradas para grades cujo nome seja igual ao nome do campo mestre-detalhe.
A função de definição é executada no momento da preparação da grade, que ocorre na primeira escrita ou quando a classe de dados da grade é alterada. Em campos do tipo mestre-detalhe, ela é executada antes do evento defineGrid do campo detalhe. Dessa forma, definições realizadas em um campo do tipo mestre-detalhe prevalecem sobre as definições realizadas por meio deste método.Parameters:
Name Type Description gridNamestring Nome da grade.
funcfunction Função com que irá configurar a grade. No contexto desta função, this é a grade a ser configurada.
Example
this.defineGrid('Explorer', function () { inherited() this.field('iKey').visible = true; }); -
emit(event)
-
Emite o evento informado, executando todas as funções de listeners previamente registradas para o tipo do evento emitido.
Parameters:
Name Type Description eventmodule:@nginstack/engine/lib/event/Event~Event Evento a ser emitido.
- Inherited From:
Throws:
-
Erro que dispara caso não exista um tipo registrado para manipulação do evento. Eventos aptos a serem manipulados devem ser registrados com o método #registerEventType.
- Type
- EventTypeException
Returns:
Retorna a indicação que o evento foi emitido para todos os listeners e não foi solicitado o cancelamento da ação padrão associada ao evento, por meio da execução do método Event#preventDefault. Caso o evento não possa ser cancelado (@link Event#cancelable}), será retornado sempre true.
- Type
- boolean
-
field(name [, type] [, size])
-
Obtém ou cria um campo na classe de dados. Este método retornará o campo existente com o nome informado ou criará um caso não exista. Nesse último caso, é obrigatório informar o tipo do campo. Além dos tipos suportados na declaração do modelo de dados (x-model), relacionados em ModelDef#field, também são suportados:
"grid" - Tipo utilizado para indicar que o campo deve ser visualizado como uma grade detalhe da classe de dados que o definiu. O seu propósito é similar ao tipo "masterdetail", no entanto, ele permite a exibição de dados detalhes cuja relação não pode ser estabelecida apenas pelas propriedades classKey, masterFieldNames e detailFieldNames. Sempre que for possível, é recomendado o uso do tipo "masterdetail". Campos do tipo "grid" não podem ser utilizados em definição de modelo de dados (x-model), sendo o seu uso restrito em definições de visão (x-view) e em processos. Campos do tipo "grid" podem ser definidos em grades de variáveis, sem
DataSetassociado. Nesse caso, o eventocreateDataSetda grade detalhe deve ser configurado e as propriedadesmasterFieldNames,detailFieldNameseclassKeynão devem ser informadas.
"tree" - Tipo utilizado para campos que conterão grades do tipo treeGrid (árvore);Parameters:
Name Type Argument Description namestring Nome do campo.
typestring <optional>
Tipo do campo. Opcional quando for solicitado um campo existente.
sizenumber <optional>
Tamanho do campo em caracteres. Obrigatório apenas para os tipos "string" e "password".
Returns:
-
fileAttributes(vfsKey)
-
Informa os atributos de um determinado arquivo na tabela iVfs. Os atributos servem para informar se um arquivo será exibido, informar nome, ordem de exibição, permissão de controle e tooltip. A tabela iVfs representa o sistema de arquivos virtuais, ou seja, são arquivos que estão sendo armazenados diretamente no banco e são replicados para o cache local
Parameters:
Name Type Description vfsKeynumber Chave do arquivo.
Returns:
Atributos do arquivo.
- Type
- Object
-
filterListeners(filterFn [, opt_type])
-
Elimina os listeners que não satisfaçam a função de filtro.
Parameters:
Name Type Argument Description filterFnfunction Função que indicará quais filtros devem ser mantidos neste emitter. Deverá ser retornado true para indicar que o filtro deve ser preservado.
opt_typestring <optional>
Tipo de evento que terá os listeners filtrados. Caso não seja informado, os listeners de todos os tipos de eventos serão filtrados.
-
findField(name)
-
Pesquisa por um campo definido dentro da classe, caso encontre, retorna o campo encontrado.
Parameters:
Name Type Description namestring Nome do campo.
Returns:
-
getClassDef(classKey)
-
Prefira usar module:@nginstack/engine/lib/classdef/ClassDefManager.getViewDef.
Parameters:
Name Type Description classKey- Inherited From:
- Deprecated:
-
- Yes
Returns:
- Type
- ViewDef
-
getClassDefWithEvent(eventName [, skipCurrentClass])
-
Obtém a primeira definição da camada de visão na hierarquia com base no nome de um evento registrado por declareEvent. A instância resultante é encontrada a partir da instância da camada de visão ou de modelo da classe corrente. Caso não encontre, nenhuma instância é retornada.
Parameters:
Name Type Argument Description eventNamestring Nome do evento.
skipCurrentClassboolean <optional>
Escapar a classe corrente, se essa opção for true a busca pela instância irá iniciar a partir da classe pai. Em caso de não haver classe pai, a busca será iniciada pela classe Raiz.
- Inherited From:
- Deprecated:
-
- Este método suporta apenas os eventos customizados declarados pelo método #declareEvent, não podendo ser utilizado para os eventos padrão do sistema. Seu uso não é mais recomendado, devendo o seu uso ser substituído por uma lógica customizada equivalente. Ele será eliminado no futuro.
Returns:
-
Definição da camada de visão obtida a partir de uma propriedade.
- Type
- ViewDef
-
- Type
- *
-
getClassDefWithObjectProperty(propertyName [, skipCurrentClass])
-
Obtém a primeira definição da camada de visão na hierarquia com base no nome de uma propriedade da API de definição. A instância resultante é encontrada a partir da instância da camada de visão ou de modelo da classe corrente. Caso não encontre, nenhuma instância é retornada.
Parameters:
Name Type Argument Description propertyNamestring Nome da propriedade
skipCurrentClassboolean <optional>
Escapar a classe corrente, se essa opção for true a busca pela instância irá iniciar a partir da classe pai. Em caso de não haver classe pai, a busca será iniciada pela classe Raiz.
- Inherited From:
Returns:
Definição da camada de visão obtida a partir de uma propriedade.
- Type
- ViewDef
-
getExtraFilterExpression()
-
Obtém uma expressão com os filtros extras para esta classe de dados. Os filtros extras são configurados por meio da propriedade Field#permissionFilterFieldName dos campos e possibilitam que o administrador configure permissões dos usuários levando em consideração outros campos além da classe do registro. Esse recurso é útil quando a classe do registro não é suficiente para segmentar corretamente as permissões dos usuários e outros campos, como o Estabelecimento associado ao registro, podem ser utilizados para determinar as permissões.
- Inherited From:
- See:
-
- #getExtraFilterFields
- Field#permissionFilterFieldName
Returns:
Caso a classe tenha filtros extras configurados, será retornada uma expressão de filtro que consiste dos campos de permissões concatenados por ";". Caso o nome do campo seja diferente do campo de permissão, será utilizada a expressão "[field.name] in [field.permissionFilterFieldName]". A expressão retornada deve ser utilizada nas APIs de DataSet que filtram as permissões do usuário, como Classes#getCachedDataSet e DataSet#setView. Caso não haja filtros extras configurados, será retornada uma string vazia.
- Type
- string
Example
var modelDef = classDefManager.getModelDef(ClassKeys.LICENSES); var filteredDataSet = classes.getCachedDataSet(ClassKeys.LICENSES, session.userKey, modelDef.getExtraFilterExpression()); -
getExtraFilterFields()
-
Obtém os campos desta classe que foram configurados como filtro extra de permissão por meio da propriedade Field#permissionFilterFieldName.
- Inherited From:
- See:
-
- #getExtraFilterExpression
- Field#permissionFilterFieldName
Returns:
Array com os campos que possuem a propriedade Field#permissionFilterFieldName informada.
- Type
- Array.<module:@nginstack/engine/lib/classdef/Field~Field>
Example
var modelDef = classDefManager.getModelDef(ClassKeys.LICENSES); var extraFilterFields = modelDef.getExtraFilterFields(). if (extraFilterFields.length === 0) { this.alert('Classe de licenças não possui campos de filtro de permissão extra.'); } -
getFieldsAsStringList()
-
Pega todos os campos definidos na classe e hierarquia de classes mãe. Irá obter um StringList a partir do fieldList da classe.
- Inherited From:
- Deprecated:
-
- Mantido apenas por compatibilidade para quem ainda precisa utilizar um StringList como repositório de fields
Returns:
Objeto StringList com todos os campos definidos para a classe e com os definidos nas classes mãe
-
getFieldsByProperty(propertyName)
-
Retorna uma lista de campos cuja propriedades tenham os valores informados.
Parameters:
Name Type Argument Description propertyName* <repeatable>
Há múltiplas formas de definição dos parâmetros, veja o exemplo abaixo.
Returns:
Lista de campos.
- Type
- Array.<module:@nginstack/engine/lib/classdef/Field~Field>
Example
//Propriedade e valor: //Nessa forma serão obtidos os campos que possuem as propriedades fornecidos //com os respectivos valores. getFieldsByProperty('prop', valor, 'prop2', valor2); //Array de propriedades e de valores: //Nessa forma serão fornecidos dois arrays, o primeiro array é o de propriedades //que se relaciona com o segundo array, que é o de valores, pelo índice. getFieldsByProperty(['prop', 'prop2'], [valor, valor2]); //Através de um callback //Nesta forma são obtidos os campos de acordo com a regra definida no callback. getFieldsByProperty(function (field) { return field.required === true; }); -
getKeySchema()
-
Estrutura de dados de uma chave do banco DBKey. Essa estrutura será utilizada nos casos em que houver a necessidade de validar dados ou tratar dados na camada de apresentação.
Returns:
JSON que representa a estrutura de dados de uma DBKey, ou seja, é a representação de uma relação entre registros do banco de dados.
- Type
- string
-
getLookupDisplay(sender, value [, event])
-
Obtém o valor de exibição a partir de um evento onLookupDisplay anexado a um objeto disparador.
Parameters:
Name Type Argument Description senderObject Objeto disparador.
value* Valor que deve ser exposto para o evento.
eventmodule:@nginstack/engine/lib/event/Event~Event <optional>
Evento opcional que deve ser informado em substituição ao padrão onLookupDisplay.
Returns:
Valor de exibição.
- Type
- string
-
getNormalizedDef(classKey)
-
Obtém uma instância da definição da classe de acordo com a herança que foi projetada para a hierarquia. Ou seja se o protótipo da definição da primeira classe for de modelo todas as outras instâncias de classe que forem montadas a partir da execução serão instâncias de modelo também. Caso o protótipo na hierarquia seja construído a partir da definição de visão (uwi.classdef.ViewDef) sempre será obtida uma instância de visão durante o uso deste método.
Parameters:
Name Type Description classKeynumber Chave da classe.
Returns:
Definição obtida.
-
hasEvent(eventName)
-
Determina se um evento foi declarado na definição da classe.
Parameters:
Name Type Description eventNamestring Nome do evento.
- Inherited From:
Returns:
True se o evento houver sido declarado na definição de classe.
- Type
- boolean
-
hasListeners(type)
-
Verifica se há listeners registrados para o tipo de evento informado.
Parameters:
Name Type Description typestring| Array.<string> Tipo do evento a ser verificado. Também pode ser informado um array de tipos. Neste caso, será retornado true se houver ao menos um listener registrado para um dos tipos informados.
- Inherited From:
Returns:
True se houver listeners registrados para o tipo de evento informado.
- Type
- boolean
-
hasObjectProperty(propertyName)
-
Determina se a definição de classe possui uma propriedade.
Parameters:
Name Type Description propertyNamestring Nome da propriedade
Returns:
True se houver definição da propriedade na classe.
- Type
- boolean
-
hasObjectPropertyDeclaredInThisClass(propertyName)
-
Determina se uma definição de classe declarou uma determinada propriedade.
Parameters:
Name Type Description propertyNamestring Nome da propriedade.
- Inherited From:
Returns:
True se a propriedade houver sido declarada na definição da classe.
- Type
- boolean
-
hasOwnFields()
-
Indica se há campos declarados nesta classe. Caso não haja, os campos dessa classe serão os mesmos da classe mãe.
Returns:
- Type
- boolean
-
hasOwnFileAttributes()
-
Indica se os atributos do arquivo foram informados nesta classe.
- Inherited From:
- See:
Returns:
True se os atributos foram informados, false caso contrário.
- Type
- boolean
-
hideFiles(files)
-
Oculta os arquivos informados no menu principal.
Importante: Arquivos ocultos com o atributo permissionControlEnabled falso não serão visíveis nos processos de permissão.Parameters:
Name Type Description filesArray.<number> Chaves dos arquivos que serão ocultos.
- Inherited From:
- See:
-
- ModelDef#fileAttributes
-
init( [opt_parentDef])
-
Método utilizado pelo gerenciador de classes para sinalizar que a definição deve ser inicializada. Ele é executado logo após a criação da definição.
Parameters:
Name Type Argument Description opt_parentDefmodule:@nginstack/engine/lib/classdef/ClassDef~ClassDef <optional>
Definição pai da definição que está sendo criada.
- Inherited From:
-
listenerHandlers(type)
-
Obtém todas as funções de listeners registradas para o tipo de evento informado. O array retornado é uma cópia dos listeners registrados e sua manipulação não alterará a instância desta classe. Para adicionar ou remover uma nova função de listener, utilize os métodos #on ou #off.
Parameters:
Name Type Description typestring Tipo de evento ao qual serão obtidos os EventListeners registrados.
- Inherited From:
- See:
Throws:
-
Será disparado um erro caso o tipo informado não tenha sido registrado previamente pelo método #registerEventType.
- Type
- EventTypeException
Returns:
Todas as funções de listeners registradas neste emitter para o tipo informado.
- Type
- Array.<function(module:@nginstack/engine/lib/event/Event~Event)>
-
listeners( [opt_type])
-
Obtém todos os listeners registrados para o tipo de evento informado. O array retornado é uma cópia dos listeners registrados e sua manipulação não alterará a instância desta classe. Para adicionar ou remover uma nova função de listener, utilize os métodos #on ou #off.
Parameters:
Name Type Argument Description opt_typestring <optional>
Tipo de evento ao qual serão obtidos os EventListeners registrados.
- Inherited From:
- See:
Throws:
-
Será disparado um erro caso o tipo informado não tenha sido registrado previamente pelo método #registerEventType.
- Type
- EventTypeException
Returns:
Todos os listeners registrados neste emitter para o tipo informado. Sempre serão retornadas instâncias de Listener, por mais que tenham sido registradas funções de listeners nos métodos #on ou #replaceListeners. Para obter as funções, acesse a propriedade Listener#handler dos elementos retornados ou utilize o método #listenerHandlers para obter a relação de funções. Caso não seja informado, serão retornados todos os listeners.
- Type
- Array.<module:@nginstack/engine/lib/event/Listener~Listener>
-
off(type, listener)
-
Remove uma função de listener previamente adicionada por meio do método #on.
Se uma função de listener for removida durante a emissão de um evento, ela será executada por mais que tenha sido removida. Ou seja, a remoção valerá para as emissões seguintes.
Parameters:
Name Type Description typestring Tipo do evento que será removido.
listenermodule:@nginstack/engine/lib/event/Listener~Listener| function Indica a função de listener a ser removida.
- Inherited From:
- See:
Returns:
Esta instância de Emitter, permitindo encadeamento de chamadas.
-
offAll( [opt_type])
-
Remove todas as funções de listener associadas ao tipo informado. Caso o tipo não seja informado, serão removidas todas as funções de listeners de todos os tipos de eventos.
Parameters:
Name Type Argument Description opt_typestring <optional>
Tipo de evento que deverá ter os listeners removidos.
- Inherited From:
Returns:
Esta instância de Emitter, permitindo encadeamento de chamadas.
-
on(type, listener)
-
Registra uma função que deverá ser executada quando o evento indicado por type for emitido. Por padrão, a função será adicionada no final da fila de listeners, sendo executada após a execução dessas funções previamente registradas.
Se o listener for adicionado durante a emissão de um evento, ele será desconsiderado nesta emissão e será executado apenas nas emissões seguintes.
O comportamento deste emitter ao tentar registrar uma função de listener mais de uma vez é determinado pela propriedade #duplicationHandling.
Parameters:
Name Type Description typestring Tipo de evento que será registrado.
listenerfunction Função que será executada quando ocorrer a emissão do evento.
- Inherited From:
- See:
Returns:
Esta instância de Emitter, permitindo encadeamento de chamadas.
Example
modelDef.on('afterInsert', function (event) { event.data.setField('codigo', 'Novo cliente'); }).on('beforePost', function (event) { if (event.data.str('codigo').trim() == '') { throw new Error('O campo código é obrigatório.'); } }); -
registerEventType(type)
-
Registra um novo tipo de evento, permitindo que ele possa ser utilizado por esta instância de Emitter. A tentativa de emitir um evento ou listener de um tipo não registrado provocará um erro.
Parameters:
Name Type Description typestring| Array.<string> Tipo do evento a ser registrado. Também pode ser informado um array de tipos.
-
replaceListeners(type, listener)
-
Registra uma função de listener que irá substituir todos os listeners registrados para o tipo de evento indicado por type. A função informada receberá, além do parâmetro event, um segundo parâmetro que será uma função, que ao ser invocada, emitirá o o evento informado para os listeners que foram substituídos.
O comportamento deste emitter ao tentar registrar uma função de listener mais de uma vez é determinado pela propriedade #duplicationHandling.
Importante: o uso deste método não é recomendado. Ignorar os listeners registrados previamente por outros desenvolvedores é uma má prática de desenvolvimento e pode gerar inconsistências de dados. Seu uso deve ser restrito à compatibilização de eventos antigos que dependem deste comportamento, que antes eram declarados pelo método "set" da antiga API de Eventos do Engine (classe global Event).
Parameters:
Name Type Description typestring Tipo de evento que será registrado.
listenermodule:@nginstack/engine/lib/event/Listener~Listener| function Função que será executada quando ocorrer a emissão do evento.
- Inherited From:
- See:
Example
this.replaceListeners('beforePost', function (event, emit) { event.data.codigo = 'Novo cliente'; emit(event); }); -
resetJustToGroup()
-
Define justToGroup e hasOwnJustToGroup como false, implementando assim a definição padrão.
-
setFieldsProperties()
-
Este método cria ou seta as propriedades informadas com os valores informados em cada campo da definido nos parâmetros. Para utilizar esse método existem diversas formas de o invocar, veja os exemplo abaixo.
Example
// Array de campos com callback para setar as propriedades: fl.setFieldsProperties([field1, field2], function (field) { field.prop = valor; field.prop2 = valor2; }); // Array com os nomes dos campos com callback para setar as propriedades: fl.setFieldsProperties(['campo1','campos2'], function (field) { field.prop = valor; field.prop2 = valor2 }); // String com o nomes dos campos separados por virgula ou ponto e virgula como primeiro // parâmetro. // Array com nomes das propriedades a serem definidas como segundo parâmetro. // Array com os valores a serem definidos nas propriedades de mesmo índice como terceiro // parâmetro. fl.setFieldsProperties('campo1,campos2', ['prop', 'prop2'], [valor, valor2]); // Ainda na forma anterior pode ser utilizado o caractere '*' para obter todos os campos. fl.setFieldsProperties('*', ['prop', 'prop2'], [valor, valor2]); // Lista de strings separados por vírgula ou ponto e virgula com os nomes dos campos a // serem alterados como primeiro parâmetro. // Os parâmetros seguintes são os nomes das propriedades com os valores que devem ser // atribuídos. fl.setFieldsProperties('campo1,campos2', 'prop', valor, 'prop2', valor2); -
toJSONSchema()
-
Cria uma representação JSON desta definição do modelo.
Returns:
- Type
- string
-
toString()
-
Retorna uma string que informa qual a chave do x-class ao qual a instância foi criada.
Returns:
- Type
- string
-
unregisterEventType(type)
-
Remove o registro de um tipo de evento, bloqueando a utilização nesta instância de Emitter. A tentativa de emitir um evento ou listener de um tipo não registrado provocará um erro.
Parameters:
Name Type Description typestring| Array.<string> Tipo do evento a ser bloqueado. Também pode ser informado um array de tipos.
Events
-
afterCancel
-
Evento emitido após o cancelamento de uma inserção ou edição de um registro associado a classe de dados. Seu uso é recomendado para registrar que um usuário intencionalmente cancelou uma inserção ou edição. Importante: no momento da emissão deste evento o DataSet já concluiu o cancelamento da edição ou inserção, portanto a propriedade data não terá os dados do registro cancelado.
Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
-
afterDelete
-
Evento que será emitido após a exclusão de um registro associado a classe de dados. Seu uso é recomendado para realizar o registro de informações não essenciais, como logs de alterações.
Importante: este evento normalmente é emitido após a persistência das alterações no banco de dados. Visto que o sistema pode ser abruptamente interrompido, não há garantias de que ele será executado sempre que a classe de dados for alterada. Por esse motivo, não é recomendado o seu uso em regras de negócios.Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
-
afterDuplicate
-
Evento que será emitido após um registro ser duplicado. Seu uso é recomendado para realizar sugestões de valores para o registro novo, recém duplicado.
Type: module:@nginstack/web-framework/lib/classdef/GridEvent~GridEvent
Example
this.on('afterDuplicate', function (evt) { evt.grid.process.alert('Registro duplicado.'); }); -
afterEdit
-
Evento emitido depois de uma edição de um registro associado a classe de dados ter sido iniciada. Seu uso é recomendado para atualizar informações que indiquem o momento ou o usuário que está realizando a modificação.
Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
Example
// O exemplo abaixo pega o último horário em que o registro entrou em edição e grava // este valor em um campo somente leitura para o usuário on('afterEdit', function (evt) { evt.data.modificado = new Date(); evt.data.modificador = session.userKey; }); -
afterInsert
-
Evento emitido após a inserção de um registro associado a classe de dados. Seu uso é recomendado para sugerir os valores dos campos do novo registro, simplificando o preenchimento dos dados para o usuário.
Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
-
afterPersist
-
Evento emitido após o post e antes do afterPost, ou ainda, no caso de remoção de um registro ele deverá ser executado depois do delete e antes do afterDelete com o objetivo de fornecer a versão de alteração realizada pela persistência dos dados.
Type: AfterPersistEvent
Example
var logger = Logger.getLogger('package.MyClass'); this.on('afterPersist', function (evt) { logger.info('Registro ' + evt.key + ' da classe ' + evt.classKey + ' foi gravado com sucesso. Alteração: ' + evt.action + '. Versão: ' + evt.version); }); -
afterPost
-
Evento emitido depois da execução do método post do DataSet associado a classe de dados. Seu uso é recomendado para realizar o registro de informações não essenciais, como logs de alterações.
Este evento normalmente é emitido após a persistência das alterações no banco de dados. Visto que o sistema pode ser abruptamente interrompido, não há garantias de que ele será executado sempre que a classe de dados for alterada. Por esse motivo, não é recomendado o seu uso em regras de negócios.
Importante: durante a execução do evento "afterPost" o registro corrente do DataSet não será o registro recém confirmado se o DataSet possuir filtros e se os novos valores dos campos do registro não satisfizerem mais esses filtros. É recomendado que as informações do registro sejam coletadas antes da confirmação da edição ou inserção no evento "beforePost", caso elas sejam necessárias no evento "afterPost".
Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
Example
on('afterPost', function (evt) { if (evt.data.recordCount > 5) { logger.debug('Registrado mais de 5 registros'); } }) -
afterScroll
-
Evento emitido após a navegação de um registro para um outro em uma grade associada a um DataSet. Também será emitido assim que a grade for escrita, momento em que ela se posicionar no registro corrente do DataSet.
Type: module:@nginstack/web-framework/lib/classdef/GridEvent~GridEvent
-
beforeCancel
-
Evento emitido antes de cancelar a inserção ou edição de um registro associado a classe de dados. Seu uso é recomendado para registrar que um usuário intencionalmente cancelou uma inserção ou edição, ou para realizar algum tipo de confirmação, no caso deste evento estar sendo emitido em um contexto de interface.
Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
-
beforeDelete
-
Evento emitido antes da exclusão de um registro associado a classe de dados. Seu uso é recomendado para verificar regras de negócio que impeçam a remoção de um registro em uma classe de dados.
Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
Example
on('beforeDelete', function (evt) { if (session.userKey !== Users.ADMINISTRATOR) { throw new Error('Apenas o usuário "administrator" pode excluir este registro.'); } }); -
beforeDuplicate
-
Evento que será emitido antes de um registro seja duplicado. Seu uso é recomendado para verificar regras de negócio que indiquem se o registro pode ou não ser duplicado.
Type: module:@nginstack/web-framework/lib/classdef/GridEvent~GridEvent
Example
this.on('beforeDuplicate', function (evt) { evt.grid.process.alert('Duplicando registro em ' + evt.grid.name + '.'); }); -
beforeEdit
-
Evento emitido antes da edição de um registro associado a classe de dados. Seu uso é recomendado para verificar regras de negócio que impeçam a edição de um registro da classe de dados.
Importante: no momento da emissão deste evento o DataSet ainda não encontra-se em estado de edição, portanto o registro corrente não deve ser modificado.
Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
-
beforeInsert
-
Evento emitido antes da inserção de um registro associado a classe de dados. Seu uso é recomendado para verificar regras de negócio que impeçam a inserção de um novo registro em uma classe de dados.
Importante: no momento da emissão deste evento o DataSet ainda não possui dados do registro a ser inserido, portanto o registro corrente não deve ser modificado.Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
-
beforePersist
-
Evento emitido após o beforePost e antes do post, ou ainda, durante a remoção de um registro esse evento será executado depois do beforeDelete e antes do delete com intuito de fornecer os valores originais e modificados.
Caso haja uma regra configurada nesse evento o post da grade será responsável por persistir todas as informações que estejam na propriedade "transaction", que é uma instância do tipo Transaction. O intuito é armazenar datasets que devem ser persistidos junto com a alteração do registro.Type: BeforePersistEvent
Example
this.on('beforePersist', function (evt) { var evento = evt.transaction.getOrSet('erp.beforePersistEvent', function () { var evento = new DataSet(); dbCache.copyStructure('EVENTO', evento); evento.create(); return evento; }); if (evt.action === ApplyUpdatesAction.UPDATE && evt.beforeValues.uf !== evt.afterValues.uf) { evento.append(); // cria um registro na tabela evento com base evt.beforeValues e evt.afterValues evento.post(); } }); -
beforePost
-
Evento emitido antes da execução do método post do DataSet associado a classe de dados. Seu uso é recomendado para realizar validações se os dados do registro não ferem regras de negócio.
Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
Example
// O exemplo abaixo verifica se os valores nos campos "password" e "confirmPassword" // são iguais, ou seja, se o usuário digitou uma senha e a confirmou corretamente, // em caso negativo exibe um erro, impedindo que o registro seja inserido.<br> // O evento recebe os seguintes parâmetros:<br> on('beforePost', function (evt) { if (evt.data.password !== evt.data.confirmPassword) { throw new Error('A nova senha e a confirmação são diferentes. Digite novamente a senha.'); } }); -
beforeScroll
-
Evento que será emitido antes da navegação de um registro para um outro em uma grade associada a um DataSet. Também será emitido assim que a grade for escrita, momento em que ela se posicionar no registro corrente do DataSet.
Type: module:@nginstack/web-framework/lib/classdef/GridEvent~GridEvent
Example
// No exemplo abaixo é dado um alerta informando o número do registro em que // se estava posicionado, caso a grade não esteja vazia.<br> this.on('beforeScroll', function (evt) { if (evt.data.recNo > 0) { evt.process.alert('Você estava no registro: ' + evt.data.recNo); }); }) -
changeView
-
Evento que será emitido quando for alterado o modo de visão da grade.
A grade poderá ter seu modo de visão alterado a partir da propriedade viewMode que irá disparar este evento, ao chamar esse evento a propriedade viewMode estará com seu valor anterior á mudança de visão.
A grade também pode ter seu modo de visão alterado quando for chamado o grid.write() que possui um parâmetro que determina em que modo será escrita a grade.Type: module:@nginstack/web-framework/lib/classdef/GridEvent~GridEvent
Example
// No exemplo abaixo quando o modo de visão da grade é alterado são alterados // também os botões visíveis pois algumas delas não fazem sentido em um ou outro // modo de visão. Como a modificação deve ser do modo formulário para tabela e // vice-versa, é utilizado uma expressão condicional para analisar o valor do viewMode.<br> this.on('changeView', function (evt) { if (evt.grid.viewMode === Grid.TABLEVIEW ){ evt.grid.visibleButtons = ['Redefinir Grade']; } else { evt.grid.visibleButtons = ['Editar', 'Recarregar grades']; } }); -
defineClassesGrid
-
Evento que permite a customização da grade de classes no processo ClassesExplorer do Admin.
Type: module:@nginstack/web-framework/lib/classdef/GridEvent~GridEvent
-
definePermissionsGrid
-
Evento que permite a customização da grade de permissões.
Type: module:@nginstack/web-framework/lib/classdef/GridEvent~GridEvent
-
locate
-
Evento que será emitido quando a grade for localizar um conteúdo.
O comportamento padrão de localização da grade poderá ser substituído fazendo uso do método ngin.event.Listener#replaceListeners.Type: module:@nginstack/web-framework/lib/classdef/GridLocateEvent~GridLocateEvent
Example
// O exemplo abaixo personaliza a busca para permitir que sejam buscados apenas // números e executa o evento padrão através do "inherited".<br> // O evento deverá retornar um valor booleano, sendo true para indicar que localizou // o registro. O dataSet da grid deve ser posicionado no registro localizado. this.replaceListeners('locate', function (evt, replacedEmit) { if (typeof evt.value !== 'number') { replacedEmit(evt) if (replacedEmit.locatedField) { grid.process.setNextInteraction('interactionName') } } else { throw new Error('Não é possível localizar valores diferentes de números!') } }); -
lookupDisplay
-
Configuração padrão que será aplicada nos campos lookups para esta classe de dados que não tenham definido um tratamento específico para o evento "lookupDisplay".
O evento "lookupDisplay" é emitido quando o sistema precisa obter o valor de exibição de uma chave desta classe de dados. Os listeners registrados deverão preencher a propriedade LookupDisplayEvent#displayValue do evento emitido para informar o valor de exibição da chave indicada por LookupDisplayEvent#key.
Type: module:@nginstack/engine/lib/classdef/LookupDisplayEvent~LookupDisplayEvent
Example
this.on('lookupDisplay', function (evt) { evt.displayValue = DBKey.str(evt.key, 'NOME'); }); -
openKey
-
Configuração padrão que será aplicada nos campos lookups para esta classe de dados que não tenham definido um tratamento específico para o evento "openKey".
O evento "openKey" é emitido quando o usuário deseja abrir detalhes sobre um registro de um campo lookup ou deseja uma interface mais rica para auxiliar o preenchimento do campo lookup.
Type: module:@nginstack/web-framework/lib/classdef/OpenKeyEvent~OpenKeyEvent
-
showLog
-
A grade possui o botão de "Log" que ao ser acionado exibe o histórico de alterações do registro corrente. Este evento será emitido quando esse botão for acionado.
O processo padrão de histórico de alterações da grade poderá ser substituído fazendo uso do método ngin.event.Listener#replaceListeners.Type: module:@nginstack/web-framework/lib/classdef/GridEvent~GridEvent
Example
this.replaceListeners('showLog', function (evt) { evt.grid.process.setNextInteraction('run', ['chave', evt.data.ikey], -1898143458); evt.preventDefault(); }); -
validate
-
Evento emitido antes da execução do método post do DataSet associado a classe de dados. Seu uso é recomendado para realizar validações se os dados do registro não ferem regras de negócio.
Type: module:@nginstack/engine/lib/classdef/DataEvent~DataEvent
- Inherited From:
- Deprecated:
-
- Utilize o evento beforePost.