powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
11 сообщений из 11, страница 1 из 1
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32242537
Фотография SASH2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проблема следующая: Необходимо с одного DBF файла перенести данные с поля FIO в другой DBF файл в поля Famil, Name, Othestvo. Причем в первом DBF файле в поле Fio есть и фамилия и имя и отчество.
Хотелось бы из этого поля взять фамилию и перенести во второй DBF файл в поле Famil, так же взять имя и перенести в поле Name и взять отчество и перенести в поле Otchestvo.

У меня есть следующий код программы:

procedure TForm1.BitBtn1Click(Sender: TObject);
var
sf, sn, so, s : AnsiString;
n : integer;
begin
Table1.Open(); Table2.Open();
while not Table1.Eof do
s := Table1.FieldByName('FIO').Value;
n := Pos(s,' ');
sf := Copy(s,1,n-1);
s := Copy(s,n+1,Length(s) - n);
n := Pos(s,' ');
sn := Copy(s,1,n-1);
so := Copy(s,n+1,Length(s) - n);

Table2.Append();
Table2.FieldByName('Family').Value := sf;
Table2.FieldByName('Name').Value := sn;
Table2.FieldByName('Otch').Value := so;
Table2.Post;
Table1.Next;

end;

Но при нажатии на кнопку "Перенести" программа зависает.

Подскажите пожалуйста, что можно сделать чтобы программа не зависла и всетаки перенесла данные.
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32242541
Фотография Skleroz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А как именно она зависает? Ты ее трассировал?
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32242548
dragonx
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dlya etogo est` component TBuchMove (mogu oshibitsya v nazvanii)
ispolzui luche ego, i bistro i coda - minimum
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32242569
Фотография SASH2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Программа зависает тогда, когда я нажимаю на кнопку "Перенести". Виснет и никаких ошибок не выдает. Может есть какая нибудь ошибка в самом коде?

Конечно попробую сейчас использовать компогнт BatcMove - может и получится, но просто интересно разобраться с этим примером.

Спасибо всем за помощь!!!
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32242590
Серега
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2SASH2
>Программа зависает тогда, когда я нажимаю на кнопку "Перенести".
Может клопка залипает? 8-)

>Подскажите пожалуйста, что можно сделать чтобы программа не зависла и всетаки перенесла данные.
Попробовать наконец воспользоваться отладчиком - отличная весчь.

Интересно, а как твоя прога будет переносить человека по имени, например, Остап Сулейман Берта Мария Бендер Бей? 8-) Или у тебя таких нет?
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32242628
Фотография SASH2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Кнопка не залипает это точно!!!
Таких титулов и длинных имен в моей бозе нет.!!! ;-)

по делу:
Попробую воспользоваться предложенной весчью.
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32243050
mir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Проверь все
BEGIN'ы и END'ы
особо в цикле WHILE.
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32243078
Фотография Luchkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
этот код не может зависнуть (если это весь код и в точности он выполняется.
небось, записей в табле1 дофига?
модифицируй строки:
Код: plaintext
1.
2.
3.
   ...
   Table1.Next; 
end;

на
Код: plaintext
1.
2.
3.
4.
5.
6.
   ...
   Table1.Next; 
   BitBtn1.Caption:= IntToStr(Table1.RecNo) +'/'+ IntToStr(Table1.RecordCount);
   BitBtn1.Update;
end;
BitBtn.Caption:= 'It''s all right';
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32243145
Lana
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
procedure TForm1.BitBtn1Click(Sender: TObject); 
var 
sf, sn, so, s : AnsiString; 
n : integer; 
begin 
Table1.Open(); Table2.Open(); 
while not Table1.Eof do 
s := Table1.FieldByName('FIO').Value; 
n := Pos(s,' '); 
sf := Copy(s, 1 ,n- 1 ); 
s := Copy(s,n+ 1 ,Length(s) - n); 
n := Pos(s,' '); 
sn := Copy(s, 1 ,n- 1 ); 
so := Copy(s,n+ 1 ,Length(s) - n); 

Table2.Append(); 
Table2.FieldByName('Family').Value := sf; 
Table2.FieldByName('Name').Value := sn; 
Table2.FieldByName('Otch').Value := so; 
Table2.Post; 
Table1.Next; 

end; 

данный код очень даже хорошо зависает, входит в бесконечный цикл
Код: plaintext
1.
2.
while not Table1.Eof do 
s := Table1.FieldByName('FIO').Value; 

Table1.Next; - конечно же не происходит

так должно работать :
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
procedure TForm1.BitBtn1Click(Sender: TObject); 
var 
sf, sn, so, s : AnsiString; 
n : integer; 
begin 
Table1.Open(); Table2.Open(); 
while not Table1.Eof do  BEGIN
s := Table1.FieldByName('FIO').Value; 
n := Pos(s,' '); 
sf := Copy(s, 1 ,n- 1 ); 
s := Copy(s,n+ 1 ,Length(s) - n); 
n := Pos(s,' '); 
sn := Copy(s, 1 ,n- 1 ); 
so := Copy(s,n+ 1 ,Length(s) - n); 

Table2.Append(); 
Table2.FieldByName('Family').Value := sf; 
Table2.FieldByName('Name').Value := sn; 
Table2.FieldByName('Otch').Value := so; 
Table2.Post; 
Table1.Next; 
END;
end;
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32243153
Фотография Luchkin Dmitry
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
5 баллов :)
чё за фигня. я таких ошибок уже лет 7 не вижу...
старость :)
...
Рейтинг: 0 / 0
Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
    #32243329
Фотография SASH2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо!!! Спасибо!!! Спасибо!!!
Программа работает просто замечательно!!!
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Перенос даных из одного Dbf в другой Dbf с помощью Delphi.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]