Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Операционные системы > Софт
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 03.02.2010, 12:10   #1
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
Печаль tdbf и 2010

Нашёл строчку на форуме на форуме

Delphi select the file tdbf_dXr.dpk, where X is your delphi version number

Скачал пакет но там такого файла нет. Есть у кого под 2010. Этот компонент? Поделитесь пожалуйста.
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 03.02.2010, 12:16   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Оффтоп:
Я когда-то отказался от этого компонента в пользу стандартных Visual FoxPro ODBC драйверов. И не пожалел.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.02.2010, 12:28   #3
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

А зачем тему в программы засунули это же компонент от DELPHI

Он нужен для создания dbf с полями типо number 11.2.
Тема уже об этом есть. Просто перешли на delphi 2010. А это единственный компонент который я использовал
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 03.02.2010, 12:31   #4
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
А зачем
Я расценил это как обсуждение Делфи а не самого компонента.
Цитата:
Он нужен для создания dbf с полями типо number 11.2.
Дык провайдер VFP тоже такое может. У меня по крайней мере как раз с ним проблемы исчезли.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.02.2010, 12:33   #5
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

вот тема

http://programmersforum.ru/showthrea...ht=tdbf&page=2

Прочитайте думаю станет понятно. По крайней мере это единственное решение.... как создать такой dbf

Перенесите тему обратно... Всё таки это обсуждение этого компонента и как его засунуть delphi
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)

Последний раз редактировалось BARNEY; 03.02.2010 в 12:43.
BARNEY вне форума Ответить с цитированием
Старый 03.02.2010, 13:06   #6
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Цитата:
По крайней мере это единственное решение.... как создать такой dbf
Чепуху не городи. Это далеко не единственное решение
У меня команда CREATE TABLE Table1 (Field1 N(11,2)) выполняется на ура провайдером VFP. Все поля прекрасно создаются.
Цитата:
Перенесите тему обратно
Не согласен. Это обсуждение версии Делфи, и точка.

Между прочим не факт что разработчики TDBF продолжили его жизнь поддержкой новых версий Делфи.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 03.02.2010, 15:57   #7
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

что то я не нашёл этого драйвера в списке.
Изображения
Тип файла: jpg 12.JPG (44.3 Кб, 195 просмотров)
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)
BARNEY вне форума Ответить с цитированием
Старый 05.02.2010, 08:35   #8
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,238
По умолчанию

Цитата:
Сообщение от BARNEY
что то я не нашёл этого драйвера в списке.
его и не будет там. Это надо ставить отдельно.
Он полностью бесплатен.
Взять Microsoft OLE DB Provider for Visual FoxPro
можно на сайте Microsoft:
Microsoft OLE DB Provider for Visual FoxPro 8.0
Microsoft OLE DB Provider for Visual FoxPro 9.0.0.3504
только там есть определённый нюанс, если работа будет происходить с таблицами DBF с кодировкой OEM (866 таблица), то я рекомендую использовать вариант с отпатченной кодовой таблицей:
Код:
заменить E4->E3 
в v 8.0 это по смещению 0004b43c

в v 9.0 это по смещению 00055BF1
должно получиться так:

░.0C0D5BE3: E81E500400                   call       .00C11AC06  ----- (6)
░.0C0D5BE8: 85C0                         test        eax,eax
░.0C0D5BEA: 0F8534D0FCFF                 jne        .00C0A2C24  ----- (7)
░.0C0D5BF0: BEE3040000                   mov         esi,0000004E3 ;"  у"
░.0C0D5BF5: E92AD0FCFF                   jmp        .00C0A2C24  ----- (8)
░.0C0D5BFA: 214508                       and         [ebp][08],eax
░.0C0D5BFD: E9BCE9FCFF                   jmp        .00C0A45BE  ----- (9)
мы используем в реальной работе v8.0 т.к. есть огромная база с текстовым полем (ФИО), так вот, при запросах по этому полю провайдер VFP v9.0 явно не использует имеющийся индекс (формат индекса .CDX), а v8.0 использует (время выполнения запроса НА ПОРЯДОК меньше). с чём связано и как побороть неясно, поэтому и оставили в работе версию v8.0.

во-вторых, сегодня на руборде человечек под ником xrusik
выложил такое:
Цитата:
Сообщение от xrusik
TDBF для Delphi 2010 (TDBF D2010)

