Internals

For users that need more detailed information about the software including database design etc.

Subsections of Internals

Database

Organisation of the data

The main data are kept in the table Exsiccata. Editors are listed in the table ExsiccataEditor, examples in the table ExsiccataExample and geographicla regions in the table ExsiccataRegion.

Descriptions of tables and columns

Version



Version

For information about the version of the client application choose Help, Info…

The current version in the example above is 4.0.0 for the client and 2.1.13 for the database

 

 

License



License

This manual is copyrighted work licensed under a Creative Commons License.

All material in this manual is the property of the contributing authors and fully copyrighted. By choosing this way of publication, the contributing authors have agreed to license the work under a Creative Commons License permitting reproduction, distribution, and derivative works, requiring attribution, notice, and share-alike, and prohibiting commercial use.

 

For information about the license of the client software choose Help, Info…

The client software is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation.

The client software is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License (GPL) for more details.

Data Access

Access to the data

To get access to the data, you have to fulfill several requirements. In DiversityCollection, you must be a member of one of the user groups. You can only access data, which is listed in the projects you have access to. For external users data may be blocked by entries in the data withholding reasons or due to a data embargo.

   

Subsections of Data Access

Login Administration



To administrate the logins on the database server, their permissions and roles respectively as well as access to projects choose Administration - Database - Logins ... from the menu. A window will open as shown below.

To set the website where information about details concerning the General Data Protection Regulation are shown, click on the button.   

To see the current activity on the server click on the button. A window as shown below will open listing all user related processes on the server.

To administrate the  linked servers, click on the button.   

To send a feedback click on the button.   

 

Statistics

To see the activity of a login click on the button. A window will open as shown below listing all databases and tables together with the time span (From - To) and the number of data sets where any activity of the current login has been found.

 

Creation of login

To create a new login click on the button. A window will open as shown below. A login that should be able to create new logins must to be a System administrator.

Here you can enter the name of the new login, the password and the information about the user which will be stored in a DiversityAgents database. You may either create a new entry in this database or select an existing one: Click on the button to search for a name in the database (see below).

 

Copy a login

To copy a login including all permissions etc. into a new login, select the original login in the list and click on the button.

 

Edit a login

To edit the access for a login on the server select the login in the list. If a login should be disabled , uncheck the enabled checkbox (see below).

