<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://codebetter.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>Peter's Gekko  - All Comments</title><link>http://codebetter.com/blogs/peter.van.ooijen/default.aspx</link><description>public Blog MyNotepad : Imho
{
}</description><dc:language>en</dc:language><generator>CommunityServer 2008.5 SP1 (Build: 31106.3070)</generator><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249753</link><pubDate>Mon, 06 Jul 2009 02:57:22 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249753</guid><dc:creator>Hendry Luk</dc:creator><description>&lt;p&gt;Domain entity doesnt suit well in most of my reports. Things like &amp;quot;100 top orders of this months&amp;quot; with one of the columns being &amp;quot;total price&amp;quot;, sorted by that column (hence &amp;quot;total price&amp;quot; would also be the definition of top 100).&lt;/p&gt;
&lt;p&gt;Using conventional domain-entity would make it horrible in term of performance. And those scenario happens not only in reporting in normal sense, but also in usual order-search screen, or customer-search.&lt;/p&gt;
&lt;p&gt;I believe NH projections would make much better sense. This means that reporting or screen-specific model will reach (and live) straight into data-access (repository), since repositories know how to load them &amp;quot;correctly&amp;quot; (performance-wise).&lt;/p&gt;
&lt;p&gt;I don&amp;#39;t feel comfortable having ViewModel (or reporting-model) exposed to all core layers (domain, repositories, application layers).&lt;/p&gt;
&lt;p&gt;What&amp;#39;s your view about this?&lt;/p&gt;
&lt;p&gt;Ta&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249753" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249724</link><pubDate>Sat, 04 Jul 2009 18:28:34 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249724</guid><dc:creator>Sérgio Sarabando</dc:creator><description>&lt;p&gt;I&amp;#39;ve arrived at a way of doing it. First, if I put a Sum of ReportItems in the page header or footer, it&amp;#39;ll only sum the ReportItems of that page. Knowing that, I&amp;#39;ve created two functions in the Custom Code area of the report, one to store the sum per page in a Collection (index is the page number) and another to get a running total from that Collection. Then I invoke those functions in the header and/or footer and I get my &amp;quot;transport&amp;quot; field. Not as clean as in CR, but doable.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249724" width="1" height="1"&gt;</description></item><item><title>re: A small web design rant: beware of the RADical designer</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/06/22/a-small-web-design-rant-beware-of-the-radical-designer.aspx#249695</link><pubDate>Sat, 04 Jul 2009 10:24:51 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249695</guid><dc:creator>johnsaint</dc:creator><description>&lt;p&gt;yes it happened with me, but was fortunate to get a person who had knowledge.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249695" width="1" height="1"&gt;</description></item><item><title>re: Nhibernate and medium trust</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2008/05/09/nhibernate-and-medium-trust.aspx#249693</link><pubDate>Sat, 04 Jul 2009 08:08:38 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249693</guid><dc:creator>pvanooijen</dc:creator><description>&lt;p&gt;Proxy generator requires NH 2.0&lt;/p&gt;
&lt;p&gt;At the time I wrote this post the proxy generator didn&amp;#39;t work as promissed Perhaps it does now..&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249693" width="1" height="1"&gt;</description></item><item><title>re: Nhibernate and medium trust</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2008/05/09/nhibernate-and-medium-trust.aspx#249684</link><pubDate>Sat, 04 Jul 2009 04:03:22 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249684</guid><dc:creator>dev</dc:creator><description>&lt;p&gt;Use NH Proxy Generators, it solves the problem:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://nhforge.org/wikis/proxygenerators10/introduction.aspx"&gt;nhforge.org/.../introduction.aspx&lt;/a&gt;&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249684" width="1" height="1"&gt;</description></item><item><title>re: Nhibernate and medium trust</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2008/05/09/nhibernate-and-medium-trust.aspx#249683</link><pubDate>Sat, 04 Jul 2009 04:01:38 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249683</guid><dc:creator>me</dc:creator><description>&lt;p&gt;This solves it: &lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://nhforge.org/wikis/proxygenerators10/introduction.aspx"&gt;nhforge.org/.../introduction.aspx&lt;/a&gt;&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249683" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249653</link><pubDate>Fri, 03 Jul 2009 16:13:50 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249653</guid><dc:creator>Sérgio Sarabando</dc:creator><description>&lt;p&gt;Thanks. We&amp;#39;ll dig in some more.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249653" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249616</link><pubDate>Fri, 03 Jul 2009 13:02:43 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249616</guid><dc:creator>Peter van OOijen</dc:creator><description>&lt;p&gt;@Sergio : There is a lot you can do with the expressions. It takes some experimenting to see where that stops. It is also possible to load your own assemblies into a report. Which makes the sky the limit. I havn&amp;#39;t tried that myself yet (no need yet). Of all the rporting tools I&amp;#39;ve seen these rdlc&amp;#39;s are amnongst the most powerfull.&lt;/p&gt;
&lt;p&gt;The problem with most docs is that they are pretty incomplete.&lt;/p&gt;
&lt;p&gt;@Mike Yes for an invoice it would make sense to save a reporting copy in a reporting DB. But a reporting DB is not allways an option. In one of my projects people update data and print a report to check if they did everything right. If &amp;nbsp;no they correct things asap. SO those reports really have to be against the live production data.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249616" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249615</link><pubDate>Fri, 03 Jul 2009 11:41:06 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249615</guid><dc:creator>Mike</dc:creator><description>&lt;p&gt;I would have thought that once the Invoice is finalised the domain could be captured to save the data off for reporting separately.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249615" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249558</link><pubDate>Thu, 02 Jul 2009 16:26:43 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249558</guid><dc:creator>Sérgio Sarabando</dc:creator><description>&lt;p&gt;We are currently evaluating if we make or not the change to the client side reports that you mention (we use CR), but we&amp;#39;ve stumbled into a problem: in the same invoice scenario that you showed, we have to show a &amp;quot;transport&amp;quot; field that shows the running total at the bottom of each page and show it again in the top of the next one when there are more lines that can fit in a printed page.&lt;/p&gt;
&lt;p&gt;We&amp;#39;ve searched all over the docs and the &amp;#39;net but are unable to find a solution.&lt;/p&gt;
&lt;p&gt;Have you had the same problem?&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249558" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249555</link><pubDate>Thu, 02 Jul 2009 10:05:41 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249555</guid><dc:creator>pvanooijen</dc:creator><description>&lt;p&gt;There is a reportviewer for asp.net. Havn&amp;#39;t tried that yet. It should accept the same report.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249555" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249553</link><pubDate>Thu, 02 Jul 2009 09:55:11 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249553</guid><dc:creator>CWS</dc:creator><description>&lt;p&gt;Great post!&lt;/p&gt;
&lt;p&gt;Is this approach applicable on a Asp.Net app?&lt;/p&gt;
&lt;p&gt;Regards&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249553" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249513</link><pubDate>Wed, 01 Jul 2009 15:40:03 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249513</guid><dc:creator>Steve Sheldon</dc:creator><description>&lt;p&gt;SSRS can also use a Web Service as a source for data. &amp;nbsp; I haven&amp;#39;t looked at 2008 yet to see if this capability has been further expanded, but it was there in 2005.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249513" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249511</link><pubDate>Wed, 01 Jul 2009 14:57:07 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249511</guid><dc:creator>pvanooijen</dc:creator><description>&lt;p&gt;@Jimmy, there are magic strings everywhere. &lt;/p&gt;
&lt;p&gt;The nice thing with these reports is that a lot is &amp;nbsp;checked at compile time. Behind the scenes code is generated and the expression &lt;/p&gt;
&lt;p&gt;=Fields!OnDates.Value &lt;/p&gt;
&lt;p&gt;will result in a compile error, because the field OnDates does not exist. (It&amp;#39;s OnDate)&lt;/p&gt;
&lt;p&gt;Also the expression &lt;/p&gt;
&lt;p&gt;= &amp;quot;Faktuur &amp;quot; + Fields!Number.Value +,+ &lt;/p&gt;
&lt;p&gt;will result in compile error, because it has an invalid syntax.&lt;/p&gt;
&lt;p&gt;The other magic strings are in the nHibernate code. Building a query has a lot of magic. That won&amp;#39;t be checked till runtime.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249511" width="1" height="1"&gt;</description></item><item><title>re: Reporting against a domain model</title><link>http://codebetter.com/blogs/peter.van.ooijen/archive/2009/07/01/reporting-against-a-domain-model.aspx#249506</link><pubDate>Wed, 01 Jul 2009 14:02:18 GMT</pubDate><guid isPermaLink="false">d21fbbc9-c112-4f32-ad14-95939a2c53d4:249506</guid><dc:creator>Jimmy Bogard</dc:creator><description>&lt;p&gt;One thing that always bothered me with reporting is the magic strings for binding to properties. &amp;nbsp;I was able to create strongly-typed reports (i.e., expression-based) for Telerik:&lt;/p&gt;
&lt;p&gt;&lt;a rel="nofollow" target="_new" href="http://www.lostechies.com/blogs/jimmy_bogard/archive/2009/04/11/strongly-typed-telerik-reports.aspx"&gt;www.lostechies.com/.../strongly-typed-telerik-reports.aspx&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;Not sure if this is possible with Reporting Services reports, as Telerik uses a code-beside model for their report definitions.&lt;/p&gt;
&lt;div style="clear:both;"&gt;&lt;/div&gt;&lt;img src="http://codebetter.com/aggbug.aspx?PostID=249506" width="1" height="1"&gt;</description></item></channel></rss>