Grâce à l'outil Ispirer Migration and Modernization Toolkit il est désormais possible de convertir des applications depuis COBOL vers VB.NET!
Pourquoi Ispirer MnMTK?
Effectuez votre migration avec Ispirer Systems et profitez donc des avantages suivants que vous offre notre outil:
-
Cohérence et Intégration: automatisation jusqu'à 100%
-
Personnalisation rapide: individualisation et optimisation de la converson (1-3 jours ouvrables en moyenne)
-
Engagement pré-vente: nous démontrons une conversion complète au cours de l'évaluation avant que vous preniez une décision
- Prix Raisonnable: nous offrons une tarification souple
- Conversion Optimisée: en tant que résultat vous obtenez un code intelligent et maintenable, sans aucun middleware à utiliser après la conversion
Evaluation et Achat
L'évaluation de votre projet de migration permettra de mesurer les ressources nécessaires aussi bien que le coût de votre migration. Afin de faciliter ce processus, n'hésitez pas à remplir et à nous envoyer en retour le questionnaire ci-dessous:
Ispirer Migration Solution
Cobol vers VB.NET Commander
Caractéristiques de Conversion
Structure du programme COBOL
IDENTIFICATION DIVISION.
PROGRAM-ID. DemoId.
ENVIRONMENT DIVISION.
DATA DIVISION.
PROCEDURE DIVISION.
FIRST-PARAGRAPH.
DISPLAY "First DEMO".
Il y a quatre divisions :
- IDENTIFICATION DIVISION: On y insère le nom du programme.
- ENVIRONMENT DIVISION: On y définit les fichiers dont le programme a besoin.
- DATA DIVISION: On y déclare les variables, records, fichiers etc..
- PROCEDURE DIVISION: On y écrit le programme. Dans l’exemple ci-dessous tout est en un paragraphe. Un paragraphe est une série d’instructions nommées par un label. Il n’y a pas de note spéciale à la fin du paragraphe.
Paramètres de Conversion
- Migre la base de données d’application COBOL vers une bases de données MSSQLServer
- Convertit les programmes COBOL vers les classes VB.NET
Namespace CobolApplication
Public Class DemoId
Public Sub Main()
ProcedureDivision()
End Sub
Private Sub ProcedureDivision()
Console.WriteLine(“First Demo”)
End Sub
End Class
End Namespace
Convertit les noms des identificateurs vers “camel” case
Convertit la section WORKING-STORAGE avec les variables de déclaration vers les variables de classe
WORKING-STORAGE SECTION.
01 MY_STRING_1 PIC X(20).
01 MY_STRING_2 PIC X(30).
01 MY_NUMBER PIC 9(2) VALUE 1.
Vers:
Private MyString1 As String
Private MyString2 As String
Private MyNumber As Integer = 1
Convertit les COBOL records vers les types définis par l’utilisateur VB.NET
01 MY_DATA_RECORD.
03 MY_NAME PIC X(20) VALUE “John Smit”.
03 MY_ADDRESS PIC X(40) VALUE “Walt Street”.
03 MY_ID PIC 9(2) VALUE 123.
Vers:
Public Class MyDataRecord
Public MyName As String = “John Smit”
Public MyAddress As String = “Walt Street”
Public MyId As Integer = 123
End Class
Private _myDataRecord As MyDataRecord = New MyDataRecord()
Convertit les instructions COBOL MOVE TO/COMPUTE vers les VB.NET assignment statements
MOVE 5 TO MY_NUMBER.
Vers:
MyNumber = 5
Convertit les sections COBOL (groupe de paragraphes ou d’instruction) vers les VB.NET subs. La SECTION peut être appelée en utilisant l’instruction PERFORM. PERFORM est convertie en appel de VB.NET sub.
DISPLAY-INFORMATION.
DISPLAY DISPLAY 'My Number = ' MY_NUMBER.
Vers:
Private Sub DisplayInformation()
Console.WriteLine(“My Number =” + MyNumber)
End Sub
Convertit les structures control COBOL vers les instructions control VB.NET
IF MY_NUMBER > 5
MOVE 12 TO MY_NUMBER.
Vers:
If MyNumber > 5 Then
MyNumber = 12
End If
And
PERFORM UNTIL WS-NUMBER-1 > 100 AND WS-NUMBER-1 < 1000
DISPLAY "Still between 100 and 1000"
END-PERFORM
Vers:
While MyNumber > 100 And MyNumber < 1000
Console.WriteLine(“Still between 100 and 1000”)
End While
Convertit la sortie d’écran (instruction DISPLAY) vers la méthode “Console.WriteLine”
Convertit les instructions EXEC SQL/ END-EXEC(instructions select, insert, update, delete, CURSOR) vers les appels VB.NET LINQ
EXEC SQL
SELECT COUNT(*)
INTO :MY_NUMBER
FROM MY_TABL
WHERE CTR_ID = :MY_STRING_1 AND
MOD_CD = 'ONE'
WITH UR
END-EXEC.
Vers:
MyNumber = Aggregate MyTabl In db.MyTabls
Where MyTabl.CtrId = MyString1
And MyTabl.ModCd = "ONE"
Into Count()
Et
EXEC SQL
DECLARE MY_CUR CURSOR FOR
SELECT LOC_NO,
EFF_DT,
XPIR_DT,
DET_AMT
FROM MY_TABL
WHERE CTR_ID = :MY_STRING_1
AND MOD_CD = 'TWO'
AND TRN_ID IS NULL
ORDER BY LOC_NO
WITH UR
END-EXEC.
EXEC SQL
OPEN MY_CUR
END-EXEC.
EXEC SQL
FETCH MY_CUR
INTO :MY-LOC-NO,
:MY-EFF-DT,
:MY-XPIR-DT,
:MY-ARO-AMT
END-EXEC
EXEC SQL CLOSE MY_CUR END-EXEC.
Vers:
Dim MyCur = From MyTabl In db.MyTabls
Where MyTabl.CtrId = MyString1
And MyTabl.ModCd = "TWO"
And MyTabl.TrnId IS Nothing
ORDER BY LocNo Descending
For Each MyTabl In MyCur
MyLocNo = MyCur.LocNo
MyEffDt = MyCur.EffDt
MyXpirDt = MyCur.XpirDt
MyAroAmt = MyCur.DetAmt
Next
db.SaveChanges()
Contactez-nous pour en savoir plus.
|