Objektverwaltung:Tabellen: Unterschied zwischen den Versionen
Admin (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
Admin (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
| Zeile 161: | Zeile 161: | ||
Um eine optimale Auflösung der Ausdrücke zu ermöglichen, ist eine Klammersetzung bei jedem Ausdruck notwendig. z.B.: ([a] * [b]) + [c] | Um eine optimale Auflösung der Ausdrücke zu ermöglichen, ist eine Klammersetzung bei jedem Ausdruck notwendig. z.B.: ([a] * [b]) + [c] | ||
Syntax von Ausdrücken | ===Syntax von Ausdrücken=== | ||
Beim Erstellen eines Ausdrucks verweist man mit der ColumnName-Eigenschaft auf Spalten. Wenn z. B. der ColumnName einer Spalte "UnitPrice" und der einer anderen "Quantity" lautet, ergibt sich folgender Ausdruck: | Beim Erstellen eines Ausdrucks verweist man mit der ColumnName-Eigenschaft auf Spalten. Wenn z. B. der ColumnName einer Spalte "UnitPrice" und der einer anderen "Quantity" lautet, ergibt sich folgender Ausdruck: | ||
"[UnitPrice] * [Quantity]" | '''"[UnitPrice] * [Quantity]"''' | ||
Beim Erstellen eines Ausdrucks für einen Filter schließt man Zeichenfolgen in einfache Anführungszeichen ein: | Beim Erstellen eines Ausdrucks für einen Filter schließt man Zeichenfolgen in einfache Anführungszeichen ein: | ||
"LastName = 'Jones'" | '''"LastName = 'Jones'"''' | ||
Die folgenden Zeichen sind Sonderzeichen und müssen, wie nachstehend beschrieben, mit Escapezeichen versehen werden, wenn sie in einem Spaltennamen verwendet werden sollen: | Die folgenden Zeichen sind Sonderzeichen und müssen, wie nachstehend beschrieben, mit Escapezeichen versehen werden, wenn sie in einem Spaltennamen verwendet werden sollen: | ||
| Zeile 195: | Zeile 195: | ||
Wenn ein Spaltenname eines der oben aufgeführten Zeichen enthält, muss der Name in Klammern eingeschlossen werden. Wenn Sie z. B. eine Spalte mit dem Namen "Column#" in einem Ausdruck verwenden, schreiben Sie "[Column#]": | Wenn ein Spaltenname eines der oben aufgeführten Zeichen enthält, muss der Name in Klammern eingeschlossen werden. Wenn Sie z. B. eine Spalte mit dem Namen "Column#" in einem Ausdruck verwenden, schreiben Sie "[Column#]": | ||
Total * [Column#] | |||
'''Total * [Column#]''' | |||
Da Klammern Sonderzeichen sind, müssen Sie einen umgekehrten Schrägstrich ("\") als | Da Klammern Sonderzeichen sind, müssen Sie einen umgekehrten Schrägstrich ("\") als | ||
Escapezeichen für die Klammer verwenden, wenn diese Teil des Spaltennamens ist. Eine Spalte mit dem Namen "Column[]" wird z. B. wie folgt geschrieben: | Escapezeichen für die Klammer verwenden, wenn diese Teil des Spaltennamens ist. Eine Spalte mit dem Namen "Column[]" wird z. B. wie folgt geschrieben: | ||
Total * [Column[\]] | '''Total * [Column[\]]''' | ||
(Nur die zweite Klammer muss mit einem Escapezeichen versehen werden.) | (Nur die zweite Klammer muss mit einem Escapezeichen versehen werden.) | ||
Benutzerdefinierte Werte | ===Benutzerdefinierte Werte=== | ||
Benutzerdefinierte Werte können in Ausdrücken verwendet und mit Spaltenwerten verglichen werden. Zeichenfolgenwerte müssen in einfache Anführungszeichen eingeschlossen werden. Datumswerte müssen in Nummernzeichen (#) eingeschlossen werden. Dezimalwerte und wissenschaftliche Schreibweise sind für numerische Werte zulässig. | Benutzerdefinierte Werte können in Ausdrücken verwendet und mit Spaltenwerten verglichen werden. Zeichenfolgenwerte müssen in einfache Anführungszeichen eingeschlossen werden. Datumswerte müssen in Nummernzeichen (#) eingeschlossen werden. Dezimalwerte und wissenschaftliche Schreibweise sind für numerische Werte zulässig. | ||
| Zeile 216: | Zeile 217: | ||
"EnumColumn = 5" | "EnumColumn = 5" | ||
Operatoren | ===Operatoren=== | ||
Die Verkettung mit den booleschen Operatoren AND, OR und NOT ist zulässig. Sie können mit Hilfe von Klammern Klauseln gruppieren und den Vorrang erzwingen. Der AND-Operator hat Vorrang gegenüber anderen Operatoren. Beispiel: | Die Verkettung mit den booleschen Operatoren AND, OR und NOT ist zulässig. Sie können mit Hilfe von Klammern Klauseln gruppieren und den Vorrang erzwingen. Der AND-Operator hat Vorrang gegenüber anderen Operatoren. Beispiel: | ||
| Zeile 240: | Zeile 241: | ||
:<nowiki>%</nowiki> (Modulo) | :<nowiki>%</nowiki> (Modulo) | ||
===Zeichenfolgenoperatoren=== | |||
Verwenden Sie zum Verketten einer Zeichenfolge das Pluszeichen (+). Ob die Groß- und Kleinschreibung bei Zeichenfolgenvergleichen berücksichtigt wird, wird durch den Wert der CaseSensitive-Eigenschaft der DataSet-Klasse bestimmt. Sie können diesen Wert jedoch mit der CaseSensitive-Eigenschaft der DataTable-Klasse überschreiben. | |||
===Platzhalterzeichen=== | |||
Sowohl * als auch % können in einem LIKE-Vergleich synonym als Platzhalter verwendet werden. Wenn die Zeichenfolge in einer LIKE-Klausel * oder % enthält, müssen diese Zeichen in Klammern ([]) als Escapezeichen eingeschlossen werden. Wenn eine Klammer in der Klausel enthalten ist, müssen die Klammerzeichen mit Klammern als Escapezeichen versehen werden (z. B. [[] oder []]). Ein Platzhalter ist sowohl an Anfang und Ende eines Musters als auch nur am Ende oder nur am Anfang eines Musters zulässig. | |||
Beispiel: | |||
"ItemName LIKE '*product*'" | |||
"ItemName LIKE '*product'" | |||
"ItemName LIKE 'product*'" | |||
Platzhalter innerhalb einer Zeichenfolge sind unzulässig. 'te*xt' ist z.B. nicht zulässig. | |||
Version vom 1. Dezember 2008, 17:22 Uhr
In Tabellen werden die von User eingegebenen Daten gespeichert. Der Enduser kann über Eingabemasken Daten in Tabellen eingeben. Um eine Tabelle zu bearbeiten, markiert man diese und betätigt das Icon „Entwurf“ oder wählt „Entwurf“ über das Kontextmenü (mit rechter Maustaste aufrufbar) aus.

Es öffnet sich der Tabellendesigner:

Dieser setzt sich aus 3 bereichen zusammen:
- Registerblätter (1)
- Register-Bereich (2)
- Allgemeiner Bereich (3)
Allgemeiner Bereich
Diese 5 Buttons haben unterschiedliche Funktionen:
| Schaltfläche | Beschreibung |
| OK | Übernimmt die vorgenommen Änderungen und schließt den Tabellendesigner |
| Tabelle aktualisieren | Falls Tabelle nicht vorhanden wird diese erstellt. Neue Felder werden in der Datenbank angelegt und sind danach verfügbar. Bei Dimensionen werden Defaultelemente (Root-Element und „Keine Zuordnung“-Element) werden angelegt.
„Tabelle aktualisieren“ macht folgendes:
|
| Übernehmen | Speichert die aktuelle Definition – Tabellen werden in der Datenbank nicht neu erstellt. Neue berechnete Felder sind sofort verfügbar.
Detail:
|
| Tabelle neu erstellen | Tabelle wird in der Datenbank neu erstellt – ACHTUNG: dabei werden alle bestehenden Daten gelöscht.
Mit „Tabelle neu erstellen“ passiert folgendes:
|
| Abbrechen | nichts wird gespeichert, das Fenster geschlossen! |
Felder
Hier befindet man sich im Registerblatt „Felder“. Ein neues Feld kann man durch Anklicken des Buttons „Feld hinzufügen“ anlegen.

Spaltenname
In dieses Feld kann individuell der Name der Spalte eingetragen werden.
Datentyp
Als Datentyp stehen folgende Möglichkeiten zur Auswahl:
- Dezimalzahl
- Ganzzahl
- Prozentwert
- Text(50)
- Datum
- Währung
- Bool
- Link
Bei dem Datentyp Text kann man die maximale Größe des Textes (angegeben durch die Zahl innerhalb der Klammern) auch ändern, indem man ganz einfach die Zahl innerhalb der Klammern erhöht oder erniedrigt.
Standardwert
Man kann einen beliebigen Standardwert definieren, der dem User als Wert in diesem Feld vorgeschlagen wird. Wird ein neuer Datensatz angelegt, dann wird dieser Standardwert in das Feld des neuen Datensatzes geschrieben. Dieser kann natürlich jeder Zeit vom User selbst geändert werden.

Standardcode
Im Gegensatz zum statischen Standardwert ist der Standard Code ein variabler Wert, welcher von der Session abhängig ist, mit der der Benutzer gerade am CoPlanner-Server angeloggt ist.

Beschreibung
Hier kann man eine kurze Beschreibung zum Inhalt der Spalte eingeben.
Aggregationstyp
Folgende Aggregationstypen hat man zur Auswahl:
- Keine: keine Berechnung ist erwünscht
- Sum: die Summe aller Felder in einer Spalte wird berechnet
- Avg: der Durchschnitt aller Felder in einer Spalte wird berechnet, wobei die Berechnung mittels Summe der Werte der Datensätze / Anzahl der Datensätze gemacht wird.
Sichtbar in LookUps
Ist „Sichtbar in Lookups“ aktiviert, wird das entsprechende Feld „Spaltenname“ in der Combo-Box in der verknüpften Tabelle zur Auswahl angezeigt (mehr dazu auf der nächsten Seite).
IsOK
Zeigt an, ob Änderungen aktualisiert, gespeichert und korrekt durchgeführt wurden. Ist ein rotes Dreieck mit Rufzeichen, wie hier, zu sehen, dann muss der Button „Tabelle aktualisieren“ gedrückt und somit die vorgenommenen Auswahlen gespeichert werden.
Format-String
Hier kann ein .NET –Format String für die Formatierung der Spalte angegeben werden (Syntax siehe FormatString für .NET!)
Edit-Mask
Hier kann eine Eingabemaske für das Feld definiert werden!(Syntax siehe „Microsoft MaskedEdit ActiveX“)

Wenn eine Spalte noch nicht übernommen wurde (durch rotes Dreieck dargestellt) dann kann man diese durch Klicken von X oder durch selektieren der Zeile und drücken der „Entf“ – Taste die Spalte löschen. Ist die Spalte bereits übernommen (durch grünes Häkchen dargestellt) so kann man die Spalte erst löschen, wenn man die Tabelle neu erstellt.
LookUp-Tabellen
Hier kann man Tabellen miteinander verknüpfen. Bei einer Tabelle handelt es sich erst dann um eine „verknüpfbare“ LookUp-Tabelle, wenn zumindest ein Feld mit „Sichtbar in LookUps“ angehakt ist. Erst dann können die entsprechenden Felder in der verknüpften Tabelle angezeigt werden, wobei mit Klick in das entsprechende Feld eine Combo-Box mit den in LookUp-Daten geöffnet wird.

Dimensionen
Ähnlich wie bei den LookUp-Tabellen öffnet sich für den User mit Klick in das entsprechende Feld ebenfalls eine Combo-Box mit dem einzigen Unterschied, dass hier eine Strukturebene zur Auswahl vorliegt.


Berechnete Felder
Berechnete Felder setzten sich aus anderen Feldern zusammen. In diesem Beispiel:
Berechnetes Feld: [Gesamtgehalt] = [Gehalt] + [Weihnachtsgeld] + [Urlaubsgeld] + [Prämie]

Um eine optimale Auflösung der Ausdrücke zu ermöglichen, ist eine Klammersetzung bei jedem Ausdruck notwendig. z.B.: ([a] * [b]) + [c]
Syntax von Ausdrücken
Beim Erstellen eines Ausdrucks verweist man mit der ColumnName-Eigenschaft auf Spalten. Wenn z. B. der ColumnName einer Spalte "UnitPrice" und der einer anderen "Quantity" lautet, ergibt sich folgender Ausdruck:
"[UnitPrice] * [Quantity]"
Beim Erstellen eines Ausdrucks für einen Filter schließt man Zeichenfolgen in einfache Anführungszeichen ein:
"LastName = 'Jones'"
Die folgenden Zeichen sind Sonderzeichen und müssen, wie nachstehend beschrieben, mit Escapezeichen versehen werden, wenn sie in einem Spaltennamen verwendet werden sollen:
- ~
- (
- )
- #
- \
- /
- =
- >
- <
- +
- -
- *
- %
- &
- |
- ^
- '
- "
- [
- ]
Wenn ein Spaltenname eines der oben aufgeführten Zeichen enthält, muss der Name in Klammern eingeschlossen werden. Wenn Sie z. B. eine Spalte mit dem Namen "Column#" in einem Ausdruck verwenden, schreiben Sie "[Column#]":
Total * [Column#]
Da Klammern Sonderzeichen sind, müssen Sie einen umgekehrten Schrägstrich ("\") als Escapezeichen für die Klammer verwenden, wenn diese Teil des Spaltennamens ist. Eine Spalte mit dem Namen "Column[]" wird z. B. wie folgt geschrieben:
Total * [Column[\]]
(Nur die zweite Klammer muss mit einem Escapezeichen versehen werden.)
Benutzerdefinierte Werte
Benutzerdefinierte Werte können in Ausdrücken verwendet und mit Spaltenwerten verglichen werden. Zeichenfolgenwerte müssen in einfache Anführungszeichen eingeschlossen werden. Datumswerte müssen in Nummernzeichen (#) eingeschlossen werden. Dezimalwerte und wissenschaftliche Schreibweise sind für numerische Werte zulässig.
Beispiel:
"FirstName = 'John'" "Price <= 50.00" "Birthdate < #1/31/82#" Wandeln Sie bei Spalten mit Enumerationswerten den Wert in einen Ganzzahldatentyp um. Beispiel: "EnumColumn = 5"
Operatoren
Die Verkettung mit den booleschen Operatoren AND, OR und NOT ist zulässig. Sie können mit Hilfe von Klammern Klauseln gruppieren und den Vorrang erzwingen. Der AND-Operator hat Vorrang gegenüber anderen Operatoren. Beispiel: (LastName = 'Smith' OR LastName = 'Jones') AND FirstName = 'John'
Beim Erstellen von Vergleichsausdrücken sind die folgenden Operatoren zulässig:
- <
- >
- <=
- >=
- <>
- =
- IN
- LIKE
Die folgenden arithmetischen Operatoren werden ebenfalls in Ausdrücken unterstützt:
- + (Addition)
- - (Subtraktion)
- * (Multiplikation)
- / (Division)
- % (Modulo)
Zeichenfolgenoperatoren
Verwenden Sie zum Verketten einer Zeichenfolge das Pluszeichen (+). Ob die Groß- und Kleinschreibung bei Zeichenfolgenvergleichen berücksichtigt wird, wird durch den Wert der CaseSensitive-Eigenschaft der DataSet-Klasse bestimmt. Sie können diesen Wert jedoch mit der CaseSensitive-Eigenschaft der DataTable-Klasse überschreiben.
Platzhalterzeichen
Sowohl * als auch % können in einem LIKE-Vergleich synonym als Platzhalter verwendet werden. Wenn die Zeichenfolge in einer LIKE-Klausel * oder % enthält, müssen diese Zeichen in Klammern ([]) als Escapezeichen eingeschlossen werden. Wenn eine Klammer in der Klausel enthalten ist, müssen die Klammerzeichen mit Klammern als Escapezeichen versehen werden (z. B. [[] oder []]). Ein Platzhalter ist sowohl an Anfang und Ende eines Musters als auch nur am Ende oder nur am Anfang eines Musters zulässig.
Beispiel:
"ItemName LIKE '*product*'" "ItemName LIKE '*product'" "ItemName LIKE 'product*'"
Platzhalter innerhalb einer Zeichenfolge sind unzulässig. 'te*xt' ist z.B. nicht zulässig.