L'utilisateur obtient des erreurs avec mon script que je ne peux pas reproduire.J'ai terminé mon application et cela fonctionne comme prévu sur mon macihne. Je l'ai envoyé à quelques utilisateurs pour tester l'application. Les utilisateurs reçoivent des messages d'erreur où ils ne devraient pas.
Une partie du script vous devez choisir une colonne dans la liste des colonnes.
J'ai créé cette zone de liste de colonnes plus tôt dans le script et affecté un script onChange qui lit à peu près quelle colonne est sélectionnée:
colListX = Col List Box (Data Table(dt<<GET name=""></GET>
Désormais, lorsque les utilisateurs cliquent sur une colonne de la zone de liste Col, ils obtiennent le message d'erreur ci-dessous. J'ai mis quelques commandes show () dans le code et leur ai demandé de l'exécuter:

Donc, ici, colListX - est la zone de liste de cols avec laquelle je travaille. colListXselected - est la colonne actuellement sélectionnée avec Get Get. Intéressant: les utilisateurs l’ont montré dans le journal en tant que
colListXselected = {"eventtime"};
Is Scriptable(colListXselected) = 1;
wihle mon journal montre comme
colListXselected = {:eventtime};
Is Scriptable(colListXselected) = 1;
et le code en cours d'exécution est identique.
Je suppose que toute l'erreur se produit parce que les utilisateurs ne l'ont pas sous forme de colonne, donc même si l'objet est scriptable, le message Obtenir le nom ne peut pas lui être appliqué puisqu'il ne s'agit pas d'une colonne?
Quoi qu'il en soit, vous savez pourquoi les utilisateurs ont cette différence par rapport à ma sortie? Comment le résoudre?
Merci,
M
Re: L'utilisateur obtient des erreurs avec mon script que je ne peux pas reproduire.Ceci était un problème dans JMP 13.0.0. S'il vous plaît voir JMP Note de problème 59737 pour plus de détails. Vous pouvez télécharger la mise à jour gratuite vers JMP 13.2.1 à partir du Mises à jour du logiciel JMP page.
J'espère que cela pourra aider!
Re: L'utilisateur obtient des erreurs avec mon script que je ne peux pas reproduire.J'ai juste le temps de revenir à ça.
Merci beaucoup pour le dépannage - il est logique maintenant, car je sais pourquoi mes utilisateurs obtiennent cette erreur.
Ce que je ne comprends pas, c’est pourquoi mon JMP renvoie la liste des références de colonnes, alors qu’il est supposé (et c’est le cas avec d’autres utilisateurs) renvoyer une liste de chaînes.
Pour exclure le reste du code et vous assurer qu'il n'a aucun effet, j'ai écrit ce petit script et demandé à mes utilisateurs de l'exécuter:
Names Default To Here( 1 );
Clear Log();
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "Col List Box Example",
colList = Col List Box( all, width( 250 ), maxSelected( 1 ) ),
);
colList << Set Selected (2);
colListSelected = colList<< Get Selected;
testString="test";
show(Type(testString));
show(Type(colListSelected));
show(Type(colListSelected[1]));
show(colListSelected[1]);
Mon JMP renvoie ceci:
Type(testString) = "String";
Type(colListSelected) = "List";
Type(colListSelected[1]) = "Name";
colListSelected[1] = :age;
Leur JMP renvoie ceci:
Type(testString) = "String";
Type(colListSelected) = "List";
Type(colListSelected[1]) = "String";
colListSelected[1] = "age";
Comment est-ce possible? Quelqu'un de JMP peut-il jeter un coup d'œil à cela? Ou devrais-je l'envoyer à l'appui?
Merci,
M
Re: L'utilisateur obtient des erreurs avec mon script que je ne peux pas reproduire.Vous pouvez utiliser la fonction JMPVersion () pour imprimer la version de JMP.
Re: L'utilisateur obtient des erreurs avec mon script que je ne peux pas reproduire.Miguello,
ColListBox << get selected renvoie une liste de noms de colonnes, c'est-à-dire une liste de chaînes entre guillemets. Je ne sais pas comment votre résultat est une référence de colonne. Concernant l'erreur: regardez le script ci-dessous. Les deux listes usrsel1 et usrsel2 sont des listes et des scripts. usrsel1 [1] est scriptable car c'est une référence de colonne: il contient des messages (méthodes). usrsel2 [1] est une chaîne qui n'est pas scriptable. C'est ce que votre message d'erreur rapporté vous dit.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
usrsel1 = { :height };
usrsel2 = { "height" };
//Run one line at a time
Show( IsScriptable(usrsel1), IsScriptable(usrsel2) ); // both are 1
Show( IsScriptable(usrsel1[1]), IsScriptable(usrsel2[1]) ); //results are 1, 0
show(usrsel1[1] <<GET name=""></GET>Je ne connais aucune préférence, ou une option à définir (sous Windows) où obtenir sélectionné renvoie les références de colonne.