Re : Insérer le contenu de la variable/expression plutôt que le nom de la variable dans le nouveau scriptJMP a pris la décision, il y a longtemps, d'être amical pour le cas courant d'un script explicite à ajouter. Cela rend le cas peu commun, un script dans une variable, un peu plus difficile.
dt = New Table("test dt");
anExpr = Expr(
Show("Hello world.")
);
// <<NEWSCRIPT assumes="" you=""></NEWSCRIPT>
Re : Insérer le contenu de la variable/expression plutôt que le nom de la variable dans le nouveau scriptEh bien, après avoir essayé quelques combinaisons supplémentaires, j'ai trouvé un moyen qui semble fonctionner.Cependant, je ne sais pas comment ni pourquoi.
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édit à cette réponse pour m'avoir rapproché.
Si quelqu'un a une idée à ce sujet, je serais curieux d'en savoir plus.
Re : Insérer le contenu de la variable/expression plutôt que le nom de la variable dans le nouveau scriptIl y a bien sûr plusieurs façons de le faire, en voici deux :
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 ) ) )
) ) ;
Acclamations,
brady
Re : Insérer le contenu de la variable/expression plutôt que le nom de la variable dans le nouveau scriptVoici un bon point de départ Fonctions de gestion des expressions : Partie I - Démêler Expr(), NameExpr(), Eval(), ... Énigme sur les expressions JMP
Voici aussi quelques infos Guide de script > Méthodes de programmation > Expressions avancées
JSL Cookbook peut également avoir des sujets qui incluent la gestion des expressions Exécuter une plate-forme sans connaître le nombre ou les noms des colonnes et celui-ci comprend un bon indice de réussite : la gestion des expressions est un sujet difficile. Plus vous voyez d'exemples, plus vous devez comprendre.
Insérer le contenu de la variable/expression plutôt que le nom de la variable dans le nouveau scriptIl serait pratique de pouvoir affecter une expression à une variable, puis d'utiliser cette variable pour insérer l'expression dans un script de table de données à l'aide de Nouveau script.
dt = New Table("test dt");
anExpr = Expr(
Show("Hello world.")
);
dt << New Script("hello world", anExpr);
Show(dt << Get Property("hello world"));Cependant, lorsque j'essaie cela, le contenu du script n'est que le nom de la variable.Cela fonctionne si vous l'exécutez dans cet état, mais si vous enregistrez la table de données et la rechargez plus tard, le contenu de la variable anExpr sont perdus et le script de table ne fonctionnera pas.
Existe-t-il un moyen d'insérer le Contenu de la variable dans un script de table plutôt que le nom de la variable ?Peut-être que cela peut être fait avec Substitute, Eval Expr, etc., mais j'ai essayé plusieurs combinaisons de ces méthodes sans succès.
Automatisation et scriptOrganisation du contenu