FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour tDolphin ::Refresh() no funciona
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
tDolphin ::Refresh() no funciona
Posted: Fri Sep 12, 2014 02:58 PM

Hola Daniel...
cuando se usa Refresh() el método no halla la tabla correspondiente:

oDatos := oCon:Execute("Select * from productos.articulos")
..
..
..
oDatos:Refresh() // <- aquí indica que ho existe productos.articulos

Salu2

Posts: 682
Joined: Tue Feb 14, 2006 09:48 AM
Re: tDolphin ::Refresh() no funciona
Posted: Fri Sep 12, 2014 03:23 PM

El método Execute solo devuelve si se ha ejecutado correctamente (.t. o .f.).

Saludos desde Mallorca
Biel Maimó
http://bielsys.blogspot.com/
Posts: 1144
Joined: Mon Feb 05, 2007 07:15 PM
Re: tDolphin ::Refresh() no funciona
Posted: Fri Sep 12, 2014 03:59 PM

el método execute, no es para eso,

oDatos := oCon:Query("Select * from productos.articulos")
oDatos:refresh()

Cesar Cortes Cruz

SysCtrl Software

Mexico



' Sin +- FWH es mejor "
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: tDolphin ::Refresh() no funciona
Posted: Fri Sep 12, 2014 08:02 PM

Lo siento, error mio...

oDatos := oCon:Query("Select * from productos.articulos")
..
..
..
oDatos:Refresh() <-el error es aquí, indica euq no existe productos.articulos

Posts: 3358
Joined: Fri Oct 07, 2005 08:20 PM
Re: tDolphin ::Refresh() no funciona
Posted: Fri Sep 12, 2014 09:43 PM
Mr.

No conozco TDolphin pero razonándolo me parece que el error
puede estar en el punto(.), no?

Con MySql el punto se utiliza para separar la DATABASE del campo o columna
cuando el nombre del campo es igual en más de una DATABASE y tal vez
lo que tu deseas es abrir dos tablas (Productos y Articulos) entonces podría
ser
Code (fw): Select all Collapse
oDatos := oCon:Query("Select * from productos , articulos")


Solo una idea

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM
Re: tDolphin ::Refresh() no funciona
Posted: Mon Sep 15, 2014 01:11 PM
Willi:
No se cual es tu intención con el :Refresh(); pero yo, luego de hacer un Query, no necesito del refresh
Code (fw): Select all Collapse
   oQry:= oSrv:Query( "SELECT desc_div FROM divisiones ORDER BY id_div" )

   // Dialogo
   DEFINE DIALOG soDlg1 RESOURCE "dlg_Browse" OF oWnd TITLE "Divisiones"
   soDlg1:lHelpIcon:= FALSE

   REDEFINE XBROWSE oBrw OBJECT oQry ID 500 ;
            AUTOCOLS AUTOSORT HEADERS "Divisiones"       // El browse se muestra correctamente
   ...
   ...

Para saber si existes datos a mostrar, si fuera el caso de no querer mostrar el browse vacio, lo que hago es primero consultar con un Count()
Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: tDolphin ::Refresh() no funciona
Posted: Mon Sep 15, 2014 04:42 PM

El refresh deberia ser en el Xbrowse para que actualice la data, en el query creo como dice el colega, no es necesario, a menos que hagas algo directamente a la tabla de donde hicistes el query, entonces el refresh si lo uso para que actualice la consulta y luego el xbrowse si es el caso, saludos... :shock:

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: tDolphin ::Refresh() no funciona
Posted: Tue Nov 25, 2014 12:36 PM

hola.
a mi me pasa esto a ver si pueden guiarme.

hago una consulta por el campo fecha,
y relleno un xbrowse,
luego un boton que hace la misma consulta pero con una fecha diferente.
hago un refresh() del xbrowse y los datos siguen quedando los viejos,
si la consulta devuelve datos si lo muestra, pero si no existen datos quedan los viejos.

porque?
gracias.

FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: tDolphin ::Refresh() no funciona
Posted: Wed Nov 26, 2014 05:27 PM
las consultas las hago de esa forma willyy

