вот так я получаю данные по ip и макам в отчете, они соответствуют тому что нужно, это я проверял
Код:
<queryString language="BGBS"><![CDATA[import java.sql.*;                                                                                                                                                                             
import java.util.*;                                                                                                                                                                                                                          
                                                                                                                                                                                                                                             
public void fillReport( con, filter, result )                                                                                                                                                                                                
{                                                                                                                                                                                                                                            
String mac = filter.getStringParam("mac");                                                                                                                                                                                                   
String ip = filter.getStringParam("ip");                                                                                                                                                                                                     
                                                                                                                                                                                                                                             
if (mac.equals(""))                                                                                                                                                                                                                          
{                                                                                                                                                                                                                                            
PreparedStatement ps = con.prepareStatement( result.sql(" SELECT c.title AS col1, cpt1.val AS col2, "+                                                                                                                                       
" cpt2.address AS col3, isl.callingStationId AS col4, INET_NTOA(CONV(HEX(isl.ipAddress), 16, 10)) AS col5, isl.sessionStart AS col6, isl.sessionStop AS col7 "+                                                                              
" FROM contract AS c "+                                                                                                                                                                                                                      
" LEFT JOIN inet_serv_21 AS ise ON c.id=ise.contractId "+
" LEFT JOIN $module_month_table( inet_session_log , date ) AS isl ON isl.servId=ise.id "+
" LEFT JOIN contract_parameter_type_1 AS cpt1 ON cpt1.cid=c.id "+
" LEFT JOIN contract_parameter_type_2 AS cpt2 ON cpt2.cid=c.id "+
" WHERE isl.ipAddress IS NOT NULL AND '$date(date) $(hours)' BETWEEN isl.sessionStart AND isl.sessionStop "+
" AND isl.ipAddress = UNHEX(CONV(INET_ATON('$(ip)'), 10, 16)) AND cpt1.pid = 3 AND cpt2.pid=1", filter ) );
 ResultSet rs = ps.executeQuery();
 List res = new ArrayList();
 while(rs.next())
  {
    Map  map = new HashMap();
    title = rs.getString(1);
    fio = rs.getString(2);
    address = rs.getString(3);
    mac = rs.getString(4);
    ip  = rs.getString(5);
    start  = rs.getString(6);
    stop  = rs.getString(7);
    map.put("col1", title);
    map.put("col2", fio);
    map.put("col3", address);
    map.put("col4", mac);
    map.put("col5", ip);
    map.put("col6", start);
    map.put("col7", stop);
        res.add(map);
  }
 result.setDataSource( res );
}
else 
{
PreparedStatement ps = con.prepareStatement( result.sql(" SELECT c.title AS col1, cpt1.val AS col2, "+
" cpt2.address AS col3, isl.callingStationId AS col4, INET_NTOA(CONV(HEX(isl.ipAddress), 16, 10)) AS col5, isl.sessionStart AS col6, isl.sessionStop AS col7 "+
" FROM contract AS c "+
" LEFT JOIN inet_serv_21 AS ise ON c.id=ise.contractId "+
" LEFT JOIN $module_month_table( inet_session_log , date ) AS isl ON isl.servId=ise.id "+
" LEFT JOIN contract_parameter_type_1 AS cpt1 ON cpt1.cid=c.id "+
" LEFT JOIN contract_parameter_type_2 AS cpt2 ON cpt2.cid=c.id "+
" WHERE isl.callingStationId IS NOT NULL "+
" AND isl.callingStationId = '$(mac)' AND cpt1.pid = 3 AND cpt2.pid=1", filter ) );
 ResultSet rs = ps.executeQuery();
 List res = new ArrayList();
 while(rs.next())
  {
    Map  map = new HashMap();
    title = rs.getString(1);
    fio = rs.getString(2);
    address = rs.getString(3);
    mac = rs.getString(4);
    ip  = rs.getString(5);
    start  = rs.getString(6);
    stop  = rs.getString(7);
    map.put("col1", title);
    map.put("col2", fio);
    map.put("col3", address);
    map.put("col4", mac);
    map.put("col5", ip);
    map.put("col6", start);
    map.put("col7", stop);
System.out.println("mac " + mac);
        res.add(map);
  }
 result.setDataSource( res );
}
 
					
						_________________
Код:
  Клиент: вер. 6.2.714 / 25.05.2015 17:27:15
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
  Сервер: вер. 6.2.881 / 22.05.2015 17:56:55
    os: Linux; java: Java HotSpot(TM) 64-Bit Server VM, v.1.8.0_45
Помощь по администрированию bgbilling в jabber конференции или Группа в telegramСтиль программирования - пьяный мастерстер
Разработка мобильных приложений