PTV Visum FAQs

Basic FAQ

  Assignment PrT


How can I obtain the total vehicle volume per link, summed for PrT and PuT, taking into account that PuT vehicles influence the PrT route choice?

1) Use the procedure 'PuT operating indicators' to acquire the number of PuT vehicle journeys. (This needs a timetable.)
2) Taking basic volume into account:
Calculate -> General procedure settings -> PrT settings -> Assignment -> Basic volume -> Fix -> Detailed calculation -> Links 1 * 'Number of service trips (AP)'
3) Run the PrT assignment again, which will take the 'basic volume' caused by PuT into account, to influence the PrT's route choice.
4) Create a user-defined attribute (Typ Formula) to sum up the link attributes 'Volume PrT [veh] (AP)' + 'Number of service trips (AP)'.



How can flow bundle volumes exceed link volumes?

If Blocking back is active, assignment results on links (connectors, (main-) turns and (main-) nodes) are changed, in order to show how much traffic flows behind a bottle neck.
The saved paths are not changed, but this is what flow bundles are using.

If you want to compare flow bundle volumes with link volumes, there are three methods:
A) If you take the attribute 'Volume PrT [veh] (AP)', this will show the traffic volume that passed the bottle neck until the end of the assignment interval only. If you take the attribute 'Volume demand PrT [veh] (AP)' instead, this will show the complete traffic volume.

B) Calculate an approximation of actual flow bundle volumes:
1) Define an UDA ‘ratio’ for links (turns, main turns) with a formula using attributes of volumes e.g. [Volume PrT [PCU] (AP)] / [Volume demand PrT with base [PCU]].
2) Define an UDA ‘actualVolFlowBundle’ for links (turns, main turns) with the formula [Volume flow bundle (PRT)] * [RATIO].
3) Modify the graphic parameters so that the UDA ‘actualVolFlowBundle’ is shown.

- Remark: If a flow was not affected by the bottleneck, it still adds to the attribute [Volume PrT [PCU] (AP)], resulting in overestimating the actual flow.

C) Turn off the blocking back model. Proceed as follows:
1) Calculate -> General procedure settings -> PrT settings -> Blocking back model -> Blocking back calculation active - deactivate.
2) Graphics -> Flow bundle -> Execute.



An user defined VDF is not found, in case it was referenced an error message is shown:
'Could not load DLL...'

Please check the following attributes:
1) The DLL's architecure has to match to the used software, i.e. a 64 bit Visum version only works with a 64 bit dll and won't recognize a 32 bit dll.
2) The dll (for Visum 16) imperatively needs to be located under %APPDATA%\Visum\160\UserVDF-DLLs\.
3) The file name has to start with 'VISUMVDF...'.
4) The installed VCredist.exe needs to match the Visual Studio version, which was used to build the DLL.



Why can PrT assignment results be different, with and without main nodes?

If a model contains main nodes, the links, nodes and turns within the main nodes are no longer considered. Therefore the model is different and the paths differ too: the path is searched from cordon link to cordon link of a main node, using a main turn. A part of the path (links and turns within the main node) is omitted.



Why are the assignment results between two Visum versions not identical?

The calculation algorithms the procedures are based on are improved in new Visum versions. There are additional options integrated and new research results implementated. For this reason, the assignment results may differ.



Why are connectors by shares not met after an assignment (PrT)?

The Connector's shares can be disabled with the setting:
Calculate -> General procedure settings -> PrT settings -> Connector weights apply to -> Total trips (MPA off).
When using 'Each single OD pair' instead, the connector's shares are considered.

You can distribute the demand among a zone's PrT connectors A) absolutely (freely) or B) proportionally (by shares):
A) If a zone has multiple connectors and the zone is set to 'Absolute', this will use the connectors according to shortest paths. It can be that a connector does not get any volume at all.
B) To meet connector shares, use the zone setting 'By shares'. In this case choose between 'Total trips (MPA off)' or 'Each single OD pair':
1) 'Total trips (MPA off)' is a volume-dependent consideration, the connectors' capacities are taken according to the shares and the impedance of connectors is calculated by a VDF. This way, you usually won't reach exact shares, which does however depend on how 'hard' the VDF is set.
2) 'Each single OD pair' is in fact a multi-point assignment (MPA), the demand of zones with proportional demand distribution is divided appropriate to these shares (thus the demand matrix is expanded and disaggregated) before the assignment. After the assignment, the matrix is aggregated again. This way, the connectors will meet exactly their shares. But caution, this takes extra calculation time and memory capacity.




How to apply toll with the TRIBUT-Equilibrium assignment or the TRIBUT-Equilibrium_Lohse?

Visum offers three toll procedures:
1) Link toll/'TRIBUT':
The toll is defined in combination with the TRIBUT-Equilibrium assignment for every single link with the link attribute 'toll-PrTSys(...)' (barely suitable for TRIBUT-Equilibrium_Lohse). Example: German truck toll on national highways.
2) Area toll which is applied for a special area object. Example: London.
3) Matrix toll, to model degressive road pricing schemes. Example: french highways.

The second and the third one are administrated as toll system and only work in combination with TRIBUT-Equilibrium_Lohse. The consideration of toll systems in the TRIBUT-Equilibrium assignment were subordinated, because the implementation investment and the expected calculation time are not expected to result in anything comparable to TRIBUT-Equilibrium_Lohse. A vignette toll, which in contrary to area toll allows re-entry on particular link types or does not constrain a particular zone with extra costs, is currently not possible in Visum.

Managing Toll systems:
Lists -> Private transport -> Toll -> Toll matrices
you can edit a toll matrix.

C:\Users\Public\Documents\PTV Vision\PTV Visum 15\Examples\Toll



With an active blocking back calculation less traffic arrives than without blocking back calculation.

The reason lies within the somewhat contradictory combination of a static assignment and the dynamic procedure blocking back (Dynamic assignments do not take blocking back into account, DUE uses an own procedure). The traffic load on links with a capacity bottleneck and ensuing links is smaller, because only the traffic that got through these links during the blocking back 1st phase is counted.
Capacity and a static assignment should share the same time scope, typically 'a day', or 'an hour'. Therefore traffic not able to get along capacity reduced links will reach its destination, but beyond this time scope.

The links before the capacity bottleneck get a mixed traffic volume, counting the traffic that got through + the traffic stocked on these links. The stocking capacity is defined in a link attribute (Edit link -> Congestion -> Stocking Capacity). Traffic exceeding this stocking capacity is blocked back onto the preceding link or links.

The PrT paths list shows, that all traffic was loaded onto the paths, thus left the origin but not necessarily reached its destination:
Lists -> Paths -> PrT Paths



PrT or PuT demand has not been assigned completely. How can I analyse this to find out where and why this happens?

A typical error message can be:
'DUE could not assign .. OD pairs completely or partially, e.g. due to closures or for too low capacities.'

You can analyse this by using a 'Remaining matrix', indicating the amount of not assigned demand per relation:

Matrices -> (select a matrix with only partially assigned demand) -> (open the context menu with the right mouse button) -> Save to file -> Dialog 'Save: Matrix' -> Dialog 'Save matrix ..:
Format: 'Format V' or 'Binary'
Matrix: Assignment matrix
Option: activate the option 'Remaining matrix' (only available for assigned matrices)

This matrix can be opened as an external matrix. Filter it on values > 0.

Check the following reasons when demand has not been assigned completely:
A) PuT assignments: missing connections.
B) PrT (only in case of Dynamic assignments):
1) Queues.
2) In case of DUE network coding errors like:
- missing connectors.
- wrong attribute values on links and connectors.
- defective topology (not connected nodes covering the same location).
- impedance too high (lacking capacity, volume too high).


  Network editor & Filter


When importing main zones as shapefile, how can I allocate zones to these main zones?

- Create a POI category.
- Import the shapefile into this POI category.
- If more POIs exist, create a filter on this POI category.
- POIs -> (right-click to open the context menu) -> Convert active POIs ->
Dialog 'Convert Points of interest'
Convert Points of interest to: Main zones
Zones in polygon of main zone: Assign all zones
Delete Points of interest after completing the action: True



Where can I find manuals, documentation, examples or tutorials?

The manual is available as help file in the menu
Help -> PTV Visum Help
Additionally with the same contents as PDF in:
Help -> PTV Visum manual
c:\Program Files\PTV Vision\PTV Visum 15\Doc\Eng\PTVVisum15_Manual.pdf
This path contains also additional documentation.

Example files are availalbe in:
Help -> Examples
c:\Users\Public\Documents\PTV Vision\PTV Visum 15\Examples\ -> search for 'COM'.

Tutorials are available in:
Help -> Examples
c:\Users\Public\Documents\PTV Vision\PTV Visum 15\Quickstart Tutorial\
c:\Users\Public\Documents\PTV Vision\PTV Visum 15\Tutorials\

Additionally you can watch recorded webinars here:

Training opportunities can be found in:



When you want to create or edit fare zones, how to select or filter for certain stops in a huge network?

The editor (available under Network -> PuT fare zones) is best suited for making smaller, manual changes. It often does not provide a clear enough overview when it comes making changes to larger networks.

The following AddIns provide alternatives (Scripts-> VisumAddIn -> PuT):
1) Stop -> FareZone:
When you choose a stop attribute (which can also be a user-defined attribute, with data from an Excel file or an external source), this AddIn uses it to create fare zones. The attribute may also list several fare zones per stop. These are separated by a comma.
2) POI -> FareZone:
(This AddIn requires POI categories.)
Using this AddIn, you can create fare zones based on already available geographic objects and at the same time link stops to your newly created zones. In Visum, the limitations of fare zones are defined via polygons. The AddIn requires that a POI with a polygon is created for each fare zone and that the polygon includes all stops linked to the fare zone. These polygons could, e.g., be created by importing a shape file containing these fare zones. But even if polygons are drawn manually, they save time compared to linking stops to each fare zone in the Visum fare zone dialog.
3) FareZone -> POI:
Do you want to look at things the other way around? Using this AddIn, you can visualize the geographic expansion of fare zones. In Visum, fare zones have a number of stops, but there is no polygon to define their limitations. This AddIn creates a POI with a polygon for each fare zone, including all of the zone's stops.

To get more detailed information on any of the AddIn functions, simply click the 'Help' button in the respective AddIn.



How to refresh the connector time for all connectors?

