Tutorial: Utilizando um iSeries Project para Compilar e Executar um Aplicativo no Servidor iSeries

Este tutorial descreve como criar e ocupar um iSeries Project com código existente para um aplicativo de tela verde. Isso envolve editar e verificar o código localmente e enviá-lo de volta ao host. Finalmente, uma compilação é enviada ao host para compilar o novo aplicativo nativo.

O Aplicativo de Tela Verde HelloWorld *LDA:

O aplicativo HelloWorld *LDA é um aplicativo de tela verde simples, que permite atualizar o *LDA (Local Data Area) atual do job no momento atual. Permite, também, exibir o conteúdo da área LDA. Esse aplicativo foi codificado nas linguagens DDS e CL. O aplicativo aparece assim:

O código fonte de DDS:

O código fonte de CL:

Aperfeiçoamentos necessários para o aplicativo de tela verde:

Você modificará os seguintes itens no aplicativo de tela verde:
  1. Inclua um terceiro item de menu que limpe o conteúdo do LDA (Local Data Area).
  2. Altere o primeiro item de menu para que informe: Update the job's LDA with current time.
  3. Remova o segundo plano de intensidade reversa do título da tela.
Essas alterações significam que ambos os códigos DDS e CL utilizados precisam ser atualizados e recompilados. Para isso, você criará um iSeries Project, fará download dos membros apropriados localmente no iSeries Project, editará e verificará os membros e, finalmente, os enviará de volta ao host e os compilará.

As Tarefas de Desenvolvimento

O ciclo de desenvolvimento por trás dos iSeries Projects envolve a criação e a ocupação de iSeries Projects com membros fonte. Esses membros são, então, editados localmente e verificados por erros de sintaxe. Em seguida, os membros são enviados para o servidor iSeries onde uma construção será emitida dependendo do Estilo de Construção associado ao projeto. Os erros das compilações podem ser recuperados e visualizados localmente e os membros podem ser modificados de acordo. Finalmente, depois que a compilação dos membros não apresentar erros, elas poderão ser verificadas quanto ao gerenciamento de origem em um servidor de equipe, se o desenvolvimento de equipe for requerido. O servidor da equipe pode ser especificado, associando o projeto a um Provedor da Equipe. O restante deste tutorial guia-o através de cada etapa de desenvolvimento e aplica-as no contexto de atualização do aplicativo HelloWorld existente.

Etapa 1: Abrindo a perspectiva iSeries Projects e localizando o código fonte para o aplicativo de tela verde

Neste tutorial, o código fonte do aplicativo de tela verde está em uma biblioteca denominada HelloWorld em um servidor denominado DemoHost. Para visualizar a biblioteca, utilize a visualização Remote Systems para criar uma conexão e um filtro para a biblioteca:

  1. No menu do WebSphere Development Studio Client, selecione Window > Open Perspective > Other e selecione iSeries Projects.
  2. Na visualização Remote Systems, expanda New Connection.
  3. Expanda a entrada do iSeries para abrir o assistente New iSeries System Connection.
  4. Digite o nome da conexão e o nome do host e clique em Finish.
  5. Expanda sua nova conexão e clique com o botão direito em iSeries Objects.
  6. Selecione New > Library Filter.
  7. Digite HelloWorld como o nome da biblioteca e clique em Next.
  8. Digite HelloWorld como o nome do filtro e clique em Finish.

Você criou um filtro que possui uma biblioteca denominada HelloWorld:

Etapa 2: Criando um iSeries Project e ocupando-o com membros

