El proceso de creación de un modelo 592 se realiza al pulsar el botón "Crear Modelo 592" situado en la pantalla de visualización del listado de declaraciones del monitor. Se pueden elegir una o varias declaraciones, pero únicamente se podrán crear modelos 592 a partir de declaraciones con estado Borrador o Presentada. Si se eligen varias declaraciones, estas deben compartir la misma sociedad, ejercicio y periodo. Además, se permite crear un nuevo modelo 592 con declaraciones en las que ya se haya creado un modelo; estas vendrán con un ID de liquidación asignado.
Este proceso es el encargado de calcular los datos de cabecera y posición del modelo y guardarlos en base de datos, tal y como puede verse en la siguiente imagen.
El proceso de creación realiza la llamada a la definición de la BAdI /PNR/IF_LIBR_EXIS_LIQUIDA, ubicada dentro del punto de ampliación /PNR/ES_LIBRO_EXISTENCIAS_BADI.
La definición de la BAdI /PNR/IF_LIBR_EXIS_LIQUIDA tiene implementada una clase de reserva o clase por defecto (/PNR/CL_LIBR_EXIS_LIQUIDA) que se ejecuta en el caso de no tener implementada ninguna lógica o clase de cliente.
El proceso de creación realiza la llamada al método GENERAR_LIQUIDACION de la BAdI. A continuación se detallan los métodos que se pueden redefinir mediante la implementación custom de la BAdI.
Método | Descripción |
---|---|
/PNR/IF_LIBR_EXIS_LIQUIDA~GENERAR_LIQUIDACION | Método principal. Lleva a cabo todo el proceso de creación de una nueva liquidación. Se recomienda no redefinir este método de la BAdI y tratar de redefinir el resto de métodos que se detallan en la tabla, a no ser que sea necesario. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_NIF | Dato cabecera: calcula el NIF el correspondiente con la sociedad. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_OFICINA_GESTORA | Dato cabecera: calcula la oficina gestora correspondiente con las declaraciones asociadas a la liquidación, las seleccionadas en la pantalla Seleccionar declaraciones, debe indicar el código y ubicación. Si bien la oficina gestora será siempre la misma para todas las declaraciones de una misma Sociedad, puede ocurrir el caso en que existan diferentes Oficinas gestoras, en ese caso el campo se deberá rellenar con doble asterisco “**”. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_PERSONA_CONTACTO | Dato cabecera: calcula la persona de contacto. Se permite al cliente la introducción manual mediante el botón “Editar”. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_NRC | Dato cabecera: vacío. Permite al cliente la introducción manual del número de referencia NRC facilitado por la entidad colaboradora mediante el botón “Editar”. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_CIP_ASIENTO | Dato posición: devuelve el CIP asociado al asiento de una declaración. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_TIPO_IMPOSITIVO | Dato posición: calcula el tipo impositivo correspondiente por tabla de parametrización según el periodo de la declaración. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_EPIGRAFE | Dato posición: devuelve el código epígrafe determinado en la tabla Epígrafe de la parametrización del producto. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_CANTIDAD_PLASTICO | Dato posición: corresponde con la sumatoria de la cantidad de plástico de todos los asientos válidos que tengan el campo Régimen = A y que se encuentren dentro de la declaración para el CIP correspondiente. Se considerar si el movimiento es negativo o positivo para un sumatorio correcto. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_BASE_IMPONIBLE_PNR | Dato posición: corresponde con la sumatoria de la cantidad de PNR de todos los asientos válidos que tengan el campo Régimen = A y que se encuentren dentro de la declaración para el CIP correspondiente. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_CUOTA_INTEGRA | Dato posición: se obtiene al realizar la operación de resta entre la cuota íntegra y la suma de la deducción y la compensación correspondiente. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_COMPENSACION | Dato posición: corresponde con el importe pendiente de compensación correspondiente a periodos de liquidación anteriores. Se permite al cliente la introducción manual mediante el botón “Editar”. |
/PNR/IF_LIBR_EXIS_LIQUIDA~GET_NUM_DECL_AT | Dato posición: devuelve el numero de la declaración AT asociada al asiento. |