Bentley Communities
Bentley Communities
  • Site
  • User
  • Site
  • Search
  • User
ProjectWise
  • Product Communities
ProjectWise
ProjectWise Design Integration Wiki Dynamic Managed Workspace
    • Sign In
    • ProjectWise Design Integration Wiki
    • ProjectWise Software Download
    • +ProjectWise Learning
    • +Projectwise Licensing
    • ProjectWise Programming and PowerShell
    • +Projectwise Documentation
    • -ProjectWise Explorer Client
      • +ProjectWise Client
      • +Featured Articles - Projectwise Explorer
      • +Audit Trail - ProjectWise Explorer Client
      • +Bentley IMS Login
      • +BS1192 Rules Engine - ProjectWise Explorer Client
      • +Check In Dialog - ProjectWise Explorer Client
      • +Document Code - ProjectWise Explorer Client
      • +Document Creation - ProjectWise Explorer Client
      • +Documentation & Help - ProjectWise Explorer Client
      • +Environments and Attributes - PWE
      • +Export / Import Tool - ProjectWise Explorer Client
      • +Folders / Subfolders - ProjectWise Explorer Client
      • +GUI - ProjectWise Explorer Client
      • +Installation - ProjectWise Explorer Client
      • +Integration - General
      • +Integration - AutoCAD - ProjectWise Explorer Client
      • +Integration - Civil 3D - ProjectWise Explorer Client
      • +Integration - DGN Platform - ProjectWise Explorer Client
      • +Integration - MicroStation - ProjectWise Explorer Client
      • +Integration - Office - ProjectWise Explorer Client
      • +Integration - Revit - ProjectWise Explorer Client
      • +Logs Troubleshooting- ProjectWise Explorer Client
      • +Messaging Service - ProjectWise Explorer Client
      • +MISC - ProjectWise Explorer Client
      • +Open / Save / Copy / Move - ProjectWise Explorer Client
      • +Photo Preview - ProjectWise Explorer Client
      • -ProjectWise Managed Workspaces
        • Opening a file integrated with PW uses the local workspace
        • Last Error 347 Cannot start application for the specified document
        • -Dynamic Managed Workspace
          • +Dynamic Managed Workspace Configuration Outline
          • Variable Reference
          • +Installation Instructions
          • What's New in Dynamic Managed Workspace Template (Release Notes)
      • +Project - ProjectWise Explorer Client
      • +Search - ProjectWise Explorer Client
      • +Security and Permissions - ProjectWise Explorer Client
      • +User Tools - ProjectWise Explorer Client
      • +Views - ProjectWise Explorer Client
      • +Workflows & States - ProjectWise Explorer Client
      • +Network Configuration - Client
    • +ProjectWise Administrator
    • +ProjectWise Integration Server
    • +ProjectWise Caching Server
    • +ProjectWise Gateway Server
    • +ProjectWise User Synchronization Service
    • +ProjectWise Orchestration Framework
    • +ProjectWise Connected Services
    • +Working from Home with ProjectWise
    • +ProjectWise Glossary
    • ProjectWise Hosting - Manage Services
    • +ProjectWise Logging and Tools

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

    Dynamic Managed Workspace

    Dynamic Managed Workspace Introduction

    The Dynamic Managed Workspace (DMW) is a templated ProjectWise Managed Workspace that is primarily .cfg file based.

    The Dynamic Managed Workspace Template saves time in Workspace development.  Both owner/operators and consultants can implement it in the same way.  The functionality within the Workspace can handle multiple workspaces and scenarios. 

    Since the Workspace is designed to take advantage of the ability for ProjectWise to be context-sensitive, the template is referred to as the Dynamic Managed Workspace.

    Note: to Owners/Operators/Agencies  (OOA):  This workspace is designed to allow multiple workspaces to work together.  While an OOA may not need such a robust workspace, implementing this workspace template, and providing installation instruction based on this template, will allow easy adoption by Design Consultants who need to implement additional OOA workspaces.

    Common Managed Workspace Requirements

    The following are a few requirements that are common among the majority of those implementing managed workspaces:


    -Simple Configuration Settings Blocks (CSBs)

         Simple to create and manage

    -Adaptable
         Adaptable to a organizations specific needs and well as adaptable to client workspaces.

    -Utilize either CSBs or .Cfg file
       Allows the use of controlling the configuration with either CSBs or .cfg files.

    -Supports V8 and Connect
         Supports both V8 and CONNECT Edition workspaces

    -Error Checking
         Provides error checking to help identify missing configurations or typos.

    The Dynamic Managed Workspace seeks to meet these requirements.

    Workspace Philosophy: Framework Variable Redirection Only

    All well-designed Workspaces should allow for the minimal redirection of the framework variables to achieve portability when workspace must be distributed to other organizations.

    With this in mind, only a few variables must be redirected for V8i and CONNECT Edition workspaces to be placed in any environment.

    For V8i, these variables are:

    _USTN_WORKSPACEROOT
    _USTN_PROJECTNAME

    For CONNECT Edition, these variables are:

    _USTN_CONFIGURATION
    _USTN_WORKSPACENAME
    _USTN_WORKSETNAME

    While these are the minimal variables, additional variables will probably be needed to match real-world locations of the configurations and project.

    It must also be noted that V8i had limited workspace redirection options. Hence, Owner/Operators had to resort to several different methods to accomplish this.  This template has been developed to allow for V8 workspaces to be organized in a similar manner to that of CONNECT Edition.

    Most client-supplied workspaces can be easily incorporated into the Dynamic Managed Workspace structure. However, some workspaces may include customizations that are not directly compatible with ProjectWise.

    Single CSB Concept

    The Managed Workspace is designed to use a single CSB at the predefined level. 

    This single CSB points to a common configuration file (Common_Predefined.cfg) that includes dynamic variables that can be used to build an entire Workspace around.   The fundamental idea in this concept is that all framework variables can be set at the Predefined level and locked if needed.  The name for this file is “Common_Predefined” because it is a common configuration (cfg) file used by all products/versions and runs at the Predefined configuration level in the ProjectWise Managed Workspace.

    The Common_Predefined.cfg file contains a version check which allows differentiation between variables required for V8i and CONNECT Edition.  In addition, the supplied configuration files incorporate error checking to verify the appropriate folders and configuration files are in place and notify you of any issues.

    Workspace specific framework variables are defined in PW Setup files located within each Workpace.  The PW Setup files may also contain variables that can substitute for Environment Variables.  Hence, rather than setting environment variables on the computer, these can be set for each workspace and allow multiple Agency Workspaces to co-exist within the same environment. 

    Configuration File Naming Convention

    The configuration files have a consistent naming convention. (e.g  Common_Predefined_PWSetup.cfg)

    PWSetup: Files with PWSetup in the name are intended to be edited as needed.  The content of these files is for the configuration's adaptation into ProjectWise.   User (Operational) configuration variables (those that start with MS_) should most likely not be defined in these files.

    Level Inclusion:  Where appropriate, the PWSetup File Names contain the level at which the ProjectWise Managed Workspace processes them.  (e.g., _Predefined, _Application, etc.)

    Location:  The configuration file name will Include where the file resides.  Typically in one of three locations: Common, Workspace, or WorkArea.   The first part of each cfg typically reflects this.

    More Examples:

    Common_Predefined.cfg

    Common_Application.cfg

    Common_SiteOrg.cfg

    Common_Predefined_PWSetup.cfg

    WorkspacePWSetup_Predefined_Name_Version.cfg

    WorkAreaPWSetup_Predefined_Name.cfg

     

    Dynamic Variable Naming

    Framework variable created for this configuration begins with _DYNAMIC_ to reflect the dynamic context capabilities with the configuration.

    Vocabulary

    Workspace: Standards shared by multiple projects.  Workspaces are identified by names

    Work Area Folder: A ProjectWise WorkArea (previously known as a ProjectWise Project/Rich Project)

    PWSetup Folder: Locations where the configurations can be modified to suit ProjectWise Dynamic Workspace Environment.  The “_” is used to put this at the top of the list, but can be modified to meet user naming conventions.  Example uses: 

    Common PWSetup: PW configuration common to all Workspaces

    WorkSpace PWSetup: PW configuration that is Workspace Specific

    WorkArea PWSetup: PW configuration that is WorkArea specific

    Workspace Name Designation 

    The Dynamic Managed Workspace needs to designate a workspace name to be used by the application.  The Dynamic Managed Workspace utilizes two variables to designate the V8 and CONNECT Edition workspaces.  These are _DYNAMIC_V8WWORKSPACENAME and _DYNAMIC_CEWORKSPACENAME.  These variables are defined in the file WorkArea PWSetup* and located within the WorkArea in a folder called _PWSetup. 

    The names should align with the folder names in the .\Bentley\V8Workspaces\ and .\Bentley\Configuration\Workspaces\ folders.  Even though V8 does not use workspace names, the CONNECT Edition concept can be utilized in a ProjectWise DI environment.  ProjectWise Explorer can read the version variables at the time of launch.

    To accomplish this, the WorkArea PWSetup .cfg file may contain syntax similar to this:

     

      %if defined (_VERSION_8_11)

           _DYNAMIC_V8WORKSPACENAME=V8WorkspaceExample  

     %elif defined (_VERSION_10_0)

            _DYNAMIC_CEWORKSPACENAME=CEWorkspaceExample

     %endif

    Alternate syntax can be used to prevent a file from being opened with the wrong version as well by using an %error statement:

     

      %if defined (_VERSION_8_11)

           %error This WorkArea not configured for V8i  

     %elif defined (_VERSION_10_0)

            _DYNAMIC_CEWORKSPACENAME=CEWorkspaceExample

     %endif

    Dynamic Managed Workspace Load Process

    The  four (4) basic steps are:

    1. Managed Workspace Initiated. The Managed Workspace requires at least one variable assigned to ProjectWise through a CSB.  In the template, the variable is  _DYNAMIC_DATASOURCE_BENTLEYROOT, and the CSB is typically called Bentley Common Predefined 1.7  

    Subsequent variables are then defined relative to this.  For example,

    _USTN_CONFIGURATION=$(_DYNAMIC_DATASOURCE_BENTLEYROOT)Configuration/

    The subsequent variables are assigned through the Common_Predefined.cfg file.   This configuration will typically use _DYNAMIC to prepend associated variables.

    1. Workspace Names Established/ Once a root variable is created, the next step is to know the Workspace to load. You will pass the name of the Workspace to the Configuration.

    _DYNAMIC_CEWORKSPACENAME and _DYNAMIC_V8WORKSPACENAME and are used to define the Workspace names. 

    These names will correspond to the folder's name in the .\Configuration\Workspace\ folder and .\V8Workspaces\ for CONNECT and V8, respectively.  There are 3 Options to assign these variables..

     

    1. Application Version Determined. This is accomplished using a logic fork within the Common_Predefined.cfg file, which checks two variables: _VERSION_8_11 and VERSION_10_0.  Depending on the value of these variables, further version specific variables are set.

     

    1. Workspaces Adopted to the ProjectWise environment. This is accomplished using configuration file in  _PWSetup\ folders (primarly under under the Workspace folder). 

    Additional options are available in the template.  These include:

    Workspace Groups

    ProjectWise Drive Incorporation

    Specific Application Version Detection

    WorkArea root location identification

    Addition Links and Information:

    Configuration Outline

    Installation/Setup Instructions

    Variable Reference

    Documentation

    Dynamic Managed Workspace 1.7.2

    Dynamic Managed Workspace 2.0 documentation is provided within this wiki (Under Construction)

    Templates

    What's New (Release Notes)

    Dynamic Managed Workspace 2.0.1.1

    (See wiki "files" section for older releases)

    Example PWSetup Files

    PW Setup Example - Generic

    PW Setup Example - FDOT

    • Projectwise Managed Workspace
    • Share
    • History
    • More
    • Cancel
    • Buddy Branham Created by Bentley Colleague Buddy Branham
    • When: Tue, Oct 5 2021 3:43 PM
    • Dana Guthrie Last revision by Bentley Colleague Dana Guthrie
    • When: Mon, Sep 26 2022 1:57 PM
    • Revisions: 39
    • 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