Problembeschreibung
Betrachten Sie das folgende Szenario:
-
Sie haben einen Computer mit Microsoft Commerce Server 2009.
-
Sie konfigurieren den Parameter SearchCriteria.CategoriesClause ein CommerceQuery Produkte in mehreren Kategorien durchsucht. Konfigurieren Sie z. B. den SearchCriteria.CategoriesClause -Parameter mithilfe der folgenden Syntax:query.SearchCriteria.CategoriesClause = "[IsSearchable] = 1";
-
Sie starten den CommerceQuery Vorgang dar, der mehrere Commerce Server-Produkte aus mehreren Kategorien auf einer Commerce Server-Site.
In diesem Szenario erhalten Sie eine Fehlermeldung, die auf Commerce Server-Site die folgenden ähnelt:
Details der Ausnahme: System.ServiceModel.FaultException'1[[Microsoft.Commerce.Contracts.Faults.GeneralOperationFault, Microsoft.Commerce.Contracts, Version = 1.0.0.0, Culture = Neutral, PublicKeyToken = 31bf3856ad364e35]]: Operation-Dienst: Fehler beim Verarbeiten der Anforderung. Die Fehlerdetails wurden vom Dienst angemeldet.
Fehler:
Zeile 49: ParameterChecker.CheckForNull (Vorgang, "Betrieb")
Zeile 50:
Zeile 51: CommerceFoundationServiceAgent.operationServiveAgent.ProcessRequest (zurück
Zeile 52: GetCurrentRequestContext() Vorgang. ToRequest());
Zeile 53:}
: Quelle C:\CS2009\Catalog\Components\CommerceFoundationServiceAgent.cs Zeile: 51
Stack-Trace:
[FaultException'1: Operation-Dienst: Fehler beim Verarbeiten der Anforderung. Die Fehlerdetails wurden vom Dienst angemeldet.]
Microsoft.Commerce.Broker.OperationService.ProcessRequest(CommerceRequest request) +697
Microsoft.Commerce.Common.OperationServiceAgent.ProcessRequest (CommerceRequestContext RequestContext, CommerceRequest Anforderung) 154.
Microsoft.Samples.Commerce.Catalog.CommerceFoundationServiceAgent.Execute (CommerceBaseBuilder-Betrieb) in C:\CS2009\Catalog\Components\CommerceFoundationServiceAgent.cs:51
Microsoft.Samples.Commerce.Catalog.SimpleSearch.BtnSearch_Click (Objektsender, EventArgs e) in C:\CS2009\Catalog\SimpleSearch.aspx.cs:76
System.Web.UI.WebControls.Button.OnClick(EventArgs e) +115
System.Web.UI.WebControls.Button.RaisePostBackEvent(String eventArgument) + 140
System.Web.UI.Page.RaisePostBackEvent (IPostBackEventHandler SourceControl, Zeichenfolge EventArgument) 29
System.Web.UI.Page.ProcessRequestMain (Boolean IncludeStagesBeforeAsyncPoint, boolesche IncludeStagesAfterAsyncPoint) +2981
Darüber hinaus wird die folgende Fehlermeldung in der SQL Server-Fehlerprotokolldatei protokolliert:
Msg 2627, Ebene 14, Status 1, Zeile 1 Verletzung der UNIQUE KEY-Einschränkung "UQ__CtlInv___ < Text >". Doppelten Schlüssel kann nicht in Objekt einfügen ' Dbo. CtlInv___CategorySearch___SortedResults__for_spid__ < Spid >'. Die Anweisung wurde beendet.
Ursache
Dieses Problem tritt aufgrund eines Fehlers in der Ctlg_FillCategoryDescendants gespeicherten Prozedur.
Problemlösung
Hotfix-Informationen
Ein unterstützter Hotfix ist von Microsoft erhältlich. Dieser Hotfix soll nur der Behebung des Problems dienen, das in diesem Artikel beschrieben wird. Verwenden Sie diesen Hotfix nur auf Systemen, bei denen dieses spezielle Problem auftritt.
Wenn der Hotfix zum Download zur Verfügung steht, gibt es einen Abschnitt "Hotfixdownload available" ("Hotfixdownload verfügbar"), am oberen Rand dieses Knowledge Base-Artikel. Wenn dieser Abschnitt nicht angezeigt wird, senden Sie eine Anforderung an Microsoft Customer Service and Support, um den Hotfix zu erhalten.
Hinweis Falls weitere Probleme auftreten oder andere Schritte zur Problembehandlung erforderlich sind, müssen Sie möglicherweise eine separate Serviceanfrage erstellen. Die normalen Supportkosten gelten für zusätzliche Supportfragen und Probleme, die nicht diesem speziellen Hotfix zugeordnet werden können. Eine vollständige Liste der Telefonnummern von Microsoft Customer Service and Support oder eine separate Serviceanfrage erstellen finden Sie auf folgender Microsoft-Website:
http://support.microsoft.com/contactus/?ws=supportHinweis Das Formular "Hotfix download available" ("Hotfixdownload verfügbar") zeigt die Sprachen an, für die der Hotfix verfügbar ist. Wenn Ihre Sprache nicht angezeigt wird, ist dieser Hotfix für Ihre Sprache nicht verfügbar.
Voraussetzungen
Um diesen Hotfix anwenden zu können, müssen Sie Microsoft Commerce Server 2007 Service Pack 2 (SP2).
Neustartanforderung
Sie müssen keinen Neustart des Computers nach der Installation dieses Hotfixes durchführen. Jedoch müssen Sie Internet Information Services (IIS) und Commerce Server Catalog Import Host COM+-Anwendung starten, nachdem Sie diesen Hotfix anwenden.
Neustart von IIS geben Sie folgenden Befehl an der Befehlszeile und dann die EINGABETASTE:
IISRESET /RESTART
Hinweis Dieser Befehl beendet und neu gestartet alle IIS-Dienste auf einem Computer ausgeführt werden.
Informationen zu ersetzten Hotfixes
Dieser Hotfix ersetzt keinen anderen Hotfix.
Installationsschritte
Das Hotfix-Paket enthält die folgenden Dateien:
-
CommerceServer2007SP3-KB2498781-ENU.exe
-
KB2498781.sql
-
hotfix.txt
Um dieses Problem in neuen Katalogdatenbanken zu verhindern, führen Sie CommerceServer2007SP3-KB2498781-ENU.exe Datei zum Aktualisieren die Datei Catalogcreate.sql für Commerce Server 2009.
Katalogdatenbanken zum Beheben dieses Problems führen Sie die Datei KB2498781.sql aus.
Dateiinformationen
Die englische Version dieses Hotfixes weist Dateiattribute (oder spätere Attribute), die in der folgenden Tabelle aufgelistet sind. Die Datums- und Uhrzeitangaben für diese Dateien sind in Coordinated Universal Time (UTC) aufgelistet. Wenn Sie die Dateiinformationen anzeigen, werden sie in die lokale Zeit konvertiert. Um die Differenz zwischen UTC und der Ortszeit zu finden, verwenden Sie die Registerkarte Zeitzone unter Datum und Uhrzeit in der Systemsteuerung.
Commerce Server 2009
Dateiname |
Dateiversion |
Dateigröße |
Datum |
Zeit |
Plattform |
---|---|---|---|---|---|
Catalogcreate.sql |
Nicht zutreffend |
1,156,498 |
14-Dec-2012 |
08:37 |
Nicht zutreffend |
Cs2009hotfixhelper.exe |
6.0.4171.96 |
12.872 |
14-Dec-2012 |
09:14 |
x86 |
Status
Microsoft hat bestätigt, dass es sich um ein Problem bei den Microsoft-Produkten handelt, die im Abschnitt „Eigenschaften“ aufgeführt sind.
Referenzen
Weitere Informationen über den CommerceQuery -Vorgang finden Sie auf der folgenden Microsoft Developer Network (MSDN) Website:
Allgemeine Informationen über den CommerceQuery-VorgangWeitere Informationen über die Eigenschaft CategoriesClause finden Sie auf der folgenden MSDN-Website:
Allgemeine Informationen über die CategoriesClause-Eigenschaft