8: BEGIN
9: DBMS_LOB.CreateTemporary(clob, TRUE, DBMS_LOB.CALL);
10: END;
11:
12: FUNCTION getProperty(element IN xmldom.DOMElement, key IN VARCHAR2) return VARCHAR2 IS
13: nl xmldom.DOMNodeList;
14: len number;
15: n xmldom.DOMNode;
16: dummyElem xmldom.DOMElement;
9: DBMS_LOB.CreateTemporary(clob, TRUE, DBMS_LOB.CALL);
10: END;
11:
12: FUNCTION getProperty(element IN xmldom.DOMElement, key IN VARCHAR2) return VARCHAR2 IS
13: nl xmldom.DOMNodeList;
14: len number;
15: n xmldom.DOMNode;
16: dummyElem xmldom.DOMElement;
17: child xmldom.DOMNode;
11:
12: FUNCTION getProperty(element IN xmldom.DOMElement, key IN VARCHAR2) return VARCHAR2 IS
13: nl xmldom.DOMNodeList;
14: len number;
15: n xmldom.DOMNode;
16: dummyElem xmldom.DOMElement;
17: child xmldom.DOMNode;
18: retValue varchar2(4000);
19: BEGIN
12: FUNCTION getProperty(element IN xmldom.DOMElement, key IN VARCHAR2) return VARCHAR2 IS
13: nl xmldom.DOMNodeList;
14: len number;
15: n xmldom.DOMNode;
16: dummyElem xmldom.DOMElement;
17: child xmldom.DOMNode;
18: retValue varchar2(4000);
19: BEGIN
20: nl := xmldom.getChildNodes(xmldom.makeNode(element));
13: nl xmldom.DOMNodeList;
14: len number;
15: n xmldom.DOMNode;
16: dummyElem xmldom.DOMElement;
17: child xmldom.DOMNode;
18: retValue varchar2(4000);
19: BEGIN
20: nl := xmldom.getChildNodes(xmldom.makeNode(element));
21: len := xmldom.getLength(nl);
16: dummyElem xmldom.DOMElement;
17: child xmldom.DOMNode;
18: retValue varchar2(4000);
19: BEGIN
20: nl := xmldom.getChildNodes(xmldom.makeNode(element));
21: len := xmldom.getLength(nl);
22:
23: if (xmldom.getTagName(element) = 'IESQuestionData' OR xmldom.getTagName(element) = 'IESPanelData') then
24: if (key = 'InteractionId') then
17: child xmldom.DOMNode;
18: retValue varchar2(4000);
19: BEGIN
20: nl := xmldom.getChildNodes(xmldom.makeNode(element));
21: len := xmldom.getLength(nl);
22:
23: if (xmldom.getTagName(element) = 'IESQuestionData' OR xmldom.getTagName(element) = 'IESPanelData') then
24: if (key = 'InteractionId') then
25: return xmldom.getAttribute(element,'InteractionId');
19: BEGIN
20: nl := xmldom.getChildNodes(xmldom.makeNode(element));
21: len := xmldom.getLength(nl);
22:
23: if (xmldom.getTagName(element) = 'IESQuestionData' OR xmldom.getTagName(element) = 'IESPanelData') then
24: if (key = 'InteractionId') then
25: return xmldom.getAttribute(element,'InteractionId');
26: end if;
27: if (key = 'AgentId') then
21: len := xmldom.getLength(nl);
22:
23: if (xmldom.getTagName(element) = 'IESQuestionData' OR xmldom.getTagName(element) = 'IESPanelData') then
24: if (key = 'InteractionId') then
25: return xmldom.getAttribute(element,'InteractionId');
26: end if;
27: if (key = 'AgentId') then
28: return xmldom.getAttribute(element,'AgentId');
29: end if;
24: if (key = 'InteractionId') then
25: return xmldom.getAttribute(element,'InteractionId');
26: end if;
27: if (key = 'AgentId') then
28: return xmldom.getAttribute(element,'AgentId');
29: end if;
30: end if;
31:
32: for i in 0..len-1 loop
29: end if;
30: end if;
31:
32: for i in 0..len-1 loop
33: n := xmldom.item(nl, i);
34: dummyElem := xmldom.makeElement(n);
35:
36: if (xmldom.getAttribute(dummyElem,'NAME') = key) then
37: child := xmldom.getFirstChild(n);
30: end if;
31:
32: for i in 0..len-1 loop
33: n := xmldom.item(nl, i);
34: dummyElem := xmldom.makeElement(n);
35:
36: if (xmldom.getAttribute(dummyElem,'NAME') = key) then
37: child := xmldom.getFirstChild(n);
38: if NOT (xmldom.isNull(child)) then
32: for i in 0..len-1 loop
33: n := xmldom.item(nl, i);
34: dummyElem := xmldom.makeElement(n);
35:
36: if (xmldom.getAttribute(dummyElem,'NAME') = key) then
37: child := xmldom.getFirstChild(n);
38: if NOT (xmldom.isNull(child)) then
39: retValue := xmldom.getNodeValue(child);
40: return retValue;
33: n := xmldom.item(nl, i);
34: dummyElem := xmldom.makeElement(n);
35:
36: if (xmldom.getAttribute(dummyElem,'NAME') = key) then
37: child := xmldom.getFirstChild(n);
38: if NOT (xmldom.isNull(child)) then
39: retValue := xmldom.getNodeValue(child);
40: return retValue;
41: else
34: dummyElem := xmldom.makeElement(n);
35:
36: if (xmldom.getAttribute(dummyElem,'NAME') = key) then
37: child := xmldom.getFirstChild(n);
38: if NOT (xmldom.isNull(child)) then
39: retValue := xmldom.getNodeValue(child);
40: return retValue;
41: else
42: return NULL;
35:
36: if (xmldom.getAttribute(dummyElem,'NAME') = key) then
37: child := xmldom.getFirstChild(n);
38: if NOT (xmldom.isNull(child)) then
39: retValue := xmldom.getNodeValue(child);
40: return retValue;
41: else
42: return NULL;
43: end if;
45: end loop;
46: return NULL;
47: END;
48:
49: FUNCTION getDummyFootprintDataTag return xmldom.DOMElement IS
50: parser xmlparser.parser;
51: doc xmldom.DOMDocument;
52: element xmlDom.DOMElement;
53: p_element VARCHAR2(256) := '
47: END;
48:
49: FUNCTION getDummyFootprintDataTag return xmldom.DOMElement IS
50: parser xmlparser.parser;
51: doc xmldom.DOMDocument;
52: element xmlDom.DOMElement;
53: p_element VARCHAR2(256) := '
54: BEGIN
55: -- API body
48:
49: FUNCTION getDummyFootprintDataTag return xmldom.DOMElement IS
50: parser xmlparser.parser;
51: doc xmldom.DOMDocument;
52: element xmlDom.DOMElement;
53: p_element VARCHAR2(256) := '
54: BEGIN
55: -- API body
56: parser := xmlparser.newParser;
59: xmlparser.showWarnings(parser, TRUE);
60: xmlparser.parseBuffer(parser, p_element);
61:
62: doc := xmlparser.getDocument(parser);
63: element := xmldom.getDocumentElement(doc);
64:
65: return element;
66: end;
67:
64:
65: return element;
66: end;
67:
68: FUNCTION getDummyQuestionDataTag return xmldom.DOMElement IS
69: parser xmlparser.parser;
70: doc xmldom.DOMDocument;
71: element xmlDom.DOMElement;
72: p_element VARCHAR2(256) := '
66: end;
67:
68: FUNCTION getDummyQuestionDataTag return xmldom.DOMElement IS
69: parser xmlparser.parser;
70: doc xmldom.DOMDocument;
71: element xmlDom.DOMElement;
72: p_element VARCHAR2(256) := '
73: BEGIN
74: -- API body
67:
68: FUNCTION getDummyQuestionDataTag return xmldom.DOMElement IS
69: parser xmlparser.parser;
70: doc xmldom.DOMDocument;
71: element xmlDom.DOMElement;
72: p_element VARCHAR2(256) := '
73: BEGIN
74: -- API body
75: parser := xmlparser.newParser;
78: xmlparser.showWarnings(parser, TRUE);
79: xmlparser.parseBuffer(parser, p_element);
80:
81: doc := xmlparser.getDocument(parser);
82: element := xmldom.getDocumentElement(doc);
83:
84: return element;
85: end;
86:
84: return element;
85: end;
86:
87:
88: FUNCTION getFootprintDataElement(element IN xmldom.DOMElement) return xmldom.DOMELement IS
89: nl xmldom.DOMNodeList;
90: len number;
91: n xmldom.DOMNode;
92: dummyElem xmldom.DOMElement;
85: end;
86:
87:
88: FUNCTION getFootprintDataElement(element IN xmldom.DOMElement) return xmldom.DOMELement IS
89: nl xmldom.DOMNodeList;
90: len number;
91: n xmldom.DOMNode;
92: dummyElem xmldom.DOMElement;
93: BEGIN
87:
88: FUNCTION getFootprintDataElement(element IN xmldom.DOMElement) return xmldom.DOMELement IS
89: nl xmldom.DOMNodeList;
90: len number;
91: n xmldom.DOMNode;
92: dummyElem xmldom.DOMElement;
93: BEGIN
94: nl := xmldom.getChildNodes(xmldom.makeNode(element));
95: len := xmldom.getLength(nl);
88: FUNCTION getFootprintDataElement(element IN xmldom.DOMElement) return xmldom.DOMELement IS
89: nl xmldom.DOMNodeList;
90: len number;
91: n xmldom.DOMNode;
92: dummyElem xmldom.DOMElement;
93: BEGIN
94: nl := xmldom.getChildNodes(xmldom.makeNode(element));
95: len := xmldom.getLength(nl);
96:
90: len number;
91: n xmldom.DOMNode;
92: dummyElem xmldom.DOMElement;
93: BEGIN
94: nl := xmldom.getChildNodes(xmldom.makeNode(element));
95: len := xmldom.getLength(nl);
96:
97:
98: for i in 0..len-1 loop
91: n xmldom.DOMNode;
92: dummyElem xmldom.DOMElement;
93: BEGIN
94: nl := xmldom.getChildNodes(xmldom.makeNode(element));
95: len := xmldom.getLength(nl);
96:
97:
98: for i in 0..len-1 loop
99: n := xmldom.item(nl, i);
95: len := xmldom.getLength(nl);
96:
97:
98: for i in 0..len-1 loop
99: n := xmldom.item(nl, i);
100: dummyElem := xmldom.makeElement(n);
101:
102: if (xmldom.getTagName(dummyElem) = 'IESFootprintData') then
103: return dummyElem;
96:
97:
98: for i in 0..len-1 loop
99: n := xmldom.item(nl, i);
100: dummyElem := xmldom.makeElement(n);
101:
102: if (xmldom.getTagName(dummyElem) = 'IESFootprintData') then
103: return dummyElem;
104: end if;
98: for i in 0..len-1 loop
99: n := xmldom.item(nl, i);
100: dummyElem := xmldom.makeElement(n);
101:
102: if (xmldom.getTagName(dummyElem) = 'IESFootprintData') then
103: return dummyElem;
104: end if;
105: end loop;
106:
103: return dummyElem;
104: end if;
105: end loop;
106:
107: return getDummyFootprintDataTag; -- need this because null returned is not recognized when xmldom.isNull check is done
108: END;
109:
110: FUNCTION getQuestionDataElement(element IN xmldom.DOMElement) return xmldom.DOMELement IS
111: nl xmldom.DOMNodeList;
106:
107: return getDummyFootprintDataTag; -- need this because null returned is not recognized when xmldom.isNull check is done
108: END;
109:
110: FUNCTION getQuestionDataElement(element IN xmldom.DOMElement) return xmldom.DOMELement IS
111: nl xmldom.DOMNodeList;
112: len number;
113: n xmldom.DOMNode;
114: dummyElem xmldom.DOMElement;
107: return getDummyFootprintDataTag; -- need this because null returned is not recognized when xmldom.isNull check is done
108: END;
109:
110: FUNCTION getQuestionDataElement(element IN xmldom.DOMElement) return xmldom.DOMELement IS
111: nl xmldom.DOMNodeList;
112: len number;
113: n xmldom.DOMNode;
114: dummyElem xmldom.DOMElement;
115: BEGIN
109:
110: FUNCTION getQuestionDataElement(element IN xmldom.DOMElement) return xmldom.DOMELement IS
111: nl xmldom.DOMNodeList;
112: len number;
113: n xmldom.DOMNode;
114: dummyElem xmldom.DOMElement;
115: BEGIN
116: nl := xmldom.getChildNodes(xmldom.makeNode(element));
117: len := xmldom.getLength(nl);
110: FUNCTION getQuestionDataElement(element IN xmldom.DOMElement) return xmldom.DOMELement IS
111: nl xmldom.DOMNodeList;
112: len number;
113: n xmldom.DOMNode;
114: dummyElem xmldom.DOMElement;
115: BEGIN
116: nl := xmldom.getChildNodes(xmldom.makeNode(element));
117: len := xmldom.getLength(nl);
118:
112: len number;
113: n xmldom.DOMNode;
114: dummyElem xmldom.DOMElement;
115: BEGIN
116: nl := xmldom.getChildNodes(xmldom.makeNode(element));
117: len := xmldom.getLength(nl);
118:
119:
120: for i in 0..len-1 loop
113: n xmldom.DOMNode;
114: dummyElem xmldom.DOMElement;
115: BEGIN
116: nl := xmldom.getChildNodes(xmldom.makeNode(element));
117: len := xmldom.getLength(nl);
118:
119:
120: for i in 0..len-1 loop
121: n := xmldom.item(nl, i);
117: len := xmldom.getLength(nl);
118:
119:
120: for i in 0..len-1 loop
121: n := xmldom.item(nl, i);
122: dummyElem := xmldom.makeElement(n);
123:
124: if (xmldom.getTagName(dummyElem) = 'IESQuestionData') then
125: return dummyElem;
118:
119:
120: for i in 0..len-1 loop
121: n := xmldom.item(nl, i);
122: dummyElem := xmldom.makeElement(n);
123:
124: if (xmldom.getTagName(dummyElem) = 'IESQuestionData') then
125: return dummyElem;
126: end if;
120: for i in 0..len-1 loop
121: n := xmldom.item(nl, i);
122: dummyElem := xmldom.makeElement(n);
123:
124: if (xmldom.getTagName(dummyElem) = 'IESQuestionData') then
125: return dummyElem;
126: end if;
127: end loop;
128:
125: return dummyElem;
126: end if;
127: end loop;
128:
129: return getDummyQuestionDataTag; -- need this because null returned is not recognized when xmldom.isNull check is done
130: END;
131:
132: PROCEDURE saveFootprintData(element IN xmldom.DOMElement, panelDataId IN NUMBER, intId IN NUMBER, agentId IN NUMBER, seq IN NUMBER) IS
133: elapsedtime NUMBER ;
128:
129: return getDummyQuestionDataTag; -- need this because null returned is not recognized when xmldom.isNull check is done
130: END;
131:
132: PROCEDURE saveFootprintData(element IN xmldom.DOMElement, panelDataId IN NUMBER, intId IN NUMBER, agentId IN NUMBER, seq IN NUMBER) IS
133: elapsedtime NUMBER ;
134:
135: TYPE answerId IS REF CURSOR;
136: obj answerId;
159: END;
160:
161: PROCEDURE insertFootprintData
162: (
163: p_element IN xmldom.DOMElement,
164: panel_data_id IN number,
165: interactionId IN number,
166: agentId IN number
167: ) IS
165: interactionId IN number,
166: agentId IN number
167: ) IS
168:
169: --element xmlDom.DOMElement;
170: dummyelem xmlDom.DOMElement;
171: nl xmlDom.DOMNodeList;
172: n xmldom.DOMNode;
173: len NUMBER;
166: agentId IN number
167: ) IS
168:
169: --element xmlDom.DOMElement;
170: dummyelem xmlDom.DOMElement;
171: nl xmlDom.DOMNodeList;
172: n xmldom.DOMNode;
173: len NUMBER;
174: BEGIN
167: ) IS
168:
169: --element xmlDom.DOMElement;
170: dummyelem xmlDom.DOMElement;
171: nl xmlDom.DOMNodeList;
172: n xmldom.DOMNode;
173: len NUMBER;
174: BEGIN
175:
168:
169: --element xmlDom.DOMElement;
170: dummyelem xmlDom.DOMElement;
171: nl xmlDom.DOMNodeList;
172: n xmldom.DOMNode;
173: len NUMBER;
174: BEGIN
175:
176: -- API body
175:
176: -- API body
177: --element := p_element;
178:
179: if NOT (xmldom.isnull(p_element)) then
180: nl := xmldom.getChildNodes(xmldom.makeNode(p_element));
181: len := xmldom.getLength(nl);
182:
183: for i in 0..len-1 loop
176: -- API body
177: --element := p_element;
178:
179: if NOT (xmldom.isnull(p_element)) then
180: nl := xmldom.getChildNodes(xmldom.makeNode(p_element));
181: len := xmldom.getLength(nl);
182:
183: for i in 0..len-1 loop
184: n := xmldom.item(nl, i);
177: --element := p_element;
178:
179: if NOT (xmldom.isnull(p_element)) then
180: nl := xmldom.getChildNodes(xmldom.makeNode(p_element));
181: len := xmldom.getLength(nl);
182:
183: for i in 0..len-1 loop
184: n := xmldom.item(nl, i);
185:
180: nl := xmldom.getChildNodes(xmldom.makeNode(p_element));
181: len := xmldom.getLength(nl);
182:
183: for i in 0..len-1 loop
184: n := xmldom.item(nl, i);
185:
186: dummyElem := xmldom.makeElement(n);
187: saveFootprintData(dummyElem, panel_data_id, interactionId, agentId, i);
188:
182:
183: for i in 0..len-1 loop
184: n := xmldom.item(nl, i);
185:
186: dummyElem := xmldom.makeElement(n);
187: saveFootprintData(dummyElem, panel_data_id, interactionId, agentId, i);
188:
189: end loop;
190:
192: END;
193:
194:
195:
196: PROCEDURE saveQuestionData(element IN xmldom.DOMElement, panelDataId IN NUMBER, intId IN NUMBER, agentId IN NUMBER) IS
197: question_id NUMBER ;
198: lookup_id NUMBER ;
199: answer_id NUMBER ;
200: string_val VARCHAR2(4000);
241: END;
242:
243: PROCEDURE insertIESQuestionData
244: (
245: p_element IN xmldom.DOMElement,
246: panel_data_id IN number,
247: interactionId IN number,
248: agentId IN number
249: ) IS
247: interactionId IN number,
248: agentId IN number
249: ) IS
250:
251: --element xmlDom.DOMElement;
252: dummyelem xmlDom.DOMElement;
253: nl xmlDom.DOMNodeList;
254: n xmldom.DOMNode;
255: len NUMBER;
248: agentId IN number
249: ) IS
250:
251: --element xmlDom.DOMElement;
252: dummyelem xmlDom.DOMElement;
253: nl xmlDom.DOMNodeList;
254: n xmldom.DOMNode;
255: len NUMBER;
256: BEGIN
249: ) IS
250:
251: --element xmlDom.DOMElement;
252: dummyelem xmlDom.DOMElement;
253: nl xmlDom.DOMNodeList;
254: n xmldom.DOMNode;
255: len NUMBER;
256: BEGIN
257:
250:
251: --element xmlDom.DOMElement;
252: dummyelem xmlDom.DOMElement;
253: nl xmlDom.DOMNodeList;
254: n xmldom.DOMNode;
255: len NUMBER;
256: BEGIN
257:
258: -- API body
257:
258: -- API body
259: --element := p_element;
260:
261: if NOT (xmldom.isnull(p_element)) then
262: nl := xmldom.getChildNodes(xmldom.makeNode(p_element));
263: len := xmldom.getLength(nl);
264:
265: for i in 0..len-1 loop
258: -- API body
259: --element := p_element;
260:
261: if NOT (xmldom.isnull(p_element)) then
262: nl := xmldom.getChildNodes(xmldom.makeNode(p_element));
263: len := xmldom.getLength(nl);
264:
265: for i in 0..len-1 loop
266: n := xmldom.item(nl, i);
259: --element := p_element;
260:
261: if NOT (xmldom.isnull(p_element)) then
262: nl := xmldom.getChildNodes(xmldom.makeNode(p_element));
263: len := xmldom.getLength(nl);
264:
265: for i in 0..len-1 loop
266: n := xmldom.item(nl, i);
267:
262: nl := xmldom.getChildNodes(xmldom.makeNode(p_element));
263: len := xmldom.getLength(nl);
264:
265: for i in 0..len-1 loop
266: n := xmldom.item(nl, i);
267:
268: dummyElem := xmldom.makeElement(n);
269: saveQuestionData(dummyElem, panel_data_id, interactionId, agentId);
270:
264:
265: for i in 0..len-1 loop
266: n := xmldom.item(nl, i);
267:
268: dummyElem := xmldom.makeElement(n);
269: saveQuestionData(dummyElem, panel_data_id, interactionId, agentId);
270:
271: end loop;
272:
275:
276:
277:
278:
279: PROCEDURE savePanelData(element IN xmldom.DOMElement, intId IN NUMBER, agentId IN NUMBER) IS
280: panel_id NUMBER;
281: id NUMBER;
282: transaction_id NUMBER;
283: elapsed_time NUMBER;
282: transaction_id NUMBER;
283: elapsed_time NUMBER;
284: sequence_num NUMBER;
285: deleted_status NUMBER;
286: qd_element XMLDOM.DOMElement;
287: fp_element XMLDOM.DOMElement;
288:
289: insertStmt varchar2(4000);
290: seqval number;
283: elapsed_time NUMBER;
284: sequence_num NUMBER;
285: deleted_status NUMBER;
286: qd_element XMLDOM.DOMElement;
287: fp_element XMLDOM.DOMElement;
288:
289: insertStmt varchar2(4000);
290: seqval number;
291: nullval number;
322: sequence_num,
323: deleted_status returning INTO id;
324:
325: fp_element := getFootprintDataElement(element);
326: if NOT (xmldom.isNULL(fp_element)) then
327: insertFootprintData(fp_element, id, intId, agentId);
328: end if;
329:
330:
329:
330:
331: qd_element := getQuestionDataElement(element);
332:
333: if NOT (xmldom.isNULL(qd_element)) then
334: insertIESQuestionData(qd_element, id, intId, agentId);
335: end if;
336:
337: END;
343: p_element IN varchar2
344: ) IS
345:
346: parser xmlparser.parser;
347: doc xmldom.DOMDocument;
348: element xmlDom.DOMElement;
349: dummyelem xmlDom.DOMElement;
350: nl xmlDom.DOMNodeList;
351: n xmldom.DOMNode;
344: ) IS
345:
346: parser xmlparser.parser;
347: doc xmldom.DOMDocument;
348: element xmlDom.DOMElement;
349: dummyelem xmlDom.DOMElement;
350: nl xmlDom.DOMNodeList;
351: n xmldom.DOMNode;
352: len NUMBER;
345:
346: parser xmlparser.parser;
347: doc xmldom.DOMDocument;
348: element xmlDom.DOMElement;
349: dummyelem xmlDom.DOMElement;
350: nl xmlDom.DOMNodeList;
351: n xmldom.DOMNode;
352: len NUMBER;
353: interactionId NUMBER;
346: parser xmlparser.parser;
347: doc xmldom.DOMDocument;
348: element xmlDom.DOMElement;
349: dummyelem xmlDom.DOMElement;
350: nl xmlDom.DOMNodeList;
351: n xmldom.DOMNode;
352: len NUMBER;
353: interactionId NUMBER;
354: agentId NUMBER;
347: doc xmldom.DOMDocument;
348: element xmlDom.DOMElement;
349: dummyelem xmlDom.DOMElement;
350: nl xmlDom.DOMNodeList;
351: n xmldom.DOMNode;
352: len NUMBER;
353: interactionId NUMBER;
354: agentId NUMBER;
355: BEGIN
361: xmlparser.showWarnings(parser, TRUE);
362: xmlparser.parseBuffer(parser, p_element);
363:
364: doc := xmlparser.getDocument(parser);
365: element := xmldom.getDocumentElement(doc);
366:
367: if NOT (xmldom.isnull(element)) then
368: interactionId := to_number(getProperty(element, 'InteractionId'));
369: agentId := to_number(getProperty(element, 'AgentId'));
363:
364: doc := xmlparser.getDocument(parser);
365: element := xmldom.getDocumentElement(doc);
366:
367: if NOT (xmldom.isnull(element)) then
368: interactionId := to_number(getProperty(element, 'InteractionId'));
369: agentId := to_number(getProperty(element, 'AgentId'));
370: nl := xmldom.getChildNodes(xmldom.makeNode(element));
371: len := xmldom.getLength(nl);
366:
367: if NOT (xmldom.isnull(element)) then
368: interactionId := to_number(getProperty(element, 'InteractionId'));
369: agentId := to_number(getProperty(element, 'AgentId'));
370: nl := xmldom.getChildNodes(xmldom.makeNode(element));
371: len := xmldom.getLength(nl);
372:
373: for i in 0..len-1 loop
374: n := xmldom.item(nl, i);
367: if NOT (xmldom.isnull(element)) then
368: interactionId := to_number(getProperty(element, 'InteractionId'));
369: agentId := to_number(getProperty(element, 'AgentId'));
370: nl := xmldom.getChildNodes(xmldom.makeNode(element));
371: len := xmldom.getLength(nl);
372:
373: for i in 0..len-1 loop
374: n := xmldom.item(nl, i);
375:
370: nl := xmldom.getChildNodes(xmldom.makeNode(element));
371: len := xmldom.getLength(nl);
372:
373: for i in 0..len-1 loop
374: n := xmldom.item(nl, i);
375:
376: dummyElem := xmldom.makeElement(n);
377: savePanelData(dummyElem, interactionId, agentId);
378:
372:
373: for i in 0..len-1 loop
374: n := xmldom.item(nl, i);
375:
376: dummyElem := xmldom.makeElement(n);
377: savePanelData(dummyElem, interactionId, agentId);
378:
379: end loop;
380:
382: end;
383:
384: PROCEDURE saveEndOfScriptData (p_element IN CLOB ) IS
385: parser xmlparser.parser;
386: doc xmldom.DOMDocument;
387: element xmlDom.DOMElement;
388: dummyelem xmlDom.DOMElement;
389: nl xmlDom.DOMNodeList;
390: n xmldom.DOMNode;
383:
384: PROCEDURE saveEndOfScriptData (p_element IN CLOB ) IS
385: parser xmlparser.parser;
386: doc xmldom.DOMDocument;
387: element xmlDom.DOMElement;
388: dummyelem xmlDom.DOMElement;
389: nl xmlDom.DOMNodeList;
390: n xmldom.DOMNode;
391: len NUMBER;
384: PROCEDURE saveEndOfScriptData (p_element IN CLOB ) IS
385: parser xmlparser.parser;
386: doc xmldom.DOMDocument;
387: element xmlDom.DOMElement;
388: dummyelem xmlDom.DOMElement;
389: nl xmlDom.DOMNodeList;
390: n xmldom.DOMNode;
391: len NUMBER;
392: interactionId NUMBER;
385: parser xmlparser.parser;
386: doc xmldom.DOMDocument;
387: element xmlDom.DOMElement;
388: dummyelem xmlDom.DOMElement;
389: nl xmlDom.DOMNodeList;
390: n xmldom.DOMNode;
391: len NUMBER;
392: interactionId NUMBER;
393: agentId NUMBER;
386: doc xmldom.DOMDocument;
387: element xmlDom.DOMElement;
388: dummyelem xmlDom.DOMElement;
389: nl xmlDom.DOMNodeList;
390: n xmldom.DOMNode;
391: len NUMBER;
392: interactionId NUMBER;
393: agentId NUMBER;
394: BEGIN
400: xmlparser.showWarnings(parser, TRUE);
401: xmlparser.parseClob(parser, p_element);
402:
403: doc := xmlparser.getDocument(parser);
404: element := xmldom.getDocumentElement(doc);
405:
406: if NOT (xmldom.isnull(element)) then
407: interactionId := to_number(getProperty(element, 'InteractionId'));
408: agentId := to_number(getProperty(element, 'AgentId'));
402:
403: doc := xmlparser.getDocument(parser);
404: element := xmldom.getDocumentElement(doc);
405:
406: if NOT (xmldom.isnull(element)) then
407: interactionId := to_number(getProperty(element, 'InteractionId'));
408: agentId := to_number(getProperty(element, 'AgentId'));
409: nl := xmldom.getChildNodes(xmldom.makeNode(element));
410: len := xmldom.getLength(nl);
405:
406: if NOT (xmldom.isnull(element)) then
407: interactionId := to_number(getProperty(element, 'InteractionId'));
408: agentId := to_number(getProperty(element, 'AgentId'));
409: nl := xmldom.getChildNodes(xmldom.makeNode(element));
410: len := xmldom.getLength(nl);
411:
412: for i in 0..len-1 loop
413: n := xmldom.item(nl, i);
406: if NOT (xmldom.isnull(element)) then
407: interactionId := to_number(getProperty(element, 'InteractionId'));
408: agentId := to_number(getProperty(element, 'AgentId'));
409: nl := xmldom.getChildNodes(xmldom.makeNode(element));
410: len := xmldom.getLength(nl);
411:
412: for i in 0..len-1 loop
413: n := xmldom.item(nl, i);
414:
409: nl := xmldom.getChildNodes(xmldom.makeNode(element));
410: len := xmldom.getLength(nl);
411:
412: for i in 0..len-1 loop
413: n := xmldom.item(nl, i);
414:
415: dummyElem := xmldom.makeElement(n);
416: savePanelData(dummyElem, interactionId, agentId);
417:
411:
412: for i in 0..len-1 loop
413: n := xmldom.item(nl, i);
414:
415: dummyElem := xmldom.makeElement(n);
416: savePanelData(dummyElem, interactionId, agentId);
417:
418: end loop;
419: