Efecto 2000 en los Terminales MIP  

 

EXPLICACIÓN DEL PROBLEMA "EFECTO 2000"

La problemática es la siguiente, a partir del día 1 de Enero del 2000, una gran cantidad de ordenadores y software van a empezar a fallar (provocando daños de diversa cuantía), porque muchos equipos y sistemas sólo controlan en la fecha dos dígitos para el año, y por ello se pueden producir paradojas como que el año 2000 (para el sistema el valor 00) es menor que el 1999 (para el sistema el valor 99).

Por supuesto, si su aplicación no utiliza la Fecha del Sistema, como en el 80% de las aplicaciones desarrolladas por nosotros, no tendrá ningún problema.

 

  EL EFECTO 2000 EN LOS TERMINALES MIP 

La fecha, en los terminales MIP, se puede visualizar o capturar desde:

  • El Sistema Operativo.
  • Durante la ejecución de una Aplicación.

 

EL SISTEMA OPERATIVO.

Para averiguar que Sistema Operativo tiene el Terminal debemos hacer lo siguiente:

  1. Con el Terminal MIP encendido pulsamos la siguiente combinación de teclas.
  2. a.1 Para Terminales MIP-4Z y MIP-4A -->   FUNC 0.

    a.2 Para Terminales MIP-4B --> F1 0.

    Si aparece una pantalla parecida a esta:

    Carg.Pilas 100%/100%

    MIP4A V.8.0 896 KB

    19 FEBRERO 1996
    Comunicacion RS-232

    El Sistema Operativo es MIPPROG.

  3. Si la pantalla no es parecida a la anterior pulsamos la siguiente combinación de teclas.

b.1 Apagamos el Terminal con la tecla ON/OFF.

b.2 Manteniendo pulsada la tecla 0, encendemos el Terminal con la tecla ON/OFF.

Si aparece una pantalla parecida a esta:

Battery 100%
BIOS V.7.A 896 KB
December, 29 th., 1998
Communication RS-232

El Sistema Operativo es BIOS

TERMINALES CON SISTEMA OPERATIVO MIPPROG

    1. Versión de placa con S.O. Mipprog versiones v.1.?, v.2.?, v.3.?, v.4.?, v.5.?, v.6.?
    2. Cuando se produzca el paso del año 1999 al año 2000, la fecha pasará de ser 31/12/99 a 01/01/00, el paso del año es correcto.

    3. Versión de placa v.6. con S.O. Mipprog v.7.?, V.8.? o superior.
    4. Cuando se produzca el paso del año 1999 al año 2000, la fecha pasará de ser 31/12/99 a 01/01/:0, el paso del año es incorrecto.

Solución: Programación manual de la fecha, a través de las teclas FUNC PROG 9 en Terminales MIIP-4A y MIP-4Z y las teclas F1 F2 9 en Terminales MIP-4B. En el campo año pulsamos 00 para indicar 2000.

Siempre que se reseteen/autoconfiguren estos terminales debemos de actualizar la fecha.

TERMINALES CON SISTEMA OPERATIVO BIOS (C++)

  1. Versión de placa con S.O. Bios v.1.E o inferior y Bios v.6.7 o superior.
  2. Cuando se produzca el paso del año 1999 al año 2000, la fecha pasará de ser 31/12/99 a 01/01/00, el paso del año es correcto.

  1. Versión de placa v.6. con S.O. Bios v.3.0 o superior (hasta Bios v.6.6 incluida).
  2. Cuando se produzca el paso del año 1999 al año 2000, la fecha pasará de ser 31/12/99 a 01/01/9:, el paso del año es incorrecto.

    Solución:

    2.1   Programación manual de la fecha, a través del SetUp del Sistema Operativo (cuando el Terminal no tiene una aplicación cargada). En el campo de año pulsamos 00 para indicar 2000.

    Siempre que se reseteen/autoconfiguren estos terminales debemos de actualizar la fecha.

    2.2   Envío de los Terminales a nuestro Servicio Técnico para que realicen la atualización del     Sistema Operativo a Bios v.6.7 y una pequeña modificación en la placa.

  1. Versión de placa v.7. con Bios v.7.0 o superior.
  2. Cuando se produzca el paso del año 1999 al año 2000, la fecha pasará de ser 31/12/99 a 01/01/00, el paso del año es correcto.

 

DURANTE LA EJECUCIÓN DE UNA APLICACIÓN.

Los problemas pueden ser los siguientes si la aplicación sólo utiliza para el campo fecha dos dígitos:

  • Comparaciones de fechas: por ejemplo, para evaluar vencimientos de pagos. Si se compara el año 99 con el año 00, el 99 se produce después (es mayor que 00) y esto no es correcto.
  • Procesos y cálculos con fechas: con esto nos referimos a cálculos de días entre dos fechas, número de fines de semana entre dos meses, aumentar una cantidad de días a una fecha, etc.

Solución: Existen varias opciones:: Existen varias opciones:

1ª) Modificar la aplicación para que el campo año tenga 4 dígitos y por lo tanto su valor sea el correcto.

2ª) No ampliar el campo año a 4 dígitos, pero cuando se quieran realizar comparaciones entre dos años de diferentes siglos se debe tener en cuenta que el año del próximo siglo debe ser un caso especial en la comparación. Supongamos que queremos comparar dos años, uno de ellos es el 1999 (99) y el otro el 2000 (00). Si comparamos directamente con el valor de dos dígitos, obtenemos que el 00 es inferior al 99, lo que es un resultado incorrecto. En cambio, si primero averiguamos que uno de ellos es inferior al 2000 y el otro no, ya sabremos que es superior en la comparación el año del siglo XXI, por lo que no hará falta comparar directamente y obtendremos un resultado correcto.

 

 

  RECOMENDACIONES

MIPSA, recomienda a todos sus clientes realizar una simulación de trabajo del día 1 de Enero del año 2000, para evaluar posibles problemas en su aplicación. Los pasos son los siguientes:

  • Cambiar la fecha del sistema al 1 de Enero del año 2000. ( Esto se hace en el S.O. Mipprog mediante la pulsación de las teclas FUNC PROG 9 en Terminales MIP-4A / MIP-4Z y las teclas F1 F2 9 en Terminales MIP-4B. En BIOS accediendo al SETUP mediante la tecla FUNC o F1 si no existe una aplicación cargada en el Terminal ).
  • Preparar los ficheros de datos adaptados para trabajar en esa fecha, y cargarlos en el terminal tras cargar la aplicación.
  • Realizar todos los procesos completos que permite hacer la aplicación.
  • Evaluar las transmisiones de ficheros y listados de la impresora.
  • Ver si los resultados son correctos para la fecha 01/01/2000.

Es recomendable realizar este proceso varias veces para diferentes fechas del próximo año. Una vez que no ocurra nada extraño en ninguna de ellas, se podrá asegurar que la aplicación está a salvo del efecto 2000.

 

 Home