IMPORT PRINT 命令

通过定义和导入打印图像(报告)文件来创建 Analytics 表。

语法

IMPORT PRINT TO 表名称 导入文件名 FROM 源文件名 <SERVER 配置文件名称> 字符集值 <代码页编号> {[记录语法] [域语法] <...n>} <...n>
记录语法 ::=
RECORD 记录名称 记录类型 记录中的行数 透明性 [测试语法] <...n>
测试语法 ::=
TEST 包括排除 匹配类型 AT 起始行,起始位置,范围 逻辑 文本
域语法 ::=
FIELD 名称 类型 AT 起始行,起始位置 SIZE 长度,域内行数 DEC WID 字节数 PIC 格式 AS 显示名称

参数

通用参数

名称 描述
TO 

数据要导入到的 Analytics 表的名称。

说明

表名称被限制为不超过 64 个字母数字字符。该名称可以包括下划线字符 ( _ ),但不能包括其他特殊字符或任何空格。该名称不能以数字开头。

导入文件名

要创建的 Analytics 数据文件的名称。

导入文件名指定为具有 .FIL 文件扩展名的带引号的字符串。例如,"Invoices.FIL"

默认情况下,数据文件 (.fil) 被保存到包含 Analytics 项目的文件夹。

请使用绝对或相对文件路径将该数据文件保存到另外的现有文件夹:

  • "C:\data\Invoices.FIL"
  • "data\Invoices.FIL"

FROM 源文件名

源数据文件的名称。源文件名称必须是带引号的字符串。

如果源数据文件未与 Analytics 项目位于同一目录中,则必须使用绝对路径或相对路径来指定文件位置:

  • "C:\data\源文件名称"
  • "data\源文件名称"
SERVER 配置文件名称

可选

包含您想要导入的数据的服务器的配置文件名。
字符集值

用于对打印图像(报告)文件进行编码的字符集。支持以下值:

  • 0 – ASCII
  • 1 – EBCDIC
  • 2 – Unicode
  • 3 – 编码文本
代码页编号

可选

如果您为字符集值指定了 3(编码文本),则还必须输入代码页编号。

RECORD 参数

通用记录定义信息。

说明

某些记录定义信息是使用映射到数据定义向导中的选项的数值代码指定的。

在脚本中,请指定数值代码而非选项名称。

名称 描述

RECORD 记录名称

数据定义向导中的记录名称。

指定记录名称在 IMPORT PRINT 命令中是必要的,但记录名称值不会出现在生成的 Analytics 表中。

在数据定义向导中,Analytics 基于记录的类型提供默认名称:

  • 详细
  • n
  • n

您可以使用默认名称或者指定不同的名称。

记录类型

在定义打印图像文件时三个可能的记录类型:

  • 0 – 详情
  • 1 – 头
  • 2 – 尾

说明

在 IMPORT PRINT 的单次执行中,您可以定义多个头记录和尾记录集,但只能定义一个详情记录集。

记录中的行数

打印图像文件中的一个记录所占用的行数。

您可以定义单行或多行记录以匹配该文件中的数据。

透明性

头记录的透明性设置。

说明

仅适用于头记录。

  • 0 – 不透明
  • 1 – 透明

透明头记录不会拆分多行详情记录。

如果头记录拆分源打印图像文件中的多行详情记录(这可能发生在分页符处),则指定 1(透明)可在生成的 Analytics 表中将详情记录合并在一起。

TEST 参数

在打印图像文件中定义一个记录集的条件。对于 RECORD 的每个实例,您都可以具有一个或多个 TEST 实例(最多 8 个)。

说明

某些条件是使用映射到数据定义向导中的选项的数值代码指定的(选项名称被显示在下面的括号中)。

在脚本中,请指定数值代码而非选项名称。

名称 描述
TEST 包括排除

如何处理匹配数据:

  • 0 –(包括)符合条件的数据被包括在记录集中
  • 1 –(排除)符合条件的数据被从记录集中排除
匹配类型

