Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!
versuche schon seit einiger Zeit meinen eigenen File Header zu erstellen und diesen dann mit einem ExpressVI zu verbinden.
Also Ziel ist es am Anfang meines Programmes den Anwender eine Ordnerwahl zu ermöglichen, daraufhin Benutzerdaten einzugeben und anschließend soll
das vorgefertigte ExpressVI nur noch die ankommenen Daten (nach Durchlauf des Programmes) an die zuvor erstellte txt-Datei anhängen.
Habe mir gedacht, ich erzeuge ein Feld indem die Stings eingetragen werden. Danach wollte ich per lokaler Variable die erstellten Informationen
in das ExpressVI weitergeben.
Ich habe mir das wie im angehangenen Bild gedacht. Leider wird nichts in meine .txt Datei hinzugefügt.
Wäre für eure Hilfe dankbar.
Gruß,
Safa
Anzeige
08.08.2010, 12:15 (Dieser Beitrag wurde zuletzt bearbeitet: 08.08.2010 12:15 von wolfmichael.)
8.2.1, 8.5.1, 2013 FullDev+Vision+AppBuilder
2007
DE
09599
Deutschland
eigener File Header mit ExpressVI verknüpfen
Hi,
LV wird schon Daten in eine Datei schreiben, nur sind diese zum Zeitpunkt des Aufrufs der Express-VI eben halt noch leer (die Variable "Header String" ist beim Aufruf des Speichern-VI's noch unbelegt. Wenn du den Ausgang deines Konstruktes direkt verdrahtest und nicht über die Variable verknüpfst, könnte es funktionieren, weil du nur dann gewährleistest, das dem Schreiben-VI alle Daten zur Verfügung stehen, bevor es "in Aktion tritt".
--------------------------------------------------------
...und immer auf den String achten...
--------------------------------------------------------
Wenn ich Dich richtig verstanden habe, dann soll ich einfach die Variable "Header String" entfernen dessen Draht in den Kommentar des ExpressVIs packen?!
Ich habe das nun ausprobiert, leider ohne Erfolg
Es erscheinen keine der eingegebenen Benutzerdaten in der txt-Datei
was mache ich falsch?
Gruß,
Safa
08.08.2010, 17:17 (Dieser Beitrag wurde zuletzt bearbeitet: 08.08.2010 18:26 von wolfmichael.)
8.2.1, 8.5.1, 2013 FullDev+Vision+AppBuilder
2007
DE
09599
Deutschland
eigener File Header mit ExpressVI verknüpfen
Hmm,
dieses Express-VI scheint nur dann Kommentare zu schreiben, wenn Du auch den Eingang "Signale" verdrahtest. Also ich persönlich meide diese Express-VI's gern, weil ich gern wirklich bestimme, was passiert. Warum bereitest Du deinen Fileheader nicht als String-Array vor, konvertierst Deine im Programmablauf generierten Daten (ob Benutzereingaben oder Messwerte) dann ebenfalls in ein String-Array und schreibst das alles zusammen mit dem VI "Datei-I/O" / "Tabellenkalkulationsdatei schreiben" als Tabstoppgetrennten 2D-String in eine Datei (s. Screenshot LV 8.5.1) ?
Gruß Micha
--------------------------------------------------------
...und immer auf den String achten...
--------------------------------------------------------
vielen dank für deine Antwort. Ich habe versucht das ganze nun in mein Hauptprogramm umzusetzen. Leider schaffe ich es nicht, dass LabView den File-Header erstellt UND die Daten anfügt
=>Die Datentypen passen leider nicht zusammen.
Warum speichert deine Version eigentlich ein Dokument ohne Endung, wie zum Beispiel txt, oder xlsx?
danke schonmal für deine Hilfe.
Wäre dankbar, wenn du mir nochmals bei dem Problem helfen könntest: Also LabView soll erst den File-Header in die Datei schreiben und dann die ankommenden Daten an die erstellte Datei anhängen.
Die im roten Kreis markierten elemente schreiben die Datei.
Gruß,
Safa
wenn Du Wolfmichaels Screenshot anschaust, wird Dir auffallen, daß dort kein ExpressVi zu finden ist.
Ich empfehle Dir wärmstens Dich recht zügig von den ExpressVIs zu lösen.
Für einen kleinen Test im Labor, um schnell ein paar Daten zu erheben und als Hilfsmittel für den NI-Vertrieb mögen diese Dinger ja brauchbar sein. Wer aber Anwendungen schreibt, bei denen nicht unnötiger Overhead mit geschleift wird und bei denen man genau was was passiert, sind nur Basis Vis angesagt.
Du bist schon an einem Punkt, wo das ExpressVi nicht ganz Deinen Vorstellungen trifft. Das dann hinzubiegen ist oftmals garnicht möglich.
Schau Dir nochmals Wolfmichaels Beispiel an. Damit bist Du flexibel und kannst auch die nächsten Wünsche problemlos realisieren. Nebenbei programmierst Du dann auch noch sauberer.
vielen Dank für eure Hilfe. Ich habe es leider nicht ganz ohne Express VIs hinbekommen. Ich habe nun das Problem (leider) über einen Umweg gelöst.
=> Die Datei wird einfach doppelt angesprochen, sodass erst der File-Header gespeichert wird und das ExpressVI nur noch die Daten anhängt.
Danke für eure Hilfe. Ich werde bald nochmal auf euch zu kommen, da es mich interessiert, wie ich dieses Problem geschickter lösen kann.