The connector time is calculated once for new created connectors over length and speed. These can be individually edited in the list 'Connectors' or by calling the respective dialog 'Connectors ... edit'. To set these for all connectors again, you can go on as follows:
1) Refresh connector lengths:
Network -> Network settings -> Scale -> Option 'Recalculate the lengths of links and connectors' -> Key 'recalculate'.
2) Refresh connector times by using the following formula:
t0-TSys = (length * 1000(m) * 3600(s))/(4v0 kmh) * 100(m)) = length * 900 .
Then, implement these by:
Connectors -> (right mouse key) Context menu 'Connectors' -> Multi-edit -> Attribute: t0-TSys PuTWalk -> Key 'Attribute' -> Length * 900 .



Is it possible to display railroad lines as black-white dashed line?

Yes, use for the appropriate link type two stroke layers, one covering the other partially. See e.g. in the example KA.ver
(easily found in Help -> Examples -> Open example Karlsruhe)
under Graphic -> Graphic parameters -> Links -> Display the classes 'Rail' and 'PuT'.



Is it possible to allocate nodes to areas by assigning the number of the area (or the content of another attribute) to all nodes that lay inside of the zone polygon?

Yes, proceed as follows:
1) Create a user-defined attribute on nodes that will obtain the zone number (alternatively use an addValue).
2) Nodes -> (Right-clicking) -> Multi-edit -> (Choose this user-defined attribute or an addValue) -> Intersect.
3) In the dialog 'Generate attribute value by intersection with source attribute' -> = Minimum or Maximum (overlapping zones of course not allowed).
4) Parameter for source objects:
- Network object zones.
- Attribute number.



Is it possible to use the display of isochrones for destination-related analysis (i.e. accessibility of center), too?

To receive a destination-related instead of an origin-related analysis, the following procedure is suited:
- Excerpt the journey time matrix.
- Extract times to the respective (target-)zone.
- External conversion to an user-defined attribute for zones.
- Read in the attribute an visualize it in 2D.



How to digitalize surfaces and snap points?

You can position new polygon points directly on existing polygon points and merge them, if required. Permit snapping option via Edit > User Preferences > GUI > Network editor menu and define a snap radius.
Then adjacent polygon points of other polygons are displayed as small circles and the mouse pointer turns into a lasso as soon as an existing polygon point can be snapped. This way, you can use existing points explicitly. If you don't want to snap the point just hold down the Shift key or switch off the option 'Permit snapping'.



Is the special function for link standard values to allocate link type standard values to link attributes) also available as procedure or COM method?

No, it isn't. The procedure 'Edit attribute' and the COM methods 'GetMultiAttValues' and 'SetMulitAttValues' only provide the possibilty to set values for a single attribute. However, there are 2 smart ways to use these functions:
1) By means of GetMultiAttValues' and 'SetMultiAttValues' attributes of link types can be read into arrays and then saved to link attributes.
2) Use the procedure 'Edit attribute' and save it as procedures parameters file. This file can be read and executed over COM.

Note: Since Visum12.5 an additional link type attribute 'Strict' is offered. If selecting this, changes made to the attributes of the link type are applied to all allocated links of this link type.



By adding or splitting a link the error message 'Invalid format for a length - qokm' appears.

The error message 'Invalid format for a length - qokm' may appear when the spatial framework was adjusted to a geographic system, like WGS84 or GCS_OSGB_1936. Both calculate in degree for ellipsoidal coordinates in Longitude and Latitude and they are both typically limited to Lon=180 and Lat=90. However, the coordinate values exceed (i.e. X=6425743, Y=5808882), because they were allocated by an Cartesian, metric coordinate system and therefore belong to a projected spatial framework. All versions since Visum 12 differ the calculation of link lenghts between geographic and projected spatial frameworks by considering the position of nodes and link polygones on an ellipsoid in case of a geographic spatial framework.

1) Open Network -> Network parameter, choose 'Visum (no projections)' and confirm with OK. This is also a workaround when the correct spatial framework is unknown.
2) Open again Network -> Network parameter and choose 'from file'. Now, you can choose the suitable PRJ-file.

Alternatively, the correct PRJ-file can be choosen directly, too. Deactivate the option 'Transform coordinates in case of changes'. Typically, this happens to networks for which the correct metric spatial framework is not apparently known or is inverted with a geographic spatial framework. That's the reason why this error message mostly appears in the English version.



How can I add additional stop points to a lineroute?

There are at least two solutions for this:
A) If the line route is already running over the node (or the path) that should now become the route point with its new stop point, you can simply add it as route point:
Activate network object line -> 'all' or 'all stop points' -> select line with new stop point -> set check in the column 'IsRoutePoint'.
B) If the route needs to be changed to add the new stop point, you have to change the route graphically by catching the route (or multiple routes at the same time) with the left mouse button on particular route points and drag it:
1) Add a new stop point on the node or line.
2) Check whether the necessary transport systems are allowed.
3) Overview -> Lines -> Select 'line routes' in the dialog.
4) Click neighboring line:
All traversed line routes are selected. You can now deselect individual routes by clicking and simultaneously holding the key.
5) Right click -> Digitize.
6) Click a neighboring stop point (or route point used as a node) to fix it.
7) Click the neighboring route again, hold the left mouse button and drag the line route 'to the stop point'.
8) Close the dialog 'Digitize the line route' with OK.



How to create connectors?

There are three ways
1. To create them manually
To connect only sensible nodes (e.g. as for PuT only nodes which are linked at least to one stop area) you may set a node filter accordingly and use the option 'Click only active objects'.

2. Using Connectors/Create...
In this way connectors will be created for all active nodes and zones. The maximum length refers to the distance between the nodes and the zone centroids, zone polygones aren't considered. If different values of maximum length shall be used (e.g. TSys bus - 300m/ft, railway - 600m/ft) the process can be executed in several steps. Firstly connect access nodes of all stop areas with distance 300m/ft, thereafter additionally nodes with distance 600m/ft their stop area is served by railway.
PrT connectors can only be connected to nodes with at least one link that is open to a PrT transport system.
PuT connectors can only be connected to nodes which have at least one link on which a transport system of the type PuTWalk or PuTAux is permitted or nodes to which a stop area has been allocated.

3. Scripts/VisumAddIn/PuT/Generate PuT zone connectors
This add-in has been available since Visum 11.5. The advantages of this add-in over the functionality 'Connectors/Create...' are:
- The radius of the catchment area isn't one fix value but an attribute of stop areas.
- The radius doesn't refer to the distance between the nodes and the zone centroids but to the zone polygon: if a zone polygone overlaps the radius creating a connector will be possible.
- The connectors systematically ensure that all PuT lines serving the area of a zone can actually be accessed from the zone via a connector. No PuT line will remain unused simply because it is inaccessible.
- You can specify barrier areas which are never crossed by a connector. Use them to model separating features in your model (e.g. rivers, motorways), which cannot be crossed walking.




Is it possible to import AutoCad DWG models as edges and nodes?

No, not directly.
It is very well possible to use AutoCad DWG models to build a Visum model from. There may be two different cases:
1) The DWG file contains a CAD model showing streets, crossings, pavements, cycle ways, lanes and lamp posts in all detail.
2) The DWG file contains a CAD model holding a nodes-edges-model.

Ad 1) These models are not suitable as Visum model, though as background very suitable. Having the detailed street as image in the background, a nodes-edges model is built within Visum more easily. To use such DWG files as background, you can load them in Visum as background file of type DWG.

Ad 2) These models might be suitable in many cases as foundation for a Visum model. However, Visum cannot read DWG nor DXF directly as nodes and edges. Therefore you need a detour. A possible detour leads over the DXF format, which will be transformed into the SHP format (Esri-Shape). Visum can read SHP files as edges and nodes.

You might find suitable tools in the web by giving in DXF2SHP or use a GIS program like MapInfo.

Visum 9 offered the old program DxfKonv.exe (typically in c:\Programme\PTV_Vision\VISUM940\DXF\DxfKonv.exe) but this only transforms DXF files into backgroundfiles (according to the old format HGT).



Can Visum import data in the format of 'General Transit Feed Specification'/GTFS (former 'Google Transit Feed')?

Yes, such data can be imported by using an Add-In:
- Visum11/11.5/12: Scripts -> VisumAddin -> PuT -> Import Google Transit Feed.
- Visum12.5/13: Scripts -> VisumAddin -> Import -> Import Google Transit Feed.



The import from or export to 'MS-Access 2007 or newer' failed with the error messages:
'Failed to open database. Could not find Access 2007 or later OLE DB provider.'
'Calling UTADOXDB_CreateOrOpenCatalog - _CatalogPtr->Create(Provider=Microsoft.ACE.OLEDB.12.0;Data source=..) failed!'

The Microsoft.ACE.OLEDB.12.0-Databaseprovider is defective or not available, although its respective key is still present in the Registry.

Workaround: Install the '2007 Office System Driver: Data Connectivity Components':



Which files can be imported from an EMME model into PTV Visum?
Are any procedures in the EMME model imported to PTV Visum too?

Use the interface in: File -> Import -> Emme

Following EMME files can be imported:
- EMME/2 data file.
- EMME/2 modes.
- EMME/2 Network.
- EMME/2 Turns.
- EMME/2 Vehicles.
- EMME/2 Transit Lines.
- EMME/2 trip tables.

Procedure parameters are not imported, only network data.
The EMME/3-format is not supported. Workaround: Save the EMME/3 model as EMME/2.



The connection to a personal Geodatabase fails:
'A 64 Bit version of ESRI ArcGIS is not yet available. Cannot connect to a geo database'.

Visum, ArcGIS Server 10.5 and ArcGIS Pro support and use the 64 bit technology, ArcGIS Desktop and ArcReader don't use it.
Workaround: Using a 64 bit operation system, you have to install Visum 32 bit in addition, to connect Visum with a Personal Geodatabase.



The ANM export fails with the error message:
''Link polygon of link ... is too short.''

The links seem to be too short, because the used geographic coordinate system (WGS84 lat/lon thus in degrees) is not suitable for small models.

Transform the network into a suitable metric coordinate system:
Network -> Network settings -> Scale -> -> Projected Coordinate Systems -> Utm -> Wgs 1984 -> WGS 1984 UTM Zone XX.prj .

Use the Wikipedia page on UTM
to determine the correct zone number. In Visum N or S denote the northern and southern hemisphere.



Importing a shapefile fails with the error message 'This shapefile type is not supported'.

PTV Visum does not support following data types for polylines:
- '(15)' stands for 'POLYGONZ', which are polygons with Z-coordinates. These are not supported because polygons in Visum do not have any Z-coordinate. Workaround: When saving the shapefile in ArcGIS (or another software) select another data type - POLYGON or POLYLINE.
Since PTV Visum 11.50-02 PolygonM und PolygonZ are supported, but the Z-coordinates are omitted.
- '(8)' stands for MultiPoint and is still not supported. Workaround: Use Point instead.



How to import files from CUBE to Visum?

