FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour PROBLEMAS CON XBROWSE ES URGENTE
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
PROBLEMAS CON XBROWSE ES URGENTE
Posted: Tue Aug 13, 2019 02:13 PM
Amigos Buen dia.

Estoy usando Xbrowse y me esta presentando un problema, cada ves que busco por la Columna APE_PAC, digito letras, la ubica en el Browser, pero al dar Click en el registro, este cambia de posicion, ademas no actualiza el contenido mostrado, a medida que me desplazo por las filas hacia arriba o abajo, estas recien comienzan a cambiar su contenido o reescribir cada fila.

Desde ya muchas gracias.

Saludos
Antonio.

Dejo El Codigo:
Code (fw): Select all Collapse
Function Buscar_Pac()

聽 聽local oDlg, oBrw, oFont, oCol,otitu,oFont1,otitu1 ,oFont7

聽 聽 聽Abre_dbf("maepacie",1,.f.,"")
聽 聽 聽set inde to maepacie
聽 聽 聽set order to 2
聽 聽 聽go top

聽 聽DEFINE FONT oFont NAME "TAHOMA" SIZE 0,-14
聽 聽 聽DEFINE FONT oFont1 NAME 'TAHOMA' SIZE 0,24 聽 BOLD
聽 聽 聽DEFINE FONT oFont7 NAME "TAHOMA" SIZE 0,-14 聽BOLD

聽 聽DEFINE DIALOG oDlg SIZE 680,530 PIXEL FONT oFont
聽 聽 聽@ 00,50 SAY otitu PROMPT " MAESTRO DE PACIENTES " 聽PIXEL OF oDlg COLORS RGB(12, 135, 27) 聽 FONT oFont1

聽 聽@ 20,10 XBROWSE oBrw SIZE -10,-30 PIXEL OF oDlg DATASOURCE "MAEPACIE" ;
聽 聽 聽聽 聽聽 聽 HEADERS 'Apellidos', 'Nombres', 'R.u.t';
聽 聽 聽 COLUMNS "APE_PAC",OemToAnsi("NOM_PAC"),"RUT_PAC";
聽 聽 聽 CELL LINES AUTOSORT NOBORDER


聽 聽WITH OBJECT oBrw
聽 聽 聽 聽 聽聽 聽:lHScroll := .f.
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 :lIncrFilter 聽 聽 聽:= .f.
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 :lSeekWild 聽 聽 聽 聽:= .f. 聽 聽
聽 聽 聽 聽 聽 聽 //:bLClickHeader := { || oBrw:Seek(""), oBrw:cFilterFld := "newfld" }
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽//:cFilterFld 聽 聽 聽 := "APE_PAC"
聽 聽 聽 聽 聽 聽 :lFooter := .t.
聽 聽 聽 聽 聽 聽 :SetStyle( 2018)


聽 聽 聽 聽 聽 聽 oCol := oBrw:aCols[ 1 ]
聽 聽 聽 聽 聽 聽 oCol:cSortOrder := 'maep2'
聽 聽 聽 聽 聽 聽 ocol:cToolTip:="Clique para ordenar por APELLIDOS"

聽 聽 聽 聽 聽 聽 oCol := oBrw:aCols[ 3 ]
聽 聽 聽 聽 聽 聽 oCol:cSortOrder := 'maep1'
聽 聽 聽 聽 聽 聽 ocol:cToolTip:="Clique para ordenar por RUT"

聽 聽 聽 聽 聽 聽 oBrw:bKeyDown:={|nKey| iif(nKey=32.or.nKey=VK_RETURN,Actu_Ficha(),oBrw:Refresh())}
聽 聽 聽 聽 聽 聽 oBrw:bLDblClick:={||Actu_Ficha(),oBrw:Refresh()}



聽 聽 聽 聽 聽 :CreateFromCode()
聽 聽END
聽 聽@ 10,10 SAY otitu1 PROMPT "Buscar : " 聽PIXEL OF oDlg COLORS RGB(12, 135, 27) 聽 FONT oFont
聽 聽@ 10,40 SAY oBrw:oSeek 聽VAR oBrw:cSeek SIZE 100,10 PIXEL OF oDlg COLOR CLR_HRED,CLR_YELLOW
聽 聽 聽@ 235,250 BTNBMP SIZE 30,30 PROMPT "SALIR" OF oDlg PIXEL 2007 聽FONT oFont7 ;
聽 聽聽聽 聽 filename"c:\Desa\FichasWin\Iconos\door_in.png" ToolTip 聽"SALIR DEL SISTEMA";
聽 聽ACTION oDlg:End()



聽 聽 聽@ 235,10 BTNBMP 聽SIZE 30,30 PROMPT "NUEVO" OF oDlg 2007 聽FONT oFont7 ;
聽 聽聽聽 聽 filename"c:\Desa\FichasWin\Iconos\add.png" ToolTip "NUEVO PACIENTE" ;
聽 聽ACTION ( Actu_Ficha() )

聽 聽 聽@ 235,60 BTNBMP 聽SIZE 30,30 PROMPT "VER" OF oDlg 2007 FONT oFont7 ;
聽 聽聽聽 聽 filename"c:\Desa\FichasWin\Iconos\report_user.png" ToolTip "MUESTRA PACIENTE" ;
聽 聽ACTION ( Muestra_Pac() )

聽 聽 聽@ 235,110 BTNBMP 聽SIZE 30,30 PROMPT "SELEC" OF oDlg 2007 FONT oFont7 ;
聽 聽聽聽 聽 filename"c:\Desa\FichasWin\Iconos\group_add.png" 聽ToolTip "OBTENER PACIENTE" ;
聽 聽ACTION ( Actu_Ficha() )

聽 聽ACTIVATE DIALOG oDlg CENTERED
聽 聽RELEASE FONT oFont

return nil
FWH 22.10 - HARBOUR - PELLES C
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Re: PROBLEMAS CON XBROWSE ES URGENTE
Posted: Tue Aug 13, 2019 04:18 PM

Amigos

Alguna sugerencia ????.

Saludos

FWH 22.10 - HARBOUR - PELLES C
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM
Re: PROBLEMAS CON XBROWSE ES URGENTE
Posted: Tue Aug 13, 2019 04:34 PM

creo que le falta un refresh al buscar

prueba con oBrw:bChange := {|| oBrw:Refresh() }

Saludos.

SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Re: PROBLEMAS CON XBROWSE ES URGENTE
Posted: Tue Aug 13, 2019 04:55 PM

Hola Armando

Muchas gracias por responder.

Lamentablemente tu sugerencia no me resulto, es mas, cuando subo o bajo en el Browse con las flechas, el Focus se que queda pegado desplazando todo el bloque de registros.

Saludos.
Antonio

FWH 22.10 - HARBOUR - PELLES C
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM
Re: PROBLEMAS CON XBROWSE ES URGENTE
Posted: Tue Aug 13, 2019 05:06 PM
se lo que pasa, pero yo nunca trabajo con WITH OBJECT, defino mis columnas en forma separada, y se me acabaron esos problemas que solia obtener cuando lo utilizaba. ( mi versi贸n de fw es muy antigua ).

te transfiero un ejemplo funcional que utilizo sin problemas

Code (fw): Select all Collapse
   //-- asi genero los indices temporales que necesito para las columnas 1  4  y 11 que los reaqlizo en una funci贸n de llenado de datos previa
   select pa40
   INDEX ON PA40->NUME  TAG 1 TO (oApp:cTemp+"\PASO040.CDX") DESCEND
   INDEX ON PA40->FECH  TAG 2 TO (oApp:cTemp+"\PASO040.CDX")
   INDEX ON PA40->ORDE  TAG 3 TO (oApp:cTemp+"\PASO040.CDX")
                    SET INDEX TO (oApp:cTemp+"\PASO040.CDX")
   SELECT PA40                      ;  DBGOTOP()

...
...
...

//-- al clickear la columna 1 , 4 o 11 el indice se activa y puedo digitar lo que quiero y se mueve el puntero a medida que digito, sin tener el efecto que mencionas 


                   REDEFINE XBROWSE oBrw ID 20 COLUMNS "NUME","LINE","TIPO","FINI","NOMB","TURN","KILO","KENV","KMER","PMER","ORDE","MATE" ALIAS "PA40" OF oDlg FONT xFont NOBORDER AUTOSORT FOOTERS

                             oBrw:aCols[ 1]:cHeader     := "N掳 Proc."          ;  oBrw:aCols[ 1]:nWidth :=  57  ;   oBrw:aCols[ 1]:nDataStrAlign  := AL_CENTER  
                             oBrw:aCols[ 2]:cHeader     := "Linea"             ;  oBrw:aCols[ 2]:nWidth :=  38  ;   oBrw:aCols[ 2]:nDataStrAlign  := AL_CENTER
                                                                                                                    oBrw:aCols[ 2]:nFootStrAlign  := AL_RIGHT
                                                                                                                    oBrw:aCols[ 2]:nFooterType    := AGGR_COUNT
                             oBrw:aCols[ 3]:cHeader     := "Tipo"              ;  oBrw:aCols[ 3]:nWidth :=  33  ;   oBrw:aCols[ 3]:nDataStrAlign  := AL_CENTER
                             oBrw:aCols[ 4]:cHeader     := "Fecha"             ;  oBrw:aCols[ 4]:nWidth :=  68  ;   oBrw:aCols[ 4]:nDataStrAlign  := AL_CENTER
                             oBrw:aCols[ 5]:cHeader     := "Nombre Proceso"    ;  oBrw:aCols[ 5]:nWidth := 240
                             oBrw:aCols[ 6]:cHeader     := "Tur"               ;  oBrw:aCols[ 6]:nWidth :=  30  ;   oBrw:aCols[ 6]:nDataStrAlign  := AL_CENTER
                             oBrw:aCols[ 7]:cHeader     := "Vaciado"           ;  oBrw:aCols[ 7]:nWidth :=  85  ;   oBrw:aCols[ 7]:nFooterType    := AGGR_TOTAL
                             oBrw:aCols[ 8]:cHeader     := "Envasado"          ;  oBrw:aCols[ 8]:nWidth :=  85  ;   oBrw:aCols[ 8]:nFooterType    := AGGR_TOTAL
                             oBrw:aCols[ 9]:cHeader     := "Merma"             ;  oBrw:aCols[ 9]:nWidth :=  70  ;   oBrw:aCols[ 9]:nFooterType    := AGGR_TOTAL
                             oBrw:aCols[10]:cHeader     := "% Merma"           ;  oBrw:aCols[10]:nWidth :=  50  ;   oBrw:aCols[10]:nFooterType    := AGGR_AVERAGE
                             oBrw:aCols[11]:cHeader     := "N掳 Orden"          ;  oBrw:aCols[11]:nWidth :=  70  ;   oBrw:aCols[11]:nDataStrAlign  := AL_CENTER
                             oBrw:aCols[12]:cHeader     := "Material"          ;  oBrw:aCols[12]:nWidth :=  50

                             oBrw:nHeaderLines          :=  2 
                             oBrw:SetGroupHeader( "Datos del Proceso", 1, 7, xFont )
                             oBrw:SetGroupHeader( "Resultado Proceso", 8,12, xFont )
                             oBrw:Material:SetCheck()
                             
                             oBrw:aCols[ 1]:cSortOrder := "1"
                             oBrw:aCols[ 4]:cSortOrder := "2"
                             oBrw:aCols[11]:cSortOrder := "3"
SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Re: PROBLEMAS CON XBROWSE ES URGENTE
Posted: Wed Aug 14, 2019 02:37 PM
Hola Armando

Muchas gracias por tu ayuda, Mira desde ayer he estado tratando de dar con el problema que se me crear al usar tu sugerencia, pero al digitar lo que busco, solo permite 1 solo caracter, Ej. Si deseo buscar "ARMAN", en la linea de busqueda, solo me muestra la primera letra que digite "A", luego de tratar de moverme en el browse, difinitivamente deja de funcionar la digitacion de la busqueda, no muestra ningun caracter.

Pense que buscar en la medida que digita era menos complicado, pero a mi me esta volviendo loco y necesito habilidarlo pronto.

Muchos Saludos.
Antonio

Dejo el Codigo modificado que No funciona:
Code (fw): Select all Collapse
....
     Abre_dbf("maepacie",1,.f.,"")
     If !file("maepacie.CDX")
        inde on rut_pac               tag maep1 to maepacie
        inde on ape_pac+nom_pac tag maep2 to maepacie
        inde on nro_fic                 tag maep3 to maepacie
         Endif
     set inde to maepacie
     DbSetorder(2)

.....


聽 聽DEFINE DIALOG oDlg SIZE 680,530 PIXEL FONT oFont
聽 聽@ 20,10 XBROWSE oBrw SIZE -10,-30 PIXEL OF oDlg DATASOURCE "MAEPACIE" ;
聽 聽 聽聽 聽聽 聽 HEADERS 'Apellidos', 'Nombres', 'R.u.t';
聽 聽 聽 COLUMNS "APE_PAC",OemToAnsi("NOM_PAC"),"RUT_PAC";
聽 聽 聽 CELL LINES;
聽 聽 聽 聽 聽 聽 NOBORDER AUTOSORT FOOTERS;
聽 聽聽聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽oBrw:nMarqueeStyle := MARQSTYLE_HIGHLWIN7
聽 聽聽聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽oBrw:nColDividerStyle := LINESTYLE_INSET
聽 聽聽聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽oBrw:nRowDividerStyle := LINESTYLE_INSET
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽oBrw:bClrHeader := {|| { nRGB(140, 0, 0), nRGB( 231, 242, 255 ), } }
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽oBrw:nOpacity 聽 聽:= 230

聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽oBrw:bClrStd 聽 聽 聽 聽 聽 聽 := {|| { nRGB( 聽0, 聽0, 聽0), nRGB(255,248,220) } }
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽oBrw:bClrSelFocus 聽 聽 聽 聽:= {|| { nRGB( 聽0, 聽0, 聽0), nRGB(137, 247, 33) } }
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw:lFooter := .t.
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw:SetStyle( 2018)

聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw:aCols[ 1]:cSortOrder := "Maep2"
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw:aCols[ 1]:cToolTip:="Clique para ordenar por APELLIDOS"

聽 聽 聽 聽 聽 聽 聽 聽 oBrw:aCols[ 3]:cSortOrder := "maep1"
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw:aCols[ 3]:cToolTip:="Clique para ordenar por RUT"

聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw:CreateFromCode()



聽 聽@ 10,10 SAY otitu1 PROMPT "Buscar : " 聽PIXEL OF oDlg COLORS RGB(12, 135, 27) 聽 FONT oFont

聽 聽@ 10,40 SAY oBrw:oSeek 聽VAR oBrw:cSeek SIZE 100,10 PIXEL OF oDlg PICTURE "@!" 聽COLOR CLR_HRED,CLR_YELLOW

聽 聽 聽@ 235,250 BTNBMP SIZE 30,30 PROMPT "SALIR" OF oDlg PIXEL 2007 聽FONT oFont7 ;
聽 聽聽聽 聽 filename"c:\Desa\FichasWin\Iconos\door_in.png" ToolTip 聽"SALIR DEL SISTEMA";
聽 聽ACTION oDlg:End()


聽 聽ACTIVATE DIALOG oDlg CENTERED
FWH 22.10 - HARBOUR - PELLES C
Posts: 346
Joined: Mon Oct 05, 2009 03:35 PM
Re: PROBLEMAS CON XBROWSE ES URGENTE
Posted: Wed Aug 14, 2019 04:19 PM
revise tu codigo y veo que utilizas oBrw:oSeek y oBrw:cSeek para mostrar lo que escribes, busque en mi c贸digo y encontre en donde tambien lo utilizo y lo unico nuevo que tengo es esto:

Code (fw): Select all Collapse
oBrw:bChange := {|| oBrw[1]:oSeek:Refresh()}


codigo "de ejemplo" que utilizo y me funciona bien al clickear la columna en la que deseo buscar... (fijate en la imagen, lo marque en rojo)

Code (fw): Select all Collapse
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽REDEFINE XBROWSE oBrw[1] ID 20 COLUMNS "GRUP","RUTT","NOMB" ALIAS "P135" FONT xFont OF oPag[2]:aDialogs[1] FOOTERS AUTOSORT

聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[1]:cHeader 聽 聽 := "Grupo" 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[1]:nWidth 聽 聽 聽 聽 := 50 聽 聽
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[1]:nDataStrAlign 聽:= AL_CENTER 聽
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[1]:cSortOrder := "1"
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[2]:cHeader 聽 聽 := "R.u.t." 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[2]:nWidth 聽 聽 聽 聽 := 80
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[2]:nDataStrAlign 聽:= AL_CENTER 聽
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[2]:cSortOrder := "2"
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[3]:cHeader 聽 聽 := "Raz贸n Social"
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[3]:nWidth 聽 聽 聽 聽 := 280
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[3]:cSortOrder := "3"
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[3]:nFootStrAlign 聽:= AL_RIGHT
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:aCols[3]:bFooter 聽 聽 聽 聽:= { || "Registro [ "+LTRIM(STR(oBrw[1]:KeyNo()))+"/"+LTRIM(STR(oBrw[1]:KeyCount()))+" ] 聽" }

聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:SetGroupHeader( "Agentes Facturadores", 1,3, xFont )
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:bChange 聽 聽 聽 聽 聽 聽 聽:= {|| oBrw[1]:oSeek:Refresh() }
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 oBrw[1]:nHeaderLines 聽 聽 聽 聽 := 聽2 
聽 聽 聽 聽 聽 聽 聽 聽 聽
聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 聽 REDEFINE 聽SAY oBrw[1]:oSeek ID -11 PROMPT oBrw[1]:cSeek 聽PICTURE "@!" OF oPag[2]:aDialogs[1] FONT xFont COLOR FRE_VERSION





saludos
SkyPe: armando.lagunas@hotmail.com

Mail: armando.lagunas@gmail.com
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Re: PROBLEMAS CON XBROWSE ES URGENTE
Posted: Thu Aug 15, 2019 12:52 AM

Hola Armando

Realmente te pasaste, funciono perfecto, eternamente agradecido por lo que siempre me has ayudado.

Muchos Saludos.

Antonio.

FWH 22.10 - HARBOUR - PELLES C

Continue the discussion