martes, abril 13, 2010

Métodos clave en Formularios en Dynamics Ax

Como programador en Dynamics AX, varias veces me confundi varios métodos de los Datasource en los formularios. Encontré una nota en el blog de KASHPERUK, que explica detalladamente c/método. A continuación un resumen:

Refresh()

Refresca la info de los formularios de la Cache del DS, de el record seleccionado. No relee de la BD.

Reread()

Consulta la BD, y relee el record que esta seleccionado en ese momento

Research()

Vuelve a ejecutar la actual consulta. En Ax2009 Research(true), ejecuta nuevamente la consulta pero se mantiene en el record ya seleccionado.

ExecuteQuery()

Vuelve a ejecutar la consulta, pero solo sirve, si la consulta cambio, sino hay que usar Research()

formDataSource.queryRun().query()

Es la consulta que se está ejecutando actualmente en el formulario

formDataSource.query()

Es la consulta original del formulario

Por lo tanto si se usa research(), usuara formDataSource.queryRun().query() manteniendo cualquier filtro que haya hehco el usuario. Si se Usa ExecuteQuery(), este usara formDataSource.query(), eliminado cualquier filtro que haya hecho el usuario.

Fuente: KASHPERUK blog

1 comentario:

Juan Carlos López dijo...

Gracias, para que funcione Research(true), la tabla debe tener la propiedad primaryIndex

Saludos