产品名“PowerBuilder编译器”已更改为更通用的名称“PowerBuilderUtilities”(其中包括OrcaScript工具(orcascr220.exe)、PowerBuilder Compiler工具(pbc220.exe)和PBAutoBuild工具(PBAutoBuild220.exe))。
您可以选择“SQL Server”作为演示数据库,因为演示应用程序随SQL Server演示数据库一起提供,所以现在您可以选择SQL Server、SQL Anywhere或PostgreSQL作为演示应用程序和数据库的数据库类型。
PowerBuilder安装程序允许用户将IIS服务器设置为本地web服务器。您可以选择现有网站或创建新网站作为PowerClient/PowerServer项目的默认服务器配置文件,也可以稍后指定网站。
有关电源服务器的新功能,请参阅联机服务器>新增功能联机帮助,或 Windows Start > Appeon PowerBuilder 2022 >联机服务器 2022 帮助>新增功能)中有关电源服务器的已编译帮助
按照文档将 32 位应用程序迁移到 64 位中的迁移步骤中的说明,在应用程序中进行必要的数据库连接更改和代码更改,以便应用程序已准备好作为 64 位运行。
若要调试电源服务器项目,请在满足唯一要求后,选择“电源服务器项目”工具栏中的“调试”项。请注意,在从电源服务器项目部署的可安装云应用中,客户端应用根据节能生成器 IDE 中的调试选项运行,而电源服务器 Web API 则使用 C# IDE(即 SnapDevelop IDE)中配置的位性进行编译。
若要运行电源服务器项目,请在满足唯一要求后,选择“电源服务器项目”工具栏中的“运行电源服务器项目”项。请注意,在从电源服务器项目部署的可安装云应用中,客户端应用根据 PowerBuilder IDE 中的位性选项运行,而电源服务器 Web API 则使用 C# IDE(即 SnapDevelop IDE)中配置的位性进行编译。
4、PB 自动构建增强功能
PB 自动构建支持从 Git 分支下载源代码。例如,您可以在 JSON 文件的“分支”设置中指定 Git 分支。
“清除”之前下载“设置将添加到 JSON 文件中,以便在下载源代码之前从源代码文件夹(由”DestPath“设置指定)中删除文件。默认值为假。
PB自动构建支持通过以下参数指定版本号:/v 、 /vn 、 /fv 、 /fvn。
PB 自动构建支持从项目中导出现有的 Git/SVN 源代码管理设置。在“导出构建文件”窗口中,有一个新选项“从项目中导出 Git/SVN 源代码控制设置(如果存在)”。
将设置从 IDE 导出到 JSON 文件时,SVN/Git 登录密码将被加密并存储在 JSON 文件中。(必须选择“清除源代码控制设置”选项才能导出密码)
5、UI 主题增强功能
支持自定义子体窗口中控件/对象的主题设置(子体窗口是从另一个窗口继承的窗口):[子体窗口]。[控制或对象]。
如果子体窗口中的控件/对象具有自定义主题设置,则其自定义主题设置将生效。如果子体窗口中的控件/对象没有自定义主题设置,它将从祖先窗口中的控件/对象继承主题设置。
支持在子体窗口中为相同类型的控件/对象自定义主题设置(子体窗口是从另一个窗口继承的窗口):[后代窗口]$[controltype]
如果子体窗口中的控件/对象具有自定义主题设置,则其自定义主题设置将生效。如果子体窗口中的控件/对象没有自定义主题设置,它将从祖先窗口中相同类型的控件/对象继承主题设置。
支持自定义用户对象中相同类型的控件/对象的主题设置:[用户对象]$[控件类型]
支持为后代用户对象中相同类型的控件/对象自定义主题设置(后代用户对象是从另一个用户对象继承的用户对象):[后代用户对象]$[controltype]
如果后代用户对象中的控件/对象具有自定义主题设置,则其自定义主题设置将生效。如果后代用户对象中的控件/对象没有自定义主题设置,它将从祖先用户对象中相同类型的控件/对象继承主题设置。
6、界面增强功能
强力构建器 IDE 具有以下增强功能:
支持在选项卡中打开多个编辑器/画家,而不是 MDI。
右键单击该选项卡时,您可以从弹出式菜单中选择以保存当前对象或以各种方式关闭选项卡,包括关闭当前选项卡、向左关闭选项卡、向右关闭选项卡、关闭除此以外的所有选项卡和关闭所有选项卡。
支持从“脚本编辑器”或“编辑源”窗口跳转到所选对象。只能跳转到对象,而不能跳转到函数、事件或对象变量。在跳转之前,您需要先选择对象名称。如果有多个具有相同名称的对象,它将跳转到 PBL 列表中找到的第一个对象。
还支持在 PBL 上按正则表达式进行搜索(而不仅仅是在脚本中)。
添加一个“筛选器”框以在“保存”对话框中筛选应用程序库。
添加一个“筛选器”框,以筛选在使用 SQL 选择创建数据窗口时要从中进行选择的表。
添加一个“筛选器”框,以筛选在使用存储过程修改 DataWindows 时要从中选择的存储过程。
能够调整许多窗口/对话框的大小,包括“快速监视”窗口,“插入对象”窗口和“指定更新属性”窗口。
支持在“指定检索参数”对话框中使用鼠标滚轮滚动记录。
7、调用 .NET 程序集的增强功能
为了支持在 C# 中调用 PowerScript 事件,已添加具有以下两个新函数的 PowerBuilder DotNet 对象:
注册对象 -- 注册赋能生成器对象。注册后,PowerBuilder 对象中的事件可由 .NET 程序集触发。要由 .NET 程序集触发的事件是一个自定义事件,它只能有一个字符串类型参数或没有参数,具有一个字符串类型返回值或没有返回值。
注销对象 -- 注销增强引擎对象。
C# 脚本可以通过以下 .NET 方法触发 PowerScript 用户事件:
PowerBuilder.RegisterdObject.Trigger事件 -- 在已注册的“功能生成器”对象中触发用户事件。用户事件只能有一个字符串类型参数或没有参数,只有一个字符串类型返回值或没有返回值。
可以将泛型类型、委托、接口或非数组类(包括抽象类)作为参数或返回值传递给从 .NET 程序集加载的函数。(.NET DLL 导入程序也具有这些增强功能。有关详细信息,请参阅应用程序技术中的此部分。
已使用以下新功能添加了“强力构建器 DotNet 组件”对象:
加载到点网上 -- 加载 .NET(5 或更高版本)程序集。
8、支持红绿灯系统 1.3
HTTPClient/RestClient/TokenRequest/OAuthRequest 对象支持使用 TLS 1.3 安全协议:
安全协议属性 -- 将此属性值设置为 6 将使用 TLS 1.3 协议。
当出现 TLS 1.3 错误时,发送请求的函数将返回错误代码。
目前,仅在 Windows 11 或 Windows 服务器 2022 中运行时,增强型服务器本机 C/S 应用程序才能支持 TLS 1.3。
若要在 Windows 10 中支持 TLS 1.3,必须修改注册表项(不建议这样做)。
9、支持 HTTP/2
HTTPClient/RestClient/TokenRequest/OAuthRequest objects 支持使用 HTTP/2 进行连接:
启用Http2属性 -- 默认情况下,此属性设置为 True;这意味着在发送请求时默认使用 HTTP/2 连接。如果不想使用 HTTP/2 连接,则可以将此属性值设置为 false。在不太支持 HTTP/2 的环境中,系统将回退到 HTTP/1.1 并继续事务。
HTTPClient/RestClient/TokenResponse/ResourceResponse 对象可以获取当前正在使用的 HTTP 协议版本:
获取版本函数 -- 获取通信中使用的 HTTP 协议版本。
10、支持双向 TLS 身份验证
为了支持客户端和服务器之间的双向 TLS 身份验证,对象提供了以下功能:
设置客户端证书 -- 设置将用于访问服务器的客户端证书。
清除客户端证书 -- 清除使用“设置客户端证书”设置的客户端证书。
对象提供以下属性:“忽略服务器证书”属性和“检查服务器证书”属性。(HTTP 客户端对象已在版本 2019 R3 中支持这些属性)
客户端还可以在不使用任何客户端证书(匿名访问)的情况下访问服务器,方法是利用 HTTPClient/RestClient/令牌请求/OAuthRequest 对象中的以下属性:
匿名访问属性 -- 将此属性值设置为 True 将允许客户端匿名访问服务器。
11、富文本编辑增强功能
富文本编辑器更改
内置丰富编辑控件(TE 编辑控件)已从版本 2022 中删除。您可以在应用程序技术中将其替换为 TX 文本控制。
对于 32 位和 64 位,内置 TX 文本控制 ActiveX 28.0 已升级到内置 TX 文本控制 ActiveX 30.0。
已删除内置的 TX 文本控制 ActiveX 15.0 和 TX 文本控制 ActiveX 24.0 专业/企业版。
以前,富文本编辑器可与第三方软件Podofo配合使用,以实现PDF功能;现在它更改为使用PDFlib。
新功能
控件具有以下增强功能:
支持使用 PDF/A 标准将富文本编辑控件中的内容另存为 PDF。
支持设置用户密码,主密码和限制以及将内容另存为PDF
支持将 Excel 格式的文件 (.xlsx) 插入到富文本编辑控件中
能够正确插入不同编码格式的文本文件,如“UTF-8”,“UTF-16LE”或“UTF-16BE”,而无需非法代码(需要指定BOM标头或编码)
支持以指定格式粘贴剪贴板内容(通过使用 PasteSpecial 功能或单击鼠标右键>选择性粘贴按钮)
支持打开文本中的超链接以及创建、修改和删除超链接
支持恢复之前撤消的编辑
以下新功能已添加到富文本编辑控件中:
重做 -- 恢复以前在 RichTextEdit 控件中撤消的编辑。
CanRedo -- 测试重做是否可以还原以前在 RichTextEdit 控件中撤消的编辑。
粘贴特殊 -- 将剪贴板中指定格式的内容粘贴到 RichTextEdit 控件中的当前位置。
文本字段插入 -- 将文本字段插入到富文本编辑控件中的当前位置。
文本字段集文本 -- 在富文本编辑控件中设置文本字段的文本。
文本字段集类型和数据 -- 设置富文本编辑控件中文本字段的类型和类型数据。
文本字段GetType -- 获取富文本编辑控件中指定文本字段的类型。
文本字段获取文本 -- 获取富文本编辑控件中指定文本字段的文本。
文本字段获取类型数据 -- 获取富文本编辑控件中指定文本字段的类型数据。
目标插入 -- 将目标插入到富文本编辑控件中的当前位置。
目标删除 -- 根据富文本编辑控件中的指定 ID 删除目标。
目标集名称 -- 设置富文本编辑控件中指定目标的名称。
目标名称 -- 获取富文本编辑控件中指定目标的名称。
目标下一个 -- 获取指定目标的下一个目标 ID。
目标转到 -- 将光标移动到富文本编辑控件中的指定目标。
保存文档作为PDF -- 将富文本编辑控件中的内容另存为 PDF 文档。
修改了以下函数:
插入文档 -- 一个新的参数编码和一个新的文件类型文件类型文件类型XLSX!已添加到“插入文档”功能中。您可以指定插入文档的编码。如果未指定编码参数,则将使用 BOM 标头中的编码。如果文件中没有 BOM 标头,则 ANSI 将用作默认编码格式。
.xlsx文件类型也会添加到“选择文件名”对话框中,因此您可以通过单击鼠标右键单击>“插入文件”按钮来选择以 Microsoft Excel(.xlsx)格式插入文件。
通过“选择文件名”对话框插入.txt文件时,将使用 BOM 表中的编码(UTF8、UTF16LE 或 UTF16BE)。如果文件中没有 BOM 标头,则默认情况下将使用 ANSI。
12、新的PDF生成器(测试版功能)
新的PDF生成器允许您通过以下功能轻松操作应用程序中的PDF文档:
支持将数据从数据窗口对象、数据窗口对象或数据存储对象导入PDF文档并合并PDF文档。请参阅示例1。
支持将现有PDF文档和数据从数据窗口对象、数据窗口对象或数据存储对象导入到新的PDF文档并合并PDF文档。请参阅示例2。
支持设置PDF文档的属性和安全权限。请参阅示例3。
为了支持上述功能,添加了以下新对象/属性/函数:
对象和模型对象--其他PDF对象的祖先对象。
PDF文档--PDF文档对象允许将数据从数据窗口对象、数据窗口对象或数据存储对象或现有PDF文档导入到新的PDF文档中并保存该文档。
已添加到PDF文档对象的属性如下所示:
属性--获取或设置PDF文档的属性。
安全性--获取或设置PDF文档的安全性属性。
已添加到PDF文档对象的函数如下所示:
导入数据窗口--将数据从数据窗口对象、数据窗口对象或数据存储对象导入PDF文档。
导入PDF--将现有PDF文档导入到新的PDF文档中。
保存--保存PDF文档的内容。
PDF文档属性--“PDF文档属性”对象允许获取或设置PDF文档的属性。
已添加到“文档属性”对象的属性如下所示:
应用程序--获取或设置PDF文档的创建者。
作者--获取或设置PDF文档的作者。
关键字--获取或设置PDF文档的关键字。
主题--获取或设置PDF文档的主题。
标题--获取或设置PDF文档的标题。
PDF安全性--PDF安全性对象允许获取或设置PDF文档的安全权限。
已添加到PDF安全对象的属性如下所示:
主密码--获取或设置PDF文档的主密码。
用户密码--获取或设置PDF文档的用户密码。
允许批注--是否允许创建或更改批注或表单域。
允许组装--允许插入、删除或旋转页面以及创建书签和缩略图。
允许复制--是否允许复制文本或图形。
允许表单--是否允许填写表单域。
允许高分辨率打印--是否允许高分辨率打印。
允许修改--是否允许修改文件。
允许说明元数据--是否允许保留文档元数据未加密,即使对于加密的文档也是如此。
允许打印--是否允许打印文件。
13、JSONParser增强功能
JSONParser支持使用新函数GetItemDecim获取十进制值,因此在通过JSON字符串传输值时,可以支持28位精度。
14、增强功能
添加了具有以下两个新函数的PBDOM_Document对象:
设置XML声明--设置XML文档的声明。
获取XML声明--获取XML文档的声明。
在PBDOM_Document对象中引入三个新参数(版本、编码和独立)后,SaveDocument函数在以下几个方面进行了更改:
文件将由保存文档功能以指定的编码保存。创建新文档时,编码的默认值为UTF-16LE。打开现有文档时,编码在文档的声明中指定。如果文档中没有声明或声明中没有指定的编码,则默认情况下编码为UTF-16LE。
如果独立字符串为空字符串,则在将字符串保存到磁盘文件时,默认情况下将设置为“no”。如果版本无效,则不会添加任何声明。如果编码无效,则不会引发异常,但会生成一个空文档。
PBDOM_Attribute和PBDOM_PROCESSINGINSTRUCTION对象在以下几个方面进行了更改:
在PowerBuilder 2022中创建PBDOM_ATTRIBUTE对象时,默认情况下,该对象不包含任何子节点。(这与早期版本不同,早期版本默认对象包含子节点)
不再支持PBDOM_PROCESSINGINSTRUCTION对象来添加和修改声明。当PBDOM_PROCESSINGINSTRUCTION的节点名称设置为“XML”时,将引发异常。
如果您的应用程序中使用了PBDOM,请按照升级增强型应用程序>PBDOM更改中的说明升级和修改您的应用程序。
15、源代码管理增强功能
(仅限 Git)从 Git 源代码管理系统获取“增强型工作空间”工作区(使用“连接到工作区”上下文菜单)时,可以使用 Windows 凭据或 Github 登录页面中的令牌登录到 Git。(您需要先安装适用于 Windows 的 Git 工具,才能显示“Windows 凭据”或“Github 登录”页面。
(仅限 Git)你可以指定在从 Git 源代码管理系统获取 PowerBuilder 工作区(使用“连接到工作区”上下文菜单)时立即获取分支。如果您尚未指定分支,它将默认为“main”。
(吉特和高级副总裁)从源代码管理系统获取 PowerBuilder 工作区(使用“连接到工作区”上下文菜单)时,可以选择从源代码生成 PBL。因此,不再需要将 PPL 上载到源代码管理。
(吉特和高级副总裁)使用“添加到源代码管理”上下文菜单上载工作区时,PBL 文件将不再在文件/文件夹列表中列出以供上载。如有必要,您可以使用“上传 PBL”上下文菜单上传 PBL 文件。但是,通常不再需要上传用于源代码的PBL,因为PBL可以从源代码自动生成。