4D v14.3OB Get |
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v14.3
OB Get
|
OB Get ( objeto ; propriedade {; tipo} ) -> Resultado | ||||||||
Parâmetro | Tipo | Descrição | ||||||
objeto | Object |
![]() |
Objeto estruturado | |||||
propriedade | Texto |
![]() |
Nome da propriedade a ler | |||||
tipo | Inteiro longo |
![]() |
Tipo ao qual converter o valor | |||||
Resultado | Booleano, Data, Object, 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.
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 integer | Inteiro longo | 8 |
Is integer 64 bits | Inteiro longo | 25 |
Is JSON null | Inteiro longo | 255 |
Is LongInt | Inteiro longo | 9 |
Is object | Inteiro longo | 38 |
Is real | Inteiro longo | 1 |
Is string var | Inteiro longo | 24 |
Is text | Inteiro longo | 2 |
Is time | Inteiro longo | 11 |
Object array | Inteiro longo | 39 |
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 longo
Recuperação dos valores de um objeto:
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 for
Nã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)
Produto: 4D
Tema: Objetos (Linguagem)
Número
1224
Criado por: 4D v14
OB Copy
Tipos de campos e variáveis
Manual de linguagem 4D ( 4D v14 R2)
Manual de linguagem 4D ( 4D v14 R3)
Manual de linguagem 4D ( 4D v14.3)
Manual de linguagem 4D ( 4D v14 R4)