Pocket PowerBuilder Features (Microsoft PowerPoint Slide Show)
Download
Report
Transcript Pocket PowerBuilder Features (Microsoft PowerPoint Slide Show)
Pocket PowerBuilder Features
Pocket PowerBuilder Features
Don Clayton – Intertech Consulting, Inc.
[email protected]
Agenda
Mobile Computing Landscape
Pocket PowerBuilder Key Features
Developing Applications with Pocket PowerBuilder
Related Technologies
Summary
Additional Resources
m-Business Applications
Consumer
Stock trading
Remote banking
Mobile portfolio management
Directory & location services
Self-service kiosk systems
Infotainment
Business
- Sales force automation
- Insurance adjustor
- Dispatch, track & trace
- Inspection, compliance
- Warehouse, pick and pack
- Retail, POS
- Hospitality
- Healthcare
- Defense
Mobile Application Architecture
Mobile Application Architectures
Smart Client vs. Thin Client
Smart Client
Some business logic resides
within the client
Logic updates require client
redistribution
Thin Client
•
All business logic is invoked from
a server
•
Logic updates can occur without
client redistribution
•
Online processing only
•
Synchronization is not required to
ensure fresh data
Offline processing
Synchronization required for
data integration
Agenda
Mobile Computing Landscape
Pocket PowerBuilder Key Features
Developing Applications with Pocket PowerBuilder
Related Technologies
Summary
Additional Resources
Pocket PB Overview
First conceived and proposed to Sybase as an ISUG Enhancement
Request
Early prototypes targeted Palm platform
Lack of GUI context moved development to Pocket PC
Provides RAD 4GL in an environment PB developers are already
familiar with
Leverages existing knowledge, business rules, and development
Pocket PowerBuilder Key Features
Productive 4GL IDE
DataWindow control
Supports complete development cycle
Rich component set
Visual development with minimal coding
Single component providing sophisticated data representation
Built in SQL for selects, updates, inserts and deletes
Tight integration with SQL Anywhere Studio
Easily develop mobile ‘smart client’ applications with ASA
Integration with MobiLink for data synchronization
Pocket PowerBuilder Key Features
Productive 4GL Environment
Component
Palette
Preview
Window
Debug
Information
Property
Inspector
Pocket PowerBuilder Key Features
Pocket PowerBuilder Key Features
Productive 4GL Environment
Complements PowerBuilder for Windows CE deployments
Based on core PowerBuilder 9 IDE
Similar look and feel, but separate IDE
Ability to export PB projects and import them into PocketBuilder
Rich Set of components
Command Button
Picture Button
CheckBox
Radio Button
Static Text
List View
Tree View
List Box
DropDown List Box
Edit
Mask
Single Line Edit
MultiLine Edit
Progress Bar
Scroll Bars
Line
Oval
Rectangle
Tabs
and many, many more!
No PFC!
Differences from PB
Unsupported Features
MDI Applications
EAServer Connections
Web and JSP Targets
Automation Server
Unsupported
Functions
OLE
DDE
CORBA
Printing
Rich Text
Among others
New File Extensions
PKW – Workspace
PKT – Target
PKL – Library
PKD – Runtime Library
PKR – Resource File
New Wizards
Pocket PowerBuilder IDE
Import desktop to CE
Export CE to desktop
Migrates Pocket PowerBuilder libraries to PowerBuilder 9.0 format
New libraries copied to same directory as old libraries with .PBL extension
MobiLink Synchronization for ASA
Migrates PowerBuilder libraries to Pocket PowerBuilder format
New libraries copied to same directory as old libraries with .PKL extension
Generates objects for launching MobiLink synchronization from remote client
Optional window to change dbmlsync runtime arguments
Sync User and Subscription Maintenance
Available in PPB 1.01
Generates objects to maintain synchronization user and subscriptions
in a remote ASA database
Main/Response Windows
Main Windows
Show Soft Input Panel (SIP) Checkbox
Close (OK)
Smart Minimize (X)
Response Windows
No Menu Bar
No Smart Minimize
DataWindow Control
DataWindow Control
Advanced control for displaying and manipulating data
Available in many formats
Freeform
Graph
Grid
Group
Tabular
Reuse existing DataWindows with minimal effort
SQL Anywhere Integration
Adaptive Server Anywhere mobile database
Uses full data storage capabilities of Adaptive Server Anywhere on Windows
CE client
Database access via ODBC
MobiLink data synchronization
MobiLink bi-directional data synchronization used to integrate with other
enterprise databases (Sybase ASE and ASA, Oracle, MS SQL Server, IBM
DB2)
New component to manage synchronization properties
WinCE Fun With External Function Calls…
New Window Types
Popup Calendar and INK
Window Class:
"SysMonthCal32"
Window Class:
"InkX"
WinCE Fun With External Function Calls…
New Window Types
Custom Window Types
In PocketBuilder use…
hwnd = uf_createwindow("SysMonthCal32", Handle(this))
The local function…
public function unsignedlong uf_createwindow(string classname,
unsignedlong hwndparent)
// Create a window of the specified classname
// as a child of the specified window.
return = CreateWindowEx_CE( 0, ClassName, "", &
WS_BORDER + WS_CHILD + WS_VISIBLE, &
0,0,0,0, &
hwndParent, 0, 0, 0 )
End Function
Refer to PPB “Samples\misc\reeds_tests.pkt”
Agenda
Mobile Computing Landscape
Pocket PowerBuilder Key Features
Developing Applications with Pocket PowerBuilder
Related Technologies
Summary
Additional Resources
Developing an Application
4 Main Steps
1.
Application Design
2.
Application Development
3.
Application Testing
4.
Application Deployment
Application Design
Good UI is very important
More important than on the desktop?
Handheld <> desktop
No keyboard
Small screen
Platform differences
How do you squeeze lots of information onto a small screen?
Tab controls, menus, etc.
Iterative development
Keep application logic separate from GUI!
This helps when porting to other platforms
Application Development
Familiar IDE for PowerBuilder Developers
Most development is visual
PowerBuilder Objects can be imported into Pocket PowerBuilder
Pocket PowerBuilder objects can be imported into PowerBuilder
Drag and drop components and database access
Development Platforms
Windows 2000
Windows XP
Application Testing
Testing can occur in three ways:
1.
On the Desktop
Does not use the same VM, therefore not accurate representation of device
Good for quick testing early on
2.
On a device Emulator
Uses Windows CE VM, but not for the same chipset as physical device
Pocket PC 2002 Emulator is decent
3.
On the device itself
Best way to determine if application will work correctly at deployment
Can also test network connectivity at this point
Developing an Application
Test EVERY part of your application:
Device
Application
Network(s)
Synchronization
Integration with back-end
…
Project Painter
Deployment Options *
CE Device (ARM only)
PPC 2000 Emulator
PPC 2002 Emulator
Desktop
Build CAB File
Version Information – Desktop only
•Recommend using device with Remote observer application
Application Deployment
Pocket PC applications are often distributed as CAB files
Pocket PC SDK comes with ‘cabwiz’ which is a utility to package
applications into self installing CAB files
Deployment techniques are being researched by Pocket PowerBuilder team
Deployment to multiple devices in remote locations can be
facilitated by application deployment and management
software
Packaging and Deployment
Overview
Generate a CAB file
Generate a “setup” program
Single package
Single Platform: “my_app.ARM.CAB”
Installed and Uninstalled
Basic level of User Deployment
The “my_setup.exe” which does everything.
Multiple CAB Files
Multiple Platforms
May Contain PK*.DLL redistributable files too
Easiest level for final customer
Pocket PB Helps You – Project Painter
Package For Deploy (CAB)
CAB file
Project Painter –
CheckBox: “Build CAB File for Distribution”
Generates “inf” file and runs “CabWiz” from Microsoft.
INF file is an ASCII text file
We leave the INF file and the BAT file around for your modification
Compatible with PPC-2003 standards
Uses Installation Directories
Uses Version Information fields
Company Name “Provider Name”
Product Name “Application Name”
Description comment in header
Copyright comment in header
Version comment in header
Developing an Application
PocketBuilder applications can be run on the mobile device in two
ways:
1)
Using the ‘stub’ application that is installed into the Pocket PC start menu as
Pocket PowerBuilder 1.0
2) By clicking directly on the application .exe (which is put into the ..\windows
directory by default)
Deployment Platforms
ARM based Pocket PC devices
This covers all devices coming out with Pocket PC 2002
operating systems
MIPS, SH3 chipsets are not supported as device manufacturers have all but
stopped making these devices
Application Architecture
Device
Enterprise
Sample
Application)
Pocket
PowerBuilder
Virtual
Machine
MobiLink
ASA
ML
TCP/IP
HTTP
HTTPS
ActiveSync
(wired or wireless)
Consolidated
Database
(Sybase/Oracle/
Microsoft/IBM)
Agenda
Mobile Computing Landscape
Pocket PowerBuilder Key Features
Developing Applications with Pocket PowerBuilder
Related Technologies
Summary
Additional Resources
Adaptive Server Anywhere (ASA)
Enterprise Features for mobile devices
Standard SQL interface
Stored procedures and triggers
Transaction processing
Row-level locking for referential integrity
Scheduling and event handling
Multiple Platform Support
Wintel platforms – Win95/98/ME, NT, 2000, CE
Novell Netware
Unix – Solaris, Linux, HP-UX, AIX, Solaris x86
Database (DSN) Connections
DSN File on Pocket PC
Copied to root directory of Pocket PC
Open Main Window, then connect to DB (use post event)
Only Sybase SQL Anywhere supported currently
MobiLink
A two-way synchronization technology for large scale mobile
database deployment
Remote database (mobile, embedded, or workgroup database server)
Consolidated database (enterprise, workgroup, or desktop database)
A server that processes synchronization requests from remote
databases
Synchronization Streams
Pocket PC: TCP/IP, HTTP, ActiveSync
128-bit strong encryption of synchronization stream supported using Certicom
TLS
MobiLink Design Goals
Heterogeneous consolidated database
Scalable and robust (tens of thousands)
Manageable in large deployments
Support handheld and wireless devices
Flexible
Pocket PowerBuilder Synchronization Wizard
MobiLink Synchronization in a Flash!
Develop a client/server application to start…
…Then add Synchronization using the Synchronization
Wizard!
Pocket PowerBuilder Synchronization Wizard
The MobiLink Synchronization Wizard handles ALL aspects
of enterprise database synchronization
Remote database connection
Publications for synchronization
Synchronization server connection information
Synchronization client options
User interface generation
Everything that the Wizard generates if fully modifiable later
on by the application developer!
Manage Anywhere Studio
Automated central software distribution
Support mission-critical mobile environment
Self-healing configurations
Remote control – reach out and help somebody
Security management
Including file distribution and collection
Complete device-level hardware and software inventory
Keep virus protection, OS up to date
Guard against unauthorized software, configuration
Optimized for mobile, remote, embedded
Simple for administrator and end-user
Offline operation, suspend & resume, minimal bandwidth use
Manage desktops, laptops, PDAs
Pocket PC Emulators
Pocket PC 2000 Emulator
Pocket PC 2002 Emulator
Easy to set up and use
Does not give accurate representation of device
Many ‘bugs’
Setup is more complex
More accurate in terms of device emulation
Both emulators can be downloaded from Microsoft Website
Recommend using PPC 2002 emulator
Pocket PC Power Toys
Set of applications to increase productivity of Pocket PC
development
http://www.microsoft.com/mobile/pocketpc/downloads/powertoys.asp
Most useful of these tools is the Remote Display Control
This utility allows you to view your physical device on your PC screen
Provides data entry for on-device testing
Agenda
Mobile Computing Landscape
Pocket PowerBuilder Key Features
Developing Applications with Pocket PowerBuilder
Related Technologies
Summary
Additional Resources
Summary
Pocket PowerBuilder provides the features that are required to develop enterprise
smart client applications
PowerBuilder users can use their existing skills and application code to develop
Windows CE applications
Windows CE applications are similar, but yet quite different than desktop applications,
so design your applications accordingly
There are many related technologies available for developers to increase the
sophistication of their applications, and their productivity at the same time
Summary Tips
Always think ahead
Don't forget about your current development practices
Use the devices and the networks to learn them
Don't forget about security
Figure out what part(s) of your application make sense for the device
A good UI is very, very important
Use a local data store
Additional Resources
Pocket PowerBuilder
www.sybase.com/pocketpb
SQL Anywhere Studio
Manage Anywhere Studio
www.ianywhere.com/manageanywherestudio
Mobile and Wireless Design Essentials
www.ianywhere.com/sqlanywhere
www.amazon.com/mallick
Microsoft Pocket PC Info
www.microsoft.com/pocketpc
Pocket PowerBuilder Overview