Versões comparadas

Chave

  • Esta linha foi adicionada.
  • Esta linha foi removida.
  • A formatação mudou.
Comentário: Migration of unmigrated content due to installation of a new plugin

...

Método construtor da classe.


FWGridProcess(): New (<cFunName>,<cTitle>,<cDescription>,<bProcess>,<cPerg>,<cGrid>,<lSaveLog> ) -->


 

NomeTipoDescriçãoObrigatórioReferencia
cFunNameCaracterNome da rotina de menu de processamentoX 
cTitleCaracterTitulo da rotina de menuX 
cDescriptionCaracterDescrição completa da rotinaX 
bProcessBlocoBloco de código de processamento. O bloco recebe a variavel que informa que a rotina foi canceladaX 
cPergCaracterNome do grupo de perguntas do dicionário de dados  
cGridCaracterNome da função que será executada caso o processamento permita processamento em grid  
lSaveLogLógicoIndica se permite a gravação de Log sempre que chamar o método SaveLog()  

 

oGrid := FWGridProcess():New()

 


Método de ativação da classe. Quando a classe é ativada a interface de
configuração é ativada.
Este método deve ser utilizado para parametrizar a classe.

...

FWGridProcess():Activate (oDlg) -->

 

Parâmetros
NomeTipoDescriçãoObrigatório Referencia
oDlgObjetoContainer da interface gráficaX 

 


 

Método de desativação da classe. Quando a classe é desativada, os dados
de configuração são perdidos e devem ser refeitos.
Este método deve ser utilizado para reparametrizar a classe.

 

FWGridProcess() :DeActivate () -->


SetMeters

Este método informa a classe a quantidade de réguas que será necessária no processamento da rotina.

 

FWGridProcess() :SetMeters (<nQtde>) -->

 

Parâmetros

NomeTipoDescriçãoObrigatórioReferencia
nQtdeNuméricoInforme a quantidade de réguas de processamento que a rotina necessitadaX 

 Return nQtde

 


SetMaxMeter

Este método informa a classe a quantidade máxima de réguas que será necessários no processamento da rotina.

 

FWGridProcess() :SetMaxMeter (<nMax>,<nMeter>,<cMsg>) -->

 

Parâmetros


NomeTipoDescriçãoObrigatórioReferencia
nMaxNuméricoInforme a quantidade máxima de interações do meterX 
nMeterNuméricoInforme o numero de referência do meter  
cMsgCaracterInforme a mensagem de referência do meter  

 


SetIncMeter

Este método informa a classe a quantidade de réguas que será necessário no processamento da rotina.

 

FWGridProcess() :SetIncMeter (<nMeter>,<cMsg>) -->

 

Parâmetros

 

NomeTipoDescriçãoObrigatórioReferencia
nMeterNuméricoInforme o numero de referência do meter  
cMsgCaracterInforme a mensagem de referência do meter  

 


 

SetAfterExecute

Define bloco de código a ser executado no termino do Execute

 

Sintaxe

FWGridProcess() :SetAfterExecute (<bParam>) -->

 

Parâmetros

NomeTipoDescriçãoObrigatórioReferencia
bParamBlocoBloco de código a ser executado no termino do executeX 

 


SaveLog

Este método persiste informações de execução da rotina no log de processamento ( SXU ).

Sintaxe

FWGridProcess() :SaveLog (<cMsg>) -->

Parâmetros

NomeTipoDescriçãoObrigatórioReferencia
cMsgCaracterInforme a mensagem que deverá ser gravada no log  

 


GetLastLog

Retorna a ultima mensagem de log

Sintaxe

FWGridProcess() :GetLastLog() -->

Return clogcLog


SetNoParam

Inibe a widget de parametrização da rotina.

Sintaxe

FWGridProcess() :SetNoParam() -->

 


SetMaxThreadGrid

Este método configura o número máximo de threads que a rotina permitirá que o usuário configure.

Sintaxe

FWGridProcess() :SetMaxThreadGrid(<nMax>) -->

Parâmetros

NomeTipoDescriçãoObrigatórioReferencia
nMaxNuméricoNumero de threadsX 

 

 


SetThreadGrid

Este método configura o número de threads que a rotina terá disponível

Sintaxe

FWGridProcess() :SetThreadGrid(<nThread>) -->

 

Parâmetros

NomeTipoDescriçãoObrigatórioReferencia
nThreadNuméricoNumero de threadsX
SetMaxThreadGrid
 
SetThreadGrid

 

 


CallExecute

