cbassett01 wrote:
I'm not really looking for a specific answer to this, but more people's opinion.
I need to construct a program for the place where I work to track daily sales for various departments within the store.
I'm stuck between writing a web site (using PHP and MySQL that could be either run from a website or on a PC with the proper software installed) or writing a fully-fledged Windows application that would have to be installed.
I'm tempted by the application route, because it doesn't require extra configuration of a HTTP server, MySQL server, and such, but I'm worried that since everything is now moving to the Web, that writing a desktop app may be short lived (and that I will have to re-do it for the web at a later time).
Go with web. Easier to deploy, only a single instance needs to be managed, security can be implemented on the app itself. Trust me on this one: deploying software blows chunks. Web apps have the advantage of not having to manage multiple instances of the same thing or having to deal with versioning. The app seems like a basic data entry with reporting, the web is suitable for that.
cbassett01 wrote:
The problem with the web version is that I cannot figure out how to store multiple numerical values to a MySQL database and not have it look like a pile of crap.
I find this statement troubling. The structure of any database doesn't matter whether or not it's a web or desktop application (I know, I've written for both). Values in the database appears nebulous but that's what reporting is all about: you take your assumptions and you massage the data to display in a format that suits the user. No matter how under/over normalized your schema is, you still need to massage the data to make it fit what the user is looking for.
cbassett01 wrote:
Basically, what I need to store is this: a dept number, a sales figure, and a date (366 times, one entry per day). So, 366 records. Then, I need to do this for the number of departments I have (which is currently 10 of them). So, in all, I need 3660 entries that contain a dept number, date, and sales figure (floating point number). How can I create this in a mysql database and not have it look like crap and be clunky??
Suggestions?
This, my friend, is where you'll need to do research. I'm gathering that you don't have much experience developing databases? Your best bet is to figure out the table relationships. In your case, Departments have sales figures. So you can have a table w/ only departments and a table w/ the sales figures that contain the ID of the Department for the Sales figure of that day. Also, I think MySQL has a decimal type, use that instead of floats (floats determines precision whereas decimal deals with money/currency types - you don't get that weird rounding issue too).