lunes, 28 de julio de 2008

Oracle Forms: FRM-41380: Cannot set the blocks query data source

Oracle Forms: FRM-41380: Cannot set the blocks query data source
Oracle Forms: set_block_property QUERY_DATA_SOURCE_NAME error
Oracle Forms: definir tabla de un bloque de datos
Oracle Forms: Error FRM-41380

Situación:
Tenemos un bloque de datos que lee de base de datos pero no de una tabla si no de una consulta (Query data source type = from clause query) y queremos poder redefinir este origen en función de otros parametros pero cuando lo hacemos mediante

set_block_property ('bloque de datos',QUERY_DATA_SOURCE_NAME , cadena_from);

solo nos funciona la primera vez y luego nos devuelve "FRM-41380: Cannot set the blocks query data source".

Explicación:
Otra de las tonterías de forms que nos obliga a hacer un paso previo.

Solución:
Ya lo hacemos correctamente pero antes de definir el nuevo origen hay que vaciar el bloque de datos para que tenga el estado "new".
Para hacerlo tenemos el ya mítico

go_block ('bloque_de_datos');
clear_block (no_validate);

1 comentario:

Rulas dijo...

Sublime!!
Justo lo que me pasaba, gracias por el tip y que bueno encontrar un recurso como el tuyo en la web.

Que versión de Oracle Forms usas?