You are on page 1of 30

Debug Servicio ATP537, RENEGOCIACIÓN TOTAL 1-14

Contrato 0015 0000810007881505

Botón Renegociar Total

Pantalla Reprogramación de deuda


Llamada servicio ATP537 el cual calcula el monto total, el mínimo exigible y el monto a renegociar, al momento de pinchar
el botón “Renegociar Mora” el servicio cobol recibe la siguiente trama desde el frontend.

FILLER PIC X(12). ='000000000000'


MP537-CODENT-ATR PIC X(1). =' '
MP537-CODENT PIC X(4). ='0015'
MP537-CENTALTA-ATR PIC X(1). =' '
MP537-CENTALTA PIC X(4). ='0000'
MP537-CUENTA-ATR PIC X(1). =' '
MP537-CUENTA PIC X(12). ='810007881505'
MP537-LINEA-ATR PIC X(1). =' '
MP537-LINEA PIC X(4). ='0001'
MP537-DESLINEA-ATR PIC X(1). =' '
MP537-DESLINEA PIC X(30). =' '
MP537-OPCION-ATR PIC X(1). =' '
MP537-OPCION PIC X(1). =' '
MP537-CODREPSIST-ATR PIC X(1). ='
MP537-CODREPSIST PIC X(4). =' 4'
MP537-CAPFACTUR-ATR PIC X(1). =' '
MP537-CAPFACTUR PIC 9(15)V99. ='000000000000000,00'
MP537-INTFACTUR-ATR PIC X(1). =' '
MP537-INTFACTUR PIC 9(15)V99. ='000000000000000,00'
MP537-COMFACTUR-ATR PIC X(1). =' '
MP537-COMFACTUR PIC 9(15)V99. ='000000000000000,00'
MP537-INTMORA-ATR PIC X(1). =' '
MP537-INTMORA PIC 9(15)V99. ='000000000000000,00'
MP537-GASMORA-ATR PIC X(1). =' '
MP537-GASMORA PIC 9(15)V99. ='000000000000000,00'
MP537-IMPCAPITAL-ATR PIC X(1). =' '
MP537-IMPCAPITAL PIC 9(15)V99. ='000000000000000,00'
MP537-IMPINTERES-ATR PIC X(1). =' '
MP537-IMPINTERES PIC 9(15)V99. ='000000000000000,00'
MP537-COMISIONES-ATR PIC X(1). =' '
MP537-COMISIONES PIC 9(15)V99. ='000000000000000,00'
MP537-SEGURO-ATR PIC X(1). =' '
MP537-SEGURO PIC 9(15)V99. ='000000000000000,00'
MP537-CUOMANT-ATR PIC X(1). =' '
MP537-CUOMANT PIC 9(15)V99. ='000000000000000,00'
MP537-CODREP-ATR PIC X(1). =' '
MP537-CODREP PIC X(4). =' '
MP537-DESREP-ATR PIC X(1). =' '
MP537-DESREP PIC X(30). =' '
MP537-IMPTOTAL-ATR PIC X(1). =' '
MP537-IMPTOTAL PIC 9(15)V99. ='000000000000000,00'
MP537-IMPEXIG-ATR PIC X(1). =' '
MP537-IMPEXIG PIC 9(15)V99. ='000000000000000,00'
MP537-IMPREPRO-ATR PIC X(1). =' '
MP537-IMPREPRO PIC 9(15)V99. ='000000000000000,00'
MP537-CODTIPC-ATR PIC X(1). =' '
MP537-CODTIPC PIC X(4). =' '
MP537-TOTCUOTAS-ATR PIC X(1). =' '
MP537-TOTCUOTAS PIC 9(09). ='000000000'
MP537-IMPCUOREP-ATR PIC X(1). =' '
MP537-IMPCUOREP PIC 9(15)V99. ='000000000000000,00'
MP537-ABONO-ATR PIC X(1). =' '
MP537-ABONO PIC 9(15)V99. ='000000000000000,00'
MP537-FECPROXVTO-ATR PIC X(1). =' '
MP537-FECPROXVTO PIC X(10). ='0001-01-01'
MP537-TASAINTMENS-ATR PIC X(1). =' '
MP537-TASAINTMENS PIC 9(3)V9(4). ='000,0000'
MP537-CAPITAL-ATR PIC X(1). =' '
MP537-CAPITAL PIC 9(15)V99. ='000000000000000,00'
MP537-IMPINTERES1-ATR PIC X(1). =' '
MP537-IMPINTERES1 PIC 9(15)V99. ='000000000000000,00'
MP537-GASTOSCOB-ATR PIC X(1). =' '
MP537-GASTOSCOB PIC 9(15)V99. ='000000000000000,00'
MP537-COSTOTCRE-ATR PIC X(1). =' '
MP537-COSTOTCRE PIC 9(15)V99. ='000000000000000,00'
MP537-CAE-ATR PIC X(1). =' '
MP537-CAE PIC 9(04)V9999.='0000,0000'
MP537-PAN-ATR PIC X(1). =' '
MP537-PAN PIC X(16). ='499847******4261'
MP537-FECALTA-ATR PIC X(1). =' '
MP537-FECALTA PIC X(10). ='0001-01-01'
MP537-FECVTOCUOREP-ATR PIC X(1). =' '
MP537-FECVTOCUOREP PIC X(10). ='0001-01-01'
MP537-FES-ATR PIC X(1). =' '
MP537-FES PIC 9(1). ='0'
MP537-VT-ATR PIC X(1). =' '
MP537-VT PIC 9(1). ='0'
MP537-NUD-ATR PIC X(1). =' '
MP537-NUD PIC 9(15). ='000000000000000'

 Si MP537-CODREPSIST = ‘3 ‘ or ‘3SI ’ or ‘4 ‘ or ‘4SI ’ entonces se validan cargos y abonos por incidencias,


normalizaciones o reclamaciones que no se han cursado, si tiene una de estas, no procede la renegociación
o Incidencias pendientes:
Mediante cursor a mpt0009 por contrato se obtienen los PAN con los cuales se busca en mpdt096
incidencias pendientes:
PAN
6271801888334645
4998471888204261

SELECT TIPOSOL
FROM MPDT096
WHERE PAN = :DCLMPDT096.PAN
AND (INDINCPEN = ‘S’
OR TIPOSOL = 0 )

Si el select entrega uno o más de un registro entonces cuanta 1 en CN-ABON-CARG, esta para cada pan del
contrato.

o Reclamaciones
SELECT CODAJU
FROM MPDT199
WHERE CODENT = :DCLMPDT199.CODENT
AND CENTALTA = :DCLMPDT199.CENTALTA
AND CUENTA = :DCLMPDT199.CUENTA
AND (INDRECPEN = 'S'
OR CODAJU = 0 )

Si este select entrega uno o más de un registro entonces cuenta 1 en CN-ABON-CARG.

o Normalizaciones:
SELECT SIGNOTIPFAC
FROM MPDT009 T1, MPDT015 T2
WHERE T1.CODENT = :DCLMPDT009.CODENT
AND T1.CENTALTA = :DCLMPDT009.CENTALTA
AND T1.CUENTA = :DCLMPDT009.CUENTA
AND T1.INDSITTAR = 5
AND T1.INDULTTAR = ‘S’
AND T1.PAN = T2.PAN
AND T2.ESTADO = 0

Si el select entrega uno o más de un registro entonces cuenta 1 en CN-ABON-CARG.

o Si CN-ABON-CARG > 0  aviso MPA1903 y no permite la operación


 Obtener Deuda, llamada ATR054 con los siguientes parámetros: contrato, línea, fecha operación, fecha contable,
oficina, usuario, codrepsist
ATTOTDEU-CODENT PIC X(4). ='0015'
ATTOTDEU-CENTALTA PIC X(4). ='0000'
ATTOTDEU-CUENTA PIC X(12). ='810007881505'
ATTOTDEU-LINEA PIC X(4). ='0001'
ATTOTDEU-FECHA-OPE PIC X(10). ='2017-12-21'
ATTOTDEU-FECHA-CONTA PIC X(10). ='2017-12-21'
ATTOTDEU-OFICINA PIC X(4). ='0000'
ATTOTDEU-USUARIO PIC X(8). ='00001651'
ATTOTDEU-TERM-CONTA PIC X(8). ='88888888'
ATTOTDEU-HORA-OPE PIC X(6). ='123744'
ATTOTDEU-CODREPSIST PIC X(4). ='4 '
ATTOTDEU-CODRET PIC 9(01). ='0'
ATTOTDEU-CAPFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTMORA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-GASMORA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPCAPITAL PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPINTERES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMISIONES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-SEGURO PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-CUOMANT PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-TOTAL PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPUESTOS PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBRUECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBONECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO2-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-RETORNO PIC X(002). =' '
ATTOTDEU-COD-ERROR PIC X(007). =' '
ATTOTDEU-NOMBRE-BD PIC X(024). =' '
ATTOTDEU-NOMBRE-RUTINA PIC X(008). =' '
ATTOTDEU-CLAVE-TABLA PIC X(200). ='
'
ATTOTDEU-NOMBRE-TABLA PIC X(011). =' '
ATTOTDEU-OPERACION PIC X(006). =' '
ATTOTDEU-SQLCODE PIC S9(10). ='0000000000'

Si línea es igual a ‘0001’ o espacios entonces se obtiene el Total facturado


Con Cursor Se recorre la tabla mpdt163, tabla de información del contrato por moneda
SELECT CLAMON, 152
NUMEXTPEN, 103
LIMCRECTA 1.080.000,00
FROM MPDT163
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
ORDER BY CLAMON DESC
Si NUMEXTPEN.mpdt163 es <> 0
Si CLAMON.mpdt163 = CLAMON.mpdt043
Obtener impagado, llamada rutina ATR033
ATLIQIMP-CODENT PIC X(04). ='0015'
ATLIQIMP-CENTALTA PIC X(04). ='0000'
ATLIQIMP-CUENTA PIC X(12). ='810007881505'
ATLIQIMP-CLAMON PIC 9(03). ='152'
ATLIQIMP-NUMEXTCTA PIC 9(03). ='103'
ATLIQIMP-OPCION PIC X(01). ='S' SIMULAR = TRUE
ATLIQIMP-PRODUCTO PIC X(02). ='15'
ATLIQIMP-SUBPRODU PIC X(04). ='0021'
ATLIQIMP-CONPROD PIC X(03). ='001'
ATLIQIMP-CODCAM PIC X(06). ='000000'
ATLIQIMP-TIPBON PIC X(06). =' '
ATLIQIMP-INDUF PIC X(01). ='S'
ATLIQIMP-CLAMONUF PIC 9(03). ='990'
ATLIQIMP-FECHASYS PIC X(10). ='2017-12-21'
ATLIQIMP-FECCON PIC X(10). ='2017-12-21'
ATLIQIMP-FORCALINT PIC X(01). ='O'
ATLIQIMP-CODREGIMEN PIC 9(04). ='0001'
ATLIQIMP-OFIMPAGO PIC X(04). ='0001'
ATLIQIMP-CODPAIS PIC 9(03). ='152'
ATLIQIMP-HORA PIC X(08). ='123744 '
ATLIQIMP-CENTRO-CONT PIC X(04). ='0000'
ATLIQIMP-USERID PIC X(08). ='00001651'
ATLIQIMP-TERMINAL PIC X(08). ='88888888'
ATLIQIMP-CODJAVA PIC X(07). ='OPALRDC'
ATLIQIMP-CODRET PIC 9(02). ='00'
ATLIQIMP-IMPORTE PIC S9(15)V99. ='00000000000000000'
ATLIQIMP-INTMORA PIC S9(15)V99. ='00000000000000000'
ATLIQIMP-IMPMORA PIC S9(15)V99. ='00000000000000000'
ATLIQIMP-COMMORA PIC S9(15)V99. ='00000000000000000'
ATLIQIMP-COD-ERROR1 PIC X(07). =' '
ATLIQIMP-VAR1-ERROR1 PIC X(20). =' '
ATLIQIMP-NOMBRE-BD PIC X(24). =' '
ATLIQIMP-NOMBRE-RUTINA PIC X(08). =' '
ATLIQIMP-NOMBRE-TABLA PIC X(11). =' '
ATLIQIMP-CLAVE-TABLA PIC X(80). ='
'
ATLIQIMP-OPERACION PIC X(20). =' '
ATLIQIMP-SQLCODE PIC S9(10) COMP. ='^^^^^^^^'

