在屏幕 AP302000 的网格背面添加文本

Add text to the back of the grid, on the screen AP302000

我想知道您是否可以在网格后面输入文字

能不能加个文,谢谢大家?

是的,你可以做到。该功能称为 StatusField.

要使用它,您需要在绑定到网格详细信息的 DAC 中定义类型为 PXString 的 DAC 字段。此字段将保存显示在网格页脚中的文本值,并且可以针对在网格中选择的每条记录进行更改。

在 ASPX 页面中,您需要将网格控件上的 StatusField 属性 设置为您添加的 PXString DAC 字段的名称(例如:可用性):

<px:PXGrid ID="grid" runat="server" DataSourceID="ds" StatusField="Availability">

要填充 DAC 字段的值,您可以使用 FieldSelecting 事件:

public virtual void SOLine_Availability_FieldSelecting(PXCache sender, PXFieldSelectingEventArgs e)
{
    // Set text that appear in footer
    e.ReturnValue = "Text to be displayed in grid footer.";
}

编辑:

要添加 link 控件而不是文本块,您需要使用 JavaScript。 请注意,Acumatica ISV 认证计划可能不允许这些类型的更改。

如果您需要知道如何将 JavaScript 添加到 Acumatica 网页,您可以参考这个答案:

对于您的用例,您需要确定网格页脚的 HTML ID。您可以为此使用浏览器 HTML 检查元素功能:

我测试了这个 JavaScript 以创建 link 控件,您需要替换目标网格页脚之一的 'ctl00_[...]' ID:

var gridFooter = document.getElementById("ctl00_phG_tab_t0_grid_ab").getElementsByTagName("nobr")[0];
var link = document.createElement('a');
var linkText = document.createTextNode("link description");
link.appendChild(linkText);
link.title = "link title";
link.href = "http://example.com";
gridFooter.parentNode.replaceChild(link, gridFooter);

这是最终结果: