bonjour j'utilise le bulk sous oracle 9i mais le pb c'est que le fetch ne retourne aucun enregistrement!!malgres que ce meme curseur retourne des valeur avec une base8i c'est quoi le pb avotre avis voici le code
create or replace package body pk_bulk is PROCEDURE LISTE_EN is cursor c_enc is select id_enc , dat_cont, etat_enc, typ_rej, cod_mot_rej, num_appel, flg_envoye, cod_enc, cod_prod, cod_scf, cod_fact,mnt_enc,dat_enc from enc where typ_enc != 1 and etat_enc=1 ; --for update nowait; type t_id_enc is table of enc.id_enc%type; c_id_enc t_id_enc; i number; j number;
begin
PK_IDENT.SET_IDENT('Controle des encaissements', 'SNE', 'Administrateur', 'Poste1', '193.94.1.177'); open c_enc; FETCH c_enc BULK COLLECT INTO c_id_enc, c_dat_cont, c_etat_enc, c_typ_rej, c_cod_mot_rej, c_num_appel, c_flg_envoye, c_cod_enc, c_cod_prod, c_cod_scf, c_cod_fact,c_mnt_enc,c_dat_enc; if c_enc%found then FOR i IN 1..c_id_enc.COUNT loop --PK_EMARGEMEN.enc_enre(c_id_enc(i), c_etat_enc(i), c_typ_rej(i), -- c_cod_mot_rej(i), c_num_appel(i), c_flg_envoye(i), c_cod_enc(i), c_cod_prod(i),c_cod_scf(i), c_cod_fact(i),c_mnt_enc(i),c_dat_enc(i)); RAISE_APPLICATION_ERROR(-20001, 'cursor plein.'); null; end loop; else RAISE_APPLICATION_ERROR(-20001, 'Cursor vide'); null; end if; close c_enc; end LISTE_EN;
Marsh Posté le 26-10-2004 à 09:23:03
bonjour
j'utilise le bulk sous oracle 9i mais le pb c'est que le fetch ne retourne aucun enregistrement!!malgres que ce meme curseur retourne des valeur avec une base8i c'est quoi le pb avotre avis
voici le code
create or replace package body pk_bulk is
PROCEDURE LISTE_EN is
cursor c_enc is select id_enc , dat_cont, etat_enc, typ_rej, cod_mot_rej, num_appel,
flg_envoye, cod_enc, cod_prod, cod_scf, cod_fact,mnt_enc,dat_enc from
enc where typ_enc != 1 and etat_enc=1 ;
--for update nowait;
type t_id_enc is table of enc.id_enc%type;
c_id_enc t_id_enc;
i number;
j number;
begin
PK_IDENT.SET_IDENT('Controle des encaissements', 'SNE', 'Administrateur', 'Poste1', '193.94.1.177');
open c_enc;
FETCH c_enc BULK COLLECT INTO c_id_enc, c_dat_cont, c_etat_enc, c_typ_rej,
c_cod_mot_rej, c_num_appel, c_flg_envoye, c_cod_enc,
c_cod_prod, c_cod_scf, c_cod_fact,c_mnt_enc,c_dat_enc;
if c_enc%found then
FOR i IN 1..c_id_enc.COUNT loop
--PK_EMARGEMEN.enc_enre(c_id_enc(i), c_etat_enc(i), c_typ_rej(i),
-- c_cod_mot_rej(i), c_num_appel(i), c_flg_envoye(i), c_cod_enc(i), c_cod_prod(i),c_cod_scf(i), c_cod_fact(i),c_mnt_enc(i),c_dat_enc(i));
RAISE_APPLICATION_ERROR(-20001, 'cursor plein.');
null;
end loop;
else
RAISE_APPLICATION_ERROR(-20001, 'Cursor vide');
null;
end if;
close c_enc;
end LISTE_EN;
end pk_bulk;