Цитата:
Сообщение от
Lankey
Есть голая VM для разработки. Я настроила Workspace , чтобы смотрел на нужный branch DevOPS , и c cделала GetLatest и refresh списка моделей.
Объясните, пожалуйста, как вы потом компилируете и почему?
1) ВСЕ модели разом + оnмечаете галку Build references packages
2) ВСЕ модели разом + оnмечаете галку Build only cross reference data (закладка Options)
3) Только модели ISV + потом клиентские
4) Одновременно ISV и клиентские
Также Отмечаете ли вы Synchronise database(закладка Options) или сихронизацию делаете потом отдельно , после компиляции? Навеное, отдельно логичнее, чтобы быстрее увидеть все ошибки компиляции. Да и вообще, что вы в Options отмечаете, если на то уж пошло?
Спасибо!
Опыт у меня правда более старых версий D365FO, тем не менее - скажу:
1. Собственно, если отмечать все модели разом - то смысла во флажке Build references packages нет. Смысл этого флажка в том, чтобы при компиляции не всех моделей заодно откомпилировать те модели, на которые ссылаются компилируемые модели. Т.о. при выборе всех моделей такой необходимости нет.
2. Да. Но с поправкой на замечание от fed.
3. Тут как раз можно воспользоваться флажком Build references packages, однако для ускорения я сначала билдил "родительские" модели - т.е. в данном случае ISV, а потом уже клиентские. Вместе у меня не всегда получался успешный билд - порядок компиляции моделей почему-то не всегда был очевиден системе. Но это может быть и поправлено уже.
Синхронизацию всегда запускал отдельно, потому что если вдруг билд завершался неудачно, то синхронизация не отрабатывала.
Вообще, с синхронизацией тут надо аккуратно при наличии реальных данных, потому что в лучшем случае система поругается, а в худшем - еще чего-то и подпортит. К примеру, есть клиентская БД, в которой добавлено поле в стандартную таблицу. У Вас стандартная D365FO, в которую добавлена клиентская модель, которая еще ни разу успешно не билдилась на Вашей виртуалке. Как должна отработать синхронизация? Она просто отработает по стандартной структуре и знать не будет про кастомное поле, которое может запросто удалить.
При регулярной разработке (т.е. не первом билде) синхронизацию я обычно также сразу не включал - это замедляет процесс билда. Однако в проектах по разработке прав доступа - эта галка просто жизненно необходима - т.к. никакие разрешения не меняются до тех пор, пока синхронизация успешно не отработает.