About Me
GIS Analyst, Central San
Carl Von Stetten
The sojourn continues…
What is
“Enterprise
Data”?
• Non-spatial tabular data
• Often part of Commercial Off-The-
Shelf (COTS) software
• Computerized Maintenance
Management Systems (CMMS)
• Enterprise Resource Planning (ERP)
systems
• CCTV or other inspection systems
• Stored in an enterprise DBMS
• Oracle
• Microsoft SQL Server
• IBM DB2
• SAP
• Microsoft Access**
• Frequently involves lots of related
tables
Old Autodesk MapGuide Web GIS
Old Web GIS Pop-Up Reports
Access	to	
Enterprise	Data	via	
Links	only
New Geocortex Web GIS
Geocortex Details Pane
This	is	the	perfect
place	for	some	
Enterprise	data!
Evolution of a Gravity Sewer Main
1989	– Pipe	installedM1 M2
Pipe ID: M2/M1
2003	– CCTV	inspection
M1 M2M5
M6
Pipe ID: M5/M1 Pipe ID: M2/M5
2005	– New	MH	installed
CCTV Pipes vs. GIS Pipes
M1 M4PR2 PR3
M4/PR3PR3/PR2PR2/M1
GIS	Pipes
M1 M4PR2 PR3
M4/M1
“Nonstop	MH	to	MH”	CCTV	Inspection
M1 M4PR2 PR3
“Perfect	Match”	CCTV	Inspection
M4/PR3PR3/PR2PR2/M1
M1 M4PR2 PR3
“Reverse”	CCTV	Inspection
PR3/M4PR2/PR3M1/PR2
Identification Formats Change
Structure	Type
Old	GIS	ID	
Format CCTV	ID	Format GIS	ID	Format
Manhole 75A1	M	12 75A1M12 75A1-M12
Cleanout 9E7		CO10 9E7CO10 13B7-CO10
Junction	Structure 47C3	JS5 47C3JS5 47C3-JS5
Rodding	Inlet 101E7 R	22 101E7R22 101E7-RI22
Pressure	Relief 47D6	P 6 47D6P6 47D6-PR6
Wye 13B5	W	5.3 13B5W5.3 13B5-W5.3
1
1 Gravity	Sewer	Main	Evolution
FME Server Process Builds “Junction Table”
2
2
2 CCTV	vs.	GIS	Pipes
4 Create	Junction	Table	Records
4
3
3
Identification	Format	Change3
FME Server Process Builds “Junction Table”
FME Server Process Builds “Junction Table”
Cross-Database
joins
• May not be common
primary/foreign key columns
• May not be optimally
indexed
• Datatypes may not match
(casting is slow)
• May mix DBMS platforms
• MS Sql Server
• Oracle
• IBM DB2
• Sybase
• MS Access
Enterprise
database table
joins
• 1:Many relationships
may need aggregation
• May not be optimally
indexed for joins
• Data may not be
consistent
• May be deeply nested
Table1
idPK
blahblahblah
yadayadayada
Table2
idPK
blahblahblah
yadayadayada
fk_idFK
1:M
Table3
idPK
blahblahblah
yadayadayada
fk_idFK
1:M
Geocortex
supports joining
to Enterprise
databases, but…
• Still subject to the “pain
points”
• poor performance
• data inconsistencies
• aggregation
• Users must “drill down”
through relationships to
get to the joined data
(e.g.: extra clicks)
• Doesn’t support nested
table joins and 1:Many
relationships
“Blend” the
Enterprise data
into the GIS
features
1. Add extra fields to
relevant geodatabase
feature classes
2. Use FME Server to
write the enterprise
data into those fields
3. Profit! J
“Blend” the
Enterprise and
GIS data into a
non-versioned
“Publish”
geodatabase
1. Duplicate the geodatabase
schema to new “Publish”
geodatabase
2. Add extra fields to relevant
geodatabase feature classes
3. Use FME Server to
truncate/repopulate the
geodatabase with the
“blended” data
4. Profit! J
FME Server Publishes “Blended” Sewer Features
InlineQuerier gets the job done
Cross-Database Joins
Citworks work	order	data	
pulled	in	via	SQLCreator
transformers
GIS	Features
WinCan CCTV	data	pulled	
in	via	SQLCreator
transformer
CCTV	“Junction	Table”	
created	in	Solution	#1
7	tables	for	parcel	
address	and	ownership	
data	in	ERP
Does	parcel	has	
permits	in	ERP?
Does	Environmental	
Compliance	monitor	
businesses	on	this	
parcel?
GIS	Features/Attribute	
Tables
Results	from	FME	
PointOnAreaOverlayer
Transformers
Cross-Database and Nested Table Joins
AttributeManger Conditional Values
FME Server Works While I Sleep!
Parcel	Blender
Mon-Fri	@	10:30pm
Sewer	Blender
Mon-Fri	@	11:30pm
CCTV	Junction	Table
Mon-Fri	@	10:30pm
Blended Sewer Data
in 3 Clicks
Place your screenshot here
Blended Sewer Data
in a Themed Layer
Place your screenshot here
Blended Parcel Data
in 3 Clicks
Place your screenshot here
Blending Enterprise Data with FME Server

Blending Enterprise Data with FME Server