Since Visum 12.5 there is the add-In 'Import Cube network' by Scripts -> VisumAddIn -> Import.

The import of CUBE consideres the following network objects - nodes, areas, lines, connections and PuT lines. Additionally, turn attributes like penalties and prohibited turns can be read in. Required files:
1) ASRI shp files for nodes (including shx, dbf files).
2) ESRI shp files for lines (including shx, dbf files).

Further files (optional):
1) ASCII text file for turn time penalties and prohibited turns.
2) Cube PuT line file (*.lin) in ASCII format (+ve node numbers mark stop points, where boarding and alighting is permitted).



When exporting or copying to Excel (by file or clipboard, of lists or matrices) number formats or number values are sometimes changed. Why?

This might be related to the setting for the decimal symbol as point or comma, which needs to be equal for both Visum and Excel:
- Excel can use the corresponding Windows setting: Control panel -> Regional and Language -> Format -> Additional settings/Customize -> 'Decimal symbol' and 'Digit grouping symbol'.
- Excel 2010 can override this option: Excel Options -> Advanced -> Use system separators -> 'Decimal separator' and 'Thousands separator'.

In Visum this is a program setting:
- Visum10/11/12: Extras -> Options -> Formats -> Decimal separator.
- Visum13/14: Edit -> User Preferences -> Formats -> Decimal separator.



How to import geographical objects (nodes, polylines or areas) from MapInfo (*.TAB) to Visum?

Export the MapInfo-file as Shape-file (Tools -> Universal Translator - from TAB to SHP) and import these to Visum (File -> Import -> Shapefile).



How can I generate stops, stop areas and stop points from a shape file?

1) Import the shape file as nodes.
2) Integrate these nodes into the network: Nodes -> (Rightclick to enter the context menu) -> Aggregation of isolated nodes.
3) To generate a stop area and a stop point for each stop, choose between the following options:
'Integrating nodes ...':
- 'Always as node with stop point'.
- 'Always just as stop point'.



How to import data from TransCAD to Visum?

Visum12.5 introduced the AddIn 'Import TransCAD network', found in:
Scripts -> VisumAddIn -> Import

The interface handles following network objects: nodes, zones, links, turns, connectors and PuT lines.
Please note: importing PuT lines needs manual editing afterwards, because of differences in the data models between TransCAD and Visum.

The interface needs files in formats, which can be exported from TransCAD:
- ESRI shapefiles for the network's topology and geometry.
- ASCII/TXT on turns.

Necessary files:
1) ESRI shp for nodes (including the shx and dbf file).
2) ESRI shp file on links (including the shx and dbf file).

Optional files:
1) ASCII text file holding turn times and closed turns.
2) ESRI shp file holding stops and the order they are served (including the shx and dbf file) [needed to import PuT data].
3) ESRI shp file on routings (including the shx and dbf file) [needed to import PuT data].


  COM & Add-In


A script started over COM has crashed with error messages like:
- 'Communication with the Python background script failed'.
- 'Could not start the script component'.
- 'Could not find a matching script component for file extension '.py'.'
- 'pythoncom error: ERROR: server.policy could not create an instance.'

PTV Visum cannot find the Python installation:
- Possibly Python was not installed at all, either because its installation option was manually deactivated in the setup, or an automatic silent installation process could not execute it, because the Python setup is not silent (which the PTV Group cannot influence).

Recommendation: Install Visum and Python completely new:
1) Uninstall all Visum installations.
2) Uninstall all Python components.
3) Remove manually any folders like:
- C:\Python…
- C:\Program..\Python…
- C:\Program...\PTV_Vision\...
4) Reboot the computer.
5) Download the current setup for the latest Visum release.
6) First, install only this current setup, including 'Python' (do not change its standard folder).

In case of an automatic silent installation process, it might occur that the dongle was not available, leading to a missing registration as COM server. This can be fixed easily by:
Help -> Register as COM server



How can I set or change the coordinate system by COM?

Use the following sample code for Python:

srsWGS = r'GEOGCS['GCS_WGS_1984',DATUM['D_WGS_1984',SPHEROID['WGS_1984',6378137,298.257223563]],PRIMEM['Greenwich',0],UNIT['Degree',0.017453292519943295]]'

Example for use with VBA:



In a big model, the program crashes when you try to run any Python-script or add-In.

Visum 11.5 is affected by an error in the memory management of the component wxPython that may cause an crash for really big version files (> 1 GB). In Visum 12, this is corrected with a new version of wxPython. Workaround:
1) Start Visum.
2) Run any add-In (i.e. Python console) and close it again.
3) Load the version file.
4) Run the add-In's.



Python Add-Ins return error messages like:
- ''Could not start the script component''.
- ''IOError: [Errno 13] Permission denied: 'C:\\Program Files\\Python26\\lib\\site-packages\\win32com\\gen_py\\' pythoncom error: Unexpected gateway error''.

Python25/26 was installed in:
This is not the recommended path. Python25/26 always belongs to:

Recommendation: Install Visum and Python completely new:
1) Uninstall all Visum installations.
2) Uninstall all Python components.
3) Remove manually any folders like:
- C:\Python…
- C:\Program..\Python…
- C:\Program...\PTV_Vision\...
4) Reboot the computer.
5) Download the current setup for the latest Visum release.
6) First, install only this current setup, including 'Python' (do not change its standard folder).



How to execute a PrT shortest path search by COM?

An example for a shortest path search between two nodes:

Set NetElementContainer = Visum.CreateNetElements
Set Node = Visum.Net.Nodes.ItemByKey(10)
NetElementContainer.Add Node
Set Node = Visum.Net.Nodes.ItemByKey(40)
NetElementContainer.Add Node
'Route search with current speed tCur
Set RouteSearchPrT = Visum.Analysis.RouteSearchPrT
VSysCode = 'C'
RouteSearchPrT.Execute NetElementContainer, VSysCode, 1

A more complex example, displaying the result into a list and write the path legs to an attribute file:



How can I edit matrix values over COM using Excel/VBA?

Following variants are possible:
- By referencing the matrix value by zone numbers:
Visum.Net.ODPairs.ItemByKey(100, 200).AttValue('MatValue(1)') = 1000

- By referencing the matrix value by row and column.
Visum.Net.Matrices.ItemByKey(1).SetValue 1, 2, 5000

- More efficient is using a safearray as input:
Visum.Net.Matrices.ItemByKey(1).SetValues myArray

Example codes are available in:



How can I import a Shapefile into a POI category?

Shapefiles are imported using the method IVisum.ImportShapefile, which needs an IImportShapeFilePara object, offering an own method AttValue. Use this to set the attribute 'POIKey', corresponding to the 'POI category' in the dialog 'Read shapefile', with the POI category's number.

POI categories can be edited using the class INet.IPOICategory and its method AttValue. To add one, use the method INet.AddPOICategory.




Where can I find documentation on the Visum COM API?

1) You can find an introduction to scripting with the Visum COM API in
%Public%\Documents\PTV Vision\PTV Visum 15\COM\
Introduction to the PTV Visum COM-API.pdf
This folder includes sample scripts.

2) In the path
%ProgramFiles%\PTV Vision\PTV Visum 15\Exe\AddIns
you can find the source code of all AddIns being part of the standard installation. They are often a bit more advanced, but might be of interest when needing a template for an AddIn or if you want to adapt an existing AddIn.

3) Following
you can find two recorded webinars about COM:
- Introduction to Scripting and COM automation in PTV Visum
- Advanced applications of scripting and COM automation in PTV Visum

4) The menu
Help -> HTML Help -> Visum - COM (PTV Visum 13/14)
Help -> COM help (PTV Visum 15)
leads to the chapters 'Visum COM' and 'Visum - Py'.



Instantiating Visum from
Set VISUM = CreateObject('Visum.visum.110')
leads to the error message: 'Permission denied'

The licence used does not hold the module 'COM interface' and that is the reason for the error message.
You can check this in the dialog Extras -> License

- Check the wanted license for the module 'COM interface'. If this is missing, please notify

- Make sure to be using the correct class ID:

- If you have multiple identical installations, using slighty different licenses, register the one you need again (with administrator credentials).



How to execute a PuT shortest path search by COM?

Use a RouteSearchPuT Object, that is given a NetElements container with network elements. An example could look like this:

Option Explicit

Sub shortest_path_search_OV()
Dim Visum As New VISUMLIB.Visum
Dim aLink As VISUMLIB.ILink
Dim aNode As VISUMLIB.INode
Dim aZone1 As VISUMLIB.IZone
Dim aZone2 As VISUMLIB.IZone
Dim aNetElementContainer As VISUMLIB.INetElements
Dim aRouteSearchPuT As VISUMLIB.IRouteSearchPuT

Visum.LoadVersion ActiveWorkbook.Worksheets('Einstellungen').Cells(1, 2)

Set aNetElementContainer = Visum.CreateNetElements
Set aRouteSearchPuT = Visum.Analysis.RouteSearchPuT
Set aZone1 = Visum.Net.Zones.ItemByKey(Cells(7, 2).Value)
Set aZone2 = Visum.Net.Zones.ItemByKey(Cells(8, 2).Value)

aNetElementContainer.Add aZone1
aNetElementContainer.Add aZone2

aRouteSearchPuT.Execute aNetElementContainer, 'P', '08:00:00', '1', False, 'ADDVAL1', False

End Sub



Can Excel 32 bit instantiate PTV Visum 64 bit?

Yes, because PTV Visum runs as a 'out of process' COM server (*.exe), Excel VBA can instantiate both 32 bit and 64 bit Visum.
This is different for the component ScriptMuuli, as this is an 'in-process' COM-server (*.dll): Excel 32 bit CAN ONLY instantiate ScriptMuuli 32 bit and CANNOT instantiate ScriptMuuli 64 bit.
- Use Excel 64 bit to instantiate ScriptMuuli 64 bit (available with Microsoft Office 2010).
- Or install Visum 32 bit addditionally to be able to use ScriptMuuli 32 bit.

How to find out whether Excel is 32 or 64 bit?
File -> Account -> About Excel -> (in the first line of the dialog)



Running a VBA script fails with:
'Compile Error: Can't find project or Library.'

Probably the EarlyBinding concept was used: in the Visual Basic editor following
Extras -> References
a Visum Object Library will be listed as 'MISSING'. Possibly this component is not available on this machine, or with a different path, or this component is not needed.
Note that the 32 bit Visual Basic editor will not find any 64 bit object libraries automatically.

- In the Visual Basic editor: Extras -> References
- Uncheck the missing reference.
- Click 'Browse' to open the dialog 'Add reference'.
- Browse to the folder holding 'VisumXXX.exe', i.e. in
C:\Program Files\PTV Vision\PTV Visum XX\Exe\
- Choose to be showing 'executable files (*.EXE, *.DLL)'.
- Choose the 'VisumXXX.exe'.
- Confirm and close both dialogs.



