AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.01.2006, 13:22   #1  
Migel_84 is offline
Migel_84
Участник
 
45 / 12 (1) ++
Регистрация: 07.10.2005
Адрес: Череповец
? Экспорт в *.dbf
Подскажите плиз, как записать значение в поле dbf.
Импорт делается без проблем:

CCADORecordset rs;
...
переменная = rs.fields().itemname("поле").value();

а экспорт делаю таким образом:

rs.fields().itemName("поле").setValue(значение); (здесь как раз ошибка)

где
void stm_setValue(str _value)
{
field.value(_value);
}
Старый 06.01.2006, 14:02   #2  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,311 / 3547 (125) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
В классе CCADOField нет метода setValue. Добавьте его сами:
X++:
// Установка значения (real, date, int, str)
void setValue(anytype _value)
{
    switch (typeof(_value))
    {
        case Types::Date:
            field.value(COMVariant::createFromDate(_value));
            break;
        case Types::Enum, Types::Integer:
            field.value(COMVariant::createFromInt(_value));
            break;
        case Types::Real:
            field.value(COMVariant::createFromReal(_value));
            break;
        case Types::RString, Types::String, Types::VarString:
            field.value(COMVariant::createFromStr(_value));
            break;
        default:
            field.value(COMVariant::createNoValue());
    }
}
Данный метод неприменим для типа даты, времени, массива и булевого. Эти типы преобразуются легко:
X++:
// Установка значения DateTime
void setDateTimeValue(date _valueDate, int _valueTime)
{
    field.value(COMVariant::createFromDateAndTime(_valueDate, _valueTime));
}
// Установка значения Time
void setTimeValue(int _value)
{
    field.value(COMVariant::createFromTime(_value));
}
// Установка значения boolean
void setBooleanValue(boolean _value)
{
    field.value(COMVariant::createFromBoolean(_value));
}
// Установка значения Array
void setArrayValue(Array _value)
{
    field.value(COMVariant::createFromArray(_value));
}
__________________
Возможно сделать все. Вопрос времени
Старый 06.01.2006, 14:12   #3  
Migel_84 is offline
Migel_84
Участник
 
45 / 12 (1) ++
Регистрация: 07.10.2005
Адрес: Череповец
Цитата:
Сообщение от sukhanchik
В классе CCADOField нет метода setValue. Добавьте его сами:
X++:
// Установка значения (real, date, int, str)
void setValue(anytype _value)
{
    switch (typeof(_value))
    {
        case Types::Date:
            field.value(COMVariant::createFromDate(_value));
            break;
        case Types::Enum, Types::Integer:
            field.value(COMVariant::createFromInt(_value));
            break;
        case Types::Real:
            field.value(COMVariant::createFromReal(_value));
            break;
        case Types::RString, Types::String, Types::VarString:
            field.value(COMVariant::createFromStr(_value));
            break;
        default:
            field.value(COMVariant::createNoValue());
    }
}
Дак я его добавил, там ошибка была всё равно, я уже разобрался. Спасибо, что ответили
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Экспорт в DBF количество символов. Himan DAX: Программирование 1 16.11.2006 18:14
Экспорт в dbf данных на украинском языке SerAl DAX в Украине 17 03.10.2006 10:46
почти DBF Gorlum DAX: Программирование 3 17.03.2006 12:52
Импорт/экспорт в/из DBF raz DAX: Программирование 0 11.11.2003 17:36
Импорт/экспорт в/из DBF edd DAX: База знаний и проекты 13 18.03.2003 12:31

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 05:59.