Jump to: navigation, search

Difference between revisions of "UBIK Studio Basics"


Line 1: Line 1:
{{UBIK}} Studio is the server application and administrative tool for creating and modifying {{UBIK}} object models. Transfer your entitiy-relationship-model into {{UBIK}} metaclasses and metaproperties and build up necessary relations. It is also the instrument of your choice to manage instances of metaclasses, edit their property values and create actual relations between instance objects. This section will provide you with more information on the user interface.
+
{{UBIK}} Studio is the server application and administrative tool for creating and modifying {{UBIK}} object models. Transfer your entitiy-relationship-model into {{UBIK}} MetaClasses and MetaProperties and build up necessary relations. It is also the instrument of your choice to manage instances of MetaClasses, edit their property values and create actual relations between instance objects. This section will provide you with more information on the user interface.
  
 
[[File:METACLASS.png|thumb|upright|alt={{UBIK}} metaclass|{{UBIK}} metaclass]]
 
[[File:METACLASS.png|thumb|upright|alt={{UBIK}} metaclass|{{UBIK}} metaclass]]
Line 22: Line 22:
  
 
=== Working area and controls ===
 
=== Working area and controls ===
The starting window is split into 3 parts, each .
+
The main window of {{UBIK}} Studio is split into 3 sections, where each of the 3 areas can hold an arbitrary amount of controls. The arrangement of the controls is user specific.
 +
 
 +
[[File:Ubik_studio.jpg|500px]]
 +
 
 +
Each control provides different functionality for object creation/modification. Clicking the header of an empty tab strip in one of these areas with the left mouse button will bring up a context menu, that allows you to create a new tab page hosting one of the following controls:
  
 
[[File:USB_Studio.png|thumb|upright|alt={{UBIK}} Studio|{{UBIK}} Studio]]
 
[[File:USB_Studio.png|thumb|upright|alt={{UBIK}} Studio|{{UBIK}} Studio]]
  
 
[[File:USB_ControlsOverview.png|thumb|upright|alt={{UBIK}} Studio controls|{{UBIK}} Studio controls]]
 
[[File:USB_ControlsOverview.png|thumb|upright|alt={{UBIK}} Studio controls|{{UBIK}} Studio controls]]
The {{UBIK}} Studio provides a set of user controls for manipulating objects and data. Find a short list what each control is designated for
 
  
 
{| class="wikitable"
 
{| class="wikitable"
Line 33: Line 36:
 
! Control !! Description
 
! Control !! Description
 
|-
 
|-
| „Class Browser“|| Navigate through the metaclasses and instances
+
| [[Class Browser]]|| Navigate through the MetaClasses and instances
 
|-
 
|-
| „Class Details“|| Design metaclasses
+
| [[Class Details]]|| Design MetaClasses
 
|-
 
|-
| „Content Editor“|| Create and edit instances
+
| [[Bulk Editor]]|| Create and edit instances
 
|-
 
|-
| „Code Editor“|| Implement customer specific functionality
+
| [[Code Editor]]|| Implement customer specific functionality
 
|-
 
|-
| „Relation Editor“|| Relate objects and edit relational data
+
| [[Relation Editor]]|| Relate objects and edit relational data
 
|-
 
|-
| „Object Explorer“|| Display and edit properties of objects (list style)
+
| [[Object Explorer]]|| Display and edit properties of objects (list style)
 
|-
 
|-
| „Object Editor“|| Graphical editor for changing object properties
+
| [[Object Editor]]|| Graphical editor for changing object properties
 
|-
 
|-
| „Workflow Designer“|| Design customer specific workflows
+
| [[Workflow Designer]]|| Design and assign customer specific workflows
 
|}
 
|}
  
  
  
 
[[File:Ubik_studio.jpg|500px]]
 
 
Each of the 3 areas can hold an arbitrary amount of controls, which provide different functionality for object creation/modification.
 
 
Clicking an empty tab strip in one of these areas will bring up a context menu, that allows you to create a new tabpage hosting one of the follwoing controls:
 
 
*[[ClassBrowser]]
 
Display and edit classes hierarchically
 
*[[Details]]
 
Show additional information for classes, such as attributes
 
*[[PropertyView]]
 
Display and edit object properties
 
*[[Who-Bert, the debugging opossum]]
 
Execute C# code using UBIK objects
 
*[[Designer]]
 
Display and edit properties and instances
 
*[[Events]]
 
Display and edit event-triggered code on UBIK classes
 
*[[Relation Editor]]
 
Display and edit relations and their content
 
<br><br><br>
 
Furthermore every control has it´s [[views]].
 
  
  
Line 87: Line 67:
 
