32
<Insert Picture Here> Oracle Application Express for Oracle Forms Developers

Application_Express_3.0_Forms_Developers.ppt

Embed Size (px)

Citation preview

  • The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions.
    The development, release, and timing of any features or functionality described for Oracles products remain at the sole discretion of Oracle.

  • Agenda

    What is Oracle Application ExpressDifferences between Forms and Application ExpressFeatures and benefitsConclusionsNext stepsQ&A

    Run over agenda.

  • Does Your Organization:

    Have several applications written in Oracle Forms and Reports?Have many IT Professionals with extensive SQL and PL/SQL knowledge?Not have time to build all of the applications that users are asking for?Does your organization prefer 4GL declarative development over 3GL programmatic developmentDo not have extensive 3GL object orientation programming expertiseHighlight Practices typical to a majority of Organizations/Groups You have heaps of Forms and Reports. A lot of investment in PL/SQL want to keep IT productiveNeed to be able to deliver solutions quickly and with high qualityEase of development and maintenance of 4GLs over 3GLsDo not have time to retrain IT in OO and the decrease in productivity until they become as proficient as they are with Forms (Over 1 year)
  • Oracle Application Express

    Browser Based

    Declarative

    Robust Framework

    Multi-Tenant Hosting

    MS Access Replacement

    Packaged Applications

    Feature of the Oracle database

    Community Focused

    A better tool to use when solving the problems of tactical or quick applications to address specific business needs at the department level is Application Express.

    Instant deployment on the Web

    Applications developed with Application Express are immediately deployed on the web. There are no separate deployment or compilation steps needed.

    No programming or scripting

    In Application Expresss application builder, you use declarative fill-in-the-blanks wizards to assemble an application rather than having to write code.

    Application Migration from MS Access

    Use Application Migration Workshop to migrate Microsoft Access applications to Oracle Application Express. It is displayed beneath the Administration list. It displays the database schemas that are associated with, and therefore accessible to, this workspace. Where workspace is a virtual private database.

    Use the full power of Oracle Database 10g

    Oracle Database 10g comes packed full of features to manage structured and unstructured data. Because Application Express is built into the database, you can exploit all these features in your web applications. Think of:

    Fine Grained Access Control (VPD)Spatial or Location-based queriesOracle TextOLAP
  • Oracle Application Express Offers

    The Qualities of a Personal DatabaseProductivityEase of UseFlexibilityThe Qualities of an Enterprise DatabaseSecurityIntegrityScalabilityAvailabilityPortabilityBuilt for the Web

    The Application Express solution is to provide the best of both worlds: the productivity and ease of use of a personal database with the qualities you expect from an enterprise database. All this built natively for the web.

  • Simplify Oracle Application Development

    PL/SQL DevelopersNon-professional developersPower usersDepartmentsSmall enterprises

    The goal of Application Express is to simplify web development on the Oracle Database, making it easy enough for people who dont program for a living to still develop quick-hit applications. These people are typically found in enterprise departments and small enterprises.

    Application Express is still flexible enough to allow PL/SQL developers to extend the functionality of their Application Express application.

  • Browser Based

    Browser Based Application Development

    No Client Software to install

    Full Service: Application Building, SQL Workshop, Utilities

    Allows teams of Developers to work concurrently on the same application at the same time

    -- All you need is a standard Web-Browser to connect to your Application Express Instance. Create your Workspace and you can start building your Application

    -- Unlike typical Application development environments where you are required to download a piece of client software, APEX provides the development interface using your Web-Browser. No special software or additional tool is required Everything that you would potentially require is provided for under the following:

    - Application Builder This provides the primary interface for Building your Applications

    - SQL Workshop View/Modify/Create database objects, SQL Scripts and even build complex queries( This is ideal for users who aren't necessarily from a IT background)

    - Utilities Allows for data to be loaded/unloaded from the Database, generate DDL Scripts, View Database related reports(Object reports, Schema Comparison, Database Activities etc.)

    *** Last bullet

  • Application Express Declarative

    No code is generated

    Declarative development model reduces code variations between developers

    You write some SQL and optionally PL/SQL snippets

    Less risk for developer introduced security issues

    Meta data driven

  • Key Features

    Reports - Build using SQL and Bind VariablesForms - Build on Database Tables, Views,etc Charts - Many out of the box Charting optionsCalendars - Monthly,Weekly, and Daily calendars

    Oracle Application Express provides a complete environment for building web application from a web browser.

    From Application Builder one can

    Create applicationsView applications both Demonstration application and developer created Import and Export ApplicationsDo the application administration

    From Object Browser one can go to

    Object Browser page for creating and browsing database objectsSQL Commands page for running queriesSQL Scripts page and can create, upload, view, import and export SQL ScriptsQuery Builder page

    From the Utilities one can

    Monitor databaseLoad/unload dataGet object reports

    From Administration list one can

    Manage services, users, change passwordMonitor activity

    From Migrations one can

    1. Migrate applications from MS access

  • Why Migrate to Application Express

    Both Oracle Forms and Application Express are declarative 4GL toolsLeverage PL/SQL experienceOracle Application Express is built for the WebApplication Express uses the same Data Model and most importantly the same data types (no conversions)Fully exploit PL/SQL Packages, Procedures, Functions, and Database TriggersMinimal training requiredForms Developers should be fully productive using Application Express in weeks not months or years

    Oracle Application Express is Forms for this Millennium

    Business Drivers for Migration?

    Expected outcome?

  • Forms Vs Application Express

    FeatureFormsApplication Express4GL DeclarativeYesYes4GL LanguagesSQL and PL/SQLSQL and PL/SQLUser InterfaceJavaHTMLPage LayoutWindows / CanvasesPages / RegionsClient-Side Field ControlForm triggersJavascript and AJAXWeb Service SupportYesYesChartingBI BeansFlash ChartsLockingPessimistic, Optimistic, CustomOptimistic, CustomDatabase ConnectionsSynchronousAsynchronousConcurrent User SupportMaintained by User SessionMaintained for the Processing of ReqsArchitecture3 Tier2 Tier

    4GL Declarative - Oracle Forms renders applications using metadata stored in an .fmx file. Application Express renders applications using metadata stored in an Oracle database.

    4GL Languages - Oracle Forms runs client-side PL/SQL. Application Express uses server-side PL/SQL.

    User Interface - Oracle Forms is accessed using a web browser and its user interface is rendered using a JVM. Application Express is also invoked from a Web browser but its user interface is HTML and JavaScript.

    Page Layout - Oracle Forms uses exact positioning and Application Express uses HTML-relative positioning.

    Client-side Field Control - Oracle Forms provides robust field-level validation and event processing. Application Express supports declarative page-level validation and event processing. Programmatic field-level validation and event processing requires Javascript and AJAX.

    Web Service Support - Both Oracle Forms and Application Express support the calling of Web Services, for example BPEL.

    Charting - Oracle Forms uses BI Beans as its integrated charting engine. Application Express uses Flash Charts as its integrated charting engine.

    Locking - Oracle Forms supports a range of locking models with pessimistic as the default. Due to its asynchronous architecture, Application Express uses an optimistic locking model.

    Database Connections - Oracle Forms uses synchronous connections to allow transactions to span multiple screen interactions. Application Express does not transparently allow transactions to span page views. Application Express programmatically supports transactions spanning page views using collections.

    Concurrent User Support - Each connected user in Oracle Forms maintains a synchronous connection to the Oracle database. Application Express users are asynchronously connected to the Oracle database.

    Architecture - With Oracle Forms, Application logic is processed in the Oracle database, a mid-tier Forms Server, or in the rich client. With Application Express, PL/SQL application logic is processed within the Oracle database. Client-side logic is implemented using JavaScript. HTTP communications are facilitated using Apache and Mod/PLSQL.

  • Architecture Overview

    With the Embedded PL/SQL Gateway

    (XE and 11g)

    With Apache and mod_plsql

    DPEAKE Replaced the Slide

    Oracle Application Express Architecture

    Oracle Application Express resides in the Oracle database.

    The browser sends a URL request that is translated into the appropriate Oracle Application Express PL/SQL call. After the database processes the PL/SQL, the results are relayed back to the browser as HTML. This cycle happens each time one either requests or submits a page.

    The version of Oracle database you use determines how the URL is translated:

    Versions prior to 11g require Oracle HTTP Server (Apache) with mod_plsql.With Oracle Database 11g, you can remove Oracle HTTP Server and mod_plsql from the architecture and replace it with the embedded PL/SQL gateway.

    Application Express Engine

    rendering and page processingsession state managementauthentication servicesauthorization servicespage flow controlvalidations processing

    Session state in database

    The application session state is managed in the database tables within Application Express. It does not use a dedicated database connection. Instead, each request is made through a new database session, consuming minimal CPU resources

  • Standard App Dev Features

    -- Using the Application Express Development environment user can control

    - The Rendering of the Page Basically the HTML

    - What should be displayed?

    - How should it be displayed?

    - Can associate Client Side Scripting on a Page (ex. JavaScript etc.)

    - Associate Navigational Control and redirect

    - The Page Processing Actions based on User Selection and Inputs

    - PL/SQL procedures

    - Email

    - Web-Services

    -- In addition Application Express provides additional built-in features that are commonly required by any web-based application Reducing developemnt time

    - Authentication

    - Authorization

    - Automatic Session State Mangement etc.

    These would traditinally have to be built from sratch

  • Multi Tenant Hosting

    Self Service ProvisioningConsolidate Applications

    Oracle Application Express enables a single database to host large numbers of users. Users work in a dedicated work area called a workspace. A workspace is a virtual private database that enables multiple users to work within the same Oracle Application Express installation while keeping their objects, data and applications private. This flexible architecture enables a single database instance to manage thousands of applications. It turns a single database into a hosted service, making it an ideal platform for consolidation of smaller data stores.

  • Functionality Overview

    Complete EnvironmentApplication BuilderSQL WorkshopUtilitiesAdministrationMigrationsWorkspace Schema NameLinks (to OTN, Discussion Forums, Users Guide)

    Oracle Application Express provides a complete environment for building web application from a web browser.

    From Application Builder one can

    Create applicationsView applications both Demonstration application and developer created Import and Export ApplicationsDo the application administration

    From Object Browser one can go to

    Object Browser page for creating and browsing database objectsSQL Commands page for running queriesSQL Scripts page and can create, upload, view, import and export SQL ScriptsQuery Builder page

    From the Utilities one can

    Monitor databaseLoad/unload dataGet object reports

    From Administration list one can

    Manage services, users, change passwordMonitor activity

    From Migrations one can

    1. Migrate applications from MS access

  • Application Development

    ReportsData entry formsChartsCalendarsSecurityNavigationLook and feel

    As mentioned earlier, Application Express offers a declarative and wizard-driven development environment. This means that when building web applications using the tool, youll find wizards to build fully functional application components:

    ReportsData entry formsChartsCalendarsSecurityNavigationLook and feel
  • Reports

    Control Layout and PaginationEnable Column sortingExport content to CSV or XMLAssociate Print AttributesPDF Printing capabilitiesDrill down to other reports, charts, formsApply Authorization SchemesAllow external processing via a URLPartial Page Refresh

    One of the most popular features within Application Express is its reporting engine. Beyond simply being able to make data available in a secure fashion, reports generated in Application Express are feature-rich.

  • BI Publisher

    Declarative PDF Reporting ServicesCreate Professional looking ReportsRange of Document Formats

    #Up-Sell#

    Declarative PDF Reporting Services Include PDF printing feature with your report using a declarative interface that allows you to define a range of attributes associated with the output document. For instance, you can set the report Page size, Background color, add a page header etc.

    Create Professional Looking Reports You can Add Charts and other Visual aides to your Report that not only helps in interpreting the data listed in your report, but also adds a more professional look to your reports. This would be ideal for say, your departments financial figures, Sales reports etc. With this feature, you can not only use APEX to consolidate and maintain consistent data, but also use it to generate reports that you can add to your Organization Annual reports without having to use any Additional Tool.

    Note: For these features the Customer would have to procure a BI Publisher License, to enable the Advanced PDF Reporting Services option. With the advanced option, they may use the XML Publishers RTF Template Builder to generate Templates for their Reports.

    Under the Standard License (Default with APEX 3.0), Customers are limited to using the Default Template provided or build XSL/FO templates.

    Range of Document Formats This feature does not limit you to only PDF documents, You may select document format from a variety of industry standard formats:

    1. PDF

    2. Word(RTF)

    3. Excel Spreadsheet

    4. HTML

  • Data Entry Forms

    Feature RichBuilt in widgets availablePop-Up calendarList of valuesEnable Validations on Form FieldsLost update detectionVariety of Form TypesTabular formsMaster Detail formsForms on a Web ServiceForm on a Table with Report

    Similarly, forms created in Application Express are also feature-rich.

    This means that its easy to drop in many of the pre-built widgets such as popup calendars and lists of values.

    Developers neednt mess with coding awkward client-side validations since Application Express offers declarative validations that return nicely formatted messages based on rules provided.

    Lost update detection: often web developers wont even consider the idea of losing an update because theyre in a stateless environment. Application Express handles this for you when using the wizards.

    Theres also support for more sophisticated form types such as tabular, multi-row forms, form on a table with report, form on a web service, form on a SQL Query, master detail forms and Summary page.

  • Charts

    SVG chartsHTML chartsFlash charts

    Much like the reporting engine, customers really like the Application Express charting engine. With nothing more than a simple query, Application Express is able to render crisp svg [scalable vector graphics] charts with extra functionality like drill down and asynchronous refresh.

    Now, with the latest Release (3.0) of Oracle Application Express, you can even build Flash Based Charts in you Application Express Application. This lets you select from a 18 Chart types, and allows you to declarative control a number of Display attributes, including animation, Background colors, Asynchronous Updates, label and heading font types and color, and a range of other visual effects to make your Charts look better.

  • Security

    Built in authentication modulesLDAPSingle Sign-OnOpen Door CredentialsOracle Application Express Account CredentialsDatabase Account CredentialsNo Authentication (using DAD)Centrally defined authorization rulesSession state protectionIntegration with database security featuresFGACTransparent Data Encryption

    Built in authentication modules

    When you create an authentication scheme, you have the option of choosing from a number of pre configured authentication schemes, copying an authentication scheme from an existing application, or creating your own custom authentication scheme. Most importantly, you dont need to worry about how authentication will be implemented up front. You can start by using the default authentication module and then switch it later. Authentication may require a user to enter a user name and password or may involve verification of a users identity or use of a secure key. The pre configured authentication schemes include LDAP credentials verification, Oracle Application server Single Sign-on, Oracle APEX account credentials, Database account credentials, and No Authentication.

    Centrally defined authorization rules

    Authorization is a broad term for controlling access to resources based on user privileges. While conditions control the rendering and processing of specific page

    controls or components, authorization schemes control user access to specific controls or components. These are small units of logic called Authentication Schemes that can be implemented via SQL or PL/SQL and be connected to an entire application, page, or specific control such as a region, item, or button.

    Session state protection

    Session State Protection is a built-in functionality that prevents hackers from tampering with the URLs within your application. URL tampering can adversely affect

    program logic, session state contents, and information privacy. You can enable session state protection from either the Edit Security Attributes page or

    the Session State Protection page.

    Integration with database security features

    Since Application Express runs within the database, you have access to all of its security features, including Fine Grained Access Control to implement row level security.

  • Navigation

    TabsListsBreadcrumbsNavigation Bar EntriesTreesNavigation Using Branches

    The tool has common navigation controls built in so that you can add them to your application via wizards. They include:

    Tabs

    Application Builder includes two different types of tabs: Standard tabs and Parent tabs.

    Lists

    A list is a shared collection of links. You add a list to a page by creating a region and specifying the region type as List. Each list element has a display condition, and can be defined to be either current or non-current for a specific page.

    Breadcrumbs

    A breadcrumb is a hierarchical list of links that display using templates. You can display a breadcrumb as a list of links or as a breadcrumb path.

    Navigation Bar Entries

    A navigation entry enables you to display a link from an image or text. The associated page template determines the location of a navigation bar.

    Trees

    You can use a tree in your application to effectively communicate hierarchical or multiple level data.

    Navigation Using Branches

    A branch is an instruction to link to a specific page, procedure, or URL after a given page is submitted.

    and in Application Express, theres even support for dynamic pull-down menus to allow for even more sophisticated navigation within an application.

  • Look and feel

    Template drivenConsistent throughout applicationCustomize with HTML and CSS

    Look and feel in Application Express applications is almost entirely template driven.

    Many people who wish to deploy applications dont have the skills to make those applications look professional. Application Express does a great job of separating this presentation logic from the business logic and has built in themes to make applications look slick. A theme is a named collection of templates that defines the application user interface. Each theme contains templates for every type of application component and page control, including individual pages, regions, reports, lists, labels, menus, buttons, and list of values.

    Templates can be customized via HTML and CSS (Cascading Style Sheets). Templates are organized first by type (breadcrumb, button, calendar, label, list, page,

    popup list of values, region, and report) and then by template classes, identifying the purpose of the each template within that type. Each template type provides a group of standard classes and eight custom classes. These classifications enable Oracle Application Express to map templates among themes, making it easy to quickly change the entire look and feel of an application.

  • Packaged Applications

    Project Tracking

    People Search

    Discussion Forum

    Bug Tracker

    Online StoreAsk the ExpertIssue TrackerDocument Management

    This feature was introduced in the 2.2 Release of Oracle Application Express. It allows you to Package your application and its underlying Database objects into a single installer. In addition, you can define a set of pre and post installation steps that ensure that the application is installed without errors. This makes importing and installing an application similar to what a Typical Application install should be like.

    Also, with the Oracle Application 3.0 Release, we can now add Upgrade scripts to our Packaged Applications. This script would typically contain Modifications to the Database objects (ex. Addition of a Table Column) and associated changes to Processes/Procedures etc. So when you download a latest release of a Packaged Application, and a previous version of this application were already present, only the Upgrade Script would be invoked.

  • Community Focus

    Active Discussion ForumEmerging ISV CommunityPackaged ApplicationsSource Forge Initiative
  • Application Express - Customers

  • Conclusions

    Business functionality should not change, only the User Interface and Navigation, etc. Most of the technology will be familiarThere will be differences but most are winsConsume less CPU and support more UsersImproved security and integration opportunitiesMaximize existing IT skills and knowledgeVery fast learning curve -> Maximize productivityApplication Express is being actively developed and enhancedApplication Express will be included in 11g Seed Database -> Oracle recognizes growing popularity
  • For More Information

    http://search.oracle.com

    Application Express

    or

    http://otn.oracle.com/apex

  • Next Steps

    More information and downloadsotn.oracle.com/apexOracle Application Express 2-Day Developer tutorialotn.oracle.com/apexDownload pre-built applicationsPackaged ApplicationsAPEX Studio (apex.oracle.com/studio)
  • A

    Q

    &