On-line: MIKHAIL, гостей 0. Всего: 1 [подробнее..]
АвторСообщение
постоянный участник


Пост N: 129
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 10.03.08 23:53. Заголовок: ANN: Вышел релиз FastReport for [x]Harbour (продолжение)


Здравствуйте.

Рад сообщить, что вышел релиз FastReport for [x]Harbour. Как всегда, информацию можно посмотреть:

http://www.paritetsoft.ru/frh.htm

Возможным русскоязычных покупателей лучше контактировать со мной напрямую по email. Цена для оплаты в рублях банковским переводом по выставленному счету- 9999 рублей.

--
Спирин Сергей.
Компания "Паритет Софт".
FRH sales: http://www.paritetsoft.ru/frh.htm
FRAX sales: http://www.hotsoft.ru/ALASKA/frax_eng.htm



Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 268 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 All [только новые]


постоянный участник




Пост N: 1408
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 09.07.10 13:00. Заголовок: Sergey Spirin пишет:..


Sergey Spirin пишет:

 цитата:
Уже даже предчувствую, пытаюсь "разжевать":



Спасибо большое за понимание !
Коньяк за мной !

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 393
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 09.07.10 14:46. Заголовок: Andrey пишет: Спаси..


Andrey пишет:

 цитата:
Спасибо большое за понимание !



Спасибо, это хорошо. А проверить, как работает и работает ли?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1414
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 09.07.10 15:24. Заголовок: Сижу делаю ! Сегодня..


Сижу делаю ! Сегодня же сообщу....


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1418
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 11.07.10 16:34. Заголовок: Sergey Spirin пишет:..


Sergey Spirin пишет:

 цитата:
Спасибо, это хорошо. А проверить, как работает и работает ли?



Сделал тестовый пример ! Отправил вам на почту !
Вроде работает без проблем.

Пере собрать проект на хХарборе - команда hbmake.exe Frh-Lang.bc



Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 394
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 14.07.10 00:28. Заголовок: Пересобрал с версией..


Пересобрал с версией 4.9.98 общую сборку. Включен, обсуждавшийся выше новый метод - :SetFormatSettings(nSetting, xValue).

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1427
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 15.07.10 18:35. Заголовок: Sergey Spirin пишет:..


Sergey Spirin пишет:

 цитата:

Пересобрал с версией 4.9.98 общую сборку



Спасибо большое. Скачал, буду подключать к своей системе !


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 78
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 16.07.10 20:06. Заголовок: И ещё один вопрос по..


И ещё один вопрос по FastReport, очень важный.

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

Сверху группировка по проектам и родам работ (сантехник, электрик и т.д. и т.п.) И чтобы в строку вылазили не все фирмы, а только те фирмы, которые отвечают за данный род работ. Чтобы было всё как в обычном отчёте, но с повторяющейся парой фирма-цена в одну строку несколько раз.

Если удастся сделать то, о чём я прошу, тогда уже покупаем эту библиотеку.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1432
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 16.07.10 21:29. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
Если удастся сделать то, о чём я прошу, тогда уже покупаем эту библиотеку.



Ну блин, Хотабыча нашли .....

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 396
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 17.07.10 00:20. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
Если удастся сделать то, о чём я прошу, тогда уже покупаем эту библиотеку.



Так о чем просишь то? Я что-то не понял.

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


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 79
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 17.07.10 09:08. Заголовок: Сложность в том, что..


Сложность в том, что на элемент DBCrossTab не действуют внешние группировки. Так если кладешь DBCrossTab на полосу MasterData, а сверх того даёшь группировку в полосе GroupHeader, то никакого дополнительного разбиения по группам в перекрёстной таблице не происходит.

Можно в самой DBCrossTab делать Subtotals, но при этом условия группировки печатаются сбоку, а число фирм в строке зашкаливает, поскольку на один род работ фирм от силы 5-6, а всего их сотня.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 397
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 17.07.10 11:08. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
Сложность в том, что на элемент DBCrossTab не действуют внешние группировки



