Page 1 of 1

ERROR XBROWSE -EDIT_LISTBOX

Posted: Mon Oct 01, 2018 10:25 pm
by MarioG
Hola Gente;
Tengo un xBrowse de un Array. En la primer columna pongo un array.
Luego declaro lo siguiente:

Code: Select all

   WITH OBJECT oBrw:MesDeuda
      :nEditType     := EDIT_LISTBOX
      :aEditListBound:= { 1, 2, 3, 4 ,5 ,6, 7, 8, 9, 10, 11, 12 }
      :aEditListTxt  := { "Enero", "Febrero", "Marzo", "Abril", ;
                             "Mayo", "Junio", "Julio", "Agosto"  , ;
                              "Septiembre", "Octubre", "Noviembre", ;
                              "Diciembre" }
   END
 

Cuando pulso sobre le boton del Listbox, me da el siguiente error:
  • Descripción de Error generado:
    ___________________________________________________

    Error BASE/1074 Error de argumento: <=
    Args:
    [ 1] = A { ... }
    [ 2] = N 1
Que estoy haciendo mal?

Re: ERROR XBROWSE -EDIT_LISTBOX

Posted: Wed Oct 03, 2018 3:08 am
by cmsoft
Hola Mario:
El array que le asignas al oBrw que datos tiene?
En la primer columna deberia tener un numero, no un array...
No se si te entendi bien...

Re: ERROR XBROWSE -EDIT_LISTBOX

Posted: Wed Oct 03, 2018 3:28 am
by MarioG
CM (nunca recuerdo tu nombre)
Gracias por responder
En principio, me tiene confundido porque tengo otra app donde muestro un array de tipo
:aEditListTxt := { "Uno", "Dos", "Tres" }
:aEditListBound:= { 1, 2, 3 }

Y no me da error. Aunque, difiere en que es un xBrowse de una DBF. Donde seleccionada una opción devuelve el valor numérico en correspondencia

Re: ERROR XBROWSE -EDIT_LISTBOX

Posted: Wed Oct 03, 2018 10:57 am
by cmsoft
Hola Mario:
Mi nombre es Cesar! Je!
Fijate estos dos ejemplos que te paso, el primero te da el error que te da a vos porque no tiene el valor cargado, el segundo anda bien.

Code: Select all

#include "FiveWin.ch"
#include "xbrowse.ch"

function Main()

   local oDlg, oBrw, aArray := { { 1,2,3 }, { 2,3,4 } , {} } 


   DEFINE DIALOG oDlg SIZE 300, 200

   @ 0, 0 XBROWSE oBrw OF oDlg ARRAY aArray AUTOCOLS

   WITH OBJECT oBrw:aCols[1]
      :nEditType     := EDIT_LISTBOX
      :aEditListBound:= { 1, 2, 3, 4 ,5 ,6, 7, 8, 9, 10, 11, 12 }
      :aEditListTxt  := { "Enero", "Febrero", "Marzo", "Abril", ;
                             "Mayo", "Junio", "Julio", "Agosto"  , ;
                              "Septiembre", "Octubre", "Noviembre", ;
                              "Diciembre" }
   END
      
   oBrw:CreateFromCode() 
   oBrw:bKeyDown = { || oDlg:SetText( Str( oBrw:nColSel ) ) }  
      
   ACTIVATE DIALOG oDlg CENTER ON INIT ( oDlg:oClient := oBrw, oDlg:Resize() )

return nil
 

Code: Select all

#include "FiveWin.ch"
#include "xbrowse.ch"

function Main()

   local oDlg, oBrw, aArray := { { 1,2,3 }, { 2,3,4 }  } 


   DEFINE DIALOG oDlg SIZE 300, 200

   @ 0, 0 XBROWSE oBrw OF oDlg ARRAY aArray AUTOCOLS

   WITH OBJECT oBrw:aCols[1]
      :nEditType     := EDIT_LISTBOX
      :aEditListBound:= { 1, 2, 3, 4 ,5 ,6, 7, 8, 9, 10, 11, 12 }
      :aEditListTxt  := { "Enero", "Febrero", "Marzo", "Abril", ;
                             "Mayo", "Junio", "Julio", "Agosto"  , ;
                              "Septiembre", "Octubre", "Noviembre", ;
                              "Diciembre" }
   END
      
   oBrw:CreateFromCode() 
   oBrw:bKeyDown = { || oDlg:SetText( Str( oBrw:nColSel ) ) }  
      
   ACTIVATE DIALOG oDlg CENTER ON INIT ( oDlg:oClient := oBrw, oDlg:Resize() )

return nil
La diferencia esta en como llenas el array que va a usar el xbrowse
Espero te sirva.
Saludos
Cesar