Agora que você localizou o código fonte, é necessário importá-lo a um iSeries Project para edição. Você pode criar um novo iSeries Project, utilizando o assistente New iSeries Project. No iSeries Project Navigator, clique com o botão direito do mouse em qualquer item da visualização em árvore e selecione New > iSeries Project. Isso criará um iSeries Project vazio, que precisa ser ocupado. Isso será útil quando você estiver criando um novo membro do iSeries e ele ainda não estiver localizado em um servidor. Para este tutorial, há um aplicativo de tela verde que precisa ser importado a um iSeries Project. No filtro RSE HelloWorld acima, clique com o botão direito do mouse nos arquivos físicos de origem QCLSRC e QDDSSRC e selecione Make Available Offline.
Nota: A ação Make Available Offline faz download dos arquivos ou membros selecionados localmente para seu iSeries Project correspondente. O iSeries Project correspondente possui o mesmo host e as mesmas propriedades de biblioteca que o nome do host e a biblioteca dos arquivos físicos ou membros de origem selecionados. Se um iSeries Project não for localizado, um será automaticamente criado. Para este tutorial, essa ação criou um novo iSeries Project com o nome: connectionName_libraryName. Se houver um ou mais iSeries Projects existentes, que possuem a mesma conexão e são mapeados para a mesma biblioteca como a biblioteca associada, então, você deve ser solicitado a selecionar um desses projetos existentes.

Etapa 3: Ativando a visualização mesclada sob um iSeries Project

Após criar e ocupar o iSeries Project com os arquivos e membros de origem, você pode exibir os objetos remotos que existem na biblioteca associada ao projeto, selecionando a ação Show Remote Objects a partir do menu pop-up. Esta ação exibe uma visualização com as mesclas de todos os recursos locais com todos os recursos remotos que existem na biblioteca remota:

A seta amarela na imagem acima indica que os objetos existem localmente na estação de trabalho e remotamente no servidor. Se você selecionar Show > Remote Objects no menu drop-down, todos os objetos remotos serão removidos da visualização.

Etapa 4: Editando os membros de origem local

Editar os membros de origem local nos iSeries Project é o mesmo que editar os membros de origem remota no Remote System Explorer, com uma exceção: os membros não são travados no servidor quando editados a partir da perspectiva iSeries Projects. Para modificar o código para que incorpore todas as alterações necessárias para execução dos membros de origem:
  1. Clique duas vezes em DEMO.DSPF para ativar o CODE Designer.
  2. Modifique a primeira opção para que informe: Update the job's LDA with current time.
  3. Inclua uma terceira opção: Clear LDA content.
  4. Exclua o atributo HI para o título.
  5. Salve e feche o CODE Designer.
    Nota: Você modificou um arquivo utilizando um editor externo, mas o conteúdo do workbench está, agora, fora de sincronização com o conteúdo real no sistema de arquivos. Para atualizar a visualização, clique com o botão direito no projeto e selecione Refresh. Seria necessário atualizar a visualização sempre que editar um arquivo diretamente no sistema de arquivos.
O tipo de origem de um determinado membro é incluído como a extensão do arquivo quando o membro é criado ou transferido por download localmente e o editor apropriado é ativado ao dar um clique duplo nele. Você pode alterar um tipo de membro renomeando-o com outra extensão ou você pode utilizar a página Properties para modificar essa propriedade. O CODE Designer não está registrado como um editor externo para exibir arquivos, mas você pode alterar isso manualmente, incluindo-o através da página de preferência e ele aparecerá no menu Open With. Para fazer isso:
  1. Selecione Window > Preferences a partir do menu principal.
  2. Expanda Workbench.
  3. Selecione File Associations.
  4. Selecione *dspf dos File types.
  5. Clique em Add próximo à visualização da lista Associated editors.
  6. Escolha External Programs e, em seguida, procure a localização de instalação do CODE Designer (codedsu.exe).
    Nota: O CODE Designer deve estar instalado no diretório raiz c:\wdsc.
  7. Clique duas vezes em DEMO.CLP.
  8. Edite e salve o código CL para tratar a terceira opção, introduzida ao aplicativo de tela verde.

Etapa 5: Verificação de sintaxe e verificação de origem

A partir do menu principal, selecione Source e, em seguida, selecione Prompt, Syntax Check ou Verify, dependendo do idioma utilizado.

Etapa 6: Compilando o projeto, enviando uma compilação

Já que há somente dois membros envolvidos e não há nenhuma etapa de ligação necessária, você tem duas maneiras para compilar suas alterações de códigos. Você pode executar uma compilação de um único membro de forma individual ou pode compilar o projeto completo. A compilação do projeto completo depende do Estilo de Compilação associado ao projeto.

