根据机会创建销售订单时填充自定义字段

2024-05-01

我在 SO 屏幕 (SO301000) 上创建了一个自定义字段“联系人”。现在,当用户从机会屏幕(CR304000)创建销售订单时,我需要填充这些字段。新的自定义字段联系人基于在机会中选择的客户。我可以看到,当我从机会创建销售订单时,客户会自动填充,因为它是设计的。但是,我如何对自定义字段执行相同的操作。

我尝试扩展现有的 CreateSalesOrder 方法,但似乎没有帮助。

联系人查找(它根据 SO 中的客户选择刷新,但当我从机会创建 SO 时则不会刷新)

[PXDBInt()]

[PXUIField(DisplayName = "Contact", Visibility = PXUIVisibility.Visible)]
[PXSelector(typeof(Search2<Contact.contactID,
	LeftJoin<BAccount2, On<BAccount2.bAccountID, Equal<Contact.bAccountID>>>>),
	DescriptionField = typeof(Contact.displayName), Filterable = true, DirtyRead = true)]
[PXDefault(PersistingCheck = PXPersistingCheck.Nothing)]
[PXFormula(typeof(Default<SOOrder.customerID>))]
[PXRestrictor(typeof(Where<Contact.contactType, NotEqual<ContactTypesAttribute.bAccountProperty>,
		And<Where<BAccount2.bAccountID, Equal<Current<SOOrder.customerID>>,
				Or<Current<SOOrder.customerID>, IsNull>>>>), PX.Objects.CR.Messages.ContactBAccountDiff)]
[PXRestrictor(typeof(Where<Contact.isActive, Equal<True>>), PX.Objects.CR.Messages.ContactInactive,
			  typeof(Contact.displayName))]

public virtual int? UsrCustContactID { get; set; }
public abstract class usrCustContactID : IBqlField { }

联系人查找(当我从机会创建 SO 时,它按要求工作,但不会根据客户选择进行刷新)

[PXDBInt()]

[PXDBChildIdentity(typeof(Contact.contactID))]
[PXRestrictor(typeof(Where<Contact.isActive, Equal<True>>), "Contact '{0}' is inactive or closed.", new[] { typeof(Contact.displayName) })]
[PXSelector(typeof(Search2<Contact.contactID, LeftJoin<BAccount, On<BAccount.bAccountID, Equal<Contact.bAccountID>>>, Where<Contact.contactType, Equal<ContactTypesAttribute.person>, Or<Contact.contactType, Equal<ContactTypesAttribute.lead>>>>), DescriptionField = typeof(Contact.displayName), Filterable = true)]
[PXUIField(DisplayName = "Contact")]


public virtual int? UsrCustContactID { get; set; }
public abstract class usrCustContactID : IBqlField { }

类似的答案在这里找到:如何将订单项自定义字段值从机会传递到销售订单? https://stackoverflow.com/questions/42352177/how-to-pass-line-item-custom-field-value-to-sales-order-from-opportunity

可以从 CROpportunity 翻译成这样的东西 SOOrder...

public class CROpportunityMaintExtension : PXGraphExtension<OpportunityMaint>
{
    [PXOverride]
    public virtual void DoCreateSalesOrder(Action del)
    {
        PXGraph.InstanceCreated.AddHandler<SOOrderEntry>(graph =>
        {
            graph.RowInserting.AddHandler<SOOrder>((cache, args) =>
            {
                var soOrder = (SOOrder)args.Row;
                CROpportunity opportunity = PXResult<CROpportunity>.Current;

                // Copy logic here...

            });
        });

        del();
    }
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

根据机会创建销售订单时填充自定义字段 的相关文章

  • 如何制作库存物品标签 (IN619200) 为收到的每件物品打印一个标签?

    开箱即用Acumatica Inventory Item Label报告 IN619200 旨在仅当项目序列化时才在收据上打印该行项目的多个标签 我们将修改报告 允许用户选择收据编号 并让系统根据每件商品收到的数量生成标签数量 无论它们是否
  • 如何有条件地隐藏 Acumatica 屏幕内的 PXTabItem?

    我想隐藏 销售订单行佣金 选项卡 但我只想隐藏特定角色的选项卡 这可能吗 选项 1 使用 PXTabItem VisibleExp 属性 这种方法与相当简单的声明条件完美配合 该条件利用来自特定容器的输入控制值 PXForm最常用于这种情况
  • Acumatica 配置向导错误:无法在注册表中获取 IIS 版本

    我尝试在 Acumatica 配置向导上创建一个新实例 我收到一条错误消息 无法从注册表获取您的 IIS 版本 虽然我已经安装了IIS功能 我按照有关在 IIS 上安装哪些功能的说明进行操作 它使用的 net框架是4 6 显然这个问题还没有
  • 如何从报表设计器调用 Acumatica 函数?

    我有一个用 Acumatica 编写的通用函数 我们在各种 Acumatica 屏幕上使用它 我们希望在报表设计器中使用此函数 以便我们可以打印该值 示例 CheckBday 如果我们传递客户代码 它应该检查此客户生日字段 如果是今天 则返
  • Acumatica 和 Outlook 插件以及 Azure 单点登录错误

    与 Acumatica 的 Outlook 插件相关 当我们的用户尝试使用其 azure 登录名进行身份验证时 我们会看到以下错误 https www dropbox com s le7t3ez5ua69qls Screenshot 202
  • Acumatica 通用查询如何将多个 GI 导出为 xml

    我知道你可以一次将一个 GI 导出到 xml 我想知道你可以选择所有用户 GI 并导出到 XML 作为备份 Thanks 您可以通过创建一个自定义项目并将您需要的所有通用查询包含在一个包中来实现此目的 该项目可以导出和导入 其中包括所有附加
  • 有没有办法将用户定义的字段放入选择器中?

    我有一位客户使用用户定义字段 我发现这些值位于数据库的 KvExt 表中 但我还没有找到通过 DAC 或 DAC 扩展直接访问这些值的方法 有没有办法可以访问该字段并将其添加到 Acumatica 基本页面 我的例子中的具体目标是 ARPa
  • 如何显示尾随“%”符号?

    在 SO Line 的折扣百分比列中 我想在其中显示尾随 我尝试将显示格式设置为 P 但这是一场灾难 由于实际值是数据库中的百分比 因此不必乘以 100 感谢您的回答 您应该设置DisplayFormat to 0 00 结果你会得到以下结
  • 混合手动\自动编号序列

    在编号顺序设置 CS201010 中 有一个手动编号选项 但是 取决于文档类型 在某些情况下 参考编号可以留空 如果它是空白的 我希望自动编号启动 或者在保存文档之前调用 NextNumber 函数 是否可以 我怎么做 目前 如果我强制执行
  • Acumatica 中动态变化的 PXSelector

    我有以下用例 Acumatica 组合框 下拉列表 可以有 8 个左右的值 其选择决定了用于在 PXSelector 中呈现的表 DAC e g 如果用户选择选项 a 我需要在表 A 中的 PXSelector 值中显示 如果用户选择选项
  • 如何在 acumatica 门户中获取登录的企业帐户 ID?

    我正在尝试根据登录的客户企业帐户过滤目录项 如何在 acumatica 门户中获取登录的客户企业帐户价值 问候 穆拉利达兰 正如你所发现的 PXAccess GetUserID 允许您获取此信息 但您也可以在 BQL 查询中使用 Acces
  • Acumatica - 站点地图项目不会在现代 UI 中显示

    我刚刚将销售佣金报告添加到站点地图 它显示在经典 UI 中 但不显示在现代 UI 中 当我在现代用户界面中搜索它时 结果什么也没有返回 我的站点地图节点在 project xml 中的样子
  • Acumatica API:将活动或注释实体添加/附加到另一个实体(即客户、联系人或机会)

    我能够添加一个 Activity 实体并能够获取 NoteId 但无法将此活动添加到特定实体 或在创建后附加它 如何使用 Rest API 或使用旧的 WSDL 来实现此目的网络服务 None
  • 如何将订单项自定义字段值从机会传递到销售订单?

    我在机会产品选项卡中有一个自定义行号字段 供客户对所选产品重新排序 并且网格按自定义字段值排序 我试图将机会的价值传递给也具有类似字段的销售订单 我尝试过以下代码但它不起作用 PXGraph InstanceCreated AddHandl
  • 将文件添加到销售订单行项目

    I want to add files to salesorder line items in Acumatica using web services What endpoint should be used 我想使用 Web 服务端点添
  • 将Excel上传控件添加到网格工具栏

    有没有一种方法可以让网格控件允许从 Excel 工作表上传数据 我还没有找到可以将此控件放在工具栏上的命令 您需要装饰数据视图PXImportAttribute Example PXViewName Messages SOLine PXIm
  • 动态更改列名

    我有一个标题 详细信息自定义屏幕 我在其中根据标题中的下拉选择来操作显示哪些网格列 这工作得很好 但现在我也想更改一些列名称 使用记录的语法 我无法让它工作 我看不出我做错了什么 似乎没有什么区别 我已经附加到进程并在这个事件上设置了一个断
  • Acumatica 实时动态下拉列表

    我有以下用例 Acumatica 组合框 下拉列表 可以有 8 个左右的值 其选择决定了用于在组合框 下拉列表中呈现的表 DAC e g 如果当前StatusProfileID WO1 和Status WCMP WCMP 是当前版本User
  • 通用搜索 - 重定向到自定义屏幕

    我创建了一个自定义屏幕 它是客户屏幕的副本 问题是 当我们在通用搜索中输入客户 ID 时 如何重定向到自定义屏幕而不是客户屏幕 请查看我们自定义屏幕的图形代码 public class CustomScreen BusinessAccoun
  • 通过交叉引用过滤库存

    我想通过交叉引用以及其他属性来自定义库存过滤 我为这样的库存项目添加了另外两个交叉引用项目 现在我想通过替代类型的替代 Id 值以任何其他形式自定义库存过滤器 谢谢你 没有简单的方法可以在不进行自定义的情况下在库存商品的备用 ID 上添加搜

随机推荐