| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Delphi: Общие вопросы > Работа с датой |
| Автор: Berliner 9.8.2005, 17:59 |
| 1 Надо чтобы в определенное время (например) каждый день запускать процесс(например копирование файла) 2 Есть база данных формат парадокс. Поле типа DAte. В этом поле дни рождения людей как это сделать чтобы каждый раз при запуски программы напоминала программа у кого день рождения людей. Подскажите пожалуста наиболее простые решения |
| Автор: FRAGNATIC 10.8.2005, 01:41 | ||||
для этого прога должна быть у тя всё время запущена!
берёш время из БД сравниваешь с текушим отнимаешт текушее время от времени в БД получаеш интервал переводиш в милесекунды и заношиш в Interval в процедуре таймерпрок поздровляеш с ДР кого те надо! |
| Автор: vadims 10.8.2005, 02:52 |
| 1 можно использовать FRAGNATIC или планировщик задач 2 Так сканировать по этому полю по ключу или поставить фильтр при запуске и тупо их перебрать Только тут еще вопрос а если программа запускается второй раз в один день - все те же поздравления повторно ??? Я бы создал отдельный файл куда вначале бы перенес записи новорожденных и по мере их поздравления метил что эта запись больше не нужна |
| Автор: mvdr 10.8.2005, 07:20 | ||||
первая - засоывается в автозапуск и по времени (Time) запускает вторую программу. я так понял п.2 это логическое продолжение п1.?
1) в БД сделать поле, которое или T, или F. Если прога сегодня была запущена, то этот параметр F. С изменением даты - он превращается в Т. Соотв-но, если Т - то создается файл в который переносится отсортированный список людей у кого сегодня ДР. 2) В цикле считывать построчно, и запускать вторую программу, которая их бы поздравляла. Хотя... если это напоминалка ТЕБЕ (пользователю), то можно сделат так: показывать (напоминать) каджые Х минут. Разумеется, что надо ввести тогда флажок, типа "Больше не показывать это окно сегодня") Или в опциях ставить через сколько оповещать (У раз в день) |
| Автор: Berliner 10.8.2005, 10:34 |
| To fragnatic : Поподробнее опиши насчет копирование файла в определееное время Да, прорамма все время будет запущена TO Femida да это просто напоминалка пользователю. БУду пытаться сделать |
| Автор: Romikgy 10.8.2005, 11:12 |
| Ксати здеся мона юзать nncron |
| Автор: FRAGNATIC 10.8.2005, 13:25 | ||
| [/quote]Только тут еще вопрос а если программа запускается второй раз в один день - все те же поздравления повторно ??? Я бы создал отдельный файл куда вначале бы перенес записи новорожденных и по мере их поздравления метил что эта запись больше не нужна[quote] Ну начнём с того что я просто не начал оисывать это! Дело в том что у меня похожоя программа! В не я сделал так из БД раз в 24 часа считываютя записи если нужно напомнить в эти 24 часа то эта записить копируется в отдельный файл при этом у записи свойство флага становится тру чтобы потом она не копировалась повторно в случаи экстрено завершения проги и последуешего её запуска! после чего раз в час другим таймером я прогибаюсь по скопированым записям если надо в течении этого часа напомнить то выстовляю таймер на то время на которое надо SetTimer при этом из файла удаляю эту запись! и заношу в другой файл выстовленый таймер (определёные данные) после чего если прога вдруг опять завершилаьс то при запуске из этого файла считываю все поставленые но не завершёные таймеры! отправляю напоминания и затем удаляю и из БД запись и из файла с актиынми таймерами) Berliner что тебе именно не понятно?
Вот в этой процедуре посылаешь поздравления) Добавлено @ 13:27 Потом могу тебе более подробный код дать! Пока просто Дэлфи не устоновлена у меня! |