01.Dlver Parametrizacion Cheques Emitidos

51
Implementation Paper Índice ÍNDICE...........................................................................1 OBJETIVO.........................................................................2 PROBLEMA.........................................................................2 DESCRIPCIÓN BREVE.................................................................2 CLAVE DE BÚSQUEDA.................................................................2 DESCRIPCIÓN DETALLADA..............................................................2 PANTALLAS........................................................................2 SOLUCIÓN.........................................................................3 DESCRIPCIÓN...................................................................... 3 Parametrización de las vías de pago de emisión y caída para cheques de pago diferido.................................................................. 3 Sustitución para vía de pago CPD-caída por pago automático...............12 Creación de job para ZRFCHKU00_CME (asigna nro cheque en el campo asignación del documento de pago)-estándar modificado para que tenga en cuenta los Cheques de pago diferido (CME)................................12 Explicación de la utilización de la tr. F110 para generar la caída de los CPD y su utilización con el reporte ZFIBIASIG (carga el campo asignación de la REGUP en el campo asignación del documento de pago)...................18 Planificación de caída de los CPD con reporte ZFIBIASIG para que sea transparente para el usuario.............................................23 Activación de user exit para que Extracto automático cargue el nro de cheque (o de operación) en el campo asignación...........................26 Anexo I: Código del programa ZRFCHKU00_CME...............................29 Anexo IIa: Código del programa ZFIBIASIG.................................37 Anexo IIb: Código del programa ZFIBIASIG_INCLUDE.........................39 Firmas..........................................................................42 Fecha : 6/06/2022 Página 1 de 51

Transcript of 01.Dlver Parametrizacion Cheques Emitidos

Page 1: 01.Dlver Parametrizacion Cheques Emitidos

Implementation Paper

Índice

ÍNDICE.....................................................................................................................................................................................1

OBJETIVO...............................................................................................................................................................................2

PROBLEMA............................................................................................................................................................................2

DESCRIPCIÓN BREVE..............................................................................................................................................................2CLAVE DE BÚSQUEDA.............................................................................................................................................................2DESCRIPCIÓN DETALLADA.....................................................................................................................................................2PANTALLAS.............................................................................................................................................................................2

SOLUCIÓN..............................................................................................................................................................................3

DESCRIPCIÓN..........................................................................................................................................................................3Parametrización de las vías de pago de emisión y caída para cheques de pago diferido...........................................3Sustitución para vía de pago CPD-caída por pago automático................................................................................12Creación de job para ZRFCHKU00_CME (asigna nro cheque en el campo asignación del documento de pago)-estándar modificado para que tenga en cuenta los Cheques de pago diferido (CME).............................................12Explicación de la utilización de la tr. F110 para generar la caída de los CPD y su utilización con el reporte ZFIBIASIG (carga el campo asignación de la REGUP en el campo asignación del documento de pago).............18Planificación de caída de los CPD con reporte ZFIBIASIG para que sea transparente para el usuario..................23Activación de user exit para que Extracto automático cargue el nro de cheque (o de operación) en el campo asignación.................................................................................................................................................................26Anexo I: Código del programa ZRFCHKU00_CME..............................................................................................29Anexo IIa: Código del programa ZFIBIASIG.........................................................................................................37Anexo IIb: Código del programa ZFIBIASIG_INCLUDE.....................................................................................39

Firmas......................................................................................................................................................................................42

Fecha : 7/04/2023 Página 1 de 44

Page 2: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

ObjetivoDocumentar el diseño integral de una solución para cheques emitidos, contando con que el campo asignación de la partida del banco quede cargado con el nro de cheque, para poder conciliarlo con el extracto bancario.

Problema

Descripción Breve

Consolidar una solución de las varias que existen para resolver el problema indicado arriba en el contexto de las empresas que operan en Argentina1.

Clave de búsqueda

Cheque, Cheque de pago diferido, CPD, Campo Asignación, ZUONR, CME, FBZP, FBKP, extracto bancario, F110, F-53, F-58, FF.5

Descripción Detallada

Se buscó diseñar una solución para cheques emitidos (al día y de pago diferido con CME) y con la característica de que el campo asignación de la partida del banco quede cargada con el nro de cheque, para poder conciliar, así sea que el pago haya sido efectuado de manera manual (F-53+FCH5, F-40+FCH5, o F-58) o automática (F110).

Pantallas

N/A

1

Fecha : 7/04/2023 Página 2 de 44

Page 3: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Solución

Descripción

Parametrización de las vías de pago de emisión y caída para cheques de pago diferido

Operaciones CME para EFECTOS/CPDPath: IMG Gestión Financiera / Contabilidad Bancaria / Operaciones Contables / Operaciones con Efectos / Efectos a Paga / Almacenar cuenta asociada alternativa para efectos a pagar Transacción: FBKP

Se parametriza el indicador CME = S (Efectos Descontables) según los siguientes parámetros:

Fecha : 7/04/2023 Página 3 de 44

Page 4: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

211210003 = Cheques diferidos emitidos

Sociedad para PagosPath: IMG Gestión Financiera / Contabilidad de Deudores y Acreedores / Operaciones Contables / Salida de Pagos / Salida de Pagos Automática / Selección Vía de Pago/Banco para programa de pagos / Instalar todas las Sociedades para PagosTransacción: FBZP

Seleccionar la sociedad y configurarla para Pagos. Lo importante es colocar aquí el indicador CME de cheques emitidos, que en este caso es el S:

Fecha : 7/04/2023 Página 4 de 44

Page 5: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

CME = A (Anticipos)CME = F (Solicitud de Anticipos)CME = S (Cheques Diferidos). Para poder colocar aquí el S, se debió modificar temporalmente sus características (FBKP > K S)

se agregó en esta pantalla de FBZP, y se volvió a colocar como Efecto

Sociedad PagadoraPath: IMG Gestión Financiera / Contabilidad de Deudores y Acreedores / Operaciones Contables / Salida de Pagos / Salida de Pagos Automática / Selección Vía de Pago/Banco para programa de pagos / Instalar Sociedad Pagadora para Pagos

Fecha : 7/04/2023 Página 5 de 44

Page 6: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Transacción: FBZP

Días de vencimiento de los efectos. En este caso se indicó que un cheque diferido pude emitirse con vencimiento mínimo a 1 día y máximo a 360 días

Vías de Pago en el PaísPath: IMG Gestión Financiera / Contabilidad de Deudores y Acreedores / Operaciones Contables / Salida de Pagos / Salida de Pagos Automática / Selección Vía de Pago/Banco para programa de pagos / Vías de Pago por País para PagosTransacción: FBZP

Las vías de pago parametrizadas que nos importan son la 1 y la 2:

Fecha : 7/04/2023 Página 6 de 44

Page 7: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

La configuración interna de una vía de pago para cheques es la siguiente:

Si “crear efecto antes vencimiento” está tildado, no aparece el campo Fecha vencimiento en el programa de pagos automáticos:

Fecha : 7/04/2023 Página 7 de 44

Page 8: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Nótese que se utiliza el programa de pagos estándar de SAP R/3. (En la configuración de las vías de pago por sociedad, se asignará el correspondiente formulario para las vías de pago de cheques automáticos).

Notar arriba que se define el programa ZFIBIASIG para que se ejecute en la caída del cheque y genere un batch input en el campo asignación de la partida de banco.

Monedas permitidas: en todas, ARS.

Fecha : 7/04/2023 Página 8 de 44

Falta Asignar el programa a via de pago

Page 9: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Vías de Pago en la SociedadPath: IMG Gestión Financiera / Contabilidad de Deudores y Acreedores / Operaciones Contables / Salida de Pagos / Salida de Pagos Automática / Selección Vía de Pago/Banco para programa de pagos / Vías de Pago por Sociedad para PagosTransacción: FBZP

Se deben asignar todas las vías de pago creadas en el país, para poder ser utilizadas en cada sociedad:

Fecha : 7/04/2023 Página 9 de 44

Page 10: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Esta via de pago no debe agrupar partidas (de ahí que se marcó Pago indiv.), porque tiene que haber una por cada CME de Cheques diferidos que se dé de baja (c/u representa a 1 cheque).

Determinación de BancosPath: IMG Gestión Financiera / Contabilidad de Deudores y Acreedores / Operaciones Contables / Salida de Pagos / Salida de Pagos Automática / Selección Vía de Pago / Banco para programa de pagos / Determinación de Bancos para PagosTransacción: SPRO

En este punto se deben configurar las características de los bancos relacionados con la vía de pago a nivel de sociedad. En el orden de jerarquía se configuran todas las vías de pago con su jerarquía 1 y su banco propio correspondiente a cada vía de pago. Nos importan la 1 y la 2:

En las cuentas bancarias se configuran todas las vías de pago con su correspondiente cuenta bancaria y cuenta contable asociada. Nos importan la 1 y la 2:

Fecha : 7/04/2023 Página 10 de 44

Page 11: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Nótese que la cuenta transitoria es la cuenta clearing pagadora de cada uno de los bancos correspondientes a la vía de pago. En caso de utilizarse una vía de pago para cheques diferidos, también se incorpora la cuenta de compensación. Para cargar la cta transitoria en la vía de pago 2, se modificó esta vía de pago para que sea temporalmente una cuenta de efectos y luego se revirtió ese cambio.

En los importes previstos se configuran los topes para salidas de pago por cuenta bancaria:

Sustitución para vía de pago CPD-caída por pago automático

Transacción OBBHEsta sustitución hace que si se trata de un documento de pago, de un CME de acreedores Haber (39), si ese CME es el “S” (parametrizado arriba) y la vía de pago es 1, la reemplace por la vía de pago 2 (que el prog. de pagos automáticos levantará para hacer caer en su fecha de vencimiento).

Fecha : 7/04/2023 Página 11 de 44

Page 12: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

En el ejemplo se incluyó como clase de documento la Z3 porque es la de Carga Inicial de Partidas Abiertas de Proveedores.

Creación de job para ZRFCHKU00_CME (asigna nro cheque en el campo asignación del documento de pago)-estándar modificado para que tenga en cuenta los Cheques de pago diferido (CME)

Primero se debe guardar la variante (esto se hace sólo 1 vez)

TX. FCHU

Fecha : 7/04/2023 Página 12 de 44

Page 13: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Grabar como variante.

Fecha : 7/04/2023 Página 13 de 44

Page 14: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Al campo Fecha creación se lo marca como Variable de Selección...

Fecha : 7/04/2023 Página 14 de 44

Page 15: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Fecha : 7/04/2023 Página 15 de 44

Page 16: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Colocar la fecha que se desee.

.

Se programará un job para que su ejecución sea automática cada 12 hs: SM36

Fecha : 7/04/2023 Página 16 de 44

Page 17: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Grabar y clic en , fecha hora:

Luego , , ,

Y grabar.

El usuario de finanzas puede controlar la asignación de los cheques:SM37

Fecha : 7/04/2023 Página 17 de 44

Page 18: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Si posee el id , generó un spool. Se lo marca y clic en .

Haciendo clic en vemos los cheques asignados:

Fecha : 7/04/2023 Página 18 de 44

Page 19: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Esto significa que el pago (con cheque) tendrá el nro de cheque (Entorno > Información de cheques) en el campo asignación de la posición correspondiente. Si el pago fue automático (F110 con Vía de Pago que genera CME e imprime cheque ), será en la partida 39S del CME ...

Y si fue manual (F-58 o F-53 + FCH5), en la partida 50 del Banco.

Cheques que no pudieron ser asignados automáticamente:

Los cheques que salen en el log como “referencia a actualizar manualmente”:

Son aquellos que SAP no pudo asignar directamente por ej., porque hay más de una partida pagadora apuntando al mismo cheque, o dos cheques al mismo doc. de pago (FB03 > Entorno > Info cheques):

Fecha : 7/04/2023 Página 19 de 44

Page 20: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

En este caso el usuario debe ingresar a cada uno de esos documentos y asignar el cheque manualmente (FB02 > Nro doc > Doble clic en la partida a modificar)

Explicación de la utilización de la tr. F110 para generar la caída de los CPD y su utilización con el reporte ZFIBIASIG (carga el campo asignación de la REGUP en el campo asignación del documento de pago)

Todos los días se debe generar la caída de los Cheques de Pago Diferido que hayan vencido (Mariva, Via de Pago 2).

De manera similar a lo visto previamente, se genera la variante para el programa ZFIBIASIG:

Fecha : 7/04/2023 Página 20 de 44

Page 21: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

En la SE38 ejecutar el programa ZFIBIASIG

Fecha : 7/04/2023 Página 21 de 44

Page 22: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Para el ejemplo se utilizarán los cheques vencidos de los siguientes acreedores:

Fecha : 7/04/2023 Página 22 de 44

Page 23: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

F110:

Fecha : 7/04/2023 Página 23 de 44

Page 24: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

En la solapa de Impresión... se coloca la variante definida anteriormente:

Si la fecha de ejecucion de la propuesta (en el ejemplo, 19.06.05), es la fecha del día, no

es necesario . Si no lo es, actualizarla y colocarle la fecha correcta.

Clic en marcando crear medio de pago:

Fecha : 7/04/2023 Página 24 de 44

