Problema con una formula de condición de precio

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Kaligula
    Junior Member
    • jul
    • 5

    #1

    Problema con una formula de condición de precio

    Hola.

    Tenemos un problema con una formula para calcular el valor de una condición de precio nueva. Hemos creado la condición y le hemos asignado la rutina. Cuando creamos la factura vemos que el código pasa por la rutina, y le asigna un valor a la variable XKWERT, pero este valor después no es el que le asigna a la condición. Hemos visto que la rutina es llamada en este punto del código en el include LV61AA55.

    * execute condition value formula not changing xkomv
    * will normally be processed in xkomv_kwert_ermitteln
    IF xkomv-kofrm NE 0 AND wertformel EQ space AND komp-kposn NE 0.
    rettkomv = xkomv.
    xkwert = xkomv-kwert.
    frm_kondi_wert-nr = xkomv-kofrm.
    PERFORM (frm_kondi_wert) IN PROGRAM saplv61a IF FOUND.
    xkomv = rettkomv.
    ENDIF.

    O sea, que la condición se ejecuta pero XKOMV-KWERT no se actualiza con XKWERT. Hemos visto que hay otro punto del código donde se llama a la formula y después se actualiza XKOMV-KWERT, en el include LV61AA43.

    * calculation formula
    IF xkomv-kofrm NE 0.
    wertformel = 'X'.
    xkwert = xkomv-kwert.
    frm_kondi_wert-nr = xkomv-kofrm.
    PERFORM (frm_kondi_wert) IN PROGRAM saplv61a IF FOUND.
    xkomv-kwert = xkwert.
    ENDIF.

    Investigando, hemos visto que tiene algo que ver con el reference value del good issue (campo VBFA-RFWRT). Si este valor es 0 actualiza XKOMV-KWERT, y si es distinto de 0 no lo hace. Pero este campo se actualiza cuando se hace el post good issue de la entrega.

    Espero haberme explicado bien. ¿Sabeis de que depende que la formula se ejecute y actualice el valor de la condición? ¿Es un tema de parametrización?

    Gracias.
  • ibecerra

    #2
    asi es es un tema netamente de parametrizaciones..
    a la hora que se crea una condicion de venta , hay veces el esquema de calculo no lo considera porque otra lado excluye la condicion.

    en el spro , se puede colocar codigo abap por nueva condicion.
    ahora acuerdate que las condiciones de venta para un material o articulo
    van en cascada osea primero pasa por la condicion z...1 , z...2 y z...xx
    quizas z..2 en otro lado la estan excluyendo. por eso yo no toma tu nueva condicion..
    bueno es lo q te puedo decir y entiendo sobre este tema..
    pero te recomiendo que el funcional a cargo vea directamente este tema..
    si te metes a debuggear el estandard,, pasaran semanas y quizas no lo encontraras..suerte..

    Comentario

    • Kaligula
      Junior Member
      • jul
      • 5

      #3
      Lo curioso es que el código si que pasa por la rutina, pero inmediatamente después de la llamada a esta rutina, ignora el valor de XKWERT, como puedes ver en el código que he pegado. No es que lo tenga en cuenta y después lo borre o algo así. Como dices, tiene pinta de que es un tema de parametrización.

      Gracias por tu respuesta.

      Comentario

      • ibecerra

        #4
        definitivamente es un tema de parametrizacion.. algun flag en el spro
        ademas debe haber alguna condicion que haga algo parecido y lo comparas.

        Comentario

        • ollamas
          Junior Member
          • ago
          • 1

          #5
          Se corrio la activacion

          Buen dia en una coacion se me presento un caso parecido a lo que pregunto, no sera que no se corrio la activacion de las rutinas despues de trasnprotar

          esto es desde la se38 se corre el programa(report) RV80HGEN y listo todo normal la condicion de que corra el form si existe se cumlple

          Comentario

          Trabajando...