wi400: the first php i-framework” - web interface as400

58
WI400: the first PHP i-Framework” WI400 Team info@siri-informatica.it

Upload: others

Post on 19-Mar-2022

5 views

Category:

Documents


0 download

TRANSCRIPT

WI400: the first PHP “i-Framework”

WI400 [email protected]

| 07/05/10| 2

Agenda

Modernizzare e IBMi

I Principi delle interfacce

L'evoluzione dei modelli culturali

| 07/05/10| 3

IBMi e “modernize”

Perchè allora quando si parla di IBMi si parla anche sempre di “modernizzare ?”

Il sistema IBMi

solidità

affidabilità

protezione degli investimenti

larghissima diffusione diapplicazioni.........

.....l'interfaccia...

| 07/05/10| 4

“La caffettiera del masochista” di Donald A. Norman – Giunti Editore 1997

Principi delle interfacce

La psicopatologia degli “oggetti quotidiani”

professore emerito presso il celeberrimo MIT(Massachusetts Institute of Technology)

vicepresidente del gruppo ricerca sulletecnologie avanzate per Apple

ha scritto una tagliente critica sulla scarsa ergonomia delle interfacce

..se hai problemi a capire quando spingere o tirare una porta..non è colpa tua...

| 07/05/10| 5

Principi delle interfacce – cattivi esempi

Il design dei Fornelli

la relazione tra manopole e fornelli è in buonaparte arbitraria

I fornelli

| 07/05/10| 6

Principi delle interfacce – cattivi esempi

Il volume della sveglia

la violazione di un modello culturale consolidato

Perchè il volume si alza “abbassando” ?

| 07/05/10| 7

IBMi e la “gui”

Risultato finale....

il 5250 su un nuovo dispositivo..

Questo è modernizzare ?

Le evoluzioni della “Graphical User Interface”

lo screen scraping

il refacing

il capture “data streaming”

data xml flow transfer

| 07/05/10| 8

L'evoluzione dei modelli culturali

rss – feed – news - wsdl

smartphonebiglietterie

Chioschi – TouchScreen

notebook

| 07/05/10| 9

Web server

RPG/COBOL

Connettere il DB2 ad altri DB

Integrazione con altre Piattaforme

Implementare I servizi

Proteggere gli investimenti

Database

O.S

Sono richieste nuove esigenze all'IT

OpenSource

Ottenere benefici da applicazioni FOSS

Lo strumento giusto

- la storia php#

| 07/05/10| 11

20M

15M

10M

5M

PHP 4 Released•1M Internet

domains•Zend Engine•Zend Founded

Yahoo! Standardizeson PHP

PHP 5.0(XML,SOAP,OOP)

(

IDE Studio

IBM, Oracle Endorse PHP

PHPInternet Domains

25M

Zend Framework & Eclipse project (PDT) announced

ZF and PDT

released, PHP 4 EOLannounced

PHP Proliferation

Zeev Suraski & Andi Gutmanslead the development of PHP 3Rasmus

LerdorfIntroducesphp/fi

Un Pò di Storia

| 7 mag 2010

| 12

PHP – stato dell'arte

| 07/05/10| 13

Folta Community Larga diffusione

Bassa curva di apprendimento

Apprendimento rapido

Bassa curva di apprendimento

Robusto, Multi-Piattaforma, Alte-Performance, Sicurezza Affidabile

Cos'è il PHP - dettaglio: vantaggi

PHP in IBMi

- quali sono le novità ?#

| 07/05/10| 15

Ide Studio

PHP & IBMi

April 3 2006: IBM annuncia un accordo per più anni con Zend technologies per avere il PHP nativo sul sistema

ZendCore/ZendServer for I5/OS

PHP nativo

Disponibile da V5R3, V5R4 and V6R1

Free of charge

ZendStudio for Eclipse i5 Edition

Sistema di sviluppo client basato su Eclipse

Disponibile su Windows, Linux, mac OS x

Free of charge

ZendCore

| 07/05/10| 16

ZendCore e ZendStudio for I5/OS sono inclusi nei nuovi IBMi

Nella nuove macchine V5R4 and V6R1

1 anno di silver support

Disponibile da February 6, 2009

PHP & IBMi: novità

new !

| 07/05/10| 17

ZendServer for I5/OS: evoluzione dello ZendCoreNuova versione del PHP 5.3

1 anno di silver support

Disponibile in GA da Aprile, 2010

PHP & IBMi: novità

new !

| 07/05/10| 18

• release V5R3/V5R4/V6R1• 5722SS1 - opt 33 Portable app. solutions Environ.

• 5722SS1 - opt 30 Qshell

• 5722SS1 - opt 13 System Opennes Includes

• 5722SS1 - opt 34 Digital Certificate Manager

• 5722AC3 - opt *BASE Crypt access provider (V5R3)

• 5733SC1 - opt *BASE Portable Utilities (eng only)

• 5733SC1 - opt 1 OpenSSH,Open SSL,Zlib (eng only)

PHP & IBMi: prerequisiti

| 07/05/10| 19

PHP & IBMi: installation

• RSTLICPGM LICPGM(1ZCORE5) – per lo ZendCore

• RSTLICPGM LICPGM(2ZSVRPI)- per lo ZendServer

| 07/05/10| 20

Power Systemsi5/OS

PASE5722SS1 Opz.33

HTTP Serverlocalhost:8000

PHPModule

ApacheHTTP Server

:porta 89

Request

Reverse Proxy

Response

Access from Internet

IFS

<?php......

<?php......

Different system Linux/Windows

PHP & IBMi: configurazione ZendCore

Database

RPG/COBOL

OS

| 07/05/10| 21

Power Systemsi5/OS

PASE5722SS1 Opz.33

ApacheHTTP Server:porta 10088Response

Access from Internet

IFS

<?php......

PHP & IBMi: configurazione ZendServer

Database

RPG/COBOL

OS

PHPfast-cgi

PHPfast-cgi

PHPfast-cgi

Request

<?php......

| 07/05/10| 22

Internet/ intranet

Win/Linux Server

IBM i

web-service

HTTP SERVER(WEB SEVER)WSDL PUBLIC

DMZ

INTERNALLAN

RPG/COBOL

PHP & IBMi: configurazioni alternative

ZendServer

ZendServer

| 07/05/10| 23

PHP & IBMi: estensioni

| 07/05/10| 24

File manager•file system•project

Inspector•File•Project•PHP•Css

Design•table•button•field

Editor•Syntax highligthing•syntax cheking•code completition

Debug messages•Error•Warning

Palette Toolbox•table•Html•Form•Link•......

PHP & IBMi: l'IDE per IBMi

| 07/05/10| 25

More “user friendly” than 5250....

DataBase Navigator• pf• lf

Sql Browser

PHP & IBMi: l'IDE per IBMi

Integrazione in IBMi

- in che modo ?#

| 07/05/10| 27

Integrazione: toolkit

Toolkit permette di interagire nativamentecon gli oggetti di i5/OS

DB2 for IBM i

Programs

Data areas

Data queues

Message queues

System values

commands

Spool files

joblog

Run sql statements

Tutte le API's vengono identificate da i5_

| 07/05/10| 28

da uno script PHPè possibile eseguireun i5/OS command

Integrazione: toolkit

| 07/05/10| 29

risultato di un i5/OS command

Integrazione: toolkit

| 07/05/10| 30

visualizza gli spoolin una pagina web

Integrazione: toolkit

| 07/05/10| 31

Integrazione: toolkit

| 07/05/10| 32

Integrazione: toolkit & framework

versione “community”delle libreria pdf

| 07/05/10| 33

–i5/OS PASE is the AIX® runtime in i5/OS

–it is not an emulated environment

Integrazione: i5/OS e Pase

ZendCore for i5/OS “gira” nell'ambiente PASE

| 07/05/10| 34

......altro esempio: “stampa il report di listino con barcode in pdf”

Integrazione: i5/OS and Pase

| 07/05/10| 35

la richiesta del cliente:“print my invoices to pdf format in i5”

1) Hold spool2) Call php script from CL program

lo script:merge tra una “template pdf” vuotae il contenuto dello spool

Integrazione: i5/OS e Pase

| 07/05/10| 36

......una settimana dopo....“send my invoices via mail”

Integrazione: i5/OS e Pase

| 07/05/10| 37

System i customers get the benefit of being able to use thousands of new open source applications while continuing to have one easy to use data store with DB2.

PHPapplications

MySQL

DB2 for i

RPGapplications

