Visual Basic - Acces y visual basic 6.0 (consultas )

Life is soft - evento anual de software empresarial
 
Vista:
sin imagen de perfil

Acces y visual basic 6.0 (consultas )

Publicado por Mat (32 intervenciones) el 03/10/2014 18:50:42
Amigos tengo problema con un proyecto en vb6.0 el cual esta enlazado con una base de datos acces que contiene una tabla y 3 campos, EJEMPLO:

Listado <--- (Tabla)

id / nombres / apellidos <--- (CAMPOS)

01 / MATEO / DUKE
02 / LUISA / AGUDELO
03 /MAURO /SOTO
04 / MARIA / FRANCO <---- (REGISTROS)



Hasta hay todo bien el lio surge donde urge la necesidad de mover un registro ejemplo vamos a mover a MATEO para que nos quede antes de MARIA y despues de MAURO nos quedaria asi: en teoria

Listado <--- (Tabla)

id / nombres / apellidos <--- (CAMPOS)

02 / LUISA / AGUDELO
03 /MAURO /SOTO
01 / MATEO / DUKE
04 / MARIA / FRANCO <---- (REGISTROS)

la idea es programar un boton en visual basic 6 para que me haga esta accion

alguien me podria ayudar con esto porfavor saludos desde colombia medellin
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
sin imagen de perfil

Acces y visual basic 6.0 (consultas )

Publicado por Roberto F. (11 intervenciones) el 04/10/2014 17:05:52
Bueno...

Supongo que para poder hacer esto, lo primero es saber que en una base de datos los registros como tal no tienen orden, sino que el gestor de base de datos nos lo devuelve en el orden que le indiquemos, o en su defecto como mejor le convenga.

Quiero decir que le debemos nosotros indicar de una manera concreta cual es este orden, por ejemplo añadiendo un campo orden

De manera que tuvieramos:

id / nombres / apellidos / ORDEN<--- (CAMPOS)

01 / MATEO / DUKE /01
02 / LUISA / AGUDELO /02
03 /MAURO /SOTO / 03
04 / MARIA / FRANCO / 04


y simplemente solo hay que ejecutar 2 instrucciones sql para conseguir el cambio

01 / MATEO / DUKE /03
02 / LUISA / AGUDELO /01
03 /MAURO /SOTO / 02
04 / MARIA / FRANCO / 04

Por supuesto ahora siempre le pediremos los datos indicando que los ordene por el campo ORDEN

Un saludo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
sin imagen de perfil

Acces y visual basic 6.0 (consultas )

Publicado por JUAN (32 intervenciones) el 04/10/2014 17:30:18
Gracias por tu respuesta Roberto una imagen vale mas que mil palabras

https://onedrive.live.com/?cid=C94B1C2D1072C50F&id=C94B1C2D1072C50F%21254&v=3

mira la ilustracion y me podrias ayudar con algun ejemplo de que debo poner en el boton mover que al hacer la seleccion en los option me genera la accion que quiero este es el codigo que me llena los combos

Private Sub CommandMover_Click()
MsgBox "en hora buena :( " <------ es lo que espero hacer
End Sub

Private Sub Form_Load()

Dim Conectar As String
Conectar = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\P.mdb;Persist Security Info=False"
Set mat = New ADODB.Connection
Set Recordset = New ADODB.Recordset
mat.Open Conectar
Recordset.Open "SELECT *FROM clientes", mat, adOpenDynamic, adLockOptimistic
While Recordset.EOF = False
Combo1.AddItem rs!NOMBRE
Combo2.AddItem rs!NOMBRE
Recordset.MoveNext
Wend

Recordset.Close
End Sub
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
Imágen de perfil de Andres Guerrero
Val: 3.117
Oro
Ha mantenido su posición en Visual Basic (en relación al último mes)
Gráfica de Visual Basic

Acces y visual basic 6.0 (consultas )

Publicado por Andres Guerrero (1798 intervenciones) el 08/10/2014 00:42:35
Hola Mateo
Prueba cambiando esta linea


Recordset.Open "SELECT *FROM clientes", mat, adOpenDynamic, adLockOptimistic
Por esta otra
Recordset.Open "SELECT *FROM clientes order by Nombre", mat, adOpenDynamic, adLockOptimistic

En sql la intruccion order by puedes poner el campo por el que lo puede ordenar , luego intenta apellido y asi.... tambien puedes hacer que sea orden incremental o decremental... añadiendo los parametros asc y desc es decir

Recordset.Open "SELECT *FROM clientes order by Nombre desc", mat, adOpenDynamic, adLockOptimistic

Espero haberte ayudado.
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
sin imagen de perfil

Acces y visual basic 6.0 (consultas )

Publicado por mateo (32 intervenciones) el 08/10/2014 05:04:40
Gracias andres le puse logica a tu respuesta y incremente un campo mas para ordenar por numeros y funciona perfecto uff muchisimas gracias brooo


saludos desde colombia

by: JUAN

no inicie secion
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