DBA Data[Home] [Help]

APPS.WF_XML dependencies on DBMS_LOB

Line 414: -- dbms_lob.createTemporary(l_temp, TRUE, dbms_lob.CALL);

410: begin
411:
412: -- Create an instance of the node
413: -- A Node is deemed to be Data
414: -- dbms_lob.createTemporary(l_temp, TRUE, dbms_lob.CALL);
415: l_tempIdx := -1;
416:
417: l_start := '<' || upper(p_tag);
418:

Line 436: l_size := dbms_lob.getlength(p_doc);

432: -- Create the end TAG.
433: l_end := ''||g_newLine;
434:
435:
436: l_size := dbms_lob.getlength(p_doc);
437:
438: -- Create the full node to be inserted.
439: l_node := l_start || p_data || l_end;
440: l_nodesize := length(l_node);

Line 447: dbms_lob.read(lob_loc => p_doc,

443: if l_size > 1 and l_size <> p_pos then
444: -- Copy the tail end of the LOB to a holder.
445: l_amount := l_size - p_pos;
446: if l_amount < 32000 then
447: dbms_lob.read(lob_loc => p_doc,
448: amount => l_amount,
449: offset => p_pos + 1,
450: buffer => l_tempStr);
451: else

Line 453: dbms_lob.copy(dest_lob => g_LOBTable(l_tempIdx).temp_lob,

449: offset => p_pos + 1,
450: buffer => l_tempStr);
451: else
452: l_tempIdx := wf_temp_lob.GetLob(g_LOBTable);
453: dbms_lob.copy(dest_lob => g_LOBTable(l_tempIdx).temp_lob,
454: src_lob => p_doc,
455: amount => l_amount,
456: dest_offset => 1,
457: src_offset => p_pos +1);

Line 462: dbms_lob.Write(p_doc, l_nodesize, p_pos + 1 , l_node);

458: end if;
459: end if;
460:
461: -- Now insert the new node into the p_pos location
462: dbms_lob.Write(p_doc, l_nodesize, p_pos + 1 , l_node);
463:
464: -- Append the saved portion of the LOB
465: -- If l_tempIdx is still -1, then no LOB was used or initialised
466: -- but for the lob, makesure that there is something in it to be

Line 469: dbms_lob.write(lob_loc => p_doc,

465: -- If l_tempIdx is still -1, then no LOB was used or initialised
466: -- but for the lob, makesure that there is something in it to be
467: -- used (l_amount > 0).
468: if l_tempIdx = -1 and l_amount > 0 then
469: dbms_lob.write(lob_loc => p_doc,
470: amount => l_amount,
471: offset => p_pos + l_nodesize + 1,
472: buffer => l_tempStr);
473: elsif l_amount > 0 then

Line 474: dbms_lob.copy(dest_lob => p_doc,

470: amount => l_amount,
471: offset => p_pos + l_nodesize + 1,
472: buffer => l_tempStr);
473: elsif l_amount > 0 then
474: dbms_lob.copy(dest_lob => p_doc,
475: src_lob => g_LOBTable(l_tempIdx).temp_lob,
476: amount => l_amount ,
477: dest_offset => p_pos + l_nodesize + 1);
478: wf_temp_lob.ReleaseLob(g_LOBTable, l_tempIdx);

Line 483: -- dbms_lob.FreeTemporary(l_temp);

479: end if;
480:
481: l_pos := (p_pos + l_nodesize) - length(l_end);
482: -- Free up the use of the temporary LOB
483: -- dbms_lob.FreeTemporary(l_temp);
484:
485: if (wf_log_pkg.level_statement >= fnd_log.g_current_runtime_level) then
486: wf_log_pkg.string(WF_LOG_PKG.level_statement,
487: 'wf.plsql.WF_XML.newLOBTag',

Line 555: l_size := dbms_lob.getlength(p_doc);

551:
552: -- Create the end TAG.
553: l_end := ''||g_newLine;
554:
555: l_size := dbms_lob.getlength(p_doc);
556: l_dataSize := dbms_lob.getlength(p_data);
557:
558: -- Create the full node to be inserted.
559: dbms_lob.writeAppend(g_LOBTable(l_nodeIdx).temp_lob, length(l_start),

Line 556: l_dataSize := dbms_lob.getlength(p_data);

552: -- Create the end TAG.
553: l_end := ''||g_newLine;
554:
555: l_size := dbms_lob.getlength(p_doc);
556: l_dataSize := dbms_lob.getlength(p_data);
557:
558: -- Create the full node to be inserted.
559: dbms_lob.writeAppend(g_LOBTable(l_nodeIdx).temp_lob, length(l_start),
560: l_start);

Line 559: dbms_lob.writeAppend(g_LOBTable(l_nodeIdx).temp_lob, length(l_start),

555: l_size := dbms_lob.getlength(p_doc);
556: l_dataSize := dbms_lob.getlength(p_data);
557:
558: -- Create the full node to be inserted.
559: dbms_lob.writeAppend(g_LOBTable(l_nodeIdx).temp_lob, length(l_start),
560: l_start);
561: l_nodesize := length(l_start); -- dbms_lob.getLength(g_LOBTable(l_nodeIdx).temp_lob);
562: dbms_lob.copy(dest_lob => g_LOBTable(l_nodeIdx).temp_lob,
563: src_lob => p_data,

Line 561: l_nodesize := length(l_start); -- dbms_lob.getLength(g_LOBTable(l_nodeIdx).temp_lob);

557:
558: -- Create the full node to be inserted.
559: dbms_lob.writeAppend(g_LOBTable(l_nodeIdx).temp_lob, length(l_start),
560: l_start);
561: l_nodesize := length(l_start); -- dbms_lob.getLength(g_LOBTable(l_nodeIdx).temp_lob);
562: dbms_lob.copy(dest_lob => g_LOBTable(l_nodeIdx).temp_lob,
563: src_lob => p_data,
564: amount => l_dataSize,
565: dest_offset => l_nodesize+1,

Line 562: dbms_lob.copy(dest_lob => g_LOBTable(l_nodeIdx).temp_lob,

558: -- Create the full node to be inserted.
559: dbms_lob.writeAppend(g_LOBTable(l_nodeIdx).temp_lob, length(l_start),
560: l_start);
561: l_nodesize := length(l_start); -- dbms_lob.getLength(g_LOBTable(l_nodeIdx).temp_lob);
562: dbms_lob.copy(dest_lob => g_LOBTable(l_nodeIdx).temp_lob,
563: src_lob => p_data,
564: amount => l_dataSize,
565: dest_offset => l_nodesize+1,
566: src_offset => 1);

Line 567: dbms_lob.writeAppend(g_LOBTable(l_nodeIdx).temp_lob, length(l_end),

563: src_lob => p_data,
564: amount => l_dataSize,
565: dest_offset => l_nodesize+1,
566: src_offset => 1);
567: dbms_lob.writeAppend(g_LOBTable(l_nodeIdx).temp_lob, length(l_end),
568: l_end);
569: l_nodesize := dbms_lob.getLength(g_LOBTable(l_nodeIdx).temp_lob);
570:
571: l_amount := 0;

Line 569: l_nodesize := dbms_lob.getLength(g_LOBTable(l_nodeIdx).temp_lob);

565: dest_offset => l_nodesize+1,
566: src_offset => 1);
567: dbms_lob.writeAppend(g_LOBTable(l_nodeIdx).temp_lob, length(l_end),
568: l_end);
569: l_nodesize := dbms_lob.getLength(g_LOBTable(l_nodeIdx).temp_lob);
570:
571: l_amount := 0;
572: if l_size > 1 and l_size <> p_pos then
573: l_amount := l_size - p_pos;

Line 576: dbms_lob.read(lob_loc => p_doc,

572: if l_size > 1 and l_size <> p_pos then
573: l_amount := l_size - p_pos;
574: -- Copy the tail end of the LOB to a holder.
575: if l_amount < 32000 then
576: dbms_lob.read(lob_loc => p_doc,
577: amount => l_amount,
578: offset => p_pos + 1,
579: buffer => l_tempStr);
580: else

Line 582: dbms_lob.copy(dest_lob => g_LOBTable(l_tempIdx).temp_lob,

578: offset => p_pos + 1,
579: buffer => l_tempStr);
580: else
581: l_tempIdx := wf_temp_lob.GetLob(g_LOBTable);
582: dbms_lob.copy(dest_lob => g_LOBTable(l_tempIdx).temp_lob,
583: src_lob => p_doc,
584: amount => l_amount,
585: dest_offset => 1,
586: src_offset => p_pos +1);

Line 591: dbms_lob.copy(dest_lob => p_doc,

587: end if;
588: end if;
589:
590: -- Now insert the new node into the p_pos location
591: dbms_lob.copy(dest_lob => p_doc,
592: src_lob => g_LOBTable(l_nodeIdx).temp_lob,
593: amount => l_nodesize,
594: dest_offset => p_pos + 1);
595:

Line 598: dbms_lob.write(lob_loc => p_doc,

594: dest_offset => p_pos + 1);
595:
596: -- Append the saved portion of the LOB
597: if l_tempIdx = -1 and l_amount > 0 then
598: dbms_lob.write(lob_loc => p_doc,
599: amount => l_amount,
600: offset => p_pos + l_nodesize + 1,
601: buffer => l_tempStr);
602: elsif l_tempIdx > 0 then

Line 604: dbms_lob.copy(dest_lob => p_doc,

600: offset => p_pos + l_nodesize + 1,
601: buffer => l_tempStr);
602: elsif l_tempIdx > 0 then
603: if l_amount > 0 then
604: dbms_lob.copy(dest_lob => p_doc,
605: src_lob => g_LOBTable(l_tempIdx).temp_lob,
606: amount => l_amount,
607: dest_offset => p_pos + l_nodesize + 1);
608: end if;

Line 745: l_pos := dbms_lob.instr(p_doc, l_tag, p_offset, p_occurance);

741:
742: begin
743:
744: l_tag := '';
745: l_pos := dbms_lob.instr(p_doc, l_tag, p_offset, p_occurance);
746:
747: return l_pos + length(l_tag);
748:
749: exception

Line 824: l_startPos := dbms_lob.instr(p_doc, l_startTag, l_pos, l_occurance);

820: -- attributes set on the TAG.
821: l_startTag := '<'||upper(p_tag);
822: l_endTag := '';
823:
824: l_startPos := dbms_lob.instr(p_doc, l_startTag, l_pos, l_occurance);
825: l_startPos := dbms_lob.instr(p_doc, '>', l_startPos, l_occurance) + 1;
826:
827:
828: l_endPos := dbms_lob.instr(p_doc, l_endTag, l_startpos, l_occurance) - 1;

Line 825: l_startPos := dbms_lob.instr(p_doc, '>', l_startPos, l_occurance) + 1;

821: l_startTag := '<'||upper(p_tag);
822: l_endTag := '';
823:
824: l_startPos := dbms_lob.instr(p_doc, l_startTag, l_pos, l_occurance);
825: l_startPos := dbms_lob.instr(p_doc, '>', l_startPos, l_occurance) + 1;
826:
827:
828: l_endPos := dbms_lob.instr(p_doc, l_endTag, l_startpos, l_occurance) - 1;
829: l_length := l_endPos - l_startPos + 1;

Line 828: l_endPos := dbms_lob.instr(p_doc, l_endTag, l_startpos, l_occurance) - 1;

824: l_startPos := dbms_lob.instr(p_doc, l_startTag, l_pos, l_occurance);
825: l_startPos := dbms_lob.instr(p_doc, '>', l_startPos, l_occurance) + 1;
826:
827:
828: l_endPos := dbms_lob.instr(p_doc, l_endTag, l_startpos, l_occurance) - 1;
829: l_length := l_endPos - l_startPos + 1;
830:
831: dbms_lob.read(p_doc, l_length, l_startPos, l_value);
832:

Line 831: dbms_lob.read(p_doc, l_length, l_startPos, l_value);

827:
828: l_endPos := dbms_lob.instr(p_doc, l_endTag, l_startpos, l_occurance) - 1;
829: l_length := l_endPos - l_startPos + 1;
830:
831: dbms_lob.read(p_doc, l_length, l_startPos, l_value);
832:
833: -- Reposition the position pointer to after the end
834: -- of the current TAG set.
835: p_pos := l_endPos + length(l_endTag) + 1;

Line 1052: -- dbms_lob.createTemporary(l_content, TRUE, dbms_lob.CALL);

1048: l_attr_url varchar2(32000);
1049:
1050: begin
1051:
1052: -- dbms_lob.createTemporary(l_content, TRUE, dbms_lob.CALL);
1053:
1054: -- Allocate LOB from WF_TEMP LOB pool.
1055: l_contentIdx := wf_temp_lob.getLOB(g_LOBTable);
1056: dbms_lob.createTemporary(l_blob, TRUE, dbms_lob.CALL);

Line 1056: dbms_lob.createTemporary(l_blob, TRUE, dbms_lob.CALL);

1052: -- dbms_lob.createTemporary(l_content, TRUE, dbms_lob.CALL);
1053:
1054: -- Allocate LOB from WF_TEMP LOB pool.
1055: l_contentIdx := wf_temp_lob.getLOB(g_LOBTable);
1056: dbms_lob.createTemporary(l_blob, TRUE, dbms_lob.CALL);
1057:
1058: l_pos := p_pos;
1059: for l_crec in c_attr(p_nid) loop
1060: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob, 0);

Line 1060: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob, 0);

1056: dbms_lob.createTemporary(l_blob, TRUE, dbms_lob.CALL);
1057:
1058: l_pos := p_pos;
1059: for l_crec in c_attr(p_nid) loop
1060: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob, 0);
1061: if (wf_log_pkg.level_statement >= fnd_log.g_current_runtime_level) then
1062:
1063: wf_log_pkg.string(WF_LOG_PKG.level_statement,
1064: 'wf.plsql.WF_XML.GetAttachment',

Line 1103: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob,0);

1099: AddElementAttribute('content-disposition',p_disposition,
1100: l_attrlist);
1101: AddElementAttribute('filename', l_filename, l_attrlist);
1102: AddElementAttribute('encoding', l_encoding, l_attrlist);
1103: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob,0);
1104: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1105: length(l_start), l_start);
1106: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1107: length(l_tmpContent),

Line 1104: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

1100: l_attrlist);
1101: AddElementAttribute('filename', l_filename, l_attrlist);
1102: AddElementAttribute('encoding', l_encoding, l_attrlist);
1103: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob,0);
1104: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1105: length(l_start), l_start);
1106: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1107: length(l_tmpContent),
1108: l_tmpContent);

Line 1106: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

1102: AddElementAttribute('encoding', l_encoding, l_attrlist);
1103: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob,0);
1104: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1105: length(l_start), l_start);
1106: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1107: length(l_tmpContent),
1108: l_tmpContent);
1109: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1110: length(l_end), l_end);

Line 1109: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

1105: length(l_start), l_start);
1106: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1107: length(l_tmpContent),
1108: l_tmpContent);
1109: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1110: length(l_end), l_end);
1111:
1112: l_pos := NewLOBTag(p_doc, l_pos, 'MESSAGE',
1113: g_LOBTable(l_contentIdx).temp_lob,

Line 1121: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob,0);

1117: elsif upper(substr(l_crec.url,1, 10)) = 'PLSQLCLOB:' then
1118: /*
1119: ** For PLSQLCLOB documents.
1120: */
1121: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob,0);
1122: l_content_type := '';
1123:
1124: --
1125: -- Getting Content

Line 1184: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

1180:
1181: -- Fetch the content
1182: WF_MAIL.InitFetchLOB(l_display_type, l_doc_length);
1183: l_doc_end := 0;
1184: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1185: length(l_start), l_start);
1186: while l_doc_end = 0 loop
1187: WF_MAIL.FetchLobContent(l_tmpContent, l_display_type,
1188: l_doc_end);

Line 1190: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

1186: while l_doc_end = 0 loop
1187: WF_MAIL.FetchLobContent(l_tmpContent, l_display_type,
1188: l_doc_end);
1189: l_tmpContent := replace(l_tmpContent, g_fndapi_misschr);
1190: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1191: length(l_tmpContent), l_tmpContent);
1192: end loop;
1193:
1194:

Line 1195: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

1191: length(l_tmpContent), l_tmpContent);
1192: end loop;
1193:
1194:
1195: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1196: length(l_end), l_end);
1197: --
1198: -- Build the attribute list for the attachment
1199: -- including the content-type, file name etc.

Line 1228: dbms_lob.trim(l_blob,0);

1224: elsif upper(substr(l_crec.url,1, 10)) = 'PLSQLBLOB:' then
1225: /*
1226: ** For PLSQLBLOB documents.
1227: */
1228: dbms_lob.trim(l_blob,0);
1229:
1230: --
1231: -- Getting Content
1232: -- First we call the existing APIs to render the

Line 1294: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob,0);

1290: l_isURLAttrs := FALSE;
1291: end if;
1292:
1293: if l_isURLAttrs then
1294: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob,0);
1295:
1296: wf_mail.GetURLAttachment(p_nid, l_tmpContent, l_error_result);
1297: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1298: length(l_start), l_start);

Line 1297: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

1293: if l_isURLAttrs then
1294: dbms_lob.trim(g_LOBTable(l_contentIdx).temp_lob,0);
1295:
1296: wf_mail.GetURLAttachment(p_nid, l_tmpContent, l_error_result);
1297: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1298: length(l_start), l_start);
1299: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1300: length(l_tmpContent), l_tmpContent);
1301: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

Line 1299: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

1295:
1296: wf_mail.GetURLAttachment(p_nid, l_tmpContent, l_error_result);
1297: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1298: length(l_start), l_start);
1299: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1300: length(l_tmpContent), l_tmpContent);
1301: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1302: length(l_end), l_end);
1303:

Line 1301: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,

1297: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1298: length(l_start), l_start);
1299: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1300: length(l_tmpContent), l_tmpContent);
1301: dbms_lob.writeAppend(g_LOBTable(l_contentIdx).temp_lob,
1302: length(l_end), l_end);
1303:
1304:
1305: if l_error_result is not null or l_error_result <> '' then

Line 1521: -- dbms_lob.createTemporary(l_doc, TRUE, dbms_lob.session);

1517: end if;
1518:
1519:
1520: -- Instantiate a handle to the new document.
1521: -- dbms_lob.createTemporary(l_doc, TRUE, dbms_lob.session);
1522: l_docIdx := wf_temp_lob.getLob(g_LOBTable);
1523:
1524: -- Initialise the XML Document and then progressively walk
1525: -- through the elements. Populating them as we go.

Line 1531: dbms_lob.write(g_LOBTable(l_docIdx).temp_lob, l_pos, 1, l_str);

1527: -- will be placed.
1528: l_str := '';
1529: l_pos := length(l_str);
1530:
1531: dbms_lob.write(g_LOBTable(l_docIdx).temp_lob, l_pos, 1, l_str);
1532:
1533: l_pos := NewLOBTag(g_LOBTable(l_docIdx).temp_lob, l_pos,
1534: 'NOTIFICATION','',l_attrlist);
1535:

