Cobol Foro
Navegación en el Foro
Retroceder   Cobol Foro Entornos de desarrollo y compiladores Cobol Micro Focus COBOL RM/COBOL
RM/COBOL IDE y Compilador RM/COBOL
 
Otros temas que te pueden interesar
Tema Autor Foro Respuestas Último post
[Sintaxis] Calculo de la semana en que está una fecha Begoguay PowerCOBOL (ActiveX, v4 - v11) 3 8 de enero de 2022 19:28
Cálculo CRC8 Kuk Cocina MicroFocus 0 4 de octubre de 2021 10:37
[Sintaxis] Calcular dias, meses y años entre dos fechas Roger Fujitsu COBOL 7 6 de febrero de 2020 09:27
[Sintaxis] Calculo de dia de la semana Breew PowerCOBOL (ActiveX, v4 - v11) 1 12 de febrero de 2019 10:49
Imprimir cálculo con decimales Kuk Sistemas operativos 0 24 de octubre de 2018 11:20

Respuesta

  #1
Antiguo 26 de noviembre de 2021, 01:31
jmeza
Forero Senior
Última Actividad 23.05.2026 02:04
Posts Posts: 106
Likes enviados Enviados: 26
Likes recibidos Recibidos: 4
Predeterminado Calculo entre dos fecha
0 Inactivo Inactivo

Hola, alguien me podría ayudar con una rutina de calculo entre dos fechas para RMCOBOL85
Tengo una pero no es exacta.
La que tengo de PawercobolV9 no funciona en Rmcobol

Saludos
jmeza is offline   Responder Con Cita
  #2
Antiguo 26 de noviembre de 2021, 10:44
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

Citación del post de jmeza Ver Mensaje
La que tengo de PawercobolV9 no funciona en Rmcobol
Raro... A ver ese código, porque me extraña mucho que no funcione en RM. Salvo que sea alguna función puramente Fujitsu.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #3
Antiguo 29 de noviembre de 2021, 21:35
jmeza
Forero Senior
Última Actividad 23.05.2026 02:04
Posts Posts: 106
Likes enviados Enviados: 26
Likes recibidos Recibidos: 4

Citación del post de Kuk Ver Mensaje
Raro... A ver ese código, porque me extraña mucho que no funcione en RM. Salvo que sea alguna función puramente Fujitsu.
Kuk, este es el código en rmcobol85, se cae en esta línea, CALL "DIFERMES" USING LNK-DIFER.
error 234 (no object file found) error loading subprogram DIFERMES.

Esta rutina la baje de la pagina y en powercobolv9 funciona sin problemas

Código COBOL:
  1. WORKING-STORAGE SECTION.
  2.        01 DIA PIC 99.
  3.        01 MES PIC 99.
  4.        01 ANO PIC 99.
  5.        01 N-FECHA   PIC X(100).
  6.        01 F-INICIAL PIC X(10).
  7.        01 F-FINAL   PIC X(10).
  8.        01 SV-FECHA    PIC X(10).    
  9.        01 status-code PIC S9(4) COMP-5.
  10.        01 LNK-DIFER.
  11.           COPY "CPY-DIFER.COB".
  12.  
  13. PROCEDURE DIVISION.
  14.        CALCULO-FECHA-CONTRATO.
  15.            MOVE 1 TO DIF-OPCION.
  16.            MOVE REM02-FECCONT TO F-INICIAL.
  17.            MOVE F-INICIAL TO SV-FECHA.          
  18.            MOVE SV-FECHA(1:2)       TO DIF-FECHA-1(1:2).
  19.            MOVE SV-FECHA(4:2)       TO DIF-FECHA-1(3:2).
  20.            MOVE SV-FECHA(7:4)       TO DIF-FECHA-1(5:4).
  21.    
  22.            MOVE AC-FECING TO F-FINAL.
  23.            MOVE F-FINAL TO SV-FECHA.
  24.            MOVE SV-FECHA(1:2)       TO DIF-FECHA-2(1:2).
  25.            MOVE SV-FECHA(4:2)       TO DIF-FECHA-2(3:2).
  26.            MOVE SV-FECHA(7:4)       TO DIF-FECHA-2(5:4).
  27.      
  28.            CALL "DIFERMES" USING LNK-DIFER.
  29.            MOVE DIF-ANIOS TO ANO.
  30.            MOVE DIF-MESES TO MES.
  31.            MOVE DIF-DIAS  TO DIA.
  32.            STRING ANO DELIMITED BY SIZE
  33.                   " Años " DELIMITED BY SIZE
  34.                   MES DELIMITED BY SIZE
  35.                   " Meses " DELIMITED BY SIZE
  36.                   DIA DELIMITED BY SIZE
  37.                   " Dias" DELIMITED BY SIZE
  38.                   INTO N-FECHA.
  39.            DISPLAY N-FECHA LINE 18 POSITION 3.
jmeza is offline   Responder Con Cita
  #4
Antiguo 29 de noviembre de 2021, 21:53
JCantero
El Foro es mi casa
Activista del Foro: Activista del Foro - Issue reason: Por participación activa Agradecimientos: Por muchos agradecimientos de parte de los Foreros - Issue reason: Por muchos agradecimientos de parte de los Foreros 
Última Actividad 02.09.2026 00:15
Posts Posts: 442
Likes enviados Enviados: 167
Likes recibidos Recibidos: 269

