|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Устраивает ли Вас Report Builder, который предлагает Microsoft Visual FoxPro? Сразу скажу – меня лично нет. Возможно, некоторых ( а может, и большинство ? ) – тоже. Не буду говорить о минусах стандартного RB (меня постигло глубокое разочарование от ReportListener, может мало изучал – не спорю), поэтому - что можно предложить взамен? Почему не обратиться к формату HTML (на основе CSS)? Я и ранее распечатывал договора на основе бланка (многостраничные, со сложной организацией данных), вот только таблицы приходилось создавать практически вручную. Какие возможности предлагает RB, предлагаемый мною? Динамическое (т.е. функция или процедура возвращает результат, а программа соответствующим образом реагирует на него) форматирование шрифта (размер, имя, Bold, Itallic, Cursiv, цвета шрифта и цвета фона, размещение по горизонтали/вертикали) – ах да, это же есть и в Report Listener! А теперь представьте – тоже самое можно делать с частью текста в ячейке. Динамическое изменение рамки вокруг ячейки (т.е. ее наличие и толщина). Объединение ячеек в одну, и дальнейшая работа, как с одной. Возможность создания нескольких Detail, Group, Title, End и генерация в отчет в зависимости от условий, всех или выборочно (очень удобно, если вид Detail значительно отличается, как например, отличается договор Интернет от договора на Телефонию ). Возможность объединения нескольких отчетов в один, а так же генерация подотчетов-таблиц в отчете (с обращением к другим таблицам), т.е. сложная организация данных теперь сложная только на словах (в разработке). Интерактивная реакция по клику (генерация других, связанных отчетов) (в разработке) Вычисление Sum, Cnt в зависимости от расположения в отчете (нашел, чем удивить, конечно) Возможность динамического управления стилем (это, если Вы ас в CSS). Как все это работает? Всю работу делает IE (в дальнейшем – объект IE, он нужен не только для отображения файла, но и для отработки кликов по ссылкам), нужно «всего лишь» соответствующим образом подготовить файл HTML. Файл генерится на основе Report-а, который, в свою очередь, создается в визуальном редакторе. Редактор пытается отобразить ячейки, границы, размеры, цвет и т.д., но только в том случае, если параметры статические, в ином случае, результат можно увидеть только при генерации отчета. Почему нельзя было использовать Excel, и не заморачиваться с созданием собственного редактора? Не хватило знания Excel и возможностей Файл HTML генерится при помощи технологии, используемой так же в программе Maple4 Site Creator, http://www.maple4.ru а именно: в тексте вставляется тэг, указывающий, что программе, что здесь необходимо выполнить функцию (вида `функция`) или код Visual FoxPro (вида `&код`), которые, в свою очередь, вставят вместо тэга некоторое значение. Например, тэг `str(m4rb_num())` размещенный в ячейке, вставит номер строки а тэг `alltr(test_.fam)+" "+alltr(test_.im)+" "+alltr(test_.ot)` вернет результат функции Все просто. Что в дальнейшем? Я думаю, признание, богатство и слава : ) А если серьезно, программа, по сути, состоит из двух частей – визуального редактора и программы генерации, следовательно, параллельно будут развиваться обе части. Визуальный редактор: Доведение визуального редактора до ума - редактирование ячеек, функций форматирования, отработки кликов (создание реакции на клик, в зависимости от расположения в отчете и полей сканируемой таблицы), редактирование (добавление, удаление) Title, Group , Detail Программа генерации: Работа с графикой, вставка файлов графики (в том, что это не составит труда, Вы можете убедиться на том же сайте http://www.maple4.ru ), причем как из полей, так и из файлов. Объединение отчетов (и подотчетов – программа уже спроектирована из расчета на это) и обработка реакции на клики. Вставка объектов меню (на том же сайте). Минусы (как следствие использования HTML): К сожалению, невозможно подсчитать высоту страницы (хотя строки имеют ширину, при включении автоподгонки под значение ячейки, общую высоту подсчитать я не смог). Или все таки возможно? Не знаю, как можно задать ориентацию текста (допустим, под некоторым углом, как это позволяет ReportListener) Редактор позволяет определить ширину колонок и высоту строк (для этого надо навести мышку на границу между колонками или строками - появится соответствующий значок, нажать кнопку, и держа ее нажатой, выбрать ширину или высоту), задать программы динамического форматирование шрифта (размер, имя, Bold, Itallic, Cursiv, цвета шрифта и цвета фона, размещение по горизонтали/вертикали - другой кнопкой мыши щелкаете по ячейке, а далее в меню выбираете, что собственно требуется изменить - ОБЯЗАТЕЛЬНО посмотрите примеры перед тем, как вносить какие-либо изменения в ячейках, примеров достаточно много), или двойным кликом по ячейке Вы непосредственно начнете редактировать значение ячейки ( После редактирования в визуальном редакторе НЕ ЗАБУДЬТЕ нажать кнопку Save - только в этом случае изменения вступят в силу, а после нажатия кнопки Close Вы увидите и сам отчет). Работающий "Прототип" можно загрузить отсюда (требуется Visual FoxPro 9.0 SP1) http://www.maple4.ru/a_downloads_for_maple4_ru/m4rb_demo_no_dll.zip размер программы в zip-е >100 кб, поэтому прикрепил изображение редактора и файл, который редактор формирует Версия (c DLL) – со страницы: http://www.maple4.ru/i_downloads.htm ФОРУМ: http://www.maple4.ru/forums/index.php?showtopic=23 Подробнее о программе: http://www.maple4.ru/i_m4rb.htm Хотелось бы узнать мнение о перспективности данной работы ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2008, 01:32 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Что-то я не понимаю... Вам вроде бы уже популярно расписали, почему нет смысла использовать Вашу программу... Вашим новым сообщением Вы просто пытаетесь "раскрутить" Ваш Web ресурс? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2008, 12:20 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Sergey ChЧто-то я не понимаю... Вам вроде бы уже популярно расписали, почему нет смысла использовать Вашу программу... Дайте пожалуйста ссылку ГДЕ это расписали ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2008, 12:31 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Гггость Sergey ChЧто-то я не понимаю... Вам вроде бы уже популярно расписали, почему нет смысла использовать Вашу программу... Дайте пожалуйста ссылку ГДЕ это расписали http://forum.foxclub.ru/read.php?30,310597,310597 ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2008, 12:53 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
ВладимирМ Гггость Sergey ChЧто-то я не понимаю... Вам вроде бы уже популярно расписали, почему нет смысла использовать Вашу программу... Дайте пожалуйста ссылку ГДЕ это расписали http://forum.foxclub.ru/read.php?30,310597,310597 не рассмотрев даже демку (ее тогда не было)? ну тогда да, раз ЭКСперты сказали ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2008, 14:08 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
А как поменять фонт саиз, цвет и т.д. обьекта? При попытке сделать изменения, всегда открывается одна и таже форма с едит бокс и двумя кнопками. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.01.2008, 19:19 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Marat CА как поменять фонт саиз, цвет и т.д. обьекта? При попытке сделать изменения, всегда открывается одна и таже форма с едит бокс и двумя кнопками. Внес изменения в программу (убрал ошибки, добавил новые :) ) Теперь открывается та же форма НО С ОПИСАНИЕМ в заголовке + корректно отрабатываются все процедуры (цвет, размер и т.д.) программу можно загрузить по тем же ссылкам (выше, в первом топике) Насчет фонт саиз, цвет и т.д. обьекта Есть 2 варианта (+1 в запасе) изменения свойств: Полностью для всей ячейки либо части текста в ячейке Первый вариант: Пример изменения размера ( в программе - ячейка с Service: `test_.t2`) Можно задать сразу (например вбить 11), или вставить функцию (Edit/Font/Size) iif(alltr(test_.t2)=="Internet",12,10) программа в зависимости от значения test_.t2 вставит либо 12 либо 10 Пример изменения имени шрифта Можно задать сразу (например вставить имя "Times New Roman" , как в ячейке Report), или вставить функцию (Edit/Font/Name) (в ячейке Service: `test_.t2`) iif(alltr(test_.t2)=="Internet",'"Arial"','"Times New Roman"') программа в зависимости от значения test_.t2 вставит либо "Arial" либо "Times New Roman" Пример изменения выравнивания Align ( в программе - ячейка № `str(m4rb_num())`) Можно задать сразу (например вбить 0 для Left, 1-Center, 2-Right), или вставить функцию (Edit/Font/Align) iif(alltr(test_.t2)=="Internet",0,2) программа в зависимости от значения test_.t2 вставит либо 0-Left либо 2-Right Пример задания цвета шрифта в ячейке `alltr(str(test_.saldo,15,2))` iif(test_.saldo>0,RGB(255,0,0),NULL) при значении test_.saldo>0 значение в ячейке будет выделяться красным цветом (RGB) Второй вариант: Изменять шрифт можно непосредственно в ячейке, как это сделано в ячейке For City: `test_.t1` - <font size=+1 color=blue><b>`alltr(str(m4rb_sum("test_.saldo"),15,2))`</b></font> Или вот пример динамического форматирования в ячейке `iif(alltr(test_.t2)=="Internet","<u>","<i>")``test_.addr``iif(alltr(test_.t2)=="Internet","</b>","</u>")` Основной плюс второго варианта - можно форматировать не только всю ячейку, но и, допустим, часть ее. Минус - пользователь должен знать разметку HTML хотя бы на начальном уровне. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 02:08 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Понял. А эта программа на кого расчитана? На конечного пользователя или на программиста? Если на программиста, то, по-моему, стандартныи редактор фокспро будет на много проше в использовании. Если на конечного пользователя, то я бы сделал интерфеис намного интуитивнее и проше ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 03:43 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Marat CПонял. А эта программа на кого расчитана? На конечного пользователя или на программиста? Если на программиста, то, по-моему, стандартныи редактор фокспро будет на много проше в использовании. Если на конечного пользователя, то я бы сделал интерфеис намного интуитивнее и проше Марат, у меня все получилось с последней версией frx2any (12.04.06). Теперь все работает как надо и в отчетах VFP 9.0. В начале след. месяца мы оплатим через ссылку http://www.frx2any.com/payment.php?prod=dev с помощью Share It версию DEVELOPER вашей программы. Я так полагаю, что в ней можно будет поменять кодовую страницу по умолчанию, чтобы и в PDF все выводило по русски ? С уважением, Алексей. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 08:08 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Aleksey-K Marat CПонял. А эта программа на кого расчитана? На конечного пользователя или на программиста? Если на программиста, то, по-моему, стандартныи редактор фокспро будет на много проше в использовании. Если на конечного пользователя, то я бы сделал интерфеис намного интуитивнее и проше Марат, у меня все получилось с последней версией frx2any (12.04.06). Теперь все работает как надо и в отчетах VFP 9.0. В начале след. месяца мы оплатим через ссылку http://www.frx2any.com/payment.php?prod=dev с помощью Share It версию DEVELOPER вашей программы. Я так полагаю, что в ней можно будет поменять кодовую страницу по умолчанию, чтобы и в PDF все выводило по русски ? С уважением, Алексей. Программа (m4rb) расчитана как На конечного пользователя, так и на программиста. Если бы все свойства (font, size, border и т.д.) были фиксированы как в Excel-e, то интерфейс был бы как в Excel-e, НО ведь хочется ДИНАМИЧЕСКОГО форматирования Вообще же Интерфейс будет напоминать стандартный FoxPro Report Builder, но с возможностями табличного редактора (отдаленно напоминает 1С, как не хотелось об этом говорить, + Excel) например, при перемещении из одной ячейки в другую, будет меняться информация о FontName, FontSize, border и т.д. (если они фиксированы, кстати, то визуальный редактор сразу же их и отображает, т.е. если размер=10, то редактор отобразит font с 10 размером, если fontname="Times New Roman", то редактор отобразит именно этот шрифт и т.д., и, кстати ВСЕ ЭТО работает даже и сейчас) То, что представлено в программе - первая пробная работающая версия. Хотелось показать, что на самом деле все не так уж и сложно, и вполне реализуемо, а интерфейс наработается ЗЫ Как я понял frx2any в фаворе и любые упоминания о программе не являются рекламой :) и активно приветствуются. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 11:11 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
maple4Как я понял frx2any в фаворе и любые упоминания о программе не являются рекламой :) и активно приветствуются. Вы не правильно поняли. Я увидель в диалоге Marat C и решил напомнить ему о некоторых вопросах. Его программа НИКАК не конкурирует с вашей. Она берет готовый FRX и выводит в разные приемники, а ваша является построителем отчета. Скорее конкурентом вашей программы является Microsoft Reporting Services :) С уважением, Алексей. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 11:20 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Вот пример более наглядный - чем не стандартный Report Builder? ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 11:38 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Какой ужас. Уже лет 5 существует F1. Для особо одернных рассказыва, что это такой оле сервер, кторый может генирить динамические отчеты в Excel и в нем же понимает скрипт фокпры. Вот возьми и да прибудет с вами сила. Опять велик, елы-палы. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 18:31 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
profile32Какой ужас. Уже лет 5 существует F1. Для особо одернных рассказыва, что это такой оле сервер, кторый может генирить динамические отчеты в Excel и в нем же понимает скрипт фокпры. Вот возьми и да прибудет с вами сила. Опять велик, елы-палы. работал я и с оле сервер-ом Два минуса а)медленно б)ограничение на количество строк ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 18:56 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Aleksey-KМарат, у меня все получилось с последней версией frx2any (12.04.06). Теперь все работает как надо и в отчетах VFP 9.0. В начале след. месяца мы оплатим через ссылку http://www.frx2any.com/payment.php?prod=dev с помощью Share It версию DEVELOPER вашей программы. Ждем-с с нетерпением... :)) Aleksey-K Я так полагаю, что в ней можно будет поменять кодовую страницу по умолчанию, чтобы и в PDF все выводило по русски ? Кодовую страницу можно и сеичас установить: loFile.nCodePage = 1250 loFile.lIncludeFont = .T. ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 19:13 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
maple4Если бы все свойства (font, size, border и т.д.) были фиксированы как в Excel-e, то интерфейс был бы как в Excel-e, НО ведь хочется ДИНАМИЧЕСКОГО форматирования Вообще же Интерфейс будет напоминать стандартный FoxPro Report Builder, но с возможностями табличного редактора (отдаленно напоминает 1С, как не хотелось об этом говорить, + Excel) например, при перемещении из одной ячейки в другую, будет меняться информация о FontName, FontSize, border и т.д. (если они фиксированы, кстати, то визуальный редактор сразу же их и отображает, т.е. если размер=10, то редактор отобразит font с 10 размером, если fontname="Times New Roman", то редактор отобразит именно этот шрифт и т.д., и, кстати ВСЕ ЭТО работает даже и сейчас) Идея хорошая, достоина внедрения... ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 19:15 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Aleksey-K Его программа НИКАК не конкурирует с вашей. Она берет готовый FRX и выводит в разные приемники, а ваша является построителем отчета. Скорее конкурентом вашей программы является Microsoft Reporting Services :) Конкурирует другая моя программа - ReportDepot ... |
|||
:
Нравится:
Не нравится:
|
|||
24.01.2008, 19:16 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Вряд ли эта программа сможет заменить фоксовский репорт, так как HTML - не самый удобный формат для печати, редактировать его в броузере тоже невозможно. А пользователь хочет иметь многие отчеты в редактируемом виде. Лично я сейчас в 10% случаев использую репорт, в 60% - GENREP, в 25% - E_REPORT, а в 5% - программное формирование листов в EXCEL. Но, HTML - удобная форма многоуровневого представления информации, когда по щелчку мышки нужно раскрыть детальную информацию, например, цифру в бухгалтерском отчете раскрыть до уровня счетов, потом до аналитики и до элементарных проводок. Можно, конечно, все это реализовать с помощью GRIDов и форм. Но. думаю, в формате HTML это проще реализуется да и смотреться будет нагляднее. Мне кажется, нужно рыть именно в направлении программного создания из фокса многоуровневых WEB-страниц для отображения сложных структур данных - как альтернативы созданию сложных фоксовских форм. С уважением - Sea_Cat ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2008, 13:53 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Sea_Cat... Мне кажется, нужно рыть именно в направлении программного создания из фокса многоуровневых WEB-страниц для отображения сложных структур данных - как альтернативы созданию сложных фоксовских форм. Безперспективно... Microsoft создал очень прекрасный инструмент для создания отчетов бизнес-аналитиками, то что в принципе мы хотели всегда - "пусть отчеты делают те, кому они нужны"... ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2008, 14:31 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Marat C Aleksey-KМарат, у меня все получилось с последней версией frx2any (12.04.06). Теперь все работает как надо и в отчетах VFP 9.0. В начале след. месяца мы оплатим через ссылку http://www.frx2any.com/payment.php?prod=dev с помощью Share It версию DEVELOPER вашей программы. Ждем-с с нетерпением... :)) Aleksey-K Я так полагаю, что в ней можно будет поменять кодовую страницу по умолчанию, чтобы и в PDF все выводило по русски ? Кодовую страницу можно и сеичас установить: loFile.nCodePage = 1250 loFile.lIncludeFont = .T. Это при работе только с PDF. А через Preview я не нашел. С уважением, Алексей. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2008, 14:35 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Sergey Ch Sea_Cat... Мне кажется, нужно рыть именно в направлении программного создания из фокса многоуровневых WEB-страниц для отображения сложных структур данных - как альтернативы созданию сложных фоксовских форм. Безперспективно... Microsoft создал очень прекрасный инструмент для создания отчетов бизнес-аналитиками, то что в принципе мы хотели всегда - "пусть отчеты делают те, кому они нужны"... Если имеется в виду ReportService, то действительно с ним сложно конкурировать в это области, но это платный продукт и теперь поставляется в составе всего SQL Server 2005. С уважением, Алексей ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2008, 14:37 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Sea_Cat... HTML - удобная форма многоуровневого представления информации, когда по щелчку мышки нужно раскрыть детальную информацию, например, цифру в бухгалтерском отчете раскрыть до уровня счетов, потом до аналитики и до элементарных проводок. Можно, конечно, все это реализовать с помощью GRIDов и форм. Но. думаю, в формате HTML это проще реализуется да и смотреться будет нагляднее. Для каждой ячейки (точнее - для всего текста, находящегося в ячеке) можно создать реакцию на клик, как это сделано в примере (Report с датой - по клику открывается страница проекта). Для этого нужно выбрать ячейку , кликнув другой кнопкой мыши, и выбрать Edit/Field/Click ну, и далее, задать текст ссылки, причем этот текст, как и основной текст ячейки, так же формируется программой, в зависимости от данных т.е. НАПРИМЕР текст в поле "Click" ячейки Detail (Edit/Field/Click) "http://sql.ru/`alltr(str(test_.saldo))`.html" при формировании отчета, при значении test_.saldo=3 создаст ссылку "http://sql.ru/3.html" при формировании отчета, при значении test_.saldo=200 создаст ссылку "http://sql.ru/200.html" и т.д. Но пример, выложенный на рассмотрение, НЕ ИСПОЛЬЗУЕТ объект IE, программа просто открывает готовую страницу браузером "по умолчанию". (Я, кстати, думал , что реализация интерактивности - не самое главное :) ) Но это будет реализовано в следующей версии, это не проблема ( уже сделано в другом проекте - ссылка выше ): Страница открывается в объекте IE, клик по ссылке обрабатывается Fox-om, и далее... а как такой вариант, когда при формировании отчета запускается след. отчет? А он, в свою очередь - другой? Например, отчет по клиентам, со списком телефонов, сводная по направлениям и с детализацией по звонкам (куда, направление, сколько...) Т.е. не просто один отчет "пристегнул" к другому, а действительно многоуровневый отчет со сложной организацией данных. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.01.2008, 14:56 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Aleksey-KЭто при работе только с PDF. А через Preview я не нашел. Хмм.. верно, нет такого. Вернее не было. В новои версии - 12.04.07 я это дело подправил. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.01.2008, 18:18 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Sea_CatВряд ли эта программа сможет заменить фоксовский репорт, так как HTML - не самый удобный формат для печати, редактировать его в броузере тоже невозможно. А пользователь хочет иметь многие отчеты в редактируемом виде. Лично я сейчас в 10% случаев использую репорт, в 60% - GENREP, в 25% - E_REPORT, а в 5% - программное формирование листов в EXCEL. Но, HTML - удобная форма многоуровневого представления информации, когда по щелчку мышки нужно раскрыть детальную информацию, например, цифру в бухгалтерском отчете раскрыть до уровня счетов, потом до аналитики и до элементарных проводок. Можно, конечно, все это реализовать с помощью GRIDов и форм. Но. думаю, в формате HTML это проще реализуется да и смотреться будет нагляднее. Мне кажется, нужно рыть именно в направлении программного создания из фокса многоуровневых WEB-страниц для отображения сложных структур данных - как альтернативы созданию сложных фоксовских форм. С уважением - Sea_Cat Отреагировал я на мнение некоторых , что все бесперспективно (а может это было сделано специально: ) ?) и учел мнение остальных. В общем, по роду моей работы, мне довольно часто приходится формировать отчеты, договора, акты, приложения и другие документы. Стандартным Report Bulder-ом формировать зарекся, через управление Word и Excell - довольно муторно... В общем, вот новая версия редактора. Изменился интерфейс визуального редактора - теперь можно обращаться к свойствам ячейки без открытия контекстного меню. Свойства доступны при клике по ячейке. Редактирование свойств ячейки из формы, "почти как в Excell", т.е.: Изменение шрифта (из тех, что установлены в системе), размера и атрибутов (Bold,Italic,Underline), выравнивания по ширине и высоте, назначение границ ячейке - это теперь можно делать прямо из экранной формы. Для ячейки можно задать значения Default по каждому свойству, основные значения и любые другие, а так же задать функции для управления свойствами. При переходе в другую ячейку (при клике основной кнопкой или дополнительной), активная ячейка отображается красными границами. Идеология m4RB: Каждый Report имеет следующие зоны (в дальнейшем - Хедеры ): Title (Начало отчета), Summary (Конец отчета), Page Header (Начало страницы), Page Footer (Конец страницы) и Detail (Данные). Использовать их пользователем или нет - личное дело пользователя, но они есть и всегда будут, ХОТЯ БЫ по одному каждого вида в Report-е. Хедер управляет строками, которые в него входят: Печатать ли Хедер Например, программа при формировании распечатает все Detail (по умолчанию), или только те, которые удовлетворяют условию. В примере можно увидеть, что при формировании распечатывается общий Detail по клиенту и один, в зависимости от типа договора (Интернет это или Телефония). Начинать ли печатать Хедер с новой страницы Порядок печати определяется расположением Хедеров в отчете. Можно перемещать Хедеры Вверх/Вниз (только в пределах типа, т.е. нельзя, например, Detail расположить выше Title) Можно удалять Хедеры (удаляются так же все строки в Хедере), НО нельзя вообще удалить Хедер, если он один в отчете. Кроме рассмотренных Хедеров, есть еще один: Group Его применение необходимо в случае группировки данных. Нужно понимать, что данные УЖЕ ДОЛЖНЫ быть отсортированы, аналогично, как со стандартным Report Builder-ом Group должен принадлежать какому-либо уровню (ROOT) сортировки, т.е. не может быть Group без уровня, просто так. При добавлении нового уровня сортировки (ROOT), добавлется одновременно Group для начала и Group для конца. Group Start срабатывает при начале новой группы, Group End - при конце группы. Может быть несколько Group , но должен быть хотя бы один Group (Group Start) для каждого уровня для начала и хотя бы один (Group End) для конца. В примере, данные отсортированы по городу и услуге. Коротко по пунктам контекстного меню: Check/UnCheck - выделить ячейку или снять выделение (если была до этого выделена) Checked Cells/Group - выделенные ячейки объединить в одну. Каждая из выделенных ячеек не должна быть в группе, и, так же, все выделенные ячейки должны принадлежать одному Хедеру. Checked Cells/Group - выделенные ячейки разгруппировать Checked Cells/Clear - очистить выделенные ячейки (привести в состояние Default все свойства ячейки) Edit/Cell/Field - редактирование значения ячейки (доступ из формы - двойной клик по ячейке) Edit/Cell/Click - свойство, отвечающее за генерацию реакции на клик. Пример можно посмотреть в отчете по Телефонам или по IP (саму реакцию можно посмотреть, кликнув в сгенеренном отчете по телефону или IP - откроется детализированный отчет) Edit/Cell/Style - свойство, отвечающее за дополнительное управление стилем ячейки (CSS) Edit/Cell/Caption - что показывается в отчете вместо значения ячейки (При снятом флажке Hide Values всегда показывается значение ячейки, не зависимо от того, введено Caption или нет). Очень удобно, если данные загромождают отчет, ввести для каждой ячеки Caption - разница бросается в глаза. Для изменения свойств Edit/Border/ и Edit/Font/ можно напрямую обращаться через экранную форму (она появляется при клике по ячейке). В качестве значений свойств (для Edit/Border/ и Edit/Font/ ) можно использовать функции FoxPro или программный код FoxPro (в случае программного кода ОБЯЗАТЕЛЕН Return со значением - числовым, текстовым или логическим значением. Для того, что бы программа поняла, что в свойстве находится именно код программы, а не функция, первое значение в свойстве должно быть &.) Edit/Border/Top (Bottom,Left,Right) - свойство, отвечающее за границу ячейки сверху (снизу, слева, справа) (доступ из формы - изменение свойств в группе Borders). В качестве параметра - числовое значение (пусто - нет рамки, 0-ЖЕСТКО нет рамки, 1,2... - толщина границы) Edit/Font/Size - свойство, отвечающее за размер шрифта в ячейке, числовое значение (пусто - 10, 6,7,... - размер шрифта) Edit/Font/Name - свойство, отвечающее за имя шрифта в ячейке, текст, заключенный в двойные кавычки (пусто - "Arial") Edit/Font/Align - выравнивание по горизонтали, числовое значение (пусто,0 - Left,1-Center,2-Right) Edit/Font/Valign - выравнивание по вертикали, числовое значение (пусто,0 - Top,1-Middle,2-Bottom) - данное свойство не смог реализовать для отображения на экранной форме :) - к сожаление, Edit в Visual FoxPro допускает только горизонтальное выравнивание. При отображении отчета - все ОК. Edit/Font/Flags (Bold,Italic,Underline) - управление атрибутами шрифта, числовое значение (пусто - ничего, +1-Выделение жирным,+2 - Курсивом, +4- Подчеркнуть. Например, значение 3 Жирный курсив, 6-подчеркнутый курсив ) Edit/Font/Color - цвет шрифта, числовое значение (пусто - цвет по умолчанию, обычно черный,в качестве значения - результат функции RGB, например 255 для красного RGB(255,0,0), или 65280 для зеленого - RGB(0,255,0) ) Edit/Font/BkColor - цвет фона ячейки, числовое значение (пусто - цвет по умолчанию, обычно белый,в качестве значения - результат функции RGB, например 16711680 для синего RGB(0,0,255), или 16777215 для белого - RGB(255,255,255) ) Edit/Clear - очистить только активную ячейку Row/Insert - вставка новой строки в Хедер. Имеет значение, в какой ячейке исполняется команда. Если в Хедере - добавляется строка в конец, в ячейке - строки сдвигаются вниз (как в Excel-е). Если новая строка пересекается с сгруппированной ячейкой (из нескольких строк), строка АВТОМАТИЧЕСКИ добавляется в данную ячейку (как в Excel-е), т.е. нет необходимости расгруппировывать ячеки, потом опять объединять - все делается автоматом. Row/Delete - удалении строки из Хедера. Если удаляемая строка пересекается с сгруппированной ячейкой (из нескольких строк), строка АВТОМАТИЧЕСКИ из ячейки (как в Excel-е), т.е. нет необходимости расгруппировывать ячеки а потом опять объединять. Row/On Auto Height и Row/Off Auto Height - задание свойства растягиваться строке по высоте или зафиксировать жестко. Активно используется в предложенном примере , но меню пока дорабатывается. При добавлении, строка по умолчанию получает свойство Off Auto Height (жесткий размер высоты), поэтому если значение в ячейке превысит размер по высоте, ячейка будет обрезана. Значением On Auto Height удобно пользоваться, если размер текста в ячейке динамический, т.е. нельзя предугадать его заранее. Column/Insert/New Column - вставка колонки по всей высоте отчета. Имеет значение, в какой ячейке исполняется команда. Если в Хедере - добавляется колонка слева, в ячейке - все колонки сдвигаются вправо (как в Excel-е). Если новая колонка пересекается с сгруппированной ячейкой (из нескольких строк/колонок), колонка АВТОМАТИЧЕСКИ добавляется в данную ячейку (как в Excel-е), т.е. нет необходимости расгруппировывать ячеки, потом опять объединять - все делается автоматом. Column/Insert/New Column - Right - вставка колонки по всей высоте отчета справа. Column/Delete - удаление колонки по всей высоте отчета. Имеет значение, в какой ячейке исполняется команда. Если в Хедере - удаляется колонка слева, в ячейке - все колонки сдвигаются влево (как в Excel-е). Если новая колонка пересекается с сгруппированной ячейкой (из нескольких строк/колонок), колонка АВТОМАТИЧЕСКИ удаляется из данной ячейки (как в Excel-е), т.е. нет необходимости расгруппировывать ячеки, а потом опять их объединять. Column/Edit Properties - доп. свойства, в разработке. Header/Move UP (DOWN) - перенести Хедер со строками вверх(вниз), только в пределах типа Хедера. Header/Caption - Заголовок Хедера Header/Insert - добавление нового Хедера в отчет (того типа, по чему был клик) Header/Delete - удаление Хедера из отчета вместе со связанными с ним строками. Header/Rule/Report - условие печати Хедера и связанных строк (пусто - печатать все, .f. или функция, возвращающая .f. - Хедер не печатается) Header/Rule/New Page - условие печати Хедера с новой страницы (пусто - печатать на той же, .t. или функция, возвращающая .t. - Хедер печатается с новой страницы) Root/Move IN(OUT) - перенесение группировки на один уровень + (-) (в разработке) вместе со всеми Хедерами вида Group. Как сложно написано :) , на самом деле аналог Visual FoxPro Report Builder - > Data Grouping Root/New Root - добавление нового уровня группировки (Start и End). Root/Delete Root - удаление уровня группировки со всеми связанными Group. Root/Edit 'Group by...' - редактирование условия группировки. Если Вы используете Group в отчете, таблица должна быть отсортирована соответствующим образом! (как и в стандартном Report Builder-е) Undo - самый главный пункт в контекстном меню :) - Отмена последнего действия (в дальнейшем количество будет добавлено). Как задать цвет шрифта ячейки? Кликнуть по ячейке основной кнопкой мыши. Высветится (или обновится) панель свойств, в которой можно, кликнув по Font Color выбрать необходимый цвет из стандартных, или выбрав GetColor задать необходимый. При выборе FUNCTION откроется окно редактирования, в котором можно функцию или программу FoxPro, которая сформирует необходимый цвет. Пример функции - RGB(0,255,0) для зеленого цвета. К FUNCTION можно обратиться так же через контекстное меню Edit/Font/Color. Аналогично редактируются и другие свойства: Шрифт, Размер, Цвет фона ячейки, атрибуты шрифта и границы. НО нужно, понимать, что если Вы свойства задаете через FUNCTION, то результат работы сможете увидеть только после генерации отчета. Как задать реакцию на клик по содержимому ячейки? Кликнуть неосновной кнопкой по ячейке для вызова контекстного меню. Далее, выбрать Edit/Cell/Click Откроется окно редактирования реакции на клик Если по клику требуется обычный переход на страницу, то достаточно, например, написать текст: "http://forum.foxclub.ru/read.php?30,314453" Обратите внимание, текст взят в двойные кавычки Если же требуется обработка в зависимости от содержимого, тогда, например (реализовано в отчете при выводе списка телефонов) "VFP:///phone_click(`alltr(str(phonek.id_))`)" что это означает? программа при формировании отчета создаст ссылку, текст которой будет зависеть от содержимого поля таблицы phonek.id_ (уникальный идентификатор номера телефона) т.е., еще раз например, будут созданы ссылки (и размещены в тексте HTML), вида "VFP:///phone_click(1)" "VFP:///phone_click(2)" "VFP:///phone_click(3)" .... Далее, в процессе просмотра готового отчета, при клике по тексту (в данном случае - по номеру телефона) запустится функция phone_click() с соответствующим параметром (функция phone_click генерит детализированный отчет по телефону и выводит его на экран). Префикс VFP в ссылке - это указание программе, что требуется выполнение функции FoxPro, а не переход по ссылке. еще один пример генерации ссылки - в главном отчете (ячейка Report) "VFP:///messagebox('DateTime for Report - `ttoc(datetime())`'+chr(13)+'DateTime For Click - '+ttoc(datetime()))" при генерации отчета будет создана, например, ссылка "VFP:///messagebox('DateTime for Report - 07/02/2008 09:37:33'+chr(13)+'DateTime For Click - '+ttoc(datetime()))" а при клике в готовом отчете, запустится стандартная функция messagebox Visual FoxPro и выведет, например, сообщение (вторая строка сообщения - текущие дата/время ) : DateTime for Report - 07/02/2008 09:37:33 DateTime for Click - 07/02/2008 09:40:38 В представленном примере, последовательно выводятся все необходимые отчеты для редактирования, а после закрытия последнего отчета генерится страница HTML. Загрузить программу можно отсюда (требуется Visual FoxPro 9.0 SP1) http://www.maple4.ru/a_downloads_for_maple4_ru/m4rb_demo_no_dll.zip Версия (c DLL) – со страницы: http://www.maple4.ru/i_downloads.htm ФОРУМ: http://www.maple4.ru/forums/index.php?showtopic=23 Официальная страница: http://www.maple4.ru/i_m4rb.htm ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2008, 10:11 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Marat C Aleksey-KЭто при работе только с PDF. А через Preview я не нашел. Хмм.. верно, нет такого. Вернее не было. В новои версии - 12.04.07 я это дело подправил. И еще одно, Марат. Мне кажется, что ваша программа не отрабатывает свойство Title отчета "New Page after title has printed". Во всяком случае у меня в этом режиме данные "лепятся" поверх title. Подробно я вам написал об этом на e-mail. С уважением, Алексей. ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2008, 11:02 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Aleksey-K Marat C Aleksey-KЭто при работе только с PDF. А через Preview я не нашел. Хмм.. верно, нет такого. Вернее не было. В новои версии - 12.04.07 я это дело подправил. И еще одно, Марат. Мне кажется, что ваша программа не отрабатывает свойство Title отчета "New Page after title has printed". Во всяком случае у меня в этом режиме данные "лепятся" поверх title. Подробно я вам написал об этом на e-mail. С уважением, Алексей. Уважаемый Алексей! А Вы, случайно , не рассматривали демо-версию моей программы ( Maple4 Report Builder ), которая представлена в этом топике? Загрузить программу можно отсюда (требуется Visual FoxPro 9.0 SP1) http://www.maple4.ru/a_downloads_for_maple4_ru/m4rb_demo_no_dll.zip Что там реализовано: обработка реакции на клик (как в 1С), и запуск, если необходимо, детализированных отчетов и т.д. динамическое форматирование текста генерация необходимых нужных блоков Detail, Group, Title, Summary (их количество может быть больше 1) по условию формирование отчета в отчете (в основном отчете используются ДРУГИЕ, в них еще, и т.д.) Вообще, меня поразила тишина, после сообщения в топике - обычно здесь (SQL.ru) весьма нелестно реагируют на любые новые предложения. Чего ПОКА нет - работы с файлами графики (с рисунками), но все будет ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2008, 11:33 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
У вас же программа построитель отчетов, а мне надо программа, которая выводит готовый FRX файл. Или я не прав? С уважением, Алексей ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2008, 11:37 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Marat C Aleksey-KЭто при работе только с PDF. А через Preview я не нашел. Хмм.. верно, нет такого. Вернее не было. В новои версии - 12.04.07 я это дело подправил. Еще в догонку к наложению Detail на Title. Тоже самое происходит при достаточно большом размере Title и без установки опции "New Page after title has printed". У меня такое наползание происходит при размере Title более 12.5 см на листе при ориентации Landscape С уважением, Алексей ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2008, 11:52 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Aleksey-KУ вас же программа построитель отчетов, а мне надо программа, которая выводит готовый FRX файл. Или я не прав? С уважением, Алексей и все же? иногда ВСЕ РАВНО проще создать новый отчет, чем использовать старый "использует готовый FRX файл" - не главное преимущество попробуйте создать report со сложным форматированием (как в Excel-е) в обычном редакторе... в m4rb все достаточно просто выделил ячейки, объединил, задал границы, толщину границ, высоту строк, ширину колонок ... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2008, 11:54 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Aleksey-KИ еще одно, Марат. Мне кажется, что ваша программа не отрабатывает свойство Title отчета "New Page after title has printed". Во всяком случае у меня в этом режиме данные "лепятся" поверх title. Подробно я вам написал об этом на e-mail. С уважением, Алексей. Алексеи, Поскольку в данном случае используется Репорт Листенер, то надо немного подшманить Listener.VCX. А именно код метода Listener.BeforeBand (полныи код метода приведен ниже) Я оставил код Listener.VCX открытым именно вот из-за этих случаев, ну и для того, чтобы юзеры могли кастомизировать оутпут. Код: plaintext 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.
... |
|||
:
Нравится:
Не нравится:
|
|||
08.02.2008, 18:24 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Немного подумав, нашел интересный способ вставки и отображения файлов графики в Maple4 Report Builder-e (пожалуйста, только не говорите, что в Excel-е не так:) ) Теперь через контекстное меню Edit\Picture\Insert можно в ячейку вставить любой графический файл , поддерживаемый Visual FoxPro. И он тут же отобразится в визуальном редакторе (и, конечно, будет выведен в готовом файле HTML). НО! Нужно понимать, что программа демонстрационная, поэтому никаких преобразований (задание ширины и высоты) не ведется, поэтому какой файл по размеру будет, такой и отобразится в HTML-документе. В дальнейшем, БУДЕТ возможность задания макс. ширины и высоты, или привязки их к свойствам ячейки. + возможность формирования графического файла из поля таблицы + управление файлами графики отчета Сейчас же просто хотелось показать, что снят главный барьер для использования программы (вставка графики). В окончательном варианте программа будет распространяться, как exe-приложение с запуском сценария (соединение с БД, подготовка таблиц, выполнение кода FoxPro, генерация на экран/печать на принтер), и как app-приложение для применения в FoxPro проекте. Хотелось бы узнать мнение FoxPro сообщества (именно на этом этапе, когда решены практически все проблемы с реализацией проекта, далее необходимо только время), хотя, как сказал мой знакомый, от мнения УЖЕ ничего не зависит. Ну тогда, хотя бы пару советов. Например, до сих пор не решен вопрос размещения файлов графики в теле документа (пока) - mht. В принципе, ничего критичного в том, что документы будут вида HTML нет. Загрузить программу можно отсюда (требуется Visual FoxPro 9.0 SP1) Версия (c DLL) – со страницы: P.S. Уважаемые Marat C и Aleksey-K! Есть предложение - давайте я создам новую тему по m4RB, а вы в текущей продолжите обсуждение глюков, т.е. проблем программы frx2any (они есть, как и в любой другой:) )? Спрашивается, а почему не создать новую тему по frx2any - это же логичнее? А разве есть логика в том, что бы в форуме задавать и отвечать на вопросы по другой программе, когда есть такие замечательные средства коммуникации, как email и ICQ? Еще один довод против этого - в этой теме (frx2any) НЕ БУДЕТ Marat(а) C и он НЕ СМОЖЕТ ответить на вопросы Aleksey-K :) ... |
|||
:
Нравится:
Не нравится:
|
|||
09.02.2008, 23:25 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
настойчиво рекомендую пересмотреть идеологию интерфейса ... не сделано самое элементарное ... деятый фокс вроде же поддерживает docing panel ... вынеси ты все настройки вверху формы в подобную панль (типа property в Visual Studio) ... а так же там же продублируй функционал из контектных меню ... лично у меня такой интерфейс сразу вызывает отторжение ... что бы там ни было понапихано в потроха ... удачи ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2008, 07:21 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Хорошо, договорились. Про FRX2ANY больше не слово :) С уважением, Алексей ... |
|||
:
Нравится:
Не нравится:
|
|||
10.02.2008, 14:44 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Ну што можно сказать... Интерфейс - два балла, идея пока не впечатляет, такой отчет как в примере я и на Фоксовском могу получить не напрягаясь, предварительного просмотра я так и не нашел, если не считать того что после нескольких нажатий на кнопку сохранить, наконец то что то показывает! Зачем в примере Фоксовское окно?! Его нельзя убрать (если эта прога будет распространяться в виде EXE)! Почему нельзя сделать просмотр прямо в окне программы? В каком виде (с каким расширением) Вы собираетесь сохранять файлы отчетов? Создание отчетов - это хорошо, но придётся делать и отдельную программу для просмотра отчетов, при распространении пользовательских приложений. И какую новую команду VFP Вы собираетесь ввести для печати или просмотра отчетов из приложений? Ответ я приблизительно знаю, но врят ли он понравиться народу. Ну а теперь конкретнее: на мой взгляд необходимо заменить контейнер (в котором все элементы отчета) на форму со скролами и оставить линейки настройки ширины колонок и столбцов (верхнюю и левую) не перемещаемыми при соответствующих перемещениях. Будет значительно удобнее и уберутся не нужные (не удобные) кнопки перемещения. Ну на счет панели управления я промолчу (тут лутше обратиться к дизайнеру). Необходимо запоминать размеры и положение окон редактирования (Sell Field), уж больно не красиво И НЕ УДОБНО вводить несколько слов кода в окне, занимающим больщую половину экрана. Очень сильно бъет по глазам мигание экрана при попытке изменить ширину колонки или стобца. Зачем делать Visible=.F., можно просто поработать с LockScreen. Ну и так далее. Да... её ещё пилить и пилить. А посему пожелаю Вам удачи в столь нелегком деле. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2008, 12:36 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Ну што можно сказать... Интерфейс - два балла, идея пока не впечатляет, такой отчет как в примере я и на Фоксовском могу получить не напрягаясь, предварительного просмотра я так и не нашел, если не считать того что после нескольких нажатий на кнопку сохранить, наконец то что то показывает! В ДЕМОНСТРАЦИОННОМ примере последовательно выводятся 5 различных отчетов для изменения. 1 отчет - основной на его основе и формируется тот ГЛАВНЫЙ отчет, который Вы увидите после всех выводов. 2 отчет - подотчет по списку телефонов клиента он генерится при типе контракта - Phone 3 отчет - подотчет по списку IP клиента он генерится при типе контракта - Internet Назначение 2 и 3 отчетов - ВСТАВИТЬ в главный отчет, по ходу его формирования, необходимые подотчеты. Примерный расчетный уровень вложенности (один в другой и т.д.) ~ 40-50 отчетов. Принцип формирования - генерится 1 отчет, при команде генерится подотчет 2 или 3 (в зависимости от условия), но генерация идет не в файл, а в отчет 1, далее продолжается генерация 1 и т.д. 4 отчет - детализированный отчет по телефонии Он генерится в момент клика по номеру телефона (А НЕ ЗАРАНЕЕ СГЕНЕРЕН) в главном отчете. 5 отчет - детализированный отчет по IP Он генерится в момент клика по IP (он тоже НЕ СГЕНЕРЕН ЗАРАНЕЕ) в главном отчете. Еще раз повторю, 4 и 5 отчеты интерактивно генерятся ПРИ клике по телефону или IP. Насчет предварительного просмотра. Не знаю. Особенно, если учитывать, что в отчет могут входить другие отчеты. Зачем в примере Фоксовское окно?! Его нельзя убрать (если эта прога будет распространяться в виде EXE)! Почему нельзя сделать просмотр прямо в окне программы? С этим можно поспорить... В каком виде (с каким расширением) Вы собираетесь сохранять файлы отчетов? Для работы необходимы обычные файлы dbf/fpt. Вопрос в другом - как их представлять пользователю. А сейчас они, повторюсь, в виде обычных dbf/fpt находятся в соответсвующих директориях. Создание отчетов - это хорошо, но придётся делать и отдельную программу для просмотра отчетов, при распространении пользовательских приложений . То, что Вы видите - это и создатель отчетов и просмотрщик (в демке - все в одном+ файл сценария). И все уже сделано. Вы же видите отчет, который сформирован программой (т.е. он выводится на экран) И какую новую команду VFP Вы собираетесь ввести для печати или просмотра отчетов из приложений? например : do report_new.app with "Name_of_report" плюс, после запятой, флаги вывода/печати/коррекции и т.д. Ответ я приблизительно знаю, но врят ли он понравиться народу. не понял :) во всяком случае, есть еще почта и ICQ Ну а теперь конкретнее: на мой взгляд необходимо заменить контейнер (в котором все элементы отчета) на форму со скролами и оставить линейки настройки ширины колонок и столбцов (верхнюю и левую) не перемещаемыми при соответствующих перемещениях. Будет значительно удобнее и уберутся не нужные (не удобные) кнопки перемещения. Согласен Ну на счет панели управления я промолчу (тут лутше обратиться к дизайнеру). Необходимо запоминать размеры и положение окон редактирования (Sell Field), уж больно не красиво И НЕ УДОБНО вводить несколько слов кода в окне, занимающим больщую половину экрана. Согласен. Очень сильно бъет по глазам мигание экрана при попытке изменить ширину колонки или стобца. Обычно, изменение высоты строки и ширины колонки - не самая частая операция при работе с редактором. ... |
|||
:
Нравится:
Не нравится:
|
|||
11.02.2008, 15:10 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
В ДЕМОНСТРАЦИОННОМ примере последовательно выводятся 5 различных отчетов для изменения. 1 отчет - основной на его основе и формируется тот ГЛАВНЫЙ отчет, который Вы увидите после всех выводов. 2 отчет - подотчет по списку телефонов клиента он генерится при типе контракта - Phone 3 отчет - подотчет по списку IP клиента он генерится при типе контракта - Internet Назначение 2 и 3 отчетов - ВСТАВИТЬ в главный отчет, по ходу его формирования, необходимые подотчеты. Примерный расчетный уровень вложенности (один в другой и т.д.) ~ 40-50 отчетов. Во перемудрил!!!!!!!!!! Зачем мне 40-50 отчетов, я хочу посмотреть как будет выглядеть мой отчет, который я сейчас делаю. А что такое 2 или 3 отчеты мне совсем не интересно, да и я не совсем понимаю эту логику, хотя работаю с фоксом лет 20. Что такое "тип контактов" и где его выбирать? Не понимаю. Отчет он один!!!! Ну если у Вас такая логика, то почему бы не организовать это на PageFram? Тогда хоть что-то понятно будет. А то откуда пользователь догадается (а через пару месяцев Вы и сами не вспомните) о количестве встроенных отчетов? 40-50 раз нажать на кнопку? Тут по моему и без TreeView не обойтись. Что тяжко кнопку просмотра сделать? Да и просмотр HMTL организовать прямо на этой форме? То, что Вы видите - это и создатель отчетов и просмотрщик (в демке - все в одном+ файл сценария). И все уже сделано. И что мы позволим пользователю редактировать отчеты?!!! Кто их потом ремонтировать будет. Профи путаются, а тут пользователь, который на клавиши толком не умеет нажимать!!!! На счет этого советую подумать. Зачем в примере Фоксовское окно?! Его нельзя убрать (если эта прога будет распространяться в виде EXE)! Почему нельзя сделать просмотр прямо в окне программы? С этим можно поспорить... А что AsTopLevelForm уже кто-то отменил? Зачем лишние окна если они не несут ни какой смысловой нагрузки? Или пустое место на мониторе не чем занять? Для работы необходимы обычные файлы dbf/fpt. Вопрос в другом - как их представлять пользователю. А сейчас они, повторюсь, в виде обычных dbf/fpt находятся в соответсвующих директориях. Ну и кто потом разберётся где отчеты, а где таблицы? Не, а. Нужно своё расширение впихивать. Ещё раз удачи, а она Вам потребуется! ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2008, 05:18 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
ЗЫ! На счет магания - окно мигает и при попытке выделить несколько ячеек. Не приятно. Я всётаки не понимаю - зачем делать всё окно не видимым. Ведь можно просто ThisForm.LockScreen=.T. Ну а потом, после всех манипуляций, ThisForm.LockScreen=.F. Это же просто и ни каких миганий!!!! Если Вы всётаки планирует продать это кому-то, то нужно продавать качественный продукт, и тут Ваши "не часто пользоваться" не катит. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2008, 05:58 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Во перемудрил!!!!!!!!!! Зачем мне 40-50 отчетов, я хочу посмотреть как будет выглядеть мой отчет, который я сейчас делаю. А что такое 2 или 3 отчеты мне совсем не интересно, да и я не совсем понимаю эту логику, хотя работаю с фоксом лет 20. Что такое "тип контактов" и где его выбирать? Не понимаю. Отчет он один!!!! Ну если у Вас такая логика, то почему бы не организовать это на PageFram? Тогда хоть что-то понятно будет. А то откуда пользователь догадается (а через пару месяцев Вы и сами не вспомните) о количестве встроенных отчетов? 40-50 раз нажать на кнопку? Тут по моему и без TreeView не обойтись. Что тяжко кнопку просмотра сделать? Да и просмотр HMTL организовать прямо на этой форме? Предпросмотра отчета не будет, т.к.: а) ОН УЖЕ И ТАК ЕСТЬ :) б) В состав отчета могут и будут (одно из отличий от других программ) входить подотчеты. Если пользователь захочет увидеть весь отчет, он может его запустить стандартным образом. Насчет "А что такое 2 или 3 отчеты" - это примеры отчетов, которые генерятся в основном отчете. Попробуйте их изменить (и сохранить), и Вы увидите для чего они нужны. И при чем тут логика - Их вывод на просмотр/редактирование продиктован только желанием показать, что подотчеты генерятся из визуального редактора, а не scan....endscan с формированием строк <tr><td>...</td></tr>, как можно было подумать. А вообще, Каждый отчет редактируется отдельно (да его и запустить можно отдельно) , и, соответсвенно, не нужно 40-50 раз нажимать на кнопку :) , поэтому, кстати, и PageFrame (с TreeView ) не нужен. Про "тип контактов" не понял :) В демо-таблице test_ (по ней генерится основной отчет) есть поле t2 (тип контракта), по его содержимому срабатывают различные хедеры Detail в основной таблице (only for Internet и only for Phone) Триггер (правило для срабатывания) описан в соответствующем поле (другой кнопкой мыши кликнуть по Хедеру, и выбрать Header/Rule/Report Правило для хедера Detail для Интернета: (все есть в примере) iif(alltr(test_.t2)=="Internet",.t.,.f.) Насчет 4 и 5 отчета в примере - аналогично - "Их вывод на просмотр/редактирование продиктован только желанием показать, что отчеты генерятся из визуального редактора" Можете их тоже изменить, вставить файлы графики, добавить строки колонки... и обязательно сохранить после этого. Результат Вы увидите после клика кнопкой в основном отчете. То, что Вы видите - это и создатель отчетов и просмотрщик (в демке - все в одном+ файл сценария). И все уже сделано. И что мы позволим пользователю редактировать отчеты?!!! Кто их потом ремонтировать будет. Профи путаются, а тут пользователь, который на клавиши толком не умеет нажимать!!!! На счет этого советую подумать. ДА, пользователь будет редактировать отчеты, т.е. то "что мы и хотели - переложить создание отчетов на клиента" (выше по топику, кстати) Пользователь знает FoxPro - отлично, не знает - пускай обращается к специалисту Зачем в примере Фоксовское окно?! Его нельзя убрать (если эта прога будет распространяться в виде EXE)! Почему нельзя сделать просмотр прямо в окне программы? С этим можно поспорить... А что AsTopLevelForm уже кто-то отменил? Зачем лишние окна если они не несут ни какой смысловой нагрузки? Или пустое место на мониторе не чем занять? С этим можно поспорить еще раз... Не несут смысловой нагрузки "сейчас". Для работы необходимы обычные файлы dbf/fpt. Вопрос в другом - как их представлять пользователю. А сейчас они, повторюсь, в виде обычных dbf/fpt находятся в соответсвующих директориях. Ну и кто потом разберётся где отчеты, а где таблицы? Не, а. Нужно своё расширение впихивать. Мне кажется, нужно смотреть шире :), и быть максимально открытым. А как разместить графику (файлы)? Хотелось бы, что бы они были в соответствующем каталоге в обычном виде. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2008, 10:13 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Мне кажется, нужно смотреть шире :), и быть максимально открытым. А как разместить графику (файлы)? Хотелось бы, что бы они были в соответствующем каталоге в обычном виде. А что уже запретили хранить графику в DBF? Вот не знал!!! Нужно смотреть всётаки не шире, а глубже!!! С этим можно поспорить еще раз... Не несут смысловой нагрузки "сейчас". И потом тоже небудет. Ведь Вы собираетесь использовать APP! Главным окном всёравно будет пользовательская прога или сам Фокс. А вообще, Каждый отчет редактируется отдельно (да его и запустить можно отдельно) , и, соответсвенно, не нужно 40-50 раз нажимать на кнопку :) , поэтому, кстати, и PageFrame (с TreeView ) не нужен. Чё та я не смог этого сделать! Ну и нужно делать демонстрашку, что бы понятно было что и откуда. ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2008, 10:32 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
MiklSМне кажется, нужно смотреть шире :), и быть максимально открытым. А как разместить графику (файлы)? Хотелось бы, что бы они были в соответствующем каталоге в обычном виде. А что уже запретили хранить графику в DBF? Вот не знал!!! Нужно смотреть всётаки не шире, а глубже!!! Нет, все таки шире :) Необходимая графика будет размещаться в каталоге репорта. Насчет хранения в DBF - я это уже делал, и это не проблема (Maple4 Site Creator, ссылки выше) MiklSА вообще, Каждый отчет редактируется отдельно (да его и запустить можно отдельно) , и, соответсвенно, не нужно 40-50 раз нажимать на кнопку :) , поэтому, кстати, и PageFrame (с TreeView ) не нужен. Чё та я не смог этого сделать! Ну и нужно делать демонстрашку, что бы понятно было что и откуда. Для этого пришлось бы делать несколько демок :) А сейчас все в одном - вывод на просмотр/редактирование 5 отчетов и генерация конечной страницы HTML и вывод ее на экран (причем, не только вывод, но и отработка кликов и генерация детализированных отчетов). ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2008, 10:45 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Да оранизуйте Вы его, как говорил выше, на PageFrame. И смотрется будет лутше и работать будет удобнее. А то конкуренцию MS Вам врятли удасться составить. С такими "наворотами" данный продукт боюсь ни кому не будет нужен. Вот если бы Вам удалось создать такой инстумент котрый бы превзошел MS по функциональности и был значительно легче в работе вот тогда бы авторЯ думаю, признание, богатство и слава ... |
|||
:
Нравится:
Не нравится:
|
|||
12.02.2008, 11:14 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
подскажите пажалуйста мне надо вывести номер страницы в виде "1 из 5" что для этого надо прописать? ... |
|||
:
Нравится:
Не нравится:
|
|||
20.05.2010, 22:54 |
|
Редактор отчетов для Visual Foxpro (HTML)
|
|||
---|---|---|---|
#18+
Caludподскажите пажалуйста мне надо вывести номер страницы в виде "1 из 5" что для этого надо прописать? Код: plaintext
С уважением, Алексей ... |
|||
:
Нравится:
Не нравится:
|
|||
21.05.2010, 07:32 |
|
|
start [/forum/topic.php?all=1&fid=41&tid=1585256]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
31ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
others: | 340ms |
total: | 483ms |
0 / 0 |