POWERBUILDER TRAINING 

 

PART 1. INTRODUCTION

 

DAY 1

Introduction

  • PB IDE
  • Event-driven programming with windows, menu, visual objects
  • DB connection

DataWindow

  • SQL and Stored Procedure data sources
  • Server-side vs client-side operations
  • Computed fields
  • Master/Detail DW
  • Presentation styles
  • DataStore
  • Static/Dynamic dataobject binding 
  • GetFullState and SetFullstate
  • Dynamic DW
  • Delete and Filter buffers
  • ShareData

OO Programming

–     Inheritance, Encapsulation, Polymorphism

PB project upgrade

–     Migration from older versions and discontinued features

 

DAY 2

Development tools

  • PB Debugger
  • Runtime
  • PBD vs DLL
  • Resource file
  • Package Manager

User Objects 

  • Static/Dynamic creation

Generate powerful Graphs in PB

PB Shared Objects

  • Multi-threaded programing

Build the application

–      PBAutoBuild utility and its configuration

 

PART 2. INTERMEDIATE

 

DAY 3

PDF Support

  • Native generation of PDF document
  • Custom document properties
  • Set user/master password
  • Restriction on printing, saving and manipulation

PB Security

  • Data Encoding: HEX, Base64, Base32, URL
  • Data Encryption: Symmetry and Asymmetric
  • Data Hashing: MD5, SHA, HMAC
  • Data Compression and Extraction

UI Themes

  • Style Sheets for entire application
  • Style Sheets for specific objects
  • Custom Style Sheets

RibbonBar

  • RibbonBar Builder
  • RibbonBar changes from code
  • Event handling

 

DAY 4

XML manipulation

  • DW techniques and PBDOM library

Cloud programming: HTTP and REST

  • Background knowledge
  • HTTP Protocol
  • REST vs SOAP
  • JSON vs XML

HTTPClient object

  • Access Web URL
  • Access REST Web Service
  • Access SOAP Web Service

JSON manipulation 

  • Export/Import JSON from DW 
  • JSONParser 
  • JSONGenerator
  • JSONPackage

RESTClient object

  • HTTP operations from DataWindow
  • Restful services

.NET DLL Importer

  • Why and when loading .NET DLL
  • Build custom C# DLL and load in PB

 

DAY 5

TabbedView support for MDI window

Autocomplete for DDDW & DDLB

Native email support (SMTP Client)

PDF Builder

RichTextEdit control

OpenURL function

Web Browser Control

  • A powerful Preview tool

Source control

  • GIT vs SVN
  • GIT usage from PB
  • Connect to Workspace
  •   Add to Source Control
  •   Git Commit, Push, Pull, Revert
  •   Branches
  •   More options

 

 

PART 3. ADVANCED

 

DAY 6

SnapDevelop IDE

REST API

  • Understanding MVC architecture
  • C# Datastore and C# Data Model
  • Controller Scaffolding
  • Service Scaffolding
  • Swagger

Make your API Restful

  • GET, POST, PUT, DELETE endpoints

Deployment

  • Local server
  • MS IIS and WebDeploy
  • Remote platforms

 

DAY 7

Secure the API

  • JWT Authentication
  • OAuth 2.0

Asynchronous programming

Development Tools and Techniques

  • PowerScript to C# Generator

 

DAY 8

SnapObject ORM components

  • SQLGenerator
  • SQLExecutor

SQLModelMapper

  • .NET Datastore limitations
  • Nested models
  • Understanding Transactions
  • Tracking DB changes
  • Code Examples

 

DAY 9

PowerServer framework

  • Design Installable Cloud App (ICA)
  • Setup
  • Frontend and backend separation
  • DB connection pooling
  • Dynamic vs Static DB cache binding
  • Unsupported PB features 
  • Deploy SalesDemo app
  • Security

 

DAY 10

PowerClient architecture

  • Setup and deployment

PBAutoBuild

  • Build and deploy automation

Advanced Graphs

  • Apache ECharts

REST API advanced deployment

  • Web Deploy
  • Docker

 

DAY 11

PB 2025

–      New compiler and solution

–      Modern code editor

–      Converting MDI Menu to RibbonBar

–      New .NET DataStore project

–      Secure Connection Encryptor

–      Support high DPI and multiple display monitor

–      Connecting with PostgreSQL via ADO.NET driver

–      Upgrading to .NET

–      SMTPClient authentication type

–      DataWindow enhancement

–      Miscellanea

 

 

PART 4. Design of Web/Mobile UI

 

DAY 12-14

Design of Modern UI using Vue.JS for calling C# REST APIs

SPA and PWA

Environment Setup

–         Vue.JS and Node.JS

–         Quasar and Material Design

Frontend Design

–         Components

–         Layout and pages

–         Vue Router

–         Wireframing

RESTboard library

iOS and Android packaging

  • Capacitor runtime
  • App store and Play store