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.
  
 
    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"
    }
}