Tutorial 5: Gravando um Manipulador de Eventos em JavaScript
Este tutorial fornece instruções para a gravação de um conjunto de manipuladores de eventos. Ele supõe que você tenha um design de relatório básico baseado no Banco de Dados de Amostras de Modelos Clássicos, Inc. O único requisito do design de relatório inicial é que ele contenha uma tabela de clientes com uma coluna para o nome do cliente. Neste tutorial, você contará os clientes cujos nomes contenham a cadeia "Mini" e exibirá o resultado em uma janela pop-up.
Neste tutorial, as seguintes tarefas serão executadas:
Tarefa 1: Abrir o Design de Relatório
Abra um design de relatório que utilize o banco de dados de amostras Carros Clássicos e exiba uma tabela de nomes de clientes.
- Se necessário, abra o Navegador escolhendo Janela->Mostrar Visualização->Navegador.
- Dê um clique duplo no design de relatório apropriado. O arquivo é aberto no editor de layout, conforme mostrado na Figura 22-4.
Tarefa 2: Criar e Inicializar um Contador no Método Table.onCreate( )
Para contar o número de clientes cujos nomes contenham a cadeia Mini, indique primeiro um contador global e configure seu valor para zero. O método Table.onCreate( ) é o local mais apropriado para a execução dessa tarefa porque Table.onCreate( ) é executado antes da recuperação de qualquer linha. Esse contador é incrementado condicionalmente no método Row.onCreate( ).
- Em Layout, selecione a tabela colocando o cursor perto do canto inferior esquerdo da tabela. O ícone da tabela aparece, conforme mostrado na Figura 22-5.
- Escolha a guia Script. A guia Script aparece, conforme mostrado na Figura 22-6.
- Digite a seguinte linha de código na janela de script do método onCreate( ):
- Para executar o relatório e verificar se o código não criou algum erro, escolha Visualizar.
- Role para o final do relatório, em que aparecem as mensagens de erro JavaScript. Se não houver erros, o relatório aparecerá, conforme mostrado na Figura 22-7.
Se você vir uma mensagem de erro, talvez tenha digitado uma instrução incorretamente. Se isso tiver ocorrido, volte para a janela de script, selecione o método recém-modificado, corrija o erro e escolha Visualizar novamente.
Tarefa 3: Incrementar Condicionalmente o Contador no Método Row.onCreate( )
Para contar o número de clientes com a cadeia Mini em seus nomes, examine o nome de cada cliente e inclua um no contador para cada ocorrência. Um local lógico para executar essa tarefa é no método Row.onCreate( ), que é executado a cada recuperação de linha de dados a partir da origem de dados.
- Em Layout, selecione a Linha e, em seguida, escolha Script.
- Na lista suspensa de métodos no início da janela de script, selecione onCreate, conforme mostrado na Figura 22-8.
- Digite a seguinte linha de código JavaScript na janela Script:
Observe que, ao digitar o ponto depois disso, aparece uma pop-up contendo todos os métodos e propriedades disponíveis, incluindo getRowData. Essa linha de código obtém uma instância de IRowData, que possui um método, getExpressionValue( ), para obter o conteúdo de uma coluna da linha.
- Digite a seguinte linha de JavaScript abaixo da linha recém-digitada:
Essa linha de código retorna o conteúdo da coluna da tabela que vem da coluna CUSTOMERNAME no conjunto de dados.
Você pode utilizar a paleta de JavaScript para inserir cada um dos seguintes elementos na linha precedente:
- indexOf( )
Selecione Nativo ( JavaScript ) Objetos->Funções da Cadeia->indexOf( )
- !=
Selecione Operadores->Comparação->!=
- +=
Selecione Operadores->Designação->+=
- Escolha Visualizar para executar o relatório novamente e verificar se o código digitado não criou algum erro.
Tarefa 4: Exibir o Resultado Utilizando o
Método ReportDesign.afterFactory( )
Para exibir a contagem de clientes com a cadeia Mini em seus nomes, insira o código em um método que seja executado após o processamento de todas as linhas da tabela. Um local lógico para esse código é no método ReportDesign.afterFactory( ).
- Em Esboço, selecione o design de relatório, conforme mostrado na Figura 22-9.
- Selecione o método afterFactory( ) na lista drop-down da janela de script.
- Digite o seguinte código no método afterFactory( ):
- Selecione Visualizar para ver os resultados. Se não tiver havido erros no código, você verá um relatório semelhante ao mostrado na Figura 22-10.
Se você não vir a janela Contagem de Minis, procure-a atrás da janela do Eclipse. Se essa janela não aparecer, o motivo mais provável é um erro de script causado por um erro em uma das entradas de código.
Se suspeitar de erro no script, role para o final do relatório em que aparecem as mensagens de erro de script. Na maioria das situações, há uma mensagem de erro curta ao lado de uma sinal de mais ( + ). O sinal de mais indica que há uma mensagem de erro mais detalhada, visível somente depois de expandir a mensagem de erro curta. Para expandir a mensagem de erro curta, escolha o sinal de mais. Role para baixo para ver a mensagem de erro mais detalhada.
