Показать сообщение отдельно
Старый 30.01.2024, 15:48   #6  
sukhanchik is offline
sukhanchik
Administrator
Аватар для sukhanchik
MCBMSS
Злыдни
Лучший по профессии 2015
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,286 / 3494 (123) ++++++++++
Регистрация: 13.06.2004
Адрес: Москва
Цитата:
Сообщение от Logger Посмотреть сообщение
В принципе у нас похоже работало, но не во всем. Был сделан отдельный аос для пакетов на деве. Он же обслуживал бизнесконнекторы. На нем же шел сбор перекрестных ссылок. Все резко полегчало. Но иногда все равно случались проблемы.
Собственно первая грабля - не надо делать несколько АОСов на DEV-приложении. Ибо активная разработка часто требует рестарт АОСа и лишние АОСы - только добавляют проблем. Всякие там бизнес-коннекторы, SSRS-отчеты, Workflow и пакетники удобно отлаживать на отдельном приложении, на котором всегда гарантированно можно собрать CIL.
Т.е. делаем копию DEV -> DEV_CIL и на DEV_CIL уже можно и много АОСов и и всё, что хочешь. Правда надо помнить о том, то разработка в среде, где много АОСов имеет свои проблемы с кэшированием, поэтому для разработки проще, чтобы АОС был один.

Цитата:
Сообщение от Logger Посмотреть сообщение
Возможно потому, что мы не придерживались так строго вашего порядка . Возможно влияла компиляция на всех аосах (инструмент по сбросу кеша, когда по кнопке новые проект импортируется на каждом аосе тем самым прочищая там кеш исполнимого кода, выравнивая кеши без рестарта аосов). Сейчас мы к этому добавили триггер как последнюю контрольную точку. Пока все нормально.
Такой подход успешно работал в AX2009-й и то... вопрос сколько АОСов. Если АОСов под сотню - то ненакомпилируешься.
А в 2012 с появлением CIL такой подход имеет много ограничений (CIL-то не обновляется)

Цитата:
Сообщение от Logger Посмотреть сообщение
Касательно порядка действий, который вы предлагаете. Мне он кажется достаточно строгим и в то же время сложным, чтобы его легко нарушали на практике. Тут говори не говори : "Сюда ходи, туда не ходи, снег башка попадет, совсем мертвый будешь" - все равно сложно соблюдать столько ограничений. Кто-нибудь да нарушит. Да и нужно ли если теперь есть способ получше ? Мы же триггером сами бинарные недокументированные свойства не пишем, просто следим за ними и рубим транзакции (вместе с соединением к БД), которые собираются пакостить. Достаточно безопасный подход по врачебному принципу "Не навреди".
Не.. Вы хорошо решили ту проблему, которая перед Вами стояла - это ж здорово .
Я ж не говорю, что Ваш способ решения плох. Равно как и не предлагаю свой порядок. Просто есть статистика, что применение порядка такого, как у меня - проблем не возникает. А вот почему она не возникает и какой тут "снег башка попадет" - это уж я не знаю. Была бы проблема - пошел бы решать )
Цитата:
Сообщение от Logger Посмотреть сообщение
Кстати, в обычной работе в IDE сбор перекрестных ссылок нередко используется разными утилитами (HK Framework, разные примочки к EditorScripts Открыть в новом окне объект из кода итп) как раз там где идет разработка. Тоже получается может повреждаться тип таблицы ? Вот тебе и дыра.
Опять-таки - тоже из опыта. Утилиты используются, но проблем не возникает. Почему? Не знаю. Может быть из-за того, что ссылки собираются только по одному объекту.
Более того - я люблю проект компилировать с обновлением перекрестных ссылок. И тоже проблем не возникает.
Я могу лишь констатировать факт, что если я соберу в пакетнике перекрестные ссылки на всем приложении и начну после этого программировать без рестарта АОСа - то у меня скорее всего какой-то объект действительно разломается. "Но это не точно" (с)
__________________
Возможно сделать все. Вопрос времени