4D v14.3

Process number

Página Inicial

 
4D v14.3
Process number

Process number 


 

Process number ( nome {; *} ) -> Resultado 
nome  cadeia in Nome do processo do qual recuperar o número
in Devolver o número do processo servidor

Process number devolve o número do processo cujo nome é passado em nome. Se não se encontra nenhum processo, Process number devolve 0.

O parâmetro opcional * lhe permite recuperar, a partir de 4D Client, o número de um processo que se está executando no servidor (um procedimento armazenado). Neste caso, o valor devolvido é negativo. Esta opção é particularmente útil quando se utilizam os comandos GET PROCESS VARIABLE e SET PROCESS VARIABLE. Para maior informação, consulte as descrições destes comandos.

Se o comando se executa com o parâmetro * desde um processo na máquina servidor, o valor devolvido é positivo.

Exemplo  

Você pode criar uma paleta flutuante, que é executado em um processo separado, em que você implementou suas próprias ferramentas para interagir com o ambiente Desenho. Por exemplo, quando você seleciona um elemento em uma lista hierárquica de palavras-chave, você deseja colar algum texto na janela no primeiro plano do ambiente Desenho. Para fazer isso, você pode usar a área de transferência, mas o evento de colar deve ocorrer dentro do processo Desenho. A função a seguir retorna o número do processo Desenho (se ativo):

  ` Método de projeto Número processo Desenho
  ` Número processo Desenho -> Inteiro longo
  ` Número processo Desenho -> Número do processo de Desenho
 
 $0:=Process number("Processo Desenho")
  ` Nota: Este pode não funcionar no futuro se a fonte muda

Com esta função, o método de projeto listado cola o texto recebido como parâmetro na janela do primeiro plano no ambiente Desenho (se aplicado):

  ` Método de projeto COLAR TEXTO EM DESENHO
  ` PEGAR TEXTO EM DESENHO ( Text )
  `PEGAR TEXTO EM DESENHO (Texto a pegar na janela de Desenho do primeiro plano)
 
 C_TEXT($1)
 C_LONGINT($vlDesenhoPID;$vlCont)
 
 $vlDiseñoPID:=Numero processo Desenho
 If($vlDesenhoPID # 0)
  ` Coloque o texto na área de transferência
    SET TEXT TO PASTEBOARD($1)
  ` Gerar um evento Ctrl-V / Comando-V
    POST KEY(ASCII("v");Command key mask;$vlDesenhoPID)
  ` Chamar repetidamente DELAY PROCESS para que o temporizador possa passar
  ` sobre o evento ao processo Desenho
    For($vlCont;1;5)
       DELAY PROCESS(Current process;1)
    End for
 End if

 
PROPRIEDADES 

Produto: 4D
Tema: Processos
Número 372

 
HISTÓRIA 

Criado por: 4D v6

 
VER TAMBÉM 

GET PROCESS VARIABLE
PROCESS PROPERTIES
Process state
SET PROCESS VARIABLE

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v12.4)
Manual de linguagem 4D ( 4D v11 SQL Release 6)
Manual de linguagem 4D ( 4D v14 R3)
Manual de linguagem 4D ( 4D v14 R2)
Manual de linguagem 4D ( 4D v13.5)
Manual de linguagem 4D ( 4D v14.3)
Manual de linguagem 4D ( 4D v14 R4)