Class: Button

@nginstack/web-framework/lib/button/Button~ Button


new Button(name, target [, processKey] [, newTab])

Controle visual com formato de botão, exibido na barra de botões de um processo ou de uma grade.

O caractere "&" antes de uma das letras do nome ou do rótulo do botão indica que a letra será preferencialmente escolhida como atalho. Caso a letra já esteja definida como um outro atalho de ação, o atalho será vinculado a alguma outra letra do rótulo, ou a um número, caso não existam letras possíveis de serem usadas como atalho.

Um botão pode ser utilizado para:

  • direcionar o usuário para uma outra interação ou atividade, inclusive de outro processo;
  • executar um evento JavaScript na interação corrente; Este construtor não deve ser executado diretamente. Para criar um botão, utilize os métodos Process.button ou Grid.button.
Parameters:
Name Type Argument Description
name string

Nome do botão. O valor informado também será utilizado como o texto do botão, caso a propriedade label não seja informada.

target string | function

Poderá ser informado:

  • nome de uma interação;
  • nome de uma atividade;
  • função que será atribuída ao evento onClick do botão.
    Se "target" for uma string vazia e o parâmetro "processKey" for informado, será considerado como destino a primeira interação do processo destino.
processKey number <optional>

Indica a chave do processo que contém a atividade ou interação informada no parâmetro "target". Será considerado o processo corrente quando não for informado.

newTab boolean <optional>

Indica se deve ser criada uma nova aba para exibir a interação ou atividade informada em "target". Considerado "false" quando não for informado.

See:
  • Grid#button
  • Process#button
Examples
this.button("Soma", "sumInteraction")
this.grid.button("Exibir quantidade registros", function (bt) {
    const grid = bt.parent;
    const process = bt.process;
    process.alert(grid.ds.recordCount);
  });

Members


accessKey :string

Letra sugerida para ser utilizada como tecla de acesso, pela qual o botão será acionado via teclado pressionando essa letra juntamente com a tecla Alt. A letra deve ser maiúscula e não acentuada.

A letra sugerida poderá ser ignorada caso haja um atalho preexistente no navegador ou se ela já tiver sido utilizada por um outro botão do processo ou de outra grade na mesma tela.

Type:
  • string

createNewTab :boolean

Indica se deverá ser aberta uma nova aba para exibir o conteúdo da interação ou atividade apontada por esta âncora.

Type:
  • boolean

defaultAction :boolean

Determina se este botão deve ser considerado o botão padrão do processo.
O botão padrão é disparado automaticamente quando o usuário informa o último campo de uma grade de variáveis. Ele é destacado em negrito.

Type:
  • boolean
Deprecated:
  • Utilize a propriedade defaultButton
See:

defaultButton :boolean

Determina se este botão deve ser considerado o botão padrão do processo.
O botão padrão é disparado automaticamente quando o usuário informa o último campo de uma grade de variáveis. Ele é destacado em negrito.

Type:
  • boolean

disabledIcon :number

A exibição de ícones em botões não é mais suportada.

Type:
  • number
Deprecated:
  • Yes

enabled :boolean

Indica se o botão pode ser clicado pelo usuário. Quando desabilitado, ele estará visível, mas com uma cor diferente, sinalizando que não pode ser utilizado.
É recomendada a utilização das propriedades Process.enabledButtons e Grid.enabledButtons para definir quais botões estão habilitados.

Type:
  • boolean
See:
  • Process#enabledButtons
  • Grid#enabledButtons

help :string

Texto de ajuda do botão. É exibido na visualização da ajuda do processo ou da grade que este botão está vinculado. É exibido para o usuário final ao manter o mouse sobre o botão caso não possua a propriedade hint preenchida.

Type:
  • string

hint :string

Mensagem que será exibida para o usuário final quando ele passar o mouse sobre o botão.

Type:
  • string

icon :number

A exibição de ícones em botões não é mais suportada.

Type:
  • number
Deprecated:
  • Yes

label :string

Texto que será exibido no botão. Caso não seja informado, será utilizado o valor da propriedade "name".

Type:
  • string

maxSelectedRecords :number

Indica a quantidade máxima de registros selecionados para que este botão possa ser utilizado em uma grade.
Propriedade válida apenas para botões de grade.

Type:
  • number
See:

minSelectedRecords :number

Indica a quantidade mínima de registros selecionados para que este botão possa ser utilizado em uma grade.
Propriedade válida apenas para botões de grade.
Valor padrão: 1.

Type:
  • number
See:

name :string

Nome do botão.

