STE SITIO WEB UTILIZA COOKIES: si continúa navegando en este sitio, está dando su consentimiento para la aceptación de las cookies.
Para obtener más información, por favor, lea nuestra Política de privacidad y Política de cookies.

Migración y Modernización
Automatizada y Personalizada
de Bases de Datos y Aplicaciones


Conversión de COBOL a C#

.NET

Ispirer MnMTK es capaz de convertir las aplicaciones COBOL a aplicaciones C#.

Esta demo muestra cómo Ispirer MnMTK puede convertir aplicaciones COBOL a aplicaciones C#.

Estructura del Programa COBOL

  1. IDENTIFICATION DIVISION.
  2. PROGRAM-ID.
  3. DemoId.
  4. ENVIRONMENT DIVISION.
  5. DATA DIVISION.
  6. PROCEDURE DIVISION.
  7. FIRST-PARAGRAPH.
  8. DISPLAY "First DEMO".


Hay las cuatro divisiones:

  • DIVISIÓN DE IDENTIFICACIÓN: Aquí es donde debe introducir el nombre del programa.
  • DIVISIÓN DE MEDIO AMBIENTE: Aquí es donde se definen los archivos que el programa necesita.
  • DIVISIÓN DE DATOS: Aquí es donde se declaran las variables, registros, archivos, etc.
  • DIVISIÓN DE PROCEDIMIENTO: Aquí es donde se escribe el programa. En el ejemplo anterior esto es todo en un solo párrafo. Un párrafo es una serie de sentencias nombrados por una etiqueta. No hay ninguna marca específica para el final de un párrafo.

Características de la conversión

  • Migra base de datos de aplicación COBOL a base de datos MSSQLServer
  • Convierte los programas COBOL a clases C#
    1. using System;
    2. using System.Collections.Generic;
    3. using System.Linq; using System.Text;
    4. namespace CobolApplication
    5. {
    6. class DemoId
    7. {
    8. static void Main(string[] args)
    9. {
    10. Console.WriteLine("First DEMO");
    11. }
    12. }
    13. }
  • Convierte los nombres de los identificadores a CamelCase
  • Convierte WORKING-STORAGE SECTION con las variables de la declaración a las variables de clase
    1. WORKING-STORAGE SECTION.
    2. 01 MY_STRING_1 PIC X(20).
    3. 01 MY_STRING_2 PIC X(30).
    4. 01 MY_NUMBER PIC 9(2) VALUE 1.

    A:

    1. private string MyString1;
    2. private string MyString2;
    3. private int MyNumber = 1;
  • Convierte los registros COBOL a tipos definidos por el usuario de C#
    1. 01 MY_DATA_RECORD.
    2. 03 MY_NAME PIC X(20) VALUE “John Smit”.
    3. 03 MY_ADDRESS PIC X(40) VALUE “Walt street”.
    4. 03 MY_ID PIC 9(2) VALUE 123.

    A:

    1. public class MyDataRecord
    2. {
    3. public string MyName = "John Smit";
    4. public string MyAddress = "Walt street";
    5. public int MyId = 123;
    6. }
    7. public MyDataRecord myDataRecord = new MyDataRecord();
  • Convierte sentencias COBOL MOVE TO/COMPUTE a las sentencias de asignación C#
    1. MOVE 5 TO MY_NUMBER.

    A:

    1. MyNumber = 5;

  • Convierte las secciones COBOL (grupo de párrafos o sentencias) a métodos C#. La SECTION puede ser llamada usando sentencia PERFORM. PERFORM se convierte a la llamada de método C#.
    1. DISPLAY-INFORMATION.
    2. DISPLAY DISPLAY 'My Number = ' MY_NUMBER.

    A:

    1. private void DisplayInformation()
    2. {
    3. Console.WriteLine("My Number = " + MyNumber);
    4. }
  • Convierte las estructuras de control de COBOL a sentencias de control de C#
    1. IF MY_NUMBER > 5 MOVE 12 TO MY_NUMBER.

    A:

    1. if (MyNumber > 5)
    2. {
    3. MyNumber = 12;
    4. }
    Y
    1. PERFORM UNTIL WS-NUMBER-1 > 100 AND
    2. WS-NUMBER-1 < 1000
    3. DISPLAY "Still between 100 and 1000"
    4. END-PERFORM

    A:

    1. while ((MyNumber > 100) && (MyNumber < 1000))
    2. {
    3. Console.WriteLine("Still between 100 and 1000");
    4. }
  • Convierte la salida de pantalla (sentencia DISPLAY) a método “Console.WriteLine”
  • Convierte EXEC SQL/END EXEC (sentencias SELECT, INSERT, UPDATE, DELETE, CURSOR) a las Entidades C# LINQ
    1. EXEC SQL SELECT COUNT(*) INTO :MY_NUMBER
    2. FROM MY_TABL
    3. WHERE CTR_ID = :MY_STRING_1 AND MOD_CD = 'ONE'
    4. WITH UR END-EXEC.

    A:

    1. MyNumber = (from MyTabl in db.MyTabls
    2. where (MyTabl.CtrId == MyString1)
    3. && (MyTabl.ModCd == "ONE") select MyTabl).Count();
    Y
    1. EXEC SQL
    2. DECLARE MY_CUR CURSOR FOR SELECT LOC_NO, EFF_DT,
    3. XPIR_DT, DET_AMT FROM MY_TABL
    4. WHERE CTR_ID = :MY_STRING_1 AND MOD_CD = 'TWO'
    5. AND TRN_ID IS NULL ORDER BY LOC_NO,
    6. EFF_DT WITH UR END-EXEC.
    7. EXEC SQL OPEN MY_CUR END-EXEC.
    8. EXEC SQL FETCH MY_CUR INTO :MY-LOC-NO, :MY-EFF-DT,
    9. :MY-XPIR-DT, :MY-ARO-AMT
    10. END-EXEC
    11. EXEC SQL CLOSE MY_CUR END-EXEC.

    A:

    1. foreach (var MyCur in (from MyTabl in
    2. db.MyTabls where (MyTabl.CtrId == MyString1) &&
    3. (MyTabl.ModCd == "TWO") && (MyTabl.TrnId == null)
    4. orderby MyTabl.LocNo, MyTabl.EffDt descending select MyTabl))
    5. {
    6. MyLocNo = MyCur.LocNo;
    7. MyEffDt = MyCur.EffDt;
    8. MyXpirDt = MyCur.XpirDt;
    9. MyAroAmt = MyCur.DetAmt;
    10. }

