Richard, muchas gracias por el resumen. Después de analizar un poco lo que hice fue esto:
function extender_objeto_js()
{
if ($this->s__imprime) {
$this->s__imprime = FALSE;
echo "
window.open(vinculador.get_url(null, null,
'vista_jasperreports', null, [{$this->objeto_js}._id], false, true));
";
}
}
Y seteo la variable en True al momento de seleccionar el registro, porque de otra manera, por lo que llegué a entender, al presionar el botón de selección de la grilla se largaba el evento JS por separado y nunca le llegaba la asignación del parámetro.
Ahora y aprovechando la clase magistral existe alguna diferencia entre:
echo "
window.open(vinculador.get_url(null, null,
'vista_jasperreports', null, [{$this->objeto_js}._id], false, true));
";
Y
echo "
{$this->dep('form')->objeto_js}.evt__imprimir = function(params) {
location.href = vinculador.get_url(null, null, 'vista_jasperreports', {'path': params});
return false; } ";
Muchas gracias!!