Comment écrire des expressions de changement conditionnel ?//case1
x={"a01","b02","c003"};
dt << select where(:name=="a01"|:name=="b02"|:name=="c003");
//case2
x={"a01","b02","c003","e03"};
dt << select where(:name=="a01"|:name=="b02"|:name=="c003"|:name=="e03");
//case3
x={"a01"};
dt << select where(:name=="a01")J'ai une question : comme dans les trois cas du code ci-dessous, j'ai maintenant une liste x qui change, donc le code de la condition de sélection change aussi, comment écrire un bout de code avec une expression qui s'occupe de tout les x qui changent.
macOSRe : Comment écrire des expressions de changement conditionnel ?Vous pourriez utiliser Contient() au lieu de Ou()
Names Default To Here(1);
x = {"a01", "b02", "c003"};
dt << select where(:name == "a01" | :name == "b02" | :name == "c003");
// to
dt << select where(Contains(x, :name));
Re : Comment écrire des expressions de changement conditionnel ?Merci, mais le filtre où dans la tablebox ne fonctionne que comme ceci.Par exemple : tablebox << filter where(contains(x,colname), signalera une erreur
Re : Comment écrire des expressions de changement conditionnel ?Quelques questions:
- Où obtenez-vous la liste x ?
- Qu'essayez-vous de filtrer ?
- Qu'est-ce qui déclenche l'action de filtrage ?
Re : Comment écrire des expressions de changement conditionnel ?1. x à partir d'une liste déroulante
2. la valeur d'une colonne dans la tablebox
3. à travers les éléments sélectionnés de la liste déroulante, modifiez automatiquement le contenu de la table tablebox, car la table contient une ligne avec une boîte à boutons, vous souhaitez donc toujours atteindre via filterwhere
Re : Comment écrire des expressions de changement conditionnel ?Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
ot=dt<<GET as="" report="">13 );
)
)
),
Border Box( Left( 10 ), Right( 10 ), Top( 10 ), Bottom( 10 ), Sides( 0 ),
Panel Box( "Step 2",
Button Box( "taller",
ot << reset filter;
ot << filter where( Height>50 );
)
)
)
)
)
),
Outline Box( "Third",
hlb = Border Box( Left( 10 ), Right( 10 ), Top( 10 ), Bottom( 10 ), Sides( 0 ) )
)
)
;
bblist = Expr(
Col Box( "Open Graph" )
);
For( i = 1, i <= N Items( x ), i++,
Insert Into(
bblist,
Button Box( dt:name[i],
<<SETFUNCTION></SETFUNCTION></GET>
Re : Comment écrire des expressions de changement conditionnel ?Vous devrez peut-être évaluer la variable
Names Default To Here(1);
New Window("Mountains",
tb = Table Box(
String Col Box("Mountain", {"K2", "Delphi", "Kilimanjaro", "Grand Teton"}),
Number Col Box("Elevation (meters)", {8611, 681, 5895, 4199}),
Plot Col Box("", {8611, 681, 5895, 4199})
)
);
wait(1);
l = {"K2", "Delphi"};
Eval(EvalExpr(
tb << Filter Where(Contains(Expr(l), Mountain));
));
Re : Comment écrire des expressions de changement conditionnel ?Je ne peux pas croire que c'est la raison, apprendre, merci.