Side project update
V was out helping with preparations for her cousins wedding so I was home alone and felt like coding today. A bit surprising. Work has been hectic lately and didn't think I would want to touch anything capable of compiling this weekend. But I made some great progress including some pseudo milestones.
So, with the application I wrote for V, there is basically 1 screen which is 90% of the application. It's also the first screen that needs to be done, and it touches virtually every part of the system. In some ways, it is a monstrosity. So, this is one of the reasons why I haven't gotten further. This one screen is pretty disappointing. I can throw hours at it and walk away feeling like nothing has been accomplished.
As of today, I think the screen is 75-85% complete now. Which is huge, because yesterday I would have said maybe 25% of the screen is done. Now, that is 75-85% done a first pass. A lot of what I'm considering "done" at the moment is looking pretty hideous, but it is functional and thats enough to keep me going.
The screen in question is the check-in screen. She takes in customer orders from this screen which includes:
- customer lookup/creation,
- assigning the work to someone,
- choosing the pick-up date for the order,
- displaying current work for the selected date,
- adding order line,
- looking up the services list and
- possibly entering notes,
- possibly pre-paying for orders,
- printing the order,
- previewing the order,
- applying customer/order discounts,
- adding exemptions and
- calculating the order total.
There is a very good chance I missed something in that list. The database may be small at 10 tables, but this one function can potentially hit 9 of those tables. So, once I'm done this screen, the rest flies.
To put this in perspective, the main application has only 3 functions. Check-in, Check-out and Reports. Check-in is what I went over above. Check-out simply pulls up an invoice, and if not paid yet allows the user to apply payments (which I need to complete as part of check-in for pre-payments), and once paid, flags the order being picked up so the one part unique to check-out is setting a flag on one table. And then there is reports which are not even worth mentioning since they are non-interactive, they are trivial by comparison. And then some maintenance functions which are actually already done, and perhaps even more trivial than the reports.
Anyway, that was a long winded way of getting to the point that I'm very excited to be mostly done a single screen. I got to use the Reporting stuff I had written a few months back now. I know that in theory it worked because I had ran some quick tests against it. But this time I actually generated an invoice to both the screen and to a printer using the library. Had a quick issue at first where something along the line didn't like me giving it data coming from an MTA thread. So I had to spin off a new STA thread to get the printing done... but exciting stuff.
So, with the application I wrote for V, there is basically 1 screen which is 90% of the application. It's also the first screen that needs to be done, and it touches virtually every part of the system. In some ways, it is a monstrosity. So, this is one of the reasons why I haven't gotten further. This one screen is pretty disappointing. I can throw hours at it and walk away feeling like nothing has been accomplished.
As of today, I think the screen is 75-85% complete now. Which is huge, because yesterday I would have said maybe 25% of the screen is done. Now, that is 75-85% done a first pass. A lot of what I'm considering "done" at the moment is looking pretty hideous, but it is functional and thats enough to keep me going.
The screen in question is the check-in screen. She takes in customer orders from this screen which includes:
- customer lookup/creation,
- assigning the work to someone,
- choosing the pick-up date for the order,
- displaying current work for the selected date,
- adding order line,
- looking up the services list and
- possibly entering notes,
- possibly pre-paying for orders,
- printing the order,
- previewing the order,
- applying customer/order discounts,
- adding exemptions and
- calculating the order total.
There is a very good chance I missed something in that list. The database may be small at 10 tables, but this one function can potentially hit 9 of those tables. So, once I'm done this screen, the rest flies.
To put this in perspective, the main application has only 3 functions. Check-in, Check-out and Reports. Check-in is what I went over above. Check-out simply pulls up an invoice, and if not paid yet allows the user to apply payments (which I need to complete as part of check-in for pre-payments), and once paid, flags the order being picked up so the one part unique to check-out is setting a flag on one table. And then there is reports which are not even worth mentioning since they are non-interactive, they are trivial by comparison. And then some maintenance functions which are actually already done, and perhaps even more trivial than the reports.
Anyway, that was a long winded way of getting to the point that I'm very excited to be mostly done a single screen. I got to use the Reporting stuff I had written a few months back now. I know that in theory it worked because I had ran some quick tests against it. But this time I actually generated an invoice to both the screen and to a printer using the library. Had a quick issue at first where something along the line didn't like me giving it data coming from an MTA thread. So I had to spin off a new STA thread to get the printing done... but exciting stuff.
Comments
Post a Comment