Enhancement-section

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Abaunus
    Senior Member
    • nov
    • 119

    #1

    Enhancement-section

    Hola amigos. Tengo una consulta con una ampliación:

    Implementé una ampliación a una ENHANCEMENT-SECTION, la cual ya tiene creada una ampliación, de origen estándar. Al activar la mía, la estándar continúa asimismo activada. Mi consulta es: ¿va a pasar siempre por mi ampliación, al ser implementada más recientemente? ¿O existe algún chequeo o condición?

    Les muestro el código:

    Código:
    ENHANCEMENT-SECTION     VBRK_BEARBEITEN_02 SPOTS ES_SAPMV60A.
          CALL FUNCTION 'RV_INVOICE_HEAD_MAINTAIN'
            EXPORTING
              VBRK_I  = VBRK
              FCODE_I = DA_FCODE
            TABLES
              XKOMFK  = XKOMFK
              XTHEAD  = XTHEAD
              XVBFS   = XVBFS
              XVBSS   = XVBSS
              XVBRK   = XVBRK
              XVBRP   = XVBRP
              XVBPA   = XVBPA
              XKOMV   = XKOMV.
    END-ENHANCEMENT-SECTION.
    *$*$-Start: VBRK_BEARBEITEN_02------------------------------------------------------------------$*$*
    ENHANCEMENT 57  OIC_SAPMV60A.    "active version
          CALL FUNCTION 'RV_INVOICE_HEAD_MAINTAIN'
            EXPORTING
              VBRK_I  = VBRK
              FCODE_I = DA_FCODE
            TABLES
              XKOMFK  = XKOMFK
              XTHEAD  = XTHEAD
              XVBFS   = XVBFS
              XVBSS   = XVBSS
              XVBRK   = XVBRK
              XVBRP   = XVBRP
              XVBPA   = XVBPA
              XKOMV   = XKOMV
              XOICQ7  = XOICQ7                       "SO3K128097 AWH
              XOICQ8  = XOICQ8                       "SO3K128097 AWH
              XOICQ9  = XOICQ9                       "SO3K128097 AWH
              XOIUQ9  = XOIUQ9.                      "SO5K000421 AWH
    ENDENHANCEMENT.
    ENHANCEMENT 73  Z_ES_SAPMV60A.    "active version
    
    * Mi código
    
    ENDENHANCEMENT.

    La implementación estándar al ENHANCEMENT-SECTION es ENHANCEMENT 57 OIC_SAPMV60A. "activa
    Y la mía es ENHANCEMENT 73 Z_ES_SAPMV60A. "activa

    En las pruebas que yo hice pasó siempre por mi ampliación, pero necesito corroborar que pase siempre por esa.


    Desde ya, gracias a todos.
    Saludos.
  • DCErick
    Moderator
    • mar
    • 1090

    #2
    Hola,

    ¿va a pasar siempre por mi ampliación, al ser implementada más recientemente? ¿O existe algún chequeo o condición?
    Tengo la misma duda.
    Puedes compartirme si no es mucha molestia ¿Como quedo el tema en tu caso?
    -------------------
    ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

    Comentario

    • Abaunus
      Senior Member
      • nov
      • 119

      #3
      Originalmente publicado por DCErick
      Hola,
      Tengo la misma duda.
      Puedes compartirme si no es mucha molestia ¿Como quedo el tema en tu caso?
      Hola Erick. Te comento: en mi caso, se ejecuta sólo mi ampliación, porque la otra standard implementada, depende de una "Industry Solution", por lo tanto, como esa IS no está implementada en la instalación SAP en la que estoy trabajando, no se va a ejecutar NADA que dependa de ella, ¿se entiende?

      Igual, la duda persiste. Si hay varias implementaciones activas (sean standards o de cliente), de una ENHANCEMENT-SECTION, como es una "sección" de código (no un ENHANCEMENT-POINT), por lógica, debería pasar por una. Pero, ¿es así? Si es así, ¿es siempre la última? ¿O qué criterio se toma en cuenta?

      Estaría bueno seguir con el tema!

      Espero te sirva mi fragil respuesta.

      Un abrazo!

      Comentario

      • DCErick
        Moderator
        • mar
        • 1090

        #4
        Hola Abaunus, se entiende muy bien. Te comento que en mi caso me pidieron comentar el código del ENHANCEMENT-SECTION, no hay forma de tocar el código que sale en el ENHANCEMENT-SECTION pero igual tiene una implementación activa y esa si me deja meterle mano, aún no sé que sea mejor si modificar o reemplazar la implementación creo que en tu caso le diste crear implementación y por esta razón tienes 2 implementaciones activas....

        Pero ahora me dejas con otra duda jeje, en que parte se le indica a una ampliación en que IS se debe de ejecutar

        Igual, la duda persiste. Si hay varias implementaciones activas (sean standards o de cliente), de una ENHANCEMENT-SECTION, como es una "sección" de código (no un ENHANCEMENT-POINT), por lógica, debería pasar por una. Pero, ¿es así? Si es así, ¿es siempre la última? ¿O qué criterio se toma en cuenta?
        ¿No intentaste crear otra implementación para ver por cual pasa?
        Igual y solo puedes tener una implementación de una ENH-SEC por IS.

        Changos lo malo que yo no tengo que hacer ese cambio como para hacer las pruebas xD.
        -------------------
        ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

        Comentario

        • Abaunus
          Senior Member
          • nov
          • 119

          #5
          Originalmente publicado por DCErick
          Hola Abaunus, se entiende muy bien. Te comento que en mi caso me pidieron comentar el código del ENHANCEMENT-SECTION, no hay forma de tocar el código que sale en el ENHANCEMENT-SECTION pero igual tiene una implementación activa y esa si me deja meterle mano, aún no sé que sea mejor si modificar o reemplazar la implementación creo que en tu caso le diste crear implementación y por esta razón tienes 2 implementaciones activas....

          Pero ahora me dejas con otra duda jeje, en que parte se le indica a una ampliación en que IS se debe de ejecutar



          ¿No intentaste crear otra implementación para ver por cual pasa?
          Igual y solo puedes tener una implementación de una ENH-SEC por IS.

          Changos lo malo que yo no tengo que hacer ese cambio como para hacer las pruebas xD.
          A ver:
          1) El código inicial de un ENHANCEMENT-SECTION, como sus implementaciones standards (activas o no), no se pueden tocar. Es como cualquier código standard. Lo que tenés que hacer en ese caso, si se requiere cambiar el código, es justamente crear una implementación de cliente. Y es aquí donde está la duda: en mi caso, siempre que las hice, termina pasando sólo por mi código (como sería lógico). Pero todavía no probé qué pasa si creo otra implementación luego.

          2) Cómo activar una IS no sé, pero a qué IS corresponde algún objeto, lo ves por el paquete al que está asignado dicho objeto. Y las IS se activan en bloque, o sea, todos los objetos que le pertenecen.

          Comentario

          • DCErick
            Moderator
            • mar
            • 1090

            #6
            mmmm Yo sé que no se debe tocar el fuente estandar, pero en este caso SAP no me limita como lo hace con sus demas objetos, no me pide clave de acceso o algo por el estilo, pero pues igual sigue siendo código estandar y no se debe tocar. Esperaré a que el ABAP termine el requerimiento y si recuerdo regreso a comentar que se hizo y como se comporta.
            -------------------
            ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

            Comentario

            • Abaunus
              Senior Member
              • nov
              • 119

              #7
              Originalmente publicado por DCErick
              mmmm Yo sé que no se debe tocar el fuente estandar, pero en este caso SAP no me limita como lo hace con sus demas objetos, no me pide clave de acceso o algo por el estilo, pero pues igual sigue siendo código estandar y no se debe tocar. Esperaré a que el ABAP termine el requerimiento y si recuerdo regreso a comentar que se hizo y como se comporta.
              Sí sí, no te lo decía adocrinando, jaja. Digo, que pensaba que no te permitía modificarlo, como suele ser con lo standard. Qué raro que te lo permita sin clave. ¿Puedo saber el nombre de programa o include, para ver si a mí me lo permite?

              Si te lo permite, no me haría tanto rollo. Si no tenés ganas de crear una implementación, comentá el standard y listo, meté tu código.

              Comentario

              • DCErick
                Moderator
                • mar
                • 1090

                #8
                Originalmente publicado por Abaunus
                Sí sí, no te lo decía adocrinando, jaja. Digo, que pensaba que no te permitía modificarlo, como suele ser con lo standard. Qué raro que te lo permita sin clave. ¿Puedo saber el nombre de programa o include, para ver si a mí me lo permite?

                Si te lo permite, no me haría tanto rollo. Si no tenés ganas de crear una implementación, comentá el standard y listo, meté tu código.
                No hay drama .

                El include es: LV60A003
                Ampliación: ENHANCEMENT 2 OIG_SAPLV60A.
                -------------------
                ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

                Comentario

                • Abaunus
                  Senior Member
                  • nov
                  • 119

                  #9
                  Originalmente publicado por DCErick
                  No hay drama .

                  El include es: LV60A003
                  Ampliación: ENHANCEMENT 2 OIG_SAPLV60A.
                  Jaja, a mí también me permite modificarlo. Pero también depende de una IS... ¿Pasa por esa implementación cuando ejecutás el código? ¿O pasa por el código original ENHANCEMENT-SECTION bedingung_pruefen_003_02 SPOTS es_saplv60a ?

                  Comentario

                  • DCErick
                    Moderator
                    • mar
                    • 1090

                    #10
                    Originalmente publicado por Abaunus
                    Jaja, a mí también me permite modificarlo. Pero también depende de una IS... ¿Pasa por esa implementación cuando ejecutás el código? ¿O pasa por el código original ENHANCEMENT-SECTION bedingung_pruefen_003_02 SPOTS es_saplv60a ?
                    Esto te lo debo, el programador aún no hace esa prueba y no sé cuando la haga. En cuanto tenga mas info la posteo.

                    Lo que si te puedo adelantar es que aquí se tiene activado ambos componentes ( SAP_APPL e IS-OIL ) a los cuales pertenecen la ENHANCEMENT-SECTION original y la ampliación respectivamente.
                    -------------------
                    ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

                    Comentario

                    • Abaunus
                      Senior Member
                      • nov
                      • 119

                      #11
                      Originalmente publicado por DCErick
                      Lo que si te puedo adelantar es que aquí se tiene activado ambos componentes ( SAP_APPL e IS-OIL ) a los cuales pertenecen la ENHANCEMENT-SECTION original y la ampliación respectivamente.
                      Aaaah, entonces calculo que debe pasar sólo por la implementación del ENHANCEMENT, y no por el código original.
                      Editado por última vez por Abaunus; 17/01/2012, 20:06:18.

                      Comentario

                      • DCErick
                        Moderator
                        • mar
                        • 1090

                        #12
                        Originalmente publicado por Abaunus
                        Aaaah, entonces calculo que debe pasar sólo por la implementación del ENHANCEMENT, y no por el código original.
                        Bueno el programador ya intentó comentar el fuente de la ampliación estandar y le pide la clave de acceso al momento de darle grabar jajajaja.
                        -------------------
                        ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

                        Comentario

                        • Abaunus
                          Senior Member
                          • nov
                          • 119

                          #13
                          Originalmente publicado por DCErick
                          Bueno el programador ya intentó comentar el fuente de la ampliación estandar y le pide la clave de acceso al momento de darle grabar jajajaja.
                          Ja, algo raro había

                          Comentario

                          • DCErick
                            Moderator
                            • mar
                            • 1090

                            #14
                            Originalmente publicado por Abaunus
                            Aaaah, entonces calculo que debe pasar sólo por la implementación del ENHANCEMENT, y no por el código original.
                            Bueno se implentó el ENHANCEMENT-SECTION (código original) y este dejó de pasar por el código original y solo pasa por la implementación nueva.

                            En cuanto a la otra implementación estandar pue dice el ABAP que no pasa por esa.
                            Conclusión: Seguimos con la misma duda .
                            -------------------
                            ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

                            Comentario

                            • Abaunus
                              Senior Member
                              • nov
                              • 119

                              #15
                              Originalmente publicado por DCErick
                              Bueno se implentó el ENHANCEMENT-SECTION (código original) y este dejó de pasar por el código original y solo pasa por la implementación nueva.

                              En cuanto a la otra implementación estandar pue dice el ABAP que no pasa por esa.
                              Conclusión: Seguimos con la misma duda .
                              Por lo que decís, no veo duda: pasa por la última implementación activa que se genere!

                              Comentario

                              Trabajando...