What's New in Version 11

Description

Welcome to Alpha Five Version 11! If you thought we added a ton of functionality in Versions 10 and 10.5 plus the Feature Packs, you may have to recalibrate your notion of what defines a "ton of functionality".

The good news is that all that new functionality vastly expands what you can accomplish with Alpha Five, improves your developer productivity, improves the appearance and polish of your applications, and increases their run-time speed. The bad news is that all that new functionality is also new to you, so you'll have to spend some time exploring, learning, and practicing.

Meanwhile, to go with the ton of new functionality, we've written a ton of documentation, developed a ton of samples, and recorded a ton of videos. After you've been through all that, you'll find a ton of helpful notes and links right in the development environment.

Overview

All the functionality listed below in the Contents section is a lot to go through, so let's organize it for you a bit.

 Videos

 Desktop

  • An improved Quick Report Genie and a new Layout Table report allow the easy generation of reports in HTML and Excel. This includes the ability to create Linked Reports, which are even more useful than subreports.

  • Xbasic is now more powerful. Among other improvements, it has support for the .NET Framework and a more powerful Class syntax that supports data hiding.

  • Xdialog has been improved, with the biggest changes being the ability to incorporate HTML, Tabbed UIs, and Page Layouts into Xdialog windows to make stunning looking dialogs.

  • We have integrated Charts and added a Chart API. You can create charts based on .NET Framework charting. You can use integrated charts as a Component that also runs on the desktop, in Reports, and on desktop Forms.

  • A new Excel API allows you to directly create Excel files from Xbasic. This facility is utilized by the new Layout Table report.

  • We now give you the ability to use more Web components on the desktop. You can use Tabbed UIs, Page Layouts, the new Dialog component, and several other components in Desktop applications, not just Grid components. See Web Components that run on the desktop V11.

  • We support Geographic databases in a portable way, and have added a Google Map component. You can link a Google Map to a row in a Grid, use it as a Geographic Search control for a Grid, and display the geographic and other information from many rows of a Grid on a Map Alternate View. All of this works on the desktop as well as the Web.

 Web

  • Xbasic is now more powerful. Among other improvements, it has support for the .NET Framework and a more powerful Class syntax that supports data hiding.

  • The Application Server has been made faster and more robust, and the process of making it compatible with Microsoft IIS at the API level has begun.

  • We have a new, vastly improved Style Builder and new, attractive Web component styles that take full advantage of CSS (Cascading Style Sheets) 3.

  • We support Geographic databases in a portable way, and have added a Google Map component. You can link a Google Map to a row in a Grid, use it as a Geographic Search control for a Grid, and display the geographic and other information from many rows of a Grid on a Map Alternate View.

  • An improved Quick Report Genie and a new Layout Table report allow the easy generation of reports in HTML and Excel. This includes the ability to create Linked Reports, which are even more useful than subreports.

  • We have integrated Charts and added a Chart API. You can create charts based on .NET Framework charting. You can use integrated charts as a Component, in Reports, and on desktop Forms.

  • We have a powerful new high-performance Dialog Component that supports repeating sections and optional Genie-assisted data binding.

  • We have a Video Player Component for HTML 5 and YouTube videos, an HTML 5 Image Gallery Component and a Calendar component.

  • We have Custom and User-defined Components that allow anyone with HTML, JavaScript, and Xbasic skills to write a component within a pre-defined framework that can easily integrate with Grids, Tabbed UIs, and other Alpha Five Components.

  • Our components now support iPhones, iPads, some Android phones and tablets, and some other mobile hardware with HTML 5/CSS 3 web browsers. As of July 15, 2011, iPhones and iPads are fully tested; only a few Android phones and tablets with Android 2.2 and later have been tested; other devices will be tested later in the development cycle. In the case of the Grid, there is support for multiple named layouts, so that the designer can optimize the Grid's appearance for a PC, a smart phone, and a tablet separately as part of a single Grid definition. There is also support for various mobile device capabilities, such as touch interfaces and geolocation, with iOS devices fully tested and some late-model Android devices tested.

