128: --Added to resolve bug 14598731
129:
130: v_dest_offsset INTEGER := 1;
131: v_src_offsset INTEGER := 1;
132: v_lang_context INTEGER := DBMS_LOB.DEFAULT_LANG_CTX;
133: v_warning INTEGER :=0;
134: v_blob_csid NUMBER := nls_charset_id(fnd_profile.value('FND_NATIVE_CLIENT_ENCODING'));
135:
136: --addition ends here
135:
136: --addition ends here
137:
138: BEGIN
139: DBMS_LOB.CREATETEMPORARY(v_clob, TRUE);
140:
141: -- fnd_file.put_line(fnd_file.LOG, 'conversion from blob to clob');
142: --commented below code to resolve the bug 14598731
143: /*
140:
141: -- fnd_file.put_line(fnd_file.LOG, 'conversion from blob to clob');
142: --commented below code to resolve the bug 14598731
143: /*
144: FOR i IN 1..CEIL(DBMS_LOB.GETLENGTH(blob_in) / v_buffer)
145: LOOP
146: v_varchar := UTL_RAW.CAST_TO_VARCHAR2(DBMS_LOB.SUBSTR(blob_in, v_buffer, v_start));
147: DBMS_LOB.WRITEAPPEND(v_clob, LENGTH(v_varchar), v_varchar);
148: v_start := v_start + v_buffer;
142: --commented below code to resolve the bug 14598731
143: /*
144: FOR i IN 1..CEIL(DBMS_LOB.GETLENGTH(blob_in) / v_buffer)
145: LOOP
146: v_varchar := UTL_RAW.CAST_TO_VARCHAR2(DBMS_LOB.SUBSTR(blob_in, v_buffer, v_start));
147: DBMS_LOB.WRITEAPPEND(v_clob, LENGTH(v_varchar), v_varchar);
148: v_start := v_start + v_buffer;
149: END LOOP;
150:
143: /*
144: FOR i IN 1..CEIL(DBMS_LOB.GETLENGTH(blob_in) / v_buffer)
145: LOOP
146: v_varchar := UTL_RAW.CAST_TO_VARCHAR2(DBMS_LOB.SUBSTR(blob_in, v_buffer, v_start));
147: DBMS_LOB.WRITEAPPEND(v_clob, LENGTH(v_varchar), v_varchar);
148: v_start := v_start + v_buffer;
149: END LOOP;
150:
151: RETURN v_clob;
148: v_start := v_start + v_buffer;
149: END LOOP;
150:
151: RETURN v_clob;
152: */ DBMS_LOB.CONVERTTOCLOB(dest_lob=>v_clob,
153: src_blob=>blob_in,
154: amount=>DBMS_LOB.LOBMAXSIZE,
155: dest_offset => v_dest_offsset,
156: src_offset => v_src_offsset,
150:
151: RETURN v_clob;
152: */ DBMS_LOB.CONVERTTOCLOB(dest_lob=>v_clob,
153: src_blob=>blob_in,
154: amount=>DBMS_LOB.LOBMAXSIZE,
155: dest_offset => v_dest_offsset,
156: src_offset => v_src_offsset,
157: blob_csid => v_blob_csid,
158: lang_context => v_lang_context,
159: warning => v_warning
160: );
161:
162:
163: IF v_warning=DBMS_LOB.WARN_INCONVERTIBLE_CHAR THEN
164:
165: fnd_file.put_line(fnd_file.LOG, 'Atleast one character is not converted properly from blob to clob');
166:
167: RETURN NULL;