Freigeben über


Importieren von Kunden und Lieferanten in Microsoft Dynamics AX 2009

In diesem Artikel wird beschrieben, wie Kunden in Microsoft Dynamics AX 2009 aus einer Microsoft Office Excel-Tabelle importiert werden. In diesen Schritten wird beschrieben, wie Kunden importiert werden. Sie können diese Schritte jedoch auch ausführen, um Lieferanten 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", "Periodisch" aus, erweitern Sie "Datenexport/-import", erweitern Sie Excel-Kalkulationstabellen, und wählen Sie dann den Vorlagen-Assistenten 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 „CustTable“ im Bereich „Verfügbare Objekte“ 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.

    Notiz

    Wählen Sie für Lieferanten 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 Abschnitt Kunde, 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
    • Debitorengruppe
    • Währung
    • Sprache
    • Adressbuchtyp
    • Adressbuch-ID-Name
    • Adresse
    • Zahlungsbedingungen
    • Land/Region
    • ZIP-/Postleitzahl
    • Staat
    • Landkreis
    • Suchbegriff
    • Ort
    • Straßenname
    • Land/Region
    • Staat
    • Firma
  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 "Einfach" aus, erweitern Sie "Setup", erweitern Sie "Globales Adressbuch", und wählen Sie dann "Parameter" aus.

  10. Wählen Sie die Registerkarte Nummernfolgen aus und überprüfen Sie, dass eine Nummernfolge für die Adressbuch-ID ausgewählt ist.

    Notiz

    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 zu importierenden Daten enthält, wird aufgefüllt.

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

  13. Wählen Sie im Navigationsbereich "Verwaltung", 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 mithilfe des Excel-Vorlagen-Assistenten erstellt haben, und wählen Sie dann "Tabellensetup" aus.

  15. Wählen Sie im Dialogfeld "Tabelle einrichten " die Registerkarte "Konvertierung " aus, und fügen Sie dann den folgenden Code für Importe in die CustTable-Tabelle nach der Standardzeile im Fenster 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);
     }
    

    Um Lieferanten zu importieren, fügen Sie den folgenden Code hinzu.

    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 dann die Schaltfläche "Kompilieren ".

    In diesem Schritt wird ermittelt, ob der Code richtig eingegeben wurde.

  17. Wählen Sie die Registerkarte "Vorschau " aus, vergewissern Sie sich, dass die Felder den richtigen Werten entsprechen, die in die Excel-Tabelle eingegeben werden, und schließen Sie dann das Dialogfeld "Tabelle einrichten ".

  18. Wählen Sie im Dialogfeld "Datenexport/Import " die von Ihnen erstellte Definitionsgruppe und dann " Importieren" aus.

  19. Wählen Sie im Dialogfeld "Excel-Import" die Excel-Kalkulationstabelle aus, die 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 zusätzliche Adressen für den Kunden importieren. Gehen Sie dazu wie folgt vor:

  1. Wählen Sie im Navigationsbereich "Verwaltung", "Periodisch" aus, erweitern Sie "Datenexport/-import", erweitern Sie Excel-Kalkulationstabellen, und wählen Sie dann den Vorlagen-Assistenten 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 "Adresse" im Bereich "Verfügbare Objekte" 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. Auf der Seite "Felder auswählen" des Assistenten, erweitern Sie "Alternative Adresse" und wählen Sie dann die Felder aus, die Sie in Microsoft Dynamics AX importieren möchten.

    Notiz

    Datensatz-ID und Tabellen-ID der Haupttabelle 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 beispielsweise das Kontrollkästchen "Netzbetreiberkontonummer ".

  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 füllen Sie dann die Daten aus, die Sie importieren möchten.

    Notiz

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

  11. Setzen Sie das Feld "Bezug" auf 0 fest.

  12. Geben Sie für das feld "Zusätzliche Netzbetreiberkontonummer ", das Sie der Tabelle hinzugefügt haben, die Kundenkontonummer ein.

  13. Suchen Sie in der Application-Objektstruktur (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();
    

    Austauschcode

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

  16. Wählen Sie im Navigationsbereich "Verwaltung", 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 mithilfe des Excel-Vorlagen-Assistenten erstellt haben, und wählen Sie dann "Tabellensetup" aus.

  18. Wählen Sie im Dialogfeld "Tabelle einrichten " die Registerkarte "Konvertierung " aus, und fügen Sie dann den folgenden Code für Importe in die CustTable-Tabelle nach der Standardzeile im Fenster 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 = '';
    }
    

    Um einen Anbieter zu importieren, fügen Sie den folgenden Code hinzu.

    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 dann die Schaltfläche "Kompilieren ".

    In diesem Schritt wird ermittelt, ob der Code richtig eingegeben wurde.

  20. Wählen Sie die Registerkarte "Vorschau " aus, vergewissern Sie sich, dass die Felder den richtigen Werten entsprechen, die in die Excel-Tabelle eingegeben werden, und schließen Sie dann das Dialogfeld "Tabelle einrichten ".

  21. Wählen Sie im Dialogfeld "Datenexport/Import " die von Ihnen erstellte Definitionsgruppe und dann " Importieren" aus.

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

  23. Überprüfen Sie, ob die Adressen für den Kunden oder für den Lieferanten importiert werden.