| 4D v15 R2OB Get | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|  | 
    4D v15 R2
 OB Get 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| OB Get ( objeto ; propriedade {; tipo} ) -> Resultado | ||||||||
| Parâmetro | Tipo | Descrição | ||||||
| objeto | Objeto, Campo Objeto |   | Objeto estruturado | |||||
| propriedade | Texto |   | Nome da propriedade a ler | |||||
| tipo | Inteiro longo |   | Tipo ao qual converter o valor | |||||
| Resultado | Booleano, Data, Objeto, Ponteiro, Real, Texto |   | Valor atual de propriedade | |||||
O comando OB Get devolve o valor atual da propriedade do objeto, convertido opcionalmente no tipo definido.
objeto deve ter sido definido com o comando C_OBJECT ou designar um campo objeto 4D..
No parâmetro propriedade, passe a etiqueta da propriedade a ler. Tenha em conta que o parâmetro propriedade é sensível a maiúsculas e minúsculas
Por padrão, 4D devolve o valor da propriedade em seu tipo original. Pode "forçar" a escritura do valor devolvido utilizando o parâmetro opcional tipo. Para isso, em tipo passe uma das seguintes constantes que se encontram no tema Tipos de campos e variáveis:
| Constante | Tipo | Valor | 
| Is Boolean | Inteiro longo | 6 | 
| Is date | Inteiro longo | 4 | 
| Is longint | Inteiro longo | 9 | 
| Is object | Inteiro longo | 38 | 
| Is pointer | Inteiro longo | 23 | 
| Is real | Inteiro longo | 1 | 
| Is text | Inteiro longo | 2 | 
| Is time | Inteiro longo | 11 | 
O comando devolve o valor da propriedade. Vários tipos de dados estão suportados. Leve em conta que:
Recuperação de um valor de tipo texto:
Recuperação de um valor real convertido em inteiro longo:
 OB SET($ref ;"age";42)
 $age:=OB Get($ref ;"age") // $age é um número real (default)
 $age:=OB Get($ref ;"age";Is longint) // $age é um inteiro longoRecuperação dos valores de um objeto:
 C_OBJECT($ref1;$ref2)
 OB SET($ref1;"LastName";"Smith") // $ref1={"LastName":"Smith"}
 OB SET($ref2;"son";$ref1) // $ref2={"son":{"LastName":"Smith"}}
 $son:=OB Get($ref2;"son") // $son={"LastName":"john"} (object)
 $sonsName:=OB Get($son ;"name") // $sonsName="john" (text)Modificando a idade de um empregado duas vezes:
 C_OBJECT($ref_john;$ref_jim)
 OB SET($ref_john;"name";"John";"age";35)
 OB SET($ref_jim;"name";"Jim";"age";40)
 APPEND TO ARRAY($myArray;$ref_john) // criamos um objeto array
 APPEND TO ARRAY($myArray;$ref_jim)
  // mudamos a idade de John de 35 a 25
 OB SET($myArray{1};"age";25)
  // mudamos a idade de "John" no array
 For($i;1;Size of array($myArray))
    If(OB Get($myArray{$i};"name")="John")
       OB SET($myArray{$i};"age";36) // em troca de 25
  // $ref_john={"name":"John","age":36}
    End if
 End forNão serialização de uma cadeia de dados com formato ISO:
Utilização de objetos aninhados:
 C_OBJECT($ref1;$child;$children)
 C_TEXT($childName)
 OB SET($ref1;"firstname";"John";"lastname";"Monroe")
  //{"firstname":"john","lastname";"Monroe"}
 OB SET($children;"children";$ref1)
 $child:=OB Get($children;"children")
  //$son = {"firstname":"John","lastname":"Monroe"} (object)
 $childName:=OB Get($child;"lastname")
  //$childName = "Monroe" (text)
  //o
 $childName:=OB Get(OB Get($children;"children");"lastname")
  // $childName = "Monroe" (text)Recuperação em 4D de uma hora armazenada em um objeto:
Exemplos de manipulação de campos objeto 4D:
  // Definir um valor
 OB SET([People]Identity_OB;"First name";$firstName)
 OB SET([People]Identity_OB;"Last name";$lastName)
 
  // Obter um valor
 $firstName:=OB Get([People]Identity_OB;"First name")
 $lastName:=OB Get([People]Identity_OB;"Last name")
	Produto: 4D
	Tema: Objetos (Linguagem)
	Número 
        1224
        
        
        
	
	Criado por: 4D v14
	Modificado: 4D v15
	Manual de linguagem 4D ( 4D v15)
	Manual de linguagem 4D ( 4D v15 R2)
	
	Manual de linguagem 4D ( 4D v15.4)
	Manual de linguagem 4D ( 4D v15.3)
 Adicionar um comentário
Adicionar um comentário