Supongamos que tenemos 3 tablas en una base de datos:
+Cliente
nombre_cliente as varchar(50)
ejemplo: Cliente1
Cliente 2
+Marcas
nombre_cliente as varchar(50)
nombre_marca as varchar(50)
ejemplo: Cliente1 - Marca1_1
Cliente1 - Marca1_2
Cliente 2 - Marca2_1
+Productos
nombre_marca as varchar(50)
nombre_producto as varchar(50)
ejemplo: Marca1_1 - Producto1_1_1
Marca1_1 - Producto1_1_2
Marca1_2 - Producto1_2_1
Lo que queremos es relacionar la tabla de Clientes con la tabla de Productos y mostrarlos en un DropDownList, para ello las tablas productos P, marcas M, dentro de la tabla Marcas tenemos el campo nombre_cliente que relacionaremos con DropDownList_cliente el cual llenamos solo con la tabla Clientes, por ultimo hacemos la comparación M.nombre_marca=P.nombre_marca el cual llamara todos los productos que tengan el mismo cliente en la tabla de Marcas.
Try
Dim Cnn As New SqlConnection(Session("Conexion"))
Dim Ds As New DataSet
Dim Da As New SqlClient.SqlDataAdapter("select * from productos P, marcas M where M.nombre_cliente='" & Me.DropDownList_cliente.Text & _
"' and M.nombre_marca=P.nombre_marca order by P.nombre_producto ASC", Cnn)
Da.Fill(Ds, "productos")
Dim myDataView As DataView = New DataView(Ds.Tables("productos"))
Dim x As Integer
Me.DropDownList_producto.Items.Clear()
Me.DropDownList_producto.Items.Add(" ")
For x = 0 To myDataView.Count - 1
Me.DropDownList_producto.Items.Add(myDataView(x)("nombre_producto"))
Next
Cnn.Close()
Catch err As Exception
Me.mensaje.Text = (err.Message)
End Try
0 Comentarios