繁体   English   中英

Adf的Ebs程序电话

[英]Ebs Procedure call from Adf

嗨,我正在尝试从adf应用程序调用ebs过程。 程序接受3个输入参数并返回2 o / p。 但是当我执行cs.executeUpdate()它显示错误Missing IN or OUT parameter at index::6 。有人可以帮助我找到它吗?

HelperMethod(用AppModuleImpl编写)

    public String getEmployeeName(String username, String password) {
    CallableStatement cs = null;
    try {
        cs =
            getDBTransaction().createCallableStatement("begin ? :=APPS.XX_IE_ENTER_DELEGATION.oie_enter_delegation(?,?,?,?,?); end;",
                                                       0);
        cs.setString(1, username);
        cs.setString(2, password);
        cs.setString(3, "31442");
        cs.registerOutParameter(4, Types.INTEGER);
        cs.registerOutParameter(5, Types.VARCHAR);
        cs.execute(); // **Getting Error**
        cs.close(); 
        return cs.getString(3);
    } catch (SQLException e) {
        throw new JboException(e);
    }
}

按钮ActionListener

    public void getFromEbs(ActionEvent actionEvent) {
    BindingContainer bindings = getBindings();
    OperationBinding operationBinding = bindings.getOperationBinding("getEmployeeName");
    Object result = operationBinding.execute();
    System.out.println("Result= " + result); // result will be the output of PL function
}

由于您已经在语句的开头添加了"begin ? := APPS.XX" ,这意味着您正在调用一个函数并等待其结果。

如果您尝试调用过程而不是如您所说的函数,则应将其更改为"begin APPS.XX"

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM