Unir dos tablas con nombres de variablesHola,
Me gusta unir dos tablas con nombres de variables. Aquí está el guión.
Eval(
Parse(
"s3 << Join(
With( rds),
Merge Same Name Columns,
By Matching Columns(
" || name3 || ",
" || name4 ||
"
),
Drop multiples( 0, 0 ),
Include Nonmatches( 1, 1 ),
Preserve main table order( 1 )
);"
)
);
Recibo el error "Nombre sin resolver: Tono de LED rojo x 64{1} en el acceso o evaluación de "Tono de LED rojo 64/*###*/. No hay problema con el nombre 3 "Serail#" pero sí con "Red LED Hue x 64[1]".
Aquí está el script que funciona bien, pero me gusta reemplazar los nombres de las variables con nombre3 y nombre4.
Data Table( "S3" ) << Join(
With( Data Table( "RDS" ) ),
Merge Same Name Columns,
By Matching Columns( :Serial# = :Serial#, :Name( "Red LED Hue x 64[1]" ) = :Name( "Red LED Hue x 64[1]" ) ),
Drop multiples( 0, 0 ),
Include Nonmatches( 1, 1 ),
Preserve main table order( 1 )
)
Aprecio tu ayuda.Gracias
Re: Unir dos tablas con nombres de variablesGracias Cameron. Lo probé y funciona bien. Gracias de nuevo.
Re: Unir dos tablas con nombres de variablesVaya, te faltan comillas dentro del nombre.Me olvidé de eso.Puedes hacerlo de varias maneras, pero aquí hay una en la que usamos la sintaxis de escape para insertar comillas dobles dentro de una cadena.
name1 = ":Name(\!"" || xvar || "\!")";
name2 = ":Name(\!"" || yvar || "\!")";
name3 = name1 || " = " || name2;
Definitivamente deberías usar el enfoque :Name("col name") para mantener esto sólido, ya que lo necesitarás para manejar situaciones con caracteres especiales en los nombres de las columnas.
Re: Unir dos tablas con nombres de variablesGracias Cameron. Modifiqué nombre3 y nombre4 como sugeriste y recibí un error:
El nombre arg debe estar entre comillas
Línea 5 Columna 9: :Nombre( ►N° de serie) = :Nombre(N° de serie),
Si mantengo el nombre3 como antes, no habrá error para el número de serie sino para el nombre4. No sé a priori qué eligen los usuarios para nombre3 y nombre4.
Gracias por su apoyo continuo.
Re: Unir dos tablas con nombres de variablesEs casi seguro que el problema está en los corchetes de Name4. Si los nombres de las columnas tienen caracteres especiales, no puede utilizar los dos puntos (:) con el nombre de la columna.Debe incluir la cadena del nombre de la columna en :Name().
Prueba esto:
name1 = ":Name(" || xvar || ")";
name2 = ":Name(" || yvar || ")";
name3 = name1 || " = " || name2;Re: Unir dos tablas con nombres de variablesGracias Cameron. El nombre3 y el nombre4 se enumeran a continuación cuando se invoca show(name).
name3 = ":Serial# = :Serial#";
name4 = ":Red LED Hue x 64[1] = :Red LED Hue x 64[1]";
The name 3 and name4 are created by using the following script:xvar = .;
yvar = .;
win = New Window( "Choose Two Variables for Matching",
<<MODAL></MODAL>
De manera similar para nombre4.
Aprecio tu ayuda. Gracias
Re: Unir dos tablas con nombres de variables¿Cómo defines nombre3 y nombre4?¿Puedes publicar esa parte de tu script y mostrar cómo se evalúan esas variables en el registro? (por ejemplo, ejecute "Mostrar (nombre3, nombre4)")