Reader Directives
The suffixes listed are prefixed by the current <ReaderKeyword>
in a mapping file. By default, the <ReaderKeyword>
for the Google Fusion Table reader is GOOGLEFUSIONTABLES_IN
.
NC
This directive specifies a Named Connection for OAuth 2.0 authentication to Google Fusion Table private data tables from a specific Google account.
Required/Optional
Optional
If this directive is not specified, then only public tables may be read and their encrypted Ids will need to be explicitly provided in the table list, since it is not possible to list all public tables.
Mapping File Syntax
<ReaderKeyword>_NC <named_connection>
Workbench Parameter
Named Connection
DEF
Each Google Fusion table must be defined before it can be written. The general form of a Google Fusion table definition statement is:
GOOGLEFUSIONTABLES_DEF <tableName> \
[googlefusiontables_create_table (yes|no)] \
[googlefusiontables_drop_table (yes|no)] \
[googlefusiontables_truncate_table (yes|no)] \
[googlefusiontables_mode (inherit_from_writer|insert|update|delete)]\
[googlefusiontables_update_key_columns <column1, column2, *>]
The table definition allows control of the table that will be created. If the table already exists, the majority of the googlefusiontables_
parameters will be ignored and need not be given. If the fields and types are listed, they must match those in the database.
If the table does not exist, then the field names and types are used to first create the table. In any case, if a <fieldType>
is given, it may be any field type supported by the target database.
The configuration parameters present on the definition line are described in the following table:
Parameter | Contents |
---|---|
tableName | The name of the table to be written |
googlefusiontables_create_table |
Specify whether or not to create a new table with the name of the table and columns based on the name and user attribute names and types in the writer feature type. NO |
googlefusiontables_geometry_columns |
A comma-separated list of the geometry column names for writing.. These geometry columns will be created for each of the supplied geometry column names when creating a new table or matched against the existing geometry columns when writing to an existing table. Default: geom |
googlefusiontables _drop_table |
If the table exists by this name, it should be dropped. Only valid when creating a new table. NO |
googlefusiontables _truncate_table |
If the table exists by this name, it should be truncated before any features are written to it. Will result in an empty table if combined with UPDATE or DELETE mode. NO |
googlefusiontables _update_key_columns | A comma-separated list of the columns which are matched against the corresponding FME attribute’s values to specify which rows are to be updated or deleted when the writer mode is either UPDATE or DELETE. |
Required/Optional
Optional
BEGIN_SQL{n}
Occasionally you must execute some ad-hoc SQL prior to opening a table. For example, it may be necessary to ensure that a view exists prior to attempting to read from it.
Upon opening a connection to read from a database, the reader looks for the directive <ReaderKeyword>_BEGIN_SQL{n} (for n=0,1,2,...)
, and executes each such directive’s value as an SQL statement on the database connection.
Multiple SQL commands can be delimited by a character specified using the FME_SQL_DELIMITER
keyword, embedded at the beginning of the SQL block. The single character following this keyword will be used to split the SQL, which will then be sent to the database for execution. Note: Include a space before the character.
For example:
FME_SQL_DELIMITER ;
DELETE FROM instructors;
DELETE FROM people WHERE LastName='Doe' AND FirstName='John'
Multiple delimiters are not allowed and the delimiter character will be stripped before being sent to the database.
Any errors occurring during the execution of these SQL statements will normally terminate the reader with an error. If the specified statement is preceded by a hyphen (“-”), such errors are ignored.
Required/Optional
Optional
Workbench Parameter
SQL Statement to Execute Before Translation
END_SQL{n}
Occasionally you must execute some ad-hoc SQL after closing a set of tables. For example, it may be necessary to clean up a temporary view after writing to the database.
Just before closing a connection on a database, the reader looks for the directive <ReaderKeyword>_END_SQL{n} (for n=0,1,2,...), and executes each such directive’s value as an SQL statement on the database connection.
Multiple SQL commands can be delimited by a character specified using the FME_SQL_DELIMITER directive, embedded at the beginning of the SQL block. The single character following this directive will be used to split the SQL, which will then be sent to the database for execution.
Note: Include a space before the character.
For example:
FME_SQL_DELIMITER ; DELETE FROM instructors; DELETE FROM people WHERE LastName='Doe' AND FirstName='John'
Multiple delimiters are not allowed and the delimiter character will be stripped before being sent to the database.
Any errors occurring during the execution of these SQL statements will normally terminate the reader with an error. If the specified statement is preceded by a hyphen (“-”), such errors are ignored.
Required/Optional
Optional
Workbench Parameter
SQL Statement to Execute After Translation
EXPOSED_ATTRS
This directive allows the selection of format attributes to be explicitly added to the reader feature type.
This is similar to exposing format attributes on a reader feature type once it has been generated; however, it is even more powerful because it enables schema-driven applications other than Workbench to access and leverage these attributes as if they were explicitly on the schema as user attributes.
The result of picking a list of attributes is a comma-separated list of attribute names and types that will be added to the schema features. Currently all reader feature types will receive the same set of additional schema attributes for a given instance of the reader.
Required/Optional
Optional
Mapping File Syntax
Not applicable.
While it is possible for FME Objects applications to invoke this directive, the required format is not documented.
This directive is intended for use in our GUI applications (for example, Workbench) only.
Workbench Parameter
Additional Attributes to Expose