Показать сообщение отдельно
Старый 13.05.2013, 10:38   #1  
Romb is offline
Romb
Участник
Аватар для Romb
 
79 / 22 (1) +++
Регистрация: 06.01.2004
Простановка нового (замена старого) кода аналитики InventDimId в InventTrans
Добрый день!

AX 2009
Kernel 5.0.1500.3761
Appl 5.0.1500.2985
Solution RU HRP5 5.0.1500.2116.1

Есть некоторое количество записей в InventTrans (ура, их немного) у которых стоит несуществующий InventDimId, т.е. таблица InventDim не содержит записи с таким кодом. Не могу предположить точно все множество причин такой ситуации и ее последствий, но, как минимум, во многих формах из которых можно смотреть "Проводки лота" в этом случае проводки лота и не отображаются (обычно в запросах таких форм стоит Range на InventDimId) и отчеты тоже не всегда берут такие записи.

В основном это проводки от заказов на продажу (от накладных).

Вопрос простой - что нужно сделать, чтобы правильно проставить в InventTrans новый код аналитики?

Можно ли просто:
1. из CustInvoiceTrans взять InventDim()
2. потом inventDimNew = InventDim::findOrCreate(CustInvoiceTrans.inventDim())
3. потом InventTrans.InventDimId = inventDimNew.InventDimId
4. потом InventTrans.update() (или doUpdate())

Или вообще просто скопировать CustInvoiceTrans.InventDimId -> InventTrans.InventDimId?


Благодарю.