Neu PRIMARY KEY-Einschränkung "PK_tArtikelAttributSprache"

WaWi4711

Aktives Mitglied
27. März 2017
1
0
Hallo zusammen,

ich versuche meine Daten (Artikel) aus Prestashop initial ins JTL WaWi system einzuspielen. Leider bekomme ich folgende Fehlermeldung (s.u.). Kennt jemand dieses Problem? Gbit es eine Lösung dazu?

Danke
Paul

Fehler:
Artikel-Empfangen-Fehler: Bitte beachten Sie, dass zur Fehler-Diagnose ebenfalls die Log-Datei des Servers und das Abgleich-Log der JTL-Wawi notwendig sind!
Verletzung der PRIMARY KEY-Einschränkung "PK_tArtikelAttributSprache". Ein doppelter Schlüssel kann in das dbo.tArtikelAttributSprache-Objekt nicht eingefügt werden. Der doppelte Schlüsselwert ist (459, 0).
Die Anweisung wurde beendet.
bei System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
bei System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
bei System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
bei System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
bei System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)
bei System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
bei System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean asyncWrite)
bei System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean asyncWrite)
bei System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
bei jtlDatabase.DB.qqSIDfAE4Xe[T](SqlConnection , Func`1 func)
bei jtlDatabase.DB.executeNonQuery(SqlCommand oSqlCommand)
bei jtlDatabase.classes.ConnectorClasses.SaveClasses.AttributeSaver.SaveProductAttributes(IEnumerable`1 attributes, jtlShop shop, Int32 kArtikel)
bei jtlDatabase.classes.ConnectorClasses.ProductSaver.BwoCDmgolt(IEnumerable`1 attributes, jtlArtikel )
bei jtlDatabase.classes.ConnectorClasses.ProductSaver.Save(List`1 products, List`1& exceptions)
bei jtlDatabase.classes.ConnectorClasses.Saver.Save(IEnumerable`1 items, jtlShop shop, List`1& exceptions)
bei jtlCore.ControllerClasses. Connector.Abgleich.Funktionen.ConnectorPuller.Pull[TEntity](Int64 quantity)



Warnungen:
Artikelnummer '100200325400993015' ist bereits vorhanden. Der Wawi-Artikel wird aktualisiert.
Der Shop hat nicht alle Artikel gesendet.Abgleich darf nicht weiterlaufen.
 

bhjtlwawi

Aktives Mitglied
28. April 2017
2
0
Hi,

wir haben ein vergleichbares Problem mit einem Shopware Shop.

Selbige oben genannte Fehlermeldungen!

Bin um Lösungsanregungen ebenfalls sehr dankbar ;)
 

Shopy

Aktives Mitglied
18. Juli 2017
2
1
Wir hatten dieses Problem mit Shopware (5.04 und 5.26)

Ursache:
Die Artikeltexte der Subshops werden bei Shopware über die Sprache innerhalb der Artikel geregelt. Sollte man verschiedene Artikeltexte (bei gleichen Artikeln) für verschiedene Subshops verwenden werden irgendwie eigene Sprachen angelegt mit dem Namen des Subshops.
In der DB werden diese aber mit der Standardsprache Deutsch versehen (ich hatte mir das als Subshop Sprache innerhalb von Deutsch erklärt).

Der Connector scheint allerdings nur die Hauptsprachen zu kennen (siehe Grundeinstellungen) und erhält daher doppelte Einträge bei den Sprachen.

Wir haben uns notdürftig damit beholfen, dass wir die Subshop Texte vorerst über den Haufen geworfen haben (sprich die entsprechenden DB Zeilen in Shopware gelöscht haben).

Mittelfristig sind wir jedoch auch dankbar wenn wir eine Lösung für das Problem erhalten könnten da so faktisch Subshops seomäßig ausgeschlossen werden.
 
  • Gefällt mir
Reaktionen: Xantiva

Lemminger

Aktives Mitglied
3. August 2017
1
0
Hallo zusammen,

leider habe ich das selbe Problem mit Prestashop 1.6.1.13 + JTL Wawi Connector v1.4.8.

Die zweite Sprache habe ich ebenfalls aus dem Shop entfernt und alle dazugehörigen Einträge mit "id_lang" aus der Datenbank entfernt. Beim Onlineshop-Abgleich erhalte ich trotzdem schon nach wenigen Artikeln folgende Meldung:

Fehler:

Artikel-Empfangen-Fehler: Bitte beachten Sie, dass zur Fehler-Diagnose ebenfalls die Log-Datei des Servers und das Abgleich-Log der JTL-Wawi notwendig sind!
Verletzung der PRIMARY KEY-Einschränkung 'PK_tArtikelAttributSprache'. Ein doppelter Schlüssel kann in das dbo.tArtikelAttributSprache-Objekt nicht eingefügt werden. Der doppelte Schlüsselwert ist (1093, 0).
Die Anweisung wurde beendet.
bei System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
bei System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
bei System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj, Boolean callerHasConnectionLock, Boolean asyncClose)
bei System.Data.SqlClient.TdsParser.TryRun(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj, Boolean& dataReady)
bei System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString, Boolean isInternal, Boolean forDescribeParameterEncryption)
bei System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async, Int32 timeout, Task& task, Boolean asyncWrite, Boolean inRetry, SqlDataReader ds, Boolean describeParameterEncryptionRequest)
bei System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, TaskCompletionSource`1 completion, Int32 timeout, Task& task, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
bei System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(TaskCompletionSource`1 completion, String methodName, Boolean sendToPipe, Int32 timeout, Boolean& usedCache, Boolean asyncWrite, Boolean inRetry)
bei System.Data.SqlClient.SqlCommand.ExecuteNonQuery()
bei jtlDatabase.DB.F5hjm26Pwt6[T](SqlConnection , Func`1 func)
bei jtlDatabase.DB.executeNonQuery(SqlCommand oSqlCommand)
bei jtlDatabase.classes.ConnectorClasses.SaveClasses.AttributeSaver.SaveProductAttributes(IEnumerable`1 attributes, jtlShop shop, Int32 kArtikel)
bei jtlDatabase.classes.ConnectorClasses.ProductSaver.s7dfN7nUow(IEnumerable`1 attributes, jtlArtikel )
bei jtlDatabase.classes.ConnectorClasses.ProductSaver.Save(List`1 products, List`1& exceptions)
bei jtlDatabase.classes.ConnectorClasses.Saver.Save(IEnumerable`1 items, jtlShop shop, List`1& exceptions)
bei jtlCore.ControllerClasses.Connector.Abgleich.Funktionen.ConnectorPuller.Pull[TEntity](Int64 quantity)


Für eine Lösung wäre ich sehr dankbar!!!
 

JTL4Tom

Gut bekanntes Mitglied
15. November 2016
141
11
Ich hab diese Meldung beim Anlegen und speichern von Varkombis. Meist dann, wenn ich mal eine VarKombi hatte, diese wieder lösche und später dann wieder anlege. Geschieht hier gerade während dem Testen.
Da bin ich noch ganz in der Wawi und ohne connectoraktivierung.
hc_042.jpg