Настройка PowerBuilder IDE для SCC - PullRequest
2 голосов
/ 25 марта 2010

Наше приложение PowerBuilder довольно большое и содержит множество объектов в нескольких PBL для организации нашего кода. У нас часто 10 или более окон данных в одном окне, и эти окна данных могут быть распределены по двум или трем PBL. Для контроля версий мы используем эксклюзивную проверку, чтобы избежать конфликтов слияния.

Ситуация такова, что когда вы щелкаете правой кнопкой мыши на объекте datawindow из окна Painter, вы получаете контекстное меню с такими параметрами, как «Сценарий» и «Свойства» и «Изменить окно данных ...». Мы хотели бы добавить один для «Check-out ...», чтобы избежать необходимости искать окно данных в нескольких PBL.

Буду очень признателен за любые идеи о том, как это сделать или что-то подобное.

Ответы [ 4 ]

2 голосов
/ 25 марта 2010

Я думаю, что лучшее, что вы можете сделать, - это создать временную библиотеку в верхней части списка библиотек, найти свои окна данных, перейдя к ним через «Изменить окно данных ...», затем сохранить их во временной библиотеке и, наконец, используя инструменты вашей системы контроля версий, чтобы найти их по имени и заблокировать.

Еще одна хитрость, которую я использую, - снять флажок в опциях управления исходным кодом, который очищает файлы .srd и т. Д., А затем с помощью инструментов поиска вашей операционной системы найти их по имени файла (поскольку Powerbuilder по-прежнему поддержка поиска объектов по имени ...). Конечно, если у вас мало объектов, и если у ваших объектов не много ссылок, вы всегда можете использовать поиск Powerbuilder ... но кого вы знаете в этой удачной позиции? !!

1 голос
/ 26 марта 2010

Я делаю это, щелкая правой кнопкой мыши и выбирая Изменить окно данных. Когда художник открывается, вы можете просто прочитать PBL из названия художника. Затем закройте средство рисования DataWindow, чтобы PB позволил вам проверить DataWindow. Для более общего случая обнаружения произвольного объекта пользователя используйте метод Терри PBL Peeper.

1 голос
/ 26 марта 2010

Я думаю, что вы столкнулись с проблемой, с которой сталкиваются многие люди, которая проходит через лазейку в PB, которая позволяет вам начать редактирование DataWindow без предупреждения, чтобы вы его проверили.К сожалению, насколько мне известно, нет способа подключиться к контекстному меню.

Однако вы можете подключиться к элементам панели инструментов.Если бы это было так, как я хотел, и у меня было достаточно свободного времени, я бы написал приложение, которое я запустил бы с панели инструментов, и вот что он будет делать:

  • Найтиокно PowerBuilder с интерфейсами API
  • Найти текущий лист в PB
  • Получить имя объекта из заголовка
  • Получить текущее приложение (реестр или PB.INI, в зависимости отверсия PB, и может потребовать сначала получить рабочее пространство, затем текущую цель)
  • Получить список библиотек (PB.INI или целевой файл)
  • Выполнить LibraryExport () для объектаэто открыто
  • Найти все элементы управления DataWindow (это может включать просмотр предков для определения типов элементов управления)
  • Идентифицировать объекты данных для этих элементов управления (опять же, вам может понадобиться посмотреть на предков)
  • Используйте LibraryDirectory (), чтобы получить список всех объектов во всех PBL
  • Найти PBL объектов данных
  • Поднять окно со списком объектов данных и их PBL

OTOH, если я чad PBL Peeper (и, да, это предвзятый совет), я бы

  • запустил значок "PBL Peeper (Просмотреть текущее приложение)" на моем рабочем столе (ОК,это ложь;Я бы уже открыл PBL Peeper и просто переключился бы на страницу обзора)
  • Ctrl-Q (для QuickFind) и начал бы вводить имя объекта (если вы сделаете паузу, он найдет частичное совпадение начто вы ввели)
  • Нажмите [Enter] один раз, чтобы принять выбор QuickFind
  • Нажмите [Enter] еще раз, чтобы развернуть объект
  • Найдите нужный элемент управления DataWindow и RMB
  • Выберите «Перейти к стандартному окну данных»
  • Если в микропомощи библиотека и имя не отображаются (прошло много времени с тех пор, как я выпустил версию, и яне могу отследить, что находится в выпущенной версии), найдите элемент панели инструментов «Вверх», чтобы перейти к PBL

Я знаю, что это не дает проверки, но это делает «избежать необходимостиохота за окном данных в нескольких PBL ".И, вероятно, вы можете достичь этого быстрее, чем мое первое предложение.

Удачи,

Терри

0 голосов
/ 01 апреля 2010

Вы можете отделить организацию PBL, используемых для разработки, от тех, которые используются для развертывания.

Пока имена PBL не конфликтуют между двумя представлениями в исходном коде. Файлы PBG, зарегистрированные в системе контроля версий, не будут засорять друг друга.

Недостатком является то, что при добавлении или удалении новых объектов вам необходимо будет обновить оба местоположения.

Я бы создал PBL только для окна данных со всеми связанными объектами и поместил бы их в одну цель. Когда я работал с этой подсистемой или отчетом, я мог тогда проверить все объекты в одной библиотеке.

...