Acceso a los campos de un registro

Los objetos Entity contienen todos los datos asociados a los campos de un registro. Cuando se necesita saber algo sobre un campo, siempre se debe comenzar por el objeto Entity. En algunos casos, se puede llamar a métodos de Entity para obtener la información necesaria. Sin embargo, también se puede utilizar el objeto Entity para obtener un objeto FieldInfo, que contiene información adicional sobre el campo.

Para obtener un objeto FieldInfo, llame al método GetFieldValue.

Para obtener el valor almacenado en el objeto FieldInfo, llame al método GetValue del objeto FieldInfo.

Para obtener una recopilación de objetos FieldInfo, uno para cada campo del registro, llame al método GetAllFieldValues. (Se debe tener en cuenta que GetAllFieldValues no devuelve los valores de los campos de archivos de datos adjuntos).

Para obtener una lista de los nombres de todos los campos, llame al método GetFieldNames.

Para obtener el tipo de datos almacenados en el campo, llame al método GetFieldType.

Para averiguar el comportamiento de un campo para la acción actual (obligatorio, opcional o de sólo lectura), llame al método GetFieldRequiredness.

Aunque, por lo general, utilice un objeto FieldInfo para acceder a un campo, existen situaciones en las que debe utilizar métodos de Entity.

Para establecer el valor de un campo, llame al método SetFieldValue.

Para comparar el nuevo valor con el valor anterior de un campo (si ha actualizado previamente el contenido de un campo), obtenga el valor anterior llamando al método GetFieldOriginalValue.

Nota: Aunque puede obtener el comportamiento de un campo utilizando un objeto Entity o FieldInfo, sólo puede utilizar el método SetFieldRequirednessForCurrentAction de Entity para establecer el comportamiento del campo.

Para modificar campos que contienen listas de opciones, utilice los métodos del objeto Entity.

Tarea
Método de objeto Entity que llamar
Para recuperar una lista de valores permitidos en el campo
GetFieldChoiceList
Para obtener una constante que indique si se pueden añadir elementos adicionales a la lista de opciones
GetFieldChoiceType
Para añadir elementos a una lista de opciones que se puede modificar
AddFieldValue
Para suprimir elementos de una lista de opciones que se puede modificar
DeleteFieldValue

Cuando actualiza los campos de un registro, el objeto Entity le proporciona varios modos de hacer un seguimiento de todos los campos modificados. Puesto que se pueden escribir enganches para modificar otros campos, al llamar al método SetFieldValue el resultado puede ser que se cambie más de un campo. Por ejemplo, en el caso de que llame a SetFieldValue para el campo X, y que un enganche de campo del campo X cambie el valor del campo Y.

Nota: Debe evitar la creación de un bucle infinito (enganches que se llamen entre sí).

Comentarios