#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
#!
GUI IGNORE SourceDataset_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_SERVER_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_USERID_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_PASSWORD_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_INSTANCE_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_VERSION_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_WHERE_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_TRANSLATE_SPATIAL_DATA_ONLY_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_RESOLVE_DOMAINS_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_RESOLVE_SUBTYPE_NAMES_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_IGNORE_NETWORK_INFO_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_IGNORE_RELATIONSHIP_INFO_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_SPLIT_COMPLEX_EDGES_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_SPLIT_MULTI_PART_ANNOS_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MINX_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MINY_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MAXX_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MAXY_GEODATABASE_SDE_1,GEODATABASE_SDE_IN_CLIP_TO_ENVELOPE_GEODATABASE_SDE_1,_GEODBSplitComplexAnnotations_GEODATABASE_SDE_1,_GEODB_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEODATABASE_SDE_1,_GEODBInSearchFeature_GEODATABASE_SDE_1,_GEODBInSearchOrder_GEODATABASE_SDE_1,_GEODBInSearchMethod_GEODATABASE_SDE_1,_GEODBInChildVersionName_GEODATABASE_SDE_1,_GEODBInFeatureReadMode_GEODATABASE_SDE_1,_GEODBInArchiveWhereClause_GEODATABASE_SDE_1,_GEODBInCheckSimpleGeom_GEODATABASE_SDE_1,_GEODBMergeFeatLinkedAnnos_GEODATABASE_SDE_1,_GEODBInPersistentConnection_GEODATABASE_SDE_1,_GEODBInBeginSql_GEODATABASE_SDE_1,_GEODBInEndSql_GEODATABASE_SDE_1,DestDataset_SHAPE_1,_MEASURES_AS_Z_SHAPE_1,SHAPE_OUT_ENCODING_SHAPE_1,STRICT_COMPATIBILITY_SHAPE_1
DEFAULT_MACRO DestDataset_SHAPE
GUI DIRNAME DestDataset_SHAPE Destination ESRI Shape Directory:
DEFAULT_MACRO FeatureClassList $(FME_MF_DIR)FeatureTypesToRead.txt
GUI OPTIONAL FILENAME_EXISTING FeatureClassList FeatureClassList|*.* FeatureClassList:
INCLUDE PYTHON
def ParamFunc():
# Get the file from a published parameter
ListFile = (FME_MacroValues['FeatureClassList'])
#Replace FME_MF_DIR with actual path, if necessary
#(needs to be done if FeatureClassList file is in same directory
# as the workspace. PR#37688)
replaceThis = '$(FME_MF_DIR'
directory = (FME_MacroValues['FME_MF_DIR'])
if replaceThis in ListFile:
ListFile = ListFile.replace(replaceThis,directory)
ListFile = ListFile.replace(')','',1)
f = open(ListFile,'r')
featureTypes = ''
# Read the file and add each line to the featureTypes Variable
for line in f.read().split('\n'):
featureTypes += (line + " ")
f.close()
#Return this list to the parameter
return featureTypes
value = ParamFunc()
macroName = 'FeatureTypes'
if value == None:
return { macroName : '' }
else:
return { macroName : str(value) }
END_INCLUDE
INCLUDE TCL
proc __FME_ExpandMacros {text {maxlevels 100}} {
if { $maxlevels <= 0 } { return $text; }
set pattern [join {{\$} {\([^()$]*\)}} {}]
set indices [regexp -inline -all -indices $pattern $text]
if [llength $indices] {
foreach pair [lreverse $indices] {
lassign $pair start end
set replacement {}
set replacement $::FME_MacroValues([string range $text [expr $start + 2] [expr $end - 1]])
set text [string replace $text $start $end $replacement]
}
return [__FME_ExpandMacros $text [expr $maxlevels - 1]]
}
return $text
}
proc __FME_ExpandEnvVars {text {maxlevels 100}} {
if { $maxlevels <= 0 } { return $text; }
set pattern [join {{\$} {\{[^\{\}$]*\}}} {}]
set indices [regexp -inline -all -indices $pattern $text]
if [llength $indices] {
foreach pair [lreverse $indices] {
lassign $pair start end
set replacement {}
set replacement $::env([string range $text [expr $start + 2] [expr $end - 1]])
set text [string replace $text $start $end $replacement]
}
return [__FME_ExpandEnvVars $text [expr $maxlevels - 1]]
}
return $text
}
proc __FME_EvalAndEncodeMacro {macroName} {
set macroVal {}
catch { set macroVal [__FME_ExpandMacros $::FME_MacroValues($macroName)] }
catch { set macroVal [__FME_ExpandEnvVars $macroVal] }
return [FME_EncodeText $macroVal]
}
END_INCLUDE
INCLUDE [ puts "MACRO DestDataset_SHAPE__FMEENCODED__ [__FME_EvalAndEncodeMacro DestDataset_SHAPE]" ; ]
INCLUDE [ puts "MACRO FeatureClassList__FMEENCODED__ [__FME_EvalAndEncodeMacro FeatureClassList]" ; ]
INCLUDE [ ]
INCLUDE [ if {{$(DestDataset_SHAPE)} == {}} { puts_real {Parameter 'DestDataset_SHAPE' must be given a value.}; exit 1; }; ]
#! START_HEADER
#! WORKSPACE_VERSION 1
# ============================================================================
#
# This mapping file was generated by FME Workbench
# on 05/10/12 09:54:38 for translation between GEODATABASE_SDE and SHAPE
#
# This workspace was generated with FME build 12235
#
# You may edit this mapping file to customize its operation. Comments are
# placed throughout to assist you.
#
# Modification History:
#
# Name Date Description
# ================= ======== =============================================
#
#
# ============================================================================
# ============================================================================
# The following line defines the title presented to the user when this
# mapping file is run through the FME GUI. You may modify this
# if a more meaningful title would be appropriate.
GUI TITLE GEODATABASE_SDE to SHAPE Translation
# ============================================================================
# The following line names the log file to which useful statistics about
# the translation will be written. This line can be uncommented and
# updated if you do wish to keep these statistics.
# LOG_FILENAME translation.log
# LOG_APPEND NO
# ============================================================================
# The following line instructs the FME to log any features that do not
# match any of the source feature patterns listed further down in
# this file. If you are modifying this mapping file, this will be
# useful to describe to you exactly which features you are losing
# during translation, if the statistics indicate that features are
# not being correlated or grouped. Uncorrelated features do not
# match any source specification, ungrouped features do not have
# any corresponding _DEF line.
# FME_DEBUG UNGROUPED UNCORRELATED
# ============================================================================
# The following two lines define the type of reader and writer to be
# used for this translation. If you want to translate your data
# back into its original format, you may make a copy of this file
# and switch the reader and writer types. If you rerun the FME, you
# will get your original data back again (together with any modifications
# you made in the meantime). Note that several formats are NOT
# bi-directional (for example, GIF can only be used as a WRITER)
# so a reverse translation may not always be possible.
#! START_WB_HEADER
READER_TYPE GEODATABASE_SDE
READER_KEYWORD GEODATABASE_SDE_1
READER_GEN_DIRECTIVES CONNECTION,Parameters,SERVER,maul,USERID,support,INSTANCE,port:5151,VERSION_TYPE,ConnectusingaTransactionalVersion,VERSION,SDE.DEFAULT,REMOVE_TABLE_QUALIFIER,NO,TRANSLATE_SPATIAL_DATA_ONLY,no,RESOLVE_DOMAINS,no,RESOLVE_SUBTYPE_NAMES,yes,IGNORE_NETWORK_INFO,no,IGNORE_RELATIONSHIP_INFO,yes,SPLIT_COMPLEX_EDGES,no,SPLIT_MULTI_PART_ANNOS,no,USE_SEARCH_ENVELOPE,NO,SEARCH_ENVELOPE_MINX,0,SEARCH_ENVELOPE_MINY,0,SEARCH_ENVELOPE_MAXX,0,SEARCH_ENVELOPE_MAXY,0,CLIP_TO_ENVELOPE,NO,SourceDataset,sde,FME_GEOMETRY_HANDLING,Enhanced
WRITER_TYPE MULTI_WRITER
MULTI_WRITER_DATASET_ORDER BY_ID
MULTI_WRITER_FIRST_WRITER_ID 0
MULTI_WRITER_TYPE{0} SHAPE
MULTI_WRITER_KEYWORD{0} SHAPE_1
#! END_WB_HEADER
#! START_WB_HEADER
MACRO WB_KEYWORD "GEODATABASE_SDE_1"
#! END_WB_HEADER
#! START_SOURCE_HEADER GEODATABASE_SDE GEODATABASE_SDE_1
GEODATABASE_SDE_1_DYNAMIC_WORKFLOW YES
# ============================================================================
# The following GUI line prompts for a source dataset, sometimes this is not
# used by SDE.
# The dataset this mapping file was generated from was:
#! END_SOURCE_HEADER
#! START_WB_HEADER
DEFAULT_MACRO SourceDataset
INCLUDE [ if {{$(SourceDataset)} != ""} { \
puts {DEFAULT_MACRO SourceDataset_GEODATABASE_SDE_1 $(SourceDataset)} \
} ]
#! END_WB_HEADER
#! START_SOURCE_HEADER GEODATABASE_SDE GEODATABASE_SDE_1
DEFAULT_MACRO SourceDataset_GEODATABASE_SDE_1 sde
GUI TEXT SourceDataset_GEODATABASE_SDE_1 Source ESRI Geodatabase (ArcSDE) Dataset:
# ============================================================================
# Reader connection file stuff.
# If you manually change this value for whether or not to use connection files,
# you must also make sure the correct directives appear below this to support your
# choice.
# i.e. The GEODB_SDE_CONNECTION_FILE directive should exist and not
# be commented if you set _GEODBInUsingConnFile to YES.
# _GEODBInUsingConnFile
DEFAULT_MACRO _GEODBInUsingConnFile_GEODATABASE_SDE_1 no
#=============================================================================
# READER CONNECTION PARAMETERS: Either these or the connection file should be specified.
# ============================================================================
# END OF CONNECTION PARAMETERS
#==============================================================================
# Translation flags.
#
# =============================================================================
#
DEFAULT_MACRO GEODATABASE_SDE_IN_SERVER_GEODATABASE_SDE_1 maul
GUI TEXT GEODATABASE_SDE_IN_SERVER_GEODATABASE_SDE_1 Server:
GEODATABASE_SDE_1_SERVER "$(GEODATABASE_SDE_IN_SERVER_GEODATABASE_SDE_1)"
# =============================================================================
#
DEFAULT_MACRO GEODATABASE_SDE_IN_USERID_GEODATABASE_SDE_1 support
GUI TEXT GEODATABASE_SDE_IN_USERID_GEODATABASE_SDE_1 Username:
GEODATABASE_SDE_1_USERID "$(GEODATABASE_SDE_IN_USERID_GEODATABASE_SDE_1)"
# =============================================================================
#
DEFAULT_MACRO GEODATABASE_SDE_IN_PASSWORD_GEODATABASE_SDE_1 support
GUI PASSWORD GEODATABASE_SDE_IN_PASSWORD_GEODATABASE_SDE_1 Password:
GEODATABASE_SDE_1_PASSWORD "$(GEODATABASE_SDE_IN_PASSWORD_GEODATABASE_SDE_1)"
# =============================================================================
#
DEFAULT_MACRO GEODATABASE_SDE_IN_INSTANCE_GEODATABASE_SDE_1 port:5151
GUI TEXT GEODATABASE_SDE_IN_INSTANCE_GEODATABASE_SDE_1 Instance Name:
GEODATABASE_SDE_1_INSTANCE "$(GEODATABASE_SDE_IN_INSTANCE_GEODATABASE_SDE_1)"
# =============================================================================
#
DEFAULT_MACRO GEODATABASE_SDE_IN_VERSION_GEODATABASE_SDE_1 SDE.DEFAULT
GUI TEXT GEODATABASE_SDE_IN_VERSION_GEODATABASE_SDE_1 Transactional Version:
GEODATABASE_SDE_1_VERSION "$(GEODATABASE_SDE_IN_VERSION_GEODATABASE_SDE_1)"
# ============================================================================
# The following GUI line prompts for the name of the host machine on which
# the SDE Server runs.
GEODATABASE_SDE_1_SERVER "$(GEODATABASE_SDE_IN_SERVER_GEODATABASE_SDE_1)"
# ============================================================================
# The following GUI line prompts for the username to use for
# accessing the SDE dataset.
GEODATABASE_SDE_1_USERID "$(GEODATABASE_SDE_IN_USERID_GEODATABASE_SDE_1)"
# ============================================================================
# The following GUI line prompts for the user password.
GEODATABASE_SDE_1_PASSWORD "$(GEODATABASE_SDE_IN_PASSWORD_GEODATABASE_SDE_1)"
# ============================================================================
# The following GUI line prompts for the instance
GEODATABASE_SDE_1_INSTANCE "$(GEODATABASE_SDE_IN_INSTANCE_GEODATABASE_SDE_1)"
# ============================================================================
DEFAULT_MACRO GEODATABASE_SDE_IN_CONNECTION_FILE_GEODATABASE_SDE_1
GEODATABASE_SDE_1_CONNECTION_FILE "$(GEODATABASE_SDE_IN_CONNECTION_FILE_GEODATABASE_SDE_1)"
# ============================================================================
# The following GUI line prompts for the version.
# ========================================================================
# The following GUI line prompts for the historical version name.
# ========================================================================
# The following GUI line prompts for the historical version timestamp.
# ========================================================================
# ========================================================================
# ========================================================================
DEFAULT_MACRO GEODATABASE_SDE_IN_WHERE_GEODATABASE_SDE_1
GEODATABASE_SDE_1_WHERE "$(GEODATABASE_SDE_IN_WHERE_GEODATABASE_SDE_1)"
GUI OPTIONAL TEXT GEODATABASE_SDE_IN_WHERE_GEODATABASE_SDE_1 WHERE Clause:
# ========================================================================
# Determines whether non-spatial data, such as tables, subtypes, domains,
# and relationship classes, get translated
DEFAULT_MACRO GEODATABASE_SDE_IN_TRANSLATE_SPATIAL_DATA_ONLY_GEODATABASE_SDE_1 no
GEODATABASE_SDE_1_TRANSLATE_SPATIAL_DATA_ONLY "$(GEODATABASE_SDE_IN_TRANSLATE_SPATIAL_DATA_ONLY_GEODATABASE_SDE_1)"
GUI CHECKBOX GEODATABASE_SDE_IN_TRANSLATE_SPATIAL_DATA_ONLY_GEODATABASE_SDE_1 yes%no Spatial Data Only
# ========================================================================
# Determines whether to resolve domains
DEFAULT_MACRO GEODATABASE_SDE_IN_RESOLVE_DOMAINS_GEODATABASE_SDE_1 no
GEODATABASE_SDE_1_RESOLVE_DOMAINS "$(GEODATABASE_SDE_IN_RESOLVE_DOMAINS_GEODATABASE_SDE_1)"
GUI CHECKBOX GEODATABASE_SDE_IN_RESOLVE_DOMAINS_GEODATABASE_SDE_1 yes%no Resolve Domains
# ========================================================================
# Determines whether to resolve the subtype associated with a feature to the
# text description linked to the subtype value. The text description will
# be added as an attribute on the feature.
DEFAULT_MACRO GEODATABASE_SDE_IN_RESOLVE_SUBTYPE_NAMES_GEODATABASE_SDE_1 yes
GEODATABASE_SDE_1_RESOLVE_SUBTYPE_NAMES "$(GEODATABASE_SDE_IN_RESOLVE_SUBTYPE_NAMES_GEODATABASE_SDE_1)"
GUI CHECKBOX GEODATABASE_SDE_IN_RESOLVE_SUBTYPE_NAMES_GEODATABASE_SDE_1 yes%no Resolve Subtypes
# ========================================================================
# Determines whether to ignore the network info associated with a feature
# coming from a network feature class. When set to 'yes', junctions will be
# treated as point features, and edges will be treated as polyline features,
# with the geodb_type being set to geodb_point and geodb_polyline, respectively.
# Caution should be taken when changing the value for this keyword to a different
# value than was specified when creating the mapping file/workspace.
DEFAULT_MACRO GEODATABASE_SDE_IN_IGNORE_NETWORK_INFO_GEODATABASE_SDE_1 no
GEODATABASE_SDE_1_IGNORE_NETWORK_INFO "$(GEODATABASE_SDE_IN_IGNORE_NETWORK_INFO_GEODATABASE_SDE_1)"
GUI CHECKBOX GEODATABASE_SDE_IN_IGNORE_NETWORK_INFO_GEODATABASE_SDE_1 yes%no Ignore Network Info
# ========================================================================
# Determines whether to ignore the relationship info associated with a feature
# coming from a feature class containing relationships. When set to 'yes', simple
# relationships will not be read, and attributed relationships will be read as
# tables. Caution should be taken when changing the value for this keyword to a
# different value than was specified when creating the mapping file/workspace.
DEFAULT_MACRO GEODATABASE_SDE_IN_IGNORE_RELATIONSHIP_INFO_GEODATABASE_SDE_1 yes
GEODATABASE_SDE_1_IGNORE_RELATIONSHIP_INFO "$(GEODATABASE_SDE_IN_IGNORE_RELATIONSHIP_INFO_GEODATABASE_SDE_1)"
GUI CHECKBOX GEODATABASE_SDE_IN_IGNORE_RELATIONSHIP_INFO_GEODATABASE_SDE_1 yes%no Ignore Relationship Info
# ========================================================================
# Determines whether complex edge features should be split up and each edge
# element read as a separate feature. The default behaviour is to treat an
# entire edge *feature* as an FME feature, rather than an edge *element* as an
# FME feature. Returning edge elements ensures that all network connectivity
# information on complex edges is read.
DEFAULT_MACRO GEODATABASE_SDE_IN_SPLIT_COMPLEX_EDGES_GEODATABASE_SDE_1 no
GEODATABASE_SDE_1_SPLIT_COMPLEX_EDGES "$(GEODATABASE_SDE_IN_SPLIT_COMPLEX_EDGES_GEODATABASE_SDE_1)"
GUI CHECKBOX GEODATABASE_SDE_IN_SPLIT_COMPLEX_EDGES_GEODATABASE_SDE_1 yes%no Split Complex Edges
#==============================================================================
# Determines whether annotation features should be split up and each part
# element read as a separate feature. The default behaviour is to treat an
# entire annotation *feature* as an FME feature, rather than an annotation
# *element* as an FME feature. Returning edge elements ensures that all
# rotation and positional information for each element is preserved.
DEFAULT_MACRO GEODATABASE_SDE_IN_SPLIT_MULTI_PART_ANNOS_GEODATABASE_SDE_1 no
GEODATABASE_SDE_1_SPLIT_MULTI_PART_ANNOS "$(GEODATABASE_SDE_IN_SPLIT_MULTI_PART_ANNOS_GEODATABASE_SDE_1)"
GUI CHECKBOX GEODATABASE_SDE_IN_SPLIT_MULTI_PART_ANNOS_GEODATABASE_SDE_1 yes%no Split Multi-Part Annotations
# Include this file in source setting section to add native search envelope processing
# Zero as a default means we don't do any search -- this makes workbench happier
# ===========================================================================
DEFAULT_MACRO GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MINX_GEODATABASE_SDE_1 0
GEODATABASE_SDE_1_SEARCH_ENVELOPE "$(GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MINX_GEODATABASE_SDE_1)"
GUI OPTIONAL FLOAT GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MINX_GEODATABASE_SDE_1 Minimum X:
# ===========================================================================
DEFAULT_MACRO GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MINY_GEODATABASE_SDE_1 0
GEODATABASE_SDE_1_SEARCH_ENVELOPE "$(GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MINY_GEODATABASE_SDE_1)"
GUI OPTIONAL FLOAT GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MINY_GEODATABASE_SDE_1 Minimum Y:
# ===========================================================================
DEFAULT_MACRO GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MAXX_GEODATABASE_SDE_1 0
GEODATABASE_SDE_1_SEARCH_ENVELOPE "$(GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MAXX_GEODATABASE_SDE_1)"
GUI OPTIONAL FLOAT GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MAXX_GEODATABASE_SDE_1 Maximum X:
# ===========================================================================
DEFAULT_MACRO GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MAXY_GEODATABASE_SDE_1 0
GEODATABASE_SDE_1_SEARCH_ENVELOPE "$(GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MAXY_GEODATABASE_SDE_1)"
GUI OPTIONAL FLOAT GEODATABASE_SDE_IN_SEARCH_ENVELOPE_MAXY_GEODATABASE_SDE_1 Maximum Y:
# ===========================================================================
DEFAULT_MACRO GEODATABASE_SDE_IN_CLIP_TO_ENVELOPE_GEODATABASE_SDE_1 NO
GEODATABASE_SDE_1_CLIP_TO_ENVELOPE "$(GEODATABASE_SDE_IN_CLIP_TO_ENVELOPE_GEODATABASE_SDE_1)"
GUI OPTIONAL CHECKBOX GEODATABASE_SDE_IN_CLIP_TO_ENVELOPE_GEODATABASE_SDE_1 YES%NO Clip to Search Envelope
#==============================================================================
# The following specifies that complex representations for annotation should
# be split into simpler representations.
DEFAULT_MACRO _GEODBSplitComplexAnnotations_GEODATABASE_SDE_1 no
GUI CHOICE _GEODBSplitComplexAnnotations_GEODATABASE_SDE_1 yes%no Split Complex Annotations
GEODATABASE_SDE_1_SPLIT_COMPLEX_ANNOS $(_GEODBSplitComplexAnnotations_GEODATABASE_SDE_1)
# ============================================================================
# Search Envelope Coordinate System
DEFAULT_MACRO _GEODB_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEODATABASE_SDE_1
GUI OPTIONAL COORDSYS _GEODB_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEODATABASE_SDE_1 Search Envelope Coordinate System:
GEODATABASE_SDE_1_SEARCH_ENVELOPE_COORDINATE_SYSTEM "$(_GEODB_IN_SEARCH_ENVELOPE_COORDINATE_SYSTEM_GEODATABASE_SDE_1)"
# ========================================================================
# The following determines whether to vectorize arcs. If SPLIT_AT_ARCS
# is set to yes, then arcs do not get vectorized and lines/polygons
# containing arcs get split up into line segments and arc segments.
#
# Update: This keyword is not applicable when using rich geometry. Since
# all new mapping files/workspaces have FME_USE_RICH_GEOMETRY set to YES then
# we do not need to expose this keyword.
#DEFAULT_MACRO _GEODBInSplitAtArcs no
#DEFAULT_MACRO _GEODBInSplitAtArcs NO
#GUI OPTIONAL CHOICE _GEODBInSplitAtArcs yes%no Split at Arcs
#GEODATABASE_SDE_SPLIT_AT_ARCS "$(_GEODBInSplitAtArcs_GEODATABASE_SDE_1)"
#
# ========================================================================
# The following defines the search feature for the query. It defines an
# arbitrarily complex search feature as a spatial contraint. It is in the
# form _SEARCH_FEATURE [ ]+.
DEFAULT_MACRO _GEODBInSearchFeature_GEODATABASE_SDE_1
GUI OPTIONAL TEXT _GEODBInSearchFeature_GEODATABASE_SDE_1 Search Feature:
GEODATABASE_SDE_1_SEARCH_FEATURE $(_GEODBInSearchFeature_GEODATABASE_SDE_1)
# ========================================================================
# Determines whether the spatial component or the attribute component of a
# query is performed first. This is only applicable when both spatial and
# non-spatial searches are being performed.
DEFAULT_MACRO _GEODBInSearchOrder_GEODATABASE_SDE_1 SPATIAL_FIRST
GUI OPTIONAL CHOICE _GEODBInSearchOrder_GEODATABASE_SDE_1 SPATIAL_FIRST%ATTRIBUTE_FIRST Search Order:
GEODATABASE_SDE_1_SEARCH_ORDER $(_GEODBInSearchOrder_GEODATABASE_SDE_1)
# ========================================================================
# Determines which type of search method to use. This keyword is only applicable
# when either the keyword SEARCH_ENVELOPE or the keyword SEARCH_FEATURE is specified.
DEFAULT_MACRO _GEODBInSearchMethod_GEODATABASE_SDE_1 GEODB_INTERSECTS
GUI OPTIONAL CHOICE _GEODBInSearchMethod_GEODATABASE_SDE_1 GEODB_INTERSECTS%GEODB_ENVELOPE_INTERSECTS%GEODB_TOUCHES%GEODB_OVERLAPS%GEODB_CROSSES%GEODB_WITHIN%GEODB_CONTAINS Search Method:
GEODATABASE_SDE_1_SEARCH_METHOD $(_GEODBInSearchMethod_GEODATABASE_SDE_1)
# ========================================================================
# The following specifies the name of a child version to be created. After
# the version has been created, tables will be read using this version
# rather than the version specified by the VERSION keyword.
DEFAULT_MACRO _GEODBInChildVersionName_GEODATABASE_SDE_1
GUI OPTIONAL TEXT _GEODBInChildVersionName_GEODATABASE_SDE_1 Child Version Name:
GEODATABASE_SDE_1_CHILD_VERSION_NAME $(_GEODBInChildVersionName_GEODATABASE_SDE_1)
# ========================================================================
# The following determines whether to read features from the geodatabase
# tables/feature classes or to read metadata from those tables/feature
# classes.
DEFAULT_MACRO _GEODBInFeatureReadMode_GEODATABASE_SDE_1 Features
GUI CHOICE _GEODBInFeatureReadMode_GEODATABASE_SDE_1 Features%Metadata Feature Read Mode:
GEODATABASE_SDE_1_FEATURE_READ_MODE "$(_GEODBInFeatureReadMode_GEODATABASE_SDE_1)"
# ========================================================================
# The following specifies the archive where clause to be used when retrieving
# features from an archived table in geodb.
DEFAULT_MACRO _GEODBInArchiveWhereClause_GEODATABASE_SDE_1
GUI OPTIONAL TEXT _GEODBInArchiveWhereClause_GEODATABASE_SDE_1 Archive WHERE Clause:
GEODATABASE_SDE_1_ARCHIVE_WHERE $(_GEODBInArchiveWhereClause_GEODATABASE_SDE_1)
# ========================================================================
# The following specifies that simple geometry should be checked for
# when reading features.
DEFAULT_MACRO _GEODBInCheckSimpleGeom_GEODATABASE_SDE_1 no
GUI CHOICE _GEODBInCheckSimpleGeom_GEODATABASE_SDE_1 yes%no Check for Simple Geometry:
GEODATABASE_SDE_1_CHECK_SIMPLE_GEOM $(_GEODBInCheckSimpleGeom_GEODATABASE_SDE_1)
# ========================================================================
# The following specifies whether feature-linked annotations should
# be merged onto the main feature as a text list attribute when reading.
DEFAULT_MACRO _GEODBMergeFeatLinkedAnnos_GEODATABASE_SDE_1 no
GUI CHOICE _GEODBMergeFeatLinkedAnnos_GEODATABASE_SDE_1 yes%no Merge Feature Linked Annotations:
GEODATABASE_SDE_1_MERGE_FEAT_LINKED_ANNOS $(_GEODBMergeFeatLinkedAnnos_GEODATABASE_SDE_1)
#==============================================================================
# Determines whether the connection should persist after the reader/writer
# has been shut down. The default is 'no'.
DEFAULT_MACRO _GEODBInPersistentConnection_GEODATABASE_SDE_1 no
GUI CHOICE _GEODBInPersistentConnection_GEODATABASE_SDE_1 yes%no Make Connection Persistent
GEODATABASE_SDE_1_PERSISTENT_CONNECTION $(_GEODBInPersistentConnection_GEODATABASE_SDE_1)
# ==============================================================================
# The following specifies an SQL command to execute before opening the first
# Geodatabase table.
DEFAULT_MACRO _GEODBInBeginSql_GEODATABASE_SDE_1
GUI OPTIONAL TEXT_EDIT_SQL _GEODBInBeginSql_GEODATABASE_SDE_1 SQL Statement To Execute Before Translation:
GEODATABASE_SDE_1_BEGIN_SQL{0} "$(_GEODBInBeginSql_GEODATABASE_SDE_1)"
# ==============================================================================
# The following specifies an SQL command to execute after closing all the
# Geodatabase tables.
DEFAULT_MACRO _GEODBInEndSql_GEODATABASE_SDE_1
GUI OPTIONAL TEXT_EDIT_SQL _GEODBInEndSql_GEODATABASE_SDE_1 SQL Statement To Execute After Translation:
GEODATABASE_SDE_1_END_SQL{0} "$(_GEODBInEndSql_GEODATABASE_SDE_1)"
GEODATABASE_SDE_1_DATASET "$(SourceDataset_GEODATABASE_SDE_1)"
#! END_SOURCE_HEADER
#! START_WB_HEADER
MACRO WB_KEYWORD "SHAPE_1"
#! END_WB_HEADER
#! START_DEST_HEADER SHAPE SHAPE_1
# ============================================================================
# The following GUI line prompts for a directory to be used as the
# the destination for the ESRI SHAPE files.
# The user input is stored in a macro, which is then used to define
# the dataset to be written.
# The dataset this mapping file was generated for was:
#! END_DEST_HEADER
#! START_WB_HEADER
DEFAULT_MACRO DestDataset
INCLUDE [ if {"$(DestDataset)" != ""} { \
puts {DEFAULT_MACRO DestDataset_SHAPE_1 $(DestDataset)} \
} ]
#! END_WB_HEADER
#! START_DEST_HEADER SHAPE SHAPE_1
DEFAULT_MACRO DestDataset_SHAPE_1 $(DestDataset_SHAPE)
GUI DIRNAME DestDataset_SHAPE_1 Destination ESRI Shape Directory:
# ============================================================================
# Note that this mapping file has been generated to output 3d shape files
# that have measures. FME will leave the measure data blank, but other tools
# may update these files later to hold measures. Remember that 3d shape files
# with measures cannot be read by ArcView 3.0a [unless you've applied the
# latest database patch] and older, and ArcExplorer 1.1 and older.
# If the input data source had elevation data, it will be written to the
# output files. Otherwise, the elevation will be set to 0.
# If you want to output "normal" 2d files compatible with older
# ESRI products, then just remove the "z" from the geometry keywords
# (i.e. replace "shape_polygonz" with "shape_polygon")
# If you want to output 2d files with measures, then just replace the "z"
# in the geometry keywords with a "m"
# (i.e. replace "shape_polygonz" with "shape_polygonm")
SHAPE_1_COORDINATE_SYSTEM_GRANULARITY FEATURE_TYPE
# ============================================================================
# Determines whether the attribute names should be uppercased, or whether they
# should stay as specified in the shape file. The default will be Yes for
# backwards compatibility. Once the mapping file/workspace has been generated,
# the value for this keyword should not be changed.
DEFAULT_MACRO SHAPE_OUT_UPPER_CASE_ATTR_NAMES_SHAPE_1 Yes
SHAPE_1_UPPER_CASE_ATTR_NAMES "$(SHAPE_OUT_UPPER_CASE_ATTR_NAMES_SHAPE_1)"
# ============================================================================
# The following GUI line sets whether measure values in the shape files should
# be treated as elevations.
DEFAULT_MACRO _MEASURES_AS_Z_SHAPE_1 no
GUI CHOICE _MEASURES_AS_Z_SHAPE_1 yes%no Treat Measures as Elevation:
SHAPE_1_MEASURES_AS_Z $(_MEASURES_AS_Z_SHAPE_1)
# ============================================================================
# The following keyword allows the user to choose what encoding to
# use for outputting the shape file
# BUG31194: For backwards compatibility and not outputting a .cpg file
# we have chosen to make the writer default encoding system (ANSI)
DEFAULT_MACRO SHAPE_OUT_ENCODING_SHAPE_1 ANSI
GUI OPTIONAL ENCODING SHAPE_OUT_ENCODING_SHAPE_1 ANSI%BIG5%EUC%HKBIG5%ISO%OEM%SJIS%UTF-8%CP437%CP708%CP720%CP737%CP775%CP850%CP852%CP855%CP857%CP860%CP861%CP862%CP863%CP864%CP865%CP866%CP869%CP874%CP932%CP936%CP950%CP1250%CP1251%CP1252%CP1253%CP1254%CP1255%CP1256%CP1257%CP1258%ISO8859-1%ISO8859-2%ISO8859-3%ISO8859-4%ISO8859-5%ISO8859-6%ISO8859-7%ISO8859-8%ISO8859-9%ISO-8859-11%ISO8859-13%ISO8859-15%WINDOWS-874 Character Encoding:
SHAPE_1_ENCODING $(SHAPE_OUT_ENCODING_SHAPE_1)
# ============================================================================
# BUG31474: Add an Strict compatibility flag to prevent some apps from
# crashing when record lengths are too long. By default, we want to write
# compatible files going forward.
DEFAULT_MACRO STRICT_COMPATIBILITY_SHAPE_1 Yes
GUI CHECKBOX STRICT_COMPATIBILITY_SHAPE_1 Yes%No Strict Compatibility
SHAPE_1_STRICT_COMPATIBILITY $(STRICT_COMPATIBILITY_SHAPE_1)
SHAPE_1_DATASET "$(DestDataset_SHAPE_1)"
#! END_DEST_HEADER
#! END_HEADER
LOG_FILENAME "$(FME_MF_DIR)GeoDatabase2Shape.log"
LOG_APPEND NO
LOG_MAX_FEATURES 200
LOG_MAX_RECORDED_FEATURES 200
FME_REPROJECTION_ENGINE FME
FME_GEOMETRY_HANDLING Enhanced
FME_STROKE_MAX_DEVIATION 0
LOG_FILTER_MASK -1
DEFAULT_MACRO DATASET_KEYWORD_GEODATABASE_SDE_1 GEODATABASE_SDE_1
DEFAULT_MACRO DATASET_KEYWORD_SHAPE_1 SHAPE_1
# -------------------------------------------------------------------------
GEODATABASE_SDE_1_READER_META_ATTRIBUTES fme_feature_type
# -------------------------------------------------------------------------
MULTI_READER_CONTINUE_ON_READER_FAILURE No
# -------------------------------------------------------------------------
MACRO WORKSPACE_NAME GeoDatabase2Shape
MACRO FME_VIEWER_APP fmedatainspector
# -------------------------------------------------------------------------
INCLUDE [ if {[info exists env(TEMP)]} {set gVisualizerTemp $env(TEMP)} elseif { $tcl_platform(platform) == "unix" } {set gVisualizerTemp "/tmp"} else {set gVisualizerTemp c:}; regsub -all {[ ,&]} {$(WORKSPACE_NAME)} {_} wsname; set gVisualizerTemp $gVisualizerTemp/${wsname}_[clock format [clock seconds] -format %H%M%S]; puts "MACRO WORKSPACE_TEMP_DIR $gVisualizerTemp";
MACRO VISUALIZER_FEATURE_FILE $(WORKSPACE_TEMP_DIR)/inspector.ffs
MACRO VISUALIZER_CREATE_SPATIAL_INDEX YES
# -------------------------------------------------------------------------
GEODATABASE_SDE_1_DEF SUPPORT.AnyTable geodb_type geodb_polygon geodb_oid integer OBJECTID integer NAME char(64) NAME_ALT char(64) SHAPE.AREA double SHAPE.LEN double
# -------------------------------------------------------------------------
Lookup ___KnownFeatureTypes___ SUPPORT.AnyTable yes "" no
FACTORY_DEF * TeeFactory FACTORY_NAME "GEODATABASE_SDE_1 Merger" INPUT FEATURE_TYPE * OUTPUT FEATURE_TYPE "SUPPORT.AnyTable"
# -------------------------------------------------------------------------
FACTORY_DEF * TestFactory FACTORY_NAME "Unexpected Input Remover" INPUT FEATURE_TYPE * TEST @Lookup(___KnownFeatureTypes___,@FeatureType()) == yes OUTPUT PASSED FEATURE_TYPE *
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "Source -> Generic" INPUT FEATURE_TYPE * OUTPUT FEATURE_TYPE * @Transform(GEODATABASE_SDE,FME_GENERIC,PRESERVE_GEOMETRY)
DEFAULT_MACRO WB_CURRENT_CONTEXT
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "SUPPORT.AnyTable -> DYNAMIC Correlator" INPUT FEATURE_TYPE SUPPORT.AnyTable OUTPUT FEATURE_TYPE __GO_TO_FINAL_OUTPUT_ROUTER__ multi_writer_id 0 @Transform(FME_GENERIC,SHAPE) @SupplyAttributes(fme_template_feature_type,DYNAMIC) @CopyAttributes(__wb_out_feat_type__,fme_feature_type)
# -------------------------------------------------------------------------
FACTORY_DEF * TestFactory FACTORY_NAME "Final Output Feature Type Router" INPUT FEATURE_TYPE * TEST @Value(__wb_out_feat_type__) != "" OUTPUT PASSED FEATURE_TYPE * @FeatureType(@Value(__wb_out_feat_type__)) OUTPUT FAILED FEATURE_TYPE __nuke_me__ @Tcl2("FME_StatMessage 818059 {@Value(fme_template_feature_type)} 818060 818061 fme_warn")
# -------------------------------------------------------------------------
FACTORY_DEF * TeeFactory FACTORY_NAME "Final Output Nuker" INPUT FEATURE_TYPE __nuke_me__
# -------------------------------------------------------------------------
SHAPE_1_DEF_TEMPLATE DYNAMIC SHAPE_GEOMETRY {FME_GEN_GEOMETRY} fme_schema_readers GEODATABASE_SDE_1