Se obtiene el max(numsecimp) desde mpdt113, tabla de impagados


SELECT MAX(NUMSECIMP)  201712117963746
FROM MPDT113
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND CLAMON = '152'
AND SITUACION IN (0,1)

Si acceso correcto entonces se accede a mpdt113 por numsecimp = 201712117963746


SELECT CODENT,
NUMSECIMP,
CODCOM,
CENTALTA,
CUENTA,
ORIGEN,
FECALTA,
FECEMIMOV,
FECVENMOV,
NUMSECREC,
IMPREC,
IMPAGO,
IMPAPL,
FECULTAPL,
FECBAJA,
FECENVCOB,
FECCONTA,
CLAMON,
SITUACION,
CONTCUR
FROM MPDT113
WHERE CODENT = ‘0015’
AND NUMSECIMP = 201712117963746
CODENT CODCOM CENTALTA CUENTA ORIGEN FECALTA FECEMIMOV FECVENMOV NUMSECREC IMPREC IMPAGO IMPAPL FECULTAPL FECBAJA FECENVCOB FECCONTA CLAMON SITUACION

0015 0000 810007881505 TA 2017-12-10 2017-11-24 2017-12-10 201711247654487 54300,00 54300,00 0,00 0001-01-01 0001-01-01 0001-01-01 2017-12-11 152 0

Si existe impagado entonces liquidar impago, donde se calculan:


Comisiones e impuestos asociados
Intereses e impuestos asociados
Impuesto del tipo de factura
PROCESO COMISIONES:
Se recorre con cursor tabla mpdt059, tabla de tipo de transacción – concepto
económico, con codent, tipofac = 72(impagado) e indnorcor = 0
SELECT
CODENT,
INDNORCOR,
TIPOFAC,
CODCONECO,
INDAPLCON,
INDAPLDEBCRE,
FECALTA
FROM MPDT059
WHERE CODENT = ‘0015’
AND TIPOFAC = 72
AND INDNORCOR = 0
AND CODCONECO > 0
CODENT INDNORCOR TIPOFAC CODCONECO INDAPLCON INDAPLDEBCRE FECALTA
0015 0 72 53 I 1 2006-02-14

Se lee tabla mpdt052, de concentos económicos por codent y codconeco = 53 (interés


mora)
SELECT TIPCONECO,
CODIMPTO,
CODIMPTO2,
CODCONECO,
NIVAPLICA,
INDAPLICA,
INDBONOPE,
INDPORTRAMO,
PORREF,
VERTIENTE,
FECINI,
FECFIN
FROM MPDT052
WHERE CODENT = ‘0015’
AND CODCONECO = 53
TIPCONECO CODIMPTO CODIMPTO2 CODCONECO NIVAPLICA INDAPLICA INDBONOPE INDPORTRAMO PORREF VERTIENTE FECINI FECFIN
I 0 0 53 CO H N P 0,0000 E 2005-12-09 9999-12-31

Si TIPCONECO.mpdt052 = ‘C’ (cobro de comisiones) y


(FECINI.mpdt052 <= ATLIQIMP-FECHASYS y
FECFIN.mpdt052 >= ATLIQIMP-FECHASYS) y
INDAPLDEBCRE.mpdt059 = 1 y
INDAPLCON.mpdt059 = ‘M’
Calculo Comisiones
FinSi

PROCESO INTERESES MORA


Llamada rutina ATR048
ATTRAINT-CODENT PIC X(04). ='0015'
ATTRAINT-CENTALTA PIC X(04). ='0000'
ATTRAINT-CUENTA PIC X(12). ='810007881505'
ATTRAINT-NUMEXTCTA PIC 9(03). ='103'
ATTRAINT-CLAMON PIC 9(03). ='152'
ATTRAINT-OPCION PIC X(01). ='S'
ATTRAINT-FECHA PIC X(10). =' '
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
ATTRAINT-CODRET PIC 9(1). ='0'
ATTRAINT-NOMBRE-BD PIC X(24). =' '
ATTRAINT-NOMBRE-TABLA PIC X(11). =' '
ATTRAINT-OPERACION PIC X(20). =' '
FILLER PIC X(10). =' '

Se cuentan el número de tipos de importe:


SELECT COUNT(*) = 7
FROM MPDT176
WHERE CODENT = ‘0015’

Se ejecuta cursor sobre tabla mpdt194, intereses pendientes de facturar.


SELECT CODENT, CENTALTA, CUENTA, NUMEXTCTA, CLAMON, NUMMOVEXT, CODCONECO, TIPIMP, IMPAPLECO,
IMPBRUECO, IMPBONECO, IMPIMPTO, IMPIMPTO2, PORINT, CODENTUMO, CODOFIUMO
FROM MPDT194
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND NUMEXTCTA = 103
AND CLAMON = 152
AND NUMMOVEXT > 0
AND CODCONECO = 53
ORDER BY CODENT, CENTALTA, CUENTA, NUMEXTCTA, CLAMON, NUMMOVEXT, CODCONECO
CODENT CENTALTA CUENTA NUMEXTCTA CLAMON NUMMOVEXT CODCONECO TIPIMP IMPAPLECO IMPBRUECO IMPBONECO IMPIMPTO IMPIMPTO2 PORINT

0015 0000 810007881505 103 152 3 53 6 0,00 162,00 0,00 0,00 0,00 2,9800

Si WS-NUMMOV-ANT <> NUMMOVEXT.mpdt194 ( 0 <> 3 )


Se accede a la tabla de movimientos de extracto de crédito, mpdt012
SELECT INDMOVANU
FROM MPDT012
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND NUMEXTCTA = 103
AND CLAMON = 152
AND NUMMOVEXT = 3
INDMOVANU
0

NUMMOVEXT.mpdt194  WS-NUMMOV-ANT
Si INDMVANU = 0
Si OPCIÓN = “T”
Acceder tabla de movimientos de conceptos económicos mpdt151
Si existe el concepto económico
Actualizar tabla mpdt151
Sino
Insertar tabla mpdt151
FinSi
Fin Si
Proceso Acumular importes
COMPUTE WS-IMPNETO-INT = W194IMPBRUECO - W194IMPBONECO
WS-IMPNETO-INT = W194IMPBRUECO - W194IMPBONECO
WS-IMPNETO-INT = 162 - 0

IN-TRAINT = TIPIMP.mpdt194 = 6
ADD WS-IMPNETO-INT TO EL-TRAINT-IMPORTE(IN-TRAINT)
EL-TRAINT-TIPIMP EL-TRAINT-IMPORTE(IN-TRAINT)
Capital 1 0
Comisión 2 0
Intereses 3 0
Impuestos 4 0
gasto de cobranza 5 0
intereses de mora 6 162
impuesto de mora 7 0

Si TIPIMP.mpdt194 = 5 o 6
WS-TIPIMPIMPTO = 7 , Tipo importe impuesto mora
Sino
WS-TIPIMPIMPTO = 4 , Tipo importe impuesto
Fin Si
IN-TRAINT = WS-TIPIMPIMPTO = 7

Si el campo IMPIMPTO o el campo IMPIMPTO2 son distinto de cero


entonces se suma
ADD W194IMPIMPTO TO EL-TRAINT-IMPORTE(7)
ADD W194IMPIMPTO2 TO EL-TRAINT-IMPORTE(7)

Si WS-IMPNETO-INT > 0 y
ATTRAINT-OPCION = ‘T’
Proceso actualizar saldos
Fin Si
FinSi
Fin Si
ATTRAINT-CODENT PIC X(04). ='0015'
ATTRAINT-CENTALTA PIC X(04). ='0000'
ATTRAINT-CUENTA PIC X(12). ='810007881505'
ATTRAINT-NUMEXTCTA PIC 9(03). ='103'
ATTRAINT-CLAMON PIC 9(03). ='152'
ATTRAINT-OPCION PIC X(01). ='S'
ATTRAINT-FECHA PIC X(10). =' '
EL-TRAINT-TIPIMP PIC 9(02). ='01'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='02'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='03'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='04'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='05'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='06'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000162,00'
EL-TRAINT-TIPIMP PIC 9(02). ='07'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
EL-TRAINT-TIPIMP PIC 9(02). ='00'
EL-TRAINT-IMPORTE PIC S9(15)V99. ='000000000000000,00'
ATTRAINT-CODRET PIC 9(1). ='0'
ATTRAINT-NOMBRE-BD PIC X(24). =' '
ATTRAINT-NOMBRE-TABLA PIC X(11). =' '
ATTRAINT-OPERACION PIC X(20). =' '
FILLER PIC X(10). =' '
Fin llamada ATR048
Se cuentan el número de tipo de importes desde mpdt176 tipos de importe, WS-NUM-
TIPIMP = 7

EL-TRAINT-TIPIMP EL-TRAINT-IMPORTE(IN-TRAINT)
capital 1 0
comisión 2 0
intereses 3 0
impuestos 4 0
gasto de cobranza 5 0
intereses de mora 6 162
impuesto de mora 7 0

ADD EL-TRAINT-IMPORTE(6) TO AC-IMPORTE-INTERESES = 162


ADD EL-TRAINT-IMPORTE(7) TO AC-IMPORTE-IMPUESTOS = 0

Proceso Impuesto Factura


Se accede busca el tipofac 72 en mpdt044, tipos de transacción
CODENT INDNORCOR TIPOFAC INDAPLINT TIPFECINIINT TIPFECFININT CODIMPTO INDFACINF SIGNO
0015 0 72 S C F 0 S +

Si CODIMPTO.mpdt044 <> 0
Llamar rutina ATR036
AC-IMPORTE-IMPUESTOS = AC-IMPORTE-IMPUESTOS + ATRUTIMP-IMPUESTO
ATRUTIMP-IMPUESTO  IMPIMPTO.mpdt012
Sino
Zeros  IMPIMPTO.mpdt012
Fin Si

AC-IMPORTE-FACTURA = AC-IMPORTE-COMISIONES +
AC-IMPORTE-INTERESES +
AC-IMPORTE-IMPUESTOS
AC-IMPORTE-FACTURA = 0 + 162 + 0 = 162

Si ATTRAINT-OPCION = ‘T’

