ОФИЦИАЛЬНЫЙ ФОРУМ ГРУППЫ КОМПАНИЙ «ТЕХНОКОМ»

ОФИЦИАЛЬНЫЙ ФОРУМ ГРУППЫ КОМПАНИЙ «ТЕХНОКОМ» (http://forum.tk-chel.ru/index.php)
-   Система «АвтоГРАФ»: Программное обеспечение (http://forum.tk-chel.ru/forumdisplay.php?f=4)
-   -   Отчеты ReportsNet, версия 1.0.5 (http://forum.tk-chel.ru/showthread.php?t=3351)

storm 01.09.2015 05:20

Цитата:

Сообщение от csistra (Сообщение 113837)
int Edv = ToInt32((String)Report.GetColumnValue("DS_parks.E_ REAL_TIME"));
int Sdv = ToInt32((String)Report.GetColumnValue("DS_parks.S_ REAL_TIME"));

это же время, зачем вы его пытаетесь преобразовать в число, преобразовывайте в DateTime
зачем метод GetStatus, какой смысл в нем
попробуйте вот так:

Код:

private void MasterData2_BeforePrint(object sender, EventArgs e)
    {
      Text150.Text = "123";
DateTime currSdv = DateTime.Parse((String)Report.GetColumnValue("DS_parks.S_  REAL_TIME")); //запоминаем время начала текущей остановки
      DataSourceBase ds = Report.GetDataSource("DS_parks");
      // инициализируем его
      ds.Init();
      // перебираем все записи в источнике
      while (ds.HasMoreRows)
      {
        DateTime rowSdv = DateTime.Parse((String)Report.GetColumnValue("DS_parks.S_  REAL_TIME")); //время начала остановки для текущей строки перебора
        if (rowSdv > currSdv) //ищем остановку следующую после нашей (время больше времени текущей)
        {               
          Text150.Text = rowSdv.ToString(); //выводим найденное время в ячейку со временем окончания движения
break;
        }               
       
        ds.Next();
         
      }
      }

если следующей остановки не будет найдено, то выведется текст, который вы задаете в начале метода, те Text150.Text = "123";

csistra 02.09.2015 07:26

Не выводит воообще ничего.... все перелопатил не пойму в чем дело.
Сбросил на почту шаблон если не сильно напряжно гляньте плз.

storm 02.09.2015 09:47

csistra,
у вас событие MasterData2_BeforePrint не было привязано к бэнду с данными, вот так
Нажмите для просмотра содержимого...

поправленный шаблон сбросил на почту

csistra 03.09.2015 06:42

Спасибо, теперь сижу придумываю как итоги сделать :)

csistra 03.09.2015 15:00

Что-то невыходит каменный цветок.
Пытаюсь вычислить время движения ТС.
Если беру [DS_parks.MOVE_CONT], в результате вижу ноль.
Пытаюсь вычислить из периода ([EndTime]-[StartTime])-[DS_trip.PARK_CONT]
ругается....
Подскажите как мне посчитать время движения ТС (суммарное) туплю что то совсем я уже.

storm 03.09.2015 18:08

Цитата:

Сообщение от csistra (Сообщение 114183)
Что-то невыходит каменный цветок.
Пытаюсь вычислить время движения ТС.
Если беру [DS_parks.MOVE_CONT], в результате вижу ноль.
Пытаюсь вычислить из периода ([EndTime]-[StartTime])-[DS_trip.PARK_CONT]
ругается....
Подскажите как мне посчитать время движения ТС (суммарное) туплю что то совсем я уже.

завести в коде переменную типа TimeSpan и в него приплюсовывать каждое время движения

csistra 16.09.2015 06:11

подскажите, где я накосячил.
Из редактора запускаю отчет все нормально.
Если пытаюсь сформировать отчет ругается на выражение:
[ToString([EndTime]-[StartTime])-[Total]]

Итог Total:
StrToTimeSpan([DS_parks.REAL_CONT])

storm 16.09.2015 06:34

Цитата:

Сообщение от csistra (Сообщение 114885)
подскажите, где я накосячил.
Из редактора запускаю отчет все нормально.
Если пытаюсь сформировать отчет ругается на выражение:
[ToString([EndTime]-[StartTime])-[Total]]

Итог Total:
StrToTimeSpan([DS_parks.REAL_CONT])

вы пытаетесь вычитать строки, попробуйте так
[ToString([EndTime]-[StartTime]-[Total])]

csistra 16.09.2015 07:31

http://saveimg.ru/show-image.php?id=...e5d8aa21f55529
не хочет он так.

Добавлено через 3 минуты
В общем фигня получается.
Я всего лишь пытаюсь посчитать время движения ТС за период.

Добавлено через 17 секунд
Соответственно период минус сумму остановок.

storm 16.09.2015 07:38

csistra, а так
[ToString([EndTime]-[StartTime]-(TimeSpan)[Total])]


Текущее время: 00:13. Часовой пояс GMT.

Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot