analisis mas a fondo....primero esto, porque pones que fecha=@fecha y fecha1=@fecha1? aqui no limitas a que solo valores iguales en las 2 fechas sean los que regrese el query? Puedes probar 2 cosas, primero nada mas corre el query con esto:
Código SQL:
Ver originalWHERE (td.FECHA=@pfecha AND td.FECHA1=@pfecha1))GROUP BY TD.BRUTO,RC.PorcReca,MV.tipodcto,MV.NRODCTO,MV.tip odctonc,ES.PorcReca,MV.cantidad,MV.valorunit,TD.Fe cha,TD.Fecha1
,mv.numfactnc,VE.CODVEN,VE.INTERNO
y ve que regresa, ahora prueba el query nada mas con esto:
Código SQL:
Ver originalWHERE
(DATEDIFF(DAY, @pfecha,@pfecha1) BETWEEN RC.desde AND RC.hasta)GROUP BY TD.BRUTO,RC.PorcReca,MV.tipodcto,MV.NRODCTO,MV.tip odctonc,ES.PorcReca,MV.cantidad,MV.valorunit,TD.Fe cha,TD.Fecha1
,mv.numfactnc,VE.CODVEN,VE.INTERNO
y ve que es lo que regresa
ya que tengas eso podras saber cual condicion es la que no te esta regresando los datos como los necesitas :)