Mudanças entre as edições de "TPHProcesso"
(→Exemplo) |
(→Procedimentos) |
||
Linha 22: | Linha 22: | ||
===Procedimentos=== | ===Procedimentos=== | ||
*'''Iniciar:''' Iniciar o registro do processo junto a tabela DB_PROCESSOS. | *'''Iniciar:''' Iniciar o registro do processo junto a tabela DB_PROCESSOS. | ||
− | *'''Atualizar:''' Atualizar o percentual junto ao | + | *'''Atualizar:''' Atualizar o percentual junto ao registro do processo. |
*'''Cancelar:''' Registrar o cancelamento do processo. | *'''Cancelar:''' Registrar o cancelamento do processo. | ||
*'''Concluir:''' Registrar a conclusão do processo. | *'''Concluir:''' Registrar a conclusão do processo. |
Edição atual tal como às 09h49min de 15 de abril de 2025
O objeto TPHProcesso é utilizado para monitoramento de scripts executados junto ao servidor de aplicação, principalmente quando realizado de forma assíncrona. O acompanhamento da execução poderá ser realizado através do PHERP ou Serverconf, conforme descrito em processos.
Propriedades
Nome | Tipo | Descrição |
---|---|---|
Identificação | String | Nome de identificação do processo que será executado. |
Percentual Total | Double | Valor correspondente ao total de registros ou itens que serão processados. Exemplo: 100. |
Percentual | Double | Valor correspondente ao ponto atual da execução do processo. Exemplo: Se o processo estiver na metade, informar 50, quando 100 foi o percentual total informado. |
Procedimentos
- Iniciar: Iniciar o registro do processo junto a tabela DB_PROCESSOS.
- Atualizar: Atualizar o percentual junto ao registro do processo.
- Cancelar: Registrar o cancelamento do processo.
- Concluir: Registrar a conclusão do processo.
- Erro: Registrar que ocorreu erro no processo.
- AddLog(pLog:String): Adicionar registro de log ao processo.
Exemplo
{ Exemplo aplicação da classe TPHProcesso ao script } procedure ProcessoTeste; var P:TPHProcesso; I:Integer; begin P := NewPHProcesso; try p.Identificacao := 'Processo teste'; p.ProcessoTotal := 100; p.Iniciar; try for I := 0 to 99 do begin p.Processo := I; { Código do seu processo } p.Atualizar; Sleep(100); end; p.Concluir; except p.AddLog(MensagemErro); p.Erro; end; finally P.Free; end; end;
Para que o script seja executado diretamente no servidor, é necessário que a chamada seja por agendamento ou por script iniciado no cliente conforme descrito em TPHProcScript.