Por qué Ispirer MnMTK

Ispirer MnMTK puede ayudarle a convertir automáticamente su aplicación COBOL corriente. Esto también elimina la mayoría de los riesgos y reduce considerablemente la cantidad total de los esfuerzos necesarios. Todos estos beneficios están disponibles a costos muy razonables y competitivos, lo que hace Ispirer MnMTK aún más atractivo instrumento para este tipo de proyecto. Ispirer MnMTK es también una herramienta de conversión muy flexible. Cualquier dirección de la migración puede ser desarrollada más. Esto puede proporcionar la conversión en los plazos más breves.

Presentación en Vivo

Solución de Migración de Ispirer

COBOL a C#

Solicitar

Solicitar un Presupuesto

Solución de Migración de Ispirer

COBOL a C#

Servicio Herramienta

Si Usted tiene algunas preguntas o desea obtener más información, siempre puede ponerse en contacto con nosotros.

 
Testimonios
Septiembre 11, 2017Cardtek, Turquía
Microsoft SQL Server a Oracle

"Cardtek es la empresa más valiosa en el sector financiero y bancario en Turquía. Entre otros numerosos proyectos, estamos operando un sistema de recolección de...

...

Septiembre 11, 2017Caxton & CTP Publishers and Printers Ltd, Sudáfrica
Sybase ASE a MySQL

"Estimada Vera,

Donde estamos es el siguiente:

1. Hemos habilitado todo nuestro software para operar en una 'Agnostic Manner' en que ya no es hardware y tipo de base...

...

Estudios de Caso
Septiembre 14, 2017Oracle Forms a Java, Estados Unidos
¡La viabilidad de la migración automática de Oracle Forms a Java con Ispirer MnMTK se ha probado!


A principios de 2017, Ispirer Systems fue contactado por una de las compañías global de...

...

Junio 5, 2017Oracle a PostgreSQL, Rusia
Servicios profesionales de migración de paquetes y procedimientos almacenados de Oracle a PostgreSQL.


A finales de 2016, Ispirer Systems realizó servicios de migración para uno de los...

...