Я бы делал без КроссТаба. И все-таки, конкретика, сколько каких таблиц участвуют в отчете? Какие между ними отношения? И т. д.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 80
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 17.07.10 14:07. Заголовок: Отношения между табл..


Отношения между таблицами - многоуровневая иерархия, и, соответственно, многоуровневая группировка. На самом верхнем уровне - таблица проектов (капремонт, модернизация и т.д.) по тому или иному зданию.
Дальше идёт группировка по профилю работ (сантехник, электрик и т.д. и т.п.)
Основная таблица - таблица выполненных работ и расходных материалов. Например: сантехник - замена ванной. Ну и к ней подтаблица - различные фирмы и цены, которые они берут за ту или иную работу. Выбираем минимальную.
А сложность заключается в том, что несколько пар фирма-цена нужно выпечатать В ОДНОЙ СТРОКЕ

PROJEKT
PROFIL_RABOT

====================================================================
POS_NUM POS_TEXT1 FIRMA FIRMA FIRMA ....................................
POS_TEXT2 PRICE PRICE PRICE ....................................

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 398
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 17.07.10 14:57. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
А сложность заключается в том, что несколько пар фирма-цена нужно выпечатать В ОДНОЙ СТРОКЕ



Ну если владеть инструментом, то ничего особенно уж сложного в этом отчете нет.

Во-первых, группировок, по крайней мере в фастовском понимании здесь нет. Здесь типичный Master-Detail-SubDetail:

PROJEKT - это мастер.
PROFIL_RABOT - детэйл.

Как установить MasterDetail отношение, надеюсь, труда не составит.

И третий уровень, который будет вычисляемым - subdetail.

Итак, третий уровень. Насколько я понимаю, пар "фирма-цена" нужно напечатать конечное количество? Например не более 3-х самых дешевых, это так? Просто в одну строку нельзя же напечатать неопределенное количество информации (вернее, это уже другой тип отчета с вертикальными бэндами).

Если все так, то определим UserDataSet для третьего уровняЖ

FrPrn:SetUserDataSet("Третий уровень", "POS_NUM;POS_TEXT1;POS_TEXT2;FIRMA1;PRICE1;FIRMA2;PRICE2;FIRMA3;PRICE3",; 
{|| PrepareData())} ,;
{|| PrepareData())},;
{|| },;
{|| CheckEOF()},;
{|cField| GetDSValue(cField)})


Идея понятна? Заведем массив из 9 элементов. Пишем функцию PrepareData() в которой этот массив текущей записи будем заполнять. Пишем функцию GetDSValue(), которая просто по имени поля будет отдавать соответствующий элемент массива. И CheckEOF() которая будет решать, пора ли переходить к следующей записи PROFIL_RABOT или есть еще что "поколбасить" на текущей.

Надеюсь, что идея понятна, и не столь сложна в реализации


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1433
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 17.07.10 17:14. Заголовок: Sergey Spirin пишет:..


Sergey Spirin пишет:

 цитата:
Как установить MasterDetail отношение, надеюсь, труда не составит.


Пример работы с MasterDetail http://files.mail.ru/C8IUGH<\/u><\/a>

Делай там отдельную папку, записывай базы и можно будет конкретно помочь - разбирая отдельный пример !

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 81
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 17.07.10 17:28. Заголовок: Я так и думал, что в..


Я так и думал, что всё сведётся к пользовательскому массиву и заполнению его данными на каждой строке. Число элементов на одну строку отчёта формата А4 всё равно жёстко ограничено. Цена имеет формат 10DEC2, плюс зазор в одну строку. А если учесть что длина главной таблицы достигает 5 тыс строк :LOL: то 5 тыс. раз опрашивать постороннюю таблицу - очень замедлит работу.

