Re: Insertar contenido de variable/expresión en lugar de nombre de variable en New ScriptJMP tomó la decisión, hace mucho tiempo, de ser amigable para el caso común de agregar un script explícito. Eso hace que el caso poco común, un script en una variable, sea un poco más difícil.
dt = New Table("test dt");
anExpr = Expr(
Show("Hello world.")
);
// <<NEWSCRIPT assumes="" you=""></NEWSCRIPT>
Re: Insertar contenido de variable/expresión en lugar de nombre de variable en New ScriptBueno, después de probar algunas combinaciones más, encontré una forma que parece funcionar.Sin embargo, no tengo idea de cómo o por qué.
dt = New Table("test dt");
anExpr = Expr(
Show("Hello world.")
);
Eval(Eval Expr(
dt << New Script("hello world", Expr(Name Expr(anExpr)))
));
Show(dt << Get Property("hello world"));*Crédito a esta respuesta por acercarme.
Si alguien tiene alguna idea de esto, me gustaría saber más.
Re: Insertar contenido de variable/expresión en lugar de nombre de variable en New ScriptPor supuesto, hay algunas maneras de hacer esto, aquí hay dos:
Names Default To Here(1);
dt = new table();
//one way
scriptExpr = expr ( print( "hi there" ) );
eval ( substitute (
expr ( dt << new script ("greeting 1", _x_ ) ),
expr( _x_ ),
nameexpr( scriptExpr )
) );
// another way
scriptQuote = jslquote ( print ( "hi there" ) );
eval( evalexpr(
dt << new script ("greeting 2", expr( parse( scriptQuote ) ) )
) ) ;
Salud,
Brady
Re: Insertar contenido de variable/expresión en lugar de nombre de variable en New ScriptAquí hay un buen punto de partida. Funciones de manejo de expresiones: Parte I - Desentrañar Expr(), NameExpr(), Eval(), ... Adivinanza en expresiones JMP
Aquí también hay algo de información Guía de secuencias de comandos > Métodos de programación > Expresiones avanzadas
JSL Cookbook también puede tener algunos temas que incluyen el manejo de expresiones Ejecute una plataforma sin saber el número o los nombres de las columnas y este incluye una buena sugerencia para el éxito: el manejo de expresiones es un tema difícil. Cuanto más ejemplo veas, más debes entender.
Inserte el contenido de la variable/expresión en lugar del nombre de la variable en New ScriptSería conveniente poder asignar una expresión a una variable y luego usar esa variable para insertar la expresión en un script de tabla de datos usando New Script.
dt = New Table("test dt");
anExpr = Expr(
Show("Hello world.")
);
dt << New Script("hello world", anExpr);
Show(dt << Get Property("hello world"));Sin embargo, cuando intento esto, el contenido del script es solo el nombre de la variable.Funciona si lo ejecuta en este estado, pero si guarda la tabla de datos y la vuelve a cargar más tarde, el contenido de la variable anExpr se pierden y el script de la tabla no funcionará.
¿Hay alguna manera de insertar el contenido de la variable en un script de tabla en lugar del nombre de la variable?Tal vez se pueda hacer con Substitute, Eval Expr, etc., pero probé bastantes combinaciones de tales métodos sin éxito.
Automatización y secuencias de comandosOrganización de contenido