Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » FastReport

Модерирует : ShIvADeSt

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93

Открыть новую тему     Написать ответ в эту тему

AnGo



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Камрады!
Решил на ХЕ3 заменить штатный FR на приблудный. Помнится была какая-то засада при замене FR, исчезала вся палитра компонентов. Способ кошерно произвести замену что-то не могу вспомнить.
Напомните, плиз.

Всего записей: 1078 | Зарегистр. 07-07-2002 | Отправлено: 12:45 22-01-2013
delover

Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Извините, просьба заглянуть
http://forum.ru-board.com/topic.cgi?forum=33&topic=9888&start=460#lt

Всего записей: 1395 | Зарегистр. 25-06-2007 | Отправлено: 18:51 22-01-2013
Man_Without_Face



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В BDEQuery вызывается процедура - CALL ContractReport(:ContractID, eriodID, 1, 0, 0, 0).
В фастах группировка по определенному полю, но в возвращаемом результате в процедуре сортировка совсем по другому. Процедуру поменять не могу, как отсортировать в фастах или  вызвать процедуру по другому, с order by. Sybase 8.0, FastReport 4.8.

Всего записей: 381 | Зарегистр. 25-01-2010 | Отправлено: 15:57 29-01-2013
exteris

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Man_Without_Face
С Sybase не знаком, но возможно он умеет делать select из процедуры, типа:
select *
from ContractReport(:ContractID, eriodID, 1, 0, 0, 0)
order by "нужное поле"
 
Второй вариант - использовать сортируемый in-memory датасет, например TClientDataSet.

Всего записей: 382 | Зарегистр. 14-04-2003 | Отправлено: 10:33 30-01-2013
Man_Without_Face



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
но возможно он умеет делать select из процедуры

нет не умеет

Цитата:
использовать сортируемый in-memory датасет

в нем вроде нет таких свойств
 
я использовал датасет dxMemData. C TQuery перегнал в него, выставил в свойствах сортировку по заданному полю и подключил к фастам.  

Всего записей: 381 | Зарегистр. 25-01-2010 | Отправлено: 10:39 30-01-2013
Cryogen2003



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
добрый день.
 
как можно соединить в рунтайме несколько отчетов, точнее результатов работы, сохраненных в fr3?

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 15:34 06-02-2013
SergKhM

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cryogen2003
 
frxReport->LoadFromFile( ......
frxReport->PrepareReport( true - признак, что будем лепить )
frxReport->LoadFromFile( ......
frxReport->PrepareReport( false)
frxReport->ShowPreparedReport

Всего записей: 83 | Зарегистр. 19-09-2009 | Отправлено: 19:34 07-02-2013
Cryogen2003



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
SergKhM
А если предположим таких файлов 3, то будет так чтоль?
frxReport->LoadFromFile( ......  
frxReport->PrepareReport( true - признак, что будем лепить )  
frxReport->LoadFromFile( ......  
frxReport->PrepareReport( false)  
.....
frxReport->LoadFromFile( ......  
frxReport->PrepareReport( false)  
....
 
frxReport->ShowPreparedReport

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 21:08 07-02-2013
SergKhM

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Да, только параметр везде PrepareReport(true (кроме последнего)

Всего записей: 83 | Зарегистр. 19-09-2009 | Отправлено: 01:39 10-02-2013
Cryogen2003



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
SergKhM
ок, спасибо большое за помощь, буду пробовать

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 10:30 10-02-2013
Vitus_Bering



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cryogen2003

Цитата:
параметр везде PrepareReport(true (кроме последнего)

false везде, кроме первого

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 20:35 10-02-2013
Cryogen2003



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Vitus_Bering
То есть у первого true, а у всех остальных false? А как FastReport поймет, что аддоны в репорт закончились? И надеюсь Fastreport нормально отнесется к тому, что в большинстве таких аддонов названия объектов пересекаются?

----------
Холодильники мы

Всего записей: 745 | Зарегистр. 08-12-2004 | Отправлено: 20:48 10-02-2013
Vitus_Bering



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cryogen2003
Да, пробуйте.

Всего записей: 936 | Зарегистр. 30-09-2005 | Отправлено: 22:06 10-02-2013
Man_Without_Face



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В мемо есть такое выражение:
[FormatFloat(FmtSumma,SUM(<BDEQuery2."CRSumma">))]
Переменная FmtSumma задает формат вывода.
Как убрать нули, если FmtSumma := '#,0.00';  т.е. например 6 112 505,00 ?

Всего записей: 381 | Зарегистр. 25-01-2010 | Отправлено: 13:13 20-02-2013
exteris

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Man_Without_Face
Вам FmtSumma нужно изменить чтобы нулей после запятой не было?

Всего записей: 382 | Зарегистр. 14-04-2003 | Отправлено: 13:22 20-02-2013
Man_Without_Face



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Вам FmtSumma нужно изменить чтобы нулей после запятой не было?

Нет при любом формате убирать нули, типо HideZeros. Но FormatFloat возвращает строку, HideZeros не отрабатывает. Если StrToFloat, то при разделении разрядов ошибка конвертирования. IFF тоже не вариант.

Всего записей: 381 | Зарегистр. 25-01-2010 | Отправлено: 13:27 20-02-2013
exteris

Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору

Цитата:
IFF тоже не вариант

Почему?

Всего записей: 382 | Зарегистр. 14-04-2003 | Отправлено: 14:01 20-02-2013
mmlm10

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Man_Without_Face
А в OnBeforePrint проверить BDEQuery2."CRSumma" на равенство нулю?
 
if (BDEQuery2."CRSumma" = 0 // или < 0.000001
then Memo.Lines[0] := '' // это и будет HideZeros
else Memo.Lines[0] := FormatFloat(FmtSumma,SUM(<BDEQuery2."CRSumma">))
 
За точность синтаксиса не ручаюсь, это просто идея

Всего записей: 453 | Зарегистр. 16-12-2003 | Отправлено: 14:04 20-02-2013
Man_Without_Face



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
Почему?

Вернув в FormatFloat - '' , получу ошибку, а налл преобразует в ноль.
 

Цитата:
А в OnBeforePrint проверить BDEQuery2."CRSumma" на равенство нулю?

В отчете 6 мастер дата, в каждом много мемок. Во многих сложные вычисления. Так что через скрипт не вариант, да и не будет так работать.
 

Всего записей: 381 | Зарегистр. 25-01-2010 | Отправлено: 15:19 20-02-2013 | Исправлено: Man_Without_Face, 15:20 20-02-2013
mmlm10

Full Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Man_Without_Face
 
Не думаю что один "лишний" обработчик увеличит продолжительность генерации на фоне
Цитата:
Во многих сложные вычисления.

 
Может как-то свести все к одному главному набору данных, в который заодно и перенести некоторое количество сложных вычислений?
 
А что же это за отчет такой, в котором аж
Цитата:
6 мастер дата
, если не секрет?
 

Всего записей: 453 | Зарегистр. 16-12-2003 | Отправлено: 18:51 20-02-2013
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93

Компьютерный форум Ru.Board » Компьютеры » Прикладное программирование » FastReport


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru