|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
|
Опции темы | Поиск в этой теме |
26.06.2007, 14:05 | #11 | |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
Цитата:
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
|
|
26.06.2007, 22:03 | #12 | |
Регистрация: 06.06.2007
Сообщений: 9
|
Цитата:
передавать мы просто должны 2 даты (начало периода и соответственно конец периода за который нам нужен отчет) А "ушел" и "пришел"- это столбцы таблицы в БД... еще проблема в том, что за 1 день м.б. несколько событий "пришел"(кол1) и "ушел"(кол2), причем кол1 не обязательно совпадает с кол2. это тоже надо как-то учесть... P.S. за процедурку спасибо, кажется поняла |
|
27.06.2007, 08:44 | #13 | |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
Цитата:
Или ты хочешь, чтобы я тебе всю прогу напедалил ))
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
|
|
27.06.2007, 09:48 | #14 | |
Форумчанин
Регистрация: 20.06.2007
Сообщений: 270
|
Цитата:
Каждое значение даты можно представить как "интервал" (количетво часов или минут) от "начала периода". 1. Сделай вычисляемые поля, вычисляющие "интервалы" по столбцам "пришел" и "ушел". 2. Просуммируй вычисляемые поля отдельно по "пришел" [SUMM("пришел")] и "ушел" [SUMM("ушел")]. 3. Тогда выражение SUMM("ушел")-SUMM("пришел") даст тебе фактическое количество времени, проведенное человеком на рабочем месте. Реализовать это, я думаю, можно в одном SQL запросе. ------ PS: Если у тебя поля содержат дату и время в формате TIMESTAMP тогда тебе даже не придется писать функцию по преобразованию даты в "интервал". SQL должен поддерживать вычисление интервалов автоматически. PPS: Я не рассматриваю вопрос определения крайних значений полей "пришел" и "ушел" для заданного промежутка времени. Об этом сама подумай. Я только общую идею подал.
-Кукушка, кукушка! Накукуй мне сто лет!
-А накукуй тебе столько? (с) Библия. Вольный перевод с древнееврейского. |
|
27.06.2007, 11:27 | #15 |
Регистрация: 06.06.2007
Сообщений: 9
|
всем спасибо!
В понедельник попытаюсь реализовать... буду выкладывать варианты на ваше профессиональное суждение ))) |
27.06.2007, 14:12 | #16 | |
детский тренер
Форумчанин
Регистрация: 08.06.2007
Сообщений: 532
|
Цитата:
Выкинь потом код, оценим.. Лично мне интересно
Я злой и страФный серррый воФк, и в пАрАсятах знаю толк - ppp ppp pp p pp pp
|
|
29.06.2007, 19:19 | #17 |
Форумчанин
Регистрация: 03.05.2007
Сообщений: 247
|
есть вопрос: дана таблица tablakt с полями dakta:DataTime, Nakt:Numeric, vno:integer (время Ч приема акта).
вот запрос: Select dakta, Count(Nakt) as kol, vno From tablakt Group By dakta на форме есть кнопка Button1 и компонент DateTimePicker1. результат запроса: kol dakta vno 4 21.06.2007 6 1 21.06.2007 8 5 21.06.2007 15 2 22.06.2007 7 8 22.06.2007 14 задача: необходимо при выборе даты(например в DateTimePicker дата 21.06.2007) подсчитать количество актов kol начиная с выбранной и начиная с 8 (vno) и заканчивая следующим за ним днем (т.е. 22.06.2007) заканчивая 8 (vno) и отправить результат в отчет RavReport. Как это сделать? Последний раз редактировалось ГОСЕАН; 29.06.2007 в 19:22. Причина: сбиваются колонки |
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с датой | xDjarx | БД в Delphi | 38 | 02.05.2009 14:21 |
Работа со временем. | ekzi | Общие вопросы C/C++ | 1 | 22.07.2008 15:29 |
Работа с датой | Dunpeal | Общие вопросы Delphi | 5 | 15.05.2008 12:05 |
Работа со временем | joker | Общие вопросы Delphi | 4 | 20.04.2008 15:01 |
массив сохранение информации и манипуляции | oblom | Общие вопросы C/C++ | 19 | 04.02.2008 02:28 |