MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
 
 
Herramientas Buscar en Tema Desplegado
Prev Mensaje Previo   Próximo Mensaje Próx
  #1  
Viejo 18/06/08, 15:30:09
Avatar de stormshadow
stormshadow stormshadow is offline
Senior Member
 
Fecha de Ingreso: jun 2008
Mensajes: 117
Ayuda con registros duplicados

Hola gente, pues traigo esta leve duda, yo estaba creando un programa para extraer registros duplicados de una tabla, bien pues un bro de aquí me alivianó y me dió una solución, estubo bien pero tardaba en sacar todos los registros, ahora me ayudaron a crear este que voy a mostrar acontinuación, pero me falta algo, bien explico, este programa extrae todos los registros duplicados del campo bstnk, que es la clave del pedido, ok pues hay otra tabla la cual contiene un campo que dice el motivo por el que se rechazó ese pedido, pues yo lo que quiero es que si por ejemplo un pedido se repite ocho veces y uno de esos tiene motivo de rechazo, excluirlo y ahora mostrar solo 7 registros repetidos, no sé si me de a entender...

Eh pensado en crearlo con un loop pero no me sale pero bueno espero su ayuda, gracias!


************************************************** **********************
* TABLAS
************************************************** **********************
TABLES: vbak,
vbap.
************************************************** **********************
* ESTRUCTURAS
************************************************** **********************
DATA: BEGIN OF t_pedidos OCCURS 0,
vbeln LIKE vbak-vbeln, "REFERENCIA
bstnk LIKE vbak-bstnk, "CLAVE PEDIDO
ernam LIKE vbak-ernam, "NOMBRE
audat LIKE vbak-audat, "FECHA
abgru LIKE vbap-abgru, "MOTIVO RECHAZO
END OF t_pedidos.

DATA: BEGIN OF t_clavesAux OCCURS 0,
bstnk LIKE vbak-bstnk, "CLAVE PEDIDO
Numreg TYPE i,
END OF t_clavesAux.

Data: t_claves LIKE STANDARD TABLE OF ZTSD_PEDUP,
wa_claves LIKE LINE OF t_claves.

START-OF-SELECTION.

DELETE FROM ZTSD_PEDUP.

IF sy-subrc EQ 0.

SELECT
vbak~bstnk "CLAVE DEL PEDIDO
count( * ) As Numreg
FROM vbak
INTO TABLE t_clavesAux
WHERE vbak~bstnk NE ''
Group BY bstnk
HAVING count( * ) GT 1.

LOOP AT t_clavesAux INTO wa_aux.

wa_claves-bstnk = wa_aux-bstnk.
wa_claves-NumReg = wa_aux-NumReg.

APPEND wa_claves TO t_claves.

ENDLOOP.

INSERT ZTSD_PEDUP FROM TABLE t_claves.

SELECT DISTINCT vbeln bstnk ernam audat
FROM vbak
INTO TABLE t_pedidos
WHERE bstnk IN ( SELECT bstnk FROM ZTSD_PEDUP ).


ENDIF.

Úlima edición por stormshadow fecha: 18/06/08 a las 16:11:45.
Responder Con Cita
 


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 18:27:14.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web