Page 25: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Las partidas abiertas CME han sido compensadas y ya no figuran como partidas abiertas (este es un listado de partidas compensadas):

La posicion 29S cancela el CME pendiente, y en la posición 50 del banco se ha asentado el nro de cheque:

Como se ve en el mayor que sigue, los cheques han pasado a la cuenta pagadora del banco, y en el campo asignación figura el nro de cheque:

Fecha : 7/04/2023 Página 25 de 44

Page 26: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Planificación de caída de los CPD con reporte ZFIBIASIG para que sea transparente para el usuario

Transacción F110S

Fecha : 7/04/2023 Página 26 de 44

Page 27: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Notar, en la variante, los campos de fecha que se marcan como Variable de selección:

Fecha : 7/04/2023 Página 27 de 44

Page 28: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Grabar

Tr. SM36

Fecha : 7/04/2023 Página 28 de 44

Page 29: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Luego , , , y grabar para liberarlo.

Los documentos generados cada día se pueden chequear en el log del job o también listando los documentos (FB03) ya que el id.de propuesta y su fecha se graban en el texto de cabecera de los documentos.

Activación de user exit para que Extracto automático cargue el nro de cheque (o de operación) en el campo asignación

Transacción SMODAmpliación FEB00001Verificar

Doble clic en el EXIT.

Fecha : 7/04/2023 Página 29 de 44

Page 30: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Estamos en el Módulo funciones EXIT_RFEBBU10_001. Doble clic en INCLUDE ZXF01U01 para crearlo.

Este es el código para que el nro de cheque vaya al campo asignación, y que además en el texto de posición se grabe: EXT-EL + (Código de operación empresarial datanet) + (Texto que trae Datanet)

*&---------------------------------------------------------------------**& Include ZXF01U01 **& HUG - Softtek Argentina - 21.06.2005 **&---------------------------------------------------------------------*e_febko = i_febko.e_febep = i_febep.

IF sy-tcode = 'FF.5'. IF NOT e_febep-chect IS INITIAL. "Ins e_febep-zuonr = e_febep-chect. ELSE. "Ins e_febep-zuonr = e_febep-valut. "Ins ENDIF. "Ins

READ TABLE t_febre INDEX 2.

CONCATENATE 'EXT-EL ' e_febep-vorgc "Código de operación empresarial datanet t_febre-vwezw "Texto que trae la posición de Datanet INTO e_febep-sgtxt "Texto de posición SEPARATED BY space.ELSE.

ENDIF.

Grabar y activar.

En la SMOD, marcar el exit y activarlo

Ej:

Fecha : 7/04/2023 Página 30 de 44

Page 31: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Anexo I: Código del programa ZRFCHKU00_CME

************************************************************************* Copy The Check Number In A Reference Document Field **----------------------------------------------------------------------** -> If a further field of the document is to be filled with ** the check number, additional lines, which correspond ** with ** (double star) characterized lines, must are inserted. ************************************************************************** Hugo Glagovsky Softtek-21/06/2005* Copia del programa estándar RFCHKU00 y modificación para adaptarlo a la* utilización de CME (para cheques de pago diferido).************************************************************************

REPORT ZRFCHKU00_CME MESSAGE-ID FS NO STANDARD PAGE HEADING LINE-SIZE 132.

*----------------------------------------------------------------------** Data Declarations **----------------------------------------------------------------------*INCLUDE FF05LCDV. "function module BELEG_WRITE_DOCUMENTINCLUDE FF05LCDF. "form CD_CALL_BELEG

TABLES:* -> If further fields of a document are to be filled with* the check number, additional reference flags must be maintained* in the value table of the domain of PAYR-IREFE. PAYR, "Payment transfer medium file T001, "Company Codes BSEG, "Accounting document segment RFSDO, "Data elements for selection BSEC, BSED, BSET. "Dummy Tables for "function module CHANGE_DOCUMENT

TYPES: BEGIN OF PROTOCOL_LINE, "Protocol line ZBUKR LIKE PAYR-ZBUKR, VBLNR LIKE PAYR-VBLNR, GJAHR LIKE PAYR-GJAHR, HBKID LIKE PAYR-HBKID, HKTID LIKE PAYR-HKTID, RZAWE LIKE PAYR-RZAWE, CHECT LIKE PAYR-CHECT, END OF PROTOCOL_LINE.

RANGES: R_LAUFD FOR PAYR-LAUFD, "Date on which the program is to be run R_LAUFI FOR PAYR-LAUFI. "Additional identification

DATA: T_PAYR LIKE PAYR OCCURS 0 WITH HEADER LINE, T_BKPF LIKE BKPF OCCURS 1 WITH HEADER LINE, T_BSEG LIKE BSEG OCCURS 0 WITH HEADER LINE, T_BKDF LIKE BKDF OCCURS 0 WITH HEADER LINE, T_BSEC LIKE BSEC OCCURS 0 WITH HEADER LINE, T_BSED LIKE BSED OCCURS 0 WITH HEADER LINE, T_BSET LIKE BSET OCCURS 0 WITH HEADER LINE, T_LAUFK LIKE ILAUFK OCCURS 0 WITH HEADER LINE, T_UPDATE TYPE PROTOCOL_LINE OCCURS 0 WITH HEADER LINE, T_QUEUE TYPE PROTOCOL_LINE OCCURS 0 WITH HEADER LINE, T_ERROR TYPE PROTOCOL_LINE OCCURS 0 WITH HEADER LINE, t_multi TYPE protocol_line OCCURS 0 WITH HEADER LINE, W_XBSEG LIKE FBSEG, W_YBSEG LIKE FBSEG, I_REFKZ LIKE PAYR-IREFE, I_NOPROT TYPE C VALUE 'X', I_PTYPE TYPE C, I_PAGEEND TYPE C VALUE 'X', I_INTENSIFIED TYPE C,

Fecha : 7/04/2023 Página 31 de 44

Page 32: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

IS_ZBUKR(10) TYPE C, IS_VBLNR(10) TYPE C, IS_GJAHR(10) TYPE C, IS_HBKID(10) TYPE C, IS_HKTID(10) TYPE C, IS_RZAWE(10) TYPE C, IM_CHECT(20) TYPE C.

*----------------------------------------------------------------------** Selections **----------------------------------------------------------------------* SELECT-OPTIONS: S_ZBUK FOR PAYR-ZBUKR, "Paying company code S_BANK FOR PAYR-HBKID, "Short key for a house bank S_ACCO FOR PAYR-HKTID. "ID for account details

