Slide 1

Slide 1 text

Oracle APEXの紹介 Oracle APEXとは何か、始め方と学び方 日本オラクル株式会社 2025年2月6日

Slide 2

Slide 2 text

アジェンダ 1. Oracle APEXの始め方 2. Oracle APEXとは何か 3. ページの生成 4. 開発ツール 5. コンポーネント 6. 必要な技術 7. 学習と情報の入手 8. 質問する、相談する 4 Copyright © 2023, Oracle and/or its affiliates

Slide 3

Slide 3 text

Oracle APEXの始め方 5 Copyright © 2023, Oracle and/or its affiliates

Slide 4

Slide 4 text

無料で始める方法は3通り 6 Copyright © 2023, Oracle and/or its affiliates 1. https://apex.oracle.com/go/request-workspaceから無料のワークスペースを取得します。 2. https://signup.cloud.oracle.com/よりOracle Cloudのアカウントを取得し、Always Freeの Autonomous Databaseのインスタンスを作成します。 3. Oracle Database Express Editionのインスタンスを作成し、Oracle APEXをインストールします。 https://apex.oracle.comにアクセスし、今日から無料で開始をクリックします。

Slide 5

Slide 5 text

無料のワークスペースの取得 • 以下を入力し、Request Workspaceをクリックします。 • 名(First name)、姓(Last name) • メールアドレス(Email) • 国(Your Location) • APEX使用経験の有無(Are you new to Oracle APEX?) • 授業や研修での使用かどうか(Do you plan to use APEX for education or training?) • 利用規約の承諾(I agree to the terms of the Oracle APEX Service Agreements) • 指定したメールアドレスにメールが届くので、Create Workspaceをクリックします。 • 検証用途に限定されています。 • 容量は50MBです。 • 不具合と思われる事象の再現ケースをOracle Supportと 共有するためにも使用できます。 • 利用できる機能の制限はほぼありません。 7 Copyright © 2023, Oracle and/or its affiliates

Slide 6

Slide 6 text

Oracle CloudのAlways Free Autonomous Database • Oracle Cloud Free Tierのアカウントにサインアップします。 • 通常、本人確認のためにクレジットカード番号の入力を求 められます。 • アカウントをアップグレードするまでは、クレジットカー ドに課金されることはありません。 • Always FreeのAutonomous Databaseは2インスタンスまで作 成できます。 • 1 OCPU(オーバーサブスクリプションあり) • 容量は20GBまで。 • 機能制限はありません。 • 文字や数値データのみ、少人数での利用であれば、実用に 耐える環境です。 参考: The story behind a COVID-19 exposure-tracking application in Finland https://blogs.oracle.com/database/post/covid-19-tracking-app-finland On the busiest day recorded, the application had 600,000 distinct users, and the peak period had 300,000 users in a two-hour period, which the application was able to handle quickly. 8 Copyright © 2023, Oracle and/or its affiliates

Slide 7

Slide 7 text

Oracle Database 23ai Free + Oracle APEX • Oracle Database 23ai Freeがインストールできる環境で あれば、どこでも実装可能です。 • Oracle Container Registryより23ai FreeとOracle REST Data Servicesのコンテナ・イメージが提供されています。 • x86-64, ARM64の双方のアーキテクチャに対応して います。 • Oracle Database 23ai Freeの制限 • CPUスレッド: 2 • ユーザー・データ: 12 GB • 利用可能なメモリ: 2 GB • 利用可能な機能に制限はありません。 • サポート契約がないため、パッチは適用できません。 • インストール、構成、管理を自分で行う必要がありま す。 • ライセンスについては、Oracle Free Use Terms and Conditionsを参照してください。 9 Copyright © 2023, Oracle and/or its affiliates REST Data Services、APEX、 Databaseが構成済みの VirtualBox仮想アプライアンスも提供されています。 https://www.oracle.com/database/technologies/databaseappdev-vm.html Oracle Container Registry https://container-registry.oracle.com/

Slide 8

Slide 8 text

Oracle APEXとは何か 10 Copyright © 2023, Oracle and/or its affiliates

Slide 9

Slide 9 text

Oracle APEXとは? 11 Copyright © 2023, Oracle and/or its affiliates • Oracle Databaseで動作するエンタープライズ・アプリケーション向けのローコード・アプリケーショ ン・プラットフォーム(Low Code Application Platform – LCAP)です。 • アプリケーション開発ツール、各種ユーティリティ、アプリケーションの実行環境を含みます。 開発者が作成した アプリケーションの実行 開発を支援する 各種ユーティリティ アプリケーションを 開発するツール

Slide 10

Slide 10 text

