cancel
Showing results for 
Search instead for 
Did you mean: 

Combo

Former Member
0 Kudos

Saludos, bueno lo que pasa es que tengo un problema a la hora de extraer un nombre de un combo, ya e intentado todo pero me manda nada más el número ó posición dentro del combo del nombre que seleccione, no se como extraer el nombre y no el número gracias... Les dejo el código de como llene el combo, así como también como extraigo el número de posición del nombre.

##LLENADO

String c[] ={"v","c","x"};

IPrivateVentas2View.IComboElement newElement = wdContext.createComboElement();

ISimpleTypeModifiable myType = wdThis.wdGetAPI().getContext().getModifiableTypeOf("Combo.Nombres");

IModifiableSimpleValueSet values = myType.getSVServices().getModifiableSimpleValueSet();

for(int i=0; i<=2; i++)
{
values.put(String.valueOf(i),c);

}

wdContext.nodeCombo().addElement(newElement);

##EXTRACCIÓN

int e = Integer.parseInt(wdContext.currentComboElement().getNombres());

wdContext.currentContextElement().setSeleccion(c[e]);

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hola Pedro a ver si podemos echarte una mano.

En principio creo que tienes un error aquí

for(int i=0; i<=2; i++)
{
values.put(String.valueOf(i),c);
}

ya que deberías poner

for(int i=0; i<=2; i++)
{
values.put(String.valueOf(i),c<i>);
}

no sé si lo tendrás así en el código o ha sido un error al transcribirlo al hilo del foro. Tienes que tener claro que el primer parámetro es el valor del elemento y el segundo la descripción que usa el combo para mostrar.

Lo que no entiendo bien es si tienes enlazado el dropdownbykey al elemento del contexto Combo.Nombres o a seleccion. Supondré que es a Combo.Nombres y que selección lo tienes asociado a un textview o algo así para ver la selección realizada en el combo.

Si es así, todo lo que haces está bien (excepto lo que te comento arriba), y es normal que cuando hagas el get del atributo Nombres te devuelva el valor, no la descripción. Para obtener la descripción tendrías que acceder al array que tienes definido o acceder de nuevo al tipo del elemento.

Si quieres establecer y acceder al combo directamente usando la descripción en lugar del valor, úsala en los dos campos, es decir

for(int i=0; i<=2; i++)
{
values.put(c<i>,c<i>);
}

eso si no tienes valores repetidos para las descripciones claro (o sea no lo podrías hacer para los valores {"v","v","x"}).

Por otra parte, si vas a usar un combo tan simple como este, en el que además los valores son fijos (no se calculan en tiempo de ejecución dependiendo de los datos del contexto por ejemplo) te aconsejo que uses un tipo simple de tipo enumerado. Si necesitas ayuda con esto dímelo.

Saludos.

Former Member
0 Kudos

ok muchas gracias eduardo acabo de er y ya quedo, bueno ahora tengo otro pequeño problema no se si allá forma de insertar una fila a una tabla, lo que pasa que dentro de una tabla quiero colocar subtotal por cada 3 filas de mi tabla, e intantadi hacerlo con lo siguiente "wdContext.nodeT_Tabla().createElement(wdContext.nodeT_Tabla().getElementAt(i));" pero se dispara a la hora del recorrido, pero y me marca un exception, lo que quiero es saber si al objeto tabla se le puede insertar una fila directa sin afectar al nodo del contexto Gracias...