Quantcast
Channel: OpenCities Map Wiki
Viewing all 1284 articles
Browse latest View live

Bentley Map | OpenCities Map

$
0
0
Revision 115 posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/3/2020 9:07:45 PM

 

As announced at the 2018 Year in Infrastructure conference,  all of the Comprehensive Modeling Environment MicroStation products are being branded as Open... products.  This means that V8i products will remain as Bentley Map, but in moving forward, the CONNECT Edition will be known as OpenCities Map. The collateral that you see on the Bentley Communities and in software downloads pages are being modified to reflect the change.

Bentley Map | OpenCities Map Wiki Articles

Wiki articles are organized by topic categories. To locate articles of interest, select the appropriate category on the left or use the search bar at the top of this page.  If you would like to see an article about a topic that is not listed, please let us know on the forum.

In addition to the wiki articles, the following short video discusses other resources that may be of interest. 

communities.bentley.com/.../Bentley-Map-Resources-1280x720.mp4

Tags: OpenCities Map PowerView, OpenCities Map, Bentley Map Enterprise, Bentley Map, OpenCities Map Enterprise, Bentley Map PowerView

Release Information

$
0
0
Revision 25 posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/3/2020 9:10:23 PM

Browse these pages for information related to your version of software.

- CONNECT Edition FAQ

[[- Top 10 reasons to move to OpenCities Map]]

- OpenCities Map products

[[- OpenCities Map vs Bentley Map]]

[[- ReadMe information]]

- Supported operating systems

- Version Information

     - Resolved Issues

- CONNECT Edition Update 3 (10.03.00.23)

 - CONNECT Edition Update 2 (10.02.00.18)

 - CONNECT Edition Update 1 (10.01.00.22)

 - V8i Update 10 (08.11.09.882)

- V8i Update 9 (08.11.09.864)

- V8i Update 8 (08.11.09.862)

- V8i Update 7 (08.11.09.836)

- V8i Update 6 (08.11.09.834)

- V8i Update 5 (08.11.09.805)

- V8i Update 4 (08.11.09.763)

- V8i Update 3 (08.11.09.713)

- V8i Update 2 (08.11.09.666)

- V8i Update 1 (08.11.09.614)

 

  

      

Tags: Enhancements, version, release, Bentley Map, fixes

- Top 10 reasons to move to OpenCities Map

$
0
0
Revision 1 posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/3/2020 9:13:40 PM

- CONNECT Edition FAQ

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/5/2020 5:31:42 PM

Bentley Map refers to the V8i product line.

OpenCities Map refers to the CONNECT Edition product line.

QuestionAnswer
How can I upgrade from V8i to CONNECT Edition?

There are three possibilities to upgrade from V8i to CONNECT Edition:

1. If you own Bentley Map PowerView V8i or Bentley Map V8i or Bentley Map Enterprise V8i:

  • Then you can upgrade to CONNECT Edition at no cost.  The same license will work for both V8i and CONNECT Edition.

2. If you own MicroStation V8i and Bentley Map for MicroStation V8i you have two choices:

  • You can decide to exchange your Bentley Map for MicroStation V8i  license for a OpenCities Map CONNECT Edition license.  There is no cost for this license exchange however the price of SELECT will increase.
  • Or, you can decide to exchange both the MicroStation V8i and Bentley Map for MicroStation V8i licenses for one license of OpenCities Map Enterprise CONNECT Edition.  There is no cost for this exchange, however the price of SELECT will increase.

3. If you own MicroStation V8i and want to purchase Bentley Map for MicroStation V8i:

  • Bentley Map for MicroStation is no longer available.  For the price of Bentley Map for MicroStation V8i, the upgrade path is to exchange your MicroStation V8i license to a OpenCities Map Enterprise CONNECT Edition license.   

For pricing information, please contact your account manager.

Where can I find the  "for MicroStation" version for Map SELECTseries 10?

Bentley Map for MicroStation is no longer available.

Previous versions of Map included a layered option to install on an existing seat of MicroStation. This “For MicroStation” layered option has been discontinued. The two available products are now: Map V8i (SELECTseries 10) and Map CONNECT, both of which are stand-alone products - not layered on top of an existing seat of MicroStation.

If you own MicroStation V8i and Bentley Map for MicroStation V8i you have two choices:

  • You can decide to exchange your Bentley Map for MicroStation V8i  license for a OpenCities Map CONNECT Edition license.  This can be done at any time, no need to wait for a portfolio balancing date. Simply speak with your Bentley Account Manager, or file a Service Request with the Bentley Contracts office asking for the exchange. There is no cost for the exchange however the price of SELECT will increase.

  • Or, you can decide to exchange both the MicroStation V8i and Bentley Map for MicroStation V8i licenses for one license of OpenCities Map Enterprise CONNECT Edition.  This can be done at any time, no need to wait for a portfolio balancing date. Simply speak with your Bentley Account Manager, or file a Service Request with the Bentley Contracts office asking for the exchange. There is no cost for the exchange however the price of SELECT will increase.

     

Map stand-alone contains both Map and MicroStation commands found in the layered application.

 

Will OpenCities Map V8i for MicroStation work with MicroStation CONNECT Edition?No. The 32-bit architecture of Bentley's V8i products is incompatible with MicroStation CONNECT Edition's 64-bit architecture.
When can a OpenCities Map for MicroStation CONNECT Edition be expected?OpenCities Map will not be available as a layered product in the CONNECT Edition release. As with all CONNECT Edition products, OpenCities Map CONNECT will be a standalone product.
When will I have access to Bentley's Cloud Services, that are integrated seamlessly with MicroStation CONNECT Edition?Bentley Cloud Services became available in Bentley Map V8i (SELECTseries 4).
When was OpenCities Map CONNECT Edition released?The initial release of OpenCities Map CONNECT Edition was spring of 2018.
Can I install Map CONNECT Edition on the same machine that has Map V8i?

Yes, but be sure to install it in a different folder.

Where can I find information about expiring support for older versions of Bentley Map?

Please refer to Bentley Support Policy.

Where can I find more information on the changes to workspaces and configuration in the CONNECT Edition? 

There are a number of pages dedicated to the configuraton changes.  Please refer to the following links: 

What version of Map uses Subscription Entitlement Service (formerly CONNECT Licensing)?

Subscription Entitlement Service (formerly CONNECT Licensing) was introduced with OpenCities Map CONNECT Edition Update 2 (10.02.00.18) and Map V8i (SELECTseries 10). 

Subscription Entitlement Service does not use activation keys. To enhance security, the licensing requires users become registered in User Management and then sign in with those credentials to access the application. Please refer to the following links: 

When I download OpenCities Map, I only get a small .exe file.  When I run the exe, it downloads installation files.  How can I keep those installation files so that I can distribute them to my users? 

To distribute installation files to your users, you'll need to create a deployment image.  Please refer to the following article for further details:

My users don't have an internet connection.  How can they install OpenCities Map products?

You'll need to create a deployment image as described in the following article:

Are there any resources for a CAD Manager for help with migrating to CONNECT?

Yes, please refer to link in the CAD Managers Guide to CONNECT Edition .

I have third-party add-ons for Bentley Map V8i.  Will they work in OpenCities Map CONNECT Edition?

OpenCities Map CONNECT Edition is a 64-bit application. While the DGN file format has not changed, the following will need attention.

  • MDL and native code applications will need to be recompiled.
  • VBA applications may require some modification.
  • MicroStation BASIC macros will no longer function and will have to be rewritten in another supported language.

Note: If you are running third-party applications in Bentley Map V8i, then please contact the authors directly to ask if they have plans to port their application to OpenCities Map CONNECT Edition.

Tags: CONNECT Edition, v8i, Bentley Map Enterprise, Bentley Map PowerView V8i, Bentley Map for MicroStation, Bentley Map

- Supported operating systems

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/5/2020 5:31:42 PM

The table below is an overview of the tested and supported operating systems for OpenCities Map.  Information on operating system support for each version of OpenCities Map can be obtained from the versions Readme file under the topic Installation Requirements

Note:  OpenCities Map generally follows MicroStation.  For MicroStation supported operating systems, please refer to the following  https://communities.bentley.com/products/microstation/w/microstation__wiki/31444/operating-systems-supported-by-microstation-versions


 

ProductVersion

Operating System

OpenCities Map CONNECT Edition x64 (Update 3)

10.03.00.23

Windows 10 (64-bit)

Windows 8.1 (64-bit)

Windows 7 SP1 (64-bit)

Windows Server 2012 (64 bit)

  • Windows Server 2008 R2 SP1(64 bit)
OpenCities Map CONNECT Edition x64 (Update 2)

10.02.00.18

Windows 10 (64-bit)

Windows 8.1 (64-bit)

Windows Server 2016 (64-bit)

Windows Server 2012 (64-bit)

OpenCities Map CONNECT Edition x64 (Initial Release)

(Update 1)

10.00.00.30 to

10.01.00.22

Windows 10 (64-bit)

Windows 8.1 (64-bit)

Windows 7 (64-bit)

Windows Server 2012 (64-bit)

Windows Server 2008 (64-bit)

Bentley Map V8i (SELECTseries 4)  

08.11.09.882 to

08.11.09.908

 

Windows 10 (32-bit and 64-bit)

Windows 8.1 (32-bit and 64-bit)

Windows 8 (32-bit and 64-bit)

Windows 7 (32-bit and 64-bit)

Windows Server 2008 (32-bit and 64-bit)

Windows Server 2003 (32-bit and 64-bit)

Bentley Map V8i (SELECTseries 4)

08.11.09.713 to

08.11.09.864

 

Windows 10 (32-bit and 64-bit)

Windows 8 (32-bit and 64-bit)

Windows 7 (32bit and 64-bit)

Windows Server 2008 (32-bit and 64-bit)

Windows Server 2003 (32-bit and 64-bit)

Bentley Map V8i (SELECTseries 4)

08.11.09.503 to

08.11.09.666

Windows 8 (32-bit and 64-bit)

Windows 7 (32-bit and 64-bit)

Windows Server 2008 (32-bit and 64-bit)

Windows Server 2003 (32-bit and 64-bit)

Bentley Map V8i (SELECTseries 4)08.11.09.443

Windows 7 (32-bit and 64-bit)

Windows Vista (32-bit and 64-bit)

Windows XP (32-bit and 64-bit)

Windows Server 2008 (32-bit and 64-bit)

Windows Server 2003 (32-bit and 64-bit)

Bentley Map V8i (SELECTseries 3)

08.11.09.91 to

08.11.09.107

Windows 7 (32-bit and 64-bit)

Windows Vista (32-bit and 64-bit)

Windows XP (32-bit and 64-bit)

Windows Server 2008 (32-bit and 64-bit)

Windows Server 2003 (32-bit and 64-bit) 

Bentley Map V8i (SELECTseries 2) 

08.11.07.425 to

08.11.07.434

Windows 7 (32-bit and 64-bit)

Windows Vista (32-bit and 64-bit)

Windows XP (32-bit and 64-bit)

Windows Server 2008 (32-bit and 64-bit)

Windows Server 2003 (32-bit and 64-bit) 

Bentley Map V8i (SELECTseries 1)  08.11.07.113

Windows 7 (32-bit and 64-bit)

Windows Vista (32-bit and 64-bit)

Windows XP (32-bit and 64-bit)

Windows Server 2008 (32-bit)

Windows Server 2003 (32-bit and 64-bit)

Bentley Map V8i (SELECTseries 1)08.11.07.87

Windows 7 (32-bit and 64-bit)

Windows Vista (32-bit and 64-bit)

Windows XP (32-bit and 64-bit)

Windows XP Tablet PC Edition,

Windows Server 2003 (32-bit and 64-bit) 

Bentley Map V8i  08.11.05.49

Windows Vista (32-bit)

Windows XP (32-bit)

Windows Server 2003 (32-bit)

 

Bentley does not support its software running on Microsoft operating systems versions that Microsoft has retired. More information on Microsoft's application retirement policy you can read in the article Microsoft Lifecycle Policy and the Windows Lifecycle Fact Sheet.

For similar information on Bentley products, refer to the Bentley Product Support article.

Tags: operating systems, Windows 10

- OpenCities Map products

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/5/2020 5:31:42 PM

Important Note:  Beginning with the CONNECT Edition,  OpenCities Map is now a standalone product and is not available as a layered application for MicroStation.  For further information, please refer to the question How can I upgrade from Bentley Map V8i to OpenCities Map CONNECT Edition? in the CONNECT Edition FAQ

---

The OpenCities Map CONNECT Edition product line includes the following:

OpenCities Map PowerView -  For users that primarily need to view and perform light 2D feature acquisition and editing. OpenCities Map PowerView can query from spatial databases.

OpenCities Map - Designed for users that need to create, edit, manage, and analyze spatial databases. OpenCities Map can query, edit and post to spatial databases.

OpenCities Map Enterprise - Is designed for users that need all the functionality of OpenCities Map as well as the ability to execute advanced reality data processing with Bentley Descartes, and/or long transactions with a two-tier connection to Oracle Spatial.  Bentley Descartes  is included with OpenCities Map Enterprise. OpenCities Map Enterprise also supports full 3D editing.

