Показать сообщение отдельно
Старый 07.03.2012, 00:37   #1  
wojzeh is offline
wojzeh
Участник
Аватар для wojzeh
Соотечественники
 
672 / 512 (19) +++++++
Регистрация: 27.04.2006
Адрес: Montreal
AX2012: форма выбора RouteId
проблема:

из небольших нововведений в 2012 следует отметить невозможность ручного ввода номера маршрута на форме создания в таблице маршрутов, привязанной к таблице товаров.

такая же форма прекрасно работает при ручном вводе номера номенклатуры. и проблема тут не в нумераторе, а в том, что для поиска по таблице номенклатуры написан соответствующий класс BOMCreateDialog где в методе promptCreateBOMDialog мы видим использование нового расширенного типа BOMIdBase, к которому в свою очередь привязана своя форма выбора.

X++:
if (_manual)
    {
        fieldNumber = dialog.addField(extendedtypestr(BOMIdBase),"@SYS22298");
    }


а вот с таблицей маршрутов решили особо не возиться и оставили всё, как было, то есть прямо на таблице RouteTable в аналогичном методе promptCreateRoute, который использует для создания поискового поля типа RouteId.

в новой версии к расширенному типу RouteId жёстко привязана таблица RouteTable, поэтому ввести номер пока ещё несуществующего маршрута невозможно.

решение:

трогать базовый расширенный тип я не стал, а просто создал дополнительный расширенный тип WmpRouteIdBase и привязал к нему соответствующую lookup форму по аналогии с BOMIdBase.

этот тип я и использую в перекрытом методе promptCreateRoute

X++:
  dialog = new Dialog("@SYS25123");
    if (manual)
          // Alex Voytsekhovskiy (WMP) (2012/03/06) (Demande #)
        // to allow to input the route id manually
        //-->
        fieldNumber = dialog.addField(extendedtypestr(WmpRouteIdBase),"@SYS21709");
        //<--
проект приаттачен.

если это бага, то, как говорится, просьба подправить там в консерватории. если же фича, то неплохо было бы придерживаться единообразия в подходах.
Вложения
Тип файла: xpo WmpRouteIdLookup.xpo (29.2 Кб, 398 просмотров)
__________________
Felix nihil admirari
За это сообщение автора поблагодарили: Мартынов Дмитрий (1).