Estoy tratando de corregir "pecados" anteriores en un script que escribí actualizándolo con referencias unánimes, es decir, de modo que el script se refiera a la tabla a la que (quiero) indicarle, aunque otra tabla pueda ser la actual ( o una tabla "interferente"). Intenté reconstruir el problema a continuación.
Names Default To Here( 1 );
// this is the table i want to work with
dt = New Table( "Target table", invisible,
Add Rows( 3 ),
New Column( "Name_1",
Character( 1 ),
"Nominal",
Set Values( {"A", "B", "C"} ),
Set Display Width( 45 )
),
New Column( "Name_2",
Character( 1 ),
"Nominal",
Set Values( {"X", "Y", "Z"} ),
Set Display Width( 45 )
),
New Column( "NumericRight",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [1, 2, 3] ),
Set Display Width( 78 )
),
New Column( "NumericAlso",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [7, 8, 9] )
)
);
dt2 = New Table( "Interfering table", invisible,
Add Rows( 3 ),
New Column( "Name_1",
Character( 1 ),
"Nominal",
Set Values( {"D", "E", "F"} ),
Set Display Width( 45 )
),
New Column( "Name_2",
Character( 1 ),
"Nominal",
Set Values( {"U", "V", "W"} ),
Set Display Width( 45 )
),
New Column( "NumericInterference",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [4, 5, 6] )
),
New Column( "MoreNumeric",
Numeric,
"Continuous",
Format( "Best", 12 ),
Set Values( [7, 8, 9] )
)
);
// get lists
lstName_1 = Associative Array( dt:Name_1 ) << Get Keys;
lstName_2 = Associative Array( dt:Name_2 ) << Get Keys;
colList = dt << Get Column Names( "Numeric" );
// window with radio buttons & col list box
New Window( "Select values",
Show Menu( 0 ),
Show Toolbars( 0 ),
Border Box( Top( 0 ), Bottom( 20 ), Left( 20 ), Right( 10 ),
H List Box(
Panel Box( "Name_1",
Radio Box(
Eval List( lstName_1 )
)
),
Panel Box( "Name_2",
Radio Box(
Eval List( lstName_2 )
)
),
Panel Box( "Numeric Columns",
clb = Col List Box( )
),
clb << Append( colList ); // making me cry ...
)
)
);
lo que quiero ver :

Lo que veo invariablemente si mi "tabla de destino" no es la tabla actual :

Lo que me confunde completamente es que cuando cambio el nombre de dt2:Interferencia numérica a dt2: NuméricoDerecha , obtengo este resultado :

¿Por qué dt2 no permite que mi script haga el trabajo que quiero? ¿Por qué el cambio de nombre de una columna en dt2 afecta lo que ingresa en el cuadro de lista de columnas? He probado algunas variaciones de mover el listacol variable y también intenté envolverla en Lista de evaluación() , sin "suerte".
Buscando nuevamente en la comunidad encontré esto Necesita ayuda para completar el cuadro de lista de columnas. Si hay otra solución, gracias por hacérmelo saber. Alternativamente, ¿es así como debe ser y, de ser así, cuál es el significado de esto?