Salut @stan_koprowski ,
J'ai utilisé JMP Query Builder pour créer la requête SQL suivante
Names Default To Here( 1 );
//Prompt to select and open an MS Excel file
dt1 = Open( Pick File( "Select Excel File", "$DOCUMENTS", {"Excel Files|csv;xlsx;xls", "All Files|*"}, 1, 0 ), Invisible );
//Prompt to select an open a JMP data table
dt2 = Open( Pick File( "Select JMP File", "$DOCUMENTS", {"JMP Files|jmp", "All Files|*"}, 1, 0 ), Invisible );
//Perform a left outer join on the tables using the "Name" Column
New SQL Query(
Version( 130 ),
Connection( "JMP" ),
JMP Tables(
["1st_file" =>
"Source(Open( \!"dt1\!",
Worksheets( \!"worksheet\!" ),
Use for all sheets( 1 ),
Concatenate Worksheets( 0 ),
Create Concatenation Column( 0 ),
Worksheet Settings(
1,
Has Column Headers( 1 ),
Number of Rows in Headers( 1 ),
Headers Start on Row( 1 ),
Data Starts on Row( 2 ),
Data Starts on Column( 1 ),
Data Ends on Row( 0 ),
Data Ends on Column( 0 ),
Replicated Spanned Rows( 1 ),
Replicated Spanned Headers( 0 ),
Suppress Hidden Rows( 1 ),
Suppress Hidden Columns( 1 ),
Suppress Empty Columns( 1 ),
Treat as Hierarchy( 1 ),
Multiple Series Stack( 0 ),
Import Cell Colors( 0 ),
Limit Column Detect( 0 ),
Column Separator String( \!"-\!" )
)
))",
"2nd_file" => "Source(Open( \!"dt2\!"))"]
),
QueryName( "Data_Blending" ),
Select(
Column( "Name", "t2" ),
Column( "Enable", "t2" ),
Column( "Type", "t2" ),
Column( "Phase", "t2" ),
Column( "Values", "t3" )
),
From(
Table( "2nd_file", Alias( "t2" ) ),
Table(
"1st_file",
Alias( "t3" ),
Join(
Type( Left Outer ),
EQ( Column( "Name", "t2" ), Column( "Name", "t3" ) )
)
)
)
) << Run;
//Close source files without saving
Close(dt1, "NoSave");
Close(dt2, "NoSave") - Le script ci-dessus effectuera une jointure gauche.
- Plus précisément, il copiera la colonne "Valeurs" du 2ème fichier dans le 1er fichier et créera la table JMP Data_Blending.
Le script ci-dessus ne fonctionne que si le nom du fichier est entré dans la requête.
Que se passe-t-il si je veux exécuter le même script sur différents fichiers sans changer le nom de la table de référence ?
Que mon 2ème nom de fichier reste constant et je souhaite effectuer des opérations similaires sur différents fichiers.
J'ai un autre fichier Excel "3rd_file" et je ne veux pas changer le nom dans la requête. Existe-t-il une syntaxe permettant de copier le nom du fichier dans la partie du cercle rouge de l'image suivante ?

Toute aide/orientation est appréciée.
Salut @Jacksmith12 ,
Pour les autres, l'un des meilleurs enseignants pour écrire JSL à l'aide de JMP consiste à effectuer d'abord les étapes de manière interactive, puis à demander à JMP d'écrire le script.
J'aimerais vous suggérer de regarder des vidéos d'instructions à l'aide de JMP Query Builder de notre série en ligne Maîtriser JMP.
Tutoriels supplémentaires sur la gestion des données à l'aide de JMP Query Builder de notre série Discovery Summit .
Pour étendre la jointure entre des tables supplémentaires, le processus général est le même que celui indiqué précédemment avec deux tables.
à votre santé,
Stan