Kundenspezifische, hochqualifizierte und plattformübergreifende Migration von
Datenbanken und Anwendungen.


Progress 4GL nach C#.NET Konvertierung

.NET

Ispirer MnMTK ist das Tool für die Anwendungskonvertierung. Dieses Tool kann die Konvertierung von Progress 4GL nach C#.NET automatisch durchführen.

Während der Erarbeitung unser Tools berücksichtigen wir die Anforderungen der Kunden um die besten Konvertierungsergebnisse zu erreichen. Unser technishes Team hat viele Erfahrung und immer findet die innovativen Lösungen zu den komplizierten Problemen.

Diese Demo zeigen, wie Ispirer MnMTK 2015 Progress 4GL nach C#.NET konvertieren kann:




Warum Ispirer MnMTK

Unsere Vorteile:
  • Hochqualifiziertes Team: unsere Experte haben viele Erfahrung in den Migrationsprojekten und können Migrationen auf jeden Schwierigkeitsgrad durchführen.
  • Kundenorientierung: wir personalisieren das Tool gemäß der Anforderungen von den Kunden. Die Erweiterung des Tools nimmt 1-2 Tage in Anspruch;
  • Online-Meeting: es gibt die Möglichkeit Online-Meetings zu vereinbaren, während dessen unser Team den Konvertierungsprozess Ihnen demonstrieren kann;
  • Projektbezogene Preise: die Preise hängen von der Größe des Projektes ab; wir bieten eine Reihe von Optionen an, damit Sie am besten passende Option wählen können;
  • Optimierte Konvertierung: nach der Konvertierung bekommen Sie den komplett funktionellen Code.

Live-Präsentation

Ispirer Migrationslösung

Progress 4GL nach C#.NET

Anfragen

Angebot anfragen

Ispirer Migrationslösung

Progress 4GL nach C#.NET

Service Toolkit
Ispirer MnMTK ünterstützt auch die Migration von Progress Datenbank nach verschiedenen Datenbanken.

Bewertungsprozess

Füllen Sie bitte den Fragenbogen, der uns bei der Bewertung helfen wird. Auf der Basis deiser Information können wir Ihnen üngefähres Angebot machen:

Konvertierungsbesonderheiten

Als ein Teil der Anwendungsmigration von Progress 4GL nach C# .NET werden Progress Datenbanken nach Microsoft SQL Server Datenbanken konvertiert. Ispirer MnMTK bietet das Folgende an:

  • Konvertierung der Progress Tabellen/Sichten/Sequenzen nach Microsoft SQL Server Tabellen/Sichten/Sequenzen:
    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
    )
  • Konvertierung der Progress 4GL Trigger nach Microsoft SQL Server Trigger/Prozeduren oder C# Klassen:
    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 Code nach .NET Code:



  • Konvertierung der Progress 4GL Dateien der Prozeduren (*.p) nach C# Klassen
  • Konvertierung der Progress 4GL Include-Dateien (*.i) nach C# Klassen/Code
    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;
                }
            }
        }
    }
  • Konvertierung der Progress 4GL Window Dateien der Prozeduren (*.w) nach:
    • Windows Forms
    • Windows Presentation Foundation (WPF)




    • Zum Beispiel, nach WinForms:



    Ispirer MnMTK separiert die Logik von Progress 4GL window automatisch (*.w):
    • Logik der Benutzeroberfläche nach “.Designer.cs”
    • Logik der ON Trigger nach Quellcode “.cs”
  • Konvertierung von Data Access nach:
    • 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();       
          }
         }
        }
      }
    }
  • Konvertierung von Progress 4GL Web Service Mapping Files(*.wsm) nach XML Web service (*.asmx.cs)

Sie können auch die Muster vom Progress 4GL Quellcode unterladen und die Ergebnisse der Konvertierung anschauen:


Für weitere Informationen, kontaktieren Sie bitte uns.

 
Zeugnisse
26.01.2017Susquehanna Information Systems, die USA
IBM DB2 AS/400 nach Microsoft SQL Server

"Sehr geehrte Damen und Herren,

Susquehanna Information Systems arbeitet mit den mittelständischen Unternehmen. Unser...

...

02.01.2017Wine & Vinos GmbH, Deutschland
Progress nach Microsoft SQL Server

"Wir mussten unser ERP-System von Progress Datenbank migireren. Wir haben uns für Microsoft Dynamics NAV entschieden und...

...

Fallstudien
05.01.2017Informix 4GL nach C#.NET, die USA Die Erweiterungsstufe als primärer Schritt der Anwendungsmigration.


Einer der weltweit führenden globalen Führungskräfte und Innovatoren, der integrierte Technologie- und...

...

09.09.2016C++ nach C#.NET, die Niederlande

Dieses Mal war ein niederländisches IT-Unternehmen unser Kunde, der vollständig integrierte Lösungen zur Verfügung stellt. Diese Lösungen helfen bei der Entwicklung vom digitalen Design. Seit...

...