Cobol en español
  Página de Inicio Recomiéndala Contáctame Usuarios en Linea
14
     Crea Una cuenta  
Video 1
Video 2
Video 3

Si te ha servido la web
o te han gustado los videos, colabora haciendo click en el botón.

MANUALES
TEMATICOS
BASES DE DATOS
COBOL / WINDOWS
COBOL / UNIX
HISTORIA /DOCS
 
BUSCADOR
PROGRAMANDO-Dos
TRUCOS
AÑO 2.000
TEORIA POWCOB-3
PROG. POWCOB-3
TEORIA POWCOB-5
PROG. POWCOB-5
OCX-ESCOBOL
RUTINAS/MANUALES
OCX / JUEGOS
HERRAMIENTAS
COMPILADORES
ENCUESTAS
ENLACES
FOROS
TOP 10

CHAT   Usuarios: 0
Noticias
Opciones :    [ Versión Imprimible  |  Enviar a un Amigo ]

RUTINA CALCULO DE DIAS PARA RMCOBOL/POWERCOBOL
Enviado el Miércoles, 27 julio a las 09:05:51 amrobles
Trucosjuliovc escribió "Hola soy Julio Manuel, os dejo esta rutina como un truco que encontré hace unos años atrás y fácil de utilizar y entender, es para calcular los días hay entre dos fechas, espero que lo aprovechéis en vuestras aplicaciones como rutina, saludos.

IDENTIFICATION DIVISION.

PROGRAM-ID. LIB-NUM-DIAS.
AUTHOR. JOSE-GARCIA-NAVARRO-ICG
***------------------------------------------------------------***
*** este procedimiento calcula el n£mero de d¡as pasados entre ***
*** FEC-L1 y FEC-L2 que son dos fechas en formato AAMMDD ***
*** y devuelve este n£mero a trav‚s de NUM-DIAS. ***
***------------------------------------------------------------***
ENVIRONMENT DIVISION.
CONFIGURATION SECTION.
SOURCE-COMPUTER. Pentium-100.
OBJECT-COMPUTER. Amd-2200-Xp.
SPECIAL-NAMES.

DATA DIVISION.
WORKING-STORAGE SECTION.

*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-*

77 RESTO PIC 99 VALUE ZEROES.
77 AUX-MES PIC 99 VALUE ZEROES.

01 TABLA-MES PIC X(24) VALUE "312831303130313130313031".
01 MESES REDEFINES TABLA-MES.
02 DIA-MES PIC 99 OCCURS 12 TIMES.

01 F1 PIC 9(6).
01 FECHA1 REDEFINES F1.
02 AA1 PIC 99.
02 MM1 PIC 99.
02 DD1 PIC 99.
01 F2 PIC 9(6).
01 FECHA2 REDEFINES F2.
02 AA2 PIC 99.
02 MM2 PIC 99.
02 DD2 PIC 99.
77 AUX PIC 9(6).
77 opx PIC x(1).

77 F01 PIC 9(6).
77 F02 PIC 9(6).

*-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-*

LINKAGE SECTION.

01 LIB-DIAS.
02 LIB-FEC-1 PIC 9(6).
02 LIB-FEC-2 PIC 9(6).
02 LIB-NDIAS PIC S9(6).

PROCEDURE DIVISION USING LIB-DIAS.
***********************************************************************
MAIN SECTION.
JULIOM.
MOVE LIB-FEC-1 TO F1
MOVE LIB-FEC-2 TO F2.
MOVE ZEROES TO LIB-NDIAS.

IF F1 > F2
MOVE F1 TO AUX
MOVE F2 TO F1
MOVE AUX TO F2
END-IF.

PERFORM CONTROL-BISIESTO.

IF FECHA1 NOT = 0 AND FECHA2 NOT = 0
PERFORM R-PERFORM UNTIL FECHA1 = FECHA2
END-IF.

GO TO FIN.

R-PERFORM.
ADD 1 TO DD1
ADD 1 TO LIB-NDIAS
IF DD1 > DIA-MES (MM1)
MOVE 1 TO DD1
ADD 1 TO MM1
IF MM1 > 12 MOVE 1 TO MM1
ADD 1 TO AA1
PERFORM CONTROL-BISIESTO
END-IF
END-IF.

CONTROL-BISIESTO.
DIVIDE AA1 BY 4 GIVING AUX-MES REMAINDER RESTO
IF RESTO NOT = 0 MOVE 28 TO DIA-MES (2)
ELSE MOVE 29 TO DIA-MES (2)
END-IF.
FIN.
EXIT PROGRAM.





"

:: Votos del Artículo

Puntuación Media: 3.23   votos: 34

Por favor tómate un segundo y vota por este artículo:

MaloRegularBuenoMuy BuenoExcelente



 ACTUALIDAD
 COBOL
 POWER COBOL
 TRUCOS/ARTICULOS

 HISTORICO
¿Sobre que Base de datos trabajáis en COBOL?

Ficheros indexados
SQL Server
Oracle
MySQL
PostgreSQL
Firebird
DB2
Otra (Comentar)

   

[Resultados]

votos: 1156
Comentarios: 104


Sitio desarrollado con PHP-Nuke. Todos los Derechos Reservados.
PHP-Nuke es un Software Libre realizado con licencia GNU/GPL.
Página creada en Junio de 1.998, con el proposito de difundir el lenguaje Cobol en nuestra lengua.
Andres Montes [98/11]