An application I'm building for a charitable foundation includes a membership database. My client wants to be able to report statistics on the numbers of new members who joined, the number who quit, the number who died (the average age of members is 68, so death is not an uncommon reason for leaving!), etc.
They report monthly and YTD stats to a Board of Directors as well as provide an end of year summary that includes data from the past two years for comparison. They currently generate these reports through a very onerous, error- prone process that involves an Access database, Word docs, Excel spreadsheets and probably a few chicken bones and magic incantations. I aim to fix all that since I'm rehosting the membership database in a Rails app. Are there any best practices out there for tracking and aggregating this type of information over time? I haven't found a plugin or gem that seems to offer this capability. I'm not concerned about an auditing capability as I already have that built-in where appropriate. I envision a combination of a reporting model and some callback hooks that will "see" actions such as adding a new member and update a counter in the reporting model, perhaps in a way akin to Sitealizer. Has anyone here got suggestions or pointers on a good way to approach this? One of the things I'll need to account for is hand-jamming the statistics from the last 2-3 years into the reporting table so that the previous years' data will show up in the reports. With a proper model for holding the reporting data that should be simple. Thanks, Chris -- SD Ruby mailing list [email protected] http://groups.google.com/group/sdruby
