Salut tout le monde,
Je crée une application avec JMP Application Builder. L'utilisateur ouvre un fichier de données dans JMP et peut effectuer des analyses. Le programme nécessite une colonne d'index (date/heure ou un simple index de ligne suffisent). Souvent, les données chargées dans cette application possèdent un index date/heure, mais ce n'est pas toujours le cas. Il arrive que la première colonne contienne des données réelles (valeurs continues, numériques, souvent décimales).
Je cherche un moyen de détecter automatiquement si la première colonne d'une table de données dans JMP est au format date/heure (index date/heure) ou contient des valeurs [1, 2, ..., N colonnes] (index de ligne). Si ces deux vérifications pour une colonne d'index sont négatives (ce qui signifie que la première colonne contient des valeurs de données réelles), je peux simplement insérer une colonne avec la formule Row() pour gérer l'indexation.
Est-il possible d'utiliser << Get Format et d'exploiter ce résultat pour analyser ce que j'ai décrit ? Je n'y suis pas parvenu, mais je ne cherche peut-être pas au bon endroit. Si je pouvais obtenir le résultat de << Get Format sous forme de chaîne, je pourrais effectuer une recherche rudimentaire pour voir s'il contient un mélange de YYYY, M, ou D, etc.
Il est tout à fait possible de demander à l'utilisateur d'ajouter simplement une colonne d'index avant de continuer à utiliser le programme, et pour l'instant c'est ce que je fais, mais idéalement le programme serait capable de gérer cela automatiquement.
Merci pour tout conseil,
Estelle
Le message Get Format() renvoie une expression qui peut être utilisée pour formater une autre colonne. Si vous voulez que le format soit une chaîne, vous pouvez obtenir le premier argument de cette expression en utilisant le Fonction Arg() .
New Table( "My Table",
Add Rows( 0 ),
New Column( "Column 1",
Numeric,
"Continuous",
Format( "mmddyyyy", 12 ),
Input Format( "mmddyyyy" ),
Set Selected
)
);
foo = :column 1 << get format;
//foo == Format( "mmddyyyy", 12 )
fmt = Arg( foo, 1 );
Show( fmt );
// fmt = "mmddyyyy";
Ah super ! Merci, Jeff, c'est l'étape qui me manquait.