Dynamics AX Blog - Dynamics AX 2012 - Beiträge vom August 2012

Momentan angezeigt werden nur Beiträge, welche für die Dynamics AX-Version »Dynamics AX 2012« relevant sind. Filter entfernen

RSS-Feed dieser Version
Momentan angezeigt werden nur Beiträge vom »August 2012«. Filter entfernen

Erweitern von Dynamics AX um neue Icons

Custom IconsIn Dynamics AX kann man bekanntermaßen Menuitems oder Buttons mit Icons optisch aufwerten. Oft werden dafür die bereits in der Form SysImageRessources anzeigbaren sog. Embedded Resources verwendet.

Es ist allerdings nicht möglich, diese Embedded Ressources um eigene Icons/Bilder zu erweitern.

Dafür stellt AX den AOT-Knoten Resources zur Verfügung.


 
 
 

AX 2012: Erfahrungen zum Thema Import von Modellen

Um ein Modell in eine Instanz von Dynamics AX 2012 zu importieren wird das Kommandozeilen-Tool AXUTIL benötigt. Nach dem Import eines Modelles wird ein Hinweis ausgegeben, der leicht zu überlesen ist aber lt. meinen Erfahrungen ernorm wichtig ist.

Dieser Hinweis lautet:

Because of the changes made to the model stores, it is highly recommended to restart the AOS, run appropriate scripts, and compile and synchronize the application. Not doing that may cause runtime errors and loss of data.

Auf Basis dieses Hinweises und aus der Erfahrung heraus führe ich nach dem Import eines Modelles immer folgende Schritte aus:

  1. Neustart des/der AOS
  2. Synchronisation der Datenbank
  3. Vollständige Kompilierung der Applikation
  4. Vollständige Kompilierung der CIL

Wenn ich nur einen der genannten Schritte weggelassen habe, hatte ich immer wieder mit Phänomenen zu kämpfen.

Einiger solcher Phänomene waren:

  • Fehlermeldung hinsichtlich Ids
  • CIL-Kompilierfehler, daß bei irgendwelchen Methoden (Tabellen- oder Klassenmethoden) die Parameter nicht stimmen
  • CIL-Kompilierfehler wie: System.ArgumentException: Type UNKNOWN was not found in the CIL that was generated from X++
  • Anzeigefehler in Formularen (Spalten ohne Labels)

Leider sind die oben genannten Schritte teilweise recht zeitintensiv, die investierte Zeit war es in der Regel aber wert.


 
 
 

AX 2012: Display-Methoden im Lookup

Mit Hilfe der Klasse SysTableLookup kann man sich den Lookup von Formularfeldern anpassen. Über die Methode addLookupMethod() können in diese Lookup-Formulare auch Display-Methoden eingebunden werden. Wichtig dabei ist lediglich, daß im Lookup alle Felder angezeigt werden, die von der jeweiligen Display-Methode zur Ermittlung benötigt werden.

Will man beispielsweise das Lookupformular der Artikelnummer um den Produktnamen erweitern, kann man dafür die folgende Methode nutzen. Hierbei ist beispielsweise das Feld Product der InventTable nur enthalten, um die Display-Methode itemName() im Lookup verwenden zu können.

public client static void lookupItemId(FormStringControl _lookupCtrl)
{
    sysTableLookup sysTableLookup;
    query query;
    QueryBuildDataSource qbds_inventTable;

    query = new query();

    qbds_inventTable = query.addDataSource(tableNum(inventTable));

    sysTableLookup = sysTableLookup::newParameters(tableNum(inventTable), _lookupCtrl);
    sysTableLookup.parmQuery(query);
    sysTableLookup.addLookupfield(fieldNum(inventTable, itemId));
    sysTableLookup.addLookupMethod(tableMethodStr(inventTable, itemName));
    sysTableLookup.addLookupfield(fieldNum(inventTable, NameAlias));
    sysTableLookup.addLookupfield(fieldNum(inventTable, ItemType));
    sysTableLookup.addLookupfield(fieldNum(inventTable, product), false);

    sysTableLookup.performFormLookup();
}

 
 
 

 

 
 
 
Beiträge des aktuellen Monats
August 2012
MoDiMiDoFrSaSo
 12345
6789101112
13141516171819
20212223242526
2728293031 
 
© 2006-2025 Heinz Schweda | Impressum | Kontakt | English version | Mobile Version
Diese Webseite verwendet Cookies, um Benutzern einen besseren Service anzubieten. Wenn Sie weiterhin auf der Seite bleiben, stimmen Sie der Verwendung von Cookies zu.  Mehr dazu