IMPORT EXCEL 命令
通过定义和导入一个 Microsoft Excel 工作表或命名区域来创建 Analytics 表。
语法
IMPORT EXCEL TO 表 导入文件名 FROM 源文件名 TABLE 输入工作表或命名区域 <KEEPTITLE> {ALLFIELDS|CHARMAX 最大域长度|[域语法] <...n> <IGNORE 域编号> <...n>} <OPEN>
域语法 ::= FIELD 导入名称 类型 {PIC 格式|WID 字符数 DEC 值} AS 显示名称
参数
名称 | 描述 |
---|---|
TO 表 |
数据要导入到的 Analytics 表的名称。 说明 表名称被限制为不超过 64 个字母数字字符。该名称可以包括下划线字符 ( _ ),但不能包括其他特殊字符或任何空格。该名称不能以数字开头。 |
导入文件名 |
要创建的 Analytics 数据文件的名称。 将导入文件名指定为具有 .FIL 文件扩展名的带引号的字符串。例如,"Invoices.FIL"。 默认情况下,数据文件 (.fil) 被保存到包含 Analytics 项目的文件夹。 请使用绝对或相对文件路径将该数据文件保存到另外的现有文件夹:
|
FROM 源文件名 |
源数据文件的名称。源文件名称必须是带引号的字符串。 如果源数据文件未与 Analytics 项目位于同一目录中,则必须使用绝对路径或相对路径来指定文件位置:
|
TABLE 工作表或指定范围 |
要导入的源数据文件中的 Microsoft Excel 工作表或指定范围:
|
KEEPTITLE 可选 |
将第一行数据视为域名称而非数据。如果被省略,则使用通用域名称。 如果您单个地定义域,则 KEEPTITLE 必须出现在第一个 FIELD 之前。 |
ALLFIELDS |
源数据文件中的所有域都被导入。 说明 如果您指定 ALLFIELDS,请不要指定任何单个 FIELD 语法、CHARMAX 或 IGNORE。 |
CHARMAX 最大域长度 |
仅当您未分别定义域时适用。 Analytics 表中任何初始时作为源数据文件中的字符数据的域的最大长度(单位为字符)。 |
FIELD 导入名称 类型 |
要从源数据文件导入的单个域,包括该域的名称和数据类型。 导入名称成为 Analytics 表中的域名称。导入名称无须与源数据文件中的域名称相同(尽管可以相同)。 提示 您也可以使用 AS 指定一个与导入名称不同的显示名称。 类型成为 Analytics 表中的域数据类型。类型无须与源数据文件中的域数据类型相同(尽管可以相同)。有关类型的详细信息,请参见域数据类型标识符。 排除域如果要将某个域排除在导入范围之外,请不要指定它。您还必须为被排除的域指定 IGNORE。 |
PIC 格式 |
说明 仅适用于数值域或日期时间域。
必须将格式放在引号中。 |
WID 字符数 |
Analytics 表布局中域的长度(以字符为单位)。 |
DEC 值 |
数值域的小数位数。 |
AS 显示名称 |
新 Analytics 表的视图中的域的显示名称(备选列标题)。 请将显示名称指定为带引号的字符串。如果您希望列标题包含换行符,请在单词之间使用分号 (;)。 当您定义 FIELD 时,必须使用 AS。要使显示名称与域名称相同,请使用以下语法输入一个空白显示名称值:AS ""。请确保在两个双引号之间没有空格。 |
IGNORE 域编号 <...n> 可选 |
从表布局中排除该域。 域编号指定被排除的域在源数据文件中的位置。例如,IGNORE 5 从 Analytics 表布局中排除源数据文件中的第五个域。 说明 请小心将域编号与被排除的域的位置正确对齐。 如果您指定被包括的域(FIELD定义)的或者不存在的域位置的域编号,则导入操作不会正确工作。 FIELD 参数和 IGNORE 参数之和必须等于源数据表中的域的总数。如果总数不匹配,则导入操作不会正确工作。 如果您指定 ALLFIELDS,请不要指定 IGNORE。 |
OPEN 可选 |
在命令执行后打开该命令创建的表。仅当该命令创建输出表时有效。 |
示例
导入指定的域
您执行导入以定义一个名为 Credit_Cards 的新 Analytics 表。它使用 Excel 数据的第一行作为域名称。
从源表中的十二个域,该 Analytics 表定义并包括了三个域,并且排除了九个域:
IMPORT EXCEL TO Credit_Cards "Credit Cards.fil" FROM "Credit_Cards_Metaphor.xls" TABLE "Corp_Credit_Cards$" KEEPTITLE FIELD "CARDNUM" N WID 16 DEC 0 AS "Card Number" FIELD "EXPDT" D WID 10 PIC "YYYY-MM-DD" AS "Expiry Date" FIELD "PASTDUEAMT" N WID 6 DEC 2 AS "Past Due" IGNORE 2 IGNORE 3 IGNORE 5 IGNORE 6 IGNORE 7 IGNORE 9 IGNORE 10 IGNORE 11 IGNORE 12
导入所有域
您执行导入以定义一个名为 May_Transactions 的新 Analytics 表。它使用 Excel 数据的第一行作为域名称。
Analytics 表包括源表中的所有域并且使用默认域定义。
域长度被设置为最长值
在第一个示例中,最初作为源数据文件中的字符数据的域的长度被设置为该域中最长值的长度:
IMPORT EXCEL TO May_Transactions "May_Transactions.fil" FROM "Trans_May.xls" TABLE "Trans1_May$" KEEPTITLE ALLFIELDS
域长度被限制
在第二个示例中,最初作为源数据文件中的字符数据的域的长度被设置为该域中最长值的长度,或被设置为 100 个字符的 CHARMAX 值(两者之中取较短者):
IMPORT EXCEL TO May_Transactions "May_Transactions.fil" FROM "Trans_May.xls" TABLE "Trans1_May$" KEEPTITLE CHARMAX 100
备注
说明
有关此命令工作原理的详细信息,请参见 Analytics 帮助。
分别定义域,或者使用默认定义导入所有域
在将 Excel 文件导出到 Analytics 表时,您可以使用 FIELD 参数单个地定义各个域,或者您可以使用 ALLFIELDS 参数或 CHARMAX 参数以及默认的 Analytics 域定义导入所有域。
数据导入的最大大小
文件格式 .xlsx 或 .xlsm
您可以从 .xlsx 或 .xlsm 文件导入的 Excel 列的最大数量以及域中字符的最大数量不受限制。
从这些 Excel 文件类型导入的操作受到 Analytics 数据文件 (.fil) 中的 32 KB 记录长度限制的约束。如果源 Excel 文件中的任何记录会创建比 32 KB 长的 Analytics 记录,则导入失败。
文件格式 .xls
导入 .xls (Excel 97 - 2003) 文件时会使用不同类型的处理,并且遵守下列限制:
- 最多 255 列
- 每个域最多 255 个字符
- 每个记录最多 32 KB
- 最多 65,000 行
域数据类型标识符
下表列出了您在为 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 |
|
P |
PACKED |
Q |
BASIC |
R |
MICRO |
S |
CUSTOM |
T |
PCASCII |
U |
UNICODE |
V |
VAXFLOAT |
X |
NUMERIC |
Y |
UNISYS |
Z |
ZONED |