|
|
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Разработка конвертора данных Powersoft Report -> Excel Предлагается разовая (для начала) работа Необходимо разработать хороший конвертер данных dw PowerBuilder или файлов Powersoft Report в Excel ( Word) Кто возьмется? Оплата по факту при результатах лучше чем "dw2xls" Возможен % от продаж заинтересованным клиентам ( а это весь круг пользователей приложений Powerbuilder ) Нужна скорость - десятки тысячи строк - за секунды и точное соответсвие внешнего вида для любых видов dw включая вложенные отчеты и графику. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 11:36 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
А что, где-то появилось описание формата PSR? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 11:43 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Боюсь, что за это мало кто возьмётся! Ибо задача достаточно объёмная и требующая огромных ресурсов, в том числе, хорошее знание VB. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 11:49 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
VB тут вообще никаким боком. тут скорее знание формата xls чтоб напрямую писать и то не факт что получится сделать лучше чем dw2xls. ИМХО за это не возьмется никто ибо задача абсолютно нереальная. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 12:03 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
ЗоринАндрейVB тут вообще никаким боком. тут скорее знание формата xls чтоб напрямую писать и то не факт что получится сделать лучше чем dw2xls. ИМХО за это не возьмется никто ибо задача абсолютно нереальная. Да получится, сделать быстрее и лучше - вполне реально. Но для всех типов отчетов + скорость + точное соответствие виду... (а в xls вообще можно применять "слои" в документе)? Давайте прикинем... Мое мнение - один человекогод для такого проекта - весьма оптимистическая оценка. Программист с низкой квалификацией такую работу не сделает. Соответственно для Москвы 2000$ в месяц 25000$ за год. Если это не частное лицо, то минимум *2. Частное лицо, я думаю, тоже захочет какой-то коэффициент. Если не Москва, то все можно на 2 и поделить. Соответственно 25000-50000$ - оптимистические затраты на реализацию проекта. Я думаю, что на такие расходы никто просто так не пойдет с оплатой по факту. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 12:30 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
К тому же у вас противоречие в требованиях AVGritsenkoОплата по факту при результатах лучше чем "dw2xls" Возможен % от продаж заинтересованным клиентам ( а это весь круг пользователей приложений Powerbuilder ) т.е. я покупаю исходники dw2xls, несколько правлю их, чтобы было лучше и уже вправе требовать с вас денег? AVGritsenkoНужна скорость - десятки тысячи строк - за секунды и точное соответсвие внешнего вида для любых видов dw включая вложенные отчеты и графику. а это уже совсем другие требования. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 12:35 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
boogiman.... в том числе, хорошее знание VB. Да... Это круче китайской грамоты - практически импосибл :-). По сабжу есть некоторый опыт -имеется собственный вариант WYSIWYG для grid-а , Вот здесь я уже выступал как-то /topic/114801&pg=1&hl=zhv#927237 1) в принципе VB не понадобился – просто нужно пользовать функции Excel-а через OLE , а их удобнее отлаживать и смотреть как работают с помощью известной методы работы с макросами ; в проекте "dw2xls" сделано круче – напрямую работа с файлом Excel-я Надеюсь автор этого проекта Anatoly Moskovsky не обидится за повторение его ссылки http://www.sql.ru/forum/actualthread.aspx?tid=163701&hl=zhv#1360021 2) знание формат PSR … может и не нужно. В принципе можно считать , что это примерно равно Describe(datawindow.Syntax) + Describe(datawindow.data) . Исключение – композитные и nested отчеты – там много хитрее и геморройнее Важно - парсить синтакс – он достаточно нагляден. Но выяснилась странная вещь – огромная "тормознутость" строковых функций PowerBuilder – типа POS, MID… С такой скоростью для сложных datawindow (от полусотни datawindow.objects) – 10000 вызовов POS – это до десяти секунд. Пришлось писать отдельную dll-ку под API-вызов на С++ для строковых функций. Оказалось , что VC++ с PB работат глючно. Потратил время – Vatcom C++ из PB пакета версии 6.5 – нормально – разница в скорости раз в сто. Что бы это значило ? 3) проблема для free формы – нужно заниматься топологией – привязки "свободных координат" к "решетке" ячеек Excel –а . ИМХО – из-за допускаемых для DW перекрытий - иногда просто невозможно точное соответствие 4) отдельная и страшно неудобная тема – композитные отчеты . Есть относительно простой вариант грузить на разные листы Excel-a , но это не всегда приемлимо . Иначе – нужно снова заниматься расчетом топологий размещения разноформатных отчетов в единой сетке листа В общем заказчик "простил" мне композитные отчеты – я по жизни их "не люблю" :-) Лично меня давно интересовал вопрос - почему subj не озадачилась сама Sybase ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 12:37 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
ZhV4) отдельная и страшно неудобная тема – композитные отчеты . Есть относительно простой вариант грузить на разные листы Excel-a , но это не всегда приемлимо . Иначе – нужно снова заниматься расчетом топологий размещения разноформатных отчетов в единой сетке листа А Graph,N-Up,Rich Text еще делать. Graph-то тоже весьма и весьма не просто сделать... А всякие линии, овальчики прозрачности, один объект под другим. Брр... ZhVDescribe(datawindow.Syntax) + Describe(datawindow.data) Это с таким подходом все expression'ы нужно будет самому вычислять, можно несколько хитрее сделать, да и синтаксис, опять же не документирован + полноценный парсер тоже не так просто. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 12:48 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин МаркА Graph,N-Up,Rich Text еще делать. Graph-то тоже весьма и весьма не просто сделать... А всякие линии, овальчики прозрачности, один объект под другим. Брр.... Да забыл сказать - с графикой как таковой я вообще не занимался - не ставилась задача. В этой части - я пас. Могу предположить - что действительно - брр... Локшин Марк Это с таким подходом все expression'ы нужно будет самому вычислять, можно несколько хитрее сделать, да и синтаксис, опять же не документирован + полноценный парсер тоже не так просто. Не знаю – кому как ... Два программиста – три алгоритма . А в чем проблема сделать вот так ? lds.dataobject = "file_name.psr" И всё - можно отдельно извлекать синтакс и работать с данными. Выражения - как положено - через evaluate("col_name",row) . А как еще можно иначе ? Что такое полноценный парсер ? Просто последовательно разлагаешь на лексемы строку ls_synt = lds.Describe("datawindow.syntax") Что надо и понятно – x,y,width, font.height,dddwname... - используешь или при необходимости модифицируешь . Что непонятно - html.valueishtml - просто не трогаешь и оставляешь как есть . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 13:13 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
ZhVА в чем проблема сделать вот так ? lds.dataobject = "file_name.psr" И всё - можно отдельно извлекать синтакс и работать с данными. Выражения - как положено - через evaluate("col_name",row) . А как еще можно иначе ? Есть способы несколько быстрее. А то для каждого свойства для каждой строки evaluete - это не быстро... ZhVЧто такое полноценный парсер ? Просто последовательно разлагаешь на лексемы строку ls_synt = lds.Describe("datawindow.syntax") Ну вообще-то для однозначного разложения нужно полностью знать правила построения синтаксиса DataWindow (например БНФ). Там синтаксис сделан все таки не так, как в html - нашел тэг, знаешь - обрабатываешь, не знаешь - пропускаешь. Тут однозначно тег не так-то просто найти - а гарантировано - только зная полный синтаксис. До этих x,y и т.д. еще нужно добраться пропустив солидный кусок описания, а его нужно корректно пропустить, а не начать разбор с похожих конструкций внутри него. Можно все-же обойтись без такого рода проблем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 14:09 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
а зачем мучится делать такое теперь ? ведь новая версия офиса будет на базе XML, так что подождем ее и пусть все клиенты переходят на новую версию офиса ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 14:26 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин Марк ... Ну вообще-то для однозначного разложения нужно полностью знать правила построения синтаксиса DataWindow (например БНФ). Там синтаксис сделан все таки не так, как в html - нашел тэг, знаешь - обрабатываешь, не знаешь - пропускаешь. /topic/114801&pg=2&hl=zhv#928715 автоцитата Парсится и переносится в обьект описателя datawindow строка вида ls_syntax= dw.Describe("DataWindow.Syntax") Хранить такую "строку" (до 80 кб) можно и в файле-шаблоне , и в базе данных … и не одну. Она хорошо структурирована [тип_обьекта]( [имя_параметра]=[значение или выражение]…..) PB9 от PB6 отличается только номером в самом заголовке и наличием специальных [тип_обьекта] для выгрузку в xml и pdf. Но я такие режимы пока не ковырял - не было нужды. Отдельно и специально - [для тип_обьекта] = table - это есть описатель datasource column . Наверняка Sybase где-то спрятала аналогичный обьект где-то внутри private переменных - свойств datawindow . Может кто-то добрался или сможет это сделать ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 14:33 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
ZhV[тип_обьекта]( [имя_параметра]=[значение или выражение]…..) Этого для однозначного разбора - мало. Такая последовательность может встретится еще до начала описания объектов отчета. Нужно знать полный синтаксис, иначе можно ошибиться при разборе, а синтаксис разный! Перевод строки в комментариях выглядит как ~r~n а в описании объекта обычным кодом перевода строки. А мало ли что там в PowerSoft'е понапридумывали. Они намудрить любят. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 15:14 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин Марк Этого для однозначного разбора - мало. Такая последовательность может встретится еще до начала описания объектов отчета. Нужно знать полный синтаксис, иначе можно ошибиться при разборе, а синтаксис разный! Перевод строки в комментариях выглядит как ~r~n а в описании объекта обычным кодом перевода строки. А мало ли что там в PowerSoft'е понапридумывали. Они намудрить любят. Мне хватило… Вроде работает [значение или выражение] - может быть : 1) число или идентификатор (по назначению обьекта) - лексическая единица до первого пробела или скобки 2) строчное выражение – обязательно начинается и заканчивается символом (” ) - «двойные кавычки» ASCII-код 0x22 ; если внутри выражения есть необходимость разместить этот же символ – PB по умолчанию ставит перед ним маркер и записывает в строку в виде (~”) – просто нужно игнорировать это сочетание символов при поиске конца строчного выражения. Перевод строки – просто включается в выражение , за пределами лексем - игнорируется. Распарсенный описатель datawindow раскладывается в спец.обьект с более удобными для работы структурами . После необходимых обработок или модификаций – обратный процесс – сборка строки синтаксиса из структур обьекта . После выгребания кучи огрехов – достаточно стабильно работает без видимых проблем ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 15:33 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
А каким образом найти хотя бы первое вхождение [тип_обьекта]? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 16:00 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин МаркА каким образом найти хотя бы первое вхождение [тип_обьекта]? Проэкспортируйте и посмотрите в notepad синтаксис datawindow . Примерно так : release 9; datawindow(units=0 … ) header(height=136 color="536870912" ) . . . . table(column=(type=decimal(0) update=yes updatewhereclause=yes key=yes name=is_name1 dbname="TABLE.IS_NAME1" ) . . . . retrieve=" SELECT … " text(band=header alignment="2" text="????" … ) . . . . export.pdf(method=0 distill.custompostscript="0" xslfop.print="0" ) Итак первое вхождение – это всегда datawindow( …. ) Нужно выбрать и разложить всё что внутри скобок . После закрытия скобки – работа по данному обьекту закончена . Сканируем строку до следующиего обьекта – в данном случае " header" - всегда начинается с буквенного символа , символы перевода строк просто игнорирутся . Нужно учесть , что возможны вложенные описатели - главный и очень важный это table c вложенными column Ну примерно … и так далее … ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 16:16 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
ZhVНу примерно … и так далее … А если есть какие-либо секции, которые включаются в зависимости от условий или синтаксис внутри секций более хитрый? Не документировано, поэтому предположить можно все что угодно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 16:31 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин Марк А если есть какие-либо секции, которые включаются в зависимости от условий или синтаксис внутри секций более хитрый? Не документировано, поэтому предположить можно все что угодно... Что вы понимаете по словом " секция" ? Простейшие datawidow – это freeform и grid - опция processing = 0 и 1 соответственно Базовые обьекты это - table, header, detail, summary , footer – кажется всё . При наличии группировок – header.N/trailer.N – шапка и подвал группы , где N – ее номер Описатели визульных обьектов – column,compute и text . Есть еще для графики - но я их на память не помню , да и обработок над ними не делаю. Для более экзотических типов datawindow – CrossTab,N-Up, Label – есть еще свои специфические обьекты – тоже редко приходится иметь дело , но в принципе ничего сильно выпадающего из общей логики . Отдельно – nested и composite . Там в качестве обьекта появляется report - очень краткий описатель и ссылка на имя обьекта вложенного datawindow - и всё . Нужно искать тот обьект и парсить отдельно Я не возьмусь утверждать точно – но каких либо условных операторов или конструкций в стиле макросов времени исполнения dw.Create(ls_synt) не попадалось ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 17:01 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
авторЯ не возьмусь утверждать точно – но каких либо условных операторов или конструкций в стиле макросов времени исполнения dw.Create(ls_synt) не попадалось Так вот, не попадалось и будет работать корректно для всех вариантов синтаксиса DataWindow - это, как говорится, две большие разницы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 17:16 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин Марк Так вот, не попадалось и будет работать корректно для всех вариантов синтаксиса DataWindow - это, как говорится, две большие разницы. Будем решать проблемы по мере поступления ТЗ и оплаты :-) Я вообще-то не вижу жестокой необходимости в тотальном конверетере psr->xls Таблицы - уже есть в продаже Графики и диаграммы - лучше в pdf rtf - в Word ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 17:36 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
ZhVЛично меня давно интересовал вопрос - почему subj не озадачилась сама Sybase ? Кстати, вопрос интересный, и часть ответа, я думаю, можно найти в моих прикидках. Для США и Sybase это бы было, я думаю, раз в 5-10 дороже, даже с учетом китайского аутсорсинга. ZhVГрафики и диаграммы - лучше в pdf Дык в Excel'е то её больше хочется видеть, там тормально и поправить-перестроить то её потом можно будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 19:24 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
ZhVв проекте "dw2xls" сделано круче – напрямую работа с файлом Excel-я Надеюсь автор этого проекта Anatoly Moskovsky не обидится за повторение его ссылки Я не обижусь, тем более что я не автор :)) А настоящий автор - Андрей Никулица. ZhVЛично меня давно интересовал вопрос - почему subj не озадачилась сама Sybase ? А кстати вот и нет, они давно озадачились и даже приняли решение не делать встроенный экспорт один в один в Excel. См. список фич в очереди на реализации у Сайбейса - эта фича с пометкой "не планируется в ближайшие 2 версии" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 21:12 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
AVGritsenkoРазработка конвертора данных Powersoft Report -> Excel Предлагается разовая (для начала) работа Необходимо разработать хороший конвертер данных dw PowerBuilder или файлов Powersoft Report в Excel ( Word) Кто возьмется? Оплата по факту при результатах лучше чем "dw2xls" Возможен % от продаж заинтересованным клиентам ( а это весь круг пользователей приложений Powerbuilder ) Нужна скорость - десятки тысячи строк - за секунды и точное соответсвие внешнего вида для любых видов dw включая вложенные отчеты и графику. Рекомендую подождать до 2006Q3 (или около того) и дождаться выхода DW2XLS с драйвером записи в Excel написанном на C++. А еще ранее ожидается более полная поддержка композитных DW. Правда насчет изображений - ничего не могу сказать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 21:21 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин Маркт.е. я покупаю исходники dw2xls, несколько правлю их, чтобы было лучше и уже вправе требовать с вас денег? И тут же Desta будет вправе стребовать с кое-кого денег (даже фамилия известна) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.12.2005, 21:25 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyИ тут же Desta будет вправе стребовать с кое-кого денег (даже фамилия известна) Ой, ну можно без исходных текстов распространять, или на C/Delphi переписть :) Anatoly MoskovskyРекомендую подождать до 2006Q3 (или около того) и дождаться выхода DW2XLS с драйвером записи в Excel написанном на C++. А что так долго? Там работы то не слишком много... особенно если один в один переписывать. Я вот таким же образом свой экспорт в HTML собираюсь переписать, но все пока только примеряюсь :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 09:50 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Всем спасибо - типа дела дохлое А заказчик требует... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 10:52 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
AVGritsenko wrote: > А заказчик требует... Заказчику придётся привести свои пожелания в соответствие с реальностью . Posted via ActualForum NNTP Server 1.3 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 10:57 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин Марк Anatoly MoskovskyРекомендую подождать до 2006Q3 (или около того) и дождаться выхода DW2XLS с драйвером записи в Excel написанном на C++. А что так долго? Там работы то не слишком много... особенно если один в один переписывать. А как Вы определили что долго? Я же не говорил когда начнутся работы :)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 11:20 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky Рекомендую подождать до 2006Q3 (или около того) и дождаться выхода DW2XLS с драйвером записи в Excel написанном на C++. А еще ранее ожидается более полная поддержка композитных DW. Правда насчет изображений - ничего не могу сказать. Навряд ли драйвер записи в Excel написанный на C++ позволит кардинально увеличить скорость работы dw2xls. Основной тормоз вызван именно анализом Datawindow, получением значений данных и вычислением Expessions, а не скоростью формирования excel файлов. и тут уж ничего поделать нельзя... а что касается "Парсить PSR файл", то это из области фантастики... прийдется писать большую часть Powerbuilder ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 15:59 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Nikulitsa A.Основной тормоз вызван именно анализом Datawindow, получением значений данных и вычислением Expessions, Это можно существенно ускорить, по сравнению с dw2xls, достаточно красиво и как раз с ориентацией на внешнюю программу формирования итогового файла. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 16:09 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Nikulitsa A.Навряд ли драйвер записи в Excel написанный на C++ позволит кардинально увеличить скорость работы dw2xls. Основной тормоз вызван именно анализом Datawindow, получением значений данных и вычислением Expessions, а не скоростью формирования excel файлов. и тут уж ничего поделать нельзя... а что касается "Парсить PSR файл", то это из области фантастики... прийдется писать большую часть Powerbuilder Над обоими пунктами ведутся работы :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 16:17 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин Марк Nikulitsa A.Основной тормоз вызван именно анализом Datawindow, получением значений данных и вычислением Expessions, Это можно существенно ускорить, по сравнению с dw2xls, достаточно красиво и как раз с ориентацией на внешнюю программу формирования итогового файла. Интересно узнать как? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 16:24 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyИнтересно узнать как? Если будете использовать, то копией dw2xls поделитесь? :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 16:48 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин Марк Это можно существенно ускорить, по сравнению с dw2xls, достаточно красиво и как раз с ориентацией на внешнюю программу формирования итогового файла. Зачем писать крутой парсер *.psr допустим на С++ - только для того чтобы чуть-чуть быстрее кидать его в Excel ? Что вы еще сможете сделать с datawindow в среде С++ ? Придется тащить туда весь "движок" PB Это малоценный результат очень неслабой работы Зато умея парсить datawindow/datastore в PowerBuilder-е - можно получить кучу интересных возможностей ... У меня например первичной задачей было не экспорт в Excel - а допсервис по динамическому управлению и модификацией datawindow . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 17:00 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
ZhVПридется тащить туда весь "движок" PB Это малоценный результат очень неслабой работы Ничего не придется. ZhVЗато умея парсить datawindow/datastore в PowerBuilder-е - можно получить кучу интересных возможностей ... У меня например первичной задачей было не экспорт в Excel - а допсервис по динамическому управлению и модификацией datawindow . В этих случаях я либо DataWindow вообще с нуля создаю из пустой заготовки(при помощи modify), а когда модифицирую существующее, то пользуюсь describe/modify. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 17:06 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин Марк Anatoly MoskovskyИнтересно узнать как? Если будете использовать, то копией dw2xls поделитесь? :) Я думаю это возможно, если это действительно будет новая идея. Впрочем я ничего не могу обещать кроме того, что узнаю возможно ли это. А пока могу перечислить известные мне способы быстрого получения данных DW целиком - парсить результат GetFullState - парсить PSR - парсить DataWindow.Data, .XML, .HTML - парсить результат SaveAsAscii, SaveAs У Вас есть другой способ или реализован один из этих? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 17:25 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Anatoly MoskovskyУ Вас есть другой способ или реализован один из этих? Способ другой, не знаю что можно извлечь из GetFullState, но оснальные, по-моему должны быть медленнее. Идея такая. Данные получить легко, значения expression'ов то сложнее, особенно на свойства. Но вроде путь нащупал. Создаем computed field'ы с соответствующими expression'ами и фиксированными названиями (какие угодно, вплоть до evaluate). А дальше в массив типа mas[] = dw_1.object.computef_name.Primary и вперед во внешнюю dll'ку на обработку. Для интереса писал тестовый объект подобного рода. Скорость такая (на память) 2000 строк по 40 объектов вытаскивалось описание порядка 15 параметров для каждого объекта - занимало пару секунд. Могу выслать, как до дома доберусь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 17:40 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Локшин МаркСоздаем computed field'ы с соответствующими expression'ами и фиксированными названиями (какие угодно, вплоть до evaluate). А дальше в массив типа mas[] = dw_1.object.computef_name.Primary и вперед во внешнюю dll'ку на обработку. Для интереса писал тестовый объект подобного рода. Скорость такая (на память) 2000 строк по 40 объектов вытаскивалось описание порядка 15 параметров для каждого объекта - занимало пару секунд. Могу выслать, как до дома доберусь. Ну что же действительно хороший способ. Высылайте свой e-mail нам на dw2xls_support@desta.com.ua . На него пришлем полную версию DW2XLS. (Ну и пример кода нам тоже не помешает :) ) Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 16.12.2005, 20:01 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Марк, с указанного Вами адреса почта возвращается. Возможно это связано с тем, что почта с него перенаправляется еще куда-то, и один из конечных адресов недоступен (bounce получен с фидошного адреса). Сообщите нам, пожалуйста, получено ли письмо. Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.12.2005, 11:43 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Nikulitsa A.[quot Anatoly Moskovsky] Рекомендую подождать до 2006Q3 (или около того) и дождаться выхода DW2XLS с драйвером записи в Excel написанном на C++. [quot] Навряд ли драйвер записи в Excel написанный на C++ позволит кардинально увеличить скорость работы dw2xls. Основной тормоз вызван именно анализом Datawindow, получением значений данных и вычислением Expessions, а не скоростью формирования excel файлов. и тут уж ничего поделать нельзя... Кстати Андрюха, ты оказался неправ насчет того, что кардинально не ускорится. После замены драйвера экспорт ускорился в 5.5 раз. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.01.2007, 20:16 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky Nikulitsa A.[quot Anatoly Moskovsky] Рекомендую подождать до 2006Q3 (или около того) и дождаться выхода DW2XLS с драйвером записи в Excel написанном на C++. [quot] Навряд ли драйвер записи в Excel написанный на C++ позволит кардинально увеличить скорость работы dw2xls. Основной тормоз вызван именно анализом Datawindow, получением значений данных и вычислением Expessions, а не скоростью формирования excel файлов. и тут уж ничего поделать нельзя... Кстати Андрюха, ты оказался неправ насчет того, что кардинально не ускорится. После замены драйвера экспорт ускорился в 5.5 раз. Гм.. А этот вариант хоть в демке потрогать можно будет? А то именно тормоза достали :-((((( Если скорость поднимется НАСТОЛЬКО - сразу закупаем ;-)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2007, 09:01 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Vlad2005Гм.. А этот вариант хоть в демке потрогать можно будет? Конечно. Когда выйдет 3.1. В демке все тоже самое в т.ч. и скорость :) Выход планируется в феврале. А то именно тормоза достали :-((((( Если скорость поднимется НАСТОЛЬКО - сразу закупаем ;-)) Ну это только начало. В 3.2 планируется продолжить в том же духе :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.01.2007, 10:46 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Anatoly Moskovsky Vlad2005Гм.. А этот вариант хоть в демке потрогать можно будет? Конечно. Когда выйдет 3.1. В демке все тоже самое в т.ч. и скорость :) Выход планируется в феврале. А то именно тормоза достали :-((((( Если скорость поднимется НАСТОЛЬКО - сразу закупаем ;-)) Ну это только начало. В 3.2 планируется продолжить в том же духе :) Ок! Ждем-с. Маркетинговая политика от этого не изменится, надеюсь ;-)) ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2007, 08:47 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
Vlad2005Маркетинговая политика от этого не изменится, надеюсь ;-)) ? Вот, чего не знаю, того не знаю :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 30.01.2007, 10:55 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
ZhV Но выяснилась странная вещь – огромная "тормознутость" строковых функций PowerBuilder – типа POS, MID… С такой скоростью для сложных datawindow (от полусотни datawindow.objects) – 10000 вызовов POS – это до десяти секунд. Пришлось писать отдельную dll-ку под API-вызов на С++ для строковых функций. Оказалось , что VC++ с PB работат глючно. Потратил время – Vatcom C++ из PB пакета версии 6.5 – нормально – разница в скорости раз в сто. Народ, может кто поделиться примерами кода на Watcom C++ для реализации аналогов строковых функций PowerBuilder'a POS, MID... и т.д. ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 22:13 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
dGrichineНарод, может кто поделиться примерами кода на Watcom C++ для реализации аналогов строковых функций PowerBuilder'a POS, MID... и т.д. ?А учебник С почитать? strstr(), strcpy(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2007, 22:51 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
White OwlА учебник С почитать? strstr(), strcpy(). Спасибо! Как ни странно, но этой информации оказалось достаточно :) Странно другое, что с результаты сравнения функций Power++ и С++ оказались совсем не теми, которые описывал ZhV. Но, думаю, стоит это вынести в новую тему C++ClassBuilder ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2007, 11:48 |
|
||
|
Разработка конвертора данных Powersoft Report -> Excel
|
|||
|---|---|---|---|
|
#18+
может в dw2xls ввести кеширование для увеличения быстродействия? для вычисления expressions? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2007, 14:09 |
|
||
|
|

start [/forum/topic.php?all=1&fid=15&tid=1337319]: |
0ms |
get settings: |
9ms |
get forum list: |
16ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
57ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
83ms |
get tp. blocked users: |
1ms |
| others: | 213ms |
| total: | 396ms |

| 0 / 0 |
