Altium Designer, in conjunction with the Enterprise Server Workspace, brings support for Workspace Projects. Workspace projects target the development stage of the project lifecycle, simplifying the creation and ongoing workflow for version-controlled projects. Centralized storage under the control of the Workspace also enables this feature to be a foundation for other collaborative services.
Some key benefits to using Workspace projects are:
-
Simplified storage. No need to make decisions about storage locations. Backup and other basic services are taken care of.
-
Foundation for collaborative features.
-
Enforced version control.
-
Advantages of a dedicated commenting system.
-
Notifications and status. Document status including local modifications is visible to entire design teams.
-
Concurrent PCB design works without any complex setup.
-
Ability to share a read-only, browser-based interactive view of a project with other users, via the Web Viewer.
-
A range of advanced version control features, such as an interactive Project History view.
Technically, a Workspace project is the combination of meta-information stored on the Enterprise Server Workspace along with tight integration with the Workspace's own Version Control service. The typical workflow is as follows:
-
A user creates a new Workspace project via Altium Designer's Create Project dialog, by converting an existing local project via the Make Available On Server dialog, or from within the Workspace browser interface (detailed below). During creation, that user defines the project's name, description, and design repository.
-
Access to the project is defined and managed in the Workspace browser-based interface, or directly within Altium Designer.
-
All collaborators select the project for opening (either from within Altium Designer or from the Workspace browser interface) after which it is automatically checked out as design files.
A major advantage of Workspace projects is that they are version controlled by default, and can be collaboratively worked upon without having to worry about shared drives, servers, agreements, etc.
Prior to creating a new Workspace project, or making an existing local project available to the Workspace, ensure that a design repository exists in which to store that project, and all future projects. Design Repositories are centrally managed as part of the Enterprise Server Workspace, through its Version Control service. A new installation of the Altium On-Prem Enterprise Server provides a single Git-based design repository – Versioned Storage – for accommodating all of your Workspace design projects.
If you have upgraded your Altium On-Prem Enterprise Server from an earlier server product such as Altium Vault 3.0, then the use of SVN repositories will also be enabled so that you can continue to use your previous (and established) design flow. In this case, you can create additional repositories through the Workspace's Version Control service (SVN-only), or connect to external repositories (SVN or Git).
This document takes a look at working with projects through the Enterprise Server Workspace's browser interface. For information on working with projects in your design software, see Getting Familiar with the Altium Design Environment.
Creating a New Workspace Project
There are several ways in which a Workspace project can be created:
To create a Workspace project directly through the Workspace's browser interface:
-
Sign in to the interface and select the Projects menu option to access the Designs page. Any previously created projects will be listed here.
-
Click the button at the top of the page and then the Create Project menu option to open the Create Project window.
If there are any active
process definitions available for the Project Creations process theme – defined on the
Project Creations tab of the
Processes page of the Workspace's browser interface – then the
button menu will offer those processes as options in place of the
Create Project option. Choose the required entry to invoke that process workflow.
-
The window will initially present in a simplified view. Enter the desired name for the project, a description (if needed), and choose a suitable Project Template from the Templates drop-down menu.
The project name should start with, and can contain A-Z, a-z, or 0-9. Underscores, dashes, and spaces are allowed, but the latter can only be used within the middle of the name (leading and trailing spaces will be ignored). You can not use the following words: AUX, COM1-COM9, LPT1-LPT9, CON, NUL, and PRN. In addition, the name cannot contain the following characters: \ . / ? % * : | " < >.
-
To access more controls click the button. The following fields will present:
-
Parent Folder – use this field to specify where the project is to be created within the Workspace's folder structure. This will be the currently open folder, or otherwise (by default) Projects. Note that the default folder path for new projects is specified on the Admin – Settings – Projects page of the Workspace's browser interface. In the Create Project window, click the Change link at the right of the field to access the folder structure for the Workspace, from which to select an alternate folder to store the project.
If the default folder (such as Projects) is not accessible, the Workspace will create a Personal Folder hierarchy to store your projects. This appears as a private top-level folder named as your username, with a My Projects subfolder for the storage of created or uploaded projects. Newly created projects will be stored in the My Projects folder, or if another accessible folder is currently open, a new project will be stored in that folder.
-
Repository – this field will list all Design Repositories managed through the Workspace's local Version Control service, and which have been shared with you to use. Choose the repository in which to store the new project and its files. By default, the Versioned Storage (Git-based) repository will be selected.
If you upgraded to Enterprise Server from previous server technology and still have the ability to use internal (SVN) and/or external (SVN/Git) design repositories, the Repository field will be presented. This lists all design repositories managed through Workspace's local Version Control service, and which have been shared with you to use. Choose the repository in which to store the new project and its files. If an SVN-based repository is chosen, the Repository Folder field will be presented. Use this field to specify the name of the folder within the repository in which to accommodate the project and its associated files. By default, this will take the project's name.
Defining a new Workspace project directly through the Workspace's browser interface.
After defining the new project as required, click – the new project will be created. You will come back to the summary-level project list, where you will now see an entry for the newly-created project.
An additional Workspace project, created through the browser interface.
The project will initially be shared for Read/Write access with the designer who created it and all those in the Administrators group. The project will also be shared to all Workspace users, but with Read-only access. For more information on configuring project access permissions, see
Sharing a Workspace Project.
Browsing Workspace Projects
The projects listing on the Projects page of the Workspace browser interface includes all projects that are shared with you, and offers a range of controls to access project management features. Use the button to switch the page to its project preview (graphical tiles) mode and the button to switch the page to its detailed list mode.
The Projects page of the Workspace browser interface – command central for working with your Workspace projects. Here, the detailed list mode for the page is shown. Hover the mouse over the image to see the project preview mode.
The view's project entries are automatically sorted by Last modified date, with the most recently modified project appearing first in the list. Click the button to change to sorting by project Name, and click again to toggle between ascending and descending order.
The List mode view (
) can be sorted by
Name,
Author, or
Date, using the column header in each case. Click once to sort in ascending order, click again to sort in descending order. The arrows to the right of the column name will indicate the currently active sort direction.
The Projects view provides Properties and Activities data that relate to the selected project, available in the view's right-hand sidebar pane.
|
The sidebar pane information includes:
-
Properties tab:
-
Project – a high-level summary of the project's state, including its preview (the 3D view of the board, the multi-board schematic document image or the harness wiring document image).
-
Child Projects (Multi-board projects only) – the list of sub-project PCBs included in, and linked to, a Multi-board project – show image. Click on a sub-project link to open that PCB project in the Web Viewer as normal.
-
Shared With – the users and/or groups who have access to the project. Hover over an entry to see the full name of the user/group.
-
Reports – the Electrical and Design Rule checks (ERC and DRC) that have been generated for the currently selected project, including the number of errors/violations in each report. Select an ERC or DRC entry to access and inspect the report details within the project. Refer to the Web Viewer page to learn more about DRC and ERC Reports.
-
Parameters – detailed metadata extracted or computed from the project design itself. Click the Show More control to expand the full list.
-
Where Used – a list of other projects, such as Multi-board projects, that incorporate this project content. Click on an entry to open and view that project in a new browser tab.
-
Releases – a list of project releases in chronological order. Click on an entry to open that release in the Workspace's Manufacturing Portal.
-
Activity tab – a chronological list of project events, such as a Commit, Release, or a completed process workflow associated with the project.
|
For each project, the following operations also are provided by the buttons at the top of the view (and detailed in the linked sections that follow):
-
Share – access controls with which to configure project access permissions.
-
Functions – menu access to project functions. Also available from the button of a selected project when in Preview mode:
-
Open – open the project in its detailed CAD-centric view. Equivalent to clicking (Preview mode) or double-clicking (List mode) on a project name entry.
-
Move – relocate the project to another parent folder within the Workspace's folder structure.
-
Edit – edit the project in terms of its Name, Description and Workspace Parameters.
-
Clone – create a renamed identical copy of the project.
-
Watch/Unwatch – follow/unfollow a project's activity by receiving related notifications (updated, released, etc.) in the project's Activitiy tab, and also via email if Email Notifications are enabled.
-
Delete – remove the project entry by moving its structure and data to the Workspace Trash, where it can be permanently deleted from the Workspace or restored to its previous state.
Also included is a project Search feature that can filter the project listing by a range of properties such as Name, Author, Description, etc. Type any part of a search string in the field at the top of the browser interface. The list will update to include only those project entries whose attributes include the search string.
To clear the search filtering, either click on the main Projects page entry in the left-hand navigation pane, or clear the search field and press Enter.
Example use of the search feature, in this case finding a project based on its Description.
Working with Workspace Folders
The Workspace also provides the ability to create and manage project folders within the Workspace's structure. Projects may then be created in or moved to any folder in the resulting folder hierarchy.
To create a new folder under the (default) top-level Project
folder, choose the Create Folder option from the button menu. In the following Create Folder window, specify the name of the new folder, its parent folder, and an optional description. A new folder is always created under the currently selected folder, which becomes its parent folder.
Open a created folder by selecting its title, and navigate back up the hierarchy using the breadcrumbs above.
Use the menu options to modify a folder's details (Edit), relocate the folder under a different parent folder (Move), or remove the folder from the Workspace's folder structure (Delete). When moving a folder, select a new parent folder from the hierarchy tree in the Move folder <folder> to window.
Upload a Project
In Altium Designer, the Make Available on Server command will upload a local project to the Workspace, where it becomes a Workspace project under its version control. An equivalent process can be performed within the Workspace browser interface from the Upload Project option available from the button menu. Browse to and select a local project's host folder to upload that project to the currently selected Workspace folder by default, or use the Change option in the Upload Project windows' Parent Folder list to select an alternative location in the folder hierarchy.
Any existing version control links in the local project are ignored, and the uploaded project becomes a fully version-controlled Workspace project – the local source project is not altered in any way.
Uploading a Gerber or ODB++ Fileset
The Workspace also accepts sets of generated Gerber/ODB++ manufacturing files in archive format, which can be uploaded through the Upload Gerber or Upload ODB++ options available from the button menu. The upload process is essentially the same as the Project upload process outlined above.
❯ ❮
Javascript ID: AES_GerberODBupload_7_0.png
|
Select the New – Upload Gerber option to navigate to and select an archived Gerber fileset in the Windows file browser.
In the Upload Gerber window, edit the proposed project Name if required (which is taken from the Gerber archive name) and add a Description. You can use the Change option to specify a project storage location that differs from the default projects storage folder.
The uploaded fileset will be processed and added to the Workspace project collection with an initial Gerber icon, and then a generated preview image after refreshing or viewing.
Select the New – Upload ODB++ option to navigate to and select an archived ODB++ in the Windows file browser.
In the Upload ODB++ window, edit the proposed project Name if required (which is taken from the ODB++ archive name) and add a Description. You can use the Change option to specify a project storage location that differs from the default projects storage folder.
The uploaded fileset will be processed and added to the Workspace project collection with an initial ODB++ icon, and then a generated preview image after refreshing or viewing.
|
Click on the Gerber/ODB++ project name or use the associated menu's Open option to load the fileset in the Workspace's dedicated viewer. This provides a composite view of all included files/layers, allows layers to be hidden or viewed exclusively, offers a point-to-point measurement feature, and accepts placed comments.
Move a Project
To relocate a project to a different Workspace folder, select the Move option from the menu drop-down options and select a new location from the folder hierarchy in the Move project <project> to window. When confirmed with the button, the selected project will then be hosted under the newly specified parent folder.
Sharing a Workspace Project
Once a project is in the Workspace, you'll want to determine which users can actually access that project. This is done by sharing the project, or rather, by configuring its access permissions.
A Workspace project is shared, by default, with the following:
-
The Owner of the project, which is usually the designer who created it (or made it available on the Workspace): full (Read/Write) access permissions.
-
The Administrators group: full (Read/Write) access permissions.
-
All members of the Workspace: with view-only access.
Default permissions for new projects can be defined/changed on the Admin – Settings – Projects page of the Workspace's browser interface. Note that the Owner of the project is inherently assigned permission to access it and therefore is not present in the list.
Configuration of access permissions can be performed through the Workspace's browser interface, and also directly from within Altium Designer.
To configure access for a project from the Workspace's browser interface, select the project entry on the Designs page (Projects on the main menu) and click the button to access the Share:<project> window – or the Share option from the menu associated with a project entry. This offers all the controls necessary to share the project with other users or groups.
With projects centrally managed in the Workspace, sharing with others is simply a case of managing each project's permissions.
Within the Share <project> window:
-
A user/group has Read/Write access when the Can Edit option is enabled. If this option is disabled, they have Read access only.
-
A project may be shared with all members of the Workspace for read-only (Can View) or read/write (Can Edit) access using the drop-down menu of the Workspace Members entry in the Shared With region.
-
To remove an existing user/group from having shared access to a project, click the Remove option in the associated drop-down menu.
Things to be aware of:
-
By default, all Workspace users will be able to see the project. If you want to lock access down to a specific set of users and/or groups, you must first select No access in the drop-down menu of the Workspace Members entry.
-
The owner of a project has permanent Read/Write access.
-
You can also share a direct link to the project. The link is obtained by clicking the Copy Link control, at the bottom of the Sharing window. The link is copied to the clipboard. When used, it provides the applicable user – where permitted – access to the detailed management page for the project, an overview for which is presented in the next section.
Note that you also can specify the sharing of a project when it is open in the
Design View.
Sharing a Project with a Workspace User
To share a project with another Workspace user:
-
In the Share window, start typing the full name, username, or email address of a Workspace user (member) in the Share Project With field to activate a list of matching users. Select the required user from this list. Multiple users can be chosen. To remove a selected user, click the delete cross to the right of their name.
-
Set the permission for the user(s) using the associated drop-down menu to choose between Can View access (read-only), or Can Edit access (read/write). Note that the Workspace Members Can View/Edit option is global and can override sharing permissions that have been applied to specific users. In most situations, it is advisable to set this option to No access.
-
Click the button to confirm the addition of the user(s) and return to the Projects view. When the Share window is next opened, the added users can be seen by expanding the Shared With grid list. Use the Can Edit/View menu associated with a user entry to change permissions or remove the user entry itself. Click to save any changes.
Note that the Properties pane shows a summary of the sharing applied to the currently selected project.
Sharing a Project with a Defined Group
You also have the ability to share a project with groups defined in the Workspace (see Admin – Groups). Group permission will apply to all users that are members of that group. To share a project with another group:
-
In the Share window, start typing the name of a Workspace group in the Share Project With field to activate a list of matching groups. Select the required group from this list. Multiple groups can be chosen. To remove a selected group, click the delete cross to the right of its name.
-
Set the permission for the group(s) using the associated drop-down menu to choose between Can View access (read-only), or Can Edit access (read/write). Note that the Workspace Members Can View/Edit option is global and can override sharing permissions that have been applied to specific users. In most situations, it is advisable to set this option to No access.
-
Click the button to confirm the addition of the group(s) and return to the Projects view. When the Share window is next opened, the added groups can be seen by expanding the Shared With grid list. Use the Can Edit/View menu associated with a user entry to change permissions or remove the group entry itself. Click to save any changes.
Note that the Properties pane shows a summary of the sharing applied to the currently selected project.
Advanced Share Settings
Click the Advanced Settings control at the top-right of Share window to access a window with which to determine advanced share settings. For people with editing rights, you can control whether a person can share with others. This allows you to restrict further sharing. For people with view-only access, you can control whether they can also download native data (project itself) and derived data (for example, generated Gerbers or PDFs). They can still view data in the browser interface and provide comments, as before.
If a person with view-only access rights is not permitted to download, then they can only view the project through the browser interface. They can not view the project through Altium Designer, since the project would otherwise need to be downloaded first to do so.
Sharing a Multi-board Project
A Multi-board project is a special project type that encompasses multiple PCB design projects to create a complete functional system. The sub-projects are linked to the parent Multi-board project so their data can be sourced to establish the electrical and physical connectivity of the overall system.
See Multi-board Design for more information on working with Multi-board projects.
The links between the Multi-board and its associated sub-projects are saved as relative paths within the Multi-board project itself (*.PrjMbd
), so these must remain valid when the projects are saved to the Workspace VCS from the design client (Project » Make available Online). In practice, this means ensuring that all the projects are saved to the Workspace and are located in the correct folder structure. In most cases though, all projects involved in a Multi-board system are likely to be in the same folder.
When it comes to sharing a Multi-board project the same considerations apply. Both the parent Multi-board project and its associated sub-projects should be shared with the same View/Edit permissions to the same Workspace members. Users who then open the Multi-board project for the first time in their design client must also open the associated sub-projects – again ensuring that the relative folder structure is locally correct.
Transfer Project Ownership
Workspace administrators or the current owner of a project – typically the user that created the project – can specify another Workspace user as the new owner. The transfer is performed through the project Share window, where the intended new owner must be present with current Edit
/View
access rights.
Perform the ownership change by selecting the Make Owner option from the user's permissions dropdown menu, click to confirm, and then to acknowledge the following information window. The new owner will receive full control and editing rights to the project, and the previous owner's access will revert to an Edit
permission status. If the server's Email Notifications are enabled, the new project Owner will receive an ownership transfer notification email.
The transfer of ownership process also is invoked if a user who owns a project (or projects) is removed from the Workspace. In this case, the administrator specifies a new project owner that will adopt the removed user's access rights to the project (the Owner
status).
Workspace Project Activities
The Workspace offers the unique capability of applying configurable Process Workflows to Workspace projects in order to perform tailored tasks such as performing design reviews and creating new projects. Processes and their underlying Workflows are created and configured by a Workspace administrator, and when enabled, become available to users of both Altium Designer and the Workspace browser interface.
► See Creating & Managing Processes for more information.
► See Performing Design Reviews for information on these processes in Altium Designer.
From a user perspective, Process Workflows and their inherent steps are considered as Activities. Available activities can be invoked by users, and their workflow steps completed by assigned users as a sequence of tasks – available through the Tasks page.
Select the menu on the Designs page (Projects) and choose from the available Processes to initiate an activity for the currently selected project. Complete the required fields and options in the following process form windows, and then start the process (). Depending on the Process Workflow that has been invoked, a following step may need to be submitted () to prepare the data for review.
Workflow Tasks are then created for the user, or users, assigned to the activity. A task that applies to a signed in user will appear in the Tasks page, where it can be acted upon to progress the Workflow to its next stage.
Note that if an activity has been assigned to a group – Engineers
for example – a related Task becomes available to all members of that group, and also any individual users that have been assigned to the Activity. In such cases, any of these users can complete the review step and submit the result ().
Along with the ability to assign Users and Groups to an activity during its preparation, specific assignments also may be added into the Process Workflow configuration itself, resulting in an activity that is inherently assigned to specific users/groups prior to its preparation. For example, the Engineers
group could preset as an assignment within the AdHoc_Review
workflow.
► See Defining a Process Workflow for more information.
Workspace Project Functions
Functional operations associated with projects are available from the menu on the Designs page, and include the ability to open, move, edit, clone, watch and remove a Workspace project. The menu also is available from the button of a selected project entry:
Open a Project
Select the Open option from a project entry's menu or from the upper menu to open a project into its manufacturing orientated CAD-centric view – or when in Preview mode (), click on the project's name. The view provides access to several sub-views available from the navigation pane:
-
Design – navigate and interact with the project's design documents, inspect object properties and place review comments. The view applies to the current (latest) project revision, and uses the Web Viewer interface.
-
Simulation – upload simulation results files to the current project, which are then available for inspection or downloading by all users who have access to the project.
-
Tasks – view and interact with a flow-type interface that presents all Tasks (activity jobs) that apply to the currently project.
-
Releases – view summary information on all Releases for the current project, each of which can be opened in the Manufacturing Portal view. This in turn provides sub-views for the release package files, design documents and supply data in that selected release.
-
Activities – view active or closed Process workflow Activities that apply to the current project.
-
History – browse a progressive timeline of major events relating to the project, including its creation, commits, releases, and clones. Each time a supported event happens in association with the project, that event is added to the timeline as a dedicated tile with various actions (such as design data comparisons) supported where applicable.
-
Assembly Assistant – provides access to a visual board assembly tool based on an interaction between BOM entries and their graphical counterparts. An audited step-through process can be invoked that helps you move through the steps of physically assembling a PCB board. This provides a tracked assembly progress view in a single location, which avoids complex manual or paper-based board assembly checking processes.
Open the Workspace's CAD-centric project view from Altium Designer by right-clicking a project entry in the
Projects panel and selecting the
Show in Web Browser command.
► See Management of a Specific Project for more information.
Edit a Project
To edit the properties of an existing project in the Workspace, select its entry on the Designs page (Projects) and then the Edit option from its menu or the upper menu. In the following Project Editing window you can change the project's Name, Description and manage Workspace Parameters entries.
Click the button in the Project Editing window to expose additional property data derived from and stored with the project. Select the Parameters control to access and add (), edit, or remove () parameter Name/Value pairs. These are saved in the Workspace with the project, and may be used as Special Strings in Altium Designer – access from the Properties panel with a placed text object selected in the design space. By contrast, Project type parameters are saved in the project file (*.PrjPcb
), and can be edited in Altium Designer.
Clone a Project
To clone (duplicate) an existing Workspace project, select its entry on the Designs page (Projects) and then the Clone option from its menu or the upper menu. Use the Clone Project window to set the name and description for the cloned project – by default, the original project name will be used with a - Copy
suffix.
Click the button to expose additional property fields, which include the target parent folder and Repository information. The target folder setting will automatically match the project name unless manually specified, or assigned to a different existing parent folder via the Change option.
If there are any active process definitions available for the Project Creations process theme – defined on the Project Creations tab of the Processes page of the Workspace's browser interface – then the menu will offer Clone – process name
options that correspond to the available process workflows.
When selected, the defined workflow for that process will be used for the cloning process.
A project can be cloned in Altium Designer from the
menu Clone option in the
Explorer panel, or by right-clicking on a project name in the
Projects panel and choosing the
Clone option from the context menu.
After setting the fields as required, click the button to confirm. The original project will be cloned (duplicated) along with its constituent files and data, and be added as a new project entry to the Projects page listing.
Watch a Project
To 'watch' – receive notifications regarding – project in the Workspace, select its entry on the Designs page (Projects) and then the Watch option from its menu or the upper menu.
When you follow (watch) a project, you will receive notifications related to the project (such as commit, release and property change messages) under the Activities tab in the interface's right-hand pane. The creator of the project will automatically be set to watch that project. When enabled, the command will change to Unwatch – select to stop following the project and cease reception of notifications for events relating to that project.
Notifications also will be sent to your email account if Workspace Email Notifications are configured and enabled (Admin – Settings – Email Notifications).
► See Configuring Email Notifications for more information.
Delete a Workspace Project
To delete (remove) an existing Workspace project, select its entry on the Designs page (Projects) and then the Delete option from its menu or the upper menu. The action is effectively a 'soft delete', where the project repository is moved into the Workspace's Trash area. A project can be deleted in Altium Designer using the menu Delete option in the Explorer panel.
From within that view (select Trash from the main menu), the project entry can be completely removed (Permanently Delete) or the action reverted (Restore). Note that the button will remove all entries (where possible) that are stored in the Workspace's Trash.
-
The Delete option only is available to users that have Write permission access to the selected project.
-
This action effectively renders the project no longer in the Workspace. It is removed from the Workspace only – your local working copy is not affected.