Importieren von Kunden und Anbietern in Microsoft Dynamics AX 2009

In diesem Artikel wird beschrieben, wie Sie Kunden in Microsoft Dynamics AX 2009 aus einer Microsoft Office Excel-Tabelle importieren. In diesen Schritten wird beschrieben, wie Kunden importiert werden. Sie können diese Schritte jedoch auch ausführen, um Anbieter zu importieren.

Gilt für: Microsoft Dynamics AX 2009
Ursprüngliche KB-Nummer: 960729

Führen Sie die folgenden Schritte aus, um Kunden in Microsoft Dynamics AX 2009 zu importieren:

  1. Wählen Sie im Navigationsbereich Verwaltung aus, erweitern Sie Periodisch, erweitern Sie Datenexport/-import, erweitern Sie Excel-Kalkulationstabellen, und wählen Sie dann Vorlagen-Assistent aus.

  2. Wählen Sie im Excel-Vorlagen-Assistenten Weiter aus.

  3. Geben Sie im Feld Dateiname den Namen der Datei ein, die Sie verwenden möchten, und wählen Sie dann Weiter aus.

  4. Wählen Sie auf der Seite Tabellen auswählen des Assistenten im Bereich Verfügbare Objekte die Option CustTable aus, wählen Sie die > Schaltfläche aus, um das Objekt in den Bereich Ausgewählte Objekte einzufügen, und wählen Sie dann Weiter aus.

    Hinweis

    Wählen Sie für Anbieter im Bereich Verfügbare Objekte die Option VendTable aus.

  5. Wählen Sie auf der Listenseite Felder generieren des Assistenten weiter aus.

  6. Erweitern Sie auf der Seite Felder auswählen des Assistenten Den Kunden, und wählen Sie dann die Felder aus, die Sie in Microsoft Dynamics AX importieren möchten. Die erforderlichen Felder für einen CustTable-Import sind wie folgt:

    • Kundenkonto
    • Kundengruppe
    • Währung
    • Sprache
    • Adressbuchtyp
    • Adressbuch-ID-Name
    • Adresse
    • Zahlungsbedingungen
    • Land/Region
    • POSTLEITZAHL
    • Status
    • Bezirk
    • Suchname
    • Stadt
    • Street name
    • Land/Region
    • Status
    • Company
  7. Wählen Sie Weiter aus.

  8. Führen Sie die Schritte im Assistenten aus, um den Import abzuschließen.

  9. Wählen Sie im Navigationsbereich die Option Basic aus, erweitern Sie Setup, erweitern Sie Globales Adressbuch, und wählen Sie dann Parameter aus.

  10. Wählen Sie die Registerkarte Zahlensequenzen aus, und überprüfen Sie dann, ob eine Zahlensequenz für die Adressbuch-ID ausgewählt ist.

    Hinweis

    Die ausgewählte Nummernsequenz kann nicht als fortlaufend eingerichtet werden.

  11. Suchen Sie die Datei, die Sie in Schritt 3 erstellt haben. Die Excel-Kalkulationstabelle, die die daten enthält, die Sie importieren möchten, wird aufgefüllt.

  12. Lassen Sie das Feld Adressbuch-ID leer. Das Feld Adressbuch-ID wird ausgefüllt, wenn Sie das Excel-Arbeitsblatt mithilfe der Zahlensequenz importieren, die Sie in Schritt 10 eingerichtet haben.

  13. Wählen Sie im Navigationsbereich Verwaltung aus, erweitern Sie Periodisch, erweitern Sie Datenexport/-import, und wählen Sie dann Definitionsgruppen aus.

  14. Wählen Sie im Dialogfeld Datenexport/-import die Definitionsgruppe aus, die Sie mit dem Excel-Vorlagen-Assistenten erstellt haben, und wählen Sie dann Tabelleneinrichtung aus.

  15. Wählen Sie im Dialogfeld Tabelleneinrichtung die Registerkarte Konvertierung aus, und fügen Sie der CustTable-Tabelle nach der Standardzeile im Fenster den folgenden Code für Importe hinzu.

     str dirId;
     ;
    
    // Check that the custtable table is not associated to Party.
     if (!custTable.PartyId || custTable.PartyId == "")
     {
     // Create a Party entry for the customer.
     dirId = DirParty::createPartyFromCommon(custTable).PartyId;
     custTable.PartyId = dirId;
     }
     else
     {
     DirParty::updatePartyFromCommonInsert(custTable.PartyId,custTable);
     }
    

    Fügen Sie den folgenden Code hinzu, um Anbieter zu importieren.

    str dirId;
     ;
    
    // Check that the vendtable table is not associated to Party.
     if (!vendTable.PartyId || vendTable.PartyId == "")
     {
     // Create a Party entry for the vendor.
     dirId = DirParty::createPartyFromCommon(vendTable).PartyId;
     vendTable.PartyId = dirId;
     }
     else
     {
     DirParty::updatePartyFromCommonInsert(vendTable.PartyId,vendTable);
     }
    
  16. Aktivieren Sie das Kontrollkästchen Konvertierung ausführen , und wählen Sie dann die Schaltfläche Kompilieren aus.

    Dieser Schritt bestimmt, ob der Code richtig eingegeben wird.

  17. Wählen Sie die Registerkarte Vorschau aus, überprüfen Sie, ob die Felder mit den richtigen Werten übereinstimmen, die in das Excel-Arbeitsblatt eingegeben wurden, und schließen Sie dann das Dialogfeld Tabelleneinrichtung .

  18. Wählen Sie im Dialogfeld Datenexport/-import die von Ihnen erstellte Definitionsgruppe aus, und wählen Sie dann Importieren aus.

  19. Wählen Sie im Dialogfeld Excel-Import das Excel-Arbeitsblatt aus, das Sie in Schritt 3 erstellt haben, und wählen Sie dann OK aus.

  20. Vergewissern Sie sich, dass Ihr Kunde in die CustTable-Tabelle importiert wird und dass ein entsprechender Datensatz in der DirPartyTable-Tabelle erstellt wird.

