Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Вычисление периода наработки [D6, Access]


VitaFrost ©   (2008-07-04 19:04:00) 

Здравствуйте,Уважаемые мастера.
Помогите,пожалуйста, разобраться с проблемой.
Есть 2 таблицы Srv HistorySrv c полями key,Name у первой таблицы и полями Key,LinkKey,DataV,DataR- где key-главные ключи,LinkKey-ключ подчиненной таблицы,DateV,DateR -дата ввода в эксплуатацию и дата ремонта соответственно.
1 запись таблицы Srv имеет много записей таблицы HistorySrv.
Пример:   Srv                         HistorySrv

           Name              DateV            DateR
           Манометр       25.12.2007
           Манометр                            05.01.2008
           Манометр       10.03.2008
           Манометр                            12.13.2008
и т.д.
Нужно определить сколько манометр был в эксплуатации и сколько времени он находился в ремонте. (в часах!!!)
Пожалуйста,помогите!!! Спасибо.


VitaFrost   (2008-07-06 19:02:00) [1]

>считать станет гораздо проще.

>если DateV -дата ввода в эсплуатацию,
>    DateR -дата начала ремонта
>то сумма разностей дат по всем записям данного

> считать станет гораздо проще.если DateV -дата ввода в эсплуатацию,
>      DateR -дата начала ремонтато сумма разностей дат по
> всем записям данногоманометра даст суммарное время эксплуатации,
> далее находим min и мах даты - ихразность это суммарное
> аремя службы.Вычитаем из него суммарное время эксплуатацииполучим
> сумарное время ремонта.


Спасибо попробую.


Kostafey   (2008-07-05 17:15:00) [2]

Возможно я понял о чем речь.

Тут следует скорректировать модель хранения
данных. Т.е. не вводить новую запись для
кождого перехода состояния манометра,
а делать это в той же записи.

Т.е.
          Name              DateV            DateR
          Манометр       25.12.2007          05.01.2008

считать станет гораздо проще.
если DateV -дата ввода в эсплуатацию,
    DateR -дата начала ремонта
то сумма разностей дат по всем записям данного
манометра даст суммарное время эксплуатации,
далее находим min и мах даты - их
разность это суммарное аремя службы.
Вычитаем из него суммарное время эксплуатации
получим сумарное время ремонта.

...как-то так


VitaFrost   (2008-07-05 16:55:00) [3]

>У нас наверняка не 1 манометр. Так?

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


Kostafey   (2008-07-05 14:08:00) [4]

>           Name              DateV            DateR
>           Манометр       25.12.2007
>           Манометр                            05.01.2008
>           Манометр       10.03.2008
>           Манометр                            12.13.2008

У нас наверняка не 1 манометр. Так?

А вообще, запрос этот приведи.


Anatoly Podgoretsky   (2008-07-04 20:16:00) [5]

По лунному календарю живешь?
И кстати а как ты получил данную последовательность?


sniknik   (2008-07-04 19:56:00) [6]

> но как преобразовать это в часы?
*24


VitaFrost   (2008-07-04 19:47:00) [7]

Представляю ее в виде цикла по записям.
DateR-DateV=Period,но как преобразовать это в часы?


Johnmen   (2008-07-04 19:40:00) [8]


> Проблема в написании алгоритма вычисления данной задачи.

Вы не умеете писАть?
И каким образом вы представляете "вычисление задачи"?


VitaFrost   (2008-07-04 19:25:00) [9]

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


Johnmen   (2008-07-04 19:13:00) [10]

А в чём/с чем конкретно проблема?


Наверх

Титульная страница Поиск, карта сайта Написать письмо