RE:que realiza esta instruccion
Hola Esteban:
No entiendo cual el tu problema, este código lo has sacado de un ejemplo que yo mismo puse en el Foro hace tiempo como ejemplo, de nombre "Movimientos de Almacén" y ahí verás que los saldos se ordenan perfectamente según su órden de entrada y las Líneas se van numerando consecutivamente.
¿ Donde tienes exactamente ese problema de ordenación ?, supongo que será en las líneas del Subformulario, pero ¿ cuando te pasa, al introducir nuevos registros o al renumerar después de eliminar una línea de registro?
Prueba con este cambio en la apertura del Recordset, pero dudo que esta sea la solución:
rst.Open "SELECT * From MOV_KAR_DETALLE_KARDEX where PRODUCTO = Codigo ORDER BY Linea", cnn, adOpenDynamic, adLockOptimistic
Si te fijas bien en mi ejemplo "Movimientos de Almacen", verás que la ordenación realmente se hace por un Campo de nombre " Id " en la Tabla "Movimientos" y NO por el número de Línea de los Registros, ya que este nº de línea se vá incrementando desde el 1 en adelante, pero para cada Codigo de Producto vuelve a empezar por el 1 (es simplemente un "adorno" por decirlo de alguna forma).
Si sigues teniendo problemas, puedes enviarme la mdb con solo el formulario, el subformulario y las tablas implicadas e intentaré ver qué está pasando.
Saludos
Enrique