29.04.2008, 12:19 | #1 |
Участник
|
Версии спецификации и метод InventTable.insertBOMTable()
Сразу скажу, что спецификации знаю весьма поверхностно - поэтому и есть некоторые сомнения относительно того, что удалось найти.
В ходе сравнения приложений разных версий обнаружилось «незначительная» разница в методах InventTable.insertBOMTable() для версии приложения 3.0 SP3 и 3.0 SP5, а также последующих версий. Разница заключается в интерпретации состояния конфигурационного ключа BOMVersion - если в SP3 код выглядит (с некоторыми купюрами) так: X++: server void insertBOMTable() { BOMTable BOMTable; BOMVersion BOMVersion; if (! this.inventItemType().canHaveBOM()) return; if (!isConfigurationKeyEnabled(configurationkeynum(BOMVersion))) return; BOMTable.initFromInventTable(this); // ... BOMTable.insert(); BOMVersion.initFromInventTable(this); BOMVersion.initFromBOMTable(BOMTable); // ... BOMVersion.insert(); } X++: server void insertBOMTable() { BOMTable BOMTable; BOMVersion BOMVersion; if (! this.inventItemType().canHaveBOM()) return; if (isConfigurationKeyEnabled(configurationkeynum(BOMVersion))) return; BOMTable.initFromInventTable(this); // ... BOMTable.insert(); BOMVersion.initFromInventTable(this); BOMVersion.initFromBOMTable(BOMTable); // ... BOMVersion.insert(); } Объясните кто-нить, где именно была ошибка: в коде приложения до 3.0 SP3 включительно или же в коде, начиная с 3.0 SP5? Какой из вариантов правильный?.. Последний раз редактировалось gl00mie; 29.04.2008 в 12:22. |
|
29.04.2008, 13:17 | #2 |
Участник
|
Только что прошелся вплоть до 3.0 SP1. Везде
X++: if (isConfigurationKeyEnabled(configurationkeynum(BOMVersion))) return; Этот код правильный, как говорит знакомый дев из Manufacturing team, поскольку так автоматически создавать спецификацию и версии нужно только в том случае, если пользователь не может это сделать самостоятельно (то есть, если выключен ключ). |
|
|
За это сообщение автора поблагодарили: gl00mie (5). |
29.04.2008, 13:25 | #3 |
Участник
|
Спасибо за разъяснения, видимо, в исходном приложении, которое я обновляю, действительно кто-то уже покопался...
|
|