Hola a todos, muchas Felicidades.
Tengo el siguiente problema:
Tengo un array de paises y quiero otro array de localidades, pero el tema es que si creo un array multidimensional, no puedo hacerlo porque cada pais no tiene la mima cantidad de localidades, como puedo hacer que al seleccionar un pais en un array me traiga todas las localidades pertenecientes a ese pais, no se como hacer usando array, o como filtrar arrays.
Gracias
Como usar un Array Multidimensional??
Moderator: Rathinagiri
-
- Posts: 23
- Joined: Tue Nov 07, 2017 6:41 am
- DBs Used: DBF, Mysql
- Location: Capital Federal, Buenos Aires, ARGENTINA
-
- Posts: 6
- Joined: Sat Sep 29, 2018 3:36 pm
- DBs Used: DBF
Re: Como usar un Array Multidimensional??
Try this way
set alter on
set alter to country.txt
a1:={"country1", "country2", "country3"}
a2:={}
aadd(a2,{"country1","loc11"})
aadd(a2,{"country1","loc12"})
aadd(a2,{"country1","loc13"})
aadd(a2,{"country2","loc21"})
aadd(a2,{"country3","loc31"})
aadd(a2,{"country3","loc32"})
msgdebug(len(a1),a1)
msgdebug(len(a2),a2)
for j=1 to len(a1)
? "country: "+ a1[j]
for i=1 to len(a2)
r:=1
if a1[j]=a2[i,1]
? r,a2[i,2]
r:=r+1
endif
next
next
set alter off
set alter to
run notepad country.txt
set alter on
set alter to country.txt
a1:={"country1", "country2", "country3"}
a2:={}
aadd(a2,{"country1","loc11"})
aadd(a2,{"country1","loc12"})
aadd(a2,{"country1","loc13"})
aadd(a2,{"country2","loc21"})
aadd(a2,{"country3","loc31"})
aadd(a2,{"country3","loc32"})
msgdebug(len(a1),a1)
msgdebug(len(a2),a2)
for j=1 to len(a1)
? "country: "+ a1[j]
for i=1 to len(a2)
r:=1
if a1[j]=a2[i,1]
? r,a2[i,2]
r:=r+1
endif
next
next
set alter off
set alter to
run notepad country.txt
- serge_girard
- Posts: 3167
- Joined: Sun Nov 25, 2012 2:44 pm
- DBs Used: 1 MySQL - MariaDB
2 DBF - Location: Belgium
- Contact:
Re: Como usar un Array Multidimensional??
try this code:
Output:
country: country1
1 loc-11
2 loc-12
3 loc-13
4 loc-14
country: country2
1 loc-21
2 loc-22
3 loc-23
4 loc-24
5 loc-25
country: country3
1 loc-31
2 loc-32
3 loc-33
4 loc-34
5 loc-35
6 loc-36
7 loc-37
country: country4
1 loc-41
Code: Select all
#include "hmg.ch"
set alter on
set alter to country.txt
aLOC := {}
AADD(aLOC, {"country1",{"loc-11","loc-12","loc-13","loc-14"}})
AADD(aLOC, {"country2",{"loc-21","loc-22","loc-23","loc-24","loc-25"}})
AADD(aLOC, {"country3",{"loc-31","loc-32","loc-33","loc-34","loc-35","loc-36", "loc-37"}})
AADD(aLOC, {"country4",{"loc-41"}})
for j := 1 to len(aLOC)
? "country: " + aLOC [J,1]
for i := 1 to len(aLOC [J,2])
? I, aLOC [J,2,I]
next
next
set alter off
set alter to
run notepad country.txt
country: country1
1 loc-11
2 loc-12
3 loc-13
4 loc-14
country: country2
1 loc-21
2 loc-22
3 loc-23
4 loc-24
5 loc-25
country: country3
1 loc-31
2 loc-32
3 loc-33
4 loc-34
5 loc-35
6 loc-36
7 loc-37
country: country4
1 loc-41
There's nothing you can do that can't be done...