Xavier Cuerva Septembre 2007

Preview:

DESCRIPTION

Xavier Cuerva Septembre 2007. Marché de PowerBuilder et Feuille de Route. 15. Objectifs de Sybase. Attirer les développeurs de nouvelles applications Focalisation sur les plateformes .NET et Eclipse Support aux serveurs Sybase - PowerPoint PPT Presentation

Citation preview

Xavier Cuerva

Septembre 2007

Marché de PowerBuilder et Feuille de Route

15

Objectifs de Sybase

• Attirer les développeurs de nouvelles applications

• Focalisation sur les plateformes .NET et Eclipse

• Support aux serveurs Sybase

• Proposer des avantages technologiques différents des competiteurs dans un 4GL

• Utilisation de la technologie de la DataWindow dans toutes les offres de SYBASE, pierre angulaire du développement.

Les produits de la famille PowerBuilder

• PowerBuilder– 4GL pour le développement d’applications Windows, Web, et distribuées– Téchnologie pour simplifier le développement .NET

• PowerBuilder Application Server Plug-in– Dernier membre de la famille PowerBuilder– Déploiement de NVOs PowerBuilder dans des serveurs d’applications J2EE

• PocketBuilder– 4GL RAD pour dispositifs mobiles

• DataWindow .NET– Productivité d’un 4GL avec Visual Studio .NET

DataWindows partout…

– PowerBuilder pour Client/Serveur, Web, Web Services et .NET– PowerBuilder Application Server Plug-In

• WebLogic• WebSphere• JBoss

– DataWindow .NET– PocketBuilder

Les DataWindows réduisent considérablement le codage d’une application

Le Painter de la DataWindow fournit une interface graphique intuitive assurant une productivité élevée

Messages

• Sybase investit dans PowerBuilder– PowerBuilder 11 délivre de nombreuses fonctionnalités

• Amélioration des pilotes de Bases de Données• Amélioration de la DataWindow• Amélioration de l’environnement de développement

– …et fonctionnalités majeures• Déploiement pour .NET • DataWindow Web Services• Nouveau pilote pour SQL Server• Sybase s’engage dans le support de la plateforme .NET

– PowerBuilder 11 release– DataWindow .NET 2.5

Feuille de Route PowerBuilder Développement simplifié aujourd’hui et demain

2007PowerBuilder 11.0

.NET Simplifié

• Déploiement d’applications et NVO vers .NET

• Etendre l’investissement dans PB

• Actualisations IU• Support pilote natif

SQL SERVER

.NET Exploité

2008PowerBuilder 12

• Héritage de classes .NET

• Support WPF/WCF au design et runtime

• Managed code total• Interoperabilité

complète avec .NET

.NET Amélioré

2007PowerBuilder 11.1

• Rebuild Incrémental .NET

• Support pilote Informix 10 natif

• Support Vista officiel

Fonctionnalités PowerBuilder 11

15

Fonctionnalités de la version PowerBuilder 11 • Améliorations de l’environnement de développement et Interface Utilisateur

• Améliorations de la DataWindow

• Connectivité Base de Données actualisée

• Déploiement .NET – Applications Web Form .NET / ASP .NET 2.0– Applications Windows Form .NET et Applications Smart Client– Web Services .NET – Assemblies .NET

Améliorations Environnement de Développement et Interface Utilisateur

10

Env. de Développement

• AutoScript

Env. de Développement

• AutoScript

• Boîtes de dialoguedimensionnables

Env. de Développement

• AutoScript

• Boîtes de dialogue dimensionnables

• Menus et ToolBars actualisés

Env. de Développement

• AutoScript

• Boîtes de dialogue dimensionnables

• Menus et ToolBars actualisés

• System Tree

Env. de Développement

• AutoScript

• Boîtes de dialogue dimensionnables

• Menus et ToolBars actualisés

• System tree

• Project painter

Env. de Développement

• AutoScript

• Boîtes de dialogue dimensionnables

• Menus et ToolBars actualisés

• System tree

• Project painter

• Onglets outputWindow

Env. de Développement

• AutoScript

• Boîtes de dialogue dimensionnables

• Menus et ToolBars actualisés

• System tree

• Project painter

• Onglets output window

• Animation de fenêtres et Transparence

Démonstration des améliorations de l’environnement de développement et Interface Utilisateur

10

Améliorations de la DataWindow

10

Améliorations de la DataWindow

• Affichage point de suspension lorsque les données sont tronquées (Ellipse)

• Mémorisation des valeurs des Retrieval Arguments de la DataWindow

• DataWindow TreeView en mode Web

• Web Service comme source de la DataWindow

Affichage des points de suspension

Mémorisation des valeurs des Retrieval Arguments

Ne s’applique pas au runtime

DataWindow TreeView en mode Web

Fonctionnalités additionnelles de la DataWindow en mode TreeView

• Support “Zero-height” dans la bande de détail pour cacher des noeuds de l’arbre

• Evènnements TreeView dans le contrôle standard

Web Service comme source de la DataWindow

• Récupération de données via un Web Service– Elimine l’installation d’un software client sur la machine de

l’utilisateur final

• “Result Set” Web Service – Support des types de données

• Type de données simples (ou tableau de types des données simples)

• Structures non imbriquées (ou tableau de structures non imbriquées)

– Options de récupération des données

• Code Retour

• Paramètres par référence de type output

Définition d’une DataWindow Web Service

DataWindowPainter

Support Web Service avec

le moteur.NET

Metadonnées

WSDLObjet DataWindow

Generation.NET

Assembly

Récupération des données avec DataWindow Web Service

• Avec la syntaxe existante Retrieve ()

• Optionnel, objet

wsconnection au

runtime– Endpoint

– User ID et password

– Timeout

– Options de Sécurité

– Paramètrage Serveur Proxy

Actualisation d’une DataWindow Web Service

• Similaire à l’actualisation avec des procédures stockées

Gestion des erreurs avec une DataWindow Web Service

• Nouvel évènnement WSError, similaire à DBError

Argument Description

Operation Type d’opération (Retrieve, Update, Insert, Delete, …)

Rownum Numéro de la ligne

BufferName Nom du buffer accédé lors de l’erreur

WSInfo Le fichier WSDL, l’URL ou l’assembly utilisée par le WS

Method Nom de la méthode WS accédée

ErrorMessage Message d’exception retourné par la méthode

DataWindow Web Service au Runtime

Web Service

Engine DataWindow

Support WS avec le

moteur .NET

Assembly générée,

framework.NET

Récupération

Données en Retour

Metadonnées

Démonstration des améliorations de la DataWindow

Améliorations de la connectivité Base de Données

5

Améliorations de la connectivité Base de Données

• Nouveau pilote natif pour Sybase Adaptive Server Enterprise (ASE) 15

• Nouveau pilote natif pour Microsoft SQL Server

• Support Oracle RAC

• Support MobiLink

• La nouvelle interface supporte la version 15– SQLCA.DBMS = “ASE” (nom de la DLL PBASE110.DLL)– Nécessite Open Client 15– Fonctionnalités de la version 15 supportées

• Identifiants jusqu’à 128 caractères• Curseurs Scrollable• Nouveau type de données (uint …)

– Support uniquement ASE 15 (Release Parameter prend la valeur 15 uniquement)

• L’interface SYC actualisée pour supporter quelques fonctionnalités de ASE 15

– Curseurs Scrollable– Nouveau type de données (uint, ulong …)

Sybase Adaptive Server Enterprise (ASE) 15

Microsoft SQL Server

• Nouveau pilote natif– SQLCA.DBMS = “SNC” (nom de la DLL PBSNC110.DLL)– Supporte SQL Server 2000 et 2005– Nécessite l’installation du client SQL SERVER 2005

• Support SQL Server 2005 – Multiple active result sets (MARS)– Snapshot isolation level

• Support DBParm– Mémorisation (Cache) de la description des paramètres d’une procédure stockée

(SPCache)– Incorporation des paramètres Host et AppName disponibles dans le driveur natif

MSS

Oracle Real Application Clusters (RAC)

• RAC est une option d’ORACLE pour accéder une même Base de Données depuis plusieurs machines (nécessite un disque partagé shared-disk)

• Supporté par PowerBuilder dans le pilote Oracle 10g uniquement

• Gestion des évènnements avec RAC lors d’une erreur BD– Definition d’un custom Transaction object– Initialiser le paramètre HANotification dans DBParm pour permettre la notification– Implémentation de l’évènnement DBNotification dans l’objet Transaction– Code retour de DBNotification

• 0: Exécuter un failover• Autre valeur: stoppe la commande courante et retourne l’erreur

Support Mobilink

• Technologie SYBASE de synchronisation orientée session entre une base de donnée centrale et plusieurs bases de données distantes

• Nouveaux objets PowerBuilder pour supporter les applications .NET Windows Form

– MLSynchronization – classe abstraite de base pour MLSync– MLSync – Encapsule les appels à dbmlsync.exe pour

exécuter les synchronisations et répondre aux callbacks– SyncParm – structure utilisée pour assigner les propriétés de

l’objet MLSync obtenues à partir de la fenêtre de synchronisation

– SyncProcessType – Enumération indiquant la direction de la synchronisation

PowerBuilder et .NET

5

3ème phase de l’intégration avec .NET

• Web Services (PB9)

• DataWindow .NET (PB10)

• Déploiement .NET (PB11)

• Utilisation des Ressources .NET (PB12)

Compilateur PowerBuilder .NET

• Le déploiement s’appuie sur le compilateur C# du SDK .NET

• L’exécution s’appuie sur les librairies système .NET de PowerBuilder

PB2CS

FrameworkCompilateur

PB .NET

Librairie SystèmePB .NET

Code C#Application

.NET

Génération

Dépend de Référence

PBLs

Tour d’horizon PB .NET

PowerBuilder .NET Runtime

Application PB .NET

PB Native DLLs

Architecture des applications PowerBuilder .NET

.NET Framework

3rd Party .NETAssemblies

Windows 32 Platform

.NET interop

Déploiement d’applications .NET:Applications Web Form avec ASP.NET 2.0

20

Architecture:Applications.NET Web Form

DB Drivers

DataWindow .NETWebForm Control

Application PB Web Form

PB System Library for .NET

Application PB

Compilée

Unmanaged DLLs (sans PBVM)

Sybase.PowerBuilder.Core.DLL

Sybase.PowerBuilder.Interop.DLL

Sybase.PowerBuilder.Common.DLL

Sybase.PowerBuilder.Web.DLL

PBSHR.DLL

PBDWM.DLL

Au déploiement

• Le code PowerScript est compilée en une Assembly .NET

• Les fichiers PBDs avec des objets DataWindow sont copiés

• Les fichiers de Ressource sont copiés– Images PowerBuilder– Fichier INI

• Les fichiers ASP.NET sont générés– default.aspx: La page ASP.NET principale– default.htm: Cache les toolbars et Menus de IE de la page default.aspx

Fonctionnalités PowerBuilder supportées

• La plupart des fonctionnalités du langage– Tous les types de données– Invocation des fonctions (dynamic, post, trigger)– Gestion evènnementielle– SQL Embarqué

• La plupart des contrôles visuels et non visuels– Rich Text Control sera supporté dans un prochain patch– Objet Pipeline supporté dans la prochaine maintenance release

• Operations sur Fichiers: File Manager

• Envoi d’email (via SMTP et non MAPI): Mail Manager

• Impression de DataWindow: Print Manager

Fonctionnalités PowerBuilder non supportées

• Quelques classes systèmes– Classes Profile (Profiling est disponible via configuration WEB)– Classes Trace (SQL Tracing est disponible via configuration WEB)

• Quelques fonctions systèmes– Fonctions relatives au DDE– Fonctions relatives à la gestion du presse-papier

• Quelques contrôles, propriétés et évènnement– OLEControl / OLECustomControl (support partiel)– InkPicture / InkEdit– Evènnements Drag-and-drop– EditLabels dans TreeView

Démonstration Applications Web Form .NET

Déploiement d’applications .NET:Applications Windows Form et Smart Client

30

Architecture:Applications .NET Windows Form

DB Drivers

DataWindow .NETWindows Form Control

PB System Library for .NET

Application PBCompilée

Unmanaged DLLs (sans PBVM)

Application configApplication manifest

Sybase.PowerBuilder.Core.DLL

Sybase.PowerBuilder.Interop.DLL

Sybase.PowerBuilder.Common.DLL

Sybase.PowerBuilder.Win.DLL

PBSHR.DLL

PBDWM.DLL

Application PB Windows Form

Applications PowerBuilder .NET Windows Form

• Supporte la plupart des fonctionnalités disponibles dans les applications Win32– Fonctionnalités PowerScript

– DataWindow, Editmask, RichText, InkEdit, InkPicture,…– DataStore, Transaction, ResultSet,…– La plupart des fonctions systèmes

• Utilisation de classes .NET via l’interoperabilité PowerScript .NET

• Préserve les compétences du développeur PowerBuilder – Créer une application PowerBuilder– Déployer l’application comme une application .NET Windows Form

