处理记录定义

域定义是用来描述打印图像或 PDF 文件中的单个域的信息。因为打印图像或 PDF 文件是图像,没有任何元数据来标识域和记录,所以您需要指定一个或多个域定义来标识文件中的域,并且将其与环绕数据或空白相区分。

一个或多个域定义可能由 Analytics 在文件定义过程中自动创建,否则您必须手动创建域定义。

使用初始数据值唯一标识记录集

要开始手动定义打印图像或 PDF 文件,您可以选择初始数据值,然后捕捉关联的记录集。如果您决定使用部分或全部初始数据值来唯一标识一个记录集,请在选择包含初始数据值的域时遵守下面的指南。

  • 该域可以被放置在记录中的任何位置。它不必是记录中的第一个域。
  • 请寻找其数据具有一致结构的域。例如:
    • 具有一致格式的日期域,如 MM/DD/YYYY
    • SSN 域
    • 信用卡号域
    • 任何具有一致结构的 ID 或数值域

    具有一致结构与使用具有不同内容的域相比,使用结构一致的域可获得更大的成功。

  • 与该域上方或下方的数据相比,该域中的一个或多个被一致定位的字符必须是唯一的或者具有独特的定位。
  • 避免缺少值的域。您有可能使用缺少值的域,但这会使定义文件的过程复杂化。

说明

您用来唯一标识一个记录集的值不必非要包含在初始数据值或初始数据域中。它可以出现在包含初始数据值的排中的任何位置。要了解更多信息,请参考定义打印图像 (报告) 文件和 PDF 文件

“域定义”对话框

域定义对话框中,您可以指定信息以描述打印图像或 PDF 文件中的域。

下图显示已展开高级选项域定义对话框。

下表解释了域定义对话框中每个项的用途:

项名称

目的

名称

指定与 Analytics 所分配的通用域名称不同的域名称。

您指定的名称成为生成的 Analytics 表中的物理域名称,即表布局中的域名称。

类型

指定域的数据类型。

选项包括字符数值日期时间。如果数值或日期时间域中的值不一致,您可以尝试将域作为字符数据进行定义和导入。

行开始位置

指定记录中的哪个行包含域开头。

例如:

  • 如果包含该域的各个记录出现在单个行上,则该值必须是“1”
  • 如果包含该域的各个记录都跨越两个行,并且该域从第二行开始,则该值必须是“2”

列开始位置

指定域的起始字节位置。

例如,如果行开头的三个空格在域的第一个字符的前面,则列开始位置值必须是 ‘4’(非 Unicode Analytics)或 '7'(Unicode Analytics 中的 Unicode 数据)。

说明

域的开始位置对于定义和导入过程的成功至关重要。在定义域之后,请浏览源文件以确保开始位置适应该域中的所有值。如有必要,请调整开始位置。

对于 Unicode 数据,通常您应该指定奇数起始字节位置。指定偶数起始位置可能导致字符显示不正确。

域宽度

指定域的长度(以字节为单位)。

您指定的长度成为生成的 Analytics 表中的物理域长度,即表布局中的域长度。

说明

域长度对于定义和导入过程的成功至关重要。在定义域之后,请浏览源文件以确保域足够长以适应该域中的所有值。如有必要,请调整长度。

对于 Unicode 数据,请仅指定偶数个字节。指定奇数个字节可能导致字符显示不正确。

域高度

指定构成该域中单个值的行数。

例如:

  • 如果各个值出现在单个行上,则域高度必须是“1”
  • 如果各个值跨越两行,则该域高度必须是“2”
  • 如果各个值跨越不同数量的行(如 Note 域的内容),请设置域高度以适应跨越最大数量的行的值(请参阅下面的结束于空行

小数位

(仅限于数值域)

指定数值中的小数位数。

格式

(仅限于数值和日期时间域)

指定数值或日期时间数据的格式。

该格式需要匹配源文件中的数值或日期时间值的格式。

例如:

  • 如果像 -1,234.00 这样的数字出现在该域中,您需要选择或指定格式 -9,999,999.99
  • 如果像 31/12/2015 这样的日期出现在该域中,您需要选择或指定格式 DD/MM/YYYY。请在格式中使用 MMM 来匹配使用缩写或者被拼写出来的月份。

提示

如果源文件中的数值或日期时间数据的格式不一致,您可以将其作为字符数据导入,并且尝试在生成的 Analytics 表中使用 Analytics 函数来清理不一致的情况。

转换成单个域

(仅限于字符域)

(仅限于多行域)

指定将源文件中定义的多行域作为包含来自所有行的数据的单个域导入 Analytics。

例如,如果您定义跨越多个行的地址数据,则选择转换成单个域可创建将所有地址数据放在一行上的单个域。

如果您使转换成单个域保持未选定状态(默认设置),则多行域会被作为多个域导入 Analytics,其中每个域都包含来自单个行的数据。

如果为空则填充

指定将域值复制到后续的空白值,直至出现新的域值。

例如,如果 Product Class 域中的“01”仅出现在 Product Class 01 记录块的第一个记录中,则选择如果为空则填充会导致值“01”出现在每个记录中。

结束于空行

(仅限于多行域)

指定多行域中的值在遇到空行时终止。

此选项应对了多行域中的值跨越不同数量的行时发生的情况。您必须设置域高度以适应跨越最大数量的行的值。但是,这样做可能导致具有较少行的值和域或记录边界之间发生不匹配。选择结束于空行会导致域高度以及域和记录边界动态调整大小,以适应各个域值所占据的行数。

说明

只有当一个或多个空白行将多行域中的各个值隔开时,此功能才能正常工作。

默认的报告列:

  • 宽度
  • 备用列标题
  • 禁止合计

    (仅限于数值域)

  • 控制合计

    (仅限于数值域)

说明

默认的报告列设置可选。它们不会影响数据定义向导中域的处理。以后可以在 Analytics 中设置相同的属性。

请在生成的 Analytics 表和 Analytics 报告中指定该域的属性,就像它出现在默认视图中一样。

  • 宽度 – 指定域的显示宽度(以字节为单位)。

    在 Analytics 视图和报告中显示域的内容时,此值用作列大小。

  • 备用列标题 – 指定在 Analytics 视图和报告中显示域时,使用此列标题而不是域名称。
  • 禁止合计 – 指定不要在 Analytics 报告中自动合计该域中的值。

    默认情况下,Analytics 会自动对报告中的数值域进行合计。如果该域包含数据,如对其计算合计数没有意义的单价,您可以禁用此行为。

  • 控制汇总 – 将该域指定为控制汇总域。

    控制汇总是数值域中值的总和,可用于检查数据完整性。将数据提取到一个新表或在新表中排序时,Analytics 将在表历史记录中包含控制合计域的输入和输出合计。输入是指原始表。输出是指新表。如果两个汇总值相符,则提取或排序操作未丢失任何数据。

    如果您为多个域指定控制汇总值,则表历史记录仅报告具有最左侧起始位置的数字域。

    说明

    当您将打印图像或 PDF 文件导入到 Analytics 时,域定义对话框中的控制汇总设置不会创建控制汇总。有关为此目的创建控制汇总的信息,请参见定义打印图像 (报告) 文件和 PDF 文件

Analytics 14.1 帮助