Pasar valor de un Array a un Boton y problemas con LOOP - Forum

Forum Navigation
You need to log in to create posts and topics.

Pasar valor de un Array a un Boton y problemas con LOOP

Tengo una serie de Botones cuyos Labels son "[Zona0] , [Zona1],..." y asi sucesivamente

uso lo siguiente para obtener los datos, son obtenidos de una base de datos Mysql :

Loop 0 [LargoJson] [xxx]
CreateEmptyObject [Zona]
SetVar [Zona([xxx])] "[Arr([xxx])('Nombre')]"
AlertBox "" "[Zona([xxx])]" ""
If [xxx] == 0
exitloop
endif
endloop

Partiendo del codigo anterior, el ALERTBOX me muestra correctamente los diferentes datos obtenidos

pero los botones no me muestran esos datos y segun tengo entendido :

[xxx] = 0  ............... [Zona([xxx])] = [Zona0]

[xxx] = 1  ............... [Zona([xxx])] = [Zona1]

Otro problema que tengo es que para poder salir del loop tengo que poner el codigo que se ve mas abajo, porque si no lo hago todo se tranca y no sigue leyendo los codigos que hay por debajo del loop

If [xxx] == 0
exitloop
endif

Y siguiendo con los problemas que me encuentro es que segun veo al ejecutar el LOOP es que lo normal seria que al correr el mismo el contador sea desde el valor "0" hasta el valor final pero sin embargo no es asi, el LOOP arranca en el valor mas alto para ir bajando hasta el valor "0"

 

Hola @gustavo1973,

Vamos por partes:

segun tengo entendido :
[xxx] = 0 ............... [Zona([xxx])] = [Zona0]

No, esto no es así. Fíjate que tenemos abierto un hilo al respecto de las variables compuestas.
Ahora mismo, a falta de actualizar VisualNEO Web con una solución definitiva, deberías utilizar la subrutina que comparto en ese otro hilo en el ejemplo (corregida ayer):

neoSetVar [Zona(xxx)] "[Arr([xxx])('Nombre')]"

Por otro lado, los loops siguen contando de abajo a arriba, pero la ejecución no se detiene con cada AlertBox, lo cual significa que todos los AlertBox se muestran casi al mismo tiempo quedando el último por encima de los demás y por eso es el primero que ves. En lugar de un AlertBox utiliza ConsoleLog para mostrar los mensajes y verás que el orden aparece correctamente.

Saludos!