You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Acumatica客户界面添加带动态客户ID参数的内嵌iframe标签/侧边栏

在Acumatica客户界面嵌入带动态CustomerID的外部链接

实现方案:添加自定义标签页嵌入IFrame

以下是具体实现步骤和代码示例:

1. 打开自定义项目编辑器

在Acumatica中创建或打开目标自定义项目,找到**AR303000(Customer)**页面并进入编辑模式。

2. 添加自定义标签页

在页面的Tab容器中新增一个PXTabItem:

  • 设置标签标题(如“外部客户信息”)
  • 为标签页分配唯一的ID(如tabExternalInfo)

3. 嵌入IFrame控件

在新建的标签页内添加PXIFrame控件:

  • 设置ControlID为extCustomerFrame
  • 初始URL可留空,后续通过代码动态赋值

4. 编写动态URL绑定代码

在ARCustomerMaint图的扩展类中,通过RowSelected事件动态拼接外部链接:

public class ARCustomerMaint_Extension : PXGraphExtension<ARCustomerMaint>
{
    protected void _(Events.RowSelected<Customer> e)
    {
        if (e.Row == null) return;

        // 获取当前选中客户的CustomerID
        string currentCustomerID = e.Row.AcctCD;

        // 拼接带动态参数的外部链接
        string externalUrl = $"https://mywebsite?f=CustomerID={currentCustomerID}";

        // 更新IFrame的URL
        PXIFrame iframe = Base.Views[typeof(Customer)].FindControl("extCustomerFrame") as PXIFrame;
        if (iframe != null)
        {
            iframe.Url = externalUrl;
        }
    }
}

5. 部署与测试

  • 发布自定义项目
  • 打开客户页面,切换不同客户,检查IFrame内的链接是否已自动替换为当前CustomerID,且页面正常加载

注意事项

  • 确保外部网站允许Acumatica域名嵌入(需配置X-Frame-Options或CORS策略)
  • 为自定义标签页配置相应的用户权限,避免无权限用户访问
  • 若需使用侧边栏替代标签页,只需将IFrame控件放置到页面侧边容器中,代码逻辑保持一致

内容的提问来源于stack exchange,提问作者Rakavy Ravisingam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.11 13:33:13