Hallo zusammen!
Ich habe hier ein Programm, mit dem ich mir Daten aus einer Datenbank in ein ListView ziehe
um damit innerhalb AutoCAD weiterarbeiten zu können.
Das funktioníert auch alles recht prima.
Nur haben wir eine Menge dan Daten die da gezogen werden und dabei giebts Vorzugsdaten (Artikel)
die in der ersten Spalte mit einem Icon - Entrag gekennzeichnet sind.
Diese stehen mit der normalen Sortierung in unterschiedlichsten Zeilen.
Die Artikel ohne Icon - Eintrag sollen auch im ListView sichtbar sein.
Nun meine Frage zu 2 Möglichkeiten:
1. Kann man das ListView so durchsortieren lassen, dass alle Artikel mit dem Icon in der ersten Spalte oben und alle anderen darunter angezeigt (sortiert) werden, wenn ja wie?
2. Wie kann ich mir nur die mit dem Icon in der ersten Spalte anzeigen lassen?
'---ListView Einstellungen----------------------------------------------
With ListView1
.ListItems.Clear
.ColumnHeaders.Clear
.View = lvwReport
.SmallIcons = ImageList1
End With
'---Spaltendefinition---------------------------------------------------
With ListView1.ColumnHeaders
.Add , , "DWG", 13 '(01)DWG / Zeichnung
' vorhanden
.Add , , "PDF", 13 '(02)PDF / Dokument
' vorhanden
.Add , , "Prüfung", 13 '(03)Prüfung / Ok - Nein
.Add , , "Artikelnummer", 70 '(04)Artikelnummer
.Add , , "Bezeichnung", 130 '(05)Bezeichnung
.Add , , "Bestelltext", 150 '(06)Bestelltext
.Add , , "(b + Ø) Breite", 40 '(07)Breite
.Add , , "(h) Höhe", 40 '(08)Höhe
.Add , , "(s) Wandungsstärke", 40 '(09)Wandungsstärke
.Add , , "(l) Länge", 40 '(10)Länge
.Add , , "EK-Preis", 40 '(11)EK-Preis
.Add , , "Gewicht", 40 '(12)Gewicht
.Add , , "Einheit", 30 '(13)Bestelleinheit
.Add , , "DWG - Pfad", 150 '(14)DWG - Verzeichnis
.Add , , "PDF - Pfad", 150 '(15)PDF - Verzeichnis
.Add , , "Lieferant", 40 '(16)Lieferant
.Add , , "Artikelnummer Lieferant", 40 '(17)Artikelnummer
' Lieferant
.Add , , "Materialsortierung", 50 '(18)Materialbezeichnung
.Add , , "Materialsort.-Nr.", 50 '(19)Materialsortierung
End With
'---ListView mit Datenbankinformationen füllen---------------------------
'Rs.MoveFirst
Do Until Rs.EOF
Set LItem = ListView1.ListItems.Add()
LItem.Text = "" '(01)DWG / Zeichnung
' vorhanden
LItem.SubItems(1) = "" '(02)PDF / Dokument
' vorhanden
LItem.SubItems(2) = "" '(03)Prüfung / Ok - Nein
LItem.SubItems(3) = (Rs!PD_NUM & "") '(04)Artikelnummer
LItem.SubItems(4) = (Rs!PD_BEZ & "") '(05)Bezeichnung
LItem.SubItems(5) = (Rs!M_Bestelltext & "") '(06)Bestelltext
LItem.SubItems(6) = (Rs!M_Breite & "") '(07)Breite
LItem.SubItems(7) = (Rs!M_Dicke & "") '(08)Höhe
LItem.SubItems(8) = (Rs!M_WANDUNG & "") '(09)Wandungsstärke
LItem.SubItems(9) = (Rs!M_Laenge & "") '(10)Länge
LItem.SubItems(10) = (Rs!M_EK_Preis & "") '(11)EK-Preis
LItem.SubItems(11) = (Rs!Gewicht & "") '(12)Gewicht
LItem.SubItems(12) = (Rs!M_Best_Einheit_ID & "") '(13)Bestelleinheit
LItem.SubItems(13) = (Rs!M_ZNAME_PLINE & "") '(14)DWG - Verzeichnis
If Len(LItem.SubItems(13)) > 0 Then
LItem.SmallIcon = 14
LItem.ListSubItems.Item(2).ReportIcon = 1
' Else
' LItem.ListSubItems.Item(2).ReportIcon = 6
End If
LItem.SubItems(14) = (Rs!M_ZEICHNUNGSNAME & "") '(15)PDF - Verzeichnis
If Len(LItem.SubItems(14)) > 0 Then
LItem.ListSubItems.Item(1).ReportIcon = 15
End If
LItem.SubItems(15) = (Rs!M_ADR_ID & "") '(16)Lieferant
LItem.SubItems(16) = (Rs!M_LIEF_PD_NUM & "") '(17)Artikelnummer
' Lieferant
LItem.SubItems(17) = (Rs!MATSORT_ID & "") '(18)Materialbezeichnung
LItem.SubItems(18) = (Rs!MS_SORTIERUNG & "") '(19)Materialsortierung
Rs.MoveNext
Loop
Rs.Close
Set Rs = Nothing
Cn.Close
Set Cn = Nothing Vielen Dank im Voraus.
VG
Dirk |