Skip to content

ManunEbo/Intercars-DB-GUI

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 

Repository files navigation

Intercars DB GUI

Intercars background

Intercars Leicester is an ambitious car dealership based in Leicester.
They are very active in auctions in the east and west midlands.
They have basic data collection techniques which could be significantly
improved to enable them to gain greater insight from the data they collect
which would in turn drive profitable decisions.

The project

Intercars Leicester were approached with the concept of migrating all their
data which at the time was kept in paper form into an on premises MySQL database
with a dedicated server laptop which could be connected to from any other laptops
via ssh or via a GUI.

This is the second part of this discontinued project. Herein is the GUI development
with Python and Kivy interacting with the MySQL database.

The project plan

The objective of this project is to develop a graphical user interface, GUI, that would
enable non technical staff to interact with the database to accomplish the following:

  • Data entry: This simplifies data entry such that
    you don't have to know sql to enter data into the database.
    The hard work is done in the background using python and sql
  • Data retrieval and summaries: Users will be able to retrieve tabulated data
    and to view pre-defined charts and graphs of useful metrics
    without knowing Python or sql programming.

All of this is made possible using python and sql in the background.

KV code

The GUI frontend is designed with Kivy.
The KV files are the codes for the various screens/pages that the user interacts with.
These screens are then linked with the python codes in the background,
the backend, which either pulls data or displays data to and fro.

Python code

The python code consists of classes and functions which are designed to interact with the GUI
via the .kv files and the database.
Firstly, the python code pulls data from the GUI and performs any transformation necessary
then sends it to the database.

The sql codes used for inserting data into the database, work with the procedures and triggers
in the database i.e. they are coded with the procedures and triggers in mind;
such that when the data reaches the database the procedures and triggers transport
the ready data to their final destination.

For data retrieval, python codes are used to pull raw tabulated data and summaries from the database
then it displays the outputs on the GUI via tabs for viewing. Example illustrations can be found on 2. Sample GUI Illustrations

Unfortunately, the requirements.txt for this project is missing i.e. unretrievable.
However, it included:

  • python 3.8
  • python-mysql-connector
  • sqlalchemy
  • matplotlib
  • Numpy
  • Pandas
  • Kivy
  • Kivymd
  • MySQL

Additional remarks

Since the project was discontinued and Intercars did not object to the publishing of
this body of work to illustrate my capabilities, in additions to me owning this project,
I have decided to publish it publicly.

Note: This project is part 2 of the discontinued project.
You can find the first part, Intercars-DB here Intercars-DB

The whole project was certainly an enjoyable experience: I learned a great deal, in a very short period of time.

About

This is the GUI project to accompany the Intercars-DB project. The aim was to make the DB user-friendly for non technical staff.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors