我目前正在开发一个使用C#和SQL Studio 2010的项目,该项目需要与我们在AS400上运行的旧程序进行通信。我们可以访问名为ASNA的第三方套件,它允许dotNet编译RPG代码,并且可以透明地访问ISeries和MS SQL Stuidio。
我们有一个批处理作业需要将其结果(可能有300,000多个项目)返回给AS400。我们通常使用WCF服务,但我们担心这可能是太多的数据。
以下是我们考虑的一些选项:
我们是否应该允许对表的读访问权或保持系统的完全分离?
答案 0 :(得分:3)
是否有任何理由不能仅使用SQL从批处理作业中将数据直接写入AS / 400?
如果你想“保持系统的完全分离”,你当然可以创建一个文本文件并将其FTP到AS / 400上的IFS - 但是你必须在AS / 400上编写软件来解析该文本文件并将数据放入适当的物理文件(表)。
在不知道您组织的具体情况的情况下,我无法回答您的问题“我们是否应允许对表格进行读取访问或保持系统完全分离?”。根据我工作过的地方,这些是我按顺序选择的选项:
1)使用SQL从C#批处理作业中直接将数据写入AS / 400。
2)拥有在AS / 400上运行的预定作业,并从Microsoft SQL Server读取数据。
3)创建一个文本文件(可能是一个CSV文件)并将其FTP到AS / 400上的IFS,然后我将运行一个预定的作业来解析数据。