How can I position the network editor to display certain network objects?

The method
can use some single network object as argument.

To zoom upon multiple network objects, use
to gather the X- and Y-coordinates as arrays. Use these to estimate the corners for a bounding box, which can be used for the method:
Visum.Graphic.SetWindow xMin, yMin, xMax, yMax



When instanciating Visum by COM, how can I distinguish between 32 and 64 bit Visum installations?

If both a 32 bit and a 64 bit installation are available for example for Visum13, use the class Ids 'Visum.Visum-32.130' or 'Visum.Visum-64.130':
- Set Visum = CreateObject('Visum.Visum-32.130')
- Set Visum = CreateObject('Visum.Visum-64.130')



Wie kann ich in einem Skript den aktuellen Dateipfad und Dateinamen der Versionsdatei nutzen zum Speichern?

Dafür gibt es folgende Eigenschaft:

Visum.SaveVersion Visum.UserPreferences.DocumentName



A COM command like Link.AttValue('NO') = 1300 does not work. What is the reason?

The 'ahead' and 'back' direction of links are modelled as two seperate link objects and share the same number (only the numbers of the from and to nodes are different). To change these by COM, use this function:
SetNo ( [in] int no).



How can I open an external matrix over COM?

An example using the IMatrix.Open-method (Python):

Mat = Visum.Net.Matrices.ItemByKey('1')

Alternatively use this way over the demand segment, when the matrix number or code cannot be used (VBA):

To open a new external matrix (VBA):

Dim myNewMatrixEditorObject As IMatrixTable
Set myNewMatrixEditorObject = Visum.CreateMatrixTable(matrixPath)



How can I use a VBA procedure from inside PTV Visum?

Use the AddIn 'Run VBA', which is only available as procedure.

An example for using 'Run VBA' to export the PrT Path list:



Where do I find a list of all used attributes in Visum which can be both used interactively in lists and addressed via COM by AttValue(...)/SetAttValue(...)?

These are listed in the file attribute.xls: ...\PTV_Vision\VISUMXXX\Doc\En\.
The short names are in the column AttributeID.



The VBA COM line
Set Visum = CreateObject('VISUM.VISUM.160')
fails with the following error message:
'ActiveX component can't create object'.

The Python line
Visum = VisumPy.helpers.CreateVisum(...)
fails with an error message, containing at the end the string:
'Invalid class string'

The computer uses a 32 bit or 64 bit operation system.

PTV Visum needs to be registered again as COM server. Until Visum 12 use an external tool in the start menu:
Register Visum as COM server (again):
Start -> All programs -> PTV Vision -> Visum -> Tools -> Register as COM server -> (Click right mouse button) -> Execute as Administrator.

Since Visum 11 an internal tool is available, but make sure to start PTV Visum with administrator credentials:
- Visum 11-12.5:
Extras -> Options -> (Working) Environment -> General -> Register as COM server.
- Visum 13:
Edit -> User Preferences -> Working environment -> Register as COM server.
- Since Visum 14:
Help -> Register as COM server.

This procedure could be necessary again after the computer was rebooted.

Example test scripts using early and late binding:



Is it possible to use the special function 'Set lengths' (Lines -> Multi-edit -> Lineroutes -> Multi-edit Lineroutes -> Special functions) over the COM interface?

Yes, the method SetItemLengthsFromNetwork is not available in the class ILineroutes, but in the class ILineRoute.
For Each aLineRoute In Visum.Net.LineRoutes

Complete example:



How to archive matrices from Visum as CSV-file, like:


See the attached skript: .



How can I export only active network elements (only active links) as shapefile?

Use an object of the class IExportShapeFilePara, and set the attribute OnlyActive:
myExportShapeFileParameterObject.AttValue('ONLYACTIVE') = 1

Code example:



How can I include the current filepath and filename to save a version by script?

Use the property

Visum.SaveVersion Visum.UserPreferences.DocumentName




The display of the background map or inserting (static) Internet maps from BING or OSM is prevented by the proxyserver.

Inserting Internet maps from Bing Maps or Open Street Map fails with:
- 'Tile 1 could not be created, because one or more partial tiles could not be retrieved from the server of the map service.'
- 'Could not create tile 1. Error code: -1011'

Further characteristics:
- The map service 'Bing Maps [aerophoto]' is set as background map: Edit graphic parameters -> Background map -> Map service.
- But the preview returns only the warning:
'Unable to call background map with the current settings.
Background map could not be called by server of the map service used.
Check your Internet connection. The server of the used map service might be temporarily unavailable.'

If a tile server cannot be reached, you can try to load a static background from that service. As long as the dialog ''Add background'' is still open, you can find a log file in the folder for map tiles, i.e.:
This file can explain why the tile server could not be reached.

A) Workaround in case of an active proxy server:
- The proxy server should allow the download of PNG and XML files.
- Exclude the following URLs from being blocked by the proxy server:
For OSM:

For Bing:

B) Usually settings for the operating system (commonly used by Internet Explorer) rule the abilities to access the internet through a proxyserver. These can be found following:
Control panel -> Internet Options -> Connections -> LAN settings

Either set the proxyserver address and port, or depending on the network policy set the options
'Automatically detect configuration settings'
'Use automatic configuration script'
with an address to a file called like

C) On computers still using Windows Server 2003 or XP, the internet options are not always recognized correctly (including these applying to the proxy server). The option 'Automatically detect settings' is sometimes ignored. Try to use the option 'Automatic Configuration Script' instead. This does not apply to any MS operating systems released since Vista.



How can lines be activated, which has a greater value in attribute X than attribute Y?

The condition(s):
'Attribute X' <, >, =, ... 'attribute Y' can be entered directly into the filter. If you have a program version before Visum 11.5, you can use a workaround:
The margin of attribute X and Y are saved in an user defined attribute. After that, the filter is executed to this attribute. The value range should be choosen greater or smaller 0.



The background map for the map service 'Bing Maps (aerophoto)' is not shown or a warning is displayed:
'The Bing Maps License is expired.'

Customers with an active maintenance contract can continue to use high resolution aerials of Bing Maps by activating the tickets for the software releases in 2016 (PTV Visum 16, PTV Vissim/Viswalk 9). This will enable Bing Maps in the older releases too.

- If you like to renew your maintenance contract, contact or your local distributor.

- If the your maintenance contract was already renewed, and you are unsure about having received or activated any activation ticket, please check the Bing Maps license status/valid dates through
Visum (15/16) -> Help -> License -> Module Bing Maps.
Activate the latest license ticket you received by e-mail from PTV through
Contact your license administrator in case you are not responsible for managing the licenses.



Some loaded background files cannot be roated. In the dialog 'Background objects, the parameters 'Rotate' and 'Transparancy' cannot be edited. Why not?

- Raster graphics like JPG can be rotated, but once exceeding sizes of 5000 x 5000 pixels, they are subject to restrictions, due to the used library. Workaround: Divide the image file, reduce the resolution or rotate them in image editing software.
- Visum can visualize DXF/DWG files, but the used library cannot rotate them. Workaround: Rotate these models in a CAD software.



How to display graphically vehicle journeys as link bar?
How to show volumes or other attributes of one or several vehicle journeys as link bar?

- Use the line filter to filter one or several vehicle journeys.
- Choose indirect attributes for the link bar (marked by one or two arrows denoting the relation of 1:1 or 1:n).
As it is an attribute of items (changing on the course of a vehicle journey), select a line 'item' attribute.

It works with the following bars for example for the volume:
1) Standard bar with attribute SumActive:Line route items\SumActive:Using time profile items\SumActive:Vehicle journey items\Volume (AP)

2) Using a line bar you already start with line route items. Attribute : SumActive:Using time profile items\SumActive:Vehicle journey items\Volume (AP)

'Using' means that the attribute is known for the PuT-route items (stop point to stop point), but the same value is available on the used links in between too.

You will find similar examples in the manual under 'Use cases for version comparison'.



How can I integrate a Web Map Service (WMS) or a web map tile service (WMTS)?

1) Map services can be added here:
Edit -> User preferences -> GUI -> Background map:
Examples for WMS services:
- tile://
with the subdomain a

Example for a WMTS service:

2) Choose this service to be displayed:
Graphic -> Edit graphic parameters -> Background map -> Map service.

Tip: If the connection or the server are too slow, you can still use the map service to insert static internet maps.

If the URL to a map service does not work, you can try to load a static background from that service. As long as the dialog ''Add background'' is still open, you can find a log file in the folder for map tiles, i.e.:



Why are not all network objects (i.e. stop points on a link) displayed?

Check the following settings in the graphic parameters of the particular networks objects:
- Button 'Avoid overlapping when drawing':
By activating, only one of the network objects is displayed when serveral objects overlap.
- Layer order:
This causes an overlapping of network objects by others.
- Button 'Draw until scale':
By activating, network objects are drawn dependent on the actual scale.



Opening the 3-D network view leads to an error message:
'The 3-D network view cannot be opened.'
'An update of the graphic driver might solve the problem.'

Sometimes a different error message is shown:
'Creating compressed texture failed.'

The 3-D network view depends on a current graphics driver, supporting OpenGL.
Not supported issues are expected with:
- Operating systems from Windows 7 downward.
- Older laptops (try to avoid any energy saving graphic card variants and options, sometimes multiple graphic cards are available)
- Remote Desktop (RDP) from Windows 8 downward, try VNC instead.
Recommendation: Even if Windows indicates that the driver is up to date, look for the graphics card name in the web (e.g. on the manufacturer website), compare the driver version numbers and install the current version manually.



When choosing the map service 'OpenStreetMap...' or 'Bing Maps', while a (local/national) coordinate system is already active, Visum displays a dialog with the following text:

'You have chosen a map service that supports map display per tile.
Maps can only be displayed per tile if Visum uses the same projection as the map service.
Otherwise, the map can only be displayed after all tiles have been downloaded and transformed.
Do you really want to change the projection and recalculate all network coordinates?'

What should I do?

This dialog points to the fact, that the chosen map service uses a different coordinate system than currently active.
'Retain projection' will cause Visum to transform and resample the downloaded map tiles. This might degrade image sharpness.
For most networks, using local or national coordinate systems like UTM, 'Retain projection' will be the best choice.
When choosing 'Adjust projection', the map tiles will be displayed as downloaded, and the network will be transformed. This is reversible.

The map services 'OpenStreetMap...' or 'Bing Maps' use the coordinate system 'Sphere Mercator'.



The illustration of a PDF-file, in that transparent polygons were received, is really slow or the transparence of color is lost on paper or in a PDF-document.

