Josh wrote: > I understand what you are saying, and I'm sure the tasks our program > does could be made much cleaner. But, implementing an ERP which is > basically what we have, is a large project and the users need (or maybe > just want) access to lots of information.
I'm not pretending to know what this system does in detail, but the fact that you need to access a lot of information doesn't imply that you need lots of different user interfaces. I think e.g. wordprocessors, spreadsheet programs and SQL monitors etc are proof of that. I suppose that you need to present a lot of differnt kinds of data, and that you need to provide various search parameters etc for different data sets, but this sounds like something that might be very few screens that adapt to some kind of meta-data, perhaps XML descriptions or small "configuration files" containing som simple Python data structures and possibly input validation routines etc. Maybe this information should even be in the database? The problem arises if there is behavior in the application that varies with data, but with Python, it's certainly possible to handle that to some extent even if these screens are driven by database content. BTW, I guess DABO http://dabodev.com/ is intended just for this kind of application, but I doubt it was ever used for a project of this size, it's fairly new... Never used it myself... Whatever you use for your user interface, I suggest that you use a multi-tier approach, and a very thin user interface layer. In my opinion that makes testing much easier. I'd recommend that you use a proper test tool and employ a test-driven approach. -- http://mail.python.org/mailman/listinfo/python-list