Форум программистов, компьютерный форум, киберфорум
Lazarus
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.83/6: Рейтинг темы: голосов - 6, средняя оценка - 4.83
394 / 194 / 48
Регистрация: 11.07.2013
Сообщений: 1,211

Как при определении TDateTime не учитывать сутки, часы или минуты?

07.11.2015, 12:08. Показов 1166. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Что-то подобное я уже спрашивал в теме "Как определить количество прошедших минут между двумя событиями?", но теперь несколько иная задача.
Допустим данные накапливаются в БД и оператор в одной таблице должен видеть информацию за текущие сутки и последние 6 часов предыдущих (аналогично в других таблицах: за текущий час плюс последние 10 минут предыдущего часа и так далее по нисходящей). Чтобы это организовать я предполагаю использовать в SQL-запросе фильтр. Однако если я его буду менять при каждом опросе (допустим, 10 раз в секунду), то отображаемая таблица будет всё время перескакивать и оператор не сможет ей пользоваться. Поэтому необходимо в первом случае получить переменную TDateTime, в которой вместо часов, минут, секунд и милисекунд будут нули, а во втором случае часы должны сохраняться. Не могу придумать лучшего варианта, чем так:
Delphi
1
2
3
4
  MyHuar:=RecodeMilliSecond(Now,0);
  MyHuar:=RecodeSecond(MyHuar, 0);
  MyHuar:=RecodeMinute(MyHuar, 0);
  MyDay:=RecodeHour(MyHuar, 0);
Есть ли в Lazarus-е функции типа:
Delphi
1
2
  MyHuar:=xxxx(Now, отображать только часы и выше);
  MyDay:=xxxx(Now, отображать только сутки и выше);
Второе, переменная TDateTime является аналогом Double. В целой части её хранятся сутки, прошедшие от какого-то там года (не важно). Для получения суток можно поступить так:
Delphi
1
2
3
4
5
i: integer;
d: double;
.............
i:=Trunc(d);
d:=i;
А есть ли что-то типа
Delphi
1
d:=yyyy(d); // double, но только целая часть.
Буду очень признателен всем, кто примет участие в обсуждении данной темы.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
07.11.2015, 12:08
Ответы с готовыми решениями:

Программа, которая переводит часы и минуты в минуты или минуты – в часы и минуты
Составьте программу, которая в зависимости от входных данных переводит часы и минуты в минуты или минуты – в часы и ...

Перевести временной интервал, заданный в минутах в вид: сутки, часы, минуты
Здравствуйте. Не получается довести "до ума" задачку: Программа переводит временной интервал, заданный в минутах в вид: сутки, часы,...

Написать программу, которая бы по введенному номеру единицы измерения (1-секунды, 2-минуты, 3-часы, 4-сутки) и заданному временному интервалу печатала
Написать программу, которая бы по введенному номеру единицы измерения (1-секунды, 2-минуты, 3-часы, 4-сутки) и заданному временному...

1
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33419 / 21526 / 8239
Регистрация: 22.10.2011
Сообщений: 36,932
Записей в блоге: 12
07.11.2015, 12:41
Первое: чем RecodeDateTime не устраивает? Первые сколько нужно параметров передашь через YearOf/MonthOf/DayOf..., остальные - добьешь нулями.

Второе - опять же, смотри на <>Of функции, они покрывают практически все, что нужно. Хотя просто так взять целую часть от вещественного числа и вернуть результат, как вещественное число - есть функция Int
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
07.11.2015, 12:41
Помогаю со студенческими работами здесь

Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) когда совпадут минуты и часы
Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) до того момента когда часовая и минутная стелка...

Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) когда совпадут минуты и часы
Даны целые числа m (часы) и n (минуты) .Определить наименьшее время (в минутах) до того момента когда часовая и минутная стелка...

Преобразовать введенное значение в часы и минуты и выводит на экран в виде “часы: минуты”
Здравствуйте, помогите пожалуйста с написанием программы. Написать программу, которая запрашивает у пользователя значение времени в...

Формат даты или как получить часы, минуты, секунды
В текстовое поле выводится время . Вот так - String mytime =...

Из секунд - часы, минуты и секунды. Из минут - часы, минуты
private void button4_Click(object sender, EventArgs e) { if (textBox3.Text == &quot;&quot;) { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru