DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGW_PROP_PERSON_BIOSKETCH_PVT

Source


1 PACKAGE BODY IGW_PROP_PERSON_BIOSKETCH_PVT as
2  /* $Header: igwvppbb.pls 115.3 2002/11/15 00:41:23 ashkumar ship $*/
3 
4 
5 Procedure update_prop_person_biosketch (
6  p_init_msg_list                  IN 		VARCHAR2   := FND_API.G_FALSE,
7  p_commit                         IN 		VARCHAR2   := FND_API.G_FALSE,
8  p_validate_only                  IN 		VARCHAR2   := FND_API.G_FALSE,
9  x_rowid 		          IN 		VARCHAR2,
10  P_PROPOSAL_ID               	  IN	 	NUMBER,
11  P_PERSON_BIOSKETCH_ID       	  IN		NUMBER,
12  P_SHOW_FLAG 		     	  IN            VARCHAR2,
13  P_LINE_SEQUENCE	     	  IN		NUMBER,
14  p_record_version_number          IN 		NUMBER,
15  x_return_status                  OUT NOCOPY 		VARCHAR2,
16  x_msg_count                      OUT NOCOPY 		NUMBER,
17  x_msg_data                       OUT NOCOPY 		VARCHAR2)  is
18 
19 
20   l_return_status            VARCHAR2(1);
21   l_error_msg_code           VARCHAR2(250);
22   l_msg_count                NUMBER;
23   l_data                     VARCHAR2(250);
24   l_msg_data                 VARCHAR2(250);
25   l_msg_index_out            NUMBER;
26 
27 BEGIN
28 -- create savepoint if p_commit is true
29    IF p_commit = FND_API.G_TRUE THEN
30         SAVEPOINT update_prop_person_biosketch;
31    END IF;
32 
33 -- initialize message list if p_init_msg_list is true
34    if FND_API.to_boolean(nvl(p_init_msg_list, FND_API.G_FALSE)) then
35         fnd_msg_pub.initialize;
36    end if;
37 
38 -- initialize return_status to success
39     x_return_status := fnd_api.g_ret_sts_success;
40 
41 /*
42 -- first validate user rights
43 
44         VALIDATE_LOGGED_USER_RIGHTS
45 			(p_proposal_id		 =>	p_proposal_id
46 			,x_return_status         =>	x_return_status);
47 
48   check_errors;
49 */
50 
51 -- and also check locking.
52  	CHECK_LOCK
53 		(x_rowid			=>	x_rowid
54 		,p_record_version_number	=>	p_record_version_number
55 		,x_return_status    		=>	x_return_status);
56 
57 check_errors;
58 
59 ------------------------------------- value_id conversion ---------------------------------
60 
61 -------------------------------------------- validations -----------------------------------------------------
62 
63             if (NOT FND_API.TO_BOOLEAN (p_validate_only)) then
64                         igw_prop_person_biosketch_tbh.update_row (
65                                     	 x_rowid			 =>	x_rowid
66               				,P_PROPOSAL_ID       		 =>	P_PROPOSAL_ID
67  					,P_PERSON_BIOSKETCH_ID         	=>	P_PERSON_BIOSKETCH_ID
68  					,P_SHOW_FLAG      		 =>	P_SHOW_FLAG
69  					,P_LINE_SEQUENCE     		 =>	P_LINE_SEQUENCE
70               				,p_mode 			 =>	'R'
71               				,p_record_version_number	 =>	p_record_version_number
72               				,x_return_status		 =>	x_return_status);
73 
74 	    end if;
75 
76 check_errors;
77 
78 -- standard check of p_commit
79   if fnd_api.to_boolean(p_commit) then
80       commit work;
81   end if;
82 
83 
84 -- standard call to get message count and if count is 1, get message info
85 fnd_msg_pub.count_and_get(p_count	=>	x_msg_count,
86    			     p_data	=>	x_msg_data);
87 
88 
89 EXCEPTION
90   WHEN FND_API.G_EXC_ERROR THEN
91         IF p_commit = FND_API.G_TRUE THEN
92               ROLLBACK TO update_prop_person_biosketch;
93         END IF;
94 
95         x_return_status := FND_API.G_RET_STS_ERROR;
96 
97         fnd_msg_pub.count_and_get(p_count	=>	x_msg_count,
98    			          p_data	=>	x_msg_data);
99 
100 
101   WHEN OTHERS THEN
102        IF p_commit = FND_API.G_TRUE THEN
103               ROLLBACK TO update_prop_person_biosketch;
104        END IF;
105 
106        x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
107 
108        fnd_msg_pub.add_exc_msg(p_pkg_name       =>    'IGW_PROP_PERSON_BIOSKETCH_PVT',
109                             p_procedure_name    =>    'UPDATE_PROP_PERSON_BIOSKETCH',
110                             p_error_text        =>     SUBSTRB(SQLERRM,1,240));
111 
112        fnd_msg_pub.count_and_get(p_count	=>	x_msg_count,
113    			          p_data	=>	x_msg_data);
114 
115 
116 END  update_prop_person_biosketch;
117 
118 ------------------------------------------------------------------------------------------
119 PROCEDURE CHECK_LOCK
120 		(x_rowid			IN 	VARCHAR2
121 		,p_record_version_number	IN	NUMBER
122 		,x_return_status          	OUT NOCOPY 	VARCHAR2) is
123 
124  l_proposal_id		number;
125  BEGIN
126    select proposal_id
127    into l_proposal_id
128    from igw_prop_person_biosketch
129    where rowid = x_rowid
130    and record_version_number = p_record_version_number;
131 
132  EXCEPTION
133     WHEN NO_DATA_FOUND THEN
134           x_return_status := FND_API.G_RET_STS_ERROR;
135           FND_MESSAGE.SET_NAME('IGW','IGW_SS_RECORD_CHANGED');
136           FND_MSG_PUB.Add;
137           raise fnd_api.g_exc_error;
138 
139     WHEN OTHERS THEN
140           x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
141           fnd_msg_pub.add_exc_msg(p_pkg_name       => 'IGW_PROP_PERSON_BIOSKETCH_PVT',
142                             	  p_procedure_name => 'CHECK_LOCK',
143                             	  p_error_text     => SUBSTRB(SQLERRM,1,240));
144           raise fnd_api.g_exc_unexpected_error;
145 
146 END CHECK_LOCK;
147 
148 -------------------------------------------------------------------------------------------------------
149 PROCEDURE CHECK_ERRORS is
150  l_msg_count 	NUMBER;
151  BEGIN
152        	l_msg_count := fnd_msg_pub.count_msg;
153         IF (l_msg_count > 0) THEN
154               RAISE  FND_API.G_EXC_ERROR;
155         END IF;
156 
157  END CHECK_ERRORS;
158 
159 --------------------------------------------------------------------------------------------------------
160 /*
161 PROCEDURE VALIDATE_LOGGED_USER_RIGHTS
162 (p_proposal_id		  IN  NUMBER
163 ,x_return_status          OUT NOCOPY VARCHAR2) is
164 
165 x		VARCHAR2(1);
166 y		VARCHAR2(1);
167 
168 BEGIN
169     x_return_status:= FND_API.G_RET_STS_SUCCESS;
170 
171   IF (IGW_SECURITY.ALLOW_MODIFY ('NARRATIVE', P_PROPOSAL_ID, FND_GLOBAL.USER_ID) = 'N') THEN
172          x_return_status:= FND_API.G_RET_STS_ERROR;
173          fnd_message.set_name('IGW', 'IGW_NO_RIGHTS');
174          fnd_msg_pub.add;
175   END IF;
176 
177 EXCEPTION
178 
179   WHEN OTHERS THEN
180     x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
181     fnd_msg_pub.add_exc_msg(p_pkg_name       => 'IGW_PROP_NARRATIVES_PVT',
182                             p_procedure_name => 'VALIDATE_LOGGED_USER_RIGHTS',
183                             p_error_text     => SUBSTRB(SQLERRM,1,240));
184     raise fnd_api.g_exc_unexpected_error;
185 END VALIDATE_LOGGED_USER_RIGHTS;
186 */
187 
188 END IGW_PROP_PERSON_BIOSKETCH_PVT;