Beruflich Dokumente
Kultur Dokumente
The preceding 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 Oracle’s products remains at the sole discretion of Oracle.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 2
Oracle Application Builder Cloud
Service
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted
Oracle Application Builder Cloud Service
Part I – Business Overview
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
“No problem, we’ll put it in our to-do
list, should be done just as we finish our
current work…”
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Business Needs
• Quickly adjust to
changing/additional requirements
from users
• Faster turn around for application
development
• Build modern interfaces accessible
from mobile and web
• Empower business users to be self
sufficient
• Offload work from IT department
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 8
Low-Code Platform
Low-code development platforms are platforms that
enable rapid delivery of business applications with a
minimum of hand-coding and minimal upfront
investment in setup, training, and deployment.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Low-Code Market Opportunity
Low-Code Development Platforms
of all new IT line-of-
business applications will be
1/2 created through low-code
Gartner
46% Of the workforce will be
Gen-Y by 2020
IT organizations
$15B market by 2020
Forrester
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Application Builder
Cloud Service
Build and host web applications in a
faster and simpler way with zero
install and no-coding visual
development
Easy to Use Drag and drop, live WYSIWYG designer for creating
and hosting powerful applications.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Oracle Application Builder Cloud Service Part
II – Technical Deep Dive
UI Components
Marketplace
Content
Builder
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Oracle Application Builder Cloud Service Architecture
Oracle SaaS
WebLogic Oracle DB
Other REST
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 18
Custom Business Objects
HTML5 + JS
PHONE AGGREGATION
BOOLEAN
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 22
Business Object Relationships
Delete NA Unable to delete row from referenced Delete row in master deletes all
Behavior object if it’s being used related child rows
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 23
Defining Custom Business Objects
UI First Data First
• Drop collection (table or list) onto a • Create object and fields from Data
page to create object Designer or Data Palette
• Drop UI components onto object’s • Bind UI components to existing
interaction pages to automatically fields
create fields
Not Mutually
Exclusive!
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 24
Data Designer
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 25
Aggregation Fields
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 26
Data Validation & Business Logic
Constraints Validation Rules
Initial Values
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 27
Business Object Business Logic
• Define triggers, object validators,
field validators and object functions
• Server side execution
• Visual logic flow
• Declarative conditioning
• Groovy scripting for advanced logic
needs
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Process Integration - Backend
• Built-in integration with Oracle
Process Cloud
• Associate processes with business
objects
• Trigger processes from business
object events
• Direct access to data from business
objects in the process
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
REST Access to ABCS Data Objects
• Full CRUD
• Security built-in
• Rich meta-data
• Access from external apps
– Load data
– Report on data
– Update records
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Designing Pages and Navigation
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 32
Creating Pages Using Business Object Creator Wizard
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 33
Default Page Flow Resources
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 34
Creating Pages Manually
• In Page Designer, click the
breadcrumb to navigate to a
specific page, or to create a new
one
• Pick page type and define
business object for the page if
type requires it
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 35
Menu Designer
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 36
Designing Pages
Page Layout
1 2 3 4 5 6 7 8 9 10 11 12
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 37
Designing Pages
Panels
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 38
Designing Pages
Other Components
• Layout Components
– Header
– Page Header
– Horizontal Rule
– Toolbar Separator
– Tabs
• Common Components
– Button
– Image
– Paragraph
– Link
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 39
Designing Pages
Fields Types
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 40
Designing Pages
Data Binding Options
Popup When Dropping New Field Data tab of Property Inspector on Existing Field
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 41
Visualization Properties – Differ Depending on Component
Display Legends and Titles Data
Thresholds (Data)
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 42
Process Integration - Frontend
• UI components for processes
– Tasklist with actions
– Actions menu
• Design your task form in ABCS
• Trigger process from UI
• Drag and drop integration
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Charts and Graphs – Based on Collections
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 44
Gauges – Based on Single Value
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 45
Built-In Responsive Behaviors
Based on Templates Provided by ABCS
Desktop Phone
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 46
Developer-Designed Responsive Behavior
• Use buttons in designer to preview application
at various form factors
• Use Responsive tab of property inspector to
set specific properties for specific form factors
– All components have a Visibility property
– Other properties vary by component
• Charts, Tables, and List Views have interesting options
– Setting applies only to the specified form factor, and
needs to be repeated on other form factors where
that setting is desired
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 47
Working with Data
Development Schema001
Stage Schema002
Live Schema002
Development
Staging Live
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 51
Data Management Flow Example Use Cases
• V2 of my app is published. As I start working on V3 in Development, I want
to grab a snapshot of data from Live.
• I am about to publish V4 of my application. I’ve made structural changes to
the objects, so I want to use Stage, and I’ll lock Live first, Import from Live
to Stage, then publish the app.
• I want to make changes to data outside of the app. So, I’ll export the data,
make changes and re-import.
• I have a lot of “seed” data that is used by my application, which I maintain
in separate csv files and import as needed into individual data tables.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 52
Working with Existing Services
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 54
Introduction to FA (Sales Cloud) Service API by Example
URI Description
/commonCrmApi/resources/latest/describe Describe all the resources from Common CRM (Contacts, etc)
/salesApi/resources/latest/describe Describe all the resources from Sales API (Opportunities, etc)
/salesApi/resources/latest/opportunities/describe Describe the opportunities resource
/salesApi/resources/latest/opportunities GET – return list of opportunities
POST – create a new opportunity
/salesApi/resources/latest/opportunities/{OptyNumber} GET – return specific opportunity
PUT/PATCH – Update specific opportunity
DELETE – Delete specific opportunity
/salesApi/resources/latest/opportunities/{OptyNumber}/lov/Sales List of SalesStageLOV objects
StageLOV
/salesApi/resources/latest/opportunities/{OptyNumber}/child/Chil Describe the ChildRevenue resource
dRevenue/describe
/salesApi/resources/latest/opportunities/{OptyNumber}/child/Chil GET – return list of ChildRevenue objects belonging to this
dRevenue/ opportunity
POST – create a new ChildRevenue belonging to this opportunity
/salesApi/resources/latest/opportunities/{OptyNumber}/child/Chil GET/PUT/PATCH/DELETE – perform requested operation on this object
dRevenue/{RevenueId}
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 55
Select from External Service
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 56
Choose Resources
• Select Primary and
Child objects
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 57
Choose Fields
• Select Fields you want
to work with
– ?fields=xyz is used to
select subset of data
• Hint: only select what
you need now, you
can add others later
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 58
Optional Test
• Make sure you are
getting expected data
• Once object is
defined, can now be
used on pages just like
custom business
objects.
• Return to Data
Designer to add fields
(from existing object)
later
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 59
Extending and Reusing Applications
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 61
Extending Existing Service with Custom Data
As One-to-One
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 62
Best Practice
• Recommended approach from ABCS and Sales Cloud team is to use Sales
Cloud AppComposer for One-to-One and Master-detail data extension use
cases in most situations.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 63
Declarative Actions
• Built-in list of available actions
• Can be chained together in simple
workflow
• JavaScript option
• Currently on buttons only
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 64
Custom Actions
• Run as a JavaScript promise, must return (resolve(value)) or (reject(error))
• Set appropriate result type for resolve and reject
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 65
Custom Code
• HTML (Template)
• CSS
• JavaScript model
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 66
Shared, Reusable Content (Extensions)
Designed to be shared across tenant
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Oracle JET CCA Integration
• Add Oracle JET Composite
Components as plugabble UI
• Set properties to field values
• Enrich your UI options
• Metadata for design time
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Confidential – Oracle Internal
Developer-Provided Credentials for External Services
AppID Flow
• Developer can provide user credentials (Basic
Auth) for an external service at design time.
• Credentials are stored securely in ABCS and
used also at runtime to access the service.
• Cannot be used in conjunction with a “No Login
Required” app; Cloud Login Required
• Use cases:
– Call an external Service (ADF BC-based) where id
domain federation is not possible
– Call an external Service (ADF BC-based) with AppID
token
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 70
Business Object Providers
• Allows JavaScript developer
to write a connector to a
back-end REST API shaped as
a Business Object with
operations
• Once published as a shared
extension, BOP Services
appear in the Service catalog
for others to use
JavaScript API documented in ABCS public reference doc. PM team working
on samples and examples to ease adoption.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 71
Application Management
• Export and Import
– Exported as zip, not including
data. On import, user must
(re)enter any credentials used
for external services.
• Templates
– Any application can be shared
as a template and used as the
basis for new applications
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 72
Extension Management
• Export and Import (Create from
zip)
• Create from template
• Shared from another application
– Creates a dependency on sharing
application
– Sharing application needs to have
Shares Application Resources
setting enabled (Application
Settings > General), and application
must be Published
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 73
Application Translations
• Strings for application externalized to nls.json for translation
• Develop app >> Export language bundle zip >> Translators provide new
resource strings and updated bundle zip >> Upload new language bundle
• Optionally include system messages to override Oracle translation of these
strings.
• Browser locale determines
which language is shown
to end user.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 74
Resource Browser
• Resource Browser to view files pertaining to this app. Upload files and
manage content
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 75
Application Lifecycle and Versions
Development Schema001
Stage Schema002
Live Schema002
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 78
What Happens During Publish
• If first time publishing of this app:
– Stage schema becomes live (url
updated)
• If application has already been
published:
– Either reuse live database schema or
stage schema (use choice if possible)
• If using Stage schema, recommend
to Lock live app, manually copy
data from live to staging, then
publish
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 79
Application Security
• Role-based Security
– Page level
– Object level
– Row level (basic)
– Dynamic UI based on Roles
• Roles mapped to SIM
• Optional Anonymous access
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 81
Multiple Versions
• New actions on the application menu: Copy and New Version
– Copy creates a new application (with a similar name as the original) from the selected
application and version
– New Version creates a new version of the selected application. User can specify any
arbitrary two-digit version number
• Versions (sandboxes) can be modified independently
• Each version can have a development and stage mode
• Application can only have one live (published) version
– Previously live version will be marked as Obsolete
– Option to Rollback recent Publish action
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 82
Additional Resources
• ABCS Home
– https://cloud.oracle.com/ApplicationBuilder
• ABCS Features
– https://cloud.oracle.com/en_US/application-builder/features
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 83