User Tools

Site Tools


magik-demo:developer:magik-business-logic

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
magik-demo:developer:magik-business-logic [2013/07/16 14:56]
alex [Overall Business Logic]
magik-demo:developer:magik-business-logic [2017/07/06 15:24] (current)
Line 1: Line 1:
-{{:​magik-demo:​magik-logo.jpg?900|}}+{{:​magik-demo:​magik_logo.png?nolink&​500|}}
  
 ====== MAGIK Business Logic ====== ====== MAGIK Business Logic ======
  
-{{ :​magik-demo:​developer:​bl.png?​nolink&​1000 |}}+This image is the Business Logic that stays backward MAGIK.  
 + 
 +{{ :​magik-demo:​developer:​bl2.png?​nolink&​800 |}} 
 + 
 +For a detailed information and GUI implementation of the pages, please follow the link underlying:
  
-Most important pages of the Business Logic are explained in this page, please click on the page that you want to view: 
-   * [[magik-demo:​developer:​magik-business-logic#​index.jsp | index.jsp]] 
    * [[magik-demo:​developer:​magik-business-logic#​schema/​index.jsp | schema/​index.jsp]]    * [[magik-demo:​developer:​magik-business-logic#​schema/​index.jsp | schema/​index.jsp]]
    * [[magik-demo:​developer:​magik-business-logic#​schema/​edit.jsp | schema/​edit.jsp]]    * [[magik-demo:​developer:​magik-business-logic#​schema/​edit.jsp | schema/​edit.jsp]]
Line 17: Line 19:
    * [[magik-demo:​developer:​magik-business-logic#​constraints/​editQuery.jsp | constraints/​editQuery.jsp]]    * [[magik-demo:​developer:​magik-business-logic#​constraints/​editQuery.jsp | constraints/​editQuery.jsp]]
  
-===== index.jsp ===== 
  
-{{ :​magik-demo:​developer:​welcome.png?​550 |}} 
- 
-This is the welcome page of MAGIK web application,​ containing the description of the application. When user clicks on "Start Demo", it will be directed to [[#​schema/​index.jsp|schema page]]. 
- 
-[[magik-demo:​developer:​magik-business-logic|Back to Top]] | [[magik-demo:​start|Back to Home Page]] 
 ===== schema/​index.jsp ===== ===== schema/​index.jsp =====
  
Line 53: Line 49:
 ==== Create a new virtual schema ==== ==== Create a new virtual schema ====
  
-{{ :​magik-demo:​developer:​showrelation.png?​nolink&​600 |}}+{{ :​magik-demo:​developer:​schemaempty.png?​nolink&​500 |}}
  
   - First of all user has to set the **Schema name**   - First of all user has to set the **Schema name**
Line 61: Line 57:
 ==== Edit a virtual schema ==== ==== Edit a virtual schema ====
  
-{{ :​magik-demo:​developer:​editrelationfilled.png?​nolink&​600 |}}+{{ :​magik-demo:​developer:​showrelation.png?​nolink&​600 |}}
  
 The following are the details of each possible action in this page: The following are the details of each possible action in this page:
Line 78: Line 74:
   - **Create** a new relation   - **Create** a new relation
   - **Edit** a relation   - **Edit** a relation
-==== Create new relation ==== 
-{{ :​magik-demo:​developer:​editrelationnew.png?​nolink&​600 |}} 
  
-  - In order to **create a new relation**, user has to set //Relation Name//, //Keys// and //Attribute Names// and after that press **"​Save"​** +{{ :​magik-demo:​developer:​editrelationfilled.png?​nolink&​700 |}}
-  - If the user press **"​Cancel"​**,​ the relation will be not created and it will be directed to [[#​schema/​index.jsp|schema selection page]] (''​schema/​index.jsp''​) +
-==== Edit a relation ==== +
- +
-{{ :​magik-demo:​developer:​editrelfilled.png?​nolink&​700 |}}+
  
 The following are the details of each possible action in this page: The following are the details of each possible action in this page:
  
-  - If the user click on **"​Cancel"​**,​ it will be directed to the [[#schema/edit.jsp|schema page]] ​and all the modification will be discarded.+  ​- In order to **create a new relation**, user has to set //Relation Name//, //Keys// and //Attribute Names// and after that press **"​Save"​** 
 +  ​- If the user press **"​Cancel"​**, ​the relation will be not created and it will be directed to [[#schema/index.jsp|schema ​selection ​page]] ​(''​schema/​index.jsp''​)
   - If the user click on **"​Save"​**,​ all the modifications done will be stored and it will be directed to the [[#​schema/​edit.jsp|relation page]] (''​schema/​edit.jsp''​) ​   - If the user click on **"​Save"​**,​ all the modifications done will be stored and it will be directed to the [[#​schema/​edit.jsp|relation page]] (''​schema/​edit.jsp''​) ​
  
Line 95: Line 86:
 ===== schema/​editConnection.jsp ===== ===== schema/​editConnection.jsp =====
  
-This page is used for 2 operations:​ +This page is used for **Create** a new connection to a remote database
- +
-  - **Create** a new connection to a remote database +
-  - **Edit** a connection to a remote database +
- +
-==== Create a new connection to a remote database ====+
  
 If a user want to create a new connection to a remote database it has to fill this page. If a user want to create a new connection to a remote database it has to fill this page.
  
-{{ :​magik-demo:​developer:​dbconnnew.png?​nolink&​680 |}}+{{ :​magik-demo:​developer:​dbconn.png?​nolink&​680 |}}
  
   - If the user press **Connect** the information inside the form will be saved and, if correct, the new connection can be available in [[#​schema/​edit.jsp|schema page]] with also a notice of this insertion.   - If the user press **Connect** the information inside the form will be saved and, if correct, the new connection can be available in [[#​schema/​edit.jsp|schema page]] with also a notice of this insertion.
   - If the user press **Cancel** the information inside the form will be discard and it will be directed to [[#​schema/​edit.jsp|schema page]].   - If the user press **Cancel** the information inside the form will be discard and it will be directed to [[#​schema/​edit.jsp|schema page]].
  
-==== Edit a connection to a remote database ==== 
  
-{{ :​magik-demo:​developer:​dbconn.png?​nolink&​700 |}} 
- 
-The user will see the information that MAGIK has stored and modifying them if necessary. 
- 
-The following are the details of each possible action in this page: 
- 
-  - If the user press **Connect** the information inside the form will be updated and, if correct, the editted connection can be available in [[#​schema/​edit.jsp|schema page]] with also a notice of connection done it will be displayed. 
-  - If the user press **Cancel** the information inside the form will be discard (the information remain the same as before the modification) and it will be directed to [[#​schema/​edit.jsp|schema page]]. ​ 
- 
-[[magik-demo:​developer:​magik-business-logic|Back to Top]] | [[magik-demo:​start|Back to Home Page]] 
 ===== constraints/​index.jsp ===== ===== constraints/​index.jsp =====
  
Line 166: Line 141:
   * If the query is **complete** in //REMOTE// mode, it will be displayed in the bottom of the page the result with, if there are, data related to the query   * If the query is **complete** in //REMOTE// mode, it will be displayed in the bottom of the page the result with, if there are, data related to the query
 {{ :​magik-demo:​developer:​completeremote.png?​nolink&​600 |}} {{ :​magik-demo:​developer:​completeremote.png?​nolink&​600 |}}
-  ​* If the query is **incomplete**,​ it will be displayed in the bottom of the page which table are incomplete and if there are, the most specific generalization (MSG) query and the least specific specialization queries (LSS) {{ :​magik-demo:​developer:​screen_shot_2013-07-11_at_3.27.06_pm.png?​nolink&​600 |}} In the page is also possible:+By pressing on **View data output comparison** MAGIK show how many entries are available for the query  
 +  ​* If the query is **incomplete**,​ it will be displayed in the bottom of the page which table are incomplete and if there are, the most specific generalization (MSG) query and the least specific specialization queries (LSS) {{ :​magik-demo:​developer:​notcompletereal.png?​nolink&​500 |}} In the page is also possible:
      * **Add TC-statements** suggested to the other of the schema. The user has just to select which ones he wants to add and press "Add selected TC-statement(s)"​ button      * **Add TC-statements** suggested to the other of the schema. The user has just to select which ones he wants to add and press "Add selected TC-statement(s)"​ button
      * **Add approximize query** given by MAGIK to the other queries already inside the schema. The user has just to select which ones he wants to add and press "Add selected query(ies)"​      * **Add approximize query** given by MAGIK to the other queries already inside the schema. The user has just to select which ones he wants to add and press "Add selected query(ies)"​
      * **Recalculate MSG** in order to obtain, if it possible, more MSG queries that has depth at most the depth of the original query plus the number set in the textbox on the left side of the button      * **Recalculate MSG** in order to obtain, if it possible, more MSG queries that has depth at most the depth of the original query plus the number set in the textbox on the left side of the button
 +     * Also in //REMOTE// mode is possible to see how many entries there are for each query. Also is possible view the data output by clicking on **View data output comparison**
 +{{ :​magik-demo:​developer:​dataoutput.png?​nolink&​700 |}}
 [[magik-demo:​developer:​magik-business-logic|Back to Top]] | [[magik-demo:​start|Back to Home Page]] [[magik-demo:​developer:​magik-business-logic|Back to Top]] | [[magik-demo:​start|Back to Home Page]]
 ===== constraints/​editFK.jsp ===== ===== constraints/​editFK.jsp =====
Line 189: Line 167:
 [[magik-demo:​developer:​magik-business-logic|Back to Top]] | [[magik-demo:​start|Back to Home Page]] [[magik-demo:​developer:​magik-business-logic|Back to Top]] | [[magik-demo:​start|Back to Home Page]]
 ===== constraints/​editFDC.jsp ===== ===== constraints/​editFDC.jsp =====
 +For **REMOTE** schemas, one needs to edit schema database schema using favorite database management program. For example, to create a finite domain constrain using ''​ENUM''​ construct in PostgresSQL database one can execute the following code:
 +<code sql>
 +CREATE TYPE school.type as enum ('​primary','​middle'​);​
 +</​code>​
 +In this way new data type is created. Then defining attribute name is some table to be of this type, create Finite Domain Constraint on that attribute.
  
 <note important>​Page available only for **VIRTUAL** schemas</​note>​ <note important>​Page available only for **VIRTUAL** schemas</​note>​
 +
 +
  
 {{ :​magik-demo:​developer:​showfdc.png?​nolink&​650 |}} {{ :​magik-demo:​developer:​showfdc.png?​nolink&​650 |}}
magik-demo/developer/magik-business-logic.1373979411.txt.gz · Last modified: 2017/07/06 15:24 (external edit)