Anuncio

Colapsar
No hay anuncio todavía.

Acceso a tablas de modificaciones

Colapsar
X
  • Filtrar
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes

  • Acceso a tablas de modificaciones

    Hola,

    Tengo un requerimiento en el que tengo que acceder a las modificaciones de ciertos campos para filtrar unos documentos financieros.
    Sé que las modificaciones se guardan en las tablas CHHDR y CHPOS pero el acceso a estas tablas es muy lento y penaliza mucho la ejecución de mi programa.

    ¿Alguien sabe si es posible acceder a modificaciones de alguna forma que no sea mediante acceso a tablas?

    El único campo por el que puedo filtrar es por el tipo (BELEG) y por las fechas. Ya tenía pensado poner un índice pero quería ver si hay alternativas.

    Gracias
    "Soy el señor Lobo, arreglo problemas"
    http://sapymas.blogspot.com/

  • #2
    Originalmente publicado por bisonye Ver Mensaje
    Hola,

    Tengo un requerimiento en el que tengo que acceder a las modificaciones de ciertos campos para filtrar unos documentos financieros.
    Sé que las modificaciones se guardan en las tablas CHHDR y CHPOS pero el acceso a estas tablas es muy lento y penaliza mucho la ejecución de mi programa.

    ¿Alguien sabe si es posible acceder a modificaciones de alguna forma que no sea mediante acceso a tablas?

    El único campo por el que puedo filtrar es por el tipo (BELEG) y por las fechas. Ya tenía pensado poner un índice pero quería ver si hay alternativas.

    Gracias
    Si accedes con el nombre del documento y la clase, no va a ser tan lento el acceso.

    Por lo cual si vos tenes que buscar cambios que sufrieron N cantidad de documentos entre 2 fechas. Te aconsejo que primero accedas a la tabla maestro de dicho documento, y de ahi filtres unicamente los documentos que estarían incluidos en el rango y despues accedas a la CDHDR con los numeros de los doc.

    Sino fijate si la CDHDRtiene base de datos lógicas. No tengo un SAP a mano para fijarme.

    Saludos

    Comentario


    • #3
      El problema es que tengo que buscar las modificaciones de todos los documentos contables en todas las sociedades, no puedo restringir por rango.

      Creo que es buena idea el buscar las tablas que componen el cluster pero no se como hacerlo, estoy mirando y no hay manera... ¿Sabrías decirme cómo?

      Gracias
      "Soy el señor Lobo, arreglo problemas"
      http://sapymas.blogspot.com/

      Comentario


      • #4
        Originalmente publicado por bisonye Ver Mensaje
        El problema es que tengo que buscar las modificaciones de todos los documentos contables en todas las sociedades, no puedo restringir por rango.

        Creo que es buena idea el buscar las tablas que componen el cluster pero no se como hacerlo, estoy mirando y no hay manera... ¿Sabrías decirme cómo?

        Gracias
        No hay forma que un reporte de SAP te corra online y te traiga todas las modificaciones de todos los doc. contables de todas las sociedades. Si ellos necesitan esa información, van a tener que correr el reporte de fondo.

        Igual si vas a tener que recorrer toda la CDHDR te aconsejo que te armes una base de datos lógica.

        por ejemplo existe una llamada AAV pero que es para docuemntos de venta - SD. Pasa por la VBAK y después por la CDHDR y la CDPOS, pero no existe ninguna de FI

        Así que deberías crearla vos mismo. Eso me parece que va a ser lo más performante que podes armar, pero desde ya te digo ... no hay chances de correr un reporte como ese online. Armes como lo armes.

        Saludos

        Comentario


        • #5
          OK K-MUS, muchas gracias por la ayuda.

          Saludos
          "Soy el señor Lobo, arreglo problemas"
          http://sapymas.blogspot.com/

          Comentario


          • #6
            Hola.

            Para la recuperacion de las modificaciones, una vez que tengas los documentos a los que le vas a determinar las modificaciones, puedes utilizar las funciones "CHANGEDOCUMENT_READ_HEADERS" y "CHANGEDOCUMENT_READ_POSITIONS" para determinar las modificaciones realizadas en una fecha concreta.

            Un Saludo.
            SAP solo es el medio a través del cual se expresa nuestra imaginación.

            Comentario


            • #7
              Gracias Loco,

              La selección de la función es casi la misma que hago yo (la función hace más cosas, ordena, filtra...) El problema es que no se que documentos son los que tengo que revisar, en realidad son todos....

              Saludos
              "Soy el señor Lobo, arreglo problemas"
              http://sapymas.blogspot.com/

              Comentario


              • #8
                Bueno, el acceso a la tabla de cabecera es por Clase de Objeto (campo OBJECTCLAS, con un valor fijo para los documentos de FI) y Valor del Objeto (campo OBJECTID, probablemente sea una concatenacion de la clave de los documentos), por lo que te puedes montar una tabla interna con los valores del OBJECTID y realizar un SELECT FOR ALL ENTRIES para acceder a los datos de la cabecera de las modificaciones.
                Para las posiciones, puedes utilizar el Numero de Modificacion recuperado en la tabla de cabecera.
                SAP solo es el medio a través del cual se expresa nuestra imaginación.

                Comentario

                Trabajando...
                X