Miklix

Удаление юридического лица (счета компании) в Dynamics AX 2012

Опубликовано: 16 февраля 2025 г. в 11:01:17 UTC

В этой статье я объясню правильную процедуру полного удаления области данных/счетов компании/юридического лица в Dynamics AX 2012. Используйте ее на свой страх и риск.


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

Delete a Legal Entity (Company Accounts) in Dynamics AX 2012

Информация в этом посте основана на Dynamics AX 2012 R3. Она может быть верна или нет для других версий.

Примечание: существует реальный риск потери данных, если вы будете следовать инструкциям в этом посте. Фактически, речь идет именно об удалении данных. Как правило, вам не следует удалять юридические лица в производственных средах, только в тестовых или средах разработки. Использование этой информации осуществляется на ваш страх и риск.

Недавно мне поручили полностью удалить юридическое лицо (также известное как счета компании или область данных) из среды Dynamics AX 2012. Причина, по которой пользователь просто не сделал этого сам из формы «Юридические лица», заключалась в том, что она выдавала несколько уродливых ошибок о невозможности удалить записи в определенных таблицах.

После изучения я обнаружил, что нельзя удалить юридическое лицо, у которого есть транзакции. Это имеет смысл, поэтому очевидным решением было бы сначала удалить транзакции, а затем удалить юридическое лицо.

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

Процедура следующая:

  • Откройте AOT и найдите класс SysDatabaseTransDelete (в некоторых более ранних версиях AX он назывался просто «DatabaseTransDelete»).
  • Обязательно убедитесь, что вы в данный момент находитесь в компании, транзакции которой вы хотите удалить!
  • Запустите класс, найденный на шаге 1. Он попросит вас подтвердить, что вы хотите удалить транзакции. Опять же, убедитесь, что компания, о которой он спрашивает, является той, для которой вы хотите удалить транзакции!
  • Позвольте задаче работать. Это может занять довольно много времени, если у вас много транзакций.
  • После этого вернитесь в форму Администрирование организации / Настройка / Организация / Юридические лица. Убедитесь, что на данный момент вы не находитесь в компании, которую хотите удалить, так как вы не можете удалить текущую компанию.
  • Выберите компанию, которую хотите удалить, и нажмите кнопку «Удалить» (или Alt+F9).
  • Подтвердите, что вы хотите удалить компанию. Это также займет некоторое время, так как теперь удаляются все нетранзакционные данные в компании.
  • Устройтесь поудобнее, расслабьтесь и наслаждайтесь славой хорошо выполненной работы! :-)
Поделиться на BlueskyПоделиться на FacebookПоделиться на LinkedInПоделиться на TumblrПоделиться на XПоделиться на LinkedInЗакрепить на Pinterest

Миккель Банг Кристенсен

Об авторе

Миккель Банг Кристенсен
Миккель - создатель и владелец сайта miklix.com. Он имеет более чем 20-летний опыт работы в качестве профессионального программиста/разработчика программного обеспечения и в настоящее время работает на полную ставку в крупной европейской IT-корпорации. Когда он не ведет блог, то тратит свое свободное время на огромное количество интересов, хобби и занятий, что в некоторой степени отражается в разнообразии тем, освещаемых на этом сайте.