32: p_quote_char OUT VARCHAR2,
33: p_field_delimiter OUT VARCHAR2,
34: p_return_code OUT NUMBER,
35: p_error_stack_string OUT VARCHAR2) IS
36: l_approval_list po_approvallist_s1.ApprovalListType;
37: l_error_stack po_approvallist_s1.ErrorStackType;
38: l_return_code NUMBER;
39: l_last_update_date DATE;
40: l_approval_list_header_id NUMBER;
33: p_field_delimiter OUT VARCHAR2,
34: p_return_code OUT NUMBER,
35: p_error_stack_string OUT VARCHAR2) IS
36: l_approval_list po_approvallist_s1.ApprovalListType;
37: l_error_stack po_approvallist_s1.ErrorStackType;
38: l_return_code NUMBER;
39: l_last_update_date DATE;
40: l_approval_list_header_id NUMBER;
41: l_index NUMBER;
43:
44: p_approval_list_string := NULL;
45:
46: IF (p_default_flag = 1) THEN
47: po_approvallist_s1.get_default_approval_list(
48: p_first_approver_id=>p_first_approver_id,
49: p_approval_path_id=>NULL,
50: p_document_id=>p_document_id,
51: p_document_type=>g_document_type,
55: p_error_stack=>l_error_stack,
56: p_approval_list=>l_approval_list);
57: ELSE
58: IF (p_rebuild_flag = 1) THEN
59: po_approvallist_s1.rebuild_approval_list(
60: p_document_id=>p_document_id,
61: p_document_type=>g_document_type,
62: p_document_subtype=>g_document_subtype,
63: p_rebuild_code=>'DOCUMENT_CHANGED',
64: p_return_code=>l_return_code,
65: p_error_stack=>l_error_stack,
66: p_approval_list_header_id=>l_approval_list_header_id);
67:
68: IF (l_return_code <> po_approvallist_s1.E_SUCCESS) THEN
69: GOTO HANDLE_ERROR; -- bad style huh?
70: END IF;
71: END IF;
72: po_approvallist_s1.get_latest_approval_list(
68: IF (l_return_code <> po_approvallist_s1.E_SUCCESS) THEN
69: GOTO HANDLE_ERROR; -- bad style huh?
70: END IF;
71: END IF;
72: po_approvallist_s1.get_latest_approval_list(
73: p_document_id=>p_document_id,
74: p_document_type=>g_document_type,
75: p_document_subtype=>g_document_subtype,
76: p_return_code=>l_return_code,
82: p_last_update_date := to_char(l_last_update_date, g_date_format_mask);
83: p_approval_list_header_id := l_approval_list_header_id;
84: END IF;
85:
86: IF (l_return_code = po_approvallist_s1.E_SUCCESS) THEN
87:
88: g_approval_list_string := NULL;
89:
90: IF (l_approval_list.COUNT > 0) THEN
133: p_quote_char IN VARCHAR2,
134: p_field_delimiter IN VARCHAR2,
135: p_return_code OUT NUMBER,
136: p_error_stack_string OUT VARCHAR2) IS
137: l_approval_list po_approvallist_s1.ApprovalListType;
138: l_approval_list_elt po_approvallist_s1.ApprovalListEltType;
139: l_error_stack po_approvallist_s1.ErrorStackType;
140: l_index NUMBER;
141: l_pos NUMBER;
134: p_field_delimiter IN VARCHAR2,
135: p_return_code OUT NUMBER,
136: p_error_stack_string OUT VARCHAR2) IS
137: l_approval_list po_approvallist_s1.ApprovalListType;
138: l_approval_list_elt po_approvallist_s1.ApprovalListEltType;
139: l_error_stack po_approvallist_s1.ErrorStackType;
140: l_index NUMBER;
141: l_pos NUMBER;
142: l_string VARCHAR2(32767);
135: p_return_code OUT NUMBER,
136: p_error_stack_string OUT VARCHAR2) IS
137: l_approval_list po_approvallist_s1.ApprovalListType;
138: l_approval_list_elt po_approvallist_s1.ApprovalListEltType;
139: l_error_stack po_approvallist_s1.ErrorStackType;
140: l_index NUMBER;
141: l_pos NUMBER;
142: l_string VARCHAR2(32767);
143: l_last_update_date DATE;
231: l_approval_list(l_index) := l_approval_list_elt;
232:
233: END LOOP;
234:
235: -- debug: po_approvallist_s1.print_approval_list(l_approval_list);
236:
237: IF (l_approval_list.COUNT > 0) THEN
238: po_approvallist_s1.save_approval_list(
239: p_document_id=>p_document_id,
234:
235: -- debug: po_approvallist_s1.print_approval_list(l_approval_list);
236:
237: IF (l_approval_list.COUNT > 0) THEN
238: po_approvallist_s1.save_approval_list(
239: p_document_id=>p_document_id,
240: p_document_type=>g_document_type,
241: p_document_subtype=>g_document_subtype,
242: p_first_approver_id=>p_first_approver_id,
246: p_approval_list_header_id=>p_approval_list_header_id,
247: p_return_code=>l_return_code,
248: p_error_stack=>l_error_stack);
249:
250: IF (l_return_code = po_approvallist_s1.E_SUCCESS) THEN
251: NULL;
252: ELSE
253: -- Deal with the specific error codes if needed
254: -- Handle the error stack