Acumatica 通用搜索-重定向到自定义屏幕

Acumatica 通用搜索-重定向到自定义屏幕,acumatica,Acumatica,我已经创建了一个自定义屏幕,它是客户屏幕的副本。问题是,当我们在通用搜索中输入客户id时,我们如何重定向到自定义屏幕而不是客户屏幕。请看一下我们定制屏幕的图形代码 public class CustomScreen : BusinessAccountGraphBase<Customer, Customer, Where<BAccount.type, Equal<BAccountType.customerType>, Or<BAccou

我已经创建了一个自定义屏幕,它是客户屏幕的副本。问题是,当我们在通用搜索中输入客户id时,我们如何重定向到自定义屏幕而不是客户屏幕。请看一下我们定制屏幕的图形代码

public class CustomScreen : BusinessAccountGraphBase<Customer, Customer, Where<BAccount.type, Equal<BAccountType.customerType>,
                Or<BAccount.type, Equal<BAccountType.combinedType>>>>
    {
    } 
公共类自定义屏幕:BusinessAccountGraphBase
{
} 

搜索框使用记录的Note ID字段的值作为在
搜索索引
中查找记录的键,其中存储了记录的
EntityType
。 从
EntityType
读取
PXPrimaryGraphAttribute
的值,并重定向到指定的图形

要更改重定向的页面,您需要更改该DAC的
PXPrimaryGraphAttribute
的值

您可以尝试将
PXPrimaryGraphAttribute
添加到图形中,以指示它是指定DAC的主图形。根据文档,它应该覆盖应用于
Customer
DAC的
PXPrimaryGraphAttribute
设置的主图

对于
Customer
DAC,应用的属性如下:

[CRCacheIndependentPrimaryGraphList(new Type[]
{
    typeof(BusinessAccountMaint),
    typeof(CustomerMaint),
    typeof(CustomerMaint),
    typeof(CustomerMaint),
    typeof(BusinessAccountMaint)
}, new Type[]
{
    typeof(Select<BAccount, Where<BAccount.bAccountID, Equal<Current<BAccount.bAccountID>>, And<Current<BAccount.viewInCrm>, Equal<True>>>>),
    typeof(Select<Customer, Where<Customer.bAccountID, Equal<Current<BAccount.bAccountID>>, Or<Customer.bAccountID, Equal<Current<BAccountR.bAccountID>>>>>),
    typeof(Select<Customer, Where<Customer.acctCD, Equal<Current<BAccount.acctCD>>, Or<Customer.acctCD, Equal<Current<BAccountR.acctCD>>>>>),
    typeof(Where<BAccountR.bAccountID, Less<Zero>, And<BAccountR.type, Equal<BAccountType.customerType>>>),
    typeof(Select<BAccount, Where<BAccount.bAccountID, Equal<Current<BAccount.bAccountID>>, Or<Current<BAccount.bAccountID>, Less<Zero>>>>)
})]

为什么要复制客户屏幕而不是定制?这是用户要求,此复制客户屏幕仅用于查看目的,以查看此复制客户屏幕中的所有交易数据Hi Samvel,我尝试了给定的解决方案,在我的自定义图上方添加索引,并在SM209500中重建索引,即使在之后,当我搜索客户时,它只是重定向到客户屏幕而不是我的自定义屏幕,而且我没有创建客户扩展DAC。请参考上面的更新代码,并让我知道问题所在。以下是答案“[CRCacheIndependentPrimaryGraphList(新类型[]{typeof(BusinessAccountMaint)、typeof(CustomerDupMaint)、typeof(CustomerDupMaint)、typeof(CustomerDupMaint)、typeof(BusinessAccountMaint)}后的修改代码,新类型[]{typeof(选择)、typeof(Select),`typeof(Select)、typeof(Where)、typeof(Select)}]public类CustomerDupMaint:BusinessAccountGraphBase{}
[CRCacheIndependentPrimaryGraphList(new Type[]
{
    typeof(BusinessAccountMaint),
    typeof(CustomScreen),
    typeof(CustomScreen),
    typeof(CustomScreen),
    typeof(BusinessAccountMaint)
}, new Type[]
{
    typeof(Select<BAccount, Where<BAccount.bAccountID, Equal<Current<BAccount.bAccountID>>, And<Current<BAccount.viewInCrm>, Equal<True>>>>),
    typeof(Select<Customer, Where<Customer.bAccountID, Equal<Current<BAccount.bAccountID>>, Or<Customer.bAccountID, Equal<Current<BAccountR.bAccountID>>>>>),
    typeof(Select<Customer, Where<Customer.acctCD, Equal<Current<BAccount.acctCD>>, Or<Customer.acctCD, Equal<Current<BAccountR.acctCD>>>>>),
    typeof(Where<BAccountR.bAccountID, Less<Zero>, And<BAccountR.type, Equal<BAccountType.customerType>>>),
    typeof(Select<BAccount, Where<BAccount.bAccountID, Equal<Current<BAccount.bAccountID>>, Or<Current<BAccount.bAccountID>, Less<Zero>>>>)
})]
public class CustomScreen : BusinessAccountGraphBase<Customer, Customer, Where<BAccount.type, Equal<BAccountType.customerType>,
            Or<BAccount.type, Equal<BAccountType.combinedType>>>>
{
}