Entiendo que será SQL Server, la consulta parece estar bien tienes que separar el Between y el AND de los parámetros con espacio.
Código SQL
[-]
SELECT COUNT(a.SERVICIO) AS SERVICIO ,A.CLIENTE,a.COMPANIA,B.CATEGORIAPUESTO,A.FECHA
FROM VENTAS a, CLIENTE_PRV B
WHERE a.CLIENTE=B.CLIENTE
AND A.FECHA BETWEEN :FECHA1 AND :FECHA2
AND A.COMPANIA=:COMPANIA
AND B.CATEGORIAPUESTO=:CATEGORIA
AND A.SERVICIO=:SERVICIO
AND A.COMEDOR=:COMEDOR
GROUP BY a.SERVICIO, a.COMPANIA,B.CATEGORIAPUESTO,A.CLIENTE,A.FECHA
prueba a no pasarle parámetros y simplemente coloca las fechas a pelo, para ver si el error viene de como utilizas los params.
Saludos, Tony