MapXtreme v7.3.0 Release Notes

MapXtreme v7.3.0
Release Notes
North America:
www.pitneybowes.com
Europe/United Kingdom:
www.pitneybowes.com/uk
Asia Pacific/Australia:
www.pitneybowes.com/au
2015 Pitney Bowes Inc. All rights
reserved.Pitney Bowes, the Corporate
logo, MapInfo, Group 1 Software, and
MapXtreme are [registered] trademarks
of Pitney Bowes Inc. or a subsidiary. All
other trademarks are the property of
their respective owners.
March 19, 2015
These Release Notes provide information on enhancements and updates made to
MapXtreme 7.3.0. It also covers bug fixes, known issues, and other important
information for this release.
This document is a supplement to the MapXtreme Developer Guide. Refer to this
document for release specific information and to the Developer Guide for overall
product information and usage. The Developer Guide is available from these
locations:
•
•
PDF version accessible from the Start > All Programs menu under MapInfo >
MapXtreme 7.3.0 > Learning Resources browser
PDFversion on the Pitney Bowes Inc. website
List of Topics:
Š
Š
Š
Š
Š
Š
Š
What’s New . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
What’s Changed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
Bug Fixes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
Known Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Installation Requirements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9
Installation Guidance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Performance Recommendation . . . . . . . . . . . . . . . . . . . . . . . 11
What’s New
What’s New
MapXtreme includes the following new features in version 7.3.0.
Tile Server
MapXtreme supports the display of Tile Server TAB files created by MapInfo Professional. This allows you to open and
view map tiles, such as Bing Maps and a Spatial Server MapTiling service from a MapXtreme desktop or web
application.
Tiles are portions of maps that are stored on tile servers and on request, delivered as images to the client application
for display. MapXtreme opens and displays tile images in the same way that it supports raster or WMS images. Images
can be brought into MapXtreme as individual layers or as part of an .MWS workspace.
MapXtreme has built-in caching support for tiles for faster access of tile images. The cache is maintained during the
session that the desktop or web application is open. You can also apply style overrides to Tile Server layers to control
the translucency, brightness, contract and grayscale of the images, in the same way as you do for raster layers.
A Tile Server C# desktop sample application is available to help you gain more insight on how to use the tiling
capability. It is located in \Samples\VisualStudio201x\Desktop\Features\TileServer under your MapXtreme 32-or 64-bit
install directory.
For more information see Chapter 18: Working with Maps from Tile Server in the MapXtreme Developer Guide.
FDO Extension
A 64-bit FDO Provider Sample Extension has been added to the product.
SQL Database Table
Handling of fraction part of DECIMAL column has been added for various operations to enable more accurate floating
point calculation used at server side logic.
MapXtreme Setup Project
Creation of a MapXtreme setup project can be enabled in Visual Studio 2013 by installing Visual Studio Installer
Projects Extension. For more information see:
https://visualstudiogallery.msdn.microsoft.com/9abe329c-9bba-44a1-be59-0fbf6151054d
or
http://blogs.msdn.com/b/visualstudio/archive/2014/04/17/visual-studio-installer-projects-extension.aspx
For Visual Studio 2012 you will need to use a third party tool to create a MapXtreme setup project.
Ellipsoid and Datum Support
Ellipsoid
•
GCS (GCS_SPHERE)
Datum ID
•
•
•
•
SerbiaMGI1901 (Serbia datum MGI 1901)
NorthSaharaParameter7 (North Sahara 7-parameter)
HD72Updated (HD72 (Hungarian Datum of 1972) - Updated)
SJtskCzech (S-JSTK (Czech))
MapXtreme v7.3.0 Release Notes
2
What’s Changed
•
JTSK03Slovak (JTSK03 (Slovak Republic))
New System Support
•
•
Visual Studio 2013 Support
.Net Framework 4.5.2 support
MapXtreme Installer
The MapXtreme installer will add the following environment path variables with empty values:
•
•
•
MI_TILE_SERVER_KEY: To set the Tile Server key for Bing Tile Server maps
MI_MAX_FILE_HANDLES To set the maximum number of files MapXtreme can open, up to 2,040.
MI_ECW_MAX_CACHE To change the default cache memory for ECW handler.
MapXtreme installer will also add following registry key with an empty value:
•
SOFTWARE\MapInfo\MapXtreme\7.3.0\TileServerKey To set the Tile Server key for Bing Tile Server maps
What’s Changed
MapXtreme v7.3.0 supports the .Net Framework 4.5.2. Applications created with an earlier version of MapXtreme
(v7.1.0 or v7.2.0 with .Net Framework 4.0 support) will not run as expected. These applications can use the
assemblies of MapXtreme v7.3.0 by making minimal changes through a configuration file to redirect the application to
v7.3.0 assemblies. This will avoid the need to recompile desktop or web applications and allow your existing setup to
work with MapXtreme v7.3.0. Instructions are contained in the following sections.
Redirection for Desktop Applications
To redirect existing MapXtreme v7.1.0 or v7.2.0 based desktop applications to use the v7.3.0 assemblies, modify the
app.config file as shown in the illustration below. Do this for each assembly under the runtime section. The public key
token value is the same for the old and new assemblies.
MapXtreme v7.3.0 Release Notes
3
Bug Fixes
Redirection for Web Applications
To redirect existing MapXtreme v7.1.0 or v7.2.0 based web applications to use the v7.3.0 assemblies, modify the
web.config file as shown in the illustration below. Do this for each assembly under the runtime section. The public key
token value is the same for the old and new assemblies.
Additionally, change all references from the old assemblies to the new assemblies in WebForm1.aspx.
Bug Fixes
The following issues were resolved in this release.
•
•
•
•
•
•
•
•
•
•
Labeling problems when based on DateTime/Time columns.
Cannot save or load custom legends to a workspace.
Objects in MapFactory and LegendFactory are not cleared before deleting the miApp object.
ArrowToolStripButton generates erroneous code in the designer.
CustomLegendFrames are not saved to workspace.
Drag and drop a workspace onto Workspace Manager results in unexpected layer re-ordering.
Linear Referencing: LocateMeasure API is crashing when point lies outside the curve and curve is closed.
Changing columns while creating range theme on a label layer in Workspace Manager resulted in error.
Issue with adding a feature with a drawing tool, then cancelling the operation did not release add operation from
the tool.
Edit issues with TAB file located in Documents or Desktop.
MapXtreme v7.3.0 Release Notes
4
Known Issues
Known Issues
IIS 8.0 with .Net Framework 4.5
MapXtreme v7.3.0 based web applications on Windows Server 2012 that use IIS 8.0 may freeze where there are
multiple concurrent users, due to a Microsoft limitation. See Issue 6 under the following KB document at https://
support.microsoft.com/en-gb/kb/2828842. The workaround for this problem is to apply the hotfix or upgrade to .Net
Framework v4.5.2.
MapXtreme v7.3 Help Integration on Windows 2008 R2 and Windows 2012 R2
Due to security settings in Visual Studio’s embedded Internet Explorer browser, the integrated Developer Reference
may display the help content in raw HTML on Windows Server.
A workaround will necessitate changing a local computer policy. Follow the process below. This will require
administrator rights. More information about this issue can be found at https://connect.microsoft.com/VisualStudio/
feedback/details/764536/help-viewer-2-0-displays-raw-html-due-to-company-enforced-security-policy.
L
We also provide a standalone Developer Reference that you can refer in place of the integrated version if you
do not or cannot change the security settings. MapXtreme_DeveloperReference.chm is located in the
\Documentation\Help folder under the MapXtreme installation directory.
To change the local computer policy for Internet Explorer:
1. Open the Local Group Policy Editor (Start > Run > gpedit.msc).
2. Under Local Computer Policy navigate to Computer Configuration / Administrative Templates / Windows
Components / Internet Explorer / Internet Control Panel / Security Page / Local Machine Zone. No changes are
needed to other security zones.
3. Locate the correct setting: either Open files based on content, not file extension (Internet Explorer 8 and below)
or Enable MIME Sniffing (Internet Explorer 9 and above).
4. Double-click the setting to open it, and change its value to Disabled.
5. Click Apply, then OK.
6. To re-integrate the Developer Reference, follow the instructions in MapXtreme Help Integration on page 8.
Disabling Enhanced Security for Internet Explorer
If the Developer Reference still does not display properly, you may also need to disable the Enhanced Security
Configuration for Internet Explorer.
To disable Internet Explorer Enhanced Security Configuration:
1. Close all instances of Internet Explorer.
2. Click Start, point to Administrative Tools, and then click Server Manager.
3. If a User Account Control dialog box appears, click Continue.
4. Under Security Information group, click Configure IE ESC.
5. Under Administrators, click Off.
6. Under Users, click Off.
7. Click OK.
For more information see res://iesetup.dll/IESecHelp.htm#overview.
MapXtreme v7.3.0 Release Notes
5
Known Issues
Tile Server TAB and Authentication
While working with Tile Server TAB files, authentication (user & password) is not working for MapXtreme-based web
application.
MapXtreme Tools Integration on Windows Server 2008 R2 and Windows Server 2012 R2
MapXtreme Tools are integrated with Visual Studio 2012 and Visual Studio 2013. However on Windows Server 2008
R2 and Windows Server 2012 R2, the tools may be not integrated due to securities setting or version updates. In this
cases MapXtreme tool can be integrated manually or follow this procedure:
After using Visual Studio 2012 or Visual Studio 2013 at least once, re-run the MapXtreme installation program for
proper integration of MapXtreme tools and templates.
Infrastructure
64-bit Applications on Visual Studio 2012 and Visual Studio 2013 Development Server. Visual Studio 2012 and
Visual Studio 2013 do not support running 64-bit web applications in Development Server. An incorrect format
exception is returned when running trying to run 64 bit applications.
Merge Modules additional requirements: If you are creating your own installer with our merge modules (not
available in the Trial versions), you must add the following prerequisites: .NET Framework 4.0 (not the client profile),
MSXML 6.0 and Visual C++ 10.0 CRT (x86 and x64). x86 is needed for both x86 and x64 apps.
ACE Drivers for Microsoft Access on 64-bit: The MS Access Database Engine contains components that facilitate
the transfer of data between MS Office applications and non-Office applications. MapXtreme does not provide this
redistributable. See http://www.microsoft.com/en-us/download/details.aspx?id=13255 for usage, limitations. On
32-bit applications you can continue to use the Jet driver which may perform better in multi-thread mode.
Running .NET Framework 2 application on 64-bit Windows: When using the grant set <trust level="Full"
legacyCasModel="true" />, an error message “Loading this assembly would produce a different grant set from other
instances” is presented when you run a .NET Framework 2.0-based application on a computer that is running a 64-bit
version of Windows. See http://support.microsoft.com/kb/2282372.
.NET Framework 4 Client Profile: MapXtreme does not support the .NET Framework 4 Client Profile. For more
information see http://msdn.microsoft.com/en-us/library/cc656912.aspx.
Data Access
Column Named ‘NOT’: There is a MapXtreme issue parsing SQL statements containing columns named 'NOT'.
Rasters and Grids
GRD and GRC Limitations: MapXtreme 64-bit cannot open .GRD and .GRC files without a .TAB file. If .TAB is
present these files are opened as rasters only using the vmgrid.rhl. They will not be opened as grid files. This does not
apply to 32-bit MapXtreme.
Raster images in Multi-thread Mode: An unhandled exception may occur when attempting to open an ECW raster
image when MapXtreme is running on 30 or more threads.
Re-projecting palate-based images with 256 colors: When image re-projection of a raster is turned on, it displays in
MapXtreme with a black border. The workaround for this issue is to convert the image to non-palette based or reduce
the image colors to below 256.
Raster/Grid Handlers and Oracle: MapXtreme may be unable to load some raster and grid handlers when the Oracle
client is installed. This can occur when running a 32-bit MapXtreme application, such as Workspace Manager on either
a 32-bit or 64-bit operating system. To work around this issue, add C:\Program Files (x86)\Common
Files\MapInfo\MapXtreme\7.x.x\RasterGridHandlers to the beginning of your system PATH variable.
MapXtreme v7.3.0 Release Notes
6
Known Issues
Oracle
Oracle Arcs and Circles: When MapXtreme reads Oracle arcs or circles, they are converted to a polygon
representing the arc or circle. The resolution (# of points) defaults to 40, up from 20 prior to this release. You can
specify a different number of nodes in your app.config or web.config by adding the following:
<configuration>
<appSettings>
<add key="MapInfo.Data.ArcNodeResolution" value="1000"/>
</appSettings>
</configuration>
Note that using a high number can affect performance.
ASP.NET Master Pages
The MapControl must be wrapped in a relative positioned <div> tag:
<div id="mapDiv" style="position:relative;">
<cc1:MapControl ID="MapControl1" runat="server" Height="300" Width="300"
MapAlias="map1" />
</div>
Thematic Mapping
ModifyRangedThemeSettings control: The ModifyRangedThemeSettings control loses the appropriate count
assigned to each Custom range when the number of ranges is increased.
Custom Legends and Workspaces: MapXtreme's workspace persistence format does not support saving custom
legends. Custom legends are saved through serialization, however, not to the workspace.
Printing Pie and Bar Legends: MapXtreme does not properly display the legend of bar and pie theme when viewed
in Print Preview.
MI SQL Time Functions
Date and Time Functions: The MapInfo SQL functions DateTimeToString and StringToDateTime do not work
correctly. The documentation for StringToTime() and TimeToString() functions is incorrect. The following information is
correct:.
StringToTime
Creates a Time from a character string.
Syntax
StringToTime (str)
Arguments
str is a string representation of a time
StringToTime cannot perform conversions on DateTime strings. Use StringToDateTime.
TimeToString
Converts a time into a string.
MapXtreme v7.3.0 Release Notes
7
Syntax
TimeToString ( time, fmt)
Arguments
time is a time.
fmt is a string identifying the format of time. Remarks
TimeToString does not work with DateTime values.
Samples on 64-bit installations
Samples are installed under both Program Files and Program Files (x86) folders.
MapXtreme Help Integration
The Developer Reference may not integrate into Visual Studio when installing MapXtreme for English, Japanese, or
Chinese on an English operating system under the following conditions:
•
•
Visual Studio has not been run at least once, or
Visual Studio Help Viewer is set to Launch from Browser.
To remedy this, set your Help Viewer preference to Launch in Help Viewer and then manually integrate the Developer
Reference following the procedure below:
1. From the Help > Add and Remove Help menu in Visual Studio, choose Disk from the Installation Source.
2. Navigate to the Help\Documentation folder under your MapXtreme installation. Select
HelpContentSetup.msha and click Open, then Next.
3. Under the Actions column for MapXtreme Developer Reference click Add, then click the Update button.
4. At the Security dialog, click Yes to proceed.
5. At the conclusion of the integration process, view the MapXtreme Developer Reference in the Contents pane .
MapXtreme Developer Guide and MapInfo SQL Reference: These components of the MapXtreme documentation
set are not integrated into Visual Studio. They are available from the Learning Resource browser under the
Documentation section. To open Learning Resources, from the Start menu navigate to MapInfo > MapXtreme 7.3.0 >
Learning Resources.
MapXtreme v7.3.0 Release Notes
8
Installation Requirements
Pitney Bowes Inc.has tested and supports MapXtreme on the following.
Architecture
•
•
64-bit
32-bit
Operating Systems
•
•
•
•
•
Windows 8 and 8.1 (x64)
Windows 7 (x86, x64)
Windows Server 2012 and 2012 R2 (x64)
Windows Server 2008 R2 (x64)
Windows Server 2008 with SP2 (x86 , x64)
Development Framework and IDE
•
•
•
Microsoft .NET Framework 4.5.2
Visual Studio 2013
Visual Studio 2012 Upgrade 4
Browsers
•
•
•
Internet Explorer 8.0 and higher**
Firefox 3.5 and higher
Chrome 20 and higher
For web application and deployment:
•
IIS 8 and above (Windows 8/8.1, Windows Server 2012
R2)
IIS 7 (Windows Server 2008, and Windows 7)
Support *
•
Supported databases
•
•
•
•
•
•
•
•
For data access:
L
•
Microsoft Access 2007 and Excel 2007
Microsoft Access 2003
Oracle 11G (11.1.0.6.0 and 11.1.0.7.0)
Oracle 10G, 10GR2
Microsoft SQL Server 2012 (with SQL Native Client 11)
Microsoft SQL Server 2008 (with SQL Native Client 10)
MapInfo SpatialWare® 4.9 and 4.9.2 for Microsoft SQL
Server 2005
MapInfo SpatialWare® 4.9.2 for Microsoft SQL Server
2008 32- and 64 bit editions
MDAC 2.8
*
Recommended development environments (IDE). Others can be used, however, the MapXtreme installer
will not integrate its templates, samples, and help system.
**
The MapXtreme Learning Resources displays in Internet Explorer automatically, regardless of your default
browser setting. This will not change your default browser setting.
MapXtreme does not support the Express Editions of Microsoft Visual Studio.
MapXtreme v7.3.0 Release Notes
9
Minimum System Requirements
Memory
Windows 7 and 8: 1 gigabyte (GB) RAM (32-bit), 2 GB RAM (64-bit)
Windows Server 2012 R2: 1 GB RAM
Windows Server 2008: 512 megabytes (MB) RAM
Processor
Windows 8, Windows 7: 1 GHz processor
Windows Server 2008/2012: 1 GHz processor
Video Card
Graphics card that supports at least 256 colors
Installation Guidance
Important: This is a full product maintenance release. You must uninistall your existing installation of MapXtreme
before installing this version.
Installer: We recommend using the x64 installers on x64 platforms; even if your application is x86. The x64 installers
will install the features/components needed for x86 development and runtimes. Currently we do not support having two
versions of our installations. For example if you have version 7.3.0 installed and want to use the x64 version, you have
to uninstall the x86 version, followed by installing the x64 version.
Installer - Run As Administrator: When installing MapXtreme on Windows 7, Windows 2008 Server and Windows
Server 2012 R2, be sure that you specifically choose Run As Administrator from the shortcut menu. You must also be
an administrator on the installation target.
Run Visual Studio as Administrator: Be sure that you are running Visual Studio as administrator for full privileges in
the development environment.
How to Register MapInfo.CoreEngine in COM+:
Installing MapXtreme (x64) creates two COM+ applications - x86 and x64. If both objects (via Component Services)
are not present, run the following commands in the specified given:
C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\REGSVCS.EXE /u /quiet
C:\WINDOWS\Microsoft.NET\assembly\GAC_64\MapInfo.CoreEngine\v4.0_7.3.0.140__
93e298a0f6b95eb1\MapInfo.CoreEngine.dll
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\REGSVCS.EXE /u /quiet
C:\WINDOWS\Microsoft.NET\assembly\GAC_32\MapInfo.CoreEngine\v4.0_7.3.0.140__
93e298a0f6b95eb1\MapInfo.CoreEngine.dll
C:\WINDOWS\Microsoft.NET\Framework\v4.0.30319\REGSVCS.EXE /quiet /noreconfig
C:\WINDOWS\Microsoft.NET\assembly\GAC_32\MapInfo.CoreEngine\v4.0_7.3.0.140__
93e298a0f6b95eb1\MapInfo.CoreEngine.dll
C:\WINDOWS\Microsoft.NET\Framework64\v4.0.30319\REGSVCS.EXE /quiet /noreconfig
C:\WINDOWS\Microsoft.NET\assembly\GAC_64\MapInfo.CoreEngine\v4.0_7.3.0.140__
93e298a0f6b95eb1\MapInfo.CoreEngine.dll
MapXtreme Help Integration: If you have removed the MapXtreme Developer Reference from Visual Studio, set your
Help Viewer to use local help and then manually integrate the Developer Reference following the procedure below for
your version of Visual Studio:
Visual Studio 2012 and Visual Studio 2013
1. Choose Help > Add or Remove Content.
MapXtreme v7.3.0 Release Notes
10
2. In the Manage Content tab, navigate to\Help\Documentation folder and choose HelpContentSetup.msha. The
MapXtreme Developer Reference will display in the list.
3. Click Add, then the Update button to integrate it.
4. At the Security dialog, click Yes to proceed.
Performance Recommendation
SQLServer 2008 key selects and MIDataReader performance: When creating an MIDataReader from a SQL
command statement built on a key select, we recommend using the pseudo key column name MI_KEY in the
MapXtreme select statements, regardless of the real column name.
MapXtreme interrogates the SQLServer2008 table schema to determine the key, based available information, such as:
PRIMARY KEY index
IDENTITY column
UNIQUE identifier
MI_PRINX column name.
This evaluated key is interpreted as "MI_KEY"
Since MapXtreme's SQL key SELECT behavior is optimized for MI_KEY use, we recommend that you use MI_KEY in
your MapXtreme select statements, regardless of the real column name.
For example, if the table is defined with a PrimaryKey column 'MI_PRINX', the MIDataReader command should
nonetheless reference MI_KEY for key select statements, otherwise,MapXtreme's SELECT behavior doesn't make
use of the evaluated key column, so it potentially skips around the key select optimization.
In this example scenario, where MI_PRINX is defined as the key column, the following select statement exhibits
performance issues over a large data set:
SELECT * from linkar WHERE MI_PRINX in (22924,22925,22926,22927,22928)
Whereas the following statement utilizes the key select to advantage to get acceptable performance, using the
MapXtreme pseudo key column name, MI_KEY:
SELECT * from linkar WHERE MI_KEY in ('22924','22925','22926','22927','22928')
Note, MI_KEY is evaluated as a string during the select statement parsing, so you need to enclose the values in '''
marks.
MapXtreme v7.3.0 Release Notes
11