Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 30.05.2010, 23:18
DeadDen DeadDen вне форума
Прохожий
 
Регистрация: 30.05.2010
Сообщения: 2
Репутация: 10
Лампочка Цикличный переход по строкам таблицы.

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

Делаю диплом.
Почтовая программа.

Отправка письма списку получателей.
Всё работает, да вот по-жизни не дружил с базами данных.

База данных(Таблица в Access)
ИМЯ|ФАМИЛИЯ|EMAIL

считывать нам нужно только EMAIL
соответственно, как я понимаю(или не совсем), чтобы считать этот самый EMAIL в таблице:
DBGrid1.Fields[2].Text

так вот.
программа считывает вроде как то что мне нужно - письмо уходит на EMAIL(а не на "ИМЯ" или "ФАМИЛИЯ") записанный в первой строке

но когда я делаю Repeat..дальше дело не идет как надо.
программа отсылает письмо первому в списке адресату, бесконечное количество раз...
вместо того чтобы перейти на след. строку и считать следующий по списку email

Код:
//нажимаем кнопку ОТПРАВИТЬ ПИСЬМО
procedure TfmMain.sbtSendClick(Sender: TObject);
//тут у нас VAR(*вырезал*)
Begin
Repeat
EnableControls(false);
//тут собственно код отправки письма(*вырезал*) 
//вот кстати один из кусочков, откуда успешно считывает адрес получателя(всего подобных ~4-5)
IdTCPClient.SendCmd('RCPT TO:<'+DBGrid1.Fields[2].Text+'>', [250, 251]);

//тут идет прочая хурма которая работает как надо(*вырезал*)
//ну и в конце:

finally
  //отключение
    IdTCPClient.Disconnect;
    EnableControls(true);
end;
    Until Ta.Table1.Eof;
//"Ta" - имя датамодуля где сидят DataBase1, Table1, DataSource1
end;

проблема - заставить с помощью цикла переходить по строкам таблицы
Было бы очень хорошо если это произошло скорее - предзащита на носу, не могу никак писать пояснительную записку,пока это не доделаю.

Последний раз редактировалось DeadDen, 30.05.2010 в 23:48.
Ответить с цитированием
  #2  
Старый 31.05.2010, 00:38
roamer roamer вне форума
Активный
 
Регистрация: 15.04.2009
Сообщения: 369
Репутация: 93
По умолчанию

У Вас вечный цикл...
Надо что-то вроде этого :
Код:
Ta.Table1.First;
while not Ta.Table1.Eof do
 begin
   ...
   ...
   Ta.Table1.Next;
end;
Ответить с цитированием
  #3  
Старый 31.05.2010, 00:52
DeadDen DeadDen вне форума
Прохожий
 
Регистрация: 30.05.2010
Сообщения: 2
Репутация: 10
По умолчанию

ДА!спасибо.
всё было так просто.
однако именно это я и не мог сделать.
Ответить с цитированием
Ответ


Delphi Sources

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

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 02:28.


 

Сайт

Форум

FAQ

Соглашения

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2025