DBA Data[Home] [Help]

PACKAGE BODY: APPS.PO_REQUISITION_HEADERS_PKG1

Source


1 PACKAGE BODY PO_REQUISITION_HEADERS_PKG1 as
2 /* $Header: POXRIH2B.pls 120.2.12020000.2 2013/02/11 00:43:48 vegajula ship $ */
3 
4 /**************************************************************************/
5 g_fnd_debug CONSTANT VARCHAR2(1) := NVL(FND_PROFILE.VALUE('AFLOG_ENABLED'),'N');
6 c_log_head    CONSTANT VARCHAR2(40) := 'po.plsql.PO_REQUISITION_HEADERS_PKG1.';
7 
8   PROCEDURE Lock_Row(X_Rowid                            VARCHAR2,
9                      X_Requisition_Header_Id            NUMBER,
10                      X_Preparer_Id                      NUMBER,
11                      X_Segment1                         VARCHAR2,
12                      X_Summary_Flag                     VARCHAR2,
13                      X_Enabled_Flag                     VARCHAR2,
14                      X_Segment2                         VARCHAR2,
15                      X_Segment3                         VARCHAR2,
16                      X_Segment4                         VARCHAR2,
17                      X_Segment5                         VARCHAR2,
18                      X_Start_Date_Active                DATE,
19                      X_End_Date_Active                  DATE,
20                      X_Description                      VARCHAR2,
21                      X_Authorization_Status             VARCHAR2,
22                      X_Note_To_Authorizer               VARCHAR2,
23                      X_Type_Lookup_Code                 VARCHAR2,
24                      X_Transferred_To_Oe_Flag           VARCHAR2,
25                      X_Attribute_Category               VARCHAR2,
26                      X_Attribute1                       VARCHAR2,
27                      X_Attribute2                       VARCHAR2,
28                      X_Attribute3                       VARCHAR2,
29                      X_Attribute4                       VARCHAR2,
30                      X_Attribute5                       VARCHAR2,
31                      X_On_Line_Flag                     VARCHAR2,
32                      X_Preliminary_Research_Flag        VARCHAR2,
33                      X_Research_Complete_Flag           VARCHAR2,
34                      X_Preparer_Finished_Flag           VARCHAR2,
35                      X_Preparer_Finished_Date           DATE,
36                      X_Agent_Return_Flag                VARCHAR2,
37                      X_Agent_Return_Note                VARCHAR2,
38                      X_Cancel_Flag                      VARCHAR2,
39                      X_Attribute6                       VARCHAR2,
40                      X_Attribute7                       VARCHAR2,
41                      X_Attribute8                       VARCHAR2,
42                      X_Attribute9                       VARCHAR2,
43                      X_Attribute10                      VARCHAR2,
44                      X_Attribute11                      VARCHAR2,
45                      X_Attribute12                      VARCHAR2,
46                      X_Attribute13                      VARCHAR2,
47                      X_Attribute14                      VARCHAR2,
48                      X_Attribute15                      VARCHAR2,
49                      X_Ussgl_Transaction_Code           VARCHAR2,
50                      X_Government_Context               VARCHAR2,
51                      X_Interface_Source_Code            VARCHAR2,
52                      X_Interface_Source_Line_Id         NUMBER,
53                      X_Closed_Code                      VARCHAR2
54 
55   ) IS
56 
57     CURSOR C IS
58         SELECT *
59         FROM   PO_REQUISITION_HEADERS
60         WHERE  rowid = X_Rowid
61         FOR UPDATE of Requisition_Header_Id NOWAIT;
62     Recinfo C%ROWTYPE;
63     l_api_name CONSTANT VARCHAR2(30) := 'Lock_Row';
64   BEGIN
65     OPEN C;
66     FETCH C INTO Recinfo;
67     if (C%NOTFOUND) then
68       CLOSE C;
69       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
70       APP_EXCEPTION.Raise_Exception;
71     end if;
72     CLOSE C;
73     if (
74 
75                (Recinfo.requisition_header_id = X_Requisition_Header_Id)
76            AND (Recinfo.preparer_id = X_Preparer_Id)
77            AND (TRIM(Recinfo.segment1) = TRIM(X_Segment1))
78            AND (TRIM(Recinfo.summary_flag) = TRIM(X_Summary_Flag))
79            AND (TRIM(Recinfo.enabled_flag) = TRIM(X_Enabled_Flag))
80            AND (   (TRIM(Recinfo.segment2) = TRIM(X_Segment2))
81                 OR (    (TRIM(Recinfo.segment2) IS NULL)
82                     AND (TRIM(X_Segment2) IS NULL)))
83            AND (   (TRIM(Recinfo.segment3) = TRIM(X_Segment3))
84                 OR (    (TRIM(Recinfo.segment3) IS NULL)
85                     AND (TRIM(X_Segment3) IS NULL)))
86            AND (   (TRIM(Recinfo.segment4) = TRIM(X_Segment4))
87                 OR (    (TRIM(Recinfo.segment4) IS NULL)
88                     AND (TRIM(X_Segment4) IS NULL)))
89            AND (   (TRIM(Recinfo.segment5) = TRIM(X_Segment5))
90                 OR (    (TRIM(Recinfo.segment5) IS NULL)
91                     AND (TRIM(X_Segment5) IS NULL)))
92            AND (   (Recinfo.start_date_active = X_Start_Date_Active)
93                 OR (    (Recinfo.start_date_active IS NULL)
94                     AND (X_Start_Date_Active IS NULL)))
95            AND (   (Recinfo.end_date_active = X_End_Date_Active)
96                 OR (    (Recinfo.end_date_active IS NULL)
97                     AND (X_End_Date_Active IS NULL)))
98            AND (   (TRIM(Recinfo.description) = TRIM(X_Description))
99                 OR (    (TRIM(Recinfo.description) IS NULL)
100                     AND (TRIM(X_Description) IS NULL)))
101            AND (   (TRIM(Recinfo.authorization_status) = TRIM(X_Authorization_Status))
102                 OR (    (TRIM(Recinfo.authorization_status) IS NULL)
103                     AND (TRIM(X_Authorization_Status) IS NULL)))
104            AND (   (TRIM(Recinfo.note_to_authorizer) = TRIM(X_Note_To_Authorizer))
105                 OR (    (TRIM(Recinfo.note_to_authorizer) IS NULL)
106                     AND (TRIM(X_Note_To_Authorizer) IS NULL)))
107            AND (   (TRIM(Recinfo.type_lookup_code) = TRIM(X_Type_Lookup_Code))
108                 OR (    (TRIM(Recinfo.type_lookup_code) IS NULL)
109                     AND (TRIM(X_Type_Lookup_Code) IS NULL)))
110            AND (   (TRIM(Recinfo.transferred_to_oe_flag) = TRIM(X_Transferred_To_Oe_Flag))
111                 OR (    (TRIM(Recinfo.transferred_to_oe_flag) IS NULL)
112                     AND (TRIM(X_Transferred_To_Oe_Flag) IS NULL)))
113            AND (   (TRIM(Recinfo.attribute_category) = TRIM(X_Attribute_Category))
114                 OR (    (TRIM(Recinfo.attribute_category) IS NULL)
115                     AND (TRIM(X_Attribute_Category) IS NULL)))
116            AND (   (TRIM(Recinfo.attribute1) = TRIM(X_Attribute1))
117                 OR (    (TRIM(Recinfo.attribute1) IS NULL)
118                     AND (TRIM(X_Attribute1) IS NULL)))
119            AND (   (TRIM(Recinfo.attribute2) = TRIM(X_Attribute2))
120                 OR (    (TRIM(Recinfo.attribute2) IS NULL)
121                     AND (TRIM(X_Attribute2) IS NULL)))
122            AND (   (TRIM(Recinfo.attribute3) = TRIM(X_Attribute3))
123                 OR (    (TRIM(Recinfo.attribute3) IS NULL)
124                     AND (TRIM(X_Attribute3) IS NULL)))
125            AND (   (TRIM(Recinfo.attribute4) = TRIM(X_Attribute4))
126                 OR (    (TRIM(Recinfo.attribute4) IS NULL)
127                     AND (TRIM(X_Attribute4) IS NULL)))
128            AND (   (TRIM(Recinfo.attribute5) = TRIM(X_Attribute5))
129                 OR (    (TRIM(Recinfo.attribute5) IS NULL)
130                     AND (TRIM(X_Attribute5) IS NULL)))
131            AND (   (TRIM(Recinfo.on_line_flag) = TRIM(X_On_Line_Flag))
132                 OR (    (TRIM(Recinfo.on_line_flag) IS NULL)
133                     AND (TRIM(X_On_Line_Flag) IS NULL)))
134            AND (   (TRIM(Recinfo.preliminary_research_flag) = TRIM(X_Preliminary_Research_Flag))
135                 OR (    (TRIM(Recinfo.preliminary_research_flag) IS NULL)
136                     AND (TRIM(X_Preliminary_Research_Flag) IS NULL)))
137            AND (   (TRIM(Recinfo.research_complete_flag) = TRIM(X_Research_Complete_Flag))
138                 OR (    (TRIM(Recinfo.research_complete_flag) IS NULL)
139                     AND (TRIM(X_Research_Complete_Flag) IS NULL)))
140            AND (   (TRIM(Recinfo.preparer_finished_flag) = TRIM(X_Preparer_Finished_Flag))
141                 OR (    (TRIM(Recinfo.preparer_finished_flag) IS NULL)
142                     AND (TRIM(X_Preparer_Finished_Flag) IS NULL)))
143            AND (   (Recinfo.preparer_finished_date = X_Preparer_Finished_Date)
144                 OR (    (Recinfo.preparer_finished_date IS NULL)
145                     AND (X_Preparer_Finished_Date IS NULL)))
146            AND (   (TRIM(Recinfo.agent_return_flag) = TRIM(X_Agent_Return_Flag))
147                 OR (    (TRIM(Recinfo.agent_return_flag) IS NULL)
148                     AND (TRIM(X_Agent_Return_Flag) IS NULL)))
149            AND (   (TRIM(Recinfo.agent_return_note) = TRIM(X_Agent_Return_Note))
150                 OR (    (TRIM(Recinfo.agent_return_note) IS NULL)
151                     AND (TRIM(X_Agent_Return_Note) IS NULL)))
152            AND (   (TRIM(Recinfo.cancel_flag) = TRIM(X_Cancel_Flag))
153                 OR (    (TRIM(Recinfo.cancel_flag) IS NULL)
154                     AND (TRIM(X_Cancel_Flag) IS NULL)))
155            AND (   (TRIM(Recinfo.attribute6) = TRIM(X_Attribute6))
156                 OR (    (TRIM(Recinfo.attribute6) IS NULL)
157                     AND (TRIM(X_Attribute6) IS NULL)))
158            AND (   (TRIM(Recinfo.attribute7) = TRIM(X_Attribute7))
159                 OR (    (TRIM(Recinfo.attribute7) IS NULL)
160                     AND (TRIM(X_Attribute7) IS NULL)))
161            AND (   (TRIM(Recinfo.attribute8) = TRIM(X_Attribute8))
162                 OR (    (TRIM(Recinfo.attribute8) IS NULL)
163                     AND (TRIM(X_Attribute8) IS NULL)))
164            AND (   (TRIM(Recinfo.attribute9) = TRIM(X_Attribute9))
165                 OR (    (TRIM(Recinfo.attribute9) IS NULL)
166                     AND (TRIM(X_Attribute9) IS NULL)))
167            AND (   (TRIM(Recinfo.attribute10) = TRIM(X_Attribute10))
168                 OR (    (TRIM(Recinfo.attribute10) IS NULL)
169                     AND (TRIM(X_Attribute10) IS NULL)))
170            AND (   (TRIM(Recinfo.attribute11) = TRIM(X_Attribute11))
171                 OR (    (TRIM(Recinfo.attribute11) IS NULL)
172                     AND (TRIM(X_Attribute11) IS NULL)))
173            AND (   (TRIM(Recinfo.attribute12) = TRIM(X_Attribute12))
174                 OR (    (TRIM(Recinfo.attribute12) IS NULL)
175                     AND (TRIM(X_Attribute12) IS NULL)))
176            AND (   (TRIM(Recinfo.attribute13) = TRIM(X_Attribute13))
177                 OR (    (TRIM(Recinfo.attribute13) IS NULL)
178                     AND (TRIM(X_Attribute13) IS NULL)))
179            AND (   (TRIM(Recinfo.attribute14) = TRIM(X_Attribute14))
180                 OR (    (TRIM(Recinfo.attribute14) IS NULL)
181                     AND (TRIM(X_Attribute14) IS NULL)))
182            AND (   (TRIM(Recinfo.attribute15) = TRIM(X_Attribute15))
183                 OR (    (TRIM(Recinfo.attribute15) IS NULL)
184                     AND (TRIM(X_Attribute15) IS NULL)))
185            AND (   (TRIM(Recinfo.government_context) = TRIM(X_Government_Context))
186                 OR (    (TRIM(Recinfo.government_context) IS NULL)
187                     AND (TRIM(X_Government_Context) IS NULL)))
188            AND (   (TRIM(Recinfo.interface_source_code) = TRIM(X_Interface_Source_Code))
189                 OR (    (TRIM(Recinfo.interface_source_code) IS NULL)
190                     AND (TRIM(X_Interface_Source_Code) IS NULL)))
191            AND (   (Recinfo.interface_source_line_id = X_Interface_Source_Line_Id)
192                 OR (    (Recinfo.interface_source_line_id IS NULL)
193                     AND (X_Interface_Source_Line_Id IS NULL)))
194            AND (   (TRIM(Recinfo.closed_code) = TRIM(X_Closed_Code))
195                 OR (    (TRIM(Recinfo.closed_code) IS NULL)
196                     AND (TRIM(X_Closed_Code) IS NULL)))
197 
198             ) then
199       return;
200     else
201 	    IF (g_fnd_debug = 'Y') THEN
202         IF (NVL(X_Requisition_Header_Id,-999) <> NVL(Recinfo.requisition_header_id,-999)) THEN
203              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form requisition_header_id'||X_Requisition_Header_Id ||' Database  requisition_header_id '|| Recinfo.requisition_header_id);
204         END IF;
205         IF (NVL(X_Preparer_Id,-999) <> NVL(Recinfo.preparer_id,-999)) THEN
206              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form preparer_id'||X_Preparer_Id ||' Database  preparer_id '|| Recinfo.preparer_id);
207         END IF;
208         IF (NVL(TRIM(X_Segment1),'-999') <> NVL( TRIM(Recinfo.segment1),'-999')) THEN
209              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form segment1 '||X_Segment1 ||' Database  segment1 '||Recinfo.segment1);
210         END IF;
211         IF (NVL(TRIM(X_Summary_Flag),'-999') <> NVL( TRIM(Recinfo.summary_flag),'-999')) THEN
212              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form summary_flag '||X_Summary_Flag ||' Database  summary_flag '||Recinfo.summary_flag);
213         END IF;
214         IF (NVL(TRIM(X_Enabled_Flag),'-999') <> NVL( TRIM(Recinfo.enabled_flag),'-999')) THEN
215              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form enabled_flag '||X_Enabled_Flag ||' Database  enabled_flag '||Recinfo.enabled_flag);
216         END IF;
217         IF (NVL(TRIM(X_Segment2),'-999') <> NVL( TRIM(Recinfo.segment2),'-999')) THEN
218              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form segment2 '||X_Segment2 ||' Database  segment2 '||Recinfo.segment2);
219         END IF;
220         IF (NVL(TRIM(X_Segment3),'-999') <> NVL( TRIM(Recinfo.segment3),'-999')) THEN
221              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form segment3 '||X_Segment3 ||' Database  segment3 '||Recinfo.segment3);
222         END IF;
223         IF (NVL(TRIM(X_Segment4),'-999') <> NVL( TRIM(Recinfo.segment4),'-999')) THEN
224              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form segment4 '||X_Segment4 ||' Database  segment4 '||Recinfo.segment4);
225         END IF;
226         IF (NVL(TRIM(X_Segment5),'-999') <> NVL( TRIM(Recinfo.segment5),'-999')) THEN
227              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form segment5 '||X_Segment5 ||' Database  segment5 '||Recinfo.segment5);
228         END IF;
229         IF (X_Start_Date_Active <> Recinfo.start_date_active ) THEN
230               FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form start_date_active '||X_Start_Date_Active ||' Database  start_date_active '||Recinfo.start_date_active);
231         END IF;
232         IF (X_End_Date_Active <> Recinfo.end_date_active ) THEN
233               FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form end_date_active '||X_End_Date_Active ||' Database  end_date_active '||Recinfo.end_date_active);
234         END IF;
235         IF (NVL(TRIM(X_Description),'-999') <> NVL( TRIM(Recinfo.description),'-999')) THEN
236              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form description '||X_Description ||' Database  description '||Recinfo.description);
237         END IF;
238         IF (NVL(TRIM(X_Authorization_Status),'-999') <> NVL( TRIM(Recinfo.authorization_status),'-999')) THEN
239              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form authorization_status '||X_Authorization_Status ||' Database  authorization_status '||Recinfo.authorization_status);
240         END IF;
241         IF (NVL(TRIM(X_Note_To_Authorizer),'-999') <> NVL( TRIM(Recinfo.note_to_authorizer),'-999')) THEN
242              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form note_to_authorizer '||X_Note_To_Authorizer ||' Database  note_to_authorizer '||Recinfo.note_to_authorizer);
243         END IF;
244         IF (NVL(TRIM(X_Type_Lookup_Code),'-999') <> NVL( TRIM(Recinfo.type_lookup_code),'-999')) THEN
245              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form type_lookup_code '||X_Type_Lookup_Code ||' Database  type_lookup_code '||Recinfo.type_lookup_code);
246         END IF;
247         IF (NVL(TRIM(X_Transferred_To_Oe_Flag),'-999') <> NVL( TRIM(Recinfo.transferred_to_oe_flag),'-999')) THEN
248              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form transferred_to_oe_flag '||X_Transferred_To_Oe_Flag ||' Database  transferred_to_oe_flag '||Recinfo.transferred_to_oe_flag);
249         END IF;
250         IF (NVL(TRIM(X_Attribute_Category),'-999') <> NVL( TRIM(Recinfo.attribute_category),'-999')) THEN
251              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute_category '||X_Attribute_Category ||' Database  attribute_category '||Recinfo.attribute_category);
252         END IF;
253         IF (NVL(TRIM(X_Attribute1),'-999') <> NVL( TRIM(Recinfo.attribute1),'-999')) THEN
254              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute1 '||X_Attribute1 ||' Database  attribute1 '||Recinfo.attribute1);
255         END IF;
256         IF (NVL(TRIM(X_Attribute2),'-999') <> NVL( TRIM(Recinfo.attribute2),'-999')) THEN
257              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute2 '||X_Attribute2 ||' Database  attribute2 '||Recinfo.attribute2);
258         END IF;
259         IF (NVL(TRIM(X_Attribute3),'-999') <> NVL( TRIM(Recinfo.attribute3),'-999')) THEN
260              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute3 '||X_Attribute3 ||' Database  attribute3 '||Recinfo.attribute3);
261         END IF;
262         IF (NVL(TRIM(X_Attribute4),'-999') <> NVL( TRIM(Recinfo.attribute4),'-999')) THEN
263              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute4 '||X_Attribute4 ||' Database  attribute4 '||Recinfo.attribute4);
264         END IF;
265         IF (NVL(TRIM(X_Attribute5),'-999') <> NVL( TRIM(Recinfo.attribute5),'-999')) THEN
266              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute5 '||X_Attribute5 ||' Database  attribute5 '||Recinfo.attribute5);
267         END IF;
268         IF (NVL(TRIM(X_On_Line_Flag),'-999') <> NVL( TRIM(Recinfo.on_line_flag),'-999')) THEN
269              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form on_line_flag '||X_On_Line_Flag ||' Database  on_line_flag '||Recinfo.on_line_flag);
270         END IF;
271         IF (NVL(TRIM(X_Preliminary_Research_Flag),'-999') <> NVL( TRIM(Recinfo.preliminary_research_flag),'-999')) THEN
272              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form preliminary_research_flag '||X_Preliminary_Research_Flag ||' Database  preliminary_research_flag '||Recinfo.preliminary_research_flag);
273         END IF;
274         IF (NVL(TRIM(X_Research_Complete_Flag),'-999') <> NVL( TRIM(Recinfo.research_complete_flag),'-999')) THEN
275              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form research_complete_flag '||X_Research_Complete_Flag ||' Database  research_complete_flag '||Recinfo.research_complete_flag);
276         END IF;
277         IF (NVL(TRIM(X_Preparer_Finished_Flag),'-999') <> NVL( TRIM(Recinfo.preparer_finished_flag),'-999')) THEN
278              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form preparer_finished_flag '||X_Preparer_Finished_Flag ||' Database  preparer_finished_flag '||Recinfo.preparer_finished_flag);
279         END IF;
280         IF (X_Preparer_Finished_Date <> Recinfo.preparer_finished_date ) THEN
281               FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form preparer_finished_date '||X_Preparer_Finished_Date ||' Database  preparer_finished_date '||Recinfo.preparer_finished_date);
282         END IF;
283         IF (NVL(TRIM(X_Agent_Return_Flag),'-999') <> NVL( TRIM(Recinfo.agent_return_flag),'-999')) THEN
284              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form agent_return_flag '||X_Agent_Return_Flag ||' Database  agent_return_flag '||Recinfo.agent_return_flag);
285         END IF;
286         IF (NVL(TRIM(X_Agent_Return_Note),'-999') <> NVL( TRIM(Recinfo.agent_return_note),'-999')) THEN
287              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form agent_return_note '||X_Agent_Return_Note ||' Database  agent_return_note '||Recinfo.agent_return_note);
288         END IF;
289         IF (NVL(TRIM(X_Cancel_Flag),'-999') <> NVL( TRIM(Recinfo.cancel_flag),'-999')) THEN
290              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form cancel_flag '||X_Cancel_Flag ||' Database  cancel_flag '||Recinfo.cancel_flag);
291         END IF;
292         IF (NVL(TRIM(X_Attribute6),'-999') <> NVL( TRIM(Recinfo.attribute6),'-999')) THEN
293              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute6 '||X_Attribute6 ||' Database  attribute6 '||Recinfo.attribute6);
294         END IF;
295         IF (NVL(TRIM(X_Attribute7),'-999') <> NVL( TRIM(Recinfo.attribute7),'-999')) THEN
296              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute7 '||X_Attribute7 ||' Database  attribute7 '||Recinfo.attribute7);
297         END IF;
298         IF (NVL(TRIM(X_Attribute8),'-999') <> NVL( TRIM(Recinfo.attribute8),'-999')) THEN
299              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute8 '||X_Attribute8 ||' Database  attribute8 '||Recinfo.attribute8);
300         END IF;
301         IF (NVL(TRIM(X_Attribute9),'-999') <> NVL( TRIM(Recinfo.attribute9),'-999')) THEN
302              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute9 '||X_Attribute9 ||' Database  attribute9 '||Recinfo.attribute9);
303         END IF;
304         IF (NVL(TRIM(X_Attribute10),'-999') <> NVL( TRIM(Recinfo.attribute10),'-999')) THEN
305              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute10 '||X_Attribute10 ||' Database  attribute10 '||Recinfo.attribute10);
306         END IF;
307         IF (NVL(TRIM(X_Attribute11),'-999') <> NVL( TRIM(Recinfo.attribute11),'-999')) THEN
308              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute11 '||X_Attribute11 ||' Database  attribute11 '||Recinfo.attribute11);
309         END IF;
310         IF (NVL(TRIM(X_Attribute12),'-999') <> NVL( TRIM(Recinfo.attribute12),'-999')) THEN
311              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute12 '||X_Attribute12 ||' Database  attribute12 '||Recinfo.attribute12);
312         END IF;
313         IF (NVL(TRIM(X_Attribute13),'-999') <> NVL( TRIM(Recinfo.attribute13),'-999')) THEN
314              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute13 '||X_Attribute13 ||' Database  attribute13 '||Recinfo.attribute13);
315         END IF;
316         IF (NVL(TRIM(X_Attribute14),'-999') <> NVL( TRIM(Recinfo.attribute14),'-999')) THEN
317              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute14 '||X_Attribute14 ||' Database  attribute14 '||Recinfo.attribute14);
318         END IF;
319         IF (NVL(TRIM(X_Attribute15),'-999') <> NVL( TRIM(Recinfo.attribute15),'-999')) THEN
320              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form attribute15 '||X_Attribute15 ||' Database  attribute15 '||Recinfo.attribute15);
321         END IF;
322         IF (NVL(TRIM(X_Government_Context),'-999') <> NVL( TRIM(Recinfo.government_context),'-999')) THEN
323              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form government_context '||X_Government_Context ||' Database  government_context '||Recinfo.government_context);
324         END IF;
325         IF (NVL(TRIM(X_Interface_Source_Code),'-999') <> NVL( TRIM(Recinfo.interface_source_code),'-999')) THEN
326              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form interface_source_code '||X_Interface_Source_Code ||' Database  interface_source_code '||Recinfo.interface_source_code);
327         END IF;
328         IF (NVL(X_Interface_Source_Line_Id,-999) <> NVL(Recinfo.interface_source_line_id,-999)) THEN
329              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form interface_source_line_id'||X_Interface_Source_Line_Id ||' Database  interface_source_line_id '|| Recinfo.interface_source_line_id);
330         END IF;
331         IF (NVL(TRIM(X_Closed_Code),'-999') <> NVL( TRIM(Recinfo.closed_code),'-999')) THEN
332              FND_LOG.string(FND_LOG.LEVEL_STATEMENT,c_log_head || l_api_name,' Form closed_code '||X_Closed_Code ||' Database  closed_code '||Recinfo.closed_code);
333         END IF;
334     END IF;
335       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
336       APP_EXCEPTION.RAISE_EXCEPTION;
337     end if;
338 
339     EXCEPTION   --Bug 12373682
340       WHEN app_exception.record_lock_exception THEN
341           po_message_s.app_error ('PO_ALL_CANNOT_RESERVE_RECORD');
342   END Lock_Row;
343 
344 
345 END PO_REQUISITION_HEADERS_PKG1;