Hallo ihr lieben
Mein Programm steht kurz vor der Vollendung. Nach langem habe ich aber mal wieder eine Frage.
Ich habe mir eine Userform gebastelt, mit der ich Bestellungen täten möchte.
Hierzu wähle ich einen, oder mehrere, Lieferanten aus und filtere meine Artikelliste (bzw. die BSArtikel) nach diesen Lieferanten.
Zusätzlich hat noch jeder Artikel eine Kategorie. Nach Änderung des BSCurrent aus der Kategorie Bindingsource, sollen die Artikel zusätzlich nach dieser Kategorie gefiltert werden. Soweit kein Problem.
Es werden mir allerdings in meiner BSKategorie alle vorhandenen Kategorien angezeigt. Ich möchte, dass nur Kategorien erscheinen, die auch in den Artikeln der gefilterten BSArtikel auftauchen.
Mir fällt aber kein Ansatz ein, wie ich das bewerkstelligen kann. Dabei müssen die Kategorien natürlich nicht über eine BindingSource angesprochen werden. Der User soll die Kategorien in einem DGV auswählen können. Wie Sie darein kommen (BS, List( Of ...), ist mir wurscht.
Hier der bisherige Code:
und ein Screenshot des DataSet (bisschen abgeschnitten - aber das Relevante ist drauf.
*Topic verschoben*
Mein Programm steht kurz vor der Vollendung. Nach langem habe ich aber mal wieder eine Frage.
Ich habe mir eine Userform gebastelt, mit der ich Bestellungen täten möchte.
Hierzu wähle ich einen, oder mehrere, Lieferanten aus und filtere meine Artikelliste (bzw. die BSArtikel) nach diesen Lieferanten.
Zusätzlich hat noch jeder Artikel eine Kategorie. Nach Änderung des BSCurrent aus der Kategorie Bindingsource, sollen die Artikel zusätzlich nach dieser Kategorie gefiltert werden. Soweit kein Problem.
Es werden mir allerdings in meiner BSKategorie alle vorhandenen Kategorien angezeigt. Ich möchte, dass nur Kategorien erscheinen, die auch in den Artikeln der gefilterten BSArtikel auftauchen.
Mir fällt aber kein Ansatz ein, wie ich das bewerkstelligen kann. Dabei müssen die Kategorien natürlich nicht über eine BindingSource angesprochen werden. Der User soll die Kategorien in einem DGV auswählen können. Wie Sie darein kommen (BS, List( Of ...), ist mir wurscht.
Hier der bisherige Code:
VB.NET-Quellcode
- Public Class UCBestellung
- Private _ListOfCompaniesToOrder As New List(Of DtsDaten.LieferantRow)
- Public Sub SetCompanyToOrder(company As DtsDaten.LieferantRow)
- If Not _ListOfCompaniesToOrder.Contains(company) Then _ListOfCompaniesToOrder.Add(company)
- FilterItemsBySupplier()
- End Sub
- Private Sub FilterItemsBySupplier()
- BSArtikel.Filter = $"LieferantID = {_ListOfCompaniesToOrder(0).ID}"
- If _ListOfCompaniesToOrder.Count > 1 Then
- For Each company In _ListOfCompaniesToOrder
- BSArtikel.Filter &= $" OR LieferantID = {company.ID}"
- Next
- End If
- End Sub
- End Class
und ein Screenshot des DataSet (bisschen abgeschnitten - aber das Relevante ist drauf.
*Topic verschoben*
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „Marcus Gräfe“ ()