Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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:
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.
Wählen Sie im Excel-Vorlagen-Assistenten "Weiter" aus.
Geben Sie im Feld "Dateiname" den Namen der Datei ein, die Sie verwenden möchten, und wählen Sie dann "Weiter" aus.
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.
Wählen Sie auf der Listenseite "Felder generieren" des Assistenten "Weiter" aus.
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
Wählen Sie Weiter aus.
Führen Sie die Schritte im Assistenten aus, um den Import abzuschließen.
Wählen Sie im Navigationsbereich "Einfach" aus, erweitern Sie "Setup", erweitern Sie "Globales Adressbuch", und wählen Sie dann "Parameter" aus.
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.
Suchen Sie die Datei, die Sie in Schritt 3 erstellt haben. Die Excel-Kalkulationstabelle, die die zu importierenden Daten enthält, wird aufgefüllt.
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.
Wählen Sie im Navigationsbereich "Verwaltung", erweitern Sie "Periodisch", erweitern Sie "Datenexport/-import", und wählen Sie dann "Definitionsgruppen" aus.
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.
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); }
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.
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 ".
Wählen Sie im Dialogfeld "Datenexport/Import " die von Ihnen erstellte Definitionsgruppe und dann " Importieren" aus.
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.
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:
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.
Wählen Sie im Excel-Vorlagen-Assistenten "Weiter" aus.
Geben Sie im Feld "Dateiname" den Namen der Datei ein, die Sie verwenden möchten, und wählen Sie dann "Weiter" aus.
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.
Wählen Sie auf der Listenseite "Felder generieren" des Assistenten "Weiter" aus.
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
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 ".
Wählen Sie Weiter aus.
Führen Sie die Schritte im Assistenten aus, um den Import abzuschließen.
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.
Setzen Sie das Feld "Bezug" auf 0 fest.
Geben Sie für das feld "Zusätzliche Netzbetreiberkontonummer ", das Sie der Tabelle hinzugefügt haben, die Kundenkontonummer ein.
Suchen Sie in der Application-Objektstruktur (Application Object Tree, AOT) die
importData
Methode im folgenden Objekt:Classes\SysDataImportDefBase
Ä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(); }
Speichern Sie die
SysDataImportDefBase
Klasse, und kompilieren Sie sie dann.Wählen Sie im Navigationsbereich "Verwaltung", erweitern Sie "Periodisch", erweitern Sie "Datenexport/-import", und wählen Sie dann "Definitionsgruppen" aus.
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.
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 = ''; }
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.
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 ".
Wählen Sie im Dialogfeld "Datenexport/Import " die von Ihnen erstellte Definitionsgruppe und dann " Importieren" aus.
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.
Überprüfen Sie, ob die Adressen für den Kunden oder für den Lieferanten importiert werden.