Sumar campo MSEG MENGE

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • javico40
    Member
    • nov
    • 37

    #1

    Sumar campo MSEG MENGE

    Hola, muchas gracias por toda la ayuda que me han dado, mi pregunta es la siguiente, me pidieron sacar la sumatoria de la cantidad y monto de los movimientos, esto sale de MSEG menge y dmbtr, ocurre que menge solo tiene valores positivos, me explicarion que sap define el negativo por el tipo de movimiento bwart, entonces 501 es positivo y 502 es negativo, ahora entendido eso hice mi codigo en el cual capturo el codigo del movimiento, evaluo que tipo de movimiento es, y acumulo o decremento su cantidad dependiendo del tipo de movimiento, el problema es que me dice que menge es tipo P y no se puede tener acceso por subfield, no se que significa eso, existe otra forma de sacar el quantity restando y sumando sin hacer esto, muchas gracias.


    Código:
       movement = wa_matissue-bwart.
    
        IF movement EQ ''.
          wa_outtab-menge2 = wa_matissue-menge.
          wa_outtab-dmbtr2 = wa_matissue-dmbtr.
        ELSEIF movement EQ '201'.
          wa_outtab-menge2 = wa_matissue-menge.
          wa_outtab-dmbtr2 = wa_matissue-dmbtr.
        ELSEIF movement EQ '202'.
          wa_outtab-menge2 = wa_matissue-menge.
          wa_outtab-dmbtr2 = wa_matissue-dmbtr.
        ELSEIF movement EQ '261'.
          wa_outtab-menge2 = wa_matissue-menge.
          wa_outtab-dmbtr2 = wa_matissue-dmbtr.
        ELSEIF movement EQ '262'.
          wa_outtab-menge2 = wa_matissue-menge.
          wa_outtab-dmbtr2 = wa_matissue-dmbtr.
        ELSEIF movement EQ '281'.
          wa_outtab-menge2 = wa_matissue-menge.
          wa_outtab-dmbtr2 = wa_matissue-dmbtr.
        ELSEIF movement EQ '282'.
          wa_outtab-menge2 = wa_matissue-menge.
          wa_outtab-dmbtr2 = wa_matissue-dmbtr.
        ENDIF.
  • DCErick
    Moderator
    • mar
    • 1090

    #2
    El tipo de movimiento no define el signo, lo que define el signo es el campo SHKZG.

    Como te lo expliqué en tu otro post:
    En el campo SHKZG 'Indicador debe/haber' controla el signo del movimiento y con ayuda de este puedes hacer tus tus restas/sumas, este campo toma los valores de S y H (S - Cargo, H - Abono) (S - Positivo, H - Negativo)
    Ejemplo: Si tu haces un movimiento de mercancia con clave 301 (Traspaso entre centros), este te genera nos registros uno para centro emisor y otro para centro receptor. Ambos registros tienen la misma clave de movimeinto 301, en el centro emisor el importe es negativo puesto que es una salida de material y en el centro receptor es positivo puesto que es una entrada de material. Sap lo que hace en sus reportes es ver el campo 'Indicador debe/haber' y si tiene 'H' multiplica la cantidad por -1 para pasarlo a negativo antes de visualizarlo y adicionalmente en la mayoria de los reportes lo pinta con fondo rosa o rojo.
    -------------------
    ¿Dudas para descargar manuales? Ver este tema -> Cómo descargar manuales de la sección "Descargas" ?

    Comentario

    • javico40
      Member
      • nov
      • 37

      #3
      DCErick lo resolvi de una forma bien loca sumando y restando y usando el bwart. muchas gracias por tu respuesta.

      Comentario

      Trabajando...