Page 1 of 1

POSICION DE UN ITEM EN ARRAY DE COLUMNA DE XBROWSE

Posted: Fri Aug 31, 2012 6:21 pm
by joseluisysturiz
Saludos, tengo 1 xBrowse con varias columnas que contienen ARRAY definidas con :nEditType := EDIT_LISTBOX y :aEditListTxt := aDatos, estos array obviamente contienen varios valores los cuales no es lo que quiero guardar en mi tabla sino la posicion que ocupan en dicho array que los contiene, asi solo usaria un campo int en ves de una varchar, el punto es que cuando hago oCol:value := xVal lo que obtengo es el nombre del datos. Como obtengo LA POSICION de dicho dato en el array, es lo que se hace en un combo box, pero intente varias maneras y solo obtengo..ERRORES, gracias por sus sugerencias, ideas y solucion que se que alguno la tendra, saludos... :shock:

definicion de la columna del xbrowse por recurso

aConcepto := {"VALOR1", "VALOR2", "VALORn"}

WITH OBJECT oBrw:aCols[5]
:bStrData := {|| IIF( LEN( aItems ) = 0, SPACE(10) ,;
aItems[oBrw:nArrayAt, 5] ) }
:nEditType := EDIT_LISTBOX
:aEditListTxt := aConceptos
:bEditWhen := {|| IF( EMPTY( aItems[oBrw:nArrayAt, 1] ), .f., .t. ) }
:bOnPostEdit := { | oCol, xVal, nKey | If( nKey <> VK_ESCAPE ,;
( oCol:value := xVal ) }
END WITH

Amerito saber la posicion dentro del array de VALORn...

Re: POSICION DE UN ITEM EN ARRAY DE COLUMNA DE XBROWSE

Posted: Fri Aug 31, 2012 8:08 pm
by Raymundo Islas M.
Jose Luis,

Si es lo que me imagino, creo que te sirve esto :

nPos := oLb:nArrayAt

Esa es el numero del renglon en que estas posicionado en el array.

Y la otra, seria usar :

oLb:SelectedCol():nCreationOrder

Saludos

Re: POSICION DE UN ITEM EN ARRAY DE COLUMNA DE XBROWSE

Posted: Fri Aug 31, 2012 10:29 pm
by FranciscoA
Hola, José Luis, prueba asi:

aConcepto := {"VALOR1", "VALOR2", "VALORn"}

oCol:value := Ascan( aConcepto, xVal )

Saludos.

Re: POSICION DE UN ITEM EN ARRAY DE COLUMNA DE XBROWSE

Posted: Fri Aug 31, 2012 10:30 pm
by FranciscoA
FranciscoA wrote:Hola, José Luis, prueba asi:
aConcepto := {"VALOR1", "VALOR2", "VALORn"}

Code: Select all

oCol:value := Ascan( aConcepto, xVal  )
Saludos.

Re: POSICION DE UN ITEM EN ARRAY DE COLUMNA DE XBROWSE

Posted: Sat Sep 01, 2012 2:55 am
by joseluisysturiz
Saludos Raymundo, no necesitaba saber en que linea o columna estoy en el xBrowse, sino que la columna asi como se hace tipo GET para que sea editable, tiene agregada un combo box y mi necesidad era saber la posicion del item seleccionado en el array de la columna que no es el array del xbrowse, por eso puse la definicion de la columna, las formas que me dijistes funcionan para saber en que fila o en que columna estoy ubicado, igual gracias por la respuesta, hasta los momentos la opcion de Franscisco funciono y me da la informacion que deseo, a lo antiguo, pero funcional, gracias, saludos... :shock:

Re: POSICION DE UN ITEM EN ARRAY DE COLUMNA DE XBROWSE

Posted: Sat Sep 01, 2012 4:00 am
by joseluisysturiz
Esto esta muy bien cuando lo voy a guardar, pero cuando hago la recuperacion de la tabla al array para que sea seleccionado a quien le paso el valor del campo que contiene la posicion del VALOR seleccionado anteriormente.? oCol:value := aConceptos[nValorCampo] me lo hace pero es despues de haber usado el combo box. Reviso los methodos de xBrowse a ver si me da una respuesta, gracias y saludos... :shock: