Tableau de script Trier par colonne définie par l'utilisateurAttention - débutant en script @ travail. Je travaille sur un script, dont une partie trie la table de données par la colonne sélectionnée par l'utilisateur (obtenue par la sélection ColList et Eval List).
Cela ne fonctionne pas, cela fait apparaître la boîte de dialogue Trier, dont je ne veux pas :
dt << Sort( By(_userCol), Order(Ascending), Replace Table);
Lorsque je survole _userCol, la colonne affectée s'affiche dans la fenêtre de script.Si j'utilise le nom exact de la colonne, cela fonctionne sans afficher la boîte de dialogue Trier :
dt << Sort( By(:Timestamp), Order(Ascending), Replace Table);
Comment puis-je écrire ceci en utilisant la variable _userCol ?
Merci!
Re : Table de script Trier par colonne définie par l'utilisateurJe viens de le recevoir sur un autre fil.
1. première vérification de la liste d'ajout
Column( Data Table( "Summary" ),"ITEM") << Set Property(List Check, summary_items);
2. Effectuez un tri de table.
https://community.jmp.com/t5/Discussions/Custom-Sort-Order/td-p/3119
Re : Table de script Trier par colonne définie par l'utilisateurBon type de.
Si vous définissez la propriété de colonne "Value Ordering" pour la colonne que vous souhaitez trier, puis que vous triez par cette colonne, le tri résultant sera trié en fonction de l'ordre spécifié.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
dt:name << set property(
"value ordering",
{"ALICE", "BARBARA", "CHRIS", "ALFRED", "CLAY", "DAVID", "EDWARD", "CAROL", "AMY", "ELIZABETH", "DANNY",
"HENRY", "JACLYN", "JAMES", "JANE", "JEFFREY", "JOE", "JOHN", "KIRK", "LAWRENCE", "JUDY", "FREDERICK",
"LEWIS", "KATIE", "LESLIE", "LINDA", "MARION", "MARK", "LILLIE", "LOUISE", "MARY", "MICHAEL", "PATTY",
"WILLIAM", "SUSAN", "PHILLIP", "MARTHA", "ROBERT", "TIM"}
);
dt << sort( by( :name ), order( ascending ), replace table( 1 ) );Re : Table de script Trier par colonne définie par l'utilisateurBonjour monsieur,
Est-il possible si je peux commander le tableau par une liste prédéfinie au lieu d'un ordre croissant ou décroissant. par exemple
dt = open("$sample_data\Big Class.jmp");
_userCol = "name";
dt << Sort( By(column(dt, _userCol)), Order(Descending), Replace Table);<BR /><BR />instead of the above, i like to order the table by name in a order given by "list" below?
list={"BARBARA","ALFRED","CHRIS","ALICE","AMY","CAROL","CLAY","DANNY","DAVID","EDWARD","ELIZABETH","FREDERICK","HENRY","JACLYN","JAMES","JANE","JEFFREY","JOE","JOHN","JUDY","KATIE","KIRK","LAWRENCE","LESLIE","LEWIS","LILLIE","LINDA","LOUISE","MARION","MARK","MARTHA","MARY","MICHAEL","PATTY","PHILLIP","ROBERT","SUSAN","TIM","WILLIAM"};Re : Table de script Trier par colonne définie par l'utilisateur<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Merci. Résolu mon problème. Par la suite, j'ai appris à utiliser As Column(_usercol) lors de l'utilisation de la colonne dans une formule.
Re : Table de script Trier par colonne définie par l'utilisateurVous devez utiliser le colonne fonction ou la eval fonction:
dt = open("$sample_data\Big Class.jmp");
_userCol = "age";
dt << Sort( By(column(dt, _userCol)), Order(Ascending), Replace Table);
OU
dt << Sort( By(eval(_userCol)), Order(Ascending), Replace Table);