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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.04.2005, 11:44   #1  
mvf is offline
mvf
Участник
 
52 / 10 (1) +
Регистрация: 18.04.2005
Адрес: Новосибирск
Импорт данных из текстового файла
У меня такая ситуация: при импорте данных из тектового файла все прохожит успешно, ошибок не обнаруживается, но импортируется только одна строка. В информационном окне появляется запись: "1 проводок импортировано"
И я никак не могу добиться, чтобы весь файл загрузить в Axapta.

Может, кто-нибудь сталкивался с подобным?
Старый 18.04.2005, 11:48   #2  
Perec is offline
Perec
Участник
 
129 / 10 (1) +
Регистрация: 18.02.2003
Адрес: Москва
Скорее всего что-то напутали с разделителем записей.
Старый 18.04.2005, 12:09   #3  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Смотрите в логе неимпортированных записей.

Ситуация штатная во время настройки импорта. Настройте его правильно.
__________________
полезное на axForum, github, vk, coub.
Старый 18.04.2005, 12:24   #4  
mvf is offline
mvf
Участник
 
52 / 10 (1) +
Регистрация: 18.04.2005
Адрес: Новосибирск
С настройками мне все ясно.
Вопрос такой: как Axapta узнает конец строки? Такое ощущение, что не видит больше одной.
И есть ли возможность в качестве разделителя использовать табуляцию?
А то у меня внешний файл с табуляцией и мне приходится насильноменять ее на разделитель ~
Старый 18.04.2005, 12:30   #5  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано mvf
Вопрос такой: как Axapta узнает конец строки? Такое ощущение, что не видит больше одной.
И есть ли возможность в качестве разделителя использовать табуляцию?
А то у меня внешний файл с табуляцией и мне приходится насильноменять ее на разделитель ~
Ясно. Тогда ФАК: http://axapta.mazzy.ru/hints/import/

Табуляцию Аксапта позволяет использовать. Проблема в том, что символ табуляции в форму в поле Разделитель не вставишь. Если у вас получится установить символ программно - Аксапта будет использовать табуляцию.

__________________
полезное на axForum, github, vk, coub.
Старый 18.04.2005, 13:34   #6  
Hezl is offline
Hezl
Участник
Аватар для Hezl
 
138 / 16 (1) ++
Регистрация: 21.04.2004
Адрес: Moscow, Russia
Цитата:
Изначально опубликовано mazzy

Проблема в том, что символ табуляции в форму в поле Разделитель не вставишь.
Вообще-то можно вставить - через буфер обмена.
Старый 18.04.2005, 13:37   #7  
mvf is offline
mvf
Участник
 
52 / 10 (1) +
Регистрация: 18.04.2005
Адрес: Новосибирск
Спасибо, но этот FAQ я уже перешерстила вдоль и поперек.
Но про конец строки ответа не нашла.
Повторюсь. Вся проблема в том, что при импорте Axapta говорит, что все прекрасно, ошибок нет, но настойчиво берет только первую строку. А так как нет ошибок, то я не могу и выяснить причину игнорирования записей.
p.s. Как посмотреть лог неимпортированных записей?
Старый 18.04.2005, 13:46   #8  
mvf is offline
mvf
Участник
 
52 / 10 (1) +
Регистрация: 18.04.2005
Адрес: Новосибирск
Цитата:
Изначально опубликовано Hezl


Вообще-то можно вставить - через буфер обмена.
Действительно! Спасибо!
Старый 18.04.2005, 13:47   #9  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано mvf
Спасибо, но этот FAQ я уже перешерстила вдоль и поперек.
Но про конец строки ответа не нашла.
Цитата: "Каждая строка представляет одну запись"

Цитата:
[i]Повторюсь. Вся проблема в том, что при импорте Axapta говорит, что все прекрасно, ошибок нет, но настойчиво берет только первую строку. А так как нет ошибок, то я не могу и выяснить причину игнорирования записей.
p.s. Как посмотреть лог неимпортированных записей? [/B]
На закладке Файл регистрации указываются файлы, в которые помещается лог импорта - какие записи импортированы, а какие нет.

У меня предложение - сделайте маленький тестовый файлик, состоящий из нескольких полей и записей. Проверьте, что этот файлик у вас не импортируется также как и большой.

Укажите для какой таблицы предназначен файл и выложите его сюда. Попробуем разобраться.
__________________
полезное на axForum, github, vk, coub.
Старый 18.04.2005, 13:48   #10  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Изначально опубликовано Hezl


