Presenter
Armeen Mazda, CEO, Appeon
Presenter
Donald Clayton, President, Intertech Consulting, Inc.
Presenter
Armeen Mazda, CEO, Appeon
Presenter
Armeen Mazda, CEO, Appeon
Presenter
Torsten Matschull, Director of Development, CTS EVENTIM Solutions GmbH
Presenter
Julie Jiang, Product Manager, Appeon
Presenter
Tom Mills, Senior System Architect, Foundation Software
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
Presenter
Marco Meoni, Appeon MVP, PBWink
Learn how to utilize the new UI Themes introduced with PowerBuilder 2019 to give your applications a more modern look. Topics covered include: the basics of how themes work, how to customize themes and create your own, what UI control properties can and cannot be themed in the current release of the theming functionality, tips on working within these constraints, and some coding solutions you can use to further extend the built-in functionality.
Presenter
Tom Mills, Senior System Architect, Foundation Software
Learn how to create a Web API and use it in a real life scenario. Topics covered include the Generation of the C# model for the DataWindows and the creation of the Web API using the .NET DataStore. We will go through the implementation of the Controllers and the Services to demostrate how your current experience with PB DataStores will make it easier to understand this new technology. In the real life example, we will attach a QR code to the sole of a Shoe, so when a customer enters the Store by simply reading this code using a mobile device, he will get the inventory and all the product information.
Presenter
FILIBERTO SOSA, CHIEF SOFTWARE ARCHITECT CSA, SIZES AND COLORS MEXICO
Learn the basis of the C# language from PowerBuilder developers' perspective. Topics covered include a gentle introduction to the C# language in simple steps. The session analyzes a number of code snippets with the aim of simplifying the understanding of the new breakthrough PB C# Web API. It shows how C# code is wrapped into classes and what are the common differences with PB syntax. It outlines pitfalls and caveats that are usually encountered while moving the first steps into C# Web API and the SnapDevelop IDE.
Presenter
Marco Meoni, Appeon MVP, PBWink
Learn how to port PowerBuilder apps to C# easily. Use technology best practices along the way. Topics covered include: separate the business logic from the UI; develop the basic components of the .NET Core C# Web API; Port the PowerBuilder business logic.
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
Learn how the SnapDevelop Framework can serve as a replacement for various middle-tier technologies and how to add SnapDevelop incrementally to your two-tier PowerBuilder system. Topics covered include: developing enterprise-class web services using the SnapDevelop framework, and adding the ability to incrementally migrate functionality from the existing stack to the new stack using location transparency and various PowerBuilder techniques; unit testing in SnapDevelop, source control with Bitbucket and continuous integration with Jenkins.
Presenter
Thomas Rolseth, Senior Developer, Intertech
Learn the general migration process including best practices of migrating a large existing PowerScript target to a C# Web API enabled solution. Topics covered include: how to optimize existing Powerscript code before starting the migration, how to set up a deployment pipeline for the new C# solution, how to migrate existing code to C#, how to reuse database access logic (DataStores & embedded SQL), how to take advantage of the additional opportunities provided by the C# language, how to avoid or solve some common pitfalls, and how to make sure that the new solution works as expected.
Presenter
Torsten Matschull, Director of Development, CTS EVENTIM Solutions GmbH
Learn how to develop custom PowerBuilder IDE wizards using PowerScript. Topics covered include: how the wizard system works; how to create your own wizards using PowerScript; and how to integrate them into the IDE.
Presenter
Roland Smith, Software Developer, Jenzabar
Learn how to leverage the UI Theme feature of PowerBuilder 2019 to modernize the application. Topics covered include: how to use the built-in themes, how to create themes of your own, and how to deploy themes with your application.
Presenter
Bruce Armstrong, Senior Developer, Integrated Data Services
Learn how to use Rich Text presentation style DataWindows and RichTextEdit controls along with metadata tables to construct a self-contained, user-editable document template editor, adding mail merge capabilities to your PowerBuilder application. Topics covered include: Rich Text presentation style DataWindow; RichTextEdit control; saving metadata to the database; saving and retrieving BLOB data.
Presenter
Ronnie Po, Developer, Morpheon
Learn how to prepare for automated migration to C# by partitioning non-visual or business logic and encapsulating it within PowerBuilder NVOs. Topics covered include: understanding the architecture with server-side NVOs; identifying what needs to be partitioned; reducing server calls by partitioning the appropriate business logic.
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
Learn how to create Web/IWA apps as well as iOS/Android native apps with PowerServer. Topics covered include: a step-by-step hands-on tutorial; configuring PowerServer and deploying to the Web and Mobile platforms a PowerBuilder application that performs DataWindow manipulation and generates native PDF reports; understanding how to work with DBs using both static and dynamic connection caches; understanding what relationship exists between Appeon data sources and PowerBuilder transactions objects; how to master the PowerServer AEM for runtime tweaks and performance optimization.
Presenter
Marco Meoni, Appeon MVP, PBWink
Learn the basics to develop C# Web Services using the PowerBuilder C# IDE. Topics covered include: creating a basic REST web service and securing that web service using JWT; using those web services from PowerBuilder.
Presenter
Bruce Armstrong, Senior Developer, Integrated Data Services
Learn how to migrate existing PowerScript NVOs to C# using technology best practices and application techniques. Topics covered include: looking at the bigger picture before the migration; creating a migration plan; migrating code to the service; migrating code to the controller.
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
Learn how to work with Azure DevOps (ADO) using the native interface of PowerBuilder 2019. Topics covered include: how to set up the environment, integrate the PowerBuilder IDE, build, test, and deploy with CI/CD.
Presenter
Curtis Hanner, Senior PowerBuilder Developer, City of Seattle
Learn how to develop a modern, “skinnable” toolbar substitute for desktop or Web deployment utilizing the application’s existing menu objects, while gaining full control over the new toolbar’s fonts, image sizes, and background appearance. Topics covered include: choosing optimal images and image formats to use in your PowerBuilder project; recursively reading a menu and sub-menu items at runtime to determine the specifications for a toolbar; utilizing dynamic DataWindow techniques to construct a modern replacement toolbar which is substituted for the traditional toolbar at runtime; implementing interactive elements such as rollover effects in the substitute toolbars.
Presenter
Ronnie Po, Developer, Morpheon
Learn about various new PowerScript functionalities added to PowerBuilder 2019. Topics covered include: changes to the RichTextEdit Control, the newly added objects (CompressorObject and ExtractorObjects), 64-bit enhancements, and standalone compiler enhancements.
Presenter
Bruce Armstrong, Senior Developer, Integrated Data Services
Learn how to perform advanced transaction management by tracking actions with SqlModelMapper. Topics covered include: typical usage scenarios when you need to track actions; using the SaveContext; putting it all together.
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
The Datawindow poses problems for testers attempting to develop test automation against a PowerBuilder application. Zeenyx has developed a very robust testing solution for PowerBuilder. The Datawindow is recognized regardless of its presentation style (Form, Grid, Group, Tabular), including the controls (PbCheckBox, PbPopupTable, PbTextField, etc.) that are contained in the rows and columns. This presentation will concentrate on AscentialTest's table support including the selector which makes it easy to locate a row in a table based on a target value. Participants will learn how a suite of automated tests can be developed for PowerBuilder in a drag and drop interface that does not require programming experience.Topics covered include: how to define PowerBuilder application objects in AscentialTest for automated testing; how to create and use a selector to select a row and column from a datawindow during the execution of an automated test; how to build robust tests for a PowerBuilder application through drag and drop and how to manage the test execution process using AscentialTest.
Presenter
Brian Le Suer, CEO, Zeenyx Software, Inc
Learn how to build and deploy your Web APIs to Docker. You can then select the Cloud platform of your choice (Google, AWS, Azure, etc...) to create your microservice architecture. Topics covered include: prepare your project for deployment; selecting the right architecture for deployment; Docker deployment tasks; taking your projects to the next step.
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
Learn various modern development techniques in the PowerBuilder C# IDE. Topics covered include: how to create and do unit testing against C# Web APIs; how to create and access NuGet packages.
Presenter
Bruce Armstrong, Senior Developer, Integrated Data Services
Learn how to extend the standard PowerBuilder features for Web and Mobile deployment with PowerServer workaround API. Topics covered include: understanding how to keep one codebase and structure your project to dynamically detect the runtime environment, and run different code accordingly; using the built-in mobile features like camera, barcode, geolocation and maps; the Appeon File Service for server-side file management.
Presenter
Marco Meoni, Appeon MVP, PBWink
Learn how to perform xUnit Tests while doing Test Driven Development using PowerBuilder 2019 C# IDE. Topics covered include: what is test driven development; leveraging unit tests for TDD; creating the xUnit Test project; perform tests to actual code.
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
Learn how to leverage ASP.NET MVC to efficiently develop Web APIs. Topics covered include: what happens behind the scenes, how to control the system using code decorators, and how to leverage the naming conventions.
Presenter
Michael Kramer, PowerBuilder Evangelist, Kramer's Lean Software
Learn how to create Master-Detail-Detail relationship nested models with SqlModelMapper. Topics covered include: master multi-level cascading for dependent models; cardinality types of the nested models; performing CRUD operations with nested models.
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
Learn about the enhancements for the RESTClient in PowerBuilder 2019. Topics covered include: new functions (RetrieveOne, Submit, SentGetRequest, SendPostRequest, etc.), changes to existing functions (SetRequestHeader), new capabilities (JWT, GZip), and modified functionality (OAuth).
Presenter
Bruce Armstrong, Senior Developer, Integrated Data Services
Learn how to consume SOAP/XML Web Service via the new PowerBuilder HTTP APIs. Topics covered review the legacy support to SOAP/XML Web Service (WS) via the Sybase .NET engine. The session recaps the steps for creating a SOAP/XML WS and consuming this WS via proxy or datawindow objects. It highlights the limitations of this implementation and describes how to overcome known shortcomings by leveraging the new HTTPClient object and lightening the runtime environment.
Presenter
Marco Meoni, Appeon MVP, PBWink
Learn how to manage transactions, for popular relational databases, using SqlModelMapper. Topics covered include: how to use the DataContext; implicit vs. explicit transactions; extending the functionalities of transaction management.
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
Learn tips & tricks to improve your PowerScript code. Topics covered include: how to handle errors, improve the performance & code quality, and how to integrate with external components like Web APIs or OLE automation.
Presenter
Michael Kramer, PowerBuilder Evangelist, Kramer's Lean Software
Learn about the new Web Browser control and how you can use it in your application. Topics covered include: the supported functions and events and what the capabilities are.
Presenter
Roland Smith, Software Developer, Jenzabar
Learn how to use the new RibbonBar control of PowerBuilder 2019 R2 to elevate the visual and improve user productivity. Topics covered include: overview of key features of the RibbonBar control; using PowerScript to create and manipulate the control; tips n' tricks for improving user productivity.
Presenter
Matthew Balent, Programmer Analyst, Concentra
Learn the techniques of how to share ancestor between DataWindow, DataStore and DataWindowChild. Topics covered include: a review of situations where you need to share the same exact code to run on DataWindows/DataStores/DataWindowChilds, a review of how to work around problems in each case, and a review of how to construct a user object that provides the functionality of common ancestor object without most of the drawbacks of using dynamic keyword or if/then statements.
Presenter
Mike Searer, Consultant, SBT
Learn how to implement two-factor authentication for PowerBuilder applications. Topics covered include: what is two-factor authentication, how Google two-factor authentication works, how to generate the QR code image on the server side, how to generate the pin code on the client side, and how to validate the pin code.
Presenter
Bruce Armstrong, Senior Developer, Integrated Data Services
Summary Migrating a PowerBuilder application to newer technologies, but remaining on the PowerBuilder platform, can be a complex process involving many unknown issues. This session will examine some of the potential pitfalls and share examples of how to plan and overcome them. Various utility programs and a migration toolkit will be demonstrated to assist in the process. Architectural, structural, and user experience issues will be addressed along with a 'view from the trenches'. Presented by Matt Balent, PowerBuilder MVP and PowerBuilder programmer since version 5. Abstract As time has passed and technology continually moves forward, many organizations have faced the need to migrate older PowerBuilder applications onto newer platforms to meet business needs. Typical scenarios can involve achieving financial goals, improving productivity, movement to common platforms, and improving the user experience. Often conflicting, unclear, and/or unrealistic goals are established and the process is further hampered by lackluster organizational support for the project. Having a complete picture of the project tasks is often not possible but with some knowledge of common pitfalls and issues to be addressed a better idea of the scope can be achieved. We will focus on identification of issues and tasks, estimation of effort, risk management, and achieving a happy medium for these projects. Just to be clear, this session will address migration projects with the intention of remaining on the PowerBuilder platform. Although many ideas shared can be applied to moving off of PowerBuilder, this is not the intent or end goal of this session. Discussion and examples of migrating to newer versions of PowerBuilder, newer versions of Microsoft Windows, user experience upgrades, and database migrations will be presented. Database information will favor Microsoft SQL Server and Sybase ASE. Utility programs and a PowerBuilder migration 'toolkit' will be used in many of the examples. Topics for discussion. Database updates Improving User Experience / Interface Entropy Code - Yes it's twenty-file year old code once written by a twenty-five year old. The Six Hundred Stored Procedure Dilemma Mass Datawindow Object Updates Digging the Ditch - Getting It Done Voices from Beyond - Oh, I didn't think about THAT...
Presenter
Matthew Balent, Programmer Analyst, Concentra
Learn how to build a map app from the ground up by leveraging the new features provided in PowerBuilder 2019. Topics covered include: how to embed a map (OpenStreetMap) in the PowerScript client, how to call the Web APIs provided by OpenStreetMap, and how to do the app-to-app integration. Relevant design principles, design patters, and performance considerations are also covered.
Presenter
Michael Kramer, PowerBuilder Evangelist, Kramer's Lean Software
Learn how to leverage PowerServer for moving your PB applications to Web and Mobile architectures with little effort. Topics covered explain how PowerScript is converted into Javascript, how complex business logic may need robust and scalable server-side components, and how the new PB C# Web API feature offers the perfect scenario for supplementing large PowerServer-enabled applications with full fledged .NET Core and C# REST API. The session includes step-by-step guideline to C# data model, service and controller components for creating scalable REST API, and compares performance of CRUD operations via PowerServer builtin datawindow management versus REST API called from RESTClient object.
Presenter
Marco Meoni, Appeon MVP, PBWink
Learn about the JSON related enhancement in PowerBuilder 2019. Topics covered include: new features in the JSONParsser, JSONPackager, and DataWindow/DataObjects.
Presenter
Bruce Armstrong, Senior Developer, Integrated Data Services
Learn how to quicly build mobile apps using a self-developed PowerBuilder framework. Topics covered include common issues experienced in mobile app design and development like integrating Animated Menus and adding google charts. Also you will learn how to make your UI responsive when objects are added dinamically to your app.
Presenter
FILIBERTO SOSA, CHIEF SOFTWARE ARCHITECT CSA, SIZES AND COLORS MEXICO
Learn how to use SqlExecutor to run raw SQL as well as automatically-generated SQL statements. Topics covered include: executing SQL SELECT/UPDATE/DELETE statements; executing stored procedures; executing SQL cursors.
Presenter
Govinda Lopez, Appeon Technology Evangelist, Appeon
Learn how to develop modern secure apps containing PowerScript clients, Web APIs, and external components. Topics covered include: how to implement security features like impersonation, roles, encryption, etc., how to adjust your logic in order to support secure login, how you can do this with different databases, how to minimize risk of password being hacked from system memory, how to avoid problems caused by network delays in the new architecture, how to handle unstable networks, and how to get trustworthy user identity. Less relevant topics in client/server require deliberate attention.
Presenter
Michael Kramer, PowerBuilder Evangelist, Kramer's Lean Software
Learn the Basics of Report Definition Language (RDL) and SQL Server Reporting Services (SSRS) as an alternative to DataWindow reports. This session shows how to create RDL-Reports, integrate them into Desktop, Web, and Mobile Apps and manage your RDL-Reports by using SSRS from practice. Topics covered include: Basics of RDL and SSRS, Advantages and Options of RDL-Reports, Client-Side and Server-Side Reporting, Integration of RDL-Reports into your Apps (Desktop/Web/Mobile), and Exploring the new SSRS REST APIs and managing Reports in SSRS.
Presenter
Heino Hellmers, CEO / Gschäftsführer, S&F Datentechnik GmbH & Co. KG
Learn how to do static code analysis of PowerScript code with SonarQube. Topics covered include: how to set up an extension to analyze code written in Powerscript, how to define custom based rules to explain code, how to integrate this process into a build pipeline, the general benefits of static code analysis provided by SonarQube and shows how to take advantage of this tool while maintaining your existing code and also for preparing it for a migration to the new C# Web API target.
Presenter
Uwe Lappöhn, Software Architect, CTS EVENTIM Solutions GmbH
Learn how to convert a legacy PowerBuilder application to a robust modern Web-based application for cloud deployment with PowerServer. Topics covered include: preparing your legacy app for conversion; easy tips on how to update the user interface to give an existing app a more modern look; converting document management system into a fully cloud-based solution; understanding how to take Word, Excel, DataWindows, images, and PDFs to merge into a single PDF that can be emailed or transferred to a file system or Website.
Presenter
Sue Brown, Manager of Software Development, Pharmacy First
Learn how to simply use Windows, DataWindows, and other native objects (without 3rd party DLLs) to create a modern and user-friendly UI framework for your desktop, web, and mobile PowerBuilder applications. You will see live real-word application demo and get to take home the source code of this modern UI framework. Topics covered include: using simple DataWindow expression to design interactive UI, how timer object can be useful to create animation effect, and how to apply a color theme for your UI that works with all versions of PowerBuilder.
Presenter
Zulkifli Machmur, Freelance, Freelance
Learn techniques to make your applications more attractive and better to use. Topics covered include: understanding the basics about UX quality with PowerBuilder, how to work around PowerBuilder limitations to make a better UX, and how to use the new UI Theme feature of PowerBuilder 2019.
Presenter
Georg Brodbeck, Software Developer, Informaticon
Learn a productive way to migrate your existing PowerScript applications to C# by using .NET Core framework, the .NET DataStore object, and a modern UI. Topics covered include: a methodical approach to define the Web API starting from your PowerScript code, with step-by-step instructions and a case study, real-life PowerScript-to-C# conversion techniques, UI/UX paradigms to understand what can be done to overhaul the old UI, and how to connect the Web API and the new UI (practical examples).
Presenter
Gian Luca De Bonis, CEO/CTO, Enable Development OÜ
Learn the new features introduced in the upcoming PowerServer 2020 Web and Mobile. Topics covered include the new REST features with code examples about how to authenticate using OAuth 2.0, perform DW retrieve and update against REST Web API, handle complex JSON resultset and merge multiple DW for faster network performance. The session also shows how to perform encryption, digital signing, and encoding of data for secure transfer between PowerServer client and server. It additionally presents how to compress and decompress filesystem objects or data streams in many formats.
Presenter
Marco Meoni, Appeon MVP, PBWink
In this session, Appeon MVP Kevin Ridley will share with you how to call Dropbox REST APIs from PowerBuilder. You will learn how to set up a service account in Dropbox, generate an OAuth2 access token, use Files/ListFolder API to show a directory view of folders and files, drill into folders to see contents, download selected files using Files/Download API, as well as upload selected file using Files/Upload API. Kevin will also demonstrate how to use the new PowerBuilder features OAuthClient, JSONGenerator, JSONParser, DW.ImportJSON to integrate with Dropbox using the REST standard.
Presenter
Kevin Ridley, Managing Partner, Aomega Solutions LLC
Learn hard-won lessons from developing a RESTful API with JSON and the new HTTPClient object. Topics covered include: how to create HTTP header and body, how to use JSON generation, parsing, and validation, and how to include binary attachments with practical examples using Appeon 2017 R3.
Presenter
Jeff Wayt, President, IOBar, Inc
Learn a technique that leverages the DataWindows of different types to create complicated reports and books of stories as a set of the same stories that run against different sets of input parameters but has one long output. Topics covered include: decomposition of a requested report into a set of the predefined types, usually Tabular ones; creation of a separate DataWindow object for each of them and finally to combine all of them into one DataWindow object of Composite type, and dynamic creation of composite DataWindows with all its sub-reports in a loop through the sets of input parameters. I will discuss the problems that arise during the implementation of this approach in client/server and web PowerBuilder application and how to solve them.
Presenter
George Mikhailovsky, Principal Systems Analyst, CALIBRE