Проверялось на AX 2009, RU5, RU6, RU7
Существует проблема, при которой Аксапта 2009 не возвращает существование mapping'а для какой-либо таблицы, входящей в map. Это проявляется только в пакетном режиме на сервере (новый режим, появившийся в 2009). При просто выполнении на сервере, такого не происходит.
Подробности:
Есть некий код:
X++:
treeNode = infolog.getNode(UtilElementType::TableMap,
tableid2name(tablenum(VendInvoiceTrans)),
tablenum(CustVendInvoiceTrans));
Так вот - если выполнить этот код в пакетном режиме, в переменной treeNode будeт null, если же запустить в интерактивном - там будет экземпляр TreeNode.
Это не было бы так неприятно, если бы вышеприведенный код не был почти 1:1, использующимся в методе Global::mappingExists_RU, из-за чего данный метод при исполнении в пакетном режиме, никогда не возвращает true.
Но и это - не самая крупная проблема.

Настоящие проблемы начинаются, когда при пакетной разноске накладных в методе CustVendInvoiceTrans.initFromTaxWorkTrans_RU в результате некорректной работы метода mappingExists_RU, не заполняются поля TaxAmountMST_W (Сумма налога в валюте), vatAmountMST_RU (Сумма НДС), ExciseAmountMST_RU (Сумма акциза) в строках накладных, и далее, ессно, в строках счетов-фактур по этим накладным. В результате, когда формируем книгу покупок/продаж по этим с/ф, возникают еще одни проблемы.
В прилагаемом классе воспроизведена подобная ситуация. Желающим проверить могу посоветовать запустить его интерактивно, и в пакете, и посмотреть на разницу в выдаваемых сообщениях.
Варианты решения разнообразны, думаю, не стоит их приводить. Еще советовал бы проверить уже существующие обработки, работающие в пакетном режиме, на использование данных методов.