SELECTION-SCREEN:SKIP 1,BEGIN OF BLOCK BL0 WITH FRAME TITLE TEXT-001.* TEXT-001: 'General selections' SELECT-OPTIONS: S_CHEC FOR PAYR-CHECT, "Check number S_VBLN FOR PAYR-VBLNR, "Document number S_ZALD FOR RFSDO-CHKLADAT, "Check date S_CPUD FOR RFSDO-CHKLEDAT, "Print date S_USER FOR RFSDO-CHKLUSER, "Print user S_ZWEG FOR PAYR-RZAWE. "Payment method SELECTION-SCREEN: BEGIN OF LINE, COMMENT 01(31) TEXT-002 FOR FIELD ZW_LAUFD.* TEXT-002: 'Checks from a pay run' PARAMETERS: ZW_LAUFD LIKE PAYR-LAUFD. "Date on which the program is to be run SELECTION-SCREEN POSITION 46. PARAMETERS: ZW_LAUFI LIKE PAYR-LAUFI, "Additional identification ZW_XVORL LIKE REGUH-XVORL NO-DISPLAY. SELECTION-SCREEN: END OF LINE,END OF BLOCK BL0.

SELECTION-SCREEN:BEGIN OF BLOCK BL1 WITH FRAME TITLE TEXT-003,* TEXT-003: 'Selection of a target field for the check number' BEGIN OF LINE, POSITION 1.* Fill the reference document number with the check number PARAMETERS: P_XBLNR RADIOBUTTON GROUP FUNC DEFAULT 'X'. SELECTION-SCREEN: COMMENT 3(40) IL_XBLNR FOR FIELD P_XBLNR, END OF LINE, BEGIN OF LINE, POSITION 1.* Fill the allocation number with the check number PARAMETERS: P_ZUONR RADIOBUTTON GROUP FUNC. SELECTION-SCREEN: COMMENT 3(40) IL_ZUONR FOR FIELD P_ZUONR, END OF LINE, BEGIN OF LINE, POSITION 1.* Fill the reference key for line item with the check number PARAMETERS: P_XREF3 RADIOBUTTON GROUP FUNC. SELECTION-SCREEN: COMMENT 3(40) IL_XREF3 FOR FIELD P_XREF3, END OF LINE,**BEGIN OF LINE, POSITION 1.** PARAMETERS: Further_Parameter RADIOBUTTON GROUP FUNC.** SELECTION-SCREEN: COMMENT 3(50) Label_Variable.**END OF LINE,END OF BLOCK BL1.

*----------------------------------------------------------------------** Initialization **----------------------------------------------------------------------*INITIALIZATION. REFRESH T_LAUFK. T_LAUFK-LAUFK = 'W'.

Fecha : 7/04/2023 Página 32 de 44

Page 33: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

T_LAUFK-SIGN = 'E'. APPEND T_LAUFK. PERFORM GET_LABEL USING 'PAYR' 'S': 'ZBUKR' IS_ZBUKR, 'VBLNR' IS_VBLNR, 'GJAHR' IS_GJAHR, 'HBKID' IS_HBKID, 'HKTID' IS_HKTID, 'RZAWE' IS_RZAWE. PERFORM GET_LABEL USING 'PAYR' 'M': 'CHECT' IM_CHECT. PERFORM GET_LABEL USING 'BKPF' 'L': 'XBLNR' IL_XBLNR. PERFORM GET_LABEL USING 'BSEG' 'L': 'ZUONR' IL_ZUONR, 'XREF3' IL_XREF3.

*----------------------------------------------------------------------** Check Of The Selections **----------------------------------------------------------------------*AT SELECTION-SCREEN ON S_ZBUK. SELECT * FROM T001 WHERE BUKRS IN S_ZBUK. AUTHORITY-CHECK OBJECT 'F_PAYR_BUK' ID 'BUKRS' FIELD T001-BUKRS ID 'ACTVT' FIELD '02'.* Authority check IF SY-SUBRC <> 0. SET CURSOR FIELD 'S_ZBUK'. MESSAGE E515 WITH S_ZBUK. ENDIF. ENDSELECT.* Company code check IF SY-SUBRC <> 0. MESSAGE E511 WITH S_ZBUK. ENDIF.

*---------------------------------------------------------------------** F1-Help For Radiobuttons **---------------------------------------------------------------------*AT SELECTION-SCREEN ON HELP-REQUEST FOR P_XBLNR. CALL FUNCTION 'HELP_OBJECT_SHOW_FOR_FIELD' EXPORTING CALLED_FOR_TAB = 'BKPF' CALLED_FOR_FIELD = 'XBLNR'.AT SELECTION-SCREEN ON HELP-REQUEST FOR P_ZUONR. CALL FUNCTION 'HELP_OBJECT_SHOW_FOR_FIELD' EXPORTING CALLED_FOR_TAB = 'BSEG' CALLED_FOR_FIELD = 'ZUONR'.AT SELECTION-SCREEN ON HELP-REQUEST FOR P_XREF3. CALL FUNCTION 'HELP_OBJECT_SHOW_FOR_FIELD' EXPORTING CALLED_FOR_TAB = 'BSEG' CALLED_FOR_FIELD = 'XREF3'.

*---------------------------------------------------------------------** F4 For Payment Method **---------------------------------------------------------------------*AT SELECTION-SCREEN ON VALUE-REQUEST FOR ZW_LAUFD. CALL FUNCTION 'F4_ZAHLLAUF' EXPORTING F1TYP = 'D' F1NME = 'ZW_LAUFD' F2NME = 'ZW_LAUFI' IMPORTING LAUFD = ZW_LAUFD LAUFI = ZW_LAUFI TABLES LAUFK = T_LAUFK.AT SELECTION-SCREEN ON VALUE-REQUEST FOR ZW_LAUFI. CALL FUNCTION 'F4_ZAHLLAUF' EXPORTING F1TYP = 'I' F1NME = 'ZW_LAUFI' F2NME = 'ZW_LAUFD' IMPORTING LAUFD = ZW_LAUFD LAUFI = ZW_LAUFI TABLES LAUFK = T_LAUFK.

*----------------------------------------------------------------------** List Title **----------------------------------------------------------------------*TOP-OF-PAGE. FORMAT COLOR COL_BACKGROUND INTENSIFIED ON. CASE I_PTYPE.

Fecha : 7/04/2023 Página 33 de 44

Page 34: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

WHEN 'U'. IF P_XBLNR = 'X'. WRITE TEXT-004.* TEXT-004: 'Reference document numbers with check numbers' ELSEIF P_ZUONR = 'X'. WRITE TEXT-005.* TEXT-005: 'Allocation numbers with check numbers' ELSEIF P_XREF3 = 'X'. WRITE TEXT-006.* TEXT-006: 'Reference keys for line items with check numbers'** ELSEIF Further_Parameter = 'X'.** WRITE Text_element_with_list_header_text. ENDIF. WHEN 'Q'. WRITE TEXT-007.* TEXT-007: 'By other users closed documents' WHEN 'E'. WRITE TEXT-008.* TEXT-008: 'Error with the document update' WHEN 'M'. WRITE text-009.* TEXT-009: 'Maintain the check reference manually' ENDCASE. WRITE 84 SY-PAGNO. FORMAT COLOR COL_HEADING INTENSIFIED ON. WRITE: / SY-ULINE(88), /01 SY-VLINE NO-GAP, IS_ZBUKR, "Company code 12 SY-VLINE NO-GAP, IS_VBLNR, "Document number 23 SY-VLINE NO-GAP, IS_GJAHR, "Fiscal Year 34 SY-VLINE NO-GAP, IS_HBKID, "Bank key 45 SY-VLINE NO-GAP, IS_HKTID, "Bank account key 56 SY-VLINE NO-GAP, IS_RZAWE, "payment method 67 SY-VLINE NO-GAP, IM_CHECT, "Check number 88 SY-VLINE NO-GAP, / SY-ULINE(88).

END-OF-PAGE. IF I_PAGEEND = 'X'. WRITE: / SY-ULINE(88). ENDIF.

*----------------------------------------------------------------------** Main Program **----------------------------------------------------------------------*START-OF-SELECTION.* Conversion of the payment method Parameters into Select-Options IF NOT ZW_LAUFD IS INITIAL. CLEAR R_LAUFD. R_LAUFD-LOW = ZW_LAUFD. R_LAUFD-OPTION = 'EQ'. R_LAUFD-SIGN = 'I'. APPEND R_LAUFD. ENDIF. IF NOT ZW_LAUFI IS INITIAL. CLEAR R_LAUFI. R_LAUFI-LOW = ZW_LAUFI. R_LAUFI-OPTION = 'EQ'. R_LAUFI-SIGN = 'I'. APPEND R_LAUFI. ENDIF.

* Reading of the payment transfer mediums, whose numbers are to filled* in the selected field of document SELECT * FROM PAYR INTO TABLE T_PAYR WHERE IREFE = SPACE AND VOIDR = 0 AND LAUFD IN R_LAUFD AND LAUFI IN R_LAUFI AND ZBUKR IN S_ZBUK AND HBKID IN S_BANK AND HKTID IN S_ACCO AND RZAWE IN S_ZWEG AND CHECT IN S_CHEC AND ZALDT IN S_ZALD

Fecha : 7/04/2023 Página 34 de 44

Page 35: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

AND PRIDT IN S_CPUD AND PRIUS IN S_USER AND VBLNR IN S_VBLN AND VBLNR <> SPACE.

LOOP AT T_PAYR. CLEAR: T_BKPF, T_BSEG. CLEAR: xbseg, ybseg, *bkpf, bkpf. REFRESH: xbseg, ybseg. REFRESH t_bkpf.* if a payment document is referenced more than once,* it is not possible to determine the check number SELECT * FROM payr UP TO 2 ROWS WHERE zbukr = t_payr-zbukr AND vblnr = t_payr-vblnr AND gjahr = t_payr-gjahr AND voidr = 0. ENDSELECT. IF sy-dbcnt > 1. MOVE-CORRESPONDING t_payr TO t_multi. APPEND t_multi. CONTINUE. ENDIF.* Reading of the document header SELECT SINGLE * FROM BKPF INTO T_BKPF WHERE BUKRS = T_PAYR-ZBUKR AND BELNR = T_PAYR-VBLNR AND GJAHR = T_PAYR-GJAHR. CHECK SY-SUBRC = 0. *BKPF = T_BKPF.* Fill a field of the BKPF table with the check number IF P_XBLNR = 'X'.* Fill the reference document number with the check number T_BKPF-XBLNR = T_PAYR-CHECT. I_REFKZ = '1'.** ELSEIF Further_Parameter_Of_A_BKPF_Field = 'X'.** t_bkpf-Document_Field_Name = t_payr-chect.** i_refkz = Defined_Reference_Item. ELSE.* Fill a field of the BSEG table with the check number* Reading of the document items SELECT * FROM BSEG INTO TABLE T_BSEG WHERE BUKRS = T_PAYR-ZBUKR AND BELNR = T_PAYR-VBLNR AND GJAHR = T_PAYR-GJAHR AND HKONT = T_PAYR-UBHKT.

**************************************************************************** Begin Insert STK-HUG-21/06/2005* Si el pago fue a la CME, no lo va a encontrar, porque la BSEG-HKONT tiene* el nro de cuenta de la CME (ej., CPD Emitidos, 211210003) y en PAYR-UBHKT* está la cuenta del banco (111210041), por lo tanto BSEG-HKONT nunca va a* ser igual a PAYR-UBHKT si el pago fue con CME.if sy-subrc ne 0.

* Busco si el pago se dio contra una CME en vez de Banco pagadora. SELECT * FROM BSEG INTO TABLE T_BSEG WHERE BUKRS = T_PAYR-ZBUKR AND BELNR = T_PAYR-VBLNR AND GJAHR = T_PAYR-GJAHR AND UMSKS = 'W'. "CME de cheque

endif.* End Insert STK-HUG-21/06/2005**************************************************************************

CHECK SY-SUBRC = 0. LOOP AT T_BSEG. MOVE-CORRESPONDING T_BSEG TO W_YBSEG. APPEND W_YBSEG TO YBSEG. IF P_ZUONR = 'X'.* Fill the allocation number with the check number T_BSEG-ZUONR = T_PAYR-CHECT.

Fecha : 7/04/2023 Página 35 de 44

Page 36: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

I_REFKZ = '2'. ELSEIF P_XREF3 = 'X'.* Fill the reference key for line item with the check number T_BSEG-XREF3 = T_PAYR-CHECT. I_REFKZ = '3'.** ELSEIF Further_Parameter_Of_A_BSEG_Field = 'X'.** t_bseg-Document_Field_Name = t_payr-chect.** i_refkz = Defined_Reference_Item. ENDIF. MODIFY T_BSEG. MOVE-CORRESPONDING T_BSEG TO W_XBSEG. APPEND W_XBSEG TO XBSEG. ENDLOOP. UPD_BSEG = 'U'. ENDIF. BKPF = T_BKPF. APPEND T_BKPF. UPD_BKPF = 'U'.* Enqueue document for update CALL FUNCTION 'ENQUEUE_EFBKPF' EXPORTING MODE_BKPF = 'E' MANDT = SY-MANDT BUKRS = T_BKPF-BUKRS BELNR = T_BKPF-BELNR GJAHR = T_BKPF-GJAHR EXCEPTIONS FOREIGN_LOCK = 1 SYSTEM_FAILURE = 2 OTHERS = 3. IF SY-SUBRC = 0.* Enqueque payment transfer medium for update CALL FUNCTION 'ENQUEUE_EFPAYR' EXPORTING MODE_PAYR = 'E' MANDT = SY-MANDT ZBUKR = T_PAYR-ZBUKR HBKID = T_PAYR-HBKID HKTID = T_PAYR-HKTID RZAWE = T_PAYR-RZAWE CHECT = T_PAYR-CHECT EXCEPTIONS FOREIGN_LOCK = 1 SYSTEM_FAILURE = 2 OTHERS = 3. IF SY-SUBRC = 0.* Document update CALL FUNCTION 'CHANGE_DOCUMENT' TABLES T_BKDF = T_BKDF T_BKPF = T_BKPF T_BSEC = T_BSEC T_BSED = T_BSED T_BSEG = T_BSEG T_BSET = T_BSET EXCEPTIONS OTHERS = 4. IF SY-SUBRC = 0.* Update of payment transfer medium UPDATE PAYR SET IREFE = I_REFKZ WHERE ZBUKR = T_PAYR-ZBUKR AND HBKID = T_PAYR-HBKID AND HKTID = T_PAYR-HKTID AND RZAWE = T_PAYR-RZAWE AND CHECT = T_PAYR-CHECT. IF SY-SUBRC = 0.* Fill the update protocol item table MOVE-CORRESPONDING T_PAYR TO T_UPDATE. APPEND T_UPDATE.* Create a change document for the document modifications OBJECTID = BKPF(21). TCODE = 'FCHU'. UTIME = SY-UZEIT. UDATE = SY-DATUM. USERNAME = SY-UNAME. SET UPDATE TASK LOCAL. PERFORM CD_CALL_BELEG. COMMIT WORK. ELSE. ROLLBACK WORK.

Fecha : 7/04/2023 Página 36 de 44

Page 37: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

MOVE-CORRESPONDING T_PAYR TO T_ERROR. APPEND T_ERROR. ENDIF. ELSE. ROLLBACK WORK. MOVE-CORRESPONDING T_PAYR TO T_ERROR. APPEND T_ERROR. ENDIF.* Dequeque payment transfer medium after update CALL FUNCTION 'DEQUEUE_EFPAYR' EXPORTING MODE_PAYR = 'E' MANDT = SY-MANDT ZBUKR = T_PAYR-ZBUKR HBKID = T_PAYR-HBKID HKTID = T_PAYR-HKTID RZAWE = T_PAYR-RZAWE CHECT = T_PAYR-CHECT. ELSE. MOVE-CORRESPONDING T_PAYR TO T_QUEUE. APPEND T_QUEUE. ENDIF.* Dequeue document after update CALL FUNCTION 'DEQUEUE_EFBKPF' EXPORTING MODE_BKPF = 'E' MANDT = SY-MANDT BUKRS = T_BKPF-BUKRS BELNR = T_BKPF-BELNR GJAHR = T_BKPF-GJAHR. ELSE. MOVE-CORRESPONDING T_PAYR TO T_QUEUE. APPEND T_QUEUE. ENDIF. ENDLOOP.* Protocol output of updated documents LOOP AT T_UPDATE. AT FIRST. CLEAR I_NOPROT. I_PTYPE = 'U'. NEW-PAGE. ENDAT. PERFORM PROTOCOL_OUTPUT USING T_UPDATE. AT LAST. WRITE: / SY-ULINE(88). CLEAR I_PAGEEND. ENDAT. ENDLOOP.* Protocol output of closed documents LOOP AT T_QUEUE. AT FIRST. I_PAGEEND = 'X'. I_PTYPE = 'Q'. NEW-PAGE. ENDAT. PERFORM PROTOCOL_OUTPUT USING T_QUEUE. AT LAST. WRITE: / sy-uline(88). CLEAR i_pageend. ENDAT. ENDLOOP.* Protocol output of multiple checks for* one payment document. LOOP AT t_multi. AT FIRST. i_pageend = 'X'. i_ptype = 'M'. NEW-PAGE. ENDAT. PERFORM protocol_output USING t_multi. AT LAST. WRITE: / SY-ULINE(88). CLEAR I_PAGEEND. ENDAT. ENDLOOP.* Protocol output of update errors

Fecha : 7/04/2023 Página 37 de 44

Page 38: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

LOOP AT T_ERROR. AT FIRST. I_PAGEEND = 'X'. I_PTYPE = 'E'. NEW-PAGE. ENDAT. PERFORM PROTOCOL_OUTPUT USING T_ERROR. AT LAST. WRITE: / SY-ULINE(88). CLEAR I_PAGEEND. ENDAT. ENDLOOP.* Check whether a document field was filled with a check number IF I_NOPROT = 'X'. MESSAGE I321. ENDIF.

* 'form cd_call_beleg'INCLUDE FF05LCDC.

*----------------------------------------------------------------------** Write A Protocol Item **----------------------------------------------------------------------*FORM PROTOCOL_OUTPUT USING PLINE TYPE PROTOCOL_LINE. IF I_INTENSIFIED = SPACE. FORMAT COLOR COL_NORMAL INTENSIFIED OFF. I_INTENSIFIED = 'X'. ELSE. FORMAT COLOR COL_NORMAL INTENSIFIED ON. I_INTENSIFIED = ' '. ENDIF. WRITE: /01 SY-VLINE NO-GAP, PLINE-ZBUKR NO-GAP, 12 SY-VLINE NO-GAP, PLINE-VBLNR NO-GAP, 23 SY-VLINE NO-GAP, PLINE-GJAHR NO-GAP, 34 SY-VLINE NO-GAP, PLINE-HBKID NO-GAP, 45 SY-VLINE NO-GAP, PLINE-HKTID NO-GAP, 56 SY-VLINE NO-GAP, PLINE-RZAWE NO-GAP, 67 SY-VLINE NO-GAP, PLINE-CHECT NO-GAP, 88 SY-VLINE NO-GAP.ENDFORM.

*----------------------------------------------------------------------** Get The Data Dictionary Label Of A Table Field **----------------------------------------------------------------------*FORM GET_LABEL USING TABLE_NAME TYPE DDOBJNAME LABEL_TYPE TYPE CLIKE FIELD_NAME TYPE DFIES-FIELDNAME CHANGING LABEL TYPE CLIKE. DATA: lt_dfies like dfies occurs 0 with header line.

