Title: John Strano
1PowerBuilder 11.5 Geared Up for Accelerated
Development
- John Strano
- Technology Evangelist
2Capabilities and Features Since PowerBuilder 11.0
- PowerBuilder 11.1
- Incremental rebuild for .NET Targets
- PowerBuilder 11.2
- Certificate Store Support for Smart
Client-published applications - Usability and UI Enhancements
- Database Connectivity Enhancements
- Enabling the DEBUG Condition for ORCA and
OrcaScript - Application Pools for Web Forms in IIS7
- Telerik RadControls Support
- EAServer Support for .NET-deployed PowerBuilder
Clients - AJAX Functionality for WebForm-Deployed
Applications
3PowerBuilder Videos
- For more PowerBuilder 11.x detail
- http//www.sybase.com/products/development/powerbu
ilder/videos - http//www.sybase.com/products/development/powerbu
ilder/webcasts
4PowerBuilder 11.5 Overview
5Products Packaged with PowerBuilder 11.5!
- Premiums Packaged with
- PowerBuilder 11.5!
6Packaged with PowerBuilder 11.5!
- PocketBuilder 2.5
- PowerBuilder Application Server Plug-in 1.1
- PowerBuilder Skills for Heterogeneous
Environments - Mobile
- JEE
- .NET
- Client/Server
7PowerBuilder 11.5 Features
8- .NET
- Code Access Security
9Brief Introduction of Code Access Security (CAS)
- Code Access Security is for .NET applications at
runtime - Its complementary to Role-Based security
- http//msdn.microsoft.com/en-us/library/aa302422.
aspx - While Role-Based security answers the questions
of "Who is the user and what can the user do?"
10Brief Introduction of Code Access Security (CAS)
- Code security answers the questions of
- Where is the code from?
- Who wrote the code?
- What can the code do?
- CAS is a resource constraint model
- PowerBuilder 11.5 supports CAS for
- Windows Form (and Smart Client)
- Web Form applications
- NVOs (as Web Services or as Assemblies)
11Security in Windows FormDesign time
- Security settings for code groups are designated
in the project painters - Four levels of trust
- Full Trust (default)
- Local Intranet Trust
- Can be customized
- Internet Trust
- Can be customized
- Custom
12Security in WebForm / Web Service
- By default, WebForm and Web Services are
deployed and running with Full trust level - Can choose Custom level in project painter
- A new configuration file web_customtrust.config
is generated and referred in applications
web.config - Application will be running in custom trust level
- Security setting in web.config and
web_customtrust.config will take effect in runtime
13Security in WebForm / Web Service
WebForm deployed with custom trust
14Strong Name Support for .NET Applications
- You can ensure that a name is globally unique by
signing an assembly with a Strong Name - Strong Names attempt to guarantee authorship of
code - Strong Names satisfy the following requirements
- Strong Names guarantee name uniqueness by relying
on unique key pairs - Strong Names protect the version lineage of an
assembly - Strong Names provide a strong integrity check
- http//msdn.microsoft.com/en-us/library/wd40t7ad.a
spx
15Strong Name Support for .NET Applications
- PowerBuilder 11.5 can generate Strong Named
assemblies for all .NET applications - Can be put into GAC and shared by multiple
Applications - Can protect the assembly from tampering
- NVOs as .NET Web Services and as .NET Assemblies
can be called by partially trusted callers if
theyre signed with Strong Name - Mark the assembly with AllowPartiallyTrustedCalle
rAttribute - Note Select this property unless you trust the
callers
16Strong Name Support for .NET Applications
17PowerBuilder .NET Security Summary
- CAS provides you more security control on system
resources - However, it makes the developers work and
administrators work more complex, and may cause
more problems for the end users when running the
application if not adequately planned and managed - Need to work with system administrator to get the
systems security policy during development - Need thorough testing with intended security
policy - Always grant the minimal, not the most,
permissions enough for performing certain
operation to reduce potential risks
18More resources on .NET CAS
- .NET Framework Developer's Guide Code Access
Security - http//msdn.microsoft.com/en-us/library/930b76w0(V
S.80).aspx - How to Add a Trusted Publisher to a Client
Computer for Click Once Applications - http//msdn.microsoft.com/en-us/library/ms172241.a
spx - .NET Framework tool Code Access Security Policy
Tool (caspol.exe) - http//msdn.microsoft.com/en-us/library/cb6t8dt
z(VS.80).aspx - Code Access Permissions from .NET Framework
- http//msdn.microsoft.com/en-us/library/h846e9b
3.aspx - ASP.NET Code Access Security
- http//msdn.microsoft.com/en-us/library/87x8e4d
1.aspx
19 20PNG Support
- PowerBuilder 11.5 supports the Portable Networks
Graphics (PNG) file format for images in - Menus
- Toolbars
- Treeview controls
- DataWindow objects
- PNG images have an alpha channel for
transparency - Transparent portions of a PNG image display the
background color gradient of the control to which
they are assigned
21 22FDCC Compliance
- The Federal Desktop Core Configuration (FDCC) is
a security standard - Mandated by the US Office of Management and
Budget (OMB)
23FDCC Compliance
- To meet the FDCC security requirements,
PowerBuilder 11.5 can be installed only by a
system administrator - However
- PowerBuilder
- Applications that you develop with PowerBuilder
- are designed to be run in a standard user
context without elevated system administration
privileges
24FDCC Compliance
- Most PowerBuilder files install by default to
Program Files\Sybase subdirectories - Write access to these subdirectories is
restricted to administrative users - FDCC requires all writable files must be copied
or installed to directories where standard users
have write access
25FDCC Compliance
- Writable files that are shared by all users are
installed in - C\Documents and Settings\All Users\Documents\Syba
se\PowerBuilder 11.5 - These include
- The EASDemo databases
- All Code Examples directories and files
- All PowerBuilder Help files
- The Translation Toolkit directories and files
26FDCC Compliance
- User-specific writable files are installed in
the default Program Files\Sybase subdirectories
but - Are copied to different locations the first time
a user starts PowerBuilder - There will be as many copies of these files as
there are standard users who use PowerBuilder
27- Transaction Object Enhancement
28Transaction Object Enhancement
- PowerBuilder 11.5 adds two new events for the
Transaction object - DBError
- SQLPreview
29Transaction Object Enhancement
- With Embedded SQL
- Whenever an error occurs in the Transaction
object, the DBError event is called - The error code and error message are passed to
the event - The SQLPreview event on the Transaction object
is triggered before SQL statements are passed to
the DBMS
30Transaction Object Enhancement
- DBError in concert with a DataStore or a
DataWindow - DataWindow/DataStore DBError event is triggered
before the DBError event of the Transaction
object - To coordinate these two events
- Two additional return values have been added for
the DataWindow DBError event - The meaning of the existing return values is
expanded to indicate whether the Transaction
Object's DBError event should be fired
31Transaction Object Enhancement
- contd
- SQLPreview in concert with a DataStore or a
DataWindow - If the return value of the DataWindow or
DataStores SQLPreview event is 0 - Continue processing
- The Transaction object's SQLPreview event is
triggered
32- Remote Deployment of .NET Web Targets
33Remote Deployment of .NET Web Targets
- PowerBuilder 11.5 .NET targets do not require
you to have IIS installed on the development
computer - When you deploy directly to a remote computer
- System information about the deployment
computer, including its OS and IIS versions, is
passed to PowerBuilder - through the Windows Management Instrumentation
(WMI) interface
34Remote Deployment of .NET Web Targets
- If you deploy to an MSI setup file
- Run the setup file on a deployment computer
- PowerBuilder can use the Windows API to obtain
information about the OS and IIS versions on that
computer
35Remote Deployment of .NET Web Targets
- When you attempt to deploy Web Target projects
on Vista or Windows 2008 under a standard user
account
36Remote Deployment of .NET Web Targets
- The User Account Control (UAC) dialog box
displays - This dialog box allows you to elevate your
privileges for the purpose of deployment
37Remote Deployment of .NET Web Targets
- Deploying .NET targets to a remote Windows Vista
or Windows 2008 computer might require changes
to - UAC
- Windows firewall
- Distributed Component Object Model (DCOM)
settings
38- Support for
- MS SQL Server 2008
39SQL Server 2008 DriverTransaction Object Syntax
- New Database Connection Parameter Provider
- Use the SQLNCLI10 Provider value
- Required to take advantage of new features
- Default Provider value is SQLNCLI
- Only supports SQL Server 2005 features
- Example
- SQLCA.DBParm Provider'SQLNCLI10
40SQL Server 2008 Driver
- Mirroring Support
- New Data Types
- T-SQL Support
41SQL Server 2008 Driver
- New Data Types
- TIME DATETIME2 types
- Have 0-7 fractional seconds precision.
- PowerBuilder supports 0-6 fractional seconds
precision. - DATETIMEOFFSET
- Not supported in PowerBuilder 11.5
- CLR Types
- HIERARCHYID
- SPATIAL DATA GEOGRAPHY GEOMETRY
- UDT User defined CLR Types
- FILESTREAM
- NOT strictly a new data type but a new storage
mechanism for Varbinary(max) data
42SQL Server 2008 Driver T-SQL Support
- Row Constructors
- INSERT INTO Employees VALUES ('tom', 25, 5),
('jerry', 30, 6) - ESQL / DSQL
- FORCESEEK Table Hint
- Forces the query optimizer to use only an index
seek - ESQL / DSQL and DataWindow data source
- MERGE Statement
- Dynamic SQL only
- GROUPING SETS
- ESQL / DSQL and DataWindow data source
43SQL Server 2008 DriverDelayed for GA
- The MS SQL Server 2008 release was delayed
- The GA version of our driver cannot be included
in time for the PowerBuilder 11.5 GA - Resolution
- We will release PowerBuilder 11.5 with the SQL
Server 2008 RC driver and support its GA in an
EBF
44 45Oracle 11g Support
- Client Access through Proxy
- New DBParm ConnectAs is used to set the End
User - Session and Connection Pooling
- New Pooling DBParm
- "CnnPool'Yes' is now "Pooling'Connection
Pooling - Implicit Fetching ROWID with SELECT FOR UPDATE
statements - ROWID no longer needs to be explicitly added in
the select items - Client-side caching of SQL query result sets
46Oracle 11g Support
- OCI Driver Name
- Diagnostic aid
- AppDriverName DPBARM parameter allows you to
set your own client driver name - XML data type support
- Oracle XMLType data type - introduced with
Oracle 9i - Supports returning single XMLType values from an
Oracle cursor
47- .NET Interoperability Language Enhancements
48.NET InteroperabilityLanguage Enhancements
- PowerBuilder 11.5 will now
- Support method calls on PowerBuilder and .NET
primitive types - Support method calls on PowerBuilder and .NET
enumerated types - Support accessing static members of .NET classes
with instance references
49.NET InteroperabilityLanguage Enhancements
- Function calls on .NET primitive and enumerated
types - Must be made inside a conditional compilation
block for a .NET target.
50.NET InteroperabilityLanguage Enhancements
- Function calls on .NET Primitive Types
- Functionality of the primitive types is now
merged with the functionality of their
corresponding PowerBuilder primitives - if defined PBDOTNET then
- System.Int32 i1
- long i2
- i1.ToString()
- i2.ToString()
-
- end if
51.NET InteroperabilityLanguage Enhancements
- Function calls are also supported on .NET
enumerated types that you import into a .NET
target - An enumerated type from an imported assembly
- namespace ns1.ns2
- Public enum TimeOfDay
-
- Morning 0,
- AfterNoon 1,
- Evening 2
-
52.NET InteroperabilityLanguage Enhancements
- e.g. PowerBuilder allows you to call the
ToString() method on the .NET TimeOfDay
enumerated type after you reference it in your
target - if defined PBDOTNET then
- ns1.ns2.TimeOfDay daytime
- daytime ns1.ns2.TimeOfDay.Morning!
- daytime.ToString()
- end if
53.NET InteroperabilityLanguage Enhancements
- PowerBuilder 11.5 lets you use instance
references to access static members of .NET
classes - string s
- if defined PBDOTNET then
- //OLD WAY
- //sSystem.Web.HttpContext.Current.ToString()
- //NEW WAY
- System.Web.HttpContext context
- context System.Web.HttpContext
- s context.Current.ToString()
- end if
54 55New DataWindow Features Supported
Targets/Platforms
- Traditional Win32
- Windows Forms Target
- Smart Client-Published WinForm Applications
- InfoMaker 11.5
56Tooltips
- Supported in all DataWindow presentation styles
- Except RichText and OLE
- New property tab New properties
- Columns and all Control types
- All new properties are expression-enabled
57Gradients/Translucency of Backgrounds
- Supported in all DataWindow presentation styles
- Except RichText and OLE
- New property tab New properties
- Bands
- Columns and all Control types
- All are expression-enabled (except for DWO
scope/level)
58Text Translucency
- New Property on Font Properties tab
- Columns
- Text
- Buttons
- Group Boxes
- Computed Columns
- Expression-enabled
59New DataWindow Object-Level Properties
- Same as band/column/control background
properties except - Not expression-enabled
- Transparency is not really transparent
- Defaults to a white background
- Extras
- Images and Tiling
60New Properties for Picture Control
- transparentcolor
- Designate a color in the image to be transparent
- Transparency
- Expression-enabled
61New Column Edit Style - RichText
- Supported in all DataWindow presentation styles
- Except RichText and OLE
- Comes with Floating Font Toolbar
- Can be disabled
- Roll your own using new events, functions
62New Column Edit Style - RichText
- RichTextToolbarActivation
- New DataWindow control property Enumerated
- Enumerated values
- RichTextToolbarActivationNever!
- RichTextToolbarActivationOnEdit!
- RichTextToolbarActivationAlways!
63New Column Edit Style - RichText
- RichTextCurrentStyleChanged
- pbm_dwnrichtextcurrentstlechanged (long row,
DWObject dwo) - RichText column has focus
- The current style of the selection or cursor
position has changed - RichTextLoseFocus
- pbm_dwnrichtextlosefocus (long row, DWObject dwo)
- RichText column loses focus
- RichTextLimitError
- pbm_dwnrichtextlimiterror (long row, DWObject
dwo, string text) - RichText data exceeds column size
- The text argument is the plain text of the
current column
64New Column Edit Style - RichText
- New Functions for getting and setting text
- Style (bold/underline/italic)
- Color
- Size
- Alignment
- Font
65New DirectX Rendering for 3D Graph Styles
- DirectX 9.0c (Direct3D) Prerequisite
- Depends on drivers supporting Direct3D
- Graceful degradation to traditional rendering in
case Direct3D is absent - Support can be checked by running DXDIAG.exe from
a command prompt - Installed by PowerBuilder 11.5 for the developer
on first use - Anti-aliasing should be disabled
66New DirectX Rendering for 3D Graph Styles
- New Functions
- GetSeriesTransparency/SetSeriesTransparency
- GetDataTransparency/SetDataTransparency
- GetSeriesLabelling/SetSeriesLabelling
- GetDataLabelling/SetDataLabelling
67SUMMARY PowerBuilder 11.5
- Delivers Core Functionality Enhancements
- DataWindow Look and Feel
- Support for Newer DBMS versions
- .NET Interoperability Language Enhancements
- .NET Code Access Security
- IIS7 and Vista
68Advanced PowerBuilder 11.5 Education
- Moving to PowerBuilder 11.5 (DEV545)
- PowerBuilder 11.1, 11.2 and 11.5 changes
and enhancements - .NET enhancements and target integration with
EAServer 6.1 - Configure CAS (Code Access Security) security
zones for .NET targets - Advanced Web Services in WinForm and WebForm
applications - Fast Track to PowerBuilder Part II (DEV633)
- Taught on PowerBuilder 11.5
- Focus on advanced client/server application
development - Gain higher-level expertise to build and deploy
fully functional applications using
PowerBuilders more advanced features
Sybase Education provides a wide range of
training delivery options Onsite, SyberLearning
LIVE, SyberLearning OnDemand and Learning Center
Attend a class by December 31, 2008 and receive
a 20 discount (NA CAN only)
www.sybase.com/professional-services/education
69QAThank you.