2

我在 Visual Studio 2010 中的报告存在一些问题。我在 PostgreSQL 中进行了一个查询,当我在 pgAdmin Sql 编辑器中运行它时工作正常,但是在我在 VS2010 中创建一个新的数据集和 TableAdapter 并在查询生成器中添加查询之后,我得到以下错误。

Error in list of function arguments: '(' not recognized.
Error in list of function arguments: ')' not recognized.
Error in WHERE clause near '1 months'.
Unable to parse query text.

如果我点击执行查询,它会返回以下错误:

ERROR[42704]ERROR:type "INTERVAL" does not exists;

如果我删除 VS2010 在“INTERVAL”周围添加的双引号并再次点击执行查询,它可以工作,但只要我点击 OK,引号就会再次出现。话虽如此,如果我右键单击 TableAdapter 并点击预览数据,结果很好。

现在,如果我制作一个报告并添加上面的 DataSet,然后制作一个 WindowForm 并添加一个连接到报告的 ReportViewer,当我运行它时,什么也没有发生;一切都保持空白。

这是查询:

SELECT prod, mod, piece, no,
       rank() OVER (PARTITION BY mod ORDER BY no DESC)
FROM (SELECT prod, mod, piece,
               COUNT(qty) AS no
               FROM com c 
                     INNER JOIN lines l ON c.idcom=l.idcom
                     INNER JOIN pieces p ON l.idpiece=p.idpiece
                     INNER JOIN models m ON p.idmodel=m.idmodel
                     INNER JOIN prods pr ON m.idprod=pr.idprod
                WHERE c.date >  CURRENT_DATE - INTERVAL '1 months'
                GROUP BY piece,mod,prod) AS foo

我不明白为什么如果我从数据集中预览数据,查询运行良好(所有这些解析错误),但如果我将它添加到报告中,什么也没有发生。如果您需要更多详细信息,请询问。谢谢你。

4

0 回答 0