281: INTO xmlBlob_loc
282: FROM IBC_ATTRIBUTE_BUNDLES
283: WHERE attribute_bundle_id = p_file_id;
284:
285: DBMS_LOB.APPEND(dest_lob => p_xml_clob_loc, src_lob => xmlBlob_loc);
286: END IF;
287:
288: -- If Content Item does not have user-defined primitive
289: -- attributes, do nothing.
318: G_XML_IRCODE || '="' || l_item_reference_code || '" ' ||
319: G_XML_REF || '="f" ' ||
320: G_XML_URL || '="' || Ibc_Utilities_Pub.G_CITEM_SERVLET_URL || 'cItemId=' || p_content_item_id || l_item_label || '">';
321:
322: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_buffer), l_buffer);
323:
324: END Build_Citem_Open_Tag;
325:
326:
448:
449:
450: -- check if the concatenated string is going over the buffer size
451: IF (l_rendition_counter = 5) THEN
452: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_buffer), l_buffer);
453: l_buffer := '';
454: l_rendition_counter := 1;
455: ELSE
456: l_rendition_counter := l_rendition_counter + 1;
474: l_buffer := l_buffer ||
475: '
476: '
477:
478: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_buffer), l_buffer);
479:
480: END Build_Citem_Open_Tags;
481:
482:
521: p_description ||
522: ']]>';
523: END IF;
524:
525: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_buffer), l_buffer);
526:
527: END Build_Citem_Open_Tags;
528:
529:
540: l_buffer VARCHAR2(250);
541: BEGIN
542: l_buffer := '';
543:
544: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_buffer), l_buffer);
545:
546: END Build_Close_Tag;
547:
548:
573: l_item_label ||
574: Fnd_Global.local_chr(38) ||'amp;'|| G_XML_URL_ENC ||'='|| LOWER(p_encrypt_flag) ||
575: '">';
576:
577: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_buffer), l_buffer);
578:
579: END Build_Compound_Item_Open_Tag;
580:
581:
595: Fnd_Global.local_chr(38) || 'amp;cItemVerId=' || p_content_item_version_id ||
596: Fnd_Global.local_chr(38) ||'amp;'|| G_XML_URL_ENC ||'='|| LOWER(p_encrypt_flag) ||
597: '">';
598:
599: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_buffer), l_buffer);
600:
601: END Build_Preview_Cpnt_Open_Tag;
602:
603:
638:
639: l_total_buffer := l_total_buffer || l_buffer;
640:
641: IF (l_compound_count = 10) THEN
642: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_total_buffer), l_total_buffer);
643: l_total_buffer := '';
644: l_compound_count := 1;
645: END IF;
646:
646:
647: l_compound_count := l_compound_count + 1;
648: END LOOP;
649: IF (l_compound_count > 1) THEN
650: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_total_buffer), l_total_buffer);
651: END IF;
652:
653: END Build_Compound_Item_References;
654:
695: '" />';
696: l_total_buffer := l_total_buffer || l_buffer;
697:
698: IF (l_compound_count = 10) THEN
699: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_total_buffer), l_total_buffer);
700: l_total_buffer := '';
701: l_compound_count := 1;
702: END IF;
703:
703:
704: l_compound_count := l_compound_count + 1;
705: END LOOP;
706: IF (l_compound_count > 1) THEN
707: DBMS_LOB.WRITEAPPEND(p_xml_clob_loc, LENGTH(l_total_buffer), l_total_buffer);
708: END IF;
709:
710: END Build_Preview_Cpnt_References;
711:
1647:
1648: l_amount := 32767;
1649: l_offset := 1;
1650:
1651: DBMS_LOB.createtemporary(l_xmlclob, TRUE, 2);
1652:
1653: SELECT file_data
1654: INTO l_xmlblob
1655: FROM FND_LOBS
1654: INTO l_xmlblob
1655: FROM FND_LOBS
1656: WHERE file_id = p_file_id;
1657:
1658: l_totalLen := DBMS_LOB.GETLENGTH(l_xmlblob);
1659: l_chunksize := DBMS_LOB.GETCHUNKSIZE(l_xmlblob);
1660: IF (l_chunksize < 32767) THEN
1661: l_amount := (32767 / l_chunksize) * l_chunksize;
1662: END IF;
1655: FROM FND_LOBS
1656: WHERE file_id = p_file_id;
1657:
1658: l_totalLen := DBMS_LOB.GETLENGTH(l_xmlblob);
1659: l_chunksize := DBMS_LOB.GETCHUNKSIZE(l_xmlblob);
1660: IF (l_chunksize < 32767) THEN
1661: l_amount := (32767 / l_chunksize) * l_chunksize;
1662: END IF;
1663:
1661: l_amount := (32767 / l_chunksize) * l_chunksize;
1662: END IF;
1663:
1664: WHILE l_totalLen >= l_amount LOOP
1665: DBMS_LOB.READ(l_xmlblob, l_amount, l_offset, l_rawBuffer);
1666: DBMS_LOB.WRITEAPPEND(l_xmlclob, LENGTH(utl_raw.cast_to_varchar2(l_rawBuffer)), utl_raw.cast_to_varchar2(l_rawBuffer));
1667: l_totalLen := l_totalLen - l_amount;
1668: l_offset := l_offset + l_amount;
1669: END LOOP;
1662: END IF;
1663:
1664: WHILE l_totalLen >= l_amount LOOP
1665: DBMS_LOB.READ(l_xmlblob, l_amount, l_offset, l_rawBuffer);
1666: DBMS_LOB.WRITEAPPEND(l_xmlclob, LENGTH(utl_raw.cast_to_varchar2(l_rawBuffer)), utl_raw.cast_to_varchar2(l_rawBuffer));
1667: l_totalLen := l_totalLen - l_amount;
1668: l_offset := l_offset + l_amount;
1669: END LOOP;
1670:
1668: l_offset := l_offset + l_amount;
1669: END LOOP;
1670:
1671: IF l_totalLen > 0 THEN
1672: DBMS_LOB.READ(l_xmlblob, l_totalLen, l_offset, l_rawBuffer);
1673: DBMS_LOB.WRITEAPPEND(l_xmlclob, LENGTH(utl_raw.cast_to_varchar2(l_rawBuffer)), utl_raw.cast_to_varchar2(l_rawBuffer));
1674: END IF;
1675:
1676:
1669: END LOOP;
1670:
1671: IF l_totalLen > 0 THEN
1672: DBMS_LOB.READ(l_xmlblob, l_totalLen, l_offset, l_rawBuffer);
1673: DBMS_LOB.WRITEAPPEND(l_xmlclob, LENGTH(utl_raw.cast_to_varchar2(l_rawBuffer)), utl_raw.cast_to_varchar2(l_rawBuffer));
1674: END IF;
1675:
1676:
1677: RETURN l_xmlclob;