vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Blitzschnelles Erstellen von grafischen Diagrammen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Keywert aktueller Satz in Endlosformular auslesen 
Autor: Prian0815
Datum: 17.11.05 15:42

Hallo an alle.
Ich bin eben auf ein recht heikles Problem gestoßen. Ich bstle gerade eine Access DB zur Arbeitsplatzverwaltung zusammen. Dort kann man unteranderem zu einem ausgewähltenArbeitsplatz eines ausgewählten Mitarbeiters alle auf diesem Arbeitsplatz installierte Software ssehen und nötigenfalls über Auswahl aus einer ComboBox zusdätzliche Software zuweisen. Siehe folgender Code:
On Error GoTo Err_cboSoftware_AfterUpdate
hSofkeynr = cboSoftware.Column(0)
stSQL = ""
stSQL = "SELECT * from Software WHERE (((Software.SofKey)=" & hSofkeynr & "));"
Set rsSoft = New ADODB.Recordset
rsSoft.Open stSQL, con, adOpenStatic, adLockOptimistic
hAnz = rsSoft!SofLizinst
If hAnz = rsSoft!SofLizAnz Then 'Keine Lizenzen mehr verfügbar: Meldung ausgeben und abbrechen
Mldg = "Es stehen keine Lizenzen zur Installation zur Verfügung!"
Titel = "Keine Lizenz verfügbar!"
MsgBox Mldg, Stil_ok, Titel
Exit Sub
Else
hAnz = rsSoft!SofLizinst
hAnz = hAnz + 1 'Anzahl der installierten um 1 erhöhen
rsSoft!SofLizinst = hAnz
rsSoft.UpdateBatch
rsSoft.Close
Set rsSoft = Nothing
fromcbo = True
txtSofArbSoftwareNr.Value = cboSoftware.Column(0)
'txtSofKey.Value = cboSoftware.Column(0)
txtTitel.Value = cboSoftware.Column(1)
txtSofArbVersion.Value = cboSoftware.Column(2)
txtSofArbLizenznummer.Value = cboSoftware.Column(4)
txtSofArbAnlagenummer.Value = cboSoftware.Column(5)
fromcbo = False
End If
Err_cboSoftware_AfterUpdate:
If Err.Number <> 0 Then
MsgBox Err.Number & " " & Err.Description
Resume Exit_cboSoftware_AfterUpdate
End If

Exit_cboSoftware_AfterUpdate:
Exit Sub
End Sub
Das funzt soweit auch alles, wenn ich aber nun in demselben Unterformular einen Softwaresatz markiere und diesen mit 'Entf' lösche, muß ich ja auch die Anzahl der installatiionen verringern. dazu brauche ich aber den aktuell ausgewählten Softwarekey.Ich habe nun folgendes probiert:
Private Sub Form_BeforeDelConfirm(Cancel As Integer, Response As Integer)
hSofkeynr = txtSofKey.Value ---> hier wird falscher Wert ausgelesen

End Sub
Und dann:
Private Sub Form_AfterDelConfirm(Status As Integer)
stSQL = "SELECT Software.SofKey, Software.SofLizinst" _
& "FROM Software" _
& "WHERE (((Software.SofKey)=" & hSofkeynr & "));"
Set rsSoft = New ADODB.Recordset
rsSoft.Open stSQL, con, adOpenStatic, adLockOptimistic
hAnz = rsSoft!SofLizinst
hAnz = hAnz - 1 'Anzahl der installierten um 1 vermindern
rsSoft!SofLizinst = hAnz
rsSoft.UpdateBatch
rsSoft.Close
Set rsSoft = Nothing
Nur wird in der Prozedur Form_BeforeDelConfirm wenn mehrere Sätze im Endlosformular vorhanden sind, immer der falsche Wert ausgelesen.
Wie komme ich in einem Endlosformular an den aktuell markerten Satz heran?

Gruß Armin

P.S.: always look on the bright side of Life!
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Keywert aktueller Satz in Endlosformular auslesen979Prian081517.11.05 15:42
Re: Keywert aktueller Satz in Endlosformular auslesen556Prian081518.11.05 10:40

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

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

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