Verehrte Gäste,
Ich bitte Sie um Ihren Expertenrat zum folgenden Thema, da ich mit JMP-Skripting wirklich neu bin.
Ich habe über den Abfrage-Builder eine SQL-Abfrage (unsichtbar) erstellt, benötige aber Hilfe bei Folgendem:
- Fordern Sie den Benutzer auf, eine Datentabellendatei einzufügen Name (Popup-Fenster);
- Datum und Uhrzeit hinzufügen ( ddmonyyyy:h:m:s ) in die Ausgabedatentabelle
Was ich als Skript geschafft habe, ist hier unten:
Names Default To Here( 1 );
dt=New SQL Query(
Version( 130 ),
Connection(
"ODBC:DSN=DB001.00.G_FE_JMP15;DBQ=Y:\OFFICIAL_DATABASES\QA_Admin\Stability\DB001.00.G.StabilityStudies_FE_StudiesCompiler_JMP15.accdb;DriverId=25;FIL=MS Access;MaxBufferSize=2048;PageTimeout=5;UID=admin;"
),
QueryName( "Query_DB001.00.G.StabilityStudies_FE_StudiesCompiler_10Jun2021" ),
Select(
Column( "StudyID", "t1" ),
Column( "TimePointID", "t1" ),
Column( "StabilityClimaticConditions", "t1" ),
Column( "TestMonth", "t1" ),
Column( "ProgramComments", "t1" ),
Column( "Test1", "t1" ),
Column( "Test1Specification", "t1" ),
Column( "Test1Units", "t1" ),
Column( "Test 01", "t1" ),
Column( "intTest1", "t1" ),
Column( "Test2", "t1" ),
Column( "Test2Specification", "t1" ),
Column( "Test2Units", "t1" ),
Column( "Test 02", "t1" ),
Column( "intTest2", "t1" ),
Column( "Test3", "t1" ),
Column( "Test3Specification", "t1" ),
Column( "Test3Units", "t1" ),
Column( "Test 03", "t1" ),
Column( "intTest3", "t1" ),
Column( "Test4", "t1" ),
Column( "Test4Specification", "t1" ),
Column( "Test4Units", "t1" ),
Column( "Test 04", "t1" ),
Column( "intTest4", "t1" ),
Column( "Test5", "t1" ),
Column( "Test5Specification", "t1" ),
Column( "Test5Units", "t1" ),
Column( "Test 05", "t1" ),
Column( "intTest5", "t1" ),
From( Table( "qry_ResultsUnion01_35", Alias( "t1" ) ) ),
Where(
EQ(
Column( "StudyID", "t1" ),
_AllRows_,
UI(
Comparison(
Base(
"Continuous",
Prompt(
"StudyID:",
Character,
PromptName( "t1.StudyID_1" )
)
)
)
)
) & In List(
Column( "StabilityClimaticConditions", "t1" ),
_AllRows_,
UI(
SelectListFilter(
ListBox,
Base(
"Categorical",
Prompt(
"StabilityClimaticConditions:",
Character,
PromptName( "t1.StabilityClimaticConditions_1" )
)
)
)
)
)
)
) << Run Background(invisible);
nw = New Window( "Name data table",
<<MODAL></MODAL>Vielen Dank,
F
Höchstwahrscheinlich ist die Ausführung Ihres Skripts abgeschlossen, bevor die neue Abfrage (.
Versuchen Sie, die Abfrage im Vordergrund statt im Hintergrund auszuführen, ODER verwenden Sie modal vor der Abfrage, um Werte vom Benutzer abzurufen, und verwenden Sie das Postquery-Skript, um den Namen nach Abschluss der Abfrage zu ändern.
Danke für deine Antwort!
Ich habe immer noch ein Problem auf dieser Ebene:
dt << set name( nw["tableName"] );
Die Fehlermeldung, die ich erhalte, ist hier unten

Könnten Sie mir bitte bei der Lösung helfen?
Danke noch einmal,
F
Versuchen Sie, Ihre letzte if-Anweisung wie folgt zu ändern. Dadurch wird sowohl Ihre Tabellenname-Referenz korrigiert als auch die Schrägstriche und Doppelpunkte entfernt, die Ihr Problem wahrscheinlich verursacht haben:
//ask where to save the file (could skip this or define it in code)
fldr = pick directory( "Select where to save the file", "$Temp" );
//Save the file
If( nw["button"] == 1 & nw["tableName"] != "",
dt << set name( nw["tableName"] );
dt << save as( fldr || nw["tableName"] || Format Date( Today(), "yyyymmdd" ) || "-" || Char( Hour( Today() ) ) || Char( Minute( Today() ) ) || Char( Second( Today() ) ) || ".jmp");
);
//Open directory where file was saved (not needed)
Open(fldr);