Para Compare Versions
Posted May 25, 2011 by ReinholdLauer in Attributes, Baselines, Exporters.Downloaded 2490 times.Para Compare Versions compares two versions in the same module or in different modules and produces a rich text file with the result. The output contains information about the versions and the attributes in the module(s), so that is can be seen what actually has been compared. The changes are shown as untangled markup to increase the readability. The differences can be shown in different colors and styles, like underlined/stroke through or not. A short summary is added at the end of the comparison.
The comparison is based on the absolute numbers, but the objects are compared in the order they are contained in the newer module. Deleted objects are inserted behind the previous predecessor. Deleted and inserted objects are shown completely and not only referenced by their absolute number.
All attributes of both modules or only selected ones can be compared. The attributes to compare can be selected according to regular expressions. Unchanged attributes or all main attributes can be included in the output to get a better picture of the context, in which a change has been made.
To compare the versions launch Para Compare Versions from a module. A brief help is included in the script. By the way, Para is just the abbreviation for the team I am working in – Product Adaptation Requirements and Architecture.
Expand Word OLEs
Posted September 18, 2009 by Kevin in VBA - Macros.Downloaded 2819 times.This macro will take each OLE object that is a Word Document and make it inline.
To use this file, start Microsoft Word, press Alt + F11, choose the Normal project in the Project listing and then choose File>Import. Close the Visual Basic Editor and from Word, go to Tools>Macro>Macros... and you should see the expandWordOLEs macro available.
To use this file, start Microsoft Word, press Alt + F11, choose the Normal project in the Project listing and then choose File>Import. Close the Visual Basic Editor and from Word, go to Tools>Macro>Macros... and you should see the expandWordOLEs macro available.
Import from Excel
Posted July 28, 2008 by David.Pechacek in Importers.Downloaded 10204 times.***You will need my Excel Functions files also available on this site!***
If you are getting an error from missing CommonFunctions.inc or other missing functions, redownload the Excel functions library. I removed the need for it and changed some other things. I apologize for the mistake.
****************Updated 12/04/08 for bug fix*****************
This tool is designed to be used to import data directly from an Excel spreadsheet, into a DOORS module. It offers many of the same features and feel of the DOORS spreadsheet import tool. In addition, it also features the ability to import Rich Text, create DOORS Object Level, and auto-update the key that is selected to uniquely identify each row/object in Excel/DOORs.
Selecting to import Rich Text will pop up a dialog box asking what the user wishes to do in the event of a truncation involving rich text. This can occur when a cell has over 1024 characters in it. Be aware that even when not importing rich text, cells with over 1024 characters will truncate. The options are to maintain the rich text formatting despite the truncation, copy the non-RTF value of the cell, or to cause the import to fail at the first truncation. The option to log truncation errors to a file is also present.
In order to import Object Level during the import, the user must select to create new objects. When they do this and select to import the level, they are given a warning message. Once they confirm the selection, the Auto-Update Key option is automatically selected. This is because the script must ensure that the proper identifier for the object is in the Excel file when the level is created (this mainly applies when the Object Identifier is the key).
The user also has three choices on how to tell the import tool the number of rows and columns in the Excel file. They can use the Print Area recorded in Excel if it is set. Or they can have the tool count down and to the right from the upper left cell in the sheet. It stops once a blank cell is reached so the user must ensure there are no blanks in the first column and row until there should be. The final option is to manually enter the number of rows and columns in the file, including the column header.
Finally, the user is able to specify which Sheet of the Excel file data is to be imported from. The tool can either use the Active Sheet when the file is opened, or it can use the sheet that is specified by the name the user enters. The import does not work across multiple sheets.
Any questions, issues, or improvements can be emailed to me at dpechacek@sc-aaicorp.com. I also appreciate feedback so please leave comments.
If you are getting an error from missing CommonFunctions.inc or other missing functions, redownload the Excel functions library. I removed the need for it and changed some other things. I apologize for the mistake.
****************Updated 12/04/08 for bug fix*****************
This tool is designed to be used to import data directly from an Excel spreadsheet, into a DOORS module. It offers many of the same features and feel of the DOORS spreadsheet import tool. In addition, it also features the ability to import Rich Text, create DOORS Object Level, and auto-update the key that is selected to uniquely identify each row/object in Excel/DOORs.
Selecting to import Rich Text will pop up a dialog box asking what the user wishes to do in the event of a truncation involving rich text. This can occur when a cell has over 1024 characters in it. Be aware that even when not importing rich text, cells with over 1024 characters will truncate. The options are to maintain the rich text formatting despite the truncation, copy the non-RTF value of the cell, or to cause the import to fail at the first truncation. The option to log truncation errors to a file is also present.
In order to import Object Level during the import, the user must select to create new objects. When they do this and select to import the level, they are given a warning message. Once they confirm the selection, the Auto-Update Key option is automatically selected. This is because the script must ensure that the proper identifier for the object is in the Excel file when the level is created (this mainly applies when the Object Identifier is the key).
The user also has three choices on how to tell the import tool the number of rows and columns in the Excel file. They can use the Print Area recorded in Excel if it is set. Or they can have the tool count down and to the right from the upper left cell in the sheet. It stops once a blank cell is reached so the user must ensure there are no blanks in the first column and row until there should be. The final option is to manually enter the number of rows and columns in the file, including the column header.
Finally, the user is able to specify which Sheet of the Excel file data is to be imported from. The tool can either use the Active Sheet when the file is opened, or it can use the sheet that is specified by the name the user enters. The import does not work across multiple sheets.
Any questions, issues, or improvements can be emailed to me at dpechacek@sc-aaicorp.com. I also appreciate feedback so please leave comments.
Granting/Removing Access for Multiple Items and Multiple Users/Groups
Posted May 20, 2008 by Scott in Administration.Downloaded 2605 times.On occassion I've had the need to apply the same permissions to multiple "Items" in the DOORS database. Going through one by one can be time consuming, so I started on this a while a back and I've finally had a few minutes to finish it up today.
Basically the script will allows you to select multiple users/groups and apply the same permissions for all selected users/groups to multiple items (modules, folders, etc) at the same time.
By default the the script will automatically load the items that are currently selected in the DOORS Explorer as items to have permissions set in the Selected Items list. If an item is locked it will appear with the deleted icon for the appropriate item type and will not be processed.
Once the dialog opens there are buttons to add and remove items. To remove an item select it in the Selected Items list and click the "Remove Item(s)" button. The "Add Items(s)" button will bring up another dialog (Add Items) with the database tree, double click on the items you wish to add and they will be placed in the list view on the right. Click the "Add Items" button and they will be added to the "Selected Items" list on the main DB.
The list on the top left contains the user names in the database, the list on the top right contains the group names in the database. Use shift + click to select multiple users or groups. Both lists can be sorted by clicking on the column header. Not sure why but I could never get the user list to sort by the User (i.e. their real name) it will only sort by the first column.
Select the access rights you wish to assign, using the checkboxes in the bottom left. This works the same way as the DOORS access rights checkboxes with one exception. There is an added checkbox, "Remove". When selected the the "Remove" checkbox will remove the selected users/groups from the access list of the selected items.
Click the "Apply" button to apply access right for the seleted users/groups to the selected items.
The "Set Inherited" button will set the the selected items to inherit their permissions from their parent (i.e. select the "Inherit from parent" check box).
I think its pretty obvious, but I'll mention it anyway, you need to have permissions to grant/remove access to the items to use this script.
If you have any questions, please fee free to e-mail me.
Basically the script will allows you to select multiple users/groups and apply the same permissions for all selected users/groups to multiple items (modules, folders, etc) at the same time.
By default the the script will automatically load the items that are currently selected in the DOORS Explorer as items to have permissions set in the Selected Items list. If an item is locked it will appear with the deleted icon for the appropriate item type and will not be processed.
Once the dialog opens there are buttons to add and remove items. To remove an item select it in the Selected Items list and click the "Remove Item(s)" button. The "Add Items(s)" button will bring up another dialog (Add Items) with the database tree, double click on the items you wish to add and they will be placed in the list view on the right. Click the "Add Items" button and they will be added to the "Selected Items" list on the main DB.
The list on the top left contains the user names in the database, the list on the top right contains the group names in the database. Use shift + click to select multiple users or groups. Both lists can be sorted by clicking on the column header. Not sure why but I could never get the user list to sort by the User (i.e. their real name) it will only sort by the first column.
Select the access rights you wish to assign, using the checkboxes in the bottom left. This works the same way as the DOORS access rights checkboxes with one exception. There is an added checkbox, "Remove". When selected the the "Remove" checkbox will remove the selected users/groups from the access list of the selected items.
Click the "Apply" button to apply access right for the seleted users/groups to the selected items.
The "Set Inherited" button will set the the selected items to inherit their permissions from their parent (i.e. select the "Inherit from parent" check box).
I think its pretty obvious, but I'll mention it anyway, you need to have permissions to grant/remove access to the items to use this script.
If you have any questions, please fee free to e-mail me.
Excel Functions
Posted May 12, 2008 by David.Pechacek in Uncategorized.Downloaded 8205 times.******Updated 12/9/08 with some new functions*******
Here is my include file with the list of all the Excel interface functions I've come up with or found people using. Much of this is attributed to Michael Sutherland's work on the Enhanced Export to Excel. Others I've written as need has arisen. The ole.inc file is a copy of Telelogic's that I've added to over time.
Enjoy.
Feel free to email me with any questions.
Here is my include file with the list of all the Excel interface functions I've come up with or found people using. Much of this is attributed to Michael Sutherland's work on the Enhanced Export to Excel. Others I've written as need has arisen. The ole.inc file is a copy of Telelogic's that I've added to over time.
Enjoy.
Feel free to email me with any questions.
Create Link Sets for Module
Posted April 7, 2008 by Scott in Administration, Links.Downloaded 3185 times.This script will allow you to create multiple link sets and mandatory link set pairings for a module to any module within the same project. The script could be modified to allow link sets to any module in the database, however I prefer to not allow linking outside of a project.
To note the script is designed to be run from the DOORS Explorer. For example you would select the source module in the DOORS Explorer and run the script. I have the script added to the right click menu and only visible to DOORS administrators. Obviously you will need to have edit access to the module, so if someone has the module opened in exclusive or shareable edit you will get a warning.
I use this when I have to create multiple linksets for one module as it can be time consuming and repetitive to do it in the module properties.
Basic instructions:
- Select your link module using the "Browse..." button. If there is a link module in the source module's folder it will automatically be selected.
- Select the target modules from the tree on the left, double clicking a module will add it to the "Selected Target Modules" list on the right. (Selecting a module that has all ready been selected will produce a warning box).
- Double clicking a module in the "Selected Target Modules" will remove it from the list.
- Click "OK" and your link sets will be created in the selected link module and mandatory link set pairings will be created in the selected module.
To note the script is designed to be run from the DOORS Explorer. For example you would select the source module in the DOORS Explorer and run the script. I have the script added to the right click menu and only visible to DOORS administrators. Obviously you will need to have edit access to the module, so if someone has the module opened in exclusive or shareable edit you will get a warning.
I use this when I have to create multiple linksets for one module as it can be time consuming and repetitive to do it in the module properties.
Basic instructions:
- Select your link module using the "Browse..." button. If there is a link module in the source module's folder it will automatically be selected.
- Select the target modules from the tree on the left, double clicking a module will add it to the "Selected Target Modules" list on the right. (Selecting a module that has all ready been selected will produce a warning box).
- Double clicking a module in the "Selected Target Modules" will remove it from the list.
- Click "OK" and your link sets will be created in the selected link module and mandatory link set pairings will be created in the selected module.
DOORS Command Database
Posted March 26, 2008 by Kevin in Uncategorized.Downloaded 9725 times.Telelogic removed this file and resulting thread from their DOORS forums. Hence people should really post things they want to keep outside of the Telelogic forums on sites like this.
This file contains undocumented DXL functions. Use at your own risk!
This file contains undocumented DXL functions. Use at your own risk!
Dynamic Dialog Box
Posted March 6, 2008 by David.Pechacek in Uncategorized.Downloaded 2647 times.This tool creates a dialog box that drives the creation of another dialog box. A user is allowed to select attributes from a module to add to the secondary dialog box and then modify the data of the module through this secondary dialog. It will close when the module is closed and the secondary dialog closes whenever this parent dialog is closed.
A user is also able to pick a selection of attributes for the secondary dialog and then save this selection as a layout for future use. These layouts are stored locally on the users machine. Adding support for network layouts would be fairly simple as well.
The include paths will have to be changed to represent your setup.
A user is also able to pick a selection of attributes for the secondary dialog and then save this selection as a layout for future use. These layouts are stored locally on the users machine. Adding support for network layouts would be fairly simple as well.
The include paths will have to be changed to represent your setup.
Simple Constrained Placement
Posted February 1, 2008 by David.Pechacek in Uncategorized.Downloaded 1744 times.This is an include file to use with your dialog box scripts which simplifies constrained placement for a dialog box element into a single line of code.
Instead of having this:
DBE textDBE = text(DB yourDB, string label, string initial, int width, int height, bool readOnly)
textDBE-> "left" -> "inside" -> frameDBE
textDBE-> "right" -> "unattached"
textDBE-> "top" -> "spaced -> otherDBE
textDBE-> "bottom" -> "form"
You can have this:
DBE textDBE = text(DB yourDB, string label, string initial, int width, int height, bool readOnly)
attach(textDBE, "l->i;r->u;t->s;b->f", frameDBE, otherDBE)
Please read the comments at the top of the file for more info. Feel free to email me with any questions. And let me know what you think with your comments.
dpechacek@sc-aaicorp.com
Instead of having this:
DBE textDBE = text(DB yourDB, string label, string initial, int width, int height, bool readOnly)
textDBE-> "left" -> "inside" -> frameDBE
textDBE-> "right" -> "unattached"
textDBE-> "top" -> "spaced -> otherDBE
textDBE-> "bottom" -> "form"
You can have this:
DBE textDBE = text(DB yourDB, string label, string initial, int width, int height, bool readOnly)
attach(textDBE, "l->i;r->u;t->s;b->f", frameDBE, otherDBE)
Please read the comments at the top of the file for more info. Feel free to email me with any questions. And let me know what you think with your comments.
dpechacek@sc-aaicorp.com
Copy Views v3.1
Posted January 25, 2008 by David.Pechacek in Views.Downloaded 3099 times.***Updated 9/2/09 to fix bug***
I received this tool from a member of Telelogic's DXL forum and was asked to make it simpler to use. It used to use a large list view to allow the user to pick modules which was a bit cumbersome. I have modified it to have a tree view of the database so you can select the modules you desire to copy the source modules views to.
Simply select each module you want to copy views to using the "Add Module" button. Also select the views you wish to copy. Use the "OK" button if you wish the tool to close after its done. Otherwise use the "Apply" button for the tool to stay open after its finished.
Enjoy.
* I was told the code I modified came from Ian Zimmerman. Where he got it, I don't know.
NEXTI received this tool from a member of Telelogic's DXL forum and was asked to make it simpler to use. It used to use a large list view to allow the user to pick modules which was a bit cumbersome. I have modified it to have a tree view of the database so you can select the modules you desire to copy the source modules views to.
Simply select each module you want to copy views to using the "Add Module" button. Also select the views you wish to copy. Use the "OK" button if you wish the tool to close after its done. Otherwise use the "Apply" button for the tool to stay open after its finished.
Enjoy.
* I was told the code I modified came from Ian Zimmerman. Where he got it, I don't know.
Pingback: Database Management » Blog Archive » Opinion: DOORS 9