【问题标题】:How can I make an Acumatica, multiline PXGridColumn display new lines?如何使 Acumatica、多行 PXGridColumn 显示新行?
【发布时间】:2020-02-15 01:14:38
【问题描述】:

我正在自定义项目报价单(屏幕 PM304500)上的描述字段。我需要描述字段是多行的,并且它必须保留新行。

我已经自定义了字段本身以允许非常长的字符串,并且我已经使用 Multiline="true" 自定义了相应的 PXGridColumn。有了这个,我可以编辑字段值并使用 shift-enter 我可以在字符串中插入换行符。此外,网格列在不编辑时,将在多行上显示字符串,但新行将被忽略,就好像该值显示为 HTML 一样。我知道换行符被保留,因为当我再次编辑该值时,换行符存在。

此外,我已经能够使用 Chrome 中的开发人员控制台深入了解 PXGridColumn 的结果。其样式为“空白:正常”。如果我将其更改为“white-space: pre-wrap”,则该列看起来就像我想要的那样。

我还尝试修改字段的值以用
标签替换换行符。不幸的是,当我这样做时,我在值中看到文字“
”而不是新行。

理想情况下,我只想将 PXGridColumn 产生的元素的样式更改为“空白:预包装”。 PXGridColumn 是否有允许我这样做的属性/属性?或者,如果我可以将值呈现为 HTML,我可以用
方法替换新行。当然,我对其他方法持开放态度。

【问题讨论】:

    标签: acumatica


    【解决方案1】:

    您可以通过以下方式实现:

    1. 复制Acumatica App_Themes文件夹中的Default文件夹:
    2. 打开复制文件夹中的00_Controls.css文件和下面的css类到文件末尾并保存文件

      .MyTable table:not([class~=GridRowForm]) tbody tr td{
          white-space: pre-wrap !important;
      }
      
    3. 在屏幕编辑器中选择要应用该空白 css 样式的网格,并将 MyTable 添加为 CssStyle。

    4. 现在转到站点首选项(SM200505)页面并选择默认 - 复制为界面主题

    完成这些步骤后,您应该能够在销售订单详细信息中获得以下 UI:

    【讨论】:

    • 谢谢 Samvel。在我看到你的答案并且它奏效之前,我实际上有一个顿悟来尝试这个东西!但是,您的回答提供了比我尝试的更好的详细信息。
    【解决方案2】:

    从 Acumatica 2020 R1(或者更早的版本)开始,您可以通过在 Grid 上将 Layout -> WrapText 属性设置为 True 来解决此问题: Acumatica WrapText

    【讨论】:

      猜你喜欢
      • 2018-04-21
      • 1970-01-01
      • 2021-08-23
      • 1970-01-01
      • 1970-01-01
      • 2019-06-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多