This article describes new features, improvements and fixes included in this release of SystemWeaver. When upgrading, we recommend that all client and server applications be upgraded as some bug fixes and/or enhancements require this. 

 

These release notes are also available as a MS Word document, as well as a SystemWeaver XML file. Both are attached at the bottom of the article. You can also print out this article as a PDF using the Print option.


Note: Special attention should be given to the items highlighted in yellow as they will require additional planning/steps for your organization pre and/or post-upgrade if the view/tool affected is being used in your installation.


Administrator

NameDescriptionTypeIssue ID
Groups setup: Unable to modify users as group admin

This fixes an issue with Group admin users not being able to add and remove group members.


Bug fix18633
Server: Problem with resetting passwords
This fixes a problem where older user accounts could not log in if their password was reset, and also a problem where users could not reset their password when prompted to do so.
Bug fix
18670, 18779
Version text: New capability constraint

The Capabilities setting enables Administrators to limit access to a number of standard user capabilities in the swExplorer client. There is a new Capability named EditVersionText which can be used to set a constraint on setting Version text, e.g., who can modify it, or if the item must be in a given status, etc.


Given the below example, the Version text can be modified only if the item has Status="Work".


<Capabilities>

  <Capability name="EditVersionText" test="ItemStatus.ToString = 'Work'"/>

</Capabilities>

New18840


API/Rest API/Extensions API Users

NameDescriptionTypeIssue ID
API: AttributeDataType Strings improvement

We have added the string array:

 

public static readonly string[] SWDefs.AttributeDataTypeStrings

which can be used like this:

 

SWDefs.AttributeDataTypeStrings[(int)attributeType.DataType]

 

to get the string used to show the data type of an attribute type to end users of the swExplorer and swArchitect applications.

New18334
API: Open Overview dialog

THowToOpenType now has an option for InSeparateWindow which enables OpenItemInView to open the Overview for an item in a separate window without modal. This will enable the user to view the new window and continue to work in the swExplorer client simultaneously.


New18947
API: Renamed namespace for icons

The icons are now included in the NuGet Client API. To make this happen, the namespace SystemWeaver.Resources has been renamed to SystemWeaver.ImagesThis will likely affect many extensions that use icons because they often use the function:

 

SystemWeaver.Resources.SWImages.TypeImageIndexToGuiImageIndex

 

In such cases, this is a breaking change. This is easily fixed by a quick rename in the project.

 

/// Class for getting SystemWeaver images/icons.

public class SWImages

 

/// Gets the ImageSource for given index if within list index bounds.

public static ImageSource FindImageSource(int index)

 

/// List of all images/icons in Bitmap format.

public Bitmap[] MetaDataImages { get; }

 

/// List of all images/icons as ImageSource.

public ImageSource[] MetaDataImageSources { get; }

 

/// Gets the real index for an TypeImage. This is needed due to GUI images sharing the same index counter.

public static int TypeImageIndexToGuiImageIndex(int index)

Improvement14199
API: RVFUtility in .NET standardFor the conversion of our RichText Descriptions, there are 2 different implementations depending on which version of the API you are using. The .NET framework version of our APIs uses the RVFUtility.dll, while the .NET standard version of our APIs asks the server to do the conversions which, due to latency, is often slower. We have changed this so that it is now not the .NET version that determines which method to use, but on which operating system you are running the .NET assembly. When you are running under Windows, it now always uses the RVFUtility.dll, while other operating systems use the server.New18669
Extensions API: Faster method to convert to plain text

To get a plain text version of a Description, we have the method:

 

static string SWDescription.DescriptionToPlainText(IswDescription description, IswBroker broker)

 

When working with the Extension API to make extensions for the swExplorer client, we now offer an optimized version which is significantly faster:

 

string IswDescription.ToPlainText(IswBroker broker)

New18672
Extensions API: OpenIssue on MultiInstance view

IswMultiInstanceItemViewContentHost in ExtensionsAPI now has a new method called OpenIssue. Given an IswIssue object, it will open the issue in a new window inside the client. This will contribute to a more seamless workflow when you want to open a desired issue with IswMultiInstanceItemViewContentHost.


