Инструмент для помощи в рефакторинге базы кода force.com (переименование пользовательских объектов) - PullRequest
2 голосов
/ 18 апреля 2011

Нам нужно переименовать около 15 пользовательских объектов в force.com.

В Java это будет щелчок правой кнопкой мыши и займет около 20 минут, но с учетом количества запросов, классов, страниц,профили и т. д., которые используют этот объект, мы смотрим на неделю, две недели ... или болеелюбые взаимозависимости.

Force.com IDE, естественно, не поддерживает это.Какие-нибудь идеи / инструменты / подходы?

1 Ответ

3 голосов
/ 19 апреля 2011

Мы сделали это с двумя объектами, и это была королевская боль, я могу представить, что 15 представляет собой довольно сложную задачу. Как вы уже заметили, конструкции salesforce сильно взаимозависимы с перекрестными, даже круговые ссылки являются законными. Это, с другой стороны, делает демонтаж и модификацию ядра очень трудными и практически невозможными для автоматизации.

Вы можете сделать следующее:

  1. Используйте песочницу для модификаций, проведите инвентаризацию всех конструкций, используя затронутые объекты. Вы можете использовать Ctrl-H поиск по всему рабочему пространству в IDE
  2. В песочнице клонируйте эти 15 объектов в их соответствующие будущие имена, они будут пустыми, но кого это волнует песочница.
  3. Теперь, когда у вас есть объекты, переименуйте все упоминания во всех конструкциях. из # 1 использовать новые объекты
  4. Просто чтобы убедиться, что попробуйте удалить старые объекты из песочницы, это будет служить проверка вменяемости, что вы не пропустили ни одного зависимость.
  5. В нерабочее время удаляет весь инвентарь # 1 с рабочего сервера, оставляя только голые объекты с их данными
  6. Теперь, когда зависимости исчезли, переименуйте все 15 объектов
  7. В одном сеансе разверните весь измененный инвентарь из песочницы на производство, так как полезная нагрузка теперь использует новые имена объектов тесты должны пройти.

Не думаю, что на все это у вас уйдет больше дня.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...