Portal    Foro    Buscar    FAQ    Registrarse    Conectarse


Publicar nuevo tema  Responder al tema 
Página 1 de 1
 
 
Manejar Una Matriz De "Result" (solucionado)
Autor Mensaje
Responder citando   Descargar mensaje  
Mensaje Manejar Una Matriz De "Result" (solucionado) 
 
Hola,

Estoy intentando pasar a una función una matriz de objetos Result.
Public function Fratickets(id as string[]) as object[]

DIM mimatriz AS NEW Object[]
Dim RS as result
....
RS=dbfunciones.tiposdeiva(id)
 mimatriz.Add(RS)
RS=dbfunciones.bases(id)
mimatriz.Add(RS)
....
RETURN mimatriz
....
End


El problema lo tengo cuando quiero leer los datos
asigno la función a una variable Object[]
.......
Dim nuevamatriz as NEW Object[]
dim RS as result
nuevamatriz=Fratickets[datos]
RS=nuevamatriz[0]
....
 


No puedo acceder a los datos de RS porque me dice que no es available.

¿Alguna idea de qué hago mal?

Gracias anticipadas

Saludos
 



 
última edición por ljma el Viernes, 29 Julio 2011, 07:28; editado 1 vez 
ljma - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Manejar Una Matriz De "Result" 
 
A primera vista, es algo raro una matriz de results. Supongo que lo que quieres es tener ya en memoria todos los valores posibles de las tablas auxiliares (tipos de iva y demás) para ahorrar tiempo luego al buscarlos, pero el procedimiento no me parece correcto (aunque nunca lo he probado).
Hay cosas que creo que están manifiestamente erróneas, sobre todo ésta:

Dim RS as result
....
RS=dbfunciones.tiposdeiva(id)
mimatriz.Add(RS)
RS=dbfunciones.bases(id)
mimatriz.Add(RS)
....


Estás asignando una y otra vez RS a la matriz de objetos. Como un objeto se pasa siempre por referencia, lo que tienes es una matriz de referencias al mismo objeto. Es decir, cada vez que cambias el valor de RS cambias el contenido de la matriz. Al final obtendrás o una matriz de referencias que apuntan a nada (puesto que el objeto como tal se destruye y reconstruye cada vez) o una matriz de referencias todas al mismo Result, que, además es local, por lo que al terminar la función no estoy muy seguro de qué pasa con él.
Creo que hay otras maneras mejores de tener esos valores disponibles a mano cuando los necesites, aunque sin saber exactamente qué es lo que quieres hacer ni de qué va tu aplicación no me atrevo a aconsejarte cuál.

Suerte
 



 
última edición por shordi el Jueves, 28 Julio 2011, 18:02; editado 1 vez 
shordi - Ver perfil del usuarioEnviar mensaje privado 
Volver arribaPágina inferior
Responder citando   Descargar mensaje  
Mensaje Re: Manejar Una Matriz De "Result" (solucionado) 
 
Hola Shordi,

Muchas gracias por contestar. Efectivamente era eso. Al destruirse los Result la matriz apunta a nada.

Saludos
 



 
ljma - Ver perfil del usuarioEnviar mensaje privadoVisitar sitio web del usuario 
Volver arribaPágina inferior
Mostrar mensajes anteriores:    
 
OcultarTemas parecidos
Tema Autor Foro Respuestas último mensaje
No hay nuevos mensajes Un Detalle Con El Insert Into Gambas Value... jousseph Bases de Datos 5 Domingo, 04 Noviembre 2012, 20:58 Ver último mensaje
Shell
No hay nuevos mensajes [solucionado] Configurar Un Record De Una ... vuott General 3 Sabado, 01 Noviembre 2014, 01:40 Ver último mensaje
vuott
No hay nuevos mensajes Poner Tu Programa En El Menu De "Prog... jsbsan General 1 Viernes, 11 Marzo 2016, 12:46 Ver último mensaje
jsbsan
No hay nuevos mensajes Ejecutar Archivos Audio MP3 Con La Clase &... vuott Aplicaciones/Fragmentos de Código 5 Lunes, 02 Diciembre 2019, 13:28 Ver último mensaje
tincho
 

Publicar nuevo tema  Responder al tema  Página 1 de 1
 

Usuarios navegando en este tema: 0 registrados, 0 ocultos y 1 invitado
Usuarios registrados conectados: Ninguno


 
Lista de permisos
No puede crear mensajes
No puede responder temas
No puede editar sus mensajes
No puede borrar sus mensajes
No puede votar en encuestas
No puede adjuntar archivos
Puede descargar archivos
No puede publicar eventos en el calendario



  

 

cron