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

もっとAPEX - APEX Office Print

もっとAPEX - APEX Office Print

ベルギーのAPEX R&Dが提供しているサービス/製品であるOracle APEXへの印刷ソリューション APEX Office Printの紹介

Yuji Nakakoshi

January 26, 2018
Tweet

More Decks by Yuji Nakakoshi

Other Decks in Technology

Transcript

  1. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | もっとAPEX - APEX Office Print APEXの印刷ソリューション 中越祐治 日本オラクル株式会社 2018年1月
  2. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 以下の事項は、弊社の一般的な製品の方向性に関する概要を説明するものです。また、情報提供を 唯一の目的とするものであり、いかなる契約にも組み込むことはできません。以下の事項は、マテリア ルやコード、機能を提供することをコミットメント(確約)するものではないため、購買決定を行う際の判 断材料になさらないで下さい。オラクル製品に関して記載されている機能の開発、リリースおよび時期 については弊社の裁量により決定されます。 OracleとJavaは、Oracle Corporation 及びその子会社、関連会社の米国及びその他の国における登録商標です。 文中の社名、商品名等は各社の商標または登録商標である場合があります。 2
  3. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Program Agenda AOP – APEX Office Printってなに? 動かしてみよう! 誰が作ったの? 技術的な話 価格について 1 2 3 4 5 3
  4. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Program Agenda AOP – APEX Office Printってなに? 動かしてみよう! 誰が作ったの? 技術的な話 価格について 1 2 3 4 5 4
  5. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 5 APEX Office Printの動作 テンプレートとして使 用するドキュメントを、 Word, Excelまたは PowerPointにより作 成する。 ドキュメントに埋め込 むデータを、データ ベースから選択する。 APEX Office Printに よって、テンプレートと なるドキュメントと、選 択したデータをマージ する。 結果はOfficeドキュメ ント(Word, Excel, PowerPoint)、または PDF, HTMLとして生成 されます。 テンプレートの作成 データの選択 マージ 出力
  6. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Program Agenda AOP – APEX Office Printってなに? 動かしてみよう! 誰が作ったの? 技術的な話 価格について 1 2 3 4 5 6
  7. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 7 テンプレートの作成  APEXOfficePrint Printed on 12/01/2018 ORDER CONFIRMATION {cust_last_name} {cust_first_name} {cust_city} Your reference number: 1 Leuven, 26 january 2014 74 {cust_first_name}, 6?%+*$+,&)'(D-  C    :8320. : {#orders}{#product} • {product_name}{/product} D- 1AFG €{order_total}  {/orders} <:2=9@#;/ >BH ! E5" H APEX R&D • 通常のWord文書(Wordでいうところのテン プレートではない)。 • {cust_last_name}, {cust_first_name}といった 形式で、データを埋め込む位置を指定する。 • {#orders}… {/orders} といった形式でデータ の埋め込みを繰り返す領域を指定する。 • {#quantity<3}{quantity}{/quantity<3}{^quant ity<3}{quantity}{/quantity<3}といった形式に より条件による切り替えが可能。 • { unit_price*quantity }といった形式により、 計算結果による置き換えもできる。
  8. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 8 テンプレートのアップロード Static Application Fileとして テンプレートとなるドキュメ ントをアップロード (その他にも方法あり)
  9. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 9 データの選択 ダイナミック・アクション・プラグイン、また は、プロセス・プラグインに指定するSQL によって、テンプレートにマージするデー タを選択する。 カラムエイリアス(別名)は必須。カラムエ イリアスが、テンプレート内の {cust_first_name}といった部分に置き換 わる。 繰り返し項目はカーソルで渡す。入れ子 の繰り返し項目も対応。 ordersの繰り返し productsの繰り返し
  10. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 10 マージと出力 APEXOcePrint Printed on 11/01/2018 ORDER CONFIRMATION 石原 さとみ 東京 Your reference number: 1 Leuven, 26 january 2014 拝啓 さとみ, この度は私どものオンライン・ショップにてお買い上げいただき、誠にありがとうございま す。ご注文いただいた商品は以下のとおりです:  ビジネス・シャツ  ズボン  ジャケット  ブラウス  スカート  女性向け靴  ベルト  バッグ  男性向け靴  財布 お買い上げの合計金額は €2380 になります。 発注品目の明細を添付いたしますので、ご確認のほどお願いいたします。 これからもご贔屓のほどよろしくお願いいたします。 APEX R&D APEX R&D Leuven Page 1 APEXOcePrint Printed on 11/01/2018 Appendix: Summary of your order with reference number 1 Product Image Unit Price in € Quantity Extended Price in € ビジネス・シャ ツ 50 3 150 ズボン 80 3 240 ジャケット 150 3 450 ブラウス 60 3 180 スカート 80 3 240 女性向け靴 120 2 240 ベルト 30 2 60 バッグ 125 4 500 APEX R&D Leuven Page 2 APEXOcePrint Printed on 11/01/2018 Product Image Unit Price in € Quantity Extended Price in € 男性向け靴 110 2 220 財布 50 2 100 2380 (*) This product is currently not in stock, your order may be delayed. APEX R&D Leuven Page 3
  11. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | apex.oracle.comでサンプルを動かす 1. apex.oracle.comからワークスペース取得する。(ワークスペースの取得 は無料) 2. パッケージ・アプリケーションのSample Database Applicationをインストー ルする。 3. www.apexofficeprint.comにSIGN UPして、Cloud Packageをダウンロード する。(SIGN UPだけなら無料) 4. Cloud Packageに含まれるaop_sample3_apex_app_51.sqlをインストール する。 5. サンプルを動かしてみる。 12
  12. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 13 サンプルの一部 Custom Report (SQL) aop_custom_report_sql.docx aop_custom_report_sql.xlsx セルとセルの文字を色付けする方法。 Classic Report aop_template_x05.xlsx Classic Reportの表示。TODAY関数の結果がクラウドのホストの日付になってる。 Classic with Totals aop_report_with_totals.docx {#TITLE=='Line'}…{/TITLE=='Line'}, {^TITLE=='Line}…{/TITLE=='Line'}といった条件指定。 Tabular Form aop_tabular_form.docx データはSQLを記述。 Interactive Report aop_interactive.docx aop_IR_template.xlsx aop_template_x02.xlsx &とRegion Static IDの指定によるレポート指定。 Combo: Classic and IRs aop_template_combo_report.xlsx aop_template_combo_report.docx IRを使ったカスタムレポート(#aopireportdata)と自動レポート(&interactive)の生成。 Interactive Grid aop_interactive_grid_multiple.docx aop_template_igrid_02.html aop_interactive_grid_multiple.xlsx 複数のRegion Static Idの指定。 Dashboard (charts with reports) aop_dashboard_01.docx %とRegion Static IDの指定によるチャート表示。 Native Office Charts いくつかのチャートはエラーで動かない。画面上のチャートとデータの表を印刷。 JET Charts aop_jet_chart_template.docx %とRegion Static IDによる指定。 Other Charts aop_other_charts.docx aop_other_charts.xlsx HighCharts, FabricJSの設定がよく分からないが、プラグインも条件によって印刷できる模様。 Images 社内環境からapexofficeprint.comへ到達しないので、動かない。 QR and Barcodes aop_simple_qr.docx aop_simple_barcode.docx |によるQRコードとバーコードの印刷 HTML (Rich Text) Editor aop_html_content.docx WordとPDFへの変換 Inline PDF aop_template_d01.docx PDFをPopupとInlineで表示する Prit PDF directly to local Printer IPプリンタへの直接出力。環境的にできない。 Dynamic Print 形式やテンプレートを選択して印刷。 Mailings: Mail Merge - Labels aop_mailings_labels_L&P18_AVERY_SIZE..docx メール送付のラベル印刷。 Send Print 添付として送付。 PL/SQL API PL/SQL APIの呼び出し。 生成したファイルをBLOBとして保存したり、バッチでメールを送信したり。
  13. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Program Agenda AOP – APEX Office Printってなに? 動かしてみよう! 誰が作ったの? 技術的な話 価格について 1 2 3 4 5 14
  14. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 開発会社 15 www.apexofficeprint.com www.apexRnD.be 会社のホームページ自体がAPEX。 https://www.apexrnd.be/ords/f?p=APEXRND:HOME:0:
  15. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 世界的に認知されているエキスパート 17 Oracle Development Tool User Group (オーディータグ) - 約4万人の会員 Kscope - ODTUG主催の年次イベント 2017/6/25-29, San Antonio, Texas 2018/6/10-14, Orland, Florida APEXの開発者とエキスパートのLightning Talkセッション best and most-well-known 先頭にリスト
  16. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 場所 18 ベルギーのルーベンというところ ルーベンには「ベギン会修道院(Groot Begijnhof Leuven)」という世界遺産があります。 ルーベンカトリック大学(1425年設立!)の化 学科、コンピュータ学科がある郊外のキャ ンパスの隣 市庁舎 ベギン会修道院 世界遺産に、大 学関係者が今も 住んでいるとの こと。
  17. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Program Agenda AOP – APEX Office Printってなに? 動かしてみよう! 誰が作ったの? 技術的な話 価格について 1 2 3 4 5 19
  18. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | アーキテクチャー 20 1. ダイナミック・アクション 提供されているダイナミック・アク ション・プラグインにてAOPを呼び 出す。 2. プロセス 提供さてているプロセス・プラグ インによってAOPを呼び出す。 3. PL/SQL API PL/SQL APIを直接呼び出す。バッ チ処理を記述する際に使用する。 4. RESTful Web Service AOPサーバーを直接、RESTを 使って呼び出す。自分でプラグ インを記述する際などにしようす る。 AOPサーバーの呼び出し方法
  19. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | AOPの実体 21 www.apexofficeprint.comにログインし、 ダウンロード・ページを開く。 サンプル・アプリケーション 表、パッケージも含む プラグイン プロセス、動的アクション サーバー・ソフトウェア Linux, Windows, MacOS 同一サーバーに別途必要 サンプルをインポートすれば、サポート・オブジェクトも 作成される。(ワークスペースにつき一回) プラグインのインポートは、アプリケーションそれぞれ で実施。
  20. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | プラグインの設定 • Template Type + Template Source – テンプレートの形式、指定方法(Type)と、その実体(Source) • Data Type + Data Source – 挿入するデータの取得方法(Type)0と、取得するためのコード(Source) • Output Type + Output To – 出力形式(Type)と、出力先(To) • その他 – Region Statc ID, Special, Output Filename (Process), Init PL/SQL Code (DA) 22
  21. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Template Typeの指定 • AOP Template – テンプレートとして使用できるWord, Excelファイルを生成。 • Static Application Files – 静的アプリケーションファイルを指定。 • Static Workspace Files – 静的ワークスペースファイルを指定。 • SQL – テンプレートタイプとBASE64表現のテンプレートの実体を返す。 • PL/SQL Function (returning SQL) – SQLを返す。 • PL/SQL Function (returning JSON) – file, template_typeを含むJSONデータ。 • Filename (with path relateive to AOP server) – AOPサーバー上のファイル。 • URL (returning file) – docx, xlsx, pptxを返すURL。 23
  22. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Data Typeの指定 • SQL – テンプレートに挿入するデータを取り出すSQLを指定。 • PL/SQL Function (returning SQL) – SQLを返す。 • PL/SQL Function (returning JSON) – JSONを返す。 • URL (returning JSON) – JSONを返すURL(ORDSのRESTful Service)。 • Region(s): Classic Report, Interactive Report/Grid, Charts (SVG based) - リージョンのスタティックID 24
  23. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Output Typeの指定 Output Type • Word (docx) • Excel (xlsx) • Powerpoint (pptx) • PDF (pdf) • HTML (html) • Markdown (md) • Word (rtf) • Defined by APEX Item 25 Output To • Browser (file) • Procedure • Procedure and Browser (file) • Inline Region (pdf/html/md only) • Directory (on AOP server)
  24. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Templateに使えるタグ • {data_string} – SQLの場合はカラム別名で選択されたデータで置き換えられる。JSONではプロパティ名。 • {data_string_with_cell_markup$} – 末尾に$をつけることで、セルの属性(例: 背景色)に置き換える。 • {-labels} – 差し込み印刷の先頭タグとして指定。 • {_htmlcontent} – 先頭に_(アンダースコア}をつけることで、HTMLとして認識させ、Wordの形式に印刷。 • {#data_loop}…{/data_loop} – SQLの場合、カーソルによる繰り返し項目の指定。JSONでは配列。 • {%imageKey} – 画像に置き換わる。 • {|barcode},{|qrcode} – バーコード、QRコードに置き換わる。 • {$chart} – チャートを挿入する。 • {&interactive_report} – 対話モード・レポートを挿入する。 • {&interactive_grid&} – 対話モード・グリッドを挿入する。 • {num1 + num2} – 四則演算。 • {#key=='value'}…{/key='value'}, {^key=='value'}…{/key=='value'}, 条件分岐を指定。 <, >, <=, >=, ==, != が使用可能。 • {key=='vaue' ? Key2 : key3 } – 条件演算子。 <, >, <=, >=, ==, != , ===, !==が使用可能。 • その他 26
  25. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | SQLとテンプレート 27 1. 挿入位置を指定するために、カラムに別名を設定する。 2. 繰り返し項目のために、カーソルを使う。
  26. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | Program Agenda AOP – APEX Office Printってなに? 動かしてみよう! 誰が作ったの? 技術的な話 価格について 1 2 3 4 5 28
  27. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | クラウドでの価格 29 • A credit is a request to our server for a document (docx, xslx, pptx, pdf, html). • 1回の印刷が1クレジット • 120円/ドル換算だと…一回あたり • Bronze • 36 / 150 * 120 = 28.8 (円) • Silver • 60 / 450 * 120 = 16 (円) • Gold • 120 / 1100 * 120 = 13 (円)
  28. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 30 オンプレでの価格 • Bronze • 1900 * 120 = 22万8千円 (1サーバー) • Silver • 4900 * 120 = 58万8千円(1サーバー) • Gold • 5900 * 120 = 70万8千円(1サーバー) • Enterprise • 24900 * 120 = 298万8千円(5サーバー)
  29. Copyright © 2017, Oracle and/or its affiliates. All rights reserved.

    | 31 サポート料金など * With the Free Trial you can run AOP on your own server and use Word templates. The output is Word or PDF with a trial watermark. * There're no credit limits with the on-Premise version. Price is per installation (server/MAC address) of AOP. You can install AOP on a machine which can be reached by your different environments (DEV, TEST, QA, PROD) or separate to for example DEV, TEST, QA and a separate one for PROD (2 licenses). There's also the option to go with an Enterprise wide version which means you can install APEX Office Print on many different servers (5 by default, but on request we can agree on more). Optional: 20% maintenance and support fee per year starting from second year (includes free upgrades). Not allowed to run AOP on a public server (different prices apply for hosting). Please contact us for OEM. • *オンプレ版はサーバーにたいす る課金で、印刷数には依存しな い。 • オンプレ版のトライアルはWordと PDFのみ。かつ、透かし印が入る。 クラウド版は100日/100印刷とい う制限があるが、こういった制限 はない。 • 購入の翌年から20%のサポート 料金でアップグレードを含むサ ポートが受けられる。 • パブリックなサーバーへインス トールし、共用などはしないこと。 OEMについては要相談。