| 4D v20.1METHOD RESOLVE PATH | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v20.1
 METHOD RESOLVE PATH 
         | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| METHOD RESOLVE PATH ( rota ; tipoMetodo ; prtTabela ; nomObjeto ; nomObjetoForm {; *} ) | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| rota | Texto |   | Rota a resolver | |||||
| tipoMetodo | Inteiro longo |   | Seletor tipo de objeto | |||||
| prtTabela | Ponteiro |   | Referência de tabela | |||||
| nomObjeto | Texto |   | Nome de formulário ou método de base | |||||
| nomObjetoForm | Texto |   | Nome de objeto de formulário | |||||
| * | Operador |   | 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: | 
| 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: | 
| Path trigger | Inteiro longo | 8 | Rota dos triggers da base. Exemplos: [trigger]/tabela_1 [trigger]/tabela_2 | 
Nota: O comando não verifica se o método realmente existe no banco de dados ou projeto. Um erro só é gerado se um nome de tabela inválido for passado
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:
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/output1/myVar1";$methodType;$tablePtr;$objectName;$formObjectName)
  // $methodType: 16
  // $tablePtr: -> [Table1]
  // $objectName: "output1"
  // $formObjectName: "Btn1"
	Produto: 4D
	Tema: Accesso aos Objetos de Design
	Número 
        1165
        
        
        
	
	Criado por: 4D v13
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	Manual de linguagem 4D ( 4D v20)
	
	
	Manual de linguagem 4D ( 4D v20.1)
	
	
	
 Adicionar um comentário
Adicionar um comentário