Client Server Architecture: Difference between revisions

From OCAD 12 Wiki - English
Jump to navigation Jump to search
No edit summary
 
(37 intermediate revisions by 8 users not shown)
Line 1: Line 1:
==Introduction==
[[Category:Client Server Architecture]][[File:Ent40px.PNG|This function is only available in the OCAD 12 Enterprise Edition.|link=https://www.ocad.com/en/products/ocad-for-cartography]]


This manual is written during the development of OCAD server module. All the features in
The '''Client Server''' function is part of the OCAD Enterprise Edition.
the manner described here are subject to change. The manual reflects the functionality of
the current implementation and how to work with it. This is not a final implementation an
my have bugs and functionality faults. The current state is mostly tested with Postgres
SQL – Server 8.2.9 and should work with the version mentioned before or higher. Working
with an Oracle database is not yet supported, this will be a step for the future.


==Installation of the Database==
==Introduction==
To be able to use the OCAD-Server Module you have to install a Postgres SQL – Server.
The version used for development was 8.2.9. You can get Postgres from
[http://www.postgres.org http://www.postgres.org]. The module was developed with a Postgres Server on a Windows
platform. To work with the server module you have to create a user called ocad11 – this is
currently hard coded. As next step you must setup 6 core tables and 3 sequences for the
module and alter the ocad11 user to them.


TODO
With the '''Client Server Architecture (CSA)''' different user can work simultaneously at the same project. The collaboration can be achieved either internally (within a company) or distributed over the internet. A VPN connection is recommended. For fieldwork it is also possible to take a part of the map offline and resync the changes with the CSA project after finishing the fieldwork. Furthermore it is possible to create base projects and inherit them as basis for other projects. Changes on the base projects affects the inherited projects geometry but not the styling.


==Connect Disconnect==
==Tech Specs==
After the basic database setup you can connect to the database. You have to enter the
OCAD Enterprise
information in the below shown mask.


[[File:ServerClient_NewConnection.png]]
===Client===
* Windows XP (Service Pack 3), Windows Vista (Service Pack 1), Windows 7 or Windows 8 (32 or 64 bit).
* Minimum of 512MB Memory
* Minimum of 100MB Harddisk space


For the first connection you have to provide the database protocol – currently only
===Server===
Postgres is supported. For a connection although the host, the database name, the port
* Minimum of 256 MB of physical RAM
and the port must be provided. The user name for the database currently must be ocad11
* Minimum of 2 GB of available hard drive space
as mentioned in the setup selection and a Password.
* System: Windows (Server 2003, 2008) or Linux
* PostgreSQL 9.1 or newer


For the project user you must provide the data as inserted during the installation for the
==Contents==
user name and the password. When you are connected the currently database projects
'''[[Installation of the Client Server Architecture]]'''<br />
get loaded and your userident (e.g. Illustration 1: connection and project settings the
'''[[Create a New CSA Project]]'''<br />
userident is 5002). In the current development stage none of the provided settings are
'''[[First Loading of CSA Project]]'''<br />
saved! The hard coded default settings shown above. The database password is ocaddb.
'''[[Working on a CSA Project]]'''<br />
 
'''[[Raster Background Maps in CSA]]'''<br />
The “auto reload changes” re-fetches all loaded objects when they changed in the db.
'''[[Rights Management]]'''<br />
 
'''[[Database Connected Data in CSA]]'''
==Create new Project==
After the basic setup you can create a new map project in the database. To do so click in
the connection window on new project. The following information have to be provided for
the project creation.
 
[[File:ServerClient_CreateNewProject.PNG]]
 
As shown in Illustration 2 a project name and a unique project ident must be supplied.
When you enter a project name a project ident will be created of the name by default but
you can change it the way you like. A map scale and a grid distance should be provided all
other parameters are optional. When clicking on the create button the new project will be
created and should shown up in the database window.
 
 
==The database module tool bar==
 
The server module can be accessed through its toolbar
 
[[File:ServerClient_Toolbar.PNG]]
 
[[File:ServerClient_ConnectDisconnect.PNG]] Database button. You can associate a project, connect/disconnect a database
[[File:ServerClient_ImportMaps.PNG]] Adds one or more selected objects to the database project. Alt+Click: adds the Symbol descriptions to the database. Alt + Shift + Click: adds all Objects from the file to the database
[[File:ServerClient_DeleteObjectInDatabase.PNG]]] Removes one or more selected objects from the database project
[[File:ServerClient_GetObjectsFromCurrentView.PNG]] Get all objects from current zoomed view of the work window. Alt + Click: Show the Objects dialog
[[File:ServerClient_CheckOutSelectedObjects.PNG]] Check out one or more selected objects. After a checkout you can edit them
[[File:ServerClient_CheckInSelectedObjects.PNG]] Check in one or more selected objects.
[[File:ServerClient_ShowCheckedOutObjects.PNG]] Show window checked out objects
[[File:ServerClient_DatabaseUndo.PNG]] Do an undo of the last action. Alt + Click: Show the change history
[[File:ServerClient_DatabaseRedo.PNG]] Do a redo of the last undo
[[File:ServerClient_GenerateMapPreview.PNG]] Generate a preview of the complete database project
[[File:ServerClient_SaveForOfflineWork.PNG]] Save currently loaded project for offline work.
[[File:ServerClient_DoDatabaseMaintenance.PNG]] Do maintenance the Project. Remove all redo and undo saves. Do some database optimization.
 
==Draw with database connection==
 
To draw objects directly into the database you have to create a database project first. As
next step load a file with a symbol set. Now the database project can be associated with
the file. Therefore open the database window, select a project from the projects grid and
click OK.
 
Every new drawn object is now immediately saved into the database project. The objects
get automatically checked out too for future editing.
 
All objects checked out can be edited all others only only can be viewed.
 
Every object inserted or changed is saved as undo in the database. You can click undo
button in the database toolbar to revise the last change or insert and click on redo to redo
the last change.
 
 
==Add objects to the database==
 
Add objects to the database is only needed to import objects. For importing one or more
selected objects the following steps needs to be done.
# load the file with the objects
# associate the file with a project from the projects grid
# select one or more objects
# click the add objects to the database button
# the objects will be added to the database
All objects associated with the database will only be saved in the database. The same
applies for object changes too.
 
 
==Add all objects to the database==
 
To import all objects from a file into the database the following steps needs to be done:
# load the file with the objects
# associated the file with a project from the projects grid
# hold down the shift+alt key and click on the add objects button
# all objects from the file with the status normal or hidden will be imported in the
database now.
All objects from the file are imported in the database now. For now all changes will only be
saved in the database.
 
 
==Add symbol descriptions to the database==
 
To import the symbol descriptions into the database the following steps needs be done:
# load the file with the objects
# associated the file with a project from the projects grid
# hold down the alt key and click on the add objects button
# all symbol descriptions from the file will be imported into the database
 
[[File:Hint.jpg]] '''Important note''': In the current implementation the symbol description depends on the
symbol number. Only '''ONE''' Symbol table is used no duplicate symbol numbers are
prevented and failure will occur if you try to import duplicate symbol numbers!
 
 
==Remove objects from the Database==
 
To remove objects from the database not simple delete them with the delete key. By hitting
the delete key the object is only removed from the current view. Loading the project again
the object will show up as before. To remove an object from the database the object must
be checked out. After a successful checkout objects can be remove from the database
with a click.+
 
 
==Get all from current view==
 
To get all objects from the current loaded view click on the button. To get the objects
window hold down the alt – key and click on the button.
 
 
==Check out element(s)==
 
To check out elements for editing from the database select the objects to be check out and
click on the button. If no problem occurs during the check out nothing seems to be done.
On any error a message will appear describing the error.
 
 
==Check in element(s)==
To check in elements you finished editing with select them and click on the check in
button. Now other users are able to check the elements out and edit them. To check in all
your objects checked out click on the “show objects checked out” button and there click
the “check in all” button all.
 
 
==Objects dialog==
 
Hold down the alt key and Click on the “get objects from current view” button to get the
objects window.
 
[[File:ServerClient_ViewObjectInDB.PNG]]
As shown in Illustration 4 the window lists all objects saved in the database. Here can be
chosen to load all objects, get all from the current view of the work sheet or to get a
selected object. It is possible that not all objects are shown therefore click the reload
button. All objects from the database are re-fetch To get all objects from the database click
on the get all button. Depending on how many objects are save in the database this may
takes a long time. The objects count is show in braces in the get all button.
 
 
==Show checked out dialog==
 
With this dialog you can show all objects checked out by any user of the project. Only the
objects you have currently loaded are shown in the list.
 
[[File:ServerClient_ServerShowsCheckedOut.PNG]]
 
You can leave the window open an you will see all check in and check out by any user
working with the project. By clicking on of the rows in the list OCAD will jump to the
selected object in the current project. If you deselect the reload functionality you can click
the reload button to reload the window manually otherwise the reload takes place every 3
seconds. The description column show you the symbol description of the object is drawn
with. The button “Check in all” checks in all your objects you have checked out for editing.
 
 
==Generate project preview==
 
With this functionality a raster map preview can be created.
 
[[File:ServerClient_GeneratePreview.PNG]]
 
To generate a raster map preview the project must be drawn with real world coordinates.
As next step you have to set the pixel size per meter for the preview. By clicking OK the
generation process will start. First all objects from the database will be loaded into the
current worksheet. This step may take a longer time depends how many objects are in the
project. Afterwards the preview is generated and saved into the database. Now every time
you load the project from the database the preview will be loaded first. This may help you
to find the correct view in the file and you have to load only the objects you need to work
with.
 
 
==Save for offline work==
 
It is possible to save your work to do some field work without any database connection.
Click on the “Save for offline work“ - button and save your work. After you saved it the
database project will be closed. To work with the file open it. Change every thing you want.
Draw normal as you always done with OCAD. When you are back again. Open the
database dialog choose the project you have synced with an click OK. You will be asked if
you want to sync the Project with the database. If the project matches your “saved for
offline work” the sync will be done otherwise it is not possible to sync the file with the
project.
 
 
==Do maintenance==
 
The button “do maintenance” can be used to optimize the database. All your undo and
redo saves get trashed and some database optimization will be done with this button.
 
 
==Object change history==
 
The object change history show up all the changes you have done within the project. All
the changes listed with your name can be revised by clicking the undo button. All other
changes can only be viewed in this list.
 
[[File:ServerClient_ChangeHistory.PNG]]
 
On the tab object inserts you can see all objects inserted in the project. Currently this
window is only a tabular change history and nothing else can be done with it.
 
 
==Get Objects from Current View==
ToDo
 
==Import a Map from the Connected Server==
ToDo
 
==Delete Object in Database==
ToDo
 
==Check Out Selected Objects==
ToDo
 
==Check in Selected Objects==
ToDo
 
==Show Checked Out Objects==
ToDo
 
==Database Undo==
ToDo
 
==Database Redo==
ToDo
 
==Generate Map Preview==
ToDo
 
==Do Database Maintenance==
ToDo
 
==Manage Server Bookmarks==
ToDo
 
==Show Project Information==
ToDo




----
Back to [[Main Page]]


Previous Chapter: [[Course Setting for Orienteering]]
Previous Chapter: [[Course Setting for Orienteering]]


Next Chapter: [[OCAD Internet Map]]
Next Chapter: [[OCAD Internet Map]]
Back to [[Main Page]]

Latest revision as of 10:18, 6 August 2015

This function is only available in the OCAD 12 Enterprise Edition.

The Client Server function is part of the OCAD Enterprise Edition.

Introduction

With the Client Server Architecture (CSA) different user can work simultaneously at the same project. The collaboration can be achieved either internally (within a company) or distributed over the internet. A VPN connection is recommended. For fieldwork it is also possible to take a part of the map offline and resync the changes with the CSA project after finishing the fieldwork. Furthermore it is possible to create base projects and inherit them as basis for other projects. Changes on the base projects affects the inherited projects geometry but not the styling.

Tech Specs

OCAD Enterprise

Client

  • Windows XP (Service Pack 3), Windows Vista (Service Pack 1), Windows 7 or Windows 8 (32 or 64 bit).
  • Minimum of 512MB Memory
  • Minimum of 100MB Harddisk space

Server

  • Minimum of 256 MB of physical RAM
  • Minimum of 2 GB of available hard drive space
  • System: Windows (Server 2003, 2008) or Linux
  • PostgreSQL 9.1 or newer

Contents

Installation of the Client Server Architecture
Create a New CSA Project
First Loading of CSA Project
Working on a CSA Project
Raster Background Maps in CSA
Rights Management
Database Connected Data in CSA



Back to Main Page

Previous Chapter: Course Setting for Orienteering

Next Chapter: OCAD Internet Map