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-2024
 
zurück

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

VB.NET - Ein- und Umsteiger
String für RowFilter zusammensetzen 
Autor: Maclane
Datum: 23.06.07 21:03

Hallo

Das ist jetzt kein kritisches Problem sondern eher die Frage, ob man die folgende Sache nicht auch einfacher machen kann:

Ich hab ein Dataview und der Nutzer soll dort gut filtern können. Dafür gibt es mehrere Filter, die verschiedenartig miteinander kombiniert werden können.
Wenn ich nun den String für die RowFilter-Methode zusammensetzen will, merke ich, dass das eine Menge Schreibarbeit werden kann, abhängig von der Anzahl der Filter, die ich kombinieren will.

Mein erster Ansatz sah so aus:

        If worldfilter <> "" And terrainfilter <> "" And klimafilter <> "" Then
            filter = worldfilter & " AND (" & terrainfilter & ")" & " AND (" & _
              klimafilter & ")"
        ElseIf worldfilter <> "" And terrainfilter = "" And klimafilter = "" Then
            filter = worldfilter
        ElseIf worldfilter = "" And terrainfilter <> "" And klimafilter = "" Then
            filter = terrainfilter
        ElseIf worldfilter = "" And terrainfilter = "" And klimafilter <> "" Then
            filter = klimafilter
        ElseIf worldfilter <> "" And terrainfilter <> "" And klimafilter = "" Then
            filter = worldfilter & " AND (" & terrainfilter & ")"
        Elseif worldfilter <> "" And terrainfilter = "" And klimafilter <> "" Then
            filter = worldfilter & " AND (" & klimafilter & ")"
        Elseif
.....usw. usf....
 
        Else
            filter = ""
        End If
 
        HauptForm.prov1dv.RowFilter = filter
Man sieht schon, bei nur drei Filtern wird das viel Arbeit, alle Möglichkeiten abzuklappern. Und eigentlich wollt ich fünf Filter haben. Da schreib ich mich mit diesem Ansatz ja dumm und dusselig.

Ich kann ja leider nicht einfach so schreiben:
filter = worldfilter & " AND (" & terrainfilter & ")" & " AND (" & klimafilter _
  & ")"
Denn wenn dann z.B. der "terrainfilter" leer bleibt, sieht der String z.B. so aus
"Continent = 'Africa' AND () AND (Climate = 'Subtropic' OR Climate = 'Tropic')"
und durch das "AND ()" spuckt das Programm nen Fehler aus.

Wie kann ich denn meinen String möglichst einfach zusammensetzen, ohne jetzt für jede denkbare Kombination ne extra Zeile zu schreiben? Bei fünf oder noch mehr Filtern wird mir schon beim Gedanken daran schwarz vor vor Augen.
Jemand ne Idee? *lieb guggt*

Gruss Mac
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
String für RowFilter zusammensetzen867Maclane23.06.07 21:03
Re: String für RowFilter zusammensetzen601mikeb6924.06.07 00:58
Re: String für RowFilter zusammensetzen590Maclane24.06.07 07: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-2024 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