このWebサイトでは、クッキーを使用しております。
詳細は プライバシー保護およびクッキーに関する通知を参照ください。

インテリジェントでカスタマイズ可能なDB/アプリ自動変換ソリューション


PowerBuilderからWindows Presentation Foundation(WPF)アプリケーションへの移行

.NET

Ispirer Migration and Modernization Toolkitアプリケーション移行ツールは、PowerBuilderからWPF C#への自動化変換機能を提供します。


PowerBuilderからWPF C#への移行の概要

Ispirer MnMTKはPowerBuilderからWPF C#アプリケーションへの移行のとき、以下の変換を行います:

  • アプリケーションソースファイル(.SRA ファイル)
  • ウィンドウオブジェクト(.SRW ファイル)
  • メニュー (.SRM)
  • DataWindow (.SRD

このデモでIspirer MnMTKによるPowerBuilderからC# WPF MVVMへの移行を見ることができます:


PowerBuilderからWPF C#への変換にIspirer MnMTK 2017を使う理由

Ispirer Systemsの主な目標は、高度で一線級のデータベース移行を実行することです。移行ツールIspirer MnMTKは、様々な個別のビジネス要件に応えることができる費用対効果の高い製品です。

主な利点:

  • 優れたテクニカルサポート:移行のプロジェクトにおける絶大経験による、
    最も複雑なタスクの解決策を見つけることをお約束します。
  • 迅速なカスタマイズ:修正、カスタム変換、最適化(ほとんどの要件は 1~2 日で対応)
  • 検討段階での共同作業:お客様の検討期間中に変換のデモをお見せすることができます。
  • 柔軟な価格設定:広範囲オプションのご提供。
  • 最適化された変換:インテリジェントで保守しやすいコードを生成します。
    変換後のソースの利用に特別なIspirerのミドルウェア等は必要ありません。

アセスメント

アセスメントは移行の作業量と費用の見積もりに役立ちます。アセスメント作業の詳細につきましては以下のリンクをご覧ください:

以下の質問表にご記入いただければ、お客様のプロジェクトに関する質疑応答や概算のお見積りをお出しする事ができます:

無償試用版(アプリ移行)

Ispirer Toolkit 10PowerBuilderからWPF C#へ

ダウンロード

お見積

移行サービスPowerBuilderからWPF C#へ

サービス 移行ツール

変換の機能

Ispirer MnMTKはPowerBuilderからWPF C#アプリケーションへの自動変換を行う事ができます:

  • アプリケーションソースファイル(.SRAファイル)の変換

    SRAファイルはアプリケーションソースファイルです。アプリケーションとそのエントリポイントの基本的な情報を格納しています:

    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ファイルはXAMLオブジェクト要素の用法に変換されます:

    <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>

  • Windowオブジェクト(.SRWファイル)をXAMLへ変換

    SRWファイルはwindowソースファイルです。Formとコンポーネントアイテムおよびイベントとメソッドの説明を格納しています。SRWファイルはXAML Windowオブジェクトに変換されます。

    ひとつのコントロールエレメントを持つ単純なFormの例を見てみましょう:

    $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
     

    これはXAMLオブジェクト要素の用法に変換されたFormおよびコンポーネントの説明です:

    <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>

    イベントはC#のクラスメソッドに変換されます:

    public partial class _simple_demo_main : Window
    {
           public _simple_demo_main()
           {
             InitializeComponent();
           }
           private void b_filter_Click(object sender,RoutedEventArgs e)
           {
           }
    }

    Ispirer MnMTKはPowerBuilderアプリケーションと同様にコンポーネントのサイズと位置属性を保存します:

    Convert PB Convert to WPF
    PowerBuilderアプリケーションWindow WPF アプリケーションWindow

  • メニュー(.SRM)を標準のユーザコントロールに変換します

    SRMファイルはメニューのソースファイルです。メニュー要素とイベントの説明が記述されています。これはひとつの要素をもつ単純なメニューの例です:

    $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

    SRMファイルは UserControlオブジェクトに変換されます。メニュー要素はMenuおよびMenuItemコントロールに変換され、XAMLオブジェクト要素の用法に追加されます:

    <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>

    simple_aboutウィンドウをオープンするイベントコールメソッド:

    event clicked;OPEN(simple_about)
    END event

    メソッドはクラスメソッドに変換されます:

    private void m_about_Click(object sender,EventArgs e)
    {
          _simple_about simple_about = new _simple_about();
          simple_about.Show();
    }

  • DataWindow (.SRD) をC#クラスに変換

    SRDファイルは DataWindow ソースファイルです。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ファイルは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();
           }
    }

ISDataSourceクラスはデータアクセスロジックを実装します。Ispirer MnMTKはSystem.Data.SqlClientおよびSystem.Dataを用いた実装クラスをご提供します。ISDataSourceクラス自身は変換できませんが、お客様のリクエストに応じて開発や修正を行う事ができます。


詳細はお問い合わせください。

 
Testimonials
Schulz, Brazil

InterBase to Microsoft SQL Server
Database Migration

In order to change a factory supervision and information system, we were looking for a tool to migrate the existing "Interbase 6.0" database to "Microsoft SQL Server". We tested a few softwares, but they didn't suit us.

...

System Protocol Information, Malaysia

Informix to Microsoft SQL Server
Database Migration

Dear Sir / Madam,

We have just completed our biggest migration job to date from Informix to MS SQL Server. The exercise was efficiently done within schedule given to us. It was a success and thanks to a great part to your tool.

...

Case Studies
Sybase ASEからMicrosoft SQL Serverへの移行、チリ

チリに拠点を置くソフトウェア開発会社です。

...

IBM DB2 iSeriesからMicrosoft SQL Serverへの移行、アメリカ

ソフトウェアとアプリケーションの開発、リエンジニアリングとメンテナンスを専門とする、米国に本拠を置くフルサービスのIT企業です。 同社はウェブサイトデザイン、ウェブホスティング、SEOなどのウェブサービスを提供しています。 また、CRMシステムの導入、アップグレードおよび管理も実施しています。

...