Page 1 of 1

no me refresca un query

PostPosted: Sun Jan 14, 2024 9:41 pm
by goosfancito
Hola.

Tengo un procedimiento almacenado, cuando lo ejecuto por primera vez me carga bien el xbrowser PERO cuando quiero refrescar el xbrowser (luego de un cambio) los datos no me los muestra, que estoy haciendo mal?

Code: Select all  Expand view
METHOD prClientes( oCnx ) CLASS TPr

   LOCAL PROCEDIMIENTO
   LOCAL CQUERY

   TEXT INTO PROCEDIMIENTO
   SELECT
   specific_name
   FROM information_schema.routines
   WHERE routine_schema = 'db' AND specific_name = 'pr_clientes'
   ENDTEXT

   TEXT INTO CQUERY
   CREATE PROCEDURE
   dda.pr_clientes()
   SELECT
   a.id AS c1,
   a.sucursal AS c2,
   a.codicefiscale AS c3,
   a.denominazione AS c4,
   a.cap AS c5,
   a.indirizzo AS c6
   FROM tbclientes AS a
   ORDER BY a.denominazione DESC
   ENDTEXT

   RETURN ( oQry := crearPr( oCnx, PROCEDIMIENTO, CQUERY ) )

...
::oQry:= oCnx:call( prclientes(oCnx))

xbrowser ::oQry

 


cuando hago esto el xbrowser no me refresca l os datos

Code: Select all  Expand view

::oQry:refresh()
xbrowser ::oQry
 

Re: no me refresca un query

PostPosted: Mon Jan 15, 2024 2:02 am
by nageswaragunupudi
Code: Select all  Expand view
::oQry:ReQuery()

Re: no me refresca un query

PostPosted: Mon Jan 15, 2024 7:15 am
by goosfancito
no me funciona

Re: no me refresca un query

PostPosted: Mon Jan 15, 2024 1:49 pm
by karinha
Intenta:

Code: Select all  Expand view

oQry:Requery( { <su query>} )
oBrw:SetMySql(oQry)
 


Regards, saludos.

Re: no me refresca un query

PostPosted: Mon Jan 15, 2024 4:46 pm
by sysctrl2
Depende de la versión de FWH y la lib de conexión que usas

NATIVO
Code: Select all  Expand view

METHOD ScRefresh() CLASS ScWhatsApp
   MSGRUN( "Espere un momento , actualizando datos ! ", "Usuario", {|| ::oWhats_App:requery() } )
   ::oGrid:Refresh()
   ::oGrid:SetFocus()
 


DOLPHIN
Code: Select all  Expand view

METHOD ScRefresh() CLASS ScEmbarq
  local cQry, oDetalle
  cQry := "SELECT no_embarque, factura, pedido, grupo, unidad, alterno, nombre, semana, "
  cQry += "fecha,bolsas,cajas,cod_postal,ruta,orden_entrega"
  cQry += " FROM embarques_detalle"
  cQry += " WHERE no_embarque=" + C_SIMPLE + cstr( oEmbarques:folio ) + C_SIMPLE
  cQry += " AND borrado <>" + C_SIMPLE + "S" + C_SIMPLE
  cQry += " ORDER by no_embarque,factura"
  oDetalle:= ::oCon:Query( cQry )
  oBrw:SetDolphin( oDetalle )
RETURN .T.

 

Re: no me refresca un query

PostPosted: Tue Jan 16, 2024 7:24 am
by goosfancito
sigue sin funcionar. Les muestro la definicion del browser
Code: Select all  Expand view
METHOD setBrw( oDlg ) CLASS TCliente

   LOCAL oFont, oFont1
   LOCAL aColSizes := { 40, 210, 200, 120, 90, 120, 10 }
   LOCAL aColumns  := { "c2", "c4", "c6", "c7", "c8", "c9", "c10", "c11" }
   LOCAL aHeaders  := { "Suc.", "Denominazione", "Indirizzo", "Comune", "Provincia", "Telefono", "Hab" }
   LOCAL aJustify  := { AL_CENTER, AL_LEFT, AL_LEFT, AL_LEFT, AL_LEFT, AL_CENTER, AL_CENTER }

   DEFINE FONT oFont NAME "Ms Sans Serif" bold SIZE 0, - 8
   DEFINE FONT oFont1 NAME "Ms Sans Serif" SIZE 0, - 8

   REDEFINE XBROWSE ::oBrw ID 100 OF oDlg ;
   DATASOURCE ::oQry ;
   AUTOSORT ;
   COLSIZES aColSizes ;
   COLUMNS aColumns ;
   JUSTIFY aJustify ;
   HEADERS aHeaders


El metodo de leer los registros para cargar ese browser funciona correctamente
y lo hago llamando a un procedimiento,
pero cada vez que quiero hacer una "recarga" del browser hago esto y no me estàa funcionando:

Code: Select all  Expand view
method recargarBrw() class TCliente

   ::oQry:requery()
   ::oBrw:Refresh( .t. )
   ::oBrw:setfocus()

   return ( nil )
 

Re: no me refresca un query

PostPosted: Tue Jan 16, 2024 5:51 pm
by sysctrl2
usas el Medhot ::oCon:RowSet ?
MariaDb
Code: Select all  Expand view

cQry := "SELECT " + ::cSqlWhatsApp
   cQry += " FROM " + ::cTabla
   cQry += " ORDER BY " + ::cOrder
   ::oWhats_App := ::oCon:RowSet( cQry, ::nPageRow )
 

Re: no me refresca un query

PostPosted: Wed Jan 17, 2024 4:02 am
by goosfancito
no, no lo uso.
siempre use asi como lo puse estimado.