The reason is due to program libraries, GDI+ and the Postscript drivers, that do not work together correctly and that we are not able to change. Workaround:
Generate a SVG file 'optimized for Inkscape' in Visum. Then, convert this file to PDF in Inkscape via File -> Save as -> PDF via Cairo.




How can I analyse the number of transfers, divided per traffic system pair, for a certain area?

For the complete network, use the list Passenger transfers' 'PuT TSys transfers objects'.
For a certain area:
- Use a 'territory' object to set all contained objects active ('Mark objects in territory for spatial selection').
- Take some AddVal attribute on stops, fill it with 0 and set it to 1 only for active stops.
- Open the list 'Passenger transfer stops / time profiles' (list 'PuT transfer objects'), set it up to group on the attributes:
From time profile item\Line route item\Line route\TSys code
To time profile item\Line route item\Line route\TSys code
From time profile item\Line route item\Stop point\Stop area\Stop\AddValue 1
To time profile item\Line route item\Stop point\Stop area\Stop\AddValue 1
- Use the attribute
Passengers transferring direct (AP)
with the aggregate function 'Sum'.




The chaining of attribute values in a list is cut with '...'. How to chain attribute values over the limit of 255 characters?

The setting 'Maximum string length' may stay blank:
Network -> Network settings/parameters -> Attributes -> 'Maximum string length (blank = unlimited)'.


  Data model


During the reading additively of an Access-Database with PuT lines the error message 'Mandatory attribute element index invalid' is shown by the vehicle profile element. The attribut exists in the table and is set correctly.

The message is shown in one of the following cases:
- The network allready contains the line that is about to be imported to the network.
- In the parameter settings of importing the database the conflict avoidance is selected to 'ignore'.

The time profile already is contained in the network, with an index (LRELEMINDEX) of 1 to 7. The index in the database that is about to be imported reaches from 1 to 8. During the skipping, the entrys are compared but because the index 8 in the model is missing (and is not added because of the setting 'ignore') you get the error message 'Mandatory attribute element index invalid'. Because of the line hierarchie there are inherited error messages generated, e.g. for the vehicle journeys. If you choose the parameter settings by 'frequent cases > Read timetable' or change the settings manually from 'ignore' to 'overwrite object/course' the error message will not be shown again because the line route will be completed to the index 1 to 8 before.



What do the codes AH and AP mean and what are time intervals?

Visum offers several time intervals for analysis. Thereby, it is differed between analysis period (AP), analysis horizon (AH) and time intervals (TI). Here, AH is an over a projection factor selectable multiple of AP. ZI mostly is a user-defined time slot (mostly within AP).



How can I merge neighboring areas or regions, so that two area- or region-borders become one?

1) Export the areas or regions as network file. Use 'frequent cases' to select all necessary tabels.
2) Open this network file with an editor and delete the second area respectively region. In the tabel 'area elements' the subareas have to be referd to the same area. Reading in this network file, Visum will merge the areas respectively regions. The points and edges of the common border will be removed by using the process of 'normalizing'.



How are the cross-section values of link labes calculated? At attributes like 'name' only one value of dircetion is suggested.

At the link labels the cross-section of both directions is suggested. What is suggested as cross-section can be defined for each link attribut. Many attributes get add up (i.e. number of routes, link volumes, user-defined attributes), for others, the average (i.e. v0 PrT), the maximum (i.e. length, link type, slope) or the minimum (i.e. plan no.) is suggested. For attributes that may contain text (i.e. name) there is no average - in this case the value of the direction whose start node is smaller than the destination node is taken. For user-defined attributes, the average-logic can be defined by the user.



How to extrapolate indicators like volume, passenger kilometers and revenue from analysis period (AP) to analysis horizon (AH)?

Such a projection (typically from daily to yearly values) is done by means of the projection factor.
Dependent on the indicator to be calculated the projection factor can be set for PuT valid days (Network -> PuT valid days) or demand segments (Demand -> TSys/Modes/DSegs -> Demand segments -> Edit).


  Installation & Dongle


When clicking in the step 'Available Licenses' on 'Activate Selected Licenses Now' an error message is displayed:
'An internal error has occurred. Please try again later.

The dongle's firmware needs to be updated. For instructions see:
See also: , Ch. 6.3.

Note on network licenses: Issued licenses will be withdrawn, users will receive an error message and already running longterm processes might be terminated. It is not recommended to run the update during normal operation, announce a service window instead.

Note: Mind the order of the installation and license activation process (in this example only for maintenance customers):

This error can occur, when forgetting the second step:



Visum does not start, because the CodeMeter dongle is not correctly recognized.
This happens on a laptop, shortly after reactivating it after an energy saving mode ('hibernation').
Typical error messages can be:
- 'Error@AllocateHandle: CmStick Entry not found, Error 200'.
- 'CmDongle runtime system is not installed'.
- Windows Systemtray: 'USB device not recognized'.
- CodeMeter control center: 'No information on any CodeMeter licenses available. No CmContainer found.'

- Reboot the computer. If the dongle works again, energy saving settings (includes switching off USB ports) should be checked.
- After the reboot, check for a defective USB port: Try the dongle on another USB port.
- After checking the USB ports: Try the dongle on another machine. When plugging this dongle out and in, its LED will blink in red and green. The last blink should be green, if not this dongle could be defective (see ).

Additional Workarounds:
- In case the dongle is plugged into a USB HUB, plug it into an USB port of the used laptop.
- Use an USB HUB with an own power supply.
- In case 'USB Watchdog' or similar monitoring software is active, deactivate/uninstall this.
- In case USB3.0 is used, update the internal USB chip set drivers (often available as patches from the laptop's manufactorer).



Where do I get information about new servicepacks?

If you wish to be informed automatically about new servicepacks, register for the mailing list:

Servicepacks can be downloaded from:

You will find information about your password in the file 'DownloadServicePacks.txt' that is located in the folder Documents or Docs respectively of your Visum installation.



Updating the firmware on a CodeMeter dongle fails:
'Connection to the update server failed (Error WB5000). Please check the selected server name and your network connection.'

To update the firmware, you need an internet connection with the update server of Wibu Systems. In many cases from inside a network, this connection needs to pass a proxy server.
An automatic way to setup this, can be found in: - section 6.4

The proxy server can also be set manually in the CodeMeter WebAdmin:
Systemtray -> CodeMeter Control center -> WebAdmin -> Configuration -> Proxy

You might copy the settings available from:
Control panel -> Internet Options -> Connections -> LAN settings

Workaround: Try to perform the update on another computer, or from outside the network.



The coordinate systems cannot be selected because the dialog 'Projections' displays neither folders nor projection files (*.PRJ).

Sometimes it happens that no projection files are copied to the folder:
c:\Users\%USERNAME%\AppData\Roaming\PTV Vision\PTV Visum 16\Projections\

You can easily correct this by copying the contents of the folder
c:\Program Files\PTV Vision\PTV Visum 16\Exe\Projections\
c:\Users\%USERNAME%\AppData\Roaming\PTV Vision\PTV Visum 16\Projections\

While running the setup, the projection files are copied to the EXE folder, to which normal user accounts do not have any access.
Starting Visum, it is checked whether the current user already has a projections folder. Each user gets his own folder, thus can delete non-used projections or add additional projections.

If the list of projections is empty, the folder 'Projections' does exist, but is empty. You can delete this folder and start Visum again. This triggers an attempt to copy the projection files. If the folder remains empty, you can copy the files manually.



While running the setup for Visum14, an error message is displayed:
'The addressed CmContainer has an invalid Firmware Version (e.g. too old), Error 224'

The dongle's firmware needs to be updated. For instructions see:
See also: , Ch. 6.3.

Note on network licenses: Issued licenses will be withdrawn, users will receive an error message and already running longterm processes might be terminated. It is not recommended to run the update during normal operation, announce a service window instead.



After installing and starting Visum, a warning is displayed:
'HBEFA data warning': 'No or incomplete installation of HBEFA data.Please install the HBEFA data package provided by PTV.'

The voluminous HBEFA data are provided over a separated setup, differing for 32 and 64 bit platforms:
- PTVHBEFADataPackage.exe.
- PTVHBEFADataPackage64.exe.

These setups are avaible at:
If they are missing, please notify:



The import or export of a MS-Acces data base fails with the following error message:
- 'Could not start VisumDbServer.exe'
- 'VisumDbServer not registered correctly'

The component VisumDBServer.exe/VisumMdbServer.exe was not registered correctly. Try the following methods to register it again:
1) Help -> Register as COM Server
2) Run any current service pack suitable to your installation.
3) Register VisumXXX.exe again:
Start -> Execute -> 'C:\Program Files\PTV_Vision\VISUM150\Exe\Visum150.exe' -reg .



Visum does not start and instead shows error messages like:
- 'One of the following licenses is required:
* CodeMeter 100321:900000000
Failure reason: CodeMeter License Server not found, Error 101.'

- 'Cannot start program'.
- 'Expected customer no.: 900011111'.
- 'Error@AllocateHandle: CmStick Entry not found, Error 200'.
- 'Error@AllocateNetworkHandle: CodeMeter Runtime Server is not found, Error 101' or 'Failure reason: CodeMeter License Server not found, Error 101.'

The following item could be contained, too:
'Error@AllocateHandle: The Expiration Time has expired - the encryption cannot be operated, Error 35'.

It is a network license and not a single-user license.

The network license can not be found. Reasons can be:
1) The limit date is exceeded. How to proceed, see
2) The license server could not be found. In that case please check the server search list in the CodeMeter WebAdmin (see Overview_CodeMeter.pdf, ch. 4.4).
3) The CodeMeter installation at the license server was not yet started using the option 'Run Network Server' (see Overview_CodeMeter.pdf, ch. 3.3).
4) The license requested by a client pc is not available on the license server.
5) The network connection between client and server could not be established.



What is the difference between release-versions and servicepacks?

- Release versions are independent program versions which can be updated with servicepacks.
- Servicepacks contain improvements and error corrections for the particular release version. They are accumulative, that means that the current servicepack always contains all previous ones. Servicepacks can only be used for updating the appropriate release version, that means that i.e. service pack 12.52-07 needs a basis-installation of Visum 12.5.

Installation setups for release versions can be found in:

Servicepacks are available in:



When setting up a virtual license server, is it possible to use a software dongle instead of an USB dongle?

No, this is not possible, we recommend in this case to use a network license with a network USB host. Examples:



Does PTV Visum support 64 bit operation systems?

