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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 05.07.2007, 15:33   #1  
longson is offline
longson
Участник
 
231 / 49 (2) +++
Регистрация: 12.12.2006
Адрес: Москва
Работа с классом AsciiIO
Добрый день,Хочу немного спросить о работе с классом AsciiIO. Мне предстоит задача обработки файла данных, в которую данные записываются из другой программы по строкам без полей, типа:Название клиента: ООО АБЛКорр.счёт: 11111111Банк: БАЛ.... Данные здесь необходимо загружать постоянно в таблицу в Axapta. Для чтения решил использовать класс AsciiIO по рекомендации здесь http://axapta.mazzy.ru/lib/textfile/ . Пока знаю очень мало методов для работы с ним.Например, каким образом можно 1) Присвоить контейнеру значение из строки № N в файле ?2) Проверить конец файла ?Если у вас есть опыт работы с этим классом, поделитесь, спасибо
Старый 05.07.2007, 15:41   #2  
pdojn is offline
pdojn
Участник
 
50 / 12 (1) ++
Регистрация: 24.06.2004
Адрес: Москва
X++:
-
    Io                  file;
    container       line;
    .................
    
    file = SysDataIntegration::openFile(".......",'R',";");

    while (file.status() == IO_Status::Ok)
    {
        line = file.read();
        if (!conLen(line))
            break;
        .................
    }
Объявляешь, читаешь, и делаешь что хочешь.

Последний раз редактировалось pdojn; 05.07.2007 в 15:43.
Старый 05.07.2007, 15:41   #3  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,689 / 405 (17) +++++++
Регистрация: 23.03.2006
1)чтение из файла идет последовательное, без возможности возврата.
2)AsciiIO.status() != IO_Status::OK
Старый 05.07.2007, 15:41   #4  
konopello is offline
konopello
SAP
SAP
 
628 / 76 (4) ++++
Регистрация: 08.11.2005
Адрес: Минск
Смотри семейство классов LedgerInAccountStatement это импорт банковской выписки.
Старый 05.07.2007, 15:47   #5  
longson is offline
longson
Участник
 
231 / 49 (2) +++
Регистрация: 12.12.2006
Адрес: Москва
Цитата:
Сообщение от konopello Посмотреть сообщение
Смотри семейство классов LedgerInAccountStatement это импорт банковской выписки.
Вот именно наследник этого класса я и пишу, хочу делать отдельный метод импорта банковской выписки.Спаисбо за подскажку
Старый 06.07.2007, 11:23   #6  
longson is offline
longson
Участник
 
231 / 49 (2) +++
Регистрация: 12.12.2006
Адрес: Москва
Ещё такой вопрос, как в X++ коде написать условие типа myvar=="OOO "ABC"" ?
Старый 06.07.2007, 11:39   #7  
ice is offline
ice
Участник
Аватар для ice
Лучший по профессии 2014
 
1,689 / 405 (17) +++++++
Регистрация: 23.03.2006
myvar=="OOO \"ABC\""
За это сообщение автора поблагодарили: longson (1).
Старый 08.07.2007, 19:02   #8  
longson is offline
longson
Участник
 
231 / 49 (2) +++
Регистрация: 12.12.2006
Адрес: Москва
Вроде бы разобрался. Осталась такая проблема.

Записал в классе своём

X++:
    AsciiIO    mFile;
    LedgerInAccountStatementFromOut_67 recordInAccount;
    ;
    mFile = new AsciiIO("C:\\toAxapta.txt","R");
    this.BankRecordReceive(mFile);
Где, BankRecordReceive - отдельный метод такого класса. Он обрабатывает файл AsciiIO примерно так

X++:
void BankRecordReceive(AsciiIO  recordFile)
{
  LedgerInAccountStatementFromOut_67    ledgerInAcc;
 container                              state;
 str                                    strRec, status,type, comment, strTemp;
 int                                    cntLine;
 ;
 ttsbegin;
    delete_from ledgerInAcc;
 ttscommit;
 recordFile.inFieldDelimiter("~");
 cntLine=0;
 while(cntLine<16)
  {
    state = recordFile.read();
    info(strfmt("%1",conpeek(state,1)));
    cntLine = cntLine + 1;
  }
но при запуске у меня такое ощущение что вместо обработки конкретного файла с заданным параметром mFile он обрабатывает пустой файл. Об этом убедился путём добавки вот такой предпоследней строки во втором методе. Он выводит все пустые значения вместо конкретных строк.

Может быть я что - то делал не так ?

Последний раз редактировалось longson; 08.07.2007 в 19:05.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Asciiio tricky DAX: Программирование 3 27.12.2008 08:48
Ошибка при инициализации AsciiIO объекта evv DAX: Программирование 3 10.05.2008 15:37
Доступ к меню "Работа с документами" Kuat DAX: Администрирование 4 16.11.2007 17:07
Совместная работа заказчика и исполнителя в разных или одном слое? Кузин Владимир В. DAX: Программирование 6 08.08.2006 10:02
В чем различие в CommaIO и AsciiIO rumpleteazer DAX: Программирование 6 22.02.2005 17:31

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 22:10.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.