Essays.club - Ensayos gratis, notas de cursos, notas de libros, tareas, monografías y trabajos de investigación
Buscar

SAP Activos

Enviado por   •  17 de Junio de 2023  •  Apuntes  •  1.140 Palabras (5 Páginas)  •  155 Visitas

Página 1 de 5

Especificación Funcional Reporte de Proveedores con detracciones.

  1. La pantalla de selección debe contener los filtros de Sociedad (BSIK-BUKRS, P_SOCIEDAD) (Obligatoria), Acreedor (BSIK-LIFNR, P_ACREEDOR), Clase de Documento (BSIK-BLART, P_CLDOC), Fecha de Contabilización (BSIK-BUDAT, P_FCONTAB) y Abierta en Fecha Clave (BSIK-BUDAT, P_FCLAVE) (Obligatoria).

El campo P_FCLAVE debe traer por defecto el día actual.

  1. El reporte debe realizar un select a la tabla BSIK:

SELECT * FROM BSIK INTO T_DATA

WHERE BUKRS = P_SOCIEDAD (parámetro de entrada)

        LIFNR IN P_ACREEDOR (parámetro de entrada)

        BLART IN P_CLDOC (parámetro de entrada)

        BUDAT LE P_FCLAVE (parámetro de entrada)

        BUDAT IN P_FCONTAB (parámetro de entrada)

SELECT * FROM BSIK APPENDING T_DATA

WHERE BUKRS EQ P_SOCIEDAD (parámetro de entrada)

        LIFNR IN P_ACREEDOR (parámetro de entrada)

        BLART IN P_CLDOC (parámetro de entrada)

        AUGDT GT P_FCLAVE (parámetro de entrada)

        BUDAT LE P_FCLAVE (parámetro de entrada)

        BUDAT IN P_FCONTAB (parámetro de entrada)

Ordenamos el reporte por sociedad ejercicio y num. de documento

  1. Con la data resultante realizamos un select a la bkpf indexando la tabla interna con un for all entries

SELECT FROM BKPF INTO T_BKPF

FOR ALL ENTRIES T_DATA

WHERE BUKRS EQ T_DATA-BUKRS

        BELNR EQ T_DATA-BELNR

        GJAHR EQ T_DATA-GJAHR

  1. Eliminamos los documentos anulados por FI y MM.

LOOP T_BKPF

IF T_BKPF-AWTYP EQ ‘BKPF’.

IF T_BKPF-XREVERSAL EQ ‘2’.

        *ELIMINAMOS EL REGISTRO DE LA BSIK

        DELETE T_BSIK WHERE BELNR EQ T_BKPF-BELNR AND GJAHR EQ T_BKPF-GJAHR.

ELSE T_BKPF-XREVERSAL EQ ‘1’

        SELECT BUDAT FROM BKPF INTO W_BUDAT

        WHERE BUKRS EQ T_BKPF-BUKRS

                BELNR EQ T_BKPF-STBLG

                GJAHR EQ T_BKPF-STJAH

        IF W_BUDAT < P_FCLAVE

        *ELIMINAMOS EL REGISTRO DE LA BSIK

        DELETE T_BSIK WHERE BELNR EQ T_BKPF-BELNR AND GJAHR EQ T_BKPF-GJAHR.

        ENDIF.

ENDIF.

ELSEIF T_BKPF-AWTYP EQ ‘RMRP’.

        SELECT STBLG STJAH FROM RBKP

        WHERE BELNR EQ T_BKPF-AWKEY(10)

                GJAHR EQ T_BKPF-AWKEY+10(4).

        IF STBLG NE ‘ ’.

        *Con lo obtenido hacemos otro select a la RBKP

        SELECT BUDAT FROM RBKP

        WHERE BELNR EQ STBLG

                GJAHR EQ STJAH.

        IF RBKP-BUDAT< P_FCLAVE.

                

                *ELIMINAMOS EL REGISTRO DE LA BSIK

                DELETE T_BSIK WHERE BELNR EQ T_BKPF-BELNR AND GJAHR EQ T_BKPF-GJAHR.

        ENDIF.

        ENDIF.

ENDIF.

ENDLOOP

  1. De lo obtenido realizamos un FOR ALL ENTRIES  con la WITH_ITEM y LFA1.

SELECT FROM WITH_ITEM INTO T_DETRAC

FOR ALL ENTRIES T_BSIK

WHERE BUKRS EQ T_BSIK-BUKRS

        BELNR EQ T_BSIK-BELNR

...

Descargar como  txt (4.5 Kb)   pdf (50.4 Kb)   docx (196.8 Kb)  
Leer 4 páginas más »
Disponible sólo en Essays.club