【问题标题】:AEP help needed需要 AEP 帮助
【发布时间】:2010-06-30 16:00:03
【问题描述】:

AEP 存储过程函数是否可以添加额外的参数?

【问题讨论】:

    标签: advantage-database-server


    【解决方案1】:

    如果我理解您的要求,答案是肯定的。您可以使用 ALTER PROCEDURE 语句将参数添加到现有 AEP。例如,

    ALTER PROCEDURE MyAEP ( 
          num Integer,
          newparam Integer
       ) 
       FUNCTION 
         "TestSP"
       IN COMLIBRARY 
         "AdvantageAEP1.aep_procedures";
    

    您还需要更新过程本身以使用该参数。

    就 DLL 或程序集中的函数本身而言,您不能更改参数列表。服务器需要一个非常具体的函数原型。

    【讨论】:

    • 我指的是 .Net Class 函数。
    • @Howard,我在答案中添加了更多信息。您不能更改函数原型。不过我很好奇。您要添加哪些参数?
    • 我正在开发一个 Biztalk WCF 适配器,需要提取存储过程的元数据。输入和输出参数存储在 system.storedprocedures 中的方式使得解析出参数变得非常困难。我需要为过程生成模式。该适配器是一个 Visual Studio 插件,可为入站和出站操作生成运行时架构和绑定文件。
    • @Howard,我可能还是不明白,因为我不明白将参数添加到实际的 AEP 函数会有什么帮助。但也许 AdsCommand.DeriveParameters 会有所帮助。它可以从存储过程中提取该信息。
    【解决方案2】:

    假设您想知道如何将参数发送到存储过程然后读取它们,您可以根据需要使用尽可能多的参数创建函数。当您执行存储过程时,您构建的要调用的 .NET 程序集本身会获取非常具体的参数(正如 Mark 所提到的)。
    您的任务是使用传递给您的连接打开 __input 表并读取存储在那里的参数值,并根据需要对其进行操作。
    如果您从 9.1 获得帮助文件(我相信),其中所有帮助都在一个文件中,您会发现 Cary Jensen 的书也包括在内,他在第 7 章中有几节关于使用 .NET 编写存储过程C# 和 VB.Net

    【讨论】:

      猜你喜欢
      • 2022-01-04
      • 2017-10-05
      • 2017-03-23
      • 2012-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多