49
Getting Started Starts at 14:00 CEST (07:00 EST) with

Getting started with Formspider

  • Upload
    gerger

  • View
    4.306

  • Download
    0

Embed Size (px)

Citation preview

Getting Started

Starts at 14:00 CEST (07:00 EST)

with

• Formspider Basics

• About the Company• About Formspider

• Let’s Build an App!

Yalim K. Gerger

Software EngineerFounder

About Gerger

- International Worldwide recognition with Formspider. Customers in 26 Countries.

- Local Recognised by the Turkish Government as an R&D company. Founding member of Turkey Oracle User Group.

- Basics Founded in 2005. Released Formspider Beta in February 2011. Formspider 1.0 in May 2012

What Happened in 2015?

• Customers in 26 countries Germany, UK, Netherlands, France, Greece, USA, Canada, UAE, Argentina, Brazil, Peru, Latvia, Russia, Indonesia…

• Forms Modernisation Rollouts

• 50+ Companies use Formspider• Hundreds of Developers

• Our Customers Love Us! :-)

Who Uses Formspider?

• Freelancers / IT Consulting Firms Oracle Professionals who want to differentiate their service offering

• IT Departments Oracle Database customers with significant investment in PL/SQL or Oracle Forms

• Independent Software Vendors (ISV’s) Companies with products built with PL/SQL or Oracle Forms

Customer SpotlightTEAM GmbH rebuilt their flagship application ProStore (intralogistics and warehouse management) with Formspider

Same development team.

From Oracle Forms to Single Page Web Application running in the Cloud in a year. (>400 Forms)

Did you watch the demo? Watch the Demo

Works on desktops, laptops, iPads and other tablets.

(Formerly ING Insurance). Turkey. Agency Portal, Forms Modernisation.

Turkish Telco. Logistics Reports.

Dutch Branch. Forms Modernisation of Logistics ERP.

Czech Republic .Logistics ERP

Azerbaijan. Core Banking

Germany. Warehouse Management System.

USA. Global manufacturer of equipment used in product assembly

Argentina. Government of Rio Negro. Forms Modernisation.

Peru. Financial Systems

United Kingdom

Lithuania

Italy

Turkey. Campaign Management.

Greece

France CyprusGermany

Azerbaijan

Italy

New Features in Formspider 1.9

New Themes» Modern, flat design

» Different color schemes

» Easy to customise

Stateful Database Connections

Stateful Database Connection

• An Oracle Forms application uses one database session while it is running

• Web Applications pick a database connection from a pool of connections. So each time the application executes a piece of code, it might be using a different database session

• Most Oracle Forms Applications are developed assuming a single session during execution. For example, they take advantage of package globals.

• Formspider 1.9 supports stateful connections to the database

• Prevents opening unnecessary sessions

• Avoids unauthorised stateful connections

• One line of code

• Makes Oracle Forms migration a lot easier

Stateful Database Connection

• Can switch between two modes

ROWID Support for DML

ROWID Support For DML

• Issue DML to Datasources with Multi-Column Primary Keys

• One CheckBox

• Can be used with Datasources which have a single column Primary Key

Dynamic Where Clauses

Dynamic Where Clauses

• where (value_nr=:bindvar1 or :bindvar is null) and (order_nr=:bindvar2 or :bindvar2 is null) and…

• This is suboptimal

• Ignores bind values with null values and automatically generates the correct where clause with optimal performance

• Mix and match predicates, change where clause structure

search screen wizard

Search Panel Wizard

• Easily create a beautiful fully functional search screen

• Wizard generates both code and UI

• Integrated with dynamic where clauses to generate the optimum SQL

• Configurable

• Dynamic Where Clauses

• Beautiful New Themes

• Stateful Database Connections

• Search Panel Wizard

Formspider 1.9 New Features

• ROWID Support for DML

Version 1.9 is Available Now

Built-in Multi Browser Support

Scales instantly with Oracle RAC

Cloud Ready

Formspider streams applications

Built-in Performance Best Practices

Built-in Security Best Practices

Built-in Authorisation and Authentication

Built-in Support for 9 out of the 10 most common security vulnerabilities

Git Integration for Version Control

Both UI and PL/SQL is managed in Git

Branching, Automatic Merge, Team Development

100% PL/SQL

100% PL/SQL

Git Integration for Version Control

Both UI and PL/SQL is managed in Git

Branching, Automatic Merge, Team Development

Built-in Performance Best Practices

Built-in Security Best Practices Built-in Authorisation and Authentication

