Bentley Communities
Bentley Communities
  • Site
  • User
  • Site
  • Search
  • User
MicroStation
  • Product Communities
MicroStation
MicroStation Wiki Level Naming And Numbering
    • Sign In

    • -MicroStation Wiki
      • +Learning Tips
      • -MicroStation
        • +3D Printing - MicroStation
        • +Animation - MicroStation
        • +Archive / Backup - MicroStation
        • +Base Geometry - MicroStation
        • +Batch Processing - MicroStation
        • +CONNECT Advisor - MicroStation
        • CONNECT Integration - MicroStation
        • +CONNECTION Client
        • +Cells - MicroStation
        • +Change Tracking - MicroStation
        • +Configuration - MicroStation
        • +Coordinate Systems - MicroStation
        • +Curves - MicroStation
        • +Custom Linestyles - MicroStation
        • +DGN - MicroStation
        • +DWG - MicroStation
        • +Database - MicroStation
        • +Detailing Symbols - MicroStation
        • +Dimensions - MicroStation
        • +Documentation & Help - MicroStation
        • +Drawing Aids - MicroStation
        • +Exception - MicroStation
        • +FAQ - MicroStation
        • +Feature Based Solids Modeling - MicroStation
        • +File Access - MicroStation
        • +GUI - MicroStation
        • +General - MicroStation
        • +Graphics Display - MicroStation
        • +Groups - MicroStation
        • +Hardware / Input Devices - MicroStation
        • +Import/Export - MicroStation
        • +Installation - MicroStation
        • +Interchange - MicroStation
        • +Interference - MicroStation
        • +Internationalization - MicroStation
        • -Levels - MicroStation
          • -General - Levels - MicroStation
            • All levels in the model are not exporting to CSV
            • Apply level display state to other files
            • Cannot delete, move, or perform other modify commands on elements drawn on particular level
            • Cannot rename level in active file
            • Certain levels are not visible in the level dialogs
            • Change hardcoded levels to bylevel definition while holding scale factor of custom linestyles
            • Change the levels of a V7 library
            • Character limit for Level Names
            • Configure the level format display in combo boxes
            • Controlling Levels when upgrading V7 files to V8 format
            • Copy all elements from one level to another one
            • Creating Levels using Seed File or DGNLIB file:
            • Determining Attribute ByLevel Status
            • Elements are not displayed with the By Level color
            • Example of how to run Level Command Keyin
            • Getting the message "Cannot modify attachment level attribute" when attempting to change reference levels in the Level Manager
            • How can you see level name and number in MicroStation v8
            • How do I remove the level “North Arrow” which appears in all my DGN files
            • How to change level symbology of nested reference files.
            • How to create a level filter showing none library levels
            • How to delete a Level without deleting the elements
            • How to filter levels by numbers
            • How to Query Usage of All Levels
            • How to remove the ability to create/delete levels.
            • How to select only the elements on the active level with a key-in
            • How to turn on/off display/freeze of Levels based on filter names
            • How to turn on/off View Display of Levels with a Key-in
            • How to update levels that have been changed
            • How to update Reference Levels to attachment instead of DGNLIB
            • Keyin to set (nested) level transparency
            • Level changes not saved
            • Level Display Inconsistent
            • Level Enhancement Examples For MicroStation V8 2004 Edition
            • Level is grayed out when element is analyzed
            • Level names in dropdown menu are not displayed completely
            • Level names missing from file
            • Level Naming And Numbering
            • Level number limit for V7 format design
            • Level purge: Level id is invalid
            • Levels - List level names by ACSII sort order
            • Levels And Level Libraries
            • Message: Cannot modify attachment level attribute
            • Nested reference: Key in to switch levels on/off
            • Old Elements, New Levels: How Do I Force an Element to display ByLevel Attributes?
            • Reference file levels do not update within master design file
            • Remap all elements to ByLevel in Save As process
            • Removing unused levels from file
            • Saving Level States
            • Set Global Display different for ByLevel and Overrides
            • Some fields are not editable in Libraries
            • Sync levels with ref, not with library
            • To which level are the elements in the master file moved from the reference file when using "Copy Parallel"?
            • Unable to create a CSV collection from the design file
            • Use a Level Library to set By Level Functionality in V7 Workmode
            • User is unable to delete levels in a file that have shared cell definitions in it
            • When active level display is set to off flood type commands will not display the boundary.
          • +Level Audit - Levels - MicroStation
          • +Level Display - Levels - MicroStation
          • +Level Manager - Levels - MicroStation
        • +Licensing - MicroStation
        • +Manipulation - MicroStation
        • +Markup / Redline - MicroStation
        • +Measure - MicroStation
        • +Mesh - MicroStation
        • +Models - MicroStation
        • +Multi-Lines - MicroStation
        • +OLE - MicroStation
        • +Other - MicroStation
        • +Parametrics - MicroStation
        • +Patterning - MicroStation
        • +Point Cloud - MicroStation
        • +Printing - MicroStation
        • +Programming - MicroStation
        • +Project Navigation - MicroStation
        • +Properties - MicroStation
        • +RSS Feeds - MicroStation
        • +Reference - MicroStation
        • +Security - MicroStation
        • +Selection - MicroStation
        • +Settings - MicroStation
        • +Sheet Composition - MicroStation
        • +Solids - MicroStation
        • +Standards - MicroStation
        • +Surfaces - MicroStation
        • +Tables - MicroStation
        • +Text - MicroStation
        • +UI Customization - MicroStation
        • +Units - MicroStation
        • +View - MicroStation
        • +Visualization - MicroStation
        • Welcome Page - MicroStation
        • +Accreditation - MicroStation
        • +i.Models - MicroStation
        • +ProjectWise Integration
        • +Raster - MicroStation
        • +Reality Models
    • +Administration Wiki
    • +Annotations Wiki
    • +Bentley View Wiki
    • +MicroStation PowerDraft
    • +Printing and Plotting
    • +Programming Wiki
    • +Visualization Wiki
    • Window List Dialog for Missing Tool Dialog Boxes

     
     Questions about this article, topic, or product? Click here. 

    Level Naming And Numbering

      

    Document Information

    Document Type: TechNote 

    Product(s):  MicroStation

    Version(s):  V8

    Original Author: Bentley Technical Support Group

    Legacy Document Number:  8351

    Level Naming and Numbering Conflicts

    With the move to MicroStation V8, some users may have abandoned the use of level numbers in favor of level names. Stated more accurately, we may have stopped managing level numbers in favor of level names. The distinction is important because, like level names, every level must have a unique number. Therefore, it is not really possible to stop using level numbers.

    Because both the level name and level number have to be unique to the file, one can imagine that MicroStation must be able to resolve potential conflicts when a new level is added to a file that already uses the new level's name and/or number. These conflicts can come from a variety of sources including: a user adding a new level, merge of a reference file, writing a level from a DGNLIB to the active file, and writing a level from a reference attachment to the active file. It's how these conflicts are managed that is the focus of this TechNote.

    When using the Level Manager dialog to create a new level, the name field is immediately editable while the number is assigned as the next available number with respect to both the active file and DGNLIB. If the numbering sequence is consecutive starting with 0, the new level's number will be x + 1, where x stands for the largest member of the sequence. If the numbering sequence is not consecutive, the new level's number will be y + 1, where y is the largest member of the first consecutive sequence beginning with 0. For example, if the levels are numbered 0 - 100, the next level number would be 101. However, if the levels are numbered 0, 2 - 100, the next level number would be 1. This is not to say that the level number cannot be edited later using a duplicate number. In this case MicroStation rejects the edit and reports to the Message Center the reason the operation did not return success.

    Because the level name is editable until the new level is accepted, the potential exists for a duplicate--if the proposed level name already exists in either the active file or DGNLIB. Should this happen, the conflict is reported in Message Center and level is written using the level name that was generated by MicroStation and displayed previous to the edit. The level name generated by MicroStation is New Level (n), where n begins with 0 and is incremented according to the rules of number assignments discussed above. If, however, the proposed level name was used in a reference attachment, but not in either the active file or DGNLIB, the new level would be written using the proposed level name.

    There also exists the potential to create new levels in the active file when either merging a reference attachment, or copying elements from the reference attachment into the active file. Numbering conflicts are handled as described above, however naming conflicts are resolved by setting the reference preference "Copy Levels During Copy..

    • If Not Found - Levels from the reference are merged into the output file only if the level name is not already in the active file's level table.
    • If Overrides Exist - Levels from the reference are merged into the output file if the level name is not already in the active file's level table, or if the attributes for the active file's level are different than those of the attachment. Differences include overrides that have been applied to the attachment levels, or differences between the levels as defined in the active model and reference.
    • Always - Levels from the reference are merged into the output file even if the level name is already in the active file's level table.

    These are the conditions under which a new level will or will not be created. When a new level is written, the level name will be prefixed by the reference name. For example, if the level name is LEVEL and the reference name is REF.dgn, the level created during the merge process would be REF - LEVEL.

    Arguably the most misunderstood conflicts occur when working with DGNLIB's. There are two ways that a DGNLIB can produce a numbering conflict. The first type of conflict occurs when the same level number is assigned to levels in both the active file and DGNLIB that do not share the same level name. The second type of conflict occurs when two or more DGNLIB's contain levels using the same number, but different level names.

    When the conflict between the active file and DGNLIB occurs and an element in drawn on the DGNLIB level, the level number of the level in the active file is renumbered as described above. In addition, the number of DGNLIB level written to the active file is retained. For example, in addition to the Default level, master.dgn contains only one other level. This level is named MASTER and numbered 10. Moreover, library.dgnlib contains a level named LIBRARY and numbered 10. When library.dgnlib is either attached to master.dgn or read in by setting MS_DGNLIBLIST, the level name list with show two levels using the same number. However, when an element is drawn on level LIBRARY, level MASTER will be renumbered to 1. This occurs because as mentioned above, the level number is unique to the file.

    When a conflict between the DGNLIB and DGNLIB occurs, the duplicates are discarded in favor of the level read from the first DGNLIB processed. For example, library.dgnlib contains a level named LIBRARY and numbered 10. Additionally, library_two.dgnlib contains a level named LIBRARY_TWO and numbered 10. Assuming that library.dgnlib is processed first, only LIBRARY will appear in the level name list. This is regardless of whether or not the libraries are attached or read in by setting MS_DGNLIBLIST. It is suggested that each DGNLIB contain a unique numbering sequence so as to avoid this potential conflict. Lastly, it's worth mentioning that numbering conflicts do not occur when working with DWG files because level numbers are not stored in DWG files.

    Numbering conflicts aside, there is also the potential for the same level name to exist in the active file and the DGNLIB, albeit with different level numbers. When this occurs, the level number of the DGNLIB level is used. It follows that the attributes could also be different, and this would result in the level being out of sync with the DGNLIB. How to handle this is a discussion for another article, but suffice it to say that MS_LEVEL_AUTO_SYNC_ATTRIBUTE_LIST is the option of least resistance. Lastly, if the same level name can exist in the active file and the DGNLIB, the same level name can also exist in multiple DGNLIB's. This is handled by retaining the level from the first DGNLIB processed and discarding the duplicates.

    The purpose of the TechNote was to introduce you to the various naming and numbering conflicts that can arise. While some of these conflicts are either virtually transparent or of little concern, others, such as missing levels, are more troublesome. Armed with the information discussed here, things such as missing levels can become a thing of the past. If you are currently missing levels because of a numbering conflict between DGNLIBs, you can quickly renumber the levels in a file using the key-in level renumber increment-value level-spec. For additional information about this key-in, see the help topic "Level Key-ins."

    See Also

    http://communities.bentley.com/products/microstation/w/microstation__wiki/8861.levels-and-level-libraries

    Product TechNotes and FAQs

    MicroStation Desktop TechNotes and FAQs

    External Links

    Bentley Technical Support KnowledgeBase

    Bentley LEARN Server

    Comments or Corrections?

    Bentley's Technical Support Group requests that you please confine any comments you have on this Wiki entry to this "Comments or Corrections?" section. THANK YOU!

     

       

    • level name
    • TN8351
    • level
    • MicroStation V8
    • TechNote
    • Level library
    • Level Number
    • Share
    • History
    • More
    • Cancel
    • Dan Koval Created by Dan Koval
    • When: Fri, Sep 6 2013 1:25 PM
    • Henk Ligtvoet Last revision by Henk Ligtvoet
    • When: Tue, Nov 22 2016 2:45 AM
    • Revisions: 3
    • Comments: 0
    Recommended
    Related
    Communities
    • Home
    • Getting Started
    • Community Central
    • Products
    • Support
    • Secure File Upload
    • Feedback
    Support and Services
    • Home
    • Product Support
    • Downloads
    • Subscription Services Portal
    Training and Learning
    • Home
    • About Bentley Institute
    • My Learning History
    • Reference Books
    Social Media
    •    LinkedIn
    •    Facebook
    •    Twitter
    •    YouTube
    •    RSS Feed
    •    Email

    © 2023 Bentley Systems, Incorporated  |  Contact Us  |  Privacy |  Terms of Use  |  Cookies