Função responsável por construir uma interface padrão de processamento, podendo ou não possuir uma barra de progresso (régua), podendo ser chamada com ou sem interface (nenhuma exibição caso chamada sem interface).

A partir da lib 20240408 quando executada pelo Scheduller e tendo o dicionário de lib atualizado, o usuário logado receberá notificações de progresso do processamento automatico.
Para maiores informações consulte EventViewer - Eventos de Progresso


Processa( bAction, cTitle , cMsg , lAbort )

Função principal que inicia o processamento, quando executado com interface exibe uma tela de acompanhamento do processamento.

NomeTipoDescriçãoObrigatórioDefault
bActionBloco de códigoBloco de código da rotina de processamentoX
cTitleCaracterTitulo da janela de processamento
Aguarde
cMsgCaracterTexto da rotina de processamento
Processando...
lAbort LógicoIndica se a rotina pode ser interrompida
.T.



Funções Complementares

ProcRegua

Função responsável por determinar o tamanho do processamento, o valor aqui definido deverá corresponder exatamente a quantidade de chamadas da função IncProc para que o progresso seja corretamente exibido.

ProcRegua(nTot, nPercNotif)

NomeTipoDescriçãoObrigatórioDefault
nTotnuméricoIndica a quantidade de passos para conclusão do processo
0
nPercNotifnuméricoQuando executado em scheduller, define o gatilho de % para emissão dos Eventos de Progresso do EventViewer.
Exemplo.: Se definido 25: serão emitidas notificações a cada 25% de progresso.

25

A definição do ProcRegua (e consequentemente implementação do IncProc) é obrigatório para emissão dos Eventos de Progresso no EventViewer (quando executado via Scheduller), a não definição faz com que os eventos não sejam emitidos.

IncProc

Função pela qual deverá ser indicado que um novo passo do processamento foi realizado, quando executado com interface é responsável por promover a evolução da barra de progresso, quando executado via Scheduller é determinante para emissão dos eventos ao atingir o percentual de gatilho.

IncProc(cMsg)

NomeTipoDescriçãoObrigatórioDefault
cMsgCharacterMensagem que será exibida no dialog
Exemplo: "Processando pedido 220984"

""

A quantidade de chamadas da função IncProc deve corresponder exatamente ao valor definido no parametro nTot passado na função ProcRegua.