All databases on the server will be listed with the current database showing a [yellow background]{style=“background-color: #FFFF00”}. The databases where the login has [no access] will be listed in [gray] while the databases accessible for a login are black.

 

Access of a login to a database

To allow the access to a database select the database from the list and choose database as shown below.

The state and date of the privacy consent according to the General Data Protection Regulation is shown in dependence of the selected database.

Roles of a login in a database

Use the > and < buttons to add or remove roles for the login in the database (see below).

To see the detailed permissions of a role, select it in the list of [Available] roles and click on the button. A window as shown below will open listing all objects in the database the role has permissions for (see below).

As a database owner you can edit the permissions and role memberships with the and buttons. Please keep in mind that any change of the permissions may cause serious troubles and should only be used for testing and bug fixing. The final setting of the permissions should be performed by a proper update script of the database. For every action you will get the code that is to be included in an update script (see below).

 

Projects for a login in a database

Depending on the database you can edit the list of projects accessible for a login (see below). Projects are related to the module DiversityProjects. To get additional information about a project select it in the list and click on the button. 

Starting with database version 02.05.35 next to the projects with [full access]{style=“color: #008000; font-weight: bold”}, a second list provides projects with [Read Only] access (see image below). Use the and buttons to move projects between [Accessible]{style=“color: #008000; font-weight: bold”} and [Read Only]{style=“color: #808080; font-weight: bold”}. If a project is set on [Read Only] a user can still add annotations. Starting with version 4.3.219 a project as a whole can be locked with the restriction of access to read only. For more details see chapter Project administration.

To load additional projects click on the Load projects button. A window will open as shown below. Projects already in the database will be listed in [green], [missing projects in red]{style=“color: #FF0000”} (see below). Check all projects you need in your database and click the Start download button.

To see an overview of the users within a project select one of the project in either list and click on the corresponding button . A window as shown below will open listing all users and their roles with access to the selected project.

To add or remove a role for a login, select the corresponding field and choose or from the context menu (see below).

 

Settings of a login in a database

Depending on the database you can edit the settings of a login as shown below.

If you wish to use settings already defined for another login, click on the Search template button. A window (see below) will open where you can choose among the settings defined for logins in the database.

 

Overview for a login

If you want to see an overview of all permissions and project for a login, click on the button. A window as shown below will open. It lists all modules and their databases, the roles, accessible projects and read only projects for a login. 

To copy the permissions and projects of the current login to another login, select the login where the settings should be copied to from the list at the base of the window and click on the button to copy the settings for all databases or the button to copy the settings of the selected database into this login. 

 

Overview for a database

If you see an overview of all user and roles in a database, click on the button. A window a shown below will open. It lists all user, roles and projects in the database. 

To remove a user, select it in the list and click on the button. 

 

Correction of logins

If you select one of the databases, at the base a button may appear. This indicates that there are windows logins listed where the name of the login does not match the logins of the server. This may happen if e.g. a database was moved from one server to another. To correct this, click on the button. A list of deviating logins will be shown, that can be corrected automatically.

If logins with the same name but different server are found, one of them has to be deleted to make the correction possible. You will get a list where you can select those that should be removed.

Select the duplicate logins that should be removed and click OK.

To find users within the database that have no valid login, click on the button. A window as shown below will open, listing the users without a login. Select those that should be removed and click OK. This will include a removal from the collection managers.

 

Update

Update of database and client

If either the database or the client needs to be updated, the menu will show an additional entry: Update.

Database update

To update the database, choose Update -> Update database … from the menu. See chapter Database update for details.

Client update

To update the client, choose Update -> Update client … and download the lastest version of the client. ee chapter Update client for details.

Subsections of Update

Update Client



Update of the client software

Replace the files and folders of your installation of DiversityCollection with the files you received by e-mail or downloaded from the DiversityWorkbench portal. The database will not be influenced by this replacement. After starting the new software you need to transfer the settings of the previous version. When you start the program and connect to a database, the program will check if it is compatible with the database or if the database needs an update. In any of these cases an update entry in the menu will appear. If a new version of the client is available, this menu will contain an update client … entry. Click on it to open the webpage where you may download the client as shown below.

 

Update Database

Update database to current version

If you are the owner of the database (Database role = dbo) and the database needs to be updated, the menu will contain an update database … entry. Select this entry to open a window as shown below to run the provided update scripts, delivered with the client software. These scripts need to run consecutively, so e.g. to update from version 2.5.1 to 2.5.4 you either have to run the script DiversityCollectionUpdate_020501_To_020504 or the scripts DiversityCollectionUpdate_020501_To_020502, DiversityCollectionUpdate_020502_To_020503 and DiversityCollectionUpdate_020503_To_020504. The program will guide you through these steps and check for the scripts. All you need to do is click the Start update button. 

Update of all databases on a server

If you are database owner and have a windows login to the database server (user=dbo), you have the option to update all DiversityCollection databases on this server by starting the application with command line parameters. Open a command line window, navigate to the program directory and start DiversityCollection with the keyword “UpdateDatebase”, the server name (or IP address) and the port number:

DiversityCollection.exe UpdateDatabase 127.0.0.1 5432

The program will connect to the server and update all available databases to the current version. If you want to exclude dedicated databases from update, create a text file named “ExcludeDb.txt” that contains the excluded database names - each name in a separate line - and locate it in the resources directory. The update will be done in the background without opening a program window. When the update processing is finished, an overview of the performed actions will be written into the protocol file “Updatereport.log” in directory resources/Updates.

Errorlog

If any error messages show up while working with the application, you can find further details concerning the part of the application where the error occurred and the parameters involved in the file e.g. DiversityCollectionError.log in the Module DiversityCollection located in your resources directory.

To open the errorlog, choose Help - ErrorLog from the menu. A window will open showing the content of the errolog. By default the errorlog will at program start. You can keep the errorlog if needed by chossing Help - Errorlog - Keep error log from the menu. A button will appear that allows you to clear the error log manually: Help - Clear ErrorLog.

Module connections

Connections between the modules of the Diversity Workbench

The DiversityWorkbench is a set of components for building and managing biodiversity information, each of which focuses on a particular domain. DiversityAgents is referred by several modules. To scan for references from these modules on data in DiversityAgents choose Data - Scan modules - from the menu (see image below).

With these options the program will scan all sources of the selected module as listed in the connections for references to the current agent. After selecting an agent in the tree, the sources of the selected modules together with the linked data will be listed as shown below.

Select a link to see a summary of the linked data (see below).

To get further information about an item click on the button. If so far the path to the respective application has not been set, you will get a corresponding message (see below).

Click on the button to set the path to the application (see below).

By default the path to the application is C:\Program Files (x86)\DiversityWorkbench\Diversity...\Diversity.…exe as shown.

Resources

The resources directory is set via the menu (Administration - Resources).

There are 3 possibilities for the resources directory:

  • Select any directory you have read/write access (User defined)
  • Select the "Home" directory of the user
  • Select the "My Documents" directory of the user

The default is set to Home. This directory will contain all files the user need access to (see image below).

Certain directories are hidden (Query) and are handled by the software i.e. the content should not be changed by the user. The other folders are generated by the software if missing, e.g. Export for any exports (see below).