1 package body IEC_G_REP_CONF_VALIDATORS_PKG as
2 /* $Header: IECREPDB.pls 115.0 2004/03/24 05:10:57 anayak noship $ */
3
4 procedure INSERT_ROW (
5 X_ROWID in out NOCOPY VARCHAR2,
6 X_VALIDATOR_ID in NUMBER,
7 X_VALIDATOR_CLASS in VARCHAR2,
8 X_FORMAT in VARCHAR2,
9 X_CREATED_BY in NUMBER,
10 X_CREATION_DATE in DATE,
11 X_LAST_UPDATED_BY in NUMBER,
12 X_LAST_UPDATE_DATE in DATE,
13 X_LAST_UPDATE_LOGIN in NUMBER,
14 X_OBJECT_VERSION_NUMBER in NUMBER
15 ) is
16 cursor C is select ROWID
17 from iec_g_rep_conf_vldtrs
18 where
19 VALIDATOR_ID = X_VALIDATOR_ID
20 and VALIDATOR_CLASS = X_VALIDATOR_CLASS
21 and FORMAT = X_FORMAT;
22
23 begin
24
25 insert into iec_g_rep_conf_vldtrs
26 ( VALIDATOR_ID,
27 VALIDATOR_CLASS,
28 FORMAT,
29 CREATED_BY,
30 CREATION_DATE,
31 LAST_UPDATED_BY,
32 LAST_UPDATE_DATE,
33 LAST_UPDATE_LOGIN,
34 OBJECT_VERSION_NUMBER)
35 values( X_VALIDATOR_ID,
36 X_VALIDATOR_CLASS,
37 X_FORMAT,
38 X_CREATED_BY,
39 X_CREATION_DATE,
40 X_LAST_UPDATED_BY,
41 X_LAST_UPDATE_DATE,
42 X_LAST_UPDATE_LOGIN,
43 X_OBJECT_VERSION_NUMBER);
44
45 open c;
46 fetch c into X_ROWID;
47 if (c%notfound) then
48 close c;
49 raise no_data_found;
50 end if;
51 close c;
52
53 end INSERT_ROW;
54
55 procedure LOCK_ROW (
56 X_VALIDATOR_ID in NUMBER,
57 X_VALIDATOR_CLASS in VARCHAR2,
58 X_FORMAT in VARCHAR2,
59 X_OBJECT_VERSION_NUMBER in NUMBER
60 ) is
61 cursor c is select
62 VALIDATOR_CLASS,
63 FORMAT,
64 OBJECT_VERSION_NUMBER
65 from iec_g_rep_conf_vldtrs
66 where VALIDATOR_ID = X_VALIDATOR_ID
67 for update of VALIDATOR_CLASS, FORMAT, OBJECT_VERSION_NUMBER nowait;
68 recinfo c%rowtype;
69 begin
70 open c;
71 fetch c into recinfo;
72 if (c%notfound) then
73 close c;
74 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
75 app_exception.raise_exception;
76 end if;
77 close c;
78 if ( (recinfo.VALIDATOR_CLASS = X_VALIDATOR_CLASS)
79 AND (recinfo.FORMAT = X_FORMAT)
80 AND (recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
81 ) then
82 null;
83 else
84 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
85 app_exception.raise_exception;
86 end if;
87 return;
88 end LOCK_ROW;
89
90 procedure UPDATE_ROW (
91 X_VALIDATOR_ID in NUMBER,
92 X_VALIDATOR_CLASS in VARCHAR2,
93 X_FORMAT in VARCHAR2,
94 X_LAST_UPDATED_BY in NUMBER,
95 X_LAST_UPDATE_DATE in DATE,
96 X_LAST_UPDATE_LOGIN in NUMBER,
97 X_OBJECT_VERSION_NUMBER in NUMBER
98 ) is
99 begin
100
101 update iec_g_rep_conf_vldtrs
102 set LAST_UPDATED_BY = X_LAST_UPDATED_BY,
103 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
104 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN,
105 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
106 VALIDATOR_CLASS = X_VALIDATOR_CLASS,
107 FORMAT = X_FORMAT
108 where VALIDATOR_ID = X_VALIDATOR_ID;
109
110 if (sql%notfound) then
111 raise no_data_found;
112 end if;
113
114 end UPDATE_ROW;
115
116 procedure DELETE_ROW (
117 X_VALIDATOR_ID in NUMBER
118 ) is
119 begin
120 delete from iec_g_rep_conf_vldtrs
121 where VALIDATOR_ID = X_VALIDATOR_ID;
122
123 if (sql%notfound) then
124 raise no_data_found;
125 end if;
126 end DELETE_ROW;
127
128 procedure LOAD_ROW (
129 X_VALIDATOR_ID in NUMBER,
130 X_VALIDATOR_CLASS in VARCHAR2,
131 X_FORMAT in VARCHAR2,
132 X_OWNER in VARCHAR2
133 ) is
134 USER_ID NUMBER := 0;
135 ROW_ID VARCHAR2(500);
136 begin
137
138 if (X_OWNER = 'SEED') then
139 USER_ID := 1;
140 end if;
141
142 UPDATE_ROW (X_VALIDATOR_ID, X_VALIDATOR_CLASS, X_FORMAT, USER_ID, SYSDATE, USER_ID, 0);
143
144 exception
145 when no_data_found then
146 INSERT_ROW (ROW_ID, X_VALIDATOR_ID, X_VALIDATOR_CLASS, X_FORMAT, USER_ID, SYSDATE, USER_ID, SYSDATE, USER_ID, 0);
147
148 end LOAD_ROW;
149
150 end IEC_G_REP_CONF_VALIDATORS_PKG;