Analytics 脚本编辑器包括多种可帮助您测试或调试 Analytics 脚本的功能:

  • 从脚本中的光标位置运行脚本
  • 设置断点以在特定行暂停脚本的执行
  • 通过一次执行一行来单步执行脚本
  • 隔离脚本错误
  • 在关联的变量选项卡中,实时跟踪创建变量和向变量分配值的过程

每当在脚本编辑器中打开脚本时,都可以使用这些功能。如果打开的脚本调用一个或多个子脚本,则子脚本会在被调用时自动打开。

当脚本在单步执行模式或断点模式下运行时,它是只读的,大多数其他 Analytics 功能(包括命令行)将被禁用。如果发生脚本错误,该脚本将变为可编辑的,使您可以改正错误。

当您运行脚本时,无论您如何运行它,所有打开的脚本都将被自动保存。

说明

如果表在运行或单步执行脚本完成时保持打开状态,则 Analytics 显示区域会自动从脚本编辑器切换为在“视图”选项卡中显示打开的表。如果您想要在测试或调试脚本时继续显示脚本编辑器,您可以在脚本末尾暂时包括 CLOSE 命令。

如果您不想从脚本开头运行或单步执行脚本,您可以将光标放在您想要启动脚本执行的行中,然后右键单击并选择从光标运行从光标单步执行。从光标处运行或单步执行脚本使您可以测试脚本的特定部分,避免浪费时间和精力来没有必要地运行整个脚本。

一旦脚本开始运行,您将无法使用从光标运行从光标单步执行。您只能使用这些选项来启动脚本的执行,或在遇到或改正脚本错误之后重新启动脚本。

说明

如果您使用从光标执行脚本的功能绕过脚本的某个部分,而该部分包含脚本后续部分所需的先决性操作,则后续部分不太可能正确运行。

您可以在 Analytics 脚本中设置一个或多个断点以在特定行暂停脚本的执行。断点使您无须运行整个脚本即可测试脚本的某个部分。它们还使您可以在脚本中的特定点检查 Analytics 项目的状态。当您开发和测试脚本的比较复杂或关键的部分时,断点可以是很有用的工具。

从断点重新启动脚本

当您从断点重新启动脚本时,您具有下列选项:

  • 从该断点单步执行该脚本
  • 运行该脚本至下一个断点(如果您已经插入一个断点)
  • 运行该脚本至末尾
  • 退出该脚本

空白行和注释

如果您将断点放在空白行或注释行,则脚本会在空白行或注释之后的第一行暂停。

断点的持久性

  • 即使您关闭脚本,断点仍然存在于该脚本中。
  • 您随时可以从 Analytics 项目中的所有脚本中删除所有断点,方法是右键单击脚本编辑器并选择清除所有断点
  • 当您关闭 Analytics 时,将自动从项目中的所有脚本中删除所有断点。

步骤

您可以通过一次执行一行来单步执行 Analytics 脚本。通过单步执行脚本,您可以按可控方式测试该执行,并且在任何错误所在的确切行发现它们。

单步执行箭头

绿色箭头 当您单步执行脚本时,绿色单步执行箭头 指示该脚本中即将被执行的行。当该箭头前进至该行之后的步骤时,表明该行已执行。

红色箭头 如果该行包含无效的命令语法或某种其他类型的错误,则脚本会停止,单步执行箭头变为红色 且不再前进,以突出显示错误的位置。当您单步执行脚本时,脚本是只读的,但是如果发生错误,脚本将变为可编辑的,以使您可以改正错误。

步骤

每当您在 Analytics 中运行脚本并遇到导致脚本失败的错误时,都会自动在脚本编辑器中突出显示发生错误的行。如果脚本编辑器尚未打开,则会自动打开。将会发生此脚本错误标识操作 — 无论您是直接在脚本编辑器中运行脚本、从工具菜单运行脚本、从命令行运行脚本还是通过右键单击导航器中的脚本来运行脚本。

这一自动错误标识功能是一项强大的错误排除功能,对于在嵌套子脚本深处发生的错误而言尤其如此。具有脚本编写能力的 Analytics 用户可以在遇到错误时改正错误。不熟悉脚本编写的用户可以记录脚本的名称和发生错误的行号,从而为获取与脚本问题有关的帮助提供方便。

使用导航器中的变量选项卡可以实时跟踪创建变量和向变量分配值的过程。该选项卡显示 Analytics 项目中所有变量的名称、值和数据类别。名称按字母顺序排列。

如果您单步执行脚本,则脚本中任何用户定义的或系统生成的变量都会在创建时出现在变量选项卡中,如果它们已存在,则会更新自己的值。能够在脚本变量发生变化的同时准确地观察所发生的变化是一种重要的诊断手段,它使您可以精确地定位单靠分析脚本语法可能难以查找的脚本错误。

如果您运行脚本,在到达断点或脚本完成时,会显示所有与变量相关联的变化。

您无法单步执行多行命令,如 GROUP、LOOP 或 DEFINE FIELD . . .COMPUTED。如果您以单步执行模式运行脚本并且遇到一条多行命令,则会执行该命令的全部内容,并且单步执行箭头会被放置在紧跟该多行命令之后的那一行。

在多行命令内部不会识别断点。如果您在多行命令内部设置断点,则脚本会在紧跟该多行命令之后的那一行暂停。

提示

您或许能够通过将多行命令的内容(不带有周围的命令语法)复制到单独的脚本中来测试多行命令内容的某些部分。

如果您通过在 Analytics 中运行分析脚本来测试它,并且该脚本在分析标头中具有一个 PASSWORD 标记,则 Analytics 会自动生成一个 PASSWORD 命令并提示您输入适当的密码。此自动生成的命令使您省去了在分析脚本的脚本部分插入 PASSWORD 命令以进行测试,以及随后在将分析脚本上传到机器人应用程序或 AX 服务器之前移除该命令的工作。自动生成的 PASSWORD 命令被保存在日志中,但密码值不被保存。

当您在 Analytics 中运行分析脚本时,密码值不会被保存,因此每当您运行该分析脚本(包括运行该脚本或者从光标位置单步执行该脚本)时,您都必须指定密码。

分析脚本是带有分析标头的常规脚本,这些标头使其可以在 HighBond 平台上的机器人应用程序中或者 Analytics Exchange 中运行。您还可以在分析应用程序窗口中运行分析脚本,它是 Analytics 的一个独立组件。