Para compilar um membro único:
  1. No iSeries Project Navigator, clique com o botão direito do mouse no membro, selecione Compile e em seguida selecione o comando de compilação que você deseja executar. Quaisquer alterações executadas serão enviadas ao servidor. A visualização da lista de iSeries Error exibe quaisquer erros.
  2. Ao conectar-se a um servidor utilizando o Remote System Explorer, a Library List é reunida a partir de seu perfil no servidor. Você pode modificar a lista de bibliotecas de uma conexão específica clicando com o botão direito na conexão na visualização Sistemas Remotos e selecionando Properties. Em seguida, selecione Subsystems e iSeries Commands. Especifique a lista de bibliotecas e clique em Add.

Para compilar o projeto completo, clique com o botão direito do mouse no projeto e selecione Remote Actions > Submit Build . O comportamento real da compilação depende do Estilo de Construção associado ao projeto. O estilo de compilação padrão para iSeries Projects é CL Program Build Style.

Esse estilo de compilação gerará um membro COMPILE.CLLE em um arquivo QCLSRC que conterá uma entrada de compilação para cada membro de origem no iSeries Project. Para este tutorial, clique com o botão direito em qualquer objeto no projeto e selecione Remote Actions > Submit Build. Essa ação, com a configuração padrão, executará todos os seguintes:
  1. Gera o seguinte membro COMPILE.CLLE:

  2. Envia todas as alterações do projeto para o servidor, incluindo o membro COMPILE.CLLE recém-criado.
  3. Exibe uma entrada Build Job na visualização iSeries Job Status, indicando que uma construção foi enviada.
  4. Envie um job para compilar o COMPILE.CLLE na biblioteca QTEMP e execute-o para compilar o projeto.
Isso gerará dois objetos requeridos: o arquivo de exibição DEMOLDA e o programa DEMOLDA. Depois que o job for concluído, vá para a visualização Remote Systems, atualize a visualização e você deverá ver a seguinte na biblioteca do HELLOWORLD:



Se houver erros durante a construção enviada, você poderá clicar com o botão direito do mouse na entrada na visualização Job Status de iSeries e selecionar Retrieve Errors. Isso abrirá a lista do iSeries Error e você estará apto a dar um clique duplo no erro para abrir o membro correspondente.
Nota: Quando mais de um membro de origem é compilado de cada vez, a ordem de compilação dos membros de origem segue a hierarquia de ordem do tipo de membro da página de preferências iSeries Command Execution. Para acessar essa página de preferências, clique em Window > Preferences no menu do workbench. Em seguida, expanda Remote Systems > iSeries e clique em Command Execution. Na área Compile member types in this order, você pode selecionar vários tipos de membros e movê-los para cima ou para baixo na lista de hierarquia.

O comando de compilação gerado no membro COMPILE.CLLE para um tipo de membro específico é o último comando de compilação utilizado na visualização Remote Systems, no iSeries Projects Navigator ou selecionado com a operação "Select Compile Command".

Etapa 7: Executando o aplicativo atualizado

Agora que o aplicativo de tela verde atualizado foi compilado é o momento de executar o aplicativo.
  1. Clique com o botão direito em DEMOLDA e selecione Run (no prompt) > Interactive. É necessário selecionar uma execução Interactive por ser um aplicativo de tela verde e a opção sem prompt foi escolhida pois o aplicativo não possui parâmetros de entrada.
  2. Você pode receber um diálogo de erro ao tentar executar o aplicativo. Isso ocorre por que o RSE Communication Server não deve ter sido iniciado. Siga as instruções na janela pop-up sobre como resolver o erro.
  3. Você obterá esta janela de tela verde atualizado:

Resumo: Você criou e ocupou um iSeries Project com código existente para um aplicativo de tela verde. Você editou e verificou o código localmente e o enviou de volta para o servidor. Finalmente, uma construção foi enviada para o servidor para compilar seu novo aplicativo nativo.