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 [January 25, 2019, 11:50:33 AM] – darya.prikhodkina | 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 Progress 4GL to .NET Using Command Line ====== | + | ====== How To Migrate Progress 4GL to C# with Microsoft SQL Server Database Usage ====== |
- | 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 command line options: | + | Description of the command line options: |
- | * **c: | + | * **c: |
* **/F** – a path to the source files that should be converted. | * **/F** – a path to the source files that should be converted. | ||
* **/DIR** - a path to the folder where the conversion results will be saved. | * **/DIR** - a path to the folder where the conversion results will be saved. | ||
Line 31: | Line 67: | ||
* **/SOURCE** - option that defines a source technology (database or application). | * **/SOURCE** - option that defines a source technology (database or application). | ||
* **/TARGET** - option that defines a target technology (database or application). | * **/TARGET** - option that defines a target technology (database or application). | ||
- | * **/TBLDDL** - a 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] | ||
- | | + | |
- | | + | |
| | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | | ||
- | |||
- | | ||
- | | ||
- | |||
Line 65: | Line 88: | ||
* **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 |
- | * **ENTITY_MODEL_NAMESPACE=** - is used 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 be added manually). | + | |
- | * **COMPILED_QUERIES=** - defines whether the LINQ Compiled queries should be generated. | + | |
- | * **CONVERT_DEPEND_LIBS=** - specifies | + | |
- | * **TEMP_TABLES_PREFIX=** - defines whether | + | |
- | * **GENERATE_TRANSACTIONSCOPE=** - generates TransactionScope for 4GL transactions. | + | |
- | * **PROJECT_NAMESPACE=** - specifies project | + | |
- | * **SAVE_4GL_QUERIES=** - allows to see source 4GL queries | + | |
- | * **GENERATE_SYSTEM_PARAMETERS=** - add system parameters to constructor declarations | + | |
- | * **PARSER_PR_4GL=** - allows to parse unix escape characters. | + | |
- | + | ||
- | + | ||
- | + | ||
- | \\ | + | |
- | Ispirer Note: | + | |
- | To use EDM model please perform the following steps: | + | |
- | | + | |
- | | + | |
\\ | \\ | ||
Line 92: | Line 96: | ||
====== ====== | ====== ====== | ||
- | If you face any issues or have any 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:// | ||
\\ | \\ |