Example of how to use OpenIssue():


_host is a IswMultiInstanceItemViewContentHost


var handle = SWHandleUtility.ToHandle(textItemId.Text);

 

IswIssue issue = MultiInstanceItemViewExample.Broker.GetIssue(handle);

 

_host.OpenIssue(issue);

New18620
New Visual Studio code plugin

Introducing a first version of a Visual Studio code plugin to bring SystemWeaver closer to developers. With this plugin, developers with a minimum of "Read" access right to the database can:

  • Search for an item by its xID or by the full SystemWeaver URL, e.g., url:swap://srvr1:443/x0400000000039929. The search result(s) display in a tree format and include, e.g., item name and type. Type icons are not displayed.  
  • Select a node in the tree to see the same type of information that you find in the Overview view in the client.
  • View a Versions list for an item.
  • View a References list for an item.


This plugin offering read-only access will be made available in the Visual Studio Marketplace. Until then, contact your SystemWeaver Administrator to obtain it with your organization's upgrade package.


New


Architects

NameDescriptionTypeIssue ID
Actions: Initial support for versioning

There is now the following support for version handling using Actions in configurable Grids. 


To apply changes to an item using an Action, the item must be in Work status. There are two methods to change the item status: implicit and explicit. 


Implicit status change

The implicit method automatically updates the item status, creates a new version if necessary, replaces the version, and performs the necessary checks to avoid creating unnecessary new versions, provided the necessary inputs are available for execution. The required inputs include the affected items and parts. Without providing the affected items and parts, it will not work. The automated operation will manage various potential scenarios and determine if a new version or status change (i.e., Work-> Frozen) is necessary by automatically checking the item's name, attributes, parts, and description. 


Example:

Input data:  Four items with different statuses to be updated

Action: Update an attribute for the four provided items, with a given attribute value (i.e., Hello World).


<Actions>

  <Action id="ac1">

   <Parameter name="DF" as="Item"/>

   <ForEach select="$DF">

    <Item match="." id="#{Handle}">

     <ForEach select="/part::ITFC">

      <Part match="." id="#{Handle}" defObj="SWCs_#{DefObj.Handle}"/>

     </ForEach>

    </Item>

    <ForEach select="/ITFC">

     <Item match="." id="SWCs_#{Handle}">

      <Attribute sid="2APE" value="'Hello World'"/>

     </Item>

    </ForEach>

   </ForEach>

  </Action>

 </Actions>

Result: 

Explicate status change

The explicit method allows you to manually set the item status to Work, Frozen, or Released. In the Item tag, it is possible to set the status attribute to Work, Frozen, or Released. The following will happen based on the current status of the affected item:



Example:

<Action id="ac4">

 <Parameter name="item" as="Item"/>

 <Item match="$item" status="Work" id="1"/>

</Action>

New17599
Actions: List index error when generate sub-menusThis fixes a "List index error" thrown when using sub-menus in configurable Grids and Graphs to do operations.Bug fix18148
Actions: Problem with updating part with refobjThis fix resolves an error received when trying to update a RefObj using a custom action <Part>.Bug fix18363
Actions: Update item name

There is now support for updating item name using Action. This may be useful when, e.g., you want use an Action to clone an item and want to define a new name for the clone.


Example:

<Action id="ac4">

 <Parameter name="SWC" as="Item"/>

 <Item match="$SWC" name="#{? Name + 'Hello World'}" id="1"/>

</Action>

Improvement18175
Metadata cutter: Improvements

Deprecated item types included in the Resulting metadata to export list now appear with red highlighting.



The UI now displays all of the attributes to be included in the metadata export. 



The Resulting metadata to export lists are now sorted by type name. 


Improvement18385
Metadata: Config item properties displayed

The Properties heading is now included on the Config Items tab for metadata. 


Improvement18506
Metadata: Improvements to Create/Edit attribute type dialog

The following improvements have been made to the Create/Edit attribute type dialog.


The type drop-down list is now in alphabetical order. 


The Default value setting has been hidden for Signature and User attribute types as it is not applicable to these types. 


The Allow empty value setting has been hidden for the Identity attribute type as it is not applicable to this type. 


The Fixed font setting has been disabled for all attribute types except for Text. It is only applicable to Text. 


The Editor min height and Editor max height settings have been disabled for all attribute types except: 

  • External reference (supported with Array dimension)
  • Text
  • User (supported with Set dimension)


Note: If values had previously been entered in now disabled settings, note that the setting was never, and is, not applied for the selected attribute type.  

 

Improvement18331, 14963
Metadata: Properties view not update when no Config Items associatedThis fixes an issue where the display of the Properties of a Type and Config item did not refresh properly when navigating in the Type structure tree and viewing the Config items tab. Bug fix12621
Metadata: Unexpected switch to Config Items tabThis fixes an issue when navigating in the Type structure tree where focus was mistakenly switched to the Config items tab instead of remaining on the Definition tab.Bug fix

16832
Metamodel diff: Additional filter rules

There are four additional Filter Rules in the Metamodel diff dialog:


Improvement18587
Metamodel export: Changes to description export

Both the plain text and the binary of metadata Descriptions are now always included when exporting using the swExplorer client together with either of the options Include metadata or Referenced metadata only, or the swArchitect client. Previously, there were cases when one or the other was not included for all metadata types.



Improvement

18631
Path Language: Addition of ItemStatus

ItemStatus is now included in the Path Query Language. ItemStatus returns the Status (Work, Frozen, Released, CS Released) of an Item.


Examples:


ItemStatus

> Work


returns the status of an item.


ItemStatus.ToString = 'Work'

> true


returns true/false


Tip: Useful when working with <Action>.

Improvement11447, 17080
Refactorings: Improvement to Change data dimension refactoring

The pick list of dimensions to change to now displays only valid dimensions for the type of attribute selected. 



If an attribute type can only have a dimension of 'Single', no to values will be listed. 


Example of a Text attribute: 

Handling Unsupported Attribute Types

Given that in much earlier releases, one could create an unsupported data dimension for an attribute type, this improvement may be a breaking change if you have data stored in unsupported data dimensions, however, we believe this is highly unlikely. Attributes created earlier with invalid data dimensions will no longer display values, and instead, the below "Unsupported attribute type" message will be provided: 



We recommend that, prior to upgrade, you identify if you have any unsupported data dimensions for an attribute type and change them. For example, an Array of Enumeration can be changed to an Array of String. Should you need guidance with this, contact SystemWeaver Support. 

Improvement18383
Refactorings: Various updates to refactoring descriptions

Some of the descriptions of the Refactoring tools in the swArchitect client have been made clearer. 


Improvement

18383
Version text: Set using Actions

It is now possible to set Version text using Actions using a new versionText attribute in <Item>. 


Example:

<Grid>

 <Parameters>

  <Parameter type="textbox" caption="Enter Version Text" name="p1" as="String"/>

 </Parameters>

 <Columns>

  <ItemNameColumn/>

  <ItemVersionColumn/>

  <ItemStatusColumn/>

 </Columns>

 <ActionBindings>

  <ActionBinding actionId="MyAction" caption="Set version text for current Item">

   <WithParam name="versionText" select="$p1"/>

   <WithParam name="items" select="[.]"/>

  </ActionBinding>

 </ActionBindings>

 <Actions>

  <Action id="MyAction">

   <Parameter name="versionText" as="String"/>

   <Parameter name="items" as="[Item]"/>

   <ForEach select="$items">

    <If test="ItemStatus.ToString = 'Work'">

     <Item id="A_#{Handle}" match="." versionText="#{? $versionText}"/>

    </If>

   </ForEach>

  </Action>

 </Actions>

 <Row/>

</Grid>

New18841



IT Administrators 

NameDescriptionTypeIssue ID
File repository: Ensure sufficient disk spaceWith the addition of the new smaller preview size for Description images moved to the File Repository, expect the size of the repository to grow. Therefore, as always, we recommend that you have a work process in place to monitor the size regularly to ensure there is sufficient disk space. See File Repository Disk Space.Improvement18771
Notification server: Allow blank credentials

