Aktuelle Änderungen - Suchen:
Translate to:

victor-Doku

* Bugs & FeatureRequests

Attributes

Attribute / Eigenschaften verwalten


Attributes - Standard-Ansicht

Attribute (Eigenschaften, Merkmale) sind Werte, die einer Datei zugewiesen werden können und diese dadurch charakterisieren. Jedes Attribut besitzt einen bestimmten Typ, der die Art der mögliche Eingabewerte bestimmt. Attribute werden in der DesignBase (anders als die Kategorien) immer in Textform eingegeben, d.h. sie werden normalerweise eingetippt.

Attribute könnten für Designs z.B. solche Werte sein wie Breite, Höhe, Rapport, Preis etc. Dieser Art von Werten können nicht einfach in eine Kategorie mit vordefinierten Werten erfasst werden, da sie sehr oft für jedes Objekt unterschiedlich sind.

Attribute definieren


Attribute definieren

Ein Attribut muss bzw. kann folgende Werte in der leeren Zeile unter File Attributes bekommen:

  • Attribut-Name (AttrName), ein erforderlicher, eindeutiger Eintrag
  • Attribut-Typ (AttrType), erforderlicher Eintrag (siehe Vorhandene Attribut-Typen)
  • (VarOption), optional
  • Minimal erlaubter Wert (MinVal), optional
  • Maximal erlaubter Wert (MaxVal), optional
  • Einheit (Unit), optional
  • Die Sortierung innerhalb der Section (SortID), optional aber empfohlen (siehe Section)
  • Die Section, in der dieses Attribut erscheinen soll (SectionID), optional aber empfohlen (siehe Section)
  • (ApplyToColorid), optional

Attribut-Name: Auch wenn als Attribut-Name fast alles eingetragen werden kann, empfiehlt es sich sehr eine bestimmte Konvention einzuhalten, die die DesignBase-Definitionen robuster und zukunftssicherer machen werden.

Alle Attribute-Namen sollten ein Präfix haben (z.B. "attr_") und nur aus standard lateinischen Buchstaben und Zahlen sowie höchstens den Unterstrich ("_") bzw. Bindestrich ("-") bestehen. Keine sonstige Sonderzeichen oder deutsche Umlaute. Ein solcher Attribut-Name könnte dann z.B. so aussehen: "attr_BildBreite" oder "attr_BildHoehe".

Diese Werte werden anschließend mittels Text-Mapping auf die gewünschte Anzeige-Form und -Sprache gebracht, z.B. als "Bildbreite" oder "Bild-Breite".

MinVal, MaxVal und Unit erscheinen als Tool-Tip bei Such- oder Eingabe-Feldern in der Form: 10..100 [mm]

Attribut-Typen


Attribut-Typen
AttrTypeWertebereich / Bedeutung
integer_0_to_255
integer_-128_to_127
integer_-32768_to_32767
integer_0_to_65535
integer_-2147483648_to_2147483647
integer_0_to_4294967295
Ganzzahlige, Dezimal-Werte in dem jeweiligen Wertebereich. Es sollte immer versucht werden, sofern im voraus bekannt, den kleinstmöglichen Wertebereich zu zuweisen.
doubleFließkommazahl normaler Größe (mit doppelter Genauigkeit). Zulässige Werte sind der Bereich zwischen -1.7976931348623157E+308 und -2.2250738585072014E-308, 0 und der Bereich zwischen 2.2250738585072014E-308 und 1.7976931348623157E+308. Dies sind theoretische Werte, die auf dem IEEE-Standard basieren. Der tatsächliche Wertebereich kann abhängig von Ihrer Hardware oder Ihrem Betriebssystem ein wenig kleiner sein. [aus MySQL: Überblick über numerische Datentypen]
floatKleine Fließkommazahl (mit einfacher Genauigkeit). Zulässige Werte sind der Bereich zwischen -3.402823466E+38 und -1.175494351E-38, 0 und der Bereich zwischen 1.175494351E-38 und 3.402823466E+38. Dies sind theoretische Werte, die auf dem IEEE-Standard basieren. Der tatsächliche Wertebereich kann abhängig von Ihrer Hardware oder Ihrem Betriebssystem ein wenig kleiner sein. [aus MySQL: Überblick über numerische Datentypen]
short text 
long text 
dateDatum. Der unterstützte Bereich liegt zwischen '1000-01-01' und '9999-12-31'. MySQL zeigt DATE-Werte im Format 'YYYY-MM-DD' an, gestattet Ihnen aber, wahlweise Strings oder Zahlen in DATE-Spalten einzugeben. [aus MySQL: Überblick über Datums- und Zeittypen]
timeEine Zeitangabe. Der Bereich liegt zwischen '-838:59:59' und '838:59:59'. MySQL zeigt TIME-Werte im Format 'HH:MM:SS' an, gestattet Ihnen aber, wahlweise Strings oder Zahlen in TIME-Spalten einzugeben. [aus MySQL: Überblick über Datums- und Zeittypen]
short binary text 
long binary text 

