Delphi/400を使用したWebサービスアプリケーション

Similar documents
Webサービスを利用して機能UP!

Delphi/400でFlash動画の実装

Indyを利用したメール送信機能開発

Delphi/400:帳票開発ノウハウ公開

Delphi/400開発ノウハウお教えします Googleマップ連携によるリッチなGUIアプリ開発

Webコンポーネントのカスタマイズ入門

FastReportへの効率的な帳票レイアウトコンバート

Web SOAP Internet Web REST SOAP REST 3 REST SOAP 4

Delphi/400を利用したはじめてのWeb開発

ご利用のコンピュータを設定する方法 このラボの作業を行うには 事前設定された dcloud ラボを使用するか 自身のコンピュータをセットアップします 詳細については イベントの事前準備 [ 英語 ] とラボの設定 [ 英語 ] の両方のモジュールを参照してください Python を使用した Spar

Delphi/400活用! スマートデバイスアプリケーション開発

◎phpapi.indd

JC/400でポップアップウィンドウの制御&活用ノウハウ!

ホームページ公開方法

目次 1. 教育ネットひむかファイル転送サービスについて ファイル転送サービスの利用方法 ファイル転送サービスを利用する ( ひむか内 ) ファイル転送サービスへのログイン ひむか内 PCでファイルを送受信する

コンテンツ作成基本編

スーパー英語アカデミック版Ver.2

Delphi/400開発ノウハウお教えします 現場で培った開発手法公開

位置参照情報 API 仕様 ( 試行版 ) 位置参照情報 API 仕様 ( 試行版 ) Ver 1.0b 平成 26 年 12 月 国土交通省国土政策局国土情報課

4. WIX アタッチエンジン 4. 1 FSDR 処理 システムの Web 資源結合動作であるアタッチ処理について 述べる. アタッチ処理は以下の 4 フェーズに分けられる. この一連の 流れを FSDR 処理とする. Find 処理 Select 処理 Decide 処理 Rewrite 処理

Taro-time to spare.jtd

Web GIS Template Uploader 利用ガイド

コンテンツ作成基本編

Web & ハイブリッドアプリ開発で役立つIBM i & ブラウザデバッグテクニック

<4D F736F F F696E74202D20352D335F8D5C90AC CF909482CC90B690AC82C695D28F572E707074>

PowerPoint プレゼンテーション

Googleカレンダー連携_管理者マニュアル

情報システム設計論II ユーザインタフェース(1)

Microsoft Word - tutorial3-dbreverse.docx

第1章 ビジュアルプログラミング入門

