QUE HACE LA SENTENCIA "IMPORT ti_xxx FROM MEMORY ID"

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • acha3318
    Senior Member
    • abr
    • 182

    #1

    QUE HACE LA SENTENCIA "IMPORT ti_xxx FROM MEMORY ID"

    Saludos,

    Tengo una gran inquietud acerca de una sentencia que no he podido entender.

    EXPORT ti_out FROM MEMORY ID sy-repid.
    .
    .
    .
    IMPORT ti_out FROM MEMORY ID sy-repid.

    Lo vi en un programa pero no entendi que hace.

    Gracias por sus respuestas.
  • ibecerra

    #2
    hola, es facil mira te explico.
    1. envia la tabla interna ti_out con todos sus datos a memoria y le coloca un id en este caso el nombre del programa q lo esta invocando , vale decir
    que le esta poniendo un alias.
    EXPORT ti_out FROM MEMORY ID sy-repid.


    2.
    trae la informacion q has exportado a memoria mediante el nombre del alias
    IMPORT ti_out FROM MEMORY ID sy-repid.

    Comentario

    • acha3318
      Senior Member
      • abr
      • 182

      #3
      Gracias ibecerra, me fué muy claro la explicación.

      Entonces, se podría decir que estas sentencias, aplicarian para obtimizar el performance, en la ejecución de un programa, para cuando hago accesos a tablas pesadas como la MKPF o la MSEG por ejemplo?

      Gracias mil, de nuevo.

      Comentario

      • ibecerra

        #4
        no, esas sentencias no tienen para nada que ver con la optimizacion de la performance.
        solo te sirve por ejemplo
        tengo el programa z111111 y hago el import de variables y luego invoco el programa z222222 ya hago el exporte de estas variables.
        ojo que z111111 y z22222 son independientes.

        Comentario

        • acha3318
          Senior Member
          • abr
          • 182

          #5
          Perfecto ya comprendo....

          Gracias, por tu excelente explicación...

          acha.

          Comentario

          • shenciso
            Junior Member
            • jul
            • 23

            #6
            Estimado ibecerra,

            Como continuidad al tema de IMPORT_LIST_FROM_MEMORY he realizado un programa que invoca a la balanza de comprobación (F.01) y posteriormente toma el listado para cargarlo en la transacción F-02.

            Existe alguna función para limpiar la memoria.

            Como medida de seguridad quiero desaparecer los datos de memoria para evitar que el usuario contabilice dos veces el mismo documento importado a memoria.

            Saludos.
            Shenciso
            Coordinador de sistemas SAP R/3
            Corporativo Corvi, S.A. de C.V.

            Comentario

            • camaron
              Junior Member
              • jul
              • 14

              #7
              Originalmente publicado por shenciso
              Estimado ibecerra,

              Como continuidad al tema de IMPORT_LIST_FROM_MEMORY he realizado un programa que invoca a la balanza de comprobación (F.01) y posteriormente toma el listado para cargarlo en la transacción F-02.

              Existe alguna función para limpiar la memoria.

              Como medida de seguridad quiero desaparecer los datos de memoria para evitar que el usuario contabilice dos veces el mismo documento importado a memoria.

              Saludos.
              claro que si se puede, utilizando el comando FREE MEMORY

              Comentario

              • veertigo9
                Junior Member
                • ago
                • 7

                #8
                Consulta usando export e import

                Alguno de ustedes me podría decir si es posible aplicar un export y un import dentro de un mismo programa, es decir, se llame el programa se aplique el export, se salga del programa y al ingresar al ejecutarse el mismo programa se pueda obtener lo que se paso a memoria usando el import ? Estoy intentando pero no me da resultado.

                Saludos.

                Comentario

                • K-MUS
                  Member
                  • feb
                  • 87

                  #9
                  Originalmente publicado por veertigo9
                  Alguno de ustedes me podría decir si es posible aplicar un export y un import dentro de un mismo programa, es decir, se llame el programa se aplique el export, se salga del programa y al ingresar al ejecutarse el mismo programa se pueda obtener lo que se paso a memoria usando el import ? Estoy intentando pero no me da resultado.

                  Saludos.
                  Hola, no te está funcionando porque el ambito del IMPORT/EXPORT es a nivel ABAP (mismo programa) si vos necesitas pasar información entre programas distintos así que tenes que usar el adicional SHARED MEMORY o TABLE BUFFER de la sentencia IMPORT. Funciona de la misma manera simplemente que el buffer es ubicado en distinto ambito de visibilidad.

                  Pone la ayuda (F1) del import y fijate los opciones adicionales. No estoy en este momento con SAP así que no te puedo dar la sentencia exacta.

                  Saludos

                  Comentario

                  Trabajando...