Problemas de consumo de recursos

Hola grupooooo, me paso algo muy raro con unos programas
tengo un código y en el mandante mandante de desarrollo todo bien, hace las cosas a un tiempo aceptable. Pero en el mandante de productivo esa instrucción dura mucho en ejecutarse y todo SAP se alenta, y si saco de sap al usuario que esta ejecutando ese proceso, ya todo se pone bien, aunque en ocasiones me sigue apareciendo en usuario en la SM04.
Lo raro de todo es de que si yo entro a la tabla por la se17 y hago un select con los mismos parámetros.
Tambien dura mucho y despues de un rato de darle a cancelar transacción se quita, pero igual tambien me alenta todo SAP.
Y pues el problema que tengo con esto es que los programas no SAP cuando hacen un llamado RFC por ejemplo para registrar una venta pues dura un buen y en ocasiones no se terminan las solicitudes que estos programas hacen.

alguien tiene una respuesta a mi duda?, pleaseee

el código es:

SELECT SINGLE vbelv INTO v_pedido
FROM vbfa WHERE vbeln = i_factura AND vbtyp_n = 'M'.

Saludos en general

Hola.

Piensa que la VBFA es la tabla donde se relacionan los diferentes documentos y posiciones de ventas. Por lo que el tiempo de acceso puede ser muy grande. Puedes probar de sacar el nº de pedido (o lo que sea) a partir de la tabla VBRP (posiciones de factura), el campo VGBEL.

Piensa que dentro de una misma factura puedes estar facturando posiciones de diferentes pedidos. Pero si todas las posiciones de una factura vienen del mismo pedido el SELECT sería algo así:

SELECT SINGLE vgbel INTO v_pedido FROM vbrp WHERE vbeln = i_factura.

Un saludo.

3 Me gusta

no contaba con los datos de la llave primaria o de algun indice (y esta tabla no tiene indices ) por ende se tarda un buen tiempo porque por cada consulta barría la tabla entera para buscar un solo registro.
Traté con lo que me sugeriste y se acabo mi error

ahora, porque se tardaba en PRO y no en desarrollo indagando y llegue a la conclusion de que diferentes variables al rededor de esto una y la principal es el volmen de datos

si es el mismo volumen de datos otro aspecto importante es el nivel de usuarios que tienes en linea y el volmen de trasacciones o proceso que se estan ejecutando que de cierta manera NUNCA va a ser lo mismo PRO que DES.

Excelente tu aporte Robert, muchas gracias
saludos

1 me gusta

En PRO el volumen de datos es bastante mayor que en DES donde los programadores hacemos 2 o 3 pruebas para ver que el desarrollo es correcto y transportarlo a PRO (o a un sistema de test para probarlo más a fondo).

En el sistema donde trabajo actualmente la tabla VBFA tiene 2 índices. Otra alternativa hubiera sido crear uno nuevo con los campos que necesitas: VBELV (pedido), VBELN (factura) y VBTYP_N (tipo de documento subsiguiente). Pero opino que es mejor alternativa hacerlo por código. Si hay que ir creando índices de tablas es que el modelo de datos no está bien definido…

Me alegro haberte sido de ayuda :slight_smile:

1 me gusta

Este tema se cerró automáticamente 7 días después del último post. No se permiten nuevas respuestas.