Pregunta
Héctor Mancilla · Mar 5, 2021

cambiar REPORTNAME de un reporte zen a través de URI

Hola buen día a todos.

quería saber si existe alguna forma de cambiar el nombre un reporte excel. estas son las propiedades y parámetros de la clase:

/// Nombre de clase de la aplicación a la que pertenece este informe.
Parameter APPLICATION; 
Parameter REPORTNAME; 
Property RenderTimeOut As %ZEN.Datatype.integer [ InitialExpression = -1 ]; 
Property ID As %String(ZENURL = "id"); 
Parameter XSLTMODE = "server"; 
Property Title(ZENURL = "title");

Principalmente estoy colocando la URI en un anchor en HTML para poder descargar, pero el atributo 'download' en el tag no hace el trabajo, por lo cual quiero hacer el trabajo en la URI misma.


Saludos

Product version:
IRIS 2020.1
00
3 0 3 32
Log in or sign up to continue

Respuestas

Hola Hector, la verdad es que no entiendo bien que quieres hacer. Puedes darnos más detalles

Hola Hector,

Si lo entiendo bien, estas hablando de ZEN Reports. Ten en cuenta que es una funcionalidad deprecada en Intersystems IRIS, donde se siguen soportando lo Zen reports ya desarrollados con anterioridad, pero se recomienda  migrarlos a "InterSystemt Reports" documentado aquí:

https://docs.intersystems.com/irisforhealthlatest/csp/docbook/DocBook.UI...


En cuanto a la pregunta, parece que puedes sobrescribir el valor del parametro de clase REPORTNAME con un valor de parametro de URL en la petición de Report "?ReportName=MiInforme":

Esto es el código en %ZEN.Report.reportPage que usa el parametr de URL si esta definido:

//JSL4724
set reportnameurlparam = $get(%request.Data("ReportName",1))
set reportname=$s(reportnameurlparam'="":reportnameurlparam,..#REPORTNAME'="":..#REPORTNAME,1:..%ClassName(1))​​​​​​

Lo puedes probar?

Saludos,
PYD

Muchas gracias por su respuesta, me ayudó mucho!