在 AX 服务器上运行 Python 脚本

让 Analytics Exchange 管理员将外部 Python 脚本上传至 AX 服务器上的 PYTHONPATH 目录,然后从您的分析脚本中调用这些 Python 脚本以在该服务器上充分利用 Python 编程语言的面向对象特点。 要准备 AX 服务器环境以运行 Python 脚本,您必须首先安装 Python,然后设置 PYTHONPATH 环境变量。

先决条件

要在 AX 服务器上运行 Python 脚本,您必须:

  1. 在您的 AX 服务器计算机上安装 Python 脚本语言的受支持版本。
  2. 在 AX 服务器上设置 PYTHONPATH 环境变量
  3. 在 Analytics 中,创建一个要使用并导入到 AX 服务器中的项目。

说明

有关满足上述先决条件的帮助,请联系您的 Analytics Exchange 管理员并参见:

创建 Python 脚本

在 Analytics 中创建您的 Analytics 项目之后,请创建一个您可以从分析脚本中调用的 Python 脚本。

然后,在从分析脚本中调用 Python 脚本之前,将此脚本文件提供给您的 Analytics Exchange 管理员以上传至托管 AX 服务器的计算机的 PYTHONPATH 目录。 当该分析脚本在 AX 服务器上运行时,Python 可执行文件会在 PYTHONPATH 目录中寻找该脚本,因此它必须存在。

Python 文件示例

以下 Python 文件示例包含一个无价值的脚本,该脚本使用 lambda 表达式将一个数字提升至它本身的幂。 该示例旨在说明 Python 脚本如何在 AX 服务器上运行,而不是如何用 Python 分析数据。

文件名:lambda_example.py

# myFunc 求 value1 的平方并返回该值
myFunc = lambda value1: value1**2

创建 Analytics 脚本

在您的 Analytics 项目中,创建一个新的脚本以用作您在 AX 服务器上运行的分析脚本。 该脚本完成以下工作:

  1. 打开一个只包含一个记录的名为 py 的简单表。

    您必须打开一个表以在 Analytics 中执行 GROUP 命令,这里的 py 表仅用于此目的。

  2. 循环 10 次,在每个循环中,通过传递递增的计数器作为参数并将输出提取至结果表来执行 Python 脚本。

验证分析标头

在脚本的开头添加相应的分析标头标记,以便该 Analytics 脚本可以在您导入您的分析应用程序之后在 AX 服务器上运行:

COMMENT
//ANALYTIC Python 集成测试 
 验证 AX 服务器上的 Python 集成
//DATA py
//DATA results
//RESULT TABLE results
END

添加脚本逻辑

SET SAFETY OFF
DEL ALL OK
CLOSE

OPEN py

GROUP
  ASSIGN v_max = 11
  ASSIGN v_counter = 1
  LOOP WHILE v_counter < v_max
    EXTRACT PYNUMERIC("lambda_example,myFunc",0,v_counter) AS "Results value" TO "results.fil"
    v_counter = v_counter + 1
  END
END
CLOSE py

完整的解析脚本

您在 AX 服务器上运行的完整分析脚本如下所示:

COMMENT
//ANALYTIC Python 集成测试 
 验证 AX 服务器上的 Python 集成
//DATA py
//DATA results
//RESULT TABLE results
END

SET SAFETY OFF
DEL ALL OK
CLOSE

OPEN py

GROUP
  ASSIGN v_max = 11
  ASSIGN v_counter = 1
  LOOP WHILE v_counter < v_max
    EXTRACT PYNUMERIC("lambda_example,myFunc",0,v_counter) AS "Results value" TO "results.fil"
    v_counter = v_counter + 1
  END
END
CLOSE py

导入该 Analytics 项目

在您创作解析脚本后,请:

  1. 在 AX 客户端中,创建一个集合和文件夹来容纳 Analytics 项目。
  2. 要导入该项目:
    1. 右键单击您创建的文件夹并选择导入
    2. 导航到您的本地计算机上的 Analytics 项目,选择 .acl 项目文件,然后单击打开

      说明

      请确保您导入源数据文件以便将 py 表与您的 Analytics 项目一起导入。

导入后的服务器浏览器

  • 集合名称
    • 文件夹名称
      • 分析应用程序组
        • ACL 项目名称
          • 解析脚本名称
      • 数据
        • py
      • 相关文件

运行该分析脚本

从 AX 客户端的服务器浏览器中,右键单击该分析脚本并选择运行。 Python 脚本将作为该分析脚本的一部分执行,并且您可以从 AX Web 客户端访问 results 结果表。

说明

当脚本运行时,Python 可执行文件将在托管 AX 服务器的计算机的 PYTHONPATH 目录中寻找脚本文件。 如果您的 Analytics Exchange 管理员尚未将该文件上传至此目录,该分析脚本将失败。

结果

运行该分析脚本后的服务器浏览器

  • 集合名称
    • 文件夹名称
      • 分析应用程序组
        • ACL 项目名称
          • 解析脚本名称
      • 数据
        • py
        • 结果
      • 相关文件

结果表

  • 结果值
  • 1
  • 4
  • 9
  • 16
  • 25
  • 36
  • 49
  • 64
  • 81
  • 100