Contents

  • Road Map V11

  • Illustrated Overview V11

    • Illustrated Desktop Overview V11

    • Illustrated Web Overview V11

  • Breaking Changes V11

    • Active Scripting Internet Explorer 9 CSS3 V11

    • Xbasic - DIMMing Variables V11

  • Mobile Device Support V11

    • Components for Mobile Use V11

    • Grid Navigation - New Option - 'Fetch More Records' Button V11

    • Grid Scrolling V11

    • Grid Mobile Styles V11

    • Grid Named Layouts V11

    • Tabbed UI Component Mobile Devices V11

  • .NET Framework Support in Alpha Five V11

    • DotNet::AssemblyReference

    • DotNet::Services

      • CreateObject Method

      • CallStaticFunction Method

      • ConstructGenericTypeName Method

      • GetStaticProperty Method

      • SetStaticProperty Method

      • RegisterClass Method

      • RegisterAssembly Method

      • RegisterNamespace Method

      • GenerateWebServiceClientFromURL Method

      • GenerateWebServiceClientFromWSDL Method

    • Preloaded .NET Classes V11

    • Full list of preloaded .NET Classes V11

    • Writing Xbasic wrapper classes for .NET classes V11

    • DotNetPath Function

    • DotNet Examples V11

      • DotNet Example: Using System.Text.StringBuilder

      • DotNet Example: Using a Private Assembly

      • DotNet Example: Speech Synthesis

      • DotNet Example: Big Integers

      • DotNet Example: Complex Numbers

      • DotNet Example: Matrix Manipulation

      • DotNet Example: Image metadata class

      • DotNet Example: Digital Hash

      • DotNet Example: Serial IO

      • DotNet Example: Send an email

      • DotNet Example: Working with Enumerated Types

  • Generate Excel Spreadsheets Programmatically V11

    • Office::ExcelDocument

    • Office::Excel2003Document

    • Office::Spreadsheet

    • Office::Format

    • Office::Font

    • Office Enumerations

    • How to perform common spreadsheet operations

    • Office Example: Hello, World spreadsheet

    • Office Example: Simple Weekly sales spreadsheet

    • Office Example: Multiple spreadsheets

    • Office Example: Spreadsheet from SQL query

    • Office Example: Spreadsheet from DBF tables

    • Office Example: Spreadsheet with picture

    • Office Example: Update a spreadsheet

  • Xbasic with Classes V11

    • Xbasic Class Syntax V11

    • Designing an Xbasic Class V11

    • Implementing an Xbasic Class V11

    • Testing and Using an Xbasic Class V11

    • Subclasses and Inheritance V11

    • Classes in Namespaces V11

  • Web Projects Control Panel Enhancements V11

    • Restore Component from Backup V11

    • Revised New Web Component Dialog V11

    • Web Application Repository V11

    • Work Queue V11

    • Application Global Variables Web Project Properties V11

    • Project Style Web Project Properties V11

    • Web Projects Control Panel - Recently Selected Projects Button V11

    • Web Projects Control Panel - Filter V11

    • Help Topics for Controls - Project Help Table V11

    • PDF Printing via Microsoft XPS Printer Driver Web Project Properties V11

      • Could not open OLE object cdintfex.document

    • Video Finder V11

  • New Web Components V11

    • Ajax Dialog and Data Binding V11

      • New Dialog Component V11

        • Simple Dialog Example V11

        • Saving Dialog Contents to a DBF V11

        • Saving Dialog Contents to a SQL Database V11

        • Sending Dialog Contents via Email V11

        • Parent-Child Dialog Example V11

        • Genie-Style Dialog Example V11

      • Genies for the UX Component

      • Server-side Action Scripting V11

      • Dialog Component Referencing Session Variables on the Client Side V11

      • Dialog Component Setting Values in Controls Optimizing for Setting a Large Number of Controls V11

      • Videos for New Dialog Component V11

      • Videos for Dialog Component - Managing Data in the Security Framework V11

      • Calendar Control in a Dialog Component V11

      • Slider Control in a Dialog Component V11

      • Power Search for Grid using a Dialog Component V11

      • Live Linked Embedded Grids in a Dialog V11

      • Record Navigation and Dialog Search V11

      • Dialog Component Power Search for Embedded Report V11

      • Dialog Component Advanced Tab Control V11

      • Dialog Component Tree View Easier to Associate Container Ends with their Start Entry V11

    • Google Map Component V11

    • Calendar Component V11

    • Video Player Component V11

    • Image Gallery Component V11

    • Chart Component V11

    • Report Component V11

    • Custom Components V11

    • Using the Custom Component JavaScript Class V11

    • Creating a Custom Component V11

    • Custom Component Sections and Events V11

    • Sharing and Using a Custom Component V11

    • User-defined Components V11

      • When to turn a Custom Component into a User-defined Component V11

      • Creating a User-defined Component V11

      • Creating a Property Grid for a User-defined Component V11

      • Sharing and Using a User-defined Component V11

  • Web Grid Enhancements V11

    • Web Grid Alternate Views V11

      • Google Map Alternate View V11

      • Chart Alternate View V11

      • Custom Alternate View V11

      • Grid Component - New Server Side Grid Events for stored procedures V11

      • Grid Components - Stored Procedures - Multiple Resultsets V11

    • Improved Web Grid Code Editing V11

    • Web Grid Miscellaneous Enhancements V11

      • Date and Time Fields - Date Picker V11

      • Row Expander - 'Auto Refresh On Expand' Property V11

      • Row Expander - Row Expand Method V11

      • Making the Grid Behave Like an Accordion V11

      • Row Expander and Linked Content Section V11

      • HTML Memo Editor - Popup Mode V11

      • Validate Grid Data V11

      • Lookups and Detail View - Window Position V11

      • Detail View - New Options for Detail View Position V11

      • Control Javascript V11

      • Checkboxes and RadioButtons - Columnar Layout V11

      • Grid Components - Native SQL V11

      • Grid Component - Edit-combo Box V11

      • Linked Javascript Files - Load Sequencing Issues - object.loadJavascriptFile Method V11

      • Search Highlighting V11

      • Grid Component - New Property - Maximum Number of Records Per Page V11

      • Grid Component - New Property - Rows of Data when Search Active V11

      • Grid.Object.refresh Method V11

      • Action Javascript Improvements V11

      • Grid - Fixed Column Widths V11

      • Geography Fields in the Grid - Searching V11

      • Grid Component - Dynamic Images - Image Sequences V11

      • Grid Component Showing SQL Query Statements V11

      • Grid Component Row Expander Animation V11

      • Grid Component Tab and Accordion Controls Animation V11

      • Grid Component Detail View Animation V11

      • Grid Component Search Part Save and Load Search Criteria V11

      • Grid Component Summary Fields Styling Summary Values V11

      • Grid Component Builder Setting Default Properties V11

      • Grid Component Search Part Initial Value V11

      • Grid Component Search Part Query By Form Operator Exceptions V11

      • Grid Component Client Side Events CanRowExpand Event V11

      • Grid Component Form Layout Snaking Columns V11

      • Dynamic Filtering Lookup Grids, Edit-combo Boxes, Auto-suggest Controls V11

      • How to Dynamically Set the Client-side Mask V11

      • How to Dynamically Change the Number of New Record Rows Shown in a Grid V11

      • Grid, Dialog and Custom Components Storing state information V11

      • Grid and Dialog Component Date Picker V11

      • Grid and Dialog Component Time Picker V11

      • Grid and Dialog Component Edit-Combo Control Filter Method for Required Selection property V11

      • Grid and Dialog Component Auto-suggest Contains V11

      • Grid and Dialog Component Edit-combo and Auto-suggest Control Multiple Values V11

      • Grid and Dialog Components Smart Fields Container Inline Style Property V11

      • Grid and Dialog Component Client-side Show-Hide Expressions Animation V11

      • Grid and Dialog Control activateControlContainer Method V11

      • Grid Component Tree Control Navigator Refresh V11

      • Grid Component Client Side Events afterRowPopulate event V11

      • Grid Component Client-side Events 'canNewRowsShow' event V11

      • Grid Component Client-side Events 'canRowSwitchToEditable' event New Parameter 'newRecordRowVisible' V11

      • How a Grid in a Tabbed UI Pane can invoke Methods on a Grid in another Tabbed UI Pane V11

      • Grid Component Group Breaks V11

      • Method for Grid, Dialog and Custom Component to Close Window in which Component is Hosted V11

      • How to Call a Dialog Component from a Grid and Pass Information from the Dialog Back to the Grid V11

      • Grid Search Part Free Form Search Layou V11

      • Grid Search Part Use Icons for 'Search' and 'Clear Search' buttons V11

      • Grid CurrentGridFilter and CurrentGridOrder Special Functions V11

      • Grid Component OnGridInitialize and onGridExecute Methods e.ajaxCallback Property V11

      • Grid Component Linked Grids Getting a Pointer to a Linked Grid V11

      • Grid and Dialog Component - Background Grid Lines V11

      • Grid Component Tree Control Navigator Custom Query Option V11

      • Open Grid in Pop-up Window Center Internet Explorer Form Style Grid V11

      • Grid Checkbox Select Column V11

      • Power Search of a Grid V11

      • Grid Component Dialog Component Data Binding SQL Tables V11

      • Grid and Dialog Component Control Label V11

      • Grid Component Row Expander Server side Show Hide Expression V11

    • Web Grid Videos V11

  • Tabbed UI and Page Layout Component Enhancements V11

    • Tabbed UI and Page Layout Component Builders V11

    • Tabbed UI and Page Layout Component Animation V11

    • Tabbed UI and Page Layout Builder - Working Preview V11

    • TabbedUI and PageLayout Components - Hosting new Component Types V11

    • Dynamically Recalculating the Page Layout, Tabbed UI and Dialog Component at Run-time V11

    • Tabbed UI Component Tree Control V11

    • Tabbed UI Home Page Auto-refresh Property V11

    • Tabbed UI Bubble Help V11

    • Tabbed UI Component Collapse Button Pane V11

    • TabbedUI Object Method to Select the Active Pane V11

    • Tabbed UI Auto-launch on Startup V11

    • Tabbed UI Component Hide Tab Buttons Property V11

    • PageLayout Components - Nesting V11

    • Tabbed UI Component Auto-Launch on Startup Initial Pane Focus V11

  • JQuery Support V11

    • Grid and Dialog Component jQuery Date Picker V11

  • Charts V11

    • Chart Control V11

    • Chart API V11

    • Chart Styles V11

  • New in Xdialog V11

    • HtmlHost Xdialog command

      • HtmlHost Example 1: Hosting Xdialog Controls

      • HtmlHost Example 2: Vertical Sizer

      • HtmlHost Example 3: Horizontal Sizer

      • HtmlHost Example 4: Creating htmlhost with Horizontal and Vertical Sizers

      • HtmlHost Example 5: Dynamically styled Html (a5:style tag)

    • Support for Hotspots on Images V11

    • Xbasic methods for the HTML and HTMLHOST Xdialog Commands V11

    • Tabbed UI and Page Layout Components in Xdialog Windows V11

    • Xdialog Simplified ListView Syntax Fonts V11

    • Using Charts in Xdialogs V11

    • Xdialog Tree Control Custom Colors for Tree Items V11

  • New on the Desktop V11

    • Quick Import Form or Browse V11

    • Longer DBF Records V11

    • Using Charts on Forms V11

    • Web Components that run on the desktop V11

    • Form Editor Control Library V11

    • View Settings Browse Vertical Scroll Bar V11

  • New Xbasic Functions and Methods V11

    • TextToSpeech Function

    • hmac_hash Function

    • A5ws_GetCurrentUser Function

    • a5ws_RevalidatePassword Function

    • a5ws_ChangeLoggedInUserPassword Function

    • a5ws_randompassword Function

    • replace_placeholders_with_argument_values Function

    • replace_arguments_in_string Function

    • geocode_address Function

    • OVER_QUERY_LIMIT error

    • UI_HOTSPOT_FROM_MAP Function

    • ui_hotspot_get Function

    • Table.SQL_Open Method

    • Table.SQL_Reset Method

    • find_duplicate_lines Function

    • a5w_SaveToWebAppRepository Function

    • a5w_GetFromWebAppRepository Function

    • a5w_enumerateWebAppRepository Function

    • a5w_DeleteFromWebAppRepository Function

    • email_send_noprofile Function

    • a5_getWebProjectProperties Function

    • a5w_SaveToWorkQueue Function

    • a5w_ReadFromWorkQueue Function

    • a5w_UpdateWorkQueue Function

    • a5w_DeleteFromWorkQueue Function

    • ComponentGuid Function

    • a5_chart_data_url_generate Function

    • a5wcb_createDialogUsingXbasic Function

    • a5_genericTableCRUDAction Function

    • a5_exif_getLatLon Function

    • a5_exif_getIphoneFormattedData Function

    • THREAD.traceMapping Property

    • argVal Function

    • XPS_to_PDF Function

    • a5ws_GetGroupsDialog Function

    • variable_exists Function

    • *variable_to_script Function

    • *html_to_text Function

    • *if_error Function

    • html_stritran Function

    • html_strtran Function

    • a5_json_extractvalues Function

    • a5_JSON_PopulateArray Function

    • a5_mergeDataIntoTemplate Function

    • *parent_report_pagecount Function

    • js_escape Function

    • js_unescape Function

    • a5_html_label Function

    • template_to_expression Function

    • international_months Function

    • international_days_of_week Function

  • New JavaScript Methods V11

  • New in Reporting V11

    • The Quick Report Genie V11

    • Layout Table Reports V11

      • Converting a Quick Report to a Layout Table Report V11

      • Editing a Layout Table Report V11

      • Using a Layout Table Report V11

      • Layout Table Report Example: Customer List

    • Linked Reports V11

    • Embedding Charts in Reports V11

    • PDF Printing Amyuni Printer Driver Version 4.5 V11

  • New CSS Style Builder V11

  • Server Enhancements V11

    • Server Programming Changes V11

    • Application Server Functionality Changes for V11

    • Storing Files In Sessions V11

    • Replacing Response.Add_Cookie in V11

    • Replacing Response.Add_Header in V11

    • New Security Setting Server cache lifetime V11

    • How to make User-Defined Functions Available to a Web Application V11

    • How to run two server instances on the same hostname

    • Application Server - Internet Explorer - Adobe Acrobat - PDF Files V11

  • Feature Packs Incorporated into V11

  • Working with Version Control V11

  • Geographic Databases V11

    • Changes to SQL Objects for Geometry V11

    • Portable SQL Functions for Geographies V11

    • Common Geography Database Tasks V11

    • Database-specific Geography Tasks V11

    • DB2-specific Geography Tasks V11

    • MySQL-specific Geography Tasks V11

    • Oracle-specific Geography Tasks V11

    • PostgreSQL-specific Geography Tasks V11

    • SQL Server-specific Geography Tasks V11

    • SQL Geography Examples V11

    • How to bulk geocode addresses in a database V11

    • Working with SqlTypes V11

  • SQL Database Snapshots V11

    • SQL::DatabaseSnapshot Example: Selected Tables

    • SQL::TableSnapshot Example: A Single Table

    • SQL::TableSnapshot Example: Scripting the Load

    • SQL::DatabaseSnapshot Object

    • SQL::TableSnapshot Object

    • SQL::RowSnapshot Object

    • SQL::ColumnValue Object

    • SQL::DatabaseSnapshot Event Scripts and Snapshot Functions

  • Miscellaneous Improvements V11

    • AlphaDAO MySQL Transactions V11

    • AlphaDAO New ResultSet StreamingMode Property V11

    • AlphaDAO - ListTables and ListTablesWithTypes Methods V11

    • SQL Server connection string dialog help V11

    • Scope_Identity in SQL Server with nested and INSTEAD OF triggers

    • Oracle Client Installation

    • Ajax Windows V11

    • User-defined Error Codes V11

    • Search Scripts and Functions Command V11

    • Wiki Search Assistant

    • Navigation Component - On Initialize Javascript Property V11

    • Navigation System Component Server side Show Hide Expression V11

    • SQL::Arguments Object Array V11