Objecteering SCC commands
Overview
The following commands are specific to the Objecteering SCC MDAC.
|
The
... command |
is
used to … |
|
History |
open the History window of the current element. |
|
Properties |
display the element's properties. |
|
Options |
open the provider's options dialog box. For PVCS, this dialog box is used to launch PVCS or to attach a label to the files corresponding to the Objecteering model. |
|
Diff-Merge models |
compare or merge the current model with another stored model. |
History
The "History" command is used to obtain details on the modifications made to an element.
It should be noted that the file which manages information relative to model elements has a name which is internal to Objecteering (principally constructed from element identifiers).

Figure 60. An element's history
For further information on this dialog box, please refer to the related PVCS documentation.
Properties
The "Properties" command is used to obtain information on the state of the file in relation to the model element on which the command has been run.
It should be noted that the file which manages information relative to model elements has a name which is internal to Objecteering (principally constructed from element identifiers).

Figure 61. Information relative to an element
For further information on this dialog box, please refer to the related PVCS documentation.
Options
The "Options" command is used to display the provider options, allowing you to define preferences regarding provider functioning. For example, PVCS proposes:
· the attaching, renaming and deleting of a label on the files of a PVCS project
· the definition of the default database
· the definition of options on the check-in or the check-out
This command is only available on packages, and can be called from any package.

Figure 62. Provider options
For further information, please refer to the related PVCS documentation.
Assigning a label

Figure 63. Assigning a label
Steps:
1. After clicking on the "Assign" button in the window shown in Figure 10-7, enter the name of the label in the "Assign version label" field.
2. Select the project.
3. Check the "Include files in subprojects" tickbox.
4. Select all the files.
5. Click on "OK" to confirm.
Advanced get and checkout options
When the "Advanced get and check-out" MDAC parameter has been activated, additional options are available on the "Check-out" and "Import..." commands. These options are used to retrieve an earlier version of the model or a model element.
When the model element retrieval mode is hierarchical, a warning window is displayed (as shown in Figure 64), to indicate the importance of retrieving elements according to a label. In this case, all model elements are retrieved according to the label in question, which means that all elements must have this label. If this is not the case, certain elements cannot be retrieved and the imported model runs the risk of being inconsistent.
Similarly, if a version number is entered rather than a label for a hierarchical retrieval, the number may not exist for certain elements. In this case, some elements will not be retrieved properly, and the model runs the risk of being inconsistent.

Figure 64. Warning window which appears during a hierarchical "Import from repository"
After this warning window, the PVCS provider options window opens, in which the revision which is to be retrieved can be entered (Figure 65).

Figure 65. Advanced mode for "Import..." commands
Steps:
1. Select a label or a version in the "Revision" field.
2. Click on "OK" to confirm.
When performing a checkout, a second warning dialog box will appear (Figure 66).

Figure 66. The warning window which appears during a hierarchical checkout

Figure 67. Advanced mode for the "Checkout" command
Steps:
1. Select the same label or version as the previous "PVCS Advanced Get" window in the "Revision" field.
2. Click on "OK" to confirm.
Warning! Failure to enter the same values in both windows may result in inconsistencies in the UML project or in errors in the check-out operation.
Retrieval by label in hierarchical mode is used for functional retrieval. In this way, a set of model elements which are consistent between themselves can be transferred into Objecteering.
In non-hierarchical mode, a version or a label can be specified. In this case, you wish to retrieve an earlier version of a particular element.
In the "Advanced options" mode, element retrieval only checks the read-only state. If the retrieval of an element requires the modification of an element in read-only mode, the retrieval operation is aborted. You must then manually resolve the problem, by importing or checking-out the elements which are modified by the element retrieval operation. This case arises when element retrieval requires the retrieval of other dependent elements which are components of the elements in read-only.
Advanced check-in and add options
When the "Advanced check-in and add" MDAC parameter has been activated, additional options are available on the "Check-in" command, except for Visual Source Safe. These options can be used for example to assign a label while checking-in the model or a model element.
When the model element check-in mode is hierarchical, warning windows are displayed, whether additions, modifications or both are being published in the repository.
The goal is to indicate the importance of checking-in elements according to a label. In this case, all model elements are assigned the label in question, meaning that all elements will have this label.
Add options on hierarchical check-ins
When the check-in mode is hierarchical and elements are going to be created in the repository, a warning window appears (Figure 68).

