PROCEDURE net_drl_hdr_post_query(
p_drl_hdr_no IN drl_hdr.drl_hdr_no%TYPE,
p_norm_install_hours out norm_hour.install_norm_hour%TYPE,
p_quan_in_order out t_my_type,
p_quan_stock_tot out t_my_type,
p_quan_reserved_pick_lst out t_my_type
)
where t_my_type is:
TYPE t_my_type IS TABLE OF NUMBER INDEX BY BINARY_INTEGER
I try the following:
Code: Select all
using (var cmd = conn.CreateCommand())
{
cmd.CommandText = "STD73_UDV.S201_BIZ.NET_DRL_HDR_POST_QUERY";
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new OracleParameter("P_DRL_HDR_NO", OracleDbType.Number));
cmd.Parameters["P_DRL_HDR_NO"].Value = 2815;
cmd.Parameters["P_DRL_HDR_NO"].Direction = ParameterDirection.Input;
cmd.Parameters.Add(new OracleParameter("P_NORM_INSTALL_HOURS", OracleDbType.Number));
cmd.Parameters["P_NORM_INSTALL_HOURS"].Direction = ParameterDirection.Output;
cmd.Parameters.Add(new OracleParameter("P_QUAN_IN_ORDER", OracleDbType.Number));
cmd.Parameters["P_QUAN_IN_ORDER"].Direction = ParameterDirection.Output;
cmd.Parameters.Add(new OracleParameter("P_QUAN_STOCK_TOT", OracleDbType.Number));
cmd.Parameters["P_QUAN_STOCK_TOT"].Direction = ParameterDirection.Output;
cmd.Parameters.Add(new OracleParameter("P_QUAN_RESERVED_PICK_LST", OracleDbType.Number));
cmd.Parameters["P_QUAN_RESERVED_PICK_LST"].Direction = ParameterDirection.Output;
cmd.ExecuteNonQuery();
var tmp = cmd.Parameters["P_QUAN_IN_ORDER"].Value;
}