我需要以最佳方式进行指导。我发布了一份报告,显示过去2个月没有销售情况的部分#'。我们现在假设这将在每月初开始运行。我这样做是硬编码的,这需要自动运行在水晶报告中。我这样做的方式是4次查询。第一个选择可以出售的物品'和库存。看来我们可以很容易地将其变成一种观点。
这第二个选择了在2个月内销售的商品。这应该是存储过程吗?如果是这样,我之前没有exp。在IBM i上使用SP。但在我看来sp是最好的。
我们在第4或第5个月有销售时选择记录。 这是硬编码的。我们需要在过去的两个月里一直这样做。如果程序正在运行 6月那时我们需要看看五月和四月。这一年应该是相应的。本年除非我们在运行此版本 一月至二月然后我们想要2013年11月 - 12月等。
SELECT
ALL T01.IAPRT#, T01.IA101, T01.IAPRLC, T01.IARCC1, T01.IARCC2,
T01.IARCC3, T01.IARCC4, T01.IARCC5, T01.IARCC6, T01.IARCC7,
T01.IARCC8, T01.IARCC9, T01.IARC10, T01.IARC11, T01.IARC12,
T01.IARC13, T01.IARC14, T01.IARC15, T02.IQYER#, T02.IQA04,
T02.IQA05, (T02.IQA04+T02.IQA05) AS TOT45
FROM ASTDTA.ICPRT1 T01 LEFT OUTER JOIN
ASTDTA.ICSUM1 T02
ON T01.IAPRT# = T02.IQPRT#
WHERE IAORDF = '1'
AND IARCC6 = 'INV'
AND T02.IQYER# = 2014
AND T02.IQTSCC = 'I'
AND (T02.IQA04+T02.IQA05) <> 0
ORDER BY T01.IAPRT# ASC
答案 0 :(得分:3)
在IBM i上创建SQL存储过程与在任何其他平台上创建存储过程非常相似。 CREATE PROCEDURE是SQL命令。您可以通过绿屏STRSQL命令,GUI IBM i Navigator或IBM i Access for Web发出该命令。如果您愿意,也可以使用ODBC或JDBC连接。
所有IBM i参考资料都可以位于Knowledge Center对于v7.1,存储过程的直接链接是http://www-01.ibm.com/support/knowledgecenter/ssw_ibm_i_71/sqlp/rbafysproeg.htm?lang=en导航路径是IBM i 7.1&gt;数据库&gt;编程&gt; SQL编程&gt;例程&gt;存储过程。