Колонка со временем

Тема в разделе "Lotus - Программирование", создана пользователем DNT, 13 июл 2007.

  1. DNT

    DNT Постоялец форума
    Lotus team

    Регистрация:
    12 окт 2005
    Сообщения:
    592
    Симпатии:
    7
    Вопрос: как реализовать total в колонке отображающей длительность некоторого процесса в формате "чч:мм:сс"?
    Просто так lotus складывать ленится.
    Или это анриал?
     
  2. Domino6

    Domino6 Гость

    Ну по сути не правильная постановка поскольку длительность должна быть

    yyy-mm-dd hh-mm-ss

    Или вы хотите в виде 234 часа 3 мин 34 сек.
     
  3. DNT

    DNT Постоялец форума
    Lotus team

    Регистрация:
    12 окт 2005
    Сообщения:
    592
    Симпатии:
    7
    Не-е-е...

    У, для примера, меня есть (часы:минуты:секунды):
    00:31:30
    00:00:01
    00:30:22

    Я хочу в тотале получить: 01:01:53.
     
  4. DNT

    DNT Постоялец форума
    Lotus team

    Регистрация:
    12 окт 2005
    Сообщения:
    592
    Симпатии:
    7
    Up.

    Тема актуальна.
     
  5. Гость

    Для этого можно написать агентик, в котором надо будет ввести переменные секунд, минут, часов, дней и т.д. благо лотус позволяет со всем этим работать... Далее время переводится в секунды, затем складывается или вычитается, а затем обратный процесс перевода. Если надо где то у меня такой скрипт валялся, могу посмотреть, но в общем то нет ничего сложного. Для вьюхи я думаю тоже прокатит, надо будет так же перегнать все время в секунды и т.д...
     
  6. DNT

    DNT Постоялец форума
    Lotus team

    Регистрация:
    12 окт 2005
    Сообщения:
    592
    Симпатии:
    7
    Для: Ерюков Алексей

    с переводом в секунды, складывании и переводом в часы:минуты:секунды понятно. это уже работает в одном из агентов. Вопрос в том как во вьюхе это показать?
     
  7. Ronchik

    Ronchik Гость

    Для: DNT
    а вот такой вариант не подойдет , без агента
    Код (Text):
    sum:=(@Hour(@Created)*3600) + (@Minute(@Created)*60)+@Second(@Created);
    "hour in sek "+@Text(@Hour(@Created)*3600)+" min in sek "+@Text(@Minute(@Created)*60)+" sek "+@Text(@Second(@Created))+" sum: "+@Text(sum)
    потом просумировать оба значения времени в секундах и перевести опять в стандартный формат
     
  8. morpheus

    morpheus скриптописец

    Регистрация:
    7 авг 2006
    Сообщения:
    3.927
    Симпатии:
    0
    <!--QuoteBegin-Ronchik+18:07:2007, 08:40 -->
    <span class="vbquote">(Ronchik @ 18:07:2007, 08:40 )</span><!--QuoteEBegin-->@Text(sum)
    [snapback]72541" rel="nofollow" target="_blank[/snapback]​
    [/quote]
    НУ и обратно к виду 234 часа 3 мин 34 сек. тоже будет не сложно перевезти
    надо просто делить до целого на 3600 что бы найти часы, остаток делить до целого на 60 чтобы найти минуты, ну а дальше остауться секунды )
     
  9. DNT

    DNT Постоялец форума
    Lotus team

    Регистрация:
    12 окт 2005
    Сообщения:
    592
    Симпатии:
    7
    Н-да. Твоя - моя не понимай.... :(

    Всё вышесказанное это хорошо и правильно, и работает уже.
    Я не могу понять как мне отобразить суммарное время в колонке.... используя total.
    Самый простой способ - все привести к секундам как писал Ronchik и заставить посчитать total в этой колонке. Но в секундах видеть длительность не интересно. Как преобразовать затем из секунд в обычный формат ясно, это применимо к агенту, допустим. Но как это сделать именно во вью в total-ах???????
     
  10. Ronchik

    Ronchik Гость

    Для: DNT
    В данном случае колонка тотал не работает с массивами элементов и считает только по одному числу.....по этому вам без агента не обойтись :)
     
Загрузка...

Поделиться этой страницей