| |

Fortgeschrittene ProgrammierungTextdatei bearbeiten | |  | Autor: Noura | Datum: 03.12.01 09:14 |
| Hallo zusammen!
Also,ich habe einen Code geschrieben mit dem ich ein Textdatei aus einer seriellen Schnittstelle auslesen kann ,diese Textdatei wird automatich in c:Test abgelegt ,hat 41 Zeilen und sie sieht so aus:
CHESTER;P2-G;045;1;945,7;18,36;1,94;
CHESTER;P2-G;045;2;931,3;18,81;2,02;
CHESTER;P2-G;045;3;934,5;17,57;1,88;
Auf der anderen Seite will ich diese Daten in verschiedenen Datenfeldern in 4 Tabellen
unterbringen.Diese Tabellen sind schon in einer Datenbank vorhanden.Jetzt will CHESTER in das Datenfeld "TabacName" der Tabelle Tabacsorte
P2-G in das Datenfeld "MaschName" der Tabelle tblMaschinen
045 in das Datenfeld "VersuchBez" der Tabelle tblVersuche
in der Tabelle tblMesswerte habe ich 4 Datenfeldern
" mwProbenNr "," "mwmittelgewicht"," mwStdAbw "," mwVC" und da will ich die Daten :
1;945,7;18,36;1,94;
2;931,3;18,81;2,02;
3;934,5;17,57;1,88; und das geht bis Zeile 41
einfügen.
Mein Code:
Public Sub Read()
Dim db As Database
Dim rstab As Recordset
Dim rsmasch As Recordset
Dim rsvers As Recordset
Dim rsmess As Recordset
Dim sSatz As String
Dim inSorte As String
Dim inMasch As String
Dim inPar As String
Dim inprob As String
Dim inmitgew As String
Dim instd As String
Dim invc As String
Dim i As Integer
Dim F As Byte
Set db = CurrentDb
Set rstab = db.OpenRecordset("Tabacsorte")
Set rsmasch = db.OpenRecordset("tblMaschinen")
Set rsmess = db.OpenRecordset("tblMesswerte")
Set rsvers = db.OpenRecordset("tblVersuche")
F = FreeFile()
Open "c:Testsource.txt" For Input As #F
While Not EOF(1) And i <= 41 'einschließlich Zeile 41
Line Input #F, sSatz
i = i + 1
inSorte = Left(sSatz, InStr(sSatz, ";") - 1)
sSatz = Right(sSatz, Len(sSatz) - InStr(sSatz, ";"))
inMasch = Left(sSatz, InStr(sSatz, ";") - 1)
sSatz = Right(sSatz, Len(sSatz) - InStr(sSatz, ";"))
inPar = Left(sSatz, InStr(sSatz, ";") - 1)
sSatz = Right(sSatz, Len(sSatz) - InStr(sSatz, ";"))
inprob = Left(sSatz, InStr(sSatz, ";") - 1)
sSatz = Right(sSatz, Len(sSatz) - InStr(sSatz, ";"))
inmitgew = Left(sSatz, InStr(sSatz, ";") - 1)
sSatz = Right(sSatz, Len(sSatz) - InStr(sSatz, ";"))
instd = Left(sSatz, InStr(sSatz, ";") - 1)
sSatz = Right(sSatz, Len(sSatz) - InStr(sSatz, ";"))
invc = Left(sSatz, InStr(sSatz, ";") - 1)
rsmess.AddNew
rsmess("mwProbennr") = inprob
rsmess("mwMittelgewicht") = inmitgew
rsmess("mwStdAbw") = instd
rsmess("mwVC") = invc
rsmess.Update
Wend
rstab.AddNew
rstab("Tabacname") = inSorte
rstab.Update
rsmasch.AddNew
rsmasch("MaschName") = inMasch
rsmasch.Update
rsvers.AddNew
rsvers("VersuchBez") = inPar
rsvers.Update
Close #F
rsmess.Close
rstab.Close
rsmasch.Close
rsvers.Close
db.Close
End Sub
Mein Probleme: Da eine 1:n Beziehung mit referentieller Integrität zwischen den Tabellen definiert wurde , werden
nach dem Ausführen nur die Datenfelder "Tabacname"und "MaschName" aktualisiert
Die Anderen Datenfelder in den Tabelle "tblVersuche" und "tblmesswerte" werden nicht
aktualisiert
Ich hoffe daß mir jemand helfen kann,für jede Hilfe bin ich sehr Dankbar. |  |
 | Sie sind nicht angemeldet! Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.
Einloggen | Neu registrieren |
  |
|
vb@rchiv CD Vol.6 vb@rchiv Vol.6
Geballtes Wissen aus mehr als 8 Jahren vb@rchiv!
Online-Update-Funktion Entwickler-Vollversionen u.v.m.Jetzt zugreifen Tipp des Monats Oktober 2025 Matthias KozlowskiUmlaute konvertierenErsetzt die Umlaute in einer Zeichenkette durch die entsprechenden Doppelbuchstaben (aus ä wird ae, usw.) Neu! sevCoolbar 3.0 
Professionelle Toolbars im modernen Design!
Mit sevCoolbar erstellen Sie in wenigen Minuten ansprechende und moderne Toolbars und passen diese optimal an das Layout Ihrer Anwendung an (inkl. große Symbolbibliothek) - für VB und MS-Access Weitere Infos
|