поправленный TDBF для Delphi 2009

http://depositfiles.com/files/u5ocukhw6
я, разумеется, не проверял, что там и как, поэтому используйте на свой страх и риск.
p.s. файлик небольшой, поэтому позволил себе прикрепить его к сообщению.

внимание! внутри архива Tdbf_D2010.rar действительно лежат исходники и пакет TDBF под Delphi2010, но работоспособность не проверял!
Вложения
Тип файла: rar Tdbf_D2010.rar (102.5 Кб, 134 просмотров)

Последний раз редактировалось Serge_Bliznykov; 05.02.2010 в 08:41.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 05.02.2010, 14:29   #9
BARNEY
Участник клуба
 
Регистрация: 23.04.2009
Сообщений: 1,058
По умолчанию

Прям опять меня спасаете...

Как понял синтаксис создания Dbf изменился.

Если у кого есть delphi 2010 не могли бы помочь.

раньше работало так.

Код:
procedure TEks.CreateDBf;
var
  TempFieldDefs: TDbfFieldDefs;
  //ch1 : Char;   было в d7 
   ch1 : AnsiChar; // ругалось и заменил
  s   : string;
  s1  : AnsiString; // ругалось и заменил
  //s1  : String[1];   было в d7 
  i, pr : integer;
begin

  with dbf1 do begin
    Dbf1.Close;
    Dbf1.TableName := trim(str);
    DbfGlobals.DefaultCreateCodePage := 866;
    TempFieldDefs := TDbfFieldDefs.Create(Self);
    try
      for i:=0 to mmoStructure.Lines.Count-1 do
      begin
        Application.ProcessMessages;
        with TempFieldDefs.AddFieldDef do
        begin
            s := mmoStructure.Lines[i];
            if length(trim(s))>0 then begin
              FieldName := Trim(Copy(s,1,12));
              s1  := Copy(s,13,1);
              Ch1 := s1[1];
              NativeFieldType := (ch1);
              Size := StrToInt(Trim(Copy(s,28,4)));
              pr := 0;
              if length(s)>32 then begin
                pr := StrToInt(Trim(Copy(s,33,4)));
              end;
              Precision := pr;
            end;
        end;
      end;
      Dbf1.CreateTableEx(TempFieldDefs);
    finally
      FreeAndNil(TempFieldDefs);
    end;
  end;
end;
текст в memo

Цитата:
OGRN Character 15
SS Character 14
FAM Character 60
IM Character 40
OT Character 40
W Character 1
S_POL Character 20
N_POL Character 25
Q_NAME Character 50
QCOD Character 8
DR Character 8
ADRES Character 80
DAT_1 Date 8
DAT_2 Date 8
POS Numeric 6 2
DAT_3 Character 150
Q_U Numeric 1 0
V_TP Numeric 1 0
SP_COD Character 3
VR_COD Character 5
DS Character 7
TARIFF Numeric 11 2
S_ALL Numeric 11 2
S_SF Numeric 11 2
N_PP Numeric 5 0
D_TYPE Character 3
OT_COD Character 3
FAM_R Character 60
IM_R Character 40
OT_R Character 40
SN_PASP Character 20
SATISF Numeric 1 0
EMERG Numeric 1 0
N_CARD Character 25
RES_G Numeric 2 0
R_TYPE Numeric 2 0
NUM_S Character 10
DATA_S Date 8
Всё компилируются и создаётся но открыть через ADO уже не получается пишет дисковая или сетевая ошибка
Если вам человек помог, не стесняйтесь говорить спасибо (весы под аватаром)

Последний раз редактировалось BARNEY; 05.02.2010 в 14:51.
BARNEY вне форума Ответить с цитированием
Старый 05.02.2010, 15:15   #10
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

А в ADO какой провайдер выбираешь?
Если не сложно прикрепи создавшуюся базу, ато мне не охота качать TDBF

Кстати, по-моему сам TDBF может заменить ADO компоненты.
I'm learning to live...
Stilet вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установка TDBF в Delphi 2007 TIgor4 Компоненты Delphi 0 30.10.2009 14:04
Delphi 2010 beemoto Общие вопросы Delphi 6 22.09.2009 13:57
Как правильно использовать компонент TDBF SadStar Компоненты Delphi 0 27.03.2009 02:48
компонент TDBF furstenberg Компоненты Delphi 2 27.03.2008 19:23