☑ nouvelle fonctionnalité intéressante
☑ pourrait aider de nombreux utilisateurs !
☑ supprime quelque chose qui ressemble à un « bug »
☐ agréable à avoir
☐ personne n'en a besoin
Qu'est-ce qui a inspiré cette demande de liste de souhaits ?
Lorsqu'un utilisateur renomme une colonne, les scripts de table sont automatiquement mis à jour.
Lorsqu'un utilisateur supprime une colonne utilisée dans un script de table, JMP avertit l'utilisateur si la colonne est utilisée dans des formules de colonne.
Mais un script de table mourra sans préavis.
a) il faut beaucoup de temps à l'utilisateur pour découvrir pourquoi le script de table est mort.
b) il faut un certain effort pour recréer la colonne (pire des cas : impossible de recréer la colonne)
Quelle amélioration souhaiteriez-vous voir ?
Avant de supprimer une colonne, veuillez vérifier si la colonne est utilisée dans un script de table - et afficher un avertissement.
Names Default To Here( 1 );
Current Data Table() << copy table script( "no data" );
tableScript = Eval( Eval Expr( Parse( Expr( Get Clipboard() ) ) ) );
col_names = Current Data Table() << Get Selected Columns();
tableScriptList = Substitute( Name Expr( tableScript ), Expr( New Table() ), Expr( List() ) );
tableScriptList = Filter Each( {part}, tableScriptList, Head( Part ) == Expr( New Script() ) );
found = 0;
For Each( {col}, col_names,
For Each( {myScript}, tableScriptList,
If( Not( Is Empty( Eval( Eval Expr( Extract Expr( myScript, Expr( Name Expr( col ) ) ) ) ) ) ),
Caption( {100, 200}, "column \!"" || (col << get name()) || "\!" found in script: \!n" || Arg( myScript, 1 ) );
found = 1;
print("found!!!");
Wait( 1 );
)
)
);
If( Not( found ),
Caption( {100, 200}, "no column found.\!N ->cols can be deleted" );
Wait( 1 );
);
Caption( remove )
Pourquoi cette idée est-elle importante ?
Imaginez combien d’utilisateurs JMP ont tué un script de table en supprimant « accidentellement » une colonne.
passer en « mode sans échec » protégera de nombreux utilisateurs du même problème.
autres souhaits de