Hola,
Os dejo un proyecto donde creo un ArrayBrowse desde código en el método
Initialize del formulario.
Este browse no tiene elementos. De hecho, la propiedad aArrayData no ha
sido establecida.
Al hacer click sobre el area cliente del browse arroja el error:
(b)XBROWSE:XBROWSE(187)
Error BASE/1132 Bound error: array access
Argumentos: ( [ 1] = Tipo: A Valor: [ 2] = Tipo: N Valor: 1)
Saludos,
José Luis Capel
--
In order for this site to work correctly we need to store a small file (called a cookie) on your computer. Most every site in the world does this, however since the 25th of May 2011, by law we have to get your permission first. Please abandon the forum if you disagree.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
Para que este foro funcione correctamente es necesario guardar un pequeño fichero (llamado cookie) en su ordenador. La mayoría de los sitios de Internet lo hacen, no obstante desde el 25 de Marzo de 2011 y por ley, necesitamos de su permiso con antelación. Abandone este foro si no está conforme.
tArrayBrowse y un error que no se por que ocurre
tArrayBrowse y un error que no se por que ocurre
José Luís,
Las columnas del ArrayBrowse necesitan un "ancho" (nWidth), sinó se quedan en nWidth a 0... y es como si lVisible fuera .F.. O sea que en tu caso estás creando 5 columnas de ancho 0.
Además el método Create() al crear el objeto columna no se crea de esa manera, necesitas asignarlo al Browse con AddCol..
Prueba cambiar tu OnInitialize por este código, y verás que aunque no existan líneas en el Browse, no va a lanzarte ningún error.
METHOD FormInitialize( oSender ) CLASS TForm2
LOCAL nX, oCol
WITH OBJECT ::oMiBrowse := tArrayBrowse():New(Self)
:nAlign := alCLIENT
:Create()
END
FOR nX := 1 TO 5
WITH OBJECT oCol := tBrwColumn():New( ::oMiBrowse )
:cHeader := "Columna "+LTRIM(STR( nX ))
:nWidth := 75
* :Create()
END
::oMiBrowse:AddCol( oCol )
NEXT
::oMiBrowse:Refresh( .T. )
RETURN Nil
Un Saludo,
Xevi.
"José Luis Capel" <jose.luis@capelsoft.com> escribió en el mensaje news:[email=43f24511@ozsrvnegro.ozlan.local...]43f24511@ozsrvnegro.ozlan.local...[/email]
> Hola,
>
> Os dejo un proyecto donde creo un ArrayBrowse desde código en el método
> Initialize del formulario.
>
> Este browse no tiene elementos. De hecho, la propiedad aArrayData no ha
> sido establecida.
>
> Al hacer click sobre el area cliente del browse arroja el error:
>
> (b)XBROWSE:XBROWSE(187)
> Error BASE/1132 Bound error: array access
> Argumentos: ( [ 1] = Tipo: A Valor: [ 2] = Tipo: N Valor: 1)
>
> Saludos,
> José Luis Capel
>
--
Las columnas del ArrayBrowse necesitan un "ancho" (nWidth), sinó se quedan en nWidth a 0... y es como si lVisible fuera .F.. O sea que en tu caso estás creando 5 columnas de ancho 0.
Además el método Create() al crear el objeto columna no se crea de esa manera, necesitas asignarlo al Browse con AddCol..
Prueba cambiar tu OnInitialize por este código, y verás que aunque no existan líneas en el Browse, no va a lanzarte ningún error.
METHOD FormInitialize( oSender ) CLASS TForm2
LOCAL nX, oCol
WITH OBJECT ::oMiBrowse := tArrayBrowse():New(Self)
:nAlign := alCLIENT
:Create()
END
FOR nX := 1 TO 5
WITH OBJECT oCol := tBrwColumn():New( ::oMiBrowse )
:cHeader := "Columna "+LTRIM(STR( nX ))
:nWidth := 75
* :Create()
END
::oMiBrowse:AddCol( oCol )
NEXT
::oMiBrowse:Refresh( .T. )
RETURN Nil
Un Saludo,
Xevi.
"José Luis Capel" <jose.luis@capelsoft.com> escribió en el mensaje news:[email=43f24511@ozsrvnegro.ozlan.local...]43f24511@ozsrvnegro.ozlan.local...[/email]
> Hola,
>
> Os dejo un proyecto donde creo un ArrayBrowse desde código en el método
> Initialize del formulario.
>
> Este browse no tiene elementos. De hecho, la propiedad aArrayData no ha
> sido establecida.
>
> Al hacer click sobre el area cliente del browse arroja el error:
>
> (b)XBROWSE:XBROWSE(187)
> Error BASE/1132 Bound error: array access
> Argumentos: ( [ 1] = Tipo: A Valor: [ 2] = Tipo: N Valor: 1)
>
> Saludos,
> José Luis Capel
>
--
tArrayBrowse y un error que no se por que ocurre
José Luís,
Perdón, pero he visto que también funciona con el método Create...
FOR nX := 1 TO 5
WITH OBJECT oCol := tBrwColumn():New( ::oMiBrowse )
:cHeader := "Columna "+LTRIM(STR( nX ))
:nWidth := 75
:Create()
END
* ::oMiBrowse:AddCol( oCol )
NEXT
Yo... lo estoy utilizando con AddCol... pero si así también funciona!!!
Un Saludo,
Xevi.
"Xevi" <xevicomas@terra.es> escribió en el mensaje news:[email=43f24bae@ozsrvnegro.ozlan.local...]43f24bae@ozsrvnegro.ozlan.local...[/email]
José Luís,
Las columnas del ArrayBrowse necesitan un "ancho" (nWidth), sinó se quedan en nWidth a 0... y es como si lVisible fuera .F.. O sea que en tu caso estás creando 5 columnas de ancho 0.
Además el método Create() al crear el objeto columna no se crea de esa manera, necesitas asignarlo al Browse con AddCol..
Prueba cambiar tu OnInitialize por este código, y verás que aunque no existan líneas en el Browse, no va a lanzarte ningún error.
METHOD FormInitialize( oSender ) CLASS TForm2
LOCAL nX, oCol
WITH OBJECT ::oMiBrowse := tArrayBrowse():New(Self)
:nAlign := alCLIENT
:Create()
END
FOR nX := 1 TO 5
WITH OBJECT oCol := tBrwColumn():New( ::oMiBrowse )
:cHeader := "Columna "+LTRIM(STR( nX ))
:nWidth := 75
* :Create()
END
::oMiBrowse:AddCol( oCol )
NEXT
::oMiBrowse:Refresh( .T. )
RETURN Nil
Un Saludo,
Xevi.
"José Luis Capel" <jose.luis@capelsoft.com> escribió en el mensaje news:[email=43f24511@ozsrvnegro.ozlan.local...]43f24511@ozsrvnegro.ozlan.local...[/email]
> Hola,
>
> Os dejo un proyecto donde creo un ArrayBrowse desde código en el método
> Initialize del formulario.
>
> Este browse no tiene elementos. De hecho, la propiedad aArrayData no ha
> sido establecida.
>
> Al hacer click sobre el area cliente del browse arroja el error:
>
> (b)XBROWSE:XBROWSE(187)
> Error BASE/1132 Bound error: array access
> Argumentos: ( [ 1] = Tipo: A Valor: [ 2] = Tipo: N Valor: 1)
>
> Saludos,
> José Luis Capel
>
--
Perdón, pero he visto que también funciona con el método Create...
FOR nX := 1 TO 5
WITH OBJECT oCol := tBrwColumn():New( ::oMiBrowse )
:cHeader := "Columna "+LTRIM(STR( nX ))
:nWidth := 75
:Create()
END
* ::oMiBrowse:AddCol( oCol )
NEXT
Yo... lo estoy utilizando con AddCol... pero si así también funciona!!!
Un Saludo,
Xevi.
"Xevi" <xevicomas@terra.es> escribió en el mensaje news:[email=43f24bae@ozsrvnegro.ozlan.local...]43f24bae@ozsrvnegro.ozlan.local...[/email]
José Luís,
Las columnas del ArrayBrowse necesitan un "ancho" (nWidth), sinó se quedan en nWidth a 0... y es como si lVisible fuera .F.. O sea que en tu caso estás creando 5 columnas de ancho 0.
Además el método Create() al crear el objeto columna no se crea de esa manera, necesitas asignarlo al Browse con AddCol..
Prueba cambiar tu OnInitialize por este código, y verás que aunque no existan líneas en el Browse, no va a lanzarte ningún error.
METHOD FormInitialize( oSender ) CLASS TForm2
LOCAL nX, oCol
WITH OBJECT ::oMiBrowse := tArrayBrowse():New(Self)
:nAlign := alCLIENT
:Create()
END
FOR nX := 1 TO 5
WITH OBJECT oCol := tBrwColumn():New( ::oMiBrowse )
:cHeader := "Columna "+LTRIM(STR( nX ))
:nWidth := 75
* :Create()
END
::oMiBrowse:AddCol( oCol )
NEXT
::oMiBrowse:Refresh( .T. )
RETURN Nil
Un Saludo,
Xevi.
"José Luis Capel" <jose.luis@capelsoft.com> escribió en el mensaje news:[email=43f24511@ozsrvnegro.ozlan.local...]43f24511@ozsrvnegro.ozlan.local...[/email]
> Hola,
>
> Os dejo un proyecto donde creo un ArrayBrowse desde código en el método
> Initialize del formulario.
>
> Este browse no tiene elementos. De hecho, la propiedad aArrayData no ha
> sido establecida.
>
> Al hacer click sobre el area cliente del browse arroja el error:
>
> (b)XBROWSE:XBROWSE(187)
> Error BASE/1132 Bound error: array access
> Argumentos: ( [ 1] = Tipo: A Valor: [ 2] = Tipo: N Valor: 1)
>
> Saludos,
> José Luis Capel
>
--
tArrayBrowse y un error que no se por que ocurre
Xevi,
Gracias!! Era eso... es que como siempre tenía algún elemento los
browses, no me daba cuenta de que no colocaba un ancho específico a la
columna. Reitero las gracias.
> Perdón, pero he visto que también funciona con el método Create...
>
> FOR nX := 1 TO 5
> WITH OBJECT oCol := tBrwColumn():New( ::oMiBrowse )
> :cHeader := "Columna "+LTRIM(STR( nX ))
> :nWidth := 75
> :Create()
> END
> * ::oMiBrowse:AddCol( oCol )
> NEXT
> Yo... lo estoy utilizando con AddCol... pero si así también funciona!!!
Yo me he fijado como lo crea Xailer mirando en el .xfm Y así es como lo
hace allí (me refiero al WITH/END)
Saludos,
José Luis Capel
Gracias!! Era eso... es que como siempre tenía algún elemento los
browses, no me daba cuenta de que no colocaba un ancho específico a la
columna. Reitero las gracias.
> Perdón, pero he visto que también funciona con el método Create...
>
> FOR nX := 1 TO 5
> WITH OBJECT oCol := tBrwColumn():New( ::oMiBrowse )
> :cHeader := "Columna "+LTRIM(STR( nX ))
> :nWidth := 75
> :Create()
> END
> * ::oMiBrowse:AddCol( oCol )
> NEXT
> Yo... lo estoy utilizando con AddCol... pero si así también funciona!!!
Yo me he fijado como lo crea Xailer mirando en el .xfm Y así es como lo
hace allí (me refiero al WITH/END)
Saludos,
José Luis Capel