DBA Data[Home] [Help]

PACKAGE: APPS.OKL_QCO_PVT

Source


1 PACKAGE OKL_QCO_PVT AS
2 /* $Header: OKLSQCOS.pls 120.2 2005/10/30 03:46:21 appldev noship $ */
3   ---------------------------------------------------------------------------
4   -- GLOBAL DATASTRUCTURES
5   ---------------------------------------------------------------------------
6   -- OKL_TRX_QTE_CF_OBJECTS_V Record Spec
7   TYPE qcov_rec_type IS RECORD (
8      id                             NUMBER := OKL_API.G_MISS_NUM
9     ,qte_id                         NUMBER := OKL_API.G_MISS_NUM
10     ,cfo_id                         NUMBER := OKL_API.G_MISS_NUM
11     ,base_source_id                 NUMBER := OKL_API.G_MISS_NUM
12     ,object_version_number          NUMBER := OKL_API.G_MISS_NUM
13     ,created_by                     NUMBER := OKL_API.G_MISS_NUM
14     ,creation_date                  OKL_TRX_QTE_CF_OBJECTS_V.CREATION_DATE%TYPE := OKL_API.G_MISS_DATE
15     ,last_updated_by                NUMBER := OKL_API.G_MISS_NUM
16     ,last_update_date               OKL_TRX_QTE_CF_OBJECTS_V.LAST_UPDATE_DATE%TYPE := OKL_API.G_MISS_DATE
17     ,last_update_login              NUMBER := OKL_API.G_MISS_NUM
18     ,attribute_category             OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE_CATEGORY%TYPE := OKL_API.G_MISS_CHAR
19     ,attribute1                     OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE1%TYPE := OKL_API.G_MISS_CHAR
20     ,attribute2                     OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE2%TYPE := OKL_API.G_MISS_CHAR
21     ,attribute3                     OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE3%TYPE := OKL_API.G_MISS_CHAR
22     ,attribute4                     OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE4%TYPE := OKL_API.G_MISS_CHAR
23     ,attribute5                     OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE5%TYPE := OKL_API.G_MISS_CHAR
24     ,attribute6                     OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE6%TYPE := OKL_API.G_MISS_CHAR
25     ,attribute7                     OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE7%TYPE := OKL_API.G_MISS_CHAR
26     ,attribute8                     OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE8%TYPE := OKL_API.G_MISS_CHAR
27     ,attribute9                     OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE9%TYPE := OKL_API.G_MISS_CHAR
28     ,attribute10                    OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE10%TYPE := OKL_API.G_MISS_CHAR
29     ,attribute11                    OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE11%TYPE := OKL_API.G_MISS_CHAR
30     ,attribute12                    OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE12%TYPE := OKL_API.G_MISS_CHAR
31     ,attribute13                    OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE13%TYPE := OKL_API.G_MISS_CHAR
32     ,attribute14                    OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE14%TYPE := OKL_API.G_MISS_CHAR
33     ,attribute15                    OKL_TRX_QTE_CF_OBJECTS_V.ATTRIBUTE15%TYPE := OKL_API.G_MISS_CHAR);
34   G_MISS_qcov_rec                         qcov_rec_type;
35   TYPE qcov_tbl_type IS TABLE OF qcov_rec_type
36         INDEX BY BINARY_INTEGER;
37   -- OKL_TRX_QTE_CF_OBJECTS Record Spec
38   TYPE qco_rec_type IS RECORD (
39      id                             NUMBER := OKL_API.G_MISS_NUM
40     ,qte_id                         NUMBER := OKL_API.G_MISS_NUM
41     ,cfo_id                         NUMBER := OKL_API.G_MISS_NUM
42     ,base_source_id                 NUMBER := OKL_API.G_MISS_NUM
43     ,object_version_number          NUMBER := OKL_API.G_MISS_NUM
44     ,created_by                     NUMBER := OKL_API.G_MISS_NUM
45     ,creation_date                  OKL_TRX_QTE_CF_OBJECTS.CREATION_DATE%TYPE := OKL_API.G_MISS_DATE
46     ,last_updated_by                NUMBER := OKL_API.G_MISS_NUM
47     ,last_update_date               OKL_TRX_QTE_CF_OBJECTS.LAST_UPDATE_DATE%TYPE := OKL_API.G_MISS_DATE
48     ,last_update_login              NUMBER := OKL_API.G_MISS_NUM
49     ,attribute_category             OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE_CATEGORY%TYPE := OKL_API.G_MISS_CHAR
50     ,attribute1                     OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE1%TYPE := OKL_API.G_MISS_CHAR
51     ,attribute2                     OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE2%TYPE := OKL_API.G_MISS_CHAR
52     ,attribute3                     OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE3%TYPE := OKL_API.G_MISS_CHAR
53     ,attribute4                     OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE4%TYPE := OKL_API.G_MISS_CHAR
54     ,attribute5                     OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE5%TYPE := OKL_API.G_MISS_CHAR
55     ,attribute6                     OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE6%TYPE := OKL_API.G_MISS_CHAR
56     ,attribute7                     OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE7%TYPE := OKL_API.G_MISS_CHAR
57     ,attribute8                     OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE8%TYPE := OKL_API.G_MISS_CHAR
58     ,attribute9                     OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE9%TYPE := OKL_API.G_MISS_CHAR
59     ,attribute10                    OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE10%TYPE := OKL_API.G_MISS_CHAR
60     ,attribute11                    OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE11%TYPE := OKL_API.G_MISS_CHAR
61     ,attribute12                    OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE12%TYPE := OKL_API.G_MISS_CHAR
62     ,attribute13                    OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE13%TYPE := OKL_API.G_MISS_CHAR
63     ,attribute14                    OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE14%TYPE := OKL_API.G_MISS_CHAR
64     ,attribute15                    OKL_TRX_QTE_CF_OBJECTS.ATTRIBUTE15%TYPE := OKL_API.G_MISS_CHAR);
65   G_MISS_qco_rec                          qco_rec_type;
66   TYPE qco_tbl_type IS TABLE OF qco_rec_type
67         INDEX BY BINARY_INTEGER;
68   ---------------------------------------------------------------------------
69   -- GLOBAL MESSAGE CONSTANTS
70   ---------------------------------------------------------------------------
71   G_FND_APP                      CONSTANT VARCHAR2(200) := OKL_API.G_FND_APP;
72   G_FORM_UNABLE_TO_RESERVE_REC   CONSTANT VARCHAR2(200) := OKL_API.G_FORM_UNABLE_TO_RESERVE_REC;
73   G_FORM_RECORD_DELETED          CONSTANT VARCHAR2(200) := OKL_API.G_FORM_RECORD_DELETED;
74   G_FORM_RECORD_CHANGED          CONSTANT VARCHAR2(200) := OKL_API.G_FORM_RECORD_CHANGED;
75   G_RECORD_LOGICALLY_DELETED     CONSTANT VARCHAR2(200) := OKL_API.G_RECORD_LOGICALLY_DELETED;
76   G_REQUIRED_VALUE               CONSTANT VARCHAR2(200) := OKL_API.G_REQUIRED_VALUE;
77   G_INVALID_VALUE                CONSTANT VARCHAR2(200) := OKL_API.G_INVALID_VALUE;
78   G_COL_NAME_TOKEN               CONSTANT VARCHAR2(200) := OKL_API.G_COL_NAME_TOKEN;
79   G_PARENT_TABLE_TOKEN           CONSTANT VARCHAR2(200) := OKL_API.G_PARENT_TABLE_TOKEN;
80   G_CHILD_TABLE_TOKEN            CONSTANT VARCHAR2(200) := OKL_API.G_CHILD_TABLE_TOKEN;
81   G_UNEXPECTED_ERROR             CONSTANT VARCHAR2(200) := 'OKS_SERVICE_AVAILABILITY_UNEXPECTED_ERROR';
82   G_SQLCODE_TOKEN                CONSTANT VARCHAR2(200) := 'SQLcode';
83   G_SQLERRM_TOKEN                CONSTANT VARCHAR2(200) := 'SQLerrm';
84 
85 
86    -- SECHAWLA Added
87   G_NO_PARENT_RECORD            CONSTANT VARCHAR2(200) := 'OKL_NO_PARENT_RECORD';
88 
89   ---------------------------------------------------------------------------
90   -- GLOBAL EXCEPTIONS
91   ---------------------------------------------------------------------------
92   G_EXCEPTION_HALT_VALIDATION    EXCEPTION;
93 
94   ---------------------------------------------------------------------------
95   -- GLOBAL VARIABLES
96   ---------------------------------------------------------------------------
97   G_PKG_NAME                     CONSTANT VARCHAR2(200) := 'OKL_QCO_PVT';
98   G_APP_NAME                     CONSTANT VARCHAR2(3)   := OKL_API.G_APP_NAME;
99 
100 --Bug 4299668 PAGARG Included these types, to be used for bulk insert
101 --**START**--
102   TYPE NumberTabTyp IS TABLE OF NUMBER
103        INDEX BY BINARY_INTEGER;
104   TYPE Number9TabTyp IS TABLE OF NUMBER(9)
105        INDEX BY BINARY_INTEGER;
106   TYPE Var30TabTyp IS TABLE OF VARCHAR2(30)
107        INDEX BY BINARY_INTEGER;
108   TYPE Var90TabTyp IS TABLE OF VARCHAR2(90)
109        INDEX BY BINARY_INTEGER;
110   TYPE Var450TabTyp IS TABLE OF VARCHAR2(450)
111        INDEX BY BINARY_INTEGER;
112   TYPE Number15TabTyp IS TABLE OF NUMBER(15)
113        INDEX BY BINARY_INTEGER;
114   TYPE DateTabTyp IS TABLE OF DATE
115        INDEX BY BINARY_INTEGER;
116 --**END 4299668**--
117 
118   ---------------------------------------------------------------------------
119   -- Procedures and Functions
120   ---------------------------------------------------------------------------
121   PROCEDURE qc;
122   PROCEDURE change_version;
123   PROCEDURE api_copy;
124   PROCEDURE insert_row(
125     p_api_version                  IN NUMBER,
126     p_init_msg_list                IN VARCHAR2,
127     x_return_status                OUT NOCOPY VARCHAR2,
128     x_msg_count                    OUT NOCOPY NUMBER,
129     x_msg_data                     OUT NOCOPY VARCHAR2,
130     p_qcov_rec                     IN qcov_rec_type,
131     x_qcov_rec                     OUT NOCOPY qcov_rec_type);
132   PROCEDURE insert_row(
133     p_api_version                  IN NUMBER,
134     p_init_msg_list                IN VARCHAR2,
135     x_return_status                OUT NOCOPY VARCHAR2,
136     x_msg_count                    OUT NOCOPY NUMBER,
137     x_msg_data                     OUT NOCOPY VARCHAR2,
138     p_qcov_tbl                     IN qcov_tbl_type,
139     x_qcov_tbl                     OUT NOCOPY qcov_tbl_type,
140     px_error_tbl                   IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE);
141   PROCEDURE insert_row(
142     p_api_version                  IN NUMBER,
143     p_init_msg_list                IN VARCHAR2,
144     x_return_status                OUT NOCOPY VARCHAR2,
145     x_msg_count                    OUT NOCOPY NUMBER,
146     x_msg_data                     OUT NOCOPY VARCHAR2,
147     p_qcov_tbl                     IN qcov_tbl_type,
148     x_qcov_tbl                     OUT NOCOPY qcov_tbl_type);
149 --Bug 4299668 PAGARG new procedure to implement bulk insert
150 --**START**--
151   PROCEDURE insert_row_bulk(
152     p_api_version                  IN NUMBER,
153     p_init_msg_list                IN VARCHAR2,
154     x_return_status                OUT NOCOPY VARCHAR2,
155     x_msg_count                    OUT NOCOPY NUMBER,
156     x_msg_data                     OUT NOCOPY VARCHAR2,
157     p_qcov_tbl                     IN qcov_tbl_type,
158     x_qcov_tbl                     OUT NOCOPY qcov_tbl_type);
159 --**END 4299668**--
160   PROCEDURE lock_row(
161     p_api_version                  IN NUMBER,
162     p_init_msg_list                IN VARCHAR2,
163     x_return_status                OUT NOCOPY VARCHAR2,
164     x_msg_count                    OUT NOCOPY NUMBER,
165     x_msg_data                     OUT NOCOPY VARCHAR2,
166     p_qcov_rec                     IN qcov_rec_type);
167   PROCEDURE lock_row(
168     p_api_version                  IN NUMBER,
169     p_init_msg_list                IN VARCHAR2,
170     x_return_status                OUT NOCOPY VARCHAR2,
171     x_msg_count                    OUT NOCOPY NUMBER,
172     x_msg_data                     OUT NOCOPY VARCHAR2,
173     p_qcov_tbl                     IN qcov_tbl_type,
174     px_error_tbl                   IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE);
175   PROCEDURE lock_row(
176     p_api_version                  IN NUMBER,
177     p_init_msg_list                IN VARCHAR2,
178     x_return_status                OUT NOCOPY VARCHAR2,
179     x_msg_count                    OUT NOCOPY NUMBER,
180     x_msg_data                     OUT NOCOPY VARCHAR2,
181     p_qcov_tbl                     IN qcov_tbl_type);
182   PROCEDURE update_row(
183     p_api_version                  IN NUMBER,
184     p_init_msg_list                IN VARCHAR2,
185     x_return_status                OUT NOCOPY VARCHAR2,
186     x_msg_count                    OUT NOCOPY NUMBER,
187     x_msg_data                     OUT NOCOPY VARCHAR2,
188     p_qcov_rec                     IN qcov_rec_type,
189     x_qcov_rec                     OUT NOCOPY qcov_rec_type);
190   PROCEDURE update_row(
191     p_api_version                  IN NUMBER,
192     p_init_msg_list                IN VARCHAR2,
193     x_return_status                OUT NOCOPY VARCHAR2,
194     x_msg_count                    OUT NOCOPY NUMBER,
195     x_msg_data                     OUT NOCOPY VARCHAR2,
196     p_qcov_tbl                     IN qcov_tbl_type,
197     x_qcov_tbl                     OUT NOCOPY qcov_tbl_type,
198     px_error_tbl                   IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE);
199   PROCEDURE update_row(
200     p_api_version                  IN NUMBER,
201     p_init_msg_list                IN VARCHAR2,
202     x_return_status                OUT NOCOPY VARCHAR2,
203     x_msg_count                    OUT NOCOPY NUMBER,
204     x_msg_data                     OUT NOCOPY VARCHAR2,
205     p_qcov_tbl                     IN qcov_tbl_type,
206     x_qcov_tbl                     OUT NOCOPY qcov_tbl_type);
207   PROCEDURE delete_row(
208     p_api_version                  IN NUMBER,
209     p_init_msg_list                IN VARCHAR2,
210     x_return_status                OUT NOCOPY VARCHAR2,
211     x_msg_count                    OUT NOCOPY NUMBER,
212     x_msg_data                     OUT NOCOPY VARCHAR2,
213     p_qcov_rec                     IN qcov_rec_type);
214   PROCEDURE delete_row(
215     p_api_version                  IN NUMBER,
216     p_init_msg_list                IN VARCHAR2,
217     x_return_status                OUT NOCOPY VARCHAR2,
218     x_msg_count                    OUT NOCOPY NUMBER,
219     x_msg_data                     OUT NOCOPY VARCHAR2,
220     p_qcov_tbl                     IN qcov_tbl_type,
221     px_error_tbl                   IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE);
222   PROCEDURE delete_row(
223     p_api_version                  IN NUMBER,
224     p_init_msg_list                IN VARCHAR2,
225     x_return_status                OUT NOCOPY VARCHAR2,
226     x_msg_count                    OUT NOCOPY NUMBER,
227     x_msg_data                     OUT NOCOPY VARCHAR2,
228     p_qcov_tbl                     IN qcov_tbl_type);
229   PROCEDURE validate_row(
230     p_api_version                  IN NUMBER,
231     p_init_msg_list                IN VARCHAR2,
232     x_return_status                OUT NOCOPY VARCHAR2,
233     x_msg_count                    OUT NOCOPY NUMBER,
234     x_msg_data                     OUT NOCOPY VARCHAR2,
235     p_qcov_rec                     IN qcov_rec_type);
236   PROCEDURE validate_row(
237     p_api_version                  IN NUMBER,
238     p_init_msg_list                IN VARCHAR2,
239     x_return_status                OUT NOCOPY VARCHAR2,
240     x_msg_count                    OUT NOCOPY NUMBER,
241     x_msg_data                     OUT NOCOPY VARCHAR2,
242     p_qcov_tbl                     IN qcov_tbl_type,
243     px_error_tbl                   IN OUT NOCOPY OKL_API.ERROR_TBL_TYPE);
244   PROCEDURE validate_row(
245     p_api_version                  IN NUMBER,
246     p_init_msg_list                IN VARCHAR2,
247     x_return_status                OUT NOCOPY VARCHAR2,
248     x_msg_count                    OUT NOCOPY NUMBER,
249     x_msg_data                     OUT NOCOPY VARCHAR2,
250     p_qcov_tbl                     IN qcov_tbl_type);
251 END OKL_QCO_PVT;