Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Tablas de consulta en Access 2000

Estas en el tema de Tablas de consulta en Access 2000 en el foro de Bases de Datos General en Foros del Web. Hola, mi problema es el siguiente: Tengo dos tablas relacionadas de tipo uno a varios llamada regiones y ciudades. ¿como hago para que en un ...
  #1 (permalink)  
Antiguo 05/09/2003, 10:37
 
Fecha de Ingreso: septiembre-2003
Ubicación: Bogotá D.C.
Mensajes: 1
Antigüedad: 20 años, 7 meses
Puntos: 0
Pregunta Tablas de consulta en Access 2000

Hola, mi problema es el siguiente: Tengo dos tablas relacionadas de tipo uno a varios llamada regiones y ciudades. ¿como hago para que en un formulario al escoger a través de un cuadro combinado una región, despliege en otro cuadro combinado las ciuades que pertenecen a esa región?
  #2 (permalink)  
Antiguo 10/09/2003, 09:09
 
Fecha de Ingreso: septiembre-2003
Mensajes: 11
Antigüedad: 20 años, 7 meses
Puntos: 0
Pregunta

holaaas yo tmb tengo la misma duda pero nadie me contesta...
q alguien nos ayudeee por favor
  #3 (permalink)  
Antiguo 02/10/2003, 23:30
 
Fecha de Ingreso: agosto-2003
Mensajes: 7
Antigüedad: 20 años, 8 meses
Puntos: 0
Una forma poco elegante, pero efectiva, sería por ejemplo:

En Access:
Tabla Tb_Regiones
Region_Nombre --> Nombre de la región (Cadena)
Region_Id --> Identificador de la región (Entero Largo)

Tabla Tb_Ciudades
Ciudad_Nombre --> Nombre de la Ciudad (Cadena)
Region_Id --> Identificador de la región (Entero Largo) (de Tabla Tb_regiones)

en el código de VB:

Private Sub LlenaComboRegiones()
'llena el Combo regiones
sSQL = "SELECT * FROM Tb_Regiones
Set RS = New ADODB.Recordset
Set RS = cn.Execute(sSQL)
comboRegiones.Clear
While Not RS.EOF
sRegion=RS.Fields("Region_Nombre") & Space(55) & RS.Fields("Id")
cmbEstacion.AddItem sRegion
RS.MoveNext
Wend
RS.Close
Set RS = Nothing
End Sub


Private sub comboRegiones_Click
Dim inCounter As Integer
Dim inFoundPos As Integer
Dim x As Integer
Const PARSECHAR = " "

sRegion = comboregiones.Text
If Len(sRegion) = 0 Then Exit Sub

'Empezar en el último caracter
inCounter = Len(sRegion)

'Buscar un espacio
inFoundPos = InStrRev(sRegion, PARSECHAR, inCounter)

'Asignar la última parte de la cadena a sRegion
sEstacion = Mid(sRegion, inFoundPos + 1, (Len(sEstacion) - inFoundPos + 1))

LlenaComboCiudades sRegion
End Sub

Private Sub LlenaComboCiudades(sRegion as string)
'llena el Combo ciudades
sSQL = "SELECT * FROM Tb_Ciudades as WHERE Region_Id = '"& sRegion &"'"
Set RS = New ADODB.Recordset
Set RS = cn.Execute(sSQL)
comboCiudades.Clear
While Not RS.EOF
sCiudad=RS.Fields("Ciudad_Nombre")
comboCiudad.AddItem sCiudad
RS.MoveNext
Wend
RS.Close
Set RS = Nothing
End Sub

Espero que les sirva
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 20:44.