Jedes Datenobjekt basiert auf einem Objekttyp bzw. einer Datenstruktur. Neben der Klasse, um auf den Inhalt eines Datenobjekts zuzugreifen, wird eine 2. Klasse generiert, die eine statische Beschreibung des Objektyps bzw. der Datenstruktur (Definition) enthält.
public sealed class SnstrTvw: DataStructure<Snd710>
Diese Klasse wird auch beim Anlegen eines lokalen Objektes verwendet.
Um auf die Definition zuzugreifen, gibt es die static
Eigenschaft Definition
an der jeweiligen Klasse.
public static SnstrTvw Definition;
Die Klasse enthält im Abschnitt Elements
für jedes Datenelement in der Datenstruktur eine Eigenschaft, die Informationen über das jeweilige Datenlement enthält:
Die einzelnen Datenelemente können direkt auf erster Ebene angesprochen werden, auch wenn diese unter einer Gruppenstufe definiert wurden. Auch die Gruppenstufen können direkt angesprochen werden. Sie enthalten neben den unten aufgelisten Eigenschaften auch die in der jeweiligen Gruppe enthaltenen Datenelemente.
Folgende Eigenschaften können für jedes Datenelement abgefragt werden:
public String Name;
Ruft den Namen des Datenelementes ab.
public Int32 Size;
Ruft die technische Länge des Datenelementes ab.
public Int32 DisplayLength;
Ruft die Länge des Datenelementes ab, die benötigt wird, um den max. Inhalt als String darzustellen.1)
public TResult Parse<TVal>(TVal value); public bool TryParse<TVal>(TVal value, out TResult result);
Die Methoden Parse
und TryParse
können dazu verwendet werden, zu prüfen, ob ein Wert (value
) in das jeweilige Feld passt. Wenn es passen würde, wird der Wert in den zu dem Element definierten Typ (TResult
) konvertiert. Wenn der Wert nicht passt, wird von der Methode Parse
eine entsprechende Condition aufgeworfen. Die Methode TryParse
verwendet keine Conditions, sondern gibt über den Rückgabewert an, ob der Wert passt.
Beispiele:
DateTime dt; if (PbsKey.Definition.Elements.__000VbzptD0.TryParse("2811-2017", out dt)) { this.Data.PbsKey.__000VbzptD0 = dt; }