Arrays (Matriz) multidimensional

07/07/2003 - 11:14 por LEspinosa | Informe spam
Hola a todos:

En una función , uno de los parámetros que le paso, es una matriz dinámica
multidimensional; el problema surge cuando intento recorrer esa matriz, pues
aunque puedo hallar dentro del procedimiento cuantas dimensiones tiene
usando UBound y control de errores, no se me ocurre como puedo recorrer
dicha matriz y extraer sus datos, pues como he dicho anteriormente
desconozco de antemano (en tiempo de compilación) el número de dimensiones
de dicha matriz.
Ese parámetro que paso, la matriz, lo impone la interfaz, por lo que no
puedo modificarlo por una colección de clases, por ejemplo.


¿Alguna idea o sugerencia?


Gracias a todos de antemano.
Leonardo Espinosa

Preguntas similare

Leer las respuestas

#6 LEspinosa
08/07/2003 - 11:42 | Informe spam
Hola Javier:

Concretamente estoy inmerso en una aplicación OLAP, con bases de datos
multidimensionales, orientado al mundo financiero. En este campo la
capacidad de análisis está en relación directa con el número de dimensiones
y... no me enrollo más, pero aunque es dificil que alcance las 50 o más
dimensiones (que no creo) es habitual que tenga entre 5 y 15 dimensiones.
La necesidad de no limitar excesivamente este análisis responde al guión,
pues una de las exigencias del proyecto es evitar precisamente esto y no
querían presentar la aplicación diciendo que estaba limitado a 10 o 12
dimensiones.
Además si haces pruebas de tiempo verás el aumento enorme de rendimiento de
este método.

En cuanto al error que me dices, no lo he detectado aún (y espero no
encontrarmelo ;-) ), pero me suena que está relacionado con el
bloqueo/desbloqueo de la matriz (ver tipo de datos SAFEARRAY en MSDN y
http://www.buygold.net/v01n07/v01n07.html).
Un error similar me ocurrió con la técnica tradicional de tratamiento de
arrays y lo resolvimos usando control de errores.

Por si te interesa te pego algunas de las fuentes de dónde he tomado la
idea:
'Write Faster Apps with VB Pointers' en
http://archive.devx.com/premier/mgz...mc1097.pdf
Hardcore Visual Basic de Bruce McKinney en MSDN (el libro en español:
Microsoft Visual Basic Avanzado)

Saludos
Leonardo Espinosa


"Javier Balkenende" escribió en el mensaje
news:OgU20#
Mostrar la cita
modificado
Mostrar la cita
Victor.
Mostrar la cita
era
Mostrar la cita
VarPtrArray
Mostrar la cita
unidimensional
Mostrar la cita
matriz,
Mostrar la cita
recorrer
Mostrar la cita
no
Mostrar la cita
#7 Javier Balkenende
08/07/2003 - 13:06 | Informe spam
Creo que voy a tener que estudiar C, de manera que esté más familiarizado
con el manejo de punteros, cuando se quiere hacer cosas que VB no hace a
veces es necesario ir a un manejo de bajo nivel.
Gracias por la información.
Saludos,

Javier

"LEspinosa" escribió en el mensaje
news:
Mostrar la cita
dimensiones
Mostrar la cita
de
Mostrar la cita
usar
Mostrar la cita
(Dest
Mostrar la cita
Double
Mostrar la cita
de
Mostrar la cita
podrían
Mostrar la cita
for
Mostrar la cita
tiene
Mostrar la cita
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.493 / Virus Database: 292 - Release Date: 25/06/2003
Ads by Google
Search Busqueda sugerida