Verehrte Gäste,
Ich bin beim Erstellen des C# JMP-Automatisierungsprogramms in Schwierigkeiten geraten,
Nachdem ich eine CSV-Datei geöffnet habe, kann ich keinen Befehl finden, um die erste Zeile als Kopfzeile zu erstellen.
Hier ist mein bisheriger Code, bitte geben Sie mir eine Idee oder Hilfe ...
JMP.Dokument doc, doc2;
JMP.TextImport ti;
JMP.DataTable jmpDT, jmpRT;
startJMP();
doc = myJMP.OpenDocument(jmpInstallDir + "Samples\\Data\\1111.CSV");
jmpDT = doc.GetDataTable();
meinJMP.Visible = true;
jmpDT.SelectRows(0, 49);
jmpDT.SelectRows(51, 53);
jmpDT.DeleteSelectedRows();
jmpDT.SelectRows(1, 1);
Hallo gzmorgan,
Eindrucksvoll!!! Es klappt,
Danke für die tolle Beratung 
Mario.Choi
Ich schlage vor, dass Sie die JMP-Automatisierungsreferenz lesen und nach Textimport suchen. Nachfolgend finden Sie einen Auszug und einen Teil eines VB-Automatisierungsbeispiels für den Textimport.
Ich finde JSL einfacher zu verwenden, also sollten Sie vielleicht nachschlagen, wie Sie JSL in Ihrem C-Skript ausführen.
ColumnNamesStart(StartLine als ganze Zahl)
Gibt die Startzeile für Spaltenüberschriften an. Dies impliziert, dass die Datei Spaltenüberschriften hat, also a
Ein positiver Wert vermeidet hier den Aufruf von FirstLineIsData(False). Die Zeile, die enthält
Spaltennamen müssen vor der ersten Datenzeile stehen.
DataStarts(StartLine als ganze Zahl)
Gibt die Startzeile für die Zeilendaten an. Wenn die angegebene Zahl 1 ist, dann wird impliziert, dass dort
sind keine Spaltenüberschriften. Ein Aufruf von FirstLineIsData(True) ist in diesem speziellen Fall nicht erforderlich.
FirstLineIsData (Flag als boolescher Wert)
Gibt an, ob die erste Zeile der Textdatei als Daten oder als Spaltenüberschriften interpretiert werden soll. WAHR
bedeutet Daten, False bedeutet Header.
OpenFile() als Dokument
Öffnet die Textdatei unter Verwendung der in den vorherigen Methoden angegebenen Optionen. Ein Document-Objekt
Zeiger zurückgegeben. Um einen Objektzeiger auf die zugrunde liegende Datentabelle abzurufen, verwenden Sie die GetDataTable
-Methode für das Dokumentobjekt.
Private Sub TestEOF_Click(ByVal eventSender As System.Object, ByVal eventArgs As System.EventArgs) Handles TestEOF.Click
TI1 = MyJMP.CreateTextImportObject(InstallDir & "\Samples\Import Data\EOF_space.TXT", 5)
' Set columns 1 and 3 as having type "Character"
' The default is "Numeric"
TI1.SetColumnType(1, JMP.colDataTypeConstants.dtTypeCharacter)
TI1.SetColumnType(3, JMP.colDataTypeConstants.dtTypeCharacter)
'Set space as the only end-of-field option
TI1.SetEndOfFieldOptions(JMP.jmpTIEndOfFieldConstants.tiSpace)
'Set carriage return line feed as the end-of-line delimeter
TI1.SetEndOfLineOptions(JMP.jmpTIEndOfLineConstants.tiCRLF)
TI1.FirstLineIsData(True)
'Open the file
Doc1 = TI1.OpenFile
'Name the document window
Doc1.Name = "SPACE"
'Now open two more files. TI2 gets a file with spaces as
'end-of-field delimeters, TI3 gets one with commas.
TI2 = MyJMP.CreateTextImportObject(InstallDir & "\Samples\Import Data\EOF_spaces.TXT", 5)
TI2.SetColumnType(1, JMP.colDataTypeConstants.dtTypeCharacter)
TI2.SetColumnType(3, JMP.colDataTypeConstants.dtTypeCharacter)
TI2.SetEndOfFieldOptions(JMP.jmpTIEndOfFieldConstants.tiSpaces)
TI2.SetEndOfLineOptions(JMP.jmpTIEndOfLineConstants.tiCRLF)
TI2.FirstLineIsData(True)
Doc2 = TI2.OpenFile
Doc2.Name = "SPACES"
TI3 = MyJMP.CreateTextImportObject(InstallDir & "\Samples\Import Data\EOF_comma.TXT", 5)
TI3.SetColumnType(1, JMP.colDataTypeConstants.dtTypeCharacter)
TI3.SetColumnType(3, JMP.colDataTypeConstants.dtTypeCharacter)
TI3.SetEndOfFieldOptions((JMP.jmpTIEndOfFieldConstants.tiComma))
TI3.SetEndOfLineOptions((JMP.jmpTIEndOfLineConstants.tiCRLF))
TI3.FirstLineIsData((True))
Doc3 = TI3.OpenFile
Doc3.Name = "COMMA"
End Sub