Comparar registros de dos tablas

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • novato-sap
    Junior Member
    • dic
    • 21

    #1

    Comparar registros de dos tablas

    Hola buenos dias, mi duda es la siguiente:

    Quiero comparar dos tablas que tienen dos campos iguales al menos, y lo que tengo que hacer es comparar los registros de los campos cumpliendo que de todos los registros los campos sean iguales y si en una tabla tiene mas registros una que otra no hacer nada pero si se igualan el nº de registros, es decir son iguales, guardar ciertos campos en una tabla fisica.
    La idea es comparar los campos de tablas internas.
    ¿Cómo puedo hacerlo?
    Gracias.
  • DavidXD_XD
    Moderator
    • ago
    • 1255

    #2
    Hola ... bueno nunca he probado el

    IF itab1[] = itab2[].

    Tal vez puede que funcione pero para estar mas seguro puedes realizar lo siguiente con un indicador

    Código:
    DATA: g_ind.
    
    [COLOR="Blue"]* Quiero ver si itab1 y itab2 son iguales[/COLOR]
    LOOP AT itab1.
      READ TABLE itab2 INDEX sy-tabix.
      IF itab1 NE itab2.
        g_ind = 'X'.
        EXIT.
      ENDIF.
    ENDLOOP
    Estoy seguro que eso si funciona, porque entre estructuras si se puede hacer comparacion ... espero te pueda servir
    David Carballido Córdova

    Comentario

    • alombardi
      Junior Member
      • ene
      • 3

      #3
      Comparación De Tablas A Nivel De Datos

      * Comparando tablas
      * ztbsd es tipo tabla

      DATA: g_ind,
      wa TYPE ztbsd_zterm,
      itab1 TYPE STANDARD TABLE OF ztbsd WITH HEADER LINE ,
      itab2 TYPE STANDARD TABLE OF ztbsd WITH HEADER LINE.

      CLEAR: wa. wa-vkorg = '200'. APPEND wa TO itab1.
      CLEAR: wa. wa-vkorg = '100'. APPEND wa TO itab1.
      CLEAR: wa. wa-vkorg = '200'. APPEND wa TO itab1.

      CLEAR: wa. wa-vkorg = '200'. APPEND wa TO itab2.
      CLEAR: wa. wa-vkorg = '200'. APPEND wa TO itab2.
      CLEAR: wa. wa-vkorg = '200'. APPEND wa TO itab2.

      clear g_ind.
      IF itab1[] NE itab2[]. "Compara DATOS ALL
      g_ind = 'X'.
      WRITE:/'gi_ind = ', g_ind .
      ENDIF.
      write:/ 'fin'.

      Comentario

      Trabajando...