Hi,<BR><BR>I am working on an application which sucks its values from a database and produces a stock ordering form for the user. I have gathered and displayed the fields using a do loop formula which also places an input box on each line. This works great, and I have no problems choosing the fields which have a value and writing them to a confirmation page.<BR><BR>My problem comes when I try to write the values to a database (Access 2000). I always come back to this same error:<BR><BR>Microsoft OLE DB Provider for ODBC Drivers error &#039 80040e21&#039 <BR><BR>Multiple-step OLE DB operation generated errors. Check each OLE DB status value, if available. No work was done. <BR><BR>/pages/philmac/confirmorder.asp, line 54 <BR><BR>My code is as follows: (Line 54 is "rst("fldProdCode") = strProdCode"<BR><BR><BR> Set rs = Server.CreateObject("ADODB.RecordSet")<BR> Set rst = Server.CreateObject("ADODB.RecordSet")<BR> Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & DatabasePath & ";"<BR> StrSQL = "Select * From tblPhilmacOrderDetails"<BR> StrMySQL = "Select * From tblPhilmacOrders"<BR> rs.Open StrSQL,Conn,1,2<BR> rst.Open StrMySQL,Conn,1,2<BR><BR> iCount = Request("iCount")<BR><BR> strContName = Request.Form("frmContName")<BR> strStreetAdd = Request.Form("frmstreetAdd")<BR> strSuburb = Request.Form("frmSuburb")<BR> strState = Request.Form("frmState")<BR> strPostCode = Request.Form("frmPostCode")<BR> strCenter = Request.Form("frmCenter")<BR> strExtNo = Request.Form("frmExtNo")<BR> strDate = Request.Form("frmDate")<BR> strSpecInst = Request.Form("frmSpecInst")<BR><BR>&#039if we pass through validation then store the information in the db<BR> rs.AddNew<BR> rs("fldDate") = strDate<BR> rs("fldContact") = strContName<BR> rs("fldAddress") = strAddress<BR> rs("fldSuburb") = strSuburb<BR> rs("fldState") = strState<BR> rs("fldPostCode") = strPostCode<BR> rs("fldExt") = strExtNo<BR> rs("fldSpecInst") = strSpecInst<BR> rs.update<BR><BR> &#039Now we want to loop through each form element<BR> Dim iLoop<BR> For iLoop = 0 to iCount<BR> strOrderID = rs("OrderNo")<BR> strProdCode = Request(iLoop & "ID")<BR> strProdName = Request(iLoop & "Name")<BR> strBatchesOf = Request(iLoop & "BatchesOf")<BR> strQty = Request(iLoop & "strQty")<BR> <BR> rst.AddNew<BR> rst("fldOrderID") = strOrderID<BR> rst("fldProdCode") = strProdCode<BR> rst("fldProdName") = strProdName<BR> rst("fldBatchesOf") = strBatchesOf<BR> rst("fldQty") = strQty<BR> rst.update<BR><BR> Next<BR> <BR> Response.Write strOrderID<BR> Response.Write iLoop & strProdCode<BR> Response.Write strProdName<BR> Response.Write strBatchesOf<BR> Response.Write strQty<BR><BR>&#039 If Session("Zone") = "21" Then<BR>&#039 Response.Redirect "indexadmin.html"<BR>&#039 End If<BR>&#039 If Session("Zone") = "22" Then<BR>&#039 Response.Redirect "index.html"<BR>&#039 End If<BR>&#039%&#062;<BR><BR>Does anyone have any suggestions why this might be falling over?<BR><BR>