2016-04-25 30 views
0

我有一个接受类型为xml的参数@Data并更新订单表的顺序的过程。在SSRS报告中多次调用更新过程(接受XML参数)

我必须在SSRS报告中调用此过程,以获取需要更新并从一个源表更新订单表的任何订单。 现在我有一个CTE列出了需要在此报表的订单表中更新的所有orderIds。

让说的CTE返回orderIds:1234,4567

下面两行会更新顺序表顺序1234。

@XmlData XML = (select MyScalarValueFunction('1234')) 
    execute UpdateProcedure @Data = @XmlData 

,并让说,报告中的数据集查询客户选择所有要求,如果客户的订单已被处理,我想在表中更新将订单。

select c.CustomerName, c.OrderId from CustomerDemandsTable c 

我的挑战是: 我如何可以合并两个线对每个订单我的报告数据集查询更新表。

我已经完成了从SSRS数据集之前更新表。但是在每次我更新整个表时,我都没有声明任何参数,并且在查询过程中调用更新过程。

任何帮助,非常感谢。

回答

0

如果我正确理解你的要求要执行3个步骤:

  1. 检测数据是否应该更新
  2. 更新数据
  3. 返回数据(包括更新数据)

为此,我会建议构建一个存储过程来处理这些所有这些步骤。在存储过程中,您可以执行查询来提取未处理的记录,然后遍历每条记录并执行更新过程,最后查询并返回完全更新的数据集。