хранимка:
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)