﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>StrataFrame Forum » StrataFrame Application Framework - V1 » Business Objects and Data Access (How do I?)  » Bug : When you update a row using stored procedure</title><generator>InstantForum 2017-1 Final</generator><description>StrataFrame Forum</description><link>http://forum.strataframe.net/</link><webMaster>StrataFrame Forum</webMaster><lastBuildDate>Tue, 09 Jun 2026 08:11:17 GMT</lastBuildDate><ttl>20</ttl><item><title>Bug : When you update a row using stored procedure</title><link>http://forum.strataframe.net/FindPost13174.aspx</link><description>Hi,&lt;P&gt;&amp;nbsp;I found this problem when I am developing an application for my client. Initialy I thought I am making mistake. I checked the forums. I couldn't find any usefull information. But I found a sql script in the forum that explains how to use stored procedures. Using the same tables and stored procedure I created a separate test application that has one business object which maps to table&amp;nbsp; &lt;FONT size=2&gt;&lt;STRONG&gt;CrudTest_GuidPk.&lt;/STRONG&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;I wanted use&amp;nbsp; &lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;sp_CrudTest_Insert_GuidPk and &lt;/STRONG&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;STRONG&gt;sp_CrudTest_Update_GuidPk &lt;/STRONG&gt;for inserting and updating respectively.&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;I tested the above stored procedures separately outside the application. I am able insert and update the table.&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;I set appropriate properties:&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;InsertStoredProcedureName = sp_CrudTest_Insert_GuidPk&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;InsertUsingStoredProcedure=true&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;PrimaryKeyIsAutoIncremented = false&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;StoredProcedureParameterPreFix =@&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;UpdateConcurrencyType = Off&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;UpdateStoredProcedureName = sp_CrudTest_Update_GuidPk&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT size=2&gt;&lt;FONT size=2&gt;UpdateUsingStoredProcedureName= true&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;P&gt;I am able to Insert a row through application but whn I try edit and save I am getting the following error:&lt;/P&gt;&lt;P&gt;BusinessLayerException&lt;BR&gt;&amp;nbsp; An error occurred while saving an the data to the server.&lt;BR&gt;DataLayerSavingException&lt;BR&gt;&amp;nbsp; Procedure or function sp_CrudTest_Update_GuidPk has too many arguments specified.&lt;BR&gt;SqlException&lt;BR&gt;&amp;nbsp; Procedure or function sp_CrudTest_Update_GuidPk has too many arguments specified.&lt;/P&gt;&lt;P&gt;Source&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; : MicroFour StrataFrame Business&lt;/P&gt;&lt;P&gt;Stack Trace: &lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Data.SqlClient.SqlInternalConnection.OnError(SqlException exception, Boolean breakConnection)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Data.SqlClient.TdsParser.ThrowExceptionAndWarning(TdsParserStateObject stateObj)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Data.SqlClient.TdsParser.Run(RunBehavior runBehavior, SqlCommand cmdHandler, SqlDataReader dataStream, BulkCopySimpleResultSet bulkCopyHandler, TdsParserStateObject stateObj)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Data.SqlClient.SqlCommand.FinishExecuteReader(SqlDataReader ds, RunBehavior runBehavior, String resetOptionsString)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Data.SqlClient.SqlCommand.RunExecuteReaderTds(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, Boolean async)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Data.SqlClient.SqlCommand.RunExecuteReader(CommandBehavior cmdBehavior, RunBehavior runBehavior, Boolean returnStream, String method, DbAsyncResult result)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Data.SqlClient.SqlCommand.InternalExecuteNonQuery(DbAsyncResult result, String methodName, Boolean sendToPipe)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Data.SqlClient.SqlCommand.ExecuteNonQuery()&lt;BR&gt;&amp;nbsp;&amp;nbsp; at MicroFour.StrataFrame.Data.DbDataSourceItem.InternalExecuteNonQuery(DbCommand Command, Boolean IsTransactional, String TransactionKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at MicroFour.StrataFrame.Data.SqlDataSourceItem.UpdateRow(QueryInformation QueryInfo, DataRow RowToUpdate, ConcurrencyExceptionHandler ConcurrencyHandler, AddRowErrorHandler RowErrorHandler, Boolean RecreateCommand)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at MicroFour.StrataFrame.Data.DbDataSourceItem.UpdateRow(QueryInformation QueryInfo, DataRow RowToUpdate, ConcurrencyExceptionHandler ConcurrencyHandler, AddRowErrorHandler RowErrorHandler)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at MicroFour.StrataFrame.Data.DataLayer.UpdateDataTableThread(Object ThreadParams)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at MicroFour.StrataFrame.Data.DataLayer.SaveByForm(DataTable TableToSave, Boolean Transactional, String TransactionKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at MicroFour.StrataFrame.Business.BusinessLayer.SaveByForm(Boolean Transactional, String TransactionKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at MicroFour.StrataFrame.UI.Windows.Forms.BaseForm.Save(Boolean Transactional, String TransactionKey)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at MicroFour.StrataFrame.UI.Windows.Forms.BaseForm.Save()&lt;BR&gt;&amp;nbsp;&amp;nbsp; at MicroFour.StrataFrame.UI.Windows.Forms.MaintenanceFormToolStrip.cmdSave_Click(Object sender, EventArgs e)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.ToolStripButton.OnClick(EventArgs e)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.Control.WmMouseUp(Message&amp;amp; m, MouseButtons button, Int32 clicks)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.Control.WndProc(Message&amp;amp; m)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.ScrollableControl.WndProc(Message&amp;amp; m)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.ToolStrip.WndProc(Message&amp;amp; m)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.Control.ControlNative&amp;#119;indow.OnMessage(Message&amp;amp; m)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.Control.ControlNative&amp;#119;indow.WndProc(Message&amp;amp; m)&lt;BR&gt;&amp;nbsp;&amp;nbsp; at System.Windows.Forms.Native&amp;#119;indow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)&lt;BR&gt;&lt;/P&gt;&lt;P&gt;I am able to re-create the problem several times in different applications.&lt;/P&gt;&lt;P&gt;Please help</description><pubDate>Fri, 28 Dec 2007 10:33:31 GMT</pubDate><dc:creator>Alagarsamy Rajamannar</dc:creator></item><item><title>RE: Bug : When you update a row using stored procedure</title><link>http://forum.strataframe.net/FindPost13187.aspx</link><description>Excellent!  :D</description><pubDate>Fri, 28 Dec 2007 10:33:31 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: Bug : When you update a row using stored procedure</title><link>http://forum.strataframe.net/FindPost13185.aspx</link><description>I LOOKED AT OLD REPLIES DONE SF.&lt;/P&gt;&lt;P&gt;BY DEFAULT IF WE HAVE NON-IDENTITY COLUMN ACTING AS PRIMARY KEY IN THIS CASE GUID WHICH IS NON-IDENTITY COLUMN&amp;nbsp; UPDATE / INSERT STORED PROCEDURE NEEDS TO HAVE &amp;lt;columnname&amp;gt;_ORGPK AS INPUT PARAMETER&lt;/P&gt;&lt;P&gt;HIYA....I FOUND THIS</description><pubDate>Fri, 28 Dec 2007 09:18:40 GMT</pubDate><dc:creator>Alagarsamy Rajamannar</dc:creator></item><item><title>RE: Bug : When you update a row using stored procedure</title><link>http://forum.strataframe.net/FindPost13181.aspx</link><description>I don't believe you have built your sproc correctly.  See the "Table CRUD Stored Procedures" topic in help to figure you how to build your sprocs to work with SF. Also just note what parameters are passed in the debug file. It looks like when using a GUID, you need the last param to be another GUID (not sure why).  I hope that helps some.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;</description><pubDate>Thu, 27 Dec 2007 13:44:47 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: Bug : When you update a row using stored procedure</title><link>http://forum.strataframe.net/FindPost13175.aspx</link><description>I have attached the debug html file also. &lt;/P&gt;&lt;P&gt;It adds _ORGPK PARAMETER by its own. What does that mean? &lt;/P&gt;&lt;P&gt;Is it a fetaure or Am I missing something here?&lt;/P&gt;&lt;P&gt;Please help me...</description><pubDate>Thu, 27 Dec 2007 07:05:18 GMT</pubDate><dc:creator>Alagarsamy Rajamannar</dc:creator></item></channel></rss>