|
|
@@ -348,7 +348,7 @@ public class CrystalToJasper {
|
|
|
// 移除重复field
|
|
|
else if (fields.contains(columnName)) {
|
|
|
element.getParent().remove(element);
|
|
|
- }else{
|
|
|
+ } else {
|
|
|
fields.add(columnName);
|
|
|
}
|
|
|
}
|
|
|
@@ -393,12 +393,19 @@ public class CrystalToJasper {
|
|
|
if (!CollectionUtils.isEmpty(usedVariables)) {
|
|
|
Document document = new SAXReader().read(jrxmlFile);
|
|
|
List<Element> elements = document.selectNodes("//*[name()='variable']");
|
|
|
+ List<String> variableNames = new ArrayList<>();
|
|
|
for (Element element : elements) {
|
|
|
String variableName = element.attributeValue("name");
|
|
|
// 变量未实际使用,移除元素
|
|
|
if (!usedVariables.contains(variableName)) {
|
|
|
element.getParent().remove(element);
|
|
|
}
|
|
|
+ // 移除重复variable
|
|
|
+ else if (variableNames.contains(variableName)) {
|
|
|
+ element.getParent().remove(element);
|
|
|
+ } else {
|
|
|
+ variableNames.add(variableName);
|
|
|
+ }
|
|
|
}
|
|
|
saveXmlFile(document, jrxmlFile);
|
|
|
}
|