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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 07.09.2009, 10:38   #1  
mefodiy is offline
mefodiy
Участник
 
96 / 10 (1) +
Регистрация: 08.07.2007
Экспортирую данные из DBF файла.
Текст программы следующий (взят из интернета):

CREATE(Dbf);
CREATE(DbfRecords);
Dbf.Open('Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\Project\Trade_SWT\;Extended Properties=DBASE IV;');
DbfRecords.Open('Vergisetir.dbf',Dbf);
IF NOT(DbfRecords.EOF) THEN
DbfRecords.MoveFirst();
IF NOT(DbfRecords.EOF) THEN
BEGIN
REPEAT
s := DbfRecords.Fields().Item('Ad').Value;
MESSAGE(s);
DbfRecords.MoveNext();
UNTIL DbfRecords.EOF;
END;
DbfRecords.Close();
Dbf.Close();
CLEAR(Dbf);
CLEAR(DbfRecords);

Все номально, но русские буквы в MESSAGE превращаются в крякозябры.
В чем проблема и как это можно решить?
Спасибо
Старый 07.09.2009, 11:29   #2  
Сергей Корчанов is offline
Сергей Корчанов
Участник
 
44 / 10 (1) +
Регистрация: 25.04.2008
Скорее всего, проблема в преобразовании кодовых таблиц (в Navision - 866). Если лень возиться, снимите бесплатную библиотеку работы с DBF-файлами на www.navutilus.com
Старый 07.09.2009, 13:35   #3  
mefodiy is offline
mefodiy
Участник
 
96 / 10 (1) +
Регистрация: 08.07.2007
Этот вариант не совсем устраивает, так как в Navision нужно создавать таблицу такой же структуры, что и DBF-таблица.
Есть ли другой вариант?
Старый 07.09.2009, 13:41   #4  
Сергей Корчанов is offline
Сергей Корчанов
Участник
 
44 / 10 (1) +
Регистрация: 25.04.2008
Другой вариант - перекодировка результатов импорта. Можно воспользоваться функцией CONVERTSTR (String). Только требуется аккуратность. Пытался найти в архивах такое преобразование - где-то затерялось
Старый 07.09.2009, 13:44   #5  
Alterant is offline
Alterant
Участник
 
378 / 10 (1) +
Регистрация: 31.03.2004
Посмотрите на функцию Dos2Win CU 12400 Localisation Management и сделайте ей обратную.
Старый 07.09.2009, 13:45   #6  
Сергей Корчанов is offline
Сергей Корчанов
Участник
 
44 / 10 (1) +
Регистрация: 25.04.2008
Впрочем, в уже обсуждавшейся библиотеке есть функция WIN1250_TO_DOS(TextValue : Text[250]) Result : Text[1024]
 


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

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

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