•DB2 Storage Engine now available with MySQL –enables MySQL-based applications to store data in DB2 for IBM i–available with MySQL Community Edition 5.1.33

•New IBM Redbook “Using IBM DB2 for i as a Storage Engine of MySQL” SG24-7705

• MySQL database supported on IBM i Integrated File System–enables customers to deploy PHP MySQL-based applications on IBM i

http://dev.mysql.com/downloads/mysql/5.1.html#i5os-savf

Integrazione: mySQL & DB2

| 07/05/10| 38

ancl200f

Integrazione: mySQL & DB2

MySQL ServerConnection Pool

Authentication – Thread – Connection Limits – Check Memory- cache

SQL InterfaceDDL, Store Procedure,

Views,Triggers ,etc

Parserquery translation,Object Privilege

Cache & buffersGlobal and

engine Specificcaches

PASE IBMi

Optimizeraccess Path,

Statistics

“accounts”

RPG

SQL

Query

Pluggable Storage Enginesmemory, Index & Storage Management

MyIsam InnoDB Memory CSV

trigger

trigger

| 07/05/10| 39

Integrazione: mySQL & DB2 - sugarCRM

| 07/05/10| 40

Integrazione: mySQL & DB2 - sugarCRM

Cosa posso fare con PHP

- quali tematiche affrontare- l'open-source

#

| 07/05/10| 42

Cosa posso fare con PHP

WikiE-Commerce

CRMBug Tracking

Content Management

DrupalsilverStripe

GDO

| 07/05/10| 43

attraverso l'engine db2 access via “mysql”, sono “a portata di mano” per effettuare il “porting” di tipiche applicazioni opensource

• SUGARCRM for i5 - CRMhttp://www.sugarcrm.com

• MANTIS400 - HELP DESKhttp://www.mantisbt.org

IBMi e l'open-source

| 07/05/10| 44

IBMi e l'open-source

| 07/05/10| 45

IBMi e l'open-source

| 07/05/10| 46

Inizio approccio php nel 2003

Realizza il primo applicativo per gestire commesse e costi

PHP e IBMi

Nel 2006 SIRI inizia la sua “avventura” con il PHP in ambito AS400

Nel 2007 inizia una consistente fase di “investimento” nella tecnolgia php, ponendo le basi per la sua “architettura WI400”

Nel 2008 SIRI diventa partner ufficiale ZEND con il programma “Powered by Zend”

Oggi

Sta continuamente potenziando il “laboratorio” PHP con nuove risorse da un lato, e formando l'attuale RPG in PHP

Iniziato il programma di partnership per la distribuzione di WI400

SIRI e il PHP

| 07/05/10| 47

SIRI e il PHP

Certified Support

nell'ambito IBMi, vanta oltre 20 anni di esperienza

personale tecnico Zend Certified Engineer

ha acquisito le migliori competenze e “best-practice” in PHP adattandole all'i5OS

Sviluppare codice con PHP

- come si sviluppa con PHP- strumenti rapidi di sviluppo

#

| 07/05/10| 49

Lo sviluppo del codice

| 07/05/10| 50

Lo sviluppo del codice con MVC

HTTP request

Executionparameters

browser controller model

ResultingData arrays

GuiContent

ResultingData arrays

HTTPresponse

view

| 07/05/10| 51

Lo sviluppo del codice con WI400

HTTP request

Executionparameters

browser controller model

ResultingData arrays

GuiContent

ResultingData arrays

HTTPresponse

view

WI400 Action Architecture

gateway

validation

azioni/menù su DB2 i5OS

| 07/05/10| 52

Lo sviluppo del codice con WI400

WI400 Action Architecture

modulo//wi400/modules/ CodiceAzione_Contesto.php

Contesti:_gateway_model_view_validation

GATEWAY

MODEL

VIEW

Validationform

ERROR

TRUE

Azione menù

Contenitore/menù

Az.semplice

Az.batch

| 07/05/10| 53

| 07/05/10| 54

http:// www. wi400.com

Less than 10 linesof code

Lo sviluppo del codice con WI400

| 07/05/10| 55

http:// www. wi400. com

http://www.linkedin.com/groups?gid=2896949

[email protected]

Lo sviluppo del codice con WI400

| 07/05/10| 56

new !

Loghi

- Question Time ?#

| 07/05/10| 58