cmd=СоздатьОбъект("ADODB.Command");
cmd.ActiveConnection=Соединение;
cmd.CommandTimeOut=600;
cmd.CommandType=1;
cmd.Prepared = "True";
cmd.NamedParameters = "True";
cmd.Commandtext ="INSERT INTO tbl_Account (Account1CID) VALUES (Convert(uniqueidentifier, ?))";
cmd.Parameters.Append(cmd.CreateParameter("@Account1CID" , 202,1,36));
ТЗКонтрагенты.ВыбратьСтроки();
Соединение.BeginTrans();
пСтрока = ПолучимГУИДSQL(ТЗКонтрагенты.Account1CID);
Пока ТЗКонтрагенты.ПолучитьСтроку() = 1 Цикл
cmd.Parameters("@Account1CID").Value = ПолучимГУИДSQL(ТЗКонтрагенты.Account1CID);
cmd.Execute();
КонецЦикла;
При выполнении кода возникает ошибка:
cmd.Execute();
{D:\WORK\EXTFORMS\SQL.ERT(291)}: Microsoft OLE DB Provider for SQL Server: Conversion failed when converting from a character string to uniqueidentifier.
Такая же возникает при попытке присвоить в лоб:
cmd.Parameters("@Account1CID").Value = "16700000-0001-0000-0000-000000000000";
Каким образом правильно записывать значения подобного типа. Может кто сталкивался с подобными задачами?
Спасибо