[[PageOutline]] This page is one of the !MapGuide Community CodeSamples. Visit the CodeSamples page to view more! This sample script contains a series of utility functions to batch update a series of Layer Definitions in a folder to conform to a specified minimum/maximum scale range. === How to use this script === 1. Launch MapGuide Maestro 2. In the '''IronPython''' console, click '''Run File''' 3. Browse to '''scale_ranges_utils.py''' and click '''Open''' to load this script Once loaded, you will have the following functions available for you to use from the IronPython console: {{{ #!python def FixScaleRangesMinMax(conn, folder, min, max): """ Modifies the first scale range of all Layer Definitions under the specified folder to the specified minimum and Mmximum scales """ def FixScaleRangesZeroToMax(conn, folder, max): """ Modifies the first scale range of all Layer Definitions under the specified folder to the specified maximum scale. The minimum scale is un-set (ie. Set to 0) """ def FixScaleRangesMinToInfinity(conn, folder, min): """ Modifies the first scale range of all Layer Definitions under the specified folder to the specified minimum scale. The maximum scale is un-set (ie. Set to infinity) """ def FixScaleRangesZeroToInfinity(conn, folder): """ Modifies the first scale range of all Layer Definitions under the specified folder to [0, Infinity] """ }}} To modify all layers under {{{Library://Samples/Sheboygan/Layers/}}} to have a scale range of 50 to 12000, you would run the following snippets in your IronPython console. This assumes a session with only one active site connection: {{{ >>> conn = app.GetConnection(app.GetConnectionNames()[0]) >>> FixScaleRangesMinMax(conn, "Library://Samples/Sheboygan/Layers/", 50, 12000) }}} This will output something similar to this: {{{ Fixing: Library://Samples/Sheboygan/Layers/CityLimits.LayerDefinition Scale range set to [50, 12000] Saved: Library://Samples/Sheboygan/Layers/CityLimits.LayerDefinition Fixing: Library://Samples/Sheboygan/Layers/Buildings.LayerDefinition Scale range set to [50, 12000] Saved: Library://Samples/Sheboygan/Layers/Buildings.LayerDefinition Fixing: Library://Samples/Sheboygan/Layers/Districts.LayerDefinition Scale range set to [50, 12000] Saved: Library://Samples/Sheboygan/Layers/Districts.LayerDefinition Fixing: Library://Samples/Sheboygan/Layers/Hydrography.LayerDefinition Scale range set to [50, 12000] Saved: Library://Samples/Sheboygan/Layers/Hydrography.LayerDefinition Fixing: Library://Samples/Sheboygan/Layers/Islands.LayerDefinition Scale range set to [50, 12000] Saved: Library://Samples/Sheboygan/Layers/Islands.LayerDefinition Fixing: Library://Samples/Sheboygan/Layers/Parcels.LayerDefinition Scale range set to [50, 12000] Saved: Library://Samples/Sheboygan/Layers/Parcels.LayerDefinition Fixing: Library://Samples/Sheboygan/Layers/Roads.LayerDefinition Scale range set to [50, 12000] Saved: Library://Samples/Sheboygan/Layers/Roads.LayerDefinition Fixing: Library://Samples/Sheboygan/Layers/Tracks.LayerDefinition Scale range set to [50, 12000] Saved: Library://Samples/Sheboygan/Layers/Tracks.LayerDefinition Fixing: Library://Samples/Sheboygan/Layers/Trees.LayerDefinition Scale range set to [50, 12000] Saved: Library://Samples/Sheboygan/Layers/Trees.LayerDefinition >>> }}} === Limitations === This only operates on the first scale range it finds of each Layer Definition in the folder you specify.