Вообще-то можно вставить - через буфер обмена.
Клево! Работает. Как просто!
Спасибо.
__________________
полезное на axForum, github, vk, coub.
Старый 18.04.2005, 14:13   #11  
mvf is offline
mvf
Участник
 
52 / 10 (1) +
Регистрация: 18.04.2005
Адрес: Новосибирск
Хорошо.
Вот маленький проект (своя таблица, она там одна - ATTable)
и текстовый файлик. Настройка таблицы для импорта на Print screen (не знаю как по другому вам это показать)
Может, заодно подскажете, как сделать, чтобы нумерация начиналась не с 0, а с 1 (метод InitValue для DS)
Вложения
Тип файла: rar test.rar (11.6 Кб, 110 просмотров)
Старый 18.04.2005, 14:19   #12  
mvf is offline
mvf
Участник
 
52 / 10 (1) +
Регистрация: 18.04.2005
Адрес: Новосибирск
Настройка таблиц - print screen
Изображения
 
Старый 18.04.2005, 14:56   #13  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
У меня испортирует все 14 записей.
Вы случайно с Уникальным полем не баловались?

Если у вас пол ATItemID установите уникальным, то Аксапта будет искать уже существующие записи и заменять их.
А поле ATItemID вы не импортируете. Оно всегда нулевое. Поэтому все ваши строки попадут в одну запись.
__________________
полезное на axForum, github, vk, coub.
Старый 18.04.2005, 15:12   #14  
mvf is offline
mvf
Участник
 
52 / 10 (1) +
Регистрация: 18.04.2005
Адрес: Новосибирск
Цитата:
Изначально опубликовано mazzy
У меня испортирует все 14 записей.
Вы случайно с Уникальным полем не баловались?

Если у вас пол ATItemID установите уникальным, то Аксапта будет искать уже существующие записи и заменять их.
А поле ATItemID вы не импортируете. Оно всегда нулевое. Поэтому все ваши строки попадут в одну запись.
Интересно... вроде поле уникально...
Насколько я в курсе, чтобы сделать поле уникальным, необходимо создать индекс таблицы с этим полем (и на DS формы указать этот индекс). Так?
Старый 18.04.2005, 15:14   #15  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Нет. В свойствах индекса надо запретить дубликаты.
У вас индекс дубликаты разрешает.
Поэтому поле неуникально.

Но поле ATItemID вы не импортируете и не обрабатываете.
__________________
полезное на axForum, github, vk, coub.
Старый 18.04.2005, 15:30   #16  
mvf is offline
mvf
Участник
 
52 / 10 (1) +
Регистрация: 18.04.2005
Адрес: Новосибирск
Спа-асибо!
Для новичка в Axapta такие элементарные вещи иногда остаются тайной!
Еще раз спасибо. Сейчас попробую
Старый 18.04.2005, 15:55   #17  
mvf is offline
mvf
Участник
 
52 / 10 (1) +
Регистрация: 18.04.2005
Адрес: Новосибирск
Цитата:
Изначально опубликовано mazzy
Но поле ATItemID вы не импортируете и не обрабатываете.
Обработка... У меня есть метод для DS формы. Похожий нужно сделать для таблицы?

public void initValue()
{
ATTable tablLast, tablCurrent;

super();
tablCurrent = this.cursor();
ttsbegin;
select maxof(ATItemID) from tablLast;
tablCurrent.ATItemID = tablLast.ATItemId + 1;
tablCurrent.insert();
ttscommit;

}
Старый 18.04.2005, 16:02   #18  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Можно и так.

Но лучше разберитесь с нумераторами.
Если с нумераторами вам разбираться лениво, то лучше на таблицу.
Но можно и в код поля при импорте. Если будете добавлять код в импорт, поле надо сделать активным, чтобы код для него обрабатывался.

Но лучше разберитесь с нумераторами.

Обновил совет
http://axapta.mazzy.ru/hints/import/
__________________
полезное на axForum, github, vk, coub.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Стандартный импорт данных. Обновление sparur DAX: Функционал 0 24.03.2008 19:07
Импорт данных из XML файла Sanek DAX: Программирование 0 01.04.2005 17:56
Импорт из текстового файла YVAS DAX: Программирование 8 08.04.2004 16:44
Импорт из текстового файла - один их вариантов. YVAS DAX: Программирование 5 13.01.2004 16:31
импорт из текстового файла ea DAX: Администрирование 1 05.06.2003 20:19

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

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

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