Since Visum10, PTV Visum supports 64 bit and can be run on Windows Vista/7/8 64 bit. By using a 64 bit operation system, you are able to allocate considerably more main memory than by using a 32 bit machine, from which particulary working with big and memory-intensive networks benefits. However, the computing speed is not influenced by the memory demand.
PTV Visum 32 bit can be operated on a 64 bit plaform too, but only in 32 bit mode.



Visum does not start. Instead an error message is shown:

- 'Requested license, number 900011111, was temporary and has expired. (Error code 35). Please contact your distributor regarding the extension of your license.'

- 'The program cannot be started.
Expected customer number: 900111111.
Error@AllocateHandle: The Expiration Time is overrun - the en-/decryption cannot be operated, Error 35.'

The error message might state also following entries:
'Error@AllocateHandle: CmContainer-Entry not found, Error 200.'
'Error@AllocateNetworkHandle: CodeMeter RunTime Server not found, Error 101.'

This is a single workplace and no network license.

During the installation, a time-limited license file has probably been choosen. The limit date can be found in the file name, for example:

Please check the download site for a current unlimited license file:
For example for Visum14 64 bit:

Please use these tools to exchange a license, available at the same site:
- LicenseUpdater_win32.exe for a 32 bit installation.
- LicenseUpdater_x64.exe for a 64 bit installation.

If the CmDust report contains the error message 'API Error 35 (EXPIRATION TIME OVERRUN) occurred!', please check the download site for a CodeMeterUpdate file:
Unpack the zip file and double-click the contained *.WibuCmRaU file, while the CodeMeter dongle is plugged into the computer.

If an expected unlimited license file (and in case a CodeMeterUpdate file) is not available, please contact:



Starting Visum14 in Windows XP leads to the error message:
'Visum140.exe is not a correct application for a Win32 system'

Visum14 is not supported on Microsoft Windows XP (and neither on Windows Server 2003).



What are the hardware and software requirements for PTV Visum?

1. PTV Visum 16 is supported on Microsoft Windows Vista, Windows 7, Windows 8 / 8.1 (not Windows RT) and Windows 10, Windows 2008 Server, Windows 2012 Server (R2) both, 32bit and 64bit.
2. The user must have administrator privileges when installing Visum. If you are uncertain of your user level, check the User Accounts in the Control Panel or contact your administrator.
3. The license activation procedure usually requires an internet connection.
4. A current version of the firmware must be installed on the dongle. An internet connection is required for updating the firmware.
5. The minimum screen resolution to run Visum is 1024 x 768.
6. Hardware requirements and recommendations:
- Dongle Protection: One fully functional USB Port or access to network license server
- Minimum system requirements:
- Processor with support for SSE3, e.g. at least Intel Pentium 4, Intel Core, AMD Athlon 64 or AMD Opteron
- 1 GHz processor (CPU) speed
- 512 MB memory
- 1 GB free hard drive space (compact installation)
- Recommended System Requirements:
- 2 GHz (or higher) processor (CPU) speed or more recent multi-core processor, e.g. Intel Core i7-4790 or Intel Core i7-6700K
- 16 GB RAM, >64 GB on a Windows Server in a multi-user environment
- 2 GB free hard drive space (full installation)
- Sufficient hard drive capacity (possibly on SSD) for project data

Graphic card
No dedicated graphic card necessary, the integrated processor graphic card is usually sufficient. Only the 3-D network view depends on a current graphics driver, supporting OpenGL, please refer to:
Only in case of parallel monitors a dedicated graphic card might be reasonable.

7. Virtual or physical machine:
PTV Visum can be operated in virtualized environments, as long as license access (to a license server) is guaranteed.
Full computing capacity can only be exploited on a physical machine, which is to be preferred.



Is it possible to install PTV Visum during a Silent-Installation?

Yes, please refer to:
c:\Program Files\PTV Vision\PTV Visum 16\Doc\Eng\Installation_Visum16.pdf
Ch. 5.



Visum does not start and shows an error message like:
'CodeMeter License Server is not a network server, Error 111.'
'CodeMeter Runtime Server is not a network server, Error 111'

Only on the license server:
Open 'CodeMeter WebAdmin':
System tray -> CodeMeter Control center -> WebAdmin -> Configuration -> Server
Activate the checkbox 'Run Network Server', click 'Apply', and restart the service:
CodeMeter Control center -> Action -> Stop CodeMeter service
CodeMeter Control center -> Action -> Start CodeMeter service



Where do I find information about the license size and available add-ons?

The characteristic of the actual network size are listed under Extras -> License. Here you can get information about add-ons as well. Unlocked moduls can be seperately activated or deactivated here. Demanding to change your license please apply to our marketing department under:



Where are new features of a release version described?

The document 'Overview_VisumXX.pdf' describes all main improvements and changes:
...\PTV Vision\PTV Visum XX\Doc\Eng\Overview_VisumXX.pdf



CodeMeter returns an error message that I don't understand. What can I do?

1) Read in the FAQs in the section 'Installation and dongle' whether the error message is explained here.
2) Check whether only the CodeMeter version 6.20 is installed. If not:
Uninstall all available CodeMeter runtime kits and install only version 6.20 (or newer) from our web server: -> Accessory -> Codemeter Runtime Kit (win32/x64). After that, reboot the computer.
3) Send us a support request:

To analyze the cause for this error message we need a CmDust report (of client and server), and a context file:

- CmDust report:
Start -> Programs -> Codemeter -> Tools -> CmDust.
This tool creates a file called CmDust-Result.log (the containing folder is opened automatically).

- Context file:
Taskbar -> System tray -> CodeMeter Control center -> License -> License Update -> Next -> Option 'Create license request' -> Next -> Option 'Extend existing license' -> Next -> Commit

Tip: Pack all files in a ZIP file and attach this to the support form.

Please refer to the following document for any further instructions:

- Chap. 7.1 (Direct Support -> 4) creating a CmDust report
- Chap. 6.1 Creating a context file



During the installation an error message appears:
'This is not a valid PTV Visum folder!'.

Instead of a setup, an update was executed, without installing Visum first. You have to install Visum by executing a setup before updating it in a second step.



Visum does not start. Instead an error message states: 'The user maximum of the CodeMeter network is reached, Error 212.'

- When trying to request a network license, the available licenses are already allocated.
- When trying to request a single-workplace license over remote desktop, this is not possible.
Solution: Upgrade to a network license. Please contact or your local distributor.



- Where can I find the PRJ-files that describe the coordinate system?
- Where can I find them in VISTA and Windows 7?

1) After installing Visum the PRJ-files are in the following folder:
C:\Program Files\PTV_Vision\VISUM125\Exe\Projections\.

2) For each user, these are copied to his own user folder after starting Visum the first time, typically here:
- Vista/DE: C:\Dokumente und Einstellungen\%USERNAME%\Anwendungsdaten\Visum\125\Projections\.
- Windows7/EN: C:\Users\%USERNAME%\AppData\Roaming\Visum\120\Projections\.
- Since Visum13 and Windows7/8: C:\Users\%USERNAME%\AppData\Roaming\PTV Vision\PTV Visum 14\Projections\.

The reason is that today's operation systems restrict access to the folder C:\Programs. In his own user folder, the user can add or remove PRJ files.



PTV Visum15 cannot be started, instead the dialog 'License management' displays an error message:
'Error when checking out the corresponding old license (server: local host, license number: 900xxxxxx). The license number 900xxxxxx has not been found on a Codemeter stick. Errorcode: 200'
'If you have more than one Codemeter stick please check if the correct stick is plugged in. For a network dongle, please check the server search list in Codemeter WebAdmin, too.'

Please note that maintenance customers can activate PTV Visum15 only on a dongle holding a valid license for PTV Visum14/13/.../9.5.
Take care to follow carefully the order of steps of the installation and activation process:



How to set up the 3 GB option like in Windows XP for 32 bit VISTA or Windows 7, to extend the virtual address space from 2 GB to 3 GB for a 32 bit process?

If one of the following error messages show up, setting up the 3 GB option might be very helpful or even necessary:
- 'A memory allocation failed. The virtual address space of the process has been used completely or does not include a coherent free block of sufficient size'.
- 'Insufficient memory.'/'Out of memory'.
- 'Error: Cannot load background file'.
- 'Error in memory management. No free heap handle'.
- 'Building connection legs...'.

To extend the address allocation space used by a 32 bit process, you can use the command BCDEDIT:
1) Look in the start menu for a shortcut to the command prompt.
2) Right click it and open it 'as administrator'.
3) Use this option:
BCDEDIT /Set IncreaseUserVa 2700
Alternatively use this option:
4) Reboot the computer.

Please note: The use of these options on any 64 bit system is not recommended. PTV AG is not liable for any dammage caused by using these options.




Where do I get information about the changes that are included in servicepacks?

Servicepacks and release notes are available at:

For each servicepack the release notes can be previewed (click onto 'view').

This document contains descriptions for:
- significant changes.
- new functions and changes.
- resolved errors.

During the installation of a servicepack, the file
is copied into the folder
...\Program Files\PTV Vision\PTV Visum xx\Doc\Eng\; 9.00



Visum does not start. Instead an error message is shown:
- 'Error@AllocateHandle: CmContainer Entry not found, error 200'.
- 'CmStick Entry not found, error 200'.

In the CmDust report this dongle is not listed anymore as a CmContainer, possibly neither as an available drive.
(In case of a single workplace license in the CmDust report of the client, in case of a network license in the CmDust report of the server.)

A single workplace license is expected on the local machine, a network license can be found on any machine in the network (including the local machine).
When plugging this dongle out and in, its LED will blink in red and green. The last blink should be green, if not this dongle could be defective.
In that case create a CmDust report (of client and server), and a context file:

- CmDust report:

Start -> Programs -> Codemeter -> Tools -> CmDust.
This tool creates a file called CmDust-Result.log (the containing folder is opened automatically).

- Context file:

Taskbar -> System tray -> CodeMeter Control center -> License -> License Update -> Next -> Option 'Create license request' -> Next -> Option 'Extend existing license' -> Next -> Commit

Please send these to:



Starting Visum the error message 'License ... invalid' appears. Who can help here?

