从 COBOL 到 Visual Basic.NET
Ispirer一直致力于提高Ispirer MnMTK性能和功能的水平。现在这个应用程序迁移工具可以帮助您转换COBOL成VB.NET ,并满足您对转换项目的需求。
为什么选择Ispirer MnMTK为COBOL转换到VB.NET?
Ispirer MnMTK自动您的现在的COBOL应用的整一迁移过程到VB.NET。此外,您对Ispirer MnMTK减少大多数的风险及低需要的努力的总量。所有这些好处是可用的最合理的与竞争成本,可以Ispirer MnMTK更佳生动工具为此项目类型。
我们主要好处:
- 高素质和经验丰富的技术支持: 我们的技术团队拥有在复杂程度不同的迁移项目的工作经验。我将帮助您从COBOL迅速且简单的迁移到VB.NET 。
- 高度定制化:根据您对迁移项目的需求定制工具包。
- 最大化节省时间和精力:自动迁移总是比手动迁移更快,更有效。Ispirer将帮助您避免在代码中的任何错误,并明显地加快迁移的过程。如果您对转换的结果不满意,您可以随时更改转换规则和快速再次转换您的COBOL代码。
- 灵活的定价策略: 我们为您提供广泛的选择,其中您一定会找到最适合您的价格方案。
- 纯代码: 没有Ispirer的文库或转换后使用IP。
评估过程
请填写调查问卷,以开始您项目中的谈判或得到粗略的估计:
Ispirer转换解决方案
从 COBOL 到 Visual Basic.NET 请求
Ispirer转换解决方案
从 COBOL 到 Visual Basic.NET 服务
工具
Ispirer MnMTK从COBOL到VB.NET应用程序转换的特征
COBOL程序结构
IDENTIFICATION DIVISION. PROGRAM-ID. DemoId. ENVIRONMENT DIVISION. DATA DIVISION. PROCEDURE DIVISION. FIRST-PARAGRAPH. DISPLAY "First DEMO".
共有四个部:
- IDENTIFICATION DIVISION: 这就是您要输入程序名。
- ENVIRONMENT DIVISION: 这就是您要定义程序所需要的文件。
- DATA DIVISION: 这就是您要声明变量、记录、 文件等。
- PROCEDURE DIVISION: 这就是您要写程序。上面的示例里一切都在同一个段落。段落是一系列语句按标签被称为。段落结尾没有特定的标记。
- 将COBOL应用的数据库迁移到MSSQLServer数据库
- 将COBOL程序转换到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
标识符名转换到CamelCase
有声明变量的WORKING-STORAGE部分转换到类变量
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.
到:
Private MyString1 As String Private MyString2 As String Private MyNumber As Integer = 1
COBOL记录转换到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.
到:
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()
COBOL MOVE TO/COMPUTE语句转换到VB.NET赋值语句
MOVE 5 TO MY_NUMBER.
到:
MyNumber = 5
COBOL段(段落或语句组)转换到VB.NET Sub过程. 使用PERFORM语句就可以调用SECTION. PERFORM转换到VB.NET sub的调用。
DISPLAY-INFORMATION. DISPLAY DISPLAY 'My Number = ' MY_NUMBER.
到:
Private Sub DisplayInformation() Console.WriteLine(“My Number =” + MyNumber) End Sub
COBOL控制结构转换到VB.NET控制语句
IF MY_NUMBER > 5 MOVE 12 TO MY_NUMBER.
到:
If MyNumber > 5 Then MyNumber = 12 End If
及
PERFORM UNTIL WS-NUMBER-1 > 100 AND WS-NUMBER-1 < 1000 DISPLAY "Still between 100 and 1000" END-PERFORM
到:
While MyNumber > 100 And MyNumber < 1000 Console.WriteLine(“Still between 100 and 1000”) End While
屏幕输出(DISPLAY语句)转换到“Console.WriteLine”方法
EXEC SQL/ END-EXEC(选择、插入、更新、删除、CURSOR语句)语句转换到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.
到:
MyNumber = Aggregate MyTabl In db.MyTabls Where MyTabl.CtrId = MyString1 And MyTabl.ModCd = "ONE" Into Count()
及
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.
到:
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()
有关更多的信息,请随时联系我们。
|