For the swNotificationServer executable, the settings for login to smtp-server (MailServerLoginName and MailServerLoginPassword) previously required a value. It meant that the smtp-server needed to be setup so login name and password were mandatory.  This is now changed so if the smtp-server is setup so login name and password are not needed, it will still work. Given this use case, you can leave the following lines empty in the swNotificationServer.ini as shown below:


MailServerLoginName=

MailServerLoginPassword=

Improvement18569


Users


NameDescriptionTypeIssue IDs
Attributes: Improvements to editors

Last release, we rolled out improvements to some of the attribute editors in the New issue dialog.  This release, we have those same improvements out for the Item and Issue attributes list, e.g., in the Overview view, Attributes view, Issue Editor, swArchitect, etc. Here is a summary of the improvements: 


Improved loading speed when navigating in the tree when many attributes exist, especially with attribute with larger values, such as Text.


Single Enumeration

Text now displays in white font with darker colors. 


When a value description text exists, it displays along with the value in the drop-down. 


Given the above, users can now batch modify single enumeration attribute values that have description text. 


Set of Users

The display of users in a Set of Users attribute type is improved. Individual names can be removed using the provided button next to the name. 



String Single: Regular Expression Pattern

When this attribute type has an expression pattern constraint in place, a placeholder is now shown when there is formatting as you start to enter a value. An invalid data message will display until a valid value is entered.



Text editor in Grid

When editing a Text attribute type in a configured Grid, the focus is now in the editor when the dialog opens so that one can start typing immediately. 


The Attributes list now has improved handling of regular path expression constraints (applicable to String attributes), deprecated attributes, and attributes where a null value is not allowed. Users receive clearer feedback in these cases, whereas, previously, no information was given. 


Examples:



Improvement18543
Connection wizard: Various fixes

The following fixes have been made in the Connection wizard dialog: 

  • Part names were not displayed.
  • Send and Receive ports were not displaying the correct icon.
  • Item names were not displayed in certain places.
Bug fix18520, 18523, 18928
Coverage views: Batch removal of faulty mappings

The Coverage (mapping item) and Coverage (item to item) views now enable users to batch remove faulty mappings using a new Remove all mappings option.


Improvement17322
Custom attribute: Change to ID (AUID) editor

The editor for the Custom attribute ID (AUID) now appears with the standard browse button for selecting the Unique Id Context. 


Improvement18864
Custom attribute: New message dialog

Previously for an attribute of type Custom which did not have an editor, no explanation was given if a user clicked on the browse button. Now, a new dialog informs that no editor is available. 


Improvement18789
Description: New smaller preview size

The Move image to file repository option now offers two alternative sizes for the preview image shown in the Description: 

  • Big preview (existing preview size)
  • Small preview (new!)


The benefit of the new smaller preview is that the preview image is smaller in size, so it takes up less of the total allowed Description size. 


The tool also allows you to change from one preview size to the other which is useful when trying to fit multiple images into a Description. Your selection is applicable to the selected preview image only, and does not affect the preview image size of the same image if it exists in another item Description.



Big preview size: 



New Small preview size: 


See the application Help for more information.

New18771
Description editor: Missing insert table icon

The missing Insert table icon in the Description editor has been added.


Bug fix16821
Edit function view: ReceivePort/SendPort Name is not showing part nameThis fixes an issue where part names were not displayed in the Edit function view.Bug fix18544
Export to Excel: New default font

With Microsoft's introduction of Aptos Narrow as their new default font, our Export to Excel now exports to this font when using Microsoft 365. Previously, it was Segoe UI size 8.


ChangeN/A
File repository image: .png gets black backgroundThis fixes an issue where preview images with a transparent background were getting a black background when using the Move image to file repository option. The background is now white.Bug fix18770
Find: Unexpected search results for node attribute filterThis fixes an issue where a search using a node attribute filter did not return the expected hits.Bug fix18856
Issue notes: Handling of removed workflow status

This fixes an error thrown when a Status previously used by an Issue type has been removed from the Workflow. Status change events logged in the Notes related to the removed Status will now indicate that the Status was removed. 


