Visual Basic - Ayuda con Actualizacion masiva de datos

Life is soft - evento anual de software empresarial
 
Vista:

Ayuda con Actualizacion masiva de datos

Publicado por XZkorpio (7 intervenciones) el 07/07/2005 09:52:13
Buenas a Todos:
Mi pregunta es la siguiente : estoy diseñando una ventana en la que tengo un control data, un dbgrid, un listbox y una serie de botones.-
El dbgrid esta enlazado con el data mostrando informacion relativa a una determinada consulta.-
Haciendo doble clic en la grilla se pasa el dato al list box para crear una lista de seleccion que posteriormente desencadenara una actualizacion masiva de datos.-
Mi intencion es con la sentencia SQL UPDATE generar toda la actualizacion de datos, para evitar que el operador deba ir actualizando de a uno por vez, pero realmente nunca lo he hecho y no se tampoco como hacerlo.
La sintaxis de la sentencia SQL la conozco, pero no se como aplicarla al contro Data.

Como puedo hacer para poder ejecutar esta sentencia?

Existe alguna manera o debo intentar algun otro metodo?.

Desde ya muchas gracias.-

Saludos.-

XZkorpio.-
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:Ayuda con Actualizacion masiva de datos

Publicado por Loud_in (110 intervenciones) el 07/07/2005 16:46:37
esto lo pegue de una respuesta que di anteriormente. pero es lo mismo. para ejecutar un SQL con DATA, debes ejecutarla en el el Execute de l objeto, pero tengo una duda, que el dbgrid la actualice inmediatamente. nose, chequea esto y me cuentas.

Primero, la propiedad que utilizas para ejecutar la accion, no es la indicada. ya que esta, es para la fuente de registros. como, lo que deseas es ejecutar una accion de eliminacion, debes utilizar (Gracias a Dios ) la propiedad Execute del DATA (DAO) (Gracias a dios, porque si trabajaces con ADO, el trabajo seria bastante árduo.)

como hace años que no trabajo DAO, no tengo idea de la configuracion de las otras propiedades, como las que mensionabas.
utiliza esto.
data1.Database.Execute "DELETE FROM tabla WHERE campo = CONDICION"

si no estoy mal, no es necesario refrescar. pero, no esta de mas.

Andres-Loud_in
Medellin-Colombia
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con Actualizacion masiva de datos

Publicado por XZkorpio (4 intervenciones) el 08/07/2005 17:01:22
Mira, he estado probando y no me funciona te transcribo el procedimiento para ver cual es el error:

Private Sub cmdAsignarA_Click()
Dim Indice As Integer
Dim SentenciaAct As String
SentenciaAct = "UPDATE TCLIENTES SET RECORRIDO = 'A' WHERE DIRECCION = '" & lstSeleccion.List(lstSeleccion.ListIndex) & "' "

'Se debe recorrer todos los items de la lista
'MsgBox lstSeleccion.ListCount & vbNewLine & lstSeleccion.List(lstSeleccion.ListIndex)
For Indice = 0 To lstSeleccion.ListCount - 1
mdbClientes.Database.Execute SentenciaAct
Next
End Sub

En este procedimiento no me funciona, y la verdad que no he podido encontrar mucha informacion.-
De seguro le estoy errando en algo pero no se realmente en que.

Utilizo VB 6 con SErvice Pack 5, Base de Access 2000 con bastantes datos para probar. (En la tabla Clientes hay aprox. 500 registros).-

Saludos.-

XZkorpio.-
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:Ayuda con Actualizacion masiva de datos

Publicado por Loud_in (110 intervenciones) el 08/07/2005 19:29:59
La SQL esta bien. el campo Direccion es texto. cierto?

Bueno, no encuentro coherencia en la forma como ejecuta la instruccion.

1- lstSeleccion.List(lstSeleccion.ListIndex) que informacion te manda, si la idea es el item seleccionado del text, solo tienes que decir: lstSeleccion.text
2- al ejecutar, la SQL, lo hace en un ciclo segun la cantidad de elementos del List, hecho que no lo hace neceesario, ya que la SQL se contruyo de una manera fija en una instruccion anterior. diferente seria, y tendria logica si dentro del ciclo, modificase la SQL para que por cada elemento del list, ejecute el UPDATE.

Pregunta, el prg, si actualiza la BD y la grilla o solo la DB o la Grilla?

Si quieres mandame solo los datos (la tabla solamente) y el formulario, y yo le realizo eso.

Andres-Loud_in
Medellin-Colombia
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar