|  | Posted by AF on 11/20/07 00:49 
I am having a problem with several reports at work.  We use an SQLgenerator package where we fill in a template, and the system
 generates SQL code.
 
 The reports I have been running at a low level return a sales value of
 $96,000 for a specific office for 2006.
 
 Here is my filter,
 
 Office = 23
 
 Region = Northeast
 
 Product Cat = (several different categories)
 
 Year = 2006
 
 When I added some additional columns, the sale for the same office
 went to over $9 Million.  When I analyzed this further, I found all
 offices in the region were being returned for the second report, and
 thus I ended up with the sales for all of the regions sales.
 
 What I am really confused about is how using the exact same filter, a
 simple report can show one number and then by adding some facts or
 columns my sales went up.  (and I did confirm character by character
 we are using the same filter.)
 
 Is this explainable based on some principle of SQL I am unfamiliar
 with?
 
 One explanation I received from IT, who is too busy to look at my
 problem, is that by adding additional columns, I essentially asked our
 SQL generator to set up a larger join than I expected.
 
 If this were true, wouldn't the filter still eliminate records that
 don't meet the filter requirements?
 
 I suspect the SQL generator applied the filter at the wrong spot.  I
 tried looking at the SQL: code, but it is very complicated.
 
 So I am turning to this forum to see if anyone can think of a logical
 explanation that would allow SQL to in effect return a larger dataset
 than my original report.
 
 Thanks for any help.
  Navigation: [Reply to this message] |