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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 09.08.2017, 11:23   #1  
MaksNeskor is offline
MaksNeskor
Участник
 
14 / 10 (1) +
Регистрация: 19.02.2015
Адрес: Ukraine
Чтение CSV драйвер не определяет значение поля
Добрый день, возникла очень непонятная ситуация при чтении csv файла(банковская выписка(БВ)).

В банковской выписке есть поле "ЕГРПОУ корреспондента"(ОКПО, ЕДРПОУ). Начали приходить банковские выписки в которых это поле имеет длину 10 символов, до этого всегда было 8 символов. Почему-то драйвер не считывает значения этих полей, но если я пробую делать считывание только одной строки с CSV файле, поле считывается, то есть удаляю все строки кроме той, в которой "ЕГРПОУ корреспондента" = 10 символов, всё считывается. Почему такое может происходить? Может кто сталкивался или даст совет.
Версия аксапты 3.0
Ниже джоб которым всё это дело проверяю.

X++:
static void MNESK_ReadCSV2(Args _args)
{
    AsciiIo schemaINI;
    CCAdoConnection  adoCon;
    CCAdoRecordset   adoRec;
    ;
    schemaINI = new AsciiIo(@'\\Папка с фалом' + '\\schema.ini', 'W');
    schemaINI.write(strfmt("[%1]", '180517.csv'));
    schemaINI.write("Format=Delimited(;)");
    schemaINI = null;

    adoCon = new CCAdoConnection();
    adoRec = new CCAdoRecordset();
    adoCon.open(strfmt("Driver={Microsoft Text Driver (*.txt; *.csv)}; DriverId=27;FMT=Delimited';'; charset=windows-1251; DefaultDir=%1; Extensions=csv; HDR=YES; IMEX=1",
    @'\\папка с файлом'));

    adoRec.open(strfmt("select * from %1", '180517.csv'), adoCon);

    while (!adoRec.EOF())
    {
        info(adoRec.fields().itemName('ЕГРПОУ корреспондента').value());
        adoRec.moveNext();
    }

    adoRec.close();
    adoCon.close();
}
Старый 21.08.2017, 17:34   #2  
MaksNeskor is offline
MaksNeskor
Участник
 
14 / 10 (1) +
Регистрация: 19.02.2015
Адрес: Ukraine
Решение
Решило проблему добавление в формирование файла schema.ini, вот этого параметра.

schemaINI.write("MaxScanRows=0");
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Значение поля sum в отчетах Ramil DAX: Программирование 13 08.07.2011 14:08
Значение поля и маска Sergo4 DAX: Программирование 6 02.02.2011 14:58
Некорректно отображается значение текстового поля их приджойненой таблицы в вэб-гриде... glibs DAX: Программирование 0 20.04.2009 19:13
Как добавить значение в таблицу не по имени поля, а нпример по индексу поля? yuriuss DAX: Программирование 16 07.07.2008 16:36
Как узнать значение поля аналитики? Tired DAX: Программирование 1 20.09.2005 18:10

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

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

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