Force Graph / Screen на Разрешить Добавить новый - PullRequest
0 голосов
/ 10 февраля 2020

Я хочу настроить кнопку разрешения добавления новой, чтобы указать на правильный график / экран. У меня есть DA C, который ссылается на нестандартный товар со страницы настройки. Селектор отфильтровывает, чтобы показывать только нестандартные товары. Когда я использую AllowAddNew = True, он показывает карандаш со ссылкой на страницу Stock Items. Есть ли способ принудительно установить значение go на странице товара, отсутствующего на складе?

Вот пример одного из моих полей DA C, у которого есть эта проблема.

#region DefCylDepInventoryID 
[PXDBInt]
[PXUIField(DisplayName = "Default Cylinder Deposit Item")]
[PXSelector(typeof(Search<
    InventoryItem.inventoryID, 
    Where2<
        Where<InventoryItem.stkItem, Equal<False>>, 
        And<Where<InventoryItem.itemStatus, NotEqual<InventoryItemStatus.unknown>>>>>), typeof(InventoryItem.inventoryID), typeof(InventoryItem.descr), typeof(InventoryItem.itemStatus), DescriptionField = typeof(InventoryItem.descr), SubstituteKey = typeof(InventoryItem.inventoryCD))]
[PXForeignReference(typeof(Field<CYSetup.defCylDepInventoryID>.IsRelatedTo<InventoryItem.inventoryID>))]
public virtual int? DefCylDepInventoryID { get; set; }
public abstract class defCylDepInventoryID : PX.Data.BQL.BqlInt.Field<defCylDepInventoryID> { }
#endregion

1 Ответ

1 голос
/ 10 февраля 2020

Попробуйте вместо этого определить селектор с помощью инкапсулированного атрибута [NonStockItem].

Ваше поле будет выглядеть так:

#region DefCylDepInventoryID 
[PXUIField(DisplayName = "Default Cylinder Deposit Item")]
[NonStockItem]
[PXRestrictor(typeof(Where<InventoryItem.itemStatus, NotEqual<InventoryItemStatus.unknown>>), "Message")] 
[PXForeignReference(typeof(Field<CYSetup.defCylDepInventoryID>.IsRelatedTo<InventoryItem.inventoryID>))]
    public virtual int? DefCylDepInventoryID { get; set; }
    public abstract class defCylDepInventoryID : PX.Data.BQL.BqlInt.Field<defCylDepInventoryID> { }
    #endregion

Теоретически, это будет использовать PXPrimaryGraph элемента NonStock Item, который должен перенаправить вас на нужную страницу.

...