CALL FUNCTION 'DDIF_FIELDINFO_GET' EXPORTING TABNAME = TABLE_NAME FIELDNAME = FIELD_NAME LANGU = SY-LANGU tables DFIES_tab = lt_dfies EXCEPTIONS NOT_FOUND = 1 INTERNAL_ERROR = 2 OTHERS = 3. IF SY-SUBRC = 0. read table lt_dfies index 1. CASE LABEL_TYPE. WHEN 'S'. LABEL = lt_dfies-SCRTEXT_S. WHEN 'M'. LABEL = lt_dfies-SCRTEXT_M. WHEN 'L'. LABEL = lt_dfies-SCRTEXT_L. ENDCASE. ENDIF.ENDFORM.

Fecha : 7/04/2023 Página 38 de 44

Page 39: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

Anexo IIa: Código del programa ZFIBIASIG

*&---------------------------------------------------------------------**& Report ZFIBIASIG **& **&---------------------------------------------------------------------*

REPORT ZFIBIASIG .

*--------------------------------------------------------------------** Batch Input para cargar el campo asignación mediante la FB09 **--------------------------------------------------------------------** Fecha : 10.06.2005 - STK Argentina **--------------------------------------------------------------------*

TABLES: regup.

* Constantes del ProgramaCONSTANTS: cc_tcode LIKE tstc-tcode VALUE 'FB09'.

* Estructura del Archivo de EntradaTYPES: BEGIN OF type_regup, bukrs LIKE regup-bukrs, vblnr LIKE regup-vblnr, gjahr LIKE regup-gjahr, zuonr LIKE regup-zuonr, END OF type_regup.

* Declaración de las variablesDATA: t_regup TYPE type_regup OCCURS 0 WITH HEADER LINE.

*---------------------------------------------------------------------* Parameters box 1SELECTION-SCREEN BEGIN OF BLOCK block1 WITH FRAME TITLE text-001.PARAMETERS: p_laufd LIKE f110v-laufd OBLIGATORY, p_laufi LIKE f110v-laufi OBLIGATORY, pc_mode TYPE c DEFAULT 'N' NO-DISPLAY.SELECTION-SCREEN END OF BLOCK block1.

INCLUDE zfibiasig_include.

AT SELECTION-SCREEN.

PERFORM validar_fecha.

************************************************************************START-OF-SELECTION.

DATA: lc_subrc LIKE sy-subrc. REFRESH: h_bdc. CLEAR: i_nro_read, ni_nro_save, c_qid.

* Traigo las posiciones de los pagos PERFORM obtener_datos.

LOOP AT t_regup.* Cargar datos para la primera pantalla PERFORM carga_sapmf05l_0102.

* Cargar datos para la segunda pantalla PERFORM carga_sapmf05l_0300.

* Cargar datos para pop-up PERFORM carga_saplkacb_0002.

* Llamada a la Transacción

Fecha : 7/04/2023 Página 39 de 44

Page 40: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

PERFORM process_data USING lc_subrc. ENDLOOP.

END-OF-SELECTION.

*&---------------------------------------------------------------------**& Form obtener_datos*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** --> p1 text* <-- p2 text*----------------------------------------------------------------------*FORM obtener_datos.

SELECT * FROM regup INTO CORRESPONDING FIELDS OF TABLE t_regup WHERE laufd = p_laufd AND laufi = p_laufi AND xvorl = ''.ENDFORM. " obtener_datos

*&---------------------------------------------------------------------**& Form carga_sapmf05l_0102*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** --> p1 text* <-- p2 text*----------------------------------------------------------------------*FORM carga_sapmf05l_0102.

* Datos de la primera pantalla PERFORM insert_line USING: 'X' 'SAPMF05L' '0102', ' ' 'BDC_OKCODE' '/00', ' ' 'RF05L-BELNR' t_regup-vblnr, " Nro de Documento ' ' 'RF05L-BUKRS' t_regup-bukrs, " Sociedad ' ' 'RF05L-GJAHR' t_regup-gjahr, " Ejercicio ' ' 'RF05L-XKSAK' 'X', " Cuentas de Mayor ' ' 'RF05L-XKANL' '', ' ' 'RF05L-XKDEB' '', ' ' 'RF05L-XKKRE' '', ' ' 'RF05L-BUZEI' ''. " Posición

ENDFORM. " carga_sapmf05l_0102*&---------------------------------------------------------------------**& Form carga_sapmf05l_0300*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** --> p1 text* <-- p2 text*----------------------------------------------------------------------*FORM carga_sapmf05l_0300.

* Datos de la segunda pantalla PERFORM insert_line USING: 'X' 'SAPMF05L' '0300', ' ' 'BDC_OKCODE' '=AE', ' ' 'BSEG-ZUONR' t_regup-zuonr. " Asignación

ENDFORM. " carga_sapmf05l_0300*&---------------------------------------------------------------------**& Form carga_saplkacb_0002*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** --> p1 text* <-- p2 text*----------------------------------------------------------------------*FORM carga_saplkacb_0002.

Fecha : 7/04/2023 Página 40 de 44

Page 41: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

* Pop-Up PERFORM insert_line USING: 'X' 'SAPLKACB' '0002', ' ' 'BDC_OKCODE' '=ENTE'.

ENDFORM. " carga_saplkacb_0002*&---------------------------------------------------------------------**& Form validar_fecha*&---------------------------------------------------------------------** text*----------------------------------------------------------------------** --> p1 text* <-- p2 text*----------------------------------------------------------------------*FORM validar_fecha.

IF NOT p_laufd IS INITIAL. SELECT SINGLE * FROM regup WHERE laufd = p_laufd AND laufi = p_laufi.

IF NOT sy-subrc IS INITIAL. MESSAGE s002(zfi) WITH 'Verificar fecha e identificación.'. STOP. ENDIF. ENDIF.ENDFORM. " validar_fecha

Anexo IIb: Código del programa ZFIBIASIG_INCLUDE

*&---------------------------------------------------------------------** Include ZFIBIASIG_INCLUDE.*-----------------------------------------------------------------------* Programa: Include ZFIBIASIG_INCLUDE.* Descripción: Include auxiliar p/ batch input c/ arq. entrada* Softtek Argentina* Data : 10.06.2005*-----------------------------------------------------------------------TABLES: abap, " Declaraciones de tipo de lenguaje interno ABAP usr01. " Tabla de usuarios

TYPES: x_msg_type(80) TYPE c, BEGIN OF type_bdc, " Bdc table tables LIKE bdcdata OCCURS 0, END OF type_bdc.

