Skip to main content

Notice: this Wiki will be going read only early in 2024 and edits will no longer be possible. Please see: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/wikis/Wiki-shutdown-plan for the plan.

Jump to: navigation, search

Difference between revisions of "Papyrus/Papyrus User Guide/Table Documentation"

(Paste Example : Pasting SysML Requirement in Generic table)
 
(100 intermediate revisions by 6 users not shown)
Line 1: Line 1:
Since Papyrus 0.10 (Eclipse Kepler), Papyrus provides a new version of the tabular editors. This version will replace the previous version in Eclipse Luna.
+
[https://help.eclipse.org/2020-09/nav/73_1_1_0 General Table Documentation (2020-09)]
  
= Existing Tables  =
+
[[Category:Papyrus]]
 
+
*UML Generic Table<br>
+
*SysML Allocation Table<br>
+
*SysML Requirement Table<br>
+
*Views Table<br>
+
 
+
<br>
+
 
+
== UML Generic Table<br>  ==
+
 
+
Elements Accepted&nbsp;: UML Element only (all of them)<br>
+
 
+
Filling Way&nbsp;: User, by Drag&amp;Drop from the Model Explorer<br>
+
 
+
Possible Context&nbsp;: all UML Element.<br>
+
 
+
Save&nbsp;: All rows displayed in the table are saved in the model<br>
+
 
+
Element Creation&nbsp;: All UML Elements<br>
+
 
+
<br>
+
 
+
== SysML Allocation Table<br>  ==
+
 
+
Elements Accepted&nbsp;: SysML Allocation only<br>
+
 
+
Filling Way&nbsp;: Automatic, by Synchronization on the context of the model. Only the Allocation directly owned by the context of the table are displayed.<br>
+
 
+
Possible Context&nbsp;: UML Package, with the SysML Profile Allocations applied.<br>
+
 
+
Save&nbsp;: The Rows are not serialized in the model, because they are derived of the UML Model.<br>
+
 
+
Element Creation&nbsp;: SysML Allocation<br>
+
 
+
<br>
+
 
+
== SysML Requirement Table  ==
+
 
+
Elements Accepted&nbsp;: SysML Requirement only
+
 
+
Filling Way&nbsp;: Automatic, by Synchronization on the context of the model. Only the Requirements directly owned by the context of the table are displayed.<br>
+
 
+
Possible Context&nbsp;: UML Package, with the SysML Profile Requirement applied.<br>
+
 
+
Save&nbsp;: The Rows are not serialized in the model, because they are derived of the UML Model.
+
 
+
Element Creation&nbsp;: SysML Requirement<br>
+
 
+
<br>
+
 
+
== Views Table<br>  ==
+
 
+
Elements Accepted&nbsp;: Papyrus Views (Table/Diagram/...) only
+
 
+
Filling Way&nbsp;: Automatic, by Synchronization on the context of the model. <br>
+
 
+
Possible Context&nbsp;: All UML Elements<br>
+
 
+
Save&nbsp;: The Rows are not serialized in the model, because they are derived of the notation Model.<br>
+
 
+
None<br>
+
 
+
<br>
+
 
+
= Table Features<br>  =
+
 
+
The table framework provides a large number of features. Here we will describe all existing features supported by the framework, but not necessarly by all the tables.<br>
+
 
+
#Edit Cell Values<br>
+
#Change Axis (Columns/Row) Order<br>
+
#Invert Axis (Exchange Column And Row)<br>
+
#Add Axis (Column/Row) Element by Drag&amp;Drop from another view (ModelExplorer)<br>
+
#Remove Column/Row<br>
+
#Destroy Column/Row Element<br>
+
#Rename Column/Row Header<br>
+
#Choose the Displayed Columns/Rows<br>
+
#Choose the Displayed Columns/Rows for Stereotype Property in the popup menu<br>
+
#Paste Columns/Rows From External Spreadsheet<br>
+
#Display Index Column/Row Header<br>
+
#Display Label Column/Row Header<br>
+
#Configure Index Header Style (A, B, C...Z, AA, AB, ... or 0,1,2,3)<br>
+
#Configure Label Header Style&nbsp;: select the information to Display in the Header Label (Name, Multiplicity, Type, Icon, isDerived)<br>
+
#Export table into the Excel Format<br>
+
#Print table<br>
+
#Sort Column/Row Axis by Alphabetic order<br>
+
#Sort Rows selecting one or several column header<br>
+
#Save and restore Table Axis Configuration<br>
+
#Select All
+
#AutoResize axis<br>
+
 
+
=== <br>  ===
+
 
+
=== Edit Cell Values  ===
+
 
+
Double Click on a cell or selecting a cell then pressing F2, excepted for derived features<br>
+
 
+
=== Change Axis Order<br>  ===
+
 
+
Click on the axis to move and drop it to its new location.<br>
+
 
+
=== Invert Axis<br>  ===
+
 
+
Select the action Invert Axis in the popup menu or change it into the Table Property View.
+
 
+
=== Add Axis (Column/Row) Element by Drag&amp;Drop<br> ===
+
 
+
Select your element and drop it into the table, in the column region or in the row region to add it.<br>
+
 
+
=== Remove Column/Row<br> ===
+
 
+
Select the header of the axis to remove then right click and select Remove Column/Row. The axis will be remove of the table, but the represented element will continue to be in the model.<br>
+
 
+
=== Destroy Column/Row Element<br> ===
+
 
+
Select the header of the axis element to destroy then right click and select Destroy Column/Row Element. The represented element will be destroyed and its axis will be removed from the table.<br>
+
 
+
=== Rename Column/Row Header<br> ===
+
 
+
This function can do 2 things according to the usecase : <br>
+
 
+
*Rename the element represented by the axis, when the element is owned by your model<br>
+
*Define an alias to the axis, when the element is not owned by your model (UML Feature for example)<br>
+
 
+
Select the header of the axis element to rename then right click and select Rename Header.<br>
+
 
+
=== Choose the Displayed Columns/Rows<br>  ===
+
 
+
Right click in the table (not in the header) and select Columns -&gt;&nbsp; Create/Destroy Columns. (the same thing for rows<br>
+
 
+
=== Choose the Displayed Columns/Rows for Stereotype Property in the popup menu<br> ===
+
 
+
Right click in the table (not in the header) and select Select Stereotype Properties Columns (or Rows)<br>
+
 
+
 
+
 
+
{| width="1007" cellspacing="1" cellpadding="1" border="1" align="center" summary="This table describes the feature of the table when the axis are NOT inverted."
+
|+
+
=== Features/Tables, when the Axis are NOT inverted.  ===
+
 
+
 
+
 
+
|-
+
| <br>
+
| valign="middle" align="center" | UML Generic Table<br>
+
| valign="middle" align="center" | SysML Allocation Table<br>
+
| valign="middle" align="center" | SysML Requirement Table<br>
+
| valign="middle" align="center" | Views Table<br>
+
|-
+
| Content synchronized on table context<br>
+
| valign="middle" align="center" | No<br>
+
| valign="middle" align="center" | Yes<br>
+
| valign="middle" align="center" | Yes<br>
+
| valign="middle" align="center" | Yes<br>
+
|-
+
| Edit Cell Value<br>
+
| valign="middle" align="center" rowspan="2" colspan="4" | Yes<br>
+
|-
+
| Change Axis Order<br>
+
|-
+
| Add Column Axis By Drag &amp; Drop
+
| valign="middle" align="center" colspan="4" | No<br>
+
|-
+
| Add Row Axis By Drag &amp; Drop
+
| valign="middle" align="center" | All UML Elements<br>
+
| valign="middle" align="center" rowspan="3" colspan="3" | No (Synchronized table)
+
|-
+
| Remove Column<br>
+
| valign="middle" align="center" | Yes<br>
+
|-
+
| Remove Row<br>
+
| valign="middle" align="center" | Yes<br>
+
|-
+
| Destroy Column Element<br>
+
| valign="middle" align="center" | Yes<br>
+
| valign="middle" align="center" | Yes<br>
+
| valign="middle" align="center" | Yes<br>
+
| valign="middle" align="center" | <br>
+
|-
+
| Destroy Row Element<br>
+
| valign="middle" align="center" | Yes<br>
+
| valign="middle" align="center" | Yes<br>
+
| valign="middle" align="center" | Yes<br>
+
| valign="middle" align="center" | <br>
+
|-
+
| Rename Column Header<br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
|-
+
| Rename Row Header<br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
|-
+
| Choose the Displayed Columns<br>
+
| valign="middle" align="center" rowspan="2" colspan="3" | Yes
+
| valign="middle" align="center" | <br>
+
|-
+
| Choose the Displayed Columns for Stereotype Property in the popup menu<br>
+
| valign="middle" align="center" | <br>
+
|-
+
| Choose the Displayed Rows<br>
+
| valign="middle" align="center" | No<br>
+
| valign="middle" align="center" | No<br>
+
| valign="middle" align="center" | No<br>
+
| valign="middle" align="center" | <br>
+
|-
+
| Choose the Displayed Rows for Stereotype Property in the popup menu<br>
+
| valign="middle" align="center" colspan="3" | No
+
| valign="middle" align="center" | <br>
+
|-
+
| Paste Column From Spreadsheet<br>
+
| valign="middle" align="center" | No<br>
+
| valign="middle" align="center" | No<br>
+
| valign="middle" align="center" | No<br>
+
| valign="middle" align="center" | <br>
+
|-
+
| Paste Row From Spreadsheet<br>
+
| valign="middle" align="center" colspan="4" rowspan="8" | Yes
+
|-
+
| Display Index Column/Row Header<br>
+
|-
+
| Display Label Column/Row Header<br>
+
|-
+
| Configure Index Header Style <br>
+
|-
+
| Configure Label Header Style<br>
+
|-
+
| Export to Excel<br>
+
|-
+
| Print table<br>
+
|-
+
| Sort Column Axis By Name<br>
+
|-
+
| Sort Row Axis By Name<br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
|-
+
| Save and restore Table Axis Configuration<br>
+
| valign="middle" align="center" colspan="4" rowspan="2" | Yes
+
|-
+
| Select All <br>
+
|-
+
| AutoResize axis<br>
+
| valign="middle" align="center" colspan="4" | Yes<br>
+
|-
+
| <br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
| valign="middle" align="center" | <br>
+
|}
+
 
+
<br>
+
 
+
<br>
+
 
+
<br>
+
 
+
== Paste From Spreadsheet in a Table ==
+
Tables support the paste from Spreadsheet (Excel for example).
+
 
+
This feature is already configured for SysML Requirements and Allocations.
+
 
+
For Generic Table, the user must configure the paste himself.
+
 
+
Steps to paste in a Generic Table :
+
 
+
We assume that the user wants to paste rows (and not columns).
+
*Create a new Generic table
+
*Select the columns to display in your table.
+
*Select the table in the ModelExplorer View in order to display its Property View
+
*In the Property View goes into the Paste Tab. 4 informations must be completed by the user :
+
**Detached Mode :
+
***if false, Paste action uses the service edit (initialize default values, apply stereotypes required by element id).
+
***if true, stereotype required by the element id will be ignored (uses Post Action to apply stereotypes)
+
**Pasted Element Id : define the pasted element: org.eclispe.papyrus.uml.Class will create a UML Class
+
***org.eclipse.papyrus.sysml.Requirement will create a uml.Class stereotyped Requirement if detached mode==false
+
***org.eclipse.papyrus.sysml.Requirement will create a uml.Class
+
**ContainementFeature : the feature owning the pasted elements
+
**Post Actions : a way to define actions done just after the element creation but before to paste the cell value. Post Actions are not available when Detached Mode is false; Existing Post Actions allows to apply stereotypes
+
 
+
[[File:PasteInTablePropertyView.jpg |Paste In Table Configuration Property View]]
+
 
+
===Paste Example  : Pasting SysML Requirement in Generic table===
+
 
+
The table shows the columns <code>id</code> and <code>text</code> only.
+
 
+
Containement Feature is <code>packageableElement:PackageableElement</code>.
+
*Detached Mode is <code>false</code> (we use service edit)
+
**Pasting Element Id = <code>org.eclipse.papyrus.sysml.Requirement</code>
+
***Post Action: none
+
****You get a Class stereotyped Requirement, named Requirement1, with wanted values in the cells text and id.
+
**Pasting Element Id = <code>org.eclipse.papyrus.uml.Class</code>
+
***Post Action: <code>applyStereotype:/SysML::Blocks::Block</code>
+
****You get a Class named Class1, with wanted values in the cells text and id, required stereotypes have been applied.
+
'''Post Actions are always ignored when Detached Mode is false'''
+
 
+
 
+
*Detached Mode is <code>true</code> (we don't service edit)
+
**Pasting Element Id = <code>org.eclipse.papyrus.sysml.Requirement</code>
+
***Post Action: none
+
****You get a Class named Class1, with no applied stereotyped (and N/A displayed in the cells text and id). <code>org.eclipse.papyrus.sysml.Requirement</code> can't be resolved, we use its super type : <code>org.eclipse.papyrus.uml.Class</code>. Required stereotype can't be applied.
+
**Pasting Element Id = <code>org.eclipse.papyrus.uml.Class</code>
+
***Post Action: none
+
****You get a Class named Class1, with no applied stereotyped (and N/A displayed in the cells text and id), required stereotype can't be applied.
+
**Pasting Element Id = <code>org.eclipse.papyrus.uml.Class</code>
+
***Post Action: <code>applyStereotype:/SysML::Requirements::Requirement</code>
+
****You get a Class stereotyped Requirement, named Requirement1, with wanted values in the cells text and id.
+
 
+
== Table Property View<br>  ==
+
 
+
The Property View of the table is accessible selecting the table in the ModelExplorer.<br>
+
 
+
<br>
+

Latest revision as of 11:20, 26 November 2020

General Table Documentation (2020-09)

Back to the top