Sino
ATLIQIMP-IMPORTE = W113IMPREC - W113IMPAPL
ATLIQIMP-IMPORTE = W113IMPREC - W113IMPAPL
ATLIQIMP-IMPORTE = 54.300 - 0
Fin Si
COMPUTE ATLIQIMP-IMPORTE = W113IMPREC - W113IMPAPL
ATLIQIMP-IMPORTE = W113IMPREC - W113IMPAPL
ATLIQIMP-IMPORTE = 54.300 - 0
Si ATLIQIMP-OPCION = ‘S’
MOVE AC-IMPORTE-INTERESES TO ATLIQIMP-INTMORA = 162
MOVE AC-IMPORTE-IMPUESTOS TO ATLIQIMP-IMPMORA =0
MOVE AC-IMPORTE-COMISIONES TO ATLIQIMP-COMMORA =0
Fin Si
Fin Si
ATLIQIMP-CODENT PIC X(04). ='0015'
ATLIQIMP-CENTALTA PIC X(04). ='0000'
ATLIQIMP-CUENTA PIC X(12). ='810007881505'
ATLIQIMP-CLAMON PIC 9(03). ='152'
ATLIQIMP-NUMEXTCTA PIC 9(03). ='103'
ATLIQIMP-OPCION PIC X(01). ='S'
ATLIQIMP-PRODUCTO PIC X(02). ='15'
ATLIQIMP-SUBPRODU PIC X(04). ='0021'
ATLIQIMP-CONPROD PIC X(03). ='001'
ATLIQIMP-CODCAM PIC X(06). ='000000'
ATLIQIMP-TIPBON PIC X(06). =' '
ATLIQIMP-INDUF PIC X(01). ='S'
ATLIQIMP-CLAMONUF PIC 9(03). ='990'
ATLIQIMP-FECHASYS PIC X(10). ='2017-12-21'
ATLIQIMP-FECCON PIC X(10). ='2017-12-21'
ATLIQIMP-FORCALINT PIC X(01). ='O'
ATLIQIMP-CODREGIMEN PIC 9(04). ='0001'
ATLIQIMP-OFIMPAGO PIC X(04). ='0001'
ATLIQIMP-CODPAIS PIC 9(03). ='152'
ATLIQIMP-HORA PIC X(08). ='123744 '
ATLIQIMP-CENTRO-CONT PIC X(04). ='0000'
ATLIQIMP-USERID PIC X(08). ='00001651'
ATLIQIMP-TERMINAL PIC X(08). ='88888888'
ATLIQIMP-CODJAVA PIC X(07). ='OPALRDC'
ATLIQIMP-CODRET PIC 9(02). ='00'
ATLIQIMP-IMPORTE PIC S9(15)V99. ='000000000054300,00'
ATLIQIMP-INTMORA PIC S9(15)V99. ='000000000000162,00'
ATLIQIMP-IMPMORA PIC S9(15)V99. ='000000000000000,00'
ATLIQIMP-COMMORA PIC S9(15)V99. ='000000000000000,00'
Fin llamada ATR033

Si ATLIQIMP-CODRET ='00'
ADD ATLIQIMP-INTMORA TO WS-INTMORA = 162
ADD ATLIQIMP-COMMORA TO WS-COMMORA =0
Fin Si
Llamada rutina ATR055
ATCOMDEU-CODENT PIC X(4). ='0015'
ATCOMDEU-CENTALTA PIC X(4). ='0000'
ATCOMDEU-CUENTA PIC X(12). ='810007881505'
ATCOMDEU-NUMEXTCTA PIC 9(3). ='103'
ATCOMDEU-CLAMON PIC 9(3). ='152'
ATCOMDEU-PRODUCTO PIC X(2). ='15'
ATCOMDEU-SUBPRODU PIC X(4). ='0021'
ATCOMDEU-CONPROD PIC X(3). ='001'
ATCOMDEU-CODCAM PIC X(6). ='000000'
ATCOMDEU-CLAMON-PRO PIC 9(3). ='152'
ATCOMDEU-INDUF PIC X(1). ='S'
ATCOMDEU-CLAMONUF PIC 9(03). ='990'
ATCOMDEU-TIPBON PIC X(6). =' '
ATCOMDEU-CODREGIMEN PIC 9(4). ='0001'
ATCOMDEU-FECPROCES PIC X(10). ='2017-12-21'
ATCOMDEU-FECCONTA PIC X(10). ='2017-12-21'
ATCOMDEU-OFIMPAGO PIC X(04). ='0000'
ATCOMDEU-TERMINAL PIC X(08). ='88888888'
ATCOMDEU-USERID PIC X(08). ='00001651'
ATCOMDEU-HORA PIC X(08). ='123744 '
ATCOMDEU-SESION PIC 9(15). ='000000000000000'
ATCOMDEU-CODREPSIST PIC X(04). ='4 '
ATCOMDEU-CODRET PIC 9(01). ='0'
ATCOMDEU-IMPCARGO PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-COMISION-INT PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-CLAMON-CONV PIC 9(03). ='000'
ATCOMDEU-SECOPE PIC 9(12). ='000000000000'
ATCOMDEU-CAPITAL PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-INTERESES PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-COMISIONES PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-IMPUESTOS PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-INTMORA PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-COMMORA PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-TOTAL-CONCEPTO PIC S9(15)V99. ='000000000000000,00'

Cursor sobre tabla mpdt182, desglose de extractos por línea y tipos de importe.
SELECT LINEA, TIPIMP, IMPINI, IMPAPL
FROM MPDT182
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND NUMEXTCTA = 103
AND CLAMON = 152
ORDER BY LINEA, TIPIMP

LINEA TIPIMP IMPINI IMPAPL


0001 1 277728,00 223428,00
0001 2 3810,00 3810,00
0001 3 35751,00 35751,00
0001 4 723,00 723,00
0001 5 27000,00 27000,00
0001 6 9288,00 9288,00
0001 7 0,00 0,00

E-TIPIMP E-IMPINI E-IMPAPL E-IMPFIN = E-IMPINI - E-IMPAPL E-IMPMIN


1 277728,00 223428,00 54300,00 0,00
2 3810,00 3810,00 0,00 0,00
3 35751,00 35751,00 0,00 0,00
4 723,00 723,00 0,00 0,00
5 27000,00 27000,00 0,00 0,00
6 9288,00 9288,00 0,00 0,00
7 0,00 0,00 0,00 0,00

354300,00 = ∑ E-IMPINI = AC-DEUDA-TOTAL

Si ATCOMDEU-CODREPSIST <> ‘3 ‘ y ATCOMDEU-CODREPSIST <> ‘3SI ‘


Tratar movimientos del extracto
Cursor sobre mpdt012
SELECT CODENT, CENTALTA, CUENTA, NUMEXTCTA, CLAMON, NUMMOVEXT, INDNORCOR, TIPOFAC,
FECFAC, INDMOVEXT, INDMOVANU, INDRET, PAN, IMPFAC,
IMPIMPTO, CODPAIS, CODACT, SECOPE, SIAIDCD, FECLIQ, IMPAMORT
FROM MPDT012
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND NUMEXTCTA = 103
AND CLAMON = 152
ORDER BY NUMMOVEXT

NUMEXTCTA CLAMON NUMMOVEXT INDNORCOR TIPOFAC FECFAC INDMOVEXT INDMOVANU INDRET PAN IMPFAC IMPIMPTO CODPAIS CODACT SECOPE SIAIDCD FECLIQ IMPAMORT

103 152 1 0 100 2017-11-24 0 0 0 354300,00 0,00 152 0 1385903625 2017-11-24 0,00

103 152 2 0 78 2017-11-24 0 0 0 72,00 0,00 152 0 1384361177 0001-01-01 0,00

103 152 3 0 72 2017-12-11 0 0 0 54300,00 0,00 152 0 1386402321 2017-11-24 0,00

103 152 4 0 67 2017-12-05 0 0 0 4998471888204261 300000,00 0,00 152 5311 320170207 3391336591506882 0001-01-01 300000,00

103 152 5 0 1024 2017-12-05 0 0 0 0,00 0,00 152 0 1390731401 2017-12-05 0,00

103 152 6 0 1110 2017-12-05 0 0 0 0,00 0,00 152 0 1391128967 0001-01-01 0,00

Para cada uno de los registros anteriores se realizan los siguientes pasos:
 Lectura tabla tipos de factura mpdt044 para cada TIPOFAC e INDNORCOR de
mpdt012, destacado en amarillo. Lectura uno a uno.
TIPOFAC SIGNO INDFACINF INDFACFIN INDAPLINT TIPFECINIINT CODIMPTO
100 + S N N 0
78 + N N N 0
72 + S N S C 0
67 - N N N 0
1024 + S N N 0
1110 + N N N 0
 Lectura tabla mpdt151 para cada NUMMOVEXT de mpdt012, destacado en verde.
Para este caso encontró un registro para el nummovext 5 y 6.
NUMMOVEXT CODCONECO TIPIMP IMPAPLECO IMPBRUECO IMPBONECO IMPIMPTO IMPIMPTO2 PORINT
5 4001 5 186259,00 14900,00 0,00 0,00 0,00 1,4900
6 53 6 0,00 2035,00 0,00 0,00 0,00 2,9800
 Se ejecuta registro a registro el siguiente algoritmo:

Si INDMOVANU.mpdt012 = 0 (indicador de movimiento anulado 0=normal, 1=anulado)


Si INDFACINF.mpdt044 = ‘N’ (indicador de transacción informativa S/N) y
TIPOFAC.mpdt044 <> 72
WS-IMPORTE = IMPFAC.mpdt012 – IMPAMORT.mpdt012

Si SIGNO.mpdt044 = ‘-‘
WS-IMPORTE = WS-IMPORTE * -1
Fin Si

AC-DEUDA-TOTAL += WS-IMPORTE
E-IMPFIN(1,1) += WS-IMPORTE

Si INDFACFIN.mpdt044 = ‘N’ (indicador de transacción financiable S/N)


AC-IMP-NO-FINANC += WS-IMPORTE
E-IMPMIN(1,1) += WS-IMPORTE
Fin Si
Fin Si

WS-IMPIMPTO += IMPIMPTO.mpdt012
Si SIGNO.mpdt044 = ‘-‘
WS-IMPIMPTO = WS-IMPIMPTO * -1
Fin Si

AC-DEUDA-TOTAL += WS-IMPIMPTO
AC-IMP-NO-FINANC += WS-IMPIMPTO
E-IMPFIN (1,4) += WS-IMPIMPTO
E-IMPMIN (1,4) += WS-IMPIMPTO

Si existen movimientos en mpdt151


WS-CONCEPTO-NETO = IMPBRUECO.MPDT151 - IMPBONECO.MPDT151

Si SIGNO.mpdt044 = ‘+’
WS-IMPORTE = WS-CONCEPTO-NETO
Sino
WS-IMPORTE = WS-CONCEPTO-NETO * -1
Fin Si

Si NACIONAL
AC-DEUDA-TOTAL += WS-IMPORTE
E-IMPFIN(1,TIPIMP) += WS-IMPORTE, según el tipo de importe acumula
Sino
AC-COMISION-INT += WS-IMPORTE
Fin Si

Si SIGNO.mpdt044 = ‘-‘
WS-IMPIMPTO-151 = IMPIMPTO.mpdt151 + IMPIMPTO2.mpdt151
Sino
WS-IMPIMPTO-151=(IMPIMPTO.mpdt151 + IMPIMPTO2.mpdt151) * -1
Fin Si

Si NACIONAL
AC-DEUDA-TOTAL += WS-IMPIMPTO-151
E-IMPFIN(1,4) += WS-IMPIMPTO-151
Sino
AC-COMISION-INT += WS-IMPIMPTO-151
Fin Si

Si NACIONAL
ATCOMDEU-TOTAL-CONCEPTO += WS-CONCEPTO-NETO
Fin Si

Fin Si

Fin Si

Fin Si **
Movimientos en mpdt012
NUMEXTCTA NUMMOVEXT INDNORCOR TIPOFAC INDMOVANU PAN IMPFAC IMPIMPTO IMPAMORT
103 1 0 100 0 354300,00 0,00 0,00
103 2 0 78 0 72,00 0,00 0,00
103 3 0 72 0 54300,00 0,00 0,00
103 4 0 67 0 4998471888204261 300000,00 0,00 300000,00
103 5 0 1024 0 0,00 0,00 0,00
103 6 0 1110 0 0,00 0,00 0,00

Movimientos en mpdt151 para el NUMMOVEXT correspondiente


NUMMOVEXT CODCONECO TIPIMP IMPBRUECO IMPBONECO IMPIMPTO IMPIMPTO2

5 4001 5 14900,00 0,00 0,00 0,00


