Hacer un autonumérico

Tengo dos tablas una es ordenes y otra es temporal Ordenes en las dos tengo un campo folio. En temporal ordenes tengo un select de otras tablas y al presionar un botón quiero insertar lo que tengo en temporal ordenes en ordenes pero con el folio que esta en ordenes siguiendo el consecutivo que tiene, en el append estoy poniendo
Expr1: DMax("[Ordenes]![Folio]","[Ordenes]")+1
y si agarra el amximo valor de ordenes pero me inserta todos con el mayor
osea si tenia 1 de folio en ordenes ene l query que hago para insertar en ordenes desde temporal se me insertan todas con 2,2,2,2,2,2,2,
y lo que quiero es que se pongan 2,3,4,5,6.
Como que no se actualiza la tabla y por eso siempre me pone el mismo...
¿Cómo le puedo hacer para solucionar esto?
Respuesta
Lo mas facil es hacer una consulta de autonumerico tendrias que crear una consulta SQL y poner
SELECT numerarSQL([id]) AS RegNum, * FROM tabla1
UNION ALL SELECT numerarSQL(Null), * FROM tabla1 WHERE 1=0
ORDER BY RegNum;
Ademas de esto tendrias que crear un modulo
Public Function numerarSQL(nDato) As Long
'variable que no se pierde entre las distintas llamadas
Static Norden As Integer
    If IsNull(nDato) Then 'si nDato es nulo: variable a cero y salida
        Norden = 0
        Exit Function
    End If
    Norden = Norden + 1
    numerarSQL = Norden
End Function

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas