Ordre de tri dans la fenêtre de tri personnaliséeComment la fenêtre de tri JMP passe-t-elle par ordre croissant et décroissant des boutons à la zone de liste Col (ListBoxBox?) Au bouton OK?
J'ai besoin de créer une fenêtre de tri personnalisée avec des options limitées pour les tableaux de données dans un rapport.J'ai compris comment faire la plupart d'entre eux, soit en créant une fenêtre de tri à partir de zéro, soit en commençant par la fenêtre de tri JMP. Un exemple avec ce dernier suit.
Comment puis-je obtenir order_list == ????????; depuis la fenêtre de tri?
Obtenir les colonnes à trier est facile avec Get Items. Comment obtenir les directions associées aux icônes ascendantes et descendantes qui apparaissent avant le type de données et le nom de colonne dans la zone de liste des colonnes?

Voici un exemple de code.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Sort(dt);
sort_window = Get Window( "Sort" );
sort_window[1][1][1][3][1] << Delete Box();
sort_window[1][1][1][2][1][2] << Delete Box();
sort_window[1][1][1][2][3][1][5] << Delete Box();
sort_window[1][1][1][2][3][1][4] << Delete Box();
sort_window[1][1][1][2][3][1][3] << Delete Box();
sort_window[1][1][1][2][3][1][2] << Delete Box();
sort_window[1][1][1][2][3][1][1] << Delete Box();
sort_window[1][1][1][2][2][2] << Delete Box();
selected_column_box = sort_window[1][1][1][2][2][1][1][2];
sort_window[1][1][1][2][3][1] << append( Button Box( " OK ",
Print("OK clicked");
sel_list = selected_column_box << Get Items;
sel_string = sel_list[1];
For( i = 2, i <= N Items(sel_list), i++,
sel_string = sel_string || ", " || sel_list[i]
);
//// For Testing
// order_list = {"Ascending", "Ascending"};
order_list == ????????;
order_string = order_list[1];
For( i = 2, i <= N Items(order_list), i++,
order_string = order_string || ", " || order_list[i]
);
sort_statement = "dt << Sort( By(^sel_string^), Order(^order_string^), Replace Table);";
Eval Insert Into( sort_statement );
Eval( Parse( sort_statement ) );
, <<SET icon=""></SET>
Merci pour vos suggestions.
GraphiqueAutreScriptingRe: Ordre de tri dans la fenêtre de tri personnaliséeMerci à Wendy Murphrey du support technique JMP de m'avoir donné des suggestions pour m'aider à faire ce que je veux.
Bien que je sois toujours intéressé à savoir comment les éléments de la fenêtre de tri accèdent aux éléments ascendants et descendants, je n'en ai pas besoin. Quiconque a une réponse à cette question, n'hésitez pas à me le faire savoir.
Quoi qu'il en soit, mon objectif est de trier les tableaux dans les onglets de rapport. Ces tables sont liées à des tables invisibles où le tri est effectivement effectué. Cependant, je dois forcer le remplacement des tables, afin que les utilisateurs ne créent pas des tonnes de tables non suivies lorsqu'ils travaillent dans les rapports.
Laissant de côté toute la création de rapport et la gestion des tableaux de rapport dans des onglets, voici une mise à jour sur le cœur du tri des tableaux invisibles en arrière-plan qui devraient fonctionner pour nos tableaux de rapport.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
Sort(dt);
sort_window = Get Window( "Sort" );
// For stability, collapse, don't delete window elements
sort_window[1][1][1][3][1] << Visibility( "Collapse" );
sort_window[1][1][1][2][3][1][4] << Visibility( "Collapse" );
sort_window[1][1][1][2][2][2] << Visibility( "Collapse" );
sort_window[1][1][1][2][1][2] << Visibility( "Collapse" );
sort_window << OnClose(
dt1 = Get Data Table( 1 );
// Include name check in case users figure out a way
// to replace tables themselves, despite collapsing that option above
old_name = dt << Get Name();
new_name = dt1 << Get Name();
if( new_name != old_name,
dt << Update( With( dt1 ) );
Close(dt1, "No Save")
);
);