6 53 6 2035,00 0,00 0,00 0,00

Parámetros tipofac en mpdt044


TIPOFAC SIGNO INDFACINF INDFACFIN
100 + S N
78 + N N
72 + S N
67 - N N
1024 + S N
1110 + N N

WS_IMPORTE WS-IMPIMPTO WS-CONCEPTO-NETO WS-IMPIMPTO-151 AC-DEUDA-TOTAL AC-IMP-NO-FINANC ATCOMDEU-TOTAL-CONCEPTO


0,00 354300,00 0,00
72,00 0,00 354372,00 72,00
0,00 354372,00 72,00
0,00 0,00 354372,00 72,00
14900,00 0,00 14900,00 0,00 369272,00 72,00 14900,00
0,00 0,00 369272,00 72,00
2035,00 2035,00 0,00 371307,00 16935,00

segundo arreglo
E-TIPIMP E-IMPINI E-IMPAPL E-IMPFIN E-IMPMIN
capital 1 72,00 72,00
comisión 2
intereses 3
impuestos 4 0,00 0,00
gasto de cobranza 5 14900,00
intereses de mora 6 2035,00
impuesto de mora 7

ATCOMDEU-IMPCARGO = AC-DEUDA-TOTAL = 371307,00

ATCOMDEU-CAPITAL = E-IMPFIN (1) + E-IMPFIN (1) = 72,0 + 54300,0 = 54372,0


ATCOMDEU-INTERESES = E-IMPFIN (3) + E-IMPFIN (3) = 0,0 + 0,0 = 0,0
ATCOMDEU-COMISIONES = E-IMPFIN (2) + E-IMPFIN (2) = 0,0 + 0,0 = 0,0
ATCOMDEU-IMPUESTOS = E-IMPFIN (4) + E-IMPFIN (4) = 0,0 + 0,0 = 0,0
ATCOMDEU-INTMORA = E-IMPFIN (6) + E-IMPFIN (6) = 2035,0 + 0,0 = 2035,0
ATCOMDEU-COMMORA = E-IMPFIN (7) + E-IMPFIN (7) = 14900,0 + 0,0 = 14900,0

ATCOMDEU-CODENT PIC X(4). ='0015'


ATCOMDEU-CENTALTA PIC X(4). ='0000'
ATCOMDEU-CUENTA PIC X(12). ='810007881505'
ATCOMDEU-NUMEXTCTA PIC 9(3). ='103'
ATCOMDEU-CLAMON PIC 9(3). ='152'
ATCOMDEU-PRODUCTO PIC X(2). ='15'
ATCOMDEU-SUBPRODU PIC X(4). ='0021'
ATCOMDEU-CONPROD PIC X(3). ='001'
ATCOMDEU-CODCAM PIC X(6). ='000000'
ATCOMDEU-CLAMON-PRO PIC 9(3). ='152'
ATCOMDEU-INDUF PIC X(1). ='S'
ATCOMDEU-CLAMONUF PIC 9(03). ='990'
ATCOMDEU-TIPBON PIC X(6). =' '
ATCOMDEU-CODREGIMEN PIC 9(4). ='0001'
ATCOMDEU-FECPROCES PIC X(10). ='2017-12-21'
ATCOMDEU-FECCONTA PIC X(10). ='2017-12-21'
ATCOMDEU-OFIMPAGO PIC X(04). ='0000'
ATCOMDEU-TERMINAL PIC X(08). ='88888888'
ATCOMDEU-USERID PIC X(08). ='00001651'
ATCOMDEU-HORA PIC X(08). ='123744 '
ATCOMDEU-SESION PIC 9(15). ='000000000000000'
ATCOMDEU-CODREPSIST PIC X(04). ='4 '
ATCOMDEU-CODRET PIC 9(01). ='0'
ATCOMDEU-IMPCARGO PIC S9(15)V99. ='000000000371307,00'
ATCOMDEU-COMISION-INT PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-CLAMON-CONV PIC 9(03). ='000'
ATCOMDEU-SECOPE PIC 9(12). ='000000000000'
ATCOMDEU-CAPITAL PIC S9(15)V99. ='000000000054372,00'
ATCOMDEU-INTERESES PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-COMISIONES PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-IMPUESTOS PIC S9(15)V99. ='000000000000000,00'
ATCOMDEU-INTMORA PIC S9(15)V99. ='000000000002035,00'
ATCOMDEU-COMMORA PIC S9(15)V99. ='000000000014900,00'
ATCOMDEU-TOTAL-CONCEPTO PIC S9(15)V99. ='000000000016935,00'
Fin llamada ATR055

ADD ATCOMDEU-CAPITAL TO WS-CAPITAL = 54372,00 + 0,00


ADD ATCOMDEU-INTERESES TO WS-INTERESES = 0,00 + 0,00
ADD ATCOMDEU-COMISIONES TO WS-COMISIONES = 0,00 + 0,00
ADD ATCOMDEU-IMPUESTOS TO WS-IMPUESTOS = 0,00 + 0,00
ADD ATCOMDEU-IMPUESTOS TO ATTOTDEU-IMPUESTOS = 0,00 + 0,00
ADD ATCOMDEU-INTMORA TO WS-INTMORA = 2035,00 + 162,00 = 2197,00
ADD ATCOMDEU-COMMORA TO WS-COMMORA = 14900,00 + 0,00
Fin Si
Fin cursor mpdt163

ATTOTDEU-CAPFACTUR = WS-CAPITAL = 54372,0


ATTOTDEU-INTFACTUR = WS-INTERESES = 0,0
ATTOTDEU-COMFACTUR = WS-COMISIONES = 0,0
ATTOTDEU-INTMORA = WS-INTMORA = 2197,0
ATTOTDEU-GASMORA = WS-COMMORA = 14900,0

Si NUMEXTPEN.mpd163 <> 0
Calculo interés mora día, se verifica que exista un codconeco = 53 en el extracto
Se busca el último nummovext
SELECT MAX(NUMMOVEXT)  3
FROM MPDT194
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND CLAMON = 152
AND NUMEXTCTA= 103

Si existe entonces se busca el PORINT para este nummovext en mpdt194


SELECT PORINT  2,9800
FROM MPDT194
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND CLAMON = 152
AND NUMEXTCTA= 103
AND NUMMOVEXT= 3

PORINT = 2,9800
Si existe un impagado
Lectura tabla mpdt052 de conceptos económicos
SELECT VERTIENTE, NIVAPLICA, INDAPLICA, PORREF, CODIMPTO, CODIMPTO2
FROM MPDT052
WHERE CODENT = '0015'
AND CODCONECO = 53

VERTIENTE NIVAPLICA INDAPLICA PORREF CODIMPTO CODIMPTO2


E CO H 0,0000 0 0

Cálculo intereses mora


Llamada rutina ATR035
ATRUTINT-CODENT PIC X(04). = '0015'
ATRUTINT-VERTIENTE PIC X(01). = 'E'
ATRUTINT-PRODUCTO PIC X(02). = '15'
ATRUTINT-SUBPRODU PIC X(04). = '0021'
ATRUTINT-CONPROD PIC X(03). = '001'
ATRUTINT-CODCONECO PIC 9(04). = '0053'
ATRUTINT-INDAPLICA PIC X(01). = 'H'
ATRUTINT-NIVAPLICA PIC X(02). = 'CO'
ATRUTINT-CODMAR PIC 9(02). = '00'
ATRUTINT-INDTIPT PIC 9(02). = '00'
ATRUTINT-FORCALINT PIC X(02). = 'O '
ATRUTINT-TIPBON PIC X(06). = ' '
ATRUTINT-IMPORTE PIC S9(15)V99. = '000000000054300,00'
ATRUTINT-IMPORTETRAMO PIC S9(15)V99. = '000000000000000,00'
ATRUTINT-CLAMON PIC 9(03). = '152'
ATRUTINT-FECINI PIC X(10). = '2017-12-20'
ATRUTINT-FECFIN PIC X(10). = '2017-12-21'
ATRUTINT-FECHASYS PIC X(10). = '2017-12-21'
ATRUTINT-PORREF PIC S9(03)V9(4). = '000,0000'
ATRUTINT-POREXTLIQ PIC S9(03)V9(4). = '002,9800'
ATRUTINT-SCORE PIC 9(03). = '000'
ATRUTINT-CODRET PIC 9(02). = '00'
ATRUTINT-IMPBRUINT PIC S9(15)V99. = '000000000000000,00'
ATRUTINT-IMPBONIF PIC S9(15)V99. = '000000000000000,00'
ATRUTINT-INDAPLINT PIC X(01). = ' '
ATRUTINT-NOMBRE-BD PIC X(24). = ' '
ATRUTINT-NOMBRE-TABLA PIC X(11). = ' '
ATRUTINT-OPERACION PIC X(20). = ' '
FILLER PIC X(10). = ' '
ATRUTINT-ERROR PIC S9(10). = '0000000000'

Si ATRUTINT-NIVAPLICA = ‘TA’

Sino
Lectura tabla mpdt049 de productos – condición económica
SELECT IMPFIJO, IMPMIN, IMPMAX, PORUF, REDONDEO
FROM MPDT049
WHERE CODENT = '0015' AND
PRODUCTO = '15' AND
SUBPRODU = '0021' AND
CONPROD = '001' AND
VERTIENTE = 'E' AND
CODCONECO = 53 AND
CLAMON = 152

IMPFIJO IMPMIN IMPMAX PORUF REDONDEO


0,00 0,00 9999999999,00 0,0000 0

Se lee catálogo ‘ATR035’ y se obtiene límite superior de truncado de intereses = 5.000


Diferencia de fechas entre ATRUTINT-FECINI = '2017-12-19' y ATRUTINT-FECFIN = '2017-
12-20', WS-DIF-DIAS= 1

Si ATRUTINT-POREXTLIQ = 0 ATRUTINT-POREXTLIQ=2,98

Sino
Calcula intereses con tasa
AUX-IMPBRUINT-DEC = WS-IMPFIJO-AUX +
(ATRUTINT-IMPORTE * ATRUTINT-POREXTLIQ * WS-DIF-DIAS /
3000)

AUX-IMPBRUINT-DEC = 0,0 + ( 54300,0 * 2,98 * 1 / 3000 )


AUX-IMPBRUINT-DEC = 53,9

MOVE AUX-IMPBRUINT-DEC TO ATRUTINT-IMPBRUINT = 53,90

MOVE ATRUTINT-IMPBRUINT TO ATRUTRED-SINRED = 53,9000000

Si ATRUTINT-IMPORTE < 5.000


Sin redondeo
Sino
Llamada rutina ATR037 para redondeo
ATRUTRED-REDONDEO PIC S9(01). ='0' redondeo a la unidad
ATRUTRED-SINRED PIC S9(10)V9999999. ='000000053,9000000’
ATRUTRED-CONRED PIC S9(10)V9999999. ='0000000000,0000000'

ADD ATRUTRED-SINRED TO WS-RED-UNIDAD ROUNDED


WS-RED-UNIDAD = 54

MOVE WS-RED-UNIDAD TO ATRUTRED-CONRED = 54

ATRUTRED-REDONDEO PIC S9(01). ='0' redondeo a la unidad


ATRUTRED-SINRED PIC S9(10)V9999999. ='0000000053,9000000’
ATRUTRED-CONRED PIC S9(10)V9999999. ='0000000054,0000000'
Fin rutina ATR037
MOVE ATRUTRED-CONRED TO ATRUTINT-IMPBRUINT = 54,00
Fin Si
Fin si

