001/** 002 * 003 * Copyright (c) 2014, the Railo Company Ltd. All rights reserved. 004 * 005 * This library is free software; you can redistribute it and/or 006 * modify it under the terms of the GNU Lesser General Public 007 * License as published by the Free Software Foundation; either 008 * version 2.1 of the License, or (at your option) any later version. 009 * 010 * This library is distributed in the hope that it will be useful, 011 * but WITHOUT ANY WARRANTY; without even the implied warranty of 012 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 013 * Lesser General Public License for more details. 014 * 015 * You should have received a copy of the GNU Lesser General Public 016 * License along with this library. If not, see <http://www.gnu.org/licenses/>. 017 * 018 **/ 019package lucee.runtime.tag; 020 021import lucee.runtime.exp.TagNotSupported; 022import lucee.runtime.ext.tag.BodyTagImpl; 023 024/** 025* Runs a predefined Crystal Reports report. 026* 027* 028* 029**/ 030public final class Report extends BodyTagImpl { 031 032 private String template; 033 private String format; 034 private String name; 035 private String filename; 036 private String query; 037 private boolean overwrite; 038 private String encryption; 039 private String ownerpassword; 040 private String userpassword; 041 private String permissions; 042 private String datasource; 043 private String type; 044 private double timeout; 045 private String password; 046 private String orderby; 047 private String report; 048 private String username; 049 private String formula; 050 051 052 /** 053 * constructor for the tag class 054 * @throws TagNotSupported 055 **/ 056 public Report() throws TagNotSupported { 057 // TODO implement tag 058 throw new TagNotSupported("report"); 059 } 060 061 /** set the value password 062 * @param password value to set 063 **/ 064 public void setPassword(String password) { 065 this.password=password; 066 } 067 068 /** set the value orderby 069 * Orders results according to your specifications. 070 * @param orderby value to set 071 **/ 072 public void setOrderby(String orderby) { 073 this.orderby=orderby; 074 } 075 076 /** set the value report 077 * @param report value to set 078 **/ 079 public void setReport(String report) { 080 this.report=report; 081 } 082 083 /** set the value username 084 * @param username value to set 085 **/ 086 public void setUsername(String username) { 087 this.username=username; 088 } 089 090 /** set the value formula 091 * Specifies one or more named formulas. Terminate each formula specification with a semicolon. 092 * @param formula value to set 093 **/ 094 public void setFormula(String formula) { 095 this.formula=formula; 096 } 097 098 099 @Override 100 public int doStartTag() { 101 return SKIP_BODY; 102 } 103 104 @Override 105 public int doEndTag() { 106 return EVAL_PAGE; 107 } 108 109 @Override 110 public void doInitBody() { 111 112 } 113 114 @Override 115 public int doAfterBody() { 116 return SKIP_BODY; 117 } 118 119 @Override 120 public void release() { 121 super.release(); 122 password=""; 123 orderby=""; 124 report=""; 125 username=""; 126 formula=""; 127 128 template=""; 129 format=""; 130 name=""; 131 filename=""; 132 query=""; 133 overwrite=false; 134 encryption=""; 135 ownerpassword=""; 136 userpassword=""; 137 permissions=""; 138 datasource=""; 139 type=""; 140 timeout=0; 141 } 142 143 public void addReportParam(ReportParamBean param) { 144 // TODO Auto-generated method stub 145 146 } 147}