[Home] [Help]
PACKAGE BODY: APPS.EDW_FLEX_SEG_MAPPING_LINES_PKG
Source
1 package body EDW_FLEX_SEG_MAPPING_LINES_PKG as
2 /* $Header: EDWFMLIB.pls 115.3 99/07/17 16:18:35 porting ship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out VARCHAR2,
5 X_SEG_MAPPING_LINE_ID in NUMBER,
6 X_INSTANCE_CODE in VARCHAR2,
7 X_STRUCTURE_NUM in NUMBER,
8 X_STRUCTURE_NAME in VARCHAR2,
9 X_VALUE_SET_ID in NUMBER,
10 X_SEGMENT_NAME in VARCHAR2,
11 X_APPLICATION_ID in NUMBER,
12 X_ID_FLEX_CODE in VARCHAR2,
13 X_APPLICATION_COLUMN_NAME in VARCHAR2,
14 X_DIMENSION_ID in NUMBER,
15 X_LEVEL_ID in NUMBER,
16 X_WH_DIMENSION_NAME in VARCHAR2,
17 X_CREATION_DATE in DATE,
18 X_CREATED_BY in NUMBER,
19 X_LAST_UPDATE_DATE in DATE,
20 X_LAST_UPDATED_BY in NUMBER,
21 X_LAST_UPDATE_LOGIN in NUMBER
22 ) is
23
24 cursor C is select ROWID from BIS_FLEX_SEG_MAPPING_LINES
25 where seg_mapping_line_id = X_seg_mapping_line_id;
26
27
28 begin
29 insert into BIS_FLEX_SEG_MAPPING_LINES (
30 SEG_MAPPING_LINE_ID,
31 INSTANCE_CODE,
32 STRUCTURE_NUM,
33 STRUCTURE_NAME,
34 VALUE_SET_ID,
35 SEGMENT_NAME,
36 APPLICATION_ID,
37 ID_FLEX_CODE,
38 APPLICATION_COLUMN_NAME,
39 DIMENSION_ID,
40 LEVEL_ID,
41 WH_DIMENSION_NAME,
42 CREATION_DATE,
43 CREATED_BY,
44 LAST_UPDATE_DATE,
45 LAST_UPDATED_BY,
46 LAST_UPDATE_LOGIN
47 ) values (
48 X_SEG_MAPPING_LINE_ID,
49 X_INSTANCE_CODE,
50 X_STRUCTURE_NUM,
51 X_STRUCTURE_NAME,
52 X_VALUE_SET_ID,
53 X_SEGMENT_NAME,
54 X_APPLICATION_ID,
55 X_ID_FLEX_CODE,
56 X_APPLICATION_COLUMN_NAME,
57 X_DIMENSION_ID ,
58 X_LEVEL_ID ,
59 X_WH_DIMENSION_NAME ,
60 X_CREATION_DATE,
61 X_CREATED_BY,
62 X_LAST_UPDATE_DATE,
63 X_LAST_UPDATED_BY,
64 X_LAST_UPDATE_LOGIN
65 );
66
67
68 open c;
69 fetch c into X_ROWID;
70 if (c%notfound) then
71 close c;
72 raise no_data_found;
73 end if;
74 close c;
75
76
77 end INSERT_ROW;
78
79 procedure LOCK_ROW (
80 X_SEG_MAPPING_LINE_ID in NUMBER,
81 X_INSTANCE_CODE in VARCHAR2,
82 X_STRUCTURE_NUM in NUMBER,
83 X_STRUCTURE_NAME in VARCHAR2,
84 X_VALUE_SET_ID in NUMBER,
85 X_SEGMENT_NAME in VARCHAR2,
86 X_APPLICATION_ID in NUMBER,
87 X_ID_FLEX_CODE in VARCHAR2,
88 X_APPLICATION_COLUMN_NAME in VARCHAR2,
89 X_DIMENSION_ID in NUMBER,
90 X_LEVEL_ID in NUMBER,
91 X_WH_DIMENSION_NAME in VARCHAR2
92 ) is
93 cursor c is select
94 INSTANCE_CODE,
95 STRUCTURE_NUM,
96 STRUCTURE_NAME,
97 VALUE_SET_ID,
98 SEGMENT_NAME,
99 APPLICATION_ID,
100 ID_FLEX_CODE,
101 DIMENSION_ID,
102 LEVEL_ID,
103 WH_DIMENSION_NAME
104 from BIS_FLEX_SEG_MAPPING_LINES
105 where seg_mapping_line_id = X_seg_mapping_line_id
106 for update of SEG_MAPPING_LINE_ID nowait;
107 recinfo c%rowtype;
108
109 begin
110 open c;
111 fetch c into recinfo;
112 if (c%notfound) then
113 close c;
114 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
115 app_exception.raise_exception;
116 end if;
117 close c;
118 if ( (nvl(recinfo.INSTANCE_CODE, 'AA') = nvl(X_INSTANCE_CODE, 'AA'))
119 AND (nvl(recinfo.STRUCTURE_NUM, 1) = nvl(X_STRUCTURE_NUM, 1))
120 AND (recinfo.STRUCTURE_NAME = X_STRUCTURE_NAME)
121 AND (nvl(recinfo.VALUE_SET_ID, 1) = nvl(X_VALUE_SET_ID, 1))
122 AND (recinfo.SEGMENT_NAME = X_SEGMENT_NAME)
123 AND (recinfo.APPLICATION_ID = X_APPLICATION_ID)
124 AND (recinfo.ID_FLEX_CODE = X_ID_FLEX_CODE)
125 AND(recinfo.DIMENSION_ID = X_DIMENSION_ID)
126 AND (recinfo.LEVEL_ID = X_LEVEL_ID)
127 AND (nvl(recinfo.WH_DIMENSION_NAME, 'AA') = nvl(X_WH_DIMENSION_NAME, 'AA'))
128 ) then
129 null;
130 else
131 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
132 app_exception.raise_exception;
133 end if;
134
135 return;
136 end LOCK_ROW;
137
138 procedure UPDATE_ROW (
139 X_SEG_MAPPING_LINE_ID in NUMBER,
140 X_INSTANCE_CODE in VARCHAR2,
141 X_STRUCTURE_NUM in NUMBER,
142 X_STRUCTURE_NAME in VARCHAR2,
143 X_VALUE_SET_ID in NUMBER,
144 X_SEGMENT_NAME in VARCHAR2,
145 X_APPLICATION_ID in NUMBER,
146 X_ID_FLEX_CODE in VARCHAR2,
147 X_APPLICATION_COLUMN_NAME in VARCHAR2,
148 X_DIMENSION_ID in NUMBER,
149 X_LEVEL_ID in NUMBER,
150 X_WH_DIMENSION_NAME in VARCHAR2,
151 X_LAST_UPDATE_DATE in DATE,
152 X_LAST_UPDATED_BY in NUMBER,
153 X_LAST_UPDATE_LOGIN in NUMBER
154 ) is
155 begin
156 update BIS_FLEX_SEG_MAPPING_LINES set
157 INSTANCE_CODE = X_INSTANCE_CODE,
158 STRUCTURE_NUM = X_STRUCTURE_NUM,
159 STRUCTURE_NAME = X_STRUCTURE_NAME,
160 VALUE_SET_ID = X_VALUE_SET_ID,
161 SEGMENT_NAME = X_SEGMENT_NAME,
162 APPLICATION_ID = X_APPLICATION_ID,
163 ID_FLEX_CODE = X_ID_FLEX_CODE,
164 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
165 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
166 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
167 APPLICATION_COLUMN_NAME = X_APPLICATION_COLUMN_NAME,
168 DIMENSION_ID = X_DIMENSION_ID,
169 LEVEL_ID = X_LEVEL_ID,
170 WH_DIMENSION_NAME = X_WH_DIMENSION_NAME
171 where seg_mapping_line_id = X_seg_mapping_line_id;
172
173
174
175 if (sql%notfound) then
176 raise no_data_found;
177 end if;
178
179 end UPDATE_ROW;
180
181 procedure DELETE_ROW (
182 X_SEG_MAPPING_LINE_ID in NUMBER
183 ) is
184 begin
185 delete from BIS_FLEX_SEG_MAPPING_LINES
186 where seg_mapping_line_id = X_seg_mapping_line_id;
187
188
189 if (sql%notfound) then
190 raise no_data_found;
191 end if;
192 end DELETE_ROW;
193
194 end EDW_FLEX_SEG_MAPPING_LINES_PKG;