| Relational data|| “Relation Editor”
 
| Relational data|| “Relation Editor”
 
|-
 
|-
| Metaclass details|| “Class Details”
+
| MetaClass details|| “Class Details”
 
|-
 
|-
 
| Events / object methods|| “Code Editor"
 
| Events / object methods|| “Code Editor"
Line 101: Line 81:
 
=== Creating and editing instances ===
 
=== Creating and editing instances ===
  
== Metaclasses ==
+
== MetaClasses ==
  
=== Create new metaclass ===
+
=== Create new MetaClass ===
# Create a new metaclass via „Derive new object“ from the context menu
+
# Create a new MetaClass via „Derive new object“ from the context menu
 
# Open the control “Object Editor”
 
# Open the control “Object Editor”
# Set the newly created metaclass to the control
+
# Set the newly created MetaClass to the control
 
# Set name, description and namespace
 
# Set name, description and namespace
 
# Save the changes
 
# Save the changes
  
 
=== Technical implementation ===
 
=== Technical implementation ===
The system creates a new instance of “CUSTOMMETACLASS” and sets the “INHERIT” property to the metaclass the context menu was opened at. New derivates can be created for any system metaclasses as “BASECLASS”, “REFERENCE”, “SELECTIVELIST”, … etc.
+
The system creates a new instance of “CUSTOMMETACLASS” and sets the “INHERIT” property to the MetaClass the context menu was opened at. New derivates can be created for any system MetaClasss as “BASECLASS”, “REFERENCE”, “SELECTIVELIST”, … etc.
  
== Metaproperties ==
+
== MetaProperties ==
  
=== Create new metaproperty ===
+
=== Create new MetaProperty ===
A new metaproperty can be created and automatically assigned to a metaclass via the “Create new metraproperty” workflow. This workflow guides the user through the creation and configuration procedure of a metaproperty and relates it to the selected metaclass.
+
A new MetaProperty can be created and automatically assigned to a MetaClass via the “Create new MetaProperty ” workflow. This workflow guides the user through the creation and configuration procedure of a MetaProperty and relates it to the selected MetaClass .
  
# Start Workflow “System / Create new metaproperty” from the context menu
+
# Start Workflow “System / Create new MetaProperty ” from the context menu
 
# Set at least name, description and data type
 
# Set at least name, description and data type
# Change the metaproperty’s category if necessary
+
# Change the MetaProperty ’s category if necessary
 
# Save the changes
 
# Save the changes
 
# Optional configuration:
 
# Optional configuration:
Line 128: Line 108:
 
:: - Format
 
:: - Format
 
:: - Validation flag
 
:: - Validation flag
:: - Numer of index keys
+
:: - Number of index keys
 
:: - Default values
 
:: - Default values
 
:: - Initial values
 
:: - Initial values
Line 135: Line 115:
 
Without the workflow the user has to complete the following steps:
 
Without the workflow the user has to complete the following steps:
  
Step 1: Create new metaproperty instance
+
Step 1: Create new MetaProperty instance
# Navigate to the metaclass “CUSTOMMETAPROPERTY”
+
# Navigate to the MetaClass “CUSTOMMETAPROPERTY”
 
# Create a new instance
 
# Create a new instance
 
# Set at least name, description and data type
 
# Set at least name, description and data type
# Change the metaproperty’s category if necessary
+
# Change the MetaProperty’s category if necessary
 
# Save the changes
 
# Save the changes
 
# Optional configuration:
 
# Optional configuration:
Line 147: Line 127:
 
:: - Format
 
:: - Format
 
:: - Validation flag
 
:: - Validation flag
:: - Numer of index keys
+
:: - Number of index keys
 
:: - Default values
 
:: - Default values
 
:: - Initial values
 
:: - Initial values
  
Step 2: Relate the instance of metaproperty to a metaclass
+
Step 2: Relate the instance of MetaProperty to a MetaClass
 
# Open the control “Class Details”
 
# Open the control “Class Details”
# Set the designated metaclass to the control
+
# Set the designated MetaClass to the control
# Add the metaproperty either by dragging and dropping the metaproperty’s instance onto the metaclass or by clicking the [[File:PlusGreen.png|20px|Add metaproperty button]] button in the menu
+
# Add the MetaProperty either by dragging and dropping the MetaProperty's instance onto the MetaClass or by clicking the [[File:PlusGreen.png|20px|Add MetaProperty button]] button in the menu
# By clicking on the [[File:PlusGreen.png|20px|Add metaproperty button]] button the user has to navigate through the hierarchy to the appropriate metaproperty
+
# By clicking on the [[File:PlusGreen.png|20px|Add MetaProperty button]] button the user has to navigate through the hierarchy to the appropriate MetaProperty
  
 
===Inheritance===
 
