What is Standard APEX? TOOLBOX FLAT DESIGN CARTOON PEOPLE

Similar documents
Oracle Forms and Oracle APEX The Odd Couple

Oracle Application Express 5.1

Planning & Managing Migrations

Stanko Tadić

Clickbank Domination Presents. A case study by Devin Zander. A look into how absolutely easy internet marketing is. Money Mindset Page 1

Apex 5.1 Interactive Grid and Other New features

CONVERSION TRACKING PIXEL GUIDE

Grid Essentials. APEX 18.1 Interactive Grids. Karen Cannell TH Technology

Oracle APEX 18.1 New Features

Oracle APEX Overview. May, Copyright 2018, Oracle and/or its affiliates. All rights reserved.

Week - 01 Lecture - 04 Downloading and installing Python

Database Developers Forum APEX

Strong signs your website needs a professional redesign

Case study on PhoneGap / Apache Cordova

TOP DEVELOPERS MINDSET. All About the 5 Things You Don t Know.

LeakDAS Version 4 The Complete Guide

EXECUTIVE OVERVIEW. Upgrading to Magento 2

How APEXBlogs was built

How To Clone, Backup & Move Your WordPress Blog! Step By Step Guide by Marian Krajcovic

Polyratings Website Update

Just updated? Find out what s changed in Microsoft Dynamics CRM 2013 & Microsoft Dynamics CRM Online Fall 13. Getting Started Series

Sucuri Webinar Q&A HOW TO IDENTIFY AND FIX A HACKED WORDPRESS WEBSITE. Ben Martin - Remediation Team Lead

It s possible to get your inbox to zero and keep it there, even if you get hundreds of s a day.

Introduction. A Brief Description of Our Journey

Ignite Visibility Consulting. How to Blog. Prepared by John Lincoln. Copyright 2013 Ignite Visibility Page 1

PRINCIPLES OF SOFTWARE BIM209DESIGN AND DEVELOPMENT 03. REQUIREMENTS CHANGE. I Love You, You re Perfect... Now Change!

Title: Episode 11 - Walking through the Rapid Business Warehouse at TOMS Shoes (Duration: 18:10)

The Why And How of Front-End Architecture. Feel the rhythm, feel the rhyme, get on up, it s front-end time

(Refer Slide Time: 02.06)

Learn a lot beyond the conventional VLOOKUP

Unit 9 Tech savvy? Tech support. 1 I have no idea why... Lesson A. A Unscramble the questions. Do you know which battery I should buy?

Amyyon customers can t wait to get their hands on it s new application, developed in Uniface.

Layout Standards & Techniques. Nick Finck Webmaster Jam Session Saturday, September 23rd, 2006

Azon Master Class. By Ryan Stevenson Guidebook #5 WordPress Usage

Think simply and spare yourself a facepalm

Recipes. Marketing For Bloggers. List Building, Traffic, Money & More. A Free Guide by The Social Ms Page! 1 of! 24

How to Get Your Inbox to Zero Every Day

Developers and DBAs. Farmers and City Slickers have different mindsets

Web API Lab. The next two deliverables you shall write yourself.

Case Study: Best Strategy To Rank Your Content On Google

Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi.

Whitepaper. Dashboard Design Tips & Tricks.

These are notes for the third lecture; if statements and loops.

MAXIMIZING THE UTILITY OF MICROSOFT OUTLOOK. Presented by: Lisa Hendrickson Deborah Savadra

Outlook is easier to use than you might think; it also does a lot more than. Fundamental Features: How Did You Ever Do without Outlook?

QUICK EXCEL TUTORIAL. The Very Basics

SOAP: Cross Platform Web Services Development Using XML PDF

Reading How the Web Works

Consolidating servers, storage, and incorporating virtualization allowed this publisher to expand with confidence in a challenging industry climate.

How to Support Yourself. By Chris Lauzon

Excel Basics: Working with Spreadsheets

Analysis, Dekalb Roofing Company Web Site

5 R1 The one green in the same place so either of these could be green.

DESIGNING RESPONSIVE DASHBOARDS. Best Practices for Building Responsive Analytic Applications

CASE STUDY IT. Albumprinter Adopting Redgate DLM

3 Continuous Integration 3. Automated system finding bugs is better than people

Evaluation Guide for ASP.NET Web CMS and Experience Platforms

Modern App Architecture

Read & Download (PDF Kindle) Programming: C ++ Programming : Programming Language For Beginners: LEARN IN A DAY! (C++, Javascript, PHP, Python, Sql,

ESSENTIAL EXCEL TIPS. Tips All New Users Must Know. CONQUER THE FEAR OF EXCEL

Track: EXTOL Business Integrator (EBI)

REPORT MICROSOFT PATTERNS AND PRACTICES

The Oracle APEX Community at-a-glance:

Introducing Thrive - The Ultimate In WordPress Blog Design & Growth

Last modification of document: by Tomasz Dobrzyński

Endless Monetization

Flexcel Reports Developers Guide

Mail: Web: juergen-schuster-it.de

Modern Cookie Stuffing

Extend EBS Using Applications Express

Digital Marketing Manager, Marketing Manager, Agency Owner. Bachelors in Marketing, Advertising, Communications, or equivalent experience

Presentation References

Five. Less! WAYS LOCAL SEO. to Enhance Your. in Five Minutes OR. An easy, step by step guide from your local Google ranking guru, Emily Fontes.

How to Improve Your Campaign Conversion Rates

Rails + Legacy Databases Brian Hogan - RailsConf 2009 twitter: bphogan IRC: hoganbp

This presentation is designed to open you up to some ideas that may help improve your operations, become more efficient, and maybe add some things to

Making a PowerPoint Accessible

Day in the Life of an SAP Consultant using IntelliCorp s LiveCompare Software

ME 4054W: SENIOR DESIGN PROJECTS

FIVE BEST PRACTICES FOR ENSURING A SUCCESSFUL SQL SERVER MIGRATION

CHAPTER 18: CLIENT COMMUNICATION

EmberJS A Fitting Face for a D8 Backend. Taylor Solomon

Can t Believe It s Linux. a totally different and hypothetical linux distribution

Using AngularJS In APEX. Dan McGhan Senior Technical Consultant

The Best Event Marketing Plan. Ever.

9 R1 Get another piece of paper. We re going to have fun keeping track of (inaudible). Um How much time do you have? Are you getting tired?

Easy Website Creation Using WordPress. Welcome and thank you to our Sponsors

DELIZIOSO RESTAURANT WORDPRESS THEME

DO EVEN MORE WITH TABLEAU. At BlueGranite, our unique approach and extensive expertise helps you get the most from your Tableau products.

Appendix 9 Insteon. What is Insteon?

DrupalGovcon July 20th, 2016

The Idiot s Guide to Quashing MicroServices. Hani Suleiman

POWER TO THE PEOPLE: DESIGN IN THE HANDS OF THE USER. Cathy Dew CTS, Inc.

Within Kodi you can add additional programs called addons. Each of these addons provides access to lots of different types of video content.

Oracle JET in Oracle APEX Marc Sewtz Senior Software Development Manager Oracle America, Inc. New York, NY

[Compatibility Mode] Confusion in Office 2007

Client Side JavaScript and AJAX

SEO Tips for WordPress/ WooCommerce

Written Communication

Web API Lab folder 07_webApi : webapi.jsp your testapijs.html testapijq.html that works functionally the same as the page testapidomjs.

Transcription:

What is Standard APEX? TOOLBOX FLAT DESIGN CARTOON PEOPLE

About me Freelancer since 2010 Consulting and development Oracle databases APEX BI Blog: APEX-AT-WORK Twitter: @tobias_arnhold - Oracle ACE Associate

What is Standard APEX? A few tips and guidelines based on my experiences with over 100 projects that I have worked with during the last 10 years. Before I will tell you something about Standard I will define what I actually aim for: Build what the customer / end-user needs Application development on time and within the budget Easy to maintain application Standard APEX features Good looking application

What can I give you?

AGILE development Project Manager Customer Boss End-User 95 % of all my projects were AGILE. Everything you do, do it with the people who has to work with your application. Talk and discuss with them. APEX Developer Be a team working with the end-user.

Do not Project manager let the project manager do the customer communication for you. Customer boss talk only with the head of the department or someone who thinks knows it all. Believing believe that they actually know their business process. Especially if several departments are invoked. End-Users talk with just one person on the customer side. Tip: Find the guy who actually understand how it works!

Low Code It is somewhere between no coding and do it all yourself. IN APEX USE APEX Do not reinvent the wheel. Instead: PLACING THE BUSINESS CODE Always think like Database FIRST ALWAYS THINK LIKE THIS Form on table (DML) Interactive Grid (DML) JET Charts (SQL) Universal Theme (CSS) Inside your database business schema Use packages Use views Can I fix it with SQL? Can I fix it with PL/SQL? Can I fix it with CSS? Can I fix it with Javascript? Tip: Think twice if you really need an extra JS framework.

How to start building an application Don t start coding, start talking! 1. Talk with the customer and understand what are his needs? Important question: Ask the customer if somebody already tried to solve it? If the answer is yes more then 2 twice. Leave the room and never come back. EXIT

How to start building an application 2. If you feel it is not enough information to build up the application A: Start with a simple throw away prototype Discuss with the customer the results Repeat the process until you know what he needs B: Important questions you should ask What do you want? Do we have the same target as a team? I can t do it alone. Can I see the legacy application and the data? Can you tell me about specialties inside the application? Do you have program interfaces with other systems? How many? How much data? Update cycle?

How to start building an application 3. You know what the customer needs Build a prototype data model Import some real data Start with the complex stuff not with the base data functionality Build an application package for the business logic and the error logging functionality SQL of complex APEX reports should be saved in views

Things you may shouldn t do 1. Integrate all kind of Javascript frameworks and/or plugins 2. Complex business logic inside APEX 3. View layers based on pages and statements. Example: v_1_emp_report

Example 1: The view nightmare An APEX prototype which I had to finish Starting position: 10 tables 20 pages 60 views Base view for each table defined as: v_100_0_emp v_100_0_dept Detail view looked like this: v_100_1_emp_with_dept v_app_id_page_id_name based on v_100_0_emp and v_100_0_dept

Example 1: The view nightmare I had a few problems with it Code duplication Standard APEX processes can't run inside the view hell Maintainability decreases Costs and development time increases What did I do? I dropped it down to the ground and made it simple. Result: 10 tables 20 pages 10 views Tip: I always use V_ as a name for view including business logic and LOV_ as a source for APEX list of values.

Example 2: JS Performance Leak I came to rescue it No Interactive Grid was available yet. Customer needed to manually update a large table dynamically row by row. Needs: Edit a cell and update dependent rows in the report Context Menu (Right click) Tree functionality Freezed Header

Example 2: JS Performance Leak First solution The first company tried an Javascript library called EasyUI. The proposed to the customer that all features can be fulfilled with it. But a few problems occurred: All communication was done with JSON No standard APEX APEX was not more then a shell anymore Tons of Javascript Complex PL/SQL packages only for the library and the JSON handling had to be added No security / no SSP was used (URL tampering)

Example 2: JS Performance Leak First solution Major problem was: Loading of the report took 15 minutes

Example 2: JS Performance Leak Don t say you can. Show that you can: Prototype it! I said I don t know if it is possible. But I can try making a prototype. I started with the most important question: Can APEX display 8000 rows in a decent time? URL: 192.168.4.2:8080/ords/f?p=GRID_PROTOTYPE:2

Example 3: Customer goes wild You don t understand what they want Migrate a planning tool from Excel to APEX 14 Excel files Base data had to be filled in manually Reporting on different levels The result of all files saved a huge Power Point Keep in mind: Always stick to the standard features of APEX!

Example 3: Customer goes wild Current situation

Example 3: Customer goes wild What we did A1 A2 A1 A2

Example 3: Customer goes wild You don t understand what they want From our perspective Data preparation could be automated (20-30 days per year) We had data integrity Row level security Read and write functionality on column level Better design but similar look and feel towards the old tool Used only standard APEX components (IG, JET Charts)

Example 3: Customer goes wild You don t understand what they want From customer perspective They wanted something new! A dashboard Seeing all important data Easy data editing inside the dashboard We should show off some new design ways Because we are the experts

Example 3: Customer goes wild You don t understand what they want First important question when you create a dashboard: What data on what level is important to make a decision? Look at the Excel! We made some dashboard examples: Look this can APEX do (Examples with JET charts): Is this all APEX can do? Yes. Those are the basic APEX features we work with. We looked at the Internet and found a Dashboard Competition. Mr. Arnhold why didn t you show us? You are right I could have done this but what you see is no Standard. Those examples are prove of concept and includes a lot of risks. Mr. Arnhold why didn t you show us?

Example 3: Customer goes wild Plugin he would have loved to be integrated https://apex.oracle.com/pls/apex/f?p=7777705:1

Example 3: Customer goes wild Plugin he would have loved to be integrated

Example 3: Customer goes wild Plugin he would have loved to be integrated

Dashboard Competition Examples Think twice before you choose something From customer perspective Does it fit the requirements? Does it look good / modern? From developer perspective How complicated is it? JAVASCRIPT! Will your colleagues understand? Security? Required Frameworks? I MADE IT!

Dashboard Competition Examples Think twice before you choose something 192.168.4.2:8080/ords/f?p=304:1

Dashboard Competition Examples Think twice before you choose something 192.168.4.2:8080/ords/f?p=305:1

Dashboard Competition Examples Think twice before you choose something 192.168.4.2:8080/ords/f?p=306:1

Summary What is Standard APEX? Stick to the end-user Logic: SQL, PL/SQL, CSS, JS Use the basic features (IG, JET charts, Form on table, Dynamic Actions) Database Modell Use packages APEX is made to be agile Javascript is not APEX

THE END