Type:
  • string

nextInteractionName :string

Nome da interação ou atividade que será exibida quando o componente for acionado.

Type:
  • string

nextProcessId :string

Id da instância de um processo que contém a atividade ou interação informada na propriedade "nextInteractionName". Quando esta propriedade é informada, um processo já aberto pelo usuário será navegado para a interação ou atividade informada em "nextInteractionName".

Type:
  • string

nextProcessKey :number

Chave do processo que contém a atividade ou interação informada na propriedade "nextInteractionName". Será considerado o processo corrente quando não for informado.

Type:
  • number

order :number

Indica a ordem do botão na barra de botões. Os botões são exibidos em ordem crescente da propriedade "order". Quando não for informado, os botões serão exibidos na ordem em que foram declarados.

Type:
  • number

parameters :Array.<Array.<(string|number|boolean|Date|null)>>

Array com os parâmetros a serem enviados para a interação de destino, quando este botão não tiver o evento "onClick". Deve ser um array de array com duas posições sendo a primeira o nome do parâmetro e a segunda o valor.

Esta propriedade é legada e mantida apenas para fins de compatibilidade. Em novas implementações, utilize apenas a propriedade params.

Type:
  • Array.<Array.<(string|number|boolean|Date|null)>>
Deprecated:
  • Utilize a propriedade `params`.
See:

params :Record.<string, (string|number|boolean|Date|null)>

Parâmetros que serão passados para o processo destino quando este botão não tiver o evento "onClick" configurado.

Esta propriedade é um objeto que associa os nomes das propriedades ao seus valores. As propriedades informadas serão definidas no processo destino quando o botão for acionado. Somente podem ser informados valores primitivos ou datas.

Type:
  • Record.<string, (string|number|boolean|Date|null)>
Example
let btn = this.button('run', 'runInteraction');
btn.params.userName = ds.num('iFullName');
btn.params.description = ds.str('iDescription');

parent :Process|Grid

Objeto que contém este botão. Poderá ser uma instância de:

  • Process, para os botões de um processo;
  • Grid, para os botões de uma grade;
Type:
  • Process | Grid
See:

permissionKeyWord :string

Palavra chave utilizada para controlar o poder do usuário em disparar esta âncora. Se o usuário não tiver permissão, o componente será exibido desabilitado, independente do valor da propriedade "enabled".
Quando informado, o usuário ou o seu grupo deverão ter ao menos uma permissão que contenha a palavra chave definida. A permissão deve ser concedida no processo Admin > Segurança > Permissões, selecionado o processo na árvore de diretórios e arquivos, e adicionando um registro na grade de permissões e preenchendo o campo "Palavras Chaves".

Type:
  • string

process :Process

Instância do processo onde este objeto foi criado.

Type:
  • Process
See:

timeout :number

Indica o tempo em milissegundos para o disparo automático do botão.

Type:
  • number
Deprecated:
  • Utilize a propriedade "timer".
See:

timer :ButtonTimer

Temporizador para disparos automáticos do botão.

Type:
  • ButtonTimer
See:
  • ButtonTimer

validateLastInteraction :boolean

Determina se os componentes da interação corrente serão notificados que irá ocorrer uma navegação para uma outra interação, possibilitando que os componentes notificados tomem ações para validar os seus estados, podendo inclusive cancelar o comando de navegação do usuário.
A ação de validação irá variar entre os componentes notificados. Por exemplo: a grade irá executar um "post" caso o registro atual se encontre em edição e irá bloquear a navegação caso o registro não possa ser gravado.

Type:
  • boolean

visible :boolean

Indica se o botão deve ser exibido na barra de botões do processo ou da grade.

É recomendada a utilização das propriedades Process.visibleButtons e Grid.visibleButtons para definir quais botões devem ser exibidos.

Type:
  • boolean
See:
  • Process#visibleButtons
  • Grid#visibleButtons

Methods


assign(obj)

Atribui as propriedades desta instância com os valores das propriedades da instância informada.

Parameters:
Name Type Description
obj Button

Objeto do qual se deseja obter os valores.


clone()

Cria uma cópia desta instância.

Returns:
Type
Button

disable()

Desabilita o botão.

Deprecated:
  • Utilize a propriedade enabled.
See:

enable()

Habilita o botão.

Deprecated:
  • Utilize a propriedade enabled.
See:

hide()

Torna o botão invisível.

Deprecated:
  • Utilize a propriedade visible.
See:

show()

Torna o botão visível.

Deprecated:
  • Utilize a propriedade visible.
See: