Page 1 of 1

Error en xBrowse

Posted: Thu Jan 17, 2013 4:40 pm
by Pedro
Buenas tardes a todos

Estoy teniendo un error en este proyecto que me parece muy raro en cuanto en un xBrowse. En una celda con lista EditList una vez desplegada y escogido el item
de la lista, da un error cuando la cierro con el ratón me sucede el error, si la cierro con un enter no da el error.
El error es el siguiente :

Error description: Error BASE/1004 Class: 'NIL' has no exported method: NLASTKEY
Args:
[ 1] = U

Stack Calls
===========
Called from: => NLASTKEY( 0 )
Called from: D:\PROYEC~4\BRINQU~1\Source\xbrow.prg => TXBRWCOLUMN:POSTEDIT( 10657 )
Called from: D:\PROYEC~4\BRINQU~1\Source\xbrow.prg => (b)TXBRWCOLUMN:SHOWBTNLIST( 10566 )
Called from: .\source\classes\WINDOW.PRG => TWINDOW:LOSTFOCUS( 2876 )
Called from: .\source\classes\CONTROL.PRG => (b)TCONTROL:TCONTROL( 178 )
Called from: => TCONTROL:LOSTFOCUS( 0 )
Called from: .\source\classes\LISTBOX.PRG => TLISTBOX:LOSTFOCUS( 297 )
Called from: .\source\classes\CONTROL.PRG => TLISTBOX:KILLFOCUS( 1055 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1663 )
Called from: .\source\classes\LISTBOX.PRG => TLISTBOX:HANDLEEVENT( 570 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => DIALOGBOX( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 270 )
Called from: D:\PROYEC~4\BRINQU~1\Source\gesh0320.prg => EDITAINFORME( 214 )
Called from: D:\PROYEC~4\BRINQU~1\Source\gesh0305.prg => (b)HISTORIAL( 158 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK( 465 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP( 656 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1690 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT( 1408 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => DIALOGBOX( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 270 )
Called from: D:\PROYEC~4\BRINQU~1\Source\gesh0305.prg => HISTORIAL( 191 )
Called from: D:\PROYEC~4\BRINQU~1\Source\gesh0300.prg => (b)INFORMES( 43 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK( 465 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP( 656 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1690 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT( 1408 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => DIALOGBOX( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 270 )
Called from: D:\PROYEC~4\BRINQU~1\Source\gesh0300.prg => INFORMES( 51 )
Called from: D:\PROYEC~4\BRINQU~1\Source\geshinic.prg => (b)MAIN( 106 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK( 465 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP( 656 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1690 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT( 1408 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => WINRUN( 0 )
Called from: .\source\classes\WINDOW.PRG => TMDIFRAME:ACTIVATE( 980 )
Called from: D:\PROYEC~4\BRINQU~1\Source\geshinic.prg => MAIN( 125 )

Lo curioso es que utilizo un xBrowse de la versión FWH 1204 y ta sólo me da ese error y en esa circunstancia, pero si quito el fuente del xBrowse
y compilo con el que viene en la versión FWH 1206 que es la que utilizo me peta otro error aún más raro.
En el primer browse que uso me da el siguiente error :

Error description: Error BASE/1004 Class: 'LOGICAL' has no exported method: EVAL
Args:
[ 1] = L .F.

Stack Calls
===========
Called from: => EVAL( 0 )
Called from: .\source\classes\XBROWSE.PRG => TXBRWCOLUMN:PAINTCELL( 9622 )
Called from: .\source\classes\XBROWSE.PRG => TXBRWCOLUMN:PAINTDATA( 9574 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:PAINT( 1434 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:DISPLAY( 1253 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1666 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:HANDLEEVENT( 11649 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => DIALOGBOXINDIRECT( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 270 )
Called from: .\source\function\ERRSYSW.PRG => ERRORDIALOG( 426 )
Called from: .\source\function\ERRSYSW.PRG => (b)ERRORSYS( 31 )
Called from: => EVAL( 0 )
Called from: .\source\classes\XBROWSE.PRG => TXBRWCOLUMN:PAINTCELL( 9622 )
Called from: .\source\classes\XBROWSE.PRG => TXBRWCOLUMN:PAINTDATA( 9574 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:PAINT( 1434 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:DISPLAY( 1253 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1666 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:HANDLEEVENT( 11649 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => DIALOGBOXINDIRECT( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 270 )
Called from: .\source\function\ERRSYSW.PRG => ERRORDIALOG( 426 )
Called from: .\source\function\ERRSYSW.PRG => (b)ERRORSYS( 31 )
Called from: => EVAL( 0 )
Called from: .\source\classes\XBROWSE.PRG => TXBRWCOLUMN:PAINTCELL( 9622 )
Called from: .\source\classes\XBROWSE.PRG => TXBRWCOLUMN:PAINTDATA( 9574 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:PAINT( 1434 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:DISPLAY( 1253 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1666 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:HANDLEEVENT( 11649 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => SYSREFRESH( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:END( 511 )
Called from: .\source\function\ERRSYSW.PRG => (b)ERRORDIALOG( 407 )
Called from: .\source\classes\BUTTON.PRG => TBUTTON:CLICK( 157 )
Called from: .\source\classes\CONTROL.PRG => TBUTTON:HANDLEEVENT( 1654 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => SENDMESSAGE( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:COMMAND( 379 )
Called from: => TWINDOW:HANDLEEVENT( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:HANDLEEVENT( 886 )
Called from: => DIALOGBOXINDIRECT( 0 )
Called from: .\source\classes\DIALOG.PRG => TDIALOG:ACTIVATE( 270 )
Called from: .\source\function\ERRSYSW.PRG => ERRORDIALOG( 426 )
Called from: .\source\function\ERRSYSW.PRG => (b)ERRORSYS( 31 )
Called from: => EVAL( 0 )
Called from: .\source\classes\XBROWSE.PRG => TXBRWCOLUMN:PAINTCELL( 9622 )
Called from: .\source\classes\XBROWSE.PRG => TXBRWCOLUMN:PAINTDATA( 9574 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:PAINT( 1434 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:DISPLAY( 1253 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1666 )
Called from: .\source\classes\XBROWSE.PRG => TXBROWSE:HANDLEEVENT( 11649 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => UPDATEWINDOW( 0 )
Called from: .\source\classes\WINDOW.PRG => TWINDOW:ACTIVATE( 964 )
Called from: .\source\classes\MDICHILD.PRG => TMDICHILD:ACTIVATE( 248 )
Called from: D:\PROYEC~4\BRINQU~1\Source\gesh0200.prg => DIARIO( 167 )
Called from: D:\PROYEC~4\BRINQU~1\Source\geshinic.prg => (b)MAIN( 82 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:CLICK( 465 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:LBUTTONUP( 656 )
Called from: .\source\classes\CONTROL.PRG => TCONTROL:HANDLEEVENT( 1690 )
Called from: .\source\classes\BTNBMP.PRG => TBTNBMP:HANDLEEVENT( 1408 )
Called from: .\source\classes\WINDOW.PRG => _FWH( 3154 )
Called from: => WINRUN( 0 )
Called from: .\source\classes\WINDOW.PRG => TMDIFRAME:ACTIVATE( 980 )
Called from: D:\PROYEC~4\BRINQU~1\Source\geshinic.prg => MAIN( 125 )


Deciros que éste último error no se produce compilando el fuente de la clase xBrowse de la versión 1204

Alguien me puede echar una manita en esto??

Re: Error en xBrowse

Posted: Thu Jan 17, 2013 5:42 pm
by karinha
Mira se ayuda está en português mas usted puede usar el google translate.

http://fivewin.com.br/forum/topic.asp?T ... 0&ARCHIVE=

Salidos.

Re: Error en xBrowse

Posted: Thu Jan 17, 2013 6:45 pm
by Pedro
Gracias karinha funcionó cambiando de Edit_list a Edit_Get_List

Lo que no entiendo es por qué quitando el fuente de la clase xBrowse de la versión 1204 me da el otro error, sin hacer absolutamente nada en la creación del xBrowse.
Con un fuente funciona y con el otro más reciente no funciona, eso si que no lo entiendo.

Gracias, de momento seguiré usando el fuente de la versión 1204

Re: Error en xBrowse

Posted: Sat Jan 19, 2013 12:04 pm
by Antonio Linares
Pedro,

Puedes mostrar el código que estas usando para crear el xbrowse ? gracias

Re: Error en xBrowse

Posted: Sat Jan 19, 2013 12:43 pm
by Pedro
Antonio Linares wrote:Pedro,

Puedes mostrar el código que estas usando para crear el xbrowse ? gracias
Hola Antonio, este es el código que uso :

Code: Select all

 aCampos := {oDbDiario:Fields( 0):NAME,oDbDiario:Fields( 1):NAME,;
                   oDbDiario:Fields( 2):NAME,oDbDiario:Fields( 3):NAME,;
                   oDbDiario:Fields( 4):NAME,oDbDiario:Fields( 5):NAME,;
                   oDbDiario:Fields( 6):NAME,oDbDiario:Fields( 7):NAME,;
                   oDbDiario:Fields( 8):NAME,oDbDiario:Fields( 9):NAME,;
                   oDbDiario:Fields(10):NAME,oDbDiario:Fields(11):NAME,;
                   oDbDiario:Fields(12):NAME,oDbDiario:Fields(13):NAME,;
                   oDbDiario:Fields(14):NAME,oDbDiario:Fields(15):NAME,;                                                         
                   oDbDiario:Fields(16):NAME,oDbDiario:Fields(17):NAME,;
                   oDbDiario:Fields(18):NAME }
                   
       oLbx := TXBrowse():New( oWChild ) 
       oLbx:SetAdo( oDbDiario, .T.,.T.,aCampos)
    
       WITH OBJECT oLbx
            :lColDividerComplete := .t. 
            :nMarqueeStyle       := 3
            :nColDividerStyle    := 1
            :nHeaderLines        := 2
            :lFooter             := .t.
            :nStretchCol         := 1
            :bClrSelFocus  := { || { CLR_BLACK, aSelGrad } }
            :bClrRowFocus  := { || { CLR_BLACK, aRowGrad } }  
            :bClrStd       := {|| IIF(oDbDiario:AbsolutePosition % 2 == 0,{ CLR_BLACK, RGB( 224, 236, 255 ) }, { CLR_BLACK, RGB( 189, 211, 253 ) } )} 
            :CreateFromCode()  
            :Adjust() 
            :l2007 := .T.
       END
    
       for nFor := 1 to len( oLbx:aCols ) 
           oCol := oLbx:aCols[ nFor ] 
           oCol:nEditType := 0 
           oCol:blDClickData := {|| CtrDiario(ID_MOD),oLbx:Gotop(),oLbx:Refresh() }
           If nFor == 3 .or. nFor == 14
              oLbx:aCols[nFor]:cEditPicture := "@D"
           EndIf    
       EndFor
       oLbx:aCols[11]:SetCheck ({"CHECKON","CHECKOFF"} )
       oLbx:aCols[15]:SetCheck ({"CHECKON","CHECKOFF"} )    
       oLbx:aCols[17]:SetCheck ({"CHECKON","CHECKOFF"} )                    
    
       oWChild:oClient := oLbx
Por cierto, hablando de esto, tengo otro xBrowse en el cual le doy el ancho de una columna, (oCol[ 1]:nWidth := 50) y no me hace ni puñetero caso, la ajusta como le da la gana, sobretodo si el campo es fecha, aunque en la tabla se la haya dicho que es fecha corta y la picture sea la correcta, y si como en este Browse le digo que los ajuste, (oLbx:Adjust() ) entonces no veas la que lía con la longitud de _.

Re: Error en xBrowse

Posted: Sun Jan 27, 2013 10:32 am
by Pedro
Antonio, hay alguna respuesta para este error

Re: Error en xBrowse

Posted: Tue Sep 01, 2015 8:33 pm
by elmoiquique
Pedro wrote:Antonio, hay alguna respuesta para este error
Cual fue la solucion a este problema que estoy teniendo en estos momentos