Pobieranie prezentacji. Proszę czekać

Pobieranie prezentacji. Proszę czekać

Magic eDeveloper Piotr Zawadzki konsultant Magic Komtech Sp. z o.o.

Podobne prezentacje


Prezentacja na temat: "Magic eDeveloper Piotr Zawadzki konsultant Magic Komtech Sp. z o.o."— Zapis prezentacji:

1 Magic eDeveloper Piotr Zawadzki konsultant Magic Komtech Sp. z o.o.

2 Plan prezentacji Wprowadzenie do Magic eDeveloper Obszary zastosowań Obsługiwane platformy i bazy danych Proces tworzenia aplikacji Komponenty Serwer aplikacji Podsumowanie Live Demo Wprowadzenie do Magic eDeveloper Obszary zastosowań Obsługiwane platformy i bazy danych Proces tworzenia aplikacji Komponenty Serwer aplikacji Podsumowanie Live Demo

3 Czym jest platforma Magic eBusiness? Rewolucyjna podstawa do projektowania, tworzenia i rozwoju kompleksowych rozwiązań Klient/Serwer, eBusiness oraz CRM szybciej niż jakakolwiek inna technologia dostępna obecnie na rynku

4 Obszary zastosowań Pomost integracyjny Przetwarzanie danych Raporty eBusiness mBusiness

5 Platformy: Windows 9x/ME/NT/2000/XP UNIX Linux iSeries (AS/400) Bazy danych: Oracle MS SQL Informix Pervasive.SQL ODBC DB2 Obsługiwane platformy

6 Tworzenie aplikacji Tradycyjny model tworzenia aplikacji Analiza Przyrostowy w Magic eDeveloper Projektowanie Prototypowanie Testowanie i Modyfikacja Uruchomienie Projekt Kodowanie Kompilacja Testowanie Uruchomienie Analiza Biznesowa

7 Tworzenie aplikacji polega na wypełnianiu wzajemnie połączonych tabel wartościami, które zostały zdefiniowane na wcześniejszym etapie tworzenia systemu Modele Tabele Programy Proces tworzenia aplikacji

8 Cykl dzia ł ania zadania Prefiks Sufiks 1 Pobierz pierwszy rekord 2 Sprawdź EOF 3 Otwórz Transakcję 4 1 Pobierz pierwszy rekord 2 Sprawdź EOF 3 Otwórz Transakcję 4 Główny 1 Select 2 Select 3 Select 4 Select 1 Select 2 Select 3 Select 4 Select Pętla Rekordu Pętla Zadania Otwórz pliki 3 Przygotuj Data View 4 Sortuj dane lub wybierz indeks 1 2 Otwórz pliki 3 Przygotuj Data View 4 Sortuj dane lub wybierz indeks Zamknij pliki Zamknij pliki Porównaj, zalokuj, uaktualnij rekord 2 Zamknij Transakcję 3 Sprawdź EOF 1 Porównaj, zalokuj, uaktualnij rekord 2 Zamknij Transakcję 3 Sprawdź EOF Programista musi jedynie określić operacje logiczne, które motor Magica ma wykonać na DANYCH

9 Etap3GL4GLeDeveloper 1Projektowanie Prototyp 100%50%25-35% 2Tworzenie100%50%15-25% 3Integracja Uruchomienie 100%50%20-35% 4Utrzymanie Rozwój 100% % 15-25% Źródło: Magic Marketing Cykl tworzenia systemu

10 Interaktywne aplikacje WEB – eDeveloper Browser Client Inteligentny klient – zdarzenia – odświeżenie Data View – sprawdzenie warunków – wykonywanie operacji i funkcji Magica – obsługa transakcji – lokalnie przechowywane dane – jeden aplet Javy Przeglądarka Internetowa + Magic Aplet Javy =

11 Porówanie kodów Jak można wykonać poniższe? –Eksport danych z baz SQL Visual Basic czy eDeveloper? –eCommerce Order-entry dla Duty-Free Shop Java czy eDeveloper? –Strona domowa dla Virtual Plant Shop Lansa czy eDeveloper?

12 Dim record As Recordset Dim nI As Long Dim nJ As Long Dim nFile As Integer Dim sTmp As String On Error GoTo Err_Handler Set record = db.OpenRecordset (sSQL, DAO.dbOpenDynaset DAO.dbReadOnly) ' *** Open output file nFile = FreeFile Open sDest For Output As #nFile ' *** Export fields name For nI = 0 To record.Fields.Count - 1 sTmp = "" & (record.Fields(nI).Name) Write #nFile, sTmp; ' *** Export fields name For nI = 0 To record.Fields.Count - 1 sTmp = "" & (record.Fields(nI).Name) Write #nFile, sTmp; Next Write #nFile, If record.RecordCount > 0 Then record.MoveLast record.MoveFirst For nI = 1 To record.RecordCount For nJ = 0 To record.Fields.Count - 1 sTmp = "" & (record.Fields(nJ)) Write #nFile, sTmp; Next Write #nFile, record.MoveNext Next End If Close #nFile CSVExport = True Exit Function Err_Handler: MsgBox ("Error: " & Err.Description) CSVExport = False End Function Visual Basic Eksport danych z bazy SQL Definicja Data ViewEksport do pliku ASCII Magic eDeveloper

13 eCommerce Order-Entry Nagłówek zamówienia Tabela produktów

14 eCommerce Order-Entry (1) Definicja Nagłówka zamówienia Nagłówek Produkty