Nachdem Sie den Kunden importiert haben, können Sie weitere Adressen für den Kunden importieren. Gehen Sie dazu wie folgt vor:

  1. Wählen Sie im Navigationsbereich Verwaltung aus, erweitern Sie Periodisch, erweitern Sie Datenexport/-import, erweitern Sie Excel-Kalkulationstabellen, und wählen Sie dann Vorlagen-Assistent aus.

  2. Wählen Sie im Excel-Vorlagen-Assistenten Weiter aus.

  3. Geben Sie im Feld Dateiname den Namen der Datei ein, die Sie verwenden möchten, und wählen Sie dann Weiter aus.

  4. Wählen Sie auf der Seite Tabellen auswählen des Assistenten die Option Alle Tabellen anzeigen aus, wählen Sie im Bereich Verfügbare Objekte die Option Adresse aus, wählen Sie die > Schaltfläche aus, um das Objekt in den Bereich Ausgewählte Objekte einzufügen, und wählen Sie dann Weiter aus.

  5. Wählen Sie auf der Listenseite Felder generieren des Assistenten weiter aus.

  6. Erweitern Sie auf der Seite Felder auswählen des Assistenten alt. address, und wählen Sie dann die Felder aus, die Sie in Microsoft Dynamics AX importieren möchten.

    Hinweis

    Datensatz-ID und Tabellen-ID der Standard Tabelle müssen ausgewählt werden

  7. Wählen Sie ein zusätzliches Feld aus, bei dem es sich um eine Zeichenfolge handelt, die Sie derzeit nicht verwenden. Aktivieren Sie z. B. das Kontrollkästchen Kontonummer des Netzbetreibers .

  8. Wählen Sie Weiter aus.

  9. Führen Sie die Schritte im Assistenten aus, um den Import abzuschließen.

  10. Suchen Sie das Excel-Arbeitsblatt, das Sie in Schritt 3 erstellt haben, und geben Sie dann die Daten ein, die Sie importieren möchten.

    Hinweis

    Legen Sie die Spaltentabellen-ID der Standard Tabelle mit 77 für die CustTable oder 505 für die VendTable fest.

  11. Legen Sie das Feld Verweis auf 0 fest.

  12. Geben Sie für das zusätzliche Feld "Carrier account number ", das Sie der Kalkulationstabelle hinzugefügt haben, die Kundenkontonummer ein.

  13. Suchen Sie in der Anwendungsobjektstruktur (Application Object Tree, AOT) die importData -Methode im folgenden Objekt:

    Classes\SysDataImportDefBase

  14. Ändern Sie in der importData -Methode den Code wie folgt.

    Vorhandener Code

    _curcommon.doInsert();
    

    Ersetzungscode

    if (SysExpImpGroup::find(groupId).Type == SysExpImpType::Excel
     && _curCommon.TableId == tablenum(Address))
     {
     _curcommon.Insert();
     }
     else
     {
     _curcommon.doInsert();
     }
    
  15. Speichern Sie die Klasse, und kompilieren Sie sie SysDataImportDefBase dann.

  16. Wählen Sie im Navigationsbereich Verwaltung aus, erweitern Sie Periodisch, erweitern Sie Datenexport/-import, und wählen Sie dann Definitionsgruppen aus.

  17. Wählen Sie im Dialogfeld Datenexport/-import die Definitionsgruppe aus, die Sie mit dem Excel-Vorlagen-Assistenten erstellt haben, und wählen Sie dann Tabelleneinrichtung aus.

  18. Wählen Sie im Dialogfeld Tabelleneinrichtung die Registerkarte Konvertierung aus, und fügen Sie der CustTable-Tabelle nach der Standardzeile im Fenster den folgenden Code für Importe hinzu.

    str account;
     ;
    
    // If the address is for a customer and the recid for the customer is not specified
    if (address.AddrTableId == tablenum(CustTable) && address.AddrRecId == 0)
    {
     account = address.ShipCarrierAccount; // The additional field is added to the spreadsheet.
    
    // Fetch the recid of the customer.
     address.AddrRecId = CustTable::find(account).RecId;
     address.ShipCarrierAccount = '';
    }
    

    Fügen Sie den folgenden Code hinzu, um einen Anbieter zu importieren.

    str account;
    ;
    
    // If the address is for a vendor and recid for the vendor is not specified
     if (address.AddrTableId == tablenum(VendTable) && address.AddrRecId == 0)
     {
     account = address.ShipCarrierAccount; // The additional field is added to the spreadsheet.
    
    // Fetch the recid of vendor.
     address.AddrRecId = VendTable::find(account).RecId;
     address.ShipCarrierAccount = '';
     }
    
  19. Aktivieren Sie das Kontrollkästchen Konvertierung ausführen , und wählen Sie dann die Schaltfläche Kompilieren aus.

    Dieser Schritt bestimmt, ob der Code richtig eingegeben wird.

  20. Wählen Sie die Registerkarte Vorschau aus, überprüfen Sie, ob die Felder mit den richtigen Werten übereinstimmen, die in das Excel-Arbeitsblatt eingegeben wurden, und schließen Sie dann das Dialogfeld Tabelleneinrichtung .

  21. Wählen Sie im Dialogfeld Datenexport/-import die von Ihnen erstellte Definitionsgruppe aus, und wählen Sie dann Importieren aus.

  22. Wählen Sie im Dialogfeld Excel-Import das Excel-Arbeitsblatt aus, das Sie in Schritt 3 erstellt haben, und wählen Sie dann OK aus.

  23. Vergewissern Sie sich, dass die Adressen für den Kunden oder für den Anbieter importiert werden.