Este é o site histórico da documentação 4D. As documentações estão sendo movidas progressivamente para developer.4d.com

Página Inicial

 
4D v19.8
entity.fromObject( )

entity.fromObject( ) 


 

entity.fromObject ( objeto ) 
Parâmetro Tipo   Descrição
objeto  Objeto in Objeto a partir do qual vai preencher a entidade

  •  

O método entity.fromObject( )  preenche a entidade com o conteúdo objeto.

Nota: Este método modifica a entidade original

O mapeamento entre objeto e entidade é feito nos nomes de atributos:

 

  • Se uma propriedade de objeto não existir na classe de dados, é ignorada.
  • Tipos de dados devem ser equivalentes.  Se não houver uma correspondência de tipo entre objeto e classe de dados, 4D tenta converter os dados sempre que possível (ver RELATE MANY), senão o atributo é deixado como está
  • A chave primária pode ser dada como está ou com uma propriedade "__KEY"  (preenchida com um valor de chave primária). Se já não existir na classe de dados, a entidade é criada com o valor dado quando  entity.save( ) for chamado. Se a chave primária não for dada, a entidade é criada e o valor de chave primária é atribuído com respeito às regras de banco de dados. O autoincremento é computado somente se a chave primária for null

objeto pode gerenciar uma entidade relacionada nas condições abaixo:

  • objeto contém a chave estrangeira ou
  • objeto contém uma propriedade de objeto com o mesmo nome que uma entidade relacionada contendo uma única propriedade chamada "__KEY".
  • se a entidade relacionada não existir, ela é ignorada.

Exemplo  

Com o objeto  $o abaixo:

{
    "firstName": "Mary",
    "lastName": "Smith",
    "salary": 36500,
    "birthDate": "1958-10-27T00:00:00.000Z",
    "woman": true,
    "managerID": 411,// relatedEntity dada com PK
    "employerID": 20 // relatedEntity dada com PK
}

O código abaixo cria uma entidade com a entidade relacionada manager e employer .

 C_OBJECT($o)
 $entity:=ds.Emp.new()
 $entity.fromObject($o)
 $entity.save()

Pode também ser usado uma entidade relacionada dada como um objeto:

{
    "firstName": "Marie",
    "lastName": "Lechat",
    "salary": 68400,
    "birthDate": "1971-09-03T00:00:00.000Z",
    "woman": false,
    "employer": {// relatedEntity dada como um objeto
        "__KEY": "21"
    },
    "manager": {// relatedEntity given as an object
        "__KEY": "411"
    }
}



Ver também 

entity.toObject( )

 
PROPRIEDADES 

Produto: 4D
Tema: ORDA - Entidade

 
CONTEÚDO DA PÁGINA 
 
HISTÓRIA 

Criado por: 4D v17

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v19)
Manual de linguagem 4D ( 4D v19.1)
Manual de linguagem 4D ( 4D v19.4)
Manual de linguagem 4D ( 4D v19.5)
Manual de linguagem 4D ( 4D v19.6)
Manual de linguagem 4D ( 4D v19.7)
Manual de linguagem 4D ( 4D v19.8)