在 AX 服务器上运行 R 脚本
将外部 R 脚本作为相关文件与分析应用程序一起导入,然后从您的分析脚本调用这些 R 脚本以利用服务器上的 R 脚本语言的统计分析功能。 要准备 AX 服务器环境以运行 R 脚本,您必须首先安装 R,然后将.r 扩展名添加到文件扩展名白名单。
先决条件
要在 AX 服务器上运行 R 脚本,您必须:
- 在您的 AX 服务器计算机上安装 R 脚本语言的受支持版本。
- 将 .r 扩展名添加到 AX 服务器上的文件扩展白名单。
- 在 Analytics 中,创建一个要使用并导入到 AX 服务器中的项目。
将 R 脚本添加到 Analytics 项目目录
在您在 Analytics 中创建您的 Analytics 项目后,复制您要使用的 R 脚本并粘贴到项目文件夹中,以便您可以在导入到 Analytics Exchange 之前在 Analytics 中本地测试您的脚本。
R 文件示例
如下示例 R 文件包含连接两个字符串并返回以空格字符连接的单个字符串的小脚本。 这些示例旨在说明 R 脚本如何在 AX 服务器上运行,而不是如何用 R 分析数据。
analysis_a.r
conc<-function(x, y) { paste(x, y, sep=" ") \} print(conc(value1, value2))
analysis_b.r
conc<-function(x, y) { paste(y, x, sep=" ") \} print(conc(value1, value2))
创建 Analytics 脚本
在您的 Analytics 项目中,创建一个新的脚本以用作您在 AX 服务器上运行的分析脚本。 该脚本完成以下工作:
- 打开一个只包含一个记录的名为 t_tmp 的临时表。
您必须打开一个表以在 Analytics 中执行 EXTRACT 命令,这里的 t_tmp 表仅用于此目的。
- 使用 EXTRACT 命令运行每个 R 脚本并将结果写入到表。
验证分析标头
在脚本的开头添加相应的分析标头标记,以便该 Analytics 脚本可以在您导入您的分析应用程序之后在 AX 服务器上运行。 您必须为您打算从该分析脚本运行的任何 R 脚本添加一个 FILE 标记:
COMMENT //ANALYTIC R 集成测试 验证 AX 服务器上的 R 集成 //DATA t_tmp //FILE analysis_a.r //FILE analysis_b.r //RESULT TABLE results END
添加脚本逻辑
SET SAFETY OFF DEL ALL OK CLOSE PRIMARY SECONDARY OPEN t_tmp COM **** 执行 R 脚本并将结果写入表 EXTRACT FIELDS RSTRING("a<-source('./analysis_a.r');a[[1]]",50,"test","value") AS "value" TO "results.fil" EXTRACT FIELDS RSTRING("a<-source('./analysis_b.r');a[[1]]",50,"test","value") AS "value" TO "results.fil" APPEND CLOSE t_tmp
完整的解析脚本
您在 AX 服务器上运行的完整分析脚本如下所示:
COMMENT //ANALYTIC R 集成测试 验证 AX 服务器上的 R 集成 //DATA t_tmp //FILE analysis_a.r //FILE analysis_b.r //RESULT TABLE results END SET SAFETY OFF DEL ALL OK CLOSE PRIMARY SECONDARY OPEN t_tmp COM **** 执行 R 脚本并将结果写入表 EXTRACT FIELDS RSTRING("a<-source('./analysis_a.r');a[[1]]",50,"test","value") AS "value" TO "results.fil" EXTRACT FIELDS RSTRING("a<-source('./analysis_b.r');a[[1]]",50,"test","value") AS "value" TO "results.fil" APPEND CLOSE t_tmp
导入该 Analytics 项目和相关 R 文件
在您创作解析脚本后,请:
- 在 AX 客户端中,创建一个集合和文件夹来容纳 Analytics 项目。
- 要导入该项目和 R 文件:
- 右键单击您创建的文件夹并选择导入。
- 导航到您的本地计算机上的 Analytics 项目,选择 .acl 项目文件和 .r R 脚本。
说明
请确保使用 Ctrl+单击选择项目文件夹以及 Analytics 项目中的 R 文件,以使它们被导入到 AX 服务器中。 您还必须导入源数据文件用于 t_tmp 表。
- 然后单击打开。
导入后的服务器浏览器
- 集合名称
- 文件夹名称
- 分析应用程序组
- ACL 项目名称
- 解析脚本名称
- ACL 项目名称
- 数据
- t_tmp
- 相关文件
- analysis_a.r
- analysis_b.r
- 分析应用程序组
- 文件夹名称
运行该分析脚本
从 AX 客户端的服务器浏览器中,右键单击该分析脚本并选择运行。 R 脚本将作为该分析脚本的一部分执行,并且您可以从 AX Web 客户端访问 results 结果表。
结果
运行该分析脚本后的服务器浏览器
- 集合名称
- 文件夹名称
- 分析应用程序组
- ACL 项目名称
- 解析脚本名称
- ACL 项目名称
- 数据
- 结果
- 相关文件
- analysis_a.r
- analysis_b.r
- 分析应用程序组
- 文件夹名称
结果表
- 值
- 测试值
- 值测试