![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
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;