Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 对于acumatica,我如何着手抓取与所选客户相关的人员(联系人)?_C#_Acumatica - Fatal编程技术网

C# 对于acumatica,我如何着手抓取与所选客户相关的人员(联系人)?

C# 对于acumatica,我如何着手抓取与所选客户相关的人员(联系人)?,c#,acumatica,C#,Acumatica,您好:)我试图实现的是创建一个联系人选择器,当您单击选择器图标时,它将显示联系人表的筛选结果,该表仅显示与特定公司相关的联系人,如下所示: 上面的图片是在销售订单屏幕上,我的目标是在项目屏幕上。所以当我试着把它移过去,确保有相同的设置时,它似乎在项目屏幕中不起作用 当我尝试打开选择器时,框是空的。我想问题可能是我试图在PMProject表和BAccount表之间匹配的值不匹配,所以我使用Description字段输出我得到的值,它们看起来是相同的 这是我用来创建选择器的设置: [PXUIFi

您好:)我试图实现的是创建一个联系人选择器,当您单击选择器图标时,它将显示联系人表的筛选结果,该表仅显示与特定公司相关的联系人,如下所示:

上面的图片是在销售订单屏幕上,我的目标是在项目屏幕上。所以当我试着把它移过去,确保有相同的设置时,它似乎在项目屏幕中不起作用

当我尝试打开选择器时,框是空的。我想问题可能是我试图在PMProject表和BAccount表之间匹配的值不匹配,所以我使用Description字段输出我得到的值,它们看起来是相同的

这是我用来创建选择器的设置:

[PXUIField(DisplayName="Contact")]

[PXSelector(typeof(Search2<Contact.displayName,
LeftJoin<BAccount, On<BAccount.bAccountID, Equal<Contact.bAccountID>>>,
Where<Contact.contactType, Equal<ContactTypesAttribute.person>>>))]

[PXRestrictor(typeof(
    Where<Current<PMContact.customerID>,
            Like<BAccount.bAccountID>>), "")]
[PXUIField(DisplayName=“Contact”)]
[PXSelector(typeof(Search2))]
[PX限流器(类型)(
其中,“)]
这与我在销售订单屏幕上使用的设置完全相同,很明显现在它使用的是PMProject的CustomerID

我有没有做错什么?任何帮助都将不胜感激:D

更新

谢谢你的回答,约瑟夫!当我点击联系人字段时,它仍然显示为空。见下文:

以下是我添加解决方案的方式:


您似乎不需要加入BAccount。
另外,在“Search2中,你在哪里使用displayname?我设法解决了这个问题。Joseph的回答让我重新思考如何将联系人与当前项目相匹配,因为我可以使用联系人表而不是BAccount表

我发现我只需要将Contact.bAccountID字段与PMContact.customerID字段的值进行比较,这将为我提供所有关联的联系人

将此比较添加到PXRestrictor为我解决了此问题:)

[PXDBString(50)]
[PXUIField(DisplayName=“Contact”)]
[PXSelector(typeof(Search2))]
[PX限流器(类型)(
其中,“)]

感谢您的回答Joseph!我尝试了您的解决方案,但似乎不起作用。我已更新了我的问题,说明了如何添加您的代码以及结果:)
[PXSelector(typeof(Search<Contact.contactID, Where<Contact.contactType, Equal<ContactTypesAttribute.person>,
            And<Where<Contact.contactID, Equal<Current<PMContact.customerID>>>>>>))]
[PXDBString(50)]
[PXUIField(DisplayName="Contact")]
[PXSelector(typeof(Search2<Contact.displayName,
LeftJoin<BAccount, On<BAccount.bAccountID, Equal<Contact.bAccountID>>>,
Where<Contact.contactType, Equal<ContactTypesAttribute.person>>>))]
[PXRestrictor(typeof(
    Where<Current<PMContact.customerID>,
            Like<Contact.bAccountID>>), "")]