Dynamics AX Blog - Beiträge von 2008

Momentan angezeigt werden nur Beiträge von »2008«.

Dynamics AX: Die Debug-Klasse

Mit der Debug-Klasse stellt Microsoft dem Dynamics AX-Entwickler eine Klasse zur Seite, mit deren Hilfe man während des Debuggen von Code sich Informationen anzeigen lassen kann, ohne die Infolog-Klasse missbrauchen zu müssen.


 
 
 

Dynamics AX: Excel-Datei einlesen

Vor kurzem musste ich mich gezwungenermaßen damit beschäftigen, wie man aus einer Excel-Datei Daten in AX einliest. Deshalb nun im folgenden ein Job mit einer Art Grundgerüst, wie man so etwas in X++ lösen kann.

static void importFromExcel(Args _args) 
{
    Filename                fileNameExcel = "C:\\temp\\file.xls";

    SysExcelApplication     sysExcelApplication;
    SysExcelWorkbooks       sysExcelWorkbooks;
    SysExcelWorksheets      sysExcelWorksheets;
    SysExcelWorksheet       sysExcelWorksheet;
    SysExcelRange           sysExcelRange;
    SysExcelCells           sysExcelCells;
    SysExcelWorkbooks       sysExcelWorkBooksCollection;
    str                     column_a;
    str                     column_b;
    str                     column_c;
    str                     column_d;
    int                     i = 0;
    #Excel
    ;

    sysExcelApplication = SysExcelApplication::construct();
    sysExcelWorkbooks   = sysExcelApplication.workbooks();

    sysExcelWorkbooks.open(fileNameExcel);

    sysExcelWorksheets  = sysExcelApplication.worksheets();
    sysExcelWorksheet   = sysExcelWorksheets.itemFromNum(1);
    sysExcelRange       = sysExcelWorksheet.rows();
    sysExcelCells       = sysExcelWorksheet.cells();

    try
    {
        ttsbegin;

        while (sysExcelCells.item(i+1, 1).value().variantType() != ComVariantType::VT_EMPTY)  // In der Annahme, dass die erste Spalte nicht leer ist         
        {
            i++;

            column_a = sysExcelCells.item(i, 1).value().bStr();
            column_b = sysExcelCells.item(i, 2).value().bStr();
            column_c = sysExcelCells.item(i, 3).value().bStr();
            column_d = sysExcelCells.item(i, 4).value().bStr();

            // ... do something ...
        }

        ttscommit;

        info("Finished");

        sysExcelApplication.quit();
        sysExcelApplication = null;
    }
    catch (Exception::Error)
    {
        sysExcelApplication.quit();
        sysExcelApplication = null;
    }
}

 
 
 

Dynamics AX: Die Aktualisierung muss im Rahmen einer Buchung ausgeführt werden

...heisst nichts anderes, als daß man beim Entwickeln ttsbegin/ttscommit vergessen hat.

Eine nicht ganz glücklich ins Deutsche übersetzte Fehlermeldung ;-)


 
 
 

Dynamics AX: Was macht eine Synchronisation?

Im Zuge eines Reuqest bei Microsoft hatten wir die Frage, was genau denn eine Synchronisation macht. Diese wurde uns netterweise beantwortet und im folgenden findet Ihr nun diese Antwort in meinen Worten, also so wie ich die Antwort verstanden habe und sie teilweise unter AX 4.0 auch ausprobiert habe.


 
 
 

Dynamics AX 2009: AxDBUpgrade.exe

Kleiner Tip zum Microsoft Dynamics AX DB Upgrade Prepartion Tool (AxDBUpgrade.exe): Im Upgrade-Guide wird erwähnt, daß man dieses Tool am Datenbank-Server starten sollte, aus meiner Erfahrung heraus ist dies fast schon ein Muss!

Ansonsten begegnet man diversen Fehlermeldungen wie z.B.

SqlState 37000, NativeError 8180

 
 
 

AX 3.0: Shrinker.Err beim Kompilieren

Wer unter Windows XP, Windows Server 2003 oder Windows Server 2008 eine Axapta-Applikation der Version 3.0 kompiliert, kann schon mal über nachstehende Fehlermeldung stolpern.

Shrinker.Err

SHRINKER.ERR
C:\Program Files (x86)\Microsoft Business Solutions\Client\Bin\GridEX2O.ocx (3.4) 10/28/08 13:55:44 - Dispatcher initialisation error trapping exceptions

Die Lösung ist einfach einer neuere Version dieser Datei in das Client\Bin-Verzeichnis zu kopieren. Eine solche findet man z.b. unter http://www.janusys.com/janus/beta/downloads_patches.htm.


 
 
 

Dynamics AX 2009: Datenbank-Synchronisation schlägt fehl

Beim Upgraden einer Dynamics AX 4.0-Installation auf AX 2009 hatte ich beim Schritt "Datenbank synchronisieren" der Aktualisierungscheckliste eine Fehlermeldung, daß vier Tabellen nicht synchronisiert werden konnten.

Ein Befehl der Datendefinitionssprache kann nicht für  () ausgeführt werden.
Die SQL-Datenbank hat einen Fehler gemeldet.
Ein Befehl der Datendefinitionssprache kann nicht für  () ausgeführt werden.
Die SQL-Datenbank hat einen Fehler gemeldet.
Ein Befehl der Datendefinitionssprache kann nicht für  () ausgeführt werden.
Die SQL-Datenbank hat einen Fehler gemeldet.
Ein Befehl der Datendefinitionssprache kann nicht für  () ausgeführt werden.
Die SQL-Datenbank hat einen Fehler gemeldet.
Probleme bei der Synchronisierung des SQL-Data-Dictionarys.Die Operation ist fehlgeschlagen.
Synchronisierung für 4 Tabellen fehlgeschlagen

 
 
Seiten 1 2 3 4 ... 6 » 

 

 
 
 
Beiträge des aktuellen Monats
April 2008
MoDiMiDoFrSaSo
 123456
78910111213
14151617181920
21222324252627
282930 
 
© 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