на самом деле, в АХ 2009 уже это изменили следующим образом - 2 проверки,
X++:
if (InventTrans::transactionsExist(this.ItemId))
return checkFailed(strfmt("@SYS120463",this.ItemId));
if (InventItemPrice::costPricesExistForItem(this.ItemId))
return checkFailed(strfmt("@SYS126703",this.ItemId));
где метки, соответственно, значат:
Цитата:
The inventory unit for item %1 cannot be changed because transactions exist. If the transactions cannot be deleted you will need to use a new item number with a new inventory unit.
и
Цитата:
The inventory unit for item %1 cannot be changed because activated cost prices exist. The cost prices can only be deleted by deleting the item.