Progress resumes...
I had some small motivation to get things done today. So I did.
I removed the ability in some cases entirely to delete entities. And in others I "faked" deletes by using either a special status or special field. The service layer still calls it a delete and the subsequent searches ignore those records. I imagine that there would still be ways of accessing them... for example, if I delete an order I would still see it in the customer history. I can suppress loading the order directly, but indirectly. I suppose I'm a bit screwed. A bit harsh maybe, I don't really think this is a mandatory thing by any means. It solves any issues I had with deleting parents entities and goes one step further and preserves the data. And, it also preemptively trims down search results behind the scenes to reduce data usage when it will matter most. From an auditing and data preservation standpoint this should keep things neat and tidy. When records are deleted it makes life difficult later if something gets broken, by keeping everything means that in general fixing data issues should be trivial.
In addition to that I cleaned up a few bugs, or rather I looked into something I thought was a bug until I realized it was a data anomaly left over from when Veronica deleted a parent object in her testing (oops). And I added a place on the order grids to show the special orders for each line which also allows them to be deleted from there.
What's left now is a once over of every single screen and function to ensure that there are no obvious bugs, and perhaps before that a quick change to Special Orders and Purchase Orders to allow more of the product information to be specified when creating a new Product in those screens. It is a bit irritating that they do not allow for inserting my poorly named "Addon Field" and Sales Price. One is likely to be used in every search, and the other is needed immediately after created if it is a special order.
Then, I will probably setup a time to try and get it all installed on Tony's PC and have him do a few dry runs with the software making sure that first and foremost it can do what is needed and then also to validate that it is good enough for daily use and get some feedback. After that point I will pretty things up and call it version 1.0... YAY!
I removed the ability in some cases entirely to delete entities. And in others I "faked" deletes by using either a special status or special field. The service layer still calls it a delete and the subsequent searches ignore those records. I imagine that there would still be ways of accessing them... for example, if I delete an order I would still see it in the customer history. I can suppress loading the order directly, but indirectly. I suppose I'm a bit screwed. A bit harsh maybe, I don't really think this is a mandatory thing by any means. It solves any issues I had with deleting parents entities and goes one step further and preserves the data. And, it also preemptively trims down search results behind the scenes to reduce data usage when it will matter most. From an auditing and data preservation standpoint this should keep things neat and tidy. When records are deleted it makes life difficult later if something gets broken, by keeping everything means that in general fixing data issues should be trivial.
In addition to that I cleaned up a few bugs, or rather I looked into something I thought was a bug until I realized it was a data anomaly left over from when Veronica deleted a parent object in her testing (oops). And I added a place on the order grids to show the special orders for each line which also allows them to be deleted from there.
What's left now is a once over of every single screen and function to ensure that there are no obvious bugs, and perhaps before that a quick change to Special Orders and Purchase Orders to allow more of the product information to be specified when creating a new Product in those screens. It is a bit irritating that they do not allow for inserting my poorly named "Addon Field" and Sales Price. One is likely to be used in every search, and the other is needed immediately after created if it is a special order.
Then, I will probably setup a time to try and get it all installed on Tony's PC and have him do a few dry runs with the software making sure that first and foremost it can do what is needed and then also to validate that it is good enough for daily use and get some feedback. After that point I will pretty things up and call it version 1.0... YAY!
Comments
Post a Comment