KKSys Database Definition Documentation  

Items under this heading give a full explanation of the KKFU KKSys database structure, detailing all data-entities right down to field-level definitions. The final article in the set covers the "Cloud API", which details how external developers can access the KKSys database.

This document gives a full listing of all the data-entities in the KKSys database. The purpose and use of all elements of the data schema is included, including descriptions of the purpose and use of fields, constraints and relationships between data-entities.

KKSys is a relational database with 25 main data-entities which are actually in-use. These include entities such as Societies and Farmers, which hold core data about the societies and farmers KKFU work with, and also "child-entities" such as FarmerDeliveries which list the quantities of cocoa produced by each farmer. A key starting point to understanding a relational database is to see that each entity can link to many other entities. For example one Society can link to many Farmers, one Farmer can link to many FarmerDeliveries. Each piece of data is a "record", an atom of data, which can have linkages to many other parts of the database. Through these linkages it is possible to find the total FarmerDeliveries for a Society, or the total FarmerDeliveries for a year, or any other period of time.

Staff can use the Orixa App, or any application which accesses the KKSys API to add, edit or view data in the database. Multiple users can access and edit data simultaneously.

Scripts can be written to view complex reports showing data in the database, using SQL, a global-standard programming language. Many reports have been added to KKSys, and KKFU staff are capable of extending and editing all these reports.

Data can be imported and exported into the database using orixa tools. Data needs to be well formatted in CSV standard prior to importation. 

The use and purpose of sections of data-entities and child-entities are detailed in individual sections of this help document below, please go to the linked articles for detailed, step by step description of each data-entity

          1. Society related database elements

          2. Farmer related database elements

          3. Questionnaire related database elements

          4. KKFU related database elements

          5. Summaries and Conclusions about Database definitions

          6. The cloud API, its standards and operation

It is also important to understand the built-in data entities within Orixa, such as Images, Comments, FileNotes, Addresses, EmailAddresses and Phones.  Also, Orixa's built in list and ordering entities: Types and Status.

Useful articles relating to these entities is linked here: 

Orixa's built-in data-entities: Comments, FileNotes, Images, Addresses, Email Addresses and Phones

System Tables: Types and Status

The "Types" Edit Form

The "Status" Edit Form

Reviewing these documents will give a good understanding of how multi-purpose data can be managed in Orixa.

If you do not understand how to use the database modeller tools present within Orixa Apps, please review the general introduction document here

System Database Modeller

How to access the modeller and what it will show

The whole database definition can be reviewed and worked on within the KKSys via the "System" "Show DB Modeller" menu, as shown in the image below.

Accessing the System Modeller  

From the "DB Modeller" the whole of the KKFU Database will be displayed, as shown below

KKSys main entities, displayed in the DM Modeller, showing the main data-entities, with the entities relating to farmers shown in green, societies shown in orange and questionnaires shown in purple.