Tabla Interna.....Auxilioooooooooes urgente

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • nayita
    Member
    • jun
    • 48

    #1

    Tabla Interna.....Auxilioooooooooes urgente

    Estimados Amigos,

    Tengo 2 Tablas Internas , una de movimiento y otra de configuración

    la tabla de movimiento al final tiene que agregar un registro de totales si tiene el flag de total en la tabla de configuración, se puede hacer y como.
    ADJUNTO L ARCHIVO

    TABLA1

    CODIGO DESCRIPCION
    CM1 XXXXXXXXXXX
    CM1 ZZZZZZZZZZZ
    CM2 AAAAAAAAAAA
    CM3 BBBBBBBBBBB
    CM3 CCCCCCCCCCC

    TABLA 2
    CODIGO FLAG DE TOTALES
    CM1 SI
    CM2 NO
    CM3 SI


    RESULTADO EN LA TABLA1 INTERNA (según la configuración se debe ingresar un total por cada codigo)

    CODIGO DESCRIPCION
    CM1 XXXXXXXXXXX
    CM1 ZZZZZZZZZZZ
    TOTAL ....................
    CM2 AAAAAAAAAAA
    CM3 BBBBBBBBBBB
    CM3 CCCCCCCCCCC
    TOTAL .................

    Alguien tiene una solución al problema.

    Saludos,


    Naya
  • nievesmp
    Member
    • abr
    • 95

    #2
    Puedes trabajar con una tercera tabla, haciendo loop a la primera tabla e ir sumando según campo, comparando con un read previo en el index correspondiente de la segunda tabla (los flag) antes de cargar el valor del total en la tercera tabla.

    Creo que no tiene complicación, espero te sirva.

    Comentario

    • nayita
      Member
      • jun
      • 48

      #3
      Puedes darme un ejemplo... comopuedo mover un bloque de registros de una tabla interna a otra.

      Comentario

      • Duarco
        Member
        • jun
        • 54

        #4
        Hola, se me ocurre que esta pueda ser una solución.

        CLEAR TABLA3[].
        LOOP AT TABLA2 INTO WA_TABLA2.
        CLEAR: WA_TABLA3.
        LOOP AT TABLA 1 INTO WA_TABLA1 WHERE COD = WA_TABLA2-COD.
        APPEND WA_TABLA1 TO TABLA3.
        IF WA_TABLA2-FLAG = X.
        WA_TABLA3-TOTAL = WA_TABLA3-TOTAL + WA_TABLA1-TOTAL.
        ENDIF.
        ENDLOOP.
        IF WA_TABLA2-FLAG = X.
        APPEND WA_TABLA3 TO TABLA3.
        ENDIF.
        ENDLOOP.

        Espero sea de tu ayuda jejeje.

        Comentario

        • ballan
          Senior Member
          • oct
          • 671

          #5
          Código:
          Loop At Tabla1 Into Linea1.
          
          Move-corresponding Linea1 To Linea3
          
          Read Table Tabla2 Into Linea2 With Key Campotabla2 = Campotabla1
          
          If Linea2-flag De Totales = 'si'.
          
          Collect Linea3 Into Tabla3
          
          Else.
          
          Append Linea3 To Tabla 3.
          
          Endif.
          
          Endloop.

          Comentario

          Trabajando...