Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
sqlways:users-guide:migrate-progress4gl-to-c-net [October 12, 2018, 01:43:12 PM] – alexandr.kirpichny | sqlways:users-guide:migrate-progress4gl-to-c-net [May 31, 2023, 05:28:12 PM] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
\\ | \\ | ||
- | [[http:// | + | [[https:// |
- | [[http:// | + | [[https:// |
- | [[http:// | + | [[https:// |
\\ | \\ | ||
- | ====== How To Migrate | + | ====== How To Migrate |
- | To migrate Progress 4GL code to .NET technology | + | To migrate Progress 4GL code to C# with Microsoft SQL Server usage in command line mode you can use Ispirer nGLFly tool or SQLWays.exe command line tool. |
===== Registration ===== | ===== Registration ===== | ||
- | If you run the SQLWays.exe tool for the first time, you need to register the tool using the license information that you have. You can register the toolkit using the SQLWays Wizard tool. Here you can find step by step guide on how to run and register the tool. Please follow the steps described in the article: | + | If you run the Ispirer nGLFly or SQLWays.exe tool for the first time, you need to register the tool using the license information that you have. You can register the toolkit using the SQLWays Wizard tool. Here you can find step by step guide on how to run and register the tool. Please follow the steps described in the article: |
[[http:// | [[http:// | ||
+ | ===== Preparation ===== | ||
- | ===== Conversion ===== | + | If you have Progress database, first of all you should convert this database to MS SQL Server one. |
+ | Before you start Progress 4GL to C# conversion, you should create edmx model to get correct queries in C# results. For this purpose, you can use database file *.mdf or existing connection to database. | ||
+ | |||
+ | To create EDMX file you should: | ||
+ | - Open project in Visual Studio | ||
+ | - Perform right click on project item, select " | ||
+ | {{: | ||
+ | - Select " | ||
+ | {{: | ||
+ | - Select "EF Designer from database" | ||
+ | {{: | ||
+ | - Select existing connection or create a new one using existing database or your *.mdf database file | ||
+ | {{: | ||
+ | - Select " | ||
+ | {{: | ||
+ | - Select all table, write Model Namespace and set other options as they are set on the picture below and press " | ||
+ | {{: | ||
+ | |||
+ | After that you should go to the application folder in File Explorer, find *.edmx file and copy it to the folder with conversion sources. After that you should create a " | ||
+ | |||
+ | {{: | ||
+ | |||
+ | ===== Conversion With Ispirer nGLFly Wizard ===== | ||
+ | |||
+ | To use EDMX during conversion you should click " | ||
+ | - "DATA model used" to EDM | ||
+ | - " | ||
+ | - " | ||
+ | |||
+ | Other target options should be set as they are set in the screenshot below. | ||
+ | |||
+ | {{: | ||
+ | |||
+ | After you will get the results, you can add them to the project where you've been created edmx file and, if you do everything correct, you will have results that are connected to edmx model and database. | ||
+ | |||
+ | ===== Conversion | ||
After you registered the toolkit you need to run the following command in the Command Prompt: | After you registered the toolkit you need to run the following command in the Command Prompt: | ||
- | | + | |
\\ | \\ | ||
\\ | \\ | ||
- | Description of the used command line options: | + | Description of the command line options: |
- | * **c: | + | * **c: |
- | * **/F** – path to the source files that should be converted. | + | * **/F** – a path to the source files that should be converted. |
- | * **/DIR** - path to the folder where the conversion results will be saved | + | * **/DIR** - a path to the folder where the conversion results will be saved. |
- | * **/INI** - path to the options file (.INI file where all the options supported by Ispirer Migration And Modernization ToolKit are located) | + | * **/INI** - a path to the options file (.INI file where all the options supported by Ispirer Migration And Modernization ToolKit are located). |
- | * **/SOURCE** - option that defines source technology (database or application) | + | * **/SOURCE** - option that defines |
- | * **/TARGET** - option that defines target technology (database or application) | + | * **/TARGET** - option that defines |
- | * **/TBLDDL** - path to the Tables_DDL.sql file. This is the file with the MSSQL table definitions. This file is used by the SQLWays.exe tool in order to apply correct conversion of columns, data types and JOINS. | + | |
\\ | \\ | ||
Line 38: | Line 73: | ||
To convert your Progress 4GL source code, please specify the following options in the sqlways.ini file: | To convert your Progress 4GL source code, please specify the following options in the sqlways.ini file: | ||
\\ | \\ | ||
- | [Common] | + | |
+ | [COMMON] | ||
| | ||
- | REGISTRATION_NAME=RegName | + | SOURCE=Progress 4GL |
- | TARGET_DB=MSSQLServer | + | TARGET=CS |
- | + | TARGET_DB=Microsoft SQL Server | |
[CS] | [CS] | ||
- | | + | |
- | | + | |
| | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | + | * **DSN=c: | |
- | + | ||
- | * **DSN=c: | + | |
* **REGISTRATION_NAME=** - is mandatory for your company. | * **REGISTRATION_NAME=** - is mandatory for your company. | ||
* **TARGET_DB=** - specifies the target database. | * **TARGET_DB=** - specifies the target database. | ||
- | * **DATA_MODEL=** - specifies the data model. | + | * **ENTITY_MODEL_NAME=** - specifies the entities |
- | * **ENTITY_MODEL_NAME=** - specifies the name of your sql schema. | + | * **ENTITY_MODEL_NAMESPACE=** - specifies the entities namespace |
- | * **ENTITY_MODEL_NAMESPACE=** - to identify the name of database model. | + | * **DATA_MODEL=EDM** - specifies the usage of entities framework for conversion. |
- | * **UI_TYPE=** - specifies Windows Forms technology for migration if there is any UI logic. | + | |
- | * **GENERATE_CSPRJ=** - creates VS project file (but in that case Entity Model should | + | |
- | * **COMPILED_QUERIES=** - defines whether the LINQ Compiled queries should be generated. | + | |
- | * **CONVERT_DEPEND_LIBS=** - specifies | + | |
- | * **TEMP_TABLES_PREFIX=** - defines whether the " | + | |
- | * **GENERATE_TRANSACTIONSCOPE=** - generates TransactionScope for 4GL transactions. | + | |
- | * **PROJECT_NAMESPACE=** - specifies | + | |
- | * **SAVE_4GL_QUERIES=** - - allows to see source 4GL queries in comments inside | + | |
- | * **GENERATE_SYSTEM_PARAMETERS=** - add to constructor declarations | + | |
- | * **PARSER_PR_4GL=** - allows to parse unix escape characters. | + | |
- | + | ||
- | + | ||
- | + | ||
- | \\ | + | |
- | Ispirer Note: | + | |
- | To use EDM model please do the following steps: | + | |
- | | + | |
- | | + | |
\\ | \\ | ||
Line 92: | Line 96: | ||
====== ====== | ====== ====== | ||
- | If you will face with some issues or have some questions on how to migrate Progress 4GL code to .NET in command line, please contact our support team: [[[email protected]]] | + | If you face any issues or have any questions on how to migrate Progress 4GL code to Microsoft SQL Server |
- | \\ | ||
- | [[http:// | ||
- | [[http:// | ||
- | [[http:// | ||
\\ | \\ |