Ajouter une étiquette à une colonne (mais ne pas supprimer les étiquettes existantes)Normalement, lorsque j'utilise des étiquettes, je souhaite simplement les ajouter à une colonne. Cependant, en ajouter une comme celle-ci…
dtTag:my_column << Set Property( Tags, {"New Tag"} );
… écrasera toutes les balises existantes dans la colonne. Existe-t-il un moyen d'ajouter facilement une balise en JSL sans supprimer les balises existantes ? Je pourrais récupérer les balises de la colonne puis modifier la liste des balises que j'attribue, mais je cherche une méthode plus simple.
Automatisation et scriptageRe: Ajout d'une étiquette à une colonne (sans suppression des étiquettes existantes)Je ne trouve aucune méthode intégrée pour ajouter simplement une étiquette. Je dois donc définir une fonction à cet effet.
Names Default To Here( 1 );
add_tag = Function( {col, tag_name, this_dt = Current Data Table()},
og_tags = Column( this_dt, col ) << Get Property( "Tags" );
Column( this_dt, col ) << Set Property( "Tags", Eval( If( Is Empty( og_tags ), {}, og_tags ) || Eval List( {tag_name} ) ) );
);
//demo
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
add_tag( "name", "cheeses", dt );
Wait( 1 );
add_tag( "name", "weirdness" );
Show( dt:name << Get Property( "Tags" ) ); //dt:name << Get Property("Tags") = {"cheeses", "weirdness"};
<BR />