Cobol - problema con fechas

 
Vista:

problema con fechas

Publicado por ruben (7 intervenciones) el 11/07/2002 18:00:40
estoy haciendo una aplicación con un menu donde quiero visualizar la fecha actual con el formato DD/MM/AAAA. El problema que tengo es que cuando finalice un día (o sea, a las 24:00) y empieze otro ¿cómo puedo hacer para que la fecha se actualice automáticamente?
Utilizo un compilador de Microfocus.
Gracias
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Actualizar automáticamente la fecha en un menú con formato DD/MM/AAAA

Publicado por Alejandro (300 intervenciones) el 04/09/2023 20:07:46
Para que la fecha se actualice automáticamente a medianoche (00:00) en tu aplicación COBOL en un compilador como Micro Focus, puedes seguir estos pasos:

1. Obtener la fecha y hora actual:

Utiliza las funciones proporcionadas por tu compilador Micro Focus para obtener la fecha y hora actual del sistema. Por ejemplo, puedes utilizar la función `CURRENT-DATE` para obtener la fecha y hora actual en COBOL. Algo así:

1
2
MOVE FUNCTION CURRENT-DATE TO WS-CURRENT-DATE
DISPLAY "Fecha actual: " WS-CURRENT-DATE

Donde `WS-CURRENT-DATE` es una variable de registro que almacena la fecha y hora actual.

2. Verificar la hora actual:

Después de obtener la fecha y hora actual, verifica si la hora es 00:00 (medianoche). Puedes hacerlo extrayendo la hora de `WS-CURRENT-DATE` y verificando si es igual a "00". Si es así, entonces sabes que es medianoche y debes actualizar la fecha.

1
2
3
4
5
6
IF FUNCTION NUMVAL(SUBSTRING (WS-CURRENT-DATE FROM 12 FOR 2)) = 0
THEN
    MOVE FUNCTION NUMVAL(SUBSTRING (WS-CURRENT-DATE FROM 7 FOR 2)) + 1 TO WS-DAY
    MOVE WS-DAY TO WS-CURRENT-DATE-DAY
    DISPLAY "Es medianoche. La fecha se ha actualizado."
END-IF

En este código, `WS-DAY` es una variable que almacena el día actual, `WS-CURRENT-DATE-DAY` es parte de `WS-CURRENT-DATE` que representa el día, y `SUBSTRING` se utiliza para extraer las partes relevantes de la fecha y hora actual.

3. Actualización de la fecha:

Si se detecta que es medianoche, debes actualizar la fecha. Puedes hacerlo incrementando el día actual y ajustando la fecha según sea necesario.

4. Visualización de la fecha actualizada:

Después de actualizar la fecha, puedes mostrarla en el formato DD/MM/AAAA que deseas.

Ten en cuenta que este es un ejemplo simplificado y deberás adaptarlo a tu aplicación y al compilador Micro Focus que estás utilizando, ya que la forma exacta de obtener la fecha y hora actual y las funciones disponibles pueden variar. Además, es importante tener en cuenta que la detección de medianoche puede requerir consideraciones adicionales si estás trabajando en un entorno multiusuario donde varios procesos pueden ejecutarse simultáneamente.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar