AX 2012 R2 CU7 (6.2.1000.4501), в настройках (Администрирование системы/Настройка/Лицензирование/Конфигурация лицензии) выключен конф. ключ Главная книга - дополнительно/Консолидация (LedgerAdvConsolidations), потому что на проекте не предполагалось использовать консолидацию. После этого были созданы компании (записи в CompanyInfo), затем на тестовой разноске журнала ГК получается ошибка:
Код:
Поле "IsConsolidationCompany" в таблице "CompanyInfo" не было явным образом выбрано.
(S)\Data Dictionary\Tables\CompanyInfo\Methods\isConsolidationCompany - line 17
(S)\Classes\LedgerJournalTransUpdate\checkConsolidation - line 35
(S)\Classes\LedgerJournalTransUpdate\check - line 17
(S)\Classes\LedgerJournalTransUpdateCust\check - line 84
(S)\Classes\LedgerJournalTransUpdate\ledgerVoucherCheck - line 77
(S)\Classes\LedgerJournalCheckPost\checkJournal - line 405
(S)\Classes\LedgerJournalCheckPost\run - line 144
(C)\Classes\LedgerJournalCheck\main - line 49
(C)\Classes\FormFunctionButtonControl\Clicked
Круто, стандартный код не был переделан под то, чтобы проверять включенность конфигурационного ключа или хотя бы то, что значение поля было-таки выбрано из базы. Включаю конфигурационный ключ, синхронизируюсь, проверяю - ошибка сохраняется, в обозревателе продолжаю видеть в значении поля "Не извлечено". Это оказалось вполне логично с учетом того, что поля, привязанные к включенному конфигурационному ключу, были добавлены со значением по умолчанию null
Лечится это явным прописыванием значений в новые поля, но в целом ситуация неприятна: получается, даже если бы стандартный код работал корректно и все заранее проверял, то после включения конфигурационного ключа (скажем, решили-таки использовать консолидацию на уже работающей системе) можно огрести проблем из-за того, что значение по умолчанию у новых полей - не "пустое" значение для соответствующего базового типа, а null. Интересно, кто-нить еще с таким сталкивался, или это только мне так повезло?