Este método inicia e controla o processamento da rotina de grid definida. Somente deve ser chamada se o Grid estiver configurado

Sintaxe

FWGridProcess() :CallExecute(<xParm0>,<xParm1>,<xParm2>,<xParm3>,<xParm4>,<xParm5>,<xParm6>,<xParm7>,<xParm8>,<xParm9>) -->

 

Parâmetros

NomeTipoDescriçãoObrigatórioReferencia
xParm0 Numérico, Caracter, Array, Data Parâmetro que será repassada para a rotina de grid  
xParm1 Numérico, Caracter, Array, Data  Parâmetro que será repassada para a rotina de grid  
xParm2 Numérico, Caracter, Array, Data  Parâmetro que será repassada para a rotina de grid  
xParm3 Numérico, Caracter, Array, Data  Parâmetro que será repassada para a rotina de grid  
xParm4 Numérico, Caracter, Array, Data  Parâmetro que será repassada para a rotina de grid  
xParm5 Numérico, Caracter, Array, Data  Parâmetro que será repassada para a rotina de grid  
xParm6 Numérico, Caracter, Array, Data  Parâmetro que será repassada para a rotina de grid  
xParm7 Numérico, Caracter, Array, Data  Parâmetro que será repassada para a rotina de grid  
xParm8 Numérico, Caracter, Array, Data  Parâmetro que será repassada para a rotina de grid  
xParm9 Numérico, Caracter, Array, Data  Parâmetro que será repassada para a rotina de grid  


Retrun lEnd

Indica que a rotina foi interrompida pelo usuário

 


Execute

Este método inicia e controla o processamento das rotinas especificadas

 

 

SintaxeStopExecute

 

IsFinished

 

SetAbort

 

Exemplo de uso de Grid

...

FWGridProcess() :Execute() -->

 


StopExecute

Este método interrompe a execução da rotina a qualquer momento depois de iniciada pelo Método Execute.

Sintaxe

FWGridProcess() :StopExecute() -->


IsFinished

Este método indica que a rotina de processamento esta terminada.

Sintaxe

FWGridProcess() :IsFinished() -->

Return  lRetorno

Indica que o processamento foi terminado 


SetAbort

 

Este método informa a classe de processamento se a rotina pode ou não ser interrompida durante a execução

Sintaxe

FWGridProcess() :SetAbort(<lAbort>) -->

 

Parâmetros

NomeTipoDescriçãoObrigatórioReferencia
lAbortLógicoInforme um valor lógico para indicar se a rotina pode ser abortadaX 

 

Return lAbort

 




Bloco de código
languagecpp
titleExemplo
linenumberstrue
User Function testeba()
RpcSetEnv("99","01")

...


__cInterNet := Nil

...


oGrid:=FWGridProcess():New("MATA330","teste","teste do processamento",{|lEnd| u_testeba1(oGrid,@lEnd)},"MTA330","u_testeba2")

...


oGrid:SetMeters(2)

...


oGrid:SetThreadGrid(5)

...


oGrid:Activate()

...


If oGrid:IsFinished()

...


alert("fim")

...


Else

...


alert("fim com erro")

...


EndIf

...


Return

...


User Function Testeba1(oGrid,lEnd)

...


Local nX,nY

...


oGrid:SetMaxMeter(4,1,"teste1")

...


For nX := 1 To 4

...


oGrid:SetMaxMeter(10,2,"teste2")

...


For nY := 1 To 10

...


If !oGrid:CallExecute("callexecute is load",Iif(nX==5.And.nY==10,0,1))

...


lEnd := .T.

...


EndIf

...


oGrid:SetIncMeter(2)

...


If lEnd

...


Exit

...


EndIf

...


Next nY

...


If lEnd

...


Exit

...


EndIf

...


oGrid:SetIncMeter(1)

...


Next nX

...


Return

...


//Exemplo de uso de sem Grid

...


User Function Testebc2(oGrid,lEnd)

...


Local nX,nY

...


oGrid:SetMaxMeter(4,1,"teste1")

...


For nX := 1 To 4

...


oGrid:SetMaxMeter(10,2,"teste2")

...


For nY := 1 To 10

...


oGrid:SetIncMeter(2)

...


If lEnd

...


Exit

...


EndIf

...


Sleep(1000)

...


Next nY

...


If lEnd

...


Exit

...


EndIf

...


oGrid:SetIncMeter(1)

...


Next nX

...


Return

...


User Function Testeba2(cParm,lErro)

...


Sleep(10000)

...


Return(.T.)