我有3个水上标记,已批准,取消和草稿,我需要根据条件显示它。所以我添加了条件:
for cancelled copy = new Boolean(!$P{Canceledcopy_p}.toString().equals("T") ? true:false)
for approved copy = new Boolean(!$P{Approvedcopy_p}.toString().equals("T") ? true:false)
for drafted copy = new Boolean(!$P{FinalApprover_P}.toString().equals("T") ? true:false)
我预览时显示正常,但是当我生成报告时它没有显示.Below是我的java代码:
if (POApplst.getStatusID() == 1) {
map.put("Approvedcopy_p", "F");
map.put("FinalApprover_P", "T");
} else {
if (POApplst.get(POApplst.size() - 1).getStatusID() != 1) {
map.put("Approvedcopy_p", "T");
map.put("FinalApprover_P", "F");
} else {
map.put("Approvedcopy_p", "F");
map.put("FinalApprover_P", "T");
if (Canceled) {
map.put("Canceledcopy_p", "F");
map.put("Approvedcopy_p", "T");
map.put("FinalApprover_P", "T");
} else {
map.put("Canceledcopy_p", "T");
}
}
}
if (Canceled) {
map.put("Canceledcopy_p", "F");
map.put("Approvedcopy_P", "T");
map.put("FinalApprover_P", "T");
} else {
map.put("Canceledcopy_p", "T");
}
答案 0 :(得分:1)
代替布尔类型(T或F)。我所做的是,如果它被批准,那么其他人将为null,除了批准的副本,其中批准的图像将从bufferedImage enabled = ImageIO.read(classLoader.getResourceAsStream(“/ image path /”+“logo.jpg”)); 。以类似的方式,除了复制之外,所有都将为null。
if (POApplst.get(POApplst.size() - 1).getStatusID() != 1) {
parameter.put("Approvedcopy_p", null);
parameter.put("FinalApprover_P", draft);
} else {
parameter.put("Approvedcopy_p", approved);
parameter.put("FinalApprover_P", null);
if (Canceled) {
parameter.put("Canceledcopy_p", canceled);
parameter.put("Approvedcopy_p", null);
parameter.put("FinalApprover_P", null);
} else {
parameter.put("Canceledcopy_p", null);
}
}