[Home] [Help]
PACKAGE BODY: APPS.HZ_GEO_STRUCT_MAP_PVT
Source
1 PACKAGE BODY HZ_GEO_STRUCT_MAP_PVT AS
2 /*$Header: ARHGEMMB.pls 115.1 2003/02/11 19:46:49 sachandr noship $ */
3
4 PROCEDURE Insert_Row (
5 x_rowid IN OUT NOCOPY VARCHAR2,
6 x_map_id IN NUMBER,
7 x_country_code IN VARCHAR2,
8 x_loc_tbl_name IN VARCHAR2,
9 x_address_style IN VARCHAR2
10 ) IS
11
12
13 BEGIN
14
15 INSERT INTO HZ_GEO_STRUCT_MAP (
16 map_id,
17 country_code,
18 loc_tbl_name,
19 address_style,
20 last_updated_by,
21 creation_date,
22 created_by,
23 last_update_date,
24 last_update_login
25 )
26 VALUES (
27 DECODE(x_map_id,
28 FND_API.G_MISS_NUM, NULL,
29 x_map_id),
30 DECODE(x_country_code,
31 FND_API.G_MISS_CHAR, NULL,
32 x_country_code),
33 DECODE(x_loc_tbl_name,
34 FND_API.G_MISS_CHAR, NULL,
35 x_loc_tbl_name),
36 DECODE(x_address_style,
37 FND_API.G_MISS_CHAR, NULL,
38 x_address_style),
39 hz_utility_v2pub.last_updated_by,
40 hz_utility_v2pub.creation_date,
41 hz_utility_v2pub.created_by,
42 hz_utility_v2pub.last_update_date,
43 hz_utility_v2pub.last_update_login
44 ) RETURNING
45 rowid
46 INTO
47 x_rowid;
48
49 END Insert_Row;
50
51 PROCEDURE Lock_Row (
52 x_rowid IN OUT NOCOPY VARCHAR2,
53 x_map_id IN NUMBER,
54 x_country_code IN VARCHAR2,
55 x_loc_tbl_name IN VARCHAR2,
56 x_address_style IN VARCHAR2
57 ) IS
58
59 CURSOR c IS
60 SELECT * FROM hz_geo_struct_map
61 WHERE rowid = x_rowid
62 FOR UPDATE NOWAIT;
63 Recinfo c%ROWTYPE;
64
65 BEGIN
66
67 OPEN c;
68 FETCH c INTO Recinfo;
69 IF ( c%NOTFOUND ) THEN
70 CLOSE c;
71 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_DELETED');
72 APP_EXCEPTION.RAISE_EXCEPTION;
73 END IF;
74 CLOSE C;
75
76 IF (
77 ( ( Recinfo.map_id = x_map_id )
78 OR ( ( Recinfo.map_id IS NULL )
79 AND ( x_map_id IS NULL ) ) )
80 AND ( ( Recinfo.country_code = x_country_code)
81 OR ( ( Recinfo.country_code IS NULL )
82 AND ( x_country_code IS NULL ) ) )
83 AND ( ( Recinfo.loc_tbl_name = x_loc_tbl_name )
84 OR ( ( Recinfo.loc_tbl_name IS NULL )
85 AND ( x_loc_tbl_name IS NULL ) ) )
86 AND ( ( Recinfo.address_style = x_address_style )
87 OR ( ( Recinfo.address_style IS NULL )
88 AND ( x_address_style IS NULL ) ) )
89 ) THEN
90 RETURN;
91 ELSE
92 FND_MESSAGE.SET_NAME('FND', 'FORM_RECORD_CHANGED');
93 APP_EXCEPTION.RAISE_EXCEPTION;
94 END IF;
95
96 return;
97
98 END Lock_Row;
99
100 PROCEDURE Select_Row (
101 x_map_id IN OUT NOCOPY NUMBER,
102 x_country_code OUT NOCOPY VARCHAR2,
103 x_loc_tbl_name OUT NOCOPY VARCHAR2,
104 x_address_style OUT NOCOPY VARCHAR2
105 ) IS
106 BEGIN
107
108 SELECT
109 NVL(map_id, FND_API.G_MISS_NUM),
110 NVL(country_code, FND_API.G_MISS_CHAR),
111 NVL(loc_tbl_name, FND_API.G_MISS_CHAR),
112 NVL(address_style, FND_API.G_MISS_CHAR)
113 INTO
114 x_map_id,
115 x_country_code,
116 x_loc_tbl_name,
117 x_address_style
118 FROM HZ_GEO_STRUCT_MAP
119 WHERE map_id = x_map_id;
120
121 EXCEPTION
122 WHEN NO_DATA_FOUND THEN
123 FND_MESSAGE.SET_NAME('AR', 'HZ_API_NO_RECORD');
124 FND_MESSAGE.SET_TOKEN('RECORD', 'geo structure map');
125 FND_MESSAGE.SET_TOKEN('VALUE', x_map_id);
126 FND_MSG_PUB.ADD;
127 RAISE FND_API.G_EXC_ERROR;
128
129 END Select_Row;
130
131 PROCEDURE Delete_Row (
132 x_map_id IN NUMBER
133 ) IS
134 BEGIN
135
136 DELETE FROM hz_geo_struct_map
137 WHERE map_id = x_map_id;
138
139 IF (SQL%NOTFOUND) THEN
140 RAISE NO_DATA_FOUND;
141 END IF;
142
143 END Delete_Row;
144
145 END HZ_GEO_STRUCT_MAP_PVT;