You are on page 1of 3

Project Databases 2122: Assignment week 3

For this assignment, new menu options and screens will have to be developed. These are all part of
the ‘Drinks’ section of the application. Please try to integrate them into the existing application as
best as you can.

Divide variants A, B, C, D between the members of your group:

Groups of two people create variants A and B.


Groups of three people create variants A through C.
Groups of four people create variants A through D.

Variant A: Drinks supplies / Stock management


With this screen, the user can manage the inventory of drinks that are sold.

In a combined query, carry out the following:

• Select all drinks and sort them by name.

• Also in this query, include the total number of times the drink has been sold. This information
should come from the database table that is managed by the cash register.

For all drinks with a stock amount lower than 10, display either the text or a custom icon
representing 'Stock nearly depleted' and for an amount greater or equal to 10 display the text or an
icon representing 'Stock sufficient'.

Display the result on the screen after clicking on the ‘Drinks Supplies’ menu item in a DataGridView
or ListView.

Finally, make sure the user is able to add new drinks, delete drinks (if they have not yet been sold),
and to select drinks and then change the name, the price, the type (alcoholic or not) and the
stock/amount of the drink.

Variant B: Cash register


The cash register consists of several sub-parts. In the same screen:

• Display a list of students.

• Display a list of drinks (including name, price, amount in stock and whether it is alcoholic or
not).

• Make it possible to select exactly one student and one drink in these lists.

When both a student and a drink are selected, the amount to be paid is displayed and users will be
able to click on Checkout.

When the Checkout button is clicked, the sale is then written to the database and the screen will
refresh in such a way that you will be able to select a new student and drink and checkout again.
Variant C: Revenue report
Being able to generate a revenue report can be useful. You will have to develop an interface with two
selection filters to that end. Start date and end date. This start date and end date should be indicated
in the interface (e.g. using a MonthCalendar Control or a DateTimePicker of which you will only use
and display the date).

Make sure that the following information is displayed in labels after you have selected the data:

• Sales (total number of drinks sold);


• Turnover (total [sales * sales price of those drinks]); Formatted properly as currency.
• Number of customers (students who purchased at least one drink).

Make sure that the user can only submit a valid date period, e.g. not 'from yesterday to the day
before yesterday'. Users will also not be able to select dates in the future, as no sales will have been
logged on those dates.

Variant D. VAT calculation


As you might know, anyone that sells drinks in the Netherlands is required to pay the VAT amount
that has been charged to the Tax and Customs Administration.

At the end of each quarter, the application must be able to show clearly how much VAT is owed.

For this purpose, create a screen that calculates the following after the user has selected a specific
quarter:
Select year: << year selection >>

Select quarter (Q1, Q2, Q3, Q4): << quarter selection >>

Quarter runs from: _________________ to: _____________________

Total VAT (low tariff, 6%) amount payable: ____________________

Total VAT (high tariff, 21%) amount payable: ____________________

Total VAT amount payable: ____________________ (total of two amounts


above).

Things to note:

• All non-alcoholic drinks are taxed at the low tariff (and all alcoholic drinks are taxed at the
high tariff (21%)).

• For the year, display only options for which there is data in the database

• The amounts of money are properly formatted as currency

• For the selected quarter, automatically display the first and last day on screen, for example
the 2nd quarter of 2022 runs from 01-04-2022 to 30-06-2022.

You might also like