Bueno, no tengo más remedio que seguir, de momento va a funcionar así y si me ofrecéis otra solución lo cambio, porque es engorroso a más no poder.
En caso de que el usuario no haga filtrado, saco todos los pedidos y los pagino con esta instrucción:
Código MySQL:
Ver original Pe.id,
pe.Su_Referencia,
pe.Fecha_ped,
pe.bimponible,
pe.id_user,
Si el cliente realiza una búsqueda con uno o más campos le anidaré un Where quedando la siguiente consulta en caso de que cumplimente todos los campos del buscador:
Código MySQL:
Ver original Pe.id,
pe.Su_Referencia,
pe.Fecha_ped,
pe.bimponible,
pe.id_user,
pe.su_referencia
like '%89%' pe.fecha_Ped
>= '2003-05-05' | pe.fecha_Ped
<= '2003-05-05' | pe.fecha_ped
Between '2003-01-05' and '2003-12-05' (
pe.DF_RazonSocial
like '%xxxxxx%' pe.DF_CIF
like '%xxxxxx%' pe.DF_Direc1
like '%xxxxxx%' pe.DF_Direc2
like '%xxxxxx%' pe.DF_Localidad
like '%xxxxxx%' pe.DF_Provincia
like '%xxxxxx%' pe.DF_Pais
like '%xxxxxx%' pe.DE_Nombre
like '%xxxxxx%' pe.DE_Direc1
like '%xxxxxx%' pe.DE_Direc2
like '%xxxxxx%' pe.DE_Localidad
like '%xxxxxx%' pe.DE_Provincia
like '%xxxxxx%' pe.DE_Pais
like '%xxxxxx%' )
la línea
pe.fecha_Ped >= '2003-05-05' | pe.fecha_Ped <= '2003-05-05' | pe.fecha_ped Between '2003-01-05' and '2003-12-05'
afecta a la fecha del pedido de tres maneras, desde, hasta o entre, por lo tanto según si cumplimenta uno o dos campos de filtrado para fecha tendrá uno de los tres formatos.