Páginas filhas
  • MsNewProcess

Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Composition Setup
import.css=/download/attachments/327912/newLayout.css
Portuguese

Pagetitle
MsNewProcess
MsNewProcess

Classe: MsNewProcess

Por meio deste objeto é possível executar uma rotina em que será disponibilizada ao usuário duas barras de processamento para acompanhamento do processo que está sendo executado.



New

New

Cria o objeto da MsNewProcess


MsNewProcess(): New ( [ bAction], [ cTitle], [ cMsg], [ lAbort] ) -->


NomeTipoDescriçãoObrigatórioReferência
bActionBloco de códigoBloco de código a ser executado pela janela
cTitleCaracterTítulo a ser apresentado na janela
cMsgCaracterMensagem apresentada ao usuário na primeira barra de processamento
lAbortLógicoCaso o parâmetro lAbort seja igual a .T. ele habilita o botão Cancelar, possibilitando o cancelamento do processo utilizado pela janela. Caso contrário, o botão Cancelar fica desabilitado.

Activate

Cria a janela onde serão apresentadas as barras de processamento.


MsNewProcess(): Activate ( ) -->

IncRegua1

Atualiza o valor da primeira barra de progresso. Se o parâmetro cMsg for atribuído o conteúdo do parâmetro cMsg será apresentado na primeira régua de processamento.


MsNewProcess(): IncRegua1 ( [ cMsg] ) -->


NomeTipoDescriçãoObrigatórioReferência
cMsgCaracterTexto a apresentado na primeira barra de progresso.

IncRegua2

Atualiza o valor da segunda barra de progresso. Se o parâmetro cMsg for atribuído o conteúdo do parâmetro cMsg será apresentado na segunda régua de processamento.


MsNewProcess(): IncRegua2 ( [ cMsg] ) -->


NomeTipoDescriçãoObrigatórioReferência
cMsgCaracterTexto a apresentado na segunda barra de progresso.

SetRegua1

Passa para a primeira régua de processamento a quantidade de registros que a rotina irá processar. O valor passado no parâmetro nSet será utilizado para a contagem da barra de progressão.


MsNewProcess(): SetRegua1 ( [ nSet] ) -->


NomeTipoDescriçãoObrigatórioReferência
nSetNuméricoQuantidade de registros a serem processados pela rotina

SetRegua2

Passa para a segunda régua de processamento a quantidade de registros que a rotina irá processar. O valor passado no parâmetro nSet será utilizado para a contagem da barra de progressão.


MsNewProcess(): SetRegua2 ( [ nSet] ) -->


NomeTipoDescriçãoObrigatórioReferência
nSetNuméricoQuantidade de registros a serem processados pela rotina

#include "protheus.ch"User Function F114299()Local oProcess//incluído o parâmetro lEnd para controlar o cancelamento da janelaoProcess := MsNewProcess():New({|lEnd| T114299(@oProcess, @lEnd) },"Teste MsNewProcess","Lendo Registros do Pedido de Vendas",.T.) oProcess:Activate()Return                                       static Function T114299(oProcess, lEnd)   Local nCountC5Local nCountC6  //inserido este blocoDefault lEnd := .F.DbSelectArea("SC5")DbSetOrder(1)DbGotop()	nCountC5 := SC5->(RecCount())oProcess:SetRegua1(nCountC5)While SC5->(!Eof())               	sleep(300)	If lEnd	//houve cancelamento do processo		Exit	EndIf	       	oProcess:IncRegua1("Lendo Pedido de Venda:" + SC5->C5_NUM)             	DbSelectArea("SC6")   	DbSetOrder(1)   	DbClearFil()   	Set Filter to SC6->C6_FILIAL == xFilial("SC5") .And. SC6->C6_NUM == SC5->C5_NUM   	COUNT to nCountC6   	oProcess:SetRegua2(nCountC6)	While SC6->(!Eof())      		//inserido este bloco		If lEnd			//houve cancelamento do processo			Exit		EndIf	      	oProcess:IncRegua2("Pedido: "+SC5->C5_NUM+" - Item: "+SC6->C6_ITEM)		sleep(300)	    conout("Item: "+SC6->C6_ITEM)	   				      	SC6->(DbSkip())   	End  		       SC5->(DbSkip()) EndReturn

Microsiga Protheus 8.11 , Protheus 10