आपको कॉलम NAME
. पर चयन करना होगा FILENAME
. के बजाय . पहला विशिष्ट पहचानकर्ता है (जैसा दिखता है series_of_numbers\the_filename
) और वह है जो फ़ाइल ब्राउज़ आइटम में होगा, जबकि बाद वाला उपसर्ग के बिना है।
देखिए, आपको अपनी ओर से अधिक जानकारी देनी होगी। मैंने इसे आजमाने के लिए एक बहुत ही सरल पृष्ठ बनाया है (apex.oracle.com)।
P2_FILE
एक फ़ाइल-ब्राउज़ आइटम है।
- संग्रहण प्रकार:तालिका APEX_APPLICATION_TEMP_FILES
- पर्ज फ़ाइल यहां:सत्र की समाप्ति
मैंने एक ऑन-सबमिट प्रक्रिया बनाई है जो डीबग आउटपुट में कुछ चीजों को सूचीबद्ध करने से ज्यादा कुछ नहीं करती है।
declare
l_blob blob;
begin
for r in (select * from apex_application_temp_files)
loop
apex_debug.message('name: %s - filename: %s', r.name, r.filename);
end loop;
apex_debug.message('P2_FILE: %s', :P2_FILE);
SELECT blob_content
INTO l_blob
FROM apex_application_temp_files
WHERE name = :P2_FILE;
apex_debug.message('blob length: %s', dbms_lob.getlength(l_blob));
end;
तो मैं पेज चलाता हूं, डीबग सक्षम करता हूं, एक फाइल का चयन करता हूं और सबमिट दबाता हूं। सभी कार्य। डीबग लॉग जांचें (स्वीकार करें):
name: 39044609744029199463/README (2).md - filename: README (2).md
name: 39044529927808550681/README (1).md - filename: README (1).md
name: 39044569042020557797/README.md - filename: README.md
P2_FILE: 39044609744029199463/README (2).md
blob length: 1884
तो:आपके अंत में क्या अलग है? क्या आपने जेफरी द्वारा सुझाए गए अनुसार किया है और पृष्ठ का डीबग चलाया है? आपका "पर्ज" किस रूप में सेट है? क्या आप सुनिश्चित हैं कि नो-डेटा-फ़ाउंड ब्लॉब के चयन पर होता है और आपकी प्रक्रिया में नहीं - क्या आपने अभी तक अपनी प्रक्रिया कॉल पर टिप्पणी की है?