|
|
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Работаем с PowerBuilder 10.5.2 Build 7564 Меняю динамически свойство Processing в DataWindow object с 1 на 0 . Т.е. перевожу Grid DW в Form DW . Двигаю столбцы, статик тексты. Смотрю привью: Код: plaintext Код: plaintext После печати, на экране нет никаких изменений. Это все наблюдается на тестовом, абсолютно пустом окне, в DW контрол тоже кода никакого нет. Если же руками в Edit Source поменять тип с Grid DW на Form DW и запустить тестовое окно, то все работает, как надо. Понятно, что согласно Help -у свойство Processing не должно меняться динамически. Но меня приперло - НАДО. А зачем? (с) Филипп Борюсь с печатью широких отчетов. Если отчет сделан на Form DW , то все нормально, ибо есть функционал, который расставляет данные, как нужно для печати. Grid DW печатался напрямую без нашего функционала, т.к. на экране виден идеальный отчет всегда, спасибо PB. Так вот, на широких отчетах стала сильно проявляться ситуация, когда при печати на принтер идет разбиение столбцов на границах страниц. Такое впечатление, что границы страницы в PB не совпадают с границами реальной бумаги, причем очень сильно. Иногда, разбивка отчета на границе страниц приходится, чуть ли не на середину реальной страницы. Вот и хочу перевести Grid DW в Form DW , подвигать столбцы, выровнять все и пустить на печать. А тут такая засада. Как динамически измененный Grid DW заставить работать, словно это Form DW ? Поменять все Grid DW отчеты на Form DW прямо в Edit Source - не прокатит. P.S.: Вчера работу работал 15 часов, сегодня столько же буду. Может, где-то туплю? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 14.09.2008, 17:47 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
А если не менять динамически а пересоздавать заново динамически измененное (в смысле сурса) ДВ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 09:28 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
urvasА если не менять динамически а пересоздавать заново динамически измененное (в смысле сурса) ДВ? Только нужно разобраться с retrieval arguments если таковые используются - иначе пропадут они. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 09:38 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
А куда они пропадут, если в сурсе они уже есть? По шагам, думаю, может выглядеть примерно так: 1.Меняем тип ДВ 2.Сохраняем сурс в переменную 3.Грохаем ДВ 4.Пересоздаём ДВ из нового сурса Ещё бы не забыть сохранить исходный сурс ДВ на предмет восстановления. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 09:44 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
urvasА куда они пропадут, если в сурсе они уже есть? По шагам, думаю, может выглядеть примерно так: 1.Меняем тип ДВ 2.Сохраняем сурс в переменную 3.Грохаем ДВ 4.Пересоздаём ДВ из нового сурса Ещё бы не забыть сохранить исходный сурс ДВ на предмет восстановления. И что? Перед печатью заново вызывать Retrieve(...)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 09:48 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
>>И что? Перед печатью заново вызывать Retrieve(...)? а shareData() нельзя? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 09:58 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
+/->>И что? Перед печатью заново вызывать Retrieve(...)? а shareData() нельзя? Е:сли посмотреть историю изменений в моей библиотеке экспорта в HTML то там есть такая строчка: Код: plaintext 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 10:22 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
ДВ можно и не грохать, а, например, скрывать. А вновь созданое шарить с ним и печатать. Просто весь смысл моего предложения - в создании ещё одного ДВ с "правильным" типом и его дальнейшей печатью. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 10:26 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
urvasДВ можно и не грохать, а, например, скрывать. А вновь созданое шарить с ним и печатать. Просто весь смысл моего предложения - в создании ещё одного ДВ с "правильным" типом и его дальнейшей печатью. А смысл моего предложения что нужно разбираться с retrieval arguments т.к. с ними насколько я помню будут проблемы и если шарить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 10:47 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
urvas - не прокатит. Я уже думал над этим. У меня там данные сосуться через GetFullState , т.к. перед печатью DW еще может и меняться хитрожопым образом. Помнишь, что некоторые значения, получаемые в рантайме с помощью Describe , возвращаются такими, какими они были в паинтере. Может еще чего-то есть а? До работы/Интернета доберусь только в среду. Хотелось бы прочитать какие-нибудь советы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 12:19 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Черный Дикарь urvas - не прокатит. Я уже думал над этим. У меня там данные сосуться через GetFullState , т.к. перед печатью DW еще может и меняться хитрожопым образом. Помнишь, что некоторые значения, получаемые в рантайме с помощью Describe , возвращаются такими, какими они были в паинтере. Может еще чего-то есть а? До работы/Интернета доберусь только в среду. Хотелось бы прочитать какие-нибудь советы. Ну так а что мешает после всех манипуляций получить синтаксис как Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 13:29 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
To Локшин Марк Я как раз об этом и говорил. На память не вспомню (она мне вечно с кем-то изменяет), но кажись, засада может быть с бандем, у которого стоит аутосаяз свойство. Ну и разное шаманство с передвижением обьектов или их созданием динамически. Думается мне, что DataWindow.Syntax возвратит, то что было в паинтере, до всех изменений. Хотя не проверял, но мое чувство мне подсказывает, что надо давить на ночальников, чтобы переделать гриды на форм. Хотя ХЗ, как они будут работать после этого... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 13:37 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
К тому же, использование GetFullState и SetFullState позволяют мне не париться над сортировкой, фильтрацией, данными и т.д. Любое пересоздание DW ведет к тому, что нужно руками (скриптом) все воссоздавать в этом новом динамически сгенеренном DW , плюс данные запихать надо будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 13:51 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Черный ДикарьДумается мне, что DataWindow.Syntax возвратит, то что было в паинтере, до всех изменений. Неее, это Вам неправильно думается. Вот насчет глюков каких - это может быть (но сам не сталкивался), но это уже в Sybase ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 13:56 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Локшин МаркНеее, это Вам неправильно думается. А Autosize у Detail band не свалиться? В DW натыканы функции, которые получают размер банда и передвигают другие объекты, в соответствии с данным размером. Я точно помню, что при попытки определить с помощью Describe размерчик такого детайла, получаешь первоначальное значение, установленное в Painter. Что будет в динамически сгенеренном DW? Не уверен, что ничего не собьется. Ну и плюсь куча траблов с фильтрами, сортировками. По-моему, достаточно геморройное решение... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 14:14 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
И еще, фактически у нас уже была реализация, когда в Print Preview окно передавалась ссылка на первоначальное DW. В Print Preview окне с помощью ShareData получали данные и отображалось, фактически, новое DW для просмотра. Пришлось отказаться от такой конструкции в пользу GetFullState и SetFullState , сразу снялись все проблемы по полному воссозданию первоначального DW в окне Print Preview ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 14:32 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Это ты в собственном коде запутался со своим GetFullState/SetFullState... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 15.09.2008, 18:31 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
ФилиппЭто ты в собственном коде запутался со своим GetFullState/SetFullState... А по подробнее можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2008, 13:04 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Black Savage ФилиппЭто ты в собственном коде запутался со своим GetFullState/SetFullState... А по подробнее можно? Можно. Раскрой глаза и ПОСМОТРИ на свой код :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2008, 18:37 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
To Филипп Слышь, юморист, а как ты будешь, используя DataWindow.Syntax и ShareData запихивать данные во вновь созданное DW без того, чтобы не делать ретрив вновь? Решение, должно работать не только для грида, но и для других типов DW. В противном случае, мне придется поддерживать две ветки кода. А там и так понаворочано столько, что половину можно было бы выкинуть... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2008, 18:49 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Речь выше шла об Crosstab DataWindow object ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2008, 18:54 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Black Savage ФилиппЭто ты в собственном коде запутался со своим GetFullState/SetFullState... А по подробнее можно? в какой момент ты делаешь SetFullState? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.09.2008, 19:12 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
To ЗоринАндрей Спасибо, Андрей, теперь я понял, на что намекал Филипп . To Филипп Это вовсе не то, о чем ты подумал. To All Приложил тестовый проект. Если есть у кого-нибудь время/желание, посмотрите на него. Добавьте какой-нибудь свой Grid DataWindow object со многими столбцами. Дополнительно, придется настроить коннект к базе + Construction event для dw_report . В open event окна есть код: Код: plaintext 1. 2. 3. 4. Поставьте здесь какой-нибудь столбец (etchgdate) и его заголовок (letchgdate_t). Так вот, как я писал выше, при печати, допустим в PDF, у меня смещение объектов etchgdate и letchgdate_t пропадает и DW возвращается в первоначальное состояние. Что это? Баг PowerBuilder 10.5.2 Build 7564 или ошибка ДНК? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2008, 10:05 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Парни, ну гляньте пример то мой. Я тут не могу другой билд поставить (политика безопасности такая), а посему нужна чья-то помощь. Ну, где там трабл то: в PowerBuilder или в моей ДНК? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2008, 16:36 |
|
||
|
Dynamically Grid DW to Form DW. What is a sexual difference?
|
|||
|---|---|---|---|
|
#18+
Black SavageПарни, ну гляньте пример то мой. Я тут не могу другой билд поставить (политика безопасности такая), а посему нужна чья-то помощь. Ну, где там трабл то: в PowerBuilder или в моей ДНК? после вызова dw.Print(...) слетает координата X у DW в котором сделан Modify и которое изначально создавалось как Grid. размер шрифта например не слетает. на DW которое создавалось как FreeForm изначально - ничего не слетает. на копии грида с исправленным через Edit Source Processing=0 - ничего не слетает. делаем выводы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.09.2008, 18:28 |
|
||
|
|

start [/forum/topic.php?fid=15&msg=35545290&tid=1336527]: |
0ms |
get settings: |
9ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
48ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
| others: | 13ms |
| total: | 169ms |

| 0 / 0 |

Извините, этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
... ля, ля, ля ...