Code (fw): Select all Collapse
local oQry

define query oQry "SELECT * FROM tbdatos.clientes"
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: tDolphin ::Refresh() no funciona
Posted: Wed Nov 26, 2014 07:23 PM

Hola sr.
prueba con :
oQuery:LoadQuery()

Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: tDolphin ::Refresh() no funciona
Posted: Wed Nov 26, 2014 11:19 PM
negativo!

Cuando la consulta es simple:
Code (fw): Select all Collapse
select * from tbclientes"

la cosa funciona de diez.

Ahora esto:
Code (fw): Select all Collapse
  DEFINE query ::oQry "select " +;
      "tbfacturas.fecha as c1, " +;
      "tbfacturados.descripcion as c2, " +;
      "tbfacturados.cantidad as c3, " +;
      "tbfacturados.precio as c4, " +;
      "tbfacturados.idfactura c5 "+;
      "from " +;
      "tbfacturas " +;
      "left join tbfacturados " +;
      "on tbfacturas.id = tbfacturados.idfactura " +;
      "where tbfacturas.fecha = " + ClipValue2SQL(vGets[1])+;
      " order by tbfacturados.descripcion"


No anda. o sea hago la consulta y cuando "refresco" el xbrowse no aparece el resultado de la nueva consulta, y otra coosa que cuando aparecen (en el primer caso que es simple) las columnas cuando haces click "NO SE ORDENAN" a no ser que, luego de hacerle click a la columna que queres que se ordene, muevas el mouse "fuera del listbox que es el que utilizo para el xbrowse".
FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM
Re: tDolphin ::Refresh() no funciona
Posted: Wed Nov 26, 2014 11:54 PM

Gus;
meto la cuchara en la parte de establecer Orden.
Si en la declaración del xBrowse agregas AUTOSORT, te aparecerá ordenado por la columna que indique el índice asociado y mostrará el triángulo sobre el header correspondiente.

Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 1956
Joined: Fri Oct 07, 2005 07:08 PM
Re: tDolphin ::Refresh() no funciona
Posted: Thu Nov 27, 2014 12:06 AM

Asi es Mario,
Pero al momento de hacerle click a la columna 2, muuestra el triangulito pero no muestra ordenada la columna HASTA QUE sacas el mouse del mismo xbrowse o presionas tab y pasas el foco a otro control.
Con el solo hecho de sacar el mouse desde arriba del xbrowse ahi se entera que tiene que mostrar denuevo los datos y si! muestra esa columna 2 ordenada.

Gracias.

FWH 21.02
Harbour 3.2.0dev (r2104281802)
Copyright (c) 1999-2021, https://harbour.github.io/
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM
Re: tDolphin ::Refresh() no funciona
Posted: Thu Nov 27, 2014 01:12 AM

mmmm... si me esta pasando con un xBrowse y datos de una DBF
Mañana me fijo, creo que tengo un codigo que forzaba el orden haciendo clic en la columna

Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 1054
Joined: Sun Oct 09, 2005 10:41 PM
Re: tDolphin ::Refresh() no funciona
Posted: Thu Nov 27, 2014 03:46 PM
Hola amigos, :refresh() y :loadquery()en Doplhin, solo funciona con setencias simples..., cuando en la sentencia hay m,as de una tabla involucrada, no va... pero hay solución
Code (fw): Select all Collapse
cDatos := "select " +;
      "tbfacturas.fecha as c1, " +;
      "tbfacturados.descripcion as c2, " +;
      "tbfacturados.cantidad as c3, " +;
      "tbfacturados.precio as c4, " +;
      "tbfacturados.idfactura c5 "+;
      "from " +;
      "tbfacturas " +;
      "left join tbfacturados " +;
      "on tbfacturas.id = tbfacturados.idfactura " +;
      "where tbfacturas.fecha = " + ClipValue2SQL(vGets[1])+;
      " order by tbfacturados.descripcion"

eDatos := {|| query :=  ::Query(cDatos)}

EVAL(eDatos)   // evaluas la sentencia cuando lo requieras, que al final es lo mismo que el ::refresh()
...
...