Es porque no te encuentra el programa "difermes".

Debes de localizarlo e intentar compilarlo para ver si te funciona.
JCantero is offline   Responder Con Cita
  #5
Antiguo 29 de noviembre de 2021, 22:03
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

@JCantero, es una DLL, viene on una LIB pero no sé como se hará en RM para utilizarla.



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #6
Antiguo 29 de noviembre de 2021, 22:30
jmeza
Forero Senior
Última Actividad 23.05.2026 02:04
Posts Posts: 106
Likes enviados Enviados: 26
Likes recibidos Recibidos: 4

Citación del post de JCantero Ver Mensaje
Es porque no te encuentra el programa "difermes".

Debes de localizarlo e intentar compilarlo para ver si te funciona.
JCantero, ya lo compile cero error, se cae al momento de ejecutar

Difermes, es un archivo oculto que no reconoce el Rmcobol
jmeza is offline   Responder Con Cita
  #7
Antiguo 29 de noviembre de 2021, 22:36
Kuk
Administrador
Última Actividad 19.09.2026 20:11
Posts Posts: 2.500
Likes enviados Enviados: 1037
Likes recibidos Recibidos: 1207

@jmeza, yo tenía una rutina hecha hace muchos años, creo que la publiqué en el antiguo foro, y se llamaba así, DIFERMES

Bueno, al caso, coge este fuente y no necesitas librerías: [Aporte] DLL de cáculo de fecha y hora - COBOL Foro



NORMAS DEL FORO - para garantizar el buen funcionamiento del Foro.
¿Te han ayudado? NO TE OLVIDES de darle a
¿Quieres dirigirte a alguien en tu post? Notifícale haciendo clic en su Nick
Kuk is offline   Responder Con Cita
  #8
Antiguo 30 de noviembre de 2021, 16:09
jmeza
Forero Senior
Última Actividad 23.05.2026 02:04
Posts Posts: 106
Likes enviados Enviados: 26
Likes recibidos Recibidos: 4

Citación del post de Kuk Ver Mensaje
@jmeza, yo tenía una rutina hecha hace muchos años, creo que la publiqué en el antiguo foro, y se llamaba así, DIFERMES

Bueno, al caso, coge este fuente y no necesitas librerías: [Aporte] DLL de cáculo de fecha y hora - COBOL Foro
Lo resolví de este modo, para lo que necesitaba, saber la cantidad de años entre dos fechas

Código COBOL:
  1. WORKING-STORAGE SECTION.
  2.  
  3. 01 FECHA-INGRESO.
  4.          02 AC-FECING      PIC 9(08).
  5.          02 R-AC-FECING REDEFINES AC-FECING.
  6.                   03  AA-FECING PIC 9(04).
  7.                   03  MM-FECING PIC 9(02).
  8.                   03  DD-FECING PIC 9(02).
  9. 01  VARI-ANTIGUEDAD.
  10.            02 AC-FECCON      PIC 9(08).
  11.            02 R-AC-FECCON REDEFINES AC-FECCON.
  12.                03  AA-FECCON PIC 9(04).
  13.                03  MM-FECCON PIC 9(02).
  14.                03  DD-FECCON PIC 9(02).
  15.            02 AC-DIATOT     PIC 9(05)V999.
  16.            02 AC-MESTOT   PIC 9(03)V999.
  17.            02 AC-ANOTOT   PIC 9(02)V999.
  18.            02 FECHA1         PIC 9(08).
  19.            02 FECHA2         PIC 9(08).
  20.  
  21. PROCEDURE DIVISION.
  22.        CALCULO-FECHA-CONTRATO.
  23.            MOVE 0 TO AC-DIATOT AC-MESTOT AC-ANOTOT
  24.            MOVE REM02-FECCONT TO AC-FECCON
  25.            COMPUTE FECHA1 = (AA-FECCON * 365.25) + DANO(MM-FECCON) +
  26.                              DD-FECCON
  27.            COMPUTE FECHA2 = (AA-FECING * 365.25) + DANO(MM-FECING) +
  28.                              DD-FECING
  29.            IF  FECHA1 > FECHA2
  30.                MOVE " !! Fecha < a la Primera !! " TO MENSAJE
  31.                PERFORM EMITE-MENSAJE
  32.            ELSE
  33.                COMPUTE AC-DIATOT ROUNDED = FECHA1 - FECHA2
  34.                COMPUTE AC-MESTOT ROUNDED = (AC-DIATOT / 30)
  35.                COMPUTE AC-ANOTOT ROUNDED = (AC-DIATOT / 365.25).


Comentario de Moderador

Usa los botones de resalto de sintaxis


jmeza is offline   Responder Con Cita
Respuesta


Herramientas

Derechos de Publicación
No puedes publicar nuevos temas
No puedes publicar posts/responder
No puedes adjuntar archivos
No puedes editar tus posts

BB code is habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado

Saltar a Foro


La franja horaria es GMT +2. Ahora son las 17:36.
Powered by: vBulletin, Versión 3.8.7
Derechos de Autor ©2000 - 2026, Jelsoft Enterprises Ltd.