Page 1 of 1

no logro sacar este error

Posted: Sun Sep 21, 2008 10:50 pm
by goosfancito
estoy haciendo un browse ( intentando ) con xbrowse y me tira este error runtime.

Error description: Error BASE/1132 Bound error: array access
Args:
[ 1] = A { ... }
[ 2] = N 0

Verifico que la "consulta" que realizo me esta devolviendo datos. alguien podría tirarme una idea?

Gracias.

Posted: Mon Sep 22, 2008 2:17 am
by joseluisysturiz
Creo ese error es algo sobbre tamaño del arreglo, pon algo de codigo para poder darte mejor ayuda...saludos... :shock:

Posted: Mon Sep 22, 2008 2:40 am
by goosfancito

Code: Select all

   ::oQuery:=TMSQuery():new(::oConexion, "SELECT * FROM USUARIOS" )
   ::oQuery:Open()

   DEFINE DIALOG ::oDlg resource "DLGUSUARIOS"

      REDEFINE image oImagen File "..\Resource\barraus.png" ID 504 OF ::oDlg

      REDEFINE SAY oDatos[1] ID 500 OF ::oDlg
      REDEFINE SAY oDatos[2] ID 501 OF ::oDlg
      REDEFINE SAY oDatos[3] ID 502 OF ::oDlg
      REDEFINE SAY oDatos[4] ID 503 OF ::oDlg

      REDEFINE GET vDatos[1] ID 200 OF ::oDlg
      REDEFINE GET vDatos[2] ID 201 OF ::oDlg
      REDEFINE GET vDatos[3] ID 202 OF ::oDlg

      REDEFINE BUTTON oBtns[1] ID 204 OF ::oDlg
      REDEFINE BUTTON oBtns[2] ID 205 OF ::oDlg

      WITH OBJECT ::oBrw:= TGXBROWSE():new(::oDlg)
         :nMarqueeStyle   := MARQSTYLE_HIGHLROW

         :nColDividerStyle:= LINESTYLE_BLACK
         :nRowDividerStyle:= LINESTYLE_LIGHTGRAY
         :nRowHeight:= 40
         :lRecordSelector := .T.

         :setquery(::oQuery)

         :CreateFromResource(203)

         END WITH

      //----------( acciones )----------

      oBtns[1]:baction:={|| MsgStop("aaa")}
      oBtns[2]:baction:={|| ::oDlg:END()}

   ACTIVATE DIALOG ::oDlg CENTERED

   ::oQuery:free()
y el setquery es

Code: Select all

METHOD SetQuery(oQuery, lAddCols, lAutoOrder, aFldNames)
   LOCAL nFields, nItem, oCol

   ::oQuery:= oQuery

   //----------( Armo los movimientos )----------

   DEFAULT ::bGotop TO {|| IF(::oQuery:RecCount() > 0, ::oQuery:GoTop(),NIL)}
   DEFAULT ::bGoBottom TO { || IF(::oQuery:RecCount() >0, ::oQuery:GoBottom(), NIL)}
   DEFAULT ::bSkip TO {|n| ::oQuery:skip(n)}
   DEFAULT ::bBof TO {|| ::oQuery:bBof()}
   DEFAULT ::bEof TO {|| ::oquery:bEoF()}
   DEFAULT ::bBookMark TO {|n| IF(n==NIL,;
                           IF(::oQuery:RecCount()>0, ::oQuery:RecNo(),0),;
                           IF(::oQuery:RecCount()>0, ::oQuery:goto(n),0))}
   DEFAULT ::bKeyNo TO {|n| IF(n==NIL,;
                           IF(::oQuery:RecCount()>0, ::oQuery:RecNo(),0),;
                           IF(::oQuery:RecCount()>0, ::oQuery:goto(n),0))}
   DEFAULT ::bKeyCount TO {|| ::oQuery:RecCount()}

   //----------( Creo las columnas )----------



   RETURN (Self)
joseluisysturiz wrote:Creo ese error es algo sobbre tamaño del arreglo, pon algo de codigo para poder darte mejor ayuda...saludos... :shock:

Posted: Mon Sep 22, 2008 11:42 pm
by alex_cyr
yo tenia el mismo error pero con el WBROWSE y lo resolvi poniendo la pripoedad cAlias a nil.


obrow:cAlias := ""

espero te pueda servir.

slds
alex.

Posted: Tue Sep 23, 2008 1:06 am
by Antonio Linares
Gustavo,

>
Error description: Error BASE/1132 Bound error: array access
Args:
[ 1] = A { ... }
[ 2] = N 0
>

Por favor especifica la lista de llamadas desde donde se produce el error (calls stack) para que veamos en que método se genera el error, gracias

Posted: Tue Sep 23, 2008 12:20 pm
by goosfancito
Aca va,

Code: Select all

Stack Calls
===========
   Called from: XBROWSE.PRG => (b)TXBROWSE:TXBROWSE(0)
   Called from:  => TGXBROWSE:COLATPOS(0)
   Called from: XBROWSE.PRG => TGXBROWSE:PAINT(0)
   Called from: XBROWSE.PRG => TGXBROWSE:DISPLAY(0)
   Called from: CONTROL.PRG => TGXBROWSE:HANDLEEVENT(0)
   Called from: WINDOW.PRG => _FWH(0)
   Called from:  => DIALOGBOX(0)
   Called from: DIALOG.PRG => TDIALOG:ACTIVATE(0)
   Called from: tUsuarios.prg => TUSUARIOS:NEW(87)
   Called from: menu.prg => MAIN(22)
Antonio Linares wrote:Gustavo,

>
Error description: Error BASE/1132 Bound error: array access
Args:
[ 1] = A { ... }
[ 2] = N 0
>

Por favor especifica la lista de llamadas desde donde se produce el error (calls stack) para que veamos en que método se genera el error, gracias