Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

¿Como devolver un tipo definido desde una función? Ok !!

Estas en el tema de ¿Como devolver un tipo definido desde una función? Ok !! en el foro de Visual Basic clásico en Foros del Web. Hola: Tengo el siguiente tipo definido en un modulo (*.bas). Código: Public Type tPaciente paciRut As String paciNroFicha As Long paciFecIng As Date paciNom As ...
  #1 (permalink)  
Antiguo 09/09/2008, 10:43
 
Fecha de Ingreso: enero-2007
Mensajes: 272
Antigüedad: 17 años, 4 meses
Puntos: 5
Pregunta ¿Como devolver un tipo definido desde una función? Ok !!

Hola:

Tengo el siguiente tipo definido en un modulo (*.bas).

Código:
Public Type tPaciente
   paciRut As String
   paciNroFicha As Long
   paciFecIng As Date
   paciNom As String
   paciApe1 As String
   paciApe2 As String
   paciSexo As String
   paciFecNac As Date
   paciEdad As Integer 'Edad en dias
End Type
y una función que retorna dicho tipo de dato.

Código:
Public Function getPaciente(pNroFicha As Long) As tPaciente
   
   Dim sPaci As tPaciente
   
   Dim query As ADODB.Recordset
   Dim sql As String
   
   vSql = "select * from hfpaci where numero_ficha = " + pNroFicha
   Set query = New ADODB.Recordset
   
   'query.RecordSource = vSql
   query.Open vSql, cogestion, adOpenForwardOnly, adLockReadOnly
   
   sPaci.paciRut = query.Fields("rut_paciente")
   sPaci.paciNroFicha = query.Fields("numero_ficha")
   sPaci.paciFecIng = query.Fields("fecha")
   sPaci.paciNom = query.Fields("nombre_paciente")
   sPaci.paciApe1 = query.Fields("apellido_paciente")
   sPaci.paciFecNac = query.Fields("fecha_nacimiento")
   sPaci.paciSexo = query.Fields("sexo")
   
   query.Close
   query = Nothing
   
   getPaciente = sPaci
   
End Function
Pero al momento de llamar a la función me sale el siguiente error.

---------------------------
Microsoft Visual Basic
---------------------------
Error de compilación:

Sólo los tipos definidos por el usuario de módulos de objeto públicos se pueden pasar a funciones enlazadas en tiempo de ejecución o forzar a o desde un Variant
  #2 (permalink)  
Antiguo 09/09/2008, 10:53
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años
Puntos: 839
Pregunta Respuesta: ¿Como devolver un tipo definido desde una función?

¿Cómo llamas a la función?. Porque la variable que toma el valor deberías definirla con el mismo tipo.
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #3 (permalink)  
Antiguo 09/09/2008, 12:14
 
Fecha de Ingreso: enero-2007
Mensajes: 272
Antigüedad: 17 años, 4 meses
Puntos: 5
Respuesta: ¿Como devolver un tipo definido desde una función?

Cita:
Iniciado por David el Grande Ver Mensaje
¿Cómo llamas a la función?. Porque la variable que toma el valor deberías definirla con el mismo tipo.
Eso era david, no la había definido del mismo tipo, pensaba que el visual lo hacía solo al regresar un tipo de objeto de este tipo. Por lo visto no, jeje.

Gracias........

Saludos .-
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:56.