Visum licenses possibly are limited. In this case, contact the Traffic Customer Service (



The setup freezes during the step 'Register Previewer...'

- Use the current setup:
- Make sure the dongle with the matching license is accessible.
- Update the dongle firmware:
- Workaround: Abort the setup (which was almost finished). If the software starts, try to register the COM server and the Previewer manually:
Help -> Register as COM server



A student cannot reach its network license from the PTV Hosting Center:
'One of the following licenses is requiered:
- CodeMeter 100321:900000000
Failure reason: The access was denied, Error 231.'
Alternatively also:
'CmContainer Entry not found, error 200'/'Error 101'

- Make sure the license server is addressed correctly:
- Check your internet connection: Try to open the website from your web browser.
p. 6 for further tips to troubleshoot.
If the issue persists, we recommend you to contact your system administrator to find out why even the web browser cannot reach the license server. Often a university network blocks port 22400.



After installing Visum the error message 'Hardlock not found' appears, although either the green Aladdin-Dongle is connected to the license server or the blue Aladdin-Dongle is connected to a local computer.

If you want to run Visum in network mode, the hardlock driver AND the hardlock server software has to be installed on the server. The hardlock server is the computer, that provides the Visum licenses in the network. A network installation exclusively runs in the network, that means that the client computers have to be connected to this server. Please note - the firewall connection via port 3047 (TCP and UDP) has to be unlocked. You find more information in the manual HLEndUsersManual_en.pdf on the installation CD.


  Graphic procedures


How can I save the results of a flow bundle analysis in a matrix?
The procedure 'Save demand matrix from route volumes' in the Procedure Sequence -> Matrices
was used to store the results from a flow bundle analysis in a matrix. Since PTV Visum 15 this procedure is not available anymore.

By default demand matrices from flow bundle calculations are saved as formula matrices in the Visum model.
Therefore, the procedure 'Save demand matrices from route volumes' is redundant and has been removed.
(Visum-12393 in c:\Program Files\PTV Vision\PTV Visum 15\Doc\Eng\Overview_Visum15.pdf)
It is set under menu item Calculate->General procedure settings, 'Volumes'.



Is it possible to export isochrone boundaries as shapefile?

Yes, this is possible in two steps:
1) Out of existing isochrones, create new POI area objects with the AddIn '2D-Isochrone -> POI':
Scripts -> VisumAddIn -> GIS -> '2D-Isochrone -> POI'.
2) Export these POI objects as shapefile:
File -> Export -> Shapefile



Is it possible to save the content of the network editor directly out of Visum? Where is the function ''Screenshot'' in the menu ''Extras'' to be found?

For an output regardless of the format, the following approach is appropriated:
- You can save the content of the window of a graphical editor (without title bar) as .jpg with File -> Export -> JPG Export (Screenshot) (since Visum 12.5) or with Extras -> Screenshot (until Visum 12 inclusively). The screenshot is identical with the cutout of the network editor.
- New since Visum 12.5:
Besides, for every editor with graphical content there is the buttom ''JPG Export (Screenshot)'' (symbolised as a camera) in the tool bar. It can be found in the network editor, in the timetabe editor (graphical timetable and block view), in the transfers display of regular services and in the signal time-space diagram.
- You can save the content of the network window in the voctor-based SVG-format via File -> Save as/Export -> SVG Export.



How can I perform a flowbundle analysis with blocking back turned on to see the current flows?

See the example together with a readme file:


  Other Procedures


Which methods are offered for matrix correction and for updating of existing demand matrices and which differences do they have?

Basically, the following methods are available:
1) TFlowFuzzy:
- To adjust a given OD matrix in such a way that the result of the assignment closely matches the observed link volumes or origin/destination travel demand:
- For PrT and PuT.
- For Link volumes.
- For OD travel demand by zone.
- For Turn volumes at nodes.
- For Any combination of these three.
- Counts and tolerances.
- Use of user defined attributes.

2) Matrix calibration:
- Calibration procedure according to Lohse.
- Only counts, no tolerances.
- Only AddValues, no user defined attributes.

3) Projecting PrT Path Volumes:
- Adjusts the OD-matrix of a certain PrT Demand segment to count data of certain manually choosen links.
- Only counts, no tolerances.
- Only AddValues, no user defined attributes.



The procedure TFlowFuzzy failed. The demand matrix could not be corrected:
'Demand segment .. was assigned but no paths were saved.
Procedure 'TFlowFuzzy' failed.'

To find a solution:
- Make sure the setting for
Calculate -> General Procedure settings -> PrT settings -> Assignment -> Save paths
is set to 'As routes' (for the combination with a static assignment).
- Choose a lower max. correction factor.
- Choose a higher alpha level to include a wider range of values into the fuzzy set. In general this approach is recommended: start with a higher alpha level, run TFlowFuzzy and reduce alpha to lower values step by step.
- Take only a few counts and demand entries first, preferably the higher numbers. If this already fails, you need to look for an error in this group, thus reduce the number of entries and counts again. Once you succeed, you can add more and more counts and demand entries. Remember TFlowFuzzy can help you to correct an already, nearly correct demand matrix, based upon counted values. Take care that the few largest counted values you are using or adding do make sense and match to your demand matrix.
- Check for contradictory counted values.
- Check the reasonability of the paths found by the assignment. Take care of its parameters and number of iterations.
- Use the analysis tools Protocol, Diagnosis and Process statistics (see the Online Help for further instructions, in the dialog press F1): TFlowFuzzy -> Parameters.

See also the tutorials:
- Visum12.5 : ...\PTV_Vision\VISUM125\Examples\Training\TFlowFuzzy.
Visum 13/../16 : c:\Users\Public\Documents\PTV Vision\PTV Visum 16\Tutorials\TFlowFuzzy\
or: Help -> Examples -> Open Examples folders -> Tutorials -> TFlowFuzzy



Running the procedure 'HBEFA-based emission calculation' leads to a warning:
'Emission factors were requested that are not available in the Handbook of Emission Factors (HBEFA). They are listed in the message file.'

HBEFA defines only a subset out of all possible combinations of attributes, whereas in a Visum model any combination might be possible. To avoid the message only use the combinations which are available for the HBEFA calculation.
See also the manual and the document
c:\Users\Public\Documents\PTV Vision\PTV Visum 15\Examples\HBEFA_Emissions\HBEFA_Emissions_Desc_ENG.pdf
on page 3:
'After running the procedure, look at the trace file for messages. VISUM reports every link for which the traffic situation in the sense of HBEFA 3.1 and the provided free flow speed do not match,...'

1) Check the total share of segments which do not have emission factors is below a certain threshold, like 1%.
2) Check whether such segments are typically Euro-0 class, i.e. are likely to disappear or exist in insignificant numbers.



Running the Subnetwork generator leads to an error message:
'Number of rows .. of demand segment .. exceeds maximum 2147483647. Functions based on individual routes, such as the route list and subnetwork generator, are not available. Bush-based functions, such as flow bundle, OD pair filter, and TFlowFuzzy, however, are still available. To limit the number of routes, use an OD pair filter or flow bundle.'

The subnetwork generator cannot process this number of routes available in this model, it is not possible to create any subnetwork including routes.
Workaround: Create a subnetwork without routes, by initializing the assignment: Calculate -> Initialize assignment
When relying on the creation of subnetworks, consider to use an assignment method producing less routes.



Formation of a subnetwork causes an error:
'Creating subnetwork'/'Insufficient storage'/'Runtime Error!'.

1) If you use Visum 32 bit on a 32 bit operating system, you should activate the 3 Gb option to increase the virtual address space. See also VIS11878 (Windows XP) or VIS10302 (VISTA/Windows 7).
2) Activate matrix-cache and apply it to this version file:
Extras -> Options -> Files & protocols -> Matrices -> Enable swap file.
3) File -> File properties -> Lagged matrix data loading on demand.
4) If the version file was only opened to create a subnetwork, but the memory does not suffice to format a subnetwork:
Calculate -> Initialize assignment. Thereby you can possibly save memory, however no cordon zones will be created and no matrices will be adopted into the subnetwork. However, you can initialize PrT and PuT assignments differentiated from each other:
Calculate -> Procedure -> Operations -> Paste -> Assignment -> Init assignment -> Procedure -> PrT or PuT.



Why are the results of an assignment different in a subnetwork?

Assignment results of subnetworks generally cannot be compared to the assignment results of their original networks, because paths get cut off and shortened, impedances sum up differently and volumes are shifted. Using subnetworks is only sensible when analysing local effects which are independent of the surrounding network. Using subnetworks is not sensible to implement changes in the subnetwork and port them back to the entire network. Using subnetworks also is not sensible to save memory requirements in the assignment. In that case, use other strategies instead:
1) Reduce the relevant demand for filtered zones and the setting 'only pairs of active zones' and 'considered relations'.
2) PuT: Reduce the relevant PuT lines by a filter for PuT lines and use the option 'Regard only active vehicle journey sections' which is offered in multiple dialogs.
3) Stop non-used protocols.
4) PuT: Use a connection file for repeated assignments.
5) Critically check the assignment parameters.
6) PuT: Be careful when opening links for transport systems of type PuT Walk, use this only for single links when really needed.



A line blocking fails with the following error message:
'Interlining is either not permitted or not possible on one of the required relations, or the capacities of the start and end depots are insufficient compared to the number of required vehicles. No solution could be found'.

1) Check whether the parameter 'Interlining permissible' is set:
Line blocking parameters -> Interlining.
2) Check whether the empty trip-TSys is set for all vehicle combinations corresponding to the permitted TSys in the network.
3) Write for all relevant transport systems an interlining matrix (i.e. for the parameter t_PuTSys) with the procedure step 'PuT interlining matrix', to check these for non-existing connections. The parameter will take the value 999999.
4) Check with the list 'Stop points - basis' whether the attribute 'IsDepot' is set. Also check whether the attribute 'DepotCapacity(...)' holds realistic values.


  Assignment PuT


Why is the Origin Wait Time (OWT) assumed to be zero in the timetable-based assignment?

In a timetable-based assignment, the passenger is assumed to know the departure times, and thus he has the opportunity to go to the stop exactly the right time, resulting in a zero wait time.
You can however setup an adapted origin wait time in the impedance settings, to be added to the perceived journey time (PJT). This adapted origin wait time is constant for all connections available to an OD pair, depends on the service frequency, can be limited to a maximum and is used for the skim matrix. (See manual 'Adapted skims of time for the timetable-based assignment').



The result of a headway-based or timetable-based assignment does not show any volumes (on vehicle journeys).

The setting for
Calculate - > General procedure settings -> PuT settings -> Assignment -> Save volumes
is set to 'Only for timeprofiles'. Choose 'Additionally for vehicle journeys' instead.



A PuT assignment failed with an error message:
'No demand for any O-D pair. No connections calculated'

This message is returned, when the demand segment to be assigned does not have any matrix:
OD demand -> OD demand data -> Demand segments -> Column 'matrix'



Why are connectors by shares not met after an assignment (PuT)?

For PuT this setting is held within the assignment procedure:
Timetable-based or Headway-based -> Basis -> Use connector shares. Connector shares will always be calculated by using MPA.




Which skims can be calculated with a PuT assignment?

The PuT skims that can be calculated are depending on the assignment method that is used:
With a TSys-based assignment many parameters can not be calulated, like tarif, wait times or impedance. You can find an overview over available skims in the manual.



