При выполнение скрипта, дата передаеться текстом (а могла бы безопасно через convert или cast):
exec sp_executesql N'update [vw_ChangeRequest] set EstimatedDueDate = @P1 where ReleaseID = @P2',N'@P1 nvarchar(4000),@P2 uniqueidentifier',N'23.09.2013','23ADF24D-AB85-437D-85BA-AD3CD1A9A4F8'
автоматическая конвертация срабатывает относительно формата дефолтных настроек БД. Соотвественно в БД формат другой, запрос падает. Я могу как то указать для ExecuteCustomSQL, как правильно работать с датой? Очень не хочеться писать генерацию нужной строки с cast или convert.
Пример кода:
var Parameters = System.CreateObject('TSObjectLibrary.Parameters');
var ReturnParameter1 = Parameters.CreateItem();
ReturnParameter1.Name = 'ReleaseID';
ReturnParameter1.DataType = pdtGUID;
ReturnParameter1.Value = Dataset('ID');
Parameters.Add(ReturnParameter1);
Connector.DBEngine.ExecuteCustomSQL("update [vw_ChangeRequest] set StatusID = '{06DF639B-AC5D-48DF-88EE-EFD0369E80D3}' where ReleaseID = :ReleaseID",Parameters);