Page 1 of 2

Problema SQL ADS desde FWH

Posted: Tue Jun 27, 2017 12:11 pm
by jmartial
Hola,

Estoy teniendo un problema y no logro saber cual es el motivo.

Si desde FWH hago una consulta SQL desde ADS local, se queda indefinidamente creando un archivo temporal hasta que da el error de 7200 y
2151 Unable to do SORT for GROUP BY

Desde ACE32 funciona perfectamente.

Todo probado con la versión 8 y la versión 9 de ADS.

El problema es en el WHERE con lo siguiente:

WHERE l.c_serie+SPACE(2)+CONVERT(l.c_numrecp, SQL_CHAR) NOT IN
(SELECT DISTINCT x.c_serie+SPACE(2)+CONVERT(x.c_numrecp, SQL_CHAR) FROM lfacpro AS x WHERE x.c_concepto LIKE 'Alb. ________ Fecha%')


Quitando el LIKE 'Alb. ________ Fecha%'

Funciona perfectamente.

No entiendo la diferencia de ejecutarlo desde FWH (Que se queda indefinidamente hasta que revienta) a ejecutarlo desde ACE32.exe

Re: Problema SQL ADS desde FWH

Posted: Tue Jun 27, 2017 3:26 pm
by xmanuel
Joaquin puedes poner el SELECT completo?

Re: Problema SQL ADS desde FWH

Posted: Tue Jun 27, 2017 6:04 pm
by carlos vargas
por favor la sentencia sql completa y la forma en como lo llamas desde codigo.
salu2

Re: Problema SQL ADS desde FWH

Posted: Wed Jun 28, 2017 12:19 am
by VitalJavier
Joaquin

yo tengo el mismo problema en una sentencia parecida con "LIKE"
y no lo he podido solucionar, se queda generando y no termina. "Y en ocaciones funciona"

Code: Select all

        Select 0
        ADSCreateSQLStatement("CFE",3) 
        cSQL := "SELECT {static} * from NOTASS WHERE ESTATUS = 'A' AND FECHA >= '"+cF1+"' AND FECHA <= '"+cF2+"' AND CFE_NUM like '%0%'"
        ADSExecuteSQLDirect(cSQL)

 
Espero y a alguien le funcione bien o decirnos como

Gracias.

Re: Problema SQL ADS desde FWH

Posted: Wed Jun 28, 2017 7:10 am
by jmartial
Buenos días,

Sí, el problema lo da con algunos datos, por ejemplo, algunos fechas de facturación la ejecuta rapidísimo y otros días se queda indefinidamente procesando. Pero no aleatoriamente.

Code: Select all

select l.c_codart, l.c_cantidad AS entrada, 0 AS salida, l.c_tlinea AS ptscompra, 0 AS ptsventa
  FROM lfacpro AS l, facpro AS a, articu AS z
 WHERE l.c_serie=a.c_serie AND l.c_numrecp=a.c_numrecp AND l.c_codart=z.c_codart AND UPPER(z.c_controls)='S'
       AND a.c_serie>='&serie1' and a.c_serie<='&serie2' and
           a.c_freg>='&cFecha1' and a.c_freg<='&cFecha2'
       AND l.c_serie+SPACE(2)+CONVERT(l.c_numrecp, SQL_CHAR) NOT IN
       (SELECT DISTINCT x.c_serie+SPACE(2)+CONVERT(x.c_numrecp, SQL_CHAR) FROM lfacpro AS x WHERE x.c_concepto LIKE 'Alb. ________ Fecha%')

La forma de ejecutar la sentencia desde FWH

Code: Select all

   dbselectar(0)
   if AdsCreateSqlStatement( "ADSSQL", 2 )
   AdsExecuteSqlDirect( cQuery )
 
Como dije, en ARC32.exe que creo está en Delphi, funciona perfectamente y rapidísimo.

Re: Problema SQL ADS desde FWH

Posted: Wed Jun 28, 2017 12:42 pm
by Marcelo Via Giglio
Joaquín,

prueba de esta forma

Code: Select all

dbselectar(0)
   if AdsCreateSqlStatement( "ADSSQL", 2 )
      AdsPrepareSql( cQuery )
      AdsExecuteSql( cQuery )
      .....
 
saludos

Marcelo

Re: Problema SQL ADS desde FWH

Posted: Wed Jun 28, 2017 1:03 pm
by jmartial
Hola,

Lo acabo de probar y hace exactamente lo mismo.

Re: Problema SQL ADS desde FWH

Posted: Wed Jun 28, 2017 5:25 pm
by carlos vargas
.

Re: Problema SQL ADS desde FWH

Posted: Wed Jun 28, 2017 5:36 pm
by carlos vargas
.

Re: Problema SQL ADS desde FWH

Posted: Wed Jun 28, 2017 5:41 pm
by carlos vargas
.

Re: Problema SQL ADS desde FWH

Posted: Wed Jun 28, 2017 8:21 pm
by jmartial
Buenas noches,

Gracias por tu explicaciòn, pero lee mi mensaje donde explico todo.

Como digo en el editor de ads, funciona perfectamente, siempre y tarda 1 segundo.

Es en fwh donde a veces no termina y revienta, también pongo el error que da.

Y solo ocurre con algunos datos de la dbf, pero no aleatoriamente.

Re: Problema SQL ADS desde FWH

Posted: Thu Jun 29, 2017 3:13 pm
by xmanuel
Puedes poner varios valores reales de la columna x.c_concepto.

Además prueba el select

Code: Select all

select l.c_codart, l.c_cantidad AS entrada, 0 AS salida, l.c_tlinea AS ptscompra, 0 AS ptsventa
  FROM lfacpro AS l, facpro AS a, articu AS z
 WHERE l.c_serie=a.c_serie AND l.c_numrecp=a.c_numrecp AND l.c_codart=z.c_codart AND UPPER(z.c_controls)='S'
       AND a.c_serie>='&serie1' and a.c_serie<='&serie2' and
           a.c_freg>='&cFecha1' and a.c_freg<='&cFecha2'
 
Y este otro

Code: Select all

SELECT DISTINCT x.c_serie+SPACE(2)+CONVERT(x.c_numrecp, SQL_CHAR) FROM lfacpro AS x WHERE x.c_concepto LIKE 'Alb. _______para_ Fecha%'
 
Para comprobar si por separado funcionan

Re: Problema SQL ADS desde FWH

Posted: Thu Jun 29, 2017 5:24 pm
by jmartial
Buenas tardes Manu,

A ver si un día me paso a verte en moto y nos vemos, suelo pasar mucho por tu pueblo.


A lo que vamos, juntas o separadas, sòlo falla la del LIKE cuando lo lleva puesto.

El concepto, son descripciones de artículos de compra. Caracteres los normales, estuve revisándolos y no hay caracteres
Fuera de lo normal ni que coincidan que si aparecen se estropee, aunque no puedo estar seguro completamente.

Re: Problema SQL ADS desde FWH

Posted: Thu Jun 29, 2017 10:03 pm
by xmanuel
Joaquín ya sabes donde vivo así que me avisas y nos tomamos unas birras.
Mañana viernes precisamente voy al Palmar de Troya o sea que paso cerca de Utrera, sigues ahí no?

Necesito que pongas valores del campo ese donde haces el LIKE ya que está poniendo algo un poco extraño
'Alb. ________ Fecha%'
Le estas diciendo en la condició LIKE que el campo tiene que empezar por "Alb." que luego va a tener 8 posiciones fijas que puede valer cualquier cosa, sigue con la palabra "Fecha" y detrás cualquier cosa sin limites de tamaño. Es eso lo que quieres que te devuelva realmente??

Re: Problema SQL ADS desde FWH

Posted: Thu Jun 29, 2017 10:10 pm
by Carlos Mora
Motos... Cerveza... No se si seré util para resolver el problema pero me apunto a las motos y cervezas, jaja

Un abrazo