Tópico AnteriorPróximo Tópico


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.

  1. Se necessário, abra o Navegador escolhendo Janela->Mostrar Visualização->Navegador.
  2. 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( ).

  1. 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.
  2. Escolha a guia Script. A guia Script aparece, conforme mostrado na Figura 22-6.
  3. Digite a seguinte linha de código na janela de script do método onCreate( ):
  4. countOfMinis = 0; 
    
  5. Para executar o relatório e verificar se o código não criou algum erro, escolha Visualizar.
  6. 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.
  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.

  1. Em Layout, selecione a Linha e, em seguida, escolha Script.
  2. Na lista suspensa de métodos no início da janela de script, selecione onCreate, conforme mostrado na Figura 22-8.
  3. Digite a seguinte linha de código JavaScript na janela Script:
  4. row=this.getRowData( ); 
    
    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.
  5. Digite a seguinte linha de JavaScript abaixo da linha recém-digitada:
  6. CustName=row.getExpressionValue( "row[CUSTOMERNAME]" ); 
    
    Essa linha de código retorna o conteúdo da coluna da tabela que vem da coluna CUSTOMERNAME no conjunto de dados.
  7. Digite a seguinte linha de código para incrementar condicionalmente o contador criado em Criar e Inicializar um Contador no Método Table.onCreate( ).
  8. if( CustName.indexOf( "Mini" ) != -1 ) countOfMinis += 1; 
    
    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->+=
  9. 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( ).

  1. Em Esboço, selecione o design de relatório, conforme mostrado na Figura 22-9.
  2. Selecione o método afterFactory( ) na lista drop-down da janela de script.
  3. Digite o seguinte código no método afterFactory( ):
  4. importPackage( Packages.javax.swing ); 
    frame = new JFrame( "Count of Minis = " + countOfMinis ); 
    frame.setBounds( 310, 220, 300, 20 ); 
    frame.show( ); 
    
  5. 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.


(c) Direitos Autorais Actuate Corporation 2006

Tópico AnteriorPróximo Tópico