A headway- or timetable-based assignment or a calculation of PuT skim matrices leads to a program crash ('Runtime Error') or takes more runtime than expected.

Possibly too many links are open for the transport system PuTWalk. The runtime error is caused by lack of memory. The PuT assignment procedures are not intended to assign 'pedestrians'. The TSys PuTWalk is intended for connectors and transfer paths which are not modelled inside a stop. The PuT assignment procedure assembles every single link as a path leg into the search graph. Too much foot links inflate the search graph, which causes the runtime error by lack of memory. Of course, that does not only cost memory capacity but also calculation time. For that reason, better use foot paths only where necessary.



After a timetable-based or headway-based assignment, all departure times are at midnight respectively 00:00:00.

The term connection indicates a time-based information as to say the path has a precise departure time. Routes don't have precise departure times (always 00:00) and they combine all connections with the same course.
Timetable-based assignment:
The parameter setting for 'Save assignment results' is set to 'As routes'. This saves memory. To get departure times choose 'As connections':
Calculate -> General procedure settings -> PuT settings -> Assigment -> Save assignment results -> Save paths 'as connections'.
Headway-based assignment:
In case of a headway-based assignment there are no departure times at all. A headway-based assignment only returns routes as assignment results.



Why are the attributes for operating indicators (e.g. 'Number of service trips ..') not calculated?

These attributes have to be calculated separately, using the procedure 'PuT operating indicators':
Calculate -> Procedure sequence -> Paste -> Procedure -> PuT analyses.
In the tab 'Transport supply', activate the option 'Calculate also for territories'.

The results of the procedure 'PuT operating indicators' is based upon vehicle journeys and territories, without them the procedure will not return any result for attributes like 'Number of service trips'.
- Use the Addin 'Create Regular Timetable' to create a time table from available headways.
- Use the function 'Convert active zones' to create territories from zones: Zones -> (Right-click to open the context menu -> Convert active zones).


  Visum files


How can I exchange lineroutes between version files, based upon the stop order?

To transfer lineroutes or complete timetables from one version to another, proceed as follows:
1) Save the data:
File -> Save as... -> Network. The written *.net file meets the ASCII format.
Use the button ''Frequent cases'' and activate ''Save timetable'' to select all tables needed.
Use the option ''Save only active network objects'' to meet an active filter.
2) In the other version file:
Open the *.net file:
File -> Open -> Network.
3) In the dialog ''Read network'' activate ''Read network file additionally'' and ''Show the 'Completing line routes' window''.
4) In the dialog ''Read network data additionally'' click ''Frequent cases'' and activate ''Read timetable''.
5) In the dialog ''Read network (completing the courses of line routes/system routes)'' use at least the option ''Search for shortest path''.



Visum displays the following error message:
'Cannot read version file, as it was saved with newer Visum version.'
How can I read data from Visum version files into older versions of Visum, i.e. from Visum15 downgrading to Visum14?

Version files use a binary format, are only upward compatible readable, but not downward.
Workaround: Following components of a Visum model can be exported to text based files, and imported into a an older release version, but note any displayed warnings:
- Network data as NET file.
- Matrices plus demand model as DMD file.
- Procedure parameters as XML file.
- Assignments cannot be ported directly, but you can copy volumes, travel times and queue lengths into userdefined attributes and port them as ATT file.

Please note that results may vary when exchanging the used release version. To monitor these, compare the values of main result attributes with userdefined attributes afterwards.



The version file can not be read in. Open version failed with:
'File ...: No valid PTV binary format ID.'

Unfortunately this version file is defective, it consists only of a binary fragment without header.
The first 12 characters must consist of the string 'PTVSYSTEM ' otherwise an error message is returned.
Has it been saved to an erroneous data carrier, like an USB stick or a CD/DVD?



Can you open version files that overrun the license size?

Except of A, all license sizes allow the reading of version data, which contain more network objects than the license allows. Even the adding of network objects or the additively reading of a network file is possible. However, both causes reductions that are described in a warning message:
'Neither 'Save' functionality nor procedure execution nor COM available, since max. license size is exceeded'. Still, there is the possibility to minimize the network manually so the license size gets underruned again.



Are version files *.VER saved with Visum 64 bit compatible with Visum 32 bit? Can Visum 32 bit read and modify such files? Do they deliver the same calculation results?

Version files do not differ when saved with Visum 32 bit or Visum 64 bit. However,
- working with Visum 64 bit you can generate version files of considerably larger size which might become too large to be readable using Visum 32 bit.
- calculation results may deviate slightly.



How to set up the 3 Gb option in Windows XP, to extend the virtual address space from 2 Gb to 3 Gb for a 32 bit process?

If one of the following error messages show up, setting up the 3GB option might be very helpful or even necessary:
- 'A memory allocation failed. The virtual address space of the process has been used completely or does not include a coherent free block of sufficient size'.
- 'Insufficient memory.'/'Out of memory'.
- 'Error: Cannot load background file'.
- 'Error in memory management. No free heap handle'.
- 'Building connection legs...'.

If the used computer uses Windows XP (including Service Pack 2), you can set the 3Gb-Option. With this option Windows XP is able to address up to 3 Gb of RAM to VISUM. Windows will be able to use additional virtual address space if you use the 3Gb-Option.

In Start/Settings/Control Panel, then System, tab Advanced --> Startup and Recovery... please add these lines of code (this means editing the boot.ini file):
[operating systems]
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS='Microsoft Windows XP Professional with 3 GB' /fastdetect /3GB
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS='Microsoft Windows XP Professional' /fastdetect

If the used computer tends to instability or fails to start, introduce the options
/Userva=2900 /NoExecute=OptIn:
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS='Microsoft Windows XP Professional with 3 GB' /fastdetect /3GB /Userva=2900 /NoExecute=OptIn

For more information see

Please note: The use of these options on any 64 bit system is not recommended. PTV AG is not liable for any dammage caused by using these options.


  Demand model


Running TFlowFuzzy leads to an error message:
'Invalid counted values are available. Do you want to set this data to the active state?' In the log file there is written for several times:
'Invalid count value tolerance 0.000000 with count object zone...'.

The error message is caused by zero or empty values in the attribute tolerances. TFlowFuzzy requires tolerances > 0.
- Make sure that all counts have a tolerance > 0
- Use the option 'Use only network objects with volume > 0 and counted value > 0'.


  Timetable editor


How to edit PuT timetables very quickly rather than editing each line manually

Using the graphical or tabular timetable editor you can select several vehicle journeys and change them at one time.
You may use lists to edit or delete net elements. The editable fields are shown with a white background, not editable rows are grey.
You can copy and paste the list content to EXCEL, modify there and back again.
You may use Multi-edit… to set attributes.
To insert many vehicle journeys for several lines at one time use Scripts->VisumAddIn->PuT->Create Regular Timetable




Sometimes, the dialogs 'insert line/line route' or 'insert stop point (options)' do not appear.

After undocking a second screen, these dialogs are still shown on the position, that once was on this second screen and are not visible any more now. You can solve this as follows:
Extras -> Options -> User interface -> reset dialog position.




A network seems to be shifted when shown against the background map from BING Maps or OpenStreetMap.

The reason for this shift is the difference in map datum, used by the coordinate system of the network and the coordinate system of the background map (usually Sphere Mercator). For the transformation of the map tiles of the background map from Sphere Mercatorto WGS84 no suitable TOWGS parameter are available in the PRJ file of the coordinate system.

- Add suitable TOWGS parameters to the PRJ file. You can find these for example on
- Or transform the data to WGS84 or UTM using a GIS software.



On a 64 bit operation system Visum 32 bit shows one of the following error messages and then crashes:
- 'A memory allocation failed. The virtual address space of the process has been used completely or does not include a coherent free block of sufficient size'.
- 'Out of memory'.
- 'Runtime Error!
Program: c:\Program Files (x86)\PTV_Vision\VISUM110\Exe\Visum110.exe'

Even on Windows 64 bit, Visum 32 bit is able to address only a maximum of 3.8 Gb memory.

Thus, the solution may be to use Visum 64 bit to be able to address more memory. Please apply to to get a setup and a license file. Also consult the download area on to check whether these files are already available.



After exchanging the coordinate system, the coordinate transformation leads to an error message:
'Transformation of one or multiple co-ordinates failed.
Object type: Points
Object key: ...'

The set coordinate system is as stated a geographic system (which means: degrees), but some coordinates exceed the maximum of +90N or +180E degrees or minimum of -90N or -180E degrees. Probably, the coordinates of the network meet a metric (projected) coordinate system.
Try to find out which metric (projected) coordinate system actually is used, and set it to that, without the option 'Transform coordinates in case of changes'.



How can I contact the customer support if I have a question or want to report an error?

You can reach PTV Software Vision Support following:
Use PTV Visum/Vissim and get this form preallocated with the environment values, like OS and license number:
Menu -> '?' or 'Help' -> (Technical) Support.

Please describe your request as accurately as possible, i.e. which steps lead to a crash. Any solution or workaround will be provided as soon as possible.

Maintenance customers are also supported on modelling issues and software handling.

Feel free to make suggestions for improvement and product development.



PTV Visum is crashing reproducible, maybe without a clear error message.

Please provide us with a crash dump:

To create this:
- Open the task manager.
- Reproduce the crash.
- Leave all dialogs open.
- In the taskmanager, select the Visum process (tab 'Details' or 'Processes'), open the context menu and choose 'Create dump file':
- Pack the crash dump file into a zip archive. Please name the zip file following the used release and servicepack to enable us the analysis, e.g. 15.00-12.
- Upload the zip archive to a FTP/cloud space (request one in your support request if needed).



The dialog ''Select spatial reference system'' only appears by reading a network file and not by reading a shapefile.

It ist not defined where the group $Network settings, in which the declaration for the spatial reference system is contained, stands in a network file. That is why Visum asks the spatial reference system before.

With a SHP-file, this may not always be necessary because the spatial reference system could be defined in the belonging PRJ-file.


  Matrix editor


How to save VISUM matrices in $O or $V format with a defined number of decimal places

The number of decimal places is a direct property of the net element matrix respectively a matrix attribute.
For example you may have a look at the quick view after chosen a matrix under tab Matrices. There you can edit the number of decimal places (also possible under Lists/Matrices). This number of decimal places only effects output in ASCII/text format, binary matrix files always hold the entire accuracy of the values.



How can I quickly and easily import matrices from Excel/TXT/CSV formats?

1) By using copy & paste of cell ranges.
2) By reproducing matrix formats by using i.e. a short programm code, i.e. the $O-format:
3) By using the AddIn 'Load Matrix From Excel' (since Visum 11.52-06).