FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour ¿Algún ejemplo del uso de xBrowse?
Posts: 12
Joined: Sun Mar 22, 2020 05:49 PM
¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 04:17 AM

Hola,

Ya estoy utilizando la versión FWH20.04, donde me encuentro con bastantes cambios respecto a versiones anteriores.
Estoy migrando una aplicación xHarbour modo consola, que maneja tablas dbf /cdx.

En estos días he cambiado la forma de trabajar las tablas dbf: como objetos.
Los registros los paso a arrays mediante FW_DbfToArray()
Los arreglos los trabajo con xBrowse.

Todo bien hasta este punto.

Lo que no he podido lograr (no encuentro un ejemplo claro), y esa es la ayuda que pido para poder seguir avanzando, es manejar una tabla de detalle, en donde
necesito contar con columnas de: código, descripción, precio, cantidad y total.

Entiendo que ya muchos programadores no usan dbf's pero debe quedar algún ejemplo actualizado para manejar tablas de detalle,
Agradezco su ayuda,

Luis Antonio
Curicó - Chile

Luis Antonio GM

Curicó-Chile
Posts: 44158
Joined: Thu Oct 06, 2005 05:47 PM
Re: ¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 04:42 AM

Luis Antonio,

Revisa el ejemplo samples\fivedbu.prg que te dará una visión amplia de como trabajar con tablas, browses, etc

Desde c:\fwh\samples haz:

buildh.bat fivedbu

regards, saludos

Antonio Linares
www.fivetechsoft.com
Posts: 1816
Joined: Wed Oct 26, 2005 02:49 PM
Re: ¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 11:46 AM
Una idea
Code (fw): Select all Collapse
    oBrwDoin := TXBrowse():New( oDlgDin )
    oBrwDoin:nMarqueeStyle         := MARQSTYLE_HIGHLROW
    oBrwDoin:nRowDividerStyle      := LINESTYLE_LIGHTGRAY
    oBrwDoin:nColDividerStyle      := LINESTYLE_LIGHTGRAY
    oBrwDoin:nHeaderLines          := 1
    oBrwDoin:lColDividerComplete   := .t.
    oBrwDoin:lRecordSelector       := .t.
    oBrwDoin:nStretchCol           := STRETCHCOL_LAST
    oBrwDoin:l2007                 := .f.
    oBrwDoin:oFont                 := oFont1  

    oCol          = oBrwDoin:AddCol()
    oCol:bStrData := {|| if(Len( detalle ) > 0 , Transform(detalle[oBrwDoin:nArrayAt]["id"],oLamcla:PIC9) ,"" ) }
    oCol:AddResource( "#8208" ) 
    oCol:cHeader  = "Item"
    oCol:nWidth   = 30
    oCol:nHeadStrAlign = AL_LEFT
    oCol:nDataStrAlign = AL_LEFT    
    oCol:oHeaderFont = oFont

    oCol          = oBrwDoin:AddCol()
    oCol:bStrData := {|| if(Len( detalle ) > 0 , detalle[oBrwDoin:nArrayAt]["idproducto"] ,"" ) }
    oCol:cHeader  = "Codigo"
    oCol:nWidth   = 85
    oCol:nHeadStrAlign = AL_LEFT
    oCol:nDataStrAlign = AL_LEFT    
    oCol:oHeaderFont = oFont
    
    oCol          = oBrwDoin:AddCol()
    oCol:bStrData := {|| if(Len( detalle ) > 0 , detalle[oBrwDoin:nArrayAt]["nombreproducto"] ,"" ) }
    oCol:cHeader  = "Descripción"
    oCol:nWidth   = 180
    oCol:nHeadStrAlign = AL_LEFT
    oCol:nDataStrAlign = AL_LEFT    
    oCol:oHeaderFont = oFont
    oCol:cFooter      = "TOTALES"   
    oCol:oFooterFont = oFont3

   
    oBrwDoin:SetArray( detalle )
    oBrwDoin:CreateFromResource( 102 )
