1 package body igs_en_dashboard_w as
2 /* $Header: IGSENB3B.pls 120.0 2005/09/13 10:03:21 appldev noship $ */
3 procedure rosetta_table_copy_in_p0(t out nocopy igs_en_dashboard.link_text_type, a0 JTF_VARCHAR2_TABLE_200) as
4 ddindx binary_integer; indx binary_integer;
5 begin
6 if a0 is not null and a0.count > 0 then
7 if a0.count > 0 then
8 indx := a0.first;
9 ddindx := 1;
10 while true loop
11 t(ddindx) := a0(indx);
12 ddindx := ddindx+1;
13 if a0.last =indx
14 then exit;
15 end if;
16 indx := a0.next(indx);
17 end loop;
18 end if;
19 end if;
20 end rosetta_table_copy_in_p0;
21 procedure rosetta_table_copy_out_p0(t igs_en_dashboard.link_text_type, a0 out nocopy JTF_VARCHAR2_TABLE_200) as
22 ddindx binary_integer; indx binary_integer;
23 begin
24 if t is null or t.count = 0 then
25 a0 := JTF_VARCHAR2_TABLE_200();
26 else
27 a0 := JTF_VARCHAR2_TABLE_200();
28 if t.count > 0 then
29 a0.extend(t.count);
30 ddindx := t.first;
31 indx := 1;
32 while true loop
33 a0(indx) := t(ddindx);
34 indx := indx+1;
35 if t.last =ddindx
36 then exit;
37 end if;
38 ddindx := t.next(ddindx);
39 end loop;
40 end if;
41 end if;
42 end rosetta_table_copy_out_p0;
43
44 procedure rosetta_table_copy_in_p1(t out nocopy igs_en_dashboard.cal_type, a0 JTF_VARCHAR2_TABLE_100) as
45 ddindx binary_integer; indx binary_integer;
46 begin
47 if a0 is not null and a0.count > 0 then
48 if a0.count > 0 then
49 indx := a0.first;
50 ddindx := 1;
51 while true loop
52 t(ddindx) := a0(indx);
53 ddindx := ddindx+1;
54 if a0.last =indx
55 then exit;
56 end if;
57 indx := a0.next(indx);
58 end loop;
59 end if;
60 end if;
61 end rosetta_table_copy_in_p1;
62 procedure rosetta_table_copy_out_p1(t igs_en_dashboard.cal_type, a0 out nocopy JTF_VARCHAR2_TABLE_100) as
63 ddindx binary_integer; indx binary_integer;
64 begin
65 if t is null or t.count = 0 then
66 a0 := JTF_VARCHAR2_TABLE_100();
67 else
68 a0 := JTF_VARCHAR2_TABLE_100();
69 if t.count > 0 then
70 a0.extend(t.count);
71 ddindx := t.first;
72 indx := 1;
73 while true loop
74 a0(indx) := t(ddindx);
75 indx := indx+1;
76 if t.last =ddindx
77 then exit;
78 end if;
79 ddindx := t.next(ddindx);
80 end loop;
81 end if;
82 end if;
83 end rosetta_table_copy_out_p1;
84
85 procedure rosetta_table_copy_in_p2(t out nocopy igs_en_dashboard.seq_num_type, a0 JTF_NUMBER_TABLE) as
86 ddindx binary_integer; indx binary_integer;
87 begin
88 if a0 is not null and a0.count > 0 then
89 if a0.count > 0 then
90 indx := a0.first;
91 ddindx := 1;
92 while true loop
93 t(ddindx) := a0(indx);
94 ddindx := ddindx+1;
95 if a0.last =indx
96 then exit;
97 end if;
98 indx := a0.next(indx);
99 end loop;
100 end if;
101 end if;
102 end rosetta_table_copy_in_p2;
103 procedure rosetta_table_copy_out_p2(t igs_en_dashboard.seq_num_type, a0 out nocopy JTF_NUMBER_TABLE) as
104 ddindx binary_integer; indx binary_integer;
105 begin
106 if t is null or t.count = 0 then
107 a0 := JTF_NUMBER_TABLE();
108 else
109 a0 := JTF_NUMBER_TABLE();
110 if t.count > 0 then
111 a0.extend(t.count);
112 ddindx := t.first;
113 indx := 1;
114 while true loop
115 a0(indx) := t(ddindx);
116 indx := indx+1;
117 if t.last =ddindx
118 then exit;
119 end if;
120 ddindx := t.next(ddindx);
121 end loop;
122 end if;
123 end if;
124 end rosetta_table_copy_out_p2;
125
126 procedure rosetta_table_copy_in_p3(t out nocopy igs_en_dashboard.prg_car_type, a0 JTF_VARCHAR2_TABLE_100) as
127 ddindx binary_integer; indx binary_integer;
128 begin
129 if a0 is not null and a0.count > 0 then
130 if a0.count > 0 then
131 indx := a0.first;
132 ddindx := 1;
133 while true loop
134 t(ddindx) := a0(indx);
135 ddindx := ddindx+1;
136 if a0.last =indx
137 then exit;
138 end if;
139 indx := a0.next(indx);
140 end loop;
141 end if;
142 end if;
143 end rosetta_table_copy_in_p3;
144 procedure rosetta_table_copy_out_p3(t igs_en_dashboard.prg_car_type, a0 out nocopy JTF_VARCHAR2_TABLE_100) as
145 ddindx binary_integer; indx binary_integer;
146 begin
147 if t is null or t.count = 0 then
148 a0 := JTF_VARCHAR2_TABLE_100();
149 else
150 a0 := JTF_VARCHAR2_TABLE_100();
151 if t.count > 0 then
152 a0.extend(t.count);
153 ddindx := t.first;
154 indx := 1;
155 while true loop
156 a0(indx) := t(ddindx);
157 indx := indx+1;
158 if t.last =ddindx
159 then exit;
160 end if;
161 ddindx := t.next(ddindx);
162 end loop;
163 end if;
164 end if;
165 end rosetta_table_copy_out_p3;
166
167 procedure rosetta_table_copy_in_p4(t out nocopy igs_en_dashboard.plan_sched_type, a0 JTF_VARCHAR2_TABLE_100) as
168 ddindx binary_integer; indx binary_integer;
169 begin
170 if a0 is not null and a0.count > 0 then
171 if a0.count > 0 then
172 indx := a0.first;
173 ddindx := 1;
174 while true loop
175 t(ddindx) := a0(indx);
176 ddindx := ddindx+1;
177 if a0.last =indx
178 then exit;
179 end if;
180 indx := a0.next(indx);
181 end loop;
182 end if;
183 end if;
184 end rosetta_table_copy_in_p4;
185 procedure rosetta_table_copy_out_p4(t igs_en_dashboard.plan_sched_type, a0 out nocopy JTF_VARCHAR2_TABLE_100) as
186 ddindx binary_integer; indx binary_integer;
187 begin
188 if t is null or t.count = 0 then
189 a0 := JTF_VARCHAR2_TABLE_100();
190 else
191 a0 := JTF_VARCHAR2_TABLE_100();
192 if t.count > 0 then
193 a0.extend(t.count);
194 ddindx := t.first;
195 indx := 1;
196 while true loop
197 a0(indx) := t(ddindx);
198 indx := indx+1;
199 if t.last =ddindx
200 then exit;
201 end if;
202 ddindx := t.next(ddindx);
203 end loop;
204 end if;
205 end if;
206 end rosetta_table_copy_out_p4;
207
208 procedure student_api(p_n_person_id NUMBER
209 , p_c_person_type VARCHAR2
210 , p_text_tbl out nocopy JTF_VARCHAR2_TABLE_200
211 , p_cal_tbl out nocopy JTF_VARCHAR2_TABLE_100
212 , p_seq_tbl out nocopy JTF_NUMBER_TABLE
213 , p_car_tbl out nocopy JTF_VARCHAR2_TABLE_100
214 , p_typ_tbl out nocopy JTF_VARCHAR2_TABLE_100
215 , p_sch_allow out nocopy VARCHAR2
216 )
217
218 as
219 ddp_text_tbl igs_en_dashboard.link_text_type;
220 ddp_cal_tbl igs_en_dashboard.cal_type;
221 ddp_seq_tbl igs_en_dashboard.seq_num_type;
222 ddp_car_tbl igs_en_dashboard.prg_car_type;
223 ddp_typ_tbl igs_en_dashboard.plan_sched_type;
224 ddindx binary_integer; indx binary_integer;
225 begin
226
227 -- copy data to the local IN or IN-OUT args, if any
228
229
230
231
232
233
234
235
236 -- here's the delegated call to the old PL/SQL routine
237 igs_en_dashboard.student_api(p_n_person_id,
238 p_c_person_type,
239 ddp_text_tbl,
240 ddp_cal_tbl,
241 ddp_seq_tbl,
242 ddp_car_tbl,
243 ddp_typ_tbl,
244 p_sch_allow);
245
246 -- copy data back from the local variables to OUT or IN-OUT args, if any
247
248
249 igs_en_dashboard_w.rosetta_table_copy_out_p0(ddp_text_tbl, p_text_tbl);
250
251 igs_en_dashboard_w.rosetta_table_copy_out_p1(ddp_cal_tbl, p_cal_tbl);
252
253 igs_en_dashboard_w.rosetta_table_copy_out_p2(ddp_seq_tbl, p_seq_tbl);
254
255 igs_en_dashboard_w.rosetta_table_copy_out_p3(ddp_car_tbl, p_car_tbl);
256
257 igs_en_dashboard_w.rosetta_table_copy_out_p4(ddp_typ_tbl, p_typ_tbl);
258
259 end;
260
261 end igs_en_dashboard_w;