Hello everybody !!!
I have this oracle stored Procedure :
PROCEDURE sp_cree_planning ( pi_id_trait IN T_TRAIT.ID_TRAIT%TYPE, pi_f_actif IN T_PLANNING.F_ACTIF%TYPE, pi_id_si IN T_PLANNING.ID_SI%TYPE, pi_lst_loc IN TABLE_NUMBER, pi_lst_par_nom IN table_varchar2_50, pi_lst_par_val IN table_varchar2_200, pi_d_modif IN DATE, pi_id_user IN T_USERS.ID_USER%TYPE, po_c_erreur OUT NUMBER, po_des_erreur OUT VARCHAR2 ) IS l_nom_param T_PLANNING_PARAM.NOM_PARAM%TYPE; l_valeur_param T_PLANNING_PARAM.VALEUR_PARAM%TYPE; l_id_planning T_PLANNING.ID_PLANNING%TYPE; l_tab_par table_par; l_err_fonc EXCEPTION; po_c_erreur_trait NUMBER; po_des_erreur_trait VARCHAR2(2000); BEGIN po_c_erreur := Pck_Erreur.CST_OK; sp_tab_param(pi_lst_par_nom,pi_lst_par_val ,l_tab_par,po_c_erreur_trait,po_des_erreur_trait); IF po_c_erreur_trait <> Pck_Erreur.CST_OK THEN po_c_erreur := po_c_erreur_trait; po_des_erreur := po_des_erreur_trait; RAISE l_err_fonc; END IF; IF pi_lst_loc.COUNT <> 0 THEN FOR i IN pi_lst_loc.FIRST..pi_lst_loc.LAST LOOP -- création du planning : lien job-lieu SELECT SEQ_PLANNING.NEXTVAL INTO l_id_planning FROM dual; INSERT INTO T_PLANNING(ID_PLANNING,ID_TRAIT,ID_LOC,ID_SI,F_ACTIF,ID_USER,D_MODIF) VALUES (l_id_planning,pi_id_trait,pi_lst_loc(i),pi_id_si,pi_f_actif,pi_id_user,pi_d_modif); IF l_tab_par.COUNT <>0 THEN FOR j IN l_tab_par.FIRST..l_tab_par.LAST LOOP IF l_tab_par(j).par_nom IS NOT NULL THEN INSERT INTO T_PLANNING_PARAM(ID_PLANNING,NOM_PARAM,VALEUR_PARAM,ID_USER, D_MODIF) VALUES (l_id_planning,l_tab_par(j).par_nom,l_tab_par(j).par_val,pi_id_user,pi_d_modif); END IF; END LOOP; END IF; END LOOP; END IF;
Somebody may tell me how to call this procedure using C#?
The dificulty is here :
pi_lst_loc IN TABLE_NUMBER, pi_lst_par_nom IN table_varchar2_50, pi_lst_par_val IN table_varchar2_200,
I don't know how to use it here for example :
Parameter piIdTrait = new Parameter { Name = ParamIdRequest, Type = OracleDbType.Int64, Direction = ParameterDirection.Input }; piIdTrait.Value = (Int64?)Int64.Parse(idRequest); proc.Parameters.Add(piIdTrait );
Thanx very much