El tema es ahi SI ES multiusuario al mismo tiempo si se guardo 2 registro el sistema va estirar lo que el otro usuario ha creado, por eso decia que este metodo no es tan confiable aunque de mil en 1 puede pasar eso pero puede pasar, por eso dije que estaba mal planteado usar esta forma.
Saludos...
El código de Waldo es tu solución.
Comentario aparte:
Papa, es que tu no usas transacciones (begin/commit/roll) y si vas a estar en red debes usar ello para que no tengas ese temor de si otro usuario toma el id ya tomado, incluso con Access se puede aplicar el begin/commit.
Al margen de lo anterior y dado que comentas sobre una tabla maestra, quizás debas revisar la usabilidad puesto que no todos los módulos debieran estar a la mano de usuarios que lo usen a la vez desde dos o mas pcs, considero que los maestros de artículos no debe operarse en mas de un terminal a la vez, "que se pueda no implica que se deba", eso ya pasa por un tema de seguir procedimientos, y la posibilidad de que alguien rompa el procedimiento mas la posibilidad de que lo hagan a la vez a la misma tabla es tan ínfima que no vale la pena ningún esfuerzo, bien por hacerlo y lograr cubrir todas las excepciones posibles pero te cuento que con mas de 5 años de rigor con programas que corren en red en varias empresas, con un batallón de usuarios salvajes y con el único mandato verbal a dichos usuarios de que ciertos módulos se operan SOLO en administración, NUNCA se me presentó un inconveniente así. ¿Que es posible que ocurra? SI, ¿Que es probable? lo veo muy improbable.
Fin del margen.
Checa trabajar con transacciones con mas razon si sera en red, acabo de probar con Access y efectivamente te perdona el autonumerico, o sea te lo devuelve y si dentro de esa transacción metes la consulta de recuperacion del ID ya tendrías un problema menos que abordar.
SAludos