Your Presenters
Dave Fish – Engineering EvangelistJim O’Neil – Sales EvangelistJohn Strano – PowerBuilder Evangelist
PowerBuilder Market Focus and Road Map
15
Market Focus – Sybase Goals
• Attract next generation of application developers
• Focus on .NET and Eclipse platforms to extend reach
• Support Sybase servers as key to Sybase platform success
• Provide key technology differentiators within an open 4GL IDE
• Leverage DataWindow technology as the cornerstone of Sybase offerings
Market Focus – The PowerBuilder Products
• PowerBuilder– 4GL development for Windows, Web, and distributed applications– Provide key technology to simplify .NET development
• PowerBuilder Application Server Plug-in– Newest member of the PowerBuilder family– Deploy PowerBuilder objects to J2EE application servers
• PocketBuilder– 4GL RAD for mobile devices– Build data-driven mobile applications in less than one hour
• DataWindow .NET– 4GL productivity in Visual Studio .NET– Extend the Sybase reach into the Microsoft market
DataWindows Everywhere…
– PowerBuilder for Client/Server, Web, Web Services and now .NET– PowerBuilder Application Server Plug-In
• WebLogic• WebSphere• JBoss
– DataWindow .NET– PocketBuilder
DataWindows greatly reduce the amount of code you need to write for your application
The DataWindow Painter provides an intuitive graphical user interface granting you immediate productivity
Messaging
• Sybase is committed to PowerBuilder– PowerBuilder 11 delivers core functionality enhancements
• Database driver enhancements• DataWindow enhancements• IDE and user enhancements
– …and major new features• .NET deployment options• Web Services DataWindow• New SQL Server database driver
• Sybase is committed to fully supporting and exploiting .NET– PowerBuilder 11 release– DataWindow .NET 2.5 (due 3Q 2007)
PowerBuilder Roadmap Simplified development for today
Language Independence
ApplicationConnectivity
MultiplePlatformSupport
PowerAnd
Performance
2007PowerBuilder 11.0
.NET Simplified
• Deploy applications and NVOs to .NET
• Leverage/extend PB investment
• UI/IDE updates• Native SQL Server
support
PowerBuilder Roadmap Simplified development for today, tomorrow
Language Independence
ApplicationConnectivity
MultiplePlatformSupport
PowerAnd
Performance
2007PowerBuilder 11.0
.NET Simplified
• Deploy applications and NVOs to .NET
• Leverage/extend PB investment
• UI/IDE updates• Native SQL Server
support
.NET Enhanced
2007PowerBuilder 11.1
• .NET incremental rebuild• Smart Client for Win32• EAServer .NET support• Additional AJAX-style
functionality• .NET support for Pipeline• Informix 10 support
PowerBuilder Roadmap Simplified development for today, tomorrow, and beyond
Language Independence
ApplicationConnectivity
MultiplePlatformSupport
PowerAnd
Performance
2007PowerBuilder 11.0
.NET Simplified
• Deploy applications and NVOs to .NET
• Leverage/extend PB investment
• UI/IDE updates• Native SQL Server
support
.NET Enhanced
2007PowerBuilder 11.1
• .NET incremental rebuild• Smart Client for Win32• EAServer .NET support• Additional AJAX-style
functionality• .NET support for Pipeline• Informix 10 support
.NET Exploited
2008PowerBuilder 12
• .NET in IDE• WPF/WCF support at
design time and runtime• Fully managed code at
deployment• Complete .NET
interoperability
PowerBuilder 11 Features
15
PowerBuilder 11 Release Defining Features• IDE and user interface enhancements
• DataWindow enhancements
• Updated database connectivity
• .NET deployment capabilities– .NET Web Form applications in ASP .NET 2.0– .NET Windows Form and Smart Client applications– .NET Web Services– .NET Assemblies
IDE and User Interface Enhancements
10
IDE Enhancements
• AutoScript
IDE Enhancements
• AutoScript
• Resizable dialog boxes
IDE Enhancements
• AutoScript
• Resizable dialog boxes
• Updated menus and toolbars
IDE Enhancements
• AutoScript
• Resizable dialog boxes
• Updated menus and toolbars
• System tree
IDE Enhancements
• AutoScript
• Resizable dialog boxes
• Updated menus and toolbars
• System tree
• Project painter
IDE Enhancements
• AutoScript
• Resizable dialog boxes
• Updated menus and toolbars
• System tree
• Project painter
• Output window tabs
IDE Enhancements
• AutoScript
• Resizable dialog boxes
• Updated menus and toolbars
• System tree
• Project painter
• Output window tabs
• Exception support in debugger
IDE Enhancements
• AutoScript
• Resizable dialog boxes
• Updated menus and toolbars
• System tree
• Project painter
• Output window tabs
• Exception support in debugger
• Window animation and transparency
DataWindow Enhancements
10
DataWindow Enhancements
• Display ellipsis for truncated data
• Retain DataWindow retrieval argument values
• Web TreeView DataWindow
• Web Service DataWindow data source
Display Ellipsis for Truncated Data
Retain DataWindow Retrieval Arguments
• Stored with target information in registry
• Not applicable at runtime
Web TreeView DataWindow
Additional TreeView DataWindow Features
• Zero-height detail band supported
• Repositioned rows retain their collapsed/expanded state
• Standard TreeView events added to DataWindow control
Web Services DataWindow Data Source
• Deliver data to DataWindow via a Web Service– Supports disconnected client model
– Eliminates requirement that vendor’s client software reside on end-user machine
• Web Service ‘result set’ support– Data type support
• Simple data type (or array of simple data types)
• Non-nested structure (or array of structures)
– Method retrieval options
• Return value
• Reference output parameter
Web Service DataWindow Definition
DataWindowPainter
PowerBuilderWeb Service support using
the .NET engine
Metadata
WSDLA DataWindowObject
Generated.NET
Assembly
Web Service DataWindow Retrieval
• Uses existing DataWindow retrieval PowerScript syntax
• Optional wsconnection object supports runtime customization– Endpoint
– User ID and password
– Timeout
– Security options
– Proxy server setttings
Web Service DataWindow Updates
• Analogous to Stored Procedure update options
Web Service DataWindow Error Handling
• New WSError event is analog of existing DataWindow DbError event when using a Web service data source
Argument Description
Operation Type of operation (Retrieve, Update, Insert, Delete, …)
Rownum Row number (or 0 if not applicable such during
BufferName Name of the buffer being accessed while the error occurred
WSInfo The WSDL file, the URL that defines the Web service, or the assembly that is used access the Web service
Method Name of the Web service method invoked
ErrorMessage Exception message returned from the method
Web Service DataWindow Runtime Operation
The Web Service
The DataWindow
engine
PowerBuilder Web Service support using
the .NET engine
Generated assembly and
the .NET framework
Retrieval method call
Returned data
Metadata
DataWindow Enhancements Demonstration
Database Connectivity Enhancements
5
Database Connectivity Enhancements
• New Sybase Adaptive Server Enterprise (ASE) 15 native driver
• New Microsoft SQL Server native driver
• Oracle RAC support
• MobiLink support
• New interface supports version 15 and later – SQLCA.DBMS = “ASE” (DLL name PBASE110.DLL)– Requires Open Client 15– ASE 15 feature support
• Identifier names up to 128 characters• Scrollable cursors• New integral data types
• Updated SYC interface supports some features of ASE 15– Scrollable cursors– New integral data types
Sybase Adaptive Server Enterprise (ASE) 15
Microsoft SQL Server
• New native driver interface– SQLCA.DBMS = “SNC” (DLL name PBSNC110.DLL)– Supports SQL Server 2000 and 2005– Relies on SQL Server 2005 native client installation
• SQL Server 2005 support– Multiple active result sets (MARS)– Bypass validation during encryption– Snapshot isolation level
• DBParm support– Cache stored procedure parameter descriptions (SPCache)– Host and AppName parameters reinstated previous MSS native driver
Oracle Real Application Clusters (RAC)
• RAC is an optional feature where single database is deployed across a hardware cluster
• Supported by PowerBuilder Oracle 10g interface only
• Handling RAC failure events– Define custom Transaction object– Set HANotification DBParm on Transaction object to enable notification– Implement DBNotification event on Transaction object to handle the error– Set return value of DBNotification event
• 0: initiate failover• Other value: stop processing current command, return error
MobiLink Support
• Sybase technology providing session-based synchronization between a main database and multiple remote databases
• New PowerBuilder built-in objects support .NET Windows Form applications– MLSynchronization – abstract base class for MLSync object– MLSync – wraps call to dbmlsync.exe to perform
synchronization and respond to callbacks
– SyncParm – structure used to set properties for the MLSync object obtained from default or customized
synchronization options window– SyncProcessType – enumeration indicating direction of the
synchronization
PowerBuilder and .NET
5
PowerBuilder’s 4-Phase .NET Integration Initiative
• Web Services (PB9)
• DataWindow .NET (PB10 Timeframe)
• .NET Deployment (PB11)
• .NET Resource Consumption (PB12)
PowerBuilder .NET Compiler Internals
• Deployment relies on .NET SDK’s C# compiler
• Execution relies on PowerBuilder .NET System Libraries
PB2CS
PowerBuilder .NET Compiler
Framework
PowerBuilder System Library
for .NET
C# Code.NET
Application
Generates
Depends On References
PBL Files
Deploying .NET Applications:Web Form Applications in ASP.NET 2.0
20
Architecture:.NET Web Form Applications
DB Drivers
DataWindow .NETWebForm Control
PB Web Form Application
PB System Library for .NET
PB ApplicationCompiles to
Unmanaged DLLs (without PBVM)
Sybase.PowerBuilder.Core.DLL
Sybase.PowerBuilder.Interop.DLL
Sybase.PowerBuilder.Common.DLL
Sybase.PowerBuilder.Web.DLL
PBSHR.DLL
PBDWM.DLL
What Happens at Deployment
• PowerScript code is compiled to a .NET assembly
• PBDs with DWO definitions are copied
• Resource files are copied– PowerBuilder stock images– INI files
• ASP.NET files are generated– default.aspx: the main ASP.NET page– default.htm: wrapper for default.aspx to hide IE toolbars and menu
What PowerBuilder Features Are Supported
• Most PowerScript language features– All data types– Function invocation (dynamic, post, trigger)– Event handling– Embedded SQL
• Most visual and non-visual controls– Rich Text Control to be supported in EBF– Pipeline object to be supported in maintenance releaseExceptions:
• File operations: File Manager
• Sending e-mail (via SMTP not MAPI): Mail Manager
• DataWindow printing: Print Manager
What PowerBuilder Features Are Not Supported
• Some system classes such as– Profile-related classes (but application tracing is available via web config)– Trace-related classes (but database SQL tracing is available via web config)
• Some system functions such as– DDE-related functions– Clipboard-related functions
• Some controls, properties, and events such as– OLEControl / OLECustomer Control (partial support)– InkPicture /InkEdit– Drag-and-drop events– EditLabels of TreeView
.NET Web Form Application Demonstration
Deploying .NET Applications:Windows Form and Smart Client Applications
30
Architecture:.NET Windows Form Applications
DB Drivers
DataWindow .NETWindows Form Control
PB System Library for .NET
PB ApplicationCompiles to
Unmanaged DLLs (without PBVM)
Application configApplication manifest
Sybase.PowerBuilder.Core.DLL
Sybase.PowerBuilder.Interop.DLL
Sybase.PowerBuilder.Common.DLL
Sybase.PowerBuilder.Win.DLL
PBSHR.DLL
PBDWM.DLL
PB Windows Form Application
PowerBuilder .NET Windows Form Applications
• Supports most features available in PowerBuilder Win32 applications– PowerScript language features– DataWindow, Editmask, RichText, InkEdit, InkPicture,…– DataStore, Transaction, ResultSet,…– Most system functions
• Consume .NET classes via PowerScript .NET interoperability
• Preserve PowerBuilder development skills– Create a PowerBuilder application– Deploy it as a .NET Windows Form application
PowerBuilder .NET Smart Client Support
• Solves the biggest headache of all…
…Application Deployment
• The best of the Rich Client world• The ubiquity of the Web
Comparison Among Rich, Thin, and Smart Clients
Rich Client Thin Client Smart Client
Rich user experience Yes No Yes
Responsive Yes No Yes
Heavy footprint Yes No No
DLL hell Yes No No
Network dependency No Yes No
Easy deployment No Yes Yes
Developer productivity Yes No Yes
Occasionally connected No No Yes
Performs well in low bandwidth network
No No Yes
Uses local resources Yes No Yes
PowerBuilder .NET Smart Client Support
• Occasionally connected– PowerBuilder with MobiLink
• Always up-to-date applications – PowerBuilder’s “Intelligent Update”
• Maximize performance using client resources– PowerBuilder applications deployed as Windows Form (Rich Client)
• Communicate utilizing Web Services– PowerBuilder’s Web Service DataWindow
• Utilize network resources– PowerBuilder’s Web Service DataWindow– PowerBuilder’s “Intelligent Update”– PowerBuilder with MobiLink
MobiLink Synchronization Overview
• MobiLink synchronization objective: create Smart Client, offline-enabled application
• Requirements– Runtime
• ASA 9 or 10 database drivers and MobiLink deployed
• PowerBuilder Win32 or .NET Windows Form application
– Design time
• PowerBuilder 11.0
• SQL Anywhere 9/10
MobiLink Synchronization Architecture
Intelligent Update Overview
• Reduces pain of updating a typical client-server application
• Based on “ClickOnce” technology of .NET Framework 2.0
• Makes deploying a Windows Form application as easy as deploying a Web application
Deployment Model
Application installations and updates are deployed via centralized servers (via HTTP, FTP, UNC,…)
.NET Windows Form/Smart Client Demonstration
Consuming .NET Resources:PowerBuilder 11 .NET Interoperability
10
.NET Interoperability
• .NET interoperability enables PowerBuilder applications to consume non-visual .NET resources– Common Type System (CTS) types supported
– .NET interfaces
• PowerScript language extensions– Code blocks and conditional compilation support
– Parameterized constructors
– Static properties and methods
– .NET exception propagation
• System Tree includes .NET assembly metadata
PowerBuilder 11 .NET Interoperability Demonstration
Creating .NET Resources:Deploying NVOs as .NET Assemblies
10
Deploying NVOs as .NET Assemblies
• .NET Assembly Target type
• PowerScript data types automatically mapped to C#
• Integrated .NET debugger support
DataWindow .NET
NVO .NET Assembly PBLs with NVOs
PB System Library for .NETUnmanaged DLLs
(without 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
Compiles to
Deploying NVOs as .NET Assemblies Demonstration
Creating .NET Resources:Deploying NVOs as .NET Web Services
15
Deploying NVOs as .NET Web Services
• .NET Web Services Target type
• Stateless design
• Public methods mapped to Web Service messages– Selectively exclude additional methods from deployment– Method aliases permitted (e.g., to account for overloading)– Design time validation available
• PowerScript data types mapped to XML schema types
• Integrated .NET debugger support
DataWindow .NET
NVO ASP.NETWeb Service PBLs with NVOs
PB System Library for .NETUnmanaged DLLs
(without 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
Compiles to
Deploying NVOs as .NET Web Services Demonstration
Future PowerBuilder Technology Showcase
10
Windows Presentation Foundation (WPF)
• High fidelity application experiences
• Blends together UI, documents, and media content
• Ultra-rich UI and data visualization through XAML– Extensible Application Markup Language
– Vector-based animation
WPF DataWindow Demonstration
WPF DataWindow Demonstration
Thank you!
Top Related