概要 12 Copyright © 2023, Oracle and/or its affiliates すべての処理、データ操作およびビジネス・ロジックは、データベースで実行されます。 WebブラウザからのHTTPリクエストはOracle REST Data Services (ORDS)に送信され、そこでア クション対象のOracle Databaseに渡されます。データベース内で、リクエストはOracle APEX によって処理されます。処理が完了すると、その結果はORDSを介してブラウザに戻されま す。

Slide 11

Slide 11 text

ステートレス・アクセス 13 Copyright © 2023, Oracle and/or its affiliates POST /ords/wwv_flow.accept GET /ords/r/… Call wwv_flow.show(…) Call wwv_flow.accept(…) POST /ords/wwv_flow.ajax Call wwv_flow.ajax(…) ページの表示 フォームの送信 データの要求 セッションID Oracle REST Data Services (ORDS)は受け取ったURLとパラメータを引数に変えて、PL/SQLのプ ロシージャを呼び出します。セッションIDはつねにパラメータに含まれます。ORDSはス テートを保持しません。

Slide 12

Slide 12 text

リファレンス・アーキテクチャ 14 Copyright © 2023, Oracle and/or its affiliates 参照(機械翻訳): https://docs.oracle.com/ja/solutions/deploy-ords-ha-oci/index.html Oracle REST Data Services(ORDS)は完全にステート レスであるため、ロード・バランサーの配下に複 数配置することで可用性を確保できます。 データベースの可用性は、Real Application Clusters(RAC)やData Guardの構成によって確保しま す。

Slide 13

Slide 13 text

メタデータ駆動 15 Copyright © 2023, Oracle and/or its affiliates コンポーネント テンプレート SQL, PL/SQL セッション・ステート JavaScript, CSS メタデータ SELECT * FROM EMP SQLの実行結果をテンプレートに埋め込む (データベースにて実行)

Slide 14

Slide 14 text

メタデータとは? Oracle APEXのすべてのデータ(ワークスペース、 アプリケーション、ページ、コンポーネント設 定、etc.)は、APEX_XX0X00(XX0X00はバージョ ン)スキーマに保存されています。 メタデータを参照するビューが提供されていま す。 アプリケーションID 140のページ2にある 対話モード・レポートに含まれる列とその型を 一覧します。 16 Copyright © 2023, Oracle and/or its affiliates select region_name, form_label, column_type from APEX_APPLICATION_PAGE_IR_COL where application_id = 140 and page_id = 2 order by display_order

Slide 15

Slide 15 text

Oracle APEXの開発ツールもOracle APEXのアプリケーション 17 Copyright © 2023, Oracle and/or its affiliates システム提供の メタデータ APEX_XX0X00スキーマ ユーザー データ アプリケーションの メタデータ ユーザーのスキーマ PL/SQLライブラリ Oracle APEXの開発ツール ユーザーが開発したアプリケーション

Slide 16

Slide 16 text

ページの生成 18 Copyright © 2023, Oracle and/or its affiliates

Slide 17

Slide 17 text

HTMLDB以前(〜2004) • HTMLの生成を、全てコー ドで行う。 • PL/SQL Gateway、 mod_plsqlと呼んでいたも の。 • OWA_UTILなどの OWA_xxxxパッケージに よるHTTPプロトコルの 処理 • HTP, HTFパッケージによ るHTML出力 • マニュアル「PL/SQLパ ッケージおよびタイプ ・リファレンス」に記 載。 • 現在も使えます。 HTMLDB(2004〜) • HTMLの生成は、テンプレ ートを元に行う。 • 一貫したUIを提供するテ ンプレートの集まりがテ ーマ。 • コードは不要になった 。 • 表現の違いで大量のテ ーマとテンプレートを 作成。 • ユニバーサル・テーマ以 外は製品に含まれません が、異なるテーマは現在 も使えます。 ユニバーサル・テーマ(2015〜) • 表現の違いはCSSで吸収し 、テンプレートは1つに する。 • HTML5 + CSS3 • Bootstrapに似たグリッ ド • レスポンシブ・デザイ ン • 現在提供されている唯一 のテーマです。 対話グリッド(2016〜) • リージョンをコンポーネ ント化する。 • 対話グリッド • カード • Oracle JETチャート • カレンダ(FullCalender – Third Party) • テキスト・エディタ (CKEditor – Thrid Party) • コンポーネントの利用は 、現在のトレンドです。 19 Copyright © 2023, Oracle and/or its affiliates Oracle APEXの移り変わり Oracle APEXの初期の実装について: My Personal Thanks to the Chicago Police Department - the First Real Proving Ground for Oracle APEX https://joelkallman.blogspot.com/2019/11/my-personal-thanks-to-chicago-police.html

Slide 18

Slide 18 text

見た目の変更でも、コードの変更 create or replace procedure prcemp as l_page clob; begin l_page := ''; l_page := l_page || ''; l_page := l_page || '従業員番号従業員名'; for c in (select empno, ename from emp) loop l_page := l_page || ''; l_page := l_page || c.empno; l_page := l_page || ''; l_page := l_page || c.ename; l_page := l_page || ''; end loop; l_page := l_page || ''; -- return l_page; l_page := l_page || ''; owa_util.mime_header('text/html',true,'utf-8'); htp.prn(l_page); end prcemp; PL/SQL Gatewayを使ってみる 20 Copyright © 2023, Oracle and/or its affiliates

Slide 19

Slide 19 text

当時のコードの活用 動的コンテンツ Copyright © 2023, Oracle and/or its affiliates 21 の出力は除く

Slide 20

Slide 20 text

HTMLDB – テーマ(テンプレートの集合)の導入 (1) create table templates ( "HTML" varchar2(4000), "BODY" varchar2(4000), "TABLE" varchar2(4000), "ROW" varchar2(4000), "HEADER" varchar2(4000), "DATA" varchar2(4000) ); insert into templates values ( '#HTML#', '#BODY#', '#TABLE#', '#ROW#', '従業員番号従業員名', '#EMPNO##ENAME#' ); create table sql_source ( "SQL" varchar2(4000) ); insert into sql_source values ( 'select * from emp' ); 22 Copyright © 2023, Oracle and/or its affiliates ページの雛形となるHTML(テンプレート)を データベースに保存します。 アプリケーションとして実行するコードも データベースに保存します。

Slide 21

Slide 21 text

テンプレートとSQLを開発 HTMLDB – テーマ(テンプレートの集合)の導入 (2) Copyright © 2023, Oracle and/or its affiliates 23 create or replace procedure prcemp2 as r_tpl templates%rowtype; r_sql emp%rowtype; l_sql varchar2(80); l_row varchar2(32767); l_page varchar2(32767); c sys_refcursor; begin select * into r_tpl from templates; -- テンプレートをメモリにロードする。 select "SQL" into l_sql from sql_source; -- 実行するSQLをメモリにロードする。 /* SQLの実行結果でテンプレートの穴埋めを行う。l_contentがページになる。 */ l_row := replace(r_tpl."ROW", '#ROW#', r_tpl."HEADER"); -- 行テンプレートをヘッダー行で置き換える。 l_page := l_page || l_row; -- 出力に追加する。 open c for l_sql; -- SQLを実行する。 loop fetch c into r_sql; exit when c%notfound; l_row := r_tpl."DATA"; -- データ行のテンプレートを選択する。 l_row := replace(l_row, '#EMPNO#', r_sql.empno); -- 従業員番号を置き換える。 l_row := replace(l_row, '#ENAME#', r_sql.ename); -- 従業員名を置き換える。 l_row := replace(r_tpl."ROW",'#ROW#', l_row); -- 行テンプレートをデータ行で置き換える。 l_page := l_page || l_row; -- 出力に追加する。 end loop; close c; l_page := replace(r_tpl."TABLE", '#TABLE#', l_page); -- 表テンプレートをヘッダーとデータで置き換える l_page := replace(r_tpl."BODY", '#BODY#', l_page); -- 本文テンプレートを表で置き換える l_page := replace(r_tpl."HTML", '#HTML#', l_page); -- HTMLテンプレートを本文で置き換える /* 以上でページが完成した。クライアントへ送信する。 */ owa_util.mime_header('text/html',true,'utf-8'); htp.prn(l_page); end prcemp2;

Slide 22

Slide 22 text

レポートとテンプレート 24 Copyright © 2023, Oracle and/or its affiliates • リージョンを作成し、タイプを(クラシッ ク)レポートとします。 • 実行するSQLを定義します。 select * from emp

Slide 23

Slide 23 text

テンプレートの切り替え 25 Copyright © 2023, Oracle and/or its affiliates Standard Value Attribute Pairs -Column Value Attribute Pairs -Row テンプレートの切り替えに よって、見かけを変更でき ます。

Slide 24

Slide 24 text

テンプレートの定義 行の前(TABLE要素開始)
#TOP_PAGINATION#
各行の前(TR要素開始) 列ヘッダー・テンプレート(TH要素) #COLUMN_HEADER# 列テンプレート(TD要素) #COLUMN_VALUE# 各行の後(TR要素終了) 行の後(TABLE要素終了)
#PAGINATION#
26 Copyright © 2023, Oracle and/or its affiliates

Slide 25

Slide 25 text

ユニバーサル・テーマの導入 多数のテーマから1つのテーマへ 27 Copyright © 2023, Oracle and/or its affiliates 以前: 見た目を調整するために、テーマ(テンプレートの セット)が多数 現在: ユニバーサル・テーマ = HTML5 + CSS3 APEX Universal Theme Reference Application https://apex.oracle.com/ut

