Histórico da Página
Índice | ||
---|---|---|
|
Acesso
O gerador pode ser acessado através da url http://cxs-squad-tools:9301/
No momento, não existe necessidade de um login, então basta acessar o endereço e utilizar.
Obs: existe um bug no framework (po-ui) que aleatoriamente a página não é exibida completamente. Se isso acontecer, apenas recarregue a página.
Tipos de projeto
Atualmente, são gerados os artefatos:
- Progress (API e BO)
API no padrão T-Talk, e BO com consulta dinâmica usando GpsQuery - Frontend Portinari 1
Tela padrão de CRUD, utilizando portinari@1 + angular8 - Frontend PO-UI 2/2
Tela padrão de CRUD, utilizando po-ui@2 + angular9, ou po-ui@3 + angular10 - Frontend PO-UI 2/3 Simplificado (Angular9)
Tela padrão de CRUD com codificação simplificada, utilizando po-ui@2 + angular9, ou po-ui@3 + angular10 - Testes Automatizados Progress - TAST
Casos de teste automatizados para a BO gerada pela ferramenta
Alguns artefatos possuem dependências específicas a serem adicionadas no projeto.
Para verificar as dependências, acessa a página de dependências.
Utilização
Na tela inicial, podem ser pesquisadas as aplicações que já estão cadastradas, incluir uma nova, editar uma já existente, excluir e gerar os artefatos da aplicação.
Cadastrando uma aplicação
Uma nova aplicação pode ser cadastrada através do botão Adicionar, ou uma aplicação existente pode ser alterada através da ação de editar.
Os dados básicos da aplicação estão dentro da sessão Dados da aplicação.
Os dados a serem informados:
- Tabela: nome da tabela do banco de dados. As tabelas são atualizadas todos os dias, após aplicação do dicionário de dados
- Nome do componente: é o nome da aplicação que será gerada
- Descrição: titulo da aplicação
- Módulo: módulo, dentro do padrão de APIs. Ex: "hcg", "hfp"
- Versão: versão, dentro do padrão de APIs. Ex: "v1", "v2"
- Time responsável: nome do time responsável. Ex: "contratos", "financas"
O nome do componente segue um padrão específico (lower case, palavras separadas por hífen). Caso o nome não esteja neste padrão, ao sair do campo o nome será corrigido automaticamente.
Adicionando campos
Um campo pode ser adicionado através da ação Adicionar dentro da tabela Campos disponíveis.
Ao clicar em adicionar, caso exista alguma aplicação que a chave primária seja similar ao campo em questão, será solicitado se deseja adicionar um novo relacionamento. Neste caso, será aberta a tela conforme o item Adicionando zooms logo abaixo.
Obs: o gerador pode sugerir um zoom de algum campo que tenha o nome parecido, mas que não seja correto, devido as diferentes variações de nomes de campos que temos no banco de dados.
O preenchimento dos campos deve seguir as informações abaixo:
- Propriedade: nome da propriedade no modelo de dados (nome interno, deve ser usado camelCase e nomenclatura em inglês)
- Descrição: label em tela para este campo. Será sugerido o label cadastrado no dicionário de dados
- Tipo ABL: tipo do dado Progress. Já será sugerido o tipo correto
- Valor Fixo ABL: campo o campo possuir um valor fixo a ser aplicado diretamente no backend
- Tipo JS: tipo do dado JavaScript. Já será sugerido o tipo correto
- Valor Inicial JS: quando houver um valor inicial para a propriedade em tela
- Formato Entrada: máscara do campo
- Tamanho máximo: limite de caracteres permitido no campo em tela
- Chave Primária
- Obrigatório
- Editável: indica se o campo estará disponível para alteração durante a edição do registro (na inclusão, continua disponível)
- Auto-incremento: indica se o campo (numérico) terá o valor incrementado automaticamente (neste caso, não estará habilitado na inclusão)
- Visível: indica se o campo deve aparecer na tela de detalhes
- Listado em grid: indica se o campo deve aparecer na tela de listagem
- Link: indica se, na tela de listagem, o campo terá um link para tela de detalhes
- Filtro: indica se o campo será considerado para pesquisa
- Filtro por faixa: indica se o campo de filtro, será por faixa (inicial e final)
Quando houver algum relacionamento cadastrado na aplicação, será exibido um campo adicional chamado Enumerador / Zoom, ao qual terá a lista de relacionamentos que podem ser utilizados.
Adicionando enumeradores
Ao clicar em Adicionar na tabela Relacionamentos, e selecionar a opção Enumerador, a tela para cadastro de enumeradores será aberta.
Deve ser informado o nome do componente (mesmas regras do nome do componente da aplicação), uma descrição informativa do zoom, e os valores do mesmo.
Âncora | ||||
---|---|---|---|---|
|
Ao clicar em Adicionar na tabela Relacionamentos, e selecionar a opção Zoom, a tela para cadastro de enumeradores será aberta.
Só pode ser criado zoom para uma aplicação já cadastrada no gerador. Ao informar a aplicação de zoom, novas opções serão abertas para seleção.
O campo chave se refere ao campo que será utilizado como valor na aplicação, e o campo label se refere ao campo que será utilizado como descrição do valor.
Na tabela logo abaixo, serão exibidos todos os campos cadastrados na aplicação de referência do zoom, e devem ser selecionados os campos a serem exibidos na tela do zoom.
Gerando os artefatos
Na tela inicial, ao selecionar uma aplicação existente, e acionar a opção Executar, será aberta a tela para gerar os artefatos.
Devem ser selecionados os tipos de artefato que serão gerados.
Ao confirmar a execução, serão gerados os artefatos em um caminho de rede, ao qual irá aparecer no rodapé da tela. Também terá um link para copiar o caminho para a área de transferência.
Resolvendo problemas
Caso a tabela a ser utilizada não seja exibida na seleção, execute o job do Gerador para atualizar a lista de tabelas: http://jason:8080/job/GeradorCRUD_-_Atualizacao_Dicionario%28MANUAL%29/ .
Caso o gerador deixe de funcionar, existe um job para parar e iniciar o serviço do mesmo.
Acesse o Jenkins pelo endereço http://cxs-squad-tools:8080 e logue com o usuário dev (senha totvs@123).
Na view CodeGen, você vai encontrar os jobs necessários.