16.12.2012, 04:53
|
| »»» |
#1
|
Начинающий
Красноярск
Регистрация: 08.12.2012
Сообщений: 32
|
Внешний отчет
Подскажите как можно сделать в данном отсчете так, чтобы выводились строчки только с отрицательным объемом топлива.
|
|
|
|
16.12.2012, 10:11
|
| »»» |
#2
|
Администратор
Регистрация: 27.05.2010
Сообщений: 29,974
|
Использовать обработчик OnBeforePrint и не выводить строки, которые не соответствуют Вашему условию.
Нажмите для просмотра содержимого...
ООО «ТехноКом», г. Челябинск
Самцов Константин Юрьевич - зам. директора по коммерческой деятельности
|
|
|
|
17.12.2012, 06:31
|
| »»» |
#3
|
Начинающий
Красноярск
Регистрация: 08.12.2012
Сообщений: 32
|
При двойном по пустому полю onbeforeprint выскакивает ошибка. Скриншот во вложении.
|
|
|
|
17.12.2012, 07:21
|
| »»» |
#4
|
Администратор
Регистрация: 27.05.2010
Сообщений: 29,974
|
Сообщение от TOOP
|
При двойном по пустому полю onbeforeprint выскакивает ошибка. Скриншот во вложении.
|
Проверьте вкладку "Код", там должно быть следующее (если никто не лазил):
Код:
|
var
Days: array[1..7] of string;
procedure FastReportOnStartReport(Sender: TfrxComponent);
begin
BDEQuery2.Sql.Clear();
BDEQuery2.Sql.Add('SELECT t1.S_LATITUDE as LAT, t1.S_LONGITUDE as LON, t1.S_ADDRESS as ADDR, ' +
't1.S_REAL_TIME as S_TIME, t1.E_REAL_TIME as E_TIME, t1.REAL_CONT as CONT, t1.T1_E_LEVEL as E_LEVEL, t1.T1_S_LEVEL as S_LEVEL, ' +
' t2.NUMBER as Number1, t2.id as id1 FROM ''temp0.dbf'' t1 LEFT JOIN ''Соответствие.dbf'' t2 on t1.DRIVER_ID = t2.id order by S_TIME');
BDEQuery2.Open();
end;
begin
Days[1] := 'Воскресенье';
Days[2] := 'Понедельник';
Days[3] := 'Вторник';
Days[4] := 'Среда';
Days[5] := 'Четверг';
Days[6] := 'Пятница';
Days[7] := 'Суббота';
end. |
После двойного клика, вкладка "Код" должна выглядеть так:
Код:
|
var
Days: array[1..7] of string;
procedure FastReportOnStartReport(Sender: TfrxComponent);
begin
BDEQuery2.Sql.Clear();
BDEQuery2.Sql.Add('SELECT t1.S_LATITUDE as LAT, t1.S_LONGITUDE as LON, t1.S_ADDRESS as ADDR, ' +
't1.S_REAL_TIME as S_TIME, t1.E_REAL_TIME as E_TIME, t1.REAL_CONT as CONT, t1.T1_E_LEVEL as E_LEVEL, t1.T1_S_LEVEL as S_LEVEL, ' +
' t2.NUMBER as Number1, t2.id as id1 FROM ''temp0.dbf'' t1 LEFT JOIN ''Соответствие.dbf'' t2 on t1.DRIVER_ID = t2.id order by S_TIME');
BDEQuery2.Open();
end;
procedure MasterData3OnBeforePrint(Sender: TfrxComponent);
begin
end;
begin
Days[1] := 'Воскресенье';
Days[2] := 'Понедельник';
Days[3] := 'Вторник';
Days[4] := 'Среда';
Days[5] := 'Четверг';
Days[6] := 'Пятница';
Days[7] := 'Суббота';
end. |
ООО «ТехноКом», г. Челябинск
Самцов Константин Юрьевич - зам. директора по коммерческой деятельности
|
|
|
|
17.12.2012, 11:54
|
| »»» |
#5
|
Начинающий
Красноярск
Регистрация: 08.12.2012
Сообщений: 32
|
Все правильно была ошибка в коде исправил, заработало. Но конечный результат так и не достигнут.
procedure MasterData3OnBeforePrint(Sender: TfrxComponent);
begin
if Copy(<Memo22>) >0 then
MasterData3.Visible := True else
MasterData3.Visible := False;
end;
Посмотрите пожалуйста тут наверно явно где-то я ошибся.
|
|
|
|
17.12.2012, 12:17
|
| »»» |
#6
|
Администратор
Регистрация: 27.05.2010
Сообщений: 29,974
|
TOOP, функция Copy (string, x, y) - возвращает y символов строки string начиная с символа номер x
Она не подходит для Вашей задачи.
Скорее это:
Код:
|
procedure MasterData3OnBeforePrint(Sender: TfrxComponent);
begin
if StrToFloat(Memo22.Text) > 0 then
begin
MasterData3.Visible := True;
end;
else
begin
MasterData3.Visible := False;
end;
end; |
Если значение в ячейке целое число, можно использовать StrToInt(Memo22.Text)
Отпишитесь по результату.
ООО «ТехноКом», г. Челябинск
Самцов Константин Юрьевич - зам. директора по коммерческой деятельности
|
|
|
|
19.12.2012, 04:38
|
| »»» |
#7
|
Начинающий
Красноярск
Регистрация: 08.12.2012
Сообщений: 32
|
Так и не работает, что то с типом чисел. Числа там дробные с 1 знаком после запятой целое часть не превышает 4 символов.
Выводилась ошибка ![](http://forum.tk-chel.ru/attachment.php?attachmentid=2668&stc=1&d=1355887868) убрал после первого END точку с запятой.
стала выводится вот эта
|
|
|
|
19.12.2012, 06:55
|
| »»» |
#8
|
Администратор
Регистрация: 27.05.2010
Сообщений: 29,974
|
Не видим, что выводится.
ООО «ТехноКом», г. Челябинск
Самцов Константин Юрьевич - зам. директора по коммерческой деятельности
|
|
|
|
19.12.2012, 07:41
|
| »»» |
#9
|
Начинающий
Красноярск
Регистрация: 08.12.2012
Сообщений: 32
|
Ошибки по порядку
|
|
|
|
19.12.2012, 10:00
|
| »»» |
#10
|
Администратор
Регистрация: 27.05.2010
Сообщений: 29,974
|
TOOP, отчет какой ?
ООО «ТехноКом», г. Челябинск
Самцов Константин Юрьевич - зам. директора по коммерческой деятельности
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Текущее время: 13:43. Часовой пояс GMT.
|
|