Solved

Manual Insert Fails

Posted on 2008-10-09
6
161 Views
Last Modified: 2010-04-21
I'm trying to insert a record to a sql server using an objectdatasource but I'm getting an exception when it gets to inserting the date field. The exception is:
"Object reference not set to an instance of an object."

The variable has the correct date in it so I'm not really sure what this means. I will post a copy of all the code I'm using in case someone can see what I'm doing wrong. Thanks for any help on this.

Code Behind on the Onclick event:
 
        Dim strWorkOrderID As String = txtWorkOrderID.Text
        Dim datDateWorked As Date = txtDateWorked.Text
        Dim strWorkPerformed As String = txtWorkDone.Text
       
        odsWorkOrderDetail.InsertParameters("WorkOrderID").DefaultValue = strWorkOrderID.ToString()
        odsWorkOrderDetail.InsertParameters("WorkDone").DefaultValue = strWorkPerformed.ToString()
        odsWorkOrderDetail.InsertParameters("DateWorked").DefaultValue = datDateWorked.ToShortDateString()  ****Fails Here****
        odsWorkOrderDetail.Insert()
 
 
 
ObjectDataSource:
 
 
 
<asp:ObjectDataSource ID="odsWorkOrderDetail" runat="server" 
                    InsertMethod="AddWorkOrderDetail" OldValuesParameterFormatString="{0}" 
                    SelectMethod="GetWorkOrderDetails" TypeName="WorkOrderBLL">
                    <SelectParameters>
                        <asp:Parameter Name="WorkOrderID" Type="String" />
                    </SelectParameters>
                    <InsertParameters>
                        <asp:Parameter Name="WorkOrderID" Type="String" />
                        <asp:Parameter Name="WorkDate" Type="DateTime" />
                        <asp:Parameter Name="WorkDone" Type="String" />
                    </InsertParameters>
                </asp:ObjectDataSource>
 
 BLL:
 
 <System.ComponentModel.DataObjectMethod(System.ComponentModel.DataObjectMethodType.Insert, False)> _
   Public Function AddWorkOrderDetail _
                  (ByVal workOrderID As String, _
                   ByVal workDate As Date, _
                   ByVal workDone As String) As Boolean
        Dim workOrderDetail As New WorkOrderDAL.FAC_WorkOrderDetailsDataTable
        Dim workOrderDetailRecord As WorkOrderDAL.FAC_WorkOrderDetailsRow = workOrderDetail.NewFAC_WorkOrderDetailsRow()
 
        workOrderDetailRecord.WorkOrderID = workOrderID
        workOrderDetailRecord.WorkDate = workDate
        workOrderDetailRecord.WorkDone = workDone
 
        workOrderDetail.AddFAC_WorkOrderDetailsRow(workOrderDetailRecord)
        Dim rowsAffected As Integer = DetailsAdapter.Update(workOrderDetail)
        Return rowsAffected = 1
    End Function
 
 
 
 
Stored Procedure:
 
 
 
ALTER PROCEDURE dbo.spInsertFAC_WorkOrderDetails
(
@WorkOrderID varchar(15),
@WorkDate datetime,
@WorkDone varchar (1000))
AS 
SET NOCOUNT OFF;
 
 
INSERT INTO dbo.FAC_WorkOrderDetails ([WorkOrderID], [WorkDate], [WorkDone])
     VALUES (@WorkOrderID, @WorkDate, @WorkDone);
SELECT WorkOrderID, WorkDate, WorkDone FROM dbo.FAC__WorkOrderDetails 
WHERE (WorkOrderDetailID = SCOPE_IDENTITY())

Open in new window

0
Comment
Question by:AkAlan
  • 3
  • 2
6 Comments
 
LVL 11

Expert Comment

by:fanopoe
ID: 22680523
dates really stink in cross platform programming, and you're taking a test string, changing it to a data, then to a date string, then passing it to a database. What happens when you declare datDateWorked  as a string instead and pass the value thusly?

hth
0
 
LVL 6

Author Comment

by:AkAlan
ID: 22680565
Same exact error. I even tried to hard code the date like this:
odsWorkOrderDetail.InsertParameters("DateWorked").DefaultValue = #1/1/2008#
it still gave me the same exact error
0
 
LVL 22

Accepted Solution

by:
prairiedog earned 500 total points
ID: 22680635
Parameter name does not match?
<asp:Parameter Name="WorkDate" Type="DateTime" />
odsWorkOrderDetail.InsertParameters("DateWorked").DefaultValue = datDateWorked.ToShortDateString()  
0
What is SQL Server and how does it work?

The purpose of this paper is to provide you background on SQL Server. It’s your self-study guide for learning fundamentals. It includes both the history of SQL and its technical basics. Concepts and definitions will form the solid foundation of your future DBA expertise.

 
LVL 6

Author Comment

by:AkAlan
ID: 22680651
Thanks, I must be way too close to this.
0
 
LVL 22

Expert Comment

by:prairiedog
ID: 22680705
It happens. Especially after you have seen your own code for a thousand times, you will need a pair eyes from another person to find this kind of error.
0
 
LVL 6

Author Closing Comment

by:AkAlan
ID: 31504744
That did the trick. Now I have another problem but that will be for another post if I can't figure it out. Thanks, I looked at this for 4 hours.
0

Featured Post

PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Using Quotation Marks in PHP This question (http://www.experts-exchange.com/Web_Development/Web_Languages-Standards/PHP/Q_28217211.html) seems to come up a lot for developers who are new to PHP.  And it got me thinking, "How can we explain the rule…
Foolproof security solutions has become one of the key necessities of every e-commerce or Internet banking website. If you too own an online shopping site then its vital for you to equip your web portal with customer security features that can allow…
Use Wufoo, an online form creation tool, to make powerful forms. Learn how to selectively show certain fields based on user input using rules to gather relevant information and data from your forms. The rules feature provides you with an opportunity…
Learn how to set-up custom confirmation messages to users who complete your Wufoo form. Include inputs from fields in your form, webpage redirects, and more with Wufoo’s confirmation options.

786 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question