Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Oracle APEX概要

Oracle APEX概要

Oracle APEXの概要、機能、製品コンポーネントなどの説明です。
Oracle APEX 19.1での説明になります。

ノート付きの資料です。

Yuji Nakakoshi

October 18, 2019
Tweet

More Decks by Yuji Nakakoshi

Other Decks in Programming

Transcript

  1. 2

  2. This is a Safe Harbor slide! If you are *not*

    an Oracle employee this slide should be deleted. For Oracle employees the Safe Harbor slide must be used if your presentation covers material affected by Oracle’s Revenue Recognition Policy 3
  3. 4

  4. Oracle APEXがどのように利用されているかの一例です。 Oracle APEXは幅広い業界で、利用者の規模の大小に関わらず、様々(さまざま)なビジネス上の問題を解決するた めに使用されています。簡単なところでは、スプレッドシートの置き換えから始まり、数千人が利用する、銀行や保険 の業界で利用されているアプリケーションもあります。APEXは、Oracleが提供しているERPソフトウェアである、Oracle E-Business Suiteの公式にサポートされる拡張ツールであり、利用者は簡単にEBSに機能追加を行うことができます。 (左の図) 変更の激しいビジネス上の要件にいち早く追従することや、競争優位性を最大化するようなアプリケーションを素早

    く作成するために、広く利用されています。作成されるアプリケーションはバックオフィスでの利用というよりは、主に 一般の従業員、パートナー、顧客を対象としています。 (真ん中の図) パッケージソフトウェアを既存のビジネスプロセスと統合するため、および、組織が持つ特別な要件を満たすための 拡張を行うために使われています。 (右の図) スプレッドシートやMS AccessによるアプリケーションをWeb化することによって、複数のユーザーが同時に使用でき る、セキュアで堅牢な”信頼できる唯一の情報源”として、アプリケーションを提供することができます。 その他、レガシーなクライアント・サーバー型のアプリケーションのモダナイズにも使用されています。 (まとめると) • デスクトップとモバイル・デバイスからの、データベースに保存されているデータの保守や可視化。 • エンタープライズ・アプリケーッションの拡張 • レガシー・アプリケーションのモダナイズ • デスクトップ・ツールとスプレッドシートのWeb化 今の所、これらが主な用途になっています。 6
  5. Oracle APEXの特徴になります。 (左の図) Webブラウザだけを使ってURLを指定することで開発環境にアクセスできます。また、開発したアプリケー ションへは、URLとユーザーの認証情報だけでアクセスできます。特別なクライアント・ソフトウェアは必要 ありません。 (真ん中の図) 宣言的なフレームワークであるOracle APEXのエンジンでは、アプリケーションとは定義であり、オラクルの データベースの表に保存されます。ファイルへのコード生成やコンパイルは行いません。

    (右の図) すべてのページの処理はデータベース内でのデータ処理であり、オラクル・データベースのスキーマで直 接実行されるPL/SQLによってページが生成されています。したがって、すべてのデータはデータベースの キャッシュを有効に使い、非常に効率的にHTMLのページが生成され、それが結果として返されます。 7
  6. Oracle APEXはアプリケーションの開発や実行を、追加ライセンス費用無しで行うことができる、Oracle Databaseのオプション機能です。また、Oracle Databaseのサポート契約は、Oracle APEXも含んでいます。 (スキーマ・サービスは日本でほぼ使われていないので、説明しない) Oracle Database Cloud Service

    – Schema Serviceを契約すると、Application Expressがあらかじめ構成され ていて、すぐに開発を開始できるオラクル・データベースのスキーマが提供されます。 Oracle APEXはオラクル・データベースより、頻繁(ひんぱん)に更新がリリースされています。最新バージョ ンはOracleのソフトウェア・ダウンロード・サイト(https://www.oracle.com/downloads/)にあるOracle APEXの ページから入手してください。 8
  7. ローコードによるアプリケーション開発の利点は、より少ない時間、より少ないコストで、最大の生産性を 安定して達成できることにあります。 Oracle APEXのようなローコード・フレームワークは、レポーティング、データ・ビジュアライゼーション、 フォーム制御といった強力なコンポーネントを含み、それらを活用してアプリケーションを開発します。この 方法によって、アプリケーション開発者はビジネス上の問題を解決すること、優れた解決方法を提供する ことに集中することができます。 従来のアプリケーション開発によくある、低レベルのコーディングに費やす時間をできるだけ短く、より少 ない作業にします。思いついたアイデアを数日のうちにアプリケーションとして完成させることができます。 数週間や数ヶ月ではありません。

    Oracle APEXの一般的な開発ステップは以下になります。 ステップ1 – データベースのオブジェクト、主に表を作成します。 ステップ2 – 作成したデータベース・オブジェクトを指定して、直にアプリケーションを開発します。 ステップ3 – アプリケーションを実行します。 Oracle APEXはローコード、高生産性のプラットフォームです。つまり、初めてでも、すぐにアプリケーション を作ることができます。事前の準備も、クライアント・ソフトウェアも、そして本当に素晴らしいことに、無料 で始められます。 Oracle APEXはローコード・ツールが備える、高い生産性、扱いやすさ、柔軟性と、エンタープライズ向け開 発ツールが備える、セキュリティ、一貫性、拡張性、可用性の双方が組み合わされた、Webアプリケーショ ンを開発するツールです。 10
  8. 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ソース・モジュールとして定義した後、対話レポートやクラシック・レポートのデータ・ソー スとして使用します。 その他に、SOA環境が提供するRESTまたはSOAPによるWebサービスや、データベース・リンクを使っ たリモート・システムとの統合が可能です。 13
  9. 最初はHTML DBという名前でリリースされました。 最新のOracle APEXのバージョンはAPEX 19.1で、Oracle Database、Oracle REST Data ServicesおよびOracle Cloud

    Serviceと整合性が取れるよう、リリースの番号づけが変わりました。 偶然ですが、APEXの最初のコードが書かれたのが、ちょうど19年前になります。 それからずっと、一貫性のある、モダンなアプリケーションを素早く、容易に作成するためのツールを提供 することで、開発者の能力を高める努力を続けています。 より詳しくは、apex.oracle.comに記載されている方針声明を参照してください。 [https://apex.oracle.com/ja/learn/resources/sod/] 16
  10. 18

  11. 19

  12. 基本的な操作方法 • 新たに要素の追加は、ドラッグ&ドロップ、または、メニューのショートカットにより行います。 • 複数のページ要素の更新を、一括で行うことができます。 • 変更に対する ”Undo” および ”Redo”

    が可能です。 • “ 保存 ” と “ 実行 ” により、すべての変更をデータベースに保存されます。 左ペイン • レンダリング、プロセスおよび共有コンポーネントは、それぞれがひとつのパネルとしてまとめられ、左ペインに配置されています。 • 動的アクションも、ひとつにまとめられています。 • 要素の作成、移動、複製を実施するには、ドラッグ&ドロップを使うか、もしくは、右クリックで表示される要素によって変わるメニューを使いま す。 • どのようなタイプの要素でも、ツリーから直接削除できます。 • ひとつまたは複数の要素をクリックして選択すると、グリッド・レイアウト上の要素がハイライトし、その詳細がプロパティ・エディタに表示され ます。複数の要素が選択されている場合は、共通したプロパティのみが表示対象となります。 中央ペイン • グリッド・レイアウト: コンポーネントの作成、移動、コピー、削除をドラッグ&ドロップで実施します。 • ギャラリー: コンポーネント一覧を表示し、ページにドラッグ&ドロップできます。 • メッセージ: 開発作業で生じたエラーや警告メッセージが表示されます。 • ページ検索: ページ内の要素やプロパティを検索します。 • ヘルプ : 選択されているコンポーネントに関するヘルプ情報が表示されます。 プロパティ・エディタ – 右ペイン • 現在選択されている要素の詳細を表示します。 • 複数の要素が選択されているときは、共通のプロパティを一度に編集できます。 • プロパティの効果的な設定方法として、さらに以下を提供します。 • 入力へのフィードバックの即時実施。 • 上位の設定に従って、それに依存した選択メニューに切り替え。 • 共通のプロパティ・タイプの設定を容易にする。 • 要素の定義を容易で直感的にすることで、生産性を高めます。 24
  13. いくつものテーマとそれに含まれる数多くのテンプレートを提供するかわりに、ひとつのテーマとそれに集 約されたテンプレート群が提供されています。 このユニバーサル・テーマを使って、素早く、簡単に、美しく洗練されたレスポンシブなアプリケーションを 手間をかけずに作ることができます。 Oracle APEX 18.1からjQuery MobileとjQuery Mobile UIはサポート対象外となっています。まだ既存のアプ

    リケーションがjQuery Mobile UIを使っている場合は、ユニバーサル・テーマに移行する必要があります。 ユニバーサル・テーマはレスポンシブであるようにデザインされているため、大きさの異なる各種の画面 に最適化されたルック&フィールになります。スマホのような小さい画面向けにデザインされたアプリケー ションのために、Oracle APEX 18.1からは、jQuery Mobile UIを置き換えるための3種類のリージョンを提供 しています。これは、リスト・ビュー、カラム・トグル・レポート、リフロー・レポートです。 27
  14. 33

  15. 35

  16. 36

  17. 40

  18. Oracle APEXは、データ視覚化を行うためにOracle JET (JavaScript Extension Toolkit) を採用しています。 Oracle JETは最新のJavaScript、CSS3、およびHTML5の設計と開発原理に基づくモジュラ式のオープン・ ソースのツールキットです。JavaScriptを使ったチャートは、高度なカスタマイズが可能、アクセシブル(障害

    者支援への対応)、レスポンシブ・デザインをサポートしています。 Oracle JETをOracle APEXに組み込むことにより、美しく、高速で、高度なカスタマイズができる、多種多様な チャートを作ることができるようになりました。Oracle JETのデータ視覚化コンポーネントには、カスタマイズ 可能なチャートやゲージ以外にも、データ分析用にデータを一覧表示したり、階層表示するコンポーネント も含みます。 41
  19. 42

  20. 48

  21. 50

  22. このサイトでは、SQLとPL/SQLの学習と、その結果の共有ができます。このサイトを利用する際に、オラク ル・データベース上のスキーマがひとつ、利用者にアサインされます。ここで実行したSQLやPL/SQLのコー ドは、セッションにひもづいて記録されます。割り当てられたスキーマは一時的なもので、一定時間使用し ないと、初期化されて他のユーザーに再利用されます。作業内容を永続的に保存するには、セッション内 の一連の記録をスクリプトとして保存する必要があります。保存したスクリプトは再実行でき、また、コメン トをつけたり編集を行った上で、他の利用者とシェアしたりダウンロードすることができます。 このサイトが持つ機能は以下です: • 定められた時間の範囲で、オラクル・データベースのスキーマでSQLを実行できます。 •

    一連のステートメントをスクリプトとして保存できます。 • 保存したスクリプトを他の利用者と共有できます。 • スキーマ内のオブジェクトを参照する、データベース・スキーマ・ブラウザが提供されています。 • SQL学習のための、チュートリアルが組み込まれています。 • Javaを含む主要な言語によるデータ・アクセスの例が含まれています。 このサイトの利用を推奨する理由は以下です: • オラクル・データベース、SQLおよびPL/SQLのスキルを向上させることができます。 • オラクルの開発者コミュニティによるSQLやPL/SQLの例文を参照できます。 • 自分自身で作成したSQLやPL/SQLの例文を、他の利用者と共有することができます。 • ここで開発したスキーマを、他のデータベースに実装することができます。 • オラクルのコミュニティから、SQLの記述方法について助言を求めることができます。 Live SQLは現在 Oracle Database 19c Enterprise Edition – 19.1.0.0.0 で動作しています。 55
  23. 58

  24. 61

  25. 63

  26. 65

  27. 66

  28. 68

  29. 69

  30. 71