|
#1
|
|||
|
|||
Hola amam2605,
Ahora sí me queda más claro. Podríamos entonces hacer sl siguiente cambio al código que te pasé: * Obtener los datos comerciales de los clientes SELECT KUNNR VKORG VTWEG SPART FROM KNVV INTO TABLE TABLA1 WHERE VKORG EQ '1000' AND ( VTWEG EQ '10' OR VTWEG EQ '11'). * Encontrar clientes con Sector (SPART) distinto a 67 LOOP TABLA1 INTO R_TABLA1. IF R_TABLA1-SPART NE '67'. MOVE R_TABLA1 -KUNNR TO R_TABLA3-KUNNR. APPEND R_TABLA3 TO TABLA3. CLEAR R_TABLA3. ENDIF. ENDLOOP. * Eliminar clientes con Sector (SPART) distinto a 67 CLEAR D_INDEX. LOOP TABLA1 INTO R_TABLA1. D_INDEX = SY-TABIX. READ TABLE TABLA3 INTO R_TABLA3 WITH KEY KUNNR = R_TABLA1-KUNNR. IF SY-SUBRC IS INITIAL. DELETE TABLA1 INDEX D_INDEX. ENDIF. ENDLOOP. Luego continuaría con el resto del código donde obtiene a partir de la TABLA1 los nombres de los clientes, y por ultimo arma la tabla final a mostrar, ese código no debería sufrir ninguna modificación. Se podrían ahorrar unos cuantos pasos volcando desde el comienzo todo a una tabla final y sólo ir modificando registros o eliminando pero traté de hacerlo así bien desglosado para que se entienda bien que se está haciendo. Se puede optimizar muchísimo más sin problemas. Espero te sea útil. |
#2
|
|||
|
|||
Muchas Gracias Amiga por tomarte toso ese tiempo en ayudarme.
Saludos AMAM |
#3
|
|||
|
|||
De nada AMAM, espero te haya servido y se haya entendido el código.
Y esto es apenas un pequeño granito de arena que es mi manera de devolver toda la ayuda que siempre he encontrado aquí en el foro. Saludos. |
#4
|
|||
|
|||
Hola Amiga
Donde puedo ver ejemplos de rutura de control en programas, tengo un caso con otro programa que coloque en el foro pero no he trabajado con ese procedimiento. Muchas Gracias por tu ayuda. Saludos AMAM |
Herramientas | Buscar en Tema |
Desplegado | |
|
|