Comparacion de dos tablas

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Damian
    Junior Member
    • abr
    • 21

    #1

    Comparacion de dos tablas

    Soy nuevo en sap, y estoy teniendo un problema tengo dos tablas (A y B) de la cual en la tabla B tengo registros que pueden estar en la tabla A a los cuales debo marcalos para luego borrarlos.
    Estas tablas no estan creadas en el diccionario sino dentro del programa, alguien podra decirme como debo realizar la comparación.
    Muchas Gracias.
  • Gregoryg
    Senior Member
    • abr
    • 115

    #2
    Comparacion entre tablas

    Hola
    Dejame ver si te entendi, tienes dos tablas y quiere eliminar los registros de una tabla dependiendo de los que estan en la otra.

    Bueno lo que se me ocurre hacer le haces un loop a la tabla B ibas haciendo un read table contra la tabla A con los campos que tienes en la tabla B que son Claves en la tabla A. si la variable SY-SUBRC toma el valor de cero conseguistes el registro en la tabla A en la variable SY-TABIX tienes el indice para hacer el delete a tu tabla Interna A.

    Espero haberte Ayudado

    Saludos
    GregoryG

    Comentario

    • Damian
      Junior Member
      • abr
      • 21

      #3
      Comparar tablas

      Originalmente publicado por Gregoryg
      Hola
      Dejame ver si te entendi, tienes dos tablas y quiere eliminar los registros de una tabla dependiendo de los que estan en la otra.

      Bueno lo que se me ocurre hacer le haces un loop a la tabla B ibas haciendo un read table contra la tabla A con los campos que tienes en la tabla B que son Claves en la tabla A. si la variable SY-SUBRC toma el valor de cero conseguistes el registro en la tabla A en la variable SY-TABIX tienes el indice para hacer el delete a tu tabla Interna A.

      Espero haberte Ayudado

      Saludos
      Ante todo muchas gracias, te comento lo realice como vos lo decis pero en vez de usar el read table use el SEARCH, como soy nuevo en sap ahora la duda es cual de los dos es mejor o son iguales.

      Saludos.

      Comentario

      • ibecerra

        #4
        Que tal definitivamente , lo mejor es el READ table, el search es solo para ubicar una cadena ..
        a ver si con este ejemplo se te puede ayudad.,
        donde
        A tiene los camos
        a1
        a2
        a3
        a4
        B tiene los campos
        a1
        a2
        a3
        a5

        loop at A.
        wsytabix = sy-tabix.
        read table B with key a1 = A-a1
        a2 = A-a2.
        if sy-subrc eq 0.
        b-a3 = a-a3.
        modify b index wsytabix.
        endif.
        endlloop.

        Comentario

        • Damian
          Junior Member
          • abr
          • 21

          #5
          Comparacion de dos tablas

          Muchas Gracias - Ahora entendi y funciono.

          Comentario

          Trabajando...