Jasper reports 子报表文本字段右对齐在运行时不适用于jasper主报表

Jasper reports 子报表文本字段右对齐在运行时不适用于jasper主报表,jasper-reports,Jasper Reports,我在子报表文本字段中设置了右对齐。它显示在预览报告中,但当我从java运行此报告时,子报告文本字段右对齐不起作用 这是我的java代码 try{ Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); conn=DriverManager.getConnection("jdbc:sqlserver://XYZ-BD-BBI01;user=abc;password=1234;database=myDataTables"

我在子报表文本字段中设置了右对齐。它显示在预览报告中,但当我从java运行此报告时,子报告文本字段右对齐不起作用

这是我的java代码

 try{
  Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
  conn=DriverManager.getConnection("jdbc:sqlserver://XYZ-BD-BBI01;user=abc;password=1234;database=myDataTables"); 
  String report="C:\\Users/mainReport.jrxml";
  JasperDesign jd  = JRXmlLoader.load(report);
  String sql = "select * from Report where ReportID = " +  reportID;
  JRDesignQuery query = new JRDesignQuery();
  query.setText(sql);
  jd.setQuery(query);
  JasperReport jr = JasperCompileManager.compileReport(jd);   
  Map<String, Object> parameters = new HashMap<String, Object>();
  parameters.put("ReportID",1211);
  JasperPrint jp1 = JasperFillManager.fillReport(jr, parameters, conn);  
  JasperViewer.viewReport(jp1, false);
}catch (Exception ex) {
  ex.printStackTrace();
}
试试看{
Class.forName(“com.microsoft.sqlserver.jdbc.SQLServerDriver”);
conn=DriverManager.getConnection(“jdbc:sqlserver://XYZ-BD-BBI01;用户=abc;密码=1234;数据库=myDataTables”);
String report=“C:\\Users/mainleport.jrxml”;
JasperDesign jd=JRXmlLoader.load(报告);
String sql=“从报告中选择*,其中ReportID=“+ReportID;
JRDesignQuery query=新建JRDesignQuery();
setText(sql);
jd.setQuery(查询);
JasperReport jr=jaspecompilemanager.compileReport(jd);
映射参数=新的HashMap();
参数。put(“ReportID”,1211);
JasperPrint jp1=JasperFillManager.fillReport(jr,parameters,conn);
JasperViewer.viewReport(jp1,false);
}捕获(例外情况除外){
例如printStackTrace();
}


您应该发布带有Java代码的小模板,以复制problem@Alex我用java代码更新了我的问题模板在哪里?你是怎么通过这份报告的?我以这种方式传递子报告,您应该发布带有Java代码的小模板,以复制problem@Alex我用java代码更新了我的问题模板在哪里?你是怎么通过这份报告的?我是这样通过子报告的