要执行的匹配的类型:

  • 0 –(精确匹配)匹配记录必须从指定起始行的指定位置开始包含指定字符或字符串
  • 2 –(字母)匹配记录必须从指定起始行中的指定起始位置开始或者在指定范围的所有位置中包含一个或多个字母字符
  • 3 –(数值)匹配记录必须从指定起始行中的指定起始位置开始或者在指定范围的所有位置中包含一个或多个数值字符
  • 4 –(空白)匹配记录必须从指定起始行中的指定起始位置开始或者在指定范围的所有位置中包含一个或多个空格
  • 5 –(非空白)匹配记录必须从指定起始行中的指定起始位置开始或者在指定范围的所有位置中包含一个或多个非空白字符(包括特殊字符)
  • 7 –(在行内查找)匹配记录必须在指定起始行中的任意位置包含指定字符或字符串
  • 8 –(在范围内查找)匹配记录必须在指定起始行中指定范围内的任意位置包含指定字符或字符串
  • 10 –(自定义图)匹配记录必须包含与从指定起始行中指定位置开始的指定字符模式匹配的字符
AT 起始行, 起始位置, 范围
  • 起始行 该条件所适用的记录行

    例如,如果您创建一个自定义图以匹配邮政编码,并且邮政编码出现在一个三行地址记录的第三行上,您必须在起始行中指定 3

    说明

    对于单行记录,起始行值始终为 1

  • 起始位置打印图像文件中用来与条件进行比较的起始字节位置
  • 范围要在针对条件进行比较时使用的从打印图像文件中的起始字节位置起算的字节数

    如果您仅使用起始字节位置,而不使用范围,请为范围指定 0

    说明

    非 Unicode Analytics1 字节 = 1 字符
    Unicode Analytics,扩展 ASCII (ANSI) 数据1 字节 = 1 字符
    Unicode Analytics,Unicode 数据2 字节 = 1 字符

    对于 Unicode 数据,范围必须是偶数个字节。例如,50,59(10 个字节)。指定奇数个字节可以防止针对条件进行正确匹配。

逻辑

条件之间的逻辑关系:

  • 0 –()当前条件和下一个条件被用逻辑 AND 进行关联
  • 1 –()当前条件和下一个条件被用逻辑 OR 进行关联
  • 4 –(新建组 > ) 当前条件是逻辑条件组中的最后一个条件,并且当前组和下一个组被用逻辑 AND 关联
  • 5 –(新建组 > ) 当前条件是逻辑条件组中的最后一个条件,并且当前组和下一个组被用逻辑 OR 关联
  • 7 –(结束)当前条件是逻辑条件组中的最后一个条件
文本

要作为匹配对象的字面量或通配符:

  • 对于精确匹配、行内查找或范围内查找,请指定唯一标识该打印图像文件中的记录集的字符或字符串
  • 对于自定义图,请指定唯一标识该打印图像文件中的记录集的字符模式

    自定义图选项使用与MAP( ) 函数相同的语法。

对于其他匹配类型,文本是空字符串 ""

FIELD 参数

域定义信息。

名称 描述
FIELD 名称 类型

要从源数据文件导入的单个域,包括该域的名称和数据类型。如果要将某个域排除在导入范围之外,请不要指定它。

有关类型的信息,请参见域数据类型标识符

AT 起始行, 起始位置
  • 起始行打印图像文件中的记录内的域的起始行

    对于打印图像文件中的多行记录,起始行使您可以在该记录的任何行开始域。如果 记录中的行数1,则起始行始终为 1

  • 起始位置打印图像文件中域的起始字节位置

    说明

    非 Unicode Analytics1 字节 = 1 字符
    Unicode Analytics,扩展 ASCII (ANSI) 数据1 字节 = 1 字符
    Unicode Analytics,Unicode 数据2 字节 = 1 字符
SIZE 长度, 域内行数
  • 长度 Analytics 表布局中的域的长度(以字节为单位)

    说明

    非 Unicode Analytics1 字节 = 1 字符
    Unicode Analytics,扩展 ASCII (ANSI) 数据1 字节 = 1 字符
    Unicode Analytics,Unicode 数据2 字节 = 1 字符

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

  • 域内行数打印图像文件中的单个域值所占用的行数

    您可以定义单行或多行域以匹配该文件中的数据。

    说明

    为域指定的行数不能超过为包含该域的记录指定的行数。

