TABLES 和 IGRAPH 命令语法转换器

如果您的命令语法文件包含 TABLES 语法,您要将其转换为 CTABLES 语法和/或您要将 IGRAPH 语法转换为 GGRAPH 语法,可以使用一个简单实用程序进行转换。但是,TABLESCTABLES 以及 IGRAPHGGRAPH 在功能上有很大差别。您可能会发现该实用程序无法转换某些 TABLESIGRAPH 语法作业,或者转换得到的 CTABLESGGRAPH 语法所生成的表格和图形可能与 TABLESIGRAPH 命令所生成的原始表格和图形差别较大。对于大多数的表,您可以编辑转换后的语法,使之生成与原始表十分相似的表。

该实用程序设计用于:

  • 根据现有语法文件创建新的语法文件。不更改原始语法文件。
  • 只转换语法文件中的 TABLESIGRAPH 命令。不更改该文件中的其他命令。
  • 以注释形式保留原始 TABLESIGRAPH 语法。
  • 用注释标识每个转换块的开头和结尾。
  • 标识无法转换的 TABLESIGRAPH 语法命令。
  • 转换符合交互式或生产模式语法规则的命令语法文件。

此实用程序无法转换包含错误的命令。还具有以下其他限制。

TABLES 限制

在某些情况下,该实用程序对 TABLES 命令的转换可能不正确,例如具有以下特点的 TABLES 命令:

  • 如果变量自身带括号(例如 var1 by (statvar) by (labvar)),那么需要在 TABLES 子命令中使用具有首字母“sta”或“lab”的带括号变量名称。这些变量将被解释为 (STATISTICS)(LABELS) 关键字。
  • 包含的 SORT 子命令使用缩写字母 AD 指示升序或降序。这些缩写字母将被解释为变量名称。

该实用程序无法转换具有以下特点的 TABLES 命令:

  • 包含语法错误。
  • 包含使用 TO 关键字引用变量范围的 OBSERVATION 子命令(例如,var01 TO var05)。
  • 包含用加号分隔成多部分的字符串(例如,TITLE "My" + "Title")。
  • 包含在没有宏扩展时会导致 TABLES 语法无效的宏调用。由于转换器不扩展宏调用,因此会将宏调用简单地视为标准 TABLES 语法的一部分。

该实用程序不转换包含在宏中的 TABLES 命令。所有宏都不受转换过程的影响。

IGRAPH 限制

IGRAPH 在 16 版本中更改较大。由于这些更改,在该版本之前的 IGRAPH 语法中创建的某些子命令和关键字可能不被接受。

转换实用程序可能会在 GGRAPH 语法中生成存储在 INLINETEMPLATE 关键字中的其他语法。此关键字只能通过转换程序创建。用户无法编辑其语法。

使用转换实用程序

转换实用程序 SyntaxConverter.exe 可以在安装目录中找到。该实用程序设计为从命令提示符处运行。命令的一般形式为:

syntaxconverter.exe [path]/inputfilename.sps [path]/outputfilename.sps

您必须从安装目录运行此命令。

如果有任何目录名中包含空格,应当用引号将路径和文件名整体括起来,如下所示:

syntaxconverter.exe /myfiles/oldfile.sps "/new files/newfile.sps"

交互式与生产模式命令语法规则

转换实用程序可以转换使用交互式或生产模式语法规则的命令文件。

交互式。 交互式语法规则为:

  • 每条命令都另起一行。
  • 每条命令都以句点 (.) 结尾.

生产模式。 生产工具和文件中的命令(通过在其他命令文件中使用 INCLUDE 命令访问)使用生产模式语法规则:

  • 每条命令必须从新的一行的第一列开始。
  • 连续行至少须缩进一个空格。
  • 命令结尾处的句点是可选的。

如果命令文件使用生产模式语法规则,并且每条命令都不以句点结尾,则在运行 SyntaxConverter.exe 时需要包含命令行开关 -b(或 /b),如下所示:

syntaxconverter.exe -b /myfiles/oldfile.sps /myfiles/newfile.sps

SyntaxConverter 脚本(仅 Windows)

在 Windows 上,您也可以通过脚本 SyntaxConverter.wwd 运行语法转换器,该脚本位于安装目录中的 Samples 目录中。

  1. 从菜单中选择:

    实用程序 > 运行脚本...

  2. 浏览至 Samples 目录并选择 SyntaxConverter.wwd

这将打开一个简单的对话框,在该对话框中可以指定新旧命令语法文件的名称和位置。