Tuesday, January 06, 2009
You are here:  Blog
 
Search Blogs Minimize
FinFolio Blogs Minimize
Blog_Archive Minimize
FinFolio Blog
Sep 12

Written by: Matt Abar
9/12/2008 4:27 PM

We just posted the second developer preview; this will be our last release without screens. The big new feature is the report engine, but we’ve added or changed numerous other items. We also included source code for a few of the modules, as well as partial API documentation for the entire framework.

If you're in the Beta group, you can download the release here. If you aren't in the Beta group but would like to be, contact me. As with the first developer preview, don't download this unless you are an intermediate to advanced Microsoft dot Net developer.

We've added some dependencies this time. In future releases, you won't need to install 3rd party libraries, but we don't have a real install yet. Please install the following items:

  • Crystal Reports for .Net 3.5 (comes with Visual Studio)
  • Developer Express Chart Control - Note: Despite the large download, you only need to install the Windows Forms Chart Control.

New features for this release:

Reporting – The reporting framework is finished, and we’ve included an example that builds a report package and uses Crystal Reports to generate PDF reports for some sample clients. I’m extremely happy with the way this came together and think you’ll be pleasantly surprised by the quality of our reports.

Code Refinement – After getting feedback on the first developer preview, we’ve gone through the object model and refined much of the code, greatly reducing the number of lines in the sample project.

Documentation - The API documentation is about 70% complete.

 

Data Access – With the last developer release you had to load objects using complicated nHibernate queries. We abstracted all of that away and now you use simple Load and Save methods. You still have access to the more complicated nHibernate queries if you want to do something crazy, but I encourage you to just use the Load and Save methods. We do.

Enhanced Framework – We’ve enhanced the framework to provide easier access to static information like lookup lists (account types, custodians), currencies and exchange rates, etc. We also fleshed out the object model and most of the objects now have the appropriate data fields and properties.

Filters – There is now a generic Filter object that lets you easily build sophisticated filters that can be applied to all levels of the object model. For example, you can write a filter like “clients in the state of Texas” and apply it to queries on Securities (all securities owned by clients in the state of Texas), transactions (all activities in accounts owned by clients in the state of Texas), etc. The Filters are a core technology that will let us do things like dynamic grouping and sophisticated row-level security.

Customization– We’ve created a few sample projects that show how to extend the object model, adding fields to existing objects or creating entirely new objects. This is still more complicated than we’d like it to be so expect future changes as we get feedback from people writing extensions.

Source Code – We’ve included the source code for two of the modules. I’m not sure yet how many modules we’ll ultimately release source for, but this is a good start. ;-)

  • Client Reports: I tentatively think we’ll publish the source code for all of the reports. This will be the most heavily customized area of the software and I don’t see any reason not to show you how we’re creating each report. You can see exactly how we’re building our data sets (using LINQ), and what the Crystal Reports look like.
  • Rebalancing - With the Rebalancing module, you can see how we’ve implemented a simple security-based rebalancer. It can trade portfolios that contain assets from multiple accounts, and will create tax-sensitive trades whenever possible.

Samples – We’ve added several new samples and updated the existing samples to reflect the new code changes.

Tags:
Privacy Statement | Terms Of Use