Migrazione da Progress 4GL ad Oracle PL/SQL
Il nostro tool Ispirer MnMTK converte applicazioni Progress 4GL ad Oracle PL/SQL.
Perchè Ispirer MnMTK
Ispirer MnMTK può aiutarvi a convertire la vostra applicazione Progress 4GL automaticamente. Scegliendo Ispirer MnMTK potete anche eliminare i rischi di conversione e ridurre notevolmente la quantità di sforzi interni necessari per la migrazione.
I nostri vantaggi principali:
- ll team esperto e qualificato: i tecnici d’Ispirer hanno grande esperienza in realizzazione di progetti di migrazione di varia complessità.
- Approccio orientato al cliente e Personalizzazione rapida: personalizziamo il nostro strumento di migrazione in modo che permetta di soddisfare pienamente le esigenze di business dei nostri clienti; aggiustamenti gratuiti durante 1-2 giorni lavorativi;
- Collaborazione pre-vendita: dimostriamo la conversione completa durante la fase di valutazione prima che prenderete la decisione finale.
- Buon prezzo: offriamo la politica di prezzatura flessibile;
-
Conversione ottimizzata: il codice facilmente gestito senza il middleware di Ispirer usato dopo la conversione.
Valutazione
Valutazione ci aiuta ad estimare gli sforzi e i costi di migrazione. Per iniziare i discorsi di collaborazione e fare la valutazione approssimativa, si prega di inviarci il questionario compilato.
Questionario per Migrazione da Progress 4GL ad Oracle.
Ispirer Soluzione di Migrazione
Progress 4GL ad Oracle PL/SQL Richiedere
Ispirer Soluzione di Migrazione
Progress 4GL ad Oracle PL/SQL Servizi
Toolkit
Caratteristiche di conversione
Migrazione dei database Progress ai database Oracle

- Converte tabelle /viste /sequenze Progress a tabelle/viste/sequenze Oracle
Per esempio,
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)
);
- Converte trigger Progress 4GL a trigger/procedure 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;
Converte il codice Progress 4GL al codice Oracle PL/SQL

- Converte Procedure File (*.p) Progress 4GL a procedure 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;
- Converte Include File (*.i) Progress 4GL a funzioni Oracle
- Converte rapporti ABL Progress a rapporti Oracle
Per ulteriori informazioni si prega di contattarci.
|