1
<%@ page import="java.sql.*" %>
2
<%@ page import="com.opensymphony.xwork.util.OgnlValueStack" %>
7
// for selected OrgUnit Name
11
// for Data Period Start Date and End Date
15
//for no. of acceptors during the month
19
//for no. of acceptors during year
37
String userName = "dhis";
39
String urlForConnection = "jdbc:mysql://localhost/kl_dhis2";
41
OgnlValueStack stack = (OgnlValueStack)request.getAttribute("webwork.valueStack");
42
String selectedId = (String) stack.findValue( "orgUnitId" );
43
int selectedOrgUnitID = Integer.parseInt( selectedId );
45
// String selectedPeriodId = (String) stack.findValue( "periodSelect" );
46
// int selectedDataPeriodID = Integer.parseInt( selectedPeriodId );
48
String monthlyPeriodId = (String) stack.findValue( "monthlyPeriodTypeId" );
49
int periodTypeID = Integer.parseInt( monthlyPeriodId );
51
String startingDate = (String) stack.findValue( "startingPeriod" );
52
String endingDate = (String) stack.findValue( "endingPeriod" );
58
String selectedOrgUnitName = "";
59
String selectedDataPeriodStartDate = "";
60
String selectedDataPeriodEndDate = "";
70
String districtName =" ";
72
String dataElementCodes[] = {
100
int monthlyDataValues[] = new int[dataElementCodes.length];
101
int yearlyDataValues[] = new int[dataElementCodes.length];
107
Class.forName ("com.mysql.jdbc.Driver").newInstance ();
108
con = DriverManager.getConnection (urlForConnection, userName, password);
110
st1 = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
111
st2 = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
112
st3 = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
113
st4 = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
114
st5 = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
115
st6 = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
116
st7 = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
117
st8 = con.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_READ_ONLY);
119
//rs1 = st1.executeQuery("SELECT organisationunit.name FROM organisationunit where organisationunit.id ="+selectedOrgUnitID);
120
rs1 = st1.executeQuery("SELECT organisationunit.name FROM organisationunit where organisationunit.organisationunitid ="+selectedOrgUnitID);
121
if(rs1.next()) { selectedOrgUnitName = rs1.getString(1); }
122
else { selectedOrgUnitName = ""; }
124
// rs2 = st2.executeQuery("select startDate,endDate from period where id = "+selectedDataPeriodID);
127
// selectedDataPeriodStartDate = rs2.getDate(1).toString();
128
// selectedDataPeriodEndDate = rs2.getDate(2).toString();
131
selectedDataPeriodStartDate = startingDate;
133
String partsOfDataPeriodStartDate[] = selectedDataPeriodStartDate.split("-");
134
lastYear = Integer.parseInt(partsOfDataPeriodStartDate[0]) - 1;
135
int tempForMonth1 = Integer.parseInt(partsOfDataPeriodStartDate[1]);
137
if(tempForMonth1 < 4) { tempForYear = lastYear; }
138
else { tempForYear = lastYear + 1; }
139
String curYearStart = tempForYear+"-04-01";
141
//rs3=st3.executeQuery("SELECT sum(value) FROM datavalue WHERE dataElement in (select id from dataelement where code like '"+dataElementCodes[i]+"') and source in (select id from organisationunit where parent ="+selectedOrgUnitID+") and period in (select id from period where startdate between '"+startingDate+"' and '"+startingDate+"') ");
142
rs3=st3.executeQuery("SELECT sum(value) FROM datavalue WHERE dataelementid in (select dataelementid from dataelement where code like '"+dataElementCodes[i]+"') and sourceid in (select organisationunitid from organisationunit where parentid ="+selectedOrgUnitID+") and periodid in (select periodid from period where startdate between '"+startingDate+"' and '"+startingDate+"') ");
143
if(rs3.next()) { monthlyDataValues[i] = rs3.getInt(1); }
145
//rs4=st4.executeQuery("SELECT sum(value) FROM datavalue WHERE dataElement in (select id from dataelement where code like '"+dataElementCodes[i]+"') and source in (select id from organisationunit where parent ="+selectedOrgUnitID+") and period in (select id from period where startdate between '"+curYearStart+"' and '"+selectedDataPeriodStartDate+"' and periodType = "+periodTypeID+")");
146
rs4=st4.executeQuery("SELECT sum(value) FROM datavalue WHERE dataelementid in (select dataelementid from dataelement where code like '"+dataElementCodes[i]+"') and sourceid in (select organisationunitid from organisationunit where parentid ="+selectedOrgUnitID+") and periodid in (select periodid from period where startdate between '"+curYearStart+"' and '"+selectedDataPeriodStartDate+"' and periodtypeid = "+periodTypeID+")");
147
if(rs4.next()) { yearlyDataValues[i] = rs4.getInt(1); }
149
//for district, taluk, CHC names
152
//rs8=st8.executeQuery("select organisationunit.id, organisationunit.name FROM organisationunit WHERE organisationunit.id in ( select organisationunit.parent from organisationunit where organisationunit.id = "+selectedOrgUnitID+")");
153
rs8=st8.executeQuery("select organisationunit.organisationunitid, organisationunit.name FROM organisationunit WHERE organisationunit.organisationunitid in ( select organisationunit.parentid from organisationunit where organisationunit.organisationunitid = "+selectedOrgUnitID+")");
154
if(rs8.next()) { CHCID = rs8.getInt(1);CHCName = rs8.getString(2); }
155
else { CHCID = 0; CHCName = ""; }
157
//rs5=st5.executeQuery("select organisationunit.id, organisationunit.name FROM organisationunit WHERE organisationunit.id in ( select organisationunit.parent from organisationunit where organisationunit.id = "+CHCID+")");
158
rs5=st5.executeQuery("select organisationunit.organisationunitid, organisationunit.name FROM organisationunit WHERE organisationunit.organisationunitid in ( select organisationunit.parentid from organisationunit where organisationunit.organisationunitid = "+CHCID+")");
159
if(rs5.next()) { talukID = rs5.getInt(1); talukName = rs5.getString(2); }
160
else { talukID = 0; talukName = ""; }
162
//rs6=st6.executeQuery("select organisationunit.id, organisationunit.name FROM organisationunit WHERE organisationunit.id in ( select organisationunit.parent from organisationunit where organisationunit.id = "+talukID+")");
163
rs6=st6.executeQuery("select organisationunit.organisationunitid, organisationunit.name FROM organisationunit WHERE organisationunit.organisationunitid in ( select organisationunit.parentid from organisationunit where organisationunit.organisationunitid = "+talukID+")");
164
if(rs6.next()) { districtID = rs6.getInt(1); districtName = rs6.getString(2);}
165
else {districtID = 0; districtName = "";}
167
catch(Exception e) { out.println(e.getMessage()); }
172
if(rs1!=null) rs1.close(); if(st1!=null) st1.close();
173
if(rs2!=null) rs2.close(); if(st2!=null) st2.close();
174
if(rs3!=null) rs3.close(); if(st3!=null) st3.close();
175
if(rs4!=null) rs4.close(); if(st4!=null) st4.close();
176
if(rs5!=null) rs5.close(); if(st5!=null) st5.close();
177
if(rs6!=null) rs6.close(); if(st6!=null) st6.close();
178
if(rs7!=null) rs7.close(); if(st7!=null) st7.close();
179
if(rs8!=null) rs8.close(); if(st8!=null) st8.close();
181
if(con!=null) con.close();
183
catch(Exception e) { out.println(e.getMessage()); }
184
} // finally block end
193
<title>IEC REPORT</title>
198
<font face="arial" size=3>IEC REPORT</font><br><br>
201
<table border="0" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber1">
203
<td width="50%" ><font face="arial" size=2>Dist :<%=districtName%> </font></td>
204
<td width="50%" align="right"><font face="arial" size=2> PHC :<%=selectedOrgUnitName%></font></td>
207
<table border="1" cellpadding="0" cellspacing="0" style="border-collapse: collapse" bordercolor="#111111" width="100%" id="AutoNumber2">
209
<td width="5%" align="center"><font face="arial" size=2>Sl.No</font></td>
210
<td width="75%" align="center"><font face="arial" size=2>Activities</font></td>
211
<td width="10%" align="center"><font face="arial" size=2>During the Month</font></td>
212
<td width="10%" align="center"><font face="arial" size=2>During the Year</font></td>
215
<td width="5%" align="center"><font face="arial" size=2> 1</font></td>
216
<td width="75%" ><font face="arial" size="2">No.of M.S.S functioning</font></td>
217
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[0]%></font> </td>
218
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[0]%></font> </td>
221
<td width="5%" align="center"><font face="arial" size=2> 2</font></td>
222
<td width="75%" ><font face="arial" size="2">No.of M.S.S discontinued</font></td>
223
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[1]%></font> </td>
224
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[1]%></font> </td>
227
<td width="5%" align="center"><font face="arial" size="2"> 3</font></td>
228
<td width="75%" ><font face="arial" size="2">No.of M.S.S continued</font></td>
229
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[0]- monthlyDataValues[1]%></font> </td>
230
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[0]- yearlyDataValues[1]%></font> </td>
233
<td width="5%" align="center"><font face="arial" size=2> 4</font></td>
234
<td width="75%" ><font face="arial" size="2">Total no.of M.S.S members old and new</font></td>
235
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[2]%></font> </td>
236
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[2]%></font> </td>
239
<td width="5%" align="center"><font face="arial" size=2> 5</font></td>
240
<td width="75%" ><font face="arial" size="2">No.of M.S.S members meeting held</font></td>
241
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[3]%></font> </td>
242
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[3]%></font> </td>
245
<td width="5%" align="center"><font face="arial" size=2> 6</font></td>
246
<td width="75%" ><font face="arial" size="2">No.of folders/Booklets/phamlets/posters distributed</font></td>
247
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[4]%></font> </td>
248
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[4]%></font> </td>
251
<td width="5%" align="center"><font face="arial" size=2> 7</font></td>
252
<td width="75%" ><font face="arial" size=2> No.of depoholders established by M.S.S</font></td>
253
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[5]%></font> </td>
254
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[5]%></font> </td>
257
<td width="5%" align="center"><font face="arial" size=2> 8</font></td>
258
<td width="75%" ><font face="arial" size="2">No.of other educational activities organised/group discussions etc</font></td>
259
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[6]%></font> </td>
260
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[6]%></font> </td>
263
<td width="5%" align="center"><font face="arial" size=2> 9</font></td>
264
<td width="75%" ><font face="arial" size="2">Immunization Camp</font></td>
265
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[7]%></font> </td>
266
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[7]%></font> </td>
269
<td width="5%" align="center"><font face="arial" size=2> 10</font></td>
270
<td width="75%" ><font face="arial" size="2">IUD Cases</font></td>
271
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[8]%></font> </td>
272
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[8]%></font> </td>
275
<td width="5%" align="center"><font face="arial" size="2"> 11</font></td>
276
<td width="75%" ><font face="arial" size="2">Sterilization Cases</font></td>
277
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[9] + monthlyDataValues[10] + monthlyDataValues[11] + monthlyDataValues[12] + monthlyDataValues[13]%></font> </td>
278
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[9] + yearlyDataValues[10] + yearlyDataValues[11] + yearlyDataValues[12] + yearlyDataValues[13]%></font> </td>
281
<td width="5%" align="center"><font face="arial" size=2> 12</font></td>
282
<td width="75%" ><font face="arial" size="2">Antinatal Cases</font></td>
283
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[14]%></font> </td>
284
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[14]%></font> </td>
287
<td width="5%" align="center"><font face="arial" size=2> 13</font></td>
288
<td width="75%" ><font face="arial" size="2">Distribution of iron folic aoid</font></td>
289
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[15]%></font> </td>
290
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[15]%></font> </td>
294
<td width="5%" align="center"><font face="arial" size=2> 14</font></td>
295
<td width="75%" ><font face="arial" size="2">Media Activities</font></td>
296
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[16]%></font> </td>
297
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[16]%></font> </td>
300
<td width="5%" align="center"><font face="arial" size=2> (a)</font></td>
301
<td width="75%" ><font face="arial" size="2">Film Show</font></td>
302
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[17]%></font> </td>
303
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[17]%></font> </td>
307
<td width="5%" align="center"><font face="arial" size=2> (b)</font></td>
308
<td width="75%" ><font face="arial" size="2">Cinema</font></td>
309
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[18]%></font> </td>
310
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[18]%></font> </td>
313
<td width="5%" align="center"><font face="arial" size="2"> (c)</font></td>
314
<td width="75%" ><font face="arial" size="2">Mini exhibition</font></td>
315
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[19]%></font> </td>
316
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[19]%></font> </td>
319
<td width="5%" align="center"><font face="arial" size="2"> (d)</font></td>
320
<td width="75%"><font face="arial" size="2">Ward population unit seminars</font></td>
321
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[20]%></font> </td>
322
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[20]%></font> </td>
325
<td width="5%" align="center"><font face="arial" size="2"> (e)</font></td>
326
<td width="75%" ><font face="arial" size="2">Video show</font></td>
327
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[21]%></font> </td>
328
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[21]%></font> </td>
331
<td width="5%" align="center"><font face="arial" size="2"> (f)</font></td>
332
<td width="75%" ><font face="arial" size="2">Slide projection done</font></td>
333
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[22]%></font> </td>
334
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[22]%></font> </td>
337
<td width="5%" align="center"><font face="arial" size="2"> (g)</font></td>
338
<td width="75%" ><font face="arial" size="2">Group discussion</font></td>
339
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[23]%></font> </td>
340
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[23]%></font> </td>
343
<td width="5%" align="center"><font face="arial" size="2"> (h)</font></td>
344
<td width="75%"><font face="arial" size="2">Public meeting</font></td>
345
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[24]%></font> </td>
346
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[24]%></font> </td>
349
<td width="5%" align="center"><font face="arial" size=2> (i)</font></td>
350
<td width="75%"><font face="arial" size="2">Any fund Alloted</font></td>
351
<td width="10%" align="center"><font face="arial" size=2><%=monthlyDataValues[25]%></font> </td>
352
<td width="10%" align="center"><font face="arial" size=2><%=yearlyDataValues[25]%></font> </td>
b'\\ No newline at end of file'