4D v16.3

PROCESS PROPERTIES

Página Inicial

 
4D v16.3
PROCESS PROPERTIES

PROCESS PROPERTIES 


 

PROCESS PROPERTIES ( processo ; procNome ; procEstado ; procTempo {; procVisivel {; unicoID {; origem}}} ) 
Parâmetro Tipo   Descrição
processo  Inteiro longo in Número do processo
procNome  String in Nome do processo
procEstado  Inteiro longo in Estado do processo
procTempo  Inteiro longo in Tempo acumulado de execução do processo em ticks
procVisivel  Booleano, Inteiro longo in Visível (TRUE) ou Oculto (FALSE)
unicoID  Inteiro longo in Número único do processo
origem  Inteiro longo in Origem do processo

O comando  PROCESS PROPERTIES devolve a informação sobre o processo cujo número de processo se passa em processo.

Depois da chamada:

  • procNome devolve o nome do processo. Alguns pontos a ter em conta acerca do nome do processo:
    • Se o processo foi iniciado desde a caixa de diálogo Executar um método (com a opção Novo processo selecionada), seu nome é “P_” seguido por um número.
    • Se o processo foi iniciado a partir de um comando de menu personalizado cuja propriedade Iniciar um novo processo é selecionada, o nome do processo é “M_” ou “ML_” seguido por um número.
    • Se o processo foi iniciado pelo servidor web, seu nomes é "Web Process#" seguido por um UUID.
    • Se o processo foi suspendido (e seu “espaço” não foi reutilizado), ainda é devolvido o nome do processo. Para detectar se um processo está suspendido, prove procEstado=-1 (ver a continuação).
  • procEstado devolve o estado do processo no momento da chamada. Este parâmetro pode devolver um dos valores oferecidos pelas seguintes constantes predefinidas:
    Constante Tipo Valor
    Does not exist Inteiro longo -100
    Aborted Inteiro longo -1
    Executing Inteiro longo 0
    Delayed Inteiro longo 1
    Waiting for user event Inteiro longo 2
    Waiting for input output Inteiro longo 3
    Waiting for internal flag Inteiro longo 4
    Paused Inteiro longo 5
    Hidden modal dialog Inteiro longo 6

  • procTempo devolve o tempo acumulado que o processo há utilizado desde que começou, em ticks (1/60 de segundo) .
  • O parâmetro opcional procModo pode ser uma variável de tipo booleano ou inteiro longo:
    • Se for de tipo Booleano, devolve True se o processo for visível e False se estiver oculto.
    • Se for de tipo inteiro longo, depois da execução do método, contém um campo de bits onde os dois primeiros bits são definidos:
      • bit 0 devolve a propriedade de visibilidade: 1 se o processo for visível e 0 se estiver oculto
      • bit 1 devolve a propriedade de modo apropriativo: 1 se o processo for executado em modo preemptivo e 0 se for executado em modo cooperativo.
    • Nota: esta propriedade só é útil em aplicações de 64 bits, onde os processos podem ser executados em modo preemptivo ou cooperativo. Para saber mais, consulte  Processos 4D Preemptivos.
    unicoID, se especificado, devolve o número único do processo. Na verdade, cada processo tem um número de processo assim como um número único de processo por seção. Este último permite diferenciar entre dois processos ou sessões de processo. Corresponde ao número de processos que tem sido iniciados durante a sessão da aplicação 4D.
  • origem, se especificado, devolve um valor que descreve a origem do processo. Este parâmetro pode devolver um dos valores das seguintes constantes predefinidas (no tema "Tipo de processo"):
    [#table_kst them="4727" remove="861928,3423082,3423089,3423075,3423068,3423061,3423054,3423047,3423039,3423025,3423018,3423010,3423003,3422996,3422989,3422982,3422973,3422966,3423032"/]

Nota: Os processos internos de 4D devolvem um valor negativo e os processos gerados pelo usuário devolvem um valor positivo.

Se o processo não existe, significa que não passou um número incluído no intervalo de 1 a Count tasks, PROCESS PROPERTIES deixa sem modificar os valores das variáveis passados em parâmetros.

O seguinte exemplo devolve o nome, o estado, o tempo tomado nas variáveis vNome, vEstado, e vTempoTransc para o processo atual:

 C_TEXT(vNom` Inicializar as variáveis
 C_LONGINT(vEstado)
 C_LONGINT(vTempoTransc)
 PROCESS PROPERTIES(Current process;vNome;vEstado;vTempoTransc)

Ver o exemplo da seção Método banco de dados On Exit.

Se quiser conhecer a visibilidade e o modo de execução do processo atual. Pode escrever:

 C_TEXT(vName)
 C_LONGINT(vState)
 C_LONGINT(vTime)
 C_LONGINT(vFlags)
 C_BOOLEAN(isVisible)
 C_BOOLEAN(isPreemptive)
 PROCESS PROPERTIES(Current process;vName;vState;vTime;vFlags)
 isVisible:=vFlags?? 0 //true se visível
 isPreemptive:=vFlags?? 1 //true se preemptivo



Ver também 

Count tasks
Process state
Processos 4D Preemptivos

 
PROPRIEDADES 

Produto: 4D
Tema: Processos
Número 336

This command can be run in preemptive processes

 
HISTÓRIA 

Modificado: 4D v11 SQL Release 3
Modificado: 4D v15 R5

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v16)
Manual de linguagem 4D ( 4D v16.1)
Manual de linguagem 4D ( 4D v16.2)
Manual de linguagem 4D ( 4D v16.3)