Bug fix18466
Issues view: Object error when no access to projectThis fixes an error thrown when you select an issue in the Issues view that belongs to a Project to which you do not have access.Bug fix18662
Item hint: Various improvementsThe item hint dialog (Alt+Click) now displays the Item Properties so that no horizontal scrolling is needed. 

In addition, the Attributes display has been updated to match the display found in the Overview view.


Improvement18630
Libraries: Various improvements

The following improvements have been made to the Manage Libraries page. 

  • Sorting of the Libraries structure has been improved.
  • When modifying a library name, the update is reflected immediately.
  • The Find tool in the Libraries structure has changed. Instead of using the Find button to open the Find dialog to do a Text search, the Ctrl+F shortcut now opens a Find editor where you can enter the key word to filter by. You can also still locate a specific library by browsing in the tree, or by typing the initial letters of the library.

The improved sorting has also been applied to the Select library dialog. Previously, there was no sort applied in the dialog.
Improvement11168
Print to PDF: Higher quality image

For images added to the File repository using the Move image to file repository option, a higher quality image is now included in the following places where it was lacking before: 


Document 

  • Print PDF with bookmarks
  • Export using swExport


Report

  • Print
  • Print PDF with bookmarks
  • Print preview

Improvement18769
Projects: Improvements to charts

Project Charts have received a facelift, including improved labeling of time span in the charts. 




In addition, we fixed a refresh problem that sometimes occurred when changing the Time span interval. 

Improvement18360
Projects: Improvements to Pie chart wizard

The Pie chart wizard in Projects is updated. Along with a more modern style, there are now Check all and Uncheck all buttons to make issue type filtering easier. 


Improvement18332
Projects: Status change comments not displayingThis fixes an issue where some comments entered in the Select Status dialog were not displaying in an issue's notes.Bug fix18611
Request notes view: Scrolling and event log order fixThis fixes an issue with scrolling through the Notes section of the Issue editor, as well as resolves a problem where the logged events for request status changes were added in the wrong order.Bug fix18314
Result grid: Test case selection not highlighted in structure treeA recently introduced bug where a selected Test case in the Result grid view was not being highlighted in the tree is now fixed.Bug fix18683
Select part type dialog: OK button not activated

This fixes an issue where the OK button did not activate upon selecting the first row/value in the Select part type dialog.Bug fix18397
Select type: Abstract types in italicsThis fixes an issue in the previous release where abstract item types were not shown in italics in the Select type dialog.Bug fix18706
Select user: Filtering by username not workingThis fixes an issue where filtering the Select user list by username was not working.Bug fix18501
Structure tree: Find on part nameThis fixes a problem where searches for a part name were not returning expected hits.Bug fix18521
User options: Beta option no longer in use

The I want to see views in beta option is a check on the Advanced tab in the Options dialog that is no longer in use. 



The beta views affected by this are: 


Should any of these views be turned ON in Configure the explorer, simply set the view to OFF to hide it from users. In addition, these views have been removed from the Test ribbon group, but are still available, for now, in the Views drop-down list. 

Improvement18945
Version text: No longer affects Last modifiedPreviously, when you edited the Version text on an item in any status, the Last Changed (time) and Last Changed by (user) were updated. This is no longer the case.

Improvement18206
Windows remote desktop: Client crashesThis fixes a problem with the client sometimes crashing when working in the Windows Remote Desktop application.Bug fix18244
Workflow feature: Improved description viewingWith this release, we introduce a new option for viewing the complete Description of a workflow process item. You can right-click and select Open item description in a new windowto open the item in a separate window, allowing you to place it anywhere on your screen.




The Open item option is still available for viewing the Description as a hovertip, and now with formatted text. 

New18908



Known issues

NameDescription
Export to Excel/CSVOnly Export to CSV file is supported in a number of places in the client. 
Project (Issue) charts

When generating larger charts, a progress bar currently does not display.

Issue notesThe formatting is lost when pasting ordered lists directly into the embedded Issue note dialog. The workaround is to open the description editor and paste the list there.