Icon View Incident Report

Serious Serious
Reported By: Fernando Dias
Reported On: 1/17/2012
For: Version 2.07 Build 1
# 3536 Derived Tables Using Parameters and UNION/INTERSECT/EXCEPT Can Cause Incorrect Results

The following query returns only one row instead of the correct six rows, and even that single row has wrong values for the "Valor" column.


Parameter values:

cf2 = 1137
di2 = 2011-01-01
cf1 = 1137
di1 = 2011-01-01
df1 = 2011-12-31

Query:

SELECT * FROM
(
    SELECT
      CAST(NULL AS DATE) AS DataMov, 'Saldo Anterior' AS Descricao, '' AS TipoDoc, CAST(NULL AS INTEGER) AS NumReg, '' AS NumDoc, 
      SUM(ValorMovCS) AS Valor , CAST(NULL AS INTEGER) AS Diario, CAST(NULL AS INTEGER) AS NumLanc
    FROM
      MovFor
    WHERE
      CodFornecedor = :cf2 AND DataMov < :di2

    UNION ALL

    SELECT
      DataMov, Descricao, TipoDoc, NumReg, NumDoc, ValorMovCS, Diario, NumLanc
    FROM
      MovFor
    WHERE
      CodFornecedor = :cf1 AND 
      DataMov >= :di1 AND 
      DataMov <= :df1
)
AS TmpTbl



Resolution Resolution
Fixed Problem on 1/20/2012 in version 2.08 build 1


Products Affected Products Affected
ElevateDB Additional Software and Utilities
ElevateDB DAC Client-Server
ElevateDB DAC Client-Server with Source
ElevateDB DAC Standard
ElevateDB DAC Standard with Source
ElevateDB DAC Trial
ElevateDB LCL Standard with Source
ElevateDB PHP Standard
ElevateDB PHP Standard with Source
ElevateDB PHP Trial
ElevateDB VCL Client-Server
ElevateDB VCL Client-Server with Source
ElevateDB VCL Standard
ElevateDB VCL Standard with Source
ElevateDB VCL Trial

Image