FIELD-SYMBOLS: <tables_bdc> TYPE type_bdc, " Bdc table <transaction> TYPE c. " TransactionDATA: t_time1 LIKE sy-uzeit, " Initial time t_time2 LIKE sy-uzeit, " Final time t_totalt LIKE sy-uzeit, " Total time c_group_aux LIKE apqi-groupid, messtab LIKE bdcmsgcoll OCCURS 0 WITH HEADER LINE," Message tabl i_nro_read TYPE i, " Total for read records ni_nro_save TYPE i, " Total for saved records ni_save_bi TYPE i, " Total for saved records BI i_reject TYPE i, " counts rejected records h_bdc TYPE type_bdc OCCURS 0 WITH HEADER LINE, " Bdc table h_bdc2 LIKE bdcdata OCCURS 0 WITH HEADER LINE, " Bdc table c_qid LIKE apqi-qid, " Session Id i_avance TYPE i, " Numero de avance de porcentage i_reg TYPE i." Cantidad de registros del archivo entrada

DEFINE alert_message. case &1. when -1.

Fecha : 7/04/2023 Página 41 de 44

Page 42: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

write: /5 '¡Error en la apertura del archivo!', &2. when -2. write: /5 '¡Error en el cierre del archivo!', &2. when -3. write: /5 'DONE: ¡Sesión no puede ser cerrada!'. when -4. write: /5 'DONE: Archivo no puede ser cerrado!'. when -5. write: /5 'SUBMIT: ¡Job no puede ser abierto!'. when -6. write: /5 'SUBMIT: ¡Job no puede ser cerrado!'. when -7. write /5 'PROC: ¡Transacción no puede ser ejecutada!'. when -8. write /5 'PROC: ¡Archivo de entrada vacío!'. when 0. write /5 '¡Fin de Ejecución!'. when 1. write /5 'LOAD_FILE: ¡Archivo abierto exitosamente!'. when 2. write /5 'PROC: ¡Procesado exitosamente!'. uline /5. write: /10 sy-title, /10 'Usuario:', sy-uname, 'Programa', sy-repid, /10 'Número de registros leidos:............:', 50 i_nro_read, /10 'Número de registros en call transaction:', 50 ni_nro_save, /10 'Número de registros en juego de datos..:', 50 ni_save_bi, /10 'Hora inicial:..........................:', 52 t_time1, /10 'Hora final:............................:', 52 t_time2, /10 'Tiempo de ejecución:...................:', 52 t_totalt. when 3. write: /5 'PROC: ¡Sesion terminada exitosamente!', c_group_aux. when 4. write: /5 'SUBMIT: ¡Job fue creado exitosamente!'. when 5. write: /5 'SUBMIT: ¡Job ejecutado exitosamente!'. when 6. write: /5 'PROC: ¡Sesion abierta exitosamente!', c_group_aux. when 7. write /5 'PROC: ¡Archivo cerrado exitosamente!'. when 9. write /5 'UNLOAD: ¡Archivo guardado exitosamente!'. endcase.END-OF-DEFINITION.

*-----------------------------------------------------------------------* FORM insert_line*-----------------------------------------------------------------------* Text -> Creates one record into the <tables_bdc> table with the* transaction fields*-----------------------------------------------------------------------FORM insert_line USING x_l_start TYPE c x_l_name TYPE c x_l_value TYPE any.

DATA: h_bdc_aux LIKE bdcdata.

MOVE x_l_start TO h_bdc_aux-dynbegin. ASSIGN h_bdc TO <tables_bdc>.

IF x_l_start = 'X'. MOVE: x_l_name TO h_bdc_aux-program, x_l_value TO h_bdc_aux-dynpro. ELSE. MOVE: x_l_name TO h_bdc_aux-fnam, x_l_value TO h_bdc_aux-fval. ENDIF. APPEND h_bdc_aux TO <tables_bdc>-tables.ENDFORM.*-----------------------------------------------------------------------* FORM PROCESS_DATA

Fecha : 7/04/2023 Página 42 de 44

Page 43: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

*-----------------------------------------------------------------------* Text -> Opens BDC Group and inserts transaction data*-----------------------------------------------------------------------FORM process_data USING p_lc_subrc. DATA: i_line TYPE i, i_per TYPE i.

DESCRIBE TABLE h_bdc-tables LINES i_line. CHECK NOT i_line IS INITIAL. ASSIGN cc_tcode TO <transaction>.

REFRESH: messtab.

CALL TRANSACTION <transaction> USING <tables_bdc>-tables MODE pc_mode UPDATE 'S' MESSAGES INTO messtab.

p_lc_subrc = sy-subrc. REFRESH <tables_bdc>-tables.ENDFORM.

*-----------------------------------------------------------------------* FORM INSERT_BDC.* Text -> Inserts transaction*-----------------------------------------------------------------------FORM insert_bdc. DATA: aux_tcode LIKE tstc-tcode. aux_tcode = <transaction>. CALL FUNCTION 'BDC_INSERT' EXPORTING tcode = aux_tcode TABLES dynprotab = <tables_bdc>-tables EXCEPTIONS OTHERS = 1. IF sy-subrc <> 0. alert_message -7 ''. ENDIF.ENDFORM.

*---------------------------------------------------------------------** FORM VALUE_REQ_FILE **---------------------------------------------------------------------*FORM value_req_file USING filename TYPE c. "#EC CALLED DATA: c_file LIKE rlgrap-filename.

CALL FUNCTION 'WS_FILENAME_GET' EXPORTING def_filename = ' ' def_path = 'C:\' mask = ',Textos,*.txt,Todos,*.*.' mode = 'O' title = text-l34 IMPORTING filename = c_file EXCEPTIONS OTHERS.

IF sy-subrc EQ 0. "Somente se o nome foi alterado filename = c_file. "Guarda o novo nome ENDIF.

ENDFORM. " VALUE_REQ_FILE

*-----------------------------------------------------------------------* Form STATUS_DISPLAY*-----------------------------------------------------------------------* Muestra en la pantalla el avance del programa*-----------------------------------------------------------------------FORM status_display USING l_porcent TYPE i value(l_texto) TYPE c.

DATA: c_aux(30) TYPE c.

Fecha : 7/04/2023 Página 43 de 44

Page 44: 01.Dlver Parametrizacion Cheques Emitidos

RDS Nro:FI-AP-003

Módulo:

FI-AP/BA Implementation Paper Versión: 01

Autor: Fecha de creación

21/06/2005Descripción breve: Solución integral cheques emitidos

c_aux = l_porcent.

CONDENSE c_aux NO-GAPS.

CONCATENATE c_aux l_texto INTO c_aux SEPARATED BY space.

CALL FUNCTION 'SAPGUI_PROGRESS_INDICATOR' EXPORTING percentage = l_porcent text = c_aux EXCEPTIONS OTHERS = 1. IF sy-subrc <> 0. STOP. ENDIF. CLEAR: c_aux.

Fecha : 7/04/2023 Página 44 de 44