Como una pequeñisima aportación a los que como yo nos ha costado mucho migrar a comandos SQL, les dejo este consejo para clarificar el código de los comandos SQL, sobre todo por si lleva coma (,) , apostrofe (') o comillas ("), veamos el antes y el despues:
- Code: Select all Expand view RUN
oRsDet:Source := "SELECT detppn.*,hdrppn.hdr_can,hdrppn.hdr_fde,hdrppn.hdr_cpt,proveedor.pro_nom " + ;
"FROM detppn,hdrppn,proveedor WHERE detppn.det_fol = hdrppn.hdr_fol " + ;
"AND hdrppn.hdr_pro = proveedor.pro_pro AND ! hdrppn.hdr_can AND detppn.det_pro = " + ;
"'" + cPro + "' ORDER BY detppn.det_prv,detppn.det_fol"
El código anterior aunque funciona es sumamente dificil de entender, ahora veamos el mismo código pero en otra presentación.
- Code: Select all Expand view RUN
oRsDet:Source := "SELECT " +;
"detppn.*," +;
"hdrppn.hdr_can," +;
"hdrppn.hdr_fde," +;
"hdrppn.hdr_cpt," +;
"proveedor.pro_nom " + ;
"FROM " +;
"detppn," +;
"hdrppn," +;
"proveedor " +;
"WHERE " +;
"detppn.det_fol = hdrppn.hdr_fol " + ;
"AND " +;
"hdrppn.hdr_pro = proveedor.pro_pro " +;
"AND " +;
"! hdrppn.hdr_can " +;
"AND " +;
"detppn.det_pro = '" + cPro + "' " +;
"ORDER BY " +;
"detppn.det_prv," +;
"detppn.det_fol"
Espero sea de ayuda, sobre todo a los que se inician en el mundo SQL.
Un abrazo al foro.