Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Paradox 4.5 for Dos. Как отобразить данные в Гриде? [D5, Paradox]


Nikola62 ©   (2003-03-25 13:00:00) 

Этот вопрос уже неоднократно поднимался в форуме, но я так и не нашел правильной реализации. Собственно имеется таблица Paradox в Dos кодировке ascii (866). Требуется увидеть данные из нее средствами D5. Пробовал изменять драйвера в BDE, но часть символов кирилицы превращаются в #. Спасибо если кто-то поделиться дельным советом.


Соловьев   (2003-03-25 17:31:00) [1]


> Nikola62 (25.03.03 17:27)
> > через ODBC драйвер подключайся.
> А как ето сделать?

ето можно двумя способами:
1. через SQL Exploer - создавая алиас выбрать не стандартный, а ODBC.
2. Пуск->Панель управления->ODBC. После добавления файлового DSN, алиас автоматически появится.
Ну и использовать связку TSession->TDatabase->НД


Nikola62   (2003-03-25 17:27:00) [2]

> через ODBC драйвер подключайся.
А как ето сделать?
> У тебя наверное украинские
> i и ї превращяются в #...
В # превращаются не только i и ї, а большинство кириличных символов. Остальные выводятся тоже не в кирилице, но у них хоть коды разные, можно перекодировать при выводе а Грид.


Соловьев   (2003-03-25 16:53:00) [3]

через ODBC драйвер подключайся. У тебя наверное украинские i и ї превращяются в #...


Stas   (2003-03-25 16:42:00) [4]

А ты к ACCESS"у подключаться не пробовал ?


Nikola62   (2003-03-25 16:19:00) [5]

> Если в DOS не будешь использовать свою таблицу, то преобразовать
> можно:

В том-то и дело, что база работает под DOS, а некоторые отчеты хочется делать на Делфе (намного проще). Неужели это тупиковая задача?


Stas   (2003-03-25 15:10:00) [6]

Если в DOS не будешь использовать свою таблицу, то преобразовать можно:
aDBHnd - TDatabase.Handle;
aTblType - "PARADOX"/"DBASE"/"FOXPRO"
aLangDriver - "ancyrr".

procedure ChangeLangDriver( aDBHnd: HDBIDB; aTable: TTable; const aTblType, aLangDriver: String);
var
TblExt: string;
TblDesc: CRTblDesc;
OptDesc: FLDDesc;
OptData: array [0..250] of Char;
Cur: hDBICur;
Rec: CFGDesc;
begin
FillChar( OptDesc, SizeOf( OptDesc ), #0);
FillChar( TblDesc, SizeOf( TblDesc ), #0);
StrCopy( OptDesc.szName, "LANGDRIVER");
OptDesc.iLen := Length(aLangDriver) + 1;
with TblDesc do
begin
StrPCopy( szTblName, aTable.TableName);
StrCopy( szTblType, PChar(aTblType));
iOptParams := 1;
pfldOptParams := @OptDesc;
pOptData := @OptData;
end;
StrPCopy( OptData, aLangDriver);
Check( DbiDoRestructure( aDBHnd, 1, @TblDesc, nil, nil, nil, False ) );
end;


Наверх

Титульная страница Поиск, карта сайта Написать письмо