Árvore de páginas

Geral

Sintoma

O produto Datasul 11 está apresentando uma lentidão significativa no load do menu.

Obs: entende-se por load do menu o tempo decorrido desde que é apresentado a interface do menu até a efetiva apresentação dos programas. Lembrando que para novos usuários é necessário selecionar um módulo para carregar os programas correspondentes.

Causa

A causa já identificada para esta ocorrência é a existência de muitos grupos de usuário no ambiente do cliente o que onera muito o sistema para encontrar os dados, tratá-los e trazê-los à tela.

Solução

Devido às ocorrências de lentidão no load do menu do produto Datasul 11 foi implementada uma solução utilizando-se de uma tabela (usuar_menu) com as informações consolidadas do menu e acessos a programas que os usuários possuem.

Utilização

Quem pode utilizar?

A utilização da tabela de informações consolidadas (usuar_menu) pode ser indicada somente para os clientes em que a lentidão do load do menu seja significativa principalmente devido a utilização implicar na execução do programa "Atualiza Menu Usuário" (mer010aa) para que as informações na tabela sejam atualizadas.

Como configurar?

Para habilitar a utilização da tabela de informações consolidadas do menu deve-se incluir no datasul_framework.properties a propriedade "use.menu.key=true" (sem espaços extras no final). Desta forma, ao carregar o menu a tabela de consolidação será utilizada e não as tabelas da estrutura padrão do menu.

A atualização é online?

Não, a atualização da tabela de consolidação é feita mediante a execução do programa "Atualiza Menu Usuário" (mer010aa), ou seja, se for eliminado um programa, usuário, grupo de usuário, dentre outros, as alterações só surtirão efeito na tabela de consolidação após a execução do programa de atualização. Nos programas Progress foi inclusa uma mensagem informativa que deve-se executar a consolidação do menu para que as alterações surtam efeito no menu.

Informações adicionais

Informações técnicas

Nos programas que realizam a busca das informações do menu foi inserida uma condição para que retorne as informações da tabela de consolidação ou da estrutura padrão mediante a existência da propriedade "use.menu.key=true" informada no datasul_framework.properties. Caso esta propriedade não esteja informada no arquivo de propriedades esta será considerada como se estivesse "use.menu.key=false" ou igual a qualquer outro valor que não "true".

Mídia

A propriedade não sai no datasul_framework.properties da mídia. Esta decisão foi tomada para minimizar a utilização deste parâmetro como "true" ou mesmo a alteração deste parâmetro sem a real necessidade.

Estrutura da tabela

A tabela de consolidação do menu é a nível de usuário sendo que sua chave é usuário e programa. Mas procurando diminuir a quantidade de registros na tabela, quando determinado programa encontra-se no grupo "* - Todos os usuários", o usuário inserido no banco é o "*" (asterisco) assim, quando é realizada a busca dos programas que um usuário possui acesso, são procurados os programas para o usuário "*" e para o usuário logado.

Releases impactadas

A alteração aqui descrita foi liberada sob o chamado TGHVFY para todas as releases do produto a partir do Datasul 11.5.4.