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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 19.06.2009, 11:04   #1  
Kast is offline
Kast
Участник
 
6 / 10 (1) +
Регистрация: 19.06.2009
Добрый день!

Пытаюсь загрузить датапортом данные из эксель. В экселе есть текстовые поля с двойными кавычками. При загрузке датапорт ругается. Что можно сделать, чтобы информация нормально загрузилась в систему?
Старый 19.06.2009, 11:53   #2  
Raul is offline
Raul
Участник
 
35 / 10 (1) +
Регистрация: 15.03.2006
Цитата:
Сообщение от Kast Посмотреть сообщение
Добрый день!

Пытаюсь загрузить датапортом данные из эксель. В экселе есть текстовые поля с двойными кавычками. При загрузке датапорт ругается. Что можно сделать, чтобы информация нормально загрузилась в систему?
а на какие разделители настроен датапорт?
Старый 19.06.2009, 12:38   #3  
Kast is offline
Kast
Участник
 
6 / 10 (1) +
Регистрация: 19.06.2009
Разделители по умолчанию двойные кавычки.Но если сделать другие разделители, то файл тоже не импортируется, т.к. при сохранении как csv невозможно выбрать и указать такие же разделители как в датапорте. Или это где-то в настройках экселя есть?
Старый 19.06.2009, 14:09   #4  
Raul is offline
Raul
Участник
 
35 / 10 (1) +
Регистрация: 15.03.2006
Я из excel сохраняю в формате CSV(MS-Dos), тогда поля разделены ; и никакие кавычки не мешают импорту, а двойные кавычки поменять на одинарные или вобще убрать не проблема уже в датапорте.
Старый 19.06.2009, 16:01   #5  
Fordewind is offline
Fordewind
Участник
 
1,134 / 10 (3) +
Регистрация: 01.12.2005
Делайте импорт непосредственно из Excel'я. Заморочек гораздо меньше.
Можно например использовать таблицу Excel Buffer.
Старый 22.06.2009, 09:55   #6  
Kast is offline
Kast
Участник
 
6 / 10 (1) +
Регистрация: 19.06.2009
Цитата:
Сообщение от Raul Посмотреть сообщение
Я из excel сохраняю в формате CSV(MS-Dos), тогда поля разделены ; и никакие кавычки не мешают импорту, а двойные кавычки поменять на одинарные или вобще убрать не проблема уже в датапорте.
Я тоже так сохраняю. Но датапорт считает, что двойные кавычки являются началом или концом текстовых полей, поэтому приходится двойные кавычки заменять на что-то другое перед импортом. Аналогично, при экспорте из Навижен - все поля экспортируются в кавычках, а мне надо без. Приходится потом вручную удалять. Можно как-то настроить, чтобы работало без этих промежуточных действий?

Цитата:
Сообщение от Fordewind Посмотреть сообщение
Делайте импорт непосредственно из Excel'я. Заморочек гораздо меньше.
Можно например использовать таблицу Excel Buffer.
Импорт из экселя датапортом или с помощью репорта?
Старый 22.06.2009, 10:32   #7  
Eugeny_F is offline
Eugeny_F
Участник
 
371 / 30 (2) +++
Регистрация: 18.11.2003
Адрес: Москва
Давайте определимся с понятиями. В датапорте есть:
а) Разделители полей (FieldSeparator)
б) Символы, обозначающие начало и конец поля (FieldStartDelimiter и FieldEndDelimiter).

В Вашем случае FieldSeparator наверняка либо ";" либо ",". А вот FieldStartDelimiter и FieldEndDelimiter у Вас двойные кавычки. Поставьте вместо них None и будет вам счастье.
Старый 22.06.2009, 10:50   #8  
Kast is offline
Kast
Участник
 
6 / 10 (1) +
Регистрация: 19.06.2009
Цитата:
Сообщение от Eugeny_F Посмотреть сообщение
Давайте определимся с понятиями. В датапорте есть:
а) Разделители полей (FieldSeparator)
б) Символы, обозначающие начало и конец поля (FieldStartDelimiter и FieldEndDelimiter).

В Вашем случае FieldSeparator наверняка либо ";" либо ",". А вот FieldStartDelimiter и FieldEndDelimiter у Вас двойные кавычки. Поставьте вместо них None и будет вам счастье.
Да, я про FieldStartDelimiter и FieldEndDelimiter говорю. Спасибо за совет, но счастье не пришло. При экспорте в файл датапорт в начале и конце каждого поля поставил None.
Старый 22.06.2009, 11:10   #9  
Eugeny_F is offline
Eugeny_F
Участник
 
371 / 30 (2) +++
Регистрация: 18.11.2003
Адрес: Москва
Какой-то неправильный у вас датапорт . Проверьте, убрали ли Вы символы <> в FieldStart(End)Delimeter. Уберите их. Должно быть просто None.
Если не поможет, сделайте print screen окошка Dataport Properties и выложите его тут.
Старый 22.06.2009, 11:16   #10  
Kast is offline
Kast
Участник
 
6 / 10 (1) +
Регистрация: 19.06.2009
Цитата:
Сообщение от Eugeny_F Посмотреть сообщение
Какой-то неправильный у вас датапорт . Проверьте, убрали ли Вы символы <> в FieldStart(End)Delimeter. Уберите их. Должно быть просто None.
Если не поможет, сделайте print screen окошка Dataport Properties и выложите его тут.
И с <>, и с кавычками, и без кавычек, и без <> не получается... Выгружает так, как указано в этих полях.
Миниатюры
Нажмите на изображение для увеличения
Название: untitled.JPG
Просмотров: 423
Размер:	51.2 Кб
ID:	10478  
Старый 22.06.2009, 11:45   #11  
Fordewind is offline
Fordewind
Участник
 
