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

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

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 05.04.2012, 16:41   #1
vladislav_m
Пользователь
 
Регистрация: 29.03.2011
Сообщений: 62
По умолчанию цикл по записям

Здравствуйте! помогите пожалуйста организовать цикл..

Нужно чтоб цикл пробегал по всем записям 1 поля таблицы

Последний раз редактировалось vladislav_m; 05.04.2012 в 17:22.
vladislav_m вне форума Ответить с цитированием
Старый 05.04.2012, 18:09   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,792
По умолчанию

Что за таблица? Как ты к ней подключился?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 05.04.2012, 18:17   #3
vladislav_m
Пользователь
 
Регистрация: 29.03.2011
Сообщений: 62
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
Что за таблица? Как ты к ней подключился?
Adoyuery -> datasource 1
Dbgrideh - > Datasource

Запросом выдираю 2 поля из таблицы "Заказ" .

Код:
Select [Дата завершения публикации] , [Осталось для публикации] From [Заказы]
на форме имеется DBDatetimepicker..

Делаю так для вычисления и занесения во вторую колонку значении :

Код:


DBGrideh1.Columns[1].Field.Value:=(DBGrideh1.Columns[0].Field.Value -(DBdatetimepicker1.Date))/7;
DBGrideh1.Columns[1].Field.Value:=Round(DBGrideh1.Columns[1].Field.Value);
Заносится только 1 запись.. Незнаю как организовать цикл чтобы все поля были вычислены и занесены.

Последний раз редактировалось vladislav_m; 05.04.2012 в 18:27.
vladislav_m вне форума Ответить с цитированием
Старый 05.04.2012, 18:48   #4
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

У DataSet куча методов для перемещения указателя записи. Вариант сканирования всех записей
Код:
DataSet.First;
while not DataSet.Eof do begin
  ...
  DataSet.Next;
end;
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 05.04.2012, 18:55   #5
vladislav_m
Пользователь
 
Регистрация: 29.03.2011
Сообщений: 62
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
У DataSet куча методов для перемещения указателя записи. Вариант сканирования всех записей
Код:
DataSet.First;
while not DataSet.Eof do begin
  ...
  DataSet.Next;
end;

как раз таки вашим методом и пробую это провернуть..
vladislav_m вне форума Ответить с цитированием
Старый 05.04.2012, 19:00   #6
vladislav_m
Пользователь
 
Регистрация: 29.03.2011
Сообщений: 62
По умолчанию

помучался, и решил проблему ну для новичка пока было проьблемой )))

вот решение, может кому нибудь понадобится

Код:

dbgrideh1.DataSource.DataSet.First;
while not dbgrideh1.DataSource.DataSet.Eof  do
begin
Adoquery1.Edit;
DBGrideh1.Columns[1].Field.Value:=(DBGrideh1.Columns[0].Field.Value -(DBdatetimepicker1.Date))/7;
DBGrideh1.Columns[1].Field.Value:=Round(DBGrideh1.Columns[1].Field.Value);
dbgrideh1.DataSource.DataSet.next;
end;
vladislav_m вне форума Ответить с цитированием
Старый 05.04.2012, 19:20   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 19,042
По умолчанию

grideh1.DataSource.DataSet и Adoquery1 в одном блоке кода - зачем? Или везде grideh1.DataSource.DataSet, или Adoquery1. И желательно Post. Метод Next хоть и автоматически выполняет его, но последняя запись останется в состоянии редактирования
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 05.04.2012, 19:35   #8
vladislav_m
Пользователь
 
Регистрация: 29.03.2011
Сообщений: 62
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
grideh1.DataSource.DataSet и Adoquery1 в одном блоке кода - зачем? Или везде grideh1.DataSource.DataSet, или Adoquery1. И желательно Post. Метод Next хоть и автоматически выполняет его, но последняя запись останется в состоянии редактирования
спасибо, учту!
vladislav_m вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
навигатор по записям Aqil_f Microsoft Office Excel 15 31.05.2018 12:07
поиск по записям незнайка_на_земле Помощь студентам 5 25.10.2011 21:53
Паскаль.задача по записям. arthur 2112 Помощь студентам 6 06.05.2011 15:57
Цикл с предусловием. ( цикл while) Цикл с постусловием. (цикл repeat ... until) Mr.User Помощь студентам 9 23.11.2007 01:34