|
#1
|
|||
|
|||
Problema con rangos de Numeros. SNRO
Buen dia,
Tengo implementado un intervalo(rango - SNRO) en un requerimiento para insertar registros de control en una tabla Z(lo utilizo como llave). Cada vez que alguien hace un movimiento en la tx. PA30, PA40, y PBA7, corre una BADI y hace este proceso. Uso la funcion GET_NUMBER_NEXT para traer el consecutivo de ese intervalo creado. Todo funcionaba muy bien en ambiente de desarrollo y calidad, pero al pasarlo a produccion estan saliendo algunos detalles. La tabla Z tiene tambien los campos de fecha y hora de insersion. Y se supone que los registros se insertan consecutivamente en cuanto al intervalo y tambien en a la fecha(un registro de fecha menor no puede ser insertado despues de de uno de fecha mayor). Pero esto esta ocurriendo . No se porque me esta generando estos numeros asi. El mismo proceso se hizo para cada ambiente(generar el intervalo, implementar BADI, etc.) Alguien tiene alguna idea del porque ocurre esto? Saludos a todo el foro.
__________________
Israel Toledo |
#2
|
|||
|
|||
Haber, te comento algo cuando creas un intervalo en la snro en memoria se guardan los numeros consecutivos.
es decir si ingresastes la primera vez, genera 1 pero en memoria separa los 10 siguientes. entonces cuando ingresas a la trasaccion toma lo que esta en memoria y se lo asigna. ahora cuando grabas la hora y fecha? .. antes de la llamada de la funcion o despues.. yo creo que deberia ser despues de tomar el correlativo. configura en la snro el siguiente parametro para que te salga consecutivo. Almac.mem.interm.de mem.prpal. Ctd.núms.en mem.interm. 0 <-- ojo con esto. |
#3
|
|||
|
|||
Gracias por la respuesta. Muy util.
Aunque, porque me adviertes al poner 0 en "Cantidad de numeros en memoria intermedia"?? O solo es que me estas diciendo que ponga ese cero? jejeje.. Bueno voy a intentar esto, lo unico es que me va a hacer un poco mas lento el proceso, pero pues si tarda 10 min, que se tarde 15 no hay problema jejeje... Gracias. y saludos.
__________________
Israel Toledo |
#4
|
|||
|
|||
Tocayo, 0 es para q no guarde memoria intermedia y te genero consecuitivamente.
Saludos |
#5
|
|||
|
|||
Okey...
Ahora consulte y resulto que ese no es tanto problema... mira te pongo unos registros(le borre las columnas q son irrelevantes... (revisa el 2,3,4. Especialmente el 3). MANDT IDEMP BZDAT UNAME UZEIT WERKS 800 343031 07.07.2008 PGARCIAR 14:37:13 1120 800 343220 07.07.2008 MRODRIGUEZV 18:59:41 61 800 343232 08.07.2008 NHERNANDEZS 10:52:36 1122 800 343242 07.07.2008 MRODRIGUEZV 20:43:18 1 Como puede ser que el registro 4 tenga una fecha mayor que el registro 3, y este tenga un consecutivo mayor que el registro 3(IDEMP)?? es por lo mismo de lo que me dices??? y efectivamente, primero asigno la fecha y hora del sistema a las variables de la tabla y despues hago la llamada a la funcion 'NUMBER_GET_NEXT' para obtener el numero... tiene tambien esto algo que ver? Bueno, un saludo desde Monterrey Mexico.. Q buena onda lo de tocayo.. jajajaa... q estes bien..
__________________
Israel Toledo Úlima edición por isratol fecha: 14/07/08 a las 16:22:46. |
#6
|
|||
|
|||
pero has visto q te genera de 10 en 10. es por la memoria intermedia.
ponle 0 |
Herramientas | Buscar en Tema |
Desplegado | |
|
|