4D v18

entity.touched( )

Página Inicial

 
4D v18
entity.touched( )

entity.touched( )  


 

O método entity.touched( ) testa se foi ou não modificado um atributo de entidade desde que a entidade foi carregada na memória ou salva.

Se um atributo tiver sido modificado ou calculado, o método devolve true, do contrário devolve false. Pode usar este método para averiguar se necessita guardar a entidade.

Este método retorna falso para uma nova entidade que acavbou de ser criada  (com dataClass.new( )). Note entretanto que se usar um método que calcula um atributo da entidade, o método entity.touched( ) vai retornar true. Por exemplo, se chamar entity.getKey( ) para calcular a chave primária, o método  entity.touched( ) retorna true.

Exemplo  

Neste exemplo, verificamos se é necessário salvar a entidade:

 C_OBJECT($emp)
 $emp:=ds.Employee.get(672)
 $emp.firstName:=$emp.firstName // Mesmo se for atualizado com o mesmo valor, o atributo se marca como tocado
 
 If($emp.touched()) //se pelo menos um dos atributos tiver sido modificado
    $emp.save()
 End if // do contrário, não é necessário salvar a entidade



Ver também 

entity.diff( )
entity.touchedAttributes( )

 
PROPRIEDADES 

Produto: 4D
Tema: ORDA - Entidade

 
CONTEÚDO DA PÁGINA 
 
HISTÓRIA 

 
ARTICLE USAGE

Manual de linguagem 4D ( 4D v18)