Доступ к БД из Delphi
Модераторы: m0p3e, edward_K, Модераторы
Доступ к БД из Delphi
Как можно залезть в БД Галактики извне (из Delphi например)?
Re: Доступ к БД из Delphi
Через ODBS или используя API
Ищу возможности довести и так отличный продукт до еще большего блеска
-
- Постоянный обитатель
- Сообщения: 144
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Красноярский Край
- Контактная информация:
Re: Доступ к БД из Delphi
Я как то видел компоненьы Delphi, дя доступа к Pervasive SQL2000i.
Re: Доступ к БД из Delphi
Да, расскажите пожалуйста - где, и где можно почитать чего по теме. Решил сделать автозагрузку курсов валют из Internet, а то надоело ручками вбивать. Из инета данные стянуть не проблема, а вот запихать их в Галактику - да. Я так понял, там две таблицы для валют: одна - список заведенных валют, вторая - собственно их курсы. Проблемы в запихе именнов доступе - запросы SQL должны юыть простыми.
А можт есть уже готовые решения?
А можт есть уже готовые решения?
-
- Местный житель
- Сообщения: 474
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Сибирь-матушка
- Контактная информация:
Re: Доступ к БД из Delphi
Питаю патологические отвращение и ненависть в особо тяжелой и крайне запущенной формах к семейству программ Microsoft Business Solution !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
Восславим господа Кришну за то, что у нас есть ГАЛАКТИКА !
-
- Постоянный обитатель
- Сообщения: 165
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Н.Новгород ОАО "Сибур-Нефтехим"
- Контактная информация:
Re: Доступ к БД из Delphi
Проблема генерить случайный nrec, API существует во многих менеджерах, однако доступ аналогичный ODBC по словарю.
Re: Доступ к БД из Delphi
Смотрите на сайте www.pervasive.com
там есть компонент PDAC для доступа к первазивовским базам
там есть компонент PDAC для доступа к первазивовским базам
Re: Доступ к БД из Delphi
>Мах_Fin,
>www.reggatta.com если не ошибаюсь,
>кличутся они Titan Btrieve
Можт кто ключик кинет еще, я скачал, а ключа нигде не могу найти.
>www.reggatta.com если не ошибаюсь,
>кличутся они Titan Btrieve
Можт кто ключик кинет еще, я скачал, а ключа нигде не могу найти.
Re: Доступ к БД из Delphi
А вот такой вопрос: Делаю я выгрузку в DBF:
Select katorg.name From katorg To dbf;
Ну и имеем:
[наим.организации или ФИО]
СП "Колос"
...
...
Что не нравится:
1. Название поля по Русски. нет ли таких конструкций типа: select abc.def as field01 ... ?
2. Все выгруженное в Dos-Кодировке - как побороть?
Select katorg.name From katorg To dbf;
Ну и имеем:
[наим.организации или ФИО]
СП "Колос"
...
...
Что не нравится:
1. Название поля по Русски. нет ли таких конструкций типа: select abc.def as field01 ... ?
2. Все выгруженное в Dos-Кодировке - как побороть?
Re: Доступ к БД из Delphi
Поправка - 1. название поля не по русски а наз-ся "Name" - можно ли его изменить (тип, имя)?
Re: Доступ к БД из Delphi
Вот примерчик:
Select String (Integer (LTrim (KatPodr.Kod)), 5)
(FieldName = KOD, Length = 5), // Код подразделения
String (KatPodr.Name, 30)
(FieldName = NAIM, Length = 30) // Наименование подразделения
From
KatPodr
To DBF podraz.dbf;
Select String (Integer (LTrim (KatPodr.Kod)), 5)
(FieldName = KOD, Length = 5), // Код подразделения
String (KatPodr.Name, 30)
(FieldName = NAIM, Length = 30) // Наименование подразделения
From
KatPodr
To DBF podraz.dbf;
Re: Доступ к БД из Delphi
Спасибо! класс!
Единственное что осталось - как решить с Dos - кодировкой? Иначе весь смысл выгрузки пропадает.
Пока выгружаю так:
1. Выгрузка в txt файл в Dos формате;
2. Преобразование Dos -> Win1251 (прога на delphi);
3. Проход по файлу, парсинг и запихивание в DBF (прога на delphi);
Через Владивосток в Москву - но кодировка блин... мешает иначе
Единственное что осталось - как решить с Dos - кодировкой? Иначе весь смысл выгрузки пропадает.
Пока выгружаю так:
1. Выгрузка в txt файл в Dos формате;
2. Преобразование Dos -> Win1251 (прога на delphi);
3. Проход по файлу, парсинг и запихивание в DBF (прога на delphi);
Через Владивосток в Москву - но кодировка блин... мешает иначе
Re: Доступ к БД из Delphi
Если Пункты 2 и 3 на Delphi, то что мешает работать в DOS кодировке?
(Во всяком случае BDE`шка знает кодовую страницу DOS)
(Во всяком случае BDE`шка знает кодовую страницу DOS)
Re: Доступ к БД из Delphi
Нэ понял
> что мешает работать в DOS кодировке
где работать мешает? в Delphi?
Просто это будет выгрузка платежек в Банк-Клиент. Я хотел прямым ходом пихать данные из Галактики в DBF для экспорта - но они выгружаются в Dos кодировке (кстати а как дату выгружать - как строку?) и поле DBF, отвечающее за кодировку пустое при такой выгрузке. Ну а банку надо в Win1251. Поэтому такие мудреные алгоритмы, т.к. по - другому пока не знаю как.
А можт у кого есть примерчики (SQL) выгрузок платежек - киньте пожалуйста - буду благодарен, а то пока опыта нет особо, мучаюсь с этим SQL, поле 'основание' чего-то не пойму как прикручено к plpor.
Я делаю пока так:
Select
plpor.nodok, plpor.datvip, plpor.datob,
org_plt.name, org_plt.unn, bank_plt.name, bank_plt.mfo1, bank_plt.mfo2, bank_plt.schet1, bank_plt.schet2,
org_pol.name, org_pol.unn, bank_pol.name, bank_pol.mfo1, bank_pol.mfo2, bank_pol.schet1, bank_pol.schet2,
plpor.sumplat
From
plpor,
katorg org_plt,
katorg org_pol,
katbank bank_plt,
katbank bank_pol
where
(( date(06, 01, 2001) /== plpor.datvip
and plpor.cplat /== org_plt.nrec
and plpor.cpol /== org_pol.nrec
and plpor.cbankplat /== bank_plt.nrec
and plpor.cbankpol /== bank_pol.nrec
)) to txt;
> что мешает работать в DOS кодировке
где работать мешает? в Delphi?
Просто это будет выгрузка платежек в Банк-Клиент. Я хотел прямым ходом пихать данные из Галактики в DBF для экспорта - но они выгружаются в Dos кодировке (кстати а как дату выгружать - как строку?) и поле DBF, отвечающее за кодировку пустое при такой выгрузке. Ну а банку надо в Win1251. Поэтому такие мудреные алгоритмы, т.к. по - другому пока не знаю как.
А можт у кого есть примерчики (SQL) выгрузок платежек - киньте пожалуйста - буду благодарен, а то пока опыта нет особо, мучаюсь с этим SQL, поле 'основание' чего-то не пойму как прикручено к plpor.
Я делаю пока так:
Select
plpor.nodok, plpor.datvip, plpor.datob,
org_plt.name, org_plt.unn, bank_plt.name, bank_plt.mfo1, bank_plt.mfo2, bank_plt.schet1, bank_plt.schet2,
org_pol.name, org_pol.unn, bank_pol.name, bank_pol.mfo1, bank_pol.mfo2, bank_pol.schet1, bank_pol.schet2,
plpor.sumplat
From
plpor,
katorg org_plt,
katorg org_pol,
katbank bank_plt,
katbank bank_pol
where
(( date(06, 01, 2001) /== plpor.datvip
and plpor.cplat /== org_plt.nrec
and plpor.cpol /== org_pol.nrec
and plpor.cbankplat /== bank_plt.nrec
and plpor.cbankpol /== bank_pol.nrec
)) to txt;