Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / PowerBuilder Новый топик    Ответить
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
 DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
DW2XLS 2.0 beta с поддержкой вложенных DW доступна для тестирования.
Скачать можно здесь http://www.desta.com.ua/dw2xls/index_ru.html

Добавлена поддержка типа Composite и nested dw для типов DW: Composite, Free Form, Tabular
25 мар 05, 12:46    [1414908]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
А как количество строк в nested считается, особенно если оно равно 0?
25 мар 05, 14:24    [1415401]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
Я не совсем понял вопрос.
Но на всякий случай отвечу: GetChild, затем RowCount(). :-)

ЗЫ. Если что-то не работает, шлите репорты в саппорт dw2xls_support@desta.com.ua
25 мар 05, 14:36    [1415474]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
Anatoly Moskovsky
Я не совсем понял вопрос.

Анатолий Composite <> nested !
Так оно nested поддерживает или нет (пока самому времени проверить нет)?
25 мар 05, 16:16    [1416001]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
Поддерживаются nested DW не только в Composite, но и в Freeform (Tabular), в т.ч. с nested, где в каждой строке parent свой набор строк nested.

А первоначальный вопрос мне так и остался непонятен.
25 мар 05, 16:27    [1416054]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
Anatoly Moskovsky
Поддерживаются nested DW не только в Composite, но и в Freeform (Tabular), в т.ч. с nested, где в каждой строке parent свой набор строк nested.

А первоначальный вопрос мне так и остался непонятен.

В таком случае GetChild вернет -1, советую заглянуть в help
help
Provides a reference to a child DataWindow or to a report in a composite DataWindow, which you can use in DataWindow functions to manipulate that DataWindow or report.
25 мар 05, 16:47    [1416154]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
Anatoly Moskovsky
А первоначальный вопрос мне так и остался непонятен.

И вообще Анатолий, вспоминайте, мы с вами про это пять лет назад говорили. Нельзя же все сразу забывать :).
Кстати, ничего работающего Вы по этому вопросу тогта так и не предложили...
25 мар 05, 16:58    [1416222]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
Поверь мне, все работает. Я предпринял ряд усилий для этого.
25 мар 05, 16:59    [1416224]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
Тогда не было стимула искать нужный способ обмана PB :))

А сейчас я подустал от руководящей работы, поэтому оттянулся на кодировании по полной. Теперь можно снова поруководить :)
25 мар 05, 17:04    [1416250]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
Не знаю, можно ли в support там писать не зарегистрированным пользователям, поэтому напишу сюда :). Взял для примера демонстрационную программу для экспорта со своего сайта (ExpExamp на PB6). Шлепнул туда кнопку для экспорта. На композите падает билдер, на вложенных отчетах создается файл, на который Excel ругается - неверный формат файла. Для других версий качать и смотреть было лень. Так что заценить пока не получилось...
26 мар 05, 14:24    [1417363]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
Локшин Марк
Не знаю, можно ли в support там писать не зарегистрированным пользователям, поэтому напишу сюда :).
Не можно, а нужно :)

Взял для примера демонстрационную программу для экспорта со своего сайта (ExpExamp на PB6). Шлепнул туда кнопку для экспорта. На композите падает билдер, на вложенных отчетах создается файл, на который Excel ругается - неверный формат файла. Для других версий качать и смотреть было лень. Так что заценить пока не получилось...
А простое DW (без nested) например GRID нормально экспортируется?
Если нет, то с предыдущей версией DW2XLS все работало нормально?
Какой билд PB6 ?
26 мар 05, 15:10    [1417401]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
Anatoly Moskovsky
А простое DW (без nested) например GRID нормально экспортируется?
Если нет, то с предыдущей версией DW2XLS все работало нормально?

Да, первые три DataWindow из примера экспортируются бер проблем (tabular, group и crosstab).
Anatoly Moskovsky
Какой билд PB6 ?

6.0.00 без патчей (что нашлось :) )
26 мар 05, 18:30    [1417633]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
На 9, кстати, работает...
26 мар 05, 18:39    [1417639]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
Анатолий, ну не работает же. Если вам интересно, то возьмите мой пример и добавьте в таблицу Parts одну строку (любую заполненную). Затем сформируйте вложенный отчет и попробуйте его сэкспортировать:
Invalid DataWindow Row/Column specified at line 33 in function of_getvalue_ds of object n_drw_field.
Впрочем, как я и подозревал...
26 мар 05, 18:46    [1417644]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
Значит так и запишем: на 9 работает, на 6 - не работает.
Если удастся повторить, то будем пытаться обойти.

PS. Я бы не стал в PB 6.0 использовать PBL, скомпилированную в PB6.5.1
26 мар 05, 20:54    [1417737]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
Anatoly Moskovsky
Значит так и запишем: на 9 работает, на 6 - не работает.
Если удастся повторить, то будем пытаться обойти.

PS. Я бы не стал в PB 6.0 использовать PBL, скомпилированную в PB6.5.1

Возможно я не совсем корректно выразился, но Вы все не так поняли. В 6.0 билдер вылетает с GPF или делает какой-то неудобоворимый файл xls.
В 9 работает, но ЕСЛИ В NESTED REPORT ОКАЗЫВАЕТСЯ 0 СТРОК, то вылетает и в 9!!! С сообщением:
Invalid DataWindow Row/Column specified at line 33 in function of_getvalue_ds of object n_drw_field.
Понимаете к чему я клоню? Очевидно ваш метод определения количества строк в nested report не работает для количества строк равного 0. Так каким методом вы пользуетесь?
26 мар 05, 22:05    [1417793]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
Локшин Марк
Anatoly Moskovsky
Значит так и запишем: на 9 работает, на 6 - не работает.
Если удастся повторить, то будем пытаться обойти.

PS. Я бы не стал в PB 6.0 использовать PBL, скомпилированную в PB6.5.1

Возможно я не совсем корректно выразился, но Вы все не так поняли. В 6.0 билдер вылетает с GPF или делает какой-то неудобоворимый файл xls.

Только что в PB 6.5.1.1163 проверил - GPF нет. Проверял так:
- скачал Ваш пример (expexamp.zip expthtml.zip expttext.zip velm.zip winapi.zip), распаковал в одну папку и настроил ODBC.
- произвел Full Rebuild
- подключил в список dw2xlsdemo_pb6.pbd (переименованную в pbl)
- добавил кнопку на форму с кодом
uf_save_dw_as_excel(dw_1, "report.xls")
- запустил, выбрал Вложенный, выполнил экспорт, создался правильный файл

GPF скорее всего был вызван несоответствием версий PB.


В 9 работает, но ЕСЛИ В NESTED REPORT ОКАЗЫВАЕТСЯ 0 СТРОК, то вылетает и в 9!!! С сообщением:
Invalid DataWindow Row/Column specified at line 33 in function of_getvalue_ds of object n_drw_field.
Понимаете к чему я клоню? Очевидно ваш метод определения количества строк в nested report не работает для количества строк равного 0. Так каким методом вы пользуетесь?

Подтверждаю. Если в Ваш отчет вставить строку без вложенных строк, то возникает действительно указанная ошибка, хотя на моих тестовых примерах с нулевым кол-вом вложенных строк все работало.
Значит есть на чем баг отловить - это уже 90% решения проблемы.
Думаю что в понедельник, когда я доберусь до исходников проблема закроется.
Спасибо за тестирование!

PS. А насчет методов определения кол-ва строк в nested для 0 или не 0 строк: так нет никакой разницы, сколько там строк, RowCount() он и в Африке RowCount(). Ошибка не в этом коде.
27 мар 05, 01:32    [1417925]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
Так как этот форум не место для переписки с сапортом (которым я вобщем-то даже не являюсь :-), предлагаю перейти в личную почту avm@sqlbatch.com
27 мар 05, 01:43    [1417935]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
Anatoly Moskovsky
PS. А насчет методов определения кол-ва строк в nested для 0 или не 0 строк: так нет никакой разницы, сколько там строк, RowCount() он и в Африке RowCount(). Ошибка не в этом коде.

Да, я кажется догадался как это сделано... :)
27 мар 05, 16:06    [1418193]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
E-doc
Member

Откуда:
Сообщений: 143
Локшин Марк
Anatoly Moskovsky
PS. А насчет методов определения кол-ва строк в nested для 0 или не 0 строк: так нет никакой разницы, сколько там строк, RowCount() он и в Африке RowCount(). Ошибка не в этом коде.

Да, я кажется догадался как это сделано... :)
Если это не очень секретная информация, типа "ноу-хау" и т.п., то может поделитесь методом манипуляции nested report или хотя бы направлением куда думать? Обещаю не писать конкурента для DW2XLS.
28 мар 05, 08:15    [1418610]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Локшин Марк
Member

Откуда: Воронеж
Сообщений: 3154
Собственно говоря, часть идеи здесь уже проскакивала, но поскольку Анатолий так настойчиво говорил про GetChild(...), то это заставило несколько задуматься...
Вкрацее что-то типа этого:
string s
long ll_rc,i
DataWindowChild dwch


s=dw_1.Describe("DataWindow.Processing")
dw_1.Modify("DataWindow.Processing=5")
ll_rc = dw_1.RowCount()
for i = 1 to ll_rc
  dw_1.GetChild("ds_nested_items",dwch)
  MessageBox("",dwch.RowCount())
  dw_1.RowsMove(1,1,Primary!,dw_1,ll_rc + 1,Primary!)
next

dw_1.Modify("DataWindow.Processing=" + s)
Было бы более надежно переносить в Filter!, но после такой операции он у меня не все строки в nested отчетах отображает. Т.е. как всегда - в своем репертуаре.
E-doc
Обещаю не писать конкурента для DW2XLS

А я с ним накак и не связан :)
28 мар 05, 09:28    [1418681]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
А, так Вы о том как GetChild сделать.
Я пришел к такому же способу :)
28 мар 05, 11:40    [1419045]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
E-doc
Member

Откуда:
Сообщений: 143
Локшин Марк
Вкрацее что-то типа этого:
string s
long ll_rc,i
DataWindowChild dwch


s=dw_1.Describe("DataWindow.Processing")
dw_1.Modify("DataWindow.Processing=5")
ll_rc = dw_1.RowCount()
for i = 1 to ll_rc
  dw_1.GetChild("ds_nested_items",dwch)
  MessageBox("",dwch.RowCount())
  dw_1.RowsMove(1,1,Primary!,dw_1,ll_rc + 1,Primary!)
next

dw_1.Modify("DataWindow.Processing=" + s)

Было бы более надежно переносить в Filter!, но после такой операции он у меня не все строки в nested отчетах отображает. Т.е. как всегда - в своем репертуаре.
Н-да... интересный подход, спасибо большое. То есть получается, что обрабатывается всегда nested report для первой строки, которая потом переносится в конец списка. А будет ли это работать, если nested report находится в header или footer группы? Наверно придется модифицировать скрипт для использования FindGroupChange и переносить уже несколько записей, т.е. группу целиком. Надо попробовать на досуге...
28 мар 05, 13:52    [1419567]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Anatoly Moskovsky
Member

Откуда: Odessa
Сообщений: 6610
Ошибка
ЕСЛИ В NESTED REPORT ОКАЗЫВАЕТСЯ 0 СТРОК, то вылетает и в 9!!! С сообщением:
Invalid DataWindow Row/Column specified at line 33 in function of_getvalue_ds of object n_drw_field.

исправлена
http://www.desta.com.ua/dw2xls/index_ru.html

Просьба слать багрепорты на dw2xls_support@desta.com.ua
Спасибо всем за тестирование!
28 мар 05, 17:14    [1420622]     Ответить | Цитировать Сообщить модератору
 Re: DW2XLS: поддержка Nested DW  [new]
Андрей Кукушкин
Member

Откуда:
Сообщений: 1
Anatoly Moskovsky
Тогда не было стимула искать нужный способ обмана PB :))

А сейчас я подустал от руководящей работы, поэтому оттянулся на кодировании по полной. Теперь можно снова поруководить :)

Ничего себе! Руководитель фирмы занимаеться кодировкой. Можно узнать, сколько у вас в подчинении человек?
7 апр 05, 12:45    [1448339]     Ответить | Цитировать Сообщить модератору
Топик располагается на нескольких страницах: [1] 2 3   вперед  Ctrl      все
Все форумы / PowerBuilder Ответить