Attribute Editieren


Attribute Editieren

Das Editieren einer vorhandenen Attribut-Definition wird durch Klick auf dem Namen (AttrName) der Definition eingeleitet. Danach können die Werte in den entsprechenden Text-/Input-Felder verändert und mit Klick auf Modify Attr übernommen werden.

Ein nachträgliches Ändern des Attribut-Namens könnte Auswirkungen an anderen Stellen haben und zwar dort wo diese Attribute benutzt werden z.B. bei den Eingabe-/Anzeige-Formularen (ConfigTemplate) oder bei den Print-Berichten (DocuTemplate)!

Einfaches Umbenennen eines Attributes könnte (oder besser: sollte) wie im oberen Tipp - Attribut-Name angegangen werden.

Ein nachträgliches Ändern des Attribut-Typs könnte unvorhersehbare oder gar destruktive Auswirkungen auf den schon vorhandenen Attribut-Datenbestand haben!


<< Force Generic | Construction | Hidden Attributes >>

Kommentare

''.Keep(str_replace(array('$Chrono','$PostTo','$AccessCode','$CaptchaValue'), array('','',RandomAccess(), CaptchaValueRelay()), FmtPageName($GLOBALS['CommentBoxFmt'],$pagename)))

Billy?22 Dezember 2007, 11:58

Was passiert, wenn man in der DesignBase nachträglich den Typ eines Attributs ändert? Z.B. von Short Text auf Integer oder umgekehrt?
Vor allem was passiert, wenn schon Daten existieren, d.h. einige Dateien schon Zuweisungen bekommen haben?

Das haengt von der Implementation in der Datenbankengine (MySQL) ab. Von der DesignBase wird einfach ein ALTER TABLE Befehl abgesetzt, der je nach Datentyp konvertiert wird.

Die Spalte in der Tabelle wird temp. angelegt, dann wird die ASCII Representation des alten Datentyps als INSERT in die neue Spalte (bzw. dessen Datentyp) vorgenommen. Hier kann es zu Fehlern kommen, so das die Wandlung nicht moeglich ist. d.H. es tritt dann eine MySQL Fehlermeldung auf und der ALTER TABLE Befehlt wird ignoriert.

Tritt kein Fehler auf, so wird die alte Spalte geloescht und die neue Spalte umbenannt.

Aus Sicht der DesignBase wird die Datentypwandlung aber NICHT verhindert. Es ist also vom vorherigen Datentyp und den eingegebenen Texten abhaengig. Bleibt man aber im Datentype z.B. Interger -> Integer / char(20) nach char(30), sollten aber keine Fehler auftreten.

EAT-Support

Bearbeiten - Versionen - Druckansicht - Aktuelle Änderungen - Suchen
Zuletzt geändert am 24.01.2008 15:28 Uhr