Показать сообщение отдельно
Старый 01.08.2017, 07:50   #3  
slava is offline
slava
сибиряк
Самостоятельные клиенты AX
 
468 / 23 (1) +++
Регистрация: 28.12.2001
Адрес: Москва
Цитата:
Сообщение от smailik Посмотреть сообщение
Может у кого-нибудь все-таки получилось из resultSet достать картинку?
загружаю картинку из внешней базы

X++:
container sqlFileData()
{
    container   ret;
    System.Data.SqlClient.SqlConnection     sqlConnection;
    System.Data.SqlClient.SqlDataReader     dataReader;
    System.Data.SqlClient.SqlCommand        command;
    Object k;
    System.Byte[] byteArray;
    str     string ;
    str  comandText;

    str connectionString = "---------";

    CodeAccessPermission permission = new InteropPermission(InteropKind::ClrInterop);

    ;
    try
    {
        permission.assert();
        sqlConnection = new System.Data.SqlClient.SqlConnection();
        sqlConnection.set_ConnectionString(connectionString);
        command = sqlConnection.CreateCommand();
        comandText = strFmt("select TOP 1 Picture from  AA_InventItemPicture where RecId = %1", this.RecId);
        command.set_CommandText(comandText);
        sqlConnection.Open();
        dataReader = command.ExecuteReader();

        if (dataReader.Read())
        {
            string = CLRInterop::staticInvoke("System.Convert", "ToBase64String", dataReader.GetValue(0));
            ret = ContainerClass::blob2Container(binData::loadFromBase64(string));
        }
        dataReader.Close();

        sqlConnection.Close();

        CodeAccessPermission::revertAssert();
    }
    catch(Exception::CLRError)
    {
        info(CLRInterop::getLastException().ToString());

    }
    return ret;
}
__________________
С уважением, Вячеслав.
За это сообщение автора поблагодарили: smailik (1), arhat (1).