4D v16.3

METHOD RESOLVE PATH

Página Inicial

 
4D v16.3
METHOD RESOLVE PATH

METHOD RESOLVE PATH 


 

METHOD RESOLVE PATH ( rota ; tipoMetodo ; prtTabela ; nomObjeto ; nomObjetoForm {; *} ) 
Parâmetro Tipo   Descrição
rota  Texto in Rota a resolver
tipoMetodo  Inteiro longo in Seletor tipo de objeto
prtTabela  Ponteiro in Referência de tabela
nomObjeto  Texto in Nome de formulário ou método de base
nomObjetoForm  Texto in Nome de objeto de formulário
Operador in Se passado = o comando se aplica à base local quando se executa desde um componente (parâmetro ignorado fora deste contexto)

O comando METHOD RESOLVE PATH analisa a rota de acesso interna passada no parâmetro rota e devolve seus diferentes componentes nos parâmetros tipoMetodo, ptrTabela, nomObjeto e nomObjetoForm.

No parâmetro tipoMetodo devolve um valor que indica o tipo do método. Pode comparar este valor com as seguintes constantes do tema Design Object Access:

Constante Tipo Valor Comentário
Path database method Inteiro longo 2
Path project form Inteiro longo 4 Rota dos métodos formulário projeto e de todos seus métodos objeto. Exemplos:
[projectForm]/myForm/{formMethod}
[projectForm]/myForm/button1
[projectForm]/myForm/my%2list
[projectForm]/myForm/button1
Path project method Inteiro longo 1 Nome do método.
Exemplo: MeuMétodoProjeto
Path table form Inteiro longo 16 Rota dos métodos formulário tabela e de todos seus métodos objeto. Exemplos:
[tableForm]/table_1/Form1/{formMethod}
[tableForm]/table_1/Form1/button1
[tableForm]/table_1/Form1/my%2list
[tableForm]/table_2/Form1/my%2list
Path trigger Inteiro longo 8 Rota dos triggers da base. Exemplos:
[trigger]/tabela_1
[trigger]/tabela_2


O parâmetro ptrTabla contém um ponteiro a uma tabela da base quando a rota referencia um método formulário tabela ou um trigger.

O parâmetro nomObjeto contém:

  • um nome de formulário se a rota referencia um formulário tabela ou projeto.
  • um nome de método base se a rota referencia um método base.

O parâmetro nomObjetoForm contém um nome de objeto de formulário se a rota referencia um método objeto.

Se o comando se executa desde um componente, considera por padrão que a via designa um método do componente. Se passado o parâmetro *, se considera que a via designa um método da base local.

Resolução de uma rota de método base:

 C_LONGINT($methodType)
 C_POINTER($tablePtr)
 C_TEXT($objectName)
 C_TEXT($formObjectName)
 
 METHOD RESOLVE PATH("[databaseMethod]/onStartup";$methodType;$tablePtr;$objectName;$formObjectName)
  // $methodType: 2
  // $tablePtr: Nil pointer
  // $objectName: "onStartup"
  // $formObjectName: ""

Resolução de uma rota de método de formulário tabela:

 C_LONGINT($methodType)
 C_POINTER($tablePtr)
 C_TEXT($objectName)
 C_TEXT($formObjectName)
 
 METHOD RESOLVE PATH("[tableForm]/Table1/output%2A1/myVar%2A1";$methodType;$tablePtr;$objectName;$formObjectName)
  // $methodType: 16
  // $tablePtr: -> [Table1]
  // $objectName: "output*1"
  // $formObjectName: "Btn*1"



Ver também 

METHOD Get path

 
PROPRIEDADES 

Produto: 4D
Tema: Accesso aos Objetos de Design
Número 1165

 
HISTÓRIA 

Criado por: 4D v13

 
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)