La herramienta de migración de aplicaciones Ispirer MnMTK proporciona la migración automatizada de PowerBuilder a WPF C#.
En esta presentación demo Usted puede ver cómo Ispirer MnMTK convierte PowerBuilder a C# WPF MVVM:
Características de la Conversión:
Software de migración de aplicaciones Ispirer MnMTK es capaz de convertir aplicaciones PowerBuilder a WPF C#. Ispirer MnMTK permite:
- Convertir archivos de código fuente de aplicaciones (archivos .SRA)
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
Archivo SRA se converte a XAML Object Element Usage:
<Application x:Class="simple_demo._simple_demo"
xmlns="http://schemas.microsoft.com/winfx/
2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
StartupUri="simple_demo_main.xaml">
<Application.Resources>
</Application.Resources>
</Application>
- Convertir objetos Window (archivos .SRW ) a XAML
Un 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 XAML Window Object.
Eche un vistazo a un ejemplo de Forma simple con un elemento de Control:
$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
A continuación se muestra la descripción de Forma y Componente convertidos en XAML Window Object Element Usage:
<Window x:Class="simple_demo._simple_demo_main"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:LOCAL="clr-namespace:simple_demo"
Title="simple_demo"
mc:Ignorable="d"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/
markup-compatibility/2006"
SizeToContent="WidthAndHeight">
<Grid Height="300" Width="200">
<Canvas>
<Button Content="Show" Name="b_filter"
Height="30" Width="50" Canvas.LEFT="100"
Canvas.Top="100" Click="b_filter_Click"/>
</Canvas>
</Grid>
</Window>
Evento se convierte a Método de C# Class:
public partial class _simple_demo_main : Window
{
public _simple_demo_main()
{
InitializeComponent();
}
private void b_filter_Click(object sender,RoutedEventArgs e)
{
}
}
Ispirer MnMTK guarda el tamaño y la propiedad de ubicación de componentes como en una aplicación PowerBuilder convertible:
 |
 |
Ventana de Aplicación PowerBuilder |
Ventana de Aplicación WPF |
- 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ú. Aquí está un ejemplo de un Menú con un solo elemento para su consideración:
$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
Archivo SRM se convierte a Objeto UserControl. Elementos de Menú se convierten a Menu y MenuItem Controls. Se añaden a XAML Object Element Usage:
<UserControl x:Class="simple_demo._simple_menu"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/
markup-compatibility/2006"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
mc:Ignorable="d">
<Grid>
<Menu>
<MenuItem Name="m_about" Header="About" Click="m_about_Click">
</MenuItem>
</Menu>
</Grid>
</UserControl>
Evento llama al Método para abrir la ventana simple_about:
event clicked;OPEN(simple_about)
END event
Método se convierte a Class Method:
private void m_about_Click(object sender,EventArgs e)
{
_simple_about simple_about = new _simple_about();
simple_about.Show();
}
- Convertir DataWindow (.SRD) a Clase C#
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~")) " )
Un archivo SRD se converte a una clase heredada de clase ISDataSource:
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:
Solución de Migración de Ispirer
PowerBuilder a WPF C#.NET Solicitar
Si Usted tiene algunas preguntas o desea obtener más información, siempre puede ponerse en contacto con nosotros.
|