Sélecteur de colonne et fonction trySalut,
Est-il possible d'utiliser la fonction try dans un script de changement de colonne? Je crée un script où j'ajoute un sélecteur de colonnes pour quelques colonnes choisies à un graphique qui fonctionne bien. Cependant, parfois une colonne sera manquante, ce qui arrêtera le script. Par conséquent, j'essaie d'utiliser la fonction try pour chacune des colonnes pertinentes (car je ne veux pas que toutes les colonnes du sélecteur de colonnes), mais je ne peux pas le faire fonctionner.
dt << Sélecteur de colonnes (
try ((: RER), throw ("RER n'existe pas")),
try ((: VO2), throw ("VO2 n'existe pas")),
try (: Name ("Drink- [ml]"), throw ("Drink- [ml] n'existe pas"))
);
Est-ce possible ou existe-t-il une meilleure façon de procéder?
Frère Julie
Re: Sélecteur de colonne et fonction tryVoici comment je le ferais
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/big class.jmp" );
// set desired list of columns to be in column switcher
desiredColList = {"Height", "Weight", "Zippy"};
// remove from list, columns that are not available
For( i = N Items( desiredColList ), i >= 1, i--,
If( Try( Column( dt, desiredColList[i] ) << get name, "" ) == "",
Remove From( desiredColList, i, 1 )
)
);
// If columns are available, run the platform
If( N Items( desiredColList ) > 0,
ow = oneway( x( :age ), y( :height ) );
ow << Column Switcher( :height, desiredColList );
);Re: Sélecteur de colonne et fonction tryJ'utiliserais la fonction Try () en dehors du message. Créez le message de manière conditionnelle. Comme ça:
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Fitness.jmp" );
gb = dt << Graph Builder(
Size( 532, 456 ),
Show Control Panel( 0 ),
Show Legend( 0 ),
Variables( X( :Age ), Y( :Oxy ) ),
Elements( Points( X, Y, Legend( 3 ) ) )
);
alt cols = List();
Try(
Insert Into( alt cols, Column( dt, "Age" ) )
);
Try(
Insert Into( alt cols, Column( dt, "Weight" ) )
);
Try(
Insert Into( alt cols, Column( dt, "Runtime" ) )
);
col switcher expr = Expr( Column Switcher( :age ) );
Insert Into( col switcher expr, alt cols );
Eval(
Insert(
Expr( Send( gb ) ),
Name Expr( col switcher expr )
)
);