Line 1645: dbms_lob.copy(p_message, g_LOBTable(l_docIdx).temp_lob,

1641: null;
1642: end;
1643:
1644: p_priority := l_priority;
1645: dbms_lob.copy(p_message, g_LOBTable(l_docIdx).temp_lob,
1646: dbms_lob.getLength(g_LOBTable(l_docIdx).temp_lob), 1, 1);
1647: -- dbms_lob.freetemporary(l_doc).temp_lob);
1648: wf_temp_lob.releaseLob(g_LOBTable, l_docIdx);
1649:

Line 1646: dbms_lob.getLength(g_LOBTable(l_docIdx).temp_lob), 1, 1);

1642: end;
1643:
1644: p_priority := l_priority;
1645: dbms_lob.copy(p_message, g_LOBTable(l_docIdx).temp_lob,
1646: dbms_lob.getLength(g_LOBTable(l_docIdx).temp_lob), 1, 1);
1647: -- dbms_lob.freetemporary(l_doc).temp_lob);
1648: wf_temp_lob.releaseLob(g_LOBTable, l_docIdx);
1649:
1650: exception

Line 1647: -- dbms_lob.freetemporary(l_doc).temp_lob);

1643:
1644: p_priority := l_priority;
1645: dbms_lob.copy(p_message, g_LOBTable(l_docIdx).temp_lob,
1646: dbms_lob.getLength(g_LOBTable(l_docIdx).temp_lob), 1, 1);
1647: -- dbms_lob.freetemporary(l_doc).temp_lob);
1648: wf_temp_lob.releaseLob(g_LOBTable, l_docIdx);
1649:
1650: exception
1651: when others then

Line 1702: -- dbms_lob.createTemporary(l_doc, TRUE, dbms_lob.session);

1698: -- Grab the details of the message to be enqueued using the
1699: -- previous interface of WF_MAIL.GetMessage.
1700:
1701: -- Instantiate a handle to the new document.
1702: -- dbms_lob.createTemporary(l_doc, TRUE, dbms_lob.session);
1703: l_docIdx := wf_temp_lob.getLOB(g_LOBTable);
1704:
1705: -- Initialise the XML Document and then progressively walk
1706: -- through the elements. Populating them as we go.

Line 1712: dbms_lob.write(g_LOBTable(l_docIdx).temp_lob, l_pos, 1, l_str);

1708: -- will be placed.
1709: l_str := '';
1710: l_pos := length(l_str);
1711:
1712: dbms_lob.write(g_LOBTable(l_docIdx).temp_lob, l_pos, 1, l_str);
1713:
1714: l_pos := NewLOBTag(g_LOBTable(l_docIdx).temp_lob, l_pos,
1715: 'NOTIFICATION','',l_attrlist);
1716:

Line 1756: dbms_lob.copy(p_message, g_LOBTable(l_docIdx).temp_lob,

1752: l_pos := SkipLOBTag(g_LOBTable(l_docIdx).temp_lob,
1753: 'STATUS', l_pos, l_occurance);
1754:
1755: p_priority := l_priority;
1756: dbms_lob.copy(p_message, g_LOBTable(l_docIdx).temp_lob,
1757: dbms_lob.getLength(g_LOBTable(l_docIdx).temp_lob), 1, 1);
1758: -- dbms_lob.freetemporary(g_LOBTable(l_docIdx).temp_lob);
1759: wf_temp_lob.releaseLob(g_LOBTable, l_docIdx);
1760:

Line 1757: dbms_lob.getLength(g_LOBTable(l_docIdx).temp_lob), 1, 1);

1753: 'STATUS', l_pos, l_occurance);
1754:
1755: p_priority := l_priority;
1756: dbms_lob.copy(p_message, g_LOBTable(l_docIdx).temp_lob,
1757: dbms_lob.getLength(g_LOBTable(l_docIdx).temp_lob), 1, 1);
1758: -- dbms_lob.freetemporary(g_LOBTable(l_docIdx).temp_lob);
1759: wf_temp_lob.releaseLob(g_LOBTable, l_docIdx);
1760:
1761: exception

Line 1758: -- dbms_lob.freetemporary(g_LOBTable(l_docIdx).temp_lob);

1754:
1755: p_priority := l_priority;
1756: dbms_lob.copy(p_message, g_LOBTable(l_docIdx).temp_lob,
1757: dbms_lob.getLength(g_LOBTable(l_docIdx).temp_lob), 1, 1);
1758: -- dbms_lob.freetemporary(g_LOBTable(l_docIdx).temp_lob);
1759: wf_temp_lob.releaseLob(g_LOBTable, l_docIdx);
1760:
1761: exception
1762: when others then

Line 1924: -- dbms_lob.createTemporary(l_message, TRUE, dbms_lob.SESSION);

