La configuración de ID de enlace en jsl parece no funcionar. ¿Qué está mal?Estoy tratando de establecer una ID de enlace en JSL, pero cuando la configuro en JSL, la ID de enlace parece estar configurada en la tabla como debería, pero la referencia de enlace en la otra tabla que se supone que hace referencia a ella no funciona.
Si elimino la ID del enlace y la configuro haciendo clic derecho en la ID del enlace, todo funciona bien.
Yo uso esto:
dfps:name( "Country" ) << Set Property( "Link ID", 1 );
No puedo ver lo que está mal con esto. ¿Me estoy perdiendo alguna operación de actualización para que funcione? ¿Alguna sugerencia?
secuencias de comandosRe: Establecer ID de enlace en jsl parece no funcionar. ¿Qué está mal?Como menciona Craige, creo que es un problema de "guardar". He tenido este problema antes y, lamentablemente, solo lo tenía en la PC. En la Mac, no necesité realizar el guardado.
Asegurándome de que mi tabla se guardara primero, solucioné el problema.
Brady
Re: Establecer ID de enlace en jsl parece no funcionar. ¿Qué está mal?Descubrí algo nuevo:
Si la secuencia de comandos JSL que estoy ejecutando no se guarda y nunca se guardó antes (es decir, si el código fuente se escribió o copió en una nueva ventana de secuencias de comandos abierta), la vinculación de dos tablas de datos no guardadas funciona de maravilla.
Si se guarda o si es un script existente que se acaba de modificar y no se guardó, no funciona.
Re: Establecer ID de enlace en jsl parece no funcionar. ¿Qué está mal?Hola a todos,
Tengo el mismo problema al vincular dos tablas a través de un script.
Se comporta exactamente como @ThomasZatValcon descrito.
Después de hacerlo manualmente haciendo clic, copié las dos líneas de código del registro.
Luego depende de dónde se inserten. Si los inserto en una nueva ventana de secuencia de comandos, la secuencia de comandos funciona. Si los inserto en mi script actual en desarrollo (desde el cual se abrieron originalmente las dos tablas), no funciona.
¿Hay algunas ideas nuevas sobre este tema?
Salud
Roberto
Por cierto. Mientras tanto encontré un hilo relacionado. La solución es guardar primero las tablas de datos, pero esto no siempre es conveniente.
https://community.jmp.com/t5/Discussions/Virtual-Join-via-JSL-does-not-work/td-p/360675
Re: Establecer ID de enlace en jsl parece no funcionar. ¿Qué está mal?Intente guardar las tablas antes de vincularlas y vea si sus resultados son consistentes. No estoy seguro de cómo funcionan los enlaces internamente, pero puede depender de que haya un nombre de archivo disponible.
Re: Establecer ID de enlace en jsl parece no funcionar. ¿Qué está mal?Son dos mesas diferentes. La de la izquierda es la tabla con el ID, la tabla de la izquierda es la tabla con la referencia.
Sí, probé column(dt...) y dt:name()... haciendo referencia.
También traté de poner el código que funciona (cuando se ejecuta desde una ventana de script separada) en un archivo separado e incluirlo. Tampoco funcionó. Traté de ponerlo en un expr() y evaluarlo. Tampoco ayudó.
Pero las dos líneas de código funcionan si creo una ventana de script separada y las ejecuto desde allí, lo cual es inesperado.
Re: Establecer ID de enlace en jsl parece no funcionar. ¿Qué está mal?¿Se supone que son iguales? Porque las dos tablas tienen diferente número de columnas.
¿Has mirado que `dfps` está bien? ¿O intentó usar `Column(dt, "Country")`?Re: Establecer ID de enlace en jsl parece no funcionar. ¿Qué está mal?Todavía no lo he descubierto, pero estoy teniendo un comportamiento realmente extraño aquí:
Tener el mismo código en dos ventanas:

Cuando ejecuto el código en la ventana izquierda, observe que el ícono con las dos teclas es gris (no funciona):

Cuando ejecuto las mismas dos líneas en la ventana derecha, funciona:

El código en la ventana izquierda es donde se creó el jsl. Todo el código se ejecuta en el espacio de nombres global. Incluso probé con los nombres predeterminados aquí (1) y obtuve el mismo comportamiento que me sorprendió, ya que esperaba no poder hacer referencia a las variables de la tabla desde otra ventana del script.
Re: Establecer ID de enlace en jsl parece no funcionar. ¿Qué está mal?Gracias. Modifiqué su código para representar mejor lo que está sucediendo (las tablas solo están en la memoria) para representar lo que está sucediendo más de cerca y esperaba que fallara, pero en realidad funciona. Todavía no he descubierto qué hace que mi otro código falle, pero actualizaré este hilo si lo descubro.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA\Big Class.jmp" );
// creating a unique ID
dt2 = dt << subset( all rows, all columns );
dt2 << New Column( "_Row", <<SET each="" value=""></SET>
Re: Establecer ID de enlace en jsl parece no funcionar. ¿Qué está mal?¿Está diciendo que está configurando la referencia antes de la identificación?No estoy seguro de cómo harías eso, pero esto funciona bien para mí.
Names default to here( 1 );
dt = open("$SAMPLE_DATA\Big Class.jmp");
// creating a unique ID
dt << New Column("_Row", << Set Each Value(Row()));
// subsetting just so I have something to link
dt_sub = dt << Subset(
Selected Rows( 0 ),
Rows( [1, 2, 3, 4, 5] ),
columns( :_Row )
);
Column(dt, "_Row") << Set Property( "Link ID", 1 );
Column(dt_sub, "_Row") << Set Property( "Link Reference",
Reference Table( "$SAMPLE_DATA\Big Class.jmp" )
);