ДАННЫЙ САЙТ ИСПОЛЬЗУЕТ ФАЙЛЫ COOKIE: продолжая просмотр страниц сайта, Вы даете свое согласие на использование файлов cookie.
Для получения дополнительной информации, пожалуйста, ознакомьтесь с нашей
Политикой конфиденциальности и Политикой использования файлов cookie.

Кастомизированная и Высокоавтоматизированная Межплатформенная
Миграция Баз Данных и Приложений


Конвертация Progress 4GL в C#.NET

.NET

Ispirer MnMTK автоматизирует весь процесс конвертации Вашего приложения Progress 4GL в C#.NET. Более того, с помощью Ispirer MnMTK Вы устраняете большинство сопутствующих рисков и существенно снижаете внутренние усилия. Все эти преимущества доступны по разумным ценам, что делает Ispirer MnMTK еще более привлекательным инструментом для данного типа миграции.


В Online-презентации вы увидите, как программа для миграции баз данных Ispirer MnMTK конвертирует Progress 4GL в .NET:






Почему Ispirer MnMTK?

Ispirer Systems стремиться к предоставлению высококачественных услуг в сфере конвертации приложений и миграции баз данных. Мы вносим дополнительные настройки в программу, чтобы кастомизированная специально под ваш проект версия учитывала все его тонкости и особенности, а конечный результат соответствовал вашим требованиям и ожиданиям.

Наши главные преимущества

  • Высококвалифицированная техническая поддержка. Наша команда обладает огромным опытом в проведении проектов по конвертации приложений различных уровней сложности. Поэтому наша помощь для быстрой и качественной конвертации – это то, что Вам нужно!
  • Индивидуальный подход к каждому проекту и быстрая кастомизация софта под проект. Мы настраиваем работу софта под каждый проект, чтобы конченый результат соответствовал всем вашим требованиям. Расширение функционала нашего софта занимает 1-2 дня.
  • Взаимодействие с клиентом до принятия решения о покупке. Перед принятиям Вами решения о приобретении Лицензии или Сервиса мы проводим полную наглядную демонстрацию процесса конвертации приложения.
  • Гибкая система цен. Наши цены индивидуальны и зависят от объема проекта и сроков его исполнения. Мы подбираем несколько вариантов цены, среди которых вы сможете найти тот, который Вас устроит.
  • Оптимизированное преобразование. По завершении вашего проекта конвертации Delphi приложения вы получите интеллектуальный и технологичный код, который не требует использования какого-либо промежуточного софта от Ispirer.

Наш подход

Для компаний ISV Ispirer предлагает комплексную Модель взаимодействия для конвертации приложений с миллионами строк кода. В случае миграции с Progress 4GL на C#.NET, мы можем предложить Вам ознакомиться с моделью взаимодействия для определенного миграционного направления:

Пожалуйста, заполните опросный лист для того, чтобы начать переговоры о сотрудничестве по Вашему проекту или получить приблизительную оценку:

Онлайн-презентация

Ispirer Migration Solution

Progress 4GL в C#.NET

Заказать

Узнать стоимость

Ispirer Migration Solution

Progress 4GL в C#.NET

Услуги Программа

Пожалуйста, свяжитесь с нами для получения более подробной информации.

Характеристики конвертации

