Hi,
I have a PL/SQL procedure with a cursor and when i run it, I get this message
ORA-01403: no data found
ORA-06512: à "T_SYS.TEST_CPITET", ligne 25
ORA-06512: à ligne 2
What does it means exactly , is it a warning or an error message ?
the code is the following :
create or replace procedure test_cpitet is
v_TAG_NUMBER varchar2(256) ;
v_RECV_QTY varchar2(256) ;
dummy_ident_pk NUMBER;
dummy_unit_pk NUMBER;
P411_FILE VARCHAR2(256) := '52398526989316232/STS02.xlsx';
CURSOR c IS
select col001, col002
from apex_application_temp_files f,
table( apex_data_parser.parse(
p_content => f.blob_content,
p_add_headers_row => 'Y',
p_skip_rows => 1,
p_max_rows => 500,
p_store_profile_to_collection => 'FILE_PARSER_COLLECTION',
p_file_name => f.filename ) ) p
where f.name = P411_FILE ;
BEGIN
OPEN c;
FETCH c INTO V_TAG_NUMBER, V_RECV_QTY;
LOOP
FETCH c INTO V_TAG_NUMBER, V_RECV_QTY;
select i.ident
into dummy_ident_pk
from m_idents i,
m_commodity_codes cc
where cc.commodity_code = 'B41-PK-0002-M5' -- V_TAG_NUMBER
and i.commodity_id = cc.commodity_id;
--dbms_output.put_line (dummy_ident_pk);
INSERT INTO m_inv_receipts
(inv_receipt_id,
proj_id,
mrr_id,
loc_id,
wh_id,
smst_id,
ident,
dp_id,
recv_qty,
recv_date,
unit_id,
tag_number,
upd_rev_ind)
select M_SEQ_INV_RECEIPT_ID.nextval,
0, -- replace user
MRR.MRR_ID,
MRR.LOC_ID,
MRR.WH_ID,
MRR.SMST_ID,
dummy_ident_pk,
0, -- replace :CTRL.DP_ID
V_RECV_QTY,
MRR.MATL_RECV_DATE ,
dummy_unit_pk,
V_TAG_NUMBER,
'N' from M_MATL_RECV_RPTS MRR
where MRR.MRR_ID = 287921;
EXIT WHEN c%NOTFOUND;
END LOOP;
CLOSE c ;
END;
Best regards
Christian