Форум » [x]Harbour » ANN: Вышел релиз FastReport for [x]Harbour » Ответить

ANN: Вышел релиз FastReport for [x]Harbour

Sergey Spirin: Здравствуйте. Рад сообщить, что вышел релиз 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

Ответов - 258, стр: 1 2 3 4 5 6 7 8 9 10 11 12 13 All

Sergey Spirin: TimTim пишет: Вроде сделал как в примере, но видно что-то не так. Ошибка "Нет дата-бэнда для группы GroupHeader1" Ну, нет так добавьте В примере - это MasterData с нулевой высотой. Конечно, группа может образовывается только на данных. Группа здесь вообще используется только на случай, если названия могут дублироваться, то есть удаляет дубликаты. TimTim пишет: И вопрос. Наверное не играет роли где стоит вкладка "Content" - (я тоже так её обозвал) до или после Page1 - страниц отчёта? У меня после. Если стоит после, то печататься будет после. Вам так надо? Если нет, то перетащите мышкой в начало. Если да, то в этом случае отчет может быть и однопроходным. TimTim пишет: Пояснение. В отличие от примера у меня названия, которые должны собираться в содержании, находятся в другой БД, которая связана с основной по RELATION. В отчёте без содержания все OK. Да нет проблем. Если в отчете все нормально, то значит про SetResyncPair() не забыли?

TimTim: Спасибо! Теперь и содержание собирает, но указывает неверные номера страниц. Sergey Spirin пишет: В примере - это MasterData с нулевой высотой А что такое нулевая высота? Кстати, в демо отчете небольшая неувязочка. Для компании "Diver's Grotto" неверно указана страница и вообще про неё нет данных, хотя в БД она вроде есть.

Sergey Spirin: TimTim пишет: Спасибо! Теперь и содержание собирает, но указывает неверные номера страниц. Значит кто-то неверно их проставляет Информации давайте больше. TimTim пишет: А что такое нулевая высота? Height = 0, в примере MasterData1. TimTim пишет: Кстати, в демо отчете небольшая неувязочка. Для компании "Diver's Grotto" неверно указана страница и вообще про неё нет данных, хотя в БД она вроде есть. Да, действительно. Просто у компании "Diver's Grotto" нет ни одного заказа. Можете добавить: procedure GroupHeader1OnBeforePrint(Sender: TfrxComponent); begin GroupHeader1.Visible := Engine.GetAnchorPage(<Customers."Company">) > 1; end; И будет все хорошо. "Diver's Grotto" не будет в оглавлении. Она появится когда у нее появятся заказы.


TimTim: Sergey Spirin пишет: Информации давайте больше. Примерно так. В основной БД есть поле KOD, по которому она отсортированаи по этому же полю по RELATION соединена с БД с полями KOD и NAIMEN-наименования. Вот эти наименования я и пытаюсь собрать в оглавление. Номера страниц в оглавлении такие: на первой стр-це все номера 1, а на второй 2, хотя отчёт собирается правильно. Наименование, затем список, наименование, список и т.д. Все на разных страницах. Sergey Spirin пишет: Можете добавить: Добавил. Никакой реакции

Sergey Spirin: TimTim пишет: Sergey Spirin пишет: цитата: Информации давайте больше. Примерно так. В основной БД есть поле KOD, по которому она отсортированаи по этому же полю по RELATION соединена с БД с полями KOD и NAIMEN-наименования. Вот эти наименования я и пытаюсь собрать в оглавление. Номера страниц в оглавлении такие: на первой стр-це все номера 1, а на второй 2, хотя отчёт собирается правильно. Наименование, затем список, наименование, список и т.д. Все на разных страницах. Sergey Spirin пишет: цитата: Можете добавить: Добавил. Никакой реакции Похоже, что вы неясно себе представляете, что такое "обработчик события". Для того чтобы создать обработчик, делайте например так: Выделите мышкой, например ваш MasterData в основном отчете. Перейдите в инспектор объектов. Выберите вкладку Events (события). Напротив OnBeforePrint щелкните двойным щелчком в пустом Edit-е. Будет создан шаблон, типа: procedure Band4OnBeforePrint(Sender: TfrxComponent); begin end; В него уже и вписываете: Engine.AddAnchor(<Customers."Company">); // таблица/поле из демо Имеющий обработчик объект помечается красным треугольничком. Если процедуру уже скопировали целиком, то нужно там же в инспекторе ее выбрать как обработчик события. Аналогично с GroupHeader. Понятно?

TimTim: Sergey Spirin пишет: Похоже, что вы неясно себе представляете, что такое "обработчик события". Не буду лукавить, это действительно так. Поэтому заранее спасибо за терпение. В отчёте всё подправил. Всё OK! Ура! И в демо примере тоже. Спасибо!

TimTim: Придетальном рассмотрении отчёта все таки есть небольшие "но" Во-первых, почему-то страница последней группы в содержании отображается как 0. В чём тут может быть дело? Во-вторых, у меня для каждой группы есть название и шапка (заголовки колонок) для таблицы. Когда начинается группа, то печатается название и шапка и затем строки группы. Если группа длинная, то может перейти на следующую страницу. Но, к сожалению, мне не удалось сделать так, чтобы шапка печаталась на продолжении группы на новой странице. Например, когда использую свойство KeepTogether для бэнда GroupeHeader, то всё равно для больших групп шапка так и не печатается. Что тут можно сделать?

Sergey Spirin: Во-первых, почему-то страница последней группы в содержании отображается как 0. В чём тут может быть дело? Не знаю, пришлите мне отчет, лучше с данными и кодом инициализации отчета. Во-вторых, у меня для каждой группы есть название и шапка (заголовки колонок) для таблицы. Когда начинается группа, то печатается название и шапка и затем строки группы. Если группа длинная, то может перейти на следующую страницу. Но, к сожалению, мне не удалось сделать так, чтобы шапка печаталась на продолжении группы на новой странице. Например, когда использую свойство KeepTogether для бэнда GroupeHeader, то всё равно для больших групп шапка так и не печатается. Что тут можно сделать? Ну, если есть нетривиальное желание скрестить GroupHeader с PageHeader, то это надо обработать скриптом-напильником Присылайте отчет, я посмотрю.

TimTim: Выслал на ваш email!

Andrey: Подскажите пожалуйста, а могу ли я через FastReport печатать свои текстовые файлы OEM или WIN кодировки ? Как можно сделать универсальный шаблон на все файлы ?

Sergey Spirin: Andrey пишет: Подскажите пожалуйста, а могу ли я через FastReport печатать свои текстовые файлы OEM или WIN кодировки ? Почему нет? Andrey пишет: Как можно сделать универсальный шаблон на все файлы ? Кладете ReportTittle, на него мемо во всю ширину, оба чтоб были растягиваемыми. Вот, собственно, и все. Грузите теперь файлы в мемо.

Sergey Spirin: TimTim пишет: Выслал на ваш email! Взаимно

viktorlvv: Сергей обнаружил в FastReport for [x]Harbour ошибку Accsess violation. Порядок действий таков: загружаю таблицу(не важно через Harbour или Dataset) кидаю MacterData Band и на него пару полей предворительный просмотр и export Text(matrix printer) указываю 1 страничку,OEm и печать после экспорта,ввожу имя файла,выбираю тип принтера Epson и жму Ok Превый раз все проходит хорошо.Но если это все проделать еще раз из окна просмотра появится ошибка. И вдогонку еще один вопрос: Dataset свойство есть у отчета,страницы и у бандов если везде установить выдает ошибку типо нельзя так Так зачем столько дублирующих свойств и где правильно его установить

Sergey Spirin: viktorlvv пишет: Сергей обнаружил в FastReport for [x]Harbour ошибку Accsess violation. Порядок действий таков: загружаю таблицу(не важно через Harbour или Dataset) кидаю MacterData Band и на него пару полей предворительный просмотр и export Text(matrix printer) указываю 1 страничку,OEm и печать после экспорта,ввожу имя файла,выбираю тип принтера Epson и жму Ok Превый раз все проходит хорошо.Но если это все проделать еще раз из окна просмотра появится ошибка. Ok. Попытаюсь повторить, если ошибка, то исправим viktorlvv пишет: Dataset свойство есть у отчета,страницы и у бандов если везде установить выдает ошибку типо нельзя так Так зачем столько дублирующих свойств и где правильно его установить В 99,9% случаев устанавливайте для бэндов. Для страницы и отчета - это для каких-то спецефичных отчетов, на вскидку уже не вспомню для каких.

viktorlvv: еще хотел бы уточнить насчет установки свойств экспорта i=FrPrn:SetProperty("DotMatrixExport", "EscModel", 2) i=FrPrn:SetProperty("DotMatrixExport", "OEMConvert", .t.) вызываю до ShowReport по возвращаемому значению видно что сработали но когда делаю экспорт остаются старые значения