1,134 / 10 (3) +
Регистрация: 01.12.2005
Цитата:
Сообщение от Kast Посмотреть сообщение
Импорт из экселя датапортом или с помощью репорта?
С помощью репорта.
В прикреплении простейший пример такого репорта. (Репорт обрабатывает все строчки, начиная со второй, пока не дойдет до пустой ячейки в первом столбце).
Вложения
Тип файла: fob Excel_Import_Example.fob (8.4 Кб, 453 просмотров)
Старый 22.06.2009, 12:03   #12  
Eugeny_F is offline
Eugeny_F
Участник
 
371 / 30 (2) +++
Регистрация: 18.11.2003
Адрес: Москва
Так Вам экспорт или импорт? Попробовал у себя экспорт. Если стоит None, то при экспорте действительно выводит None как разделитель полей. Если стоит <None>, то все экспортится нормально. Даже, если FieldSeparator NewLine.
Старый 22.06.2009, 12:21   #13  
Kast is offline
Kast
Участник
 
6 / 10 (1) +
Регистрация: 19.06.2009
Спасибо, помогло ))) И экспорт, и импорт заработал.
Старый 22.07.2009, 16:35   #14  
nalena is offline
nalena
Участник
 
8 / 10 (1) +
Регистрация: 01.06.2009
Подскажите плиз! Нужно импортировать dbf файл в Navision таблицу через датапорт.
Количество полей не совпадает.
Старый 22.07.2009, 18:55   #15  
korzak is offline
korzak
Участник
 
8 / 10 (1) +
Регистрация: 31.05.2006
Адрес: Москва
Цитата:
Сообщение от nalena Посмотреть сообщение
Подскажите плиз! Нужно импортировать dbf файл в Navision таблицу через датапорт.
Количество полей не совпадает.
К сожалению ДатаПортом нельзя импортировать в DBF. Дата порт создает только текстовый файл по умолчанию в кодировке DOS с разделителями, а вот что с ним дальше делать это уже другой вопрос. Есть множество программных средств которые импортируют txt(CSV) в DBF (Это если невозможно дописать импорт в Nav по какой либо причине). Лучшим решением будет использовать Automation ADO или другие на Ваш вкус. Тема работы с DBF файлами уже подымалась не форуме, поищите найдете множество решений.
Старый 23.07.2009, 08:09   #16  
Alterant is offline
Alterant
Участник
 
378 / 10 (1) +
Регистрация: 31.03.2004
Рекомендую, и сам всегда пользуюсь, загрузкой файлов с табуляциями в качестве разделителя. Так меньше проблем возникает, поскольку табуляции в самих данных встречаются гораздо реже, чем кавычки и точки с запятой.
Из экселя выгружаю в формате "Текст (MS-DOS)".
В NAV:
FieldSeparator = <TAB>
FieldStartDelimiter = <None>
FieldEndDelimiter = <None>

По поводу импорта данных из dbf. Если процедура разовая, то проще загрузить dbf в MS Access, а оттуда выгрузить нужные колонки в текстовый файл. Если нет, то, как уже сказал korzak, использовать либо Automation, вот пример:
http://www.mibuso.com/forum/viewtopic.php?f=23&t=8746
либо сторонние утилиты для конвертации dbf'ов, например вот эти:
http://www.mibuso.com/dlinfo.asp?FileID=64
Старый 23.07.2009, 11:31   #17  
nalena is offline
nalena
Участник
 
8 / 10 (1) +
Регистрация: 01.06.2009
Огроменное пасибище, примерчик хороший
тока вот такое еще трабл ...
Миниатюры
Нажмите на изображение для увеличения
Название: err.JPG
Просмотров: 416
Размер:	22.5 Кб
ID:	10499  
Старый 23.07.2009, 15:52   #19  
nalena is offline
nalena
Участник
 
8 / 10 (1) +
Регистрация: 01.06.2009
Цитата:
Сообщение от Alterant Посмотреть сообщение
Рекомендую, и сам всегда пользуюсь, загрузкой файлов с табуляциями в качестве разделителя. Так меньше проблем возникает, поскольку табуляции в самих данных встречаются гораздо реже, чем кавычки и точки с запятой.
Из экселя выгружаю в формате "Текст (MS-DOS)".
В NAV:
FieldSeparator = <TAB>
FieldStartDelimiter = <None>
FieldEndDelimiter = <None>

По поводу импорта данных из dbf. Если процедура разовая, то проще загрузить dbf в MS Access, а оттуда выгрузить нужные колонки в текстовый файл. Если нет, то, как уже сказал korzak, использовать либо Automation, вот пример:
http://www.mibuso.com/forum/viewtopic.php?f=23&t=8746
либо сторонние утилиты для конвертации dbf'ов, например вот эти:
http://www.mibuso.com/dlinfo.asp?FileID=64
hi Alterant and All!
еще одна проблема с примером на http://www.mibuso.com/forum/viewtopic.php?...=175170#p175170
ругается на строчку
DBFRecord.Open(FileToUse,DBFConnect);
Изображения
 
 


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

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

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