Всем привет!
Есть задача, получить результат неких вычеслений. Вычесления происходят на SQL.
В данном посте написано как: http://community.terrasoft.ru/blogs/2171
Но мне возвращается пустая строка... никаких ошибок не выдаётся. Получаемый результат НЕ набор данных и.т.д... а просто число/строка
{
var Parameters = System.CreateObject('TSObjectLibrary.Parameters');
var ReturnParameter = Parameters.CreateItem();
ReturnParameter.Name = 'Result';
ReturnParameter.ParamType = 1;
// ReturnParameter.ParamType = 2;
// ReturnParameter.DataType = pdtString;
ReturnParameter.DataType = pdtInteger;
// ReturnParameter.DataType = pdtGUID;
Parameters.Add(ReturnParameter);
Connector.DBEngine.ExecuteCustomSQL("select 1 as Result;", Parameters);
Log.Write(1, Parameters.ItemsByName('Result').Value+"");
}
Версия 3,2,0,10. В указаном выше посте написано "Дело в том, что выходные (output) параметры были добавлены, начиная с версии 3.2.0.x (с какой точно, сейчас сказать не могу)"
Что я не так делаю?
Или подскажите пожалуйста другой способ.
Спасибо!
Нравится
Возможно, дело в том, что Вы на самом деле не возвращаете никаких параметров. Инструкция "select 1 as Result" возвращает набор данных, состоящих из одной колонки и одной строки. Но Вы не присваиваете это значение параметру :Result. Попробуйте, например, так:
Connector.DBEngine.ExecuteCustomSQL("select :Result = 1", Parameters); Log.Write(1, Parameters.ItemsByName('Result').Value+"");