如何创建具有样式的新选项卡作为库存项目的描述选项卡?
How to create new tab that has style as Description tab for Stock Items?
我想创建新选项卡(软件解决方案)并添加与描述选项卡相同的新字段(解决方案)以允许用户添加一些描述。
这就是我所做的。
您需要使用 PXRichTextEdit 控件来实现。自定义设计不允许您选择此控件类型,因此您可能需要直接手动编辑 ASPX 文件以添加 PXRichTextEdit。在布局编辑器中,select Actions->Edit Aspx,然后手动修改 ASPX 以添加新控件。然后您可以单击“生成自定义脚本”按钮来更新自定义项目。
这是描述选项卡在 ASPX 中的样子:
<px:PXTabItem Text="Description" LoadOnDemand="true" >
<Template>
<px:PXRichTextEdit ID="edMyField" runat="server" DataField="UsrMyField">
<AutoSize Enabled="True" MinHeight="216" />
</px:PXRichTextEdit>
</Template>
</px:PXTabItem>
底层数据库字段需要 nvarchar(max) 字段,DAC 属性 需要用 PXDBText(IsUnicode=true) 属性修饰。如果使用PXDBString,内容将不会保存。
不幸的是,自定义项目中包含的数据库模式工具不允许您添加 nvarchar(max) 字段(支持的最大长度为 4000),这还不够。您可以改用以下 T-SQL 脚本并将其添加到自定义项目中:
IF NOT EXISTS (
SELECT *
FROM sys.columns
WHERE object_id = OBJECT_ID(N'[dbo].[Contact]')
AND name = 'UsrMyField'
)
BEGIN
ALTER TABLE [dbo].[Contact] ADD [UsrMyField] nvarchar(max)
END
我想创建新选项卡(软件解决方案)并添加与描述选项卡相同的新字段(解决方案)以允许用户添加一些描述。
这就是我所做的。
您需要使用 PXRichTextEdit 控件来实现。自定义设计不允许您选择此控件类型,因此您可能需要直接手动编辑 ASPX 文件以添加 PXRichTextEdit。在布局编辑器中,select Actions->Edit Aspx,然后手动修改 ASPX 以添加新控件。然后您可以单击“生成自定义脚本”按钮来更新自定义项目。
这是描述选项卡在 ASPX 中的样子:
<px:PXTabItem Text="Description" LoadOnDemand="true" >
<Template>
<px:PXRichTextEdit ID="edMyField" runat="server" DataField="UsrMyField">
<AutoSize Enabled="True" MinHeight="216" />
</px:PXRichTextEdit>
</Template>
</px:PXTabItem>
底层数据库字段需要 nvarchar(max) 字段,DAC 属性 需要用 PXDBText(IsUnicode=true) 属性修饰。如果使用PXDBString,内容将不会保存。
不幸的是,自定义项目中包含的数据库模式工具不允许您添加 nvarchar(max) 字段(支持的最大长度为 4000),这还不够。您可以改用以下 T-SQL 脚本并将其添加到自定义项目中:
IF NOT EXISTS (
SELECT *
FROM sys.columns
WHERE object_id = OBJECT_ID(N'[dbo].[Contact]')
AND name = 'UsrMyField'
)
BEGIN
ALTER TABLE [dbo].[Contact] ADD [UsrMyField] nvarchar(max)
END