Barra de Progresso (Progress Bar) | ABAP Warrior

Barra de Progresso (Progress Bar)

Barra de progresso
Nada como acompanhar o andamento de um processo. Deixar claro para o usuário o que o programa está executando no momento e quantos passos ainda faltam para finalizar.

Mais um assunto que muitas vezes é classificado como "perfumaria". Eu acredito que não é, e vou mostrar como usar essa ferramenta. Simples, e traz um efeito muito legal para o usuário.







Com certeza, o mais importante ao elaborar e escrever um programa é o seu bom funcionamento. Ele deve cumprir perfeitamente a finalidade para que foi criado e isso deve ser sempre o foco principal do desenvolvimento.

Mas apesar disso tudo, temos que fazer com que o programa tenha uma comunicação visual interessante para o usuário. Pense que o programa fará parte de uma rotina para o usuário, independente da frequência ou da periodicidade. Sendo assim, a barra de progresso é uma excelente opção para deixar o usuário confortável com a execução do programa.

A barra de progresso do SAP fica localizada no canto inferior esquerdo da tela. Ela não se parece exatamente com uma barra, mas sim com um tipo de relógio ou cronômetro. Ela realmente passa desapercebida, até o momento que ela possa ajudar em alguma coisa. Abaixo, exemplo da barra de progresso. Como em tamanho original ela é bem pequena, coloquei também uma imagem ampliada.

Barra de progresso SAP
Barra de progresso em tamanho original
Barra de progresso SAP - Ampliada
Barra de progresso ampliada (perda de qualidade devido a ampliação)

Um detalhe importante é que, dependendo do tema do SAP GUI que estiver sendo utilizado, a barra de progresso pode ficar com a aparência diferente. A imagem acima foi feita com o tema Corbu Theme. Veja alguns detalhes sobre os temas na postagem Temas do SAP GUI.

Sempre que um programa está em execução, algo que tem a aparência de um relógio com ponteiro eletrônico começa a rodar, porém sem mostrar o percentual de andamento da execução. O percentual será exibido apenas se a função responsável por isso for chamada.

Para acionar o percentual de andamento é necessário usar uma função que controla, além do percentual de andamento, também as mensagens da barra de mensagens. A função SAPGUI_PROGRESS_INDICATOR.


Como usar a função SAPGUI_PROGRESS_INDICATOR


Segue agora exemplo de chamada da função:

  CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR'

    EXPORTING

      percentage = 50
      text       = 'Mensagem ABAP Warrior'.


Exemplo barra de progresso
Barra de progresso gerada pelo exemplo acima

O primeiro parâmetro é o PERCENTAGE onde deve ser passado o percentual, que é relativo a posição mostrada pela barra de progresso. O segundo parâmetro é o TEXT onde deve ser informado o texto que deve aparecer na barra de mensagens, ao lado da barra de progresso.


Detalhes importantes


Existem alguns detalhes importantes que devem ser destacados.

Embora a declaração do parâmetro PERCENTAGE não tenha nenhuma referência a algum tipo de dado, ele obrigatoriamente deve ser um valor numérico. E o valor deve estar entre 1 e 99. Caso seja informado um valor menor ou igual 0 ou maior ou igual 100 o "relógio" da barra de progresso não será exibido. E caso o parâmetro não receba nenhum valor, também não será exibido.

Se o parâmetro TEXT não receber nenhum valor, a barra de mensagens também não será exibida.

E caso não seja usado nenhum dos dois parâmetros, como os dois parâmetros não são obrigatórios, tanto o relógio quanto a barra de mensagens não serão exibidos.


Faixas e posições da Barra de Progresso


Testei todas as faixas de valores e a posição que cada uma das faixas gera na barra de progresso. Ao todo são 13 posições, desde a barra vazia até a barra cheia. Abaixo a imagem de cada posição com a faixa de percentual correspondente.

   1 a 7
   8 a 15
   16 a 23
   24 a 30
   31 a 38
   39 a 46
   47 a 53
   54 a 61
   62 a 69
   70 a 76
   77 a 84
   85 a 92
   93 a 99

Todas essas posições me deram uma ideia... Criar um GIF animado... rsrsrs


Um grande abraço e até a próxima.
2016-12-20T22:09:00-02:00 2017-04-09T19:16:30Z
Nenhum comentário:
Related Posts Plugin for WordPress, Blogger...