15 eCommerce Order-Entry (2) 1.Wyświetlenie produktów - umożliwia również ich modyfikację 2. Przy wyjściu z danego produktu – Uaktualnienie całego zamówienia 3. Podwójne kliknięcie na produkcie - Call program do wyboru produktu Nagłówek Produkty

16 Kod Javy - eCommerce Order-Entry Nagłówek Produkty

17 Nagłówek Produkty i więcej kodu Javy...

18 Strona główna dla Virtual Plant-Shop

19 eDeveloper – strona główna Plant-Shop Każdy odnośnik na stronie wywołuje osobny program

20 Lansa 4GL – strona główna Plant-Shop ENDIF ELSE /* Continued Job */ ********** Get User Info FETCH FIELDS((#FRU_JOBUS) (#FRU_JOBPW)) FROM_FILE(FRUJOBID) WITH_KEY(#FRU_JOBID) ENDIF ********** Set Title (If signed-in, persoanlize the Title) IF COND('#FRU_JOBUS *EQ *BLANK') CHANGE FIELD(#FRU_CMNT1) TO('''Welcome to Plants 4 U''') ELSE FETCH FIELDS((#FRU_USRID)) FROM_FILE(FRUUSER) WITH_KEY(#FRU_JOBUS) USE BUILTIN(TCONCAT) WITH_ARGS(#FRU_USRID ''', enjoy your stay at Plants 4 U''') TO_GET(#FRU_CMNT1) ENDIF ********** Create today's look of the page SELECT FIELDS((*ALL)) FROM_FILE(P4USTYLE) LEAVE IF('#DAY *LT #P4U_NEWDY') ENDSELECT ENDROUTINE FUNCTION OPTIONS(*DIRECT *WEBEVENT) ********** EXECUTE SUBROUTINE(USER_INFO) EXECUTE SUBROUTINE(GET_ORDERS) EXECUTE SUBROUTINE(GET_CART) ********** Retrieve Monthly tip and special FETCH FIELDS((*ALL)) FROM_FILE(P4UMONTH) WITH_KEY(#MONTH) FETCH FIELDS((#PACKDES)) FROM_FILE(PACKTAB) WITH_KEY('ENG' #PACKTYP) ********** DISPLAY FIELDS((#FRU_IMGUP) (#COMMONNM) (#PLANTTIP) (#FRU_CMNT1) (#DAY *HIDDEN) (#FRU_JOBID *HIDDEN) (#P4U_NEXTF *HIDDEN)) EXIT_KEY(*NO) MENU_KEY(*NO) PROMPT_KEY(*NO) SUBROUTINE NAME(USER_INFO) FETCH FIELDS((*ALL)) FROM_FILE(P4USYS) IF COND('#FRU_JOBID *EQ *BLANK') /* New Job */ ********** Update JobId file CHANGE FIELD(#FRU_JOBID) TO(*LW3SESSIONID) CHANGE FIELD(#FRU_JOBUS #FRU_JOBPW) TO(*BLANK) INSERT FIELDS((*ALL)) TO_FILE(FRUJOBID) ********** Update LANSA Web Site counter CHANGE FIELD(#LWS_HITDT) TO(*YYMMDD) CHANGE FIELD(#LWS_HITKW) TO('Plants 4 U Newspaper Main Page') FETCH FIELDS((#LWS_HITNO)) FROM_FILE(LWSHITS) WITH_KEY(#LWS_HITKW #LWS_HITDT) IF_STATUS IS(*OKAY) CHANGE FIELD(#LWS_HITNO) TO('#LWS_HITNO + 1') UPDATE FIELDS((#LWS_HITNO)) IN_FILE(LWSHITS) ELSE CHANGE FIELD(#LWS_HITNO) TO(1) INSERT FIELDS((*ALL)) TO_FILE(LWSHITS) ********** Subroutine....: GET_ORDERS ********** Description....: Get User's Order Totals ********** ============================= SUBROUTINE NAME(GET_ORDERS) ********** If User not signed-in, display sign-in component IF COND('#FRU_JOBUS *EQ *BLANK') CHANGE FIELD(#FRU_COMP1) TO('FRU_NEWS05') ELSE /* User is Signed in */ CHANGE FIELD(#FRU_ORDQT) TO(0) ********** Retrieve Order totals SELECT FIELDS((#ORDTOT)) FROM_FILE(PORDSTS) WITH_KEY(#FRU_JOBUS #FRU_JOBPW) CHANGE FIELD(#FRU_ORDQT) TO('#FRU_ORDQT + 1') ENDSELECT CHANGE FIELD(#FRU_COMP1) TO('FRU_NEWS04') ENDIFENDROUTINE ********** Subroutine....: GET_CART ********** Description....: Get Shopping Cart Totals ********** ==================================================== === SUBROUTINE NAME(GET_CART) ********** Total up the number and amount of shopping cart CHANGE FIELD(#FRU_SHPQT #FRU_SHPTL) TO(0) SELECT FIELDS((#PRICE) (#QTY)) FROM_FILE(PORDER) WITH_KEY(#FRU_JOBID) CHANGE FIELD(#FRU_SHPQT) TO('#FRU_SHPQT + #QTY') CHANGE FIELD(#FRU_SHPTL) TO('#FRU_SHPTL + (#PRICE * #QTY)') ENDSELECT ENDROUTINE ********** End of RDML commands **********

21 Plants 4 U

< B>Shopping Cart Status Currently, you have 0 items totaling $0.00. Welcome to Plants 4 U < B>Shopping Cart Status Currently, you have 0 items totaling $0.00. Welcome to Plants 4 U

Podobne prezentacje


Reklamy Google