Web のしくみと応用 ('15) 回テーマ 1 身近なWeb 2 Webの基礎 3 ハイパーメディアとHTML 4 HTMLとCSS 5 HTTP (1) 6 HTTP (2) 7 動的なWebサイト 8 クライアントサイドの技術 回 テーマ 9 リレーショナルデータベース 10 SQL とデータ

Delphi/400バージョンアップに伴う文字コードの違いと制御

Cuoreテンプレート

改訂履歴 日付バージョン記載ページ改訂内容 V2.1 - 初版を発行しました V3.1 P5 ドキュメントラベルが新規追加された事を追記 P7 P8 新しくなったラベルのツリー表示説明を追記 新しくなったラベルの作成 削除操作を追記 P9 ラベルのグループ

HDE Controller X HDE Controller 設定

JACi400のご紹介~RPGとHTMLで簡単Web化~

2 目次 1 はじめに 2 システム 3 ユーザインタフェース 4 評価 5 まとめと課題 参考文献

DB STREET 設置マニュアル

ホームページにパスワード認証を設定します 会員限定のページなどに利用できます 設定の手順 を設定するには 以下の手順で行います ユーザ登録 を設定したページにアクセスするためのユーザを登録します の設定 を設定するページ アクセスを許可するユーザを選択し 設定します 設定完了 を設定したページにアク

ArcGIS for Server での Web マップの作成方法

LightSwitch で申請システム Windows ストアアプリで受付システムを構築してみた 情報政策グループ技術職員金森浩治 1. はじめに総合情報基盤センターでは 仮想サーバホスティングサービスや ソフトウェアライセンス貸与といった さまざまなエンドユーザ向けサービスを行っている 上記のよう

スライド 1

楽2ライブラリ クライアントサーバ V5.0 体験版 クライアントOS利用時におけるIIS設定手順書

5-2. 顧客情報をエクスポートする 顧客管理へのアクセス手順 メールディーラーで管理する顧客情報に関する設定を行います 1. 画面右上の 管理設定 をクリックする 2. 管理設定 をクリックする 3. ( タブ ) 顧客管理 をクリックする 2

Team Foundation Server 2018 を使用したバージョン管理 補足資料

クイックマニュアル(利用者編)

コースの目標 このコースを修了すると 下記のことができるようになります : 1. WebDAV の基本的理解を深める 2. WebDAV 経由で ASUSTOR NAS に接続する 前提条件 受講前提条件 : なし 次の項目についての知識を持つ受講生を対象としています :s 該当なし 概要 1. W

コンテンツメディアプログラミング実習2

SOC Report

指定立替納付を使った場合の 国内提出書類の提出方法 1 出願書類や 納付書などを 指定立替納付で支払う場合の手順をご案内します ここでは ひな型を Word で編集する場合の手順を案内します 他を利用する場合は ユーザガイドをご覧ください (1) 指定立替納付を使うための事前準備 a. クレジットカ

帳票エラーが発生した場合のチェックリスト 確認番号 1 企業内 LAN にて ActiveDirectory のリダイレクト機能 ( シンクライアント等 ) を利用しているか 利用している場合 帳票を正常に表示できないことがあります 項目確認方法チェック対応方法 2 事前準備セットアップを実行してい

メール利用マニュアル (Web ブラウザ編 ) 1

V-CUBE One

JAIRO Cloud 初級ユーザー向け手引書 1. ユーザーアカウント管理 JAIRO Cloud 事務局 協力 : オープンアクセスリポジトリ推進協会 (JPCOAR) JAIRO Cloud 運用作業部会 ver date 修正内容 /11 初版

DB2 をバックエンドとした Delphi での Web サービスの構築 Marco Cantu ( 年 12 月 05 日 DB2 をバックエンドとした Delphi での Web サービスの構築 はじめに Borland TM 社の Delphi

改訂履歴 版 更新日 改訂内容 Ver 1.0b 2014 年 12 月 試行版 国土数値情報 API 仕様 ( 試行版 )

OpenOffice実践活用

第1章 ビジュアルプログラミング入門

Rational Roseモデルの移行 マニュアル

Microsoft Word - XOOPS インストールマニュアルv12.doc

部品ライブラリシステム

スライド 1

改訂履歴 Ver 日付履歴 新規作成 5 月末の機能追加として キーワード検索部分およびアドレス直接入力時の入力補完機能 検索結果対象にメーリングリストを追加 メールアドレスとの区別の為にメーリングリストを青字表示 カレンダーアイコン押下時の挙動修正 Gmail 内のアド

ダウンロードページアップデートマニュアル.ppt

WebReportCafe

-

UMLプロファイル 機能ガイド

Microsoft Word - ModelAnalys操作マニュアル_

1. 信頼済みサイトの設定 (1/3) この設定をしないとレイアウト ( 公報 ) ダウンロードなどの一部の機能が使えませんので 必ず設定してください 1 Internet Explorer を起動し [ ツール ]-[ インターネットオプション (O)] を選択します 2 [ セキュリティ ] の

1. 報告依頼業務 報告書集計システムを利用して 本部の報告依頼者が 売上実績見通しを各支社から収集し 報告書を作成します 依頼側の業務 1

問合せ分類 1( 初期設定関連 ) お問い合わせ 初期設定の方法がわかりません 初期設定をご案内させていただきます 1 下記 URL をクリックし 規約に同意し サービス登録番号を入力をしてください

IMI情報共有基盤 「表からデータモデル」 データ変換のみを行う方向け画面説明

公立大学法人首都大学東京

コースの目標 このコースを修了すると 下記のことができるようになります : 1. WebDAV の基本的理解を深める 2. WebDAV 経由で ASUSTOR NAS に接続する 前提条件 受講前提条件 : なし 次の項目についての知識を持つ受講生を対象としています :s 該当なし 概要 1. W

Microsoft PowerPoint - AGT用WEBマニュアル ppt [互換モード]

Trend Micro Security for Mac 持込 PC 用インストールマニュアル [Mac OS 用 ] 作成 :2018 年 12 月 改訂 :2019 年 2 月 情報環境機構

令和元年 労働保険_年度更新電子申請手順書(継続事業API申請版)_docx

Ⅱ. 国立がんセンター研究センター用申請書の作成について Ⅱ-1. カット ドゥ スクエアにおける中央病院と東病院の表示区分 がん研究センターにおいては 中央病院と東病院が独立して治験を実施する一方 実施医療機関としては 独立行政法人がん研究センター となることから カット ドゥ スクエアにおいて

スライド 1

Microsoft Word - RefWorksコース doc

スライド 1

FastReportを活用した電子帳票作成テクニック

WinXp-Rmenu

ファイルのアップロード. 上メニューから [ アップロード ] を選択します. [ アップロード ] 画面に移行しますので, 以下の手順で操作を行います アップロードするファイルを選択し, 指定場所へ [ ドラッグ & ドロップ ] します ドラッグ & ドロップ ファイルがリストアップされたことを

V-CUBE One

ログインする ブラウザを使ってログイン画面 を表示します ユーザー名とパスワードを入力し ログイン をクリックします メールアドレス : パスワード : メールアドレスのパスワ

目次 目次 準備いただくもの 準備 SQLServer2008 R2 ExpressEdition のインストール インストールの前に インストール 設定一覧 機

PowerPoint プレゼンテーション

SeciossLink クイックスタートガイド

第1章 ビジュアルプログラミング入門


PowerPoint プレゼンテーション

1 ワンタイムパスワードの説明... 2 (1) ワンタイムパスワードのサービス概要... 2 (2) 個人インターネットバンキングとワンタイムパスワード... 2 (3) ワンタイムパスワード生成機 ( トークン ) について... 2 (4) ソフトウェアトークンの特徴 導入までの

1. システムへのログイン方法 2

目次 目次 1. はじめに 2. ログイン ID とアクセス権限 3. 前提条件 4. 事前準備 ( ログイン ) 4-1. ログイン画面アクセス 4-2. ログイン 4-3. ログイン後 5. ホーム画面 6. 特記すべき画面操作 6-1. カレンダー表示 6-2. メニュー表示 6-3. クリッ

intra-mart Accel Platform

Oracle SALTを使用してTuxedoサービスをSOAP Webサービスとして公開する方法

スライド 1

intra-mart Accel Collaboration — Collaboration共通 ユーザ操作ガイド   第7版  

ダウンロードしたファイル (ProselfDisk.exe) をダブルクリックして実行してください 図 2 のような画面が表示されるので 次へ (N)> をクリックしてください 図 2 インストールウイザード画面 図 3 のような画面が表示されるので 使用許諾契約の全項目に同意します (A) にチェ

Transcription:

尾崎浩司 株式会社ミガロ. システム事業部システム 3 課 Delphi/400 を使用した Web サービスアプリケーションインターネット技術を応用し XML 処理を行うというとたいへん敷居が高く感じる 実は Delphi/400 を用いるとそれらは容易に使用可能である Web サービスとは SOAP と REST SOAP の使用方法 REST の使用方法 最後に 略歴 1973 年 8 月 16 日生れ 1996 年三重大学工学部卒 1999 年 10 月株式会社ミガロ. 入社 1999 年 10 月システム事業部配属 現在の仕事内容ミガロ. 入社以来 主に Delphi/400 を利用した受託開発を担当している Web サービスとは Web サービスとは インターネットの技術を活用し 遠隔サイトにあるアプリケーションの機能をネットワークを通じて 自社アプリケーションから利用できるようにしたものである インターネットが発達したおかげで 現在では有用な情報が容易に取得できるようになった だが 従来の Web アプリケーションでは 取得した情報をそのまま自社のアプリケーションに取り込むことができなかったため 自社アプリケーション自体が有用な情報を直接活用するということは難しかった しかし Web サービスの普及により 企業の枠を超えた情報の連携および活用が可能になった 一例を挙げると 従来であれば 乗換案内 のような路線情報を提供するサイトを使って 使用した路線の交通費をブラウザで確認し その結果を自社の出張精算システムに手で入力するといった手順が必要であった しかし 路線情報サ イトの Web サービスを使用することで 直接 出張精算システムと連携することが可能になったのである つまり 使用した路線を指定すると 自動的に交通費を出張精算システムに登録するといったことができるわけだ しかも 路線情報を提供するサイトは常に最新の運賃情報を提供しているため 自社アプリケーションでは 運賃マスターといった情報をまったく管理する必要がないというメリットもある このように Web サービスを使用することで 自社のアプリケーションの利便性を大きく向上させることができるのである では Web サービスは どのようにして システム間の連携を可能にしているのだろうか? 従来の Web システムでは 人がサイトにアクセスして処理結果をブラウザで見るのに対し Web サービスでは プログラムがサイトにアクセスして処理結果を XML 形式で受け取るというのが特徴である インターネットの技術を応用して XML で処理を行うというとすごく敷居が高いような話にも思えるが 実は Delphi/400 を用いると これらを容易に使用することが可能である 本稿では 具体例を挙げながら Delphi/400 を使用した Web サービスの活用方法について触れていくこととする SOAP と REST Web サービスを使用するにあたって Web サービスを提供しているサイトを調査すると おそらく使用方式に SOAP あるいは REST といった言葉がでてくるであろう SOAP とは Simple Object Access Protocol の略で SOAP メッセージという XML によってメッセージ交換を行う方法である 対して REST とは Representational State Transfer の略で HTTP の GET メソッドを使って指定された URL にアクセスすると XML が返ってくるというものである 50

図 1 図 2 図 3 図 4 51

一般的には SOAP は XML メッセージのやり取りを定義する必要があるため難易度が高く REST は URL を指定するだけで情報が XML で受け取れるため難易度が低いといわれる しかし どちらの手法も Delphi/400 では容易に使用可能である それでは それぞれの使用方法について具体例を挙げながら説明を進めていこう SOAP の使用方法 SOAP を使用するのに必要なのが WSDL と呼ばれるものだ WSDL というのは Web Services Description Language の略で XML でメッセージ交換を行うためのルールが定義されたものである (WSDL 自体が XML で記述されている ) このWSDLを使用することで Delphi/400 アプリケーションから容易に Web サービスが利用可能になるのだ 今回 SOAP の具体的な使用例として Webservicex.Net (http://www. webservicex.net/wcf/webservices. aspx) と呼ばれるサイトで公開されている Currency Convertor という為替レート情報取得 Web サービスを使用してみよう この Web サービスを使用したサンプルプログラムを実行したアプリケーションが 図 1 である このアプリケーションは ボタンをクリックすると 米ドルに対する日本円のレートを表示するというものだ 図 1 Currency Convertor のサイトを確認すると WSDL ロケーションとして 以下のように記載されていることがわかる この情報をもとに Delphi/400 で使用可能なクラスを生成することが可能なのである http://www.webservicex.net/ CurrencyConvertor.asmx?WSDL 作成手順は次の通りである 1 新規プロジェクトを作成 2 メニューより [ ファイル ] [ 新規作成 ] [ その他 ] を選択 3 [WebServices] から [WSDLインポーター ] を選択 図 2 4 WSDL ファイル URL を入力 図 3 5[ 完了 ] ボタンを押下上記ウィザードを実行すると WSDL を解析し Delphi/400 で使用可能なクラスユニットが自動生成されるので これをアプリケーションから利用すればよい ソース 1 は 先程の図 1 のサンプルアプリケーションのソースコードである ソース 1 自動生成された CurrencyConvertor ユニットを uses 節に含めることにより 為替レート取得のために定義されたクラスやメソッドが使用可能になったことがわかるであろう REST の使用方法 REST は 先程も述べた通り Web サービスを提供するサーバーに対して URL を与えると結果として XML を受け取れるというものだ REST の具体例としては Yahoo! デベロッパーネットワーク (http:// developer.yahoo.co.jp/) で提供されている Web サービスを紹介しよう それらの Web サービスは Yahoo! JAPAN で提供されているさまざまな機能を Web サービス化したものとなる ( サービスを使用するには アプリケーション ID が必要なので 事前に取得しておこう ) 例えば Yahoo! 検索 Web サービスを使用し キーワード "migaro で問い合わせを行うには 以下のような URL を使用する http://search.yahooapis.jp/web SearchService/V1/webSearch? appid=< アプリケーション ID>&query =migaro これをブラウザに入力し実行すると 図 4 のように XML が取得できることがわかる 図 4 Delphi/400 から REST の使用 このように REST とは HTTP リクエストに対して XML をレスポンスとして返すものなのである では これを Delphi/400 から使用するにはどうすれ ばよいだろうか? Delphi/400 で HTTP クライアントを実装するのは TIdHTTP と呼ばれるコンポーネントである URL を指定して結果を取得するには Get メソッドを使用すればよい ここで具体的なサンプルアプリケーションを紹介しよう 図 5 のように TIdHTTP コンポーネントを貼り付けたフォームを用意し ソース 2 のようにボタンクリックイベントを記述する 図 5 ソース 2 本サンプルは Yahoo! ニュースのトピック用 Web サービスであるが 実行すると メモコンポーネント内に 先程のブラウザの場合と同じように XML が表示されることがわかるだろう Delphi/400 から XML の扱い これで Delphi/400 で XML が取得できることはご理解いただけたと思う では どうすればこの XML をプログラムからアクセスしやすくできるのだろうか? XML 文書というのは HTML と同じマークアップ言語と呼ばれるものだが HTML とは違い使用するタグ自体の定義を自由に行えるのが特徴である その定義にあたるのが XML スキーマと呼ばれるものだ 実はこの XML スキーマを使用すると Delphi/400 から XML の扱いが容易になるのである Yahoo! ニュースのトピック用 Web サービスのサイトを確認すると レスポンス用の XML スキーマの定義 ( 拡張子 xsd) が記載されているのがわかる これを Delphi/400 に取り込めばよいのだ その手順は次の通りである 1[ 新規作成 ] [ その他 ] を選択 2 XML フォルダの [XML データバインディング ] を選択 3 ソースコード欄に XSD ファイルを指定 図 6 4 ウィザードを進み データバインディングの [ 設定を保存しない ] に設定 図 7 5[ 完了 ] ボタンを押下上記ウィザードを実行すると XML スキーマを解析してできたクラスユニットが自動生成される このユニットを使 52

図 5 図 8 図 6 図 7 53

用することで 容易に XML の各要素にアクセス可能になるのである なお XML 文書を Delphi/400 から使用するには TXMLDocument コンポーネントを使用するのであわせて覚えておこう では 先程のサンプルアプリケーションを改良してみよう TXMLDocument コンポーネントを 1 つ追加した後に XML スキーマをデータバインディングウィザードでユニットを作成し ソース 3 のようにプログラムを修正する ソース 3 XML スキーマの定義にもとづき ニューストピックの結果セット集合体や各要素がプログラムから使用可能になっているのがわかるだろう このサンプルプログラムを実行すると 図 8 のようにメモコンポーネントにトピックが一覧表示されるのである また このサンプルプログラムでは ニュースの件数やトピック名等がクラス変数として取得できているのもわかる 図 8 最後に Web サービスを Delphi/400 から使用するのは SOAP であっても REST であっても容易であることがおわかりいただけたであろう 今回紹介した Webservicex.Net や Yahoo! デベロッパーネットワーク だけでなく 他にも多様な Web サービスが提供されているので いろいろ試してみてほしい そして 自社のアプリケーションと Web サービスをどう組み合わせるか いろいろ検討してほしい 自社アプリケーションに Web サービスを活用することで これまで以上の利便性をユーザーに提供できると思われるので ぜひともチャレンジしていただきたい M 54

ソース 1 ソース 2 ソース 3 55