Progress 4GLからOracle PL/SQLへの移行
アプリケーション移行ツールIspirer MnMTKはProgress 4GLからOracle PL/SQLへの変換を サポートします。
Progress 4GLからOracle PL/SQLへの移行の概要
Ispirer MnMTK はとても柔軟な変換ツールであり、クライアントのビジネス ニーズに応じ、新たな変換方向の追加開発も短期間で行うことができます。私たちの技術者テはアプリケーション移行における絶大経験があり、Progress 4GLからOracle PL/SQLへの移行における最も複雑なタスクの解決策を見つけることをお約束します。
Progress 4GLからOracle PL/SQLへの移行にIspirer MnMTK 2017を使う理由
Ispirer Systemsの主な目標は、高度で一線級のアプリケーション移行を実行することです。移行ツールIspirer MnMTKは、様々な個別のビジネス要件に応えることができる費用対効果の高い製品です。
主な利点:
- 優れたテクニカルサポート:移行のプロジェクトにおける絶大経験による、
最も複雑なタスクの解決策を見つけることをお約束します。
- 顧客志向のアプローチと迅速なカスタマイズ:修正、カスタム変換、最適化(ほとんどの要件は 1~2 日で対応)。
- 検討段階での共同作業:お客様の検討期間中に変換のデモをお見せすることができます。
- 柔軟な価格設定:幅広いオプションを提供することができます。
- 最適化された変換:インテリジェントで保守しやすいコードを生成します。
変換後のソースの利用に特別なIspirerのミドルウェア等は必要ありません。
Ispirer MnMTKのより詳しい情報、主な特徴はこちらこちらへ。
Ispirer移行ソリューションProgress 4GLからOracle PL/SQLへ リクエスト
変換機能
ProgressデータベースをOracleデータベースへ変換
- Progressのテーブル/ビュー/シーケンスをOracleのテーブル/ビュー/
シーケンスへ変換
例えば、
Progress 4GL:
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
Oracle PL/SQL:
CREATE TABLE TB_DATATYPES ( c1 CHAR(16), c4 NUMBER(10,0), c5 NUMBER(1,0) );
- Progress 4GLのトリガをOracleのトリガ /プロシージャへ変換
Progress 4GL:
TRIGGER PROCEDURE FOR DELETE OF gsinvhd. FIND distribution WHERE distribution.company = gsinvhd.company NO-LOCK NO-ERROR.
Oracle PL/SQL:
CREATE OR REPLACE TRIGGER SWT_Delete_gsinvhd AFTER DELETE ON gsinvhd DECLARE v_distribution_company VARCHAR2(255); BEGIN SELECT company INTO v_distribution_company FROM distribution WHERE (distribution.company = gsinvhd.company) AND ROWNUM <=1; EXCEPTION WHEN NO_DATA_FOUND THEN NULL; END;
Progress 4GLのコードをOracle PL/SQLのコードへ変換
- Progress 4GLのプロシージャファイル (*.p) をOracleのプロシージャへ
変換
Progress 4GL:
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 5: 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.
Oracle PL/SQL:
CREATE OR REPLACE PROCEDURE "generate-data" AS v_company_company VARCHAR2(255); v_company_numperiods VARCHAR2(255); v_company_gcuserid NUMBER(10,0); v_budget_company VARCHAR2(255); v_i NUMBER(10,0); v_gccompany varchar2(4000); v_if_exists NUMBER(10,0); v_budgetanalysis_userid NUMBER(10,0); v_budgetanalysis_company VARCHAR2(255); v_budgetanalysis_pccenter VARCHAR2(255); v_budgetanalysis_acctperiod VARCHAR2(255); BEGIN BEGIN SELECT company, "num-periods", "gc-user-id" INTO v_company_company,v_company_numperiods,v_company_gcuserid FROM company WHERE (company.company = v_gccompany) AND ROWNUM <=1; EXCEPTION WHEN NO_DATA_FOUND THEN NULL; END; BEGIN SELECT company INTO v_budget_company FROM budget WHERE (budget.company = v_gccompany) AND ROWNUM <=1; EXCEPTION WHEN NO_DATA_FOUND THEN NULL; END; LOOP SELECT COUNT(*) INTO v_if_exists FROM budget; exit WHEN v_if_exists = 0; BEGIN v_i := 0; while v_i <= 5 LOOP BEGIN SELECT "user-id", company, "pc-center", "acct-period" INTO v_budgetanalysis_userid,v_budgetanalysis_company, v_budgetanalysis_pccenter,v_budgetanalysis_acctperiod FROM "budget-analysis" WHERE ("budget-analysis"."user-id" = company."gc-user-id" AND "budget-analysis".company = v_gccompany AND "budget-analysis"."pc-center" = 'ALL' AND "budget-analysis"."acct-period" = v_i) AND ROWNUM <=1; EXCEPTION WHEN NO_DATA_FOUND THEN NULL; END; v_i := v_i+1; END LOOP; END; END LOOP; END;
- Progress 4GLのインクルードファイル (*.i)をOracleのファンクションへ変換
- Progress ABLレポートをOracleレポートへ変換
アセスメント
アセスメント作業は簡単ですぐに移行に要する作業とコストを見積もることができます。お見積に必要な情報は、下記のフォームを参照いただくと揃えることができます:
詳細はお問い合わせください。
|