Portal Engine Questions on portal engine and web parts.
Version 7.x > Portal Engine > SAVEDOCUMENT Error View modes: 
User avatar
Member
Member
mishelp-primowater - 12/6/2013 8:41:53 AM
   
SAVEDOCUMENT Error
I keep getting an error when saving Form data for certain custom products.

The error message that appears when trying to save is :An error occurred when saving data. Please see event log for more details.

The event detail is as follows:
An error occurred when saving data. Please see event log for more details.
Message: Failed to convert parameter value from a Guid to a String.
Stack Trace:
at System.Data.SqlClient.SqlParameter.CoerceValue(Object value, MetaType destinationType)
at System.Data.SqlClient.SqlParameter.GetCoercedValue()
at System.Data.SqlClient.SqlParameter.Validate(Int32 index, Boolean isCommandProc)
at System.Data.SqlClient.SqlCommand.BuildParamList(TdsParser parser, SqlParameterCollection parameters)
at System.Data.SqlClient.SqlCommand.BuildExecuteSql(CommandBehavior behavior, String commandText, SqlParameterCollection parameters, _SqlRPC& rpc)
at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)
at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method)
at System.Data.SqlClient.SqlCommand.ExecuteReader(CommandBehavior behavior, String method)
at System.Data.SqlClient.SqlCommand.ExecuteDbDataReader(CommandBehavior behavior)
at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader(CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.FillInternal(DataSet dataset, DataTable[] datatables, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet, Int32 startRecord, Int32 maxRecords, String srcTable, IDbCommand command, CommandBehavior behavior)
at System.Data.Common.DbDataAdapter.Fill(DataSet dataSet)
at CMS.DataProviderSQL.DataConnection.ExecuteQuery(String queryText, QueryDataParameters queryParams, QueryTypeEnum queryType, Boolean requiresTransaction)
at CMS.DataEngine.AbstractDataConnection.CMS.SettingsProvider.IDataConnection.ExecuteQuery(String queryText, QueryDataParameters queryParams, QueryTypeEnum queryType, Boolean requiresTransaction)
at CMS.DataEngine.GeneralConnection.RunQuery(QueryParameters query)
at CMS.DataEngine.GeneralConnection.ExecuteQuery(QueryParameters query)
at CMS.DataEngine.GeneralConnection.ExecuteQuery(String queryName, QueryDataParameters parameters, String where, String orderBy, Int32 topN, String columns)
at CMS.DataEngine.GeneralConnection.ExecuteQuery(String queryName, QueryDataParameters parameters)
at CMS.DataEngine.SimpleDataClass.Update()
at CMS.DataEngine.AbstractInfo`1.UpdateData()
at CMS.Synchronization.SynchronizedInfo`1.UpdateData()
at CMS.DataEngine.AbstractInfoProvider`2.SetInfo(InfoType info)
at CMS.Ecommerce.SKUInfoProvider.SetSKUInfoInternal(SKUInfo skuObj)
at CMS.Ecommerce.SKUInfoProvider.SetSKUInfo(SKUInfo skuObj)
at CMS.Ecommerce.SKUInfo.SetObject()
at CMS.SettingsProvider.BaseInfo.Update()
at CMS.Ecommerce.SKUTreeNode.SetSKU()
at CMS.Ecommerce.SKUTreeNode.UpdateTreeClass()
at CMS.DocumentEngine.TreeNode.UpdateInternal()
at CMS.DocumentEngine.TreeNode.Update(Boolean useDocumentHelper)
at CMS.DocumentEngine.DocumentHelper.UpdateDocument(TreeNode node, TreeProvider tree, Boolean logSynchronization, String updateColumns)
at CMS.DocumentEngine.TreeNode.Update(Boolean useDocumentHelper)
at CMS.FormControls.CMSDocumentManager.UpdateDocumentInternal(Boolean useDocumentHelper)
at CMS.FormControls.CMSDocumentManager.UpdateDocument(Boolean useDocumentHelper)
at CMS.FormControls.CMSForm.SaveDataToDB()
at CMS.FormControls.CMSForm.BasicForm_OnAfterSave(Object sender, EventArgs e)
at CMS.FormControls.BasicForm.RaiseOnAfterSave(Object sender, EventArgs e)
at CMS.FormControls.BasicForm.SaveData(String redirectUrlAfterSave, Boolean showChangesSaved)
at CMS.FormControls.CMSForm.DocumentManager_OnSaveData(Object sender, DocumentManagerEventArgs e)
at System.EventHandler`1.Invoke(Object sender, TEventArgs e)
at CMS.FormControls.CMSAbstractManager`2.RaiseSaveData(EventArgsType args)
at CMS.FormControls.CMSDocumentManager.SaveDocumentInternal(String actionContext)
Object must implement IConvertible.
at System.Convert.ChangeType(Object value, Type conversionType, IFormatProvider provider)
at System.Data.SqlClient.SqlParameter.CoerceValue(Object value, MetaType destinationType)

Site name: Primo Store
Machine name: KENTICO
Event URL: /CMSModules/Ecommerce/Pages/Content/Product/Product_Edit_General.aspx?nodeid=3463&culture=en-US
URL referrer: http://store.primowater.com/CMSModules/Ecommerce/Pages/Content/Product/Product_Edit_General.aspx?nodeid=3463&culture=en-US
User agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.57 Safari/537.36

A failure to convert a parameter of guid to string seems a little odd. Anyone else face this issue before?

User avatar
Kentico Legend
Kentico Legend
Brenden Kehren - 12/8/2013 8:47:14 PM
   
RE:SAVEDOCUMENT Error
Do you have any custom event handlers or code with these custom products?

User avatar
Member
Member
mishelp-primowater - 12/10/2013 1:06:58 PM
   
RE:SAVEDOCUMENT Error
There is custom code for the custom products; however, I believe I found the issue. We had a two of the same types of documents trying to join together. We have a custom cooler document and a customer service document type that join together and share attributes, but the person that was adding these documents added two of the same document types for the same product, therefore causing this strange error.