Año, obra son variables de tipo string procedentes de dos edits
delphi
form10.ADOQ.close; form10.ADOQ.SQL.Text:='SELECT DISTINCT OBRAS_'+año+'.OPERARIO, PERSONAL.NOMBRE' + 'from OBRAS_'+año+' left join PERSONAL' + ' PERSONAL.ID = OBRAS_'+año+'.OPERARIO'+ 'where OBRAS_'+año+'.OBRA=' +(char($27)+obra+(char($27)+' AND FECHA_PARTE BETWEEN ' +(char($27)+jvdatepickeredit1.Text+ (char($27)+' and '+(char($27)+jvdatepickeredit2.Text+ (char($27))))))); form10.ADOQ.OPEN;
Sin embargo la consulta funciona en sql
SELECT DISTINCT OBRAS_2010.OPERARIO, PERSONAL.NOMBRE
from OBRAS_2010 left join PERSONAL
PERSONAL.ID = OBRAS_2010.OPERARIO
where OBRAS_2010'.OBRA='9999' AND FECHA_PARTE BETWEEN ('01/02/2010')and ('28/02/2010')
gracias