[Home] [Help]
Skip to content
PACKAGE BODY: APPS.OKL_INV_TYPE_DELETE_PVT
Source
1 PACKAGE BODY Okl_Inv_Type_Delete_Pvt AS
2 /* $Header: OKLRITDB.pls 115.3 2002/02/12 14:31:17 pkm ship $ */
3 ---------------------------------------------------------------------------
4 -- GLOBAL DATASTRUCTURES
5 ---------------------------------------------------------------------------
6 ---------------------------------------------------------------------------
7 -- Procedures and Functions
8 ---------------------------------------------------------------------------
9
10 PROCEDURE delete_type(
11 p_api_version IN NUMBER,
12 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
13 x_return_status OUT NOCOPY VARCHAR2,
14 x_msg_count OUT NOCOPY NUMBER,
15 x_msg_data OUT NOCOPY VARCHAR2,
16 p_ity_del_rec IN ity_del_rec_type)
17 IS
18
19 CURSOR inv_line_type_csr (p_ity_id NUMBER) IS
20 SELECT id
21 FROM okl_invc_line_types_v
22 WHERE ity_id = p_ity_id;
23
24 CURSOR inv_format_strms_csr (p_ilt_id NUMBER) IS
25 SELECT id
26 FROM okl_invc_frmt_strms_v
27 WHERE ilt_id = p_ilt_id;
28
29 p_infv_rec Okl_Inf_Pvt.infv_rec_type;
30 p_ityv_rec Okl_Ity_Pvt.ityv_rec_type;
31 p_iltv_rec Okl_Ilt_Pvt.iltv_rec_type;
32 p_ilsv_rec Okl_Ils_Pvt.ilsv_rec_type;
33
34
35 p_infv_tbl Okl_Inf_Pvt.infv_tbl_type;
36 p_ityv_tbl Okl_Ity_Pvt.ityv_tbl_type;
37 p_iltv_tbl Okl_Ilt_Pvt.iltv_tbl_type;
38 p_ilsv_tbl Okl_Ils_Pvt.ilsv_tbl_type;
39
40 BEGIN
41
42 -- The delete routine works its way up the ER hierarchy
43 --
44
45 FOR inv_line_type IN inv_line_type_csr ( p_ity_del_rec.id ) LOOP
46
47 FOR inv_format_strms IN inv_format_strms_csr( inv_line_type.id ) LOOP
48 p_ilsv_rec.id := inv_format_strms.id;
49 Okl_Ils_Pvt.delete_row(
50 p_api_version,
51 p_init_msg_list,
52 x_return_status,
53 x_msg_count,
54 x_msg_data,
55 p_ilsv_rec);
56 END LOOP;
57
58 p_iltv_rec.id := inv_line_type.id;
59 Okl_Ilt_Pvt.delete_row(
60 p_api_version,
61 p_init_msg_list,
62 x_return_status,
63 x_msg_count,
64 x_msg_data,
65 p_iltv_rec);
66 END LOOP;
67
68 p_ityv_rec.id := p_ity_del_rec.id;
69 Okl_Ity_Pvt.delete_row(
70 p_api_version,
71 p_init_msg_list,
72 x_return_status,
73 x_msg_count,
74 x_msg_data,
75 p_ityv_rec);
76
77
78 EXCEPTION
79 WHEN OTHERS THEN
80 null;
81 END;
82
83 PROCEDURE delete_type(
84 p_api_version IN NUMBER,
85 p_init_msg_list IN VARCHAR2 DEFAULT Okl_Api.G_FALSE,
86 x_return_status OUT NOCOPY VARCHAR2,
87 x_msg_count OUT NOCOPY NUMBER,
88 x_msg_data OUT NOCOPY VARCHAR2,
89 p_ity_del_tbl IN ity_del_tbl_type)
90 IS
91
92 p_ity_del_rec ity_del_rec_type;
93
94 BEGIN
95 FOR i IN p_ity_del_tbl.first..p_ity_del_tbl.COUNT LOOP
96 p_ity_del_rec := p_ity_del_tbl(i);
97
98 delete_type(
99 p_api_version,
100 p_init_msg_list,
101 x_return_status,
102 x_msg_count,
103 x_msg_data,
104 p_ity_del_rec);
105 END LOOP;
106 EXCEPTION
107 WHEN OTHERS THEN
108 null;
109 END;
110
111 END Okl_Inv_Type_Delete_Pvt;