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.