Index: ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java =================================================================== diff -u -r31683 -r31751 --- ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 31683) +++ ssts-packing/src/main/java/com/forgon/disinfectsystem/packing/service/PackingManagerImpl.java (.../PackingManagerImpl.java) (revision 31751) @@ -1209,8 +1209,15 @@ .getOrgUnitCodingFromSupplyRoomConfig(); sql += " and po.orgUnitCoding = '" + supplyRoomOrgUnitCoding + "'"; if(StringUtils.isNotBlank(spell)){ - sql += " and (po.tousseDefinition.spelling like '%" + spell + "%'"; - sql += " or po.tousseDefinition.wbCode like '%"+spell+"%') "; + if(spell.contains("[") && dbConnection.isSqlServer()){ + int index = spell.indexOf("["); + spell = spell.substring(0, index) + "\\" + spell.substring(index, spell.length()); + sql += " and (po.tousseDefinition.spelling like '%" + spell + "%' escape '\\' "; + sql += " or po.tousseDefinition.wbCode like '%"+spell+"%' escape '\\' or po.tousseDefinition.name like '%"+ spell +"%' escape '\\' ) "; + }else{ + sql += " and (po.tousseDefinition.spelling like '%" + spell + "%'"; + sql += " or po.tousseDefinition.wbCode like '%"+spell+"%' or po.tousseDefinition.name like '%"+ spell +"%' ) "; + } } return objectDao.findBySql( PackingTask.class.getSimpleName(), sql);