Не проще ли сделать дополнительно поля FIRM1,FIRM2,FIRM3,... и, соотвестственно, PRICE1,PRICE2,PRICE3,....
Иногда ДЕнормализация имеет смысл. Есть ещё такая база данных -4D. Названа так, поскольку помимо классических двухмерных таблиц, поддерживает также вложенную таблицу SUBTABLE. Часто это бывает необходимо.

Больше 5 цен всё равно не поместится, поскольку нужно ещё указать реквизиты задания. Печать бисером - не у всех хорошее зрение.

ЗЫ. А вот про вертикальные бэнды я бы хотел поподробнее. Интересно, интересно.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1435
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 17.07.10 19:04. Заголовок: Sergey Spirin пишет:..


Sergey Spirin пишет:

 цитата:
Пересобрал с версией 4.9.98 общую сборку. Включен, обсуждавшийся выше новый метод - :SetFormatSettings(nSetting, xValue).



Собрал со своей системой ! Работает, только одна непонятка, не критичная, но думаю опять пальцем тыкать будут меня !

Переключаюсь на украинский язык, отображается нормально:
<\/u><\/a>

А в дизайнере, нет такого формата, только (руб.) !
<\/u><\/a>

Как исправить ?


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 399
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 17.07.10 23:32. Заголовок: Andrey пишет: А в д..


Andrey пишет:

 цитата:
А в дизайнере, нет такого формата, только (руб.) !



Это вопрос к украинским локализаторам Это просто статичная строка в файле локализации. Смотри файл Ukrainian.frc, Значение ключа "fkNumber4", почему-то они решили оставить рубль Видимо тоскуют по Союзу

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 400
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 17.07.10 23:42. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
Я так и думал, что всё сведётся к пользовательскому массиву и заполнению его данными на каждой строке. Число элементов на одну строку отчёта формата А4 всё равно жёстко ограничено. Цена имеет формат 10DEC2, плюс зазор в одну строку. А если учесть что длина главной таблицы достигает 5 тыс строк :LOL: то 5 тыс. раз опрашивать постороннюю таблицу - очень замедлит работу.



Дорогой, все в твоих руках, и это главное Как ты сделаешь доступ к этим данных в этой записи, так и будет. Сделаешь так, что будет тормозить, то виноват будешь только ты, а не FR Разговор же про 5 тысяч строк, которые будут тормозить - слышать смешно, хотя, чего только кривые ручки не добивались

Dr. Oldwarez пишет:

 цитата:
ЗЫ. А вот про вертикальные бэнды я бы хотел поподробнее. Интересно, интересно.



Ну смотри, например:
http://www.reportingfor.info/ru/news.php?extend.33.4<\/u><\/a>





Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 82
Зарегистрирован: 27.07.08
ссылка на сообщение  Отправлено: 24.07.10 13:53. Заголовок: Так, был у шефа, шеф..


Так, был у шефа, шеф мне объяснил, что пока будет по другому и cross-table выпадает за ненадобностью. Впоследствии будет по-другому - с вертикальной группировкой главной таблицы. Так, что извините за ложную тревогу.

А пока что один небольшой вопросик. Можно суммировать по группе, можно суммировать по странице, но при переходе на новую страницу сумма обнуляется. Как сделать, чтобы был перенос, т.е. сумма по всем строкам, печатаемая один раз в конце страницы, а потом, ещё раз - в начале следующей страницы то же значение. Не печатать его только на последней странице группы.

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник


Пост N: 401
Зарегистрирован: 25.12.07
ссылка на сообщение  Отправлено: 26.07.10 14:18. Заголовок: Dr. Oldwarez пишет: ..


Dr. Oldwarez пишет:

 цитата:
Как сделать, чтобы был перенос, т.е. сумма по всем строкам....



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

var 
MySum: Variant;

procedure Memo14OnAfterPrint(Sender: TfrxComponent);
begin
MySum := Memo14.Value;
end;






Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 268 , стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 122
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет