Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Oracle APEX概要 20.2版
Search
Yuji Nakakoshi
March 24, 2021
Programming
0
140
Oracle APEX概要 20.2版
Oracle APEXの概要、機能、製品コンポーネントなどの説明です。
Oracle APEX 20.2での説明になります。
ノート付きの資料です。
Yuji Nakakoshi
March 24, 2021
Tweet
Share
More Decks by Yuji Nakakoshi
See All by Yuji Nakakoshi
Oracle APEXの紹介 - Oracle APEXとは何か、始め方と学び方
ujnak
0
230
Oracle APEXクイックガイド 22.2版
ujnak
0
730
F1より速く - F1グランプリのアプリをAPEXで作成する
ujnak
0
300
ローコード開発とOracle APEX - 教育の分野への活用
ujnak
0
78
Oracle APEXデモンストレーション手順
ujnak
0
130
Oracle APEX:アイデアからアプリケーションへ:光の速度で実現する環境
ujnak
0
92
世界食堂 - Oracle APEXアプリケーションを複数言語、複数タイムゾーンに対応させる
ujnak
0
790
Oracle APEXへのオープンデータの取り込み
ujnak
1
810
Oracle APEX 20.1新機能紹介
ujnak
0
610
Other Decks in Programming
See All in Programming
Golang と Erlang
taiyow
8
1.9k
『ドメイン駆動設計をはじめよう』のモデリングアプローチ
masuda220
PRO
8
440
シールドクラスをはじめよう / Getting Started with Sealed Classes
mackey0225
3
400
Java ジェネリクス入門 2024
nagise
0
600
讓數據說話:用 Python、Prometheus 和 Grafana 講故事
eddie
0
350
破壊せよ!データ破壊駆動で考えるドメインモデリング / data-destroy-driven
minodriven
16
4.1k
offers_20241022_imakiire.pdf
imakurusu
2
360
CSC305 Lecture 13
javiergs
PRO
0
130
RailsのPull requestsのレビューの時に私が考えていること
yahonda
5
1.7k
Kaigi on Rails 2024 - Rails APIモードのためのシンプルで効果的なCSRF対策 / kaigionrails-2024-csrf
corocn
5
3.4k
カスタムしながら理解するGraphQL Connection
yanagii
1
1.2k
Vue SFCのtemplateでTypeScriptの型を活用しよう
tsukkee
3
1.5k
Featured
See All Featured
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
107
49k
Teambox: Starting and Learning
jrom
132
8.7k
How To Stay Up To Date on Web Technology
chriscoyier
788
250k
Designing for Performance
lara
604
68k
Building a Scalable Design System with Sketch
lauravandoore
459
33k
What's in a price? How to price your products and services
michaelherold
243
12k
BBQ
matthewcrist
85
9.3k
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Imperfection Machines: The Place of Print at Facebook
scottboms
264
13k
Into the Great Unknown - MozCon
thekraken
31
1.5k
Testing 201, or: Great Expectations
jmmastey
38
7k
Gamification - CAS2011
davidbonilla
80
5k
Transcript
1
2
Oracle APEXは企業向けの最高のローコード開発プラットフォームです。今日 はこれからOracle APEXをご存知ないという方を対象に、製品の紹介をさせて いただきます。 3
Oracle APEXを使うことによって、次のような作業が可能になります。 (左の図) Oracle APEXを使うことで、デスクトップ向け、および、モバイル向けのWeb アプリケーションを開発できます。 (真ん中の図) データベースに蓄積されたデータを使ったレポート、フォーム、チャート、 カレンダーなどを、素早く作ることができます。 (右の図)
IT技術者はもちろん、IT技術者でなくても、少しのSQLの知識があれば、アプ リケーションを作り始められます。 さらに、Oracle APEXはOracle Databaseが提供する機能の多くを利⽤することが できます。 4
Oracle APEXの特徴になります。 (左の図) アプリケーション開発に必要なツールはWebブラウザだけです。また、開発 したアプリケーションへは、URLとユーザーの認証情報のみでアクセスできま す。特別なクライアント・ソフトウェアは必要ありません。 (真ん中の図) Oracle APEXでは、アプリケーションとはメタデータ、つまり定義であり、そ れらはオラクルのデータベースの表に保存されます。ファイルへのコード⽣
成やコンパイルは⾏いません。 (右の図) すべてのページの処理はデータベース内でのデータ処理であり、オラクル・ データベースで実⾏されるPL/SQLによってページが⽣成されています。した 5
がって、すべてのデータはデータベースのキャッシュを有効に使います。と ても効率的にHTMLのページが⽣成され、それが結果として返されます。 5
Oracle APEXは、アプリケーションの実⾏に必要な、基本的なサービスや操作 を提供しています。 ユーザー認証、アクセス制御、データベースの操作、セッションの管理と保 護、それ以外にも多数のコンポーネントが標準で提供されています。 開発者は、これらを活⽤することにより、沢⼭のコードを記述するかわりに、 解決すべき問題に集中することができます。 コードをチェックインしたり、コンパイルする必要はありません。 設定を変更したり、コードを記述したら、すぐに保存して、それを実⾏して、 テストする、それを繰り返します。
6
Oracle APEXで開発したアプリケーションはレスポンシブ・デザインが採用さ れているため、追加のコーディングなしで、デスクトップからスマートフォ ンまでの、あらゆるデバイスの表示に対応しています。 7
Oracle APEXはアプリケーションの開発や実⾏を、追加ライセンス費⽤無しで ⾏うことができる、Oracle Databaseのオプション機能です。また、Oracle Databaseのサポート契約は、Oracle APEXも含んでいます。 OracleがCloudサービスとして提供しているすべてのデータベース・サービス で、Oracle APEXを利⽤することができます。APEXによるアプリケーション開 発に特化した、廉価なAPEXサービスや、運⽤の不要なAutonomous
Databaseの サービスがあります。これには無償利⽤可能なAlways Freeのサービスも含み ます。また、⼤規模の実装に適したExadata Cloud Service上でも利⽤可能です。 Oracle APEXはオラクル・データベースより、頻繁(ひんぱん)に更新がリリース されています。最新バージョンはOracleのソフトウェア・ダウンロード・サイ ト(https://apex.oracle.com/download/)にあるOracle APEXのページから⼊⼿して ください。 8
アーキテクチャーは単純です。 ブラウザからのページのリクエストやフォームのサブミットは、ミドルティ アを経由し、データベースの内部で処理され、そこで⽣成されたHTMLが応答 としてブラウザへ返されます。 ミドルティアはデータ処理や操作といったことは⾏わず、データベースで動 作しているAPEXがページ・リクエストを受け取り、DBのスキーマにあるデー タを使った処理を⾏います。 ミドルティアは、Javaアプリケーションサーバー上で動作するOracle REST Data
Service (ORDS)です。 ORDSを動作させるJavaアプリケーションサーバーとしては、Oracle WebLogic Server(WLS) 、Tomcatがあります。また、ORDS⾃体にStandaloneで動作する Jettyが含まれていますので、それを使うこともできます。 HTTPサーバーをORDSの前に配置して、静的なイメージはHTTPサーバーから提 供する、といった構成も⼀般的です。 9
Oracle APEXは操作する対象、レポートする対象のデータが含まれたデータ ベースで動作させると最も効率的です。 Oracle APEXはAPEXが実⾏されているデータベースで「ローカルに」SQLを 実⾏する以外にも、リモートのオラクル・データベースでSQLを実⾏するこ とができます。これはORDS 17.4から提供されているREST対応SQLの機能に 基づいています。ORDSでREST対応SQLの機能が有効になっていれば、SQL ⽂をHTTP
POSTメソッドで渡すことができます。実⾏結果は⾃⼰記述的 (self-describing)なJSONフォーマットで返されます。クライアントSQL*Netを 使わずに、Oracle DatabaseとHTTP/HTTPSといった⼀般的なプロトコルに よって通信することができます。REST対応SQLを使うための前提条件は、 ORDS 17.4以上がインストールされていることです。それ以前のORDS 3.0.x はREST対応SQLはサポートしていません。 Oracle APEXは共有コンポーネントとして、RESTサービスを定義する⽅法を 提供しています。この機能によって、開発者は外部のRESTサービスを直接操 作するコンポーネントを定義することができます。例えば、対話レポートで 外部のRESTサービスの出⼒を⼀覧できます。外部のRESTサービスを共有コ ンポーネントのWebソース・モジュールとして定義した後、対話レポートや 10
クラシック・レポートのデータ・ソースとして使⽤します。 その他に、SOA環境が提供するRESTまたはSOAPによるWebサービスや、 データベース・リンクを使ったリモート・システムとの統合が可能です。 10
Oracle APEXはOracleが提供意しているAutonomous Databaseにて利用可能です 。 また、Autonomous DatabaseはAlways Freeのサービス、つまり、期間の制限な く無料利⽤が可能なサービスも含まれているため、お⾦の⼼配をせずに始め ることができます。 11
OracleのAutonomous Databaseは、オラクルによってデータベースの運⽤管理 を⾏われる、フルマネージドのデータベース・サービスです。 データベースのタイプとして、OLTPむけとAnalytics向けの2種類があり、必要 に応じて選択します。 Oracle APEXはこのAutonomous Databaseサービスの標準機能として提供されて いるため、利⽤者は難しいデータベースの構築や運⽤に煩わされることなく、 すぐにアプリケーション開発を始めることができます。
12
ワークスペースとスキーマの関係は多対多 – many to many です。 組織で運⽤しているオラクル・データベースがひとつでも、それぞれ独⽴し てアプリケーションを開発できる複数のワークスーペースを持つことができ、 それによって複数の開発部隊をサポートすることができます。 それらのワークスペースに対して、必要であれば、ひとつ以上のスキーマへ
のアクセスを許可することができます。 DBAはインフラを管理します。それに対して、開発部隊はアプリケーション を作ることに専念します。 13
APEXはオラクル・データベースが動いていれば、ローカル、オンプレミス、 クラウドの、どこでも実⾏可能で、⾮常に柔軟性があります。開発環境や実 ⾏しているアプリケーションにアクセスするURLだけが必要です。 同じバージョンか、より⾼いバージョンのOracle APEXであれば、APEXアプ リケーションをインポートすることができます。 ラップトップで動作させているOracle Express Editionで開発して、その後、 アプリケーションをエクスポートして、Oracle
Database Cloud Serviceへ実 装することもできますし、⾼い負荷状況が発⽣するなら、プライベート・ク ラウドへ移動することもできます。 14
困ったことがあったり、分からないことがあったり、経験を共有したり、実 際に他のAPEX開発者に会ったり。 APEXにまつわる、これらの要望をまかなうための、書籍だったり、ディス カッション・フォーラムだったり、⼩さなミートアップから世界中から開発 者が集まるカンファレンスまで、⾊々な仕組みがあります。 コミュニティの情報が提供されているサイト、apex.oracle.com/community に は、これらの情報がたくさん集まっています。 (残念ながら、ほぼ英語/海外の情報のみ) ⽇本では、APEXユーザーグループが活動中です。
https://orclapex-jp.connpass.com 15
16
17
18
Oracle APEXのデモでよく使われているシナリオです。 スプレッドシートそれ自体に問題がある、というよりは、スプレッドシート それ自体が非常に便利であるため、スプレッドシート本来の機能ではない用 途で使われることで、問題が起こっています。スプレッドシートはそもそも 表計算ツールですから、それは非常にうまくこなします。 しかし、スプレッドシートはデータベースではありません。ですので、ひと つのシートをファイル共有して複数で更新するとか、回覧して更新する、と いったことを行うと色々と弊害が発生します。 (アプリケーションの作り方が、活用する機能として説明されています。)
スプレッドシートを元にOracle APEXでWebアプリケーションを作成すること で、そのような用途にうまく対応することができます。 (アプリケーションを作ることで得られる効果が、解決する問題として説明 されています。) 19
もしアプリケーションの開発が数日もしくは数週間で可能であれば、作成し ようと思えるアプリケーションもあります。 特定の機会にしか使われることのないアプリケーションや、一度きりしか使 われないアプリケーションをコストをかけて開発するということはありませ ん。また、そのようなアプリケーションを開発する場合は、再利用できるよ うに汎用的な設計にするため、要件がずっと増えることになり、さらに開発 期間が増えコストも増加します。 ローコードの機能、つまりウィザードや出来合いのコンポーネントを使って 、そのときに必要な要件だけを素早く実装することが可能であれば、ペーパ ー・ワークを置き換えるWebアプリケーションを、一人か二人のビジネス・
ユーザーによって行うことができます。 20
Oracle Formsを使ってアプリケーションを開発しているのであれば、Oracle APEXの学習は非常に容易です。 双方とも、SQLおよびPL/SQLによる開発を基本としています。また、すでに Formsで利用しているデータベースのパッケージ、プロシージャおよびファン クションを再利用することもできます。 Oracle Formsによるアプリケーションは、クライアント・サーバー型を前提と しているため、APEXのようなWebアプリとは実装できる機能に異なりがあり ます。例えば、画面の構成など、一画面に非常に多くの項目を詰め込むこと
は、Webアプリケーションでは一般に行いません。 そのような違いはあるため、Formsを置き換えるときは、一部分を取り出して APEXのアプリケーションを作成し、機能するかどうかを事前に確認します。 また、バックオフィスで、担当者に利用されるようなアプリケーションより は、セルフサービスのようなアプリケーションを置き換えるのに向いていま す。また、Webアプリとして開発されるため、パートナーや顧客向けのアプ リケーションといった、外部向けのアプリケーションにも向いています。 21
その他、Formsでは対応ができなかった、モバイルで利⽤されるアプリケー ションといった新規の要件にも対応できます。 21
Oracle APEXはOracle E-business Suiteの公式にサポートされた拡張ツールです。 Oracle E-Business Suiteで提供されていない機能や、追加の要件などをOracle APEXでアプリケーションを開発することにより対応することができます。 詳しくはオラクルのホワイトペーパーを参照してください。 Oracle
の Cloud ERPの拡張については、OracleからはVisual Builder Studioという ツールも提供されています。実装したい機能により、それぞれの開発ツール を選択することができます。 22
Oracle APEXは、オラクル社内でミッション・クリティカルなアプリケーショ ンの実装に使用されています。 社内では世界中の従業員が利用できる、ひとつのOracle APEXのインスタンス を提供し、誰でもワークスペースをリクエスストすることで、必要なアプリ ケーションの開発を始めることができるようになっています。 それ以外にも、外部サイトとしては、Oracle Store、社内では従業員ディレク トリといったサービスも利用されています。
23
Oracle APEXに含まれる主要なコンポーネントについて、⼤まかに説明してい きます。 24
こちらは、Oracle APEXの開発環境にログインした直後に表⽰されるページ、 つまり、ホーム・ページになります。 このページは、 Webアプリケーションを開発する機能である、アプリケーション・ビルダー データベースに含まれるオブジェクトのメンテナンスを⾏う、SQLワーク ショップ アプリケーション開発のライフサイクルを管理する、チーム開発 標準で添付されているアプリケーションの⼀覧である、アプリケーション・ ギャラリ
といった機能を提供する統合開発環境(IDE)の⼊り⼝になっています。 (21.1以降はアプリケーション・ギャラリはなくなり、サンプルはGitHubから 提供される予定)。 25
開発者による作業の⼤半は、アプリケーション・ビルダーを使った、アプリ ケーションの定義、拡張およびメンテナンスの実施になります。 26
基本的な操作⽅法 • 新たに要素の追加は、ドラッグ&ドロップ、または、メニューのショート カットにより⾏います。 • 複数のページ要素の更新を、⼀括で⾏うことができます。 • 変更に対する”Undo”および”Redo”が可能です。 • “保存”と“実⾏”により、すべての変更をデータベースに保存されます。
左ペイン • レンダリング、プロセスおよび共有コンポーネントは、それぞれがひとつ のパネルとしてまとめられ、左ペインに配置されています。 • 動的アクションも、ひとつにまとめられています。 • 要素の作成、移動、複製を実施するには、ドラッグ&ドロップを使うか、 もしくは、右クリックで表⽰される要素によって変わるメニューを使いま す。 • どのようなタイプの要素でも、ツリーから直接削除できます。 27
• ひとつまたは複数の要素をクリックして選択すると、グリッド・レイアウ ト上の要素がハイライトし、その詳細がプロパティ・エディタに表⽰され ます。複数の要素が選択されている場合は、共通したプロパティのみが表 ⽰対象となります。 中央ペイン • グリッド・レイアウト: コンポーネントの作成、移動、コピー、削除をド ラッグ&ドロップで実施します。
• ギャラリー: コンポーネント⼀覧を表⽰し、ページにドラッグ&ド ロップできます。 • メッセージ: 開発作業で⽣じたエラーや警告メッセージが表⽰されます。 • ページ検索: ページ内の要素やプロパティを検索します。 • ヘルプ: 選択されているコンポーネントに関するヘルプ情報が表⽰されます。 プロパティ・エディタ – 右ペイン • 現在選択されている要素の詳細を表⽰します。 • 複数の要素が選択されているときは、共通のプロパティを⼀度に編集でき ます。 • プロパティの効果的な設定⽅法として、さらに以下を提供します。 • ⼊⼒へのフィードバックの即時実施。 • 上位の設定に従って、それに依存した選択メニューに切り替え。 • 共通のプロパティ・タイプの設定を容易にする。 • 要素の定義を容易で直感的にすることで、⽣産性を⾼めます。 27
ページ・デザイナは、開発者によるOracle APEXのページの改善や保守をとて も容易にしました。 左ペインには各種ツリー・ビューが配置されます。それにはレンダリング、 動的アクション、プロセス、共有コンポーネントが含まれます。 中央ペインにはグリッド・レイアウトとコンポーネント・ギャラリーがあり、 新規にコンポーネントをドラッグ&ドロップで簡単に配置することができま す。 右ペインにはプロパティ・エディタがあり、選択したコンポーネントの属性 を別ページを開くことなく更新できます。
SQL、HTMLやCSSをテキストとして⼊⼒するときは、コード・エディタをポッ プアップさせて開くことができます。コード・エディタでは、⽂字列の検索 と置換、⾃動補完やSQLの検証を⾏うことができます。 また、作業をしている部分に容易に集中できるように、ユーザー・インター フェースをカスタマイズする様々な⽅法が提供されています。 28
開発者は、アプリケーションを開発している時間の多くを、アプリケーショ ン・ビルダーを使⽤して各種コンポーネントの定義や、更新、保守に費やす ことになるでしょう。 29
いくつものテーマとそれに含まれる数多くのテンプレートを提供するかわり に、ひとつのテーマとそれに集約されたテンプレート群が提供されています。 このユニバーサル・テーマを使って、素早く、簡単に、美しく洗練されたレ スポンシブなアプリケーションを⼿間をかけずに作ることができます。 Oracle APEX 18.1からjQuery MobileとjQuery Mobile UIはサポート対象外となって
います。まだ既存のアプリケーションがjQuery Mobile UIを使っている場合は、 ユニバーサル・テーマに移⾏する必要があります。 ユニバーサル・テーマはレスポンシブであるようにデザインされているため、 ⼤きさの異なる各種の画⾯に最適化されたルック&フィールになります。ス マホのような⼩さい画⾯向けにデザインされたアプリケーションのために、 Oracle APEX 18.1からは、jQuery Mobile UIを置き換えるための3種類のリー ジョンを提供しています。これは、リスト・ビュー、カラム・トグル・レ ポート、リフロー・レポートです。 30
テーマ・スタイルによって、ひとつのテーマで複数の配⾊をサポートします。 開発者は、配⾊の変更や、表⽰上の特徴、例えばボタンやアイテムの境界を テーマ・ローラーによって簡単に定義することが可能です。 これらの定義されたスタイルを保存することで、全くCSSを書かずに、すぐに アプリケーションに適⽤することができます。 開発者はP-Trackサンプルアプリケーションにて実装されているように、エン ドユーザーによる異なるスタイルの選択を許可することもできます。 31
ページを意図した通り表⽰させるために、似通ったテンプレートを沢⼭持っ たり、開発者が新しいテンプレートを定義したりする代わりに、テンプレー ト・オプションをそれぞれ設定して、レイアウト上の要件に容易に対応する ことができます。 32
Oracle APEXがホスティング・サービスとして提供されている場合は特に、 SQL*Netによる直接アクセスが許可されていないため、SQLワークショップが、 データベース・オブジェクトをメンテナンスする唯⼀の⽅法であることがあ ります。 SQLワークショップは開発者によってデータベース・オブジェクトのメンテナ ンスができることを念頭に、SQL Developerが持つ機能の⼀部を提供していま す。 33
クイックSQLは、データベース・オブジェクトである表、トリガーおよび索引 を作成するのに必要な⼿間を削減するよう作られました。 これは、スキーマ設計を置き換えるためのものではありません。単に、表や ビューを作成するための簡易な記述⽅法です。 ⼀旦、SQLが⽣成されると、それを変更したり書き⾜したりすることもできま す。クイックSQLは特別なテキストから、関係データ・モデルを⽣成するため に必要なSQLを素早く⽣成する⽅法を提供します。これを使って、マスター・ ディテール関係を作成したり、チェック制約をつけたり、さらにはサンプ ル・データの⽣成も可能です。 34
チーム開発はアプリケーション開発のライフサイクルを管理する⽅法を提供 します。 機能、To Do、バグは特定のアプリケーションとページに紐づけることができ ます。 フィードバックは開発者が直接アプリケーションの利⽤者より、コメント、 機能の要望、さらには、バグの報告を集める⽅法を提供します。バグの報告 には開発者による解析を容易にするために、それが発⽣した時点の重要な セッション・ステート情報も付加します。 チーム開発の機能は、Oracle
APEXの開発チームが、それ⾃体がOracle APEXの アプリケーションである、新しいOracle APEXのリリースを開発するために実 際に使⽤しています。 35
(21.1からGitHubからの提供になり、製品からは除かれる予定)。 36
Oracle APEXが提供している代表的な機能について説明します。 37
38
39
開発者はSQL⽂を定義して、対話レポートの作成ができます。 エンドユーザーは、対話レポートを操作することで⾃分⾃⾝が必要なレポー ト形式にカスタマイズできます。 これには、フィルタ、計算、集計、ハイライトにコントロール・ブレークの 追加が含まれます。 その他に、これらのデータを使って、チャートやグループ・バイ、ピボット といった定義もできます。 Audit Vaultというオラクルの製品があります。これは300のレポートを30の対 話レポートで置き換えた上で、レポーティングの機能を⼤幅に強化しました。
40
ファセット検索はインターネット上のアプリケーション、主に店舗や販売系 のウェブサイトでよく見られます。利用者は画⾯左か上に存在する、ファセ ットに検索条件を設定します。ファセットには選択可能な値とともに、現在 の検索結果に含まれる数が表示されます。利用者がファセットを変更すると 、即座にレポートの表示、ファセットの選択肢と出現数が更新されます。 Oracle APEX 19.2から提供されるファセット検索を使うことにより、開発者は 最小限の労力で完全に機能するファセット・ナビゲーションを実装できます 。APEXは、レポートやファセットのリフレッシュ、出現数の再計算に必要な
SQLの生成、レポートとファセットの統合といった低レベルの処理をすべて行 います。開発者はレポートのデータ・ソースと、ファセットおよびそのファ セットで使用する値のリストを宣言するだけです。 ファセット検索のページには、ファセット検索・リージョンとレポートのリ ージョンが含まれます。ファセット検索リージョンは、ページの左側に配置 され、値を選択することにより、検索結果の絞り込みを行います。続けて検 索結果を絞り込むことにより、利用者は欲しいデータを見つけることができ ます。ページの右側にクラシック・レポートのリージョンが配置され、レポ ートもしくはカード形式で表示されます。アプリケーション作成ウィザード 41
、ページ作成ウィザード共に、ファセット検索ページの作成をサポートして います。 41
APEX 20.2より、新しいリージョン・タイプとしてカードが追加されました。 それ以前のリリースでは、特定のカラム・エイリアスを持ったクラシック・ レポートを作成し、カードのテンプレートを使うことで、カードのレイアウ トを行なっていました。新しいカード・リージョンはこの複雑さを取り除き 、開発者はネィテイブなリージョン・タイプとしてカードを作成し、カード のプロパティでレイアウトを宣言的に制御できます。カードは小さなブロッ クに色々な情報を表示するのに便利です。カードは一般的に、より詳細な情 報へのエントリを提供するために、複数のアクションを定義することができ ます。カードを使うことにより、情報への適切なアクセス方法を提供するこ
とがdきます。 42
対話グリッドでも対話レポートと同様に、レポートの検索やカスタマイズと いった機能を利⽤者に提供します。さらに、対話グリッドでは、データの追 加、編集、削除をレポートから直接⾏うことができます。 対話グリッドは、その他にも、数多くのデータの表⽰⽅法を提供しています。 43
44
• サイズや位置はカスタマイズ可能。 • ダイアログ・ページから通常のページへのブランチ(ダイアログの クローズから別ページへのブランチ)や他のダイアログ・ページへの ブランチ(例えばウィザード)が可能。 • ダイアログ・ページがさらにダイアログ・ページを開くことが可能 (スタック・ダイアログ)。 •
基底ページに動的アクションを設定することで、モーダル・ダイア ログが閉じた時にコンテンツをリフレッシュすることが可能。 45
46
Oracle APEXは、データ視覚化を⾏うためにOracle JET (JavaScript Extension Toolkit) を採⽤しています。Oracle JETは最新のJavaScript、CSS3、およびHTML5 の設計と開発原理に基づくモジュラ式のオープン・ソースのツールキットで す。JavaScriptを使ったチャートは、⾼度なカスタマイズが可能、アクセシブ
ル(障害者⽀援への対応)、レスポンシブ・デザインをサポートしています。 Oracle JETをOracle APEXに組み込むことにより、美しく、⾼速で、⾼度なカス タマイズができる、多種多様なチャートを作ることができるようになりまし た。Oracle JETのデータ視覚化コンポーネントには、カスタマイズ可能な チャートやゲージ以外にも、データ分析⽤にデータを⼀覧表⽰したり、階層 表⽰するコンポーネントも含みます。 47
組み込みのカレンダーには、(JavaScriptライブラリの) FullCalendarを基にして います。 https://fullcalendar.io/ カレンダ・イベントの期間をドラッグ&ドロップにて、基となる表に直接反 映させることも可能です。 48
Oracle APEXではナビゲーション・メニューの定義が可能です。メニューには 複数のレベルを定義でき、また、メニュー⾃体は固定値による静的なリスト、 または、SQL問合せを使った動的に変更されるリストを基にすることができま す。 49
すべての開発者がJavaScriptやAJAXのエキスパートというわけではありません。 実際には、ほとんどはそのスキルセットを持っていないでしょう。 しかし、動的アクションによって、誰でもクライアント・サイドの動作を宣 ⾔的に定義できます。 たくさんのJavaScriptを記述する代わりに、開発者が単に条件と、その条件で の動作、影響を受ける要素を選びます。 APEXのエンジンは設定に従って、指定した動作を⾏うのに必要な、JavaScript とAJAXを実装します。 50
51
RESTデータ・ソースとして、RESTサービスや⼀般的なJSONのデータ・フィー ドをアプリケーションに定義することで、それらのデータをOracle APEXのコ ンポーネント、例えば、対話レポートや対話グリッドといったレポートで使 ⽤することができるようになります。 ESTデータ・ソースはひとつ、もしくは複数の外部のWebサービスを参照しま す。モジュールが複数のESTデータ・ソース操作を含むことで、より完全な Webサービスとして参照されます。 52
53
個別に開発されたコンポーネントをプラグインとして、アイテム・タイプ、 リージョン、認証、認可、動的アクションに組み込むことが可能です。 APEXの開発チームが提供しているものや、APEXのコミュニティで開発された 150以上のプラグインが提供されています。 54
いままで紹介してきた内容をまとめます。 55
56
57
58
59
60