ThemeOpenCities Map EnterpriseOpenCities MapOpenCities Map PowerView
Reality Data Processing (Raster, STM, Point Cloud and Reality Meshes)Y--
3D Placement and Editing ToolsY--
Animation CreationY--
XFM 3D Smart EditingY--Update 3
XFM Textures EditingFuture--
Export to LumenRTY--Update 5
3D BufferY--Update 5
3D Split / MergeY--Update 5
Promote to CityGMLY--Update 5 (Tech Preview)
CityGML EditingY--Update 5 (Tech Preview)
Posting to Spatial Data Sources (Oracle, SQLServer, FGDB, PostGIS)YY-
Posting to Spatial Data Sources (ArcGIS Server and ArcGIS Online)YY-Update 4
Exporting Geospatial Data (SHP, MIF, TAB, GML, FGDB)YY-
Export to MicroStation Elements from Map ManagerYY-
CityGML Import / ExportYY-Update 5 (Tech Preview)
Publishing to iModelYY-
Geographic Coordinate System Management and EditingYY-
Buffers and Overlays AnalysisYY-
FME IntegrationYY-Update 3
Enhanced Analyze ToolYYYUpdate 5
AutoPromoteYYYUpdate 5
Free support of Bing MapYYY
Display of Reality Meshes, Point Clouds, TexturesYYY
Querying from Spatial Data Sources (Oracle, SQLServer, WFS, FGDB, PostGIS, ArcGIS Server and ArcGIS Online)YYY
Importing from Spatial Data Sources (Oracle, SQLServer, WFS, FGDB, PostGIS, ArcGIS Server and ArcGIS Online)YYY
Importing Geospatial Files (SHP, MIF, TAB, GML)YYY
Publishing to Map MobileYYY
Data BrowserYYY
Data Capture and MaintenanceYYY
Map Management and Thematic MappingYYY
Tags: OpenCities Map PowerView, OpenCities Map, Bentley Map Enterprise, Bentley Map, OpenCities Map Enterprise, Bentley Map PowerView

- ReadMe information

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/5/2020 5:31:42 PM

CONNECT Edition:

The OpenCities Map CONNECT Edition ReadMe can be found in the on-line product documentation.   Alternatively, you can access a local HTML copy of the ReadMe in your installation folder:   ... /Documentation/htm/Readme.html. 

You can access this HTML content by unchecking Settings > User > Preferences > Help Settings > Use Online Help

Bentley Map V8i:

Bentley Map V8i ReadMe files are installed locally.  Look for readme_Map*.chm in your installation folder which is typically .../program files (x86)/Bentley/

Tags: readme

- OpenCities Map CONNECT Edition vs Bentley Map V8i

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/5/2020 5:31:44 PM

The following table illustrates the current differences between the OpenCities Map CONNECT Edition and Bentley Map V8i and is subject to change without notice.

ThemeOpenCities Map Enterprise CONNECT EditionBentley Map Enterprise V8i
Reality Mesh ProcessingY-
Reality Mesh ClassifiersY-
Importing, Querying and Posting in PostGISY-
Publishing to iModel 2.0Y-
Alternate Coordinate SystemYY
Grids and GraticulesYY
FME IntegrationYY
Cartographic StylesYY
Topology Creation and Topology CleanupYY
Export Map Manager features to MicroStation ElementsYY
Advanced Map Finishing-Y
Bentley Cadastre-Y
Reference File Index (Seamless Mapping)-Y
Tags: CONNECT Edition, comparison, v8i

- Product Names: OpenCities Map vs Bentley Map

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/5/2020 5:31:44 PM

Moving forward, several of the CONNECT edition product lines are branded as Open_____. For example, OpenRoads, OpenRail, OpenBuildings and OpenCities.  

Therefore, with respect to product names, Bentley Map is used for the V8i product line and OpenCities Map is for the CONNECT Edition product line.

All new wiki content will refer to OpenCities Map.

Tags: OpenCities Map, Bentley Map

- Domain list width (Form View width)

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:30:29 PM

An alternate solution to setting domain list widths, is to adjust the width of the field in the form. 

For example, this schema has a number of comboBox properties defined as 36 characters:

When the placement metadata is inserted, and Use Form View is turned on, it results in drop-down fields that may be too wide and require scrolling to use.

To resolve this, navigate to Operations > Feature > Dialogs > Form View and adjust the Width of the dialogItems for the Form.

The adjustments will be applied to the dialog in Map:

You may also want to change the width of the formView from its default value of 42 to something more manageable.  This change should be made in the Place and Edit dialogs found in the Operations node.

Note:  If you prefer to not use a formView, then adjust the width of each dialogItem in the Place and Edit dialogs.

As you can see, it's relatively simple to control the width of your comboBox fields.  That said, remember that edits to Operations are overwritten if you insert placement metadata again for the selected feature.

Spatial Databases

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:41:50 PM

- 3D arcs being stroked when posted and queried

[[- Angle of queried point feature is wrong]]

[[- Conflict Inspector]]

[[- Converting DGNs with MSLinks to MS SQL Server Spatial via FME]]

- Creating a Map schema for Spatial Features

[[- Creating Domain Lists in Microsoft SQL Server Spatial or Oracle]]

- Create XFM DGN file using Import from database

[[- Creating Oracle Spatial multi-table views]]

[[- Creating Oracle Spatial Views]]

[[- Data streaming]]

[[- Data streaming and the Data Browser]]

[[- Date field settings, PBA replacement text for use with a SQL Server Database]]

[[- Determine which features are locked]]

[[- Difference between Erase and Delete for removing spatial database features]]

[[- Disable Connect to Database dialog]]

- Establish database connection upon startup

- Esri File Geodatabase as a Graphical Source

