FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour xBrowse con campos vacios
Posts: 652
Joined: Wed Oct 19, 2005 12:03 PM
xBrowse con campos vacios
Posted: Tue Feb 28, 2012 11:21 PM
Se puede hacer que un xbrowse aparezca vacio y luego de seleccionar un dato cargarlo con lo que necesito de él. Para ser mas claro les doy un ejemplo, selecciono un cliente y muestro de este cliente la cuenta corriente en el xbrowse. Lo estoy tratando de hacer con la clase tymsql de Williams.

Hasta ahora lo estaba haciendo con wbrowse y era buscar en la tabla todos los registros de este cliente y cargarlos en un array y luego mostrar el array

Code (fw): Select all Collapse
oQry :=oMysql:Query( "SELECT * FROM ctacte where ncli  = " + alltrim(str(oQry1:ncli) ))
oQry:gotop()
do 
    nImporte :=   0
    if oQry:tipo = "1" 
          ltipo := .t.
      nSaldo += oQry:importe
    else 
          ltipo := .f.  
      nSaldo -= oQry:importe       
    endif
   
    aadd(oCta:adet,{oQry:fecha, (oQry:descripcion + iif(empty(oQry:pventa), "   ",(oQry:pventa))+  "-" +  oQry:numero),lTipo, oQry:importe, nsaldo, oQry:pventa, oQry:numero})
    oQry:skip() 

until oQry:eof()
oBrw:setarray(oCta:adet)
oBrw:refresh()



La versión de fwh que utilizo es la 7.12, supongo que debe haber una forma de mostrarlo

Desde ya gracias
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: xBrowse con campos vacios
Posted: Wed Feb 29, 2012 01:00 AM

Puedes hacer lo mismo con xBrowse, define el xBrowse con un array en blanco, carga los datos en el array y luego referscas el xbrowse y se cargaran los datos... nose si es lo que quieres...saludos... :shock:

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 652
Joined: Wed Oct 19, 2005 12:03 PM
Re: xBrowse con campos vacios
Posted: Wed Feb 29, 2012 08:29 AM

Gracias José Luis, pero quizás no me explique bien lo que quisiera hacer es mostrar el xbrowse vacio y cargar el resultado del query de la base de datos directamente, es decir sin tener que cargar un array.
Podría hacerlo haciendo un dialogo previo en el que seleccione el cliente y luego que me muestre en otro diálogo el resultado del query pero no me gustaría hacerlo de esa forma.

Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: xBrowse con campos vacios
Posted: Wed Feb 29, 2012 03:15 PM
surGom wrote:Gracias José Luis, pero quizás no me explique bien lo que quisiera hacer es mostrar el xbrowse vacio y cargar el resultado del query de la base de datos directamente, es decir sin tener que cargar un array.
Podría hacerlo haciendo un dialogo previo en el que seleccione el cliente y luego que me muestre en otro diálogo el resultado del query pero no me gustaría hacerlo de esa forma.

Nose si entendi bien, pero creo que si haces una tabla temporal vacia, luego la puedes alimentar con los datos del array de los valores que solicites, igual debes contruir 1 query con los datos que estas filtrando, te decia lo del array por si no es importante mantener los datos y que se actualize cada ves que quieras con los nuevos datos de tu query, sino manejas directamente el query en tu browse vacio, saludos... :-)
Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM
Re: xBrowse con campos vacios
Posted: Fri Mar 02, 2012 01:20 PM

Jose Luis
He mirado uno de mis fuentes porque yo muestro un xbrowse vacio, peeeero, es cuando las tablas, cuyas columnas muestro, aun no tienen dato. O sea cuando se inicia el uso de la Aplicación.
No obstante se me ocurre que lo que podrías hacer, siempre con la idea de mostrar directamente el query recolectado, es que hagas un oBrw:Hide() y luego al momento de la consulta un :Show()
Si sirve... en buena hora :wink:

Saludos

Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 2064
Joined: Fri Jan 06, 2006 09:28 PM
Re: xBrowse con campos vacios
Posted: Fri Mar 02, 2012 03:57 PM

Saludos Mario, el del problema con los xBrowse es el colega SURGOM, yo mis xbrowse si los deseo mstrar sin data y los manejo con query, lo hago bajo un condicional en oBrw:aCols[3]:bStrData, tambien puedo ocultar las columnas y luego mostrarlas dependiendo de la condicion que quiera aplicar, y si uso Array es mucho mas facil, ya que inicio el array en blanco y luego agrego los datos y actualizo el xbrowse con el array con data, saludos... :shock:

Dios no está muerto...



Gracias a mi Dios ante todo!
Posts: 1380
Joined: Fri Oct 14, 2005 01:28 PM
Re: xBrowse con campos vacios
Posted: Fri Mar 02, 2012 04:23 PM

disculpas... :oops: esperemos que lea los post

Resistencia - "Ciudad de las Esculturas"

Chaco - Argentina
Posts: 1789
Joined: Tue Oct 11, 2005 05:01 PM
Re: xBrowse con campos vacios
Posted: Fri Mar 02, 2012 08:56 PM
para estos caso creo que podria se util las funciones de creacion de tablas en memoria o tablas temporales, que se crean y se usan y al cerrar el area son destruidas.

este caso crea una tabla temporal
Code (fw): Select all Collapse
   /*creacion de tabla temporal par la creacion de la tarjeta de cobro*/
   aEstructura := { { "FECHA", "D", 08, 00},{ "CFECHA", "C", 15, 00 },{ "MARCA", "C", 30, 00 } }
   IF !HB_DBCreateTemp( "FICHA1", aEstructura , "DBFCDX" )
      MsgAlert( "Fallo en la creación de tabla temporal para la creación de tarjeta de cobro/cliente." )
      MOVP->( DBCloseArea() )
      RETURN
   ENDIF
   FICHA->(dbclosearea())


hay otro codigo donde se crea la tabla en memoria, y al cerrarla esta memoria es liberada.
no recuerdo el codigo, pero en los test de xahrbour y harbour aparece,

salu2
Salu2

Carlos Vargas

Desde Managua, Nicaragua (CA)

Continue the discussion