Forums Neueste Beiträge
 

VB 2005: Query auf verknuepfte Accesstabellen funktioniert nicht.

13/01/2010 - 17:25 von Christina | Report spam
Hallo liebe NG,
ich habe zwei Tabellen hierarchisch verknuepft (Feld SRNr) in der
MSchulungDataSet.XSD

Ein verknuepftes Feld (SRhythmus) wird in einer Combobox angezeigt.

Mit Queries in der MSchulungDataSet.XSD steuere ich die Anzeige in der Maske
ueber Schaltflaechen.
Entweder alle Datensaetze, nur Aktive DS oder Inaktive DS.

Die Queries sehen so aus:
Tabelle 1:
Fill():
SELECT Id, SNr, Schulung, SRNr, Alle, DeAkt
FROM Schulungen ORDER BY Schulung

FillByAktiv():
SELECT Alle, DeAkt, Id, SNr, SRNr, Schulung
FROM Schulungen WHERE (DeAkt = 0) ORDER BY Schulung

FillByDeAkt():
SELECT Alle, DeAkt, Id, SNr, SRNr, Schulung
FROM Schulungen WHERE (DeAkt = - 1) ORDER BY Schulung

Tabelle 2:
Fill()
SELECT DeAkt, Id, SRNr, SRhythmus FROM Rhythmus WHERE (DeAkt = 0) ORDER BY
SRhythmus

Der Aufruf:
Private Sub frmSchulung_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Me.RhythmusTableAdapter.Fill(Me.MSchulungenDataSet.Rhythmus)

Me.SchulungenTableAdapter.FillByAktiv(Me.MSchulungenDataSet.Schulungen)
Me.btnAlle.ForeColor = Color.Black
Me.btnAktiv.ForeColor = Color.Red 'wird gerade angezeigt
Me.btnDeaktiviert.ForeColor = Color.Black
End Sub

Private Sub btnAlle_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAlle.Click
Me.RhythmusTableAdapter.Fill(Me.MSchulungenDataSet.Rhythmus)
Me.SchulungenTableAdapter.Fill(Me.MSchulungenDataSet.Schulungen)
Me.btnAlle.ForeColor = Color.Red 'wird gerade angezeigt
Me.btnAktiv.ForeColor = Color.Black
Me.btnDeaktiviert.ForeColor = Color.Black
End Sub

Private Sub btnAktiv_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAktiv.Click
Me.RhythmusTableAdapter.Fill(Me.MSchulungenDataSet.Rhythmus)

Me.SchulungenTableAdapter.FillByAktiv(Me.MSchulungenDataSet.Schulungen)
(Me.MSchulungenDataSet.Schulungen)
Me.btnAlle.ForeColor = Color.Black
Me.btnAktiv.ForeColor = Color.Red 'wird gerade angezeigt
Me.btnDeaktiviert.ForeColor = Color.Black
End Sub

Private Sub btnDeaktiviert_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnDeaktiviert.Click
Me.RhythmusTableAdapter.Fill(Me.MSchulungenDataSet.Rhythmus)

Me.SchulungenTableAdapter.FillByDeAkt(Me.MSchulungenDataSet.Schulungen)
Me.btnAlle.ForeColor = Color.Black
Me.btnAktiv.ForeColor = Color.Black
Me.btnDeaktiviert.ForeColor = Color.Red 'wird gerade angezeigt
End Sub

Beim Laden des Formulars wird das verknuepfte Feld in der Combo noch
angezeigt.
Jedes Mal, wenn ich auf die Schaltflaeche "Alle" klicke, dann verschwindet
der Combo-Eintrag.
Klicke ich dann auf die Schaltflaeche "Aktive", ist der Combo-Eintrag noch
nicht wieder da.
Klicke ich dann auf die Schaltflaeche "Deaktiviert", ist der Combo-Eintrag
wieder da.

Kann mir Jemand sagen, woran das liegen koennte?

Vielen Dank vorab und beste Gruesse
Christina
 

Lesen sie die antworten

#1 Björn Stüber
13/01/2010 - 21:02 | Warnen spam
Hallo Christina,

