1 / 163

PowerBuilder Strategic Direction

PowerBuilder Strategic Direction. State of the Development Tools Market. 8,000 7,000 6,000 5,000 4,000 3 ,000 2,000 1,000 0. $ Millions. 2001 2002 2003 2004 2005 2006. 4GLs Web Professional Development Tools Software Construction Components.

dessa
Download Presentation

PowerBuilder Strategic Direction

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PowerBuilder Strategic Direction

  2. State of the Development Tools Market 8,000 7,000 6,000 5,000 4,000 3,000 2,000 1,000 0 $ Millions 2001 2002 2003 2004 2005 2006 4GLs Web Professional Development Tools Software Construction Components 3GLS Analysis/Model/ Design/ Construction Source: IDC, 2003

  3. Primary Approaches to Application Development Other 13% 4GL/RAD 3GLs 36% 23% OO 3GLs Source: IDC 28%

  4. The State of Application Development The primary focus in application development remains building or maintaining enterprise wide two-tier transactional applications using 4GL/RAD tools. Stephen D. Hendrick - IDC

  5. The State of Application Development N = 201, Source: IDC, 2002

  6. RMI WSDL COM XML J2EE HTTP .NET SSL JNI B2B TCP/IP CORBA How do we sort it all out?

  7. Priority: What Are the Strategic Application Development Initiatives for End Users? Rank each of the following strategic business initiatives Maintain/enhance existing applications Integrate internal applications Build, deploy, customize new applications Increase productivity of development process Build e-commerce solutions Integrate applications with external suppliers Build and deploy mobile/handheld applications Utilize open source solutions Integrate applications with online exchange 0% 20% 60% 80% 40% % responding “extremely” or “highly” likely Source: IDC, SW Strategies & Investment Survey, Final, Users, Fall 2001, n = 218

  8. Uses for PowerBuilder: Today and in the Future PowerBuilderToday 80% Client-Server Only Some Web Projects 17% Most Web Projects 3% PowerBuilderFuture 50% Client-Server Only Some Web Projects 42% Most Web Projects 8% Source: Novalys Inc.; 3,400 Respondents; 101 Countries

  9. What is Important to Your Organization Today? • Protect your existing technology investment • Stay current with industry trends and new technology • Gain a competitive advantage • Incorporate new technology into existing applications • Minimize costs • Protect your existing people investment • Utilize their existing skills • Give them a platform for the future

  10. Comprehensive Architecture You can build and generate many object models, communicate with standard protocols, and deploy to a variety of platforms. Process Model Web Services XML .NET Wireless Smart Client Component Model J2EE JSP Application Server(s) Thin Client Data Modeling DataWindow RAD Tools Database(s) Rich Client PowerBuilder PowerDesigner

  11. Sybase Development Vision To be the integrated development environment (IDE²) of choice for all application architectures

  12. Integrated Development Environment • Rich Client • Thin Client • Smart Client • Business Processes Supports Yields HighestApplication Productivity and Fastest Timeto Deploy

  13. Integrated Development Environment: Existing and New Applications PowerBuilder Reverse Engineering Heterogeneous Support 4GL+ Java, J2EE, Corba,C++, C#, VB.Net, Web Services, etc. ModelingTool Round-trip Engineering PowerBuilder Round-trip Engineering Relational DatabaseManagement System (RDBMS)

  14. Direction of Applications RAD Int. Environment Heterogeneous Integrated/ Strategic 3rd Generation 2nd Generation Stand Alone/ Operational 1st Generation Time

  15. Beyond 4GL 4GL+ Life-cycle Development and Heterogeneous EnvironmentSupport Development Productivity 4GL — VisualDevelopmentEnvironment (IDE) 3GL— ProgrammingLanguages Time

  16. PB and .Net - Phased Implementation 1 4 Simplified.NET Objects WebServices PowerBuilder 3 2 PB’s .NET Compiler DataWindow.NET& DataStore.NET

  17. PB and J2EE • PowerBuilder 8.0: • EAServer • EASI • Web Services Toolkit • PowerBuilder 9.0: • EJB Clients • PB Web Services • RAD Java Server Pages • Future: • NVO’s in 3rd Party Application Servers

  18. Development in Heterogeneous Environments • Web Services .NET • Accessing components in .NET framework in PB IDE • .NET Compiler • DataWindow.NET • DataStore.NET • Enhanced Web DW • 4GL JSP support • Build, access, and consume Web services • DataWindow XML • XML services • Access EJBs in major application servers • Deploy NVO’s directly to major application servers • Continue enhancing JSP authoring and XML capabilities J2EE 2004+ Today -> 2003

  19. Summary • Sybase pioneered 4GL and will continue to lead in application development through IDE2, giving you “Exponential Power” with the 4GL+ • Sybase is strongly committed to PowerBuilder; version 9.0 is available today and planning is underway for 9.5, 10.0 and beyond • Customer needs span from client-server to next-generation, to best development practices and PB will meet these requirements • Sybase will extend RAD for enterprise applications to RAD for mobile applications with Pocket PowerBuilder for handheld devices; release in Q3 2003

  20. PowerBuilder 9.0 New Features • RAD Java Server PagesTM (JSPTM) Authoring • XML (Extensible Markup Language) • DataWindow (Export and Import) • PB DOM (XML Parsing in PowerScript) • PowerBuilder Native Interface (PBNI) • EJB Client Support • Web Services Support

  21. RAD JSP Creating JSP Web Applications with PowerBuilder

  22. Introduction to JSP Technology • JSP is… • A technology for delivering dynamic content • Based upon Java Servlet technology • JavaServer Pages • Contain standard HTML • Can contain Custom tags • Can contain JSP elements • JSP Actions • JSP Directives • Scripting Elements • At run time, are compiled into Servlets

  23. JSP Authoring in PowerBuilder • New PowerBuilder Target Type (JSP Target) • Builds upon the existing Web Targets User Interface • New Wizard - JSP Target • Extensions to the Page Editor • System Tree Additions • Deployment Enhancements • EAServer’s JSP Container • Apache Tomcat • Command Line Deployment

  24. JSP Authoring in PowerBuilder 9.0 PowerBuilder 9 provides a powerful object model for: • Data transfer between the web client and the application server • HTML generation • JavaScript generation for server scripts

  25. JSP Authoring in PowerBuilder 9.0 • Wizard for: • Creating JSPs that call Web Services • WYSIWYG editing of JSP pages • Full access to the page source through the editor

  26. RAD JSP Seeing the Technology in Action

  27. XML DataWindow Importing and Exporting XML with the DataWindow

  28. Review of XML Extensible Markup Language • Extends the ability to represent data • Metadata language=tags and layout can be customized • Data can be hierarchically structured with nesting • Easily parsed across applications, platforms, enterprises, and Web for data interchange • World Wide Web Consortium (W3C) XML 1.0 Recommendation at http://www.w3.org/TR/REC-xml

  29. XML Document • Well-Formed if structure follows XML syntax rules • Contains one or more elements • Element is a tree/leaf containing start-tag, content, end-tag • Start-tag is a name, enclosed by angle brackets, with optional attributes • Attribute names must be unique for element; order insignificant • Attribute values must be quoted • One root; all element tags properly nested • Parsed element cannot contain recursive reference to itself • Valid if structure conforms to a DTD or Schema • DTD defines grammar for XML document • Subset can be internal or external

  30. XML Names and Entity References • XML Names • can only contain alphanumeric characters (also non-english, such as ä, ç etc.), _ Underscore, - Hyphen, . Period • have to start with letter or underscore • are case-sensitive • Predefined entity references cannot occur within element text content and have to be replaced • &lt replaces < (less-than sign) • &gt replaces > (greater-than sign) • &amp replaces & (ampersand) • &quot replaces '' (double quote) • &apos replaces ' (single quote)

  31. XML Document Example <?xml version="1.0" encoding="UTF-8"?> <tag_name>  root element <tag_name2 attribute="female"> <name> <emp_fname>Fran</emp_fname>  text content <emp_lname>Whitney</emp_lname> </name> <empty_element></empty_element>  empty element <another_empty_element/>  alternative notation </tag_name2> </tag_name>

  32. XML Parsing DOM Parser • DOM provides API access to XML tree model • Useful if manipulating or re-traversing the document SAX Parser • Event-driven • Useful if extracting data once in single traversal Core Interfaces Specified by W3C • Extensions denoted by ‘DOM Level 2’, ‘DOM Level 3’

  33. DataWindow Export/Import Template • Defines the mapping between values from a DataWindow and locations in an external document format, like XML • References can be: • DataWindow control values (text) • Text control • Column • Computed column • Computed field • Nested report • DataWindow Expressions (evaluated at runtime) • Data source column

  34. DataWindow Export/Import Template • References in Template are specific to a DW namespace • Template persists within DW definition in PBL & SRD as a dependent object • Multiple Templates may be defined & saved for a DW • Each Template must be uniquely named within a DW namespace • A Template is applied by name in the DW Painter or at runtime with the new DW property UseTemplate • Templates are used for DW data export, data import, or both

  35. Methods to Export XML Data DataWindow Painter File…Save Rows As… menu item Save as type: XML

  36. Methods to Export XML Data SaveAs method integer dwcontrol.SaveAs ( string filename, saveastype saveastype, boolean colheading ) SaveAsType

  37. DataWindow Properties in PowerScript Data.XML String containing DataWindow data exported in XML. PowerBuilder dot notation: dw_control.Object.DataWindow.Data.XML Describe argument: “DataWindow.Data.XML”

  38. DataWindow Properties in PowerScript Data.XMLSchema String containing XML Schema generated from Template. PowerBuilder dot notation: dw_control.Object.DataWindow.Data.XMLSchema Describe argument: “DataWindow.Data.XMLSchema”

  39. DataWindow Properties in PowerScript Data.XMLDTD String containing DTD generated from Template. PowerBuilder dot notation: dw_control.Object.DataWindow.Data.XMLDTD Describe argument: “DataWindow.Data.XMLDTD”

  40. Importing XML Data into DataWindow • Analogous to XML export • DataWindow Import methods enhanced • XML Default Import (No XML Template is assigned) • Assumes coincident column data in XML document • XML Template Import • Piggybacks off same XML Template as for export to interpret logical structure and DataWindow mapping of XML document to import • Internally uses SAX parser for performance

  41. DataWindow XML Default Import Import without Import.XML.UseTemplate specified: • XML document data (element text content) has to correspond to DataWindow column definition • XML elementtextcontent is imported in order of occurrence within XML document • Element tag names and all other content of the XML document are ignored • XML nesting within the document is disregarded

  42. Empty Elements in XML Default Import • Empty elements are assumed to be empty values and imported as such into the DataWindow column • An element that contains only space, carriage return, new line or tab characters is treated as an empty element • An element that contains no text content, but any other content, e.g. a child element or comment, is not parsed as an element, empty or otherwise, and will be skipped for import

  43. Example XML Default Import XML Document: <?xml version="1.0" encoding="UTF-8"?> <employee_list> <employee dept_id="100"> <emp_id>102</emp_id> <manager></manager>  empty element <name> <emp_fname>Fran</emp_fname> <emp_lname>Whitney</emp_lname> </name> </employee> </employee_list> Column Import into DataWindow: Column 1 Column 2 Column 3 Column 4 102FranWhitney

  44. Advantages of an XML Import Template • XML document structure doesn’t have to match DataWindow columns • Order of elements within XML doesn’t have to reflect DataWindow column order • Attribute values can be imported

  45. DataWindow XML Import Template • Import Template needs to be created in DataWindow painter XML Template View • Template for export may be reused for import • Import.XML.UseTemplate property needs to be setin DataWindow painter or programmatically

  46. XML Import Template • Defines mappings between XML element and attribute names of the XML document and DataWindow column names • Reflects nesting level where element and/or attribute import items can be located within the XML document

  47. XML Import Template • If “Starts Detail” marker exists, element and attribute contents above this marker line are ignored

  48. XML Import Template • If “Starts Detail” marker does not exist, all element and attribute mappings within the template are used for import • Other information within the Template (controls, comments, etc.) is ignored

  49. PowerScript XML Parsing/Validation • Parsing/validation of XML document in PowerScript • can determine whether XML document is wellformed • complies to W3C XML specification • can determine whether XML document is valid • also matches a given grammar (DTD or XMLSchema) • uses Apache Xerces SAX http://xml.apache.org/xerces-c/index.html • needs PBXerces90.dll and Xerces-C_1_5_1.dll in the path

More Related