Data Files samples / Cafe or restaurant
Little Fig Cafe
Menu, recipes and food costs, till orders, rota, deliveries, waste and the nightly cash-up for a small cafe.
How the tables are related
A line runs from a field that points at another table's record to that table. Data Files keeps a record from pointing at one that is not there, and a query with both tables joins them by it.
- Menu Items.Category points at Menu Categories
- Ingredients.Supplier points at Suppliers
- Recipe Lines.Menu Item points at Menu Items
- Recipe Lines.Ingredient points at Ingredients
- Payslips.Staff points at Staff
- Shifts.Staff points at Staff
- Shifts.Payslip points at Payslips
- Orders.Staff points at Staff
- Order Lines.Order points at Orders
- Order Lines.Menu Item points at Menu Items
- Purchases.Supplier points at Suppliers
- Purchase Lines.Purchase points at Purchases
- Purchase Lines.Ingredient points at Ingredients
- Waste.Ingredient points at Ingredients
- Waste.Recorded By points at Staff
- Cash Ups.Closed By points at Staff
Start Here
The guide to this database: the everyday tasks a step at a time, each step saying which table, form, query, report or print template to open. Open its report, Start Here, to read or print it. Delete the table when you no longer need it; nothing else uses it. (35 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Order | Whole number | The order the steps are read in. |
| Task | Short text, required | The everyday task the step belongs to. |
| Step | Whole number | The step's number within its task. |
| What To Do | Long text | What to open and what to do there. |
Business
The business's own details, in one record. Every document it prints, an invoice, a receipt, a statement or a letter, takes its name, address and payment details from here, so they are changed in one place. (1 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Name | Short text, required | The name printed at the top of every document. |
| Address | Short text | The street address. |
| City | Short text | The town or city. |
| Postcode | Short text | The postcode or ZIP code. |
| Country | Short text | The country. |
| Phone | Short text | The phone number customers call. |
| Short text | The address customers write to. | |
| Website | Short text | The website, if there is one. |
| Tax Number | Short text | The VAT or sales tax registration number, printed on invoices. The sample has a placeholder. |
| Company Number | Short text | The registered company number, where the business is a company. The sample has a placeholder. |
| Bank Details | Short text | Where customers pay by transfer: the bank, account name and number. The sample has a placeholder. |
| Payment Terms | Short text | The words printed under an invoice's total, such as "Payment within 30 days". |
| Tax Rate | Number | The usual rate of VAT or sales tax as a fraction: 0.2 is twenty percent. Lines may carry a rate of their own. |
| Currency | Short text | The currency the business trades in, as its three-letter code. |
| Document Footer | Long text | A line or two at the foot of every document: thanks, opening hours, returns policy. |
Suppliers
The firms the cafe buys from, one record each. (6 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Name | Short text, required | The supplier's trading name. |
| Supplies | Short text | What the cafe buys from them, in a few words. |
| Address | Short text | Their street address, printed on the purchase order. |
| City | Short text | Their town or city. |
| Postcode | Short text | Their postcode. |
| Contact | Short text | The person to speak to when ordering. |
| Phone | Short text | The number to call an order through. |
| Short text | Where to send an order in writing. | |
| Delivers On | Short text | The days of the week they deliver. An order goes in the day before. |
| Payment Days | Whole number | How many days after a delivery its bill is due. |
Ingredients
Everything that goes into a dish or is sold as it comes, with its price, where it is kept and how much is in. (55 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Name | Short text, required, unique | The ingredient as the kitchen knows it. |
| Supplier | Points at Suppliers, required | Who it is ordered from. |
| Unit | Short text | The unit its cost, stock and recipe quantities are counted in: kg, litre or each. |
| Cost per Unit | Currency | What one unit costs now, from the latest bill. Changing it changes every dish's food cost. |
| Bought As | Short text | How it comes, such as a 1 kg bag or a tray of 30, to help when ordering. |
| Storage | Short text | Where it is kept: fridge, dry store or the counter. Used for the stock count and the stock value. |
| In Stock | Number | How much is in, in its unit. Set it from a stock count; Data Files does not take sales off it by itself. |
| On Order | Number | How much is ordered and not yet delivered. Clear it when the delivery comes in. |
| Reorder Level | Number | When stock and what is on order come to this or less, it goes on the order list. |
| Reorder Quantity | Number | The usual amount to order, in its unit. |
Recipe Lines
What goes into one portion of each dish: one line per ingredient. These give every dish its food cost. (160 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Menu Item | Points at Menu Items, required | The dish this line belongs to. |
| Line | Whole number | The line's place in the recipe, from 1. Every dish needs a line 1: the costing counts the price once, on that line. |
| Ingredient | Points at Ingredients, required | The ingredient used. |
| Quantity | Number | How much of it one portion uses, in the ingredient's unit: 0.018 kg of beans for a shot of espresso. |
Staff
One record per person on the payroll. (8 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| First Name | Short text | Their first name. |
| Last Name | Short text, required | Their family name. |
| Role | Short text | Their job, such as Head Baker or Barista. |
| Hourly Rate | Currency | What they are paid an hour before tax. The wage cost of each shift is worked out from it. |
| Phone | Short text | A number to reach them about shifts. |
| Short text | Where the rota is sent. | |
| Started | Date | The day they started. |
Payslips
One payslip per person per week, Monday to Sunday, made once the week has been worked. Its lines are the week's shifts. (485 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Number | Short text, unique | The payslip's number, given in date order with a new run each year: PAY-2026-0042. |
| Staff | Points at Staff, required | Who it pays. |
| Week Beginning | Date | The Monday the week starts. |
| Week Ending | Date | The Sunday it ends. |
| Pay Date | Date | The day the money goes out: the Friday after the week ends. |
| Hours | Number | The hours paid that week, holiday included, added up from the shifts. |
| Hourly Rate | Currency | The rate paid that week, kept so a later pay rise leaves old payslips as they were. |
| Gross Pay | Currency | Pay before any deduction: each shift's hours times the rate, rounded to the penny, added up. Tax, National Insurance and pension are left for the payroll. |
Shifts
The rota: one record per person per shift, planned ahead and kept once worked. (2,145 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Staff | Points at Staff, required | Who works the shift. |
| Start | Date and time | The day and time the shift starts. |
| End | Date and time | The day and time it ends, later than planned when a busy day kept someone on. |
| Break Minutes | Whole number | The unpaid break in the shift. |
| Paid Hours | Number | The hours paid: from start to end less the break, or nought for a day off sick. |
| Station | Short text | Where they work that shift: Barista, Kitchen, Floor, Bakery or Manager. |
| Status | Short text | Rota for a shift still to come, Worked, Holiday (paid, not worked) or Sick. |
| Payslip | Points at Payslips | The payslip the shift is paid on; empty until its week is over and paid. |
Orders
One record per bill rung up on the till: a table's meal or a takeaway. Each prints as a receipt. (6,083 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Number | Short text, unique | The receipt number, given in order through the day with a new run each year: RCP-2026-00042. A voided bill keeps its number. |
| When | Date and time | The day and time it was rung up. |
| Service | Short text | Dine in or Takeaway. |
| Table No | Whole number | The table it was served at; empty for a takeaway. |
| Covers | Whole number | How many people sat down to it; nought for a takeaway. |
| Staff | Points at Staff, required | Who took the order. |
| Payment | Short text | Card or Cash. |
| Net | Currency | The bill less the VAT within it. |
| Tax | Currency | The VAT within the bill: each line's VAT worked out from its price and rate, rounded to the penny, then added up. |
| Total | Currency | What the bill came to, VAT included: the sum of its lines. |
| Voided | Yes/No | Yes for a bill cancelled before it was paid. It stays on record and is left out of the takings. |
Order Lines
What was on each bill: one line per dish, with how many. (15,847 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Order | Points at Orders, required | The bill this line is on. |
| Menu Item | Points at Menu Items, required | The dish or drink sold. |
| Quantity | Whole number | How many. |
| Unit Price | Currency | The price of one when it was sold, VAT included, kept so a later price change leaves old bills as they were. |
| Tax Rate | Number | The VAT rate within the price, as a fraction: the standard 0.2 eaten in, the dish's Takeaway VAT Rate taken away. |
Purchases
One record per order to a supplier, from the day it was placed to the day its bill was paid. Each prints as a purchase order. (1,122 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Number | Short text, unique | The purchase order's number, given in date order with a new run each year: PO-2026-0042. The supplier quotes it on the delivery note. |
| Supplier | Points at Suppliers, required | Who it was ordered from. |
| Ordered On | Date | The day the order went in. |
| Due On | Date | The day the delivery is expected. |
| Received On | Date | The day it arrived; empty while it is still to come. |
| Invoice Number | Short text | The supplier's number on the bill that came with the delivery. |
| Paid On | Date | The day the bill was paid; empty while it is owed. |
Purchase Lines
What was ordered on each purchase: one line per ingredient. (2,929 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Purchase | Points at Purchases, required | The purchase this line is on. |
| Ingredient | Points at Ingredients, required | The ingredient ordered. |
| Quantity | Number | How much, in the ingredient's unit. |
| Unit Cost | Currency | What one unit cost on this bill. Prices rose a little over the year, so older bills are cheaper. |
Waste
Everything thrown away, as the kitchen notes it on the waste sheet. (636 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Ingredient | Points at Ingredients, required | What was thrown away. |
| Date | Date | The day. |
| Quantity | Number | How much, in the ingredient's unit. |
| Reason | Short text | Why: out of date, overripe, stale, spilt, dropped, a kitchen error and so on. |
| Recorded By | Points at Staff | Who wrote it down. |
Cash Ups
The sheet filled in at close each day the cafe opens: the till's reading, the cash counted, and the day's wages from the rota. (424 records in the sample.)
| Field | Type | What it holds |
|---|---|---|
| ID | AutoNumber | The number Data Files gives each record. Other tables point at a record by it. |
| Date | Date, required, unique | The day. One sheet per day. |
| Closed By | Points at Staff | Who counted up and locked up. |
| Weather | Short text | Sunny, Cloudy, Rain or Cold: worth noting, as it moves trade. |
| Orders | Whole number | How many bills the till rang up that day, voided ones left out. |
| Covers | Whole number | How many people sat down. |
| Card Takings | Currency | Taken by card, from the till's end of day reading. |
| Cash Takings | Currency | Taken in cash, from the same reading. |
| VAT | Currency | The VAT within the day's takings, from the same reading, for the VAT return. |
| Cash Counted | Currency | The cash actually in the drawer, less the float. A difference from Cash Takings is the till over or short. |
| Wage Cost | Currency | What the day's shifts cost in wages, from the rota: hours worked or on holiday times each person's rate. |
| Notes | Long text | Anything worth remembering about the day: something ran out, the card machine went down, the till was out. |