2 ================================================================================
4 ================================================================================
5 Copyright (C) 2017 AT&T Intellectual Property
6 ================================================================================
7 Licensed under the Apache License, Version 2.0 (the "License");
8 you may not use this file except in compliance with the License.
9 You may obtain a copy of the License at
11 http://www.apache.org/licenses/LICENSE-2.0
13 Unless required by applicable law or agreed to in writing, software
14 distributed under the License is distributed on an "AS IS" BASIS,
15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 See the License for the specific language governing permissions and
17 limitations under the License.
18 ================================================================================
21 Name: wizard_chart.jsp
22 Use : This JSP is invoked when chart tab is selected. This is used for creating chart configuration for the report.
27 12-Aug-2009 : Version 8.5 (Sundar);
29 <LI> For Line Chart Category can be configured. For this UI is added.</LI>
30 <LI> Line Chart can be displayed as 3D or 2D.</LI>
32 29-Jun-2009 : Version 8.4 (Sundar);
34 <LI> For Bar Chart Last Series/Category can be configured as Line Chart or Bar Chart. For this UI is added.</LI>
35 <LI> UI options for compare to prev year chart has been added. </LI>
38 23-Jun-2009 : Version 8.4 (Sundar);
40 <LI> Hiding/ Unhiding parameters based on chart type is checked throughly and missing elements were added.</LI>
41 <LI> Table width is made 100% for special input parameters </LI>
44 22-Jun-2009 : Version 8.4 (Sundar);
47 <LI> Calendar JS and CSS were added to this page as it is used in customizable input parameters for Time Difference Chart. </LI>
48 <LI> JS method and configurable input parameters were added for Multiple Pie Chart, Bar Chart 3D, Pareto, Time Difference Chart and Multiple
49 Time Series Chart. </LI>
52 <%@page import="org.openecomp.portalsdk.analytics.model.runtime.FormField"%>
53 <%@page import="org.openecomp.portalsdk.analytics.model.runtime.ReportFormFields"%>
54 <%@page import="org.openecomp.portalsdk.analytics.model.runtime.ReportRuntime"%>
55 <%@page import="org.openecomp.portalsdk.analytics.model.base.IdNameValue"%>
56 <%@page import="org.openecomp.portalsdk.analytics.model.DataCache"%>
57 <%@page import="org.openecomp.portalsdk.analytics.model.ReportHandler"%>
58 <%@page import="java.util.Vector"%>
59 <%@ page import="java.util.List" %>
60 <%@ page import="java.util.ArrayList" %>
61 <%@ page import="java.util.Iterator" %>
62 <%@ page import="org.openecomp.portalsdk.analytics.xmlobj.DataColumnType" %>
63 <%@ page import="org.openecomp.portalsdk.analytics.model.definition.ReportDefinition" %>
64 <%@ page import="org.openecomp.portalsdk.analytics.controller.WizardSequence" %>
65 <%@ page import="org.openecomp.portalsdk.analytics.util.AppConstants" %>
66 <%@ page import="org.openecomp.portalsdk.analytics.system.Globals" %>
67 <%@ page import="org.openecomp.portalsdk.analytics.system.AppUtils" %>
68 <%@ page import="org.openecomp.portalsdk.analytics.xmlobj.Reports"%>
71 ReportDefinition rdef = (ReportDefinition) request.getAttribute(AppConstants.SI_REPORT_DEFINITION);
72 WizardSequence ws = rdef.getWizardSequence();
73 boolean isCrossTab = rdef.getReportType().equals(AppConstants.RT_CROSSTAB);
74 boolean isSQLBased = rdef.getReportDefType().equals(AppConstants.RD_SQL_BASED) || rdef.getReportDefType().equals(AppConstants.RD_SQL_BASED_DATAMIN);
76 String legendColId = null;
77 String valueColId = null;
79 //String firstColId = null;
80 //String firstNumColId = null;
82 List reportCols = rdef.getAllColumns();
83 List chartValueCols = rdef.getChartValueColumnsList(AppConstants.CHART_ALL_COLUMNS, null);
85 ArrayList unusedNumCols = new ArrayList(reportCols.size());
87 for(Iterator iter=reportCols.iterator(); iter.hasNext(); ) {
88 DataColumnType dct = (DataColumnType) iter.next();
90 if(nvl(dct.getColOnChart()).equals(AppConstants.GC_LEGEND))
91 legendColId = dct.getColId();
93 if(isSQLBased||nvl(dct.getColType()).equals(AppConstants.CT_NUMBER)) {
95 if(nvl(dct.getColOnChart()).length()==0) //dct.getChartSeq()<0)
96 unusedNumCols.add(dct);
99 /* if(dct.getChartSeq()>0)
100 valueColId = dct.getColId();
103 firstColId = dct.getColId();
104 if(firstNumColId==null)
106 firstNumColId = dct.getColId();
108 if(nvl(dct.getColType()).equals(AppConstants.CT_NUMBER))
109 firstNumColId = dct.getColId();*/
112 String chartType = nvl(rdef.getChartType()); %>
114 <script type="text/javascript" src="<%= AppUtils.getBaseFolderURL() %>js/CalendarPopup.js"></script>
115 <link rel="stylesheet" type="text/css" href="<%= AppUtils.getBaseFolderURL() %>css/calendar.css">
117 <script language="javascript">
121 function refreshWizard() {
122 var selectBox = document.forma.chartType;
123 var selectedString = selectBox.options[selectBox.selectedIndex].value;
125 if(selectedString == '<%=AppConstants.GT_TIME_SERIES%>'){
126 document.getElementById("seriesDiv").style.display='block';
127 var selObj = document.getElementById('chartSeries');
129 var selIndex = selObj.selectedIndex;
130 var value = selObj.options[selIndex].value;
131 var value = <%=chartValueCols.size()%>;
133 document.getElementById("multiseriesDiv").style.display='block';
136 document.getElementById("multiseriesDiv").style.display='none';
137 document.getElementById("multiSeries").value='N';
140 <% int col1Idx = 1; %>
141 //var contentIframe = window.parent.document.getElementById("content_Iframe");
142 //contentIframe.style.height = contentIframe.clientHeight + 120;
143 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="block";
144 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
145 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="block";
146 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display="block";
147 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
148 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
149 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
150 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
151 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
152 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
153 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="block";
154 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
155 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
156 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='block';
157 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='none';
158 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='block';
159 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='none';
160 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
167 for(int i=1; i<chartValueCols.size(); i++) {
170 document.getElementById("newChartDiv<%=col1Idx%>").style.visibility='hidden';
171 //document.getElementById("chartGroupDiv<%=col1Idx%>").style.visibility='hidden';
172 document.getElementById("seriesDiv").style.display='none';
173 document.getElementById("multiseriesDiv").style.display='none';
174 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
175 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
176 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
177 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='none';
184 if(selectedString == "<%=AppConstants.GT_PIE_MULTIPLE%>") {
185 //var contentIframe = window.parent.document.getElementById("content_Iframe");
186 //contentIframe.style.height = contentIframe.clientHeight + 120;
187 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="block";
188 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="block";
189 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
190 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
191 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
192 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='none';
193 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
194 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
195 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
196 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
197 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="block";
198 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
199 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
200 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='block';
201 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='none';
202 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='block';
203 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='none';
204 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
206 } else if(selectedString == "<%=AppConstants.GT_SCATTER%>") {
207 //var contentIframe = window.parent.document.getElementById("content_Iframe");
208 //contentIframe.style.height = contentIframe.clientHeight + 120;
209 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="none";
210 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
211 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
212 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
213 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='block';
214 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
215 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
216 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
217 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
218 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
219 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="block";
220 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
221 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
222 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='block';
223 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='none';
224 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='block';
225 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='none';
226 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
229 } else if(selectedString == "<%=AppConstants.GT_REGRESSION%>") {
230 //var contentIframe = window.parent.document.getElementById("content_Iframe");
231 //contentIframe.style.height = contentIframe.clientHeight + 120;
232 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="none";
233 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
234 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
235 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
236 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='block';
237 if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
238 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='block';
239 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='block';
240 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
241 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
242 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
243 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
244 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="none";
245 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
246 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
247 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='block';
248 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='none';
249 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='block';
250 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
253 } else if(selectedString == "<%=AppConstants.GT_STACKED_VERT_BAR%>" || selectedString == "<%=AppConstants.GT_STACKED_HORIZ_BAR%>" || selectedString == "<%=AppConstants.GT_STACKED_VERT_BAR_LINES%>"
254 || selectedString == "<%=AppConstants.GT_STACKED_HORIZ_BAR_LINES%>") {
255 //var contentIframe = window.parent.document.getElementById("content_Iframe");
256 //contentIframe.style.height = contentIframe.clientHeight + 120;
257 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="none";
258 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
259 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
260 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
261 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='block';
262 if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
263 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
264 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='block';
265 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="block";
266 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
267 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
268 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
269 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="block";
270 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
271 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
272 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='block';
273 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='none';
274 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='block';
275 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='block';
276 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
278 } else if(selectedString == "<%=AppConstants.GT_BAR_3D%>") {
279 //var contentIframe = window.parent.document.getElementById("content_Iframe");
280 //contentIframe.style.height = contentIframe.clientHeight + 120;
281 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="block";
282 if (document.getElementById("BarChartOptions")) document.getElementById("BarChartOptions").style.display='block';
283 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display='block';
284 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='block';
285 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
286 if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
287 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
288 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='block';
289 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
290 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='block';
291 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
292 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
293 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="block";
294 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
295 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='block';
296 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='block';
297 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='none';
298 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='block';
299 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
301 } else if(selectedString == "<%=AppConstants.GT_LINE%>") {
302 //var contentIframe = window.parent.document.getElementById("content_Iframe");
303 //contentIframe.style.height = contentIframe.clientHeight + 120;
304 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="none";
305 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
306 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
307 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='block';
308 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
309 if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
310 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
311 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
312 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='block';
313 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
314 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
315 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="block";
316 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
317 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='block';
318 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='block';
319 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='none';
320 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='block';
321 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='block';
322 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='block';
324 } else if (selectedString == "<%=AppConstants.GT_PARETO_CHART%>") {
325 //var contentIframe = window.parent.document.getElementById("content_Iframe");
326 //contentIframe.style.height = contentIframe.clientHeight + 120;
327 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="none";
328 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
329 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
330 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='none';
331 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
332 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
333 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
334 if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
335 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
336 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
337 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
338 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="none";
339 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
340 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
341 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='block';
342 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='none';
343 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='block';
344 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='none';
345 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
347 } else if (selectedString == "<%=AppConstants.GT_TIME_DIFFERENCE_CHART%>") {
348 //var contentIframe = window.parent.document.getElementById("content_Iframe");
349 //contentIframe.style.height = contentIframe.clientHeight + 120;
350 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="none";
351 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
352 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
353 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='block';
354 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
355 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
356 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
357 if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
358 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
359 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
360 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
361 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="none";
362 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='block';
363 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
364 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='block';
365 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='none';
366 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='none';
367 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='none';
368 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
370 } else if (selectedString == "<%=AppConstants.GT_COMPARE_PREVYEAR_CHART%>") {
371 //var contentIframe = window.parent.document.getElementById("content_Iframe");
372 //contentIframe.style.height = contentIframe.clientHeight + 120;
373 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="none";
374 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
375 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
376 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='block';
377 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
378 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
379 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
380 if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
381 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
382 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
383 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
384 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="none";
385 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
386 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
387 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='block';
388 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='none';
389 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='none';
390 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='none';
391 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
393 }else if (selectedString != "<%=AppConstants.GT_TIME_SERIES%>") {
394 //var contentIframe = window.parent.document.getElementById("content_Iframe");
395 //contentIframe.style.height = contentIframe.clientHeight + 120;
396 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="block";
397 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
398 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="block";
399 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='none';
400 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
401 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
402 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
403 //if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
404 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
405 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
406 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
407 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="block";
408 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
409 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
410 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='block';
411 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
413 } else if (selectedString == "<%=AppConstants.GT_MULTIPLE_TIMESERIES_CHART%>") {
414 //var contentIframe = window.parent.document.getElementById("content_Iframe");
415 //contentIframe.style.height = contentIframe.clientHeight + 120;
416 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="none";
417 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='none';
418 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
419 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
420 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='block';
421 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
422 if (document.getElementById("chartOptions")) document.getElementById("chartOptions").style.display="block";
423 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='none';
424 if (document.getElementById("lastSeriesAsLineChartDiv")) document.getElementById("lastSeriesAsLineChartDiv").style.display='none';
425 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
426 if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
427 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
428 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
429 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
430 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="block";
431 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
432 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
433 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
436 //var contentIframe = window.parent.document.getElementById("content_Iframe");
437 //contentIframe.style.height = contentIframe.clientHeight + 120;
438 if (document.getElementById("animatedDiv")) document.getElementById("animatedDiv").style.display="none";
439 if (document.getElementById("regressionChartDiv")) document.getElementById("regressionChartDiv").style.display='none';
440 if (document.getElementById("LabelAngleForOtherCharts")) document.getElementById("LabelAngleForOtherCharts").style.display='block';
441 if (document.getElementById("LabelAngleForTimeSeriesCharts")) document.getElementById("LabelAngleForTimeSeriesCharts").style.display='none';
442 if (document.getElementById("maxLabelsInDomainAxisForOtherCharts")) document.getElementById("maxLabelsInDomainAxisForOtherCharts").style.display='none';
443 if (document.getElementById("CustomizingYAxisDiv")) document.getElementById("CustomizingYAxisDiv").style.display='none';
444 if (document.getElementById("drillDownOptions")) document.getElementById("drillDownOptions").style.display="none";
445 if (document.getElementById("lastSeriesAsBarChartDiv")) document.getElementById("lastSeriesAsBarChartDiv").style.display='none';
446 if (document.getElementById("seriesDiv")) document.getElementById("seriesDiv").style.display='none';
447 if (document.getElementById("multiseriesDiv")) document.getElementById("multiseriesDiv").style.display='none';
448 if (document.getElementById("multiplePieChartOptions")) document.getElementById("multiplePieChartOptions").style.display="none";
449 if (document.getElementById("barChartOptions")) document.getElementById("barChartOptions").style.display="none";
450 if (document.getElementById("stackBarChartOptions")) document.getElementById("stackBarChartOptions").style.display="none";
451 if (document.getElementById("AddRangeAxisDiv")) document.getElementById("AddRangeAxisDiv").style.display="none";
452 if (document.getElementById("TimeDifferenceChartOptions")) document.getElementById("TimeDifferenceChartOptions").style.display='none';
453 if (document.getElementById("BarLineChartOptions")) document.getElementById("BarLineChartOptions").style.display='none';
454 if (document.getElementById("keepAsString")) document.getElementById("keepAsString").style.display='none';
462 <iframe id="calendarFrame" class="nav" z-index:199; scrolling="no" frameborder="0" width=165px height=165px src="" style="position:absolute; display:none;">
465 <div id="calendarDiv" name="calendarDiv" style="position:absolute; z-index:200; visibility:none; background-color:white;layer-background-color:white;"></div>
468 <table width="100%" class="tableBorder" border="0" cellspacing="1" cellpadding="3" align=center>
470 <td class=rbg1 colspan=5 valign="Middle"><b class=rtableheader>Step <%= ws.getCurrentStepIndex() %> of <%= ws.getStepCount() %> - Report <%= ws.getCurrentStep() %></b></td>
472 <% if(numColsCount==0) { %>
474 <td class=rbg2 colspan=5 align="center" height="30"><font class=rtabletext>No numeric columns found - chart not available</font></td>
476 <input type="hidden" name="chartType" value="">
477 <input type="hidden" name="chartWidth" value="">
478 <input type="hidden" name="chartHeight" value="">
485 <td class=rbg2 align="right" width="50%" height="30"><font class=rtabletext>Chart Type: </font></td>
486 <td class=rbg3 align="left"><font class=rtabletext>
487 <select name="chartType" onChange="showAlertForTimeSeries()">
488 <option value="" <%= chartType.equals("" )?" selected":"" %>>--- Do Not Include Chart ---
489 <option value="<%= AppConstants.GT_BAR_3D %>"<%= chartType.equals(AppConstants.GT_BAR_3D ) || chartType.equals(AppConstants.GT_HORIZ_BAR ) || chartType.equals(AppConstants.GT_VERT_BAR ) || chartType.equals(AppConstants.GT_BAR_LINES)?" selected":"" %>>Bar Chart
490 <option value="<%= AppConstants.GT_TOTAL_BAR %>"<%= chartType.equals(AppConstants.GT_TOTAL_BAR)?" selected":"" %>>Bar Chart With Running Total
491 <% if(!Globals.getJFreeVersion().equals(AppConstants.JFV_0911)) { %>
492 <option value="<%= AppConstants.GT_STACKED_VERT_BAR %>"<%= chartType.equals(AppConstants.GT_STACKED_VERT_BAR)?" selected":"" %>>Vertical Stacked Bar
493 <option value="<%= AppConstants.GT_STACKED_HORIZ_BAR %>"<%= chartType.equals(AppConstants.GT_STACKED_HORIZ_BAR)?" selected":"" %>>Horizontal Stacked Bar
494 <option value="<%= AppConstants.GT_STACKED_VERT_BAR_LINES %>"<%= chartType.equals(AppConstants.GT_STACKED_VERT_BAR_LINES)?" selected":"" %>>Vertical Stacked Bar With Lines Chart
495 <option value="<%= AppConstants.GT_STACKED_HORIZ_BAR_LINES %>"<%= chartType.equals(AppConstants.GT_STACKED_HORIZ_BAR_LINES)?" selected":"" %>>Horizontal Stacked Bar With Lines Chart
497 <option value="<%= AppConstants.GT_LINE %>"<%= chartType.equals(AppConstants.GT_LINE )?" selected":"" %>>Line Chart
498 <option value="<%= AppConstants.GT_PIE_3D %>"<%= chartType.equals(AppConstants.GT_PIE_3D )?" selected":"" %>>Pie Chart 3D
499 <option value="<%= AppConstants.GT_PIE %>"<%= chartType.equals(AppConstants.GT_PIE )?" selected":"" %>>Pie Chart
500 <option value="<%= AppConstants.GT_PIE_MULTIPLE %>"<%= chartType.equals(AppConstants.GT_PIE_MULTIPLE )?" selected":"" %>>Multiple Pie Chart
501 <option value="<%= AppConstants.GT_PARETO_CHART %>"<%= chartType.equals(AppConstants.GT_PARETO_CHART )?" selected":"" %>>Pareto Chart
502 <option value="<%= AppConstants.GT_MULTIPLE_TIMESERIES_CHART %>"<%= chartType.equals(AppConstants.GT_MULTIPLE_TIMESERIES_CHART )?" selected":"" %>>Multiple TimeSeries Chart
503 <option value="<%= AppConstants.GT_TIME_DIFFERENCE_CHART %>"<%= chartType.equals(AppConstants.GT_TIME_DIFFERENCE_CHART )?" selected":"" %>>Time Difference Chart
504 <option value="<%= AppConstants.GT_COMPARE_PREVYEAR_CHART %>"<%= chartType.equals(AppConstants.GT_COMPARE_PREVYEAR_CHART )?" selected":"" %>>Compare Previous Year Chart
505 <option value="<%= AppConstants.GT_SCATTER %>"<%= chartType.equals(AppConstants.GT_SCATTER )?" selected":"" %>>Scatter Plot Chart
506 <option value="<%= AppConstants.GT_REGRESSION %>"<%= chartType.equals(AppConstants.GT_REGRESSION )?" selected":"" %>>Regression Chart
507 <option value="<%= AppConstants.GT_HIERARCHICAL %>"<%= chartType.equals(AppConstants.GT_HIERARCHICAL )?" selected":"" %>>Hierarchical (HTML5) Chart
508 <option value="<%= AppConstants.GT_HIERARCHICAL_SUNBURST %>"<%= chartType.equals(AppConstants.GT_HIERARCHICAL_SUNBURST )?" selected":"" %>>Hierarchical (HTML5) Sun Burst Chart
510 <% if(!Globals.getJFreeVersion().equals(AppConstants.JFV_0911)) { %>
511 <option value="<%= AppConstants.GT_TIME_SERIES%>"<%= chartType.equals(AppConstants.GT_TIME_SERIES )?" selected":"" %>>Time Series Chart
512 <% } //It is supported only when chart library is above 0911 %>
513 <% if(Globals.getShowNonstandardCharts()) { %>
514 <option value="<%= AppConstants.GT_MTD_BAR %>"<%= chartType.equals(AppConstants.GT_MTD_BAR )?" selected":"" %>>Month To Date Bar Chart
515 <% } // if(Globals.getShowNonstandardCharts
517 </select></font></td>
518 <td class=rbg3 align="left" nowrap><font class=rtabletext>
519 <input type="checkbox" name="chartTypeFixed" value="Y"<%= rdef.isChartTypeFixed()?" checked":"" %>>
520 Do NOT allow user to change chart type at runtime
522 <td id="animatedDiv" style ="display:none;">
523 <select name="animatedOption">
524 <option value="static" <%=!rdef.isChartAnimate()?" selected":""%>> Static </option>
525 <option value="animate" <%=rdef.isChartAnimate()?" selected":""%>> Animate </option>
533 <td class=rbg2 align="right" height="30"><font class=rtabletext>Chart Width (px): </font></td>
534 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
535 <input type="text" name="chartWidth" value="<%= ""+rdef.getChartWidthAsInt() %>" size="10" maxlength="4"></font></td>
538 <td class=rbg2 align="right" height="30"><font class=rtabletext>Chart Height (px): </font></td>
539 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
540 <input type="text" name="chartHeight" value="<%= ""+rdef.getChartHeightAsInt() %>" size="10" maxlength="4"></font></td>
543 <td class=rbg2 align="right" height="30"><font class=rtabletext>Domain Axis: </font></td>
544 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
545 <select name="legendCol">
546 <% for(Iterator iter=reportCols.iterator(); iter.hasNext(); ) {
547 DataColumnType dct = (DataColumnType) iter.next(); %>
548 <option value="<%= dct.getColId() %>"<%= nvl(legendColId /*, firstColId*/).equals(dct.getColId())?" selected":"" %>><%= dct.getDisplayName() %>
550 </select></font></td>
553 <td class=rbg2 align="right" height="30"><font class=rtabletext>Category:</font></td>
554 <td class=rbg3 colspan=4 align="left" ><font class=rtabletext>
555 <select name="chartSeries" onChange="refreshWizard()">
556 <% int isThereChartSeries = 0;
557 if(rdef.hasSeriesColumn()) isThereChartSeries = 1;
558 if(isThereChartSeries == 0) {
560 <option value="-1" selected> -->select series <-- </option>
564 <option value="-1"> -->select series <-- </option>
567 for(Iterator iter=reportCols.iterator(); iter.hasNext(); ) {
568 DataColumnType dct = (DataColumnType) iter.next();
569 if(dct.isChartSeries()!=null && dct.isChartSeries().booleanValue()) {
571 <option value="<%= dct.getColId() %>" selected><%= dct.getDisplayName() %>
576 <option value="<%= dct.getColId() %>"><%= dct.getDisplayName() %>
578 } // else Chart Series
582 </select></font></td>
584 <tr id = "lastSeriesAsLineChartDiv">
585 <td> last Category display As Line Chart
587 <td class=rbg3 colspan=3 align="left" nowrap><font class=rtabletext>
588 <input type="checkbox" name="lastSeriesALineChart" value="Y"<%= rdef.isLastSeriesALineChart()?" checked":"" %>>
592 <tr id = "lastSeriesAsBarChartDiv">
593 <td> last Category display As Bar Chart
595 <td class=rbg3 colspan=3 align="left" nowrap><font class=rtabletext>
596 <input type="checkbox" name="lastSeriesABarChart" value="Y"<%= rdef.isLastSeriesABarChart()?" checked":"" %>>
600 <tr id = "multiseriesDiv">
601 <td class=rbg2 align="right" height="30"><font class=rtabletext>Multi Series</font></td>
602 <td class=rbg3 colspan=4 align="left" width="50%">
603 <input type=radio name="multiSeries" value="Y" <%= (AppUtils.getRequestNvlValue(request, "multiSeries").trim().length()>0? (AppUtils.getRequestNvlValue(request, "multiSeries").equals("Y")? " checked ":""): (rdef.isMultiSeries() ? " checked ":" checked ")) %>><font class=rtabletext>Yes</font>
604 <input type=radio name="multiSeries" value="N" <%= (AppUtils.getRequestNvlValue(request, "multiSeries").trim().length()>0? (AppUtils.getRequestNvlValue(request, "multiSeries").equals("N")? " checked ":""): (!rdef.isMultiSeries() ? " checked":"")) %>><font class=rtabletext>No</font>
607 <% if(chartValueCols.size()==0) { %>
609 <td class=rbg2 align="right" height="30"><font class=rtabletext>Range Axis:</font></td>
610 <td class=rbg3 colspan=3 align="left" width="50%"><font class=rtabletext>
611 <select name="valueCol1">
612 <% for(Iterator iter=reportCols.iterator(); iter.hasNext(); ) {
613 DataColumnType dct = (DataColumnType) iter.next();
614 if(isSQLBased||nvl(dct.getColType()).equals(AppConstants.CT_NUMBER)) {%>
615 <option value="<%= dct.getColId() %>"><%= dct.getDisplayName() %>
619 </select></font></td>
620 <td class=rbg3 align="center" nowrap><font class=rtabletext>
621 <% String sValue = ""; %>
622 <select name="valueCol1Color">
623 <option value=""<%= sValue.equals("") ?" selected":"" %>>Color: Default
624 <option value="#00FFFF"<%= sValue.equals("#00FFFF")?" selected":"" %>>Aqua
625 <option value="#000000"<%= sValue.equals("#000000")?" selected":"" %>>Black
626 <option value="#0000FF"<%= sValue.equals("#0000FF")?" selected":"" %>>Blue
627 <option value="#FF00FF"<%= sValue.equals("#FF00FF")?" selected":"" %>>Fuchsia
628 <option value="#808080"<%= sValue.equals("#808080")?" selected":"" %>>Gray
629 <option value="#008000"<%= sValue.equals("#008000")?" selected":"" %>>Green
630 <option value="#00FF00"<%= sValue.equals("#00FF00")?" selected":"" %>>Lime
631 <option value="#800000"<%= sValue.equals("#800000")?" selected":"" %>>Maroon
632 <option value="#000080"<%= sValue.equals("#000080")?" selected":"" %>>Navy
633 <option value="#808000"<%= sValue.equals("#808000")?" selected":"" %>>Olive
634 <option value="#FF9900"<%= sValue.equals("#FF9900")?" selected":"" %>>Orange
635 <option value="#800080"<%= sValue.equals("#800080")?" selected":"" %>>Purple
636 <option value="#FF0000"<%= sValue.equals("#FF0000")?" selected":"" %>>Red
637 <option value="#C0C0C0"<%= sValue.equals("#C0C0C0")?" selected":"" %>>Silver
638 <option value="#008080"<%= sValue.equals("#008080")?" selected":"" %>>Teal
639 <option value="#FFFFFF"<%= sValue.equals("#FFFFFF")?" selected":"" %>>White
640 <option value="#FFFF00"<%= sValue.equals("#FFFF00")?" selected":"" %>>Yellow
647 for(Iterator iterV=chartValueCols.iterator(); iterV.hasNext(); count++) {
649 DataColumnType dctV = (DataColumnType) iterV.next();
650 colIdx = dctV.getColId();
652 boolean newChart = false;
654 colAxisIdx = Integer.parseInt(dctV.getColOnChart());
655 } catch(Exception e) {}
656 newChart = (dctV.isCreateInNewChart()!=null)?dctV.isCreateInNewChart().booleanValue():false;
660 <td class=rbg2 align="right" height="30"><font class=rtabletext>Range Axis <%= count %>:</font></td>
661 <td class=rbg3 align="left" nowrap><font class=rtabletext>
662 <select name="valueCol<%= count %>">
663 <% for(Iterator iter=reportCols.iterator(); iter.hasNext(); ) {
664 DataColumnType dct = (DataColumnType) iter.next();
665 if(isSQLBased||nvl(dct.getColType()).equals(AppConstants.CT_NUMBER)) {%>
666 <option value="<%= dct.getColId() %>"<%= dct.getColId().equals(dctV.getColId())?" selected":"" %>><%= dct.getDisplayName() %>
673 <input type=image border="0" src="<%= AppUtils.getImgFolderURL() %>deleteicon.gif" alt="Remove" width="12" height="12" onClick="document.forma.<%= AppConstants.RI_WIZARD_ACTION %>.value='<%= AppConstants.WA_DELETE_USER %>'; document.forma.<%= AppConstants.RI_DETAIL_ID %>.value='<%= dctV.getColId() %>';">
677 <td class=rbg3 align="center" nowrap>
679 String chartGroupOrg = dctV.getChartGroup();
680 String yAxisGroup = dctV.getYAxis();
681 String chartGroup = (chartGroupOrg!=null && chartGroupOrg.length()>0 && chartGroupOrg.indexOf("|")!= -1)?chartGroupOrg.substring(0,chartGroupOrg.lastIndexOf("|")):"";
682 String yAxis = (yAxisGroup!=null && yAxisGroup.length()>0 && yAxisGroup.indexOf("|")!= -1)?yAxisGroup.substring(0,yAxisGroup.lastIndexOf("|")):"";
684 <div id="chartGroupDiv<%=colIdx%>">
685 <font class=rtabletext>Chart Title:</font><input type="text" name="chartGroup<%= colIdx%>Axis" value="<%=nvl(chartGroup).length()>0?chartGroup:""%>"/>
686 <font class=rtabletext>YAxis:</font><input type="text" name="YAxisLabel<%= colIdx%>" value="<%=nvl(yAxis).length()>0?yAxis:""%>"/>
690 <td class=rbg3 align="center" nowrap><font class=rtabletext>
691 <% String sValue = nvl(dctV.getChartColor()); %>
692 <select name="valueCol<%= count %>Color">
693 <option value=""<%= sValue.equals("") ?" selected":"" %>>Color: Default
694 <option value="#00FFFF"<%= sValue.equals("#00FFFF")?" selected":"" %>>Aqua
695 <option value="#000000"<%= sValue.equals("#000000")?" selected":"" %>>Black
696 <option value="#0000FF"<%= sValue.equals("#0000FF")?" selected":"" %>>Blue
697 <option value="#FF00FF"<%= sValue.equals("#FF00FF")?" selected":"" %>>Fuchsia
698 <option value="#808080"<%= sValue.equals("#808080")?" selected":"" %>>Gray
699 <option value="#008000"<%= sValue.equals("#008000")?" selected":"" %>>Green
700 <option value="#00FF00"<%= sValue.equals("#00FF00")?" selected":"" %>>Lime
701 <option value="#800000"<%= sValue.equals("#800000")?" selected":"" %>>Maroon
702 <option value="#000080"<%= sValue.equals("#000080")?" selected":"" %>>Navy
703 <option value="#808000"<%= sValue.equals("#808000")?" selected":"" %>>Olive
704 <option value="#FF9900"<%= sValue.equals("#FF9900")?" selected":"" %>>Orange
705 <option value="#800080"<%= sValue.equals("#800080")?" selected":"" %>>Purple
706 <option value="#FF0000"<%= sValue.equals("#FF0000")?" selected":"" %>>Red
707 <option value="#C0C0C0"<%= sValue.equals("#C0C0C0")?" selected":"" %>>Silver
708 <option value="#008080"<%= sValue.equals("#008080")?" selected":"" %>>Teal
709 <option value="#FFFFFF"<%= sValue.equals("#FFFFFF")?" selected":"" %>>White
710 <option value="#FFFF00"<%= sValue.equals("#FFFF00")?" selected":"" %>>Yellow
713 <td class=rbg3 align="left" nowrap valign="middle"><font class=rtabletext>
715 <div id="newChartDiv<%=count%>">
716 <input type="checkbox" name="newChart<%= count %>Axis" value="Y"<%= (newChart)?" checked":"" %>>
717 Create in New Chart
719 <input type="checkbox" name="valueCol<%= count %>Axis" value="Y"<%= (colAxisIdx>0)?" checked":"" %>>
720 Use secondary axis (Line chart only)
725 } // else (chartValueCols.size()==0)
726 if(unusedNumCols.size()>0) { %>
727 <tr id="AddRangeAxisDiv">
728 <td class=rbg2 align="right" height="30"><font class=rtabletext>Add Values Column:</font></td>
729 <td class=rbg3 align="left"><font class=rtabletext>
730 <select name="valueColNew" onChange="if(! checkValueColNew()) return; document.forma.<%= AppConstants.RI_WIZARD_ACTION %>.value='<%= AppConstants.WA_ADD_USER %>'; document.forma.submit();">
731 <option value="" selected>--- Select Column ---
732 <% for(Iterator iter=unusedNumCols.iterator(); iter.hasNext(); ) {
733 DataColumnType dct = (DataColumnType) iter.next();
734 if(isSQLBased||nvl(dct.getColType()).equals(AppConstants.CT_NUMBER)) {%>
735 <option value="<%= dct.getColId() %>"><%= dct.getDisplayName() %>
741 <td class=rbg3 align="center" nowrap><font class=rtabletext>
742 <% String sValue = ""; %>
743 <select name="valueColNewColor">
744 <option value=""<%= sValue.equals("") ?" selected":"" %>>Color: Default
745 <option value="#00FFFF"<%= sValue.equals("#00FFFF")?" selected":"" %>>Aqua
746 <option value="#000000"<%= sValue.equals("#000000")?" selected":"" %>>Black
747 <option value="#0000FF"<%= sValue.equals("#0000FF")?" selected":"" %>>Blue
748 <option value="#FF00FF"<%= sValue.equals("#FF00FF")?" selected":"" %>>Fuchsia
749 <option value="#808080"<%= sValue.equals("#808080")?" selected":"" %>>Gray
750 <option value="#008000"<%= sValue.equals("#008000")?" selected":"" %>>Green
751 <option value="#00FF00"<%= sValue.equals("#00FF00")?" selected":"" %>>Lime
752 <option value="#800000"<%= sValue.equals("#800000")?" selected":"" %>>Maroon
753 <option value="#000080"<%= sValue.equals("#000080")?" selected":"" %>>Navy
754 <option value="#808000"<%= sValue.equals("#808000")?" selected":"" %>>Olive
755 <option value="#FF9900"<%= sValue.equals("#FF9900")?" selected":"" %>>Orange
756 <option value="#800080"<%= sValue.equals("#800080")?" selected":"" %>>Purple
757 <option value="#FF0000"<%= sValue.equals("#FF0000")?" selected":"" %>>Red
758 <option value="#C0C0C0"<%= sValue.equals("#C0C0C0")?" selected":"" %>>Silver
759 <option value="#008080"<%= sValue.equals("#008080")?" selected":"" %>>Teal
760 <option value="#FFFFFF"<%= sValue.equals("#FFFFFF")?" selected":"" %>>White
761 <option value="#FFFF00"<%= sValue.equals("#FFFF00")?" selected":"" %>>Yellow
764 <td colspan="2" class=rbg3 align="left" nowrap><font class=rtabletext>
765 <input type="checkbox" name="valueColNewAxis" value="Y">
766 Use secondary axis (Line chart only)
769 <% } // if(unusedNumCols.size()==0)
770 if(chartValueCols.size()>1 || rdef.hasSeriesColumn()) { %>
772 <td class=rbg2 align="right" height="30"><font class=rtabletext>Primary Axis Label:</font></td>
773 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
774 <input type="text" name="leftAxisLabel" class=rtabletext value="<%= nvl(rdef.getChartLeftAxisLabel()) %>" size="40">
775 (Multi-series Chart Only)</font></td>
778 <td class=rbg2 align="right" height="30"><font class=rtabletext>Secondary Axis Label:</font></td>
779 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
780 <input type="text" name="rightAxisLabel" class=rtabletext value="<%= nvl(rdef.getChartRightAxisLabel()) %>" size="40">
781 (Multi-series Chart Only)</font></td>
783 <% } // if(chartValueCols.size()>1)
786 <td class=rbg2 align="right" height="30"><font class=rtabletext> </font></td>
787 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
788 Note: Some chart types (like Pie) will only display Series 1 Values.</font></td>
793 <div id="multiplePieChartOptions" style="display:none;">
796 <td colspan="3"><font class=rtabletext>Additional Multiple Pie Charts options:</font></td>
799 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Order by </font></td>
800 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
801 <input type=radio name="multiplePieOrder" value="row" <%= AppUtils.getRequestNvlValue(request, "multiplePieOrder").equals("row")?" checked": ((AppUtils.getRequestNvlValue(request, "multiplePieOrder").length()<=0)? (rdef.isMultiplePieOrderByRow() ?" checked": (rdef.isMultiplePieOrderByColumn()?"":" checked")):"") %>>Table By Row
802 <input type=radio name="multiplePieOrder" value="column" <%= AppUtils.getRequestNvlValue(request, "multiplePieOrder").equals("column") ? " checked":((AppUtils.getRequestNvlValue(request, "multiplePieOrder").length()<=0)? (rdef.isMultiplePieOrderByColumn() ?" checked": (rdef.isMultiplePieOrderByRow()?"":" checked")):"") %>>Table By Column
805 <input type="checkbox" name="multiplePieOrderInRunPage" value="Y"<%= AppUtils.getRequestNvlValue(request, "multiplePieOrderInRunPage").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "multiplePieOrderInRunPage").length()<=0)?(rdef.displayPieOrderinRunPage()?" checked":""):"") %>> Display in run page
810 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Label Options</font></td>
811 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
812 <input type=radio name="multiplePieLabelDisplay" value="percentage"
813 <%= AppUtils.getRequestNvlValue(request, "multiplePieLabelDisplay").equals("percentage")?" checked": ((AppUtils.getRequestNvlValue(request, "multiplePieLabelDisplay").length()<=0)? (nvl(rdef.getMultiplePieLabelDisplay()).length() > 0 ? (rdef.getMultiplePieLabelDisplay().equals("percentage")?" checked":""):" checked"):"") %>>Display Percentage
814 <input type=radio name="multiplePieLabelDisplay" value="value"
815 <%= AppUtils.getRequestNvlValue(request, "multiplePieLabelDisplay").equals("value")?" checked": ((AppUtils.getRequestNvlValue(request, "multiplePieLabelDisplay").length()<=0)? (nvl(rdef.getMultiplePieLabelDisplay()).length() > 0 ? (rdef.getMultiplePieLabelDisplay().equals("value")?" checked":""):""):"") %>>Display Value
816 <input type=radio name="multiplePieLabelDisplay" value="novalue"
817 <%= AppUtils.getRequestNvlValue(request, "multiplePieLabelDisplay").equals("novalue")?" checked": ((AppUtils.getRequestNvlValue(request, "multiplePieLabelDisplay").length()<=0)? (nvl(rdef.getMultiplePieLabelDisplay()).length() > 0 ? (rdef.getMultiplePieLabelDisplay().equals("novalue")?" checked":""):" checked"):"") %>>Blank
821 <input type="checkbox" name="multiplePieLabelDisplayInRunPage" value="Y"<%= AppUtils.getRequestNvlValue(request, "multiplePieLabelDisplayInRunPage").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "multiplePieLabelDisplayInRunPage").length()<=0)?(rdef.displayPieLabelDisplayinRunPage()?" checked":""):"") %>> Display in run page
826 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Display Options</font></td>
827 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
828 <input type=radio name="chartDisplay" value="3D" <%= AppUtils.getRequestNvlValue(request, "chartDisplay").equals("3D")?" checked": ((AppUtils.getRequestNvlValue(request, "chartDisplay").length()<=0)? (rdef.isChartDisplayIn3D()?" checked":""):"") %>>Display in 3D
829 <input type=radio name="chartDisplay" value="normal" <%= AppUtils.getRequestNvlValue(request, "chartDisplay").equals("normal")?" checked": ((AppUtils.getRequestNvlValue(request, "chartDisplay").length()<=0)? (!rdef.isChartDisplayIn3D()?" checked":""):"") %>>Display in 2D
832 <input type="checkbox" name="chartDisplayInRunPage" value="Y"<%= AppUtils.getRequestNvlValue(request, "chartDisplayInRunPage").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "chartDisplayInRunPage").length()<=0)?(rdef.displayChartDisplayinRunPage()?" checked":""):"") %>> Display in run page
839 <div id="regressionChartDiv" style="display:none;">
840 <table width="100%" id = "regressionDiv">
842 <td class=rbg2 align="right" width="20%" height="30"><font class=rtabletext>Regression Type </font></td>
843 <td class=rbg3 colspan=4 align="left" width="80%"><font class=rtabletext>
844 <input type=checkbox name="LinearRegressionType" value="Y" <%= (AppUtils.getRequestNvlValue(request, "regressionType").trim().length()>0? (AppUtils.getRequestNvlValue(request, "regressionType").charAt(0) == 'Y'? " checked ":""): (nvl(rdef.getLinearRegression()).length()>0 && rdef.getLinearRegression().charAt(0) == 'Y' ? " checked ":" checked ")) %>><font class=rtabletext>Linear</font>
845 <input type=checkbox name="ExpRegressionType" value="Y" <%= (AppUtils.getRequestNvlValue(request, "regressionType").trim().length()>1? (AppUtils.getRequestNvlValue(request, "regressionType").charAt(1) == 'Y'? " checked ":""): (nvl(rdef.getLinearRegression()).length()>1 && rdef.getLinearRegression().charAt(1) == 'Y' ? " checked ":" ")) %>><font class=rtabletext>Exponential</font>
846 <input type="hidden" name="regressionType" value=""/>
850 <td class=rbg2 align="right" width="20%" height="30"><font class=rtabletext>Linear Regression Color </font></td>
851 <td class=rbg3 align="left" colspan=4 width=80% nowrap><font class=rtabletext>
852 <% String linearColor = nvl(rdef.getLinearRegressionColor()); %>
853 <select name="valueLinearRegressionColor">
854 <option value=""<%= linearColor.equals("") ?" selected":"" %>>Color: Default
855 <option value="#00FFFF"<%= linearColor.equals("#00FFFF")?" selected":"" %>>Aqua
856 <option value="#000000"<%= linearColor.equals("#000000")?" selected":"" %>>Black
857 <option value="#0000FF"<%= linearColor.equals("#0000FF")?" selected":"" %>>Blue
858 <option value="#FF00FF"<%= linearColor.equals("#FF00FF")?" selected":"" %>>Fuchsia
859 <option value="#808080"<%= linearColor.equals("#808080")?" selected":"" %>>Gray
860 <option value="#008000"<%= linearColor.equals("#008000")?" selected":"" %>>Green
861 <option value="#00FF00"<%= linearColor.equals("#00FF00")?" selected":"" %>>Lime
862 <option value="#800000"<%= linearColor.equals("#800000")?" selected":"" %>>Maroon
863 <option value="#000080"<%= linearColor.equals("#000080")?" selected":"" %>>Navy
864 <option value="#808000"<%= linearColor.equals("#808000")?" selected":"" %>>Olive
865 <option value="#FF9900"<%= linearColor.equals("#FF9900")?" selected":"" %>>Orange
866 <option value="#800080"<%= linearColor.equals("#800080")?" selected":"" %>>Purple
867 <option value="#FF0000"<%= linearColor.equals("#FF0000")?" selected":"" %>>Red
868 <option value="#C0C0C0"<%= linearColor.equals("#C0C0C0")?" selected":"" %>>Silver
869 <option value="#008080"<%= linearColor.equals("#008080")?" selected":"" %>>Teal
870 <option value="#FFFFFF"<%= linearColor.equals("#FFFFFF")?" selected":"" %>>White
871 <option value="#FFFF00"<%= linearColor.equals("#FFFF00")?" selected":"" %>>Yellow
877 <td class=rbg2 align="right" width="20%" height="30"><font class=rtabletext>Exponential Regression Color </font></td>
878 <td class=rbg3 align="left" colspan=4 width=80% nowrap><font class=rtabletext>
879 <% String expColor = nvl(rdef.getExponentialRegressionColor()); %>
880 <select name="valueExponentialRegressionColor">
881 <option value=""<%= expColor.equals("") ?" selected":"" %>>Color: Default
882 <option value="#00FFFF"<%= expColor.equals("#00FFFF")?" selected":"" %>>Aqua
883 <option value="#000000"<%= expColor.equals("#000000")?" selected":"" %>>Black
884 <option value="#0000FF"<%= expColor.equals("#0000FF")?" selected":"" %>>Blue
885 <option value="#FF00FF"<%= expColor.equals("#FF00FF")?" selected":"" %>>Fuchsia
886 <option value="#808080"<%= expColor.equals("#808080")?" selected":"" %>>Gray
887 <option value="#008000"<%= expColor.equals("#008000")?" selected":"" %>>Green
888 <option value="#00FF00"<%= expColor.equals("#00FF00")?" selected":"" %>>Lime
889 <option value="#800000"<%= expColor.equals("#800000")?" selected":"" %>>Maroon
890 <option value="#000080"<%= expColor.equals("#000080")?" selected":"" %>>Navy
891 <option value="#808000"<%= expColor.equals("#808000")?" selected":"" %>>Olive
892 <option value="#FF9900"<%= expColor.equals("#FF9900")?" selected":"" %>>Orange
893 <option value="#800080"<%= expColor.equals("#800080")?" selected":"" %>>Purple
894 <option value="#FF0000"<%= expColor.equals("#FF0000")?" selected":"" %>>Red
895 <option value="#C0C0C0"<%= expColor.equals("#C0C0C0")?" selected":"" %>>Silver
896 <option value="#008080"<%= expColor.equals("#008080")?" selected":"" %>>Teal
897 <option value="#FFFFFF"<%= expColor.equals("#FFFFFF")?" selected":"" %>>White
898 <option value="#FFFF00"<%= expColor.equals("#FFFF00")?" selected":"" %>>Yellow
904 <td class=rbg2 align="right" width="20%" height="30"><font class=rtabletext>Regression Point customization (in Numbers)</font></td>
905 <td class=rbg3 colspan=4 align="left" width="80%"><font class=rtabletext>
906 <input type=text name="regressionPointCustomization" value="<%=nvl(rdef.getCustomizedRegressionPoint(),"")%>">
913 <div id="CustomizingYAxisDiv" style="display:none;">
916 <td class=rbg2 align="right" width="20%" height="30"><font class=rtabletext>Range Axis (Minimum Range)</font></td>
917 <td class=rbg3 colspan=4 align="left" width="80%"><font class=rtabletext>
918 <input type=text name="yAxisLowerLimit" value="<%=nvl(rdef.getRangeAxisLowerLimit(),"")%>">
922 <td class=rbg2 align="right" width="20%" height="30"><font class=rtabletext>Range Axis (Maximum Range)</font></td>
923 <td class=rbg3 colspan=4 align="left" width="80%"><font class=rtabletext>
924 <input type=text name="yAxisUpperLimit" value="<%=nvl(rdef.getRangeAxisUpperLimit(),"")%>">
931 <div id="BarLineChartOptions" style="display:none;">
934 <td colspan="3"><font class=rtabletext>Additional Bar/Line Chart options:</font></td>
937 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Orientation </font></td>
938 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
939 <input type=radio name="chartOrientation" value="vertical" <%= AppUtils.getRequestNvlValue(request, "chartOrientation").equals("vertical")?" checked": ((AppUtils.getRequestNvlValue(request, "chartOrientation").length()<=0)? (rdef.isVerticalOrientation() ?" checked": (rdef.isVerticalOrientation()?" checked":"")):"") %>>Vertical
940 <input type=radio name="chartOrientation" value="horizontal" <%= AppUtils.getRequestNvlValue(request, "chartOrientation").equals("horizontal") ? " checked":((AppUtils.getRequestNvlValue(request, "chartOrientation").length()<=0)? (rdef.isHorizontalOrientation() ?" checked": (rdef.isHorizontalOrientation()?" checked":"")):"") %>>Horizontal
943 <input type="checkbox" name="chartOrientationInRunPage" value="Y"<%= AppUtils.getRequestNvlValue(request, "chartOrientationInRunPage").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "chartOrientationInRunPage").length()<=0)?(rdef.displayChartOrientationInRunPage()?" checked":""):"") %>> Display in run page
948 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Display Options</font></td>
949 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
950 <input type=radio name="chartDisplay" value="3D" <%= AppUtils.getRequestNvlValue(request, "chartDisplay").equals("3D")?" checked": ((AppUtils.getRequestNvlValue(request, "chartDisplay").length()<=0)? (rdef.isChartDisplayIn3D()?" checked":""):"") %>>Display in 3D
951 <input type=radio name="chartDisplay" value="normal" <%= AppUtils.getRequestNvlValue(request, "chartDisplay").equals("normal")?" checked": ((AppUtils.getRequestNvlValue(request, "chartDisplay").length()<=0)? (!rdef.isChartDisplayIn3D()?" checked":""):"") %>>Display in 2D
954 <input type="checkbox" name="chartDisplayInRunPage" value="Y"<%= AppUtils.getRequestNvlValue(request, "chartDisplayInRunPage").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "chartDisplayInRunPage").length()<=0)?(rdef.displayChartDisplayinRunPage()?" checked":""):"") %>> Display in run page
959 <div id="BarChartOptions" style="display:none;">
962 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Renderer for Secondary Axis</font></td>
963 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
964 <input type=radio name="secondaryChartRenderer" value="line"
965 <%= AppUtils.getRequestNvlValue(request, "secondaryChartRenderer").equals("line")?" checked": ((AppUtils.getRequestNvlValue(request, "secondaryChartRenderer").length()<=0)? ((nvl(rdef.getSecondaryChartRenderer()).length() > 0) ? (rdef.getSecondaryChartRenderer().equals("line")?" checked":""):" checked"):"") %>>Line chart Renderer
966 <input type=radio name="secondaryChartRenderer" value="level"
967 <%= AppUtils.getRequestNvlValue(request, "secondaryChartRenderer").equals("level")?" checked": ((AppUtils.getRequestNvlValue(request, "secondaryChartRenderer").length()<=0)? ((nvl(rdef.getSecondaryChartRenderer()).length() > 0) ? (rdef.getSecondaryChartRenderer().equals("level")?" checked":""):""):"") %>>Level chart Renderer
971 <input type="checkbox" name="secondaryChartRendererInRunPage" value="Y"<%= AppUtils.getRequestNvlValue(request, "secondaryChartRendererInRunPage").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "secondaryChartRendererInRunPage").length()<=0)?(rdef.displaySecondaryChartRendererInRunPage()?" checked":""):"") %>> Display in run page
978 <div id="stackBarChartOptions" style="display:none;">
981 <td colspan="3"><font class=rtabletext>Additional Bar Chart options:</font></td>
984 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Overlay Item Value:</font></td>
985 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
986 <input type=radio name="overlayItemValue" value="Y"
987 <%= AppUtils.getRequestNvlValue(request, "overlayItemValue").equals("Y")?" checked": ((AppUtils.getRequestNvlValue(request, "overlayItemValue").length()<=0)? ((nvl(rdef.getOverlayItemValueOnStackBar()).length() > 0) ? (rdef.getOverlayItemValueOnStackBar().equals("Y")?" checked":""):" checked"):"") %>>Yes
988 <input type=radio name="overlayItemValue" value="N"
989 <%= AppUtils.getRequestNvlValue(request, "overlayItemValue").equals("N")?" checked": ((AppUtils.getRequestNvlValue(request, "overlayItemValue").length()<=0)? ((nvl(rdef.getOverlayItemValueOnStackBar()).length() > 0) ? (rdef.getOverlayItemValueOnStackBar().equals("N")?" checked":""):""):"") %>>No
997 <div id="TimeDifferenceChartOptions" style="display:none;">
1000 <td colspan="3"><font class=rtabletext>Additional Time Difference Chart options:</font></td>
1003 <td class=rbg2 align="right" width="15%" height="30"><font class=rtabletext>Interval Marker </font></td>
1004 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
1005 <input type="text" size="10" maxlength="10" name="intervalFromDate" value="<%=rdef.getIntervalFromdate()%>" toolTipText="Enter the starting interval date">
1006 <img src="<%= AppUtils.getImgFolderURL() %>calender_icon.gif" align=absmiddle border=0 width="20" height="20" onClick="oCalendar = new CalendarPopup('calendarDiv', 'calendarFrame');oCalendar.setCssPrefix('raptor');oCalendar.select(document.getElementById('intervalFromDate'),event,'MM/dd/yyyy'); return false;" style="cursor:hand">
1007 <input type="text" size="10" maxlength="10" name="intervalToDate" value="<%=rdef.getIntervalTodate()%>" toolTipText="Enter the Ending interval date">
1008 <img src="<%= AppUtils.getImgFolderURL() %>calender_icon.gif" align=absmiddle border=0 width="20" height="20" onClick="oCalendar = new CalendarPopup('calendarDiv', 'calendarFrame');oCalendar.setCssPrefix('raptor');oCalendar.select(document.getElementById('intervalToDate'),event,'MM/dd/yyyy'); return false;" style="cursor:hand">
1009 <input type="text" size="50" maxlength="100" name="intervalLabel" value="<%=rdef.getIntervalLabel()%>" toolTipText="Enter the interval Label">
1012 <input type="checkbox" name="intervalInputInRunPage" value="Y"<%= AppUtils.getRequestNvlValue(request, "intervalInputInRunPage").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "intervalInputInRunPage").length()<=0)?(rdef.displayIntervalInputInRunPage()?" checked":""):"") %>> Display in run page
1019 <div id="chartOptions" style="display:none;">
1020 <table width="100%">
1022 <td colspan="3"><font class=rtabletext>Additional chart options:</font></td>
1025 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Legend Position</font></td>
1026 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
1027 <input type=radio name="legendPosition" value="bottom" <%= AppUtils.getRequestNvlValue(request, "legendPosition").equals("bottom")?" checked": ((AppUtils.getRequestNvlValue(request, "legendPosition").length()<=0)? (nvl(rdef.getLegendPosition()).length()>0 ? (rdef.getLegendPosition().equals("bottom")?" checked":""):" checked"):"") %>>Bottom
1028 <input type=radio name="legendPosition" value="top" <%= AppUtils.getRequestNvlValue(request, "legendPosition").equals("top")?" checked": ((AppUtils.getRequestNvlValue(request, "legendPosition").length()<=0)? (nvl(rdef.getLegendPosition()).length()>0 ? (rdef.getLegendPosition().equals("top")?" checked":""):""):"") %>>Top
1029 <input type=radio name="legendPosition" value="left" <%= AppUtils.getRequestNvlValue(request, "legendPosition").equals("left")?" checked": ((AppUtils.getRequestNvlValue(request, "legendPosition").length()<=0)? (nvl(rdef.getLegendPosition()).length()>0 ? (rdef.getLegendPosition().equals("left")?" checked":""):""):"") %>>Left
1030 <input type=radio name="legendPosition" value="right" <%= AppUtils.getRequestNvlValue(request, "legendPosition").equals("right")?" checked": ((AppUtils.getRequestNvlValue(request, "legendPosition").length()<=0)? (nvl(rdef.getLegendPosition()).length()>0 ? (rdef.getLegendPosition().equals("right")?" checked":""):""):"") %>>Right
1037 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Hide Tooltips</font></td>
1039 <input type="checkbox" name="hideTooltips" value="Y"<%= AppUtils.getRequestNvlValue(request, "hideToolTips").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "hideToolTips").length()<=0)?(rdef.hideChartToolTips()?" checked":""):"") %>>
1043 <tr id="keepAsString">
1044 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Keep Domain Axis Value As String</font></td>
1046 <input type="checkbox" name="keepAsString" value="Y"<%= AppUtils.getRequestNvlValue(request, "keepAsString").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "keepAsString").length()<=0)?(rdef.keepDomainAxisValueInChartAsString()?" checked":""):"") %>>
1052 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Hide Legend</font></td>
1054 <input type="checkbox" name="hideLegend" value="Y"<%= AppUtils.getRequestNvlValue(request, "hideLegend").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "hideLegend").length()<=0)?(rdef.hideChartLegend()?" checked":""):"") %>>
1057 <input type="checkbox" name="showLegendDisplayOptionsInRunPage" value="Y"<%= AppUtils.getRequestNvlValue(request, "showLegendDisplayOptionsInRunPage").equals("Y")? " checked":((AppUtils.getRequestNvlValue(request, "showLegendDisplayOptionsInRunPage").length()<=0)?(rdef.showLegendDisplayOptionsInRunPage()?" checked":""):"") %>> Display in run page
1060 <tr id ="maxLabelsInDomainAxisForOtherCharts">
1061 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Maximum Number of Labels in Domain Axis:</font></td>
1062 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
1063 <input type=text name="maxLabelsInDomainAxis" class=rtabletext value="<%= AppUtils.getRequestNvlValue(request, "maxLabelsInDomainAxis").trim().length()>0?
1064 AppUtils.getRequestNvlValue(request, "maxLabelsInDomainAxis"):
1065 ((AppUtils.getRequestNvlValue(request, "maxLabelsInDomainAxis").length()<=0)?
1066 (nvl(rdef.getMaxLabelsInDomainAxis()).length()>0 ? rdef.getMaxLabelsInDomainAxis():"1"):"1")%>" maxlength="2" size="2">
1070 <tr id ="LabelAngleForTimeSeriesCharts">
1071 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Legend Label Angle</font></td>
1072 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
1073 <input type=radio name="labelAngle" value="UP45" <%= AppUtils.getRequestNvlValue(request, "labelAngle").equals("UP45")?" checked": ((AppUtils.getRequestNvlValue(request, "labelAngle").length()<=0)? (nvl(rdef.getLegendLabelAngle()).length()>0 ? (rdef.getLegendLabelAngle().equals("UP45")?" checked":""):" checked"):"") %>>Standard
1074 <input type=radio name="labelAngle" value="UP90" <%= AppUtils.getRequestNvlValue(request, "labelAngle").equals("UP90")?" checked": ((AppUtils.getRequestNvlValue(request, "labelAngle").length()<=0)? (nvl(rdef.getLegendLabelAngle()).length()>0 ? (rdef.getLegendLabelAngle().equals("UP90")?" checked":""):" checked"):"") %>>90 °
1080 <tr id ="LabelAngleForOtherCharts">
1081 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Legend Label Angle</font></td>
1082 <td class=rbg3 colspan=4 align="left" width="50%"><font class=rtabletext>
1083 <input type=radio name="labelAngle" value="UP45" <%= AppUtils.getRequestNvlValue(request, "labelAngle").equals("UP45")?" checked": ((AppUtils.getRequestNvlValue(request, "labelAngle").length()<=0)? (nvl(rdef.getLegendLabelAngle()).length()>0 ? (rdef.getLegendLabelAngle().equals("UP45")?" checked":""):" checked"):"") %>>Up 45 °
1084 <input type=radio name="labelAngle" value="UP90" <%= AppUtils.getRequestNvlValue(request, "labelAngle").equals("UP90")?" checked":
1085 ((AppUtils.getRequestNvlValue(request, "labelAngle").length()<=0)?
1086 (nvl(rdef.getLegendLabelAngle()).length()>0 ?
1087 (rdef.getLegendLabelAngle().equals("UP90")?" checked":""):""):"") %>>Up 90 °
1088 <input type=radio name="labelAngle" value="DOWN45" <%= AppUtils.getRequestNvlValue(request, "labelAngle").equals("DOWN45")?" checked": ((AppUtils.getRequestNvlValue(request, "labelAngle").length()<=0)? (nvl(rdef.getLegendLabelAngle()).length()>0 ? (rdef.getLegendLabelAngle().equals("DOWN45")?" checked":""):" checked"):"") %>>Down 45 °
1089 <input type=radio name="labelAngle" value="DOWN90" <%= AppUtils.getRequestNvlValue(request, "labelAngle").equals("DOWN90")?" checked": ((AppUtils.getRequestNvlValue(request, "labelAngle").length()<=0)? (nvl(rdef.getLegendLabelAngle()).length()>0 ? (rdef.getLegendLabelAngle().equals("DOWN90")?" checked":""):" checked"):"") %>>Down 90 °
1090 <input type=radio name="labelAngle" value="STANDARD" <%= AppUtils.getRequestNvlValue(request, "labelAngle").equals("STANDARD")?" checked": ((AppUtils.getRequestNvlValue(request, "labelAngle").length()<=0)? (nvl(rdef.getLegendLabelAngle()).length()>0 ? (rdef.getLegendLabelAngle().equals("STANDARD")?" checked":""):" checked"):"") %>>Standard
1099 <div id="drillDownOptions" style="display:none;">
1100 <table width="100%">
1102 <td colspan="2"><font class=rtabletext>Drilldown options:</font></td>
1105 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext>Drilldown report:</font></td>
1106 <td class=rbg3 align="left" width="50%"><font class=rtabletext>
1107 <select name="drillDownReport" onChange="document.forma.<%= AppConstants.RI_WIZARD_ACTION %>.value='GET_DRILLDOWN_FORMFIELDS'; document.forma.submit();">
1108 <option value="-1">Please Select</option>
1110 Vector publicReportIdNames = DataCache.getPublicReportIdNames();
1111 for(int i=0; i<publicReportIdNames.size(); i++) {
1112 IdNameValue reportIdName = (IdNameValue) publicReportIdNames.get(i); %>
1113 <option value="<%= reportIdName.getId() %>"<%= (nvl(rdef.getDrillReportIdForChart()).equals(reportIdName.getId()))?" selected":"" %>>Public Report: <%= reportIdName.getName() %></option>
1116 Vector groupReportIdNames = DataCache.getGroupAccessibleReportIdNames(AppUtils.getUserID(request),AppUtils.getUserRoles(request));
1117 for(int j=0; j<groupReportIdNames.size(); j++) {
1118 IdNameValue reportIdName = (IdNameValue) groupReportIdNames.get(j); %>
1119 <option value="<%= reportIdName.getId() %>"<%= (nvl(rdef.getDrillReportIdForChart()).equals(reportIdName.getId()))?" selected":"" %>>Group Report: <%= reportIdName.getName() %></option>
1122 Vector privateReportIdNames = DataCache.getPrivateAccessibleReportIdNames(AppUtils.getUserID(request),AppUtils.getUserRoles(request));
1123 for(int j=0; j<privateReportIdNames.size(); j++) {
1124 IdNameValue reportIdName = (IdNameValue) privateReportIdNames.get(j); %>
1125 <option value="<%= reportIdName.getId() %>"<%= (nvl(rdef.getDrillReportIdForChart()).equals(reportIdName.getId()))?" selected":"" %>>Private Report: <%= reportIdName.getName() %></option>
1131 if(nvl(rdef.getDrillReportIdForChart()).length()>0) {
1132 ReportRuntime ddRr = (new ReportHandler()).loadReportRuntime(request, rdef.getDrillReportIdForChart(),
1135 request.setAttribute("CHART_FORMFIELDS", ddRr.getReportFormFields());
1140 <% if(request.getAttribute("CHART_FORMFIELDS")!=null) { %>
1141 <% ReportFormFields ddReportFormFields = (ReportFormFields) request.getAttribute("CHART_FORMFIELDS");
1142 if(ddReportFormFields!=null) {
1143 for(ddReportFormFields.resetNext(); ddReportFormFields.hasNext(); ) {
1144 FormField ff = ddReportFormFields.getNext();
1145 if(!ff.getFieldType().equals(FormField.FFT_BLANK)) {
1149 <td class=rbg2 align="right" width="25%" height="30"><font class=rtabletext><%=ff.getFieldDisplayName()%>:</font></td>
1150 <td class=rbg3 align="left" width="50%">
1151 <font class=rtabletext>
1152 <select name="drillDown_<%=ff.getFieldName()%>">
1153 <option value="<%= ff.getFieldName() %>_xaxis" <%= rdef.isChartDrillDownContainsName(ff.getFieldName()+"_xaxis")?" selected":""%>> X Axis </option>
1154 <option value="<%= ff.getFieldName() %>_yaxis" <%= rdef.isChartDrillDownContainsName(ff.getFieldName()+"_yaxis")?" selected":"" %>> Y Axis </option>
1155 <option value="<%= ff.getFieldName() %>_series" <%= rdef.isChartDrillDownContainsName(ff.getFieldName()+"_series")?" selected":"" %>> Series </option>
1173 <% } // else (numColsCount==0)
1178 <script language="javascript">
1182 <script language="JavaScript">
1184 <% if(numColsCount>0) { %>
1185 function checkValueColNew() {
1186 if(document.forma.valueColNew.selectedIndex==0)
1190 newColId = document.forma.valueColNew.options[document.forma.valueColNew.selectedIndex].value;
1191 <% for(int idx=1; idx<Math.max(chartValueCols.size(), 1)+1; idx++) { %>
1192 if(newColId==document.forma.valueCol<%= idx %>.options[document.forma.valueCol<%= idx %>.selectedIndex].value) {
1193 alert("A column cannot be used as Chart Values Column more than once.");
1194 document.forma.valueColNew.focus();
1201 } // checkValueColNew
1205 function showAlertForTimeSeries() {
1206 var selectBox = document.forma.chartType;
1207 var selectedString = selectBox.options[selectBox.selectedIndex].value;
1209 if(selectedString == "<%=AppConstants.GT_PIE_MULTIPLE%>") {
1210 //var contentIframe = window.parent.document.getElementById("content_Iframe");
1211 //contentIframe.style.height = contentIframe.clientHeight + 120;
1212 document.getElementById("multiplePieChartOptions").style.display="block";
1215 document.getElementById("multiplePieChartOptions").style.display="none";
1217 if(selectedString == "<%=AppConstants.GT_TIME_SERIES%>"){
1218 document.getElementById("animatedDiv").style.display="block";
1219 return confirm("WARNING: Please make sure that the Domain Axis contains only\nDATE type of values, otherwise it will throw error.\nPress Ok to continue, or Cancel to re-examine the selection.");
1220 } else if (selectedString == "<%=AppConstants.GT_BAR_3D%>"){
1221 document.getElementById("animatedDiv").style.display="block";
1222 } else if (selectedString == "<%=AppConstants.GT_PIE%>"){
1223 document.getElementById("animatedDiv").style.display="block";
1224 } else if (selectedString == "<%=AppConstants.GT_PIE_3D%>"){
1225 document.getElementById("animatedDiv").style.display="block";
1226 } else if (selectedString == "<%=AppConstants.GT_SCATTER%>"){
1227 document.getElementById("animatedDiv").style.display="block";
1229 document.getElementById("animatedDiv").style.display="none";
1232 function dataValidate() {
1233 if(document.forma.maxLabelsInDomainAxis!="") {
1235 iVal = parseInt(document.forma.maxLabelsInDomainAxis.value);
1236 if(isNaN(iVal)||iVal>100||iVal<=0) {
1237 alert("Maximum Labels in Domain Axis must be a valid integer between 1 and 100 (or blank).\nPlease correct.");
1238 document.forma.maxLabelsInDomainAxis.select();
1239 document.forma.maxLabelsInDomainAxis.focus();
1242 document.forma.maxLabelsInDomainAxis.value = ""+iVal;
1245 if(document.forma.chartWidth.value!="") {
1247 iVal = parseInt(document.forma.chartWidth.value);
1248 if(isNaN(iVal)||iVal<100||iVal>1600) {
1249 alert("Chart Width must be a valid integer between 100 and 1600 (or blank).\nPlease correct the Chart Width.");
1250 document.forma.chartWidth.select();
1251 document.forma.chartWidth.focus();
1254 document.forma.chartWidth.value = ""+iVal;
1256 if(document.forma.chartHeight.value!="") {
1258 iVal = parseInt(document.forma.chartHeight.value);
1259 if(isNaN(iVal)||iVal<100||iVal>1600) {
1260 alert("Chart Height must be a valid integer between 100 and 1600 (or blank).\nPlease correct the Chart Height.");
1261 document.forma.chartHeight.select();
1262 document.forma.chartHeight.focus();
1265 document.forma.chartHeight.value = ""+iVal;
1267 <% if(chartValueCols.size()>1)
1268 for(int ci=1; ci<chartValueCols.size(); ci++) {
1269 for(int idx=ci+1; idx<chartValueCols.size()+1; idx++) { %>
1270 if(document.forma.valueCol<%= ci %>.options[document.forma.valueCol<%= ci %>.selectedIndex].value==document.forma.valueCol<%= idx %>.options[document.forma.valueCol<%= idx %>.selectedIndex].value) {
1271 alert("A column cannot be used as Chart Values Column more than once.");
1272 document.forma.valueCol<%= idx %>.focus();
1278 var selectBox = document.forma.chartType;
1279 var selectedString = selectBox.options[selectBox.selectedIndex].value;
1280 if(document.forma.chartType.selectedIndex>0) {
1281 if(selectedString == "<%=AppConstants.GT_SCATTER%>" || selectedString == "<%=AppConstants.GT_REGRESSION%>") {
1282 if(document.forma.chartSeries.selectedIndex<=0) {
1283 alert (" Please choose category for this Chart Type." );
1286 if (selectedString == "<%=AppConstants.GT_REGRESSION%>") {
1287 if(document.forma && document.forma.LinearRegressionType) {
1288 document.forma.regressionType.value = (document.forma.LinearRegressionType.checked?"Y":"N")+(document.forma.ExpRegressionType.checked?"Y":"N");
1289 if (!checkNonNegativeFloat(document.forma.regressionPointCustomization.value)) {
1290 alert("Please enter positive number for Customizing regression Point");
1298 /* if (selectedString == "<%=AppConstants.GT_STACKED_VERT_BAR%>" || selectedString == "<%=AppConstants.GT_STACKED_HORIZ_BAR%>" || selectedString == "<%=AppConstants.GT_STACKED_VERT_BAR_LINES%>"
1299 || selectedString == "<%=AppConstants.GT_STACKED_HORIZ_BAR_LINES%>") {
1300 var selectSeries = document.forma.chartSeries;
1301 var selectedSeriesString = selectSeries.options[selectSeries.selectedIndex].value;
1302 if(selectedSeriesString == -1) {
1303 alert("Please select category for Stacked Chart. This is Mandatory.");
1311 if (!checkNonNegativeFloat(document.forma.yAxisLowerLimit.value)) {
1312 alert("Please enter positive number for Range Axis (Minimum Range) ");
1316 if (!checkNonNegativeFloat(document.forma.yAxisUpperLimit.value)) {
1317 alert("Please enter positive number for Range Axis (Maximum Range) ");
1321 if(document.forma.chartType.selectedIndex>0)
1322 return confirm("WARNING: Please make sure that the Values column contains only\nnumeric values, otherwise your chart will not be properly displayed.\nPress Ok to continue, or Cancel to re-examine the selection.");
1333 private String nvl(String s) { return (s==null)?"":s; }
1334 private String nvl(String s, String sDefault) { return nvl(s).equals("")?sDefault:s; }