DBquery |
Top Previous Next |
Führt eine Abfrage über die Eigenschaften der Objekte oder Elemente aus.
Voraussetzung Es müssen entsprechende Daten geladen sein.
Syntax: DBquery(<felder> FROM {<selexpr>} <fromexpr> {<elemCond>} {/NOQUOTE}) Parameter Attribute oder Pseudoattribute der Objekte und Elemente, nach denen gesucht wird. Eine vollständige Liste der implementierten Pseudoattribute befindet sich in der Tabellenreferenz. Mehrere Werte werden durch Kommata getrennt. (optional) legt fest, auf welchen Objekten die Abfrage ausgeführt wird: OPEN Geöffnetes Objekt ALL Alle Objekte (keine Angabe) Objekte der Selektionsmenge legt fest, auf welchen Objekten / Elementen die Abfrage ausgeführt wird. Möglich sind: OBJECT ELEMENT TEXT ATX FTEXT SYMBOL STRING RASTER ATTRIB SET MEMBER MASTER POINTELEMENT POINT PLAN SEGMENT PTR_??? PTR_??? ist ein Pointer, wie er von DBquery($pointer ...) zurückgegeben wird. (optional) schränkt die Auswahl ein nach bestimmten Kriterien: KEY <liste> DKY <liste> DKA <liste> SYM <liste> SEGMENT <nummer> QTX <name> EQ <wert> NE <wert> LT <zahl> GT <zahl> LE <zahl> GE <zahl> LIKE <ausdruck> IS NULL IS NOT NULL Mehrere Conditions können hintereinander geschrieben werden. /NOQUOTE Rückgabe der Werte ohne Anführungszeichen. Ohne den Paramter NOQUOTE werden die Ergebnisse einzeln in Anführungszeichen zurückgegeben. Dieser Parameter kann auch /NOQ oder /noq abgekürzt werden.
Rückgabewert
Beispiel DBquery($numftxt FROM OPEN OBJECT) Ausgabe: "2" DBquery($const.#P,$x,$y from open point /noq) Ausgabe: #P 3437515.669844 5381368.123192 DBquery($numSym,$sym.1.$pos.$x,$sym.1.$pos.$y,$sym.1.$angle FROM OPEN OBJECT /NOQUOTE ) Ausgabe: 2 3463732.61 5585791.64 278.987 DBquery($num FROM SYMBOL) Ausgabe: "232" "237" "230" s_sort(DBquery($num FROM SYMBOL)) Ausgabe: "230" "232" "237" DBquery($name from open object /noq) Ausgabe: VS_20kV_Kabel DBquery(GID from open object /noq) Ausgabe: 1-1-1-1-10 DBquery(KRK,GID,RNR from object) Ausgabe: "500" "1-1-1-1-2" "1" "450" "1-1-1-4-15" "4" "400" "1-1-1-2-2" "2" DBquery($pointer from open object /noq) Ausgabe: PTR_25d33f4 DBquery($name from object QTX $name LIKE VS_* /noq) Ausgabe: VS_20kV_Kabel VS_20kV_Freileitung VS_20kV_Muffe_A VS_20kV_Mast_E VS_NSP_Kabel VS_NSP_Muffe_HA_Abzw VS_NSP_Muffe_E VS_NSP_Muffe_HA_Abzw VS_NSP_Muffe_HA_Abzw DBquery($pointer from point QTX $link EQ 3 QTX $num GT 1 /noq) Ausgabe: PTR_25eb15c PTR_25fbd84 PTR_25fbcac PTR_25fbc1c DBquery($pointer from all point) Ausgabe: "" (Der Rückgabewert ist zu lang und wird nicht im Kommandofenster ausgegeben)
Bemerkung Unter Analyse | Attributabfrage generieren befindet sich ein Dialog, der beim Erstellen einer DBquery-Abfrage behilflich ist. Wird der Rückgabewert zu lang, wird das Ergebnis nicht im Kommandofenster ausgegeben, kann aber trotzdem einer Variablen zugewiesen werden. (Siehe letztes Beispiel) Siehe auch
|