Sergey Spirin: viktorlvv пишет: Сергей обнаружил в FastReport for [x]Harbour ошибку Accsess violation. Порядок действий таков: загружаю таблицу(не важно через Harbour или Dataset)........... Да. Повторяется. Ok, напишу в саппорт. viktorlvv пишет: еще хотел бы уточнить насчет установки свойств экспорта i=FrPrn:SetProperty("DotMatrixExport", "EscModel", 2) i=FrPrn:SetProperty("DotMatrixExport", "OEMConvert", .t.) вызываю до ShowReport по возвращаемому значению видно что сработали но когда делаю экспорт остаются старые значения Этот экспорт делает TXTExport, поэтому: FrPrn:SetProperty("TXTExport", "OEMCodepage", .t.) Вообще, свойства у него такие: published property ScaleWidth: Extended read expScaleX write expScaleX; property ScaleHeight: Extended read expScaleY write expScaleY; property Borders: Boolean read expBorders write expBorders; property Pseudogrpahic: Boolean read expBordersGraph write expBordersGraph; property PageBreaks: Boolean read expPageBreaks write expPageBreaks; property OEMCodepage: Boolean read expOEM write expOEM; property EmptyLines: Boolean read expEmptyLines write expEmptyLines; property LeadSpaces: Boolean read expLeadSpaces write expLeadSpaces; property PrintAfter: Boolean read expPrintAfter write expPrintAfter; property PrinterDialog: Boolean read expPrinterDialog write expPrinterDialog; property UseSavedProps: Boolean read expUseSavedProps write expUseSavedProps; property InitString: String read PrinterInitString write PrinterInitString; property CustomFrameSet: String read expCustomFrameSet write expCustomFrameSet; end;

viktorlvv: спасибо за помощь - это все работает Остается вопрос как настроить второй диалог выбора матричного принтера и его настройка FrPrn:SetProperty("TXTExport", "EscModel", 2) это свойство не работает Что означает переключатели внизу под выбранным принтером.Как будет печатать если я установлю птичку Bold(или сниму) Как поисходит маштабирование по оси Y(по оси х понятно - за счет обрезания стоки,добавление пробелов) при увеличении ( 120 ) выдает ошибку Accsess violation при уменьшении - пустую страницу

Sergey Spirin: viktorlvv пишет: спасибо за помощь - это все работает Остается вопрос как настроить второй диалог выбора матричного принтера и его настройка FrPrn:SetProperty("TXTExport", "EscModel", 2) это свойство не работает Во всех исходниках Fast-а, свойство "EscModel" имеет только DotMatrixExport. viktorlvv пишет: Что означает переключатели внизу под выбранным принтером.Как будет печатать если я установлю птичку Bold(или сниму) Как поисходит маштабирование по оси Y(по оси х понятно - за счет обрезания стоки,добавление пробелов) при увеличении ( 120 ) выдает ошибку Accsess violation при уменьшении - пустую страницу С матричной проблематикой я Вам ничем не помогу. Однако, мне кажется, что вы пошли неверным путем. Если Вам нужны матричные отчеты, то и создавайте матричные отчеты. Это Меню Файл-> Новый->Пустой матричный отчет. В этом отчете все для для матрицы у вас будет. С просто же экспортом вы "далеко не уедете". Экспорт вам ничего не гарантирует, это просто экспорт с понятными потерями и накладками при преобразованиях графики в текст. При Accsess violation можете сразу писать в саппорт FastReport. Такие ошибки правяться быстро.

viktorlvv: саппорт FastReport это куда ? В англоязызную поддержху? Попробуй им изложить суть проблемы на моем ломаном англиском А Вы разве не в ходите в группу поддержки? Сам продукт не плох.javascript:pst3(' ','','','','') Есть маленькие недоработки. В данном случае просто иногда надо вывести нормальный отчет бысто на матричный принтер понятно что с потерями но ВЫВЕСТИ!И причем хочется управлять этим процессом программо А я так не не понял как.TXTExport работает наполовину DotMatrixExport вобже не работает Сергей посодействуйте и зделайте так чтоб продукт работак так как заложили проэктировщики

viktorlvv: и еще не понятен для чего нужен диалог согранения файла если мне надо вывести отчет на печать?



полная версия страницы