[[- Item names showing __x00##__]]

[[- Keep connection to database open when changing files]]

- Key-ins for interacting with spatial databases

- Key-ins to created queries incorporating a simple WHERE

[[- Long transactions - Versioned optimistic transactions]]

[[- Non planar polygon posting error ORA-54505]]

[[- Oracle views in spatial feature definitions]]

- Plane Constraints

- Register features times out with error

[[- Saving connection parameters to settings file]]

[[- SQL Server Features Not Displaying in Bentley Map]]

[[- Using Joins to create custom searches]]

- WFS graphical source connection and feature registration

Tags: Microsoft SQL Server, PostGIS, Oracle Spatial, Bentley Map

- Register features times out with error

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:48:51 PM

There may be situations when registering features causes a time out error with the following message:

Execution Timeout Expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.  The wait operation timed out.

Timeout errors are caused by the database server and not the feature registration wizard.  The following article may be helpful:

SQL SERVER – Timeout expired. The timeout period elapsed prior to completion of the operation

Tags: SQL Server Spatial, SQL Server, timeout, Register Features

- SQL Server Features Not Displaying in Bentley Map

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:48:51 PM

Issue:

A client lost some data, or so they thought, because the Microsoft SQL Server Spatial features were not displaying in Bentley Map. Looking at the database, the feature was actually in the table when viewing the Spatial results.  Unfortunately this is not the only table that has this problem where random features are not displaying.

So what could be the problem?

Resolution:

In this case, the table was a 'polygon' table and some of the polygons are in fact “multi-polygons”.  In the GSA schema file, the definition is set to a single polygon type. They may not look multi-polygon on the screen but some of them are.  Re-register the feature and set the Type to Polygon Collection in the GSA Schema file.

The “missing” features now query correctly.

Tags: Bentley Map, schema, Register Features, GSA

- Using joins to create custom searches

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:48:51 PM

This article will present the details required to perform custom searches by creating a Join using Bentley Map. Two types are illustrated – Map Manager Joins using XFM Features, and SQL Server Spatial Joins using database Views and Tables.

Contents

Introduction. 2

Map Manager Join. 4

SQL Server Spatial Database Join. 7

 

An introduction to joins

Introduction

Bentley Map supports two types of joins to reveal feature properties from multiple tables.

A simple join can be defined via the Map Manager which provides the ability to join the properties of selected features through a common attribute.   Joining features in this way makes the properties of the other feature available whenever the selected features are reviewed or browsed.

A spatial database join is used for performance improvements and provides a means to execute searches on the database properties when querying a feature.  

For example, without a database join, the ability to perform a search for your query is restricted to only those properties found in the features table:


With a database join, a search for the query can be performed on multiple tables.


 

Map Manager Join        

The Map Manager in Bentley Map provides the tools to create a join from the Context menu – right-click on any Feature name to access the context menu.


In the following example, both the LOTS and BUILDINGS tables contain the property BUILDINGID.


This allows you to perform a simple join in Bentley Map to review the properties from both tables.

To do this, create a join using the Join option from the Map Manager and select the common property between the two tables. Note that the Define Joins dialog shows the property names as defined in the Display Name in the Geospatial Administrator. This may be a different name that what’s defined in the database.

Once a join is established, the properties of both tables will be shown in the Analyze Result dialog. However, due to performance issues, the Data Browser will only show the left side property, or in this example, the Lots.


This type of join is saved in the Map model in which they are defined and can also be created with a key-in.

Joins can be created by using key-ins as below:

MAP JOIN ADD feature1.property1=feature2.property2- creates a join between feature 1 and feature 2.

MAP JOIN SHOW - Shows the Joins dialog.

MAP JOIN CLEAR - Removes all joins.

MAP JOIN REMOVE feature1.property1=feature2.property2 - Removes the joins specified. It should respect f1.p1=f2.p2 format. f1 must always be specific while wild cards can be used for other parameters.

SQL Server Spatial Database Join

Spatial graphical sources joins are performed at the database level for performance improvements as well as to:

  • Provide query simplification and standardization since the view query is executed at the database level rather at the desktop.

  • Enforce security granting access on a view to those users who are permitted to view those database rows.

 

When working with feature classes from spatial graphical sources, joins cannot be made from a left side feature class to a right side class that is not in the same graphical source.

In this example, LOTS and STRUCTURES both contain the property BuildingID which will be used to define the join. The STRUCTURES table contains supplementary information for the structures on each lot. On its own, the content in this table cannot be queried graphically in Bentley Map due to the lack of geometry information.


A database view can be used to create discoverable Bentley Map features containing property information from multiple tables. A database view can be described as a virtual table in the database where the data in the view is not stored as a distinct object, but is accessed via a SELECT statement.  Database views can be used for a number of functions including joining columns from multiple tables so they appear as a single table. 

Use the following SQL Script to create discoverable Bentley Map feature where:

Table_A contains the geometry and properties for a line, point or polygon feature.

Table_B contains properties related to Table_A via a common column between the two tables.

CREATE VIEW ViewName

       AS

       SELECT

              dbo.Table_A.id AS PKID,

              dbo.Table_A.GEOM,

              dbo.Table_A.Column_1,

              dbo.Table_A.Column_2,

              dbo.Table_A.Column_3,

              dbo.Table_B.Column_4,

              dbo.Table_B.Column_5,

              dbo.Table_B.Column_6,

              dbo.Table_B.Column_7

             

       FROM

              dbo.Table_A

              LEFT OUTER JOIN

       dbo.Table_B ON dbo.Table_A.CommonColumn = dbo.Table_B.CommonColumn

GO

 

 

In the following SQL, a join is created between the LOTS and STRUCTURES tables via the BuildingID column.

CREATE VIEW LotsView

       AS

       SELECT

              dbo.Lots.dgn_id AS PKID,

              dbo.Lots.GEOM,

              dbo.Lots.Address,

              dbo.Lots.PropTax,

              dbo.Lots.PropVal,

              dbo.Structures.YearBuilt,

              dbo.Structures.HeatType,

              dbo.Structures.OccupClass,

              dbo.Structures.RollNumber

             

       FROM

              dbo.LOTS

              LEFT OUTER JOIN

       dbo.Structures ON dbo.Lots.BuildingID = dbo.Structures.BuildingID

GO

 

A refresh of the Views node in the database will show the newly created View:


 

For Bentley Map to use this new information, the View needs to be registered as a feature.   This is done via the Geospatial Administrator by selecting Register Features from the SQL Server Spatial Connection node.



 

Once registered, the View will appear as a valid feature which can be further edited to show the correct display name and symbology.


When the schema is exported to the workspace, the View will be available for the users to query.   In this example, only those lots with structures that were built from 1951 and later are queried from the database.


When the features are analyzed, both the Data Browser and Analyze Results dialog will show properties as defined in the Database View.


 


 

The information presented above is intended as an introduction to database joins. Please refer to the Bentley Map Help document for more information.

 

Select this link to download the PDF file: Using Joins to Create Custom Searches 


Tags: SQL Server Spatial, Join, View, Bentley Map, Map Manager

- Key-ins for interacting with spatial databases

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:48:51 PM

The GDI family of commands provides access to Bentley Map interoperability and spatial database key-ins.  The following table is from Bentley Map help file and is subject to change. 

Spatial Database Key-ins

Key-in

Required arguments

Optional arguments

Notes

GDI CONNECT FILE

file=fileName

user=userName password=password

Workspace configuration variables can be used of the form $(VarName)

GDI CONNECT GRAPHICALSOURCE

name=graphicalSourceName

user=userName password=password

If a name is not provided, then an attempt will be made to connect to the first graphical source.

GDI CONNECT ORACLE

user/password@host:port/database

user/password@host/database

user/password@service

-

Service is the TNS Service name

GDI CONNECT ORACLE

user=userName password=password host=hostName

database=databaseName

port=portNumber

User and password are optional if using Windows authentication

GDI CONNECT ORACLE

user=userName password=password

service=serviceName

-

User and password are optional if using Windows authentication.

Service is the TNS Service name

GDI CONNECT SQLSERVER

user/password@host:database

host:database

-

If using Windows authentication, use the second form.

e.g. gdi connect sqlserver localhost\SQLEXPRESS:EastCity

GDI CONNECT SQLSERVER

user=userName password=password host=hostName

database=databaseName

-

User and password are optional if using Windows authentication

GDI CONNECT WFS

user/password@url

user/password@url|namespace

-

url is the only required parameter, so you could have a connect string like @myurl.mydomain.com

GDI CONNECT WFS

url=url namespace=namespace

user=userName password=password

url is the only required parameter

GDI CONNECT GDBgdbfile nameThe path can contain spaces.
 dir When using the dir argument, add double quotes for paths with spaces. For example, gdi connect gdb dir="d:\New Folder\MyFeatures.gdb". This is also true when variables are used to define paths with spaces such as MAPGBD=d:\New Folder\. In that case, use the following: gdi connect gdb dir="$(MAPGDB)MyFeatures.gdb"
    
    

For QUERY, POST, DISCARD, LOCK, UNLOCK, ERASE statements

feature=feature1,feature2,…

applywhere=true|false

-

A list of features to act upon

whether or not to apply the where clauses (default: true)

GDI QUERY

-

all

fence

view viewnum

Queries the selected features described in the Map Connections interface. A spatial qualifier needs to be present. If not, you will be prompted through the standard interface. If All is specified then all selected features in the open connection will be queried. If either of the optional spatial qualifiers (fence or view) are present then the query will be restricted to that fence or view.

GDI LOCK

Not valid for WFS data sources

all

fence

view viewnum

selection

refresh=true|false

This will lock the features specified by the defined spatial qualifier.

whether or not to refresh features (default: false)

GDI UNLOCK

Not valid for WFS data sources

all

fence

view viewnum

selection

discard=true|false

This will unlock the features specified by the defined spatial qualifier

whether or not to discard changes (default: false)

GDI POST

Not valid for WFS data sources

all

fence

view viewnum

selection

continue=true|false

This will post all changed features subject to any partial posting variables and settings

whether or not to continue on error (default: true if GDI_PARTIAL_POSTING is set, false otherwise)

GDI DISCARD

Not valid for WFS data sources

all

fence

view viewnum

selection

refresh=true|false

retain=true|false

This will discard all changes made to any spatial features since the last lock or post process.

whether or not to refresh features (default: false)

whether or not to retain locks (default: false)

GDI ERASE

-

all

fence

view viewnum

selection

This will erase from the local DGN cache all features queried from the spatial data source. The erased features are specified by the defined spatial qualifier

GDI DISCONNECT

-

-

Disconnect from the current graphical source

Note: Make sure there are no spaces before and after the = sign in the above key-ins.

Tags: Spatial Databases, Interoperability

- Oracle views in spatial feature definitions

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:48:51 PM

Purpose

The purpose of this entry is to describe the design of Oracle Views for the definition of spatial features used by Bentley Geospatial products ( ie Bentley Map, Bentley Electric, Bentley Gas, Bentley Water, GeoWeb Publisher, and the Oracle Spatial Connector for ProjectWise) to solve a need to both separate and share business and GIS data.

Problem Definition

Classical examples of the definition of Oracle spatial tables include both the geometry and the business attributes into the same spatial table. This can, at existing installations, where business data already exists, cause problems with the setup of the spatial tables.
What is needed is a way to ‘reference’ the business data to the spatial data and allow the business data to be maintained, not only by the GIS user, but also by the current business data users.
Some of the requirements for this solution may be:

·         The business table is maintained by some person or group outside of the GIS department (we will call this the BUSINESS department).

·         The spatial data (geometry) is maintained by the GIS department.

·         The GIS users will benefit from at least viewing and searching on the business data.

·         The BUSINESS department will benefit by at least viewing and searching on the spatial data.

·         Some (or all) business data can be maintained by the GIS users.

·         Some (or all) business data can be maintained by the BUSINESS department.

·         Do not duplicate the business data into the GIS spatial data.

In summarizing these requirements, there seems to be a need to separate and consolidate the business and spatial data without sacrificing good database design and data integrity.

Problem Solution

We will investigate the usage of Oracle Views as one of the solutions to solving this problem. The basic design will comprise of:

1.       Creation of the spatial geometry table, including spatial indexes and metadata entries.

2.       Loading of existing spatial data into the geometry table.

3.       Creation of the view, as a join between the business data and the spatial data, including the creation of the metadata entries.

4.       Creation of the triggers to maintain the data between the view and the actual tables.

When finished we will have the business and spatial data separated, but also viewed as a consolidated dataset, that will be maintainable by either the BUSINESS or GIS departments.

Step 1 – Creation of the spatial geometry table

As described in the Bentley Map help file, a spatial table must meet the 4 following requirements.

·         The feature table must have a primary key constraint consisting of a single numeric or string/character column to represent the feature ID. This primary key is required to enable versioning using the standard versioning system of the Oracle Workspace Manager.

·         The table must have a geometric (SDO_GEOMETRY) column specifying the feature geometry, and this geometry column must be registered in the Oracle Spatial metadata table (ALL_SDO_GEOM_METADATA or the related USER_SDO_GEOM_METADATA view for the user).

·         The table fields must be of a common type, not a user defined type.

·         Geometry must be of similar types, meaning all geometries must be of point, line, or polygon type, not a mixture of these.

Along with these basic requirements, point features have the following OPTIONAL needs because point features ( text and cells in Microstation) have additional geometric requirements.

·         Since there is a rotation value for both text and cells, for their graphical display, there can also be a optional rotation field defined. This can be placed in the spatial table or the business table, but I would suspect that this will be placed in the spatial table, just to keep the spatial data together. For the purpose of this exercise we will call this field ‘ROTATION’, it will be numeric field.

·         Since there is also a X and Y scale factor for point features (text and cell), we will also add these fields to a point feature spatial table. We will call these X_SCALE and Y_SCALE and make them numeric also.

If these fields are not defined, for point features, then when data is retrieved from the spatial database and plotted in the drawing ( or displayed in some other fashion), the point feature will always plot at a angle of 0 degrees (or radians) and at a scale of 1 (or text height/width of 1).  This is probably not desirable for most types of output.

spatial table definitions

 
CREATE TABLE
point_feat_geom
(
rec_id                    NUMBER(22),                                        // used to link to the business table
geometry               MDSYS.SDO_GEOMETRY,                    // required Oracle geometry object
rotation                  NUMBER,                                               // optional point feature rotation
x_scale                   NUMBER,                                               // optional point feature x scale
y_scale                   NUMBER                                                // optional point feature y scale
);
 
The polyline and polygon tables will look the same as the point feature, except it will not contain the optional columns that can be used for a point feature.
CREATE TABLE
polyline_feat_geom
(
rec_id                    NUMBER(22),                                        // used to link to the business table
geometry               MDSYS.SDO_GEOMETRY                     // required Oracle geometry object
);
 
CREATE TABLE
polygon_feat_geom
(
rec_id                    NUMBER(22),                                        // used to link to the business table
geometry               MDSYS.SDO_GEOMETRY                     // required Oracle geometry object
);

Entry into the SDO_GEOM_METADAtA table.

Now that we have the spatial table defined, we need to add entries into the SDO_GEOM_METADATA table so that Oracle can perform operations on these tables.  This satisfies the second bullet item above. These entries are:
INSERT INTO USER_SDO_GEOM_METADATA (TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
  VALUES ('point_feat_geom', 'geometry',
    MDSYS.SDO_DIM_ARRAY
    (
       MDSYS.SDO_DIM_ELEMENT('X', -5000000, 5000000, 0.000000050),
       MDSYS.SDO_DIM_ELEMENT('Y', -5000000, 5000000, 0.000000050)
    ),
    NULL);
 
INSERT INTO USER_SDO_GEOM_METADATA (TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
  VALUES ('polyline_feat_geom', 'geometry',
    MDSYS.SDO_DIM_ARRAY
    (
       MDSYS.SDO_DIM_ELEMENT('X', -5000000, 5000000, 0.000000050),
       MDSYS.SDO_DIM_ELEMENT('Y', -5000000, 5000000, 0.000000050)
    ),
    NULL);
 
 
INSERT INTO USER_SDO_GEOM_METADATA (TABLE_NAME, COLUMN_NAME, DIMINFO, SRID)
  VALUES ('polygon_feat_geom', 'geometry',
    MDSYS.SDO_DIM_ARRAY
    (
       MDSYS.SDO_DIM_ELEMENT('X', -5000000, 5000000, 0.000000050),
       MDSYS.SDO_DIM_ELEMENT('Y', -5000000, 5000000, 0.000000050)
    ),
    NULL);
 

Creation of the Spatial indexes

Now we want to define the spatial indexes for each of these tables. The spatial index assists in the retrieval of the data for spatial operations (view, fence, etc.).
CREATE INDEX point_feature_sidx ON point_feat_geom(geometry)
                INDEXTYPE IS mdsys.spatial_index
                PARAMETERS ('layer_gtype=point');
 
CREATE INDEX polyline_feature_sidx ON polyline_feat_geom(geometry)
                INDEXTYPE IS mdsys.spatial_index
                PARAMETERS ('layer_gtype=line’);
 
CREATE INDEX polyline_feature_sidx ON polyline_feat_geom(geometry)
                INDEXTYPE IS mdsys.spatial_index
                PARAMETERS ('layer_gtype=polygon’);
 
Ok, we are done with the table creations. Notice that I did not create a primary key on these tables, which is a requirement for the spatial tables, as per Bentley Map. For this implementation, the primary key is assigned to the views and not to the geometry table, since we are combining multiple tables into the view.
Next we want to review the business table.

Step 2 – Business table definition

We are assuming that the business table is already created and possibly populated. The business table for this example is defined as follows:
CREATE TABLE point_feat_prop
(
unique_id  NUMBER(22),                    // Unique identifier for the business table records
StringValue            VARCHAR2(16),    // String value                      
NumberValue       NUMBER(32),        // Numeric value
DateValue              DATE                       // Date value
);
 
 

Step 3 – View definition 

Now that we have the business and spatial tables defined, we can define the view that links these 2 tables together. Note the same basic process can be used for the polyline and polygon tables.
To link these together we are going to use the rec_id column in the spatial table with the unique_id column in the business table.
Create view
point_feat_vw AS
SELECT
                p.unique_id          unique_id,
p. StringValue       stringValue,
p. NumberValue   numberValue,
p. DateValue         dateValue,
g.geometry            geometry,             
g.rotation               rotation,
g.x_scale                x_scale,
g.y_scale                y_scale
FROM
                point_feat_prop p, point_feat_geom g
WHERE
                p.unique_id = g.rec_id;
 
 
Since we have the view created, we need to now finish defining a couple of more items, so that the Geospatial Administrator and Bentley Map will recognize this as a spatial table.
 
 

Define the Primary key

 
Remember earlier Bentley Map requires a primary key be defined on the spatial table, for the purpose of allowing Oracle to create versions of the data. But we cannot by default have a primary key active on a view. To get around this we create the primary key, but we disable it, by the following:
ALTER VIEW point_feat_vw ADD PRIMARY KEY(unique_id) DISABLE;

Entry to the SDO_GEOM_METADATA table.

 
Ok, the last task is to add a entry into the SDO_GEOM_METADATA table. This is done as follows[1]:
 
INSERT INTO
user_sdo_geom_metadata
SELECT
'point_feat_vw',
column_name,
diminfo,
srid
FROM
user_sdo_geom_metadata
WHERE
table_name = 'POINT_FEAT_GEOM';
 

Step 4 – Setting up the Triggers

Since we are doing selects, deletes, inserts and updates into a view and not the parent tables, we need to create some triggers that properly manipulate the data. Therefore we will be creating a trigger for inserts, updates and deletes on the view.
 

Insert Trigger

We redirect the insertion of the data from the view into the actual tables ( business and spatial)
CREATE OR REPLACE TRIGGER point_feat_insert_trigger
INSTEAD OF INSERT ON point_feat_vw
DECLARE
  duplicate_info EXCEPTION;
  PRAGMA EXCEPTION_INIT (duplicate_info, -00001);
BEGIN
  INSERT INTO point_feat_prop
 ( unique_id,
   StringValue,
   NumberValue,
   DateValue
  )
  VALUES (
  :new.unique_id,
  :new.stringValue,
  :new.numberValue,
  :new.dateValue
  );
 
  INSERT INTO point_feat_geom
  (rec_id,
   geometry,
   rotation,
   x_scale,
   y_scale
)
  VALUES
   (:new.unique_id,
    :new.geometry,
    :new.rotation,
    :new.x_scale,
    :new.y_scale
   );
   
EXCEPTION
  WHEN duplicate_info THEN
    RAISE_APPLICATION_ERROR (
      num=> -20107,
      msg=> 'Duplicate ref_id');
END point_feat_insert_trigger;
/

Update trigger

When the user updates the view, we want to update the underlying tables instead.
CREATE OR REPLACE TRIGGER point_feat_update_trigger
   INSTEAD OF UPDATE ON point_feat_vw
   FOR EACH ROW
BEGIN
  UPDATE point_feat_prop
  SET
  unique_id = :new.unique_id,
  StringValue= :new.stringValue,
  NumberValue = :new.numberValue,
  DateValue=:new.dateValue
  WHERE
  unique_id = :old.unique_id;
 
  UPDATE point_feat_geom
  SET
  geometry = :new.geometry,
  rotation =:new.rotation,
  x_scale=:new.x_scale,
  y_scale=:new.y_scale,
  rec_id = :new.unique_id
  WHERE
  rec_id= :new.unique_id;
 
END point_feat_update_trigger;
/

Delete Trigger

Lastly, we need to define the delete record trigger for the underlying records of the view[2].
CREATE OR REPLACE TRIGGER point_feat_delete_trigger
   INSTEAD OF DELETE ON point_feat_vw
BEGIN
  DELETE FROM point_feat_prop WHERE unique_id = :old.unique_id;
  DELETE FROM point_feat_geom WHERE rec_id = :old.unique_id;
END point_feat_delete_trigger;
 
 

OPTIONAL – Adding test data   

I know earlier, I said that the business or spatial data may already exist, which in most cases, it probably does. For completeness of this exercise, I will add test data. This will consist of a couple of rows of data, entered into the spatial and the business tables.  This will allow us to set up the XFM Schema and test the placement, editing and removal of the spatial data.
/* Delete all the current records thawe inserted as test records.
DELETE from point_feat_vw where unique_id in (1, 2);
commit;
 
 
/* Insert a record into the view */
INSERT INTO point_feat_vw
(
unique_id,
stringValue,
numberValue,
dateValue,
geometry,
rotation,
x_scale,
y_scale
)
values
(
1,
'text1',
1000,
(select sysdate from dual),
mdsys.sdo_geometry
                (
                2001,
                null,
                mdsys.sdo_point_type(1,1,null),
                null,
                null
                ),
1.00,
1.00,
1.00
);
 
commit;
 
/* Insert another record into the view */
 
INSERT INTO point_feat_vw
(
unique_id,
stringValue,
numberValue,
dateValue,
geometry,
rotation,
x_scale,
y_scale
)
values
(
2,
'text2',
20,
(select sysdate from dual),
mdsys.sdo_geometry
                (
                2001,
                null,
                mdsys.sdo_point_type(100,200,null),
                null,
                null
                ),
0.785,
0.50,
0.50
);
 
commit;
 
 

OPTIONAL – Creating a sequence Generator

 
In order for the spatial interface, in the Bentley products, to post new records to a particular spatial feature, a sequence generator must be created for the spatial feature. This is optional at the time of the creation of the spatial feature schema, in the database, because it can be done in the GSA when registering the feature. It is wise though to do this in the database, to keep the schema definition in one place (the database).
 
DROP SEQUENCE "point_feature_seq";
CREATE SEQUENCE "point_feature_seq" INCREMENT BY 1 START WITH 3 ORDER;
commit;
 
 

Registering the Spatial feature with the GSA

 
Now that we have the spatial feature schema defined in the database, for the example feature, we need to setup the XFM schema through the GSA. The GSA is then used to generate all the feature interfaces, including the placement, viewing and editing of the feature instances. The GSA can also be used to setup the Bentley geospatial product workspaces, as an extension of the standard MicroStation workspaces.

Appendix A – Addition of Annotation sub-features

 
There are situations where the design warrants the use of a annotation sub-feature. This is typically added using the following setup:

1.       Create the spatial table. During table creation, make sure you have a column for maintaining a primary key on the new spatial table and another column to maintain a foreign key to the primary feature table.

2.       Make sure you have the SDO.GEOMETRY column defined.

3.       If you want to maintain the annotation rotation and size, then make sure you also have a rotation, x_scale and y_scale column.

4.       Create a spatial index on the table.

5.       Create a reference to this spatial table in the user_sdo_geom_metadata table.

6.       Create the primary key constraint.

7.       Create a sequence generator for the table if you want to post new instances back to the spatial database.

8.       Create the foreign key constraint referencing the primary spatial table.

Steps 1 – 7 are pretty standard for all spatial tables in Oracle, so this should be pretty familiar. Step 8 is added to link this spatial table back to the primary spatial table.
Now we have the added complexity that this annotation sub-feature needs to be referenced by the view, since that view is acting as the spatial table in this case. To do this we need the extra step of adding a foreign key constraint on the annotation sub-feature table but disable this constraint.  As long as we have this constraint defined, we can ‘imply’ to the GSA and Bentley Map that the annotation spatial table is a sub-feature of the view.
The setup for the annotation sub-feature, for the point feature is as follows:
-- Resource cleanup.
drop table point_feat_annot;
drop sequence point_feat_anot_seq;
delete from USER_SDO_GEOM_METADATA where table_name = 'POINT_FEAT_ANNOT' AND COLUMN_NAME = 'GEOMETRY';
commit;
 
-- Create the annotation table. 
CREATE TABLE point_feat_annot (
  text_id       NUMBER,
  reference_id  NUMBER,
  geometry             MDSYS.SDO_GEOMETRY,   
  rotation                NUMBER,                                              
  x_scale NUMBER,                                              
  y_scale NUMBER);
 
commit;
 
-- Add this table into the geometry meatdata view.
insert into
    user_sdo_geom_metadata
  select
    'point_feat_annot', column_name, diminfo, srid
  from
    user_sdo_geom_metadata
  where
    table_name = 'POINT_FEAT_GEOM';
 
-- Create the spatial index for the annotation feature.
CREATE INDEX
  point_feature_annot_sidx
ON
  point_feat_annot(geometry)
INDEXTYPE IS
  MDSYS.SPATIAL_INDEX
PARAMETERS ('LAYER_GTYPE=POINT');
 
-- Create the  sequence for the annotation sub-feature.
CREATE SEQUENCE
  point_feat_anot_seq
INCREMENT BY
  1
START WITH
  5
ORDER;
 
-- Create all the primary and foreign Keys
 
ALTER TABLE point_feat_annot
  ADD CONSTRAINT point_feat_annot_pk
    PRIMARY KEY (text_id);
 
ALTER TABLE point_feat_annot
  ADD CONSTRAINT point_feat_annot_fk
    FOREIGN KEY (reference_id) REFERENCES point_feat_geom(rec_id)
      ON DELETE CASCADE;
 
ALTER TABLE point_feat_annot
  ADD CONSTRAINT point_feat_annot_fk_dis
    FOREIGN KEY (reference_id) REFERENCES point_feat_vw(unique_id)
      ON DELETE CASCADE disable;
 
-- Commit changes.
commit;
exit;
Now when we try to register the features, we can see the annotation sub-feature.


[1]Actually you could have done this differently, via SQL, but this is one of several options.

 

[2] If you do not want to delete the business data, but instead delete the spatial data, then you would remove the deletion from the point_feat_prop table from this trigger. This way the GIS department would not be able to delete the records from the business table, when deleting spatial data.

Tags: features, Oracle Spatial, GSA, Views

- Saving connection parameters to settings file

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:48:51 PM

OpenCities Map provides two means to connect to a spatial database:

  1. Through a named graphical source which is defined in the Geospatial Administrator.  A named connection typically defines all aspects of working with features including placing and editing.  It will also include placement rules, property-based annotation, property-based symbology definitions and more.
  2. Through an ad hoc connection established via the New Connection tool in the Map Connections dialog. An ad hoc connection is a direct connection to the spatial database and does not include any customizations for feature placement and editing.  Ad hoc connections also do not include pre-defined symbology.

When defining an ad hoc connection to any of the supported spatial databases, it can take quite some time for the connection to be established.  This can be due to a number of factors including:

  • Location of the server
  • Network speed
  • Number of spatial features needing to be discovered by the connection process

Let's take a brief look at how your productivity with ad hoc connections can be improved.

Create a new ad hoc connection and wait for the New Connection Parameters to be populated with features.  In some situations, you may be inclined to unselect all features (and there may be hundreds of them) and only leave one or two features ticked.  

Clicking Connect will add the selected features to the current session and load the features to the Map Connections dialog. 

At this point the selected features are ready to be queried, locked, modified and posted.  However, in the event that you need to access different features from the same connection, you'll need to:

- Remove the existing connection

- Establish a new ad hoc connection - and wait for the discovery of perhaps hundreds of features.

- Unselect those  features not needed.

- Connect.

- Query, lock, modify and post as needed.

To simplify this process, it's recommended to establish the connection with all features available.  Once the connection is made, simply choose Save Connection from the Connection Tools icon bar, set the Spatial Extent as needed, and enter a data point to accept the spatial area options.

The Save As dialog will open where you can enter a name of your choice.

The next time you need an ad hoc connection to that specific server and features, simply open the previously saved settings file.  Like the Save tool, the Open tool is found in the Connection Tools icon bar.  In this case there is no waiting for the features to be discovered and the connection is established almost immediately.  For those who are working with hundreds of features, this could certainly be a time saver. 

To query specific features, simply select Query from their right click menu.  Only those selected features will be queried.

- Key-ins to created queries incorporating a simple WHERE

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:48:51 PM

As an administrator for Bentley Map, you might prefer to create pre-defined connection parameters that can be used with the GDI CONNECT and GDI QUERY keyins. Doing so will enable you to place a library of keyins on a menu bar, custom tool box or function keys. This will streamline production workflows and eliminate errors from incorrectly defined search criteria.

Since GDI keyins do not provide the ability to specify a WHERE clause, the following content describes a workaround that may be of interest if simple search criteria are needed.

In this example, I have a named connection Nash where the property symbologies are defined in the Bentley Geospatial Administrator.

The Parcels feature has a Where Clause defined as (HEATING_FUEL = Electric)

This connection can be saved to an XML file by using Save As XML in the Connection Tools icon bar. While the content of the file is XML, the extension is ORAX.

Once the ORAX files are created, you can use them with the GDI CONNECT keyin:

 GDI CONNECT FILE=FileName USER=UserName PASSWORD=Password.

 

Note: The ORAX file stores the Oracle OpenParameters which includes the User, Host, Service and Port but not the Password.

GDI CONNECT FILE=C:\Data\Nash\ParcelsElectric.orax PASSWORD=nash

 

To query the just the parcels with the Where Clause, the following keyin can be executed:

GDI QUERY FEATURE=Parcels VIEW 1

 

To eliminate a datapoint to accept the processing, append the POINT AB keyin.

GDI QUERY FEATURE=Parcels VIEW 1;POINT AB

Note: Care should be taken to ensure that the Apply Where Clause is enabled:

Alternate methods of setting up queries with search parameters might include:

  • Set up and query views in the database rather than using searches in Bentley Map.
  • Create a COM server that encapsulates some of the functionality available in the Bentley Map Interoperability API which is delivered as managed .NET assemblies. After encapsulating the Interoperability functionalities in a simple COM server, create a VBA application that uses the COM server to perform various Oracle Spatial Interoperability functions including the use of Where critera for searching and querying.
  • Lastly,  the use Live DGN might be helpful.  Live DGN contains the connection parameters to the features defined in the connection. When the DGN file is opened, a password will be requested and the connection made. At that point all of the requested features will be queried into the DGN. Note that his is for Oracle Spatial only.

For more information regarding the GDI family of commands, please refer to:

Spatial Database Keyins

Tags: Spatial, Querying, GDI

- Long transactions - Versioned optimistic transactions

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:48:51 PM

OpenCities Map does not have a "shared" option that allows more than one user to be in the same file at the same time.  

If you are using SQL Server Spatial or Oracle Spatial to store feature geometry, then the following information may be of value:

Normally Bentley Map users work in a non-versioned, pessimistic transaction. That means features must be locked before editing. When they are locked, they cannot be edited by other users. All changes must be posted back to the spatial database or be discarded before the end of the editing session. This is also referred to as "short transaction mode" and applies to SQL Server Spatial, Oracle Spatial and PostgreSQL.

If you're working with Oracle Spatial, you can work in a versioned, optimistic transaction mode if desired.  This means that you can create a new version in Oracle in which to do your edits. Features do not have to be locked for other users to edit. Versioned changes do not have to be committed to the master or parent version if an editing session ends. However, any changes made to the version should be posted or discarded before closing the edit session. This is also referred to as "long transaction mode" and only applies to Oracle Spatial. 

To work with Bentley Map in a versioned environment, Oracle’s Workspace Manager must be installed and the tables being edited must be version enabled. To perform conflict resolution using the Conflict Inspector dialog, you must have the WM_ADMIN role granted.

You still have the option of working in a pessimistic mode (short transaction mode) when selecting a version. Doing so means the features must be locked before editing.

Lastly, even if your features are stored in a spatial database, each user will still need to work in their own individual design files since you cannot have multiple users opening the same design file at the same time.  To avoid locking issues, each user should work in discrete area and try to avoid overlapping areas. 

- Non planar polygon posting error ORA-54505

$
0
0
Current Revision posted to Bentley Map | OpenCities Map Wiki by Inga Morozoff on 3/9/2020 6:48:51 PM

You still deal with an Oracle post error (ORA-54505) with your non planar polygon even if you use the Bentley Map release 08.11.09.666 (or higher).

From Oracle documentation, ORA-54505 >

ORA-54505: ring does not lie on a plane

Cause: The ring was not flat.

Action: Make sure all of the vertices of the ring are on the same plane.
Solution :
Make sure you RE register the feature in your Bentley Geospatial Administrator with the Bentley Map 08.11.09.666 version and then enabled the new “Support non-planar shapes”.
Tags: ORA-54505, non-planar, Bentley Map, GSA
Viewing all 1284 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>