DBA Data[Home] [Help]

PACKAGE: APPS.OKC_REP_CONTRACT_IMP_PVT

Source


1 PACKAGE OKC_REP_CONTRACT_IMP_PVT AUTHID CURRENT_USER AS
2 /* $Header: OKCVREPIMPS.pls 120.0.12020000.7 2013/06/04 13:02:16 nbingi noship $ */
3 
4  ------------------------------------------------------------------------------
5     -- GLOBAL CONSTANTS
6   ------------------------------------------------------------------------------
7 
8   G_PKG_NAME                   CONSTANT   VARCHAR2(200) := 'OKC_REP_CONTRACT_IMP_PVT';
9   G_APP_NAME                   CONSTANT   VARCHAR2(3)   := 'OKC';
10   G_MODULE                     CONSTANT   VARCHAR2(250) := 'okc.plsql.'||G_PKG_NAME||'.';
11 
12    G_UNEXPECTED_ERROR           CONSTANT   VARCHAR2(200) := 'OKC_UNEXPECTED_ERROR';
13   G_SQLERRM_TOKEN              CONSTANT   VARCHAR2(200) := 'ERROR_MESSAGE';
14   G_SQLCODE_TOKEN              CONSTANT   VARCHAR2(200) := 'ERROR_CODE';
15 
16   -- Error Types for import errors table
17   G_IMP_CONTRACT_ERROR              CONSTANT   VARCHAR2(50) :=  'CONTRACT';
18   G_IMP_PARTY_ERROR                 CONSTANT   VARCHAR2(50) :=  'PARTY';
19   G_IMP_DOCUMENT_ERROR              CONSTANT   VARCHAR2(50) :=  'DOCUMENT';
20   G_IMP_RISKS_ERROR                 CONSTANT   VARCHAR2(50) := 'RISKS';
21   G_IMP_CONTACTS_ERROR              CONSTANT   VARCHAR2(50) := 'CONTACTS';
22 
23   G_NEW_VERSION_ERROR               CONSTANT   VARCHAR2(50) := 'REVISION';
24   G_DELETE_CONTRACT_ERROR           CONSTANT   VARCHAR2(50) := 'DELETE';
25 
26   G_STATUS_SIGNED              CONSTANT   VARCHAR2(30) :=  'SIGNED';
27 
28 
29    ---------------------------------------------------------------------------
30   -- GLOBAL MESSAGE CONSTANTS
31   ---------------------------------------------------------------------------
32   G_FND_APP                    CONSTANT VARCHAR2(200) := OKC_API.G_FND_APP;
33 
34   G_INVALID_CONTRACT_ID_MSG    CONSTANT   VARCHAR2(200) := 'OKC_REP_INVALID_CONTRACT_ID';
35   G_INVALID_BUS_DOC_ID_MSG    CONSTANT   VARCHAR2(200) := 'OKC_REP_INVALID_BUS_DOC_ID';
36 
37   ---------------------------------------------------------------------------
38 
39   G_FALSE                      CONSTANT   VARCHAR2(1) := FND_API.G_FALSE;
40   G_TRUE                       CONSTANT   VARCHAR2(1) := FND_API.G_TRUE;
41 
42   G_RET_STS_SUCCESS            CONSTANT   VARCHAR2(1) := FND_API.G_RET_STS_SUCCESS;
43   G_RET_STS_ERROR              CONSTANT   VARCHAR2(1) := FND_API.G_RET_STS_ERROR;
44   G_RET_STS_UNEXP_ERROR        CONSTANT   VARCHAR2(1) := FND_API.G_RET_STS_UNEXP_ERROR;
45 
46   G_UNABLE_TO_RESERVE_REC      CONSTANT   VARCHAR2(200) := OKC_API.G_UNABLE_TO_RESERVE_REC;
47   G_CURRENT_ORG_ID             NUMBER := -99;
48   G_ORG_ID                     NUMBER ;
49   G_RETURN_CODE_SUCCESS     	 CONSTANT NUMBER := 0;
50   G_RETURN_CODE_ERROR       	 CONSTANT NUMBER := 2;
51 
52   Procedure create_contract(p_api_version            IN NUMBER,
53                             p_contract_rec           IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_rec_type,
54                             p_contract_parties_tbl   IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_parties_tbl_type,
55                             p_party_contacts_tbl     IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.party_contacts_tbl_type,
56                             p_risks_tbl              IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_risks_tbl_type,
57                             p_create_contract        IN VARCHAR2 :=  fnd_api.g_true,
58                             p_commit                 IN VARCHAR2 := fnd_api.g_false,
59                             x_msg_data               OUT NOCOPY  VARCHAR2,
60                             x_msg_count              OUT NOCOPY  NUMBER,
61                             x_return_status OUT NOCOPY VARCHAR2
62   );
63 
64   Procedure populate_contract_hdr(p_api_version            IN NUMBER,
65                                   p_contract_rec           IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_rec_type,
66                                   p_run_id                 IN NUMBER ,
67                                   x_imp_contract_id   OUT NOCOPY NUMBER,
68                                   x_msg_data               OUT NOCOPY  VARCHAR2,
69                                   x_msg_count              OUT NOCOPY  NUMBER,
70                                   x_return_status OUT NOCOPY VARCHAR2
71   );
72 
73   PROCEDURE populate_contract_parties (p_api_version            IN NUMBER,
74                                        p_run_id                 IN NUMBER,
75                                        p_contract_parties_tbl   IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_parties_tbl_type,
76                                        p_imp_contract_id   IN NUMBER,
77                                        x_msg_data               OUT NOCOPY  VARCHAR2,
78                                        x_msg_count              OUT NOCOPY  NUMBER,
79                                        x_return_status OUT NOCOPY VARCHAR2);
80 
81   PROCEDURE populate_party_contacts(p_api_version            IN NUMBER,
82                                     p_run_id                 IN NUMBER,
83                                     p_party_contacts_tbl     IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.party_contacts_tbl_type,
84                                     p_imp_contract_id   IN NUMBER,
85                                     x_msg_data               OUT NOCOPY  VARCHAR2,
86                                     x_msg_count              OUT NOCOPY  NUMBER,
87                                     x_return_status OUT NOCOPY VARCHAR2);
88 
89   PROCEDURE populate_contract_risks(p_api_version            IN NUMBER,
90                                     p_run_id                 IN NUMBER DEFAULT NULL,
91                                     p_risks_tbl  IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_risks_tbl_type,
92                                     p_imp_contract_id   IN NUMBER,
93                                     x_msg_data               OUT NOCOPY  VARCHAR2,
94                                     x_msg_count              OUT NOCOPY  NUMBER,
95                                     x_return_status OUT NOCOPY VARCHAR2);
96 
97   Procedure delete_contract(p_api_version            IN NUMBER,
98                           p_commit                 IN VARCHAR2 := fnd_api.g_false,
99                           p_contract_id       IN  NUMBER,
100                           x_msg_data          OUT NOCOPY  VARCHAR2,
101                           x_msg_count         OUT NOCOPY  NUMBER,
102                           x_return_status OUT NOCOPY VARCHAR2
103   );
104 
105   PROCEDURE validate_and_insert_con_cp(errbuf           OUT NOCOPY VARCHAR2,
106                                        retcode          OUT NOCOPY VARCHAR2,
107                                        p_org_name         IN NUMBER,
108                                        p_contract_type  IN VARCHAR2,
109                                        p_from_date      IN DATE,
110                                        p_to_date        IN DATE,
111                                        p_validate_only  IN VARCHAR2 );
112 
113  /* PROCEDURE delete_contract_risks(p_api_version            IN NUMBER,
114                                     p_run_id                 IN NUMBER DEFAULT NULL,
115                                     p_risks_tbl  IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_risks_tbl_type,
116                                     p_imp_contract_id   IN NUMBER,
117                                     x_msg_data               OUT NOCOPY  VARCHAR2,
118                                     x_msg_count              OUT NOCOPY  NUMBER,
119                                     x_return_status OUT NOCOPY VARCHAR2);
120   PROCEDURE delete_party_contacts(p_api_version            IN NUMBER,
121                                     p_run_id                 IN NUMBER,
122                                     p_party_contacts_tbl     IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.party_contacts_tbl_type,
123                                     p_imp_contract_id   IN NUMBER,
124                                     x_msg_data               OUT NOCOPY  VARCHAR2,
125                                     x_msg_count              OUT NOCOPY  NUMBER,
126                                     x_return_status OUT NOCOPY VARCHAR2);
127   PROCEDURE delete_parties(p_api_version            IN NUMBER,
128                                     p_run_id                 IN NUMBER,
129                                     p_party_contacts_tbl     IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.party_contacts_tbl_type,
130                                     p_imp_contract_id   IN NUMBER,
131                                     x_msg_data               OUT NOCOPY  VARCHAR2,
132                                     x_msg_count              OUT NOCOPY  NUMBER,
133                                     x_return_status OUT NOCOPY VARCHAR2);
134   */
135 
136   /*
137 Creates a contract with the data given in the parameters.
138 The relation of parent document which is obtained in p_document_rec is stored in the okc_rep_contract_usages table
139 */
140 
141 Procedure create_contract(p_api_version            IN NUMBER,
142                           p_document_rec           IN OKC_IMP_RECORD_TYPES.document_rec_type,
143                           p_contract_rec           IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_rec_type,
144                           p_contract_parties_tbl   IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_parties_tbl_type,
145                           p_party_contacts_tbl     IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.party_contacts_tbl_type,
146                           p_risks_tbl              IN OUT NOCOPY   OKC_IMP_RECORD_TYPES.contract_risks_tbl_type,
147                           p_commit                 IN VARCHAR2 := fnd_api.g_false,
148                           x_msg_data               OUT NOCOPY  VARCHAR2,
149                           x_msg_count              OUT NOCOPY  NUMBER,
150                           x_return_status          OUT NOCOPY VARCHAR2
151 );
152 
153 /*
154 Deletes the Contract for the given document type.
155 */
156 
157 Procedure delete_contract(p_api_version            IN NUMBER,
158                           p_commit                 IN VARCHAR2 := fnd_api.g_false,
159                           p_document_rec           IN OKC_IMP_RECORD_TYPES.document_rec_type,
160                           p_contract_type          IN VARCHAR2 DEFAULT NULL,
161                           p_contract_id            IN NUMBER DEFAULT NULL,
162                           x_msg_data               OUT NOCOPY  VARCHAR2,
163                           x_msg_count              OUT NOCOPY  NUMBER,
164                           x_return_status          OUT NOCOPY VARCHAR2
165 );
166 
167 
168 
169 /*
170 Creates a new version of the contract contract in draft status.
171 Updates to the contract should be done from UI.
172 */
173 
174 Procedure create_new_contract_version(p_api_version            IN NUMBER,
175                                       p_contract_id            IN NUMBER,
176                                       p_run_id                 IN NUMBER,
177                                       p_commit                 IN VARCHAR2 := fnd_api.g_false,
178                                       x_msg_data               OUT NOCOPY  VARCHAR2,
179                                       x_msg_count              OUT NOCOPY  NUMBER,
180                                       x_return_status          OUT NOCOPY VARCHAR2
181 );
182 
183 
184 /*
185 Creates a new version of the contract contract in draft status.
186 Updates to the contract should be done from UI.
187 
188 The relation of parent document which is obtained in p_document_rec is stored in the okc_rep_contract_usages table
189 */
190 
191 Procedure create_new_contract_version(p_api_version            IN NUMBER,
192                                       p_document_rec           IN OKC_IMP_RECORD_TYPES.document_rec_type,
193                                       p_contract_type          IN VARCHAR2 DEFAULT NULL,
194                                       p_contract_id            IN NUMBER DEFAULT NULL,
195                                       p_run_id                 IN NUMBER,
196                                       p_commit                 IN VARCHAR2 := fnd_api.g_false,
197                                       x_msg_data               OUT NOCOPY  VARCHAR2,
198                                       x_msg_count              OUT NOCOPY  NUMBER,
199                                       x_return_status          OUT NOCOPY VARCHAR2
200 );
201 
202 PROCEDURE check_contract_exists(p_api_version            IN NUMBER,
203                           p_document_rec           IN OKC_IMP_RECORD_TYPES.document_rec_type,
204                           x_contract_type          IN OUT NOCOPY VARCHAR2 ,
205                           x_contract_id            IN OUT NOCOPY NUMBER ,
206                           x_contract_version_num   IN OUT NOCOPY NUMBER,
207                           x_msg_data               OUT NOCOPY  VARCHAR2,
208                           x_msg_count              OUT NOCOPY  NUMBER,
209                           x_return_status          OUT NOCOPY VARCHAR2
210 );
211 
212 PROCEDURE Activate_tasks_closeout(p_api_version            IN NUMBER,
213                                  p_document_rec           IN OKC_IMP_RECORD_TYPES.document_rec_type,
214                                  p_physical_completion_date IN DATE ,
215                                  p_init_msg_list     IN  VARCHAR2,
216                                  p_commit              IN VARCHAR2,
217                                  x_msg_data               OUT NOCOPY  VARCHAR2,
218                                  x_msg_count              OUT NOCOPY  NUMBER,
219                                  x_return_status          OUT NOCOPY VARCHAR2
220 );
221 
222 
223 PROCEDURE check_contract_exists(p_api_version            IN NUMBER,
224                           p_document_rec           IN OKC_IMP_RECORD_TYPES.document_rec_type,
225                           x_contract_rec           IN OUT NOCOPY OKC_IMP_RECORD_TYPES.contract_rec_type,
226                           x_msg_data               OUT NOCOPY  VARCHAR2,
227                           x_msg_count              OUT NOCOPY  NUMBER,
228                           x_return_status          OUT NOCOPY VARCHAR2
229 );
230 
231 PROCEDURE cancel_contract(p_api_version            IN NUMBER,
232                           p_commit                 IN VARCHAR2 := fnd_api.g_false,
233                           p_contract_id       IN  NUMBER,
234                           x_msg_data          OUT NOCOPY  VARCHAR2,
235                           x_msg_count         OUT NOCOPY  NUMBER,
236                           x_return_status OUT NOCOPY VARCHAR2
237   );
238 
239 Procedure delete_cancel_contract(p_api_version            IN NUMBER,
240                                 p_commit                 IN VARCHAR2 := fnd_api.g_false,
241                                 p_document_rec           IN OKC_IMP_RECORD_TYPES.document_rec_type,
242                                 p_contract_type          IN VARCHAR2 DEFAULT NULL,
243                                 p_contract_id            IN NUMBER DEFAULT NULL,
244                                 x_msg_data               OUT NOCOPY  VARCHAR2,
245                                 x_msg_count              OUT NOCOPY  NUMBER,
246                                 x_return_status          OUT NOCOPY VARCHAR2
247 );
248 
249   /*
250 Cancels the Contract for the given document type.
251 */
252 
253 Procedure cancel_contract(p_api_version            IN NUMBER,
254                           p_document_rec           IN OKC_IMP_RECORD_TYPES.document_rec_type,
255                           p_contract_type          IN VARCHAR2 DEFAULT NULL,
256                           p_contract_id          IN NUMBER DEFAULT NULL,
257                           p_commit                 IN VARCHAR2 := fnd_api.g_false,
258                           x_msg_data          OUT NOCOPY  VARCHAR2,
259                           x_msg_count         OUT NOCOPY  NUMBER,
260                           x_return_status OUT NOCOPY VARCHAR2
261 ) ;
262 
263 
264 /*
265  * Procedure to migrate date from okc_rep_contract_rels table to okc_rep_contract_usages table.
266  * This migration is applicable for 12.2.2.
267  * 1. For one row in okc_rep_contract_rels table, all the target related contracts are brought and these are inserted
268  * against each version of source contract.
269  * 2. If the relationship(combination of contract_id, contract_type, contract_version_num, business_document_id, business_document_type,
270  	business_document_version, relationship_role_id) already exists in the new table (okc_rep_contract_usages), then this procedure doesn't insert it again in the new table
271  * 3. Marks the rows in okc_rep_contract_usagaes with source_code as 'MIGRATION' and populates corresponding requires_id, program_id.
272  *
273  * Parameters :
274  *	p_purge_and_rerun        if 'Yes', deletes all rows in okc_rep_contract_usages with source_code as 'MIGRATION and migrates the date
275  *					     if 'No', starts migrating the data, if the row already exists doesn't insert again.
276  *						default value : 'No' (if no value is entered by the user, then it takes as 'No')
277  *
278  *	p_simulate			if 'Yes', starts migrating the data, logs all successful migrated rows and errored rows. But dont' commmit the data.
279  *							Can be used for testing the migration process before actual run of this program.
280  *						if 'No', migrates data and commits data
281  *						default value : 'Yes' ( if no value is entered by the user, then it takes as 'Yes')
282  */
283 
284 PROCEDURE migrate_contract_relations(errbuf  OUT NOCOPY VARCHAR2,
285 							  retcode OUT NOCOPY VARCHAR2,
286 							  p_purge_and_rerun IN VARCHAR2,
287 							  p_simulate IN VARCHAR2);
288 
289 END	OKC_REP_CONTRACT_IMP_PVT;
290