powered by simpleCommunicator - 2.0.51     © 2025 Programmizd 02
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / LibraryExport и Datawindow.Syntax
13 сообщений из 13, страница 1 из 1
LibraryExport и Datawindow.Syntax
    #36349416
bumsy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
PB 9.0.3 8836

Вечный вопрос, почему так?
Функция LibraryExport у DW возвращает одно, а <DW_control>.Describe('DataWindow.Syntax') для того же самого DW другое. Как же получить тот же syntax ? :)

Задача - пройтись в скрипте по библиотеке pbl, сделать LibraryExport для всех dw, поменять скажем цвет ячеек на другой, затем через LibraryImport засунуть все обратно. Для LibraryImport нужно подсунуть syntax датавинды, который никак кроме как через describe (см. выше) нельзя взять. И в результате сурс импортированной датавинды кардинально меняется, хотя вид датавинды и функционал остается тот же... например вместо этого
Код: plaintext
1.
2.
3.
text(band=header alignment="0" text="Статус документа" border="6" color="0" x="7762" 
y="8" height="112" width="329" html.valueishtml="0"  name=sfm_stat_t visible="1"  
font.face="Arial" font.height="-8" font.weight="400"  font.family="2" font.pitch="2" 
font.charset="0" background.mode="2" background.color="67108864" )
имеем
Код: plaintext
1.
2.
3.
text(name=sfm_stat_t visible="1" band=header font.charset="0" font.face="Arial" 
font.family="2" font.height="-8" font.pitch="2" font.weight="400" background.mode="2" 
background.color="67108864" color="0" alignment="0" border="6" x="7762" y="8" height="112" 
width="329" text="Статус документа" )
... вроде те же самые свойства, но разным текстом
Проблема в том, что используется система контроля версий, и хрен найдешь различия при просмотре изменений между двумя ревизиями.

Как же получить syntax DW control'a в том же формате, что его генерит PB IDE и LibraryExport?

Кстати, если сделать измение в среде PB у хитрожопого DW и сохранить, то формат опять станет стандартный.

P.S. Сайбез специально так сделал, чтобы никто не посягал на редактор датавинды ? :)
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36349427
VanoR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
оставьте все как есть, а в Constructor-е DW_control извращайте dw-syntax как хотите...
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36349517
Фотография Dmitry.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно посмотреть на эту тулзню:
http://www.sql.ru/Forum/actualthread.aspx?tid=99893#744666

другой вариант - установить pbnative source control для workspace
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36349574
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторКак же получить тот же syntax ? :)
Из DW или DS никак.

Вашу задачу надо решать непосредственной работой со строкой синтаксиса не применяя его к DW.
Здесь есть пример как автоматизировать это.
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36351730
bumsy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Суть задачи - менять в общем любые свойства у объектов датавинды, все что можно менять через dw_control.Modify(''). Ибо в этом случае, сама функция Modify заботится о сурсе датавинды.
Вариант с правкой самого исходного сурса датавинды представляется слишком трудоемким для реализации... ибо не все очевидно. Например, если нужно у Колонки в датавинде проставить свойство edit.Mask, то нужно добавить это свойство в сурс, а не изменить что-то существующее в сурсе.
Ваш вариант Anatoly я так понял, именно меняет существующие свойства через perl-скрипт.

VanoRоставьте все как есть, а в Constructor-е DW_control извращайте dw-syntax как хотите...Дык, достаточно изменить syntax один раз и сохранить его в библиотеке, а не каждый раз при построении :)

Dmitryможно посмотреть на эту тулзню:
http://www.sql.ru/Forum/actualthread.aspx?tid=99893#744666

другой вариант - установить pbnative source control для workspacePBNative не ведет историю изменений объектов. Не очень понял смысл тулзни для моей задачи :)

Anatoly MoskovskyИз DW или DS никак. Cкотина все-таки этот PowerBuilder, в который раз уже натыкаешься на его ограничения.
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36352246
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я вас уверяю, достаточно легко написать на PB свой аналог ф-и modify работающий непосредственно с синтаксисом (по крайней мере ту часть где работа со свойствами) .
Для этого пишется:
- парсер DW в синтаксическое дерево (грамматика DW очень простая)
- добавление/модификация свойств, как узлов дерева
- обратное преобразование из дерева в синтаксис
Я бы это с нуля сделал за 3 дня.
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36352943
Dmitry..
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а я-бы за 2 ;-)
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36352967
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
А я бы из-за "такта"( т.е. минус 1 нота).
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36352992
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Зато у меня толще
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36354877
bumsy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
И отлаживаться еще пару месяцев.
Имхо, генерить синтакс датавинды вручную - это неблагадарное занятие. Пусть это делает Сайбез, он за это денег получает... :)
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36355134
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
bumsyИ отлаживаться еще пару месяцев.
Фигня. 3 дня с отладкой. Чистого кодирования тут на 4 часа.
Имхо, генерить синтакс датавинды вручную - это неблагадарное занятие. Пусть это делает Сайбез, он за это денег получает... :)
Я бы не доверял системный код компании которая после покупки PB умудрилась снизить производительность компилятора в 7 раз
Код: 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.
PB version: Import time
5.0.0.0: 00:00:07
5.0.3.35: 00:00:08
5.0.4.76: 00:00:12
6.5.0.1163: 00:00:14
7.0.1.6012: 00:00:14
7.0.2.9025: 00:00:14
8.0.2.9626: 00:00:45
8.0.3.9704: 00:00:48
9.0.1.6533: 00:00:46
9.0.2.7509: 00:00:48
9.0.2.7578: 00:00:47
9.0.2.7661: 00:00:47
9.0.3.8004: 00:00:47
9.0.3.8511: 00:00:48
9.0.3.8565: 00:00:48
10.0.0.4500: 00:00:47
10.0.1.5502: 00:00:45
10.0.1.6044: 00:00:44
10.2.0.7516: 00:00:46
10.2.0.8100: 00:00:47
10.2.1.9004: 00:00:45
10.5.0.4500: 00:00:46
10.5.0.5034: 00:00:48
10.5.0.5063: 00:00:46
10.5.0.5079: 00:00:46 
И не известно еще, что там в 11 и 12 :)
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36355813
Dim2000
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Anatoly Moskovsky пишет:

> 7.0.2.9025: 00:00:14
> 8.0.2.9626: 00:00:45

Интересно, что они сотворили в 8-й версии?
Posted via ActualForum NNTP Server 1.4
...
Рейтинг: 0 / 0
LibraryExport и Datawindow.Syntax
    #36356375
Фотография Anatoly Moskovsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dim2000
Anatoly Moskovsky пишет:

> 7.0.2.9025: 00:00:14
> 8.0.2.9626: 00:00:45

Интересно, что они сотворили в 8-й версии?

Наверно уволили предыдущую команду разработчиков и наняли сами знаете кого и из каких стран :)
...
Рейтинг: 0 / 0
13 сообщений из 13, страница 1 из 1
Форумы / PowerBuilder [игнор отключен] [закрыт для гостей] / LibraryExport и Datawindow.Syntax
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]