Saludos
LEANDRO AREVALO
Bogotá (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
Posts: 12
Joined: Sun Mar 22, 2020 05:49 PM
Re: ¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 02:26 PM

Gracias Antonio y Leandro,

Muy buenos ejemplos para seguir investigando hasta crear el módulo de mantenimiento encabezado detalle

Luis antonio

Luis Antonio GM

Curicó-Chile
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: ¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 03:53 PM

Hola.
Mira, en \samples, Yunus.prg, especificamente function EditInvoice( oRec ).
Saludos.

Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 670
Joined: Wed Oct 19, 2005 06:41 PM
Re: ¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 05:19 PM

buenos dias
aprovechando
como hago para si en la fila del browse tengo una fecha esta no sea editable en funcion de otro campo que tiene un valor digamos
campo = 'CD' ->edite la fecha de esa fila
campo = 'EF' ->no edite la fecha de esa fila
he probado con
oCol1:nEditType =0 para no editar o igual a otro valor para editar
PERO me deja editar o me bloquea TODA la columna
como o que uso para solo bloquear esa celda en esa fila
espero haberme explicado
muchas gracias por su ayuda
saludos

Wilson 'W' Gamboa A
Wilson.josenet@gmail.com
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: ¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 06:58 PM
Wilson, aquí tienes un ejemplo probado en 1709.
Code (fw): Select all Collapse
//----------------------------------------------------------//
// CELDA EDITABLE O NO  ( FAPSOFTWARE )
//---------------------------------------------------------//
Function CeldaDisable()
local oDlg, oBrw, n
LOCAL aAgenda := { {1,5,8,4,5,6,7} ,;
                   {1,4,9,4,5,6,7} ,;
                   {1,2,3,4,5,6,7} ,;
                   {1,5,0,4,5,6,7} ,;
                   {1,2,3,4,5,6,7} }

  DEFINE DIALOG oDlg  SIZE 450,200 PIXEL
  @5, 10 SAY "Celdas en Columna 3 son editables si valor en Columna 2 == 2" SIZE 200,10 PIXEL OF oDlg

  @ 20, 10 XBROWSE oBrw SIZE -10,-10 PIXEL OF oDlg  DATASOURCE aAgenda ;
           COLUMNS 1,2,3,4,5,6,7  HEADERS "LU","MA","MI","JU","VI","SA","DO";
           CELL LINES 

  WITH OBJECT oBrw:aCols[3]
     :nEditType := 1 
     :bEditWhen := {|| oBrw:aCols[2]:Value == 2 }  //Celda en col 3 es editable si valor celda en col 2 = 2
  END

  oBrw:CreateFromCode()

  AEVAL( oBrw:aCols,{|o| o:nWidth := 50 } )

  ACTIVATE DIALOG oDlg CENTERED
Return nil


Saludos.
Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql
Posts: 12
Joined: Sun Mar 22, 2020 05:49 PM
Re: ¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 07:32 PM
FranciscoA wrote:Hola.
Mira, en \samples, Yunus.prg, especificamente function EditInvoice( oRec ).
Saludos.


Eso es precisamente lo que necesito.
Es fundamental contar con ejemplos así de claros para quienes estamos iniciando o retomando la programación con FiveWin,
y personas que amablemente comparten sus conocimientos y experiencias.

Muchas gracias Francisco,

Luis Antonio
Curicó-Chile
Luis Antonio GM

Curicó-Chile
Posts: 670
Joined: Wed Oct 19, 2005 06:41 PM
Re: ¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 09:00 PM

Francisco que barbaro!! justo lo que necesito
muchas gracias !!

Wilson 'W' Gamboa A
Wilson.josenet@gmail.com
Posts: 2170
Joined: Fri Jul 18, 2008 01:24 AM
Re: ¿Algún ejemplo del uso de xBrowse?
Posted: Tue May 19, 2020 09:30 PM

Me alegra mucho que hayan resuelto.
Saludos.

Francisco J. Alegría P.

Chinandega, Nicaragua.



Fwxh-MySql-TMySql

Continue the discussion