Olá novamente à comunidade SAP. Espero que estejam bem e que tenham tido tempo de ler o primeiro blog que escrevi sobre o CAP
aqui. Hoje gostaria de adicionar funcionalidade ao blog que fiz sobre as aplicações full stack no framework CAP. Novos artefatos de base de dados, como os calculation views e stored procedures, para torná-lo mais semelhante a uma aplicação real. Para ler este blog em inglês, clique
aqui
Vamos começar adicionando um
calculation view. Como já devem saber, os calculation views representam dados de várias tabelas/vistas para apresentar um modelo de dados.
Lembre-se que, ao criar novos objetos,
é necessário fazer um build (cds build) ao nível do projeto para poder fazer o deployment, garantindo que não haja nada de errado no HDI.
Para adicionar um calculation view ao seu projeto CAP, siga os seguintes passos:
- Crie um calculation view dentro da pasta db/src do projeto.
A partir do command palette, digite
>hana: para abrir o menu de sugestões e selecione no drop down "Create SAP HANA Database Artifact"
- Siga os passos do assistente para adicionar as informações correspondentes ao tipo de objeto db, nome, path, etc.
Uma vez que tenha criado o modelo de dados, precisamos reconstruir o projeto antes de fazer o deploying. Para reconstruir o projeto, na terminal, digite: cds build
*Note que as tabelas e a nova view sejam reconstruídas (pode verificar no output da terminal)
Após a construção dos objetos, pode usar o ícone de foguete na ferramenta BAS para fazer o deploy - coloque o mouse ao nível do projeto e não ao nível do objeto.
Após o deployment, pode verificar se o calc view foi criado corretamente dentro da instância do HANA usando o explorador de bases de dados (na seção de Column views)
E também pode fazer uma consulta à view a partir da consola de SQL
Ou também a partir da terminal usando a ferramenta hana-cli
O próximo passo é adicionar o calculation view ao arquivo de modelos do BD e fazer referência a ele a partir do serviço OData. Como o CV já existe no sistema, é necessário incluir anotações no arquivo cds do BD para que o sistema saiba que se trata de um objeto já existente.
Usando a ferramenta hana-cli, vamos inspecionar a view. Com o output cds (-o flag), podemos gerar esta view como se fosse um view de CDS. Como mencionado anteriormente, e como o objeto já existe, a ferramenta hana-cli inclui essas anotações no calculation view (@cds.persistence annotations acima do nome da Entity) explore o comando para ver que outras opções pode usar e também para ver a definição completa do mesmo
Com esta definição de CDS, continuamos para o arquivo de CDS. Note que removemos o namespace e o adicionamos como contexto na estrutura abaixo. Isso é feito para não ter que colocar um namespace no calculation view.
Após incluir a view nesta definição, continuamos para o serviço OData.
Incluímos aqui para poder expô-lo como um endpoint diferente. A anotação @readonly foi incluída no serviço para mostrar que é apenas para leitura e que o consumidor do serviço não deve tentar criar ou manipular os dados a partir deste endpoint.
O próximo passo é garantir que a construção e o deployment da aplicação funcionem como anteriormente. Após o deployment, execute o serviço a partir da