DBA Data[Home] [Help]

PACKAGE BODY: APPS.AMS_PARTYIMPORT_PVT

Source


1 PACKAGE BODY AMS_PartyImport_PVT AS
2 /* $Header: amsvptyb.pls 120.1 2005/08/12 18:36:09 appldev ship $ */
3 
4 -----------------------------------------------------------
5 -- PACKAGE
6 --    AMS_PartyImport_PVT
7 --
8 -- PROCEDURES
9 --    Listed are the procedures not declared in the package
10 --    specs:
11 --       Check_Party_Req_Items
12 --       Check_Party_UK_Items
13 --       Check_Party_FK_Items
14 --       Check_Party_Lookup_Items
15 --       Check_Party_Flag_Items
16 --
17 --       Initialize_Dedupe_Table
18 --       Synchronize_ID
19 --       Populate_Keys
20 --       Party_Exists
21 --
22 -- HISTORY
23 -- 08-Nov-1999 choang      Created.
24 -- 10-Nov-1999 choang      Added GENERATE_KEY.
25 -- 12-Nov-1999 choang      Fixed Complete_Party API which used
26 --                         g_miss_num on USED_FLAG instead of
27 --                         g_miss_char.
28 -- 13-Nov-1999 choang      Added Process_Party and Party_Exists.
29 -- 14-Feb-2001 gjoby       Added a check to get Profile option for dedupe
30 ------------------------------------------------------------
31 
32 G_PKG_NAME           CONSTANT VARCHAR2(30) := 'AMS_PartyImport_PVT';
33 
34 
35 AMS_DEBUG_HIGH_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_HIGH);
36 AMS_DEBUG_LOW_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW);
37 AMS_DEBUG_MEDIUM_ON boolean := FND_MSG_PUB.CHECK_MSG_LEVEL(FND_MSG_PUB.G_MSG_LVL_DEBUG_MEDIUM);
38 
39 PROCEDURE Check_Party_Req_Items (
40    p_party_rec       IN    Party_Rec_Type,
41    x_return_status   OUT NOCOPY   VARCHAR2
42 );
43 
44 PROCEDURE Check_Party_UK_Items (
45    p_party_rec       IN    Party_Rec_Type,
46    p_validation_mode IN    VARCHAR2 := JTF_PLSQL_API.g_create,
47    x_return_status   OUT NOCOPY   VARCHAR2
48 );
49 
50 PROCEDURE Check_Party_FK_Items (
51    p_party_rec       IN    Party_Rec_Type,
52    x_return_status   OUT NOCOPY   VARCHAR2
53 );
54 
55 PROCEDURE Check_Party_Lookup_Items (
56    p_party_rec       IN    Party_Rec_Type,
57    x_return_status   OUT NOCOPY   VARCHAR2
58 );
59 
60 PROCEDURE Check_Party_Flag_Items (
61    p_party_rec       IN    Party_Rec_Type,
62    x_return_status   OUT NOCOPY   VARCHAR2
63 );
64 
65 PROCEDURE Initialize_Dedupe_Table;
66 
67 PROCEDURE Synchronize_ID;
68 
69 PROCEDURE Populate_Keys (
70    p_word_replacement_flag    IN VARCHAR2
71 );
72 
73 FUNCTION Party_Exists (
74    p_dedupe_key      IN VARCHAR2,
75    x_party_id        OUT NOCOPY NUMBER
76 ) RETURN BOOLEAN;
77 
78 
79 --------------------------------------------------------------------
80 -- PROCEDURE
81 --    Create_Party
82 PROCEDURE Create_Party (
83    p_api_version       IN  NUMBER,
84    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
85    p_commit            IN  VARCHAR2  := FND_API.g_false,
86    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
87 
88    x_return_status     OUT NOCOPY VARCHAR2,
89    x_msg_count         OUT NOCOPY NUMBER,
90    x_msg_data          OUT NOCOPY VARCHAR2,
91 
92    p_party_rec         IN  Party_Rec_Type,
93    x_party_sources_id  OUT NOCOPY NUMBER
94 )
95 IS
96    l_api_version  CONSTANT NUMBER       := 1.0;
97    l_api_name     CONSTANT VARCHAR2(30) := 'Create_Party';
98    l_full_name    CONSTANT VARCHAR2(60) := g_pkg_name ||'.'|| l_api_name;
99 
100    l_return_status   VARCHAR2(1);
101    l_party_rec       Party_Rec_Type  := p_party_rec;
102    l_dummy           NUMBER;     -- Capture the exit condition for ID existence loop.
103 
104    CURSOR c_seq IS
105       SELECT ams_party_sources_s.NEXTVAL
106       FROM   dual;
107 
108    CURSOR c_id_exists (x_id IN NUMBER) IS
109       SELECT 1
110       FROM   dual
111       WHERE EXISTS (SELECT 1
112                     FROM   ams_party_sources
113                     WHERE  party_sources_id = x_id);
114 BEGIN
115    --------------------- initialize -----------------------
116    SAVEPOINT Create_Party;
117 
118    IF (AMS_DEBUG_HIGH_ON) THEN
119 
120 
121 
122    AMS_Utility_PVT.debug_message (l_full_name || ': Start');
123 
124    END IF;
125 
126    IF FND_API.to_boolean (p_init_msg_list) THEN
127       FND_MSG_PUB.initialize;
128    END IF;
129 
130    IF NOT FND_API.compatible_api_call(
131          l_api_version,
132          p_api_version,
133          l_api_name,
134          g_pkg_name
135    ) THEN
136       RAISE FND_API.g_exc_unexpected_error;
137    END IF;
138 
139    x_return_status := FND_API.g_ret_sts_success;
140 
141    ----------------------- validate -----------------------
142    IF (AMS_DEBUG_HIGH_ON) THEN
143 
144    AMS_Utility_PVT.debug_message (l_full_name || ': Validate');
145    END IF;
146 
147    Validate_Party (
148       p_api_version        => l_api_version,
149       p_init_msg_list      => p_init_msg_list,
150       p_validation_level   => p_validation_level,
151       x_return_status      => l_return_status,
152       x_msg_count          => x_msg_count,
153       x_msg_data           => x_msg_data,
154       p_party_rec        => l_party_rec
155    );
156 
157    IF l_return_status = FND_API.g_ret_sts_error THEN
158       RAISE FND_API.g_exc_error;
159    ELSIF l_return_status = FND_API.g_ret_sts_unexp_error THEN
160       RAISE FND_API.g_exc_unexpected_error;
161    END IF;
162 
163    --
164    -- Check for the ID.
165    --
166    IF l_party_rec.party_sources_id IS NULL THEN
167       LOOP
168          --
169          -- If the ID is not passed into the API, then
170          -- grab a value from the sequence.
171          OPEN c_seq;
172          FETCH c_seq INTO l_party_rec.party_sources_id;
173          CLOSE c_seq;
174 
175          --
176          -- Check to be sure that the sequence does not exist.
177          OPEN c_id_exists (l_party_rec.party_sources_id);
178          FETCH c_id_exists INTO l_dummy;
179          CLOSE c_id_exists;
180 
181          --
182          -- If the value for the ID already exists, then
183          -- l_dummy would be populated with '1', otherwise,
184          -- it receives NULL.
185          EXIT WHEN l_dummy IS NULL;
186       END LOOP;
187    END IF;
188 
189    -------------------------- insert --------------------------
190    IF (AMS_DEBUG_HIGH_ON) THEN
191 
192    AMS_Utility_PVT.debug_message (l_full_name || ': Insert');
193    END IF;
194 
195    INSERT INTO ams_party_sources (
196       party_sources_id,
197       party_id,
198       import_source_line_id,
199       object_version_number,
200       last_update_date,
201       last_updated_by,
202       creation_date,
203       created_by,
204       last_update_login,
205       import_list_header_id,
206       list_source_type_id,
207       used_flag,
208       overlay_flag,
209       overlay_date,
210       col1,
211       col2,
212       col3,
213       col4,
214       col5,
215       col6,
216       col7,
217       col8,
218       col9,
219       col10,
220       col11,
221       col12,
222       col13,
223       col14,
224       col15,
225       col16,
226       col17,
227       col18,
228       col19,
229       col20,
230       col21,
231       col22,
232       col23,
233       col24,
234       col25,
235       col26,
236       col27,
237       col28,
238       col29,
239       col30,
240       col31,
241       col32,
242       col33,
243       col34,
244       col35,
245       col36,
246       col37,
247       col38,
248       col39,
249       col40,
250       col41,
251       col42,
252       col43,
253       col44,
254       col45,
255       col46,
256       col47,
257       col48,
258       col49,
259       col50,
260       col51,
261       col52,
262       col53,
263       col54,
264       col55,
265       col56,
266       col57,
267       col58,
268       col59,
269       col60,
270       col61,
271       col62,
272       col63,
273       col64,
274       col65,
275       col66,
276       col67,
277       col68,
278       col69,
279       col70,
280       col71,
281       col72,
282       col73,
283       col74,
284       col75,
285       col76,
286       col77,
287       col78,
288       col79,
289       col80,
290       col81,
291       col82,
292       col83,
293       col84,
294       col85,
295       col86,
296       col87,
297       col88,
298       col89,
299       col90,
300       col91,
301       col92,
302       col93,
303       col94,
304       col95,
305       col96,
306       col97,
307       col98,
308       col99,
309       col100,
310       col101,
311       col102,
312       col103,
313       col104,
314       col105,
315       col106,
316       col107,
317       col108,
318       col109,
319       col110,
320       col111,
321       col112,
322       col113,
323       col114,
324       col115,
325       col116,
326       col117,
327       col118,
328       col119,
329       col120,
330       col121,
331       col122,
332       col123,
333       col124,
334       col125,
335       col126,
336       col127,
337       col128,
338       col129,
339       col130,
340       col131,
341       col132,
342       col133,
343       col134,
344       col135,
345       col136,
346       col137,
347       col138,
348       col139,
349       col140,
350       col141,
351       col142,
352       col143,
353       col144,
354       col145,
355       col146,
356       col147,
357       col148,
358       col149,
359       col150,
360       col151,
361       col152,
362       col153,
363       col154,
364       col155,
365       col156,
366       col157,
367       col158,
368       col159,
369       col160,
370       col161,
371       col162,
372       col163,
373       col164,
374       col165,
375       col166,
376       col167,
377       col168,
378       col169,
379       col170,
380       col171,
381       col172,
382       col173,
383       col174,
384       col175,
385       col176,
386       col177,
387       col178,
388       col179,
389       col180,
390       col181,
391       col182,
392       col183,
393       col184,
394       col185,
395       col186,
396       col187,
397       col188,
398       col189,
399       col190,
400       col191,
401       col192,
402       col193,
403       col194,
404       col195,
405       col196,
406       col197,
407       col198,
408       col199,
409       col200,
410       col201,
411       col202,
412       col203,
413       col204,
414       col205,
415       col206,
416       col207,
417       col208,
418       col209,
419       col210,
420       col211,
421       col212,
422       col213,
423       col214,
424       col215,
425       col216,
426       col217,
427       col218,
428       col219,
429       col220,
430       col221,
431       col222,
432       col223,
433       col224,
434       col225,
435       col226,
436       col227,
437       col228,
438       col229,
439       col230,
440       col231,
441       col232,
442       col233,
443       col234,
444       col235,
445       col236,
446       col237,
447       col238,
448       col239,
449       col240,
450       col241,
451       col242,
452       col243,
453       col244,
454       col245,
455       col246,
456       col247,
457       col248,
458       col249,
459       col250
460    )
461    VALUES (
462       l_party_rec.party_sources_id,
463       l_party_rec.party_id,
464       l_party_rec.import_source_line_id,
465       1,    -- object_version_number
466       SYSDATE,                      -- last_update_date
467       FND_GLOBAL.user_id,           -- last_updated_by
468       SYSDATE,                      -- creation_date
469       FND_GLOBAL.user_id,           -- created_by
470       FND_GLOBAL.conc_login_id,     -- last_update_login
471       l_party_rec.import_list_header_id,
472       l_party_rec.list_source_type_id,
473       NVL (l_party_rec.used_flag, 'N'),      -- Default to 'N'
474       NVL (l_party_rec.overlay_flag, 'N'),   -- Default to 'N'
475       l_party_rec.overlay_date,
476       l_party_rec.col1,
477       l_party_rec.col2,
478       l_party_rec.col3,
479       l_party_rec.col4,
480       l_party_rec.col5,
481       l_party_rec.col6,
482       l_party_rec.col7,
483       l_party_rec.col8,
484       l_party_rec.col9,
485       l_party_rec.col10,
486       l_party_rec.col11,
487       l_party_rec.col12,
488       l_party_rec.col13,
489       l_party_rec.col14,
490       l_party_rec.col15,
491       l_party_rec.col16,
492       l_party_rec.col17,
493       l_party_rec.col18,
494       l_party_rec.col19,
495       l_party_rec.col20,
496       l_party_rec.col21,
497       l_party_rec.col22,
498       l_party_rec.col23,
499       l_party_rec.col24,
500       l_party_rec.col25,
501       l_party_rec.col26,
502       l_party_rec.col27,
503       l_party_rec.col28,
504       l_party_rec.col29,
505       l_party_rec.col30,
506       l_party_rec.col31,
507       l_party_rec.col32,
508       l_party_rec.col33,
509       l_party_rec.col34,
510       l_party_rec.col35,
511       l_party_rec.col36,
512       l_party_rec.col37,
513       l_party_rec.col38,
514       l_party_rec.col39,
515       l_party_rec.col40,
516       l_party_rec.col41,
520       l_party_rec.col45,
517       l_party_rec.col42,
518       l_party_rec.col43,
519       l_party_rec.col44,
521       l_party_rec.col46,
522       l_party_rec.col47,
523       l_party_rec.col48,
524       l_party_rec.col49,
525       l_party_rec.col50,
526       l_party_rec.col51,
527       l_party_rec.col52,
528       l_party_rec.col53,
529       l_party_rec.col54,
530       l_party_rec.col55,
531       l_party_rec.col56,
532       l_party_rec.col57,
533       l_party_rec.col58,
534       l_party_rec.col59,
535       l_party_rec.col60,
536       l_party_rec.col61,
537       l_party_rec.col62,
538       l_party_rec.col63,
539       l_party_rec.col64,
540       l_party_rec.col65,
541       l_party_rec.col66,
542       l_party_rec.col67,
543       l_party_rec.col68,
544       l_party_rec.col69,
545       l_party_rec.col70,
546       l_party_rec.col71,
547       l_party_rec.col72,
548       l_party_rec.col73,
549       l_party_rec.col74,
550       l_party_rec.col75,
551       l_party_rec.col76,
552       l_party_rec.col77,
553       l_party_rec.col78,
554       l_party_rec.col79,
555       l_party_rec.col80,
556       l_party_rec.col81,
557       l_party_rec.col82,
558       l_party_rec.col83,
559       l_party_rec.col84,
560       l_party_rec.col85,
561       l_party_rec.col86,
562       l_party_rec.col87,
563       l_party_rec.col88,
564       l_party_rec.col89,
565       l_party_rec.col90,
566       l_party_rec.col91,
567       l_party_rec.col92,
568       l_party_rec.col93,
569       l_party_rec.col94,
570       l_party_rec.col95,
571       l_party_rec.col96,
572       l_party_rec.col97,
573       l_party_rec.col98,
574       l_party_rec.col99,
575       l_party_rec.col100,
576       l_party_rec.col101,
577       l_party_rec.col102,
578       l_party_rec.col103,
579       l_party_rec.col104,
580       l_party_rec.col105,
581       l_party_rec.col106,
582       l_party_rec.col107,
583       l_party_rec.col108,
584       l_party_rec.col109,
585       l_party_rec.col110,
586       l_party_rec.col111,
587       l_party_rec.col112,
588       l_party_rec.col113,
589       l_party_rec.col114,
590       l_party_rec.col115,
591       l_party_rec.col116,
592       l_party_rec.col117,
593       l_party_rec.col118,
594       l_party_rec.col119,
595       l_party_rec.col120,
596       l_party_rec.col121,
597       l_party_rec.col122,
598       l_party_rec.col123,
599       l_party_rec.col124,
600       l_party_rec.col125,
601       l_party_rec.col126,
602       l_party_rec.col127,
603       l_party_rec.col128,
604       l_party_rec.col129,
605       l_party_rec.col130,
606       l_party_rec.col131,
607       l_party_rec.col132,
608       l_party_rec.col133,
609       l_party_rec.col134,
610       l_party_rec.col135,
611       l_party_rec.col136,
612       l_party_rec.col137,
613       l_party_rec.col138,
614       l_party_rec.col139,
615       l_party_rec.col140,
616       l_party_rec.col141,
617       l_party_rec.col142,
618       l_party_rec.col143,
619       l_party_rec.col144,
620       l_party_rec.col145,
621       l_party_rec.col146,
622       l_party_rec.col147,
623       l_party_rec.col148,
624       l_party_rec.col149,
625       l_party_rec.col150,
626       l_party_rec.col151,
627       l_party_rec.col152,
628       l_party_rec.col153,
629       l_party_rec.col154,
630       l_party_rec.col155,
631       l_party_rec.col156,
632       l_party_rec.col157,
633       l_party_rec.col158,
634       l_party_rec.col159,
635       l_party_rec.col160,
636       l_party_rec.col161,
637       l_party_rec.col162,
638       l_party_rec.col163,
639       l_party_rec.col164,
640       l_party_rec.col165,
641       l_party_rec.col166,
642       l_party_rec.col167,
643       l_party_rec.col168,
644       l_party_rec.col169,
645       l_party_rec.col170,
646       l_party_rec.col171,
647       l_party_rec.col172,
648       l_party_rec.col173,
649       l_party_rec.col174,
650       l_party_rec.col175,
651       l_party_rec.col176,
652       l_party_rec.col177,
653       l_party_rec.col178,
654       l_party_rec.col179,
655       l_party_rec.col180,
656       l_party_rec.col181,
657       l_party_rec.col182,
658       l_party_rec.col183,
659       l_party_rec.col184,
660       l_party_rec.col185,
661       l_party_rec.col186,
662       l_party_rec.col187,
663       l_party_rec.col188,
664       l_party_rec.col189,
665       l_party_rec.col190,
666       l_party_rec.col191,
667       l_party_rec.col192,
668       l_party_rec.col193,
669       l_party_rec.col194,
670       l_party_rec.col195,
671       l_party_rec.col196,
672       l_party_rec.col197,
673       l_party_rec.col198,
674       l_party_rec.col199,
675       l_party_rec.col200,
676       l_party_rec.col201,
677       l_party_rec.col202,
678       l_party_rec.col203,
679       l_party_rec.col204,
680       l_party_rec.col205,
681       l_party_rec.col206,
682       l_party_rec.col207,
683       l_party_rec.col208,
684       l_party_rec.col209,
685       l_party_rec.col210,
689       l_party_rec.col214,
686       l_party_rec.col211,
687       l_party_rec.col212,
688       l_party_rec.col213,
690       l_party_rec.col215,
691       l_party_rec.col216,
692       l_party_rec.col217,
693       l_party_rec.col218,
694       l_party_rec.col219,
695       l_party_rec.col220,
696       l_party_rec.col221,
697       l_party_rec.col222,
698       l_party_rec.col223,
699       l_party_rec.col224,
700       l_party_rec.col225,
701       l_party_rec.col226,
702       l_party_rec.col227,
703       l_party_rec.col228,
704       l_party_rec.col229,
705       l_party_rec.col230,
706       l_party_rec.col231,
707       l_party_rec.col232,
708       l_party_rec.col233,
709       l_party_rec.col234,
710       l_party_rec.col235,
711       l_party_rec.col236,
712       l_party_rec.col237,
713       l_party_rec.col238,
714       l_party_rec.col239,
715       l_party_rec.col240,
716       l_party_rec.col241,
717       l_party_rec.col242,
718       l_party_rec.col243,
719       l_party_rec.col244,
720       l_party_rec.col245,
721       l_party_rec.col246,
722       l_party_rec.col247,
723       l_party_rec.col248,
724       l_party_rec.col249,
725       l_party_rec.col250
726    );
727 
728    ------------------------- finish -------------------------------
729    --
730    -- Set the out variable.
731    x_party_sources_id := l_party_rec.party_sources_id;
732 
733    IF FND_API.to_boolean(p_commit) THEN
734       COMMIT;
735    END IF;
736 
737    FND_MSG_PUB.count_and_get(
738          p_encoded => FND_API.g_false,
739          p_count   => x_msg_count,
740          p_data    => x_msg_data
741    );
742 
743    IF (AMS_DEBUG_HIGH_ON) THEN
744 
745 
746 
747    AMS_Utility_PVT.debug_message (l_full_name || ': End');
748 
749    END IF;
750 
751 EXCEPTION
752    WHEN FND_API.g_exc_error THEN
753       ROLLBACK TO Create_Party;
754       x_return_status := FND_API.g_ret_sts_error;
755       FND_MSG_PUB.count_and_get (
756             p_encoded => FND_API.g_false,
757             p_count   => x_msg_count,
758             p_data    => x_msg_data
759       );
760    WHEN FND_API.g_exc_unexpected_error THEN
761       ROLLBACK TO Create_Party;
762       x_return_status := FND_API.g_ret_sts_unexp_error ;
763       FND_MSG_PUB.count_and_get (
764             p_encoded => FND_API.g_false,
765             p_count   => x_msg_count,
766             p_data    => x_msg_data
767       );
768    WHEN OTHERS THEN
769       ROLLBACK TO Create_Party;
770       x_return_status := FND_API.g_ret_sts_unexp_error ;
771 
772       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_unexp_error)
773 		THEN
774          FND_MSG_PUB.add_exc_msg (g_pkg_name, l_api_name);
775       END IF;
776 
777       FND_MSG_PUB.count_and_get(
778             p_encoded => FND_API.g_false,
779             p_count   => x_msg_count,
780             p_data    => x_msg_data
781       );
782 END Create_Party;
783 
784 
785 --------------------------------------------------------------------
786 -- PROCEDURE
787 --    Delete_Party
788 PROCEDURE Delete_Party (
789    p_api_version       IN  NUMBER,
790    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
791    p_commit            IN  VARCHAR2  := FND_API.g_false,
792    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
793 
794    x_return_status     OUT NOCOPY VARCHAR2,
795    x_msg_count         OUT NOCOPY NUMBER,
796    x_msg_data          OUT NOCOPY VARCHAR2,
797 
798    p_party_sources_id  IN  NUMBER,
799    p_object_version    IN  NUMBER
800 )
801 IS
802    l_api_version CONSTANT NUMBER       := 1.0;
803    l_api_name    CONSTANT VARCHAR2(30) := 'Delete_Party';
804    l_full_name   CONSTANT VARCHAR2(60) := g_pkg_name || '.' || l_api_name;
805 BEGIN
806    --------------------- initialize -----------------------
807    SAVEPOINT Delete_Party;
808 
809    IF (AMS_DEBUG_HIGH_ON) THEN
810 
811 
812 
813    AMS_Utility_PVT.debug_message (l_full_name || ': Start');
814 
815    END IF;
816 
817    IF FND_API.to_boolean (p_init_msg_list) THEN
818       FND_MSG_PUB.initialize;
819    END IF;
820 
821    IF NOT FND_API.compatible_api_call (
822          l_api_version,
823          p_api_version,
824          l_api_name,
825          g_pkg_name
826    ) THEN
827       RAISE FND_API.g_exc_unexpected_error;
828    END IF;
829 
830    x_return_status := FND_API.g_ret_sts_success;
831 
832    ------------------------ delete ------------------------
833    DELETE FROM ams_party_sources
834    WHERE party_sources_id = p_party_sources_id
835    AND   object_version_number = p_object_version;
836 
837    IF (SQL%NOTFOUND) THEN
838       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error)
839 		THEN
840          FND_MESSAGE.set_name ('AMS', 'AMS_API_RECORD_NOT_FOUND');
841          FND_MSG_PUB.add;
842       END IF;
843       RAISE FND_API.g_exc_error;
844    END IF;
845 
846    -------------------- finish --------------------------
850 
847    IF FND_API.to_boolean (p_commit) THEN
848       COMMIT;
849    END IF;
851    FND_MSG_PUB.count_and_get (
852          p_encoded => FND_API.g_false,
853          p_count   => x_msg_count,
854          p_data    => x_msg_data
855    );
856 
857    IF (AMS_DEBUG_HIGH_ON) THEN
858 
859 
860 
861    AMS_Utility_PVT.debug_message(l_full_name || ': End');
862 
863    END IF;
864 
865 EXCEPTION
866    WHEN FND_API.g_exc_error THEN
867       ROLLBACK TO Delete_Party;
868       x_return_status := FND_API.g_ret_sts_error;
869       FND_MSG_PUB.count_and_get (
870             p_encoded => FND_API.g_false,
871             p_count   => x_msg_count,
872             p_data    => x_msg_data
873       );
874    WHEN FND_API.g_exc_unexpected_error THEN
875       ROLLBACK TO Delete_Party;
876       x_return_status := FND_API.g_ret_sts_unexp_error ;
877       FND_MSG_PUB.count_and_get (
878             p_encoded => FND_API.g_false,
879             p_count   => x_msg_count,
880             p_data    => x_msg_data
881       );
882    WHEN OTHERS THEN
883       ROLLBACK TO Delete_Party;
884       x_return_status := FND_API.g_ret_sts_unexp_error ;
885 
886       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_unexp_error)
887 		THEN
888          FND_MSG_PUB.add_exc_msg (g_pkg_name, l_api_name);
889       END IF;
890 
891       FND_MSG_PUB.count_and_get (
892             p_encoded => FND_API.g_false,
893             p_count   => x_msg_count,
894             p_data    => x_msg_data
895       );
896 END Delete_Party;
897 
898 
899 --------------------------------------------------------------------
900 -- PROCEDURE
901 --    Lock_Party
902 PROCEDURE Lock_Party (
903    p_api_version       IN  NUMBER,
904    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
905    p_commit            IN  VARCHAR2  := FND_API.g_false,
906    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
907 
908    x_return_status     OUT NOCOPY VARCHAR2,
909    x_msg_count         OUT NOCOPY NUMBER,
910    x_msg_data          OUT NOCOPY VARCHAR2,
911 
912    p_party_sources_id  IN  NUMBER,
913    p_object_version    IN  NUMBER
914 )
915 IS
916    l_api_version  CONSTANT NUMBER       := 1.0;
917    l_api_name     CONSTANT VARCHAR2(30) := 'Lock_Party';
918    l_full_name    CONSTANT VARCHAR2(60) := g_pkg_name || '.' || l_api_name;
919 
920    l_dummy        NUMBER;     -- Used by the lock cursor.
921 
922    --
923    -- NOTE: Not necessary to distinguish between a record
924    -- which does not exist and one which has been updated
925    -- by another user.  To get that distinction, remove
926    -- the object_version condition from the SQL statement
927    -- and perform comparison in the body and raise the
928    -- exception there.
929    CURSOR c_lock_req IS
930       SELECT object_version_number
931       FROM   ams_party_sources
932       WHERE  party_sources_id = p_party_sources_id
933       AND    object_version_number = p_object_version
934       FOR UPDATE NOWAIT;
935 BEGIN
936    --------------------- initialize -----------------------
937    IF (AMS_DEBUG_HIGH_ON) THEN
938 
939    AMS_Utility_PVT.debug_message (l_full_name || ': Start');
940    END IF;
941 
942    IF FND_API.to_boolean (p_init_msg_list) THEN
943       FND_MSG_PUB.initialize;
944    END IF;
945 
946    IF NOT FND_API.compatible_api_call (
947          l_api_version,
948          p_api_version,
949          l_api_name,
950          g_pkg_name
951    ) THEN
952       RAISE FND_API.g_exc_unexpected_error;
953    END IF;
954 
955    x_return_status := FND_API.g_ret_sts_success;
956 
957    ------------------------ lock -------------------------
958    OPEN c_lock_req;
959    FETCH c_lock_req INTO l_dummy;
960    IF c_lock_req%NOTFOUND THEN
961       CLOSE c_lock_req;
962       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
963          FND_MESSAGE.set_name ('AMS', 'AMS_API_RECORD_NOT_FOUND');
964          FND_MSG_PUB.add;
965       END IF;
966       RAISE FND_API.g_exc_error;
967    END IF;
968    CLOSE c_lock_req;
969 
970    -------------------- finish --------------------------
971    FND_MSG_PUB.count_and_get (
972          p_encoded => FND_API.g_false,
973          p_count   => x_msg_count,
974          p_data    => x_msg_data
975    );
976 
977    IF (AMS_DEBUG_HIGH_ON) THEN
978 
979 
980 
981    AMS_Utility_PVT.debug_message (l_full_name || ': End');
982 
983    END IF;
984 
985 EXCEPTION
986    WHEN AMS_Utility_PVT.resource_locked THEN
987       x_return_status := FND_API.g_ret_sts_error;
988 		IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
989 		   FND_MESSAGE.set_name ('AMS', 'AMS_API_RESOURCE_LOCKED');
990 		   FND_MSG_PUB.add;
991 		END IF;
992 
993       FND_MSG_PUB.count_and_get(
994             p_encoded => FND_API.g_false,
995             p_count   => x_msg_count,
996             p_data    => x_msg_data
997       );
998 	WHEN FND_API.g_exc_error THEN
999       x_return_status := FND_API.g_ret_sts_error;
1000       FND_MSG_PUB.count_and_get (
1004       );
1001             p_encoded => FND_API.g_false,
1002             p_count   => x_msg_count,
1003             p_data    => x_msg_data
1005    WHEN FND_API.g_exc_unexpected_error THEN
1006       x_return_status := FND_API.g_ret_sts_unexp_error ;
1007       FND_MSG_PUB.count_and_get (
1008             p_encoded => FND_API.g_false,
1009             p_count   => x_msg_count,
1010             p_data    => x_msg_data
1011       );
1012    WHEN OTHERS THEN
1013       x_return_status := FND_API.g_ret_sts_unexp_error ;
1014       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_unexp_error)
1015 		THEN
1016          FND_MSG_PUB.add_exc_msg (g_pkg_name, l_api_name);
1017       END IF;
1018 
1019       FND_MSG_PUB.count_and_get (
1020             p_encoded => FND_API.g_false,
1021             p_count   => x_msg_count,
1022             p_data    => x_msg_data
1023       );
1024 END Lock_Party;
1025 
1026 
1027 --------------------------------------------------------------------
1028 -- PROCEDURE
1029 --    Update_Party
1030 PROCEDURE Update_Party (
1031    p_api_version       IN  NUMBER,
1032    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
1033    p_commit            IN  VARCHAR2  := FND_API.g_false,
1034    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
1035 
1036    x_return_status     OUT NOCOPY VARCHAR2,
1037    x_msg_count         OUT NOCOPY NUMBER,
1038    x_msg_data          OUT NOCOPY VARCHAR2,
1039 
1040    p_party_rec         IN  Party_Rec_Type
1041 )
1042 IS
1043    l_api_version CONSTANT NUMBER := 1.0;
1044    l_api_name    CONSTANT VARCHAR2(30) := 'Update_Party';
1045    l_full_name   CONSTANT VARCHAR2(60) := g_pkg_name || '.' || l_api_name;
1046 
1047    l_party_rec       Party_Rec_Type := p_party_rec;
1048    l_return_status   VARCHAR2(1);
1049 BEGIN
1050    --------------------- initialize -----------------------
1051    SAVEPOINT Update_Party;
1052 
1053    IF (AMS_DEBUG_HIGH_ON) THEN
1054 
1055 
1056 
1057    AMS_Utility_PVT.debug_message (l_full_name || ': Start');
1058 
1059    END IF;
1060 
1061    IF FND_API.to_boolean (p_init_msg_list) THEN
1062       FND_MSG_PUB.initialize;
1063    END IF;
1064 
1065    IF NOT FND_API.compatible_api_call(
1066          l_api_version,
1067          p_api_version,
1068          l_api_name,
1069          g_pkg_name
1070    ) THEN
1071       RAISE FND_API.g_exc_unexpected_error;
1072    END IF;
1073 
1074    x_return_status := FND_API.g_ret_sts_success;
1075 
1076    ----------------------- validate ----------------------
1077    IF (AMS_DEBUG_HIGH_ON) THEN
1078 
1079    AMS_Utility_PVT.debug_message (l_full_name || ': Validate');
1080    END IF;
1081 
1082    -- replace g_miss_char/num/date with current column values
1083    Complete_Party_Rec (p_party_rec, l_party_rec);
1084 
1085    IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1086       Check_Party_Items (
1087          p_party_rec          => p_party_rec,
1088          p_validation_mode    => JTF_PLSQL_API.g_update,
1089          x_return_status      => l_return_status
1090       );
1091 
1092       IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1093          RAISE FND_API.g_exc_unexpected_error;
1094       ELSIF l_return_status = FND_API.g_ret_sts_error THEN
1095          RAISE FND_API.g_exc_error;
1096       END IF;
1097    END IF;
1098 
1099    IF p_validation_level >= JTF_PLSQL_API.g_valid_level_record THEN
1100       Check_Party_Record (
1101          p_party_rec       => p_party_rec,
1102          p_complete_rec    => l_party_rec,
1103          x_return_status   => l_return_status
1104       );
1105 
1106       IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1107          RAISE FND_API.g_exc_unexpected_error;
1108       ELSIF l_return_status = FND_API.g_ret_sts_error THEN
1109          RAISE FND_API.g_exc_error;
1110       END IF;
1111    END IF;
1112 
1113    -------------------------- update --------------------
1114    UPDATE ams_party_sources
1115    SET
1116       party_sources_id = l_party_rec.party_sources_id,
1117       party_id = l_party_rec.party_id,
1118       import_source_line_id = l_party_rec.import_source_line_id,
1119       object_version_number = l_party_rec.object_version_number,
1120       last_update_date = SYSDATE,
1121       last_updated_by = FND_GLOBAL.user_id,
1122       last_update_login = FND_GLOBAL.conc_login_id,
1123       import_list_header_id = l_party_rec.import_list_header_id,
1124       list_source_type_id = l_party_rec.list_source_type_id,
1125       used_flag = NVL (l_party_rec.used_flag, 'N'),
1126       overlay_flag = NVL (l_party_rec.overlay_flag, 'N'),
1127       overlay_date = l_party_rec.overlay_date,
1128       col1 = l_party_rec.col1,
1129       col2 = l_party_rec.col2,
1130       col3 = l_party_rec.col3,
1131       col4 = l_party_rec.col4,
1132       col5 = l_party_rec.col5,
1133       col6 = l_party_rec.col6,
1134       col7 = l_party_rec.col7,
1135       col8 = l_party_rec.col8,
1136       col9 = l_party_rec.col9,
1137       col10 = l_party_rec.col10,
1138       col11 = l_party_rec.col11,
1139       col12 = l_party_rec.col12,
1140       col13 = l_party_rec.col13,
1141       col14 = l_party_rec.col14,
1145       col18 = l_party_rec.col18,
1142       col15 = l_party_rec.col15,
1143       col16 = l_party_rec.col16,
1144       col17 = l_party_rec.col17,
1146       col19 = l_party_rec.col19,
1147       col20 = l_party_rec.col20,
1148       col21 = l_party_rec.col21,
1149       col22 = l_party_rec.col22,
1150       col23 = l_party_rec.col23,
1151       col24 = l_party_rec.col24,
1152       col25 = l_party_rec.col25,
1153       col26 = l_party_rec.col26,
1154       col27 = l_party_rec.col27,
1155       col28 = l_party_rec.col28,
1156       col29 = l_party_rec.col29,
1157       col30 = l_party_rec.col30,
1158       col31 = l_party_rec.col31,
1159       col32 = l_party_rec.col32,
1160       col33 = l_party_rec.col33,
1161       col34 = l_party_rec.col34,
1162       col35 = l_party_rec.col35,
1163       col36 = l_party_rec.col36,
1164       col37 = l_party_rec.col37,
1165       col38 = l_party_rec.col38,
1166       col39 = l_party_rec.col39,
1167       col40 = l_party_rec.col40,
1168       col41 = l_party_rec.col41,
1169       col42 = l_party_rec.col42,
1170       col43 = l_party_rec.col43,
1171       col44 = l_party_rec.col44,
1172       col45 = l_party_rec.col45,
1173       col46 = l_party_rec.col46,
1174       col47 = l_party_rec.col47,
1175       col48 = l_party_rec.col48,
1176       col49 = l_party_rec.col49,
1177       col50 = l_party_rec.col50,
1178       col51 = l_party_rec.col51,
1179       col52 = l_party_rec.col52,
1180       col53 = l_party_rec.col53,
1181       col54 = l_party_rec.col54,
1182       col55 = l_party_rec.col55,
1183       col56 = l_party_rec.col56,
1184       col57 = l_party_rec.col57,
1185       col58 = l_party_rec.col58,
1186       col59 = l_party_rec.col59,
1187       col60 = l_party_rec.col60,
1188       col61 = l_party_rec.col61,
1189       col62 = l_party_rec.col62,
1190       col63 = l_party_rec.col63,
1191       col64 = l_party_rec.col64,
1192       col65 = l_party_rec.col65,
1193       col66 = l_party_rec.col66,
1194       col67 = l_party_rec.col67,
1195       col68 = l_party_rec.col68,
1196       col69 = l_party_rec.col69,
1197       col70 = l_party_rec.col70,
1198       col71 = l_party_rec.col71,
1199       col72 = l_party_rec.col72,
1200       col73 = l_party_rec.col73,
1201       col74 = l_party_rec.col74,
1202       col75 = l_party_rec.col75,
1203       col76 = l_party_rec.col76,
1204       col77 = l_party_rec.col77,
1205       col78 = l_party_rec.col78,
1206       col79 = l_party_rec.col79,
1207       col80 = l_party_rec.col80,
1208       col81 = l_party_rec.col81,
1209       col82 = l_party_rec.col82,
1210       col83 = l_party_rec.col83,
1211       col84 = l_party_rec.col84,
1212       col85 = l_party_rec.col85,
1213       col86 = l_party_rec.col86,
1214       col87 = l_party_rec.col87,
1215       col88 = l_party_rec.col88,
1216       col89 = l_party_rec.col89,
1217       col90 = l_party_rec.col90,
1218       col91 = l_party_rec.col91,
1219       col92 = l_party_rec.col92,
1220       col93 = l_party_rec.col93,
1221       col94 = l_party_rec.col94,
1222       col95 = l_party_rec.col95,
1223       col96 = l_party_rec.col96,
1224       col97 = l_party_rec.col97,
1225       col98 = l_party_rec.col98,
1226       col99 = l_party_rec.col99,
1227       col100 = l_party_rec.col100,
1228       col101 = l_party_rec.col101,
1229       col102 = l_party_rec.col102,
1230       col103 = l_party_rec.col103,
1231       col104 = l_party_rec.col104,
1232       col105 = l_party_rec.col105,
1233       col106 = l_party_rec.col106,
1234       col107 = l_party_rec.col107,
1235       col108 = l_party_rec.col108,
1236       col109 = l_party_rec.col109,
1237       col110 = l_party_rec.col110,
1238       col111 = l_party_rec.col111,
1239       col112 = l_party_rec.col112,
1240       col113 = l_party_rec.col113,
1241       col114 = l_party_rec.col114,
1242       col115 = l_party_rec.col115,
1243       col116 = l_party_rec.col116,
1244       col117 = l_party_rec.col117,
1245       col118 = l_party_rec.col118,
1246       col119 = l_party_rec.col119,
1247       col120 = l_party_rec.col120,
1248       col121 = l_party_rec.col121,
1249       col122 = l_party_rec.col122,
1250       col123 = l_party_rec.col123,
1251       col124 = l_party_rec.col124,
1252       col125 = l_party_rec.col125,
1253       col126 = l_party_rec.col126,
1254       col127 = l_party_rec.col127,
1255       col128 = l_party_rec.col128,
1256       col129 = l_party_rec.col129,
1257       col130 = l_party_rec.col130,
1258       col131 = l_party_rec.col131,
1259       col132 = l_party_rec.col132,
1260       col133 = l_party_rec.col133,
1261       col134 = l_party_rec.col134,
1262       col135 = l_party_rec.col135,
1263       col136 = l_party_rec.col136,
1264       col137 = l_party_rec.col137,
1265       col138 = l_party_rec.col138,
1266       col139 = l_party_rec.col139,
1267       col140 = l_party_rec.col140,
1268       col141 = l_party_rec.col141,
1269       col142 = l_party_rec.col142,
1270       col143 = l_party_rec.col143,
1271       col144 = l_party_rec.col144,
1272       col145 = l_party_rec.col145,
1273       col146 = l_party_rec.col146,
1274       col147 = l_party_rec.col147,
1275       col148 = l_party_rec.col148,
1276       col149 = l_party_rec.col149,
1277       col150 = l_party_rec.col150,
1278       col151 = l_party_rec.col151,
1279       col152 = l_party_rec.col152,
1283       col156 = l_party_rec.col156,
1280       col153 = l_party_rec.col153,
1281       col154 = l_party_rec.col154,
1282       col155 = l_party_rec.col155,
1284       col157 = l_party_rec.col157,
1285       col158 = l_party_rec.col158,
1286       col159 = l_party_rec.col159,
1287       col160 = l_party_rec.col160,
1288       col161 = l_party_rec.col161,
1289       col162 = l_party_rec.col162,
1290       col163 = l_party_rec.col163,
1291       col164 = l_party_rec.col164,
1292       col165 = l_party_rec.col165,
1293       col166 = l_party_rec.col166,
1294       col167 = l_party_rec.col167,
1295       col168 = l_party_rec.col168,
1296       col169 = l_party_rec.col169,
1297       col170 = l_party_rec.col170,
1298       col171 = l_party_rec.col171,
1299       col172 = l_party_rec.col172,
1300       col173 = l_party_rec.col173,
1301       col174 = l_party_rec.col174,
1302       col175 = l_party_rec.col175,
1303       col176 = l_party_rec.col176,
1304       col177 = l_party_rec.col177,
1305       col178 = l_party_rec.col178,
1306       col179 = l_party_rec.col179,
1307       col180 = l_party_rec.col180,
1308       col181 = l_party_rec.col181,
1309       col182 = l_party_rec.col182,
1310       col183 = l_party_rec.col183,
1311       col184 = l_party_rec.col184,
1312       col185 = l_party_rec.col185,
1313       col186 = l_party_rec.col186,
1314       col187 = l_party_rec.col187,
1315       col188 = l_party_rec.col188,
1316       col189 = l_party_rec.col189,
1317       col190 = l_party_rec.col190,
1318       col191 = l_party_rec.col191,
1319       col192 = l_party_rec.col192,
1320       col193 = l_party_rec.col193,
1321       col194 = l_party_rec.col194,
1322       col195 = l_party_rec.col195,
1323       col196 = l_party_rec.col196,
1324       col197 = l_party_rec.col197,
1325       col198 = l_party_rec.col198,
1326       col199 = l_party_rec.col199,
1327       col200 = l_party_rec.col200,
1328       col201 = l_party_rec.col201,
1329       col202 = l_party_rec.col202,
1330       col203 = l_party_rec.col203,
1331       col204 = l_party_rec.col204,
1332       col205 = l_party_rec.col205,
1333       col206 = l_party_rec.col206,
1334       col207 = l_party_rec.col207,
1335       col208 = l_party_rec.col208,
1336       col209 = l_party_rec.col209,
1337       col210 = l_party_rec.col210,
1338       col211 = l_party_rec.col211,
1339       col212 = l_party_rec.col212,
1340       col213 = l_party_rec.col213,
1341       col214 = l_party_rec.col214,
1342       col215 = l_party_rec.col215,
1343       col216 = l_party_rec.col216,
1344       col217 = l_party_rec.col217,
1345       col218 = l_party_rec.col218,
1346       col219 = l_party_rec.col219,
1347       col220 = l_party_rec.col220,
1348       col221 = l_party_rec.col221,
1349       col222 = l_party_rec.col222,
1350       col223 = l_party_rec.col223,
1351       col224 = l_party_rec.col224,
1352       col225 = l_party_rec.col225,
1353       col226 = l_party_rec.col226,
1354       col227 = l_party_rec.col227,
1355       col228 = l_party_rec.col228,
1356       col229 = l_party_rec.col229,
1357       col230 = l_party_rec.col230,
1358       col231 = l_party_rec.col231,
1359       col232 = l_party_rec.col232,
1360       col233 = l_party_rec.col233,
1361       col234 = l_party_rec.col234,
1362       col235 = l_party_rec.col235,
1363       col236 = l_party_rec.col236,
1364       col237 = l_party_rec.col237,
1365       col238 = l_party_rec.col238,
1366       col239 = l_party_rec.col239,
1367       col240 = l_party_rec.col240,
1368       col241 = l_party_rec.col241,
1369       col242 = l_party_rec.col242,
1370       col243 = l_party_rec.col243,
1371       col244 = l_party_rec.col244,
1372       col245 = l_party_rec.col245,
1373       col246 = l_party_rec.col246,
1374       col247 = l_party_rec.col247,
1375       col248 = l_party_rec.col248,
1376       col249 = l_party_rec.col249,
1377       col250 = l_party_rec.col250
1378    WHERE party_sources_id = l_party_rec.party_sources_id
1379    AND   object_version_number = l_party_rec.object_version_number;
1380 
1381    IF (SQL%NOTFOUND) THEN
1382       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
1383          FND_MESSAGE.set_name ('AMS', 'AMS_API_RECORD_NOT_FOUND');
1384          FND_MSG_PUB.add;
1385       END IF;
1386       RAISE FND_API.g_exc_error;
1387    END IF;
1388 
1389    -------------------- finish --------------------------
1390    IF FND_API.to_boolean (p_commit) THEN
1391       COMMIT;
1392    END IF;
1393 
1394    FND_MSG_PUB.count_and_get (
1395          p_encoded => FND_API.g_false,
1396          p_count   => x_msg_count,
1397          p_data    => x_msg_data
1398    );
1399 
1400    IF (AMS_DEBUG_HIGH_ON) THEN
1401 
1402 
1403 
1404    AMS_Utility_PVT.debug_message (l_full_name || ': End');
1405 
1406    END IF;
1407 
1408 EXCEPTION
1409    WHEN FND_API.g_exc_error THEN
1410       ROLLBACK TO Update_Party;
1411       x_return_status := FND_API.g_ret_sts_error;
1412       FND_MSG_PUB.count_and_get (
1413             p_encoded => FND_API.g_false,
1414             p_count   => x_msg_count,
1415             p_data    => x_msg_data
1416       );
1417    WHEN FND_API.g_exc_unexpected_error THEN
1418       ROLLBACK TO Update_Party;
1422             p_count   => x_msg_count,
1419       x_return_status := FND_API.g_ret_sts_unexp_error ;
1420       FND_MSG_PUB.count_and_get (
1421             p_encoded => FND_API.g_false,
1423             p_data    => x_msg_data
1424       );
1425    WHEN OTHERS THEN
1426       ROLLBACK TO Update_Party;
1427       x_return_status := FND_API.g_ret_sts_unexp_error ;
1428 
1429       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_unexp_error)
1430 		THEN
1431          FND_MSG_PUB.add_exc_msg (g_pkg_name, l_api_name);
1432       END IF;
1433 
1434       FND_MSG_PUB.count_and_get (
1435             p_encoded => FND_API.g_false,
1436             p_count   => x_msg_count,
1437             p_data    => x_msg_data
1438       );
1439 END Update_Party;
1440 
1441 
1442 --------------------------------------------------------------------
1443 -- PROCEDURE
1444 --    Validate_Party
1445 PROCEDURE Validate_Party (
1446    p_api_version       IN  NUMBER,
1447    p_init_msg_list     IN  VARCHAR2  := FND_API.g_false,
1448    p_commit            IN  VARCHAR2  := FND_API.g_false,
1449    p_validation_level  IN  NUMBER    := FND_API.g_valid_level_full,
1450 
1451    x_return_status     OUT NOCOPY VARCHAR2,
1452    x_msg_count         OUT NOCOPY NUMBER,
1453    x_msg_data          OUT NOCOPY VARCHAR2,
1454 
1455    p_party_rec       IN  Party_Rec_Type
1456 )
1457 IS
1458    l_api_version CONSTANT NUMBER := 1.0;
1459    l_api_name    CONSTANT VARCHAR2(30) := 'Validate_Party';
1460    l_full_name   CONSTANT VARCHAR2(60) := g_pkg_name || '.' || l_api_name;
1461 
1462    l_return_status   VARCHAR2(1);
1463 BEGIN
1464    --------------------- initialize -----------------------
1465    IF (AMS_DEBUG_HIGH_ON) THEN
1466 
1467    AMS_Utility_PVT.debug_message (l_full_name || ': Start');
1468    END IF;
1469 
1470    IF FND_API.to_boolean (p_init_msg_list) THEN
1471       FND_MSG_PUB.initialize;
1472    END IF;
1473 
1474    IF NOT FND_API.compatible_api_call (
1475          l_api_version,
1476          p_api_version,
1477          l_api_name,
1478          g_pkg_name
1479    ) THEN
1480       RAISE FND_API.g_exc_unexpected_error;
1481    END IF;
1482 
1483    x_return_status := FND_API.g_ret_sts_success;
1484 
1485    ---------------------- validate ------------------------
1486    IF (AMS_DEBUG_HIGH_ON) THEN
1487 
1488    AMS_Utility_PVT.debug_message (l_full_name || ': Check items');
1489    END IF;
1490 
1491    IF p_validation_level >= JTF_PLSQL_API.g_valid_level_item THEN
1492       Check_Party_Items (
1493          p_party_rec          => p_party_rec,
1494          p_validation_mode    => JTF_PLSQL_API.g_create,
1495          x_return_status      => l_return_status
1496       );
1497 
1498       IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1499          RAISE FND_API.g_exc_unexpected_error;
1500       ELSIF l_return_status = FND_API.g_ret_sts_error THEN
1501          RAISE FND_API.g_exc_error;
1502       END IF;
1503    END IF;
1504 
1505    IF (AMS_DEBUG_HIGH_ON) THEN
1506 
1507 
1508 
1509    AMS_Utility_PVT.debug_message (l_full_name || ': Check record');
1510 
1511    END IF;
1512 
1513    IF p_validation_level >= JTF_PLSQL_API.g_valid_level_record THEN
1514       Check_Party_Record (
1515          p_party_rec       => p_party_rec,
1516          p_complete_rec    => NULL,
1517          x_return_status   => l_return_status
1518       );
1519 
1520       IF l_return_status = FND_API.g_ret_sts_unexp_error THEN
1521          RAISE FND_API.g_exc_unexpected_error;
1522       ELSIF l_return_status = FND_API.g_ret_sts_error THEN
1523          RAISE FND_API.g_exc_error;
1524       END IF;
1525    END IF;
1526 
1527    -------------------- finish --------------------------
1528    FND_MSG_PUB.count_and_get (
1529          p_encoded => FND_API.g_false,
1530          p_count   => x_msg_count,
1531          p_data    => x_msg_data
1532    );
1533 
1534    IF (AMS_DEBUG_HIGH_ON) THEN
1535 
1536 
1537 
1538    AMS_Utility_PVT.debug_message (l_full_name || ': End');
1539 
1540    END IF;
1541 
1542 EXCEPTION
1543    WHEN FND_API.g_exc_error THEN
1544       x_return_status := FND_API.g_ret_sts_error;
1545       FND_MSG_PUB.count_and_get (
1546             p_encoded => FND_API.g_false,
1547             p_count   => x_msg_count,
1548             p_data    => x_msg_data
1549       );
1550    WHEN FND_API.g_exc_unexpected_error THEN
1551       x_return_status := FND_API.g_ret_sts_unexp_error ;
1552       FND_MSG_PUB.count_and_get (
1553             p_encoded => FND_API.g_false,
1554             p_count   => x_msg_count,
1555             p_data    => x_msg_data
1556       );
1557    WHEN OTHERS THEN
1558       x_return_status := FND_API.g_ret_sts_unexp_error;
1559       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_unexp_error)
1560 		THEN
1561          FND_MSG_PUB.add_exc_msg (g_pkg_name, l_api_name);
1562       END IF;
1563 
1564       FND_MSG_PUB.count_and_get (
1565             p_encoded => FND_API.g_false,
1566             p_count   => x_msg_count,
1567             p_data    => x_msg_data
1568       );
1569 END Validate_Party;
1573 -- PROCEDURE
1570 
1571 
1572 ---------------------------------------------------------------------
1574 --    Check_Party_Items
1575 --
1576 -- PURPOSE
1577 --    Perform item level validation.
1578 --
1579 -- HISTORY
1580 -- 08-Nov-1999 choang      Created.
1581 ---------------------------------------------------------------------
1582 PROCEDURE Check_Party_Items (
1583    p_party_rec       IN  Party_Rec_Type,
1584    p_validation_mode IN  VARCHAR2 := JTF_PLSQL_API.g_create,
1585    x_return_status   OUT NOCOPY VARCHAR2
1586 )
1587 IS
1588 BEGIN
1589    IF (AMS_DEBUG_HIGH_ON) THEN
1590 
1591    AMS_Utility_PVT.debug_message ('Check required items');
1592    END IF;
1593    --
1594    -- Validate required items.
1595    Check_Party_Req_Items (
1596       p_party_rec       => p_party_rec,
1597       x_return_status   => x_return_status
1598    );
1599 
1600    IF x_return_status <> FND_API.g_ret_sts_success THEN
1601       RETURN;
1602    END IF;
1603 
1604    IF (AMS_DEBUG_HIGH_ON) THEN
1605 
1606 
1607 
1608    AMS_Utility_PVT.debug_message ('Check unique items');
1609 
1610    END IF;
1611    --
1612    -- Validate uniqueness.
1613    Check_Party_UK_Items (
1614       p_party_rec          => p_party_rec,
1615       p_validation_mode    => p_validation_mode,
1616       x_return_status      => x_return_status
1617    );
1618 
1619    IF x_return_status <> FND_API.g_ret_sts_success THEN
1620       RETURN;
1621    END IF;
1622 
1623    IF (AMS_DEBUG_HIGH_ON) THEN
1624 
1625 
1626 
1627    AMS_Utility_PVT.debug_message ('Check FK items');
1628 
1629    END IF;
1630    Check_Party_FK_Items(
1631       p_party_rec       => p_party_rec,
1632       x_return_status   => x_return_status
1633    );
1634 
1635    IF x_return_status <> FND_API.g_ret_sts_success THEN
1636       RETURN;
1637    END IF;
1638 
1639    IF (AMS_DEBUG_HIGH_ON) THEN
1640 
1641 
1642 
1643    AMS_Utility_PVT.debug_message ('Check lookup items');
1644 
1645    END IF;
1646    Check_Party_Lookup_Items (
1647       p_party_rec          => p_party_rec,
1648       x_return_status      => x_return_status
1649    );
1650 
1651    IF x_return_status <> FND_API.g_ret_sts_success THEN
1652       RETURN;
1653    END IF;
1654 
1655    IF (AMS_DEBUG_HIGH_ON) THEN
1656 
1657 
1658 
1659    AMS_Utility_PVT.debug_message ('Check flag items');
1660 
1661    END IF;
1662    Check_Party_Flag_Items(
1663       p_party_rec        => p_party_rec,
1664       x_return_status    => x_return_status
1665    );
1666 
1667    IF x_return_status <> FND_API.g_ret_sts_success THEN
1668       RETURN;
1669    END IF;
1670 END Check_Party_Items;
1671 
1672 
1673 ---------------------------------------------------------------------
1674 -- PROCEDURE
1675 --    Check_Party_Record
1676 --
1677 -- PURPOSE
1678 --    Perform record level validation.
1679 --
1680 -- HISTORY
1681 -- 08-Nov-1999 choang      Created as a dummy procedure.
1682 ---------------------------------------------------------------------
1683 PROCEDURE Check_Party_Record (
1684    p_party_rec        IN  Party_Rec_Type,
1685    p_complete_rec     IN  Party_Rec_Type := NULL,
1686    x_return_status    OUT NOCOPY VARCHAR2
1687 )
1688 IS
1689 BEGIN
1690    x_return_status := FND_API.g_ret_sts_success;
1691 
1692 END Check_Party_Record;
1693 
1694 
1695 ---------------------------------------------------------------------
1696 -- PROCEDURE
1697 --    Init_Party_Rec
1698 --
1699 -- PURPOSE
1700 --
1701 -- HISTORY
1702 -- 08-Nov-1999 choang      Created.
1703 ---------------------------------------------------------------------
1704 PROCEDURE Init_Party_Rec (
1705    x_party_rec         OUT NOCOPY  Party_Rec_Type
1706 )
1707 IS
1708 BEGIN
1709       x_party_rec.party_sources_id := FND_API.g_miss_num;
1710       x_party_rec.party_id := FND_API.g_miss_num;
1711       x_party_rec.import_source_line_id := FND_API.g_miss_num;
1712       x_party_rec.object_version_number := FND_API.g_miss_num;
1713       x_party_rec.last_update_date := FND_API.g_miss_date;
1714       x_party_rec.last_updated_by := FND_API.g_miss_num;
1715       x_party_rec.creation_date := FND_API.g_miss_date;
1716       x_party_rec.created_by := FND_API.g_miss_num;
1717       x_party_rec.last_update_login := FND_API.g_miss_num;
1718       x_party_rec.import_list_header_id := FND_API.g_miss_num;
1719       x_party_rec.list_source_type_id := FND_API.g_miss_num;
1720       x_party_rec.used_flag := FND_API.g_miss_char;
1721       x_party_rec.overlay_flag := FND_API.g_miss_char;
1722       x_party_rec.overlay_date := FND_API.g_miss_date;
1723       x_party_rec.col1 := FND_API.g_miss_char;
1724       x_party_rec.col2 := FND_API.g_miss_char;
1725       x_party_rec.col3 := FND_API.g_miss_char;
1726       x_party_rec.col4 := FND_API.g_miss_char;
1727       x_party_rec.col5 := FND_API.g_miss_char;
1728       x_party_rec.col6 := FND_API.g_miss_char;
1729       x_party_rec.col7 := FND_API.g_miss_char;
1730       x_party_rec.col8 := FND_API.g_miss_char;
1734       x_party_rec.col12 := FND_API.g_miss_char;
1731       x_party_rec.col9 := FND_API.g_miss_char;
1732       x_party_rec.col10 := FND_API.g_miss_char;
1733       x_party_rec.col11 := FND_API.g_miss_char;
1735       x_party_rec.col13 := FND_API.g_miss_char;
1736       x_party_rec.col14 := FND_API.g_miss_char;
1737       x_party_rec.col15 := FND_API.g_miss_char;
1738       x_party_rec.col16 := FND_API.g_miss_char;
1739       x_party_rec.col17 := FND_API.g_miss_char;
1740       x_party_rec.col18 := FND_API.g_miss_char;
1741       x_party_rec.col19 := FND_API.g_miss_char;
1742       x_party_rec.col20 := FND_API.g_miss_char;
1743       x_party_rec.col21 := FND_API.g_miss_char;
1744       x_party_rec.col22 := FND_API.g_miss_char;
1745       x_party_rec.col23 := FND_API.g_miss_char;
1746       x_party_rec.col24 := FND_API.g_miss_char;
1747       x_party_rec.col25 := FND_API.g_miss_char;
1748       x_party_rec.col26 := FND_API.g_miss_char;
1749       x_party_rec.col27 := FND_API.g_miss_char;
1750       x_party_rec.col28 := FND_API.g_miss_char;
1751       x_party_rec.col29 := FND_API.g_miss_char;
1752       x_party_rec.col30 := FND_API.g_miss_char;
1753       x_party_rec.col31 := FND_API.g_miss_char;
1754       x_party_rec.col32 := FND_API.g_miss_char;
1755       x_party_rec.col33 := FND_API.g_miss_char;
1756       x_party_rec.col34 := FND_API.g_miss_char;
1757       x_party_rec.col35 := FND_API.g_miss_char;
1758       x_party_rec.col36 := FND_API.g_miss_char;
1759       x_party_rec.col37 := FND_API.g_miss_char;
1760       x_party_rec.col38 := FND_API.g_miss_char;
1761       x_party_rec.col39 := FND_API.g_miss_char;
1762       x_party_rec.col40 := FND_API.g_miss_char;
1763       x_party_rec.col41 := FND_API.g_miss_char;
1764       x_party_rec.col42 := FND_API.g_miss_char;
1765       x_party_rec.col43 := FND_API.g_miss_char;
1766       x_party_rec.col44 := FND_API.g_miss_char;
1767       x_party_rec.col45 := FND_API.g_miss_char;
1768       x_party_rec.col46 := FND_API.g_miss_char;
1769       x_party_rec.col47 := FND_API.g_miss_char;
1770       x_party_rec.col48 := FND_API.g_miss_char;
1771       x_party_rec.col49 := FND_API.g_miss_char;
1772       x_party_rec.col50 := FND_API.g_miss_char;
1773       x_party_rec.col51 := FND_API.g_miss_char;
1774       x_party_rec.col52 := FND_API.g_miss_char;
1775       x_party_rec.col53 := FND_API.g_miss_char;
1776       x_party_rec.col54 := FND_API.g_miss_char;
1777       x_party_rec.col55 := FND_API.g_miss_char;
1778       x_party_rec.col56 := FND_API.g_miss_char;
1779       x_party_rec.col57 := FND_API.g_miss_char;
1780       x_party_rec.col58 := FND_API.g_miss_char;
1781       x_party_rec.col59 := FND_API.g_miss_char;
1782       x_party_rec.col60 := FND_API.g_miss_char;
1783       x_party_rec.col61 := FND_API.g_miss_char;
1784       x_party_rec.col62 := FND_API.g_miss_char;
1785       x_party_rec.col63 := FND_API.g_miss_char;
1786       x_party_rec.col64 := FND_API.g_miss_char;
1787       x_party_rec.col65 := FND_API.g_miss_char;
1788       x_party_rec.col66 := FND_API.g_miss_char;
1789       x_party_rec.col67 := FND_API.g_miss_char;
1790       x_party_rec.col68 := FND_API.g_miss_char;
1791       x_party_rec.col69 := FND_API.g_miss_char;
1792       x_party_rec.col70 := FND_API.g_miss_char;
1793       x_party_rec.col71 := FND_API.g_miss_char;
1794       x_party_rec.col72 := FND_API.g_miss_char;
1795       x_party_rec.col73 := FND_API.g_miss_char;
1796       x_party_rec.col74 := FND_API.g_miss_char;
1797       x_party_rec.col75 := FND_API.g_miss_char;
1798       x_party_rec.col76 := FND_API.g_miss_char;
1799       x_party_rec.col77 := FND_API.g_miss_char;
1800       x_party_rec.col78 := FND_API.g_miss_char;
1801       x_party_rec.col79 := FND_API.g_miss_char;
1802       x_party_rec.col80 := FND_API.g_miss_char;
1803       x_party_rec.col81 := FND_API.g_miss_char;
1804       x_party_rec.col82 := FND_API.g_miss_char;
1805       x_party_rec.col83 := FND_API.g_miss_char;
1806       x_party_rec.col84 := FND_API.g_miss_char;
1807       x_party_rec.col85 := FND_API.g_miss_char;
1808       x_party_rec.col86 := FND_API.g_miss_char;
1809       x_party_rec.col87 := FND_API.g_miss_char;
1810       x_party_rec.col88 := FND_API.g_miss_char;
1811       x_party_rec.col89 := FND_API.g_miss_char;
1812       x_party_rec.col90 := FND_API.g_miss_char;
1813       x_party_rec.col91 := FND_API.g_miss_char;
1814       x_party_rec.col92 := FND_API.g_miss_char;
1815       x_party_rec.col93 := FND_API.g_miss_char;
1816       x_party_rec.col94 := FND_API.g_miss_char;
1817       x_party_rec.col95 := FND_API.g_miss_char;
1818       x_party_rec.col96 := FND_API.g_miss_char;
1819       x_party_rec.col97 := FND_API.g_miss_char;
1820       x_party_rec.col98 := FND_API.g_miss_char;
1821       x_party_rec.col99 := FND_API.g_miss_char;
1822       x_party_rec.col100 := FND_API.g_miss_char;
1823       x_party_rec.col101 := FND_API.g_miss_char;
1824       x_party_rec.col102 := FND_API.g_miss_char;
1825       x_party_rec.col103 := FND_API.g_miss_char;
1826       x_party_rec.col104 := FND_API.g_miss_char;
1827       x_party_rec.col105 := FND_API.g_miss_char;
1828       x_party_rec.col106 := FND_API.g_miss_char;
1829       x_party_rec.col107 := FND_API.g_miss_char;
1830       x_party_rec.col108 := FND_API.g_miss_char;
1831       x_party_rec.col109 := FND_API.g_miss_char;
1832       x_party_rec.col110 := FND_API.g_miss_char;
1833       x_party_rec.col111 := FND_API.g_miss_char;
1834       x_party_rec.col112 := FND_API.g_miss_char;
1838       x_party_rec.col116 := FND_API.g_miss_char;
1835       x_party_rec.col113 := FND_API.g_miss_char;
1836       x_party_rec.col114 := FND_API.g_miss_char;
1837       x_party_rec.col115 := FND_API.g_miss_char;
1839       x_party_rec.col117 := FND_API.g_miss_char;
1840       x_party_rec.col118 := FND_API.g_miss_char;
1841       x_party_rec.col119 := FND_API.g_miss_char;
1842       x_party_rec.col120 := FND_API.g_miss_char;
1843       x_party_rec.col121 := FND_API.g_miss_char;
1844       x_party_rec.col122 := FND_API.g_miss_char;
1845       x_party_rec.col123 := FND_API.g_miss_char;
1846       x_party_rec.col124 := FND_API.g_miss_char;
1847       x_party_rec.col125 := FND_API.g_miss_char;
1848       x_party_rec.col126 := FND_API.g_miss_char;
1849       x_party_rec.col127 := FND_API.g_miss_char;
1850       x_party_rec.col128 := FND_API.g_miss_char;
1851       x_party_rec.col129 := FND_API.g_miss_char;
1852       x_party_rec.col130 := FND_API.g_miss_char;
1853       x_party_rec.col131 := FND_API.g_miss_char;
1854       x_party_rec.col132 := FND_API.g_miss_char;
1855       x_party_rec.col133 := FND_API.g_miss_char;
1856       x_party_rec.col134 := FND_API.g_miss_char;
1857       x_party_rec.col135 := FND_API.g_miss_char;
1858       x_party_rec.col136 := FND_API.g_miss_char;
1859       x_party_rec.col137 := FND_API.g_miss_char;
1860       x_party_rec.col138 := FND_API.g_miss_char;
1861       x_party_rec.col139 := FND_API.g_miss_char;
1862       x_party_rec.col140 := FND_API.g_miss_char;
1863       x_party_rec.col141 := FND_API.g_miss_char;
1864       x_party_rec.col142 := FND_API.g_miss_char;
1865       x_party_rec.col143 := FND_API.g_miss_char;
1866       x_party_rec.col144 := FND_API.g_miss_char;
1867       x_party_rec.col145 := FND_API.g_miss_char;
1868       x_party_rec.col146 := FND_API.g_miss_char;
1869       x_party_rec.col147 := FND_API.g_miss_char;
1870       x_party_rec.col148 := FND_API.g_miss_char;
1871       x_party_rec.col149 := FND_API.g_miss_char;
1872       x_party_rec.col150 := FND_API.g_miss_char;
1873       x_party_rec.col151 := FND_API.g_miss_char;
1874       x_party_rec.col152 := FND_API.g_miss_char;
1875       x_party_rec.col153 := FND_API.g_miss_char;
1876       x_party_rec.col154 := FND_API.g_miss_char;
1877       x_party_rec.col155 := FND_API.g_miss_char;
1878       x_party_rec.col156 := FND_API.g_miss_char;
1879       x_party_rec.col157 := FND_API.g_miss_char;
1880       x_party_rec.col158 := FND_API.g_miss_char;
1881       x_party_rec.col159 := FND_API.g_miss_char;
1882       x_party_rec.col160 := FND_API.g_miss_char;
1883       x_party_rec.col161 := FND_API.g_miss_char;
1884       x_party_rec.col162 := FND_API.g_miss_char;
1885       x_party_rec.col163 := FND_API.g_miss_char;
1886       x_party_rec.col164 := FND_API.g_miss_char;
1887       x_party_rec.col165 := FND_API.g_miss_char;
1888       x_party_rec.col166 := FND_API.g_miss_char;
1889       x_party_rec.col167 := FND_API.g_miss_char;
1890       x_party_rec.col168 := FND_API.g_miss_char;
1891       x_party_rec.col169 := FND_API.g_miss_char;
1892       x_party_rec.col170 := FND_API.g_miss_char;
1893       x_party_rec.col171 := FND_API.g_miss_char;
1894       x_party_rec.col172 := FND_API.g_miss_char;
1895       x_party_rec.col173 := FND_API.g_miss_char;
1896       x_party_rec.col174 := FND_API.g_miss_char;
1897       x_party_rec.col175 := FND_API.g_miss_char;
1898       x_party_rec.col176 := FND_API.g_miss_char;
1899       x_party_rec.col177 := FND_API.g_miss_char;
1900       x_party_rec.col178 := FND_API.g_miss_char;
1901       x_party_rec.col179 := FND_API.g_miss_char;
1902       x_party_rec.col180 := FND_API.g_miss_char;
1903       x_party_rec.col181 := FND_API.g_miss_char;
1904       x_party_rec.col182 := FND_API.g_miss_char;
1905       x_party_rec.col183 := FND_API.g_miss_char;
1906       x_party_rec.col184 := FND_API.g_miss_char;
1907       x_party_rec.col185 := FND_API.g_miss_char;
1908       x_party_rec.col186 := FND_API.g_miss_char;
1909       x_party_rec.col187 := FND_API.g_miss_char;
1910       x_party_rec.col188 := FND_API.g_miss_char;
1911       x_party_rec.col189 := FND_API.g_miss_char;
1912       x_party_rec.col190 := FND_API.g_miss_char;
1913       x_party_rec.col191 := FND_API.g_miss_char;
1914       x_party_rec.col192 := FND_API.g_miss_char;
1915       x_party_rec.col193 := FND_API.g_miss_char;
1916       x_party_rec.col194 := FND_API.g_miss_char;
1917       x_party_rec.col195 := FND_API.g_miss_char;
1918       x_party_rec.col196 := FND_API.g_miss_char;
1919       x_party_rec.col197 := FND_API.g_miss_char;
1920       x_party_rec.col198 := FND_API.g_miss_char;
1921       x_party_rec.col199 := FND_API.g_miss_char;
1922       x_party_rec.col200 := FND_API.g_miss_char;
1923       x_party_rec.col201 := FND_API.g_miss_char;
1924       x_party_rec.col202 := FND_API.g_miss_char;
1925       x_party_rec.col203 := FND_API.g_miss_char;
1926       x_party_rec.col204 := FND_API.g_miss_char;
1927       x_party_rec.col205 := FND_API.g_miss_char;
1928       x_party_rec.col206 := FND_API.g_miss_char;
1929       x_party_rec.col207 := FND_API.g_miss_char;
1930       x_party_rec.col208 := FND_API.g_miss_char;
1931       x_party_rec.col209 := FND_API.g_miss_char;
1932       x_party_rec.col210 := FND_API.g_miss_char;
1933       x_party_rec.col211 := FND_API.g_miss_char;
1934       x_party_rec.col212 := FND_API.g_miss_char;
1935       x_party_rec.col213 := FND_API.g_miss_char;
1936       x_party_rec.col214 := FND_API.g_miss_char;
1937       x_party_rec.col215 := FND_API.g_miss_char;
1941       x_party_rec.col219 := FND_API.g_miss_char;
1938       x_party_rec.col216 := FND_API.g_miss_char;
1939       x_party_rec.col217 := FND_API.g_miss_char;
1940       x_party_rec.col218 := FND_API.g_miss_char;
1942       x_party_rec.col220 := FND_API.g_miss_char;
1943       x_party_rec.col221 := FND_API.g_miss_char;
1944       x_party_rec.col222 := FND_API.g_miss_char;
1945       x_party_rec.col223 := FND_API.g_miss_char;
1946       x_party_rec.col224 := FND_API.g_miss_char;
1947       x_party_rec.col225 := FND_API.g_miss_char;
1948       x_party_rec.col226 := FND_API.g_miss_char;
1949       x_party_rec.col227 := FND_API.g_miss_char;
1950       x_party_rec.col228 := FND_API.g_miss_char;
1951       x_party_rec.col229 := FND_API.g_miss_char;
1952       x_party_rec.col230 := FND_API.g_miss_char;
1953       x_party_rec.col231 := FND_API.g_miss_char;
1954       x_party_rec.col232 := FND_API.g_miss_char;
1955       x_party_rec.col233 := FND_API.g_miss_char;
1956       x_party_rec.col234 := FND_API.g_miss_char;
1957       x_party_rec.col235 := FND_API.g_miss_char;
1958       x_party_rec.col236 := FND_API.g_miss_char;
1959       x_party_rec.col237 := FND_API.g_miss_char;
1960       x_party_rec.col238 := FND_API.g_miss_char;
1961       x_party_rec.col239 := FND_API.g_miss_char;
1962       x_party_rec.col240 := FND_API.g_miss_char;
1963       x_party_rec.col241 := FND_API.g_miss_char;
1964       x_party_rec.col242 := FND_API.g_miss_char;
1965       x_party_rec.col243 := FND_API.g_miss_char;
1966       x_party_rec.col244 := FND_API.g_miss_char;
1967       x_party_rec.col245 := FND_API.g_miss_char;
1968       x_party_rec.col246 := FND_API.g_miss_char;
1969       x_party_rec.col247 := FND_API.g_miss_char;
1970       x_party_rec.col248 := FND_API.g_miss_char;
1971       x_party_rec.col249 := FND_API.g_miss_char;
1972       x_party_rec.col250 := FND_API.g_miss_char;
1973 END Init_Party_Rec;
1974 
1975 
1976 ---------------------------------------------------------------------
1977 -- PROCEDURE
1978 --    Complete_Party_Rec
1979 --
1980 -- PURPOSE
1981 --    Fill in the columns which did not get passed into the
1982 --    update API, so the "g_miss" columns don't change from
1983 --    the values in the database.
1984 --
1985 -- HISTORY
1986 -- 08-Nov-1999 choang      Created.
1987 ---------------------------------------------------------------------
1988 PROCEDURE Complete_Party_Rec (
1989    p_party_rec      IN  Party_Rec_Type,
1990    x_complete_rec   OUT NOCOPY Party_Rec_Type
1991 )
1992 IS
1993    CURSOR c_party IS
1994       SELECT *
1995       FROM   ams_party_sources
1996       WHERE  party_sources_id = p_party_rec.party_sources_id;
1997 
1998    l_party_rec     c_party%ROWTYPE;
1999 BEGIN
2000    x_complete_rec := p_party_rec;
2001 
2002    --
2003    -- Fetch the values which are in the database.
2004    OPEN c_party;
2005    FETCH c_party INTO l_party_rec;
2006    IF c_party%NOTFOUND THEN
2007       CLOSE c_party;
2008       IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
2009          FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
2010          FND_MSG_PUB.add;
2011       END IF;
2012       RAISE FND_API.g_exc_error;
2013    END IF;
2014    CLOSE c_party;
2015 
2016    --
2017    -- party_sources_id
2018    IF p_party_rec.party_sources_id = FND_API.g_miss_num THEN
2019       x_complete_rec.party_sources_id := l_party_rec.party_sources_id;
2020    END IF;
2021 
2022    -- party_id
2023    IF p_party_rec.party_id = FND_API.g_miss_num THEN
2024       x_complete_rec.party_id := l_party_rec.party_id;
2025    END IF;
2026 
2027    -- import_source_line_id
2028    IF p_party_rec.import_source_line_id = FND_API.g_miss_num THEN
2029       x_complete_rec.import_source_line_id := l_party_rec.import_source_line_id;
2030    END IF;
2031 
2032    -- object_version_number
2033    IF p_party_rec.object_version_number = FND_API.g_miss_num THEN
2034       x_complete_rec.object_version_number := l_party_rec.object_version_number;
2035    END IF;
2036 
2037    -- last_update_date
2038    IF p_party_rec.last_update_date = FND_API.g_miss_date THEN
2039       x_complete_rec.last_update_date := l_party_rec.last_update_date;
2040    END IF;
2041 
2042    -- last_updated_by
2043    IF p_party_rec.last_updated_by = FND_API.g_miss_num THEN
2044       x_complete_rec.last_updated_by := l_party_rec.last_updated_by;
2045    END IF;
2046 
2047    -- creation_date
2048    IF p_party_rec.creation_date = FND_API.g_miss_date THEN
2049       x_complete_rec.creation_date := l_party_rec.creation_date;
2050    END IF;
2051 
2052    -- created_by
2053    IF p_party_rec.created_by = FND_API.g_miss_num THEN
2054       x_complete_rec.created_by := l_party_rec.created_by;
2055    END IF;
2056 
2057    -- last_update_login
2058    IF p_party_rec.last_update_login = FND_API.g_miss_num THEN
2059       x_complete_rec.last_update_login := l_party_rec.last_update_login;
2060    END IF;
2061 
2062    -- import_list_header_id
2063    IF p_party_rec.import_list_header_id = FND_API.g_miss_num THEN
2064       x_complete_rec.import_list_header_id := l_party_rec.import_list_header_id;
2065    END IF;
2066 
2067    -- list_source_type_id
2068    IF p_party_rec.list_source_type_id = FND_API.g_miss_num THEN
2072    -- used_flag
2069       x_complete_rec.list_source_type_id := l_party_rec.list_source_type_id;
2070    END IF;
2071 
2073    IF p_party_rec.used_flag = FND_API.g_miss_char THEN
2074       x_complete_rec.used_flag := l_party_rec.used_flag;
2075    END IF;
2076 
2077    -- overlay_flag
2078    IF p_party_rec.overlay_flag = FND_API.g_miss_char THEN
2079       x_complete_rec.overlay_flag := l_party_rec.overlay_flag;
2080    END IF;
2081 
2082    -- overlay_date
2083    IF p_party_rec.overlay_date = FND_API.g_miss_date THEN
2084       x_complete_rec.overlay_date := l_party_rec.overlay_date;
2085    END IF;
2086 
2087    -- col1
2088    IF p_party_rec.col1 = FND_API.g_miss_char THEN
2089       x_complete_rec.col1 := l_party_rec.col1;
2090    END IF;
2091 
2092    -- col2
2093    IF p_party_rec.col2 = FND_API.g_miss_char THEN
2094       x_complete_rec.col2 := l_party_rec.col2;
2095    END IF;
2096 
2097    -- col3
2098    IF p_party_rec.col3 = FND_API.g_miss_char THEN
2099       x_complete_rec.col3 := l_party_rec.col3;
2100    END IF;
2101 
2102    -- col4
2103    IF p_party_rec.col4 = FND_API.g_miss_char THEN
2104       x_complete_rec.col4 := l_party_rec.col4;
2105    END IF;
2106 
2107    -- col5
2108    IF p_party_rec.col5 = FND_API.g_miss_char THEN
2109       x_complete_rec.col5 := l_party_rec.col5;
2110    END IF;
2111 
2112    -- col6
2113    IF p_party_rec.col6 = FND_API.g_miss_char THEN
2114       x_complete_rec.col6 := l_party_rec.col6;
2115    END IF;
2116 
2117    -- col7
2118    IF p_party_rec.col7 = FND_API.g_miss_char THEN
2119       x_complete_rec.col7 := l_party_rec.col7;
2120    END IF;
2121 
2122    -- col8
2123    IF p_party_rec.col8 = FND_API.g_miss_char THEN
2124       x_complete_rec.col8 := l_party_rec.col8;
2125    END IF;
2126 
2127    -- col9
2128    IF p_party_rec.col9 = FND_API.g_miss_char THEN
2129       x_complete_rec.col9 := l_party_rec.col9;
2130    END IF;
2131 
2132    -- col10
2133    IF p_party_rec.col10 = FND_API.g_miss_char THEN
2134       x_complete_rec.col10 := l_party_rec.col10;
2135    END IF;
2136 
2137    -- col11
2138    IF p_party_rec.col11 = FND_API.g_miss_char THEN
2139       x_complete_rec.col11 := l_party_rec.col11;
2140    END IF;
2141 
2142    -- col12
2143    IF p_party_rec.col12 = FND_API.g_miss_char THEN
2144       x_complete_rec.col12 := l_party_rec.col12;
2145    END IF;
2146 
2147    -- col13
2148    IF p_party_rec.col13 = FND_API.g_miss_char THEN
2149       x_complete_rec.col13 := l_party_rec.col13;
2150    END IF;
2151 
2152    -- col14
2153    IF p_party_rec.col14 = FND_API.g_miss_char THEN
2154       x_complete_rec.col14 := l_party_rec.col14;
2155    END IF;
2156 
2157    -- col15
2158    IF p_party_rec.col15 = FND_API.g_miss_char THEN
2159       x_complete_rec.col15 := l_party_rec.col15;
2160    END IF;
2161 
2162    -- col16
2163    IF p_party_rec.col16 = FND_API.g_miss_char THEN
2164       x_complete_rec.col16 := l_party_rec.col16;
2165    END IF;
2166 
2167    -- col17
2168    IF p_party_rec.col17 = FND_API.g_miss_char THEN
2169       x_complete_rec.col17 := l_party_rec.col17;
2170    END IF;
2171 
2172    -- col18
2173    IF p_party_rec.col18 = FND_API.g_miss_char THEN
2174       x_complete_rec.col18 := l_party_rec.col18;
2175    END IF;
2176 
2177    -- col19
2178    IF p_party_rec.col19 = FND_API.g_miss_char THEN
2179       x_complete_rec.col19 := l_party_rec.col19;
2180    END IF;
2181 
2182    -- col20
2183    IF p_party_rec.col20 = FND_API.g_miss_char THEN
2184       x_complete_rec.col20 := l_party_rec.col20;
2185    END IF;
2186 
2187    -- col21
2188    IF p_party_rec.col21 = FND_API.g_miss_char THEN
2189       x_complete_rec.col21 := l_party_rec.col21;
2190    END IF;
2191 
2192    -- col22
2193    IF p_party_rec.col22 = FND_API.g_miss_char THEN
2194       x_complete_rec.col22 := l_party_rec.col22;
2195    END IF;
2196 
2197    -- col23
2198    IF p_party_rec.col23 = FND_API.g_miss_char THEN
2199       x_complete_rec.col23 := l_party_rec.col23;
2200    END IF;
2201 
2202    -- col24
2203    IF p_party_rec.col24 = FND_API.g_miss_char THEN
2204       x_complete_rec.col24 := l_party_rec.col24;
2205    END IF;
2206 
2207    -- col25
2208    IF p_party_rec.col25 = FND_API.g_miss_char THEN
2209       x_complete_rec.col25 := l_party_rec.col25;
2210    END IF;
2211 
2212    -- col26
2213    IF p_party_rec.col26 = FND_API.g_miss_char THEN
2214       x_complete_rec.col26 := l_party_rec.col26;
2215    END IF;
2216 
2217    -- col27
2218    IF p_party_rec.col27 = FND_API.g_miss_char THEN
2219       x_complete_rec.col27 := l_party_rec.col27;
2220    END IF;
2221 
2222    -- col28
2223    IF p_party_rec.col28 = FND_API.g_miss_char THEN
2224       x_complete_rec.col28 := l_party_rec.col28;
2225    END IF;
2226 
2227    -- col29
2228    IF p_party_rec.col29 = FND_API.g_miss_char THEN
2229       x_complete_rec.col29 := l_party_rec.col29;
2230    END IF;
2231 
2232    -- col30
2236 
2233    IF p_party_rec.col30 = FND_API.g_miss_char THEN
2234       x_complete_rec.col30 := l_party_rec.col30;
2235    END IF;
2237    -- col31
2238    IF p_party_rec.col31 = FND_API.g_miss_char THEN
2239       x_complete_rec.col31 := l_party_rec.col31;
2240    END IF;
2241 
2242    -- col32
2243    IF p_party_rec.col32 = FND_API.g_miss_char THEN
2244       x_complete_rec.col32 := l_party_rec.col32;
2245    END IF;
2246 
2247    -- col33
2248    IF p_party_rec.col33 = FND_API.g_miss_char THEN
2249       x_complete_rec.col33 := l_party_rec.col33;
2250    END IF;
2251 
2252    -- col34
2253    IF p_party_rec.col34 = FND_API.g_miss_char THEN
2254       x_complete_rec.col34 := l_party_rec.col34;
2255    END IF;
2256 
2257    -- col35
2258    IF p_party_rec.col35 = FND_API.g_miss_char THEN
2259       x_complete_rec.col35 := l_party_rec.col35;
2260    END IF;
2261 
2262    -- col36
2263    IF p_party_rec.col36 = FND_API.g_miss_char THEN
2264       x_complete_rec.col36 := l_party_rec.col36;
2265    END IF;
2266 
2267    -- col37
2268    IF p_party_rec.col37 = FND_API.g_miss_char THEN
2269       x_complete_rec.col37 := l_party_rec.col37;
2270    END IF;
2271 
2272    -- col38
2273    IF p_party_rec.col38 = FND_API.g_miss_char THEN
2274       x_complete_rec.col38 := l_party_rec.col38;
2275    END IF;
2276 
2277    -- col39
2278    IF p_party_rec.col39 = FND_API.g_miss_char THEN
2279       x_complete_rec.col39 := l_party_rec.col39;
2280    END IF;
2281 
2282    -- col40
2283    IF p_party_rec.col40 = FND_API.g_miss_char THEN
2284       x_complete_rec.col40 := l_party_rec.col40;
2285    END IF;
2286 
2287    -- col41
2288    IF p_party_rec.col41 = FND_API.g_miss_char THEN
2289       x_complete_rec.col41 := l_party_rec.col41;
2290    END IF;
2291 
2292    -- col42
2293    IF p_party_rec.col42 = FND_API.g_miss_char THEN
2294       x_complete_rec.col42 := l_party_rec.col42;
2295    END IF;
2296 
2297    -- col43
2298    IF p_party_rec.col43 = FND_API.g_miss_char THEN
2299       x_complete_rec.col43 := l_party_rec.col43;
2300    END IF;
2301 
2302    -- col44
2303    IF p_party_rec.col44 = FND_API.g_miss_char THEN
2304       x_complete_rec.col44 := l_party_rec.col44;
2305    END IF;
2306 
2307    -- col45
2308    IF p_party_rec.col45 = FND_API.g_miss_char THEN
2309       x_complete_rec.col45 := l_party_rec.col45;
2310    END IF;
2311 
2312    -- col46
2313    IF p_party_rec.col46 = FND_API.g_miss_char THEN
2314       x_complete_rec.col46 := l_party_rec.col46;
2315    END IF;
2316 
2317    -- col47
2318    IF p_party_rec.col47 = FND_API.g_miss_char THEN
2319       x_complete_rec.col47 := l_party_rec.col47;
2320    END IF;
2321 
2322    -- col48
2323    IF p_party_rec.col48 = FND_API.g_miss_char THEN
2324       x_complete_rec.col48 := l_party_rec.col48;
2325    END IF;
2326 
2327    -- col49
2328    IF p_party_rec.col49 = FND_API.g_miss_char THEN
2329       x_complete_rec.col49 := l_party_rec.col49;
2330    END IF;
2331 
2332    -- col50
2333    IF p_party_rec.col50 = FND_API.g_miss_char THEN
2334       x_complete_rec.col50 := l_party_rec.col50;
2335    END IF;
2336 
2337    -- col51
2338    IF p_party_rec.col51 = FND_API.g_miss_char THEN
2339       x_complete_rec.col51 := l_party_rec.col51;
2340    END IF;
2341 
2342    -- col52
2343    IF p_party_rec.col52 = FND_API.g_miss_char THEN
2344       x_complete_rec.col52 := l_party_rec.col52;
2345    END IF;
2346 
2347    -- col53
2348    IF p_party_rec.col53 = FND_API.g_miss_char THEN
2349       x_complete_rec.col53 := l_party_rec.col53;
2350    END IF;
2351 
2352    -- col54
2353    IF p_party_rec.col54 = FND_API.g_miss_char THEN
2354       x_complete_rec.col54 := l_party_rec.col54;
2355    END IF;
2356 
2357    -- col55
2358    IF p_party_rec.col55 = FND_API.g_miss_char THEN
2359       x_complete_rec.col55 := l_party_rec.col55;
2360    END IF;
2361 
2362    -- col56
2363    IF p_party_rec.col56 = FND_API.g_miss_char THEN
2364       x_complete_rec.col56 := l_party_rec.col56;
2365    END IF;
2366 
2367    -- col57
2368    IF p_party_rec.col57 = FND_API.g_miss_char THEN
2369       x_complete_rec.col57 := l_party_rec.col57;
2370    END IF;
2371 
2372    -- col58
2373    IF p_party_rec.col58 = FND_API.g_miss_char THEN
2374       x_complete_rec.col58 := l_party_rec.col58;
2375    END IF;
2376 
2377    -- col59
2378    IF p_party_rec.col59 = FND_API.g_miss_char THEN
2379       x_complete_rec.col59 := l_party_rec.col59;
2380    END IF;
2381 
2382    -- col60
2383    IF p_party_rec.col60 = FND_API.g_miss_char THEN
2384       x_complete_rec.col60 := l_party_rec.col60;
2385    END IF;
2386 
2387    -- col61
2388    IF p_party_rec.col61 = FND_API.g_miss_char THEN
2389       x_complete_rec.col61 := l_party_rec.col61;
2390    END IF;
2391 
2392    -- col62
2393    IF p_party_rec.col62 = FND_API.g_miss_char THEN
2394       x_complete_rec.col62 := l_party_rec.col62;
2395    END IF;
2396 
2397    -- col63
2401 
2398    IF p_party_rec.col63 = FND_API.g_miss_char THEN
2399       x_complete_rec.col63 := l_party_rec.col63;
2400    END IF;
2402    -- col64
2403    IF p_party_rec.col64 = FND_API.g_miss_char THEN
2404       x_complete_rec.col64 := l_party_rec.col64;
2405    END IF;
2406 
2407    -- col65
2408    IF p_party_rec.col65 = FND_API.g_miss_char THEN
2409       x_complete_rec.col65 := l_party_rec.col65;
2410    END IF;
2411 
2412    -- col66
2413    IF p_party_rec.col66 = FND_API.g_miss_char THEN
2414       x_complete_rec.col66 := l_party_rec.col66;
2415    END IF;
2416 
2417    -- col67
2418    IF p_party_rec.col67 = FND_API.g_miss_char THEN
2419       x_complete_rec.col67 := l_party_rec.col67;
2420    END IF;
2421 
2422    -- col68
2423    IF p_party_rec.col68 = FND_API.g_miss_char THEN
2424       x_complete_rec.col68 := l_party_rec.col68;
2425    END IF;
2426 
2427    -- col69
2428    IF p_party_rec.col69 = FND_API.g_miss_char THEN
2429       x_complete_rec.col69 := l_party_rec.col69;
2430    END IF;
2431 
2432    -- col70
2433    IF p_party_rec.col70 = FND_API.g_miss_char THEN
2434       x_complete_rec.col70 := l_party_rec.col70;
2435    END IF;
2436 
2437    -- col71
2438    IF p_party_rec.col71 = FND_API.g_miss_char THEN
2439       x_complete_rec.col71 := l_party_rec.col71;
2440    END IF;
2441 
2442    -- col72
2443    IF p_party_rec.col72 = FND_API.g_miss_char THEN
2444       x_complete_rec.col72 := l_party_rec.col72;
2445    END IF;
2446 
2447    -- col73
2448    IF p_party_rec.col73 = FND_API.g_miss_char THEN
2449       x_complete_rec.col73 := l_party_rec.col73;
2450    END IF;
2451 
2452    -- col74
2453    IF p_party_rec.col74 = FND_API.g_miss_char THEN
2454       x_complete_rec.col74 := l_party_rec.col74;
2455    END IF;
2456 
2457    -- col75
2458    IF p_party_rec.col75 = FND_API.g_miss_char THEN
2459       x_complete_rec.col75 := l_party_rec.col75;
2460    END IF;
2461 
2462    -- col76
2463    IF p_party_rec.col76 = FND_API.g_miss_char THEN
2464       x_complete_rec.col76 := l_party_rec.col76;
2465    END IF;
2466 
2467    -- col77
2468    IF p_party_rec.col77 = FND_API.g_miss_char THEN
2469       x_complete_rec.col77 := l_party_rec.col77;
2470    END IF;
2471 
2472    -- col78
2473    IF p_party_rec.col78 = FND_API.g_miss_char THEN
2474       x_complete_rec.col78 := l_party_rec.col78;
2475    END IF;
2476 
2477    -- col79
2478    IF p_party_rec.col79 = FND_API.g_miss_char THEN
2479       x_complete_rec.col79 := l_party_rec.col79;
2480    END IF;
2481 
2482    -- col80
2483    IF p_party_rec.col80 = FND_API.g_miss_char THEN
2484       x_complete_rec.col80 := l_party_rec.col80;
2485    END IF;
2486 
2487    -- col81
2488    IF p_party_rec.col81 = FND_API.g_miss_char THEN
2489       x_complete_rec.col81 := l_party_rec.col81;
2490    END IF;
2491 
2492    -- col82
2493    IF p_party_rec.col82 = FND_API.g_miss_char THEN
2494       x_complete_rec.col82 := l_party_rec.col82;
2495    END IF;
2496 
2497    -- col83
2498    IF p_party_rec.col83 = FND_API.g_miss_char THEN
2499       x_complete_rec.col83 := l_party_rec.col83;
2500    END IF;
2501 
2502    -- col84
2503    IF p_party_rec.col84 = FND_API.g_miss_char THEN
2504       x_complete_rec.col84 := l_party_rec.col84;
2505    END IF;
2506 
2507    -- col85
2508    IF p_party_rec.col85 = FND_API.g_miss_char THEN
2509       x_complete_rec.col85 := l_party_rec.col85;
2510    END IF;
2511 
2512    -- col86
2513    IF p_party_rec.col86 = FND_API.g_miss_char THEN
2514       x_complete_rec.col86 := l_party_rec.col86;
2515    END IF;
2516 
2517    -- col87
2518    IF p_party_rec.col87 = FND_API.g_miss_char THEN
2519       x_complete_rec.col87 := l_party_rec.col87;
2520    END IF;
2521 
2522    -- col88
2523    IF p_party_rec.col88 = FND_API.g_miss_char THEN
2524       x_complete_rec.col88 := l_party_rec.col88;
2525    END IF;
2526 
2527    -- col89
2528    IF p_party_rec.col89 = FND_API.g_miss_char THEN
2529       x_complete_rec.col89 := l_party_rec.col89;
2530    END IF;
2531 
2532    -- col90
2533    IF p_party_rec.col90 = FND_API.g_miss_char THEN
2534       x_complete_rec.col90 := l_party_rec.col90;
2535    END IF;
2536 
2537    -- col91
2538    IF p_party_rec.col91 = FND_API.g_miss_char THEN
2539       x_complete_rec.col91 := l_party_rec.col91;
2540    END IF;
2541 
2542    -- col92
2543    IF p_party_rec.col92 = FND_API.g_miss_char THEN
2544       x_complete_rec.col92 := l_party_rec.col92;
2545    END IF;
2546 
2547    -- col93
2548    IF p_party_rec.col93 = FND_API.g_miss_char THEN
2549       x_complete_rec.col93 := l_party_rec.col93;
2550    END IF;
2551 
2552    -- col94
2553    IF p_party_rec.col94 = FND_API.g_miss_char THEN
2554       x_complete_rec.col94 := l_party_rec.col94;
2555    END IF;
2556 
2557    -- col95
2558    IF p_party_rec.col95 = FND_API.g_miss_char THEN
2559       x_complete_rec.col95 := l_party_rec.col95;
2560    END IF;
2561 
2562    -- col96
2563    IF p_party_rec.col96 = FND_API.g_miss_char THEN
2564       x_complete_rec.col96 := l_party_rec.col96;
2568    IF p_party_rec.col97 = FND_API.g_miss_char THEN
2565    END IF;
2566 
2567    -- col97
2569       x_complete_rec.col97 := l_party_rec.col97;
2570    END IF;
2571 
2572    -- col98
2573    IF p_party_rec.col98 = FND_API.g_miss_char THEN
2574       x_complete_rec.col98 := l_party_rec.col98;
2575    END IF;
2576 
2577    -- col99
2578    IF p_party_rec.col99 = FND_API.g_miss_char THEN
2579       x_complete_rec.col99 := l_party_rec.col99;
2580    END IF;
2581 
2582    -- col100
2583    IF p_party_rec.col100 = FND_API.g_miss_char THEN
2584       x_complete_rec.col100 := l_party_rec.col100;
2585    END IF;
2586 
2587    -- col101
2588    IF p_party_rec.col101 = FND_API.g_miss_char THEN
2589       x_complete_rec.col101 := l_party_rec.col101;
2590    END IF;
2591 
2592    -- col102
2593    IF p_party_rec.col102 = FND_API.g_miss_char THEN
2594       x_complete_rec.col102 := l_party_rec.col102;
2595    END IF;
2596 
2597    -- col103
2598    IF p_party_rec.col103 = FND_API.g_miss_char THEN
2599       x_complete_rec.col103 := l_party_rec.col103;
2600    END IF;
2601 
2602    -- col104
2603    IF p_party_rec.col104 = FND_API.g_miss_char THEN
2604       x_complete_rec.col104 := l_party_rec.col104;
2605    END IF;
2606 
2607    -- col105
2608    IF p_party_rec.col105 = FND_API.g_miss_char THEN
2609       x_complete_rec.col105 := l_party_rec.col105;
2610    END IF;
2611 
2612    -- col106
2613    IF p_party_rec.col106 = FND_API.g_miss_char THEN
2614       x_complete_rec.col106 := l_party_rec.col106;
2615    END IF;
2616 
2617    -- col107
2618    IF p_party_rec.col107 = FND_API.g_miss_char THEN
2619       x_complete_rec.col107 := l_party_rec.col107;
2620    END IF;
2621 
2622    -- col108
2623    IF p_party_rec.col108 = FND_API.g_miss_char THEN
2624       x_complete_rec.col108 := l_party_rec.col108;
2625    END IF;
2626 
2627    -- col109
2628    IF p_party_rec.col109 = FND_API.g_miss_char THEN
2629       x_complete_rec.col109 := l_party_rec.col109;
2630    END IF;
2631 
2632    -- col110
2633    IF p_party_rec.col110 = FND_API.g_miss_char THEN
2634       x_complete_rec.col110 := l_party_rec.col110;
2635    END IF;
2636 
2637    -- col111
2638    IF p_party_rec.col111 = FND_API.g_miss_char THEN
2639       x_complete_rec.col111 := l_party_rec.col111;
2640    END IF;
2641 
2642    -- col112
2643    IF p_party_rec.col112 = FND_API.g_miss_char THEN
2644       x_complete_rec.col112 := l_party_rec.col112;
2645    END IF;
2646 
2647    -- col113
2648    IF p_party_rec.col113 = FND_API.g_miss_char THEN
2649       x_complete_rec.col113 := l_party_rec.col113;
2650    END IF;
2651 
2652    -- col114
2653    IF p_party_rec.col114 = FND_API.g_miss_char THEN
2654       x_complete_rec.col114 := l_party_rec.col114;
2655    END IF;
2656 
2657    -- col115
2658    IF p_party_rec.col115 = FND_API.g_miss_char THEN
2659       x_complete_rec.col115 := l_party_rec.col115;
2660    END IF;
2661 
2662    -- col116
2663    IF p_party_rec.col116 = FND_API.g_miss_char THEN
2664       x_complete_rec.col116 := l_party_rec.col116;
2665    END IF;
2666 
2667    -- col117
2668    IF p_party_rec.col117 = FND_API.g_miss_char THEN
2669       x_complete_rec.col117 := l_party_rec.col117;
2670    END IF;
2671 
2672    -- col118
2673    IF p_party_rec.col118 = FND_API.g_miss_char THEN
2674       x_complete_rec.col118 := l_party_rec.col118;
2675    END IF;
2676 
2677    -- col119
2678    IF p_party_rec.col119 = FND_API.g_miss_char THEN
2679       x_complete_rec.col119 := l_party_rec.col119;
2680    END IF;
2681 
2682    -- col120
2683    IF p_party_rec.col120 = FND_API.g_miss_char THEN
2684       x_complete_rec.col120 := l_party_rec.col120;
2685    END IF;
2686 
2687    -- col121
2688    IF p_party_rec.col121 = FND_API.g_miss_char THEN
2689       x_complete_rec.col121 := l_party_rec.col121;
2690    END IF;
2691 
2692    -- col122
2693    IF p_party_rec.col122 = FND_API.g_miss_char THEN
2694       x_complete_rec.col122 := l_party_rec.col122;
2695    END IF;
2696 
2697    -- col123
2698    IF p_party_rec.col123 = FND_API.g_miss_char THEN
2699       x_complete_rec.col123 := l_party_rec.col123;
2700    END IF;
2701 
2702    -- col124
2703    IF p_party_rec.col124 = FND_API.g_miss_char THEN
2704       x_complete_rec.col124 := l_party_rec.col124;
2705    END IF;
2706 
2707    -- col125
2708    IF p_party_rec.col125 = FND_API.g_miss_char THEN
2709       x_complete_rec.col125 := l_party_rec.col125;
2710    END IF;
2711 
2712    -- col126
2713    IF p_party_rec.col126 = FND_API.g_miss_char THEN
2714       x_complete_rec.col126 := l_party_rec.col126;
2715    END IF;
2716 
2717    -- col127
2718    IF p_party_rec.col127 = FND_API.g_miss_char THEN
2719       x_complete_rec.col127 := l_party_rec.col127;
2720    END IF;
2721 
2722    -- col128
2723    IF p_party_rec.col128 = FND_API.g_miss_char THEN
2724       x_complete_rec.col128 := l_party_rec.col128;
2725    END IF;
2726 
2727    -- col129
2728    IF p_party_rec.col129 = FND_API.g_miss_char THEN
2729       x_complete_rec.col129 := l_party_rec.col129;
2730    END IF;
2731 
2732    -- col130
2733    IF p_party_rec.col130 = FND_API.g_miss_char THEN
2737    -- col131
2734       x_complete_rec.col130 := l_party_rec.col130;
2735    END IF;
2736 
2738    IF p_party_rec.col131 = FND_API.g_miss_char THEN
2739       x_complete_rec.col131 := l_party_rec.col131;
2740    END IF;
2741 
2742    -- col132
2743    IF p_party_rec.col132 = FND_API.g_miss_char THEN
2744       x_complete_rec.col132 := l_party_rec.col132;
2745    END IF;
2746 
2747    -- col133
2748    IF p_party_rec.col133 = FND_API.g_miss_char THEN
2749       x_complete_rec.col133 := l_party_rec.col133;
2750    END IF;
2751 
2752    -- col134
2753    IF p_party_rec.col134 = FND_API.g_miss_char THEN
2754       x_complete_rec.col134 := l_party_rec.col134;
2755    END IF;
2756 
2757    -- col135
2758    IF p_party_rec.col135 = FND_API.g_miss_char THEN
2759       x_complete_rec.col135 := l_party_rec.col135;
2760    END IF;
2761 
2762    -- col136
2763    IF p_party_rec.col136 = FND_API.g_miss_char THEN
2764       x_complete_rec.col136 := l_party_rec.col136;
2765    END IF;
2766 
2767    -- col137
2768    IF p_party_rec.col137 = FND_API.g_miss_char THEN
2769       x_complete_rec.col137 := l_party_rec.col137;
2770    END IF;
2771 
2772    -- col138
2773    IF p_party_rec.col138 = FND_API.g_miss_char THEN
2774       x_complete_rec.col138 := l_party_rec.col138;
2775    END IF;
2776 
2777    -- col139
2778    IF p_party_rec.col139 = FND_API.g_miss_char THEN
2779       x_complete_rec.col139 := l_party_rec.col139;
2780    END IF;
2781 
2782    -- col140
2783    IF p_party_rec.col140 = FND_API.g_miss_char THEN
2784       x_complete_rec.col140 := l_party_rec.col140;
2785    END IF;
2786 
2787    -- col141
2788    IF p_party_rec.col141 = FND_API.g_miss_char THEN
2789       x_complete_rec.col141 := l_party_rec.col141;
2790    END IF;
2791 
2792    -- col142
2793    IF p_party_rec.col142 = FND_API.g_miss_char THEN
2794       x_complete_rec.col142 := l_party_rec.col142;
2795    END IF;
2796 
2797    -- col143
2798    IF p_party_rec.col143 = FND_API.g_miss_char THEN
2799       x_complete_rec.col143 := l_party_rec.col143;
2800    END IF;
2801 
2802    -- col144
2803    IF p_party_rec.col144 = FND_API.g_miss_char THEN
2804       x_complete_rec.col144 := l_party_rec.col144;
2805    END IF;
2806 
2807    -- col145
2808    IF p_party_rec.col145 = FND_API.g_miss_char THEN
2809       x_complete_rec.col145 := l_party_rec.col145;
2810    END IF;
2811 
2812    -- col146
2813    IF p_party_rec.col146 = FND_API.g_miss_char THEN
2814       x_complete_rec.col146 := l_party_rec.col146;
2815    END IF;
2816 
2817    -- col147
2818    IF p_party_rec.col147 = FND_API.g_miss_char THEN
2819       x_complete_rec.col147 := l_party_rec.col147;
2820    END IF;
2821 
2822    -- col148
2823    IF p_party_rec.col148 = FND_API.g_miss_char THEN
2824       x_complete_rec.col148 := l_party_rec.col148;
2825    END IF;
2826 
2827    -- col149
2828    IF p_party_rec.col149 = FND_API.g_miss_char THEN
2829       x_complete_rec.col149 := l_party_rec.col149;
2830    END IF;
2831 
2832    -- col150
2833    IF p_party_rec.col150 = FND_API.g_miss_char THEN
2834       x_complete_rec.col150 := l_party_rec.col150;
2835    END IF;
2836 
2837    -- col151
2838    IF p_party_rec.col151 = FND_API.g_miss_char THEN
2839       x_complete_rec.col151 := l_party_rec.col151;
2840    END IF;
2841 
2842    -- col152
2843    IF p_party_rec.col152 = FND_API.g_miss_char THEN
2844       x_complete_rec.col152 := l_party_rec.col152;
2845    END IF;
2846 
2847    -- col153
2848    IF p_party_rec.col153 = FND_API.g_miss_char THEN
2849       x_complete_rec.col153 := l_party_rec.col153;
2850    END IF;
2851 
2852    -- col154
2853    IF p_party_rec.col154 = FND_API.g_miss_char THEN
2854       x_complete_rec.col154 := l_party_rec.col154;
2855    END IF;
2856 
2857    -- col155
2858    IF p_party_rec.col155 = FND_API.g_miss_char THEN
2859       x_complete_rec.col155 := l_party_rec.col155;
2860    END IF;
2861 
2862    -- col156
2863    IF p_party_rec.col156 = FND_API.g_miss_char THEN
2864       x_complete_rec.col156 := l_party_rec.col156;
2865    END IF;
2866 
2867    -- col157
2868    IF p_party_rec.col157 = FND_API.g_miss_char THEN
2869       x_complete_rec.col157 := l_party_rec.col157;
2870    END IF;
2871 
2872    -- col158
2873    IF p_party_rec.col158 = FND_API.g_miss_char THEN
2874       x_complete_rec.col158 := l_party_rec.col158;
2875    END IF;
2876 
2877    -- col159
2878    IF p_party_rec.col159 = FND_API.g_miss_char THEN
2879       x_complete_rec.col159 := l_party_rec.col159;
2880    END IF;
2881 
2882    -- col160
2883    IF p_party_rec.col160 = FND_API.g_miss_char THEN
2884       x_complete_rec.col160 := l_party_rec.col160;
2885    END IF;
2886 
2887    -- col161
2888    IF p_party_rec.col161 = FND_API.g_miss_char THEN
2889       x_complete_rec.col161 := l_party_rec.col161;
2890    END IF;
2891 
2892    -- col162
2893    IF p_party_rec.col162 = FND_API.g_miss_char THEN
2894       x_complete_rec.col162 := l_party_rec.col162;
2895    END IF;
2896 
2897    -- col163
2898    IF p_party_rec.col163 = FND_API.g_miss_char THEN
2899       x_complete_rec.col163 := l_party_rec.col163;
2900    END IF;
2901 
2902    -- col164
2906 
2903    IF p_party_rec.col164 = FND_API.g_miss_char THEN
2904       x_complete_rec.col164 := l_party_rec.col164;
2905    END IF;
2907    -- col165
2908    IF p_party_rec.col165 = FND_API.g_miss_char THEN
2909       x_complete_rec.col165 := l_party_rec.col165;
2910    END IF;
2911 
2912    -- col166
2913    IF p_party_rec.col166 = FND_API.g_miss_char THEN
2914       x_complete_rec.col166 := l_party_rec.col166;
2915    END IF;
2916 
2917    -- col167
2918    IF p_party_rec.col167 = FND_API.g_miss_char THEN
2919       x_complete_rec.col167 := l_party_rec.col167;
2920    END IF;
2921 
2922    -- col168
2923    IF p_party_rec.col168 = FND_API.g_miss_char THEN
2924       x_complete_rec.col168 := l_party_rec.col168;
2925    END IF;
2926 
2927    -- col169
2928    IF p_party_rec.col169 = FND_API.g_miss_char THEN
2929       x_complete_rec.col169 := l_party_rec.col169;
2930    END IF;
2931 
2932    -- col170
2933    IF p_party_rec.col170 = FND_API.g_miss_char THEN
2934       x_complete_rec.col170 := l_party_rec.col170;
2935    END IF;
2936 
2937    -- col171
2938    IF p_party_rec.col171 = FND_API.g_miss_char THEN
2939       x_complete_rec.col171 := l_party_rec.col171;
2940    END IF;
2941 
2942    -- col172
2943    IF p_party_rec.col172 = FND_API.g_miss_char THEN
2944       x_complete_rec.col172 := l_party_rec.col172;
2945    END IF;
2946 
2947    -- col173
2948    IF p_party_rec.col173 = FND_API.g_miss_char THEN
2949       x_complete_rec.col173 := l_party_rec.col173;
2950    END IF;
2951 
2952    -- col174
2953    IF p_party_rec.col174 = FND_API.g_miss_char THEN
2954       x_complete_rec.col174 := l_party_rec.col174;
2955    END IF;
2956 
2957    -- col175
2958    IF p_party_rec.col175 = FND_API.g_miss_char THEN
2959       x_complete_rec.col175 := l_party_rec.col175;
2960    END IF;
2961 
2962    -- col176
2963    IF p_party_rec.col176 = FND_API.g_miss_char THEN
2964       x_complete_rec.col176 := l_party_rec.col176;
2965    END IF;
2966 
2967    -- col177
2968    IF p_party_rec.col177 = FND_API.g_miss_char THEN
2969       x_complete_rec.col177 := l_party_rec.col177;
2970    END IF;
2971 
2972    -- col178
2973    IF p_party_rec.col178 = FND_API.g_miss_char THEN
2974       x_complete_rec.col178 := l_party_rec.col178;
2975    END IF;
2976 
2977    -- col179
2978    IF p_party_rec.col179 = FND_API.g_miss_char THEN
2979       x_complete_rec.col179 := l_party_rec.col179;
2980    END IF;
2981 
2982    -- col180
2983    IF p_party_rec.col180 = FND_API.g_miss_char THEN
2984       x_complete_rec.col180 := l_party_rec.col180;
2985    END IF;
2986 
2987    -- col181
2988    IF p_party_rec.col181 = FND_API.g_miss_char THEN
2989       x_complete_rec.col181 := l_party_rec.col181;
2990    END IF;
2991 
2992    -- col182
2993    IF p_party_rec.col182 = FND_API.g_miss_char THEN
2994       x_complete_rec.col182 := l_party_rec.col182;
2995    END IF;
2996 
2997    -- col183
2998    IF p_party_rec.col183 = FND_API.g_miss_char THEN
2999       x_complete_rec.col183 := l_party_rec.col183;
3000    END IF;
3001 
3002    -- col184
3003    IF p_party_rec.col184 = FND_API.g_miss_char THEN
3004       x_complete_rec.col184 := l_party_rec.col184;
3005    END IF;
3006 
3007    -- col185
3008    IF p_party_rec.col185 = FND_API.g_miss_char THEN
3009       x_complete_rec.col185 := l_party_rec.col185;
3010    END IF;
3011 
3012    -- col186
3013    IF p_party_rec.col186 = FND_API.g_miss_char THEN
3014       x_complete_rec.col186 := l_party_rec.col186;
3015    END IF;
3016 
3017    -- col187
3018    IF p_party_rec.col187 = FND_API.g_miss_char THEN
3019       x_complete_rec.col187 := l_party_rec.col187;
3020    END IF;
3021 
3022    -- col188
3023    IF p_party_rec.col188 = FND_API.g_miss_char THEN
3024       x_complete_rec.col188 := l_party_rec.col188;
3025    END IF;
3026 
3027    -- col189
3028    IF p_party_rec.col189 = FND_API.g_miss_char THEN
3029       x_complete_rec.col189 := l_party_rec.col189;
3030    END IF;
3031 
3032    -- col190
3033    IF p_party_rec.col190 = FND_API.g_miss_char THEN
3034       x_complete_rec.col190 := l_party_rec.col190;
3035    END IF;
3036 
3037    -- col191
3038    IF p_party_rec.col191 = FND_API.g_miss_char THEN
3039       x_complete_rec.col191 := l_party_rec.col191;
3040    END IF;
3041 
3042    -- col192
3043    IF p_party_rec.col192 = FND_API.g_miss_char THEN
3044       x_complete_rec.col192 := l_party_rec.col192;
3045    END IF;
3046 
3047    -- col193
3048    IF p_party_rec.col193 = FND_API.g_miss_char THEN
3049       x_complete_rec.col193 := l_party_rec.col193;
3050    END IF;
3051 
3052    -- col194
3053    IF p_party_rec.col194 = FND_API.g_miss_char THEN
3054       x_complete_rec.col194 := l_party_rec.col194;
3055    END IF;
3056 
3057    -- col195
3058    IF p_party_rec.col195 = FND_API.g_miss_char THEN
3059       x_complete_rec.col195 := l_party_rec.col195;
3060    END IF;
3061 
3062    -- col196
3063    IF p_party_rec.col196 = FND_API.g_miss_char THEN
3064       x_complete_rec.col196 := l_party_rec.col196;
3065    END IF;
3066 
3067    -- col197
3071 
3068    IF p_party_rec.col197 = FND_API.g_miss_char THEN
3069       x_complete_rec.col197 := l_party_rec.col197;
3070    END IF;
3072    -- col198
3073    IF p_party_rec.col198 = FND_API.g_miss_char THEN
3074       x_complete_rec.col198 := l_party_rec.col198;
3075    END IF;
3076 
3077    -- col199
3078    IF p_party_rec.col199 = FND_API.g_miss_char THEN
3079       x_complete_rec.col199 := l_party_rec.col199;
3080    END IF;
3081 
3082    -- col200
3083    IF p_party_rec.col200 = FND_API.g_miss_char THEN
3084       x_complete_rec.col200 := l_party_rec.col200;
3085    END IF;
3086 
3087    -- col201
3088    IF p_party_rec.col201 = FND_API.g_miss_char THEN
3089       x_complete_rec.col201 := l_party_rec.col201;
3090    END IF;
3091 
3092    -- col202
3093    IF p_party_rec.col202 = FND_API.g_miss_char THEN
3094       x_complete_rec.col202 := l_party_rec.col202;
3095    END IF;
3096 
3097    -- col203
3098    IF p_party_rec.col203 = FND_API.g_miss_char THEN
3099       x_complete_rec.col203 := l_party_rec.col203;
3100    END IF;
3101 
3102    -- col204
3103    IF p_party_rec.col204 = FND_API.g_miss_char THEN
3104       x_complete_rec.col204 := l_party_rec.col204;
3105    END IF;
3106 
3107    -- col205
3108    IF p_party_rec.col205 = FND_API.g_miss_char THEN
3109       x_complete_rec.col205 := l_party_rec.col205;
3110    END IF;
3111 
3112    -- col206
3113    IF p_party_rec.col206 = FND_API.g_miss_char THEN
3114       x_complete_rec.col206 := l_party_rec.col206;
3115    END IF;
3116 
3117    -- col207
3118    IF p_party_rec.col207 = FND_API.g_miss_char THEN
3119       x_complete_rec.col207 := l_party_rec.col207;
3120    END IF;
3121 
3122    -- col208
3123    IF p_party_rec.col208 = FND_API.g_miss_char THEN
3124       x_complete_rec.col208 := l_party_rec.col208;
3125    END IF;
3126 
3127    -- col209
3128    IF p_party_rec.col209 = FND_API.g_miss_char THEN
3129       x_complete_rec.col209 := l_party_rec.col209;
3130    END IF;
3131 
3132    -- col210
3133    IF p_party_rec.col210 = FND_API.g_miss_char THEN
3134       x_complete_rec.col210 := l_party_rec.col210;
3135    END IF;
3136 
3137    -- col211
3138    IF p_party_rec.col211 = FND_API.g_miss_char THEN
3139       x_complete_rec.col211 := l_party_rec.col211;
3140    END IF;
3141 
3142    -- col212
3143    IF p_party_rec.col212 = FND_API.g_miss_char THEN
3144       x_complete_rec.col212 := l_party_rec.col212;
3145    END IF;
3146 
3147    -- col213
3148    IF p_party_rec.col213 = FND_API.g_miss_char THEN
3149       x_complete_rec.col213 := l_party_rec.col213;
3150    END IF;
3151 
3152    -- col214
3153    IF p_party_rec.col214 = FND_API.g_miss_char THEN
3154       x_complete_rec.col214 := l_party_rec.col214;
3155    END IF;
3156 
3157    -- col215
3158    IF p_party_rec.col215 = FND_API.g_miss_char THEN
3159       x_complete_rec.col215 := l_party_rec.col215;
3160    END IF;
3161 
3162    -- col216
3163    IF p_party_rec.col216 = FND_API.g_miss_char THEN
3164       x_complete_rec.col216 := l_party_rec.col216;
3165    END IF;
3166 
3167    -- col217
3168    IF p_party_rec.col217 = FND_API.g_miss_char THEN
3169       x_complete_rec.col217 := l_party_rec.col217;
3170    END IF;
3171 
3172    -- col218
3173    IF p_party_rec.col218 = FND_API.g_miss_char THEN
3174       x_complete_rec.col218 := l_party_rec.col218;
3175    END IF;
3176 
3177    -- col219
3178    IF p_party_rec.col219 = FND_API.g_miss_char THEN
3179       x_complete_rec.col219 := l_party_rec.col219;
3180    END IF;
3181 
3182    -- col220
3183    IF p_party_rec.col220 = FND_API.g_miss_char THEN
3184       x_complete_rec.col220 := l_party_rec.col220;
3185    END IF;
3186 
3187    -- col221
3188    IF p_party_rec.col221 = FND_API.g_miss_char THEN
3189       x_complete_rec.col221 := l_party_rec.col221;
3190    END IF;
3191 
3192    -- col222
3193    IF p_party_rec.col222 = FND_API.g_miss_char THEN
3194       x_complete_rec.col222 := l_party_rec.col222;
3195    END IF;
3196 
3197    -- col223
3198    IF p_party_rec.col223 = FND_API.g_miss_char THEN
3199       x_complete_rec.col223 := l_party_rec.col223;
3200    END IF;
3201 
3202    -- col224
3203    IF p_party_rec.col224 = FND_API.g_miss_char THEN
3204       x_complete_rec.col224 := l_party_rec.col224;
3205    END IF;
3206 
3207    -- col225
3208    IF p_party_rec.col225 = FND_API.g_miss_char THEN
3209       x_complete_rec.col225 := l_party_rec.col225;
3210    END IF;
3211 
3212    -- col226
3213    IF p_party_rec.col226 = FND_API.g_miss_char THEN
3214       x_complete_rec.col226 := l_party_rec.col226;
3215    END IF;
3216 
3217    -- col227
3218    IF p_party_rec.col227 = FND_API.g_miss_char THEN
3219       x_complete_rec.col227 := l_party_rec.col227;
3220    END IF;
3221 
3222    -- col228
3223    IF p_party_rec.col228 = FND_API.g_miss_char THEN
3224       x_complete_rec.col228 := l_party_rec.col228;
3225    END IF;
3226 
3227    -- col229
3228    IF p_party_rec.col229 = FND_API.g_miss_char THEN
3229       x_complete_rec.col229 := l_party_rec.col229;
3233    IF p_party_rec.col230 = FND_API.g_miss_char THEN
3230    END IF;
3231 
3232    -- col230
3234       x_complete_rec.col230 := l_party_rec.col230;
3235    END IF;
3236 
3237    -- col231
3238    IF p_party_rec.col231 = FND_API.g_miss_char THEN
3239       x_complete_rec.col231 := l_party_rec.col231;
3240    END IF;
3241 
3242    -- col232
3243    IF p_party_rec.col232 = FND_API.g_miss_char THEN
3244       x_complete_rec.col232 := l_party_rec.col232;
3245    END IF;
3246 
3247    -- col233
3248    IF p_party_rec.col233 = FND_API.g_miss_char THEN
3249       x_complete_rec.col233 := l_party_rec.col233;
3250    END IF;
3251 
3252    -- col234
3253    IF p_party_rec.col234 = FND_API.g_miss_char THEN
3254       x_complete_rec.col234 := l_party_rec.col234;
3255    END IF;
3256 
3257    -- col235
3258    IF p_party_rec.col235 = FND_API.g_miss_char THEN
3259       x_complete_rec.col235 := l_party_rec.col235;
3260    END IF;
3261 
3262    -- col236
3263    IF p_party_rec.col236 = FND_API.g_miss_char THEN
3264       x_complete_rec.col236 := l_party_rec.col236;
3265    END IF;
3266 
3267    -- col237
3268    IF p_party_rec.col237 = FND_API.g_miss_char THEN
3269       x_complete_rec.col237 := l_party_rec.col237;
3270    END IF;
3271 
3272    -- col238
3273    IF p_party_rec.col238 = FND_API.g_miss_char THEN
3274       x_complete_rec.col238 := l_party_rec.col238;
3275    END IF;
3276 
3277    -- col239
3278    IF p_party_rec.col239 = FND_API.g_miss_char THEN
3279       x_complete_rec.col239 := l_party_rec.col239;
3280    END IF;
3281 
3282    -- col240
3283    IF p_party_rec.col240 = FND_API.g_miss_char THEN
3284       x_complete_rec.col240 := l_party_rec.col240;
3285    END IF;
3286 
3287    -- col241
3288    IF p_party_rec.col241 = FND_API.g_miss_char THEN
3289       x_complete_rec.col241 := l_party_rec.col241;
3290    END IF;
3291 
3292    -- col242
3293    IF p_party_rec.col242 = FND_API.g_miss_char THEN
3294       x_complete_rec.col242 := l_party_rec.col242;
3295    END IF;
3296 
3297    -- col243
3298    IF p_party_rec.col243 = FND_API.g_miss_char THEN
3299       x_complete_rec.col243 := l_party_rec.col243;
3300    END IF;
3301 
3302    -- col244
3303    IF p_party_rec.col244 = FND_API.g_miss_char THEN
3304       x_complete_rec.col244 := l_party_rec.col244;
3305    END IF;
3306 
3307    -- col245
3308    IF p_party_rec.col245 = FND_API.g_miss_char THEN
3309       x_complete_rec.col245 := l_party_rec.col245;
3310    END IF;
3311 
3312    -- col246
3313    IF p_party_rec.col246 = FND_API.g_miss_char THEN
3314       x_complete_rec.col246 := l_party_rec.col246;
3315    END IF;
3316 
3317    -- col247
3318    IF p_party_rec.col247 = FND_API.g_miss_char THEN
3319       x_complete_rec.col247 := l_party_rec.col247;
3320    END IF;
3321 
3322    -- col248
3323    IF p_party_rec.col248 = FND_API.g_miss_char THEN
3324       x_complete_rec.col248 := l_party_rec.col248;
3325    END IF;
3326 
3327    -- col249
3328    IF p_party_rec.col249 = FND_API.g_miss_char THEN
3329       x_complete_rec.col249 := l_party_rec.col249;
3330    END IF;
3331 
3332    -- col250
3333    IF p_party_rec.col250 = FND_API.g_miss_char THEN
3334       x_complete_rec.col250 := l_party_rec.col250;
3335    END IF;
3336 
3337 
3338 END Complete_Party_Rec;
3339 
3340 
3341 ---------------------------------------------------------------------
3342 -- PROCEDURE
3343 --    Check_Party_Req_Items
3344 --
3345 -- PURPOSE
3346 --    Validate that the required columns for the table have values.
3347 --
3348 -- NOTE
3349 --
3350 -- HISTORY
3351 -- 08-Nov-1999 choang      Created as dummy procedure;
3352 ---------------------------------------------------------------------
3353 PROCEDURE Check_Party_Req_Items (
3354    p_party_rec     IN    Party_Rec_Type,
3355    x_return_status   OUT NOCOPY   VARCHAR2
3356 )
3357 IS
3358 BEGIN
3359    x_return_status := FND_API.g_ret_sts_success;
3360 
3361    -- PARTY_ID
3362    IF p_party_rec.party_id IS NULL THEN
3363       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
3364          FND_MESSAGE.set_name ('AMS', 'AMS_PARTY_NO_PARTY_ID');
3365          FND_MSG_PUB.add;
3366       END IF;
3367 
3368       x_return_status := FND_API.g_ret_sts_error;
3369       RETURN;
3370    END IF;
3371 
3372    -- IMPORT_SOURCE_LINE_ID
3373    IF p_party_rec.import_source_line_id IS NULL THEN
3374       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
3375          FND_MESSAGE.set_name ('AMS', 'AMS_PARTY_NO_IMP_SRC_LINE_ID');
3376          FND_MSG_PUB.add;
3377       END IF;
3378 
3379       x_return_status := FND_API.g_ret_sts_error;
3380       RETURN;
3381    END IF;
3382 
3383    -- IMPORT_LIST_HEADER_ID
3384    IF p_party_rec.import_list_header_id IS NULL THEN
3385       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
3386          FND_MESSAGE.set_name ('AMS', 'AMS_PARTY_NO_IMP_LIST_HDR_ID');
3387          FND_MSG_PUB.add;
3388       END IF;
3389 
3390       x_return_status := FND_API.g_ret_sts_error;
3391       RETURN;
3392    END IF;
3393 
3397          FND_MESSAGE.set_name ('AMS', 'AMS_PARTY_NO_LST_SRC_TYPE_ID');
3394    -- LIST_SOURCE_TYPE_ID
3395    IF p_party_rec.list_source_type_id IS NULL THEN
3396       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
3398          FND_MSG_PUB.add;
3399       END IF;
3400 
3401       x_return_status := FND_API.g_ret_sts_error;
3402       RETURN;
3403    END IF;
3404 
3405 END Check_Party_Req_Items;
3406 
3407 
3408 ---------------------------------------------------------------------
3409 -- PROCEDURE
3410 --    Check_Party_UK_Items
3411 --
3412 -- PURPOSE
3413 --    Validate that the uniqueness constraints are met.
3414 --
3415 -- HISTORY
3416 -- 08-Nov-1999 choang      Created.
3417 ---------------------------------------------------------------------
3418 PROCEDURE Check_Party_UK_Items (
3419    p_party_rec       IN    Party_Rec_Type,
3420    p_validation_mode IN    VARCHAR2 := JTF_PLSQL_API.g_create,
3421    x_return_status   OUT NOCOPY   VARCHAR2
3422 )
3423 IS
3424    l_where_clause    VARCHAR2(4000);
3425    l_valid_flag      VARCHAR2(1);
3426 BEGIN
3427    x_return_status := FND_API.g_ret_sts_success;
3428 
3429    -- For Create_Party, when ID is passed in, we need to
3430    -- check if this ID is unique.
3431    IF p_validation_mode = JTF_PLSQL_API.g_create
3432       AND p_party_rec.party_sources_id IS NOT NULL
3433    THEN
3434       IF AMS_Utility_PVT.check_uniqueness (
3435 		      'ams_party_sources',
3436 				'party_sources_id = ' || p_party_rec.party_sources_id
3437 			) = FND_API.g_false
3438 		THEN
3439          IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
3440             FND_MESSAGE.set_name ('AMS', 'AMS_PARTY_DUP_ID');
3441             FND_MSG_PUB.add;
3442          END IF;
3443          x_return_status := FND_API.g_ret_sts_error;
3444          RETURN;
3445       END IF;
3446    END IF;
3447 
3448 END Check_Party_UK_Items;
3449 
3450 
3451 ---------------------------------------------------------------------
3452 -- PROCEDURE
3453 --    Check_Party_FK_Items
3454 --
3455 -- PURPOSE
3456 --    Validate foreign key references.
3457 --
3458 -- HISTORY
3459 -- 08-Nov-1999 choang      Created.
3460 ---------------------------------------------------------------------
3461 PROCEDURE Check_Party_FK_Items (
3462    p_party_rec       IN    Party_Rec_Type,
3463    x_return_status   OUT NOCOPY   VARCHAR2
3464 )
3465 IS
3466    L_LIST_SRC_TYPES_TABLE     CONSTANT VARCHAR2(30) := 'AMS_LIST_SRC_TYPES';
3467    L_LIST_SRC_TYPES_ID        CONSTANT VARCHAR2(30) := 'LIST_SOURCE_TYPE_ID';
3468 BEGIN
3469    x_return_status := FND_API.g_ret_sts_success;
3470 
3471    --
3472    -- PARTY_ID
3473    IF p_party_rec.party_id <> FND_API.g_miss_num THEN
3474       IF AMS_Utility_PVT.check_fk_exists (
3475             p_table_name            => 'HZ_PARTIES',
3476             p_pk_name               => 'PARTY_ID',
3477             p_pk_value              => p_party_rec.party_id,
3478             p_pk_data_type          => AMS_Utility_PVT.g_number
3479          ) = FND_API.g_false THEN
3480          IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
3481             FND_MESSAGE.set_name('AMS', 'AMS_PARTY_BAD_PARTY_ID');
3482             FND_MSG_PUB.add;
3483          END IF;
3484 
3485          x_return_status := FND_API.g_ret_sts_error;
3486          RETURN;
3487       END IF;
3488    END IF;
3489 
3490    --
3491    -- IMPORT_SOURCE_LINE_ID
3492    IF p_party_rec.import_source_line_id <> FND_API.g_miss_num THEN
3493       IF AMS_Utility_PVT.check_fk_exists (
3494             p_table_name            => 'AMS_IMP_SOURCE_LINES',
3495             p_pk_name               => 'IMPORT_SOURCE_LINE_ID',
3496             p_pk_value              => p_party_rec.import_source_line_id,
3497             p_pk_data_type          => AMS_Utility_PVT.g_number
3498          ) = FND_API.g_false THEN
3499          IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
3500             FND_MESSAGE.set_name('AMS', 'AMS_PARTY_BAD_IMP_SRC_LINE_ID');
3501             FND_MSG_PUB.add;
3502          END IF;
3503 
3504          x_return_status := FND_API.g_ret_sts_error;
3505          RETURN;
3506       END IF;
3507    END IF;
3508 
3509    --
3510    -- IMPORT_LIST_HEADER_ID
3511    IF p_party_rec.import_list_header_id <> FND_API.g_miss_num THEN
3512       IF AMS_Utility_PVT.check_fk_exists (
3513             p_table_name            => 'AMS_IMP_LIST_HEADERS_ALL',
3514             p_pk_name               => 'IMPORT_LIST_HEADER_ID',
3515             p_pk_value              => p_party_rec.import_list_header_id,
3516             p_pk_data_type          => AMS_Utility_PVT.g_number
3517          ) = FND_API.g_false THEN
3518          IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
3519             FND_MESSAGE.set_name('AMS', 'AMS_PARTY_BAD_IMP_LIST_HDR_ID');
3520             FND_MSG_PUB.add;
3521          END IF;
3522 
3523          x_return_status := FND_API.g_ret_sts_error;
3524          RETURN;
3525       END IF;
3526    END IF;
3527 
3528    --
3529    -- LIST_SOURCE_TYPE_ID
3530    IF p_party_rec.list_source_type_id <> FND_API.g_miss_num THEN
3531       IF AMS_Utility_PVT.check_fk_exists (
3532             p_table_name            => 'AMS_LIST_SRC_TYPES',
3536          ) = FND_API.g_false THEN
3533             p_pk_name               => 'LIST_SOURCE_TYPE_ID',
3534             p_pk_value              => p_party_rec.list_source_type_id,
3535             p_pk_data_type          => AMS_Utility_PVT.g_number
3537          IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.g_msg_lvl_error) THEN
3538             FND_MESSAGE.set_name('AMS', 'AMS_PARTY_BAD_LST_SRC_TYPE_ID');
3539             FND_MSG_PUB.add;
3540          END IF;
3541 
3542          x_return_status := FND_API.g_ret_sts_error;
3543          RETURN;
3544       END IF;
3545    END IF;
3546 
3547 END Check_Party_FK_Items;
3548 
3549 
3550 ---------------------------------------------------------------------
3551 -- PROCEDURE
3552 --    Check_Party_Lookup_Items
3553 --
3554 -- PURPOSE
3555 --    Validate the existence of the lookup values in AMS_LOOKUPS.
3556 --
3557 -- HISTORY
3558 -- 08-Nov-1999 choang      Created.
3559 ---------------------------------------------------------------------
3560 PROCEDURE Check_Party_Lookup_Items (
3561    p_party_rec       IN    Party_Rec_Type,
3562    x_return_status   OUT NOCOPY   VARCHAR2
3563 )
3564 IS
3565 BEGIN
3566    x_return_status := FND_API.g_ret_sts_success;
3567 END Check_Party_Lookup_Items;
3568 
3569 
3570 ---------------------------------------------------------------------
3571 -- PROCEDURE
3572 --    Check_Party_Flag_Items
3573 --
3574 -- PURPOSE
3575 --    Validate that the flags have proper values.  Proper values
3576 --    for flags are 'Y' and 'N'.
3577 --
3578 -- HISTORY
3579 -- 08-Nov-1999 choang      Created.
3580 ---------------------------------------------------------------------
3581 PROCEDURE Check_Party_Flag_Items (
3582    p_party_rec       IN    Party_Rec_Type,
3583    x_return_status   OUT NOCOPY   VARCHAR2
3584 )
3585 IS
3586 BEGIN
3587    x_return_status := FND_API.g_ret_sts_success;
3588 
3589    --
3590    -- USED_FLAG
3591    IF p_party_rec.used_flag <> FND_API.g_miss_char AND p_party_rec.used_flag IS NOT NULL THEN
3592       IF AMS_Utility_PVT.is_Y_or_N (p_party_rec.used_flag) = FND_API.g_false THEN
3593          IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
3594             FND_MESSAGE.set_name ('AMS', 'AMS_PARTY_BAD_USED_FLAG');
3595             FND_MSG_PUB.add;
3596          END IF;
3597 
3598          x_return_status := FND_API.g_ret_sts_error;
3599          RETURN;
3600       END IF;
3601    END IF;
3602 
3603    --
3604    -- OVERLAY_FLAG
3605    IF p_party_rec.overlay_flag <> FND_API.g_miss_char AND p_party_rec.overlay_flag IS NOT NULL THEN
3606       IF AMS_Utility_PVT.is_Y_or_N (p_party_rec.overlay_flag) = FND_API.g_false THEN
3607          IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
3608             FND_MESSAGE.set_name ('AMS', 'AMS_PARTY_BAD_OVERLAY_FLAG');
3609             FND_MSG_PUB.add;
3610          END IF;
3611 
3612          x_return_status := FND_API.g_ret_sts_error;
3613          RETURN;
3614       END IF;
3615    END IF;
3616 
3617 END Check_Party_Flag_Items;
3618 
3619 
3620 
3621 PROCEDURE Refresh_Key (
3622    errbuf         OUT NOCOPY VARCHAR2,
3623    retcode        OUT NOCOPY NUMBER,
3624    p_word_replacement_flag IN VARCHAR2,
3625    p_commit_flag           IN VARCHAR2
3626 )
3627 IS
3628    L_MAX_BUFFER_LENGTH     CONSTANT NUMBER := 240;
3629    L_API_NAME              CONSTANT VARCHAR2(30) := 'Refresh_Key';
3630    L_FULL_NAME             CONSTANT VARCHAR2(60) := G_PKG_NAME || '.' || L_API_NAME;
3631 BEGIN
3632    --
3633    -- Initialize the dedupe table.
3634    Initialize_Dedupe_Table;
3635 
3636    --
3637    -- Synchronize the ID's in HZ_PARTIES with those
3638    -- in the dedupe table.
3639    Synchronize_ID;
3640 
3641    --
3642    -- Populate the dedupe table with the proper
3643    -- DEDUPE_KEYs.
3644    Populate_Keys (p_word_replacement_flag);
3645 
3646    IF p_commit_flag = 'Y' THEN
3647       COMMIT WORK;
3648    END IF;
3649 
3650    errbuf := SUBSTR (FND_MESSAGE.get, 1, L_MAX_BUFFER_LENGTH);
3651    retcode := 0;  -- no problems.
3652 EXCEPTION
3653    WHEN OTHERS THEN
3654       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_unexp_error) THEN
3655          FND_MSG_PUB.add_exc_msg (g_pkg_name, l_api_name);
3656       END IF;
3657       retcode := 2;
3658       errbuf := SUBSTR (FND_MESSAGE.get, 1, L_MAX_BUFFER_LENGTH);
3659 END Refresh_Key;
3660 
3661 
3662 -----------------------------------------------------------
3663 -- PROCEDURE
3664 --    Initialize_Dedupe_Table
3665 -- PURPOSE
3666 --    Initialize the table AMS_PARTY_DEDUPE.
3667 -- HISTORY
3668 -- 11-Nov-1999 choang      Created.
3669 -----------------------------------------------------------
3670 PROCEDURE Initialize_Dedupe_Table
3671 IS
3672 BEGIN
3673    DELETE FROM ams_party_dedupe;
3674 END Initialize_Dedupe_Table;
3675 
3676 
3677 -----------------------------------------------------------
3678 -- PROCEDURE
3679 --    Synchronize_ID
3680 -- PURPOSE
3681 --    Synchronize the PARTY_ID of AMS_PARTY_DEDUPE with
3682 --    that of HZ_PARTIES.
3683 -- HISTORY
3684 -- 11-Nov-1999 choang      Created.
3685 -----------------------------------------------------------
3689    INSERT INTO ams_party_dedupe (
3686 PROCEDURE Synchronize_ID
3687 IS
3688 BEGIN
3690       party_id,
3691       last_update_date,
3692       last_updated_by,
3693       creation_date,
3694       created_by,
3695       last_update_login,
3696       object_version_number
3697    )
3698    SELECT party_id,
3699           SYSDATE,                  -- last_update_date
3700           FND_GLOBAL.user_id,       -- last_updated_by
3701           SYSDATE,                  -- creation_date
3702           FND_GLOBAL.user_id,       -- created_by
3703           FND_GLOBAL.conc_login_id, -- last_update_login
3704           1                         -- object_version_number
3705    FROM hz_parties
3706    ;
3707 END Synchronize_ID;
3708 
3709 
3710 -----------------------------------------------------------
3711 -- PROCEDURE
3712 --    Populate_Keys
3713 -- PURPOSE
3714 --    Populate the DEDUPE_KEY in AMS_PARTY_DEDUPE with
3715 --    the derived key using the Generate_Key API.
3716 -- HISTORY
3717 -- 11-Nov-1999 choang      Created.
3718 -- 07-Jan-2000 choang      Removed dbms_output due to problem with
3719 --                         adchkdrv.
3720 -----------------------------------------------------------
3721 PROCEDURE Populate_Keys (
3722    p_word_replacement_flag    IN VARCHAR2
3723 )
3724 IS
3725    L_HZ_DEDUPE_RULE     CONSTANT VARCHAR2(30) := 'AMS_HZ_DEDUPE_RULE';
3726    L_API_VERSION        CONSTANT NUMBER := 1.0;
3727    L_PARTY_ID_COLUMN    CONSTANT VARCHAR2(30) := 'PARTY_ID';
3728 
3729    l_party_id           NUMBER;
3730    l_list_rule_id       NUMBER;
3731    l_dedupe_key         VARCHAR2(500);
3732 
3733    l_return_status      VARCHAR2(1);
3734    l_msg_count          NUMBER;
3735    l_msg_data           VARCHAR2(4000);
3736 
3737    CURSOR c_rule (x_rule_name IN VARCHAR2) IS
3738       SELECT list_rule_id
3739       FROM   ams_list_rules_all
3740       WHERE list_rule_name = x_rule_name
3741       ;
3742 
3743    --
3744    -- NOTE: Not using "WHERE CURRENT OF"
3745    -- in the update statment due to bug 219936.
3746    CURSOR c_id IS
3747       SELECT party_id
3748       FROM   ams_party_dedupe
3749       WHERE dedupe_key IS NULL
3750       FOR UPDATE NOWAIT
3751       ;
3752 BEGIN
3753    OPEN c_rule (FND_PROFILE.value (L_HZ_DEDUPE_RULE));
3754    FETCH c_rule INTO l_list_rule_id;
3755    CLOSE c_rule;
3756 
3757    OPEN c_id;
3758    LOOP
3759       FETCH c_id INTO l_party_id;
3760       EXIT WHEN c_id%NOTFOUND;
3761 
3762       --
3763       -- Call API to generate the dedupe key.
3764       AMS_ListDedupe_PVT.Generate_Key (
3765          p_api_version           => L_API_VERSION,
3766          p_init_msg_list         => FND_API.g_true,
3767 
3768          x_return_status         => l_return_status,
3769          x_msg_count             => l_msg_count,
3770          x_msg_data              => l_msg_data,
3771 
3772          p_list_rule_id          => l_list_rule_id,
3773          p_sys_object_id         => l_party_id,
3774          p_sys_object_id_field   => L_PARTY_ID_COLUMN,
3775          p_word_replacement_flag => p_word_replacement_flag,
3776          x_dedupe_key            => l_dedupe_key
3777       );
3778 
3779       UPDATE ams_party_dedupe
3780       SET
3781          dedupe_key = l_dedupe_key,
3782          last_update_date = SYSDATE,
3783          last_updated_by = FND_GLOBAL.user_id,
3784          last_update_login = FND_GLOBAL.conc_login_id,
3785          object_version_number = object_version_number + 1
3786       WHERE party_id = l_party_id;
3787    END LOOP;
3788    CLOSE c_id;
3789 END Populate_Keys;
3790 
3791 
3792 -----------------------------------------------------------
3793 -- PROCEDURE
3794 --    Process_Party
3795 -- HISTORY
3796 -- 13-Nov-1999 choang      Created.
3797 -- 27-Feb-2000 choang      Party sources were not being created for existing persons
3798 --                         in hz_parties because imported data was only being fetched
3799 --                         for new party sources.  Moved the imported data fetch to
3800 --                         the initialization area of the API.
3801 -----------------------------------------------------------
3802 PROCEDURE Process_Party (
3803    p_api_version           IN  NUMBER,
3804    p_init_msg_list         IN  VARCHAR2  := FND_API.g_false,
3805    p_commit                IN  VARCHAR2  := FND_API.g_false,
3806    p_validation_level      IN  NUMBER    := FND_API.g_valid_level_full,
3807 
3808    x_return_status         OUT NOCOPY VARCHAR2,
3809    x_msg_count             OUT NOCOPY NUMBER,
3810    x_msg_data              OUT NOCOPY VARCHAR2,
3811 
3812    p_import_source_line_id IN  NUMBER,
3813    p_word_replacement_flag IN  VARCHAR2
3814 )
3815 IS
3816    L_SOURCE_IMPORT_RULE       VARCHAR2(30) := 'SRC_PERSON_IMPORT';
3817    L_API_VERSION              CONSTANT NUMBER := 1.0;
3818    L_API_NAME                 CONSTANT VARCHAR2(30) := 'Process_Party';
3819    L_FULL_NAME                CONSTANT VARCHAR2(60) := G_PKG_NAME || '.' || L_API_NAME;
3820    L_KEY_ID_COLUMN            CONSTANT VARCHAR2(30) := 'IMPORT_SOURCE_LINE_ID';
3821 
3822    l_return_status            VARCHAR2(1);
3823 
3827    l_party_id                 NUMBER;
3824    l_party_sources_rec        Party_Rec_Type := NULL; -- PL/SQL record representing AMS_PARTY_SOURCES
3825    l_party_sources_id         NUMBER;
3826    l_person_rec               HZ_Party_V2Pub.person_rec_type;
3828    l_party_number             VARCHAR2(30);
3829    l_profile_id               NUMBER;
3830 
3831    l_list_rule_id             NUMBER;
3832    l_list_source_type_id      NUMBER;
3833    l_dedupe_key               VARCHAR2(500);
3834 
3835    l_errbuf       VARCHAR2(4000);
3836    l_retcode      NUMBER;
3837 
3838    --
3839    -- List rule used for dedupe key
3840    -- generation.
3841    CURSOR c_rule (x_rule_name IN VARCHAR2) IS
3842       SELECT list_rule_id
3843       FROM   ams_list_rules_all
3844       WHERE  list_rule_name = x_rule_name
3845    ;
3846 
3847    CURSOR c_import IS
3848       SELECT *
3849       FROM   ams_imp_source_lines
3850       WHERE  import_source_line_id = p_import_source_line_id
3851    ;
3852    l_import_rec      c_import%ROWTYPE;
3853 
3854    CURSOR c_type IS
3855       SELECT list_source_type_id
3856       FROM   ams_imp_list_headers_all
3857       WHERE  import_list_header_id = l_import_rec.import_list_header_id
3858    ;
3859 BEGIN
3860    --------------------- initialize -----------------------
3861    IF (AMS_DEBUG_HIGH_ON) THEN
3862 
3863    AMS_Utility_PVT.debug_message (l_full_name || ': Start');
3864    END IF;
3865 
3866    IF FND_API.to_boolean (p_init_msg_list) THEN
3867       FND_MSG_PUB.initialize;
3868    END IF;
3869 
3870    IF NOT FND_API.compatible_api_call (
3871          l_api_version,
3872          p_api_version,
3873          l_api_name,
3874          g_pkg_name
3875    ) THEN
3876       RAISE FND_API.g_exc_unexpected_error;
3877    END IF;
3878 
3879    x_return_status := FND_API.g_ret_sts_success;
3880 
3881    /* Added code to check dedupe rule from profile option */
3882    l_source_import_rule := fnd_profile.VALUE ('AMS_IMP_DEDUPE_RULES');
3883    if l_source_import_rule is null  then
3884      l_source_import_rule   := 'SRC_PERSON_IMPORT';
3885    end if;
3886 
3887 
3888 /*
3889    --
3890    -- Initialize the party dedupe reference table
3891    Refresh_Key (
3892       errbuf         => l_errbuf,
3893       retcode        => l_retcode,
3894       p_word_replacement_flag => p_word_replacement_flag,
3895       p_commit_flag           => p_commit
3896    );
3897 */
3898 
3899    --
3900    -- Get the rule used for dedupe
3901    -- key generation.
3902    OPEN c_rule (L_SOURCE_IMPORT_RULE);
3903    FETCH c_rule INTO l_list_rule_id;
3904    IF c_rule%NOTFOUND THEN
3905       --
3906       -- The list rule used for generating
3907       -- of the dedupe key for source imports
3908       -- was not found.
3909       CLOSE c_rule;
3910       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_error) THEN
3911          FND_MESSAGE.set_name ('AMS', 'AMS_LIST_BAD_DEDUPE_RULE');
3912          FND_MSG_PUB.add;
3913       END IF;
3914       RAISE FND_API.g_exc_error;
3915    END IF;
3916    CLOSE c_rule;
3917 
3918    --
3919    -- Fetch the imported data.
3920    OPEN c_import;
3921    FETCH c_import INTO l_import_rec;
3922    CLOSE c_import;
3923 
3924    --
3925    -- Generate the dedupe key.
3926    AMS_ListDedupe_PVT.Generate_Key (
3927       p_api_version           => L_API_VERSION,
3928       p_init_msg_list         => p_init_msg_list,
3929 
3930       x_return_status         => l_return_status,
3931       x_msg_count             => x_msg_count,
3932       x_msg_data              => x_msg_data,
3933 
3934       p_list_rule_id          => l_list_rule_id,
3935       p_sys_object_id         => p_import_source_line_id,
3936       p_sys_object_id_field   => L_KEY_ID_COLUMN,
3937       p_word_replacement_flag => p_word_replacement_flag,
3938       x_dedupe_key            => l_dedupe_key
3939    );
3940 
3941    --
3942    -- Does the party exist in HZ_PARTIES?
3943    IF Party_Exists (l_dedupe_key, l_party_id) THEN
3944       l_party_sources_rec.overlay_flag := 'Y';
3945       l_party_sources_rec.overlay_date := SYSDATE;
3946    ELSE
3947       l_party_sources_rec.overlay_flag := 'N';
3948 -- Begin change - ryedator - for R12 compilation issues.
3949 /*
3950       -- Create the record in HZ_PARTIES
3951       l_person_rec.first_name := l_import_rec.COL1;
3952       l_person_rec.last_name := l_import_rec.COL2;
3953       l_person_rec.title := l_import_rec.COL3;
3954       HZ_Party_Pub.Create_Person (
3955          p_api_version     => l_api_version,
3956          p_init_msg_list   => p_init_msg_list,
3957          p_validation_level   => p_validation_level,
3958          p_commit          => p_commit,
3959          p_person_rec      => l_person_rec,
3960          x_return_status   => l_return_status,
3961          x_msg_count       => x_msg_count,
3962          x_msg_data        => x_msg_data,
3963          x_party_id        => l_party_id,
3964          x_party_number    => l_party_number,
3965          x_profile_id      => l_profile_id
3966       );
3967 */
3968    l_person_rec.person_first_name := l_import_rec.COL1;
3969    l_person_rec.person_last_name := l_import_rec.COL2;
3973     p_init_msg_list   => p_init_msg_list,
3970    l_person_rec.person_title := l_import_rec.COL3;
3971 
3972    HZ_Party_V2Pub.create_person (
3974     p_person_rec      => l_person_rec,
3975     x_party_id        => l_party_id,
3976     x_party_number    => l_party_number,
3977     x_profile_id      => l_profile_id,
3978     x_return_status   => l_return_status,
3979     x_msg_count       => x_msg_count,
3980     x_msg_data        => x_msg_data
3981   );
3982 -- End change - ryedator - for R12 compilation issues.
3983 
3984    END IF;
3985 
3986    OPEN c_type;
3987    FETCH c_type INTO l_list_source_type_id;
3988    CLOSE c_type;
3989 
3990    ------------ Initialize party_sources_rec ----------------------
3991    l_party_sources_rec.party_id := l_party_id;
3992    l_party_sources_rec.import_source_line_id := p_import_source_line_id;
3993    l_party_sources_rec.import_list_header_id := l_import_rec.import_list_header_id;
3994    l_party_sources_rec.list_source_type_id := l_list_source_type_id;
3995    l_party_sources_rec.col1   := l_import_rec.col1;
3996    l_party_sources_rec.col2   := l_import_rec.col2;
3997    l_party_sources_rec.col3   := l_import_rec.col3;
3998    l_party_sources_rec.col4   := l_import_rec.col4;
3999    l_party_sources_rec.col5   := l_import_rec.col5;
4000    l_party_sources_rec.col6   := l_import_rec.col6;
4001    l_party_sources_rec.col7   := l_import_rec.col7;
4002    l_party_sources_rec.col8   := l_import_rec.col8;
4003    l_party_sources_rec.col9   := l_import_rec.col9;
4004    l_party_sources_rec.col10  := l_import_rec.col10;
4005    l_party_sources_rec.col11  := l_import_rec.col11;
4006    l_party_sources_rec.col12  := l_import_rec.col12;
4007    l_party_sources_rec.col13  := l_import_rec.col13;
4008    l_party_sources_rec.col14  := l_import_rec.col14;
4009    l_party_sources_rec.col15  := l_import_rec.col15;
4010    l_party_sources_rec.col16  := l_import_rec.col16;
4011    l_party_sources_rec.col17  := l_import_rec.col17;
4012    l_party_sources_rec.col18  := l_import_rec.col18;
4013    l_party_sources_rec.col19  := l_import_rec.col19;
4014    l_party_sources_rec.col20  := l_import_rec.col20;
4015    l_party_sources_rec.col21  := l_import_rec.col21;
4016    l_party_sources_rec.col22  := l_import_rec.col22;
4017    l_party_sources_rec.col23  := l_import_rec.col23;
4018    l_party_sources_rec.col24  := l_import_rec.col24;
4019    l_party_sources_rec.col25  := l_import_rec.col25;
4020    l_party_sources_rec.col26  := l_import_rec.col26;
4021    l_party_sources_rec.col27  := l_import_rec.col27;
4022    l_party_sources_rec.col28  := l_import_rec.col28;
4023    l_party_sources_rec.col29  := l_import_rec.col29;
4024    l_party_sources_rec.col30  := l_import_rec.col30;
4025    l_party_sources_rec.col31  := l_import_rec.col31;
4026    l_party_sources_rec.col32  := l_import_rec.col32;
4027    l_party_sources_rec.col33  := l_import_rec.col33;
4028    l_party_sources_rec.col34  := l_import_rec.col34;
4029    l_party_sources_rec.col35  := l_import_rec.col35;
4030    l_party_sources_rec.col36  := l_import_rec.col36;
4031    l_party_sources_rec.col37  := l_import_rec.col37;
4032    l_party_sources_rec.col38  := l_import_rec.col38;
4033    l_party_sources_rec.col39  := l_import_rec.col39;
4034    l_party_sources_rec.col40  := l_import_rec.col40;
4035    l_party_sources_rec.col41  := l_import_rec.col41;
4036    l_party_sources_rec.col42  := l_import_rec.col42;
4037    l_party_sources_rec.col43  := l_import_rec.col43;
4038    l_party_sources_rec.col44  := l_import_rec.col44;
4039    l_party_sources_rec.col45  := l_import_rec.col45;
4040    l_party_sources_rec.col46  := l_import_rec.col46;
4041    l_party_sources_rec.col47  := l_import_rec.col47;
4042    l_party_sources_rec.col48  := l_import_rec.col48;
4043    l_party_sources_rec.col49  := l_import_rec.col49;
4044    l_party_sources_rec.col50  := l_import_rec.col50;
4045    l_party_sources_rec.col51  := l_import_rec.col51;
4046    l_party_sources_rec.col52  := l_import_rec.col52;
4047    l_party_sources_rec.col53  := l_import_rec.col53;
4048    l_party_sources_rec.col54  := l_import_rec.col54;
4049    l_party_sources_rec.col55  := l_import_rec.col55;
4050    l_party_sources_rec.col56  := l_import_rec.col56;
4051    l_party_sources_rec.col57  := l_import_rec.col57;
4052    l_party_sources_rec.col58  := l_import_rec.col58;
4053    l_party_sources_rec.col59  := l_import_rec.col59;
4054    l_party_sources_rec.col60  := l_import_rec.col60;
4055    l_party_sources_rec.col61  := l_import_rec.col61;
4056    l_party_sources_rec.col62  := l_import_rec.col62;
4057    l_party_sources_rec.col63  := l_import_rec.col63;
4058    l_party_sources_rec.col64  := l_import_rec.col64;
4059    l_party_sources_rec.col65  := l_import_rec.col65;
4060    l_party_sources_rec.col66  := l_import_rec.col66;
4061    l_party_sources_rec.col67  := l_import_rec.col67;
4062    l_party_sources_rec.col68  := l_import_rec.col68;
4063    l_party_sources_rec.col69  := l_import_rec.col69;
4064    l_party_sources_rec.col70  := l_import_rec.col70;
4065    l_party_sources_rec.col71  := l_import_rec.col71;
4066    l_party_sources_rec.col72  := l_import_rec.col72;
4067    l_party_sources_rec.col73  := l_import_rec.col73;
4068    l_party_sources_rec.col74  := l_import_rec.col74;
4069    l_party_sources_rec.col75  := l_import_rec.col75;
4070    l_party_sources_rec.col76  := l_import_rec.col76;
4071    l_party_sources_rec.col77  := l_import_rec.col77;
4072    l_party_sources_rec.col78  := l_import_rec.col78;
4076    l_party_sources_rec.col82  := l_import_rec.col82;
4073    l_party_sources_rec.col79  := l_import_rec.col79;
4074    l_party_sources_rec.col80  := l_import_rec.col80;
4075    l_party_sources_rec.col81  := l_import_rec.col81;
4077    l_party_sources_rec.col83  := l_import_rec.col83;
4078    l_party_sources_rec.col84  := l_import_rec.col84;
4079    l_party_sources_rec.col85  := l_import_rec.col85;
4080    l_party_sources_rec.col86  := l_import_rec.col86;
4081    l_party_sources_rec.col87  := l_import_rec.col87;
4082    l_party_sources_rec.col88  := l_import_rec.col88;
4083    l_party_sources_rec.col89  := l_import_rec.col89;
4084    l_party_sources_rec.col90  := l_import_rec.col90;
4085    l_party_sources_rec.col91  := l_import_rec.col91;
4086    l_party_sources_rec.col92  := l_import_rec.col92;
4087    l_party_sources_rec.col93  := l_import_rec.col93;
4088    l_party_sources_rec.col94  := l_import_rec.col94;
4089    l_party_sources_rec.col95  := l_import_rec.col95;
4090    l_party_sources_rec.col96  := l_import_rec.col96;
4091    l_party_sources_rec.col97  := l_import_rec.col97;
4092    l_party_sources_rec.col98  := l_import_rec.col98;
4093    l_party_sources_rec.col99  := l_import_rec.col99;
4094    l_party_sources_rec.col100 := l_import_rec.col100;
4095    l_party_sources_rec.col101 := l_import_rec.col101;
4096    l_party_sources_rec.col102 := l_import_rec.col102;
4097    l_party_sources_rec.col103 := l_import_rec.col103;
4098    l_party_sources_rec.col104 := l_import_rec.col104;
4099    l_party_sources_rec.col105 := l_import_rec.col105;
4100    l_party_sources_rec.col106 := l_import_rec.col106;
4101    l_party_sources_rec.col107 := l_import_rec.col107;
4102    l_party_sources_rec.col108 := l_import_rec.col108;
4103    l_party_sources_rec.col109 := l_import_rec.col109;
4104    l_party_sources_rec.col110 := l_import_rec.col110;
4105    l_party_sources_rec.col111 := l_import_rec.col111;
4106    l_party_sources_rec.col112 := l_import_rec.col112;
4107    l_party_sources_rec.col113 := l_import_rec.col113;
4108    l_party_sources_rec.col114 := l_import_rec.col114;
4109    l_party_sources_rec.col115 := l_import_rec.col115;
4110    l_party_sources_rec.col116 := l_import_rec.col116;
4111    l_party_sources_rec.col117 := l_import_rec.col117;
4112    l_party_sources_rec.col118 := l_import_rec.col118;
4113    l_party_sources_rec.col119 := l_import_rec.col119;
4114    l_party_sources_rec.col120 := l_import_rec.col120;
4115    l_party_sources_rec.col121 := l_import_rec.col121;
4116    l_party_sources_rec.col122 := l_import_rec.col122;
4117    l_party_sources_rec.col123 := l_import_rec.col123;
4118    l_party_sources_rec.col124 := l_import_rec.col124;
4119    l_party_sources_rec.col125 := l_import_rec.col125;
4120    l_party_sources_rec.col126 := l_import_rec.col126;
4121    l_party_sources_rec.col127 := l_import_rec.col127;
4122    l_party_sources_rec.col128 := l_import_rec.col128;
4123    l_party_sources_rec.col129 := l_import_rec.col129;
4124    l_party_sources_rec.col130 := l_import_rec.col130;
4125    l_party_sources_rec.col131 := l_import_rec.col131;
4126    l_party_sources_rec.col132 := l_import_rec.col132;
4127    l_party_sources_rec.col133 := l_import_rec.col133;
4128    l_party_sources_rec.col134 := l_import_rec.col134;
4129    l_party_sources_rec.col135 := l_import_rec.col135;
4130    l_party_sources_rec.col136 := l_import_rec.col136;
4131    l_party_sources_rec.col137 := l_import_rec.col137;
4132    l_party_sources_rec.col138 := l_import_rec.col138;
4133    l_party_sources_rec.col139 := l_import_rec.col139;
4134    l_party_sources_rec.col140 := l_import_rec.col140;
4135    l_party_sources_rec.col141 := l_import_rec.col141;
4136    l_party_sources_rec.col142 := l_import_rec.col142;
4137    l_party_sources_rec.col143 := l_import_rec.col143;
4138    l_party_sources_rec.col144 := l_import_rec.col144;
4139    l_party_sources_rec.col145 := l_import_rec.col145;
4140    l_party_sources_rec.col146 := l_import_rec.col146;
4141    l_party_sources_rec.col147 := l_import_rec.col147;
4142    l_party_sources_rec.col148 := l_import_rec.col148;
4143    l_party_sources_rec.col149 := l_import_rec.col149;
4144    l_party_sources_rec.col150 := l_import_rec.col150;
4145    l_party_sources_rec.col151 := l_import_rec.col151;
4146    l_party_sources_rec.col152 := l_import_rec.col152;
4147    l_party_sources_rec.col153 := l_import_rec.col153;
4148    l_party_sources_rec.col154 := l_import_rec.col154;
4149    l_party_sources_rec.col155 := l_import_rec.col155;
4150    l_party_sources_rec.col156 := l_import_rec.col156;
4151    l_party_sources_rec.col157 := l_import_rec.col157;
4152    l_party_sources_rec.col158 := l_import_rec.col158;
4153    l_party_sources_rec.col159 := l_import_rec.col159;
4154    l_party_sources_rec.col160 := l_import_rec.col160;
4155    l_party_sources_rec.col161 := l_import_rec.col161;
4156    l_party_sources_rec.col162 := l_import_rec.col162;
4157    l_party_sources_rec.col163 := l_import_rec.col163;
4158    l_party_sources_rec.col164 := l_import_rec.col164;
4159    l_party_sources_rec.col165 := l_import_rec.col165;
4160    l_party_sources_rec.col166 := l_import_rec.col166;
4161    l_party_sources_rec.col167 := l_import_rec.col167;
4162    l_party_sources_rec.col168 := l_import_rec.col168;
4163    l_party_sources_rec.col169 := l_import_rec.col169;
4164    l_party_sources_rec.col170 := l_import_rec.col170;
4165    l_party_sources_rec.col171 := l_import_rec.col171;
4166    l_party_sources_rec.col172 := l_import_rec.col172;
4170    l_party_sources_rec.col176 := l_import_rec.col176;
4167    l_party_sources_rec.col173 := l_import_rec.col173;
4168    l_party_sources_rec.col174 := l_import_rec.col174;
4169    l_party_sources_rec.col175 := l_import_rec.col175;
4171    l_party_sources_rec.col177 := l_import_rec.col177;
4172    l_party_sources_rec.col178 := l_import_rec.col178;
4173    l_party_sources_rec.col179 := l_import_rec.col179;
4174    l_party_sources_rec.col180 := l_import_rec.col180;
4175    l_party_sources_rec.col181 := l_import_rec.col181;
4176    l_party_sources_rec.col182 := l_import_rec.col182;
4177    l_party_sources_rec.col183 := l_import_rec.col183;
4178    l_party_sources_rec.col184 := l_import_rec.col184;
4179    l_party_sources_rec.col185 := l_import_rec.col185;
4180    l_party_sources_rec.col186 := l_import_rec.col186;
4181    l_party_sources_rec.col187 := l_import_rec.col187;
4182    l_party_sources_rec.col188 := l_import_rec.col188;
4183    l_party_sources_rec.col189 := l_import_rec.col189;
4184    l_party_sources_rec.col190 := l_import_rec.col190;
4185    l_party_sources_rec.col191 := l_import_rec.col191;
4186    l_party_sources_rec.col192 := l_import_rec.col192;
4187    l_party_sources_rec.col193 := l_import_rec.col193;
4188    l_party_sources_rec.col194 := l_import_rec.col194;
4189    l_party_sources_rec.col195 := l_import_rec.col195;
4190    l_party_sources_rec.col196 := l_import_rec.col196;
4191    l_party_sources_rec.col197 := l_import_rec.col197;
4192    l_party_sources_rec.col198 := l_import_rec.col198;
4193    l_party_sources_rec.col199 := l_import_rec.col199;
4194    l_party_sources_rec.col200 := l_import_rec.col200;
4195    l_party_sources_rec.col201 := l_import_rec.col201;
4196    l_party_sources_rec.col202 := l_import_rec.col202;
4197    l_party_sources_rec.col203 := l_import_rec.col203;
4198    l_party_sources_rec.col204 := l_import_rec.col204;
4199    l_party_sources_rec.col205 := l_import_rec.col205;
4200    l_party_sources_rec.col206 := l_import_rec.col206;
4201    l_party_sources_rec.col207 := l_import_rec.col207;
4202    l_party_sources_rec.col208 := l_import_rec.col208;
4203    l_party_sources_rec.col209 := l_import_rec.col209;
4204    l_party_sources_rec.col210 := l_import_rec.col210;
4205    l_party_sources_rec.col211 := l_import_rec.col211;
4206    l_party_sources_rec.col212 := l_import_rec.col212;
4207    l_party_sources_rec.col213 := l_import_rec.col213;
4208    l_party_sources_rec.col214 := l_import_rec.col214;
4209    l_party_sources_rec.col215 := l_import_rec.col215;
4210    l_party_sources_rec.col216 := l_import_rec.col216;
4211    l_party_sources_rec.col217 := l_import_rec.col217;
4212    l_party_sources_rec.col218 := l_import_rec.col218;
4213    l_party_sources_rec.col219 := l_import_rec.col219;
4214    l_party_sources_rec.col220 := l_import_rec.col220;
4215    l_party_sources_rec.col221 := l_import_rec.col221;
4216    l_party_sources_rec.col222 := l_import_rec.col222;
4217    l_party_sources_rec.col223 := l_import_rec.col223;
4218    l_party_sources_rec.col224 := l_import_rec.col224;
4219    l_party_sources_rec.col225 := l_import_rec.col225;
4220    l_party_sources_rec.col226 := l_import_rec.col226;
4221    l_party_sources_rec.col227 := l_import_rec.col227;
4222    l_party_sources_rec.col228 := l_import_rec.col228;
4223    l_party_sources_rec.col229 := l_import_rec.col229;
4224    l_party_sources_rec.col230 := l_import_rec.col230;
4225    l_party_sources_rec.col231 := l_import_rec.col231;
4226    l_party_sources_rec.col232 := l_import_rec.col232;
4227    l_party_sources_rec.col233 := l_import_rec.col233;
4228    l_party_sources_rec.col234 := l_import_rec.col234;
4229    l_party_sources_rec.col235 := l_import_rec.col235;
4230    l_party_sources_rec.col236 := l_import_rec.col236;
4231    l_party_sources_rec.col237 := l_import_rec.col237;
4232    l_party_sources_rec.col238 := l_import_rec.col238;
4233    l_party_sources_rec.col239 := l_import_rec.col239;
4234    l_party_sources_rec.col240 := l_import_rec.col240;
4235    l_party_sources_rec.col241 := l_import_rec.col241;
4236    l_party_sources_rec.col242 := l_import_rec.col242;
4237    l_party_sources_rec.col243 := l_import_rec.col243;
4238    l_party_sources_rec.col244 := l_import_rec.col244;
4239    l_party_sources_rec.col245 := l_import_rec.col245;
4240    l_party_sources_rec.col246 := l_import_rec.col246;
4241    l_party_sources_rec.col247 := l_import_rec.col247;
4242    l_party_sources_rec.col248 := l_import_rec.col248;
4243    l_party_sources_rec.col249 := l_import_rec.col249;
4244    l_party_sources_rec.col250 := l_import_rec.col250;
4245 
4246    --
4247    -- Update Interface Table
4248    UPDATE ams_imp_source_lines
4249    SET
4250       party_id = l_party_id,
4251       dedupe_key = l_dedupe_key,
4252       last_updated_by = FND_GLOBAL.user_id,
4253       last_update_date = SYSDATE,
4254       last_update_login = FND_GLOBAL.conc_login_id,
4255       object_version_number = object_version_number + 1
4256    WHERE import_source_line_id = p_import_source_line_id;
4257 
4258    --
4259    -- Create Party Source
4260    Create_Party (
4261       p_api_version       => L_API_VERSION,
4262       p_init_msg_list     => p_init_msg_list,
4263       p_commit            => p_commit,
4264       p_validation_level  => p_validation_level,
4265 
4266       x_return_status     => l_return_status,
4267       x_msg_count         => x_msg_count,
4271       x_party_sources_id  => l_party_sources_id
4268       x_msg_data          => x_msg_data,
4269 
4270       p_party_rec         => l_party_sources_rec,
4272    );
4273 
4274    -------------------- finish --------------------------
4275    FND_MSG_PUB.count_and_get (
4276          p_encoded => FND_API.g_false,
4277          p_count   => x_msg_count,
4278          p_data    => x_msg_data
4279    );
4280 
4281    IF (AMS_DEBUG_HIGH_ON) THEN
4282 
4283 
4284 
4285    AMS_Utility_PVT.debug_message (l_full_name || ': End');
4286 
4287    END IF;
4288 
4289 EXCEPTION
4290 	WHEN FND_API.g_exc_error THEN
4291       x_return_status := FND_API.g_ret_sts_error;
4292       FND_MSG_PUB.count_and_get (
4293             p_encoded => FND_API.g_false,
4294             p_count   => x_msg_count,
4295             p_data    => x_msg_data
4296       );
4297    WHEN FND_API.g_exc_unexpected_error THEN
4298       x_return_status := FND_API.g_ret_sts_unexp_error ;
4299       FND_MSG_PUB.count_and_get (
4300             p_encoded => FND_API.g_false,
4301             p_count   => x_msg_count,
4302             p_data    => x_msg_data
4303       );
4304    WHEN OTHERS THEN
4305       x_return_status := FND_API.g_ret_sts_unexp_error ;
4306       IF FND_MSG_PUB.check_msg_level (FND_MSG_PUB.g_msg_lvl_unexp_error)
4307 		THEN
4308          FND_MSG_PUB.add_exc_msg (g_pkg_name, l_api_name);
4309       END IF;
4310 
4311       FND_MSG_PUB.count_and_get (
4312             p_encoded => FND_API.g_false,
4313             p_count   => x_msg_count,
4314             p_data    => x_msg_data
4315       );
4316 END Process_Party;
4317 
4318 
4319 -----------------------------------------------------------
4320 -- PROCEDURE
4321 --    Party_Exists
4322 -- PURPOSE
4323 --    Returns whether a party exists in HZ_PARTIES based
4324 --    on the given DEDUPE_KEY.
4325 -- HISTORY
4326 -- 13-Nov-1999 choang      Created.
4327 -----------------------------------------------------------
4328 FUNCTION Party_Exists (
4329    p_dedupe_key      IN VARCHAR2,
4330    x_party_id        OUT NOCOPY NUMBER
4331 ) RETURN BOOLEAN
4332 IS
4333    l_party_id     NUMBER;
4334 
4335 
4336    CURSOR c_exists IS
4337       SELECT party_id
4338       FROM   ams_party_dedupe
4339       WHERE  dedupe_key = p_dedupe_key
4340    ;
4341 BEGIN
4342    OPEN c_exists;
4343    FETCH c_exists INTO l_party_id;
4344    IF c_exists%NOTFOUND THEN
4345       CLOSE c_exists;
4346       x_party_id := NULL;
4347       RETURN FALSE;
4348    END IF;
4349    CLOSE c_exists;
4350 
4351    x_party_id := l_party_id;
4352 
4353    RETURN TRUE;
4354 END Party_Exists;
4355 
4356 
4357 -----------------------------------------------------------
4358 -- PROCEDURE
4359 --    Schedule_PartyProcess
4360 -- HISTORY
4361 -- 15-Nov-1999 choang      Created.
4362 -----------------------------------------------------------
4363 PROCEDURE Schedule_Party_Process (
4364    errbuf                  OUT NOCOPY   VARCHAR2,
4365    retcode                 OUT NOCOPY   NUMBER,
4366    p_import_list_header_id IN    NUMBER,
4367    p_word_replacement_flag IN    VARCHAR2
4368 )
4369 IS
4370    L_API_VERSION        CONSTANT NUMBER := 1.0;
4371 
4372    l_import_source_line_id    NUMBER;
4373    l_return_status      VARCHAR2(1);
4374    l_msg_count          NUMBER;
4375    l_msg_data           VARCHAR2(4000);
4376 
4377    CURSOR c_import IS
4378       SELECT import_source_line_id
4379       FROM   ams_imp_source_lines
4380       WHERE  import_list_header_id = p_import_list_header_id
4381    ;
4382 BEGIN
4383    --
4384 --dbms_session.set_sql_trace(true);
4385    -- Initialize the party dedupe reference table
4386    -- modified for performance  issues
4387 
4388    Refresh_Key (
4389       errbuf         => errbuf,
4390       retcode        => retcode,
4391       p_word_replacement_flag => p_word_replacement_flag,
4392       p_commit_flag           => FND_API.g_true
4393    );
4394 
4395    OPEN c_import;
4396    LOOP
4397       FETCH c_import INTO l_import_source_line_id;
4398       EXIT WHEN c_import%NOTFOUND;
4399 
4400       Process_Party (
4401          p_api_version           => L_API_VERSION,
4402          p_init_msg_list         => FND_API.g_true,
4403          p_commit                => FND_API.g_true,
4404          x_return_status         => l_return_status,
4405          x_msg_count             => l_msg_count,
4406          x_msg_data              => l_msg_data,
4407 
4408          p_import_source_line_id => l_import_source_line_id,
4409          p_word_replacement_flag => p_word_replacement_flag
4410       );
4411    END LOOP;
4412    CLOSE c_import;
4413 
4414    -- Import completed successfully
4415    FND_MESSAGE.set_name ('AMS', 'AMS_PARTY_PROCESS_COMPLETE');
4416 
4417    AMS_Utility_PVT.Create_Log (
4418       x_return_status   => l_return_status,
4419       p_arc_log_used_by => 'IMPH',
4420       p_log_used_by_id  => p_import_list_header_id,
4421       p_msg_data        => FND_MESSAGE.get,
4422       p_msg_type        => 'MILESTONE'
4423    );
4424 --dbms_session.set_sql_trace(false);
4425 
4426 END Schedule_Party_Process;
4427 
4428 
4429 END AMS_PartyImport_PVT;