1920: if l_recipient_list.COUNT > 0 then
1921: -- A valid role has been found for a notification
1922: -- that is required to go out.
1923: -- Prepare a LOB to contain the payload message.
1924: -- dbms_lob.createTemporary(l_message, TRUE, dbms_lob.SESSION);
1925: l_messageIdx := wf_temp_lob.getLob(g_LOBTable);
1926:
1927: wf_queue.set_queue_names;
1928: wf_queue.get_hash_queue_name (p_protocol => 'SMTP',

Line 1983: -- dbms_lob.freetemporary(l_message);

1979: l_ntf_pref := l_recipient_list(i).notification_preference;
1980: end if;
1981: end loop;
1982: end loop;
1983: -- dbms_lob.freetemporary(l_message);
1984: wf_temp_lob.releaseLob(g_LOBTable, l_messageIdx);
1985: end if;
1986:
1987: exception

Line 2033: -- dbms_lob.createTemporary(l_message, TRUE, dbms_lob.CALL);

2029: if l_recipient_role is not null then
2030: -- A valid role has been found for a notification
2031: -- that is required to go out.
2032:
2033: -- dbms_lob.createTemporary(l_message, TRUE, dbms_lob.CALL);
2034: l_messageIdx := wf_temp_lob.getLob(g_LOBTable);
2035: -- Get an encoded payload.
2036: getShortLOBXMLMessage(p_nid, l_priority,
2037: g_LOBTable(l_messageIdx).temp_lob);

Line 2605: dbms_lob.writeAppend(p_doc, length(l_start), l_start);

2601: begin
2602:
2603: WF_MAIL.InitFetchLOB(p_doctype, l_doc_length);
2604: l_doc_end := 0;
2605: dbms_lob.writeAppend(p_doc, length(l_start), l_start);
2606: while l_doc_end = 0 loop
2607: WF_MAIL.FetchLobContent(l_message, p_doctype, l_doc_end);
2608: l_message := replace(l_message, g_fndapi_misschr);
2609: dbms_lob.writeAppend(p_doc, length(l_message), l_message);

Line 2609: dbms_lob.writeAppend(p_doc, length(l_message), l_message);

2605: dbms_lob.writeAppend(p_doc, length(l_start), l_start);
2606: while l_doc_end = 0 loop
2607: WF_MAIL.FetchLobContent(l_message, p_doctype, l_doc_end);
2608: l_message := replace(l_message, g_fndapi_misschr);
2609: dbms_lob.writeAppend(p_doc, length(l_message), l_message);
2610: end loop;
2611: dbms_lob.writeAppend(p_doc, length(l_end), l_end);
2612: WF_MAIL.CloseLob(p_doctype);
2613:

Line 2611: dbms_lob.writeAppend(p_doc, length(l_end), l_end);

2607: WF_MAIL.FetchLobContent(l_message, p_doctype, l_doc_end);
2608: l_message := replace(l_message, g_fndapi_misschr);
2609: dbms_lob.writeAppend(p_doc, length(l_message), l_message);
2610: end loop;
2611: dbms_lob.writeAppend(p_doc, length(l_end), l_end);
2612: WF_MAIL.CloseLob(p_doctype);
2613:
2614: exception
2615: when others then

Line 2752: imgStrPos := dbms_lob.instr(msgBody, value, 1, 1);

2748: if isImageReference(value, renderType) then
2749: origValue := value;
2750: value := ''|| url.display_name||'';
2752: imgStrPos := dbms_lob.instr(msgBody, value, 1, 1);
2753: if imgStrPos > 0 then
2754: dbms_lob.trim(g_LOBTable(tmpIdx).temp_lob, 0);
2755: dbms_lob.copy(g_LOBTable(tmpIdx).temp_lob , msgBody,
2756: imgStrPos-1, 1, 1);

Line 2754: dbms_lob.trim(g_LOBTable(tmpIdx).temp_lob, 0);

2750: value := ''|| url.display_name||'';
2752: imgStrPos := dbms_lob.instr(msgBody, value, 1, 1);
2753: if imgStrPos > 0 then
2754: dbms_lob.trim(g_LOBTable(tmpIdx).temp_lob, 0);
2755: dbms_lob.copy(g_LOBTable(tmpIdx).temp_lob , msgBody,
2756: imgStrPos-1, 1, 1);
2757:
2758: nameStart := instrb(origValue, '/', -1, 1);

Line 2755: dbms_lob.copy(g_LOBTable(tmpIdx).temp_lob , msgBody,

2751: '" alt="'|| url.display_name||'">';
2752: imgStrPos := dbms_lob.instr(msgBody, value, 1, 1);
2753: if imgStrPos > 0 then
2754: dbms_lob.trim(g_LOBTable(tmpIdx).temp_lob, 0);
2755: dbms_lob.copy(g_LOBTable(tmpIdx).temp_lob , msgBody,
2756: imgStrPos-1, 1, 1);
2757:
2758: nameStart := instrb(origValue, '/', -1, 1);
2759: if nameStart = 0 then

Line 2781: dbms_lob.writeAppend(g_LOBTable(tmpIdx).temp_lob,

2777: newValue := ''|| url.display_name||<br>
2779:                      '';
2780:
2781: dbms_lob.writeAppend(g_LOBTable(tmpIdx).temp_lob,
2782: length(newValue), newValue);
2783: amount := dbms_lob.getlength(msgBody)-imgStrPos+length(value);
2784: tmpLength := dbms_lob.getlength(g_LOBTable(tmpIdx).temp_lob);
2785: dbms_lob.Copy(g_LOBTable(tmpIdx).temp_lob, msgBody, amount,

Line 2783: amount := dbms_lob.getlength(msgBody)-imgStrPos+length(value);

2779: '">';
2780:
2781: dbms_lob.writeAppend(g_LOBTable(tmpIdx).temp_lob,
2782: length(newValue), newValue);
2783: amount := dbms_lob.getlength(msgBody)-imgStrPos+length(value);
2784: tmpLength := dbms_lob.getlength(g_LOBTable(tmpIdx).temp_lob);
2785: dbms_lob.Copy(g_LOBTable(tmpIdx).temp_lob, msgBody, amount,
2786: tmpLength+1, imgStrPos+length(value));
2787: dbms_lob.trim(msgBody, 0);

Line 2784: tmpLength := dbms_lob.getlength(g_LOBTable(tmpIdx).temp_lob);

2780:
2781: dbms_lob.writeAppend(g_LOBTable(tmpIdx).temp_lob,
2782: length(newValue), newValue);
2783: amount := dbms_lob.getlength(msgBody)-imgStrPos+length(value);
2784: tmpLength := dbms_lob.getlength(g_LOBTable(tmpIdx).temp_lob);
2785: dbms_lob.Copy(g_LOBTable(tmpIdx).temp_lob, msgBody, amount,
2786: tmpLength+1, imgStrPos+length(value));
2787: dbms_lob.trim(msgBody, 0);
2788: dbms_lob.append(msgBody, g_LOBTable(tmpIdx).temp_lob);

Line 2785: dbms_lob.Copy(g_LOBTable(tmpIdx).temp_lob, msgBody, amount,

2781: dbms_lob.writeAppend(g_LOBTable(tmpIdx).temp_lob,
2782: length(newValue), newValue);
2783: amount := dbms_lob.getlength(msgBody)-imgStrPos+length(value);
2784: tmpLength := dbms_lob.getlength(g_LOBTable(tmpIdx).temp_lob);
2785: dbms_lob.Copy(g_LOBTable(tmpIdx).temp_lob, msgBody, amount,
2786: tmpLength+1, imgStrPos+length(value));
2787: dbms_lob.trim(msgBody, 0);
2788: dbms_lob.append(msgBody, g_LOBTable(tmpIdx).temp_lob);
2789:

Line 2787: dbms_lob.trim(msgBody, 0);

2783: amount := dbms_lob.getlength(msgBody)-imgStrPos+length(value);
2784: tmpLength := dbms_lob.getlength(g_LOBTable(tmpIdx).temp_lob);
2785: dbms_lob.Copy(g_LOBTable(tmpIdx).temp_lob, msgBody, amount,
2786: tmpLength+1, imgStrPos+length(value));
2787: dbms_lob.trim(msgBody, 0);
2788: dbms_lob.append(msgBody, g_LOBTable(tmpIdx).temp_lob);
2789:
2790: imagesFound := TRUE;
2791: resourceList(resourceIdx).value := origValue;

Line 2788: dbms_lob.append(msgBody, g_LOBTable(tmpIdx).temp_lob);

2784: tmpLength := dbms_lob.getlength(g_LOBTable(tmpIdx).temp_lob);
2785: dbms_lob.Copy(g_LOBTable(tmpIdx).temp_lob, msgBody, amount,
2786: tmpLength+1, imgStrPos+length(value));
2787: dbms_lob.trim(msgBody, 0);
2788: dbms_lob.append(msgBody, g_LOBTable(tmpIdx).temp_lob);
2789:
2790: imagesFound := TRUE;
2791: resourceList(resourceIdx).value := origValue;
2792: resourceList(resourceIdx).contentId := contentId;

Line 3666: dbms_lob.trim(g_LOBTable(messageIdx).temp_lob, 0);

3662: ** MAILTEXT and MAILATTH will have the text/plain as the
3663: ** primary messasge content. The others will be in the
3664: ** from of an attachment.
3665: */
3666: dbms_lob.trim(g_LOBTable(messageIdx).temp_lob, 0);
3667:
3668: -- This getBodyPart API releases temp lob allocated within
3669: -- WF_MAIL.GetLobMessage3 for doctype (text/plain )
3670: -- i.e. g_text_messageIdx locator

Line 3747: dbms_lob.trim(g_LOBTable(messageIdx).temp_lob, 0);

3743: -- MAILHTML2 is a text/html message without the additional
3744: -- two framed "Notification Detail.html" attachment, but other attachement
3745: -- may be available.
3746: --
3747: dbms_lob.trim(g_LOBTable(messageIdx).temp_lob, 0);
3748:
3749: -- This getBodyPart API releases temp lob allocated within
3750: -- WF_MAIL.GetLobMessage3 for doctype (text/html )
3751: -- i.e. g_html_messageIdx locator

Line 4245: dbms_lob.write(p_doc, pos, 1, str);

4241: exception
4242: when no_data_found then
4243: str := '';
4244: pos := length(str);
4245: dbms_lob.write(p_doc, pos, 1, str);
4246: nodename := WF_MAILER_PARAMETER.GetValueForCorr (pNid => nid,
4247: pCorrId => messageType,
4248: pName => 'NODENAME',
4249: pInAttr => inAttr);

Line 4290: dbms_lob.write(p_doc, pos, 1, str);

4286: if MAIL_STATUS is null or MAIL_STATUS not in ('MAIL','INVALID') then
4287:
4288: str := '';
4289: pos := length(str);
4290: dbms_lob.write(p_doc, pos, 1, str);
4291: nodename := WF_MAILER_PARAMETER.GetValueForCorr (pNid => nid,
4292: pCorrId => messageType,
4293: pName => 'NODENAME',
4294: pInAttr => inAttr);

Line 4339: dbms_lob.write(p_doc, pos, 1, str);

4335: if notification_pref not in ('QUERY','SUMMARY','SUMHTML',
4336: 'DISABLED') then
4337: str := '';
4338: pos := length(str);
4339: dbms_lob.write(p_doc, pos, 1, str);
4340:
4341: -- 4628088 Send the RESET_NLS flag if one is defined
4342: -- at the message level.
4343: resetNls := WF_MAILER_PARAMETER.GetValueForCorr (pNid => nid,

Line 4369: dbms_lob.write(p_doc, pos, 1, str);

4365: -- all the same.
4366:
4367: str := '';
4368: pos := length(str);
4369: dbms_lob.write(p_doc, pos, 1, str);
4370:
4371: AddElementAttribute('maxcount','1', attrlist);
4372: pos := NewLOBTag(p_doc, pos, 'NOTIFICATIONGROUP', '', attrlist);
4373: attrlist.DELETE;

Line 4402: dbms_lob.write(p_doc, pos, 1, str);

4398: -- being generated to go to the system admin and the
4399: -- error process to be called.
4400: str := '';
4401: pos := length(str);
4402: dbms_lob.write(p_doc, pos, 1, str);
4403: generateGroupDoc(p_doc, pos, recipient_role, notification_pref,
4404: orig_system, orig_system_id,
4405: p_event_name, p_event_key, p_parameter_list);
4406: end if;

Line 4754: -- dbms_lob.createTemporary(message, TRUE, dbms_lob.CALL);

4750: -- preferred output.
4751: AddElementAttribute('content-type', docType, attrlist);
4752: if (l_lob = 'Y') then
4753:
4754: -- dbms_lob.createTemporary(message, TRUE, dbms_lob.CALL);
4755: messageIdx := wf_temp_lob.getLob(g_LOBTable);
4756: dbms_lob.trim(g_LOBTable(messageIdx).temp_lob, 0);
4757:
4758: -- << bug 6511028 >>

Line 4756: dbms_lob.trim(g_LOBTable(messageIdx).temp_lob, 0);

4752: if (l_lob = 'Y') then
4753:
4754: -- dbms_lob.createTemporary(message, TRUE, dbms_lob.CALL);
4755: messageIdx := wf_temp_lob.getLob(g_LOBTable);
4756: dbms_lob.trim(g_LOBTable(messageIdx).temp_lob, 0);
4757:
4758: -- << bug 6511028 >>
4759: -- This getBodyPart API also releases temp lob allocated within
4760: -- WF_MAIL.GetSummary2 for doctype (text/plain )

Line 4983: dbms_lob.write(p_doc, pos, 1, str);

4979: -- l_pos is crucial as it determines where the next nodes
4980: -- will be placed.
4981: str := '';
4982: pos := length(str);
4983: dbms_lob.write(p_doc, pos, 1, str);
4984:
4985: -- Obtain recipient information
4986: WF_DIRECTORY.GetRoleInfoMail(recipient_role, display_name, email,
4987: notification_pref,

Line 5050: dbms_lob.createTemporary(l_doc, TRUE, dbms_lob.call);

5046: 'wf.plsql.WF_XML.generate', 'BEGIN');
5047: end if;
5048: -- We do not use the LOB pooling for the generate as the LOB
5049: -- is to be returned and not reused.
5050: dbms_lob.createTemporary(l_doc, TRUE, dbms_lob.call);
5051:
5052:
5053: BEGIN
5054: