...feel the spirit of Microsoft Dynamics AX RSS 2.0
 Wednesday, June 11, 2008
Die Eigenschaften von FormControls, wie heightMode und widthMode werden im Form Designer über Enums gesetzt. Leider hat man hier mittels X++ Probleme, denn es wird bei der Verwendung dieser Methoden nicht angegeben um welchem Enum es sich handelt. Das hat zufolge, dass man immer wieder probieren muss, um die gewünschte Eigenschaft richtig zu setzten. Desweiteren ist so auch der Quellcode schlechter lesbar.

Der Aufruf sieht normal so aus:

FormControl.heightMode(1);

Besser ist es, wenn man sprechende Parameter mit dem richtigen Enum verwendet

FormControl.heightMode(FormHeight::ColumnHeight);

Mögliche Optionen:

FormHeight::Auto
FormHeight::ColumnHeight


Ähnlich sieht der Parameter bei widthMode aus, nur wird hier der Enum FormWidth genutzt.

FormControl.witdthMode(FormWidth::ColumnHeight);

Mögliche Optionen:

FormWidth::Auto
FormWidth::ColumnHeight


Wie schon bei den letzten beiden Eigenschaft kann man bei TopMode auch nur raten, was mittels X++ übergeben werden muss.

FormControl.TopMode(0);

Besser ist, wenn auch hier ein sprechender Parameter mit dem richtigen Enum verwendet wird.

FormControl.TopMode(FormTop::Auto);

Mögliche Optionen:

FormTop::Auto
FormTop::ButtomEdge
FormTop::Center
FormTop::TopEdge

Bei FormGroupControls gibt es die Eigenschaft frameOptionButton, auch hier tritt dasselbe Problem auf.

FormControl.frameOptionButton(0);

Der Enum lautet hier FormFrameOptionButton und ermöglicht somit die korrekte Zuweisung oder besser lesbaren Quellcode zu schreiben.

FormControl.frameOptionButton(FormFrameOptionButton::None);

Mögliche Optionen:

FormFrameOptionButton::None
FormFrameOptionButton::Hide
FormFrameOptionButton::Check
FormFrameOptionButton::Radio

Es kommt nicht nur bei FormControls zu dieser Art von Problemen. Bei QueryRanges gibt es die Eigenschaft Status, auch hier kann es beim Setzen zu Schwierigkeiten dieser Eigenschaft mittels X++ kommen.

QueryBuildRange.Status(0);

Besser ist auch hier den sprechenden Parameter mit dem Richtigen Enum zu verwenden.

QueryBuildRange.Status(RangeStatus::Hidden);

Mögliche Optionen:

RangeStatus::Hidden
RangeStatus::Locked
RangeStatus::Open

Das waren erstmal die Sachen, die mir noch in Erinnerung sind. Es gibt wahrscheinlich einige andere Stellen, bei denen es Schwierigkeiten bereitet, den richtigen Parameter zu wählen.
Ich habe mit den genannten Enums bisher positive Erfahrungen sammeln können, ob es aber wirklich die Richtigen sind, wird man wohl nicht in Erfahrung bringen können.

Wednesday, June 11, 2008 7:50:59 PM (Mitteleuropäische Zeit, UTC+01:00)  Mathias Füßler  #    Comments [0] - Trackback


All comments require the approval of the site owner before being displayed.
Name
E-mail
Home page

Comment (Some html is allowed: )  

Enter the code shown (prevents robots):



Translate
Über/Kontakt

     







© Copyright 2008 Axel Kühn
Sign In
Subscribe this blog
Archiv
<November 2008>
SunMonTueWedThuFriSat
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456
Statistik
Total Posts: 94
This Year: 31
This Month: 1
This Week: 0
Comments: 38





All Content © 2008, Axel Kühn
DasBlog theme 'Business' created by Christoph De Baene (delarou)