DEC

数值域的小数位数。

WID 字节数

该域的显示宽度(单位为字节)。

指定的值控制 Analytics 视图和报告中的域的显示宽度。显示宽度永远不会改变数据,但是,如果它比域长度短,则可能隐藏数据。

PIC 格式

说明

仅适用于数值域或日期时间域。

  • 数值域 Analytics 视图和报告中的数值类型值的显示格式
  • 日期时间域 源数据中的日期时间值的物理格式(日期和时间字符的顺序、分隔符等等)

    说明

    对于日期时间域,格式必须完全匹配源数据中的物理格式。例如,如果源数据为 12/31/2014,则输入格式必须为 MM/DD/YYYY

必须将格式放在引号中。

AS 显示名称

新 Analytics 表的视图中的域的显示名称(备选列标题)。

请将显示名称指定为带引号的字符串。如果您希望列标题包含换行符,请在单词之间使用分号 (;)。

当您定义 FIELD 时,必须使用 AS。要使显示名称与域名称相同,请使用以下语法输入一个空白显示名称值:AS ""。请确保在两个双引号之间没有空格。

示例

从打印图像(报告)文件导入数据

您从打印图像(报告)文件 Report.txt 导入数据。

在生成的 Analytics 表 Inventory_report 中创建一个头记录和一个包含五个域的详情记录集:

IMPORT PRINT TO Inventory_report "Inventory_report.FIL" FROM "Report.txt" 0 RECORD "Header1" 1 1 0 TEST 0 0 AT 1,17,0 7 ":" FIELD "Field_1" C AT 1,19 SIZE 2,1 DEC 0 WID 2 PIC "" AS "Prod Class" FIELD "Field_2" C AT 1,24 SIZE 31,1 DEC 0 WID 31 PIC "" AS "Prod Description" RECORD "Detail" 0 1 0 TEST 0 0 AT 1,59,59 7 "."FIELD "Field_3" X AT 1,6 SIZE 9,1 DEC 0 WID 9 PIC "" AS "Item ID" FIELD "Field_4" C AT 1,16 SIZE 24,1 DEC 0 WID 24 PIC "" AS "Item Desc."FIELD "Field_5" N AT 1,40 SIZE 10,1 DEC 0 WID 10 PIC "" AS "On Hand" FIELD "Field_6" N AT 1,50 SIZE 12,1 DEC 2 WID 12 PIC "" AS "Cost" FIELD "Field_7" N AT 1,62 SIZE 12,1 DEC 2 WID 12 PIC "" AS "Total"

备注

有关此命令工作方式的详细信息,请参见定义和导入打印图像(报告)文件和 PDF 文件

域数据类型标识符

下表列出了您在为 FIELD 指定类型时必须使用的字母。每个字母都对应于一个 Analytics 数据类型。

例如,如果您要定义一个需要字符数据类型的“姓氏”域,那么您可以指定 "C": FIELD "Last_Name" C

有关详细信息,请参见Analytics 中的数据类型

说明

当使用数据定义向导 定义包含 EBCDIC 字段、Unicode 字段或 ASCII 字段的表时,这些字段会被自动分配字母 “C”(对于 CHARACTER 类型)。

当手动输入 IMPORT 语句或编辑现有 IMPORT 语句时,您可以用更加具体的字母 “E” 或 “U” 替换 EBCDIC 字段和 Unicode 字段。

字母

Analytics 数据类型

A

ACL

B

BINARY

C

CHARACTER

D

DATETIME

E

EBCDIC

F

FLOAT

G

ACCPAC

I

IBMFLOAT

K

UNSIGNED

L

LOGICAL

N

PRINT

P

PACKED

Q

BASIC

R

MICRO

S

CUSTOM

T

PCASCII

U

UNICODE

V

VAXFLOAT

X

NUMERIC

Y

UNISYS

Z

ZONED