STE SITIO WEB UTILIZA COOKIES: si continúa navegando en este sitio, está dando su consentimiento para la aceptación de las cookies.
Para obtener más información, por favor, lea nuestra Política de privacidad y Política de cookies.

Migración y Modernización
Automatizada y Personalizada
de Bases de Datos y Aplicaciones


Migración de PowerBuilder a Windows Forms (.NET)

.NET

La herramienta de migración de aplicaciones Ispirer MnMTK proporciona la migración automatizada de PowerBuilder a Windows Forms (.NET).

Esta demo muestra cómo Ispirer MnMTK puede migrar PowerBuilder a Windows Forms:


Características de la Conversión:

Software de migración de aplicaciones Ispirer MnMTK es capaz de convertir aplicaciones PowerBuilder a WinForms .NET. Ispirer MnMTK permite:

  • Convertir archivos de código fuente de aplicaciones (.SRA files)

    Archivo SRA es un archivo de código fuente de la aplicación que contiene la información básica acerca de la aplicación y un punto de entrada a la misma:

    forward
    global TYPE simple_demo FROM application
    END TYPE
    END forward
     
    global TYPE simple_demo FROM application
    string appname = "simple_demo"
    END TYPE
    global simple_demo simple_demo
     
    ON simple_demo.CREATE
    END ON
     
    event OPEN;
       OPEN ( simple_demo_main )
    END event

    SRA file is converted to Static Class which has an entry point to the application:

    static class _simple_demo
    {
       /// <summary>
       /// The main entry point for the application.
       /// </summary>
       [STAThread]
       static void Main()
       {
           Application.EnableVisualStyles();
           Application.SetCompatibleTextRenderingDefault(false);
           Application.Run(new _simple_demo_main());
       }
    }

  • Convertir objetos Window (archivos .SRW) a Windows Forms

    Archivo SRW es un archivo de código fuente de Window. Tiene la descripción de los elementos de Forma y Componente y también Eventos y Métodos. Un archivo SRW se convierte a Windows Forms.

    Consider an example of a simple Form with one Control Element:

    $PBExportHeader$simple_demo_main.srw
    forward
    global TYPE simple_demo_main FROM window
    END TYPE
    TYPE b_button FROM commandbutton WITHIN simple_demo_main
    END TYPE
    END forward
    global TYPE simple_demo_main FROM window
    INTEGER width = 800
    INTEGER height = 1200
    BOOLEAN titlebar = TRUE
    string title = "simple_demo"
    b_button b_button
    END TYPE
    global simple_demo_main simple_demo_main
    ON simple_demo_main.CREATE
    this.b_button =CREATE b_button
    this.Control[]={this.b_button}
    END ON
     
    ON simple_demo_main.destroy
    destroy(this.b_button)
    END ON
     
    TYPE b_button FROM commandbutton WITHIN simple_demo_main
    INTEGER x = 400
    INTEGER y = 400
    INTEGER width = 200
    INTEGER height = 120
    string text = "Show"
    END TYPE
     
    event clicked;
    END event

    La descripción de Forma y Componentes se convierten a formularios:

    namespace simple_demo
    {
        partial class _simple_demo_main
        {
            #region Windows Form Designer generated code
     
            private void InitializeComponent()
            {
                this.b_button = new System.Windows.Forms.Button();
                this.SuspendLayout();
                //
                //b_button
                //
                this.b_button.Location = new System.
    Drawing.Point(100, 100);
                this.b_button.Name = "b_button";
                this.b_button.Size = new System.Drawing.Size(50, 30);
                this.b_button.Text = "Show";
                this.b_button.Click += new System.
    EventHandler(this.b_button_Click);
                //
                //_simple_demo_main
                //
                this.Size = new System.Drawing.Size(200, 300);
                this.Controls.Add(this.b_button);
                this.Name = "_simple_demo_main";
                this.Text = "simple_demo";
     
                this.ResumeLayout(false);
                this.PerformLayout();
            }
            #endregion
            private System.Windows.Forms.Button b_button;
        }
    }

    Evento se convierte a Método de Clase:

    public partial class _simple_demo_main : Form
    {
        public _simple_demo_main()
        {
            InitializeComponent();
        }
        private void b_button_Click
        (object sender, EventArgs e)
        {
        }
    }

    Ispirer MnMTK guarda el tamaño y la propiedad de ubicación de componentes como en una aplicación PowerBuilder convertible:

    Convert PB Convert to WinForms
    Ventana de Aplicación PowerBuilder Ventana de Aplicación WinForms

  • Convertir Menú (.SRM) a User Control estándar

    Un archivo SRM es un archivo de código fuente de Menú. Contiene la descripción de Elementos y Eventos de Menú. Archivo SRW se convierte a User Control.

    Aquí está un ejemplo de un Menú con un solo elemento:

    $PBExportHeader$simple_menu.srm
    forward
    global TYPE simple_menu FROM menu
    END TYPE
    TYPE m_about FROM menu WITHIN simple_menu
    END TYPE
    END forward
     
    global TYPE simple_menu FROM menu
    END TYPE
    global simple_menu simple_menu
     
    ON simple_menu.CREATE
    simple_menu=this
    CALL super::CREATE
    this.m_about=CREATE m_about
    this.Item[UpperBound(this.Item)+1]=this.m_about
    END ON
     
    TYPE m_about FROM menu WITHIN simple_menu
    END TYPE
     
    ON m_about.CREATE
    CALL super::CREATE
    this.text = "&About"
    END ON
     
    event clicked;OPEN(simple_about)
    END event

    Elementos de Menú se convierten a MenuStrip y ToolStripMenuItem Controls. Después de la conversión ellos se añaden a UserControl Designer:

    namespace simple_demo
    {
        partial class _simple_menu
        {
     
            #region Component Designer generated code
            private void InitializeComponent()
            {
                this.simple_menu = new System.Windows.Forms.MenuStrip();
                this.m_about = new System.
    Windows.Forms.ToolStripMenuItem();
                this.simple_menu.SuspendLayout();
                this.SuspendLayout();
                //
                //simple_menu
                //
                this.simple_menu.Items.AddRange
    (new System.Windows.Forms.ToolStripItem[]{ m_about });
                this.simple_menu.Name = "simple_menu";
                //
                //m_about
                //
                this.m_about.Name = "m_about";
                this.m_about.Text = "About";
                this.m_about.Click += new System.
    EventHandler(this.m_about_Click);
                //
                //_simple_menu
                //
                this.simple_menu.Location = new System.
    Drawing.Point(0, 0);
                this.simple_menu.Name = "simple_menu";
                this.simple_menu.Text = "simple_menu";
                this.Controls.Add(this.simple_menu);
                this.Name = "simple_menu";
                this.simple_menu.ResumeLayout(false);
                this.simple_menu.PerformLayout();
     
                this.ResumeLayout(false);
                this.PerformLayout();
            }
            #endregion
            private System.Windows.Forms.MenuStrip simple_menu;
            private System.Windows.Forms.ToolStripMenuItem m_about;
     
        }
    }

    Evento llama al Método para abrir la ventana simple_about:

    event clicked;OPEN(simple_about)
    END event

    Método se convierte a Método de Clase:

    partial class _simple_menu : UserControl
    {
    private void aboutToolStripMenuItem_Click
    (object sender, EventArgs e)
           {
                _simple_about simple_about = new _simple_about();
                simple_about.Show();
    }
    }

  • Convertir DataWindow (.SRD) a Clase DataSource

    Un archivo SRD es un archivo de código fuente de DataWindow. Contiene la información sobre objeto DataWindow:

    release 10.5;
    datawindow()TABLE(COLUMN=(TYPE=CHAR(200) 
     updatewhereclause=yes name=name dbname="simple_demo.name" )
     COLUMN=(TYPE=long updatewhereclause=yes name=age 
     dbname="simple_demo.age" )
     retrieve="PBSELECT( VERSION(400) TABLE(NAME=~"simple_demo~" ) 
    COLUMN(NAME=~"simple_demo.name~") 
    COLUMN(NAME=~"simple_demo.age~")) " )

    SRD file is converted to Class inherited from ISDataSource Class:

    public class _d_simple_demo : ISDataSource
        {
          public _d_simple_demo()
          {
            this.ConnectionString = ConfigurationManager.
    ConnectionStrings["ConnectionString"].ToString();
          }
          public void Retrieve()
          {
            this.SelectComand = "SELECT name, age FROM dbo.simple_demo";
            this.GetData();
          }
        }

    Clase ISDataSource realiza Lógica de Acceso a Datos. Ispirer MnMTK ofrece una Clase implementada que utiliza System.Data.SqlClient y System.Data. Clase ISDataSource no es convertible y puede ser desarrollada o modificada a petición de un cliente.


    Por qué Ispirer MnMTK

    Ispirer MnMTK está personalizado para migrar automáticamente su aplicación PowerBuilder. Con Ispirer MnMTK usted elimina la mayoría de los riesgos asociados y reduce considerablemente los esfuerzos internos. Todos estos beneficios están disponibles a costos muy razonables y competitivos, lo que hace Ispirer MnMTK aún más atractivo instrumento para este tipo de proyecto.

    Ispirer ofrece un proceso de cooperación integral para su proyecto de conversión de la aplicación. Para obtener información detallada, por favor visite la página Modelo de Cooperación durante la Migración de Aplicaciones.


    Estimación

    Estimación ayuda a estimar los esfuerzos y el costo de la migración. Para el proceso detallado de evaluación, por favor, consulte el siguiente enlace:

    Estimación de Migración de PowerBuilder

    Por favor, complete el cuestionario para iniciar las discusiones de su proyecto y obtener estimación aproximada:

    Presentación en Vivo

    Solución de Migración de Ispirer

    PowerBuilder a .NET (WinForms)

    Solicitar

    Solicitar un Presupuesto

    Solución de Migración de Ispirer

    PowerBuilder a .NET (WinForms)

    Servicio Herramienta

    Si Usted tiene algunas preguntas o desea obtener más información, siempre puede ponerse en contacto con nosotros.

  •  
    Testimonios
    Septiembre 11, 2017Cardtek, Turquía
    Microsoft SQL Server a Oracle

    "Cardtek es la empresa más valiosa en el sector financiero y bancario en Turquía. Entre otros numerosos proyectos, estamos operando un sistema de recolección de...

    ...

    Septiembre 11, 2017Caxton & CTP Publishers and Printers Ltd, Sudáfrica
    Sybase ASE a MySQL

    "Estimada Vera,

    Donde estamos es el siguiente:

    1. Hemos habilitado todo nuestro software para operar en una 'Agnostic Manner' en que ya no es hardware y tipo de base...

    ...

    Estudios de Caso
    Septiembre 14, 2017Oracle Forms a Java, Estados Unidos
    ¡La viabilidad de la migración automática de Oracle Forms a Java con Ispirer MnMTK se ha probado!


    A principios de 2017, Ispirer Systems fue contactado por una de las compañías global de...

    ...

    Junio 5, 2017Oracle a PostgreSQL, Rusia
    Servicios profesionales de migración de paquetes y procedimientos almacenados de Oracle a PostgreSQL.


    A finales de 2016, Ispirer Systems realizó servicios de migración para uno de los...

    ...