[Home] [Help]
PACKAGE BODY: APPS.MTL_CYCLE_COUNT_ITEMS_PKG
Source
1 PACKAGE BODY MTL_CYCLE_COUNT_ITEMS_PKG as
2 /* $Header: INVADC2B.pls 120.1 2005/06/19 01:01:08 appldev $ */
3 --Added NOCOPY hint to X_Rowid to comply with GSCC File.Sql.39
4 --standard Bug:4410902
5 PROCEDURE Insert_Row(X_Rowid IN OUT NOCOPY VARCHAR2,
6 X_Cycle_Count_Header_Id NUMBER,
7 X_Inventory_Item_Id NUMBER,
8 X_Last_Update_Date DATE,
9 X_Last_Updated_By NUMBER,
10 X_Creation_Date DATE,
11 X_Created_By NUMBER,
12 X_Last_Update_Login NUMBER,
13 X_Abc_Class_Id NUMBER,
14 X_Item_Last_Schedule_Date DATE,
15 X_Schedule_Order NUMBER,
16 X_Approval_Tolerance_Positive NUMBER,
17 X_Approval_Tolerance_Negative NUMBER,
18 X_Control_Group_Flag NUMBER
19 ) IS
20 CURSOR C IS SELECT rowid FROM mtl_cycle_count_items
21 WHERE cycle_count_header_id = X_Cycle_Count_Header_Id;
22
23 BEGIN
24 INSERT INTO mtl_cycle_count_items(
25 cycle_count_header_id,
26 inventory_item_id,
27 last_update_date,
28 last_updated_by,
29 creation_date,
30 created_by,
31 last_update_login,
32 abc_class_id,
33 item_last_schedule_date,
34 schedule_order,
35 approval_tolerance_positive,
36 approval_tolerance_negative,
37 control_group_flag
38 ) VALUES (
39 X_Cycle_Count_Header_Id,
40 X_Inventory_Item_Id,
41 X_Last_Update_Date,
42 X_Last_Updated_By,
43 X_Creation_Date,
44 X_Created_By,
45 X_Last_Update_Login,
46 X_Abc_Class_Id,
47 X_Item_Last_Schedule_Date,
48 X_Schedule_Order,
49 X_Approval_Tolerance_Positive,
50 X_Approval_Tolerance_Negative,
51 X_Control_Group_Flag
52 );
53
54 OPEN C;
55 FETCH C INTO X_Rowid;
56 if (C%NOTFOUND) then
57 CLOSE C;
58 Raise NO_DATA_FOUND;
59 end if;
60 CLOSE C;
61 END Insert_Row;
62
63
64 PROCEDURE Lock_Row(X_Rowid VARCHAR2,
65 X_Cycle_Count_Header_Id NUMBER,
66 X_Inventory_Item_Id NUMBER,
67 X_Abc_Class_Id NUMBER,
68 X_Item_Last_Schedule_Date DATE,
69 X_Schedule_Order NUMBER,
70 X_Approval_Tolerance_Positive NUMBER,
71 X_Approval_Tolerance_Negative NUMBER,
72 X_Control_Group_Flag NUMBER
73 ) IS
74 CURSOR C IS
75 SELECT *
76 FROM mtl_cycle_count_items
77 WHERE rowid = X_Rowid
78 FOR UPDATE of Cycle_Count_Header_Id NOWAIT;
79 Recinfo C%ROWTYPE;
80
81 BEGIN
82 OPEN C;
83 FETCH C INTO Recinfo;
84 if (C%NOTFOUND) then
85 CLOSE C;
86 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
87 APP_EXCEPTION.Raise_Exception;
88 end if;
89 CLOSE C;
90 if (
91 (Recinfo.cycle_count_header_id = X_Cycle_Count_Header_Id)
92 AND (Recinfo.inventory_item_id = X_Inventory_Item_Id)
93 AND (Recinfo.abc_class_id = X_Abc_Class_Id)
94 AND ( (Recinfo.item_last_schedule_date = X_Item_Last_Schedule_Date)
95 OR ( (Recinfo.item_last_schedule_date IS NULL)
96 AND (X_Item_Last_Schedule_Date IS NULL)))
97 AND ( (Recinfo.schedule_order = X_Schedule_Order)
98 OR ( (Recinfo.schedule_order IS NULL)
99 AND (X_Schedule_Order IS NULL)))
100 AND ( (Recinfo.approval_tolerance_positive = X_Approval_Tolerance_Positive)
101 OR ( (Recinfo.approval_tolerance_positive IS NULL)
102 AND (X_Approval_Tolerance_Positive IS NULL)))
103 AND ( (Recinfo.approval_tolerance_negative = X_Approval_Tolerance_Negative)
104 OR ( (Recinfo.approval_tolerance_negative IS NULL)
105 AND (X_Approval_Tolerance_Negative IS NULL)))
106 AND ( (Recinfo.control_group_flag = X_Control_Group_Flag)
107 OR ( (Recinfo.control_group_flag IS NULL)
108 AND (X_Control_Group_Flag IS NULL)))
109 ) then
110 return;
111 else
112 FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
113 APP_EXCEPTION.Raise_Exception;
114 end if;
115 END Lock_Row;
116
117
118
119 PROCEDURE Update_Row(X_Rowid VARCHAR2,
120 X_Cycle_Count_Header_Id NUMBER,
121 X_Inventory_Item_Id NUMBER,
122 X_Last_Update_Date DATE,
123 X_Last_Updated_By NUMBER,
124 X_Last_Update_Login NUMBER,
125 X_Abc_Class_Id NUMBER,
126 X_Item_Last_Schedule_Date DATE,
127 X_Schedule_Order NUMBER,
128 X_Approval_Tolerance_Positive NUMBER,
129 X_Approval_Tolerance_Negative NUMBER,
130 X_Control_Group_Flag NUMBER
131 ) IS
132 BEGIN
133 UPDATE mtl_cycle_count_items
134 SET
135 cycle_count_header_id = X_Cycle_Count_Header_Id,
136 inventory_item_id = X_Inventory_Item_Id,
137 last_update_date = X_Last_Update_Date,
138 last_updated_by = X_Last_Updated_By,
139 last_update_login = X_Last_Update_Login,
140 abc_class_id = X_Abc_Class_Id,
141 item_last_schedule_date = X_Item_Last_Schedule_Date,
142 schedule_order = X_Schedule_Order,
143 approval_tolerance_positive = X_Approval_Tolerance_Positive,
144 approval_tolerance_negative = X_Approval_Tolerance_Negative,
145 control_group_flag = X_Control_Group_Flag
146 WHERE rowid = X_Rowid;
147
148 if (SQL%NOTFOUND) then
149 Raise NO_DATA_FOUND;
150 end if;
151 END Update_Row;
152 PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
153 BEGIN
154 DELETE FROM mtl_cycle_count_items
155 WHERE rowid = X_Rowid;
156
157 if (SQL%NOTFOUND) then
158 Raise NO_DATA_FOUND;
159 end if;
160 END Delete_Row;
161
162
163 END MTL_CYCLE_COUNT_ITEMS_PKG;