2012-10-09 101 views
2

我目前正在使用C#和SQL Studio 2010开发一个项目,该项目需要与我们在AS400上运行的旧版程序进行通信。我们可以访问称为ASNA的第三方套件,它允许dotNet编译RPG代码,并可以透明地访问ISeries和MS SQL Stuidio。什么是首选方法AS400桥接?

我们有一个批处理作业,需要将其结果(编号为300,000+以上的项目)返回给AS400。我们通常使用WCF服务,但我们担心这可能是太多的数据。

以下是我们考虑的一些选项:

  • WCF服务,迭代的数据块
  • 产生一个文本文件,必要的数据的变化和它FTP到一个文件夹中的AS400从读
  • 授予读从AS400到表与相关数据

只访问我们应该允许读访问表或保持系统的完全分离?

+1

IBM i的数据太多?决不!让流程运行。我们有一种工具可以传输比每晚更多的数据,这需要一个半小时左右的时间。我最近重写了它,使它更有效率,现在花费的时间比这少。下降到大约15分钟。 –

+0

请注意,客户端访问包含AS/400的数据库驱动程序。如果您可以创建数据库连接,则可以直接上传数据。 –

回答

3

是否有任何理由不能直接使用SQL将数据从批处理作业内直接写入AS/400?

如果你想“保持系统的完全分离”,那么你当然可以创建一个文本文件并将它传送给AS/400上的IFS--但是你必须在AS/400上编写软件来解析该文本文件并将数据放入适当的物理文件(表)中。

不知道你组织的具体情况我不能回答你的问题“我们应该允许读表访问表还是保持系统完全分离?”。基于我工作过的地方,我会按顺序选择这些选项:

1)使用SQL将数据从C#批量作业内直接写入AS/400。

2)有一个在AS/400上运行并从Microsoft SQL Server读取数据的计划作业。

3)创建一个文本文件(可能是一个CSV文件),并将其FTP到AS/400上的IFS,然后我将运行一个计划作业来解析数据。

相关问题