Ispirer MnMTK ist das Tool für die Anwendungskonvertierung. Dieses Tool kann die Konvertierung von PowerBuilder nach .NET WinForms 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-Präsentation demonstriert, wie Ispirer MnMTK 2015 PowerBuilder nach .NET (WinForms) konvertieren kann:
Ispirer MnMTK verwirklicht eine automatisierte Konvertierung von PowerBuilder nach C#.NET (WinForms).
- Konvertierung von Quelle -Dateien einer Anwendung (.SRA Dateien)
SRA Datei ist eine Quelle-Datei einer Anwendung, die Hauptinformationen über eine Anwendung einschließt und eine Eingangstelle dazu hat:
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 Datei wird nach Static Class, die als eine Eingangsstelle zu einer Anwendung verwendet wird, konvertiert:
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());
}
}
- Konvertierung von Window Objekte (.SRW Dateien) nach Windows Forms
SRW Datei ist eine Window Quelle-Datei. Sie hat die Beschreibung von Formen und Komponenten, und auch Ereignisse und Methoden. SRW Datei wird nach Windows Forms konvertiert.
Sehen Sie ein Beispiel für simple-Form mit einem Control-Element an:
$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
Beschreibung von Formen und Komponenten werden nach Designer Form konvertiert:
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;
}
}
Event wird nach Klasse Methode konvertiert:
public partial class _simple_demo_main : Form
{
public _simple_demo_main()
{
InitializeComponent();
}
private void b_button_Click
(object sender, EventArgs e)
{
}
}
Ispirer MnMTK behält die Eigenschaften von Größe und Lagerung der Komponenten wie in einer konvertierbaren PowerBuilder Anwendung:
|
|
Fenster von PowerBuilder Anwnendung |
Fenster von WinForms Anwendung |
- Menü (.SRM) nach Standard- UserControl konvertieren
SRM Datei ist eine Quelle-Datei vom Menü. Sie schließt die Beschreibung der Elementen und Ereignissen vom Menü ein. SRW Datei wird nach User Control konvertiert.
Hier gibt es ein Beispiel von simple-Menü mit einem Element:
$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
Elemente von Menü werden nach MenuStrip und ToolStripMenuItem Kontrollen konvertiert. Nach der Konvertierung werden sie zu UserControl Designer dazugegeben:
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;
}
}
Event ruft Methode auf, um ein simple_about Fenster zu öffnen:
event clicked;OPEN(simple_about)
END event
Methode wird nach Klasse-Methode konvertiert:
partial class _simple_menu : UserControl
{
private void aboutToolStripMenuItem_Click
(object sender, EventArgs e)
{
_simple_about simple_about = new _simple_about();
simple_about.Show();
}
}
- Konvertierung von DataWindow (.SRD) nach DataSource Klasse
SRD Datei ist eine Quelle-Datei von DataWindow. Sie enthält die Information über DataWindow Objekt:
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 Datei wird nach Klasse, die von der ISDataSource Klasse stammt, konvertiert:
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();
}
}
ISDataSource Klasse benutzt Logik vom Datenzugriff. Ispirer MnMTK bietet eine implementierte Klasse, die System.Data.SqlClient und System.Data verwendet, an. ISDataSource Klasse ist nicht konvertierbar und verbreitet oder nach dem Wunsch des Kunden modifiziert werden kann.
Für weitere Informationen, kontaktieren Sie bitte uns.