Figure 68. Advanced add warning window which may appear during a hierarchical check-in
This window warns you that:
· options entered apply to all element creations.
· these options do not apply to element modifications. A second provided advanced check-in options window will appear to enter these options.
· the same version label should be entered in both windows, in order to maintain check-in consistency.
The "PVCS Advanced Add" options window then appears, allowing you to specify the promotion group and version label.

Figure 69. The two tabs in the "PVCS Advanced Add" window
Options on hierarchical check-in operations
When the model element check-in mode is hierarchical and elements are going to be modified in the repository, a warning window appears (Figure 70).

Figure 70. Advanced add warning window which appears during a hierarchical check-in
This window indicates the following important facts:
· If a label is entered, all model elements are checked-in according to the label in question; which means that all elements will have this label.
· The entry of a revision number is strongly discouraged, as it will apply to all element modifications. If a version number is entered, the number may already exist for certain elements. If this is the case, some elements will not be properly archived, and the repository runs the risk of being inconsistent.
· If the "Advanced Add" option window has previously appeared, it is important to enter the same version label in the "Advanced Add" and "Advanced Check-in" windows. If this is not the case, added elements and modified elements will have different version labels and will not be retrievable on both advanced imports or check-out.
The "PVCS Advanced Check-in" window then appears, allowing you to specify the version label and the revision number. The revision number should only be defined in non-hierarchical mode.

Figure 71. Advanced check-in options window
The "Diff-Merge models" command
The "Diff-Merge models" command is used to select the model you wish to compare, to select the ancestor model and to customize the options used by the Diff-Merge tool.
The model to be compared and the ancestor model can be retrieved in:
· another project
· a repository managed by Objecteering Multi-user, a ClearCase view or a simple directory containing a model in a form equivalent to that of the model in the repository
· a model from the SCC repository. In this case, the "Advanced Get Options" window appears, allowing you to select a label. All elements which are going to be compared must carry the indicated label.
Before carrying out a model merge, you must check-out those elements which are going to modified by the merge. If you are running a comparison without a subsequent merge, this is not necessary.
This information is defined through a wizard containing three windows. The first window (shown in Figure 72 below) is used to select the model which is to be compared. Two choices are possible:
· Select Objecteering project: by selecting this option, the list which follows this option contains all the projects available on the Objecteering site.
· Select repository: by selecting this option, you can define the directory where the elements which are to be compared are stored.
· Select SCC repository: by selecting this option, the SCC provider "Advanced Get Options" window is used to indicate the label which will be used to retrieve the model (see the "Advanced get and check-out options" paragraph in this section for further details).

Figure 72. Selecting the model to be compared
To continue with the next step, you must either select an Objecteering project from the list, define a directory in which the element which is to be compared can be accessed or select an SCC repository. After doing this, click on the "Next" button to continue with the second step.
The second window (shown in Figure 73) is used to select the ancestor model. This second window behaves in the same way as the first.

Figure 73. Selecting the ancestor model
The selection of an ancestor model is optional. In order not to define an ancestor model:
· the "Select SCC repository" tickbox must not be checked
· if the "Select Objecteering modeling project" tickbox has been checked, no Objecteering model should be selected
· if the "Select repository" tickbox has been checked, the "Repository" field must be left blank
To continue with the final step, simply click on the "Next" button.
The third window (shown in Figure 74) is used to define Diff-Merge customization options.

Figure 74. Configuring the Diff-Merge
|
The
command ... |
is used
to ... |
|
Log |
indicate the log where information on all the modifications carried out by the Diff-Merge editor is stored. Environment variables in $(OBJING_PATH) form can be used in this field to define the location of the log file. |
|
External editor for merging texts |
indicate the external editor used to merge all note types (C++, Java, documentation, etc). Environment variables in $(OBJING_PATH) form can be used in this field to define the location of the external editor of your choice. |
|
Options and arguments for merge editor |
define the options and arguments of the editor used for the Diff-Merge of texts. According to the editor used, options and arguments can be different. Two variables must be used to represent the initial text and the text which is to be compared. $(LEFTFILE) represents the initial text, whilst $(RIGHTFILE) represents the text which is to be compared. Unlike MDAC parameters, you must not put two $ signs. |
|
Merge result |
define the file containing the result of the text merge. According to the editor used, the editor value can be different. For example, if the editor saves the result of the merge in the initial text, the $(LEFTFILE) value must be given to this parameter. |
To activate the comparison between the current model and the model to be compared, simply click on the "Finish" button.
For more information on the Diff-Merge tool, please see "The Diff Merge tool".