作家指令

下面列出了Generic编写器处理的指令。显示的后缀以当前前缀< WriterKeyword >在映射文件中。默认情况下,< WriterKeyword >对于Generic writer是通用的

数据集

Generic writer进程使用这个指令来指定它将在哪个文件夹中生成输出。

如果在运行时,一般的作家是指示输出格式,需要一个输出文件名,一般作家会把输出文件夹变成一个文件名附加的最后部分文件夹名称和最常见的文件扩展名(从FME格式读取数据库)的文件夹。

例如,如果在运行时给Generic编写器的输出数据集是

c: /数据/道路

并被告知写入一个Design文件,然后它将传递一个输出数据集

c: /数据/道路/ roads.dgn

设计文件的作者,它将使用来做实际的写作。

必需的/可选

要求

工作台参数

目标通用(AnyFormat)文件夹

DEF

泛型编写器使用这个指令来定义其输出特性类型的结构。

必需的/可选

要求

描述

定义指定特性类型、允许的几何形状以及所有属性的名称和类型。根据运行时选择的输出格式,输出特性类型名称将以不同的方式使用。在某些输出格式中,特性类型将定义一个表或文件名;在其他格式中,它将定义一个层或级别。

如果Generic编写器在其“动态模式”模式下操作(由DYNAMIC_SCHEMA指令指导),则DEF行提供了一个模板,说明编写器应该如何修改输入特性类型模式定义,以形成其输出特性类型定义。在此模式中,特性类型名称将被忽略(通常指定为),并且有一个可选列表,该列表指定一组要从源模式定义中删除的属性。

GENERIC_DEF的语法是:

_DEF  fme_type  \ [ATTRS_TO_REMOVE ] \ [ ]+

fmeType限制了特性类型可以容纳的几何类型,并且必须是以下常量中的一个或多个:

  • fme_point
  • fme_line
  • fme_area
  • fme_arc
  • fme_text
  • fme_rectangle
  • fme_rounded_rectangle
  • fme_ellipse
  • fme_collection
  • fme_no_geom
  • fme_raster
  • fme_any

Fme_any用于表示允许任何可能的几何形状,而另一个参数是年代活化剂识别特征类型所接受的特定几何类型。如果特征类型应该允许几何图形的子集,那么可以用空格分隔并用引号括起来:

GENERIC_DEF roads \ fme_type "fme_line fme_arc" \…

可选ATTRS_TO_REMOVE当Generic编写器在“动态模式”模式下操作时,可能会出现关键字。它的attrList参数定义一组属性,这些属性不会从任何源模式特性复制到生成的输出定义。该集合定义为单个空格分隔的列表,如果有多个这样的属性,则必须用引号括起来:

GENERIC_DEF roads \ fme_type "fme_line fme_arc" \ ATTRS_TO_REMOVE "width direction" \…

下表显示了Generic编写器支持的属性类型。如果输出格式不支持特定的属性类型,Generic编写器将尽量选择最接近的支持的输出属性类型(如果有的话),否则将报告错误。

字段类型

描述

char(<宽度>)

字符字段存储固定长度的字符串。宽度参数控制字段可以存储的最大字符数。小于此宽度的字符串不需要填充。

varchar(<宽度>)

可变长度字符字段存储可变长度字符串。宽度参数控制字段可以存储的最大字符数。如果目标格式不支持可变长度字段,则将这些字段转换为char()字段。

缓冲

长度未知的字符字段存储长度未知且可能是无界的字符串。如果目标格式不能支持无限制的长度字段,这些字段将被转换为varchar(255)或char(255)字段。

日期

日期字段将日期存储为格式为YYYYMMDD的字符串。

datetime

Datetime字段以字符串形式存储日期时间,格式为yyyymmddhhmms .ss。

小数(<宽度>,

<小数>)

十进制字段存储单精度和双精度浮点值。width参数是分配给字段的字符总数,包括小数点。小数参数控制数据的精度,是小数右边的位数。

real32

Real32字段存储单个精度浮点值。

real64

Real64字段存储双精度浮点值。

int32

Int32字段存储32位有符号整数。

布尔

Boolean字段存储TRUE/FALSE数据。从这些字段读取或写入的数据必须始终为true或false。

int16

Int16小整数字段存储16位有符号整数,因此范围为-32,768到+32,767。

格式

该指令指定将在运行时用于输出数据的格式FME“短名称”。

格式短名称在Quick Facts中列出,作为每个作者文档的一部分,在Workbench的Reader/ writer Gallery中,也可以在运行时使用GUI WRITERPICK指令进行查询。

必需的/可选

要求

映射文件的语法

GENERIC_FORMAT形状

工作台参数

输出格式

DYNAMIC_SCHEMA

该指令指定写入器是否应该在特殊的“动态模式”模式下操作。在此模式下,实际的输出特性类型定义是在运行时根据与翻译相关的读者报告的模式定义计算的。

一个单独的、经过特殊格式化的DEF行指令指导编写器如何修改模式特性,以形成目标编写器的特性类型定义。

在此模式下操作时,Generic编写器将每个特性路由到名称与特性类型匹配的自动生成定义。

必需的/可选

可选

YES | NO(默认)

映射文件的语法

DYNAMIC_SCHEMA是的

工作台参数

动态模式模式

READER_SCHEMAS_TO_SKIP

该指令限制了“动态模式”模式下的Generic写入器从哪些读取器获取输出特性的模式信息。

通常,多阅读器引用的所有阅读器都会轮询模式信息。当这个指令被指定为非空值时,Generic编写器将把它的值解析为一个逗号分隔的读取器的数字索引列表,这些读取器的模式不被考虑。当泛型编写器生成其输出特性类型定义时,Multi-reader中位置在指定列表中的读取器将不会被参考。

如果该指令不存在,则所有输入阅读器的模式都将对输出特性类型定义做出贡献。

必需的/可选

可选

映射文件的语法

READER_SCHEMAS_TO_SKIP 0、2、4

工作台参数

要忽略的以逗号分隔的Reader模式列表