Todos somos junior, por más experiencia que tengas, siempre habrá retos.

Buscar este blog

11 feb 2021

Validación: Impuestos que se pueden usar con BP comunitario.

 En algunos proyectos, y también a raíz del Brexit, se está pidiendo que se valide que ciertos impuestos solo se usen con clientes UE.

Si el cliente no es UE, pues no se pueden usar.

Tienes dos opciones, incluir impuestos individualmente, algo que se puede hacer si son dos o tres, o incluir los impuestos en un SET e incluir en la condición el set.

Prerequisito.


1.

 ( BKPF-BUKRS = 'EMP1' OR BKPF-BUKRS = 'EMP2' ) AND

 BSEG-KOART = 'K' AND ( BSEG-MWSKZ = 'AA' OR

 BSEG-MWSKZ = 'AB' )


Opción 2 prerrequisito

 ( BKPF-BUKRS = 'EMP1' OR BKPF-BUKRS = 'EMP2' ) AND

 BSEG-KOART = 'K' AND  (BSEG-MWSKZ IN NOMBREDELBCSET)


Condición EXIT

Código en programa ZRGGBR000 (este código os lo informo pero lo mejor es que lo incluya un programador ya que la exit hay que incluirla en dos puntos del programa)


FORM zcorrelativo USING b_result.        " SII tax in UE.


  DATA : ls_t005 TYPE t005,

         ls_lfa1 TYPE lfa1.


  b_result = b_true.


  SELECT SINGLE *

    FROM lfa1

    INTO ls_lfa1

    WHERE lifnr = bseg-lifnr.


  IF sy-subrc IS INITIAL.

    SELECT SINGLE *

      FROM t005

      INTO ls_t005

      WHERE land1 = ls_lfa1-land1

      AND   xegld = 'X'.

*

    IF NOT sy-subrc IS INITIAL.

* Trigger ZFI/0numero de mensaje.

      b_result = b_false.  "==> error

    ENDIF.

  ENDIF.

No hay comentarios:

Publicar un comentario