Page 1 of 2

Desactivar Botones en xBrowse

PostPosted: Tue Aug 15, 2023 5:35 pm
by JoseAlvarez
Saludos amigos y colegas

Hace días consulté por acá como podría pasar los resultados de una consulta MySql a Excel.
El amigo César de CMSOFT, me sugirió que la manera más fácil y rápida era usando xbrowse para mostrar los datos y allí mismo me aparecía la opción de exportar a excel.

Estaba en lo cierto. Gracias César.

Llevé los datos que me interesaban de la consulta a un array, los muestro con xBrowse y exporto a excel sin problemas.

Peeeeroooo (siempre hay un pero) no quiero que aparezcan los botones de agregar, editar y eliminar. Quisiera solo los de navegar, imprimir y exportar.

En la siguiente imagen muestro dentro del cuadro rojo, los botones que deseo desactivar o que no se muestren.

Image

También quisiera saber si es posible cambiarle los nombres a las columnas que por defecto son letras A,B,C,D etc.. lo muestro con letras azules.

Quedo al pendiente y agradezco las ideas o sugerencias que puedan orientarme.

Un abrazo

Re: Desactivar Botones en xBrowse

PostPosted: Tue Aug 15, 2023 9:36 pm
by FranciscoA
José:

Code: Select all  Expand view
local aCols:={"CodiCont","Nombre","SaldoAnt","MovDebe","MovHaber","SaldoAct"}
local aTitCols:={"Codigo"+CRLF+"Contable","Nombre de la Cuenta","Saldo al"+CRLF+"Inicio del Año","Debitos"+CRLF+"Del Año","Creditos"+CRLF+"del Año", "Acumulado"+CRLF+"del Año"}

   XBROWSER cAliasAct TITLE "Balanza Anual" ;
    COLUMNS aCols ;  
      SETUP ( oBrw:cHeaders := aTitCols,;
              oBrw:oWnd:bInit := { |oDlg| oDlg:aControls[ 5 ]:Hide() ,;   //ocultar botones
                                          oDlg:aControls[ 6 ]:Hide() ,;
                                          oDlg:aControls[ 7 ]:Hide() } )
 


Espero te ayude.
Saludos.

Re: Desactivar Botones en xBrowse

PostPosted: Tue Aug 15, 2023 9:36 pm
by JoseAlvarez
Otra cosilla..
Habrá Manera de Cerrar automáticamente el xBrowse cuando termine de exportar a excel? o que se pueda mostrar un mensaje de "finalizado" ??

Re: Desactivar Botones en xBrowse

PostPosted: Tue Aug 15, 2023 9:37 pm
by JoseAlvarez
FranciscoA wrote:José:

Code: Select all  Expand view
local aCols:={"CodiCont","Nombre","SaldoAnt","MovDebe","MovHaber","SaldoAct"}
local aTitCols:={"Codigo"+CRLF+"Contable","Nombre de la Cuenta","Saldo al"+CRLF+"Inicio del Año","Debitos"+CRLF+"Del Año","Creditos"+CRLF+"del Año", "Acumulado"+CRLF+"del Año"}

   XBROWSER cAliasAct TITLE "Balanza Anual" ;
    COLUMNS aCols ;  
      SETUP ( oBrw:cHeaders := aTitCols,;
              oBrw:oWnd:bInit := { |oDlg| oDlg:aControls[ 5 ]:Hide() ,;   //ocultar botones
                                          oDlg:aControls[ 6 ]:Hide() ,;
                                          oDlg:aControls[ 7 ]:Hide() } )
 


Espero te ayude.
Saludos.


Gracias Francisco, voy a probar y te comento !!

Re: Desactivar Botones en xBrowse

PostPosted: Tue Aug 15, 2023 10:19 pm
by EASYSOFT
Buenas tardes disculpen la consulta pero tiene que algo que ver con el tema.

Como puedo dar dimension al xbrowser algo como el size y ponerlo dentro de un dialogo

Gracias.

Re: Desactivar Botones en xBrowse

PostPosted: Tue Aug 15, 2023 10:49 pm
by JoseAlvarez
Francisco,

Todo bien, hasta esta parte del codigo:

Code: Select all  Expand view
 XBROWSER aQueryToExcel TITLE cTitle ;
   SETUP ( oBrw:cHeaders := aTitCols)


Pero al poner todo el codigo, donde se quiere ocultar los botones, me arroja error