Support PowerBuilder pour application .NET Smart Client

• Résoud le plus gros problème…

…Le Déploiement d’applications

• Le meilleur des applications Client-Serveur • L’ubiquité du net

Comparaison entre Client Riche, Léger et Smart

Client Riche Client Léger Client Smart

Interface riche Oui Non Oui

Temps de Réponse rapide Oui Non Oui

Runtime Client Oui Non Non

Versions des DLLs Oui Non Non

Dépendance Réseau Non Oui Non

Déploiement Facile Non Oui Oui

Productivité du développeur Oui Non Oui

Connecté occasionnellement Non Non Oui

Perf réseau avec peu de bande passante Non Non Oui

Utilisation de ressources locales Oui Non Oui

Support PowerBuilder .NET Smart Client

• Connecté occasionnellement– PowerBuilder avec MobiLink

• Dernière version des applications– PowerBuilder “Intelligent Update”

• Utilisation des ressources du poste client– Applications déployées comme .NET Windows Form (Rich Client)

• Communication avec des Web Services– DataWindow Web Service

• Utilisation des ressources réseau– DataWindow Web Service– PowerBuilder “Intelligent Update”– PowerBuilder et MobiLink

Intelligent Update, Tour d’horizon

• Réduit les problèmes liés à l’actualisation des applications Client-Serveur

• Basé sur la technologie “ClickOnce” du .NET Framework 2.0

• Déploiement d’applications Windows Form aussi facile que le déploiement d’applications Web

Modèle de Déploiement

Les installations et les actualisations sont déployées sur des serveurs centralisés (via HTTP, FTP, UNC,…)

Démonstration des applications .NET Windows Form/Smart Client

Utilisation des ressources .NET:PowerBuilder 11 et Interopérabilité .NET et compilation conditionnelle

10

Interopérabilité .NET

• Permet l’utilisation de ressources non visuelles .NET– Common Type System (CTS) supportés

– Interfaces .NET

• Extensions du langage PowerScript– Support compilation conditionnelle

– Constructeurs paramétrés

– Propriétés et méthodes statiques

– Propagation des exceptions .NET

– Enumerations

– Namespaces

• Le System Tree inclus les meta-données des assembly .NET

Démonstration de PowerBuilder 11 et Interopérabilité .NET

Création de Ressources .NET:Déploiement de NVOs comme Assemblies .NET

10

Déploiement de NVOs comme Assemblies .NET

• Target .NET Assembly

• Types de données PowerScript mappés à C#

DataWindow .NET

NVO .NET Assembly PBLs avec NVOs

PB System Library for .NETUnmanaged DLLs

(sans PBVM)

Architecture:.NET Assemblies

Sybase.PowerBuilder.Interop.DLL

Sybase.PowerBuilder.Common.DLL

Sybase.PowerBuilder.Win.DLL

Sybase.PowerBuilder.Core.DLL

PBSHR.DLL

DB Drivers

PBDWM.DLL

Compilées

Démonstration, déploiement de NVOs comme Assemblies .NET

Création de Ressources .NET:Déploiement de NVOs comme Web Services .NET

15

Déploiement de NVOs comme Web Services .NET

• Target .NET Web Services

• Comportement Stateless (sans-état entre appels)

• Méthodes Publiques mappées comme des messages Web Service– Possibilité d’exclure des méthodes lors du déploiement– Synonymes de méthodes permis (overloading)

• Les types de données PowerScript sont mappés comme des types de données XML schema

DataWindow .NET

NVO ASP.NETWeb Service PBLs with NVOs

PB System Library for .NETUnmanaged DLLs

(sans PBVM)

Architecture:.NET Web Services

Sybase.PowerBuilder.Interop.DLL

Sybase.PowerBuilder.Common.DLL

Sybase.PowerBuilder.Web.DLL

Sybase.PowerBuilder.Core.DLL

PBSHR.DLL

DB Drivers

PBDWM.DLL

Compilées

Démonstration Déploiement de NVOs comme des WEB Services .NET

Le futur de PowerBuilder en exclusivité!

10

Windows Presentation Foundation (WPF)

• Applications graphiques Haute Fidélité– Animation Vectorielle

– XAML (Extendible Application Markup Language)

Démonstration de la DataWindow WPF

Le Futur de PowerBuilder

• PowerBuilder fera ce qu’il a toujours fait …

• …simplification du développement Windows

• … maintenant, simplification du développement .NET

Merci !

Recommended