Slide 26

Slide 26 text

レスポンシブ・デザイン 28 Copyright © 2023, Oracle and/or its affiliates PC Tablet Smartphone Oracle APEXのユニバーサル・テーマUIは、大きい画面と同じように小さい画面でも 適切に動作するように、当初から完全にレスポンシブに設計されています。

Slide 27

Slide 27 text

テーマ・ローラー – UIのカスタマイズを簡単に CSS、CSS変数の設定をGUIで行う テーマ・ローラー それぞれのコンポーネントの • 表示色 • 形 • 大きさ などを設定します。 テーマ・スタイル • Redwood Light • Vita • Vita – Dark • Vita – Red • Vita – Slate 独自のテーマ・スタイルも作れます。 直接CSSを書き込むことも可能です。 29 Copyright © 2023, Oracle and/or its affiliates

Slide 28

Slide 28 text

よりモダンな形式へ 対話グリッドの導入 – リージョンのコンポーネント化 Copyright © 2023, Oracle and/or its affiliates 30 • リージョン内はテンプレートを使わず ブラウザ側でレンダリング • ページ全体の送信をせずに更新

Slide 29

Slide 29 text

容易なコンポーネント開発 テンプレート・コンポーネント(23.1以降) Copyright © 2023, Oracle and/or its affiliates 31 • コンポーネントはプラグインとして開 発する必要がありました。 • テンプレート・コンポーネントは宣言 的に定義でき、ほぼコーディングなし で、コンポーネントを作成できます。

Slide 30

Slide 30 text

開発ツール 32 Copyright © 2023, Oracle and/or its affiliates

Slide 31

Slide 31 text

ホーム・ページ 33 Copyright © 2023, Oracle and/or its affiliates Webアプリケーション開発とSQLデータベース開発を行う開発環境

Slide 32

Slide 32 text

アプリケーション・ビルダー グラフィカルなアプリケーション開発機能 34 Copyright © 2023, Oracle and/or its affiliates

Slide 33

Slide 33 text

ページ・デザイナ アプリケーション開発作業のほとんどは、ページ・デザイナを使った作業になります。 ページに表示されるコンポーネントの配置、表示方法、ボタンを押したときの処理などを記述します。 35 Copyright © 2023, Oracle and/or its affiliates

Slide 34

Slide 34 text

ビューとプロパティ・エディタ(1) 36 Copyright © 2023, Oracle and/or its affiliates レンダリング 動的アクション プロセス 共有 コンポーネント ページ・デザイナ ビュー プロパティ エディタ

Slide 35

Slide 35 text

レンダリング・ビュー 37 Copyright © 2023, Oracle and/or its affiliates 画面に表示されないコンポーネント • 計算 • ページ・アイテムの値の設定、導出、変更。 • プロセス • サーバー側で実行される任意の処理。 • データベースからの行の読み取りとページ・アイテムへの設定。 • ブランチ • いわゆるリダイレクトの設定。 • 条件などを考慮し、別ページにリダイレクトさせる。 • そのため、ページ処理の前に設定する。 画面に表示されるコンポーネント • リージョン • レポート、チャート、カレンダー、フォーム、静的コンテンツなど、 多くのHTML要素からなるコンポーネント。 • アイテム • テキスト・フィールドや日付ピッカーなど、ひとつの値を保持する コンポーネント。 • ボタン • クリックにより、処理を呼び出すコンポーネント。

Slide 36

Slide 36 text

動的アクション・ビュー 38 Copyright © 2023, Oracle and/or its affiliates イベント • ブラウザで発生するイベントです。 • クリック、(値の)変更、マウス・エンター、フォーカスの取得、 スワイプなどがあります。 動的アクション • ブラウザで発生するイベントとイベント・ターゲットを紐付け、 イベント・リスナーを構成します。 • リージョン、ページ・アイテム、ボタンなどがイベント・ター ゲットになります。 アクション • イベント・リスナーのコールバックの実装になります。 • 標準のアクションとして、値の設定、リフレッシュ、表示、非表 示、リージョンを開く、閉じるなどがあります。 • サーバー側のコード(PL/SQL - DB 23cではJavaScriptも)、クライ アント側のコード(JavaScript)として、コーディングも可能です。

Slide 37

Slide 37 text

プロセス・ビュー 39 Copyright © 2023, Oracle and/or its affiliates プロセス • 実行するプロセスのタイプを選択し、それに 必要な設定を行う。 • ページ・アイテムの値を元に、データベース への挿入/更新/削除を行う。 • データベース以外の操作も可能。 • PL/SQLまたはJavaScript(23cより)でコーディ ングができる。 ブランチ • ボタンの押下(FormのSubmit受付)後のペー ジの移行先を指定する。 • 移行先のページのレンダリング・ツリーが処 理される。

Slide 38

Slide 38 text

40 Copyright © 2023, Oracle and/or its affiliates • 複数のページを一度に作成する、単純で 洗練されたウィザード • ダッシュボード、マスター・ディテール といった、より高度なページを作成可能 • アクセス制御、アクティビティ・レポー ト、テーマ・スタイルの選択といった、” 機能”と呼ばれる、共通フレームワークの 追加をサポート • テーマ・スタイルやアプリケーション・ アイコンなどのユーザー・インターフェ ースをカスタマイズ アプリケーション作成ウィザード

Slide 39

Slide 39 text

ページ作成ウィザード • 既存のアプリケーションにページを作成す る、単純で洗練されたウィザード • ダッシュボード、マスター・ディテール、リ スト・ビュー、モバイル向けレポート、と いった、より高度なページを作成可能 • 既存のアプリケーションに、アクセス制御、 アクティビティ・レポート、テーマ・スタイ ルの選択といった、”機能”と呼ばれる、共通 フレームワークの追加をサポート 41 Copyright © 2023, Oracle and/or its affiliates

Slide 40

Slide 40 text

SQLワークショップ ブラウザからデータベース・オブジェクト自体や、表示、含まれるデータのメンテナンスを行う機能 特にホスティング環境にて、アプリケーション開発者が上記作業を実施できるよう設計 42 Copyright © 2023, Oracle and/or its affiliates

Slide 41

Slide 41 text

オブジェクト・ブラウザ • データベース・オブジェクト(表、索引、 ビュー、パッケージ、タイプ、トリガー等) の一覧、作成、変更、削除を実行できます。 43 Copyright © 2023, Oracle and/or its affiliates

Slide 42

Slide 42 text

SQLコマンド • SQL、PL/SQLを実行できます。 • データベースが23cであれば、サーバー側の JavaScriptを実行できます。 44 Copyright © 2023, Oracle and/or its affiliates

Slide 43

Slide 43 text

SQLスクリプト SQLまたはPL/SQLのスクリプトの保存と実行がで きます。 45 Copyright © 2023, Oracle and/or its affiliates

Slide 44

Slide 44 text

データ・ワークショップ • CSV、Excel、XML、JSON形式のデータのロー ド、 • CSVまたはXML形式のデータのアンロードがで きます。 46 Copyright © 2023, Oracle and/or its affiliates

Slide 45

Slide 45 text

データ・ジェネレータ • テスト・データの生成条件(ブループリン ト)を定義し、 • テスト・データの生成を行います。 47 Copyright © 2023, Oracle and/or its affiliates

Slide 46

Slide 46 text

クイックSQL • マークダウンに似た簡易記法による、データ モデルの設計およびプロトタイプの生成を素 早く実施 • 標準のOracle SQLを補完 48 Copyright © 2023, Oracle and/or its affiliates

Slide 47

Slide 47 text

APEXワークフロー(23.2以降) • Oracle APEXのアプリケーションにワークフロー を定義できるようになりました。 • 作成したワークフローはオラクル・データ ベースで実行されます。 • ユーザー・インターフェースはOracle APEXのア プリケーションとして開発できます。 50 Copyright © 2023, Oracle and/or its affiliates

Slide 48

Slide 48 text

ギャラリ 51 Copyright © 2023, Oracle and/or its affiliates サンプル・アプリケーション スターター・アプリケーション それぞれの機能の実装方法を紹介しています。 実装例は包括的で、この実装ができれば上級者です。 一通りの機能を実装した完成度の高いアプリケー ションです。

Slide 49

Slide 49 text

コンポーネント 52 Copyright © 2023, Oracle and/or its affiliates

Slide 50

Slide 50 text

データ・ソース ローカル・データベース • 表/ビュー • SQL問合せ(静的SQL) • SQL問合せを返すファンク ション本体(動的SQL) REST対応SQL • リモートでのSQL実行 • Oracle (全CRUD操作) • MySQL(リードのみ) • キャッシュ対応 RESTデータ・ソース • REST APIの呼び出し • JSONオブジェクトの配列を受 け取る。 53 Copyright © 2023, Oracle and/or its affiliates 色々な方法で更新対象となるデータを読み出すことができます。

Slide 51

Slide 51 text

レポーティング クラシック・レポート サーバー側でHTMLを生成。 テンプレートの変更により、表 形式以外でも表示可能。 対話モード・レポート クライアント側でHTMLを生成。 クライアント側で表示形式を変 更できる。(チャートなど) 対話グリッド クライアント側でHTMLを生成。 表示以外に更新も可能。 54 Copyright © 2023, Oracle and/or its affiliates サンプル・アプリケーションSample Reportingより

Slide 52

Slide 52 text

対話グリッド(Oracle APEX 5.1〜) フォーム(Oracle APEX 19〜) データ操作に使用するコンポーネント Copyright © 2023, Oracle and/or its affiliates 55 • それまでの対話モード・レポートは データの更新ができない。 • ページの全体の送受信を行わず、デー タのCRUD操作を行う。 • データ更新用の専用リージョンは無かった (プロセスがあるだけ)。 • 送信されたページを処理する。 • 設定は対話グリッドを踏襲している。

Slide 53

Slide 53 text

検索 ファセット検索 ファセットで検索条件指定。 検索結果はレポートやカードで 表示する。 スマート・フィルタ スマート・フィルタで検索条件 指定。 検索結果はレポートやカードで 表示する。 検索リージョン 検索リージョンに結果を表示す る。 検索対象を共有コンポーネント の検索構成として作成する。 56 Copyright © 2023, Oracle and/or its affiliates

Slide 54

Slide 54 text

• カード・リージョンは、Oracle APEXのネイティ ブのリージョンタイプです。 • データを小さなブロックに、グラフィカルに 表示します。 • ファセット検索や一目でわかる情報の提示に 理想的な、強力で柔軟な方法を開発者に提供 します。 カード 57 Copyright © 2023, Oracle and/or its affiliates

Slide 55

Slide 55 text

チャート • Oracle JETが提供する多くのチャートが利用可 能です。 58 Copyright © 2023, Oracle and/or its affiliates

Slide 56

Slide 56 text

マップ 59 Copyright © 2023, Oracle and/or its affiliates • 地図上にマーカー、ライン、ポリゴンを表示できま す。 • ヒートマップの表示もサポートしています。 • 座標の数値、GeoJSONとともに、Oracle Spatialの SDO_GEOMETRY型を扱うことができます。 • Oracle Spatialの空間演算子を使った問合せの結果を表 示できます。 • リージョンの実態はMapLibre GL JS(1.15.2)です。

Slide 57

Slide 57 text

RESTデータ 60 Copyright © 2023, Oracle and/or its affiliates • GitHubのリポジトリAPIを呼び出すRESTデー タ・ソースのサンプルです。 • RESTfulサービスのサンプルとして導入される モジュールoracle.example.hrを使った、REST API による更新のサンプルを含みます。 • エンドポイントのセットアップが必要です。

Slide 58

Slide 58 text

APEXワークフロー 61 Copyright © 2023, Oracle and/or its affiliates • APEXワークフローの使用方法を紹介したサンプルです。 • 表EMPのデータを使って、給与、ジョブの変更を申請しま す。また、ラップトップ・コンピュータの購入申請を実装 しています。

Slide 59

Slide 59 text

カレンダ 62 Copyright © 2023, Oracle and/or its affiliates • FullCalendar – FullCalendar.ioを使用していま す。 • FullCalendarのバージョンは5.11.2です。

Slide 60

Slide 60 text

ツリー 63 Copyright © 2023, Oracle and/or its affiliates • SQLのCONNECT BY句を使った階層問い合わせの 結果を表示する際に使用します。

Slide 61

Slide 61 text

マスター・ディテール 64 Copyright © 2023, Oracle and/or its affiliates • マスター・ディテールのページは、既存のコ ンポーネントの組み合わせから出来ていま す。 • ページ作成ウィザードを使って作成できる、 積み上げ(Stacked)、左右(Side by Side)、ドリル ダウン(Drill-Down)形式のマスター・ディテー ル・レポートの実装サンプルです。

Slide 62

Slide 62 text

データ・ローディング • Oracle APEXで実装できるデータ・ローディングのサ ンプルです。 • CSV、Excel、XML、JSON形式のファイルをデータベー スにロードします。 • ロード中に値の置き換えを行います。 • ロード中にタイムアウトが発生しないよう、バック グラウンドでのロードを実装しています。 • APEX_DATA_PARSERパッケージを使ったデータロード もサンプルに含みます。 65 Copyright © 2023, Oracle and/or its affiliates

Slide 63

Slide 63 text

ファイルのアップロード・ダウンロード 66 Copyright © 2023, Oracle and/or its affiliates • ファイルをアップロードして、データベース の表のBLOB列に保存するサンプルです。 • ファイルをダウンロードするためのリンク を、レポートやフォームに配置する方法も紹 介しています。

Slide 64

Slide 64 text

動的アクション 67 Copyright © 2023, Oracle and/or its affiliates • ブラウザで発生するイベントに対して、実行 するアクションを定義します。 • 画面上のコンポーネントの表示/非表示、レ ポートのリフレッシュなどを実行できます。 • 処理をJavaScriptで記述することもできます。 • サーバー側のコードを呼び出すこともできま す。

