Index: ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java =================================================================== diff -u -r27331 -r27341 --- ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 27331) +++ ssts-reports/src/main/java/com/forgon/disinfectsystem/jasperreports/service/JasperReportManagerImpl.java (.../JasperReportManagerImpl.java) (revision 27341) @@ -6334,9 +6334,17 @@ columnSql = "m.mcount"; joinMaterialInstanceSql = " left join ( select ctd.id, sum(cmi.count) as mcount from TousseDefinition ctd inner join MaterialInstance cmi on ctd.id = cmi.tousse_id group by ctd.id ) m on m.id = td.id"; } - String cumstomTousseAmount = showCustonTousseAmount?" 1 ":" case when m.mcount is null then 1 else m.mcount end "; + String cumstomTousseAmount = showCustonTousseAmount?" 1 ":" case when " + + columnSql + + " is null then 1 else " + + columnSql + + " end "; String tousseAmount = " case td.toussetype when '"+TousseDefinition.PACKAGE_TYPE_CUSTOM+"' then " + cumstomTousseAmount - + " when '"+TousseDefinition.PACKAGE_TYPE_DISINFECTION+"' then case when m.mcount is null then 1 else m.mcount end else 1 end "; + + " when '"+TousseDefinition.PACKAGE_TYPE_DISINFECTION+"' then case when " + + columnSql + + " is null then 1 else " + + columnSql + + " end else 1 end "; String sql = " "; String tousseSql = "select '器械包' as type"+querySupplierNameOfTousseDefinition+",po.orgUnitCoding,po.settleAccountsDepart,po.departCoding,po.depart,do.barcode,bo.tousseName as name," + tousseAmount + " as amount,bo.price as totalPrice,po.sendTime,po.applicant,'' as batch,'' as externalCode,po.remark as remark,bo.sterileEndTime as sterileEndTime,"