hast Du bei btnAktiv wirklich 2x '(Me.MSchulungenDataSet.Schulungen)'
hintereinander?
Hast Du mal bei allen Actionen nur die funktionierende FillByDeAkt
eingetragen bzw. vertauscht... wenn das klappt muß es an den Fills
liegen...dann mal probieren bei allen Fill Methoden die Syntax von
FillByDeAkt einzutragen... wenn das dann bei allen klappt muß es am
unterschiedlichen SQL Statement liegen. evtl. hilft ja ein <> -1 .. ich
kenne Deine DB natürlich nicht.

Gruß

Björn


Am 13.01.2010 17:25, schrieb Christina:
Hallo liebe NG,
ich habe zwei Tabellen hierarchisch verknuepft (Feld SRNr) in der
MSchulungDataSet.XSD

Ein verknuepftes Feld (SRhythmus) wird in einer Combobox angezeigt.

Mit Queries in der MSchulungDataSet.XSD steuere ich die Anzeige in der Maske
ueber Schaltflaechen.
Entweder alle Datensaetze, nur Aktive DS oder Inaktive DS.

Die Queries sehen so aus:
Tabelle 1:
Fill():
SELECT Id, SNr, Schulung, SRNr, Alle, DeAkt
FROM Schulungen ORDER BY Schulung

FillByAktiv():
SELECT Alle, DeAkt, Id, SNr, SRNr, Schulung
FROM Schulungen WHERE (DeAkt = 0) ORDER BY Schulung

FillByDeAkt():
SELECT Alle, DeAkt, Id, SNr, SRNr, Schulung
FROM Schulungen WHERE (DeAkt = - 1) ORDER BY Schulung

Tabelle 2:
Fill()
SELECT DeAkt, Id, SRNr, SRhythmus FROM Rhythmus WHERE (DeAkt = 0) ORDER BY
SRhythmus

Der Aufruf:
Private Sub frmSchulung_Load(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles MyBase.Load
Me.RhythmusTableAdapter.Fill(Me.MSchulungenDataSet.Rhythmus)

Me.SchulungenTableAdapter.FillByAktiv(Me.MSchulungenDataSet.Schulungen)
Me.btnAlle.ForeColor = Color.Black
Me.btnAktiv.ForeColor = Color.Red 'wird gerade angezeigt
Me.btnDeaktiviert.ForeColor = Color.Black
End Sub

Private Sub btnAlle_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAlle.Click
Me.RhythmusTableAdapter.Fill(Me.MSchulungenDataSet.Rhythmus)
Me.SchulungenTableAdapter.Fill(Me.MSchulungenDataSet.Schulungen)
Me.btnAlle.ForeColor = Color.Red 'wird gerade angezeigt
Me.btnAktiv.ForeColor = Color.Black
Me.btnDeaktiviert.ForeColor = Color.Black
End Sub

Private Sub btnAktiv_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnAktiv.Click
Me.RhythmusTableAdapter.Fill(Me.MSchulungenDataSet.Rhythmus)

Me.SchulungenTableAdapter.FillByAktiv(Me.MSchulungenDataSet.Schulungen)
(Me.MSchulungenDataSet.Schulungen)
Me.btnAlle.ForeColor = Color.Black
Me.btnAktiv.ForeColor = Color.Red 'wird gerade angezeigt
Me.btnDeaktiviert.ForeColor = Color.Black
End Sub

Private Sub btnDeaktiviert_Click(ByVal sender As System.Object, ByVal e As
System.EventArgs) Handles btnDeaktiviert.Click
Me.RhythmusTableAdapter.Fill(Me.MSchulungenDataSet.Rhythmus)

Me.SchulungenTableAdapter.FillByDeAkt(Me.MSchulungenDataSet.Schulungen)
Me.btnAlle.ForeColor = Color.Black
Me.btnAktiv.ForeColor = Color.Black
Me.btnDeaktiviert.ForeColor = Color.Red 'wird gerade angezeigt
End Sub

Beim Laden des Formulars wird das verknuepfte Feld in der Combo noch
angezeigt.
Jedes Mal, wenn ich auf die Schaltflaeche "Alle" klicke, dann verschwindet
der Combo-Eintrag.
Klicke ich dann auf die Schaltflaeche "Aktive", ist der Combo-Eintrag noch
nicht wieder da.
Klicke ich dann auf die Schaltflaeche "Deaktiviert", ist der Combo-Eintrag
wieder da.

Kann mir Jemand sagen, woran das liegen koennte?

Ähnliche fragen