Saludos fivewinners
Tengo los siguientes arreglos
Arr1
a , b , c
d , e , f
g , h , i
Arr2
1 , 2, 3
4 , 5, 6
7 , 8, 9
y debo obtener este resultado
aRes
a , b, c, 1, 2, 3
d , e, f, 4, 5, 6
g , h, i, 7, 8, 9
Ambos son creados dinamicamente despues de realizar unos selects sobre mysql. Como no hay relacion entre las tablas no puedo hacer un select con join, mi solucion es la "union" de los arreglos en forma externa.
Tengo acceso a las lineas por separado,
Intente lo siguiente
For x=1 to nLineas
Aadd(aRes, Arr1_aLinea[x], Arr2_aLinea[x]
// Aadd(aRes, {a,b,c},{1,2,3})
Next
Obviamente sin el resultado esperado, en algun momento varian las lineas y las columnas. Ej Un resultado real es ARR1[1021,3] y ARR2[1021,6] y otra mas sencilla Arr1[14,2] y ARR2[14.3]
Cualquier idea sera bienvenida, con la cabeza caliente ni veo el bosque de tanto arbol cerca.
Saludos
Desde Chile
Adolfo
Sumar o combinar matrices/arreglos
Sumar o combinar matrices/arreglos
Ji,ji,ji... buena la cosa... "all you need is code"
http://www.xdata.cl - Desarrollo Inteligente
----------
Lenovo Legion Y520, 16GB Ram, 1 TB NVME M.2, 1 TB SSD, GTX 1050
http://www.xdata.cl - Desarrollo Inteligente
----------
Lenovo Legion Y520, 16GB Ram, 1 TB NVME M.2, 1 TB SSD, GTX 1050
Re: Sumar o combinar matrices/arreglos
Paso a paso, creo que funciona para lo que necesitas
Code: Select all
local aTabla1 := { { "a", "b", "c" }, { "d", "e", "f" }, { "g", "h", "i" } }
local aTabla2 := { { "1", "2", "3" }, { "4", "5", "6" }, { "7", "8", "9" } }
local aTmp1 := ArrTranspose( aTabla1 )
local aTmp2 := ArrTranspose( aTabla2 )
AEVal( aTmp2, { | a | AAdd( aTmp1, a ) } )
aTabla1 := ArrTranspose( aTmp1 )
XBrowse( aTabla1 )
C. Navarro
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Hay dos tipos de personas: las que te hacen perder el tiempo y las que te hacen perder la noción del tiempo
Si alguien te dice que algo no se puede hacer, recuerda que esta hablando de sus limitaciones, no de las tuyas.
Re: Sumar o combinar matrices/arreglos
Adolfo:
No te sirve la clausula UNION de MySQL, recuerda, no es lo mismo JOIN que UNION.
Saludos
No te sirve la clausula UNION de MySQL, recuerda, no es lo mismo JOIN que UNION.
Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
Re: Sumar o combinar matrices/arreglos
Gracias.
Cristobal probare tu solucion.
Armando, no sirve UNION, me equivoque al describir lo que he probado, no existe ninguna relacion entre las tablas, hasta habia pensado en poner campos para generar el resultado, pero queria probar si solo con los arrays, que ademas utilizo en otras partes del modulo, era mas que suficiente.
Les comentare los resultados.
A proposito, ni idea de la funcion ARRTRANSPOSE(), es de HARBOUR, Fivewin?
Saludos.
Desde Chile.
Adolfo
Cristobal probare tu solucion.
Armando, no sirve UNION, me equivoque al describir lo que he probado, no existe ninguna relacion entre las tablas, hasta habia pensado en poner campos para generar el resultado, pero queria probar si solo con los arrays, que ademas utilizo en otras partes del modulo, era mas que suficiente.
Les comentare los resultados.
A proposito, ni idea de la funcion ARRTRANSPOSE(), es de HARBOUR, Fivewin?
Saludos.
Desde Chile.
Adolfo
Ji,ji,ji... buena la cosa... "all you need is code"
http://www.xdata.cl - Desarrollo Inteligente
----------
Lenovo Legion Y520, 16GB Ram, 1 TB NVME M.2, 1 TB SSD, GTX 1050
http://www.xdata.cl - Desarrollo Inteligente
----------
Lenovo Legion Y520, 16GB Ram, 1 TB NVME M.2, 1 TB SSD, GTX 1050
Re: Sumar o combinar matrices/arreglos
Adolfo:
También desde Clipper existe la función AINS(), te muestro que tengo a la mano:
Saludos
También desde Clipper existe la función AINS(), te muestro que tengo a la mano:
Code: Select all
tabla := {"FRANCISCO","FELIPE","MANUELA"}
AINS(tabla,2)
tabla[2] := "ANTONIO"
El resultado sería:
tabla[1] = "FRANCISCO"
tabla[2] = "ANTONIO"
tabla[3] = "FELIPE"
tabla[4] = "MANUELA"
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
-
- Posts: 23
- Joined: Wed Sep 14, 2016 7:13 pm
- Location: Rosario, Santa Fe, Argentina
- Contact:
Re: Sumar o combinar matrices/arreglos
a1 := {1,2,3}
a2 := {3,4,5}
a1 := additem(a1, a2)
FUNCTION AddItems(aArray, aItems)
local nOrigSize := Len(aArray)
ASize(aArray, nOrigSize + Len(aItems))
AEval(aItems, {|uItem, nPos| aArray[nOrigSize + nPos] := uItem} )
RETURN aArray
Saludos
a2 := {3,4,5}
a1 := additem(a1, a2)
FUNCTION AddItems(aArray, aItems)
local nOrigSize := Len(aArray)
ASize(aArray, nOrigSize + Len(aItems))
AEval(aItems, {|uItem, nPos| aArray[nOrigSize + nPos] := uItem} )
RETURN aArray
Saludos
Re: Sumar o combinar matrices/arreglos
Adolfo:
Ya entrados en gastos , también tienes la función AADD()
Como ves por opciones no paramos.
Saludos
Ya entrados en gastos , también tienes la función AADD()
Como ves por opciones no paramos.
Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
- nageswaragunupudi
- Posts: 8017
- Joined: Sun Nov 19, 2006 5:22 am
- Location: India
- Contact:
Re: Sumar o combinar matrices/arreglos
Code: Select all
aRes := Array( Len( aArr1 ) )
AEval( aArr1, { |a,i| aRes[ i ] := AMERGE( a, aArr2[ i ] ) } )
Regards
G. N. Rao.
Hyderabad, India
G. N. Rao.
Hyderabad, India