|
| |

VB & Datenbanken| Datenbankabgleich / Protokolldatei erstellen | |  | | Autor: Dirk.B | | Datum: 26.04.12 15:14 |
| Hallo zusammen!
Ich habe mir ein Programm unter VBA / AutoCAD geschrieben, in dem ich ein Verzeichnis auswählen
kann und im Durchlauf die Dateinamen (Blocknamen) mit unseren Artikelbezeichnungen in einer Datenbank verglichen werden.
Sollten diese 1:1 übereinstimmen, so wird ein Verzeichnisstring zu dem Artikel in der Datenbank hinzugefügt.
Bei dem Wust an Daten ist es allerdings nicht mal eben nachzuhalten, wo es eben diese 1:1 überstimmungen gab und wo nicht.
Ich möchte mir nun gerne eine kleine Protokolldatei *.txt zu nutzen machen, in der hineingeschrieben wird, wo es 1:1 paßte und wo eben auch nicht, um zu Prüfen, ob der Dateiname oder die Artikelbezeichnung fehlerhaft ist.
Hier mal ein Teilausschnitt aus meinem Tool:
Private Sub cmdDurchlauf_Click()
'--Variablen für Verzeichnis / Dateiauswahl---------------------------------
Dim ImportPfad As String
Dim ExportPfad As String
Dim Dateiname As String
Dim SuchWert As String
Dim SuchErgebnisDWG As String
Dim SuchErgebnisPDF As String
'--ImportPfad und ExportPfad festlegen---------------------------------------
ImportPfad = TextBox1.Value & "\" 'Das Verzeichnis wird über Ordnerauswahl
' ausgewählt
ExportPfad = ImportPfad
'--Variablen Allgemein-------------------------------------------------------
Dim DateiZahl As String, i As Integer
i = 0
DateiZahl = Dir$(ImportPfad & "*.dwg")
If DateiZahl = "" Then GoTo MyErrorHandler
Do While DateiZahl <> ""
i = i + 1
DateiZahl = Dir$()
Loop
Dateiname = Dir(ImportPfad & "*.dwg")
'##--Datenbankanbindung an die SQL - Datenbank--!!!
Dim Cn As New ADODB.Connection
With Cn
.CursorLocation = "#######"
.Provider = "#######"
.ConnectionString = "Data Source='#######'; Initial Catalog='#######';User" & _
"ID='#######';Password='#######'"
.Open
End With
'--ab hier mein Test bislang--
Dim sFile As String
Dim F As Integer
sFile = ImportPfad & "\" & "\Protokoll.txt"
F = FreeFile
Open sFile For Output As #F
Print #F, "Folgende Block / Artikelverknüpfungen wurden erstellt: " & vbCrLf
Do While Dateiname <> ""
DoEvents
Me.Caption = ImportPfad & Dateiname
SuchWert = Left(Dateiname, Len(Dateiname) - 6)
SuchErgebnisDWG = ImportPfad & SuchWert & "_D.dwg"
SuchErgebnisPDF = ImportPfad & SuchWert & ".pdf"
DoEvents
'--eigentlich müßte ja hier die Abfrage lauten wenn dann, dann schreibe in die
' Protokolldatei
'--Bei folgenden Dateien kam es zu einer Übereinstimmung:
'--Blockname / Artikelbezeichnung
'--APV-150-STBL 65 mm APV-150-STBL 65 mm
'--usw.
'--Bei folgenden Dateien kam es zu keiner Übereinstimmung:
'--Blockname / Artikelbezeichnung
'--APV-150-STBL 85 mm
'--usw.
If OB_Update.Value = True Then
With Cn
.Execute "Update PROD_DEFINITION Set M_ZNAME_PLINE = '" & _
SuchErgebnisDWG & "' Where PD_NUM = '" & SuchWert & "'"
.Execute "Update PROD_DEFINITION Set M_ZEICHNUNGSNAME = '" & _
SuchErgebnisPDF & "' Where PD_NUM = '" & SuchWert & "'"
End With
End If
Print #F, ImportPfad & SuchWert; vbCrLf; SuchErgebnisPDF
Dateiname = Dir
Loop
Close #F
Cn.Close
Set Cn = Nothing
Exit Sub
MyErrorHandler:
MsgBox "Es wurde kein Verzeichnis ausgewählt", 64, "Hinweis"
End Sub Kann mir da jemand weiter helfen?
Das wäre echt super.
Vielen Dank im Voraus.
VG
Dirk |  |
 | 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 |
  |
|
sevOutBar 4.0 
Vertikale Menüleisten á la Outlook
Erstellen von Outlook ähnlichen Benutzer- interfaces - mit beliebig vielen Gruppen und Symboleinträgen. Moderner OfficeXP-Style mit Farbverläufen, Balloon-Tips, u.v.m. Weitere InfosTipp des Monats Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
| |
|
Copyright ©2000-2025 vb@rchiv Dieter Otter Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.
Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel
|
|