Slide 65

Slide 65 text

PWA 68 Copyright © 2023, Oracle and/or its affiliates • 実装サンプルではありません。 • Oracle APEXでPWA(Progressive Web Apps)を実装す る方法を解説しているアプリケーションです。 • PWAはまだ発展途上で、プラットフォームやブラウ ザ毎にサポートされる機能が異なります。

Slide 66

Slide 66 text

必要な技術 69 Copyright © 2023, Oracle and/or its affiliates

Slide 67

Slide 67 text

Oracle APEXによる開発に必要な技術 • Oracle Application Express • データ・モデリング • SQL • Oracle PL/SQL & JavaScript • HTML5, CSS & JavaScript • ネットワーク・セキュリティとデータ・セキュリティの理解 • データベースのパフォマンス・チューニング 70 Copyright © 2023, Oracle and/or its affiliates

Slide 68

Slide 68 text

データ・モデリング 独立行政法人 情報処理推進機構(IPA) データベーススペシャリスト試験(DB) 出題範囲に含まれています。 71 Copyright © 2023, Oracle and/or its affiliates https://www.ipa.go.jp/shiken/kubun/db.html

Slide 69

Slide 69 text

SQL Oracle Databaseで実行可能なSQLの多くは、標準の SQL規格に完全に準拠しています。 72 Copyright © 2023, Oracle and/or its affiliates

Slide 70

Slide 70 text

リレーショナル・モデル以外のデータモデルのサポート • RDFナレッジ・グラフのサポート • SEM_MATCH関数とSPARQLによる問い合わせ • 主語、述語、目的語のトリプルにて情報を表現 • W3C勧告 RDF – Resource Description Framework • SQLプロパティ・グラフのサポート(DB23cより) • SQL GRAPH_TABLE問い合わせ • オブジェクトまたは頂点のセットと、それをつなぐ矢印またはエッジのセット • ISO/IEC SQL Property Graph Queries (SQL/PGQ) 標準のサポート • ドキュメント(JSONネイティブ・タイプ)のサポート • JSON_QUERY、JSON_TABLE、JSON_VALUEなどの一連のファンクション • JSON(JavaScript Object Notation)による情報の表現 • ISO/IEC 19075-6:2021 SQL for JavaScript Object Notationのサポート • XMLドキュメントのサポートも継続 73 Copyright © 2023, Oracle and/or its affiliates

Slide 71

Slide 71 text

Flows for APEXによるBPMN 2.0のサポート • Flows for APEXによりBPMN2.0によるワークフ ローの定義ができます。 • Flows for APEXはオープンソースのプロジェク トです。 • Flows for APEXはOracle APEXの製品に含まれませ ん。 https://flowsforapex.org/ 74 Copyright © 2023, Oracle and/or its affiliates

Slide 72

Slide 72 text

Oracle PL/SQL & JavaScript • Oracle PL/SQLは、OracleによるSQLの手続き言語 拡張です。 • 通常の手続き言語が持つ、条件分岐、繰り返 し実行、変数の利用、サブプログラムの作成 が可能です。 • Oracle Database 21cでは、より一般的な言語で あるJavaScriptによる記述も可能になりまし た。 75 Copyright © 2023, Oracle and/or its affiliates

Slide 73

Slide 73 text

HTML5, CSS & JavaScript • ブラウザ上のHTML5, CSS および JavaScript を 使った開発も可能です。 • 作成したアプリケーションに組み込むことが できます。 76 Copyright © 2023, Oracle and/or its affiliates

Slide 74

Slide 74 text

学習と情報の入手 77 Copyright © 2023, Oracle and/or its affiliates

Slide 75

Slide 75 text

日本語の情報は以下から辿れます。 https://apex.oracle.com/go/japan 公式ホーム・ページは以下。 https://apex.oracle.com/ ホーム・ページ 78 Copyright © 2023, Oracle and/or its affiliates

Slide 76

Slide 76 text

Oracle APEX開発者ファウンデーション • オラクル社が提供している無料のトレーニン グ。 • 3時間以上のビデオ • 英語(日本語字幕あり) • 修了のバッチあり • 内容 1. Getting Started with Oracle APEX 2. Using SQL Workshop 3. Creating a Database Application 4. Managing Pages in an Application 5. Creating different types of Reports 6. Creating and Using Forms 7. Creating Database Application Components 8. Implementing Security in your Application 9. Migrating Application Development Between Environment 79 Copyright © 2023, Oracle and/or its affiliates

Slide 77

Slide 77 text

Build Web Apps using Oracle Autonomous Database and APEX - New! さらに詳細なトレーニング。 15時間のビデオ、英語(日本語字幕あり) 1. APEX on Oracle ADB 2. Using SQL Workshop 3. Overview of App Builder 4. Creating an Application Page 5. Overview of Reports in Oracle APEX 6. Customizing an Interactive Report as an End User 7. Customizing an Interactive Grid as a Developer 8. Creating a Form in Oracle APEX 9. Creating Application Page Controls 10. Adding Computations, Processes, and Validations 11. Implementing Navigation in your Application 12. Using Themes and Theme Styles 13. Implementing Security in your Application 14. Adding Additional Pages to your Application 15. Create and Use Dynamic Actions in your Application 16. Collections 17. Migrating Application Development Between Environments 80 Copyright © 2023, Oracle and/or its affiliates

Slide 78

Slide 78 text

LiveLabs Oracle LiveLabsは、Oracle製品を使った色々なワーク ショップを提供しているサイトです。 Oracle APEXに関するワークショップは、 RoleとしてLow Code Developerを選択 ProductとしてAPEXを選択 します。 手順は英語になります。 以下の5つはapex.oracle.com、VirtualBox仮想マシンの APEXでも作業できます。 • Build a Starter Online Shopping App using Oracle APEX! • Build a Movies Watchlist Application using Oracle APEX • Building an App using REST Data Sources for Oracle Autonomous Cloud Services • Get Started with Maps and Spatial in APEX • Build a Social Media App using Oracle APEX 81 Copyright © 2023, Oracle and/or its affiliates LiveLabsはOracle APEXで作成されています。 https://apexapps.oracle.com/pls/apex/r/dbpm/livelabs/home

Slide 79

Slide 79 text

AskTOM Office Hours - APEX AskTOM Office Hoursでは、オラクルの色々な製品 やサービスを、約1時間のセッションとして紹介 しています。参加は無料です。 予定されているセッションはOffice Hoursから一覧 します。 過去のセッションの録画は、Videosから一覧しま す。 APEXに関するセッションは、TechnologyにAPEXを 選択します。 82 Copyright © 2023, Oracle and/or its affiliates

Slide 80

Slide 80 text

世界のイベント 83 Copyright © 2023, Oracle and/or its affiliates APEX World 2023 2023年3月30, 31日 – オランダ APEX Connect 2023 2023年5月3, 4日 – ドイツ ODTUG Kscope 2023 2023年6月25, 23日 – アメリカ合衆国 APEX Alpe Adria 2023 2023年4月21日 – クロアチア UKOUG Breakthrough 2022 2022年12月1, 2日 – イギリス AUSOUG APEX Special Series 2023 2023年 – オーストラリア(オンライン) #VIVE SPOUG 2022 2022年6月2,3日 – スペイン APEX Day 2022 2022年9月7日 – スウェーデン Contech by RoOUG 2022 2022年10月6,7日 – ルーマニア

Slide 81

Slide 81 text

質問する、相談する 84 Copyright © 2023, Oracle and/or its affiliates

Slide 82

Slide 82 text

Forumに質問する https://forums.oracle.com/ords/apexds/domain/dev- community/category/apex Oracle本社所属のOracle APEXの開発者も回答して います。 Forumは最近Oracle APEXのアプリケーションで置 き換えられました。 85 Copyright © 2023, Oracle and/or its affiliates

Slide 83

Slide 83 text

Ideasアプリケーション https://apex.oracle.com/ideas Oracle APEXに欲しい機能をリクエストするサイト です。 Oracle APEXをより良いものにするためのアイデアをお持ちです か? おそらく、不足している新しい機能、またはすでに存在するも のの強化でしょうか?何か必要以上に難しいことがあるので しょうか?何であれ、私たちはあなたからの連絡をお待ちして います。 APEXは、コミュニティの関与とフィードバックによって繁栄し ており、APEXの製品の方向性に直接貢献できるよう、さらに簡 単にしたいと考えています。 86 Copyright © 2023, Oracle and/or its affiliates

Slide 84

Slide 84 text

Bluesky #orclAPEX Oracle APEXの開発者の多くはXからBlueskyに移行 しています。 海外の主要なパートナー、ユーザーグループなど もBlueskyから、 ハッシュタグ#orclAPEXをつけて 発信しています。 87 Copyright © 2023, Oracle and/or its affiliates

Slide 85

Slide 85 text

LinkedIn – Oracle APEX The Official Group LinkedInにオフィシャルのグループがあります。 8千人近いメンバーが参加しています。 88 Copyright © 2023, Oracle and/or its affiliates

Slide 86

Slide 86 text

ありがとうございました。 89 Copyright © 2023, Oracle and/or its affiliates

Slide 87

Slide 87 text

No content

Slide 88

Slide 88 text

Our mission is to help people see data in new ways, discover insights, unlock endless possibilities.