Fin Si
ATRUTINT-CODENT PIC X(04). = '0015'
ATRUTINT-VERTIENTE PIC X(01). = 'E'
ATRUTINT-PRODUCTO PIC X(02). = '15'
ATRUTINT-SUBPRODU PIC X(04). = '0021'
ATRUTINT-CONPROD PIC X(03). = '001'
ATRUTINT-CODCONECO PIC 9(04). = '0053'
ATRUTINT-INDAPLICA PIC X(01). = 'H'
ATRUTINT-NIVAPLICA PIC X(02). = 'CO'
ATRUTINT-CODMAR PIC 9(02). = '00'
ATRUTINT-INDTIPT PIC 9(02). = '00'
ATRUTINT-FORCALINT PIC X(02). = 'O '
ATRUTINT-TIPBON PIC X(06). = ' '
ATRUTINT-IMPORTE PIC S9(15)V99. = '000000000054300,00'
ATRUTINT-IMPORTETRAMO PIC S9(15)V99. = '000000000000000,00'
ATRUTINT-CLAMON PIC 9(03). = '152'
ATRUTINT-FECINI PIC X(10). = '2017-12-20'
ATRUTINT-FECFIN PIC X(10). = '2017-12-21'
ATRUTINT-FECHASYS PIC X(10). = '2017-12-21'
ATRUTINT-PORREF PIC S9(03)V9(4). = '000,0000'
ATRUTINT-POREXTLIQ PIC S9(03)V9(4). = '002,9800'
ATRUTINT-SCORE PIC 9(03). = '000'
ATRUTINT-CODRET PIC 9(02). = '00'
ATRUTINT-IMPBRUINT PIC S9(15)V99. = '000000000000054,00'
ATRUTINT-IMPBONIF PIC S9(15)V99. = '000000000000000,00'
ATRUTINT-INDAPLINT PIC X(01). = 'S'
ATRUTINT-NOMBRE-BD PIC X(24). = ' '
ATRUTINT-NOMBRE-TABLA PIC X(11). = ' '
ATRUTINT-OPERACION PIC X(20). = ' '
FILLER PIC X(10). = ' '
ATRUTINT-ERROR PIC S9(10). = '0000000000'
Fin llamada ATR035

WS-INTERES-NETO = ATRUTINT-IMPBRUINT - ATRUTINT-IMPBONIF


= 54,00 – 0,0
= 54,00
MOVE ATRUTINT-IMPBRUINT TO ATTOTDEU-IMPBRUECO-DIA = 54,00
MOVE ATRUTINT-IMPBONIF TO ATTOTDEU-IMPBONECO-DIA = 0,00
Fin Si NUMEXTPEN.mpd163 <> 0

Proceso cuotas periodificadas


Llamada rutina ATR417
ATPERCU1-CODENT PIC X(4). ='0015'
ATPERCU1-CENTALTA PIC X(4). ='0000'
ATPERCU1-CUENTA PIC X(12). ='810007881505'
ATPERCU1-OPCION PIC X(01). ='S'
ATPERCU1-NUMBENCTA PIC 9(5). ='00000'
ATPERCU1-MOTIVO PIC X(2). ='35'
ATPERCU1-FECHA-TRANS2 PIC X(10). ='2017-12-21'
ATPERCU1-FECHA-CONT2 PIC X(10). ='2017-12-21'
ATPERCU1-OFIMPAGO PIC X(04). ='0000'
ATPERCU1-USERID PIC X(08). ='00001651'
ATPERCU1-TERMINAL PIC X(08). ='88888888'
ATPERCU1-HORA PIC X(08). ='123744 '
ATPERCU1-SESION PIC 9(15). ='000000000000000'
ATPERCU1-CODRET PIC 9(01). ='0'
ATPERCU1-CLAMON PIC 9(03). ='000'
ATPERCU1-SECOPE PIC 9(12). ='000000000000'
ATPERCU1-IMP-PASIVO PIC S9(15)V99. ='000000000000000,00'
ATPERCU1-IMP-EXTRACTO PIC S9(15)V99. ='000000000000000,00'

Lectura sobre tabla de productos


SELECT APLICUOTA = ‘L’
FROM MPDT043
WHERE CODENT = '0015'
AND PRODUCTO = '15'
AND SUBPRODU = '0021'

Llamada rutina ATR900, obtener SECOPE


MOVE SECSAT-VALCONT TO ATPERCU1-SECOPE = 000051034689
ATPERCU1-CODENT PIC X(4). ='0015'
ATPERCU1-CENTALTA PIC X(4). ='0000'
ATPERCU1-CUENTA PIC X(12). ='810007881505'
ATPERCU1-OPCION PIC X(01). ='S'
ATPERCU1-NUMBENCTA PIC 9(5). ='00000'
ATPERCU1-MOTIVO PIC X(2). ='35'
ATPERCU1-FECHA-TRANS2 PIC X(10). ='2017-12-21'
ATPERCU1-FECHA-CONT2 PIC X(10). ='2017-12-21'
ATPERCU1-OFIMPAGO PIC X(04). ='0000'
ATPERCU1-USERID PIC X(08). ='00001651'
ATPERCU1-TERMINAL PIC X(08). ='88888888'
ATPERCU1-HORA PIC X(08). ='123744 '
ATPERCU1-SESION PIC 9(15). ='000000000000000'
ATPERCU1-CODRET PIC 9(01). ='0'
ATPERCU1-CLAMON PIC 9(03). ='000'
ATPERCU1-SECOPE PIC 9(12). ='000051034689'
ATPERCU1-IMP-PASIVO PIC S9(15)V99. ='000000000000000,00'
ATPERCU1-IMP-EXTRACTO PIC S9(15)V99. ='000000000000000,00'

Fin rutina ATR417 no aplica cuotas periodificadas

Proceso Compras en cuotas.


Cursor sobre mpdt205 de operaciones en cuotas.
SELECT CODENT, CENTALTA, CUENTA, NUMOPECUO, NUMFINAN, IMPFAC
FROM MPDT205
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND LINEA >= '0001'
AND LINEA <= '0001'
AND ESTCOMPRA = 1

CODENT CENTALTA CUENTA NUMOPECUO NUMFINAN IMPFAC


0015 0000 810007881505 107 1 1292250,00

Para cada registro lee tabla mpdt206 de cuotas financiadas.

NUMOPECUO IMPINTTOTAL IMPAMORT IMPINTAMORT IMPCOMTOTAL IMPSEGTOTAL IMPCOMAMORT IMPSEGAMORT IMPTOTAL


107 175880,00 738479,00 142399,00 0,00 0,00 0,00 0,00 1468130,00

Para cada registro de la mpdt206 se realizan las siguientes operaciones:

OPERACIÓN
COMPUTE WS-DIFE-AMOR =
1
W206IMPTOTAL - (W206IMPINTTOTAL + W206IMPAMORT)
2 ADD WS-DIFE-AMOR TO WS-CAPITAL-TCC
SUBTRACT W206IMPINTAMORT FROM W206IMPINTTOTAL
3
GIVING WS-DIFE-AMOR
4 ADD WS-DIFE-AMOR TO WS-INTERES-TCC
SUBTRACT W206IMPCOMAMORT FROM W206IMPCOMTOTAL
5
GIVING WS-DIFE-AMOR
6 ADD WS-DIFE-AMOR TO WS-COMISION-TCC
SUBTRACT W206IMPSEGAMORT FROM W206IMPSEGTOTAL
7
GIVING WS-DIFE-AMOR
8 ADD WS-DIFE-AMOR TO WS-SEGURO-TCC

El resultado de cada para cada una de los registros y su correspondiente acumulación se muestra en el siguiente
cuadro:
ITERACIÓN OPERACIÓN WS-DIFE-AMOR WS-CAPITAL-TCC WS-INTERES-TCC WS-COMISION-TCC WS-SEGURO-TCC
1 553771,00
1
2 553771,00
3 33481,00
4 33481,00

5 0,00

6 0,00

7 0,00

8 0,00

MOVE WS-CAPITAL-TCC TO ATTOTDEU-IMPCAPITAL = 553771,00


MOVE WS-INTERES-TCC TO ATTOTDEU-IMPINTERES = 33481,00
MOVE WS-COMISION-TCC TO ATTOTDEU-COMISIONES = 0,00
MOVE WS-SEGURO-TCC TO ATTOTDEU-SEGURO = 0,00

COMPUTE ATTOTDEU-DEUDA-TOTAL =
ATTOTDEU-CAPFACTUR + ATTOTDEU-INTFACTUR +
ATTOTDEU-COMFACTUR + ATTOTDEU-INTMORA +
ATTOTDEU-GASMORA + ATTOTDEU-IMPCAPITAL +
WS-INTERES-TCC-DIA + ATTOTDEU-COMISIONES +
ATTOTDEU-SEGURO + ATTOTDEU-CUOMANT

ATTOTDEU-DEUDA-TOTAL = 54372,00 + 0,00 +


0,00 + 2197,00 +
14900,00 + 553771,00 +
0,00 + 0,00 +
0,00 + 0,00 = 625240,00

COMPUTE ATTOTDEU-DEUDA-DIA =
ATTOTDEU-CAPFACTUR + ATTOTDEU-INTFACTUR +
ATTOTDEU-COMFACTUR + ATTOTDEU-INTMORA +
ATTOTDEU-GASMORA + WS-CAPITAL-TCC-DIA +
WS-INTERES-TCC-DIA + WS-COMISION-TCC-DIA +
WS-SEGURO-TCC-DIA + ATTOTDEU-IMPUESTOS

ATTOTDEU-DEUDA-DIA = 54372,00 + 0,00 +


0,00 + 2197,00 +
14900,00 + 0,00 +
0,00 + 0,00 +
0,00 + 0,00 = 71469,00

Fin Si

ATTOTDEU-CODENT PIC X(4). ='0015'


ATTOTDEU-CENTALTA PIC X(4). ='0000'
ATTOTDEU-CUENTA PIC X(12). ='810007881505'
ATTOTDEU-LINEA PIC X(4). ='0001'
ATTOTDEU-FECHA-OPE PIC X(10). ='2017-12-21'
ATTOTDEU-FECHA-CONTA PIC X(10). ='2017-12-21'
ATTOTDEU-OFICINA PIC X(4). ='0000'
ATTOTDEU-USUARIO PIC X(8). ='00001651'
ATTOTDEU-TERM-CONTA PIC X(8). ='88888888'
ATTOTDEU-HORA-OPE PIC X(6). ='123744'
ATTOTDEU-CODREPSIST PIC X(4). ='4 '
ATTOTDEU-CODRET PIC 9(01). ='0'
ATTOTDEU-CAPFACTUR PIC S9(15)V99. ='000000000054372,00'
ATTOTDEU-INTFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTMORA PIC S9(15)V99. ='000000000002197,00'
ATTOTDEU-GASMORA PIC S9(15)V99. ='000000000014900,00'
ATTOTDEU-IMPCAPITAL PIC S9(15)V99. ='000000000553771,00'
ATTOTDEU-IMPINTERES PIC S9(15)V99. ='000000000033481,00'
ATTOTDEU-COMISIONES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-SEGURO PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-CUOMANT PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-DIA PIC S9(15)V99. ='000000000071469,00'
ATTOTDEU-DEUDA-TOTAL PIC S9(15)V99. ='000000000625240,00'
ATTOTDEU-IMPUESTOS PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBRUECO-DIA PIC S9(15)V99. ='000000000000054,00'
ATTOTDEU-IMPBONECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO2-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-RETORNO PIC X(002). ='00'
Fin llamada ATR054

 Si código retorno rutina ATR054 OK


IF ATTOTDEU-CORRECTO
IF MP537-LINEA NOT EQUAL ‘0001’ OR
MP537-CODREPSIST EQUAL ‘1 ‘ OR
MP537-CODREPSIST EQUAL ‘9 ’ OR
MP537-CODREPSIST EQUAL ‘3SI ‘ OR
MP537-CODREPSIST EQUAL ‘3 ‘

