Показать сообщение отдельно
Старый 02.02.2018, 19:40   #4  
KaBu is offline
KaBu
Участник
 
10 / 10 (1) +
Регистрация: 04.01.2018
Ok, со конвертацией стринга джоб выполнился успешно, но вот класс мне не удалось поправить
Вот этот код:
clsBinData.setData(tabOutputLogData.Data);

поле Data в таблице типа Контейнер

Я проверила, как оно заполняется, вроде должно быть все правильно.
Создаем запись в таблице tabOutputLog в методе saveData
X++:
tabOutputLog.saveData(this.readfilebin(_filename));
В методе readfilebin читаем файл и с помощью getData() пишем данные в контейнер.
X++:
container readfilebin(filename _filename)
{
    fileIOPermission    fileIOPermission;
    BinData             clsBinData; // = new BinData();
    filename            TmpFile = _filename;
    container           Con;
    ;
    fileIOPermission = new FileIOPermission(_filename, #io_read);
    fileIOPermission.assert();

    LclsBinData = new BinData();

    if (!clsBinData.loadFile(_filename))
    {
        CodeAccessPermission::revertAssert();
        throw error(strFmt("@EXP425", TmpFile));
    }
    Con = clsBinData.getData();
    CodeAccessPermission::revertAssert();
    return Con;
}
В метод saveData передаем контейнер
X++:
public void saveData(container _cntData)
{
    CIREXPOutputLogData     ltabInputLogData;
    ;

    ttsbegin;
    ltabInputLogData    =   CIREXPOutputLogData::find(this.UnloadNumber,true);
    if (ltabInputLogData)
    {
        ltabInputLogData.Data   =   _cntData;
        ltabInputLogData.update();
    }
    else
    {
        ltabInputLogData.clear();
        ltabInputLogData.UnloadNumber   =   this.UnloadNumber;
        ltabInputLogData.Data           =   _cntData;
        ltabInputLogData.insert();
    }
    ttscommit;
}
По идее в контейнере должен быть BLOB

Но почему-то я не могу конвертировать этот контейнер в стринг
edtStr = BinData::dataToString(tabOutputLogData.Data);
Ловлю трассировку стека, неправильный параметр

Может быть эта ошибка из.за того, что контейнер пустой в моем примере?

Последний раз редактировалось KaBu; 02.02.2018 в 19:44. Причина: update