хранимка:
ALTER PROCEDURE [dbo].[AddBill]
@IDBill varchar (10),	-- номер счета
@IDCust int,			-- код плательщика 
@IDContrCust int,		-- код договора
@IDPay int,				-- код получателя продукции 
@IDTMC int,				-- код ТМЦ отгрузки
@IDCur int,				-- код валюты
@CrDate datetime,		-- дата создания
@IDTrans int,			-- код перевозчика
@IDTR bit,				-- определитель. транспортных расходов (0 - в цене, 1 - отдельной строкой)
@TRPrice money,			-- сумма транспортных
@NDSPrice real,			-- сумма НДС в счете
@Comm varchar (1000)	-- комментарий
AS
	begin
		Insert into Bills (IDBill,IDCust,IDContrCust,IDPay,IDTMC,IDCur,IDTrans,IDTR,TRPrice,CrDate,NDSPrice,Comm) values (@IDBill,@IDCust,@IDContrCust,@IDPay,@IDTMC,@IDCur,@IDTrans,@IDTR,@TRPrice,@CrDate,@NDSPrice,@Comm)
		return SCOPE_IDENTITY()
    end
вызываю хранимку:
- Код: Выделить всё
-                     Set cmd = New ADODB.Command
 cmd.CommandType = adCmdStoredProc
 cmd.CommandText = "AddBill"
 
 Set cmd.ActiveConnection = conn
 cmd.Parameters.Refresh
 
 With cmd
 .Parameters("@IDBill").Value = Text2.Text
 .Parameters("@IDCust").Value = CInt(txtIDCust.Text
 .Parameters("@IDContrCust").Value = dcContract(0).BoundText
 .Parameters("@IDPay").Value = CInt(txtIDPay.Text)
 .Parameters("@IDTMC").Value = dcTMC.BoundText
 .Parameters("@IDCur").Value = CInt(dcCur.BoundText)
 .Parameters("@idTrans").Value = dcTransporter.BoundText
 .Parameters("@CrDate").Value = DateToSQL(dateCreate.Value)
 .Parameters("@IDTR").Value = IIf(Option1(1).Value = True, 1, 0)
 .Parameters("@TRPrice").Value = IIf(Len(txtTransp(3).Text) = 0, 0, txtTransp(3).Text)
 .Parameters("@NDSPrice").Value = CCur(txtAddEditCustomer(10).Text)
 .Parameters("@Comm").Value = txtAddEditCustomer(12).Text
 .Execute
 End With
 
"запись не проходит" - сообщение об ошибке: 
Приложение использует для текущей операции значение неверного типа
на строке
- Код: Выделить всё
- .Parameters("@CrDate").Value = DateToSQL(dateCreate.Value)