Esri Geodatabase (ArcSDE Geodb) Reader Parameters

Database Connection

Connection File

This parameter identifies the pathname of a connection file to be used to connect to an Enterprise Geodatabase.

A connection file provides the necessary information to connect to the SDE server, such as the server name or the username.

The connection file must be a *.sde file and have the proper format for a connection file as defined by Esri. Connection files can be created in ArcCatalog.

Version

Constraints

Remove Table Qualifier

Specifies whether to keep the table qualifier. The full name of a table in a database is of the format:

<prefix>.<table_name>

Depending on the database format, the prefix can be <database_name>.<owner_name>, <owner_name>, or <schema_name>.

Selecting this parameter indicates that the reader should return the table name without any prefixes. This is useful, for example, when creating a workspace that will be passed on to another organization using the same table names, or performing a translation to another database format but with a different user name.

When this parameter is selected during workspace generation, the source feature types will be the table names without any prefix; otherwise, they will contain the owner name as a prefix. It is recommended that you do not change this parameter after generating the workspace, because it is possible for no features to be successfully passed onto the writer (since the writer is expecting feature types with different names).

Note: Even when this parameter is selected, if the table is owned by a user other than the current user, the prefix will not be dropped. This is to ensure that the reader will find the correct table.

Tables

After specifying the database connection, click the Browse button (...) to select tables for import. A connection window appears while the system retrieves the tables from the database.

Once the Select Tables dialog appears, you can select one or more tables. Click OK to dismiss the window and add the selected table name(s) to the Tables parameter.

Feature Read Mode

When set to Features, the reader outputs features stored within tables.

When set to Metadata, provides the ability to read table-level metadata. In this mode, the reader outputs one feature per feature type. The geodb_type of the feature is geodb_metadata and the entire XML metadata document belonging to the Geodatabase table is found in the attribute geodb_metadata_string.

Where applicable, the following attributes are also supplied:

  • fme_feature_identifier – Indicates the name of the object ID field,
  • fme_num_entries (Personal Geodb only) – Indicates the number of features in the table,
  • fme_contains_spatial_column – Indicates whether the table has a geometry column (or, in Esri ArcGIS terms, whether the table is a feature class)
  • fme_geometry{0} – Indicates the types of geometry the feature class contains
  • fme_dimension – Indicates whether the feature class is 2D or 3D.

If the table is a feature class, the geometry of the metadata feature returned is a polygon, representing the extents of the feature class, and the coordinate system of the feature class also gets set on the feature.

When reading metadata, the Feature Type parameters are used to determine which feature types should have metadata read from them.

Read Version Differences

When checked, only the differences between two versions will be read instead of reading all the data. Differences are read as difference features that record the inserts, updates and deletes that have occurred on the connection version since the baseline version. See the Difference Features section for the structure of difference features.

To read transactional version differences, the tables/feature classes being read must be registered as versioned and for historical version differences, those tables must additionally have archiving enabled.

When comparing two transactional versions, the baseline will actually be the common ancestor of both versions to avoid conflicts where the same record was changed in both versions.

Alias Mode

This parameter controls how Geodatabase aliases are used.

  • None – Aliases are ignored.
  • Replace Attribute Names with Aliases – (only applicable when adding a Reader) Attributes on feature types will be named for their aliases rather than their official names. A geodb_feature_class_alias attribute will be included on each feature. Use this mode when the target format should create feature types using the aliases as attribute names.
  • Expose Aliases as Metadata Attributes – For each attribute read, a second <name>_alias attribute will be added that stores the alias for the attribute in question. A geodb_feature_class_alias attribute will also be included on each feature. Use this mode when the target format is Geodatabase and the aliases should be preserved during feature class and table creation.

Advanced

Strip Braces off GlobalID and GUID

In some programs (for example, ArcGIS Pro), GlobalID and GUID attributes contain braces:

When set to Yes, this parameter removes the braces from the GlobalID and GUID attributes for compatibility with programs where these attributes do not contain braces.

The default is No.

SQL to Run Before Read

This parameter allows for the execution of SQL statements before opening a table for reading. For example, it may be necessary to create a temporary view before attempting to read from it.

For detailed information about SQL functions, click the corresponding menu item in the SQL to Run editor helpClosed.

Available menu options depend on the format.

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 block into SQL statements, 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 or writer (depending on where the SQL statement is executed) with an error. If the specified statement is preceded by a hyphen (“-”), such errors are ignored.

SQL To Run After Read

This parameter allows for the execution of SQL statements after a set of tables has been read. For example, it may be necessary to clean up a temporary view after creating it.

For detailed information about SQL functions, click the corresponding menu item in the SQL to Run editor helpClosed.

Available menu options depend on the format.

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 block into SQL statements, 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 or writer (depending on where the SQL statement is executed) with an error. If the specified statement is preceded by a hyphen (“-”), such errors are ignored.