===Inheritance===

Revision as of 15:29, 22 January 2013

UBIK® Studio is the server application and administrative tool for creating and modifying UBIK® object models. Transfer your entitiy-relationship-model into UBIK® MetaClasses and MetaProperties and build up necessary relations. It is also the instrument of your choice to manage instances of MetaClasses, edit their property values and create actual relations between instance objects. This section will provide you with more information on the user interface.

File:METACLASS.png
UBIK® metaclass
File:INSTANCE.png
UBIK® instance

Prerequisites

Options

File:USB Options.png
UBIK® Studio settings

Locate and click the menu Edit->Options. Press the Apply or OK Button when you're finished changing the settings, or Cancel if you don't want your changes to be saved. The settings are user-specific and will be stored in your local windows user profile.

In the options you can configure your database connection by the following parameters

  • DataBase: SQL database name
  • DataSource: SQL server instance (specify a server via hostname, UNC, IP, ...)
  • User: SQL user name
  • Password: SQL user password

Take care that the specified SQL user has appropriate permissions on the database.

Additional options are

  • LiveMode: True / False
  • RecordLifeTime: Integer (default -1)


Working area and controls

The main window of UBIK® Studio is split into 3 sections, where each of the 3 areas can hold an arbitrary amount of controls. The arrangement of the controls is user specific.

500px

Each control provides different functionality for object creation/modification. Clicking the header of an empty tab strip in one of these areas with the left mouse button will bring up a context menu, that allows you to create a new tab page hosting one of the following controls:

File:USB Studio.png
UBIK® Studio
File:USB ControlsOverview.png
UBIK® Studio controls
Control Description
Class Browser Navigate through the MetaClasses and instances
Class Details Design MetaClasses
Bulk Editor Create and edit instances
Code Editor Implement customer specific functionality
Relation Editor Relate objects and edit relational data
Object Explorer Display and edit properties of objects (list style)
Object Editor Graphical editor for changing object properties
Workflow Designer Design and assign customer specific workflows



Editing objects in general

Basically there are various ways to edit objects in the UBIK® database, each applicable for both, meta- and content objects. Use the following controls to edit

Property Control
Basic properties “Object Editor”, “Object Explorer”, “Content Editor”
Relational data “Relation Editor”
MetaClass details “Class Details”
Events / object methods “Code Editor"

All controls require a similar workflow

  1. Open the control
  2. Set the object to be edited to the control via dragging the object and dropping it onto the control’s tab
  3. The corresponding edit functionality will be available then


Creating and editing instances

MetaClasses

Create new MetaClass

  1. Create a new MetaClass via „Derive new object“ from the context menu
  2. Open the control “Object Editor”
  3. Set the newly created MetaClass to the control
  4. Set name, description and namespace
  5. Save the changes

Technical implementation

The system creates a new instance of “CUSTOMMETACLASS” and sets the “INHERIT” property to the MetaClass the context menu was opened at. New derivates can be created for any system MetaClasss as “BASECLASS”, “REFERENCE”, “SELECTIVELIST”, … etc.

MetaProperties

Create new MetaProperty

A new MetaProperty can be created and automatically assigned to a MetaClass via the “Create new MetaProperty ” workflow. This workflow guides the user through the creation and configuration procedure of a MetaProperty and relates it to the selected MetaClass .

  1. Start Workflow “System / Create new MetaProperty ” from the context menu
  2. Set at least name, description and data type
  3. Change the MetaProperty ’s category if necessary
  4. Save the changes
  5. Optional configuration:
- Reference
- Selective list
- Unit item
- Format
- Validation flag
- Number of index keys
- Default values
- Initial values

Technical implementation

Without the workflow the user has to complete the following steps:

Step 1: Create new MetaProperty instance

  1. Navigate to the MetaClass “CUSTOMMETAPROPERTY”
  2. Create a new instance
  3. Set at least name, description and data type
  4. Change the MetaProperty’s category if necessary
  5. Save the changes
  6. Optional configuration:
- Reference
- Selective list
- Unit item
- Format
- Validation flag
- Number of index keys
- Default values
- Initial values

Step 2: Relate the instance of MetaProperty to a MetaClass

  1. Open the control “Class Details”
  2. Set the designated MetaClass to the control
  3. Add the MetaProperty either by dragging and dropping the MetaProperty's instance onto the MetaClass or by clicking the Add MetaProperty button button in the menu
  4. By clicking on the Add MetaProperty button button the user has to navigate through the hierarchy to the appropriate MetaProperty

Inheritance


Classification