powerbuilder 12 - · pdf file11 –sybase ase15 august 27, 2010 powerbuilder goals and...
TRANSCRIPT
![Page 1: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/1.jpg)
PowerBuilder 12
向質彬 Ben Sybase Taiwan 2010 / 08
PowerBuilder is .NET
![Page 2: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/2.jpg)
2 – Sybase ASE15 – August 27, 2010
談談 PowerBuilder 的開發產能
• Deborah Kurata's (MSMVP) Blog Post: Painting on the DataGridView
– http://msmvps.com/blogs/deborahk/archive/2009/08/13/painting-on-the-datagridview.aspx
![Page 3: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/3.jpg)
3 – Sybase ASE15 – August 27, 2010
Deborah Kurata‘s Blog的部份例子
private void myGrid_RowPostPaint(object sender, DataGridViewRowPostPaintEventArgs e) { if (e.RowIndex == 2) { int rowHeaderWidth = myGrid.RowHeadersVisible myGrid.RowHeadersWidth : 0; Rectangle rowBounds = new Rectangle( myGrid.RowHeadersWidth, e.RowBounds.Top, myGrid.Columns.GetColumnsWidth( DataGridViewElementStates.Visible) - myGrid.HorizontalScrollingOffset + 1, e.RowBounds.Height);
ControlPaint.DrawBorder(e.Graphics, rowBounds, Color.Red, ButtonBorderStyle.Solid); myGrid.Rows[e.RowIndex].DefaultCellStyle.BackColor = Color.BlanchedAlmond; } }
In C#:
![Page 4: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/4.jpg)
4 – Sybase ASE15 – August 27, 2010
讀者對Deborah Kurata‘s Blog文章的感謝
No Good ….
![Page 5: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/5.jpg)
5 – Sybase ASE15 – August 27, 2010
PowerBuilder Productivity: 你只需要一行
This.SelectRow(row, true)
…argument row is determined by PowerBuilder. No extra code!
In PowerScript:
![Page 6: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/6.jpg)
6 – Sybase ASE15 – August 27, 2010
PowerBuilder Productivity: Example
![Page 7: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/7.jpg)
7 – Sybase ASE15 – August 27, 2010
PowerBuilder Productivity: Example
![Page 8: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/8.jpg)
8 – Sybase ASE15 – August 27, 2010
PowerBuilder Productivity: 奇偶行不同色
If(Mod(GetRow(),2) = 1, 16777215, 25231232)
In DataWindow Expression:
![Page 9: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/9.jpg)
9 – Sybase ASE15 – August 27, 2010
PowerBuilder Productivity: Example
In WPF DataWindow Expression:
![Page 10: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/10.jpg)
10 – Sybase ASE15 – August 27, 2010
PowerBuilder Productivity: Example
In WPF DataWindow Expression:
![Page 11: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/11.jpg)
11 – Sybase ASE15 – August 27, 2010
PowerBuilder Goals and Strategy
• 目標
–開發資料庫應用程式最容易的開發工具
–讓 PowerBuilder 成為開發.NET應用最容易的開發工具
• 策略 –結合微軟平台和底層
–PowerBuilder 開發人員可使用PB技術來因應不同的需求,例如C/S、Web、N-Tier、Mobility…
–提供讓既有 Win 32 的程式,昇級或是搬移到.NET環境 –Sybase is the only vendor providing such a migration path
![Page 12: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/12.jpg)
12 – Sybase ASE15 – August 27, 2010
簡報大綱
PowerBuilder Roadmap
PowerBuilder WPF 及WCF功能
介紹
PowerScript enhancements
PowerBuilder 12新功能總結
![Page 13: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/13.jpg)
13 – Sybase ASE15 – August 27, 2010
簡報大綱
PowerBuilder Roadmap
PowerScript New Feature
PowerBuilder WPF 及WCF功能
介紹
PowerBuilder 12新功能總結
![Page 14: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/14.jpg)
14 – Sybase ASE15 – August 27, 2010
.NET Platform Support
Technology Differentiators
1H 10 2011 2012
Open Development
Easiest Application Development for .NET
• .NET language support – CTS
• WPF IDE
• WCF support
• RDBMS Support Updates, for Sybase, IBM, MS, Oracle, etc
• Web Services
•WPF DataWindow
• PB skills Managed code apps
• VS IDE inside PowerBuilder
• Develop Win32, Deploy WPF
WPF, Winform, Webform, Smart Client
• DataWindow and Entity Framework
• HTML 5
• Silverlight
•.NET Framework update
• .Enhanced WCF
•.NET 4
• VS 2010
• .PowerBuilder in the Cloud
• REST based web services
• Usability enhancements
•Refactoring support
•CVUO as assemblies
•Sharepoint support - DataWindow
• Win32 DataWindow Enhancements
• Mobile targets
PowerBuilder Roadmap
WPF Support
WCF Client Support
Managed Code Apps
Visual Studio IDE inside
![Page 15: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/15.jpg)
15 – Sybase ASE15 – August 27, 2010
What’s Next? Market trends to follow...
•MSOFT’s Silverlight Application Modernization
Private and public cloud
Virtualization
![Page 16: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/16.jpg)
16 – Sybase ASE15 – August 27, 2010
PowerBuilder 12 Features
![Page 17: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/17.jpg)
17 – Sybase ASE15 – August 27, 2010
PowerBuilder .NET
![Page 18: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/18.jpg)
18 – Sybase ASE15 – August 27, 2010
Based on the Visual Studio Isolated Shell
![Page 19: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/19.jpg)
19 – Sybase ASE15 – August 27, 2010
Create WPF Windows Applications
![Page 20: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/20.jpg)
20 – Sybase ASE15 – August 27, 2010
Deploy PowerBuilder NVOs as .NET Assemblies
![Page 21: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/21.jpg)
21 – Sybase ASE15 – August 27, 2010
Powerscript Language Enhancements
![Page 22: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/22.jpg)
22 – Sybase ASE15 – August 27, 2010
WCF Support for Consuming Web Services
![Page 23: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/23.jpg)
23 – Sybase ASE15 – August 27, 2010
PowerBuilder Classic
![Page 24: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/24.jpg)
24 – Sybase ASE15 – August 27, 2010
Win32 Applications
![Page 25: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/25.jpg)
25 – Sybase ASE15 – August 27, 2010
.NET Web Form Applications
![Page 26: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/26.jpg)
26 – Sybase ASE15 – August 27, 2010
.NET Windows Forms Applications
![Page 27: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/27.jpg)
27 – Sybase ASE15 – August 27, 2010
PowerBuilder NVOs as ASP .NET Web Services
![Page 28: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/28.jpg)
28 – Sybase ASE15 – August 27, 2010
簡報大綱
PowerBuilder Roadmap
PowerBuilder WPF 及WCF功能
介紹
PowerScript enhancements
PowerBuilder 12新功能總結
![Page 29: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/29.jpg)
29 – Sybase ASE15 – August 27, 2010
Windows Communication Service(WCF)
• WCF是微軟下一世代開發分散式應用程式的技術
• WCF可以利用Web Service與其它支援SOAP的不同平台進行溝通,例如:Java 2 / J2EE等。
• WCF提供低階非同步來處理早期非型別的訊息。而在最上層是更高階的服務,包含型別訊息,安全性訊息交換,穩定性訊息交換,交易訊息及佇列訊息
![Page 30: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/30.jpg)
30 – Sybase ASE15 – August 27, 2010 27-Aug-10 30
• WCF Client is an engine to be used (in PB12 WPF target) to consume several kinds of services: – ASMX Web Services – ASMX + WSE 3.0 Services – WCF Services
ASMX Web Services
ASMX Web Services + WSE
WCF Services (basicHttp, wsHttp, netTcp, REST)
WCF Engine 2
Web Service Engine (EasySoap, .NET Engine)
WCF Client Support
![Page 31: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/31.jpg)
31 – Sybase ASE15 – August 27, 2010
Windows Presentation Foundation
• WPF全名為Windows Presentation Foundation,是微軟力挺的下一代圖型操作介面技術
![Page 32: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/32.jpg)
32 – Sybase ASE15 – August 27, 2010
WPF Feature and Advantage
1. 支援硬體加速
2. 解析度獨立
3. 介面描述語言 (XAML)
4. 以物件為基礎的繪圖
5. 解除控制元件外觀限定
6. 統合2D/3D/影片
7. 時間軸為基礎影格動畫
8. 資料繫結
![Page 33: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/33.jpg)
33 – Sybase ASE15 – August 27, 2010
XAML and WPF is good, but …
• 了解 XAML 以及使用XAML不容易 – 在.NET Framework 3.0中扮演非常重要的角色 – 經常被使用於WPF 應用程式、Silverlight以及
WF(Windows Workflow Foundation)
• 使用WPF開發資料導向程式不容易 – 需透過XAML定義各種使用者介面的元件,諸如按鈕、表單或排版等等
– 需透過XAML繫結資料,如文字檔、多媒體影音 – WPF提供義事件驅動,如滑鼠點擊、滑鼠拖曳等等,但因為採用以XML為基礎的排版方式,設計變得更加開放但難度高
![Page 34: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/34.jpg)
34 – Sybase ASE15 – August 27, 2010
PowerBuilder .NET for WPF Development…and more…
Benefits for…
• WPF Application Targets
• .NET Assembly Targets
• .NET Web Service Targets
![Page 35: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/35.jpg)
35 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• An effective illustration that PowerBuilder, and the PowerBuilder Developer, are full .NET citizens...
...They are utilizing the same tools and the same “off the street” ...
– XAML
– Control Templates
– Skins
– 3rd party controls
...as non-PowerBuilder .NET developers
![Page 36: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/36.jpg)
36 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• XAML – XAML 是標籤語言XML的一種,用來建立複雜的WPF 使用者介面
![Page 37: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/37.jpg)
37 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• Control Templates
– Are described by a portion of XAML
– Act as “resource dictionaries”
– Specify to what kind of control they may be applied
– Alter the default appearance of the designated WPF control
![Page 38: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/38.jpg)
38 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• Control Templates – May certainly be used with controls in PowerBuilder
.NET in that they are derived from base WPF classes <pbwpf:CommandButton.Template> <ControlTemplate TargetType="{x:Type
pbwpf:CommandButton}"> <Grid Margin="5"> <Ellipse Stroke="DarkBlue" StrokeThickness="2"> ... </Ellipse> ... </Grid> </ControlTemplate> </pbwpf:CommandButton.Template>
![Page 39: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/39.jpg)
39 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• Control Templates (cont’d)
![Page 40: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/40.jpg)
40 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• Skins
– Are also declaratively developed in XAML – Can be statically or dynamically invoked – Have a wider scope than control templates – Alter appearance (as well as behavior!) of not just
controls or groups of controls, but for an entire application if you wish
![Page 41: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/41.jpg)
41 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• Skins (cont’d)
– May be used with WPF PowerBuilder applications after you... Develop them yourself Find those that are freely available Purchase those that are professionally developed
• “Off the street” skins will need to be slightly modified to utilize PowerBuilder WPF subclasses
![Page 42: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/42.jpg)
42 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• Skins (cont’d)
![Page 43: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/43.jpg)
43 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• Skins (cont’d)
![Page 44: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/44.jpg)
44 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• Skins (cont’d)
![Page 45: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/45.jpg)
45 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• 3rd Party WPF Controls
– May be used with WPF PowerBuilder applications after you... Use base WPF controls You or your teammates develop them in VS Find those that are freely available Purchase those that are professionally developed
![Page 46: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/46.jpg)
46 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• 3rd Party WPF Controls
![Page 47: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/47.jpg)
47 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• 3rd Party WPF Controls
![Page 48: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/48.jpg)
48 – Sybase ASE15 – August 27, 2010
PowerBuilder: A Full .NET Citizen
• 3rd Party WPF Controls
![Page 49: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/49.jpg)
49 – Sybase ASE15 – August 27, 2010
簡報大綱
PowerBuilder Roadmap
PowerBuilder WPF 及WCF功能
介紹
PowerScript enhancements
PowerBuilder 12新功能總結
![Page 50: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/50.jpg)
50 – Sybase ASE15 – August 27, 2010
Powerscript language enhancements
PrimitiveType Mapping
System.Object
Arrays
Parameterized Constructors
User-defined Enumerations
Properties & Indexers
Interfaces
Generics
Delegates
Namespace
Bitwise Operators
![Page 51: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/51.jpg)
51 – Sybase ASE15 – August 27, 2010
Primitive Type Mapping
![Page 52: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/52.jpg)
52 – Sybase ASE15 – August 27, 2010
System.Object
.NET root type PowerObject inherits from System.Object Any PowerBuilder type can assign to each other with
system.object System.Object o Int i = 1 o = i
.NET functions of System.Object can be invoked in PowerBuilder
PowerObject po po = create powerobject po.tostring()
![Page 53: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/53.jpg)
53 – Sybase ASE15 – August 27, 2010
Parameterized Constructors
Define parameterized constructor event for NVO E.g. global type nvo from nonvisualobject
event type long constructor(string s1, string s2)
end type
Create object with parameterized constructor event nvo nvo1 nvo1 = create(“s1”, “s2”)
![Page 54: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/54.jpg)
54 – Sybase ASE15 – August 27, 2010
Parameterized Constructors (Continued…)
Constructor events rules: Invoking ancestor’s constructor event must be the first statement of
descendant’s constructor event Super::EVENT constructor(“s1”, “s2)
Default constructor is defined, optional to invoke any ancestor’s constructor event
Default constructor is not but parameterized constructor events are, mandatory to invoke ancestor’s constructor event
![Page 55: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/55.jpg)
55 – Sybase ASE15 – August 27, 2010
User-defined Enumerations
Original PowerBuilder system-defined enumerations Encoding{EncodingANSI,EncodingUTF16E,EncodingUTF8,EncodingUTF16BE}
Global user-defined enumerations E.g. global type myenum enumerated
Item1, Item2 End type
Local user-defined enumerations in scriptable objects [NamespaceName.][enumerationName.]enumeratione
ntryName! E.g. myenum.item1!, encoding.encodingANSI!
![Page 56: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/56.jpg)
56 – Sybase ASE15 – August 27, 2010
Interfaces
Define interface E.g. global type myinterface from myinterfacebase
function string f(int i) int p[get,set] event type int e() string this[int i, int j][get,set] end type
Implement interface: Custom Class, Standard Class, Custom Visual, Standard Visual, Window, Menu
E.g. global type nvo from nvovisualobject, myinterface event type int myinterface.e() public int myinterface.p[get, set] public string myinterface.this[int i, int j][get,set] end type forward prototypes public function integer interface1.f1 (int i) public function int interface1.p_get () public subroutine interface1.p_set (int value) public function string interface1.this_get (int i, int j) public subroutine interface1.this_set (string value, int i, int j) end prototypes
![Page 57: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/57.jpg)
57 – Sybase ASE15 – August 27, 2010
Namespace
These objects can specify namespaces: Custom Class, Standard Class, Custom Visual, Standard Visual, Window, Menu, Structure, Function, Interface, and Enum
namspace namespace a.b using system.text end namespace
Two ways to identify a unique name Full qualified name, System.Collections.Generic.Dictionary<long, int> Use using directive
Namespace searching sequence Current namespace Identifiers without namespace Namespace specified in using directive
The searching sequence for a variable Argument or local variable Shared variable Global variable (follow searching sequence of namespace) Instance variable
![Page 58: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/58.jpg)
58 – Sybase ASE15 – August 27, 2010
簡報大綱
PowerBuilder Roadmap
PowerScript enhancements
PowerBuilder WPF 及WCF功能
介紹
PowerBuilder 12新功能總結
![Page 59: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/59.jpg)
59 – Sybase ASE15 – August 27, 2010
Summary... PowerBuilder: A Full .NET Citizen
• PowerBuilder is .NET
• PowerBuilder 提供 WPF Windows,是通往微軟下一代主流技術的捷徑,並且整合在VS Studio Shell下
• PowerScripts 增加了更多的物件導向語法,整合.NET 語言開發模型
• 同一個開發工具,可開發多個不同應用 – .NET – J2EE – Mobile – Pure Win32 Client/Server
![Page 60: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/60.jpg)
60 – Sybase Confidential – August 27, 2010
謝謝您的參與! 更多資訊請參考: http://www.sybase.com/products/modelingdevelopment/powerbuilder
![Page 61: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/61.jpg)
61 – Sybase Confidential – August 27, 2010
Tea Break
![Page 62: PowerBuilder 12 - · PDF file11 –Sybase ASE15 August 27, 2010 PowerBuilder Goals and Strategy •目標 –開發資料庫應用程式最容易的開發工具 –讓 PowerBuilder](https://reader034.vdocuments.net/reader034/viewer/2022042513/5ab7ab517f8b9ac10d8c0174/html5/thumbnails/62.jpg)
62 – Sybase Confidential – August 27, 2010