End of day Calculator and special order parts tracking CIS248 – Advanced App Development Week: 4 Update By: Nick Arneson
Introduction Name: Nick Arneson School: Second year student at Southeast Technical Institute Enjoys: C# Networking Building custom computers Playing video games in free time
Project Description My project combines an end of day calculator for closing out the till at the end of day. It also focuses on using a database for managing special ordered parts for our clients. It will be used primarily by our store only at first, with hopes to integrate it into the other 40+ stores.
Key project tools Visual Studio 2019 Enterprise Edition For IDE, using C# MS SQL Express 17 For Database MSSQL Sever Management Studio 18 (SSMS) For Database management
Features & functions Function 1 Function 2 – 4 EoD_Load selects which panel will be shown to the user when starting the app. Function 2 – 4 Each panel is named accordingly for what its purpose is to show to the user. Uses a button to serve as a UI interaction object. Toggles visibility in so there is not two panels showing at one time.
Key input/output captures Top displays special ordered items from a previous day Bottom displays a new special ordered item added 06/30/2019. Now saving data that was inputted upon relaunching the application. Key input/output captures
Database ERD Diagram This is not complete. Accounts.actID is the unique key for CPP_Order_Sheet.actID I need to fix this so it uses actName. I would really like to have it as a drop down/autosearch/autofill so the user doesn’t need to type the full name without encountering a name. Required Fields of CPP_Order_Sheet actID, ticketNumber, partNumber, orderQty, initals. As, the date ordered vender and poNumber are added at a later time.
Primary technical difficulties In SSMS the option “Prevent saving changes that require table re-creation” was more harmful than helpful. Spent quite a few hours trying to fix tables to only have to recreate because I could not save. Unchecking this option for my small DB helped speed up production and allow me to do minor touchups to DB’s when I forgot a column.
Key code snippets ToolStripButton_Update ToolStripButton_Save This was original used as a “save” Changed code to allow a user to “refresh” the table without having to close the application ToolStripButton_Save This function validates the data (you will get an error while entering data anyway) Ends editing of the current line Updates the DB/Display with the newly entered data.
A Difficult problem and a solution! Originally during my week 3 update, I encountered an issue when debugging/testing of adding a new line to the DB, but it would never save upon exiting Debug mode. When accessing /bin/Debug folder and running the application outside of Visual Studio, everything worked perfectly like it should. To fix this issue with localDB, I added another connection string, that connects to the DB located in the /bin/Debug folder and changing the setting to “Copy If Newer”. Thus, any updates to either running the app in Visual Studio or with /bin/Debug, the database always picks the most recently updated version to display.