In cells I13, J13, K13 (merged cells). I will enter the telephone number of the company as the requirements request.
In cells I14, J14, K14 (merged cells). I will enter the fax number of the company as the requirements request.
In cells I15, J15, K15, L15, M15 (also merged) I will enter the “Thank You for Shopping with Us Please Call Again!” to meet the requirements.
The cell L12 will have the pseudo code “=SUM(N6:N11)” in it which will tell me the total amount of items the customer has purchased, and M12 will have the label “item(s)” in it.
N12 will have the label “Total” typed in to it.
N13 will have the label “Cash Tendered” typed in to it.
N14 will have the label “Change” typed in to it.
O12 will have the formula “=SUM(O6:O11)” this cell is named Total.
O13 will have the number “0” in it and will be changed through the main user form, this cell will be named “Cash”.
O14 will have the formula “=Cash-Total” which will equal the change which is due.
Username and Password area
In cells P22 to cell P31 I will enter the usernames. And in cells Q22 to Q31 I will enter the passwords for each user.
In cell P20 the username that will be typed into the user login screen will appear here and verified with the password.
I will input the pseudo code: -
“=IF(ISNA(MATCH(P20,P22:P31,0)),"No Match",VLOOKUP(P20,P22:Q31,2))”
This code will allow the password check to take place in cell Q20.
The username and password is easy to understand what is happening yet it is fairly hard to follow what is going on behind the scenes. The username, which is typed into the user login screen, will appear in cell P20. As this is done, the corresponding password will be shown in cell Q20. If the right username and password is typed into the user login screen then it will show the “Successful Login” screen, which will in turn let the user gain access to the main user form. But, if the password or username is incorrect then the “Incorrect Password” screen will be shown and the user ill be asked if he/she would like to continue, by retrying or to exit.
________________________________________________________________________
Macros
I am now going to show you how I will design my 3 macros. They will: -
- Print the receipt.
- Delete I6 to O6 on the receipt.
- Insert new cells from I6 to O6 on the receipt.
I will now show you how I created my first macro, which will print out the receipt only.
To start with I will initiate the recording. I will then highlight the whole receipt. I will then go on the ‘File’ menu and go to the print area sub menu and then click on set print area. I will then highlight the print area and choose to set it as the print area and then I will print that area out, just to make sure the print area has been has been set up properly. Then I will check if this has just printed out the receipt only.
I will now show you how I will design my second macro, which will delete the cells I6 to O6 on the receipt.
Primarily I will start recording a macro from the tools menu. I will then highlight the cells I6 to O6. I will then go to the ‘Edit’ menu and delete the cells. Then I will tell the database to shift the cells up. I will then stop the recording. This should delete the cells I6 to O6 when ever I want to.
I am now going to show you how I will make my third and final macro, which will insert cells from I6 to O6.
To begin with I will start recording the macro. I will then highlight the cells from I6 to O6, like I did in the previous macro. I will then go on the ‘Insert’ menu and insert cells. I will then tell the database to shift the cells down instead of telling the database to shift cells up as I did in the previous macro which will instead result in deleting the cells. This will in theory insert new blank cells when ever I need them it will do so.
This concludes the step-by-step guide of all the macro production in my project which showed how I am to design my macros.
I have shown you how I will design my user forms, macros, and the spreadsheet.
I am now going to show you the tests that I will be undertaking.
Design
In this section I will design all the user forms and I will also state there purposes and
Explain what each and every little detail is needed for, this is very important as it shows that
User form 1 (Receipt)
This is the list box in which all of the items will appear and can be selected. Once the items are selected then all the boxes the list boxes the item of course, the colour, size, price, MSL, and finally stock will be automatically filled with the details which are listed in the stock list.
In this box the sub total of the items that the customer has purchased will be shown.
In this box the change that the customer is given is shown in this box.
Here the cash that the customer has given will be inputted into here and the change will be shown in the change box.
The command buttons are all self explanatory e.g. the exit button exits the program; the reset button resets the receipt so that more customers may be served, the send button sends the current item to the receipt, and finally the print button prints the receipt. Later, I may change the background colours but I am happy as it stands at5 the minute.
User form 2 (Main Page)
This user form will be used as my main page.
This command button will allow you to enter the user login screen.
This command button will allow the user to exit the program.
User form 3 (Login Screen)
In this box the user will be able to type his/her username.
In this box the user will be able to type his/her password.
The exit button will allow the user to exit the login screen this will take him/her to user form 2.
The enter button will allow the user to confirm his/her username and password
The login screen text label is just a simple label explaining that this is where the user may enter his/her details.
User form 4 (Wrong Password screen)
The retry button would take the user this is a simple text label stating back to the login screen.
The exit button would take the user-to-user form 2.
User form 5 (Successful login)
This is a simple text label stating ‘successful login!’
This command button will enable the user to enter to the main title screen, which in this case is the receipt area.
Tests
I am going to test if all my user forms work properly and if they have a mistake I will repair it. I have worked out that I will do 25 different tests on different things in my system.
- I am gong to firstly; test to see whether or not the start page is shown when the user opens the program it should show the start page.
- I must also check that if any wrong details are typed into the login screen then it must tell you that they are wrong
- I must make sure that if the user types in the correct details in the login screen it must tell the user that there was a successful login.
- I need to make sure that the password that the user types, is hidden from prying eyes.
- I need to make sure that once a user form is shown there must not be any other user forms on at the same time as that.
- I need to make sure that the receipt shows the final total correctly.
- I need to make sure that if they sell an item then the totals must automatically be updated.
- There must be a clear print area setup showing the receipt so when they print the receipt only that is print out and nothing else.
- I will need to check whether the self-updating date/time is in fully working condition, at all times.
- Whenever they sell a product, there must be a record of this somewhere stating all the details of the item and the quantity.
- When the user types in the cash tendered and pushes the enter key the cash tendered must show up on the receipt.
- The change field must automatically up date as more and more items are sent to the receipt. As this is done it must show a negative number and then once the user has typed in the cash tendered and then it must automatically subtract the sub-total from the cash tendered there by giving the change that the user will need to give the customer.
- If the user, needs to exit the receipt system, then if the user pushes the exit key it must take him to the enter page.
- I will need to confirm that when I type in a random product ID into the VLOOKUP function then it must show me the information for that item.
- I will need to check that when I type in a random quantity into the VLOOKUP function then it must multiply the quantity by the item price automatically to give me the subtotal for that item.
- If an incorrect product ID is typed into the VLOOKUP function then it must show an error.
- I need to make sure the telephone number and other key company information is on the receipt at all times.
- I need to make sure that when an item is bought then the stock level is automatically adjusted.
- If the user accidentally types a letter in the quantity box then the system should not work.
- I will need to make sure that all the items, which Unique Fashions Ltd. Stock must be in stock and must be more than the MSL, for that specific item. I will need to make sure that the database has a fully up-to-date. Stock list.
- I will need to make sure that the separate spreadsheet that houses the transaction records for each item sold doesn’t get cleared once the new customer command button is pushed.
- There must be a counter on the receipt, which shows the number of items sold.
- The counter must be reset every time the new customer command button is pressed.
- When the new customer command button is pressed then the item must automatically be reset, but the item sold before hand must still appear in the transaction records.
- I will need to make the receipt in visible colour scheme.
Implementation
A user form is a list/collection of related objects that enable one precise function, or a many functions to be made. I will start off by creating a simple user form that has a basic two-button page, which will hopefully look a tad like the one shown below.
Start Page
Here I will included a page at which allows the user to click on the enter button and it
Will take you into the enter page which will then take you to the user login page in which the user logs in and enters the secure area which is the main user form.
User form -
Enter page
This page appears after the user clicks on enter on the start page. If the user clicks on enter then he/she will enter into the login page and if the user clicks on exit then it will close down.
I will enter the following pseudo codes:-
Enter command button:
‘UserForm2.Hide
UserForm3.Show’
These codes will (once executed), allow hide this user form and show the next user form which is the login page.
Exit command button:-
‘UserForm2.Hide’
This code will hide the user form.
The font I have chosen here is ‘Script MT Bold’.
User form 3 – User Login
Here, I have added 2 text labels for ‘Password’, ‘Username’, and the title ‘User Login’.
This button will exit the system and return the user back to the enter page.
This is the field in which the user may enter his/her username.
In this field the user may enter his/her password.
This command button will allow the user to submit the entered details if any.
I will enter the following pseudo codes:-
No pseudo codes in the username field or the password field as they are not needed there.
Exit command button:-
‘UserForm3.Hide
UserForm2.Show’
Once the exit command button is executed it will hide the login user form and it will show the enter screen.
Enter command button:-
‘UserForm3.Hide
Sheets("sheet1").Range("P20") = _
UserForm3.TBUsername.Value
If UserForm3.TBPassword.Text = Sheets("sheet1").Range("Q20") _
Then
UserForm5.Show
Else
UserForm4.Show
End If’
Once the enter command button is executed, it will check the details that have been entered with the details in the username and password database if they match and the user will be shown the successful login screen but if they are incorrect and then the user will be shown the incorrect detail (s) screen.
The font I have chosen here is ‘Script MT Bold’.
User form 4 – Incorrect Detail(s)
I have included a simple text box stating that the details, which have been entered, if any are incorrect.
This command button will allow the user to re-enter his/her details, which will give him/her access to the main title screen.
This exit command button will allow the user to exit the program.
I will enter the following pseudo codes:-
Try again command button:-
‘UserForm4.Hide
UserForm3.Show’
This will hide the incorrect detail screen and show the login screen once more.
Exit command button:-
‘UserForm4.Hide
UserForm3.Hide
UserForm2.Show’
Once this command button has been executed then it will hide the incorrect detail screen and it will hide the login screen and it will show the enter screen.
Here I have used the ‘Script MT Bold’ font.
User form 5 – Successful Login
This is a text label stating that the user has entered correct details and that they may successfully enter into the receipt system.
This command button will allow the user to enter in to the main title screen, which is the receipt area.
I will enter the following pseudo codes:-
Enter command button:-
‘UserForm5.Hide
UserForm3.Hide
UserForm1.Show’
This will hide the successful login screen and will hide the login screen and, finally it will show the main title screen, which is the receipt system
User form 1 – Receipt System
This is a combo box it has all the product ID’s inside it the user can click on the drop down arrow and select a product ID, once this done the item, colour, size, price, MSL, and stock fields will automatically be filled with the product ID’s information. Once this is done the user may type in the quantity being sold, and then press the enter key this will enable the sub-total to be shown. The user may repeat this in order to add more items when all the items have been added, the user may then type in the cash tendered and then press enter so that the change is shown. After all this is completed finally the user may click on send to receipt which will enable all this information to be shown on the receipt.
The new customer command button clears the receipt so that the next customer may be served.
The print receipt command button allows the receipt to be printed.
This is a preview receipt screen this shows the user the contents of the receipt without him/her having to go back to the excel document.
The exit button will allow the user to return to the enter page.
I will enter the following pseudo codes:-
Quantity field:-
‘Private Sub TbQuantity_AfterUpdate()
Sheets("sheet1").Range("e1") = _
UserForm1.TbQuantity.Value
UserForm1.TbSubTotal.Value = _
Sheets("sheet1").Range("e3")
End Sub’
This will update the receipt.
I will put no pseudo codes in the item, colour, size, price, MSL, stock and finally sub-total fields as they are not needed.
Product combo box:-
‘Private Sub CbProductID_Change()
Sheets("sheet1").Range("A2") = _
UserForm1.CbProductID.Value
UserForm1.TbItem.Value = _
Sheets("sheet1").Range("B2")
UserForm1.TbColour.Value = _
Sheets("sheet1").Range("C2")
UserForm1.TbSize.Value = _
Sheets("sheet1").Range("D2")
UserForm1.TbPrice.Value = _
Sheets("sheet1").Range("E2")
UserForm1.TbMSL.Value = _
Sheets("sheet1").Range("F2")
UserForm1.TbStock.Value = _
Sheets("sheet1").Range("G2")
End Sub’
This will transfer the entire stock list, which has been put into the spreadsheet to the receipt system. It will show the product ID in this combo box and when an item is selected it will show all the details into the following fields: item, colour, size, price, MSL, and finally the stock..
Cash tendered field:-
‘Private Sub TBCashTendered_AfterUpdate()
Sheets("sheet1").Range("cash") = _
UserForm1.TBCashTendered.Value’
Once the user has typed in the cash tendered and pushed the enter key then it will show up on the receipt.
Change field:-
‘Private Sub TBChange_Enter()
UserForm1.TBChange.Value = _
Sheets("sheet1").Range("change")’
Once the item is sent to the receipt the change will be shown. If the cash tendered hasn’t been typed in then the change will be shown as a negative number indicating that the customer has yet to pay for the item. Once the cash tendered has been entered then, if the cash tendered is more than the sub-total then the change will be shown as appositive number, which means that the user has to give the customer that much change after the customer has paid.
Send to receipt command button:-
‘Private Sub Buy_Click()
Dim cell As String
Sheets("Sheet1").Select
Range("I7:O7").Select
Selection.Insert Shift:=xlDown
Sheets("sheet1").Range("I7") = _
Sheets("sheet1").Range("A2")
Sheets("sheet1").Range("J7") = _
Sheets("sheet1").Range("b2")
Sheets("sheet1").Range("k7") = _
Sheets("sheet1").Range("c2")
Sheets("sheet1").Range("L7") = _
Sheets("sheet1").Range("d2")
Sheets("sheet1").Range("M7") = _
Sheets("sheet1").Range("E2")
Sheets("sheet1").Range("N7") = _
Sheets("sheet1").Range("E1")
Sheets("sheet1").Range("O7") = _
Sheets("sheet1").Range("E3")
cell = "G" + Trim(Str(UserForm1.CbProductID.ListIndex + 8))
Sheets("sheet1").Range(cell) = Sheets("sheet1").Range(cell) - UserForm1.TbQuantity.Value
Sheets("Transaction Records").Select
Range("A2:G2").Select
Selection.Insert Shift:=xlDown
Sheets("Transaction Records").Range("A2") = _
Sheets("sheet1").Range("A2")
Sheets("Transaction Records").Range("B2") = _
Sheets("sheet1").Range("b2")
Sheets("Transaction Records").Range("C2") = _
Sheets("sheet1").Range("c2")
Sheets("Transaction Records").Range("D2") = _
Sheets("sheet1").Range("d2")
Sheets("Transaction Records").Range("E2") = _
Sheets("sheet1").Range("E2")
Sheets("Transaction Records").Range("F2") = _
Sheets("sheet1").Range("E1")
Sheets("Transaction Records").Range("G2") = _
Sheets("sheet1").Range("E3")
End Sub’
This will once the user has entered the item and quantity of the chosen item then this command button will send it to the receipt.
Print Receipt command button:-
‘Private Sub CBPrint_Click()
ActiveSheet.PageSetup.PrintArea = "Receipt"
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
End Sub’
This command button will print the receipt.
New Customer command button:-
‘Private Sub Ncust_Click()
Sheets("Sheet1").Select
While Range("count") > 0
Range("I7:O7").Select
Selection.Delete Shift:=xlUp
Wend
End Sub’
This will clear the receipt so that the next customer may be served.
Exit command button:-
‘Private Sub CBExit_Click()
UserForm1.Hide
UserForm2.Show
End Sub’
This will hide the receipt system screen and it will show the user the enter page.
Testing
For my tests I will test everything one by one and if there is a mistake I will rectify it as I go along. This table shows all my tests it states what tests will do and the expected outcome and the actual outcome. I will fill in the actual outcome column after I have done my tests.
I am now going to carry out the tests, but if any problems do crop up I will correct them as I go along if there were some tests that failed, but I predict that there will be no problems, and that my receipt system may pass 100% of the tests.
Test 1
At first I am testing to see what happens when I open the program it should show the start page.
In order to successfully run the database I will need to click on enable macros thus allowing me to use the macros and making everything run perfectly.
Once I clicked on ‘enable macros’ the above screen appeared.
This proves that my receipt system has successfully passed its first test, now I will carry out the second test.
Test 2
Now I am going to do my second test. I am testing whether incorrect username and/or password would allow the user entry to the receipt system.
Here I have typed an incorrect username, and a wrong password. Now I will click enter and see whether or not it will give me access to the secure receipt system.
As you can see entering wrong details does not allow the user into the secure receipt system.
My system has passed its second test. Now I will perform my third test.
Test 3
In this test I will need to check whether the user is allowed access into the secure receipt system when correct username and password has been entered.
Here I have entered the correct username and the correct password to see whether I am allowed access.
This shows the outcome of the previous operation it shows that the user has been allowed access and that the correct username and correct password were accepted this proves that my secure receipt system is indeed secure.
With the success of test No.3 I will now move on to test No.4.
Test 4
This is to prove that my user login screen that I have created does hide the user’s password from inquisitive eyes.
This shows that the password is hidden from intrusive eyes and it shows that the password does show up as (*) as I had earlier stated in my project.
Now with the success of my 4th test I will now move on to my 5th test.
Test 5
In this test I will open up a random user form and I will need to check if any other user form is shown whilst the current one is revealed on the screen.
Below I have opened up the receipt screen user form to see whether or not the any other user form is exposed.
This shows that there is no other user form open at the same time as this.
I have checked behind this user form also to make sure that no other smaller user forms are opened behind this, to prove this look at the screen below.
This test was a success as no other user forms do show up when another is showing. With the success of the success of test No.5 I am now going to move on to test No.6.
Test 6
In this test I am going to be testing to see whether the receipt system shows the final total correctly, for the items the customer has purchased.
This is a success because 950+295+150= 1395. This shows that the total is shown correctly on the receipt, an it also shows that my database has successfully passed its 6th test and now I shall move on to the 7h test.
Test 7
In this test I will need to find out whether or not the total does self-update every time a new item is added to the receipt.
The screen below proves that the total does automatically update every time an item is added to the receipt.
This shows the test was a success as 109+175=284.With the success of my 7th test I am now going to move on to my 8th test.
Test 8
In this test I will need to check whether a correct print area is set up. In order to check this I will need to open the print preview screen under the file menu.
Here you can see that the receipt does fit exactly onto one page. This shows that a print area has been setup. I needed to set up a print are because if the user does click on print receipt then only the receipt is needed to be printed the customer I not going to need the whole spreadsheet printed this is private information and it is useless and it is time consuming, not to mention the cost of all the ink and paper.
Now with the success of my 8th test I shall now do my 9th test.
Test 9
In this test I am going to see whether the time does update itself every minute.
This shows that the time is 18.04 I will need to make sure that it will be 18.15 in 1 minute’s time to prove that it does update itself
This shows that the time is 18.15 this proves the time is self-updating every minute.
This is the same place that it will update all the time. With the success of my 9th test I will now move on to my 10th test.
Test 10
In this test I am going to show that the system does keep an accurate record of its transactions. This shows an empty record system as nothing has been sold
Now I will add a few items to the receipt in order for them to be sent to the transaction record sheet.
Now that I have added the items to the receipt now I will exit the system and go back to transaction record sheet and see whether or not the transaction has had its details recorded.
The items sold in the transaction were all recorded. This proves that my secure receipt system does pass another test. Now I shall move on to the 11th test.
Test 11
In this test I will check to see if the cash tendered is shown on the receipt correctly. At first I will need to add a few items to the receipt and then I will enter the cash tendered.
Now I will enter the cash tendered to see if they are shown correctly.
This shows that the cash tendered is shown correctly once it is put into the system. Now that I have passed this test I will now move on to the 12th test.
Test 12
Above it shows that as I entered the cash tendered amount into the corresponding box the cash tendered updated on the receipt automatically. Now I am testing to see if the change box is updated as more and more items are added to the receipt.
Here I have added a single item to the receipt. To see if the change does indeed update automatically each time an item is added to the receipt.
I will now enter another item to the receipt to see if the change box is updated.
The change box does update successfully. It does show up as a minus number this is to do with the fact that no cash has been tendered so by a minus amount it is indicating that the customer is owed nothing but the customer owes that amount shown. If it shows a positive amount in the box then that would mean that the customers change is that amount shown. Now that my secure receipt system passes its 12th test I will now move on to my 13th test.
Test 13
In this test I will be testing to see if the exit command button does exit the receipt system. In order to accomplish this I will need to open the receipt system and then I will push the exit command button in order to carry out this test.
I will push the exit button to do this test.
After doing this the following screen is shown:
This is the enter page this proves that when I push the exit command button then the receipt system is exited, and this page is shown. Now that my database has passed its 13th test I will now carry out my 14th test.
Test 14
With the success of the last test I will now be testing to see if typing a random product ID into the VLOOKUP show the products details. In order to successfully do this will have to enter a correct product ID.
Here I have entered the product ID for the Armani jeans product size 28R, in the dark blue colour.
Now I will enter another product id into the VLOOKUP function to see if others do work correctly.
Now that I have successfully shown that my VLOOKUP function works correctly when any random product ID is put into it now I will check to see what happens when nothing is inserted into the ‘Product ID’ heading.
This shows that there was an error which means it is working perfectly. With success of the 14th test I will now move on to the 15th test.
Test 15
I am now going to be testing to see is the VLOOKUP multiplies the total correctly, when I type the quantity of the product desired, in its box which is ‘E1’. In this instance I will also choose a random item from the stock list to use as an example.
This shows the total is correctly worked out for 2 items I will now try 10 items just to see if it is worked out correctly.
As you can see the total is correct because 109x10=1090 this is another successful test.
Now that this is done I will now move on to the 16th test.
Test 16
I will now be testing to see if typing an incorrect product ID into the VLOOKUP shows an error. To do this I will need to open the spreadsheet and type an incorrect Product ID into the VLOOKUP to see whether it show an error as it should.
Here I have entered the Product ID as ‘ABCDE’ which is an incorrect Product ID. It shows an error in all the boxes which means that this test is a success, just to confirm I will try again with another incorrect Product ID.
Here I have entered the Product ID as ‘90DHN’ which obviously is an incorrect Product ID. Now that I have proved that the system shows an error when a non-existent Product ID is typed into the VLOOKUP system, hence making this test a success I will now move on to the 17th test.
Test 17
I will now be testing to see if the company information shows on the receipt. In order to do this I will have to open up the spreadsheet and look on the receipt directly when it is clear, in other words when it has no items on it.
This is the receipt just as it is shown when it is printed to out for the customer. It has all the necessary information that the company requires such as the telephone and fax numbers and the shop name etc.
This means I have performed another successful test and I will now move on to my 18th test.
Test 18
Now I will be testing to see if the stock levels adjust on the spreadsheet, every time an item is purchased. In order to this will need to choose a random item check its stock level then purchase it through the secure receipt system and then exit the system and re-check the stock level of that same item just to make sure whether or not it does update as it should.
Here I have chosen to test the Armani jeans. It shows that the stock is 6 I will now purchase 3 of these in order to see if the stock level is adjusted.
As you can see here I have chosen to add 3 of the item mentioned above to the receipt I will now need to push the send to receipt command button to send it to the receipt thus reducing the stock level by 3 from 6 to 3 in theory.
The following screen will show the outcome.
As you can see my theory was correct the stock level has adjusted. This shows that the stock level does automatically update as items are sold. As my secure receipt system passes another test I will now move on to the 19th test.
Test 19
Now I will be testing to see if a user types anything in the quantity box, other than a number an error is exhibited. In order to do this test I must open the system and access the receipt part of the system via the secure login facility. I will then choose an item at random and type in a single letter into the quantity box in order for me to carry out this test, and then I will push the enter button on the keyboard to see what happens. The system should show an error.
As you can see I have entered the letter ‘n’ into the quantity box I will now push the enter button on my keyboard to see what the system shows, which in this case should be an error message.
As you can see when I pushed the enter key the receipt system showed this message which states that an error has been made. In order for me to correct this mistake I will need to click the button named as ‘End’ which will exit the system.
This proves that my system does show an error when a letter is typed into the quantity box. With the success of my 19th test I will now move on to my 20th test.
Test 20
I will now be testing to see if the shop has enough items in stock in the spreadsheet. I will need to make sure that the database has a fully up-to-date stock list. In order for me to do this I will need to make sure that every item that is in the stock list is up-to-date with the actual Unique Fashions ltd stock, which has been given to me all the items that they stock are all above their MSL so the actual stock for each item is all above the MSL for that specific item.
As you can see from the stock list on the previous page all the items that are stocked by Unique Fashions Ltd are all in-stock, and above the MSL for that item.
Now that my secure receipt system has passed its 20th test I will now start my 21st test.
Test 21
I will now be testing to see if the transaction record sheet doesn’t clear itself once the new customer button is clicked. In order to do this I will first have to add an item to the receipt to add it to the record sheet and then I will need to push the ‘New Customer’ command button in order to see whether or not it does be cleared when it this command button is pushed.
As you can see I have added 2 of the same item to the receipt. As you can see below this how the transaction record sheet currently stands after the item has been sent to the receipt.
Now I will click the ‘New Customer’ command button to see if the transaction record sheet does clear.
This is the receipt system after I pushed the ‘New Customer’ command button it is cleared now it will exit the secure receipt system and go to the transaction record sheet to see if it has been cleared as well.
As you can see the receipt system did not clear the transaction record sheet which means that the new customer command button does work properly.
Now that my system has passed its 21st test I will now move on to my 22nd test.
Test 22
I will now be testing to see if the item counter on the receipt works correctly. In order to do this I will need to add a few items of various quantities on to the receipt one by one to see if it doe update the item counter each time an item is sent to the receipt.
Here you can see that as there are no items on the receipt the receipt counter does show the counter is at 0, which means it is working I will now add 2 items to the receipt in order to see if it is working.
I have entered 2 items to the receipt as you can see the counter does show that there are two items on the current receipt. This proves that the counter does get updated as more and more items are added to the receipt. Now that I have proved the success of my 22nd test I will now perform my 23rd test on my receipt system.
Test 23
I will now be testing to see that if the counter is reset every time the new customer command button is pushed. In order to do this I will ad a couple of items to the receipt and then I will push the new customer command button.
Now that this is done I will now push the new customer command button to see if the item counter is reset
As you can see the receipt’s item counter has been reset along with the items and change and total.
Now that my secure receipt system has passed its 23rd test I will now move on to my 24th test.
Test 24
I will now be testing to see whether the items the last customer purchased are cleared every time the new customer command button is used. In order to do this I will need to open up the receipt system by logging in through the secure system. I will add 2 items to the receipt and then I will clear the receipt system by pushing the new customer command button.
I will now push this command button in order to clear the items and successfully completing the 24th test.
As you can see the items have been cleared from the receipt which means that my secure receipt system has passed its second to last test. Now that this test has been passed by receipt system I will now perform my final test.
Test 25
I will now be testing to see if the receipt is clearly visible. In order to complete this final test I will need to make receipt coloured in easily visible colour scheme such as black and white, or blue and yellow etc
.
As you can see the colour scheme that is shown below I very difficult to see.
This colour scheme is very hard to see, and it doesn’t look very nice, making it a bad choice to use as a colour scheme for the finished product.
This colour scheme that is pictured below is easy to see it is a very nice combination and it is easy to see from afar, making it a good choice to use as my final chosen colour scheme for my receipt.
This makes my receipt clearly visible and look good, making my secure receipt system pass its 25th and final test.
Evaluation
In the past year I have set out and done my ICT coursework. I set out to create a simple yet effective receipt system. That is secure and safe to use it updates stock levels and prints receipt, and it can also keep transaction records for admin purposes. I have checked that if any wrong details are typed into the login screen then it must tell you that they are wrong. I have made sure that if the user types in the correct details in the login screen it must tell the user that there was a successful login. I have made sure that the password that the user types, is hidden from prying eyes. I have made sure that once a user form is shown there must not be any other user forms on at the same time as that. I have made sure that the receipt shows the final total correctly. I have made sure that if they sell an item then the totals must automatically be updated. There is a clear print area set-up showing the receipt so when they print the receipt only that is print out and nothing else. I have also checked whether the self-updating date/time is in fully working condition, at all times. I have made sure that whenever they sell a product, there must be a record of this somewhere stating all the details of the item and the quantity. I have made sure that when the user types in the cash tendered and pushes the enter key the cash tendered must show up on the receipt. I have made sure that the change field must automatically up date as more and more items are sent to the receipt. As this is done it must show a negative number and then once the user has typed in the cash tendered and then it must automatically subtract the sub-total from the cash tendered there by giving the change that the user will need to give the customer. I have made sure that if the user, needs to exit the receipt system, then if the user pushes the exit key it must take him to the enter page. I have made sure that if the user needs to confirm that when I type in a random product ID into the VLOOKUP function then it must show me the information for that item. I have made sure that when I type in a random quantity into the VLOOKUP function then it must multiply the quantity by the item price automatically to give me the subtotal for that item. I have made sure that if an incorrect product ID is typed into the VLOOKUP function then it must show an error. I have made sure that the telephone number and other key company information is on the receipt at all times. I have made sure that when an item is bought then the stock level is automatically adjusted. I have made sure that if the user accidentally types a letter in the quantity box then the system should not work. I have made sure that all the items, which Unique Fashions Ltd. Stock must be in stock and must be more than the MSL, for that specific item. I will need to make sure that the database has a fully up-to-date stock list. I have made sure that the separate spreadsheet that houses the transaction records for each item sold doesn’t get cleared once the new customer command button is pushed. I have made sure that there must be a counter on the receipt, which shows the number of items sold. I have made sure that the counter must be reset every time the new customer command button is pressed. I have made sure that when the new customer command button is pressed then the item must automatically be reset, but the item sold before hand must still appear in the transaction records. I have made sure that the receipt is in a clearly visible colour scheme.
All through my venture you may see that I have fully completed my initial motives and I have also added some supplementary, thoughtful extras, which will be very valuable to the Unique Fashions Ltd. Company itself, and its employees. During the course of the construction of the system I included some changes that were not mentioned in the design but were mentioned in the implementation such as the start page, unlike the enter page this has been put into a spreadsheet of its own. This is because I needed to add in those extra little things that would be needed in a real life retail outlet environment. Now that this is done I feel that my system may be used in any designer retail outlet all that may need to be altered is the stock list the username and passwords and the company name, and details on the receipt and that is it after that the system, may be used anywhere within the designer clothing retail industry.
Some of the problems I encountered during the construction of the secure receipt system: -
- It was astonishingly hard to create a secure login facility I couldn’t get the correct codes inputted into the system. This took me a very long time to sort out, but I am happy that this is achieved as now that I know how to do this I may create other secure login facilities whenever and wherever I feel there is a need to do so.
- A second problem I encountered was recording macros, as this was very precise any wrong move could add to the recording process.
- A Third problem that I encountered was creating the print receipt button as this needs specific codes, and the print area needed to be set up. But now that I have done this I now have expanded ICT knowledge.
- Another problem I encountered was to create the change box that showed the customers change this was hard to do yet very satisfying. Now this is done I feel that I have created a fully functional system that anyone may use.
If I were to repeat this project I would do the following: -
- I would create a working credit card system as well as the cash only system. This would make it even more of a practical system.
- I would also make another user from that would allow all the users to change their passwords. This would make everything more secure than it already is, and it will be a lot more professional and more impressive than it already is.
- I would create a refund system that allowed the customers to get refunds a lot easier than they are now at the moment the refund system is all manual, and they involve paperwork.
- I would also modify the current ‘Transaction Record’ sheet I would add to it the user who sold the item and the time and date at which it was sold.
- I would also add on to the receipt more information such as VAT registration number, and I would also add on to the receipt the user’s name that sold the item.
- If I were to redo this I would also add on a search system that searches through the stock list, and or transaction records for the required bits of information that was asked for, by the manager or some other authority figure of the company.
Also the codes that I put into my user forms took me a long time but in the end they all do exactly what they are supposed to do. I have now learnt in which kind of language these codes work, if you will.
Overall my receipt system’s creation has been successful, even though there are a few changes that I would make but I am happy with what I have done with it. My receipt system does precisely what I want it to d, and as the creator I am proud of it. I have learnt many new things along the way and hope, that my client company can use my receipt system successfully.