Built-in Support for 9 out of the 10 most common vulnerabilities

Formspider streams applications

Scales instantly with Oracle RACCloud Ready

Built-in Multi Browser SupportDynamic Where Clauses

Beautiful New Themes

Stateful Database Connections

Search Panel Wizard

Getting Started with Formspider

• Disclosure: I can’t show everyone in the audience exactly what they want. No time for that.

• If I explain everything at a very high level, then you will learn nothing.

• So, I’ll go over the most important stuff and we’ll make out feet wet, too.

• If I go deep in one issue, you will get bored.

The Easiest Way to Learn Formspider

• Freelancers / IT Consulting Firms Find a customer you can bill if you build an application with Formspider.

• IT Department Employees Have an application to build with an approaching deadline.

• Independent Software Vendors (ISV’s) Lose sales, customers because of your ageing product.

Curriculum

• How does it work? Formspider Architecture. The application life cycle.

• Hello World Introduction to the Formspider IDE.

• Introduction to Formspider Objects » Windows » Panels » Layouts » Components » Actions » Datasource Definitions&Datasources

• Let’s build a small Application

• Formspider PL/SQL API’s

FS Engine FS Middle Tier FS JavaScript Library- Listens to user input - Draws the screen - Sends user input back to the server

- Keeps a virtual copy of the app instance - Receives events&updates - Execute events, runs PL/SQL code (FS API’s) - Sends screens&commands

- Facilitates communication - Stores file assets such as CSS, icons etc...

How does Formspider work?

Formspider IDE

• Formspider IDE is built with Formspider IDE.

Formspider Objects - Mainframe

• Formspider Objects Containers »Windows – Mainframe

1. Starting point of a Formspider application 2. There can only be one in an application 3. Can only contain Panels 4. Uses a Layout Manager to place Panels in its

content area

Formspider Objects - Dialogs

• Formspider Objects Containers »Windows – Mainframe – Dialogs1. There can be many in one application 2. Can only contain Panels 3. Use a Layout Manager to place Panels in its

content area 4. Can be Modal or Non-Modal

Formspider Objects - Panels

• Formspider Objects Containers »Windows – Mainframe – Dialogs

» Panels

1. There can be many in one application 2. Can contain Panels and Components 3. Use a Layout Manager to place Objects in its

content area 4. The Number of Panels in an application does not

impact its performance 5. Different types of Panels: Simple, Tabbed,

Accordion, Split

Screen Navigation in Formspider• By default Formspider shows the Mainframe.• Add/remove Panels from the Windows or from other

Panels to navigate from one screen to the other.

Formspider LayoutsA Layout Manager controls where a Panel or a Window places objects in its content area.

Formspider Layouts

• XY Layout » <xyLayout> » <cell x=“120” y=“68” height=“40” width=“150”>

• Border Layout » <borderLayout> » <cell docking=“North” height=“40”>

• Table Layout » <tableLayout> » <row> » <cell>

XY Layout

• Use only if absolutely necessary

• For example for screens that should be printed

Border Layout

• Divides the container to 5 logical areas: North, South, East, West and Center

• Mostly used as the top level Layout Manager in Mainframes, Dialogs.

Table Layout

• Very important. Learn it very well. Here is the tutorial. :-)

• Most of your Windows and Panels will use Table Layout.

Formspider Components

• Can be placed inside Panels, under the <cell> tag, which is a Layout tag.

• All layout information is handled by the parent <cell> tag.

• Can bind to data. Most bindings to data are bidirectional. A few bindings are in one direction i.e. a change in data does not effect the component automatically.

Formspider Actions

• Represent PL/SQL procedures

• Called from Events in Formspider Objects

• Bridges your code to the User Interface

Datasources Definitions

• Your SQL Queries. Can be based on Tables, Views or arbitrary SQL.

• As the name suggests, these are definitions, not actual objects (unlike UI objects). The instances are called Datasources.

• Transform your data to a form that is meaningful for your User Interface

Datasources

• PL/SQL tables on steroids. Populated by the SQL in its definition.

• Current Row Indicator

• Can issue DML to database.

• Create Save Points. Restore at a later time.

• Bind to UI Objects

• A Rich set of API’s…

• Each datasource has its own rows. Its own bind variable values.

Formspider PL/SQL API’s

• API’s for all objects and then some…

• Use API’s to: » Manipulate UI Objects » Manipulate Layout » Screen Navigation » User Session Management » Data Validation » Data Manipulation » Security » Timers » Version Control

www.formspider.com