Code: Select all  Expand view
 XBROWSER aQueryToExcel TITLE cTitle ;
   SETUP ( oBrw:cHeaders := aTitCols,;
           oBrw:oWnd:bInit := { |oDlg| oDlg:aControls[ 5 ]:Hide() ,;   //ocultar botones
                                       oDlg:aControls[ 6 ]:Hide() ,;
                                       oDlg:aControls[ 7 ]:Hide() } ) 
 


Application
===========
Path and name: C:\Cuentas32\Cuentas32.exe (32 bits)
Size: 5,436,416 bytes
Compiler version: Harbour 3.2.0dev (r2104281802)
FiveWin version: FWH 19.06
C compiler version: Borland/Embarcadero C++ 7.4 (32-bit)
Windows version: 6.2, Build 9200

Time from start: 0 hours 0 mins 15 secs
Error occurred at: 15/08/2023, 19:23:29
Error description: Error BASE/1132 Bound error: array access
Args:
[ 1] = A { ... } length: 2
[ 2] = N 5

Stack Calls
===========
Called from: => (b)EVAL( 26 )
Called from: .\source\function\XBROWSER.PRG => FITSIZES( 301 )
Called from: .\source\function\XBROWSER.PRG => (b)XBROWSE( 250 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:INITIATE( 864 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:HANDLEEVENT( 1120 )
Called from: => DIALOGBOXINDIRECT( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 304 )
Called from: .\source\function\XBROWSER.PRG => XBROWSE( 278 )
Called from: Prg\ExportToExcel.PRG => FNCT_EXPORTTOEXCEL( 26 )
Called from: Prg\Facturas.PRG => (b)FNCT_FACTURAS( 280 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK( 704 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP( 990 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1791 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT( 2030 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3546 )
Called from: => DIALOGBOX( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 304 )
Called from: Prg\Facturas.PRG => FNCT_FACTURAS( 284 )
Called from: Prg\Menus.PRG => (b)FBARRADEBOTONES( 534 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK( 704 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP( 990 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1791 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT( 2030 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3546 )
Called from: => WINRUN( 0 )
Called from: .\source\classes\WINDOW.PRG => TWINDOW:ACTIVATE( 1078 )
Called from: Prg\Cuentas32.PRG => CUENTAS32( 499 )

Re: Desactivar Botones en xBrowse

PostPosted: Wed Aug 16, 2023 10:06 pm
by Cgallegoa
José,
Code: Select all  Expand view
#include "FiveWin.ch"
#include "xBrowse.ch"

function printSigma
   local aCols    := { "CodiCont","Nombre","SaldoAnt","MovDebe","MovHaber", "SaldoAct" }
   local aTitCols:={"Codigo"+CRLF+"Contable","Nombre de la Cuenta","Saldo al"+CRLF+"Inicio del Año","Debitos"+CRLF+"Del Año","Creditos"+CRLF+"del Año", "Acumulado"+CRLF+"del Año"}
   LOCAL oBrw, oCtrl

   XBROWSER oBrw TITLE "Balanza Anual" ;
      COLUMNS aCols ;  
      SETUP ( oBrw:cHeaders := aTitCols,;
              oBrw:oWnd:bInit := { |oDlg| oCtrl := oDlg:aControls[1] ,;
                                                   oCtrl:aControls[5]:Hide() ,;
                                                   oCtrl:aControls[5]:lGroup:=.F. ,;
                                                   oCtrl:aControls[6]:Hide() ,;
                                                   oCtrl:aControls[7]:Hide() ,;
                                                   oCtrl:aControls[8]:Hide() ,;
                                                   oCtrl:aControls[8]:lGroup:=.F. ,;
                                                   oCtrl:aControls[9]:Hide() } )
return nil
 

Re: Desactivar Botones en xBrowse

PostPosted: Wed Aug 16, 2023 11:19 pm
by JoseAlvarez
Excelente amigo Cgallegoa

funcionó de maravilla, justo lo que queria

Ahora solo me falta que al terminar de exportar, salga del xBrowser retornando a la pantalla anterior. O colocar un mensaje de "finalizado" ya que no hay manera de saber cuando el proceso termina. Buscare en el foro, si no logro dar con la solución pediré ayuda.


Muchas Gracias a todos !!!

Re: Desactivar Botones en xBrowse

PostPosted: Thu Aug 17, 2023 1:07 am
by FranciscoA
Probablemente algo ha cambiado en XBROWSER en versiones posteriores a la que uso.
El ejemplo que puse lo tengo funcionando perfectamente con la 1709.
Saludos.

Re: Desactivar Botones en xBrowse

PostPosted: Thu Aug 17, 2023 2:58 am
by JoseAlvarez
FranciscoA wrote:Probablemente algo ha cambiado en XBROWSER en versiones posteriores a la que uso.
El ejemplo que puse lo tengo funcionando perfectamente con la 1709.
Saludos.


Francisco,

Estoy seguro que es así.

Esto sucede a menudo entre las diferentes versiones.

Muy agradecido con tu ayuda de siempre.

Un abrazo.

Re: Desactivar Botones en xBrowse

PostPosted: Thu Aug 17, 2023 12:21 pm
by cmsoft
Si lo que quieres es que exporte al excel y despues salga una vez que exportó puedes hacer
Code: Select all  Expand view
SETUP ( oBrw:cHeaders := aTitCols,;               
               oBrw:oWnd:bInit := { |oDlg| oCtrl := oDlg:aControls[1] ,;
                                                   oCtrl:aControls[5]:Hide() ,;
                                                   oCtrl:aControls[5]:lGroup:=.F. ,;
                                                   oCtrl:aControls[6]:Hide() ,;
                                                   oCtrl:aControls[7]:Hide() ,;
                                                   oCtrl:aControls[8]:Hide() ,;
                                                   oCtrl:aControls[8]:lGroup:=.F. ,;
                                                   oCtrl:aControls[9]:bAction := {|o| o:oWnd:oWnd:aControls[2]:ToExcel(),;
                                                                                  o:oWnd:oWnd:End() } } )

Re: Desactivar Botones en xBrowse

PostPosted: Thu Aug 17, 2023 3:29 pm
by JoseAlvarez
cmsoft wrote:Si lo que quieres es que exporte al excel y despues salga una vez que exportó puedes hacer
Code: Select all  Expand view
SETUP ( oBrw:cHeaders := aTitCols,;               
               oBrw:oWnd:bInit := { |oDlg| oCtrl := oDlg:aControls[1] ,;
                                                   oCtrl:aControls[5]:Hide() ,;
                                                   oCtrl:aControls[5]:lGroup:=.F. ,;
                                                   oCtrl:aControls[6]:Hide() ,;
                                                   oCtrl:aControls[7]:Hide() ,;
                                                   oCtrl:aControls[8]:Hide() ,;
                                                   oCtrl:aControls[8]:lGroup:=.F. ,;
                                                   oCtrl:aControls[9]:bAction := {|o| o:oWnd:oWnd:aControls[2]:ToExcel(),;
                                                                                  o:oWnd:oWnd:End() } } )


César, saludos amigo

Funcionó de 10. gracias ¡¡

Con la ayuda de francisco, cgallegoa y de tu persona, ya tengo el módulo de exportación tal como quería.

Muchisímas gracias a los tres, y a este maravilloso foro.

Salud a todos !!

Re: Desactivar Botones en xBrowse

PostPosted: Thu Aug 17, 2023 4:27 pm
by EASYSOFT
Buenas tardes.

Disculpen la insistencia, se puede dar a este xbrowser las dimensiones que uno quiera.


Gracias

Re: Desactivar Botones en xBrowse

PostPosted: Thu Aug 17, 2023 5:34 pm
by Cgallegoa
Así puedes definir las dimensiones inciales:
Code: Select all  Expand view
     SETUP ( oBrw:cHeaders := aTitCols,;
              olajoda := { |oBrw| xBrowse(oDlg,"bPainted bla bla") } ,;
                            oBrw:oWnd:bInit := { |oDlg| oCtrl := oDlg:aControls[1] ,;
                                          oCtrl:aControls[5]:Hide() ,;
                                          oCtrl:aControls[5]:lGroup:=.F. ,;
                                          oCtrl:aControls[6]:Hide() ,;
                                          oCtrl:aControls[7]:Hide() ,;
                                          oCtrl:aControls[8]:Hide() ,;
                                          oCtrl:aControls[8]:lGroup:=.F. ,;
                                          oCtrl:aControls[9]:bAction := {|o| o:oWnd:oWnd:aControls[2]:ToExcel(),;
                                                                             o:oWnd:oWnd:End() },;
                                          oDlg:SetSize(1300,700) } )
 

Saludos,
Carlos Gallego

Re: Desactivar Botones en xBrowse

PostPosted: Thu Aug 17, 2023 5:43 pm
by EASYSOFT
Muchas gracias.

Funciona perfecto