Usando Heidisql, el query se ejecuta correctamente.
Cuando intento hacerlo con mi programa, el query aparece vacio.
No puedo darme cuenta que hago mal, si alguien pudiera ayudarme les agradezco.
Aca va el codigo que reproduce el error y una captura de heidisql ejecutando el que creo es el mismo script
Agradezco la ayuda que puedan brindarme, seguramente es algo que ignoro o un error, pero no puedo encontrarlo.
Gracias a todos desde ya.
- Code: Select all Expand view
#include "Fivewin.ch"
#include "AdoDef.ch"
FUNCTION Santi1()
LOCAL oCn2, cSql, oRs2
wfecha:= Dtos( Ctod( '07/11/2024' ) )
oCn2 := FW_OpenADOConnection( "MSSQL, 192.168.150.206, SarubbiAlba, sa, Came0300", .t. )
cSql := "DECLARE @fecha char(8) = '" + wfecha + "' " + CRLF + ;
"SELECT m1.tropanumero AS tropa, m1.correlativo, ani.descripcion, m1.inac AS INACUR, " + CRLF + ;
"ROUND( t.kilosen1 / t.cabezas , 2) AS KEnPie, m1.kilos + isnull(m2.kilos,0) AS KClasif, m1.precioen2 " + CRLF + ;
"FROM C10304 m1 " + CRLF + ;
"INNER JOIN P0021 ani ON ani.codigo = m1.tipodeanimal " + CRLF + ;
"INNER JOIN C10204 t ON t.ano = m1.tropaano AND t.numero = m1.tropanumero " + CRLF + ;
"OUTER APPLY ( SELECT * from C10304 m2 where m2.fecha = m1.fecha AND " + CRLF + ;
"m2.lineadeproduccion = m1.lineadeproduccion AND m2.correlativo = m1.correlativo AND m2.mediares = 2 ) m2 " + CRLF + ;
"WHERE m1.fecha = @fecha and m1.tipoderegistro = 4 and m1.mediares = 1 order by m1.correlativo ; "
oRs2 := FW_OpenRecordSet( oCn2, cSql )
xbrowse( oRs2 )
RETURN nil