home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Programming Tool Box
/
SIMS_2.iso
/
bp_6_93
/
vbwin
/
vbaccess
/
kunde.txt
< prev
next >
Wrap
Text File
|
1995-02-26
|
5KB
|
214 lines
Option Explicit
Const CMD_NORMAL = 0
Const CMD_REF = 1
Const CMD_PARAM = 2
Const CMD_REST = 3
Sub cmdAktion_Click (Index As Integer)
'alle Command-Buttons sind als Array aufgebaut
Select Case Index
Case CMD_NORMAL
Delete_Kunde (Val(Text1))
Case CMD_REF
Delete_Kunde_2 (Val(Text1))
Case CMD_PARAM
Delete_Kunde_3 (Val(Text1))
Case CMD_REST
Copy_Tabelle
End Select
'Daten haben sich geΣndert
data1.Refresh
End Sub
Sub Copy_Tabelle ()
Dim QDelete As Querydef
'wiederherstellen der Tabellen in den Originalzustand
'dazu zuerst Original-Tabellen l÷schen (Kunde und Komm)
Set QDelete = db1.OpenQueryDef("Kunde komplett l÷schen")
QDelete.Execute
QDelete.Close
Set QDelete = Nothing
'ⁿbergabeparameter zum Umkopieren sind Ziel und Herkunftstabelle
MoveTabelle "Kunde", "Kunde_Rest"
MoveTabelle "Komm", "Komm_Rest"
End Sub
Sub Delete_Kunde (lkDnr As Long)
'mit oder ohne ref.IntegritΣt
'ohne L÷schweitergabe
Dim QDelete As Querydef
Dim sql As String
'Zuerst Komm-Daten l÷schen
sql = "DELETE DISTINCTROW Komm.KDNummer, * "
sql = sql & "FROM Komm "
sql = sql & "WHERE ((Komm.KDNummer=" & Str$(lkDnr) & "));"
Set QDelete = db1.CreateQueryDef("DelKomm", sql)
QDelete.Execute
QDelete.Close
'angelegte Query l÷schen
db1.DeleteQueryDef ("DelKomm")
sql = "DELETE DISTINCTROW Kunde.Nummer, * "
sql = sql & "FROM Kunde "
sql = sql & "WHERE ((Kunde.Nummer=" & Str$(lkDnr) & ")); "
Set QDelete = db1.CreateQueryDef("DelKunde", sql)
QDelete.Execute
QDelete.Close
'angelegte Query l÷schen
db1.DeleteQueryDef ("DelKunde")
End Sub
Sub Delete_Kunde_2 (lkDnr As Long)
'mit ref.IntegritΣt
'mit L÷schweitergabe
Dim QDelete As Querydef
Dim sql As String
sql = "DELETE DISTINCTROW Kunde.Nummer, * "
sql = sql & "FROM Kunde "
sql = sql & "WHERE ((Kunde.Nummer=" & Str$(lkDnr) & ")); "
Set QDelete = db1.CreateQueryDef("DelKunde_und_Komm", sql)
QDelete.Execute
QDelete.Close
'angelegte Query l÷schen
db1.DeleteQueryDef ("DelKunde_und_Komm")
End Sub
Sub Delete_Kunde_3 (lkDnr As Long)
'mit ref.IntegritΣt
'mit L÷schweitergabe
Dim QDelete As Querydef
Set QDelete = db1.OpenQueryDef("DelKundeP")
QDelete!lkDnr = lkDnr
QDelete.Execute
QDelete.Close
End Sub
Sub Form_Load ()
CenterForm Me
data1.DatabaseName = sMdb
Data2.DatabaseName = sMdb
End Sub
Function MdbCheck () As Integer
Dim it As Integer
Dim lmdb As Long
Dim sMsg As String
Dim iDgDef As Integer
Dim iResponse As Integer
Dim sTitel As String
Set tSettings = db1.OpenTable("Settings")
If tSettings!MdbVersion <> iVersion Then
tSettings.Close
MdbCheck = True
Exit Function
End If
If DaysBetweenDates&((tSettings!LastReorg), Datum) > 14 Then
sTitel = "Verdichtung"
sMsg = "Datenbank ist seit mehr als 14 Tagen nicht mehr komprimiert worden." + NL
sMsg = sMsg + "Wollen Sie jetzt verdichten ?" + NL
iDgDef = MB_YESNO + MB_ICONSTOP + MB_DEFBUTTON2
iResponse = MsgBox(sMsg, iDgDef, sTitel)
If iResponse = IDYES Then
tSettings.Close
If mdbVerdichten() Then
Set tSettings = db1.OpenTable("Settings")
tSettings.Edit
tSettings!LastReorg = Datum
tSettings.Update
End If
End If
End If
tSettings.Close
End Function
Sub mnuAboutInfo_Click ()
End Sub
Sub mnuEnd_Click ()
Unload Me
End Sub
Sub MoveTabelle (sZiel As String, sHerkunft As String)
Dim tZiel As Table
Dim tHerkunft As Table
Dim iCount As Integer
Set tZiel = db1.OpenTable(sZiel)
Set tHerkunft = db1.OpenTable(sHerkunft)
tHerkunft.MoveFirst
BeginTrans
Do While tHerkunft.EOF = False
tZiel.AddNew
For iCount = 0 To tHerkunft.Fields.Count - 1
tZiel.Fields(iCount) = tHerkunft.Fields(iCount)
Next
tZiel.Update
tHerkunft.MoveNext
Loop
CommitTrans
tZiel.Close
Set tZiel = Nothing
tHerkunft.Close
Set tHerkunft = Nothing
End Sub
Sub Text1_Change ()
Dim sql As String
Dim sPartner As String
Dim sTelefon As String
'Aufbau einer SQL-Abfrage mit Einbindung der Kunden-Nummer
sql = "SELECT DISTINCTROW Komm.Telefon, Komm.Partner "
sql = sql & "FROM Kunde INNER JOIN Komm ON Kunde.Nummer = "
sql = sql & "Komm.KDNummer "
sql = sql & "WHERE ((Komm.KDNummer=" & Text1.Text & ")); "
'Zuweisung
Data2.RecordSource = sql
Data2.Refresh
List1.Clear
'wenn kein Eintrag, Abbruch
If Data2.Recordset.BOF Then Exit Sub
'Durchlaufe das Dynaset und fⁿlle das Dynaset
Do While Data2.Recordset.EOF = False
sPartner = Data2.Recordset!Partner & ""
sTelefon = Data2.Recordset!Telefon & ""
List1.AddItem sPartner + Chr$(9) + sTelefon
Data2.Recordset.MoveNext
Loop
End Sub