Parametros en Comandos SQL de Data Environ.
Hola a todos!
Estoy trabajando con Visual Basic 6 en una aplicación para manejar una base de datos Access. Para la creación de los DataReport correspondientes, obviamente, ganarÃa mucho tiempo pudiendo realizar todos ellos a partir de comandos bajo DataEnvironment. Sin embargo, y ahà está mi problema, no encuentro forma de definir en dichos commands los parámetros que necesito para algunas de las consultas. Veo la correspondiente pestaña dentro de las propiedades del comando pero no soy capaz de añadir nada en la misma. Os agradecerÃa mucho alguna indicacÃón al respecto, ya que aunque puedo también utilizar directamente objetos DAO normales, me ahorrarÃa creo bastante trabajo el poder usar DE.
Nada +,un Saludo!
Estoy trabajando con Visual Basic 6 en una aplicación para manejar una base de datos Access. Para la creación de los DataReport correspondientes, obviamente, ganarÃa mucho tiempo pudiendo realizar todos ellos a partir de comandos bajo DataEnvironment. Sin embargo, y ahà está mi problema, no encuentro forma de definir en dichos commands los parámetros que necesito para algunas de las consultas. Veo la correspondiente pestaña dentro de las propiedades del comando pero no soy capaz de añadir nada en la misma. Os agradecerÃa mucho alguna indicacÃón al respecto, ya que aunque puedo también utilizar directamente objetos DAO normales, me ahorrarÃa creo bastante trabajo el poder usar DE.
Nada +,un Saludo!
En la propiedad de tu command1, en instruccion sql pega el siguiente codigo.
En la pestaña de propiedades te aparecera una w, con la que puedes mandar el parametro desde tu formulario.
SELECT Orders.ShipName, Orders.ShipAddress, Orders.ShipCountry, Orders.OrderID, Orders.CustomerID, Orders.OrderDate, Orders.RequiredDate, Orders.ShippedDate, Orders.ShipCity + ' ' + Orders.ShipPostalCode AS shiptocityzip, Orders.Freight, Employees.FirstName + ' ' + Employees.LastName AS Salesperson, Shippers.CompanyName AS shipvia, Customers.CompanyName, Customers.Address, Customers.Country, Customers.City + ' ' + Customers.PostalCode AS billtocityzip, SUM(`Order Details`.UnitPrice * `Order Details`.Quantity - `Order Details`.UnitPrice * `Order Details`.Quantity * `Order Details`.Discount) AS Subtotal, Subtotal + Orders.Freight AS Total FROM Orders, Customers, Shippers, Employees, `Order Details` WHERE Orders.CustomerID = Customers.CustomerID AND Orders.ShipVia = Shippers.ShipperID AND Orders.EmployeeID = Employees.EmployeeID AND Orders.OrderID = `Order Details`.OrderID GROUP BY Orders.ShipName, Orders.ShipAddress, Orders.ShipCity + ' ' + Orders.ShipPostalCode, Orders.ShipCountry, Customers.CompanyName, Customers.Address, Customers.City + ' ' + Customers.PostalCode, Customers.Country, Orders.OrderID, Orders.CustomerID, Employees.FirstName + ' ' + Employees.LastName, Orders.OrderDate, Orders.RequiredDate, Orders.ShippedDate, Shippers.CompanyName, Orders.Freight HAVING (Orders.OrderID = w)
En la pestaña de propiedades te aparecera una w, con la que puedes mandar el parametro desde tu formulario.
SELECT Orders.ShipName, Orders.ShipAddress, Orders.ShipCountry, Orders.OrderID, Orders.CustomerID, Orders.OrderDate, Orders.RequiredDate, Orders.ShippedDate, Orders.ShipCity + ' ' + Orders.ShipPostalCode AS shiptocityzip, Orders.Freight, Employees.FirstName + ' ' + Employees.LastName AS Salesperson, Shippers.CompanyName AS shipvia, Customers.CompanyName, Customers.Address, Customers.Country, Customers.City + ' ' + Customers.PostalCode AS billtocityzip, SUM(`Order Details`.UnitPrice * `Order Details`.Quantity - `Order Details`.UnitPrice * `Order Details`.Quantity * `Order Details`.Discount) AS Subtotal, Subtotal + Orders.Freight AS Total FROM Orders, Customers, Shippers, Employees, `Order Details` WHERE Orders.CustomerID = Customers.CustomerID AND Orders.ShipVia = Shippers.ShipperID AND Orders.EmployeeID = Employees.EmployeeID AND Orders.OrderID = `Order Details`.OrderID GROUP BY Orders.ShipName, Orders.ShipAddress, Orders.ShipCity + ' ' + Orders.ShipPostalCode, Orders.ShipCountry, Customers.CompanyName, Customers.Address, Customers.City + ' ' + Customers.PostalCode, Customers.Country, Orders.OrderID, Orders.CustomerID, Employees.FirstName + ' ' + Employees.LastName, Orders.OrderDate, Orders.RequiredDate, Orders.ShippedDate, Shippers.CompanyName, Orders.Freight HAVING (Orders.OrderID = w)
entras en command1 (el que quieras) seleccionas instruccion sql y al poner tu sql ponle el nombre del parametro que quieras ejemplo:
"select * from socios where nombre=nom"
Una vez hecho esto te vas a la pestaña de parametros y veras como ya te aparece nom como un parametro.. Despues en tu codigo
DataEnviroment1.command1 ("pepillo")
¡¡¡ya le puedes pasar parametros!!!
Si tienes alguna otra duda escribeme
Saludos
"select * from socios where nombre=nom"
Una vez hecho esto te vas a la pestaña de parametros y veras como ya te aparece nom como un parametro.. Despues en tu codigo
DataEnviroment1.command1 ("pepillo")
¡¡¡ya le puedes pasar parametros!!!
Si tienes alguna otra duda escribeme
Saludos
Puedes pasarle parametros a los DataReport de la siguiente manera:
ya configurado el dataenviroment y el datareport, haz click derecho sobre la coneccion y agrega un comando.
Luego en el origen de datos de las propiedades del comando escribe la sentencia sql de la siguiente forma (ejemplo de la base de datos biblio.mdb):
select * from authors where author=?
Presiona aceptar y vuelve a entrar en las propiedades del comando para configuar el parametro, este ya deberia estar en la lista de parametros. Define el nombre del parametro, tipo de dato, etc.
posteriormente liga el parametro a la aplicacion con el siguiente codigo: (ejemplo en un commandbutton_Click, y un text1.text)
Private Sub Command1_Click()
If Text1.Text <> "" Then
DataEnvironment1.Command1 Text1.Text
DataReport1.Show
Else
MsgBox " Texto invalido !!!", vbCritical, "Data Report - Usando Parametros"
End If
End Sub
Nota: Estuve dos horas peleando con visual basic para que lo hiciera, pero es muy secillo.
ya configurado el dataenviroment y el datareport, haz click derecho sobre la coneccion y agrega un comando.
Luego en el origen de datos de las propiedades del comando escribe la sentencia sql de la siguiente forma (ejemplo de la base de datos biblio.mdb):
select * from authors where author=?
Presiona aceptar y vuelve a entrar en las propiedades del comando para configuar el parametro, este ya deberia estar en la lista de parametros. Define el nombre del parametro, tipo de dato, etc.
posteriormente liga el parametro a la aplicacion con el siguiente codigo: (ejemplo en un commandbutton_Click, y un text1.text)
Private Sub Command1_Click()
If Text1.Text <> "" Then
DataEnvironment1.Command1 Text1.Text
DataReport1.Show
Else
MsgBox " Texto invalido !!!", vbCritical, "Data Report - Usando Parametros"
End If
End Sub
Nota: Estuve dos horas peleando con visual basic para que lo hiciera, pero es muy secillo.
