Sehr geehrte Damen und Herren,
Ich bitte um Ihren Expertenrat zu folgendem Thema, da ich wirklich neu im JMP-Skripting bin.
Ich habe eine SQL-Abfrage (unsichtbar) über den Abfrage-Generator erstellt, benötige jedoch Hilfe bei:
- Fordern Sie den Benutzer auf, die Datentabellendatei einzufügen Name (Popup-Fenster);
- Datum und Uhrzeit hinzufügen ( ddmonyyyy:h:m:s ) zur Ausgabedatentabelle
Was ich geschafft habe, ein Skript zu erstellen, 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
Versuchen Sie, Ihre letzte if-Anweisung so zu ändern, dass sowohl Ihre tableName-Referenz korrigiert als auch die Schrägstriche und Doppelpunkte entfernt werden, die wahrscheinlich Ihr Problem 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);
Danke für deine Antwort!
Ich habe noch ein Problem auf dieser Ebene:
dt << set name( nw["tableName"] );
Die Fehlermeldung, die ich erhalte, ist hier unten

Könnten Sie mir bitte helfen, es zu lösen?
Danke noch einmal,
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.