Zum Inhalt springen

lstfield.rowsource = Oracle Recordset???


Druid

Empfohlene Beiträge

Hallo Zusammen,

nun habe ich das nächste Problem:

Ich mache eine Connection zu einer Oracle DB auf (con)

Ich habe einen ADODB.Recordset (rs)

und eine sSQL Variable (Typ String)

Ich hole mir Daten aus Oracle:


sSQL = "select * from table"

rs.open sSQL, con, adOpenForwardOnly

Jetzt möchte ich das was im Recordset steht einem Listenfeld in der GUI

zuweisen!! Aber wie???

lstfield.rowsource = rs.???????

Wie mache ich das? Ich habe alles mögliche schon probiert..

Danke und Gruß

Druid :cool:

Link zu diesem Kommentar
Auf anderen Seiten teilen

    Dim i As Integer

    Dim j As Integer


    Dim itmx As ListItem


    lstvDaten.ColumnHeaders.Clear

    lstvDaten.ListItems.Clear


    lstvDaten.ColumnHeaders.Add , , "ID", 0


    If cboSpalten.ListIndex > -1 Then


        SpaltenName = cboSpalten.List(cboSpalten.ListIndex)


        Set Conn = New ADODB.Connection                      ' Conn wird als neue ADO Datenbank Verbindung anerkannt

        With Conn


            .Provider = "Microsoft Jet 4.0 OLE DB Provider"     ' Datenbankformat: Access 2000


            .ConnectionString = "Data Source=" & strAppPath & DBName & "" ' Datenquelle

            .Properties("Jet OLEDB:Database Password") = DBpw

            .Open                                               ' Verbindung öffnen


        End With


        Set RecSet = New Recordset

        With RecSet


            .ActiveConnection = Conn

            .CursorLocation = adUseClient

            .Source = "SELECT * FROM " & TabellenName & " WHERE " & SpaltenName & " <> """" AND " & SpaltenName & " IS NOT NULL"

            .Open


        End With


        For i = 1 To RecSet.Fields.Count - 1


            lstvDaten.ColumnHeaders.Add , , RecSet.Fields(i).Name, 1500


        Next i


        While Not RecSet.EOF


            Set itmx = lstvDaten.ListItems.Add


            For j = 1 To RecSet.Fields.Count - 1


                If Not IsNull(RecSet.Fields(j)) Then


                    itmx.SubItems(j) = RecSet.Fields(j)


                Else


                    itmx.SubItems(j) = ""


                End If


            Next j


            RecSet.MoveNext


        Wend


        RecSet.Close

        Set RecSet = Nothing

        Conn.Close

        Set Conn = Nothing


    Else


        MsgBox Err.Description, vbCritical + vbOKOnly


    End If

Ist mit einem Listview gemacht und mit einer Access DB.

Vielleicht hilft dir das. :WD

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi,

schonmal ne gute Idee.. mit Subitems hab ich mir auch überlegt.

Wenn ich aber Dim lsitx as ListItem machen will lässt er das nicht zu

weil es dass nicht gibt.

Ich hab auch keine Möglichkeit Subitems zu definieren.

Da fehlt mir wahrscheinlich ein Verweis oder?

Gruß

Druid :cool:

Link zu diesem Kommentar
Auf anderen Seiten teilen

naja bis das mit dem listview bei mir richtig gefunzt hat, hats auch 1-2 tage gedauert. Handbücher durchackern und Beispiel-Codes verstehen versuchen. :)

Was für n Betriebssystem hast du drauf?

Hab Win2000 SP4. Sonst ist die MWCC 6.0 nicht da nur die 5.0 oder niedriger. Meines wissens genügt es wenn man die Version 4.0 hat.

Link zu diesem Kommentar
Auf anderen Seiten teilen

ähm.. Du hast doch deine Leiste, wo deine Labels, picturebox, image commandbutton, combobox.. usw herbekommst. dort einfach rechtsklicken und auf komponenten gehen. Unter Steuerelementen kann du es dann auswählen.

Hey, bis vor ca 4 Monaten wußte ich auch nix davon! :WD

Link zu diesem Kommentar
Auf anderen Seiten teilen

das schlimme ist ja: ich wusste es schon mal und hab es schon mal gemacht.

Nur das war vor 1 1/2 Jahren während der Ausbildung. Und jetzt fang ich in

der Arbeit wieder das Programmieren an und merke wie schnell doch ein

Mensch vergessen kann... :eek:

Aber mal zum Thema. Die MCC find ich da auch nicht. Ich habe aber was

anderes gefunden: "Microsoft ListView Control 6.0" Da gibt es ListItems

und SubItems. Meinst du damit könnte es auch gehen?

Oder besser: Ich probiers einfach aus ;-)

Gruß

Druid :cool:

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...