Hello. Sorry if you find this not interesting. My project is to create a cash register for a cafe. It has the features like in the pic. It also has a record sales staff can see in datagrid view. The table can be filtered to find specific item. It also can print preview the item that has been selected.

The coding is all done and working fine. I just want an opinion how to make it abit mroe complex. My lecturer said it looks simple and I thought so too. It doesn't have many form too, a login form, the item form and the record sales form. If you guys have any idea, please help me. I don't know what to add. My lecturer suggested to put a credit card thingy if the customer paid with credit card. But all I can think is, just put a checkbox to check pay with credit card and a print preview of the credit card receipt.

Can you guys help? Please don't bash me. Just asking, can ignore this.

Thank you in advance.

you could add an audit trail, keep track of who did which transactions when.

A table that only the owner can see? The audit trail just have the staff, when they login (date and time), the transaction they make. Does it has to be a new table or just pull the column related to datagrid view?


Add Functions Like:

Users (like admin, guest, etc)
User Restrications
Reports (Daily, Monthly, Yearly etc)

Admin like only the owner can see some form? Guest is staff, right?
User restrication means some form only accessable by the owner.
The report is in form or table?

My table for the Item form has date and time the transaction happen, all the combobox and textbox in the pic.

u can make reports in crystall reports..

for example: u can make a report to find the orders between given dates: From Date to ToDate.

I'm not very familiar with crystal report but have seen some example. The one I saw, the report collect all the rows and columns form the table. We can choose what to put in the report? I'll looks at it.

The audit trail should be a separate table. if you put it in the main table you will only be able to keep the last transaction. It should have

User, DateTime, transaction details.

You can put in a separate form to view the contents of the table and restrict it to the manager only. Audit trails are often held in a different database on a different disk drive.

The main table also have the User, DateTime, and Transaction detail. So in the audit table, transaction details just the TotalDue, MoneyReceive, and MoneyChange. Doesn't have to include CoffeeType, SnackType, etc.

Or the main table didn't need to have the TotalDue, MoneyReceive and MoneyChange? The main table just have SnackType, Quantity, etc. Fields in audit table wouldn't have the same field in main table?