Zum Inhalt

Filter

Alvine.Package.Platform.Filter.buildAndFilter('field1=1 AND field2=true AND field3="text"');

Das Ergebnis diese Aufrufs sind drei Filterobjekte mit den Namen field1, field2 und field3 und den Werten 1, true und text. Die Typen der einzelnen Werte sind dabei int, bool und string.

Hinweis

Dieser Parser liefert nur bei UND-Verknüpfungen ein Ergebnis zurück und schmeißt bei ODER-Verknüpfung eine Exception.

q=Alvine.Package.Platform.Filter.buildAndFilter('f="2" AND f=5');

console.log(q.toString());
>> f="2" AND f=5

Filter-Objekt

Ein Filter besteht aus dem optionalen Tabellennamen, dem Feldnamen, einem Operator und dem Wert.

Über die Methoden Filter.getField(), Filter.getOperator(), Filter.getTable() undFilter.getValue()können die Werte abgerufen werden. MitFilter.toString()` wird der Filter als Zeichenkette ausgegeben.

Tokenizer

Der Tokenizer sorgt dafür, das ein Query in einzelne Token zerlegt wird. Das Ergebnis ist eine Alvine.Types.Collection mit den einzelnen Token.

Das Token-Objekt besitzt die Eigenschaften type und value. Der Typ des Token kann 'TABLE', 'FIELD', 'OPERATOR', 'VALUE' oder 'CONJUNCTION' sein.

Als Operator kann der Typ 'EQ', 'NE', 'LE', 'LT', 'GE', 'GT', 'NOT' oder 'IN' sein.

Die Konjunktion kann 'AND' oder 'OR' sein.

uml diagram