...

ELSE
MOVE ATTOTDEU-CAPFACTUR TO MP537-CAPFACTUR
ADD ATTOTDEU-IMPUESTOS TO MP537-CAPFACTUR = 54372,0
MOVE ATTOTDEU-INTFACTUR TO MP537-INTFACTUR = 0,0
MOVE ATTOTDEU-COMFACTUR TO MP537-COMFACTUR = 0,0
MOVE ATTOTDEU-INTMORA TO MP537-INTMORA = 2197,0
MOVE ATTOTDEU-GASMORA TO MP537-GASMORA = 14900,0

IF MP537-CODREPSIST EQUAL ‘3 ‘ OR
MP537-CODREPSIST EQUAL ‘3SI ‘ OR
MP537-CODREPSIST EQUAL ‘4 ‘ OR
MP537-CODREPSIST EQUAL ‘4SI ‘ OR
MP537-CODREPSIST EQUAL ‘8 ‘ OR
MP537-CODREPSIST EQUAL ‘8SI ‘ OR
MP537-CODREPSIST EQUAL ‘6 ‘
CALCULO GASTOS DE COBRANZA
Llamada rutina ATR075
ATCOBRAN-CODENT PIC X(04). ='0015'
ATCOBRAN-CENTALTA PIC X(04). ='0000'
ATCOBRAN-CUENTA PIC X(12). =' 810007881505'
ATCOBRAN-FECHASYS PIC X(10). ='2017-12-21'
ATCOBRAN-CODRET PIC 9(02). =' '
ATCOBRAN-IMPORTE PIC S9(15)V99. =' '
ATCOBRAN-IMPMORA1 PIC S9(15)V99. =' '
ATCOBRAN-IMPMORA2 PIC S9(15)V99. =' '
ATCOBRAN-COMMORA PIC S9(15)V99. =' '

SELECT INDUF, CODPAIS, OFIMPAGO, CLAMONUF


FROM MPDT021
WHERE CODENT = '0015'

INDUF CODPAIS OFIMPAGO CLAMONUF


S 152 0001 990

Lectura catálogo “IMPMINCOB” importe mínimo para cobranza, WS-IMPMIN-ALF = 1000


Lectura catálogo “NUMDIASCOB” número de días para el cobro de cobranza, WS-NUMDIAS = 21
Lectura catálogo “MULTICOB” multiplicador de cobranzas para definir máximo, WS-MULTICOB-ALF =
10000
Lectura tabla tipos de factura mpdt044 con tipofac = 1024
SELECT CODENT, INDNORCOR, TIPOFAC
FROM MPDT044
WHERE CODENT = '0015'
AND TIPOFAC = 1024
CODENT INDNORCOR TIPOFAC
0015 0 1024

Lectura tabla tipo de transacción – concepto económico mpdt059


SELECT INDAPLCON, INDAPLDEBCRE
FROM MPDT059
WHERE CODENT = '0015'
AND TIPOFAC = 1024
AND INDNORCOR = 0
AND CODCONECO = 4000
INDAPLCON INDAPLDEBCRE
M 1

Si INDAPLCON < > ‘M’ o INDAPLDEBCRE <> ‘1’  CONECO-ERRONEO = true

Lectura tabla de conceptos económicos mpdt052


SELECT FECINI, FECFIN, INDPORTRAMO, NIVAPLICA, INDAPLICA, PORREF, INDBONOPE, VERTIENTE, CODIMPTO,
CODIMPTO2
FROM MPDT052
WHERE CODENT = '0015'
AND CODCONECO = 4000
FECINI FECFIN INDPORTRAMO NIVAPLICA INDAPLICA PORREF INDBONOPE VERTIENTE CODIMPTO CODIMPTO2
2002-08-08 9999-12-31 P CO V 0,0000 N E 0 0

Si ATCOBRAN-FECHASYS <= FECINI.DCLMPDT052 o


ATCOBRAN-FECHASYS >= FECFIN OF DCLMPDT052
SET CONECO-ERRONEO TO TRUE
Fin Si

Búsqueda de impagados en tabla de impagados mpst113


SELECT FECALTA
FROM MPDT113
WHERE CODENT ='0015'
AND CENTALTA ='0000'
AND CUENTA ='810007881505'
AND CLAMON = 152
AND SITUACION = 0
ORDER BY FECALTA
FECALTA
2017-12-10

Si existe impagado
Se calcula la diferencia de días entre la fecha de alta del impagado y la fecha de proceso, 2017-
12-10 y 2017-12-20 respectivamente, NUMDIAS = 10. En este caso como los días de mora son
menores al parámetro(21) no se calculas gastos de cobranza
Si NUMDIAS > WS-NUMDIAS (10 > 21)
Cálculo gastos de cobranza
Fin Si
Fin Si
ATCOBRAN-CODENT PIC X(04). ='0015'
ATCOBRAN-CENTALTA PIC X(04). ='0000'
ATCOBRAN-CUENTA PIC X(12). =' 810007881505'
ATCOBRAN-FECHASYS PIC X(10). ='2017-12-21'
ATCOBRAN-CODRET PIC 9(02). ='00'
ATCOBRAN-IMPORTE PIC S9(15)V99. ='000000000000000,00'
ATCOBRAN-IMPMORA1 PIC S9(15)V99. ='000000000000000,00'
ATCOBRAN-IMPMORA2 PIC S9(15)V99. ='000000000000000,00'
ATCOBRAN-COMMORA PIC S9(15)V99. ='000000000000000,00'
Fin rutina ATR075
MP537-GASMORA += ATCOBRAN-COMMORA + ATCOBRAN-IMPMORA1 + ATCOBRAN-IMPMORA2
= 14900, 0 + 0,0 + 0,0 + 0,0
WS-GTOS-COBR ROUNDED = ATCOBRAN-COMMORA + ATCOBRAN-IMPMORA1 + ATCOBRAN-IMPMORA = 0,0
END-IF

MOVE ATTOTDEU-IMPCAPITAL TO MP537-IMPCAPITAL = 553771,00


MOVE ATTOTDEU-IMPINTERES TO MP537-IMPINTERES = 33481,00
MOVE ATTOTDEU-COMISIONES TO MP537-COMISIONES = 0,00
MOVE ATTOTDEU-SEGURO TO MP537-SEGURO = 0,00
MOVE ATTOTDEU-CUOMANT TO MP537-CUOMANT = 0,00

MOVE ATTOTDEU-DEUDA-TOTAL TO WS-DEUDA-TOTAL-AUX = 625240,00


MOVE ATTOTDEU-DEUDA-DIA TO WS-DEUDA-DIA-AUX = 71469,00

Obtener deuda de avance línea 0002


Llamada rutina ATR054
ATTOTDEU-CODENT PIC X(4). ='0015'
ATTOTDEU-CENTALTA PIC X(4). ='0000'
ATTOTDEU-CUENTA PIC X(12). ='810007881505'
ATTOTDEU-LINEA PIC X(4). ='0002'
ATTOTDEU-FECHA-OPE PIC X(10). ='2017-12-21'
ATTOTDEU-FECHA-CONTA PIC X(10). ='2017-12-21'
ATTOTDEU-OFICINA PIC X(4). ='0000'
ATTOTDEU-USUARIO PIC X(8). ='00001651'
ATTOTDEU-TERM-CONTA PIC X(8). ='88888888'
ATTOTDEU-HORA-OPE PIC X(6). ='123744'
ATTOTDEU-CODREPSIST PIC X(4). ='4 '
ATTOTDEU-CODRET PIC 9(01). ='0'
ATTOTDEU-CAPFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTMORA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-GASMORA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPCAPITAL PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPINTERES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMISIONES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-SEGURO PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-CUOMANT PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-TOTAL PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPUESTOS PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBRUECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBONECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO2-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-RETORNO PIC X(002). =' '

Si ATTOTDEU-LINEA = ‘0001’ o espacios



Sino
MOVE ZERO TO ATTOTDEU-CAPFACTUR
MOVE ZERO TO ATTOTDEU-INTFACTUR
MOVE ZERO TO ATTOTDEU-COMFACTUR
MOVE ZERO TO ATTOTDEU-INTMORA
MOVE ZERO TO ATTOTDEU-GASMORA
MOVE ZERO TO ATTOTDEU-CUOMANT
Fin Si
Proceso Compras en cuotas.
Cursor sobre mpdt205 de operaciones en cuotas.
SELECT CODENT, CENTALTA, CUENTA, NUMOPECUO, NUMFINAN, IMPFAC
FROM MPDT205
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND LINEA >= '0002'
AND LINEA <= '0002'
AND ESTCOMPRA = 1
Sin movimientos en mpdt205

COMPUTE ATTOTDEU-DEUDA-TOTAL = ATTOTDEU-CAPFACTUR + ATTOTDEU-INTFACTUR +


ATTOTDEU-COMFACTUR + ATTOTDEU-INTMORA +
ATTOTDEU-GASMORA + ATTOTDEU-IMPCAPITAL +
WS-INTERES-TCC-DIA + ATTOTDEU-COMISIONES +
ATTOTDEU-SEGURO + ATTOTDEU-CUOMANT

ATTOTDEU-DEUDA-TOTAL = 0,00 + 0,00 +


0,00 + 0,00 +
0,00 + 0,00 +
0,00 + 0,00 +
0,00 + 0,00 = 0,00

COMPUTE ATTOTDEU-DEUDA-DIA = ATTOTDEU-CAPFACTUR + ATTOTDEU-INTFACTUR +


ATTOTDEU-COMFACTUR + ATTOTDEU-INTMORA +
ATTOTDEU-GASMORA + WS-CAPITAL-TCC-DIA +
WS-INTERES-TCC-DIA + WS-COMISION-TCC-DIA +
WS-SEGURO-TCC-DIA + ATTOTDEU-IMPUESTOS

ATTOTDEU-DEUDA-DIA = 0,00 + 0,00 +


0,00 + 0,00 +
0,00 + 0,00 +
0,00 + 0,00 +
0,00 + 0,00 = 0,00

ATTOTDEU-CODENT PIC X(4). ='0015'


ATTOTDEU-CENTALTA PIC X(4). ='0000'
ATTOTDEU-CUENTA PIC X(12). ='810007881505'
ATTOTDEU-LINEA PIC X(4). ='0002'
ATTOTDEU-FECHA-OPE PIC X(10). ='2017-12-20'
ATTOTDEU-FECHA-CONTA PIC X(10). ='2017-12-20'
ATTOTDEU-OFICINA PIC X(4). ='0000'
ATTOTDEU-USUARIO PIC X(8). ='00001651'
ATTOTDEU-TERM-CONTA PIC X(8). ='88888888'
ATTOTDEU-HORA-OPE PIC X(6). ='095428'
ATTOTDEU-CODREPSIST PIC X(4). ='4 '
ATTOTDEU-CODRET PIC 9(01). ='0'
ATTOTDEU-CAPFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTMORA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-GASMORA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPCAPITAL PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPINTERES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMISIONES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-SEGURO PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-CUOMANT PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-TOTAL PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPUESTOS PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBRUECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBONECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO2-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-RETORNO PIC X(002). ='00'
Fin llamada ATR054

 Buscar incidencias
SELECT SUM(T2.IMPFAC)
FROM MPDT009 T1, MPDT096 T2
WHERE T1.CODENT = '0015'
AND T1.CENTALTA = '0000'
AND T1.CUENTA = ' 810007881505'
AND T1.INDSITTAR = 5
AND T1.INDULTTAR = 'S'
AND T1.PAN = T2.PAN
AND T2.FECSOLINC = '2017-12-20'
AND T2.TIPOSOL = 4
WS-IMPFAC
0,0

 Buscar Reclamaciones
SELECT SUM(IMPCONDONA)
FROM MPDT199
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND FECSOL = '2017-12-20'
AND ( CODAJU = 2
OR CODAJU = 4
OR CODAJU = 7)
AND ( TIPRECLA <> 2
AND TIPRECLA <> 4
AND TIPRECLA <> 7
AND TIPRECLA <> 8
AND TIPRECLA <> 11)
WS-IMPCONDONA
0,0

 Buscar Normalizaciones
SELECT SUM(T2.IMPOPER)
FROM MPDT009 T1, MPDT015 T2
WHERE T1.CODENT = '0015'
AND T1.CENTALTA = '0000'
AND T1.CUENTA = '810007881505'
AND T1.INDSITTAR = 5
AND T1.INDULTTAR = 'S'
AND T1.PAN = T2.PAN
AND T2.FECOPER = '2017-12-20'
AND T2.SIGNOTIPFAC = '-'
WS-IMPOPER
0,0

 Condiciones de renegociación
Llamada rutina ATR496
RCI-CODENT PIC X(04). ='0015'
RCI-CENTALTA PIC X(04). ='0000'
RCI-CUENTA PIC X(12). ='810007881505'
RCI-CODREPSIST PIC X(04). ='4 '
RCI-LINEA PIC X(04). ='0001'
RCI-OFICINA PIC X(04). ='0000'
RCI-FECHA-SYS PIC 9(08). ='20171221'
RCI-COD-RETORNO PIC X(02). =' '
RCI-TIPO-REPROG PIC X(04). =' '
RCI-FECHA-VALIDEZ PIC 9(08). ='00000000'
RCI-IMP-REPROG PIC 9(15)V99. ='000000000000000,00'
RCI-IMP-EXIGIBLE PIC 9(15)V99. ='000000000000000,00'

Lectura tabla de contratos mpdt007


SELECT CODENT, CENTALTA, CUENTA, FECALTA, PRODUCTO, SUBPRODU, CONPROD, CODCAM, CODCONVEN, FORPAGO,FECULTCAR, FECBAJA,
MOTBAJA, FORPAGOTEM, FIFORPAGT, FFFORPAGT, CODESTCTA, FECULTESTCTA, INDBLQOPE, INDBLQCON,INDCTAEMP, INDNOMEMP,
NOMBREEMP, INDSITCTA, FECRESOL, INDCTATRAS, CODPROLIQ, GRUPOLIQ, CODPROCUO, GRUPOCUO, RESEMIEXT, TIPBON, CALPART,
NUMULTPLAS, CODPROMO, INDPERCUO, NUMMESTOT, CODREGIMEN, NUMFACSC, NUMULTMOVD,IDENTCLI, NUMBEN, OFIGESTORA, CODFORMATO,
INDDOMCARCRE, FECULTCGLIQ
FROM MPDT007
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
CODENT CENTALTA CUENTA FECALTA PRODUCTO SUBPRODU CONPROD CODCAM CODCONVEN FORPAGO FECULTCAR FECBAJA

0015 0000 810007881505 2003-10-10 15 0021 001 000000 3 2008-03-28 0001-01-01

MOTBAJA FORPAGOTEM FIFORPAGT FFFORPAGT CODESTCTA FECULTESTCTA INDBLQOPE INDBLQCON INDCTAEMP INDNOMEMP NOMBREEMP INDSITCTA

0 0001-01-01 0001-01-01 1 2017-12-12 N N 0 0 0

FECRESOL INDCTATRAS CODPROLIQ GRUPOLIQ CODPROCUO GRUPOCUO RESEMIEXT TIPBON CALPART NUMULTPLAS CODPROMO INDPERCUO

2003-10-10 N 1 10 0 0 NNNNNNNNNNNN TI 2 N

NUMMESTOT CODREGIMEN NUMFACSC NUMULTMOVD IDENTCLI NUMBEN OFIGESTORA CODFORMATO INDDOMCARCRE FECULTCGLIQ
0 1 0 0 04065486 1 1737 ESTANDAR N 0001-01-01

Calculo Meses de Contrato: 170 meses, a partir de la fecalta y fecha de proceso, 2003-10-10 y 2017-12-21
respectivamente

Si CODESTCTA <> 0
Buscar impagados en mpdt113 mediante cursor
SELECT FECVENMOV, IMPAGO,IMPAPL
FROM MPDT113
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = ' 810007881505'
AND SITUACION = 0
ORDER BY FECVENMOV
FECVENMOV IMPAGO IMPAPL
2017-12-10 54300,00 0,00

Si FECVENMOV <> Spaces


Calcular días entre la fecha del impagado y la fecha de proceso, 2017-12-10 y 2017-12-21
respectivamente: WS-DIAS-IMPAGO = 11
Fin Si
Obtener protestados, rutina ATRB436 tabla mpdt436 sin datos en este caso.
Obtener hábito de pago desde mpdt279, HABITOPAG = 05
SELECT HABITOPAG FROM MPDT279
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
HABITOPAG
5

Obtener el NUMREF activa


SELECT INDREFACT
FROM MPDT010
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
INDREFACT
S

Si INDREFACT es numérica
NUMREF = INDREFACT
Sino
Si INDREFACT = ‘S’
NUMREF = 1
Sino
NUMREF = 0
Fin si
Fin si

Tratar Renegociación:
Cursor sobre mpdt270, Tipos de Renegociación
SELECT CODREP, NUMORDEN, INDREBINT
FROM MPDT270
WHERE CODENT = '0015'
AND CODREPSIST = '4 '
ORDER BY NUMORDEN
CODREP NUMORDEN INDREBINT
4000 1 S
4001 1 S
4002 2 S
4003 3 S

Para cada una de estos CODREP se accede a la table mpdt272, condiciones de renegociación
CODREP NUMORDEN MINDIAMOR MAXDIAMOR MINIMPMOR MAXIMPMOR MINMESVIG MAXMESVIG MINREFINA MAXREFINA APLIMINEXI PORREFANT PORINTREP MAXTITPRO HABITOPAG

4000 1 1 14 0,00 99999999,00 0 999 0 999 N 30,0000 0,0000 999

4001 1 0 0 0,00 99999999,00 0 999 0 999 N 30,0000 0,0000 999

4002 2 15 89 0,00 99999999,00 0 999 0 999 N 30,0000 10,0000 999

4003 3 90 184 0,00 99999999,00 0 999 0 999 N 30,0000 9,0000 999

Si el HABITOPAG de mpdt272 es espacios se cambia a ‘00’

Entonces se validan las condiciones de cada CODREP:


Parte por defecto con que CUMPLE
Si los días de mora es menor que MINDIAMOR o mayor que MAXDIAMOR entonces NO CUMPLE
Si el importe de la deuda es menor que MINIMPMOR o es mayor que MAXIMPMOR entonces NO CUMPLE
Si tiene protestos entonces NO CUMPLE
Si el NUMREF= 1 es menor que MINREFINA o es mayor que MAXREFINA entonces NO CUMPLE
Si el hábito de Pago de mpdt272 = 0
CONTINUE
Sino
Si HABITOPAG de mpdt279 > HABITOPAG de mpdt272
NO CUMPLE
Fin Si
Fin Si

Si CUMPLE entonces CODREP encontrado CODREP = ‘4000’


RCI-TIPO-REPROG = CODREP OF DCLMPDT270 = ‘4000’

Calcula la fecha máxima sumando a la fecha del impagado mmás antiguo el número máximo de días de mora del
CODREP seleccionado:
FECHA-EXP-IMPAGO = Fecha del impagado + MAXDIAMOR = 2017-12-10 + 14 = 2017-12-24
Se busca la fecha de facturación desde mpdt085, calendario de grupos de proceso.
SELECT FECHA
FROM MPDT085
WHERE CODENT = '0015'
AND CODPROCESO = 1
AND CODGRUPO = 10
AND TIPFECHA = 0
AND INDPROC = 'N'
ORDER BY FECHA
FECHAFAC
2017-12-24

Se elige la menor de entre estas fechas


Si FECHA-EXP-IMPAGO > FECHAFAC entonces
RCI-FECHA-VALIDEZ = FECHAFAC
Sino
RCI-FECHA-VALIDEZ = FECHA-EXP-IMPAGO = 20171224
Fin Si

Cálculo de la deuda Total


Llamada rutina ATR054, respuesta rutina
ATTOTDEU-CODENT PIC X(4). ='0015'
ATTOTDEU-CENTALTA PIC X(4). ='0000'
ATTOTDEU-CUENTA PIC X(12). ='810007881505'
ATTOTDEU-LINEA PIC X(4). ='0001'
ATTOTDEU-FECHA-OPE PIC X(10). ='2017-12-21'
ATTOTDEU-FECHA-CONTA PIC X(10). ='2017-12-21'
ATTOTDEU-OFICINA PIC X(4). ='0000'
ATTOTDEU-USUARIO PIC X(8). =' '
ATTOTDEU-TERM-CONTA PIC X(8). =' '
ATTOTDEU-HORA-OPE PIC X(6). =' '
ATTOTDEU-CODREPSIST PIC X(4). ='4 '
ATTOTDEU-CODRET PIC 9(01). ='0'
ATTOTDEU-CAPFACTUR PIC S9(15)V99. ='000000000054372,00'
ATTOTDEU-INTFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTMORA PIC S9(15)V99. ='000000000002197,00'
ATTOTDEU-GASMORA PIC S9(15)V99. ='000000000014900,00'
ATTOTDEU-IMPCAPITAL PIC S9(15)V99. ='000000000553771,00'
ATTOTDEU-IMPINTERES PIC S9(15)V99. ='000000000033481,00'
ATTOTDEU-COMISIONES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-SEGURO PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-CUOMANT PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-DIA PIC S9(15)V99. ='000000000071469,00'
ATTOTDEU-DEUDA-TOTAL PIC S9(15)V99. ='000000000625240,00'
ATTOTDEU-IMPUESTOS PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBRUECO-DIA PIC S9(15)V99. ='000000000000054,00'
ATTOTDEU-IMPBONECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO2-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-RETORNO PIC X(002). ='00'

WS-INT-MORA-DIA = ATTOTDEU-IMPBRUECO-DIA + ATTOTDEU-IMPIMPTO-DIA + ATTOTDEU-IMPIMPTO2-DIA


- ATTOTDEU-IMPBONECO-DIA

WS-INT-MORA-DIA = 54,0 + 0,0 + 0,0 - 0,0 = 54,0

WS-IMPTOTAL = ATTOTDEU-DEUDA-TOTAL = 625240,00

Si INDREBINT de mpdt270 = ‘N’


Fin Si

ADD ATTOTDEU-IMPUESTOS TO WS-IMPTOTAL = 0,0 + 625240,00 = 625240,00

Si LINEA = ‘0001’
Obtener deuda avance
Rutina ATR054, respuesta
ATTOTDEU-CODENT PIC X(4). ='0015'
ATTOTDEU-CENTALTA PIC X(4). ='0000'
ATTOTDEU-CUENTA PIC X(12). ='810007881505'
ATTOTDEU-LINEA PIC X(4). ='0002'
ATTOTDEU-FECHA-OPE PIC X(10). ='2017-12-21'
ATTOTDEU-FECHA-CONTA PIC X(10). ='2017-12-21'
ATTOTDEU-OFICINA PIC X(4). ='0000'
ATTOTDEU-USUARIO PIC X(8). =' '
ATTOTDEU-TERM-CONTA PIC X(8). =' '
ATTOTDEU-HORA-OPE PIC X(6). =' '
ATTOTDEU-CODREPSIST PIC X(4). ='4 '
ATTOTDEU-CODRET PIC 9(01). ='0'
ATTOTDEU-CAPFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMFACTUR PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-INTMORA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-GASMORA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPCAPITAL PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPINTERES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-COMISIONES PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-SEGURO PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-CUOMANT PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-DEUDA-TOTAL PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPUESTOS PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBRUECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPBONECO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-IMPIMPTO2-DIA PIC S9(15)V99. ='000000000000000,00'
ATTOTDEU-RETORNO PIC X(002). ='00'

ADD ATTOTDEU-DEUDA-TOTAL TO WS-IMPTOTAL = 0,0 + 625240,00 = 625240,00


Fin Si
Cálculo gastos de cobranza
Llamada rutina ATR075, sin cobro de gastos de cobranza

WS-IMPTOTAL = WS-IMPTOTAL + WS-GTOS-COBR + WS-INT-MORA-DIA


= 625240,00 + 0,0 + 54,0
= 625294,00

Cálculo del Exigible


CODREP NUMORDEN MINDIAMOR MAXDIAMOR MINIMPMOR MAXIMPMOR MINMESVIG MAXMESVIG MINREFINA MAXREFINA APLIMINEXI PORREFANT PORINTREP MAXTITPRO HABITOPAG

4000 1 1 14 0,00 99999999,00 0 999 0 999 N 30,0000 0,0000 999

Si CODREPSIST <> ‘6 ‘ (‘4 ‘ <> ‘6 ‘)


Si APLIMINEXI de mpdt272 <> ‘N’ (‘N’ <> ‘N’ )

Fin Si
Si PORREFANT de mpdt272 > 0
Cálculo importe refinanciación anterior
Lectura tabla mpdt281, tabla de las últimas renegociaciones
FECULTRENEG IMPULTRENEG IMPABON
2017-06-08 1292250,00 908410,00

Si existe en mpdt281
Calcular exigible
WS-IMPORTE1 = ( IMPULTRENEG OF DCLMPDT281 * PORREFANT OF DCLMPDT272) / 100
WS-IMPORTE1 = (1292250,0 * 30) / 100
WS-IMPORTE1 = 387675,00

WS-IMPORTE1 = WS-IMPORTE1 - IMPABON OF DCLMPDT281


WS-IMPORTE1 = 387675,00 - 908410,00
WS-IMPORTE1 = - 520735,00

Si WS-IMPORTE1 < 0
WS-IMPORTE1 = 0
Fin Si

Fin Si

Fin Si

El PORINTREP es el porcentaje a pagar del importe a reprogramar


WS-IMPORTE2 = (WS-IMPTOTAL * PORINTREP OF DCLMPDT272) / 100
WS-IMPORTE2 = ( 625294,00 * 0 ) / 100
WS-IMPORTE2 = 0

Si CODREPSIST <> ‘1 ‘ y CODREPSIST <> ‘9 ’


Se recupera el parámetro desde catálogo para los días de intención de pago, NUMDIAS = 45
A la fecha de proceso, 2017-12-21, se obtiene fecha restando 45 días, FECHA-INTPAGO=2017-11-06
Busca los pagos
SELECT SUM(IMPFAC)
FROM MPDT012
WHERE CODENT = '0015'
AND CENTALTA = '0000'
AND CUENTA = '810007881505'
AND INDNORCOR = 0
AND FECFAC >= '2017-11-06'
AND (TIPOFAC = 67 OR TIPOFAC = 1019 OR TIPOFAC = 1022)

WS-PAGOS
450000

Fin Si
Si WS-PAGOS >= WS-IMPORTE2
WS-IMPORTE2 = 0
Sino
WS-IMPORTE2 = WS-IMPORTE2 – WS-PAGOS
Fin Si

Si APLIMINEXI de mpdt272 = ‘S’


Tratar S
Sino
Si APLIMINEXI de mpdt272 = ‘A’
Tratar A
Sino
WS-IMPEXIG = WS-IMPORTE1 + WS-IMPORTE2
WS-IMPEXIG = 0,0 + 0,0

Fin Si
Fin Si

Si CODREPSIST = ‘5 ‘

Fin Si

RCI-IMP-EXIGIBLE = WS-IMPEXIG = 0,0

WS-IMP-REPROG-AUX = WS-IMPTOTAL - WS-IMPEXIG = 625294,00 - 0,0 = 625294,00

Si WS-IMP-REPROG-AUX < 0
RCI-IMP-REPROG = 0
Sino
RCI-IMP-REPROG = WS-IMP-REPROG-AUX = 625294,00
Fin Si

Fin Si
RCI-CODENT PIC X(04). ='0015'
RCI-CENTALTA PIC X(04). ='0000'
RCI-CUENTA PIC X(12). ='810007881505'
RCI-CODREPSIST PIC X(04). ='4 '
RCI-LINEA PIC X(04). ='0001'
RCI-OFICINA PIC X(04). ='0000'
RCI-FECHA-SYS PIC 9(08). ='20171221'
RCI-COD-RETORNO PIC X(02). ='00'
RCI-TIPO-REPROG PIC X(04). ='4000'
RCI-FECHA-VALIDEZ PIC 9(08). ='20171224'
RCI-IMP-REPROG PIC 9(15)V99. ='000000000625294,00'
RCI-IMP-EXIGIBLE PIC 9(15)V99. ='000000000000000,00'
Fin rutina ATR496, condiciones de re*
 Pasos Finales
MP537-CODREP = RCI-TIPO-REPROG = ‘4000’
MP537-DESREP = ‘RENEGOCIACIÓN TOTAL 1-14 ’

WS-OTROS-MONTOS ROUNDED = WS-IMPFAC + WS-IMPCONDONA + WS-IMPOPER = 0,0

Si CODREPSIST = ‘6 ’

Sino
Si CODREPSIST = ‘3 ‘ o ‘3SI ‘ o ‘4 ’ o ‘4SI ’

Fin Si
Fin Si

WS-IMPREPRO ROUNDED = RCI-IMP-REPROG


WS-IMPREPRO = 625294,00

WS-IMPEXIG ROUNDED = RCI-IMP-EXIGIBLE


WS-IMPEXIG = 0,00

Si WS-OTROS-MONTOS > WS-IMPEXIG


MOVE CT-ZEROES TO WS-IMPEXIG
Sino
COMPUTE WS-IMPEXIG ROUNDED = WS-IMPEXIG - WS-OTROS-MONTOS = 0,0
Fin Si

WS-IMPTOTAL ROUNDED = WS-IMPEXIG + RCI-IMP-REPROG = 0,0 + 625294,00

MP537-IMPREPRO = WS-IMPREPRO = 625294


MP537-IMPEXIG = WS-IMPEXIG = 0
MP537-IMPTOTAL = WS-IMPTOTAL = 625294

Enviar datos a Siebel rutina ATR608

 Fin ATP537
FILLER PIC X(12). ='000000000000'
MP537-CODENT-ATR PIC X(1). =' '
MP537-CODENT PIC X(4). ='0015'
MP537-CENTALTA-ATR PIC X(1). =' '
MP537-CENTALTA PIC X(4). ='0000'
MP537-CUENTA-ATR PIC X(1). =' '
MP537-CUENTA PIC X(12). ='810007881505'
MP537-LINEA-ATR PIC X(1). =' '
MP537-LINEA PIC X(4). ='0001'
MP537-DESLINEA-ATR PIC X(1). =' '
MP537-DESLINEA PIC X(30). ='LINEA PRINCIPAL DE CREDITO '
MP537-OPCION-ATR PIC X(1). =' '
MP537-OPCION PIC X(1). =' '
MP537-CODREPSIST-ATR PIC X(1). =' '
MP537-CODREPSIST PIC X(4). ='4 '
MP537-CAPFACTUR-ATR PIC X(1). =' '
MP537-CAPFACTUR PIC 9(15)V99. ='000000000054372,00'
MP537-INTFACTUR-ATR PIC X(1). =' '
MP537-INTFACTUR PIC 9(15)V99. ='000000000000000,00'
MP537-COMFACTUR-ATR PIC X(1). =' '
MP537-COMFACTUR PIC 9(15)V99. ='000000000000000,00'
MP537-INTMORA-ATR PIC X(1). =' '
MP537-INTMORA PIC 9(15)V99. ='000000000002197,00'
MP537-GASMORA-ATR PIC X(1). =' '
MP537-GASMORA PIC 9(15)V99. ='000000000014900,00'
MP537-IMPCAPITAL-ATR PIC X(1). =' '
MP537-IMPCAPITAL PIC 9(15)V99. ='000000000553771,00'
MP537-IMPINTERES-ATR PIC X(1). =' '
MP537-IMPINTERES PIC 9(15)V99. ='000000000033481,00'
MP537-COMISIONES-ATR PIC X(1). =' '
MP537-COMISIONES PIC 9(15)V99. ='000000000000000,00'
MP537-SEGURO-ATR PIC X(1). =' '
MP537-SEGURO PIC 9(15)V99. ='000000000000000,00'
MP537-CUOMANT-ATR PIC X(1). =' '
MP537-CUOMANT PIC 9(15)V99. ='000000000000000,00'
MP537-CODREP-ATR PIC X(1). =' '
MP537-CODREP PIC X(4). ='4000'
MP537-DESREP-ATR PIC X(1). =' '
MP537-DESREP PIC X(30). ='RENEGOCIACIÓN TOTAL 1-14 '
MP537-IMPTOTAL-ATR PIC X(1). =' '
MP537-IMPTOTAL PIC 9(15)V99. ='000000000625294,00'
MP537-IMPEXIG-ATR PIC X(1). =' '
MP537-IMPEXIG PIC 9(15)V99. ='000000000000000,00'
MP537-IMPREPRO-ATR PIC X(1). =' '
MP537-IMPREPRO PIC 9(15)V99. ='000000000625294,00'
MP537-CODTIPC-ATR PIC X(1). =' '
MP537-CODTIPC PIC X(4). =' '
MP537-TOTCUOTAS-ATR PIC X(1). =' '
MP537-TOTCUOTAS PIC 9(09). ='000000000'
MP537-IMPCUOREP-ATR PIC X(1). =' '
MP537-IMPCUOREP PIC 9(15)V99. ='000000000000000,00'
MP537-ABONO-ATR PIC X(1). =' '
MP537-ABONO PIC 9(15)V99. ='000000000000000,00'
MP537-FECPROXVTO-ATR PIC X(1). =' '
MP537-FECPROXVTO PIC X(10). ='0001-01-01'
MP537-TASAINTMENS-ATR PIC X(1). =' '
MP537-TASAINTMENS PIC 9(3)V9(4). ='000,0000'
MP537-CAPITAL-ATR PIC X(1). =' '
MP537-CAPITAL PIC 9(15)V99. ='000000000000000,00'
MP537-IMPINTERES1-ATR PIC X(1). =' '
MP537-IMPINTERES1 PIC 9(15)V99. ='000000000000000,00'
MP537-GASTOSCOB-ATR PIC X(1). =' '
MP537-GASTOSCOB PIC 9(15)V99. ='000000000000000,00'
MP537-COSTOTCRE-ATR PIC X(1). =' '
MP537-COSTOTCRE PIC 9(15)V99. ='000000000000000,00'
MP537-CAE-ATR PIC X(1). =' '
MP537-CAE PIC 9(04)V9999.='0000,0000'
MP537-PAN-ATR PIC X(1). =' '
MP537-PAN PIC X(16). ='499847******4261'
MP537-FECALTA-ATR PIC X(1). =' '
MP537-FECALTA PIC X(10). ='0001-01-01'
MP537-FECVTOCUOREP-ATR PIC X(1). =' '
MP537-FECVTOCUOREP PIC X(10). ='0001-01-01'
MP537-FES-ATR PIC X(1). =' '
MP537-FES PIC 9(1). ='0'
MP537-VT-ATR PIC X(1). =' '
MP537-VT PIC 9(1). ='0'
MP537-NUD-ATR PIC X(1). =' '
MP537-NUD PIC 9(15). ='000000000000000'

You might also like