Как часть конвертации приложений Progress 4GL в C# .NET, базы данных Progress конвертируются в базы данных Microsoft SQL Server. Ispirer MnMTK также позволяет:

  • Конвертировать таблицы/представления/последовательности Progress в таблицы/представления/последовательности Microsoft SQL Server:
    ADD TABLE "TB_DATATYPES"
      AREA "Schema Area"
      DUMP-NAME "tb_datat"
     
    ADD FIELD "c1" OF "TB_DATATYPES" AS CHARACTER 
      FORMAT "X(8)"
      INITIAL ""
      POSITION 2
      SQL-WIDTH 16
      ORDER 10
     
    ADD FIELD "c4" OF "TB_DATATYPES" AS INTEGER 
      FORMAT "->,>>>,>>9"
      INITIAL "0"
      POSITION 5
      SQL-WIDTH 4
      ORDER 20
     
    ADD FIELD "c5" OF "TB_DATATYPES" AS logical 
      FORMAT "yes/no"
      INITIAL "no"
      POSITION 6
      SQL-WIDTH 1
      ORDER 30
     
    .
    PSC
    cpstream=ISO8859-1
    .
    0000000976
     
    TO:
     
    CREATE TABLE TB_DATATYPES
    (
       c1 CHAR(16)   NULL,
       c4 INT   NULL,
       c5 BIT   NULL
    )
  • Конвертировать триггеры Progress 4GL в триггеры/процедуры Microsoft SQL Server или классы C#:
    TRIGGER PROCEDURE FOR DELETE OF gsinvhd.
    FIND distribution 
    WHERE distribution.company = gsinvhd.company NO-LOCK 
    NO-ERROR.
     
    TO:
     
    CREATE TRIGGER SWT_Delete_gsinvhd
    ON gsinvhd
    AFTER DELETE
       AS
       DECLARE @distribution_company VARCHAR(255)
       SELECT    @distribution_company = company FROM distribution   
       WHERE   distribution.company = gsinvhd.company

  • Код Progress 4GL в код .NET:



  • Конвертировать процедурные файлы Progress 4GL (*.p) в классы C#
  • Конвертировать включаемые файлы Progress 4GL (*.i) в классы/код C#
    FUNCTION days-in-month RETURNS INTEGER
      ( INPUT pmonth AS INTEGER, INPUT pyear AS INTEGER ) :
     
      DEFINE VARIABLE idays AS INTEGER EXTENT 12 INITIAL 
    [31,28,31,30,31,30,31,31,30,31,30,31].
     
      IF pmonth NE 2 THEN DO:
        RETURN idays[pmonth].
      END.
      ELSE DO:
        IF INTEGER(pyear / 4) * 4 = pyear THEN DO:
          IF INTEGER(pyear / 100) * 100 = pyear THEN DO:
            IF INTEGER(pyear / 400) * 400 = pyear 
            THEN RETURN 29.
            ELSE RETURN 28.
          END.
          ELSE RETURN 29.
        END.
        ELSE RETURN 28.
      END.      
    END FUNCTION.
     
    using System;
    using System.Collections.Generic;
    namespace Ispirer.Services.Source
    {
        public class TestClass
        {
            static TestClass()
            {
            }
            public int Days_in_month(int pmonth, int pyear)
            {
                int[] idays = new int[] 
                { 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31 };
                if (pmonth != 2)
                {
                    return idays[pmonth - 1];
                }
                else
                {
                    if (Convert.ToInt32(pyear / 4) * 4 == pyear)
                    {
                      if (Convert.ToInt32(pyear / 100) * 100 == pyear)
                      {
                        if (Convert.ToInt32(pyear / 400) * 400 == pyear)
                            return 29;
                        else
                            return 28;
                      }
                        else
                            return 29;
                    }
                    else
                        return 28;
                }
            }
        }
    }
  • Конвертировать Файлы оконной процедуры Progress 4GL (*.w) в:
    • Windows Forms
    • Windows Presentation Foundation (WPF)




    • Например, в WinForms:



    Ispirer MnMTK автоматически разделяет логику окна Progress 4GL (*.w):
    • Логика UI в “.Designer.cs”
    • Логика триггеров ON в исходный код “.cs”
  • Конвертировать Доступ к базе данных:
    • ADO.NET
    • LINQ
    &ANALYZE-SUSPEND _UIB-CODE-BLOCK _PROCEDURE generate-data Procedure 
    PROCEDURE generate-data :
    DEFINE VARIABLE i            AS INTEGER NO-UNDO.
    DEFINE VARIABLE gc-company AS CHARACTER NO-UNDO.
     
    FIND company WHERE company.company = gc-company NO-LOCK NO-ERROR.
     
     find budget where budget.company = gc-company no-lock no-error.
     
      Do while avail budget:
       Do i = 0 to company.num-periods:  
        find budget-analysis where 
          budget-analysis.user-id = company.gc-user-id and 
          budget-analysis.company = gc-company and
          budget-analysis.pc-center = "ALL" and
          budget-analysis.acct-period = i
          no-error.   
    End.
    End.
    END PROCEDURE.
    &ANALYZE-RESUME
     
    TO:
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Linq;
    namespace Ispirer.Services.Source
    {
     public class Gn_Data
     {
     
      #region Implicit buffers
     
      Data.Tables.company company;
      Data.Tables.budget budget;
      Data.Tables.budget_analysis budget_analysis;
     
      #endregion
     
      public Gn_Data()
      {
      }
       public void Generate_data()
       {
        int i = 0;
        string gc_company = string.Empty;
        company = (from company_Row in Db.company
             where company_Row.company == gc_company
             select company_Row).FirstOrDefault();
        budget = (from budget_Row in Db.budget
             where budget_Row.company == gc_company
             select budget_Row).FirstOrDefault();
        while (budget != null)
        {
         for (i = 0; i <= company.num_periods; i++)
          {
           budget_analysis = 
           (from budget_analysis_Row in Db.budget_analysis
             where budget_analysis_Row.user_id == company.gc_user_id &&
             budget_analysis_Row.company == gc_company &&
             budget_analysis_Row.pc_center == "ALL" &&
             budget_analysis_Row.acct_period == i
             select budget_analysis_Row).FirstOrDefault();       
          }
         }
        }
      }
    }
  • Конвертировать Файлы соответствия веб-сервиса Progress 4GL(*.wsm) в веб-сервис XML Web (*.asmx.cs)

 
PGConf.Russia 2018

Ispirer Systems - партнер и участник PGConf.Russia 2018!


Отзывы
30.03.2018 Казахский национальный педагогический университет
Миграция с PASCAL в C#.NET

Я занимаюсь научной деятельностью в Казахском национальном педагогическом университете. ...

28.03.2018Extedo, Германия
DB2 в MSSQL Server


EXTEDO была основана в 1996 году как департамент компании IABG с простой миссией: помогать научно-исследовательским институтам в области медицины соответствовать...

...

02.02.2018ООО "Гисофт", Россия
Миграция из Microsoft SQL Server в PostgreSQL

Компания «Гисофт», разработчик автоматизированных систем управления для образования, после долгих и в основном неудачных экспериментов с...

...

Истории успеха
17.07.2017Миграция с Oracle в PostgreSQL, РоссияПрофессиональные услуги по переносу пакетов и хранимых процедур с Oracle в PostgreSQL.


В конце 2016 года компания Ispirer Systems осуществила услуги по миграции для одного из российских...

...

17.07.2017Конвертация Oracle в Java, Индия

В начале 2017 года к Ispirer Systems обратилась индийская многонациональная компания, которая предоставляет инновационные IT-решения и услуги. Компания предлагает лучшие в своем классе...

...