Visões Dinâmicas
As visões dinâmicas são uma forma de consultar diferentes informações em tabelas de diferentes produtos, com filtros e visualização em diferentes formas, como em relatórios que permitem a sua impressão em CSV, PDF ou outro formato existente. O envio deste relatório pode ser feito por e-mail, desde que o servidor do e-mail esteja configurado.
Para os produtos em que o recurso está disponível, é necessário obter a estrutura de metadados, que são as definições de tabelas e campos que a base possui, a lista de tabelas, quais campos existem em cada uma delas, qual o tipo de dados de cada um deles, entre outras informações. Com base nessas informações são geradas as consultas.
Para cada consulta, há um tempo de 4 (minutos) para visualização e geração de relatórios, após esse tempo, as ações são abortadas a partir de uma rotina de time out, que interrompe o processo de consulta.
Visões dinâmicas e relatórios que demorarem mais do que 1 (hora) para serem processados, tem sua geração automaticamente cancelada, retornando uma notificação ao usuário.
Importante
A sincronização dos metadados deve ser feita sempre que houver mudanças na definição da base, por exemplo, a criação de novas tabelas.
Controle adequadamente o volume de emissão dos relatórios e visões dinâmicas, através das informações exibidas na tela: quantidade da dados trafegados, requisições customizadas que foram realizadas, tempo gasto com as customizações e cota limite. Caso algum destes limites esteja no fim, uma mensagem de aviso será exibida. Para expansão dos limites, entre em contato com a Senior.
O que você pode fazer:
- Acesse Tecnologia > Customização > Relatórios > Visões Dinâmicas;
- Clique em Nova visão;
- Informe o Nome, Descrição e Tags para a identificação dessa visão dinâmica e clique em Editor visual para configurações;
- Em seguida, selecione no campo Tabela uma ou mais tabelas que serão utilizadas para criação da visão dinâmica. Caso seja selecionado mais de uma tabela, em Ligações informe quais campos são responsáveis pelo Join na visão dinâmica;
- Se desejar, utilize os demais campos à direita da tabela escolhida para filtrar e personalizar as informações exibidas, definindo agrupamento e ordenação, por exemplo;
- Opcionalmente, utilize o botão Visualizar para ter uma prévia das informações em tela (na visualização são mostradas até 10 linhas de dados) ou então em Visualizar em PDF para ter noção da visualização de tais dados em arquivo;
- Para gerar um relatório em arquivo com todos os resultados, clique em Gerar relatório e então defina o Formato e Envio do arquivo (por e-mail como anexo ou como link). Clique em Confirmar;
- Clique em Salvar visão para que ela seja salva e possa ser utilizada novamente. Dessa forma, ao entrar novamente em Tecnologia > Customização > Visões Dinâmicas, a visão salva é mostrada.
- Acesse Tecnologia > Customização > Relatórios > Visões Dinâmicas.
- Clique em Nova visão.
- Informe o Nome, Descrição e Tags para identificar a visão dinâmica. Em seguida, clique em Editor SQL para configurar o SQL conforme necessário.
- Para gerar um relatório em arquivo com todos os resultados, clique em Gerar relatório e defina o formato e o envio do arquivo (por e-mail como anexo ou como link). Em seguida, clique emConfirmar.
- Clique em Salvar visão para que ela seja armazenada e possa ser utilizada novamente. Dessa forma, ao acessar novamente as Visões Dinâmicas, a visão salva será exibida.
Opcionalmente, utilize o botão Visualizar para ter uma prévia das informações na tela (a visualização mostra até 10 linhas de dados) ou em Visualizar em PDF para ter uma noção da aparência dos dados em um arquivo PDF. Ao clicar em Visualizar em PDF, uma caixa de diálogo será exibida para definir a largura da exibição, útil principalmente para consultas com muitas colunas, pois ajusta os dados horizontalmente no arquivo.
Observação
Ao utilizar comentários na visão dinâmica, utilize os caracteres /* */.
Por exemplo: /* MEU COMENTÁRIO */.
Os comentários devem ser breves e descrever conteúdo específico ou relacionamentos. Evite usar comentários em bloco para código SQL ou parâmetros.
Após a criação de uma visão dinâmica, estão disponíveis todas as informações disponíveis na tabela selecionada. Porém, é possível escolher quais informações são exibidas e mudar a forma como elas são apresentadas, a partir dos recursos de agrupar, adicionar funções, esconder, mudar posição, ordenar e filtrar os campos da tabela, exceto em campos customizados:
- Em Agrupado por, clique em Adicione um agrupamento + para definir por qual campo as informações devem ser agrupadas;
- Clique em Visualizar para atualizar os dados exibidos na visão de acordo com o filtro;
- Se não quiser manter o filtro, é preciso clicar no X ao lado dele e clicar novamente em Visualizar para atualizar as informações.
A ordem de exibição das colunas será a mesma definida ao agrupamento. Caso se monte a visão e depois se deseje reordenar os agrupamentos, todas as outras funções da visão serão perdidas, já que elas dependem do que estiver nessas primeiras.
Com intuito de proporcionar um refinamento dos dados exibidos, as visões dinâmicas suportam o uso de expressões comuns SQL, como por exemplo COUNT(), SUM() e MAX():
- Em Funções, clique Dados puros +. Quando não houver expressão configurada, é mantido assim o valor deste campo;
- Selecione uma expressão disponível e, em seguida, determine o campo sobre o qual ela deve ser executada;
- Clique em Visualizar para atualizar os dados exibidos na visão de acordo com o filtro;
- Se não quiser manter o filtro, é preciso clicar no X ao lado dele e clicar novamente em Visualizar para atualizar as informações.
Essa expressão estará disponível na última coluna da visão dinâmica e no relatório.
Ao não optar pelo agrupamento de campos ou funções, é possível selecionar quais colunas serão exibidas na consulta e a ordem de exibição.
- Clique em Todos para abrir uma janela com todos os campos disponíveis para a tabela selecionada;
- Deixe marcados aqueles que deseja visualizar e desmarcados aqueles que não devem ser mostrados como colunas na sua visão dinâmica;
- Para ordenação, reposicione os campos, clicando e arrastando-os para o local desejado;
- Clique em Concluído para aplicar as alterações;
- Clique em Visualizar novamente para atualizar os dados exibidos na visão de acordo com o filtro;
- Se não quiser manter os campos conforme configurou, repita os passos de 1 ao 4.
Os campos customizados são apresentados a partir de um ícone indicativo na coluna, a fim de identificá-los dentro de uma visão dinâmica.
Ao não optar por agrupar alguma coluna, é possível ordenar por qualquer coluna que esteja marcada para visualização.
- Clique em Configure a ordenação + para definir por qual campo as informações devem ser ordenadas;
- Clique em Visualizar para atualizar os dados exibidos na visão de acordo com o filtro;
- Se não quiser manter o filtro, é preciso clicar no X ao lado dele e clicar novamente em Visualizar para atualizar as informações.
Observação
Por padrão, a ordenação é realizada em ordem Ascendente (do menor para o maior valor). Se quiser inverter esta ordem, clique sobre a palavra asc ao lado do campo desejado, para exibir o menu com o sentido da ordenação.
Os dados somente são filtrados na visão, após essa configuração. Caso contrário, todos eles são exibidos.
- Clique em Adicione filtros + para filtrar as informações exibidas de acordo com algum dos campos da tabela;
- É apresentada uma lista com todos os campos existentes na tabela, sendo que ao lado de um há um ícone identificando seu tipo: string, numérico, data ou booleano. Cada um possui diferentes opções de filtros;
- Após escolher o campo, defina como ele é filtrado e, dependendo do que é escolhido, informe um valor e clique em Adicionar filtro;
- Para que ao executar a visão dinâmica sejam informados parâmetros, assinale a opção Parâmetro e determine que este filtro é um parâmetro. Em seguida, informe o nome do parâmetro e clique em Adicionar filtro;
- Clique em Visualizar para atualizar os dados exibidos na visão de acordo com o filtro;
- Se não quiser manter o filtro, é preciso clicar no X ao lado dele e clicar novamente em Visualizar para atualizar as informações.
A configuração do fuso horário (timezone) no momento da execução das Visões Dinâmicas e/ou Relatórios ocorre da seguinte maneira:
- Configuração padrão: para os campos do tipo timestamp (Carimbo de data/hora), por padrão, no momento da execução das Visões Dinâmicas e/ou Relatórios é aplicado o timezone do navegador do usuário, enviado através do header x-user-timezone-offset.
- Configuração manual (timezone informado manualmente): em virtude de alguns produtos armazenarem essa informação a partir da aplicação do timezone e outras utilizando o UTC-0, no momento da visualização, as informações acabam apresentando divergências. Para que isso não ocorra, basta configurar o timezone manualmente através do campo e assim, sobrescrever a configuração padrão. Através do campo Informar timezone manual determine:
- "Não aplicar timezone": utilizada para visualizar as informações data/hora exatamente como estão armazenadas, ou seja, quando já possui um timezone aplicado;
- As demais opções deve ser utilizadas quando a informação está armazenada em UTC-0 e desejar configurar uma visão dinâmica informando um timezone diferente do que é enviado pelo navegador.
Para os campos tipo hora, é possível adicionar a visão dos segundos. Para isso, basta marcar o checkbox Apresentar segundos nos campos do tipo hora e clicar em Salvar.
Para os campos numéricos, é possível formatar os valores retornados com separadores de milhar e decimal. Para isso, basta marcar o checkbox Apresentar separadores de milhar e decimais nos campos numéricos e clicar em Salvar. No botão Visualizar, é retornada uma prévia do resultado final para conferência.
Após a criação das visões dinâmicas, outras ações podem ser realizadas:
Acesse Tecnologia > Customização > Relatórios > Visões Dinâmicas. Clique sobre a visão dinâmica desejada e, para vê-la, no botão Detalhes, na parte superior da tela. Após isso, na tela que mostra a visão, é possível fazer alterações e Salvar, Visualizar com as informações salvas anteriormente ou Excluir visão.
Acesse Tecnologia > Customização > Relatórios > Visões Dinâmicas. Clique sobre a visão dinâmica desejada e, em seguida, em Duplicar visão, na parte superior da tela. Após isso, informe um nome para a nova visão e prossiga com os passos para criar uma nova visão dinâmica.
- Acesse Tecnologia > Customização > Relatórios > Visões Dinâmicas;
- Clique sobre a visão dinâmica desejada e para vê-la no botão Detalhes, na parte superior da tela;
- Clique em Gerar relatório e escolha um dos formatos disponíveis:
- as impressões em relatórios, no formato PDF, são exportadas de forma paginada, ou seja, com quebras de páginas;
- ao exportar em formato CSV, os dados são exportados com um cabeçalho e uma lista de valores, que posteriormente podem ser importados no Excel. Para isso, basta no próprio arquivo do Excel acessar Dados > Obter Dados de Text/CSV e escolher esse arquivo para importação.
Importante
Devido os sistemas serem internacionalizáveis, os dados são exportados em formato UTF-8. Portanto, ao importar os dados no Excel é recomendável trocar o enconding para UTF-8.
- Escolha a forma de envio, que pode ser via notificação, e-mail com anexo ou e-mail com link. Se a opção escolhida for notificação e existir a permissão de visualizar grupos, é possível marcar a caixa de seleção Usuários de um grupo. Dessa forma, todos os usuários do grupo receberão o relatório;
- Clique em Confirmar.
Após a confirmação, será exibida uma notificação na tela informando a geração do relatório. Após terminar, uma nova notificação será apresentada com o link para visualizá-lo.
Para realizar a disponibilização deste relatório, é preciso habilitar alguns recursos vinculados ao processo, para que seja possível executar o relatório e visualizar o mesmo.
Abaixo seguem os passos para pode habilitar o relatório, atualizar a base de dados, criar o relatório e executar.
Habilitar a visão para o processo
Caso o processo não tenha a visão habilitada, não será possível criar o relatório para o mesmo. Execute os passos abaixo:
- Acesse a Plataforma Senior X com o usuário administrador do processo;
- Acesse o menu Senior X > BPM > Processos;
- Encontre o processo que deseja criar o relatório e clique em "Ações > Editar";
- Na tela de edição do processo, clique na opção "integrações";
- Habilite o campo "Habilitar visão" e inclua um nome para a visão dinâmica deste processo;
- Clique no botão "Salvar" para gravar as informações.
Atualização da base de dados de relatório
Sempre que houver mudanças na definição da base de relatórios, é necessário realizar a sincronização dos metadados para que o recurso esteja disponível em seu Tenant junto com as tabelas, campos e estrutura de metadados.
Para isso, realize os passos abaixo:
- Acesse a Plataforma com usuário administrador;
- Acesse o menu Tecnologia > Administração > Banco de dados de Relatório > Habilitar relatório;
- Role até o final da tela, e clique no botão "Atualizar base de dados";
- O processo de atualização pode demorar bastante. Aguarde até a finalização completa.
Criação do relatório
Como o objetivo do relatório é ter um retorno informando o status de cada uma das solicitações do processo, abaixo segue a forma como esse status é armazenado na base de dados da plataforma.
Status = 11 Quando a solicitação do processo já está como 'Encerrado' ou 'tratada'
Status = 4 Quando a solicitação do processo está como 'Cancelado'
Status = 1 Quando a solicitação do processo está como 'Pendente' ou 'Em Andamento', aguardando uma ação de aprovação.
- Acesse o menu Tecnologia > Customização > Relatórios > Visão Dinâmica;
- Clique no botão "Nova Visão";
- Insira um nome e descrição para seu relatório;
- Clique na opção "Editor SQL".
Select
Case
when A.status=1 Then 'Em Andamento'
when A.status=11 Then 'Encerrada'
when A.status=4 Then 'Cancelada'
End as Status,
A.process_instance_id as Solicitacao,
A.start_date as Data_Inicio,
A.end_date as Data_Final,
A.responsible as Responsavel
From "platform-workflow".<nome_processo_bpm> As A
Observação
nome_processo_bpm é o nome definido para a visão no passo um.
- Clique então no botão "Salvar" para gravar o seu relatório;
- Para visualizar um preview do relatório você pode clicar no botão "Visualizar";
- Para gerar um relatório completo, clique no botão "Gerar Relatório".
Você pode também agendar uma execução periódica automática deste relatório clicando no botão "Agendar execução". Basta selecionar o formato do relatório, e a quantidade de dias que o mesmo deverá ficar disponiblizado.
Ao clicar para confirmar você será direcionado para a tela de Dados do Agendamento. Na sessão "Execução", você deve informar quando o relatório deve ser iniciado, e o horário de geração do mesmo. Caso queira que o relatório seja executado mais de uma vez, selecione a opção "Repetir" e configure a periodicidade.
É possível colocar parâmetros para executar a visão dinâmica, para informar o parâmetro é necessário seguir um padrão específico (${"platform-social".profiles_total_engagement.total_engagement : total}).
Significado de cada item:
- "platform-social": Domínio e serviço responsável pela tabela;
- profiles_total_engagement: View que está sendo aplicado o parâmetro;
- total_engagement: Campo que deverá ser comparado ao valor informado;
- : total: Nome do parâmetro que deverá aparecer ao usuário no momento de preenche-lo.
Para agendar um relatório, é preciso ter permissão para agendar funcionalidades. Então:
- Acesse Tecnologia > Customização > Relatórios > Visões Dinâmicas;
- Crie uma visão dinâmica nova ou edite alguma já existente;
- Clique no botão Agendar execução;
- Se o relatório possuir parâmetros, eles deverão ser preenchidos. Informe o formato e para quem enviar. O usuário será redirecionado para a tela de agendamento, onde todos os campos necessários para o relatório já estarão preenchidos;
- Preencha a seção Execução, escolhendo a data de início, periodicidade, horário entre outros.
Nota
- Todos os agendamentos serão criados contendo o nome do relatório ou visão dinâmica sendo editado. Caso a visão dinâmica ou relatório mude de nome, o agendamento continua com o nome antigo e será necessário atualizar o nome também.
- Para utilizar essa funcionalidade é preciso ter permissão na ação Editar/Alterar, no recurso res://senior.com.br/platform/scheduler/job.
Anexe a visão dinâmica a um item de menu para que outro colaborador ou usuário possa imprimi-la ou visualizá-la:
- Acesse Tecnologia > Customização > Relatórios > Visões Dinâmicas;
- Selecione a visão dinâmica para a qual o menu será criado;
- Clique em Detalhes;
- Na seção Menus da Visão Dinâmica, clique em Novo;
- Em Rótulo, informe o nome deste menu;
- Selecione um menu em que ele será apresentado:
- No menu principal: permite selecionar somente menus agrupadores. Exemplo: Tecnologia > Customização > Minha visão;
- No contexto de uma tela: não é possível selecionar menus que são agrupadores de submenus. Exemplo: Tecnologia > Customização > Módulos > Minha visão;
-
Quando não for possível selecionar um dos menus do local determinado anteriormente, um ícone de acesso negado será exibido.
- Clique em Adicionar e, em seguida, Salvar.
Importante
Além de disponibilizar o menu, é preciso pedir ao administrador a permissão de visualização do recurso Custom > Dynamicviews > Nome_da_visão, para o usuário em questão.
Permissões
Após a criação e definições das visões dinâmicas, é possível personalizar o acesso e controle dos recursos que cada usuário pode possuir através dos seus papéis. Todas as visões são criadas dentro do domínio Custom, que possui um serviço denominado Visões Dinâmicas e todas as visões existentes listadas nele.
Por padrão, somente o usuário administrador pode ter acesso às visões dinâmicas. Entretanto, é possível conceder alguma permissão a outros usuários.
- Acesse Tecnologia > Administração > Autorização > Gestão dos Papéis;
- Acesse o papel desejado ou crie um novo papel;
- Associe os usuários com os quais deseja compartilhar as visões dinâmicas ao papel;
- Em Permissões do Papel, no domínio Custom, expanda o serviço DYNAMICVIEWS e para cada uma das visões desejadas marque a opção de Visualizar;
- Ainda em Permissões do Papel, agora no domínio Platform, expanda o serviço REPORT_DATABASE e marque a opção de Visualizar para Metadados.
- Clique em Salvar na parte inferior da tela.
- Acesse Tecnologia > Administração > Autorização > Gestão dos Papéis;
- Acesse o papel desejado ou crie um novo papel;
- Associe os usuários com os quais deseja compartilhar as visões dinâmicas ao papel;
- Em Permissões do Papel, no domínio Custom, expanda o serviço DYNAMICVIEWS e para cada uma das visões desejadas marque a opção de Alterar e/ou Visualizar;
- Ainda em Permissões do Papel, agora no domínio Platform, expanda o serviço REPORT_DATABASE e marque a opção de Visualizar para Metadados e Base de dados para relatórios. No domínio serviço DynamicViews, marque a mesma opção para Visões Dinâmicas;
- Clique em Salvar na parte inferior da tela.
- Acesse Tecnologia > Administração > Autorização > Gestão dos Papéis;
- Acesse o papel desejado ou crie um novo papel;
- Associe os usuários com os quais deseja compartilhar as visões dinâmicas ao papel;
- Em Permissões do Papel, no domínio Custom, expanda o serviço Report_database_metadata e marque a opção de Visualizar para a tabela escolhida;
- Ainda em Permissões do Papel, agora no domínio Platform, expanda o serviço REPORT_DATABASE e marque a opção de Visualizar para Metadados e Base de dados para relatórios. No domínio serviço DynamicViews, marque a mesma opção para Visões Dinâmicas;
- Clique em Salvar na parte inferior da tela.
- Acesse Tecnologia > Administração > Autorização > Gestão dos Papéis;
- Acesse o papel desejado ou crie um novo papel;
- Associe os usuários com os quais deseja compartilhar as visões dinâmicas ao papel;
- Em Permissões do Papel, no domínio Custom, expanda o serviço Report_database_metadata e marque a opção de Visualizar para a tabela escolhida. Para o serviço Dynamicviews, marque a mesma opção para a visão dinâmica escolhida;
- Ainda em Permissões do Papel, agora no domínio Platform, expanda o serviço REPORT_DATABASE e marque a opção de Visualizar para Metadados e Base de dados para relatórios. No domínio serviço DynamicViews, marque a mesma opção para Visões Dinâmicas;
- Clique em Salvar na parte inferior da tela.
- Acesse Tecnologia > Administração > Autorização > Gestão dos Papéis;
- Acesse o papel desejado ou crie um novo papel;
- Associe os usuários com os quais deseja compartilhar as visões dinâmicas ao papel;
- Em Permissões do Papel, no domínio Custom, expanda o serviço Report_database_metadata e marque a opção de Visualizar para a tabela escolhida;
- Ainda em Permissões do Papel, agora no domínio Platform, expanda o serviço REPORT_DATABASE e marque a opção de Visualizar para Metadados e Base de dados para relatórios. No domínio serviço DynamicViews, marque a opção de Visualizar e Editarpara Visões Dinâmicas;
- Clique em Salvar na parte inferior da tela.
Cenários de permissões
Verifique a configuração para algumas permissões às tabelas da visões dinâmicas:
- Acesse Tecnologia > Administração > Autorização > Gestão dos Papéis;
- Escolha o papel do usuário que terá essa permissão de acesso às tabelas;
- Em Permissões do Papel, no domínio Custom, expanda o serviço REPORT-DATABASE-METADATA;
- Escolha os recursos que este papel terá permissão;
- Clique em Salvar;
- Acesse novamente o papel deste usuário;
- Pesquise pela permissão PLATFORM e expanda o serviço DYNAMICVIEWS;
- No recurso Visões Dinâmicas, selecione Alterar e Visualizar;
- Clique em Salvar.
Após isto, o usuário terá permissão para acessar o menu das visões dinâmicas e criar uma tabela na base de dados.
A permissão para emitir um relatório deve ser utilizada quando houver necessidade do usuário associar a visão dinâmica a um item do menu durante a sua criação.
Desta maneira, com essa permissão, essa visão ficará disponível para que qualquer usuário que desejar imprimir este relatório. Por exemplo, no caso de um gestor que criou o relatório, solicitar ao seu liderado a impressão, que não possui a permissão para criar as visões dinâmicas e nem para acessar as tabelas.
Para isso:
- Acesse Tecnologia > Administração > Autorização > Gestão dos Papéis;
- Escolher o papel do usuário que terá essa permissão;
- Em Permissões do Papel, no domínio Custom, expanda o serviço DYNAMICVIEWS;
- Selecione a visão criada e marque a opção de Visualizar;
- Clique em Salvar.
Após isso, todos os usuários com permissões para esta visão dinâmica poderá visualizá-la no menu e gerar seu relatório.
Importante
Em alguns casos, o usuário responsável pela criação da visão dinâmica não possui permissão para fornecer permissões a outros usuários. Desta maneira, é necessário solicitar ao administrador.