我的问题是:
下边是我的部分代码:package yinshua;
import java.awt.Color;
import java.awt.Font;
import java.io.File;
import java.io.FileInputStream;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;import javax.swing.JTable;import org.xml.sax.SAXParseException;import com.fr.base.Constants;
import com.fr.base.FRContext;
import com.fr.base.FRFont;
import com.fr.base.Style;
import com.fr.data.DatasourceManager;
import com.fr.report.CellElement;
import com.fr.report.Report;
import com.fr.report.io.TemplateImporter;
import com.fr.view.PreviewFrame;public class CpcAllPrint {
public CpcAllPrint(String sql0,String table1) throws SQLException{
File cptFile = new File("d:\\report\\cpcall.cpt");//这是你生成的那个模板的存放路径
try {
try{
TemplateImporter templateImporter = new TemplateImporter(cptFile);
Report workSheet = templateImporter.generateReport();
Statement rst1=Sqlconn.getStatement();
ResultSet ab1=rst1.executeQuery(sql0);
int d = 0;
while (ab1.next()){
int a= Integer.parseInt(ab1.getString(1));
d=a;
}
String table="create table #cpkucun1" +
"(" +
"id int identity(1,1) not null," +
"cpc_num int null," +
"Production_code varchar(50) null," +
"Production_name varchar(50) null," +
"Production_city varchar(20) null," +
"Time char(10) null," +
"cpc_time char(20) null," +
"cpc_shuliang int null," +
"Production_unit varchar(50) null," +
"Single_prince float null," +
"cpc_jine float null," +
"Invoice_code varchar(50) null," +
"Production_specification char(30) null," +
"Start varchar(50) null," +
"End1 varchar(50) null," +
"Note varchar(50) null" +
")";
Statement rst4=Sqlconn.getStatement();
rst4.addBatch(table);
rst4.addBatch(table1);
rst4.executeBatch();
for(int i=0;i<16;i++){
for(int j=0;j<=d;j++){
String sql1="select * from #cpkucun1 where id='"+j+"'";
Statement rst2=Sqlconn.getStatement();
ResultSet ab2=rst2.executeQuery(sql1);
while (ab2.next()){
CellElement cellElement= new CellElement(0+i,4+j,ab2.getString(1+i));
Style style = cellElement.getStyle();
if(style == null) {
style = Style.getInstance();
}
style = style.deriveBorder(Constants.LINE_THIN,Color.black,Constants.LINE_THIN,Color.black,Constants.LINE_THIN,Color.black,Constants.LINE_THIN,Color.black);
style = style.deriveHorizontalAlignment(Constants.CENTER); //边框的颜色和粗细
style = style.deriveVerticalAlignment(Constants.BOTTOM);
cellElement.setStyle(style);
workSheet.addCellElement(cellElement);
}
}
}
Sqlconn.getStatement().executeUpdate("drop table #cpkucun1");
String datasourceFilePath = "d:\\report\\datasource.xml";//设置数据源管理器,只需要读取datasource.xml文件即可
FileInputStream datasourceFileInputStream = new FileInputStream(datasourceFilePath);
DatasourceManager datasourceManager = new DatasourceManager();
datasourceManager.readInputStreamXML(datasourceFileInputStream);
FRContext.getFRContext().setDatasourceManager(datasourceManager);
Report excuteReport = workSheet.execute();
PreviewFrame previewFrame1 = new PreviewFrame();
previewFrame1.print(excuteReport);
previewFrame1.setVisible(true);
} catch(SAXParseException e)
{e.printStackTrace();}
} catch(Exception e) {
e.printStackTrace();
}
}
}
错误提示2008-11-20 9:38:26 com.fr.base.core.FRCoreContext log
警告: unexpected char: 0x?8
line 1:6: unexpected char: 0x?8
at com.fr.report.script.core.parser.FRLexer.nextToken(Unknown Source)
at antlr.TokenBuffer.fill(TokenBuffer.java:69)
at antlr.TokenBuffer.LA(TokenBuffer.java:80)
at antlr.LLkParser.LA(LLkParser.java:52)
at com.fr.report.script.core.parser.FRParser.power(Unknown Source)
at com.fr.report.script.core.parser.FRParser.multi(Unknown Source)
at com.fr.report.script.core.parser.FRParser.add(Unknown Source)
at com.fr.report.script.core.parser.FRParser.relation(Unknown Source)
at com.fr.report.script.core.parser.FRParser.conditionAnd(Unknown Source)
at com.fr.report.script.core.parser.FRParser.conditionOr(Unknown Source)
at com.fr.report.script.core.parser.FRParser.condition(Unknown Source)
at com.fr.report.script.core.parser.FRParser.parse(Unknown Source)
at com.fr.report.script.Calculator.eval(Unknown Source)
at com.fr.report.core.ScriptUtils.executeFormula(Unknown Source)
at com.fr.report.core.ScriptUtils.executeFormula(Unknown Source)
at com.fr.report.WorkSheet.easy_execute(Unknown Source)
at com.fr.report.WorkSheet.execute(Unknown Source)
at com.fr.report.WorkBook.execute(Unknown Source)
at yinshua.CpcAllPrint.<init>(CpcAllPrint.java:87)
at yinshua.Cpc_chaxun$MyActionAllListener.getPrint(Cpc_chaxun.java:426)
at yinshua.Cpc_chaxun$TemplateBase$1.actionPerformed(Cpc_chaxun.java:271)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
at java.awt.Component.processMouseEvent(Component.java:5488)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
at java.awt.Component.processEvent(Component.java:5253)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1774)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
请问我要怎么改啊。谢谢!!
下边是我的部分代码:package yinshua;
import java.awt.Color;
import java.awt.Font;
import java.io.File;
import java.io.FileInputStream;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;import javax.swing.JTable;import org.xml.sax.SAXParseException;import com.fr.base.Constants;
import com.fr.base.FRContext;
import com.fr.base.FRFont;
import com.fr.base.Style;
import com.fr.data.DatasourceManager;
import com.fr.report.CellElement;
import com.fr.report.Report;
import com.fr.report.io.TemplateImporter;
import com.fr.view.PreviewFrame;public class CpcAllPrint {
public CpcAllPrint(String sql0,String table1) throws SQLException{
File cptFile = new File("d:\\report\\cpcall.cpt");//这是你生成的那个模板的存放路径
try {
try{
TemplateImporter templateImporter = new TemplateImporter(cptFile);
Report workSheet = templateImporter.generateReport();
Statement rst1=Sqlconn.getStatement();
ResultSet ab1=rst1.executeQuery(sql0);
int d = 0;
while (ab1.next()){
int a= Integer.parseInt(ab1.getString(1));
d=a;
}
String table="create table #cpkucun1" +
"(" +
"id int identity(1,1) not null," +
"cpc_num int null," +
"Production_code varchar(50) null," +
"Production_name varchar(50) null," +
"Production_city varchar(20) null," +
"Time char(10) null," +
"cpc_time char(20) null," +
"cpc_shuliang int null," +
"Production_unit varchar(50) null," +
"Single_prince float null," +
"cpc_jine float null," +
"Invoice_code varchar(50) null," +
"Production_specification char(30) null," +
"Start varchar(50) null," +
"End1 varchar(50) null," +
"Note varchar(50) null" +
")";
Statement rst4=Sqlconn.getStatement();
rst4.addBatch(table);
rst4.addBatch(table1);
rst4.executeBatch();
for(int i=0;i<16;i++){
for(int j=0;j<=d;j++){
String sql1="select * from #cpkucun1 where id='"+j+"'";
Statement rst2=Sqlconn.getStatement();
ResultSet ab2=rst2.executeQuery(sql1);
while (ab2.next()){
CellElement cellElement= new CellElement(0+i,4+j,ab2.getString(1+i));
Style style = cellElement.getStyle();
if(style == null) {
style = Style.getInstance();
}
style = style.deriveBorder(Constants.LINE_THIN,Color.black,Constants.LINE_THIN,Color.black,Constants.LINE_THIN,Color.black,Constants.LINE_THIN,Color.black);
style = style.deriveHorizontalAlignment(Constants.CENTER); //边框的颜色和粗细
style = style.deriveVerticalAlignment(Constants.BOTTOM);
cellElement.setStyle(style);
workSheet.addCellElement(cellElement);
}
}
}
Sqlconn.getStatement().executeUpdate("drop table #cpkucun1");
String datasourceFilePath = "d:\\report\\datasource.xml";//设置数据源管理器,只需要读取datasource.xml文件即可
FileInputStream datasourceFileInputStream = new FileInputStream(datasourceFilePath);
DatasourceManager datasourceManager = new DatasourceManager();
datasourceManager.readInputStreamXML(datasourceFileInputStream);
FRContext.getFRContext().setDatasourceManager(datasourceManager);
Report excuteReport = workSheet.execute();
PreviewFrame previewFrame1 = new PreviewFrame();
previewFrame1.print(excuteReport);
previewFrame1.setVisible(true);
} catch(SAXParseException e)
{e.printStackTrace();}
} catch(Exception e) {
e.printStackTrace();
}
}
}
错误提示2008-11-20 9:38:26 com.fr.base.core.FRCoreContext log
警告: unexpected char: 0x?8
line 1:6: unexpected char: 0x?8
at com.fr.report.script.core.parser.FRLexer.nextToken(Unknown Source)
at antlr.TokenBuffer.fill(TokenBuffer.java:69)
at antlr.TokenBuffer.LA(TokenBuffer.java:80)
at antlr.LLkParser.LA(LLkParser.java:52)
at com.fr.report.script.core.parser.FRParser.power(Unknown Source)
at com.fr.report.script.core.parser.FRParser.multi(Unknown Source)
at com.fr.report.script.core.parser.FRParser.add(Unknown Source)
at com.fr.report.script.core.parser.FRParser.relation(Unknown Source)
at com.fr.report.script.core.parser.FRParser.conditionAnd(Unknown Source)
at com.fr.report.script.core.parser.FRParser.conditionOr(Unknown Source)
at com.fr.report.script.core.parser.FRParser.condition(Unknown Source)
at com.fr.report.script.core.parser.FRParser.parse(Unknown Source)
at com.fr.report.script.Calculator.eval(Unknown Source)
at com.fr.report.core.ScriptUtils.executeFormula(Unknown Source)
at com.fr.report.core.ScriptUtils.executeFormula(Unknown Source)
at com.fr.report.WorkSheet.easy_execute(Unknown Source)
at com.fr.report.WorkSheet.execute(Unknown Source)
at com.fr.report.WorkBook.execute(Unknown Source)
at yinshua.CpcAllPrint.<init>(CpcAllPrint.java:87)
at yinshua.Cpc_chaxun$MyActionAllListener.getPrint(Cpc_chaxun.java:426)
at yinshua.Cpc_chaxun$TemplateBase$1.actionPerformed(Cpc_chaxun.java:271)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1849)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2169)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:420)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:258)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:234)
at java.awt.Component.processMouseEvent(Component.java:5488)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3126)
at java.awt.Component.processEvent(Component.java:5253)
at java.awt.Container.processEvent(Container.java:1966)
at java.awt.Component.dispatchEventImpl(Component.java:3955)
at java.awt.Container.dispatchEventImpl(Container.java:2024)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4212)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:3892)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:3822)
at java.awt.Container.dispatchEventImpl(Container.java:2010)
at java.awt.Window.dispatchEventImpl(Window.java:1774)
at java.awt.Component.dispatchEvent(Component.java:3803)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:463)
at java.awt.EventDispatchThread.pumpOneEventForHierarchy(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:163)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:157)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:149)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:110)
请问我要怎么改啊。谢谢!!
line 1:6: unexpected char: 0x?8 个人猜想是否是由于0x?8这个数据提交到FineReport是不被识别引起的。
line 1:6: unexpected char: 0x?8
at com.fr.report.script.core.parser.FRLexer.nextToken(Unknown Source)
......出现了不期望的字符.
import com.fr.base.FRContext;
import com.fr.base.FRFont;
import com.fr.base.Style;
import com.fr.data.DatasourceManager;
import com.fr.report.CellElement;
import com.fr.report.Report;
import com.fr.report.io.TemplateImporter;
import com.fr.view.PreviewFrame;
请问楼主你的上面的这些包在哪里??我导入到NetBeans里面报错??