Hola, estoy creando un tablero de múltiples pestañas basado en el guión dado en la siguiente charla de descubrimiento: https://community.jmp.com/t5/Discovery-Summit-Americas-2021/One-Multi-tabbed-Filterable-Dashboard-2021-US-30MP-803/ta-p/398667
El script utilizado para combinar varios dashboards es el siguiente:
<
guiones = Buscar todo (Informes);
tb = Expr(Cuadro de fichas());
For(i = 1, i<= N Elementos(guiones), i ++,
tabPage = Expr(Cuadro de página de pestaña());
dfcb = Expr(Cuadro de contexto de filtro de datos());
lub = Expr(Cuadro de línea arriba(N Col(2)));
hlb = Expr(Cuadro de lista H());
//Obtener el nombre de la tabla de datos para usar con el filtro de datos
wintitle = guiones [i] << Obtener título de ventana;
palabrauna = Palabra(1, wintitle, "-");
palabrados = Palabra(2, wintitle, "-");
dtname = Substr(palabrauno, 1, Longitud(palabrauno)-1);
dt = Eval Expr(Tabla de datos(Expr(dtName)));
//Obtener el nombre del tablero
dashName = Substr(palabra dos, 2);
fallado = 0;
j = 1;
// Recorra los cuadros de la página de pestañas en el tablero y extraiga los scripts
Mientras (fallido == 0,
Pruebe (tpb = guiones [i] << Buscar (TabPageBox (j)),
fallado = 1; Continuar();
);
//Intente obtener el script del cuadro de visualización si existe
Try(obj = tpb << Obtener objeto programable;
secuencia de comandos = obj << Obtener secuencia de comandos,
j ++; Continuar();
);
//Si la secuencia de comandos es para el filtro de datos local, agregue la secuencia de comandos al cuadro de lista H
If(Char(Head(Nombre Expr(script))) == "Filtro de datos",
FilterExprStr = char(NombreExpr(dt)) || " << " || char(Nombre Expr(script));
FilterExpr = Analizar(FilterExprStr);
Insertar en (hlb, NameExpr (FilterExpr));
,
// De lo contrario, agréguelo al cuadro de alineación
If( Char(Nombre Expr(script)) != "Scriptable[]",
reportExprStr = char(NombreExpr(dt)) || " << " || char(Nombre Expr(script));
reportExpr = Parse(reportExprStr);
cuadro de desplazamiento = Expr(Cuadro de desplazamiento());
Insertar en (scrollbox, Name Expr (reportExpr));
Insertar en(lub,Nombre Expr(scrollbox));
);
);
j ++;
);
//Construir las cajas de presentación
Insertar en(hlb, Nombre Expr(lub));
Insertar en (dfcb, Nombre Expr (hlb));
Insertar en (tabPage, Eval Expr (Title (Expr (dashName))), 1);
Insertar en (página de tabulación, expresión de nombre (dfcb), 2);
Insertar en (tb, Nombre Expr (página de tabulación));
);
//Crear ventana de panel combinado
Nueva ventana ("Herramienta de tendencias Ac-225, v0.1", tb);
//Cerrar todos los informes de guión individuales
For( w = 1, w <= N Elementos (guiones), w ++,
guiones [w] << Cerrar ventana;
);
>
Sin embargo, a diferencia de la charla de descubrimiento, mis tableros se basan en diferentes tablas de datos y no en una sola tabla de datos.
Tengo todas las tablas de datos y los tableros abiertos y ejecuto el script anterior para combinar todos los tableros en un tablero con múltiples pestañas. Esto da el siguiente mensaje de error:

Parece que no puede extraer los filtros de datos locales